/* Vitrine comercial: preserva a identidade editorial e torna a compra prioritária. */
.site-header{position:sticky;top:0;z-index:25;box-shadow:0 5px 20px #1b261509}
.header-inner{gap:24px}
.header-cart{display:inline-flex;gap:9px;align-items:center;border:1px solid #29392c;background:#26372b;color:white;padding:13px 16px;white-space:nowrap;font-weight:700;font-size:12px;cursor:pointer}
.header-cart:hover{background:#425744}
.header-cart>span{font-size:19px;line-height:1}
.header-cart b{display:inline-grid;place-items:center;min-width:21px;height:21px;border-radius:50%;background:#d9c297;color:#223229;font:700 11px var(--sans)}
.collection{padding-block:74px 88px;background:linear-gradient(#fffdfa,#f4f0e7)}
.collection .section-caption{border-bottom:1px solid #d2c7b2;padding-bottom:22px}
.collection-heading{margin:28px 0 29px}
.collection-heading h2{font-size:clamp(46px,5.2vw,81px)}
.collection-heading>a{min-height:44px;padding:13px 18px;border:1px solid #324333;background:#2d382d;color:white;font-size:12px}
.collection-heading>a:hover{background:#455943}
.product-grid{align-items:stretch}
.product-card{background:#fff;box-shadow:0 15px 38px #2935280b;border:1px solid #e4e0d6;padding-bottom:17px;transition:transform .25s ease,box-shadow .25s ease}
.product-card:hover{transform:translateY(-4px);box-shadow:0 20px 38px #2935281e}
.product-photo{background:#f7f6f1}
.product-card h3,.product-card>p,.product-category,.product-action{margin-left:17px;margin-right:17px}
.product-card h3{font-size:clamp(23px,2.2vw,32px);margin-bottom:11px}
.product-card>p{color:#576355;min-height:2.5em;margin-bottom:13px}
.product-action{min-height:31px;padding-block:6px;margin-top:auto;font-size:12px}
.buy-actions{display:flex;flex-direction:column;gap:8px;margin:14px 17px 0}
.buy-actions button,.detail-buy button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:46px;border-radius:2px;padding:11px 10px;font-size:12px;font-weight:700;cursor:pointer;transition:background .18s,transform .18s}
.buy-actions button:hover,.detail-buy button:hover{transform:translateY(-2px)}
.buy-add{color:#29372c;background:#fff;border:1px solid #909d88}
.buy-add:hover{background:#e8eee4}
.buy-now{background:#273a2c;color:#fff;border:1px solid #273a2c;box-shadow:0 3px 0 #1c2c1b29}
.buy-now:hover{background:#485c46}
/* A página do catálogo é o centro da experiência de e-commerce. */
.catalog-head{padding-block:62px 42px}
.catalog-head h1{margin-block:24px;font-size:clamp(54px,7vw,94px)}
.catalog-grid{gap:52px;padding-bottom:80px}
.catalog-group{padding:28px;background:linear-gradient(130deg,#faf9f5,#f3efe5);border:1px solid #e5ded0;grid-template-columns:minmax(170px,.68fr) minmax(0,2fr);gap:34px}
.catalog-group:nth-child(2){background:linear-gradient(130deg,#f7f3f9,#ede6f2)}
.catalog-group:nth-child(3){background:linear-gradient(130deg,#f7f5f2,#ebe7e2)}
.catalog-group-heading{top:100px}
.catalog-group-heading h2{font-size:clamp(43px,4vw,64px)}
.catalog-group .product-grid{gap:15px}
.catalog-group .product-photo{aspect-ratio:1/1.03}
.catalog-group .product-card{background:#fff;border:1px solid #e6e1d7}
.detail{padding-block:28px 65px}
.detail-grid{margin-top:27px;gap:clamp(25px,5vw,80px)}
.detail-photo{min-height:420px}
.detail-copy h1{margin:22px 0}
.detail-meta{margin:25px 0;padding:20px 0}
.purchase-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:8px}
.purchase-select{height:49px;width:100%;padding:10px 14px;border:1px solid #a9b4a6;background:#fffdfa;color:#29372c}
.detail-buy{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:21px}
.detail-buy button{min-height:52px}
.detail-back{display:inline-block;font-size:12px;font-weight:700;border-bottom:1px solid #adad9c;margin-top:23px;padding-bottom:7px}
.variants{padding-top:55px!important}
/* Modal funcional sem preço presumido; Stripe permanece bloqueado até configuração. */
.commerce-cart{position:fixed;inset:0 0 0 auto;margin:0;padding:0;width:min(480px,100%);max-width:none;height:100dvh;max-height:none;border:0;background:#fffdfa;color:#27382b;box-shadow:-20px 0 60px #0002}
.commerce-cart::backdrop{background:#10170eb0}
.cart-head{display:flex;justify-content:space-between;align-items:start;gap:15px;padding:31px 26px 24px;border-bottom:1px solid #ddd8c9}
.cart-kicker{font-size:10px;letter-spacing:.12em;font-weight:700;color:#858067}
.cart-head h2{font:400 40px/1.1 var(--serif);margin:11px 0 0}
.cart-head h2 span{font:600 14px var(--sans);color:#747b6c}
.cart-close{height:36px;width:36px;border-radius:50%;background:#fff;border:1px solid #b4b9ae}
.cart-lines{height:calc(100dvh - 315px);overflow-y:auto;padding:15px 26px}
.cart-empty{font:400 23px/1.45 var(--serif);padding:45px 10px;text-align:center;color:#566456}
.cart-item{border-bottom:1px solid #e6e1d6;padding:22px 0;display:flex;justify-content:space-between;gap:20px}
.cart-item-copy{display:flex;flex-direction:column;gap:10px;max-width:57%}
.cart-item-copy strong{font:400 19px/1.2 var(--serif)}
.cart-item-copy span{font-size:12px;color:#656f62}
.cart-item-actions{display:flex;flex-direction:column;align-items:end;gap:10px}
.cart-stepper{display:flex;align-items:center;gap:10px}
.cart-stepper button{height:31px;width:31px;border:1px solid #c8d0c2;background:#fff;font-size:18px}
.cart-stepper span{font-size:13px;min-width:17px;text-align:center}
.cart-remove{border:0;background:none;color:#566656;text-decoration:underline;font-size:11px}
.cart-bottom{position:absolute;bottom:0;left:0;right:0;background:#fffdfa;border-top:1px solid #dedbcf;padding:20px 26px 27px}
.cart-notice{font-size:12px;line-height:1.55;color:#5d6257;margin:0 0 14px}
.checkout-button{width:100%;min-height:50px;border:0;background:#26382c;color:#fff;font-weight:700;font-size:13px}
.checkout-button:disabled{background:#dadfd5;color:#505c4f;cursor:not-allowed}
.continue-shopping{border:0;background:none;display:block;margin:14px auto 0;font-size:12px;color:#405845;cursor:pointer}
.cart-toast{position:fixed;z-index:60;bottom:20px;left:50%;transform:translateX(-50%);max-width:calc(100% - 30px);background:#263b2d;color:white;padding:14px 21px;font-size:12px;box-shadow:0 8px 24px #0003}
@media(max-width:760px){
 .header-inner{gap:8px}.site-header nav{margin-left:auto;gap:13px}
 .header-cart{font-size:0;gap:4px;padding:9px;min-height:39px}
 .header-cart>span{font-size:19px}.header-cart b{font-size:10px;min-width:18px;height:18px}
 .collection{padding-block:42px 49px}.collection-heading{margin:22px 0}.collection-heading h2{margin-bottom:15px}
 .product-grid{gap:14px 9px}.product-card{padding-bottom:10px}
 .product-card h3,.product-card>p,.product-category,.product-action{margin-left:9px;margin-right:9px}
 .product-card h3{min-height:2.7em;font-size:clamp(19px,5vw,27px)}
 .product-card>p{min-height:2.2em;margin-bottom:9px}
 .buy-actions{margin:9px 8px 0;gap:7px}.buy-actions button{min-height:42px;font-size:11px;padding:8px 3px}
 .catalog-head{padding-block:48px 27px}.catalog-head h1{margin-block:17px;font-size:clamp(47px,10vw,71px)}
 .catalog-grid{gap:32px;padding-bottom:46px}.catalog-group{padding:18px 13px;gap:16px}
 .catalog-group-heading{margin-bottom:17px}.catalog-group .product-grid{gap:11px}
 .detail-grid{gap:20px}.detail-copy{padding-top:21px}.detail-meta{margin:20px 0}
 .detail{padding-block:22px 42px}.detail-buy{gap:8px}.detail-buy button{font-size:11px;padding:8px 4px}
 .variants{padding-top:39px!important}
}
/* Campanhas de categoria ocupam a segunda coluna quando há apenas um produto. */
.category-campaign{position:relative;display:block;min-width:0;min-height:400px;overflow:hidden;background:#eae3d9}
.category-campaign img{height:100%;width:100%;object-fit:cover;object-position:center 30%;transition:transform .5s}
.category-campaign:hover img{transform:scale(1.03)}
.category-campaign span{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,#1119);padding:44px 17px 20px;color:white;font-weight:700;font-size:13px}
.catalog-group .product-grid:has(> .category-campaign) .product-card{width:100%}
@media(max-width:760px){.category-campaign{display:none}.catalog-group .product-grid:has(> .category-campaign){grid-template-columns:minmax(0,1fr)}}
@media(max-width:440px){.site-header nav{gap:10px}.wordmark{font-size:23px}.site-header nav a{font-size:10px}}
/* Preserve all original campaign lettering and labels in category showcases. */
.category-campaign img{height:calc(100% - 54px);object-fit:contain;object-position:center;background:#ece5db}
.category-campaign span{height:54px;padding:15px 18px;background:#283a2c;display:flex;align-items:center}
.catalog-group:nth-child(2) .category-campaign img{background:#eae4f0}
/* EC-03: hero starts a purchase directly; other sections retain their own backlog. */
.hero-buy-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:24px;max-width:510px}
.hero-buy-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:53px;padding:11px 13px;border:1px solid #324a36;border-radius:3px;font-size:12px;font-weight:700;line-height:1.25;text-align:center;cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}
.hero-buy-actions button:hover{transform:translateY(-2px)}
.hero-buy-actions button:focus-visible{outline:3px solid #b89148;outline-offset:3px}
.hero-buy-actions .hero-add{background:transparent;color:#263e2e;box-shadow:0 2px 0 #293c2415}
.hero-buy-actions .hero-add:hover{background:#e2eadd}
.hero-buy-actions .hero-buy-now{background:#283e2e;color:#fff;box-shadow:0 4px 0 #1624191e,0 7px 13px #16241912}
.hero-buy-actions .hero-buy-now:hover{background:#405a43}
.site-header .header-cart{border:1px solid transparent;background:transparent;color:#314235;padding:8px 10px;box-shadow:none}
.site-header .header-cart:hover{background:#e9eee5}
.site-header .header-explore{background:transparent;border:0;border-bottom:1px solid #b3b9aa;border-radius:0;padding:10px 4px;box-shadow:none;color:#586254}
.site-header .header-explore:hover{background:transparent;color:#253e2d}
@media(max-width:760px){.hero-buy-actions{gap:9px;margin-top:16px}.hero-buy-actions button{min-height:46px;padding:9px 7px;font-size:11px}.site-header .header-cart{min-height:40px;padding:8px}}
@media(max-width:360px){.hero-buy-actions{gap:6px;margin-top:12px}.hero-buy-actions button{padding:8px 4px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.hero-buy-actions button{transition:none}}
/* EC-12 — campanha inicia compra; seleção explícita quando a arte contém vários sabores. */
.world-card[data-campaign-buy]{cursor:pointer}
.world-card[data-campaign-buy]:focus-visible{outline:4px solid #c9a15e;outline-offset:4px}
.campaign-variant-dialog{position:fixed;inset:0;margin:auto;width:min(490px,calc(100vw - 28px));max-width:none;max-height:min(90dvh,640px);overflow:auto;border:1px solid #d1c9b7;border-radius:4px;background:#fffdfa;padding:28px;color:#28362b;box-shadow:0 25px 75px #101c1266}
.campaign-variant-dialog::backdrop{background:#101b12b8}
.campaign-variant-head{display:flex;gap:15px;justify-content:space-between;align-items:flex-start}
.campaign-variant-head>div>span{font-size:10px;letter-spacing:.12em;font-weight:700;color:#68705e}
.campaign-variant-head h2{font:400 clamp(28px,5vw,38px)/1.13 var(--serif);margin:12px 0}
.campaign-variant-head p{font-size:13px;line-height:1.65;color:#556452;margin:0 0 19px}
.campaign-variant-options{display:grid;gap:8px}
.campaign-variant-options button{min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;border:1px solid #cad3c4;background:#f8f7f2;color:#273b2c;padding:12px 15px;font-size:14px;font-weight:700}
.campaign-variant-options button span{font-size:11px;font-weight:600;color:#52694e;text-align:right}
.campaign-variant-options button:hover,.campaign-variant-options button:focus-visible{background:#e7eee3;border-color:#587857}
@media(max-width:440px){.campaign-variant-dialog{padding:19px}.campaign-variant-options button{padding:12px 10px;font-size:13px}.campaign-variant-options button span{max-width:120px;font-size:10px}}

/* EC-09: catálogo único, filtros opcionais por posicionamento e variantes preservadas. */
.catalog-grid{display:block;padding-bottom:86px}
.catalog-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.catalog-filter-bar button{min-height:44px;padding:10px 18px;border:1px solid #b6beaf;border-radius:24px;background:#fffdfa;color:#324333;font-size:13px;font-weight:700}
.catalog-filter-bar button[aria-pressed="true"]{background:#2d382d;color:white;border-color:#2d382d}
.catalog-filter-bar button:hover:not([aria-pressed="true"]){background:#e7ece2}
.catalog-filter-count{margin:0 0 23px;font-size:12px;color:#657062}
.catalog-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.catalog-products .product-card[hidden]{display:none}
.catalog-variant{margin:0 17px 4px;display:flex;flex-direction:column;gap:5px}
.catalog-variant label{font-size:11px;color:#435447;font-weight:700}
.catalog-variant select{min-width:0;width:100%;min-height:44px;padding:10px;border:1px solid #a7b29f;background:#fffdfa;font:inherit;font-size:13px;color:#29372c}
@media(max-width:1080px){.catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.catalog-grid{padding-bottom:50px}.catalog-products{gap:14px 9px}.catalog-filter-bar{gap:7px}.catalog-filter-bar button{padding:8px 13px;font-size:12px}.catalog-variant{margin-inline:9px}}
@media(max-width:360px){.catalog-filter-bar button{padding:8px 10px;font-size:11px}.catalog-variant select{font-size:12px}}

/* EC-01: campanha original inteira, com preenchimento visual derivado da própria arte. */
@media(min-width:761px){
 .feature-image{isolation:isolate}
 .feature-image::before{content:"";position:absolute;inset:-24px;z-index:0;background-position:center;background-size:cover;filter:blur(24px) saturate(.75);opacity:.64;pointer-events:none}
 .feature-image img{position:relative;z-index:1;object-fit:contain;width:100%;height:100%}
 .feature-slide:nth-child(1) .feature-image::before{background-image:url("assets/campaign-tangerine.webp")}
 .feature-slide:nth-child(2) .feature-image::before{background-image:url("assets/campaign-lime.webp")}
 .feature-slide:nth-child(3) .feature-image::before{background-image:url("assets/campaign-cranberry.webp")}
 .feature-slide:nth-child(4) .feature-image::before{background-image:url("assets/campaign-magnesium.webp")}
 .feature-slide:nth-child(5) .feature-image::before{background-image:url("assets/campaign-creatine.webp")}
}
@media(min-width:1200px){.hero-frame{height:clamp(740px,58vw,850px)}}

/* EC-10: preserve every pixel of the original second-section campaign artwork. */
.worlds .world-card{height:auto;max-height:none;display:grid;grid-template-rows:clamp(450px,48vw,680px) auto;isolation:isolate;background:#c8b6a2}
.worlds .world-night{background:#343040}
.worlds .world-card::before{content:"";position:absolute;inset:0 0 auto;height:clamp(450px,48vw,680px);background:center/cover no-repeat url('assets/campaign-editorial.webp');filter:blur(15px);opacity:.38;pointer-events:none}
.worlds .world-night::before{background-image:url('assets/campaign-night.webp')}
.worlds .world-card>img{position:relative;z-index:1;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;transition:none;transform:none}
.worlds .world-card:hover>img{transform:none}
.worlds .world-tag{position:relative;z-index:2;inset:auto;max-width:none;width:100%;min-height:100px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 18px;padding:16px 21px;background:#28392d;text-shadow:none;color:#fff}
.worlds .world-night .world-tag{background:#29253a}
.worlds .world-tag>span:first-child{grid-column:1;grid-row:1;font-size:10px}
.worlds .world-tag strong{grid-column:1;grid-row:2;font-size:clamp(23px,2.2vw,34px)}
.worlds .world-tag>span:last-child{grid-column:2;grid-row:1/span 2;margin:0;font-size:12px;text-align:right;letter-spacing:0}
@media(max-width:760px){
 .worlds .world-card{grid-template-rows:auto auto;max-height:none}
 .worlds .world-card::before{display:none}
 .worlds .world-card>img{width:100%;height:auto;aspect-ratio:1086/1448;object-fit:contain}
 .worlds .world-tag{min-height:90px;padding:13px 15px;gap:5px 10px}
 .worlds .world-tag strong{font-size:clamp(23px,6vw,32px)}
 .worlds .world-tag>span:last-child{font-size:11px;max-width:115px}
}
@media(max-width:350px){.worlds .world-tag strong{font-size:22px}.worlds .world-tag>span:last-child{font-size:10px}}
@media(prefers-reduced-motion:reduce){.worlds .world-card>img{transition:none}}

/* EC-08: message sits higher, purchase actions anchor the lower area of each desktop slide. */
@media(min-width:761px){
 .feature-slide .feature-copy{justify-content:flex-start}
 .feature-slide .feature-center{flex:1;display:flex;flex-direction:column;align-items:stretch;min-height:0;max-width:none;padding-top:clamp(55px,7.5vw,118px)}
 .feature-slide .feature-center h2{margin-bottom:20px}
 .feature-slide .feature-center .feature-description{margin-bottom:24px}
 .feature-slide .hero-buy-actions{margin-top:auto;max-width:510px;width:100%}
}

/* EC-07: a single brand-positioning badge in hero and every product card. */
.brand-badge{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:6px 11px;border:1px solid #a3b09c;border-radius:18px;background:#eef2e9;color:#344b35;font:700 10px/1.1 var(--sans);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.badge-beauty{background:#f4eee3;color:#685438;border-color:#d8c3a1}
.badge-health{background:#eee8f2;color:#51436a;border-color:#ccc0da}
.badge-performance{background:#f4e9e6;color:#743d33;border-color:#dabbb1}
.feature-slide .feature-top{justify-content:flex-start}
.feature-slide .feature-top .brand-badge{color:inherit}
.feature-slide .feature-top .badge-beauty{color:#685438}
.feature-slide .feature-top .badge-health{color:#51436a}
.feature-slide .feature-top .badge-performance{color:#743d33}
.product-category>.brand-badge{font-size:10px;letter-spacing:.05em}
@media(max-width:400px){.brand-badge{padding:6px 8px;font-size:9px}}

/* EC-04: desktop pager sits within the hero's right column, not in a separate strip. */
@media(min-width:761px){
 .hero-frame .hero-pager{position:absolute;z-index:3;left:55%;bottom:11px;width:45%;height:33px;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent}
 .hero-frame .hero-pager-dot{width:32px;height:32px;min-height:32px;border-radius:50%;cursor:pointer}
 .hero-frame .hero-pager-dot span{width:7px;height:7px}
 .hero-frame .hero-pager-dot[aria-current="true"] span{transform:scale(1.45)}
 .hero-frame .hero-pager-dot:focus-visible{outline:3px solid #b39050;outline-offset:2px}
}
@media(min-width:761px) and (max-width:1199px){.hero-frame .hero-pager{left:53%;width:47%;height:28px;bottom:2px}.hero-frame .hero-pager-dot{width:28px;height:28px;min-height:28px}}
@media(max-width:760px){.hero-frame .hero-pager{display:none}}

/* EC-05: normalize external gaps between sections; preserve each section's content. */
@media(min-width:761px){
 main>.editorial-intro{padding-top:66px;padding-bottom:35px}
 main>.worlds{padding-bottom:35px}
 main>.collection{padding-top:40px;padding-bottom:56px}
 main>.closing{padding-top:60px;padding-bottom:65px}
 main:has(.closing)+.footer .footer-top{padding-top:50px}
}
@media(max-width:760px){
 main>.editorial-intro{padding-top:48px;padding-bottom:25px}
 main>.worlds{padding-bottom:25px}
 main>.collection{padding-top:43px;padding-bottom:45px}
 main>.closing{padding-top:38px;padding-bottom:45px}
 main:has(.closing)+.footer .footer-top{padding-top:40px}
}

/* EC-06: headings carry meaning without redundant overlines; retain subtle dividers. */
main>.editorial-intro .editorial-intro-grid{border-top:1px solid var(--line);padding-top:24px;margin-top:0}
main>.collection .collection-heading{border-top:1px solid var(--line);padding-top:24px;margin-top:0}
main>.closing h2{margin-top:0}
.catalog-head h1{margin-top:0}
@media(max-width:760px){main>.editorial-intro .editorial-intro-grid{padding-top:23px}main>.collection .collection-heading{padding-top:20px}}

/* EC-02: understated warm editorial glow in residual space, never on product artwork. */
.feature-slide .feature-copy{background-image:radial-gradient(ellipse at 100% 8%,rgba(194,158,98,.10),transparent 42%),radial-gradient(ellipse at 5% 92%,rgba(211,183,134,.06),transparent 52%)}
main>.editorial-intro .editorial-intro-grid{background-image:linear-gradient(112deg,rgba(216,189,139,.055),transparent 61%)}
.worlds .world-card{box-shadow:0 12px 32px rgba(34,38,27,.085)}
.worlds .world-tag{border-top:1px solid rgba(223,199,147,.35)}
main>.collection{background-image:radial-gradient(ellipse at 97% 7%,rgba(193,161,110,.085),transparent 47%),linear-gradient(#fffdfa,#f4f0e7)}
main>.collection .product-card:hover{border-color:#c7b38d;box-shadow:0 18px 36px rgba(62,55,39,.11)}
main>.closing{background-image:radial-gradient(ellipse at 50% 12%,rgba(207,174,111,.14),transparent 67%)}
@media(max-width:760px){.worlds .world-card{box-shadow:0 7px 20px rgba(34,38,27,.075)}}
@media(prefers-reduced-motion:reduce){main>.collection .product-card:hover{transform:none}}

/* Mobile release hotfix: recognizable font-independent cart icon across all pages. */
.header-cart .cart-icon{display:block;flex:none;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.site-header .header-cart{gap:5px;padding:8px 4px;min-width:57px;justify-content:center}.header-cart .cart-icon{width:23px;height:23px}}
@media(min-width:550px) and (max-width:760px){.hero-frame{height:calc(min(133.333vw,77svh) + 300px)}.feature-slide,.feature-slide.is-active{grid-template-rows:min(133.333vw,77svh) 300px}.feature-copy{height:300px}}

/* Cart product previews and compact, legible mobile order rows. */
.cart-item{align-items:center;gap:13px}.cart-item-visual{width:76px;min-width:76px;height:92px;display:grid;place-items:center;background:#f6f6f2;border:1px solid #e7e7df;overflow:hidden}.cart-item-visual img{width:100%;height:100%;object-fit:contain}.cart-item-fallback{font:400 12px var(--serif);color:#273a2c;text-align:center}.cart-item-copy{flex:1;min-width:0;max-width:none;gap:6px}.cart-item-copy strong{font-size:17px}.cart-item-actions{flex:none}.cart-stepper{gap:5px}.cart-stepper button{width:30px;height:34px}.cart-bottom .cart-notice[role="alert"]{color:#a12e2e}
@media(max-width:390px){.cart-lines{padding-inline:14px}.cart-item{gap:8px}.cart-item-visual{width:61px;min-width:61px;height:76px}.cart-item-copy strong{font-size:15px}.cart-stepper{gap:3px}.cart-stepper button{width:27px;height:31px}.cart-stepper span{min-width:13px}.cart-head,.cart-bottom{padding-left:16px;padding-right:16px}}
/* Prevent product detail media intrinsic width from forcing horizontal overflow. */
.detail-photo{min-width:0;grid-template-columns:minmax(0,1fr)}.detail-photo img{min-width:0;max-width:100%}
@media(max-width:760px){.detail-photo{min-height:0;width:100%;max-width:100%;aspect-ratio:1/1.1}}
/* Payment return deliberately avoids asserting a successful payment from a browser redirect. */
.order-result{min-height:calc(100svh - 190px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-block:80px;max-width:850px}
.order-result h1{font:400 clamp(46px,7vw,84px)/1 var(--serif);letter-spacing:-.045em;margin:0 0 25px}
.order-result p{max-width:640px;font-size:16px;line-height:1.7;color:#556353}
.order-result .cta{margin-top:22px}
@media(max-width:760px){.order-result{padding-block:60px;min-height:calc(100svh - 140px)}.order-result p{font-size:14px}}

/* Cart monetary summary: verified Stripe unit amounts only; no estimated totals. */
.cart-summary{display:flex;align-items:baseline;justify-content:space-between;gap:18px;border-top:1px solid #dedbcf;padding-top:13px;margin-bottom:5px;font-size:15px;font-weight:700;color:#28392c}
.cart-summary strong{font:700 clamp(16px,4vw,22px)/1.2 var(--sans);text-align:right;font-variant-numeric:tabular-nums}
.cart-shipping{font-size:11px;color:#59695a;margin:0 0 14px}
.cart-item-price{font-size:12px;font-weight:700;color:#2a402d;margin-top:4px;font-variant-numeric:tabular-nums}
.cart-item .cart-item-price{display:block}
.cart-lines{height:auto;position:absolute;top:118px;bottom:245px;left:0;right:0;overflow-y:auto}
@media(max-width:390px){.cart-lines{top:110px;bottom:253px}}

/* Identidade N–Nature: as duas iniciais em maiúsculas e folha no lugar do brilho. */
.wordmark{display:inline-flex;align-items:center;gap:5px;line-height:1.1;white-space:nowrap}
.wordmark-text{display:inline-block;white-space:nowrap}
.wordmark .wordmark-dash{color:inherit;margin-inline:0}
.wordmark .brand-leaf{width:.58em;height:.58em;flex:none;display:block;color:#788762;--paper:#fffdfa;overflow:visible;transform:rotate(-8deg)}
.footer .wordmark .brand-leaf{color:#9ca980;--paper:#171a16}
@media(max-width:400px){.site-header .wordmark{font-size:22px;gap:2px}.site-header .brand-leaf{width:.52em;height:.52em}}
.footer .footer-mark .wordmark-text,.footer .footer-mark .wordmark-dash{font:inherit;color:inherit;vertical-align:baseline;margin:0}

/* Original campaign emblem extracted as a transparent image, never retyped. */
.site-header .wordmark{display:inline-flex;align-items:center;flex:none;line-height:1;min-width:0}
.site-header .brand-logo{display:block;width:158px;height:auto;max-height:82px;object-fit:contain}
.footer .wordmark{display:inline-flex;align-items:center;line-height:1}
.footer .brand-logo{display:block;width:186px;max-width:100%;height:auto;object-fit:contain}
@media(max-width:760px){.site-header .brand-logo{width:134px;max-height:67px}.site-header .header-inner{gap:10px}}
@media(max-width:360px){.site-header .brand-logo{width:120px}.site-header .header-inner{gap:7px}}

/* Release: keep cart visible at the hero and bring product artwork + purchase actions into view. */
@media(min-width:761px){
 .hero-frame{height:min(clamp(570px,69vw,730px),calc(100svh - 86px))}
}
@media(min-width:1200px){
 .hero-frame{height:min(clamp(740px,58vw,850px),calc(100svh - 86px))}
}
@media(max-width:760px){
 .hero-frame{--hero-media-height:min(133.333vw,max(220px,calc(100svh - 320px)));--hero-copy-height:235px;height:calc(var(--hero-media-height) + var(--hero-copy-height))}
 .feature-slide,.feature-slide.is-active{grid-template-rows:var(--hero-media-height) var(--hero-copy-height)}
 .feature-image{isolation:isolate}
 .feature-image::before{content:"";position:absolute;inset:-12px;background-position:center;background-size:cover;filter:blur(16px) saturate(.8);opacity:.7;pointer-events:none}
 .feature-slide:nth-child(1) .feature-image::before{background-image:url('assets/campaign-tangerine.webp')}
 .feature-slide:nth-child(2) .feature-image::before{background-image:url('assets/campaign-lime.webp')}
 .feature-slide:nth-child(3) .feature-image::before{background-image:url('assets/campaign-cranberry.webp')}
 .feature-slide:nth-child(4) .feature-image::before{background-image:url('assets/campaign-magnesium.webp')}
 .feature-slide:nth-child(5) .feature-image::before{background-image:url('assets/campaign-creatine.webp')}
 .feature-image img{position:relative;z-index:1;object-fit:contain}
 .feature-copy{height:var(--hero-copy-height);min-height:0;padding:15px 20px 14px;justify-content:flex-start;overflow:hidden}
 .feature-top{position:static;inset:auto;display:flex;min-height:27px;align-items:center}
 .feature-center{margin-top:8px;flex:1;min-height:0;padding:0}
 .feature-center h2{font-size:clamp(29px,8.5vw,39px);line-height:1.03;margin:0 0 6px}
 .feature-center .feature-description{font-size:12px;line-height:1.35;margin:0}
 .feature-center .hero-buy-actions{margin-top:auto;max-width:none;width:100%;gap:8px}
 .hero-buy-actions button{min-height:44px;padding:8px 5px;font-size:11px}
}
@media(max-width:360px){
 .hero-frame{--hero-media-height:min(133.333vw,max(205px,calc(100svh - 320px)));--hero-copy-height:240px}
 .feature-copy{padding:12px 16px}
 .feature-center h2{font-size:28px;line-height:1.02}
 .feature-center .feature-description{font-size:11px}
 .hero-buy-actions button{min-height:42px;font-size:10px}
}
/* An image's intrinsic portrait height must never overflow a compressed mobile hero row. */
@media(max-width:760px){
 .feature-image img{position:absolute;inset:0;width:100%;height:100%;max-height:100%;object-fit:contain}
}

/* Homepage: no navigation chrome over the campaign, only an accessible floating cart. */
.hero-cart-mode .site-header{position:fixed;inset:0 0 auto;height:86px;background:transparent;border-color:transparent;box-shadow:none;pointer-events:none;transition:background .32s ease,border-color .32s ease,box-shadow .32s ease}
.hero-cart-mode .header-inner{justify-content:space-between}
.hero-cart-mode .site-header .wordmark{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .32s ease,visibility 0s linear .32s}
.hero-cart-mode .site-header .header-cart{pointer-events:auto;margin-left:auto;background:rgba(255,253,250,.96);border:1px solid rgba(75,89,72,.22);border-radius:100px;box-shadow:0 4px 17px rgba(25,33,22,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .28s ease,box-shadow .28s ease}
.hero-cart-mode.header-expanded .site-header{background:#fffdfa;border-color:var(--line);box-shadow:0 5px 20px #1b261509;pointer-events:auto}
.hero-cart-mode.header-expanded .site-header .wordmark{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .32s ease,visibility 0s}
.hero-cart-mode.header-expanded .site-header .header-cart{background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
@media(max-width:760px){.hero-cart-mode .site-header{height:68px}.hero-cart-mode .header-inner{width:calc(100% - 32px)}.hero-cart-mode .site-header .header-cart{min-height:44px;min-width:52px;padding:7px 10px}}
@media(prefers-reduced-motion:reduce){.hero-cart-mode .site-header,.hero-cart-mode .site-header .wordmark,.hero-cart-mode .site-header .header-cart{transition:none}}
/* The advertisement itself supplies branding; do not repeat its category above the copy. */
.feature-slide .feature-copy .feature-center{margin-top:0}
@media(min-width:761px){.feature-slide .feature-center{padding-top:clamp(22px,4vw,62px)}}
/* No decorative separator or large dead space between the campaign and its next section. */
main>.editorial-intro{padding-top:24px}
main>.editorial-intro .editorial-intro-grid{border-top:0;padding-top:0;margin-top:0}
@media(max-width:760px){main>.editorial-intro{padding-top:14px;padding-bottom:23px}.editorial-intro-grid{margin-top:0}}
/* Reinvest badge height in campaign artwork, preserving first-viewport purchase buttons. */
@media(max-width:760px){.hero-frame{--hero-media-height:min(133.333vw,max(235px,calc(100svh - 250px)));--hero-copy-height:205px}.feature-copy{padding:13px 20px 12px}.feature-center{margin-top:0}.feature-center h2{margin-top:0}}
@media(max-width:360px){.hero-frame{--hero-media-height:min(133.333vw,max(220px,calc(100svh - 250px)));--hero-copy-height:210px}.feature-copy{padding:12px 16px}}
/* Compact floating cart avoids covering the campaign's own N–Nature emblem on phones. */
@media(max-width:760px){
 .hero-cart-mode:not(.header-expanded) .site-header .header-cart{position:relative;width:44px;min-width:44px;height:44px;padding:9px;gap:0}
 .hero-cart-mode:not(.header-expanded) .site-header .header-cart .cart-icon{width:23px;height:23px}
 .hero-cart-mode:not(.header-expanded) .site-header .header-cart #cart-count{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;font-size:10px;display:grid;place-items:center;border:1px solid #fffdfa}
}

/* A modal must follow the visible viewport as mobile browser chrome expands or contracts.
   Internal flex layout keeps the subtotal and checkout inside the available screen. */
.commerce-cart{
 inset:var(--cart-viewport-top,0px) 0 auto auto;
 height:var(--cart-viewport-height,100dvh);
 max-height:var(--cart-viewport-height,100dvh);
 display:none;
 flex-direction:column;
 overflow:hidden;
 overscroll-behavior:contain;
}
.commerce-cart[open]{display:flex}
.commerce-cart .cart-head{flex:0 0 auto}
.commerce-cart .cart-lines{
 position:relative;inset:auto;height:auto;bottom:auto;top:auto;
 flex:1 1 auto;min-height:0;overflow-y:auto;
 overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
}
.commerce-cart .cart-bottom{
 position:relative;inset:auto;bottom:auto;flex:0 0 auto;
 padding-bottom:max(18px,env(safe-area-inset-bottom));
}
html.cart-modal-open,html.cart-modal-open body{overflow:hidden;overscroll-behavior:none}
@media(max-width:760px){
 .commerce-cart{left:0;right:0;width:100%;max-width:none;border-radius:0}
 .commerce-cart .cart-head{padding-top:clamp(12px,3vh,24px);padding-bottom:14px}
 .commerce-cart .cart-bottom{padding-top:13px}
}

/* Cart badge counts distinct product/variant lines, never summed units. */
.header-cart #cart-count[hidden]{display:none!important}
