/* JTS v4.1 — dedicated Build a Treat Box page layout */
.jts-treat-box-template #jts-site{overflow:clip}
.jts-treat-box-page{--jts-tbp-hero-height:620px;--jts-tbp-mobile-height:520px;--jts-tbp-hero-fit:cover;--jts-tbp-hero-position:center center;--jts-tbp-mobile-position:center center;--jts-tbp-overlay:rgba(20,45,33,.54);--jts-tbp-copy-width:700px;--jts-tbp-radius:0px;--jts-tbp-builder-width:1380px;background:var(--jts-cream-light)}
.jts-treat-box-page .jts-tb{margin:0;padding:0 0 92px}

/* Full-bleed hero. The Store Tools plugin owns the content/image; the theme owns presentation. */
.jts-treat-box-page .jts-tb-hero{width:100%;max-width:none;min-height:var(--jts-tbp-hero-height);border-radius:var(--jts-tbp-radius);padding:clamp(54px,8vw,110px) max(28px,calc((100vw - var(--jts-max))/2));display:flex;align-items:center;box-shadow:none}
.jts-treat-box-page--contained .jts-tb-hero{width:min(calc(100% - 40px),var(--jts-max));margin:34px auto 0;padding-inline:clamp(34px,5vw,72px)}
.jts-treat-box-page--full .jts-tb-hero{margin:0}
.jts-treat-box-page .jts-tb-hero.has-image{background-image:linear-gradient(var(--jts-tbp-overlay),var(--jts-tbp-overlay)),var(--jts-tb-hero);background-size:var(--jts-tbp-hero-fit);background-position:var(--jts-tbp-hero-position);background-repeat:no-repeat;background-color:var(--jts-forest)}
.jts-treat-box-page .jts-tb-hero__inner{width:100%;max-width:var(--jts-tbp-copy-width)}
.jts-treat-box-page .jts-tb-hero h1{font-size:clamp(46px,6vw,82px);letter-spacing:-.045em;text-wrap:balance}
.jts-treat-box-page .jts-tb-hero h2{font-size:clamp(22px,3vw,36px)}
.jts-treat-box-page .jts-tb-hero p{max-width:var(--jts-tbp-copy-width);font-size:clamp(17px,1.5vw,20px)}
.jts-treat-box-page .jts-tb-hero .button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;margin-top:9px;padding:12px 22px;border:0!important;border-radius:999px!important;background:var(--jts-oat)!important;color:var(--jts-forest)!important;font-weight:900!important;box-shadow:0 12px 28px rgba(0,0,0,.14)}
.jts-treat-box-page .jts-tb-hero .button:hover{background:var(--jts-white)!important;transform:translateY(-1px)}

.jts-treat-box-page--align-center .jts-tb-hero__inner{text-align:center;margin-inline:auto}
.jts-treat-box-page--align-center .jts-tb-hero p{margin-inline:auto}
.jts-treat-box-page--align-right .jts-tb-hero__inner{text-align:right;margin-left:auto}
.jts-treat-box-page--align-right .jts-tb-hero p{margin-left:auto}
.jts-treat-box-page--vertical-start .jts-tb-hero{align-items:flex-start}
.jts-treat-box-page--vertical-center .jts-tb-hero{align-items:center}
.jts-treat-box-page--vertical-end .jts-tb-hero{align-items:flex-end}
.jts-treat-box-page--hero-off .jts-tb-hero{display:none!important}

/* Keep the commerce interface spacious but deliberately contained. */
.jts-treat-box-page .jts-tb-coming{width:min(calc(100% - 40px),1180px);margin:28px auto 0;border-radius:18px;box-shadow:var(--jts-shadow-soft)}
.jts-treat-box-page .jts-tb-shell{width:min(calc(100% - 40px),var(--jts-tbp-builder-width));max-width:none;margin:44px auto 0}
.jts-treat-box-page .jts-tb-toolbar{top:102px}
.jts-treat-box-page .jts-tb-card{box-shadow:0 7px 24px rgba(31,61,46,.045)}
.jts-treat-box-page .jts-tb-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(31,61,46,.08)}
.jts-treat-box-page .jts-tb-card__media img{object-position:center}

/* Optional editorial/SEO content entered in the WordPress page editor sits below the builder. */
.jts-tbp-page-content{padding:0 0 88px}
.jts-tbp-page-content__inner{max-width:940px;background:var(--jts-white);border:1px solid var(--jts-line);border-radius:24px;padding:clamp(28px,5vw,58px);box-shadow:var(--jts-shadow-soft)}
.jts-tbp-page-content__inner h2,.jts-tbp-page-content__inner h3{font-family:var(--jts-serif);color:var(--jts-forest);line-height:1.12}
.jts-tbp-missing{padding:90px 0;text-align:center}
.jts-tbp-missing h1{font-family:var(--jts-serif);color:var(--jts-forest);font-size:clamp(38px,6vw,64px);margin:8px 0 12px}

@media(max-width:900px){
 .jts-treat-box-page .jts-tb-hero{min-height:var(--jts-tbp-mobile-height);padding:54px 28px}
 .jts-treat-box-page .jts-tb-hero.has-image{background-position:var(--jts-tbp-mobile-position)}
 .jts-treat-box-page--mobile-image .jts-tb-hero.has-image{background-image:linear-gradient(var(--jts-tbp-overlay),var(--jts-tbp-overlay)),var(--jts-tbp-mobile-image);background-size:var(--jts-tbp-hero-fit);background-position:var(--jts-tbp-mobile-position)}
 .jts-treat-box-page--contained .jts-tb-hero{width:min(calc(100% - 24px),var(--jts-max));margin-top:12px;border-radius:max(var(--jts-tbp-radius),18px)}
 .jts-treat-box-page .jts-tb-shell{width:min(calc(100% - 24px),var(--jts-tbp-builder-width));margin-top:28px}
 .jts-treat-box-page .jts-tb-coming{width:calc(100% - 24px)}
}

@media(max-width:600px){
 .jts-treat-box-page .jts-tb{padding-bottom:64px}
 .jts-treat-box-page .jts-tb-hero{min-height:var(--jts-tbp-mobile-height);border-radius:0;padding:42px 20px}
 .jts-treat-box-page--contained .jts-tb-hero{width:calc(100% - 20px);border-radius:max(var(--jts-tbp-radius),16px)}
 .jts-treat-box-page .jts-tb-hero h1{font-size:clamp(40px,13vw,60px)}
 .jts-treat-box-page .jts-tb-hero h2{font-size:22px}
 .jts-treat-box-page .jts-tb-hero p{font-size:16px;line-height:1.55}
 .jts-treat-box-page .jts-tb-shell{width:100%;padding-inline:12px}
 .jts-treat-box-page .jts-tb-coming{width:calc(100% - 24px);margin-top:14px}
 .jts-treat-box-page .jts-tb-toolbar{top:74px}
 .jts-tbp-page-content{padding:0 12px 64px}
 .jts-tbp-page-content__inner{border-radius:18px;padding:26px 20px}
}
