@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&display=swap');
:root{font-family:Outfit,system-ui,sans-serif;color:#183426;background:#fff;color-scheme:light;--green:#167443;--panel:#fff;--line:#d9e7de;--muted:#4b6657}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,select,input{font:inherit}button,select{cursor:pointer}button{border:0;border-radius:6px;padding:.7rem 1rem;background:var(--green);color:#fff;font-weight:600}button:disabled{background:#ddd;color:#555;cursor:default}img{max-width:100%}.wrap{width:min(1320px,calc(100% - 36px));margin:auto}header{background:#fff}footer{background:#f1f8f3}.head{display:grid;grid-template-columns:max-content 1fr auto;align-items:center;gap:clamp(.8rem,5vw,4rem);padding:1rem 0}.logo{display:inline-flex;align-items:center;gap:.55rem;font-weight:800;font-size:1.25rem;letter-spacing:-.04em}.logo img{flex:none}.head form{display:flex;background:#fff;border:1px solid var(--green);border-radius:7px;overflow:hidden}.head input{min-width:0;width:100%;padding:.8rem;border:0;background:transparent;color:inherit}.head form button{border-radius:0}.cart{white-space:nowrap;background:#e7f5eb;color:#145d39}.cart span{background:var(--green);border-radius:30px;padding:.15rem .4rem;margin-left:.25rem}nav{display:flex;gap:1.5rem;align-items:center;overflow:auto;white-space:nowrap;padding:.7rem 0 1rem}nav a:first-child{font-weight:700}nav a:last-child{color:var(--green)}.content{padding:2rem 0 4rem;min-height:50vh}.toolbar,.dialog-head{display:flex;justify-content:space-between;gap:.8rem;align-items:center;flex-wrap:wrap}.toolbar h1,.toolbar h2{margin:0}.toolbar select{max-width:100%;border:1px solid var(--line);background:var(--panel);color:inherit;padding:.5rem;border-radius:6px}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;padding:.85rem;transition:box-shadow .18s}.card:hover{box-shadow:0 7px 24px #164c2720;border-color:#518060}.card img,.placeholder{width:100%;aspect-ratio:1;object-fit:contain}.placeholder{display:grid;place-items:center;background:#eef7f0;color:var(--muted)}.card h2{font-size:1rem;font-weight:600;margin:.6rem 0;line-height:1.25}.card p{margin:auto 0 .7rem}.card small{color:var(--muted)}.price{color:var(--green);font-size:1.2rem;font-weight:800}.price del{font-size:.85rem;color:var(--muted);margin-left:.35rem;font-weight:500}.pages{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem}.pages a,.outline{border:1px solid var(--line);border-radius:6px;padding:.6rem .85rem}.foot{display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding:2.5rem 0}.foot div:last-child{display:flex;flex-wrap:wrap;gap:1rem;align-content:start}.detail{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,5vw,5rem);margin-top:1.4rem}.detail h1{margin:.25rem 0}.detail .primary{width:100%;height:min(57vh,480px);object-fit:contain}.thumbs{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.thumbs button{background:white;border:1px solid var(--line);padding:.3rem}.thumbs img{width:65px;height:65px;object-fit:contain}dialog{background:var(--panel);color:inherit;width:min(550px,calc(100% - 28px));max-height:85vh;border:0;border-radius:10px;padding:1.5rem}dialog::backdrop{background:#0009}.basket-row{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center;border-bottom:1px solid var(--line);padding:.65rem 0}.basket-row input{width:5rem;padding:.4rem}
@media(max-width:950px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.head{grid-template-columns:1fr auto;gap:.65rem}.head form{grid-row:2;grid-column:1/-1}.logo{font-size:1.13rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.detail,.foot{grid-template-columns:1fr}.wrap{width:calc(100% - 24px)}}

header,footer{border-block:1px solid var(--line)}
nav a:last-child,.logo span{color:var(--green)}
.cart span{color:#fff}
.hero{border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 85% 28%,#d9f3e2 0%,transparent 60%),#f8fcf9}
.hero-content{padding-block:clamp(2.75rem,8vw,6.75rem)}
.hero h1{font-size:clamp(2.45rem,7vw,6rem);max-width:14ch;line-height:.98;letter-spacing:-.06em;margin:.5rem 0 1rem}
.hero p{max-width:48ch;color:var(--muted)}
.hero .eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.8rem}
.hero-button{display:inline-flex;align-items:center;gap:1rem;background:var(--green);color:#fff;border-radius:6px;font-weight:700;padding:.75rem 1rem;margin-top:.65rem}
.card img,.detail .primary,.thumbs button{background:#fff;border-radius:5px}
:focus-visible{outline:2px solid var(--green);outline-offset:3px}

/* Storefront navigation and merchandising */
.department-bar{border-top:1px solid var(--line);background:#f6fbf7}
#nav{overflow:visible;gap:clamp(.7rem,1.6vw,1.5rem);padding-block:0;min-height:3.25rem}
#nav>a{padding:.85rem 0;font-size:.9rem}
.department-menu{position:relative;z-index:5;flex:none}
.department-menu summary{cursor:pointer;list-style:none;color:var(--green);font-weight:700;padding:.9rem .25rem}
.department-menu summary::-webkit-details-marker{display:none}
.department-menu ul{list-style:none;margin:0;padding:0}
.department-menu>ul{position:absolute;top:100%;left:0;width:min(760px,calc(100vw - 38px));max-height:min(70vh,620px);overflow:auto;overscroll-behavior:contain;columns:3;column-gap:1.5rem;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:1rem;box-shadow:0 14px 38px #164c2729;white-space:normal}
.department-menu li{break-inside:avoid}
.department-menu li a{display:block;padding:.28rem 0;font-size:.9rem}
.department-menu>ul>li{margin-bottom:.65rem}
.department-menu>ul>li>a{font-weight:700}
.department-menu li ul{padding-left:.65rem;border-left:1px solid var(--line);color:var(--muted)}
.store-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:1rem;background:var(--panel);border:1px solid var(--line);border-radius:8px}
.store-strip a{padding:1rem;text-align:center;font-weight:600}
.store-strip a+a{border-left:1px solid var(--line)}
.shelf{margin-block:2.5rem;scroll-margin-top:1rem}
.shelf-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}
.shelf-heading h2{margin:0;font-size:clamp(1.25rem,3vw,1.85rem)}
.shelf-controls{display:flex;gap:.4rem}
.shelf-controls button{background:var(--panel);color:var(--green);border:1px solid var(--line);font-size:1.45rem;line-height:1;padding:.45rem .75rem}
.shelf-controls .swiper-button-disabled{opacity:.45}
.shelf .swiper-wrapper{align-items:stretch}
.shelf .swiper-slide{height:auto}
.shelf .swiper-slide .card{height:100%}
.swiper-container:not(.swiper-container-initialized) .swiper-wrapper{gap:1rem;overflow:auto}
.swiper-container:not(.swiper-container-initialized) .swiper-slide{width:min(46%,240px)}
.card h3{font-size:1rem;font-weight:600;margin:.6rem 0;line-height:1.25}
.card-media{position:relative}
.card-media img{display:block}
.card-media .hover-image{position:absolute;inset:0;opacity:0;transition:opacity .2s ease}
@media(hover:hover){.card-media:hover .hover-image{opacity:1}}
.quick-button{margin-top:.4rem;background:transparent;color:var(--green);padding:.45rem;text-align:left}
.quick-detail{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:center}
.quick-detail img{width:100%;aspect-ratio:1;object-fit:contain;background:white;border-radius:6px}
.brand-shelf h2{text-align:center;margin-bottom:1rem}
.brand-window{overflow:hidden}
.brand-track{display:flex;width:max-content;animation:ticker-scroll 36s linear infinite}
.brand-group{--brand-gap:clamp(.5rem,1.3vw,1rem);display:flex;flex:none;min-width:100vw;gap:var(--brand-gap);padding: .25rem calc(var(--brand-gap) / 2)}
.brand-group a{display:grid;flex:1 0 clamp(7rem,12vw,10rem);gap:.4rem;padding:.55rem;text-align:center;color:var(--muted);border:1px solid var(--line);border-radius:8px}
.brand-group img{width:100%;height:62px;object-fit:contain;background:#fff;border-radius:6px}
@media(hover:hover){.brand-window:hover .brand-track{animation-play-state:paused}}
.brand-window:has(a:focus-visible) .brand-track{animation:none;width:100%}
.brand-window:has(a:focus-visible) .brand-group{width:100%;flex-wrap:wrap}
.brand-window:has(a:focus-visible) .brand-group[aria-hidden]{display:none}
@media(prefers-reduced-motion:reduce){
 .brand-track{animation:none;width:100%}
 .brand-group{width:100%;flex-wrap:wrap}
 .brand-group[aria-hidden]{display:none}
}
.support-title{margin:0;text-align:center;font-size:clamp(1.4rem,3vw,1.95rem);line-height:1.2}
.support-title::after{content:"";display:block;width:2.5rem;height:3px;margin:.7rem auto 0;border-radius:999px;background:var(--green)}
.feedback{padding:clamp(1.4rem,4vw,2.4rem) 1rem;background:#f6fbf7;border:1px solid var(--line);border-radius:1rem}
.faq-list{display:grid;gap:.55rem;max-width:54rem;margin:1.25rem auto 0}
.faq details{border:1px solid var(--line);border-radius:.85rem;background:#f6fbf7}
.faq details[open]{border-color:#a3cbb2;background:#fff}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem;cursor:pointer;font-weight:700;list-style:none;border-radius:inherit}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:.5rem;height:.5rem;margin-inline-end:.25rem;border:solid var(--green);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .18s ease}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq summary:hover{background:#eef7f0}
.faq p{margin:0;padding:0 1rem 1rem;color:var(--muted);line-height:1.55}
.faq p a{color:var(--green);text-decoration:underline;text-underline-offset:.15em}
@media(prefers-reduced-motion:reduce){.faq summary::after{transition:none}}
@media(max-width:1050px){#nav>a:nth-of-type(n+5):not(:last-child){display:none}}
@media(max-width:700px){
 #nav>a:not(:last-child){display:none}
 #nav{justify-content:space-between}
 .department-menu>ul{columns:2}
 .store-strip{grid-template-columns:repeat(2,1fr)}
 .store-strip a{padding:.8rem .35rem}
 .store-strip a:nth-child(3){border-left:0}
 .store-strip a:nth-child(n+3){border-top:1px solid var(--line)}
}
@media(prefers-reduced-motion:reduce){.card,.card-media .hover-image{transition:none}}

/* Promoções em movimento e benefícios fixos abaixo do banner. */
.promo-ticker{position:relative;background:var(--green);color:#fff;font-size:.9rem;font-weight:700}
.ticker-window{overflow:hidden;margin-right:2.5rem}
.ticker-track{display:flex;width:max-content;animation:ticker-scroll 32s linear infinite}
.ticker-group{display:flex;min-width:calc(100vw - 2.5rem);justify-content:space-around;align-items:center;flex:none;white-space:nowrap}
.ticker-group span{display:flex;align-items:center;padding:.6rem .8rem;gap:1.6rem}
.ticker-group span::after{content:"•";opacity:.65}
#pause-promos{position:absolute;width:1px;height:1px;opacity:0}
.promo-ticker label{position:absolute;right:0;top:0;bottom:0;width:2.5rem;display:grid;place-items:center;cursor:pointer;background:#b5fac9}
.promo-ticker label span:last-child,.promo-ticker :checked+label span:first-child{display:none}
.promo-ticker :checked+label span:last-child{display:block}
.promo-ticker :focus-visible+label{outline:2px solid #0b100d;outline-offset:-3px}
.promo-ticker:hover .ticker-track,.promo-ticker :checked~.ticker-window .ticker-track{animation-play-state:paused}
@keyframes ticker-scroll{to{transform:translateX(-50%)}}
.store-benefits{margin-top:1.6rem;border:1px solid var(--green);border-radius:8px;background:var(--panel)}
.store-benefits ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr)}
.store-benefits li,.store-benefits a{display:grid;justify-items:center;align-content:center;text-align:center;gap:.15rem}
.store-benefits li{padding:.9rem .45rem}
.store-benefits li+li{border-left:1px solid var(--line)}
.store-benefits svg{width:28px;height:28px;color:var(--green);margin-bottom:.3rem}
.store-benefits span{color:var(--muted);font-size:.83rem}

@media(prefers-reduced-motion:reduce){
 .ticker-track{animation:none;width:auto}
 .ticker-group{width:100%;min-width:0;flex-wrap:wrap;white-space:normal}
 .ticker-group[aria-hidden],.promo-ticker label,#pause-promos{display:none}
 .ticker-window{margin-right:0}
}

/* Align each product and benefit on its own center line. */
.card{text-align:center;align-items:center}
.card>a:first-child,.card-media{width:100%}
.card-media img{object-position:center}
.card .outline{width:min(100%,13rem);border-radius:999px;background:var(--green);color:#fff;font-weight:700}
.card .quick-button{text-align:center}
.shelf .card{border-color:transparent}
.shelf .card:hover{border-color:var(--line)}
.shelf-heading{position:relative;justify-content:center;padding-inline:5.25rem;text-align:center}
.shelf-heading h2::after{content:"";display:block;width:2.5rem;height:3px;margin:.65rem auto 0;background:var(--green);border-radius:999px}
.shelf-controls{position:absolute;inset-inline:0;justify-content:space-between;pointer-events:none}
.shelf-controls button{pointer-events:auto;display:grid;place-items:center;width:2.5rem;height:2.5rem;padding:0;border-radius:50%;background:#eef7f0}
.store-benefits{border:0;border-radius:0}
.store-benefits li+li{border:0}
.store-benefits li,.store-benefits a{grid-template-rows:33px auto auto;align-content:start}
.store-benefits svg{margin:0}
@media(max-width:680px){
 .shelf-heading{padding-inline:3rem}
}

/* Branded header and homepage campaign. */
.head{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:clamp(.65rem,3vw,2.5rem);padding-block:1.3rem}
.head form{width:100%;max-width:360px;border-radius:999px}
.head form button{display:grid;place-items:center;background:#eef8f0;color:var(--green)}
.head svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.logo{font-size:clamp(1.15rem,2.35vw,1.75rem);line-height:1.05;white-space:nowrap}
.logo small{display:block;margin-top:.3rem;font-size:.52rem;letter-spacing:.13em}
.header-actions,.header-support,.header-actions .cart{display:flex;align-items:center;gap:.55rem}
.header-actions{justify-self:end;gap:clamp(.45rem,2vw,1.3rem)}
.header-support{font-weight:700;color:var(--green)}
.header-actions .cart{border-radius:999px;padding:.55rem .65rem}
.header-actions .cart span{margin:0}
#nav>a:last-child{border-radius:999px;background:var(--green);color:#fff;padding:.5rem .85rem;margin-left:auto}
.campaign-hero{position:relative;overflow:hidden;isolation:isolate;background:#052d1a;color:#fff}
.campaign-art{position:absolute;inset:0 0 0 auto;width:58%;height:100%;object-fit:cover;object-position:61% 62%;z-index:-2}
.campaign-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#052d1a 42%,transparent 64%)}
.campaign-hero .hero-content{padding-block:clamp(3rem,6vw,6.5rem)}
.campaign-hero h1{max-width:12ch;font-size:clamp(3rem,6vw,5.5rem)}
.campaign-hero p{color:#e1f7e7}
.campaign-hero .eyebrow{color:#a4f4be}
.campaign-actions{display:flex;flex-wrap:wrap;gap:.65rem}
.campaign-hero .hero-button{background:#a4f4be;color:#092d1b}
.campaign-hero .campaign-offers{background:#0a3022;color:white;border:1px solid #a4f4be}
@media(max-width:700px){
 .head{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding-block:.85rem}
 .head form{grid-column:1/-1;max-width:none}
 .logo{grid-column:2}
 .header-support span{display:none}
 .header-actions{grid-column:3;grid-row:1;gap:.35rem}
 .header-actions .cart{padding:.4rem}
 .logo img{width:34px;height:34px}
 .campaign-art{width:100%;height:clamp(12rem,58vw,22rem);top:auto;object-position:61% 62%}
 .campaign-hero::before{inset:auto 0 0;height:clamp(12rem,58vw,22rem);background:linear-gradient(180deg,#052d1a,transparent 22%)}
 .campaign-hero .hero-content{padding:2rem 0 calc(clamp(12rem,58vw,22rem) + 1rem)}
}
@media(max-width:360px){.logo small{display:none}.header-actions .cart svg{width:16px}}


.benefits-next{display:none}
@media(max-width:680px){
 .store-benefits{position:relative;overflow:hidden;padding-inline-end:1.75rem}
 .store-benefits ul{grid-template-columns:repeat(2,minmax(0,1fr))}
 .store-benefits li{order:var(--benefit-order,0)}
 .store-benefits li[data-outside-pair="true"]{display:none}
 .benefits-next{display:grid;place-items:center;position:absolute;right:0;top:50%;transform:translateY(-50%);width:1.75rem;height:2.75rem;padding:0;border:0;border-radius:999px;background:#eef7f0;color:var(--green);font-size:1.35rem}
}

.buy-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem}
.buy-controls [data-add],.checkout-action{border-radius:999px}
.card .buy-controls{width:100%}
.card .buy-controls [data-add]{flex:1;min-width:5rem;padding-inline:.6rem}
.quantity-control{display:inline-flex;align-items:center;justify-content:center;width:max-content;border:1px solid var(--line);border-radius:999px;background:#fff}
.quantity-control button{min-width:2rem;min-height:2.5rem;padding:0;border-radius:999px;background:transparent;color:var(--green)}
.quantity-control button:hover{background:#eef7f0}
.quantity-control input{width:2rem;border:0;padding:0;text-align:center;background:transparent;color:inherit;appearance:textfield}
.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{appearance:none;margin:0}
#basket{inset:0 0 0 auto;width:min(100%,28rem);height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border-radius:0}
.basket-drawer{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%}
.basket-drawer header,.basket-drawer footer{padding:1rem;background:#fff}
.basket-drawer h2{font-size:1.1rem}
#basket-items{overflow:auto;padding:0 1rem}
.basket-row{grid-template-columns:4.25rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:1rem 0}
.basket-row:last-child{border-bottom:0}
.basket-row img{width:100%;height:4.25rem;object-fit:contain}
.basket-row .quantity-control input{width:2rem;padding:0}
.basket-name{font-weight:700;overflow-wrap:anywhere}
.basket-row small{display:block;margin:.2rem 0 .4rem;color:var(--muted)}
.basket-line-total{display:grid;justify-items:end;gap:.5rem}
.basket-line-total button,.basket-drawer .outline{background:#fff;color:var(--green);border:1px solid var(--line)}
.basket-line-total button{padding:.2rem .6rem;border-radius:999px}
.basket-drawer footer{display:grid;gap:.55rem}
.basket-drawer footer button,.checkout-action{width:100%}
.checkout-action{display:block;padding:.75rem;text-align:center;font-weight:700;background:var(--green);color:#fff}
.checkout{max-width:72rem}
.checkout h1{margin-top:1.5rem}
.checkout-panel{padding:clamp(.8rem,2.5vw,1.5rem);border:1px solid var(--line);border-radius:1rem;background:#fff}
.checkout-panel h2{margin-top:0;font-size:1.25rem}
.checkout-panel p{color:var(--muted);font-size:.9rem}
.checkout-panel label,.checkout-panel input:not(.quantity-control input){display:block}
.checkout-panel input:not(.quantity-control input){width:100%;margin-top:.35rem;border:1px solid var(--line);border-radius:.5rem;padding:.7rem}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start;margin-top:1rem}
.checkout-total{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0}
.checkout-panel details{margin:.7rem 0 1rem}
.checkout-panel summary{cursor:pointer;color:var(--green)}
.checkout-panel details label{margin-top:.65rem}
.checkout-panel [type=submit]{width:100%}
@media(max-width:700px){.checkout-grid{grid-template-columns:1fr}}

.crm-checkout{margin-top:1rem}
.crm-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.crm-checkout .crm-consent{display:flex;align-items:flex-start;gap:.6rem;margin:1rem 0}
.crm-checkout .crm-consent input{width:auto;margin:.2rem 0 0}
.crm-verification{margin-bottom:.75rem}
.crm-checkout [type=submit]{width:auto}
@media(max-width:700px){.crm-fields{grid-template-columns:1fr}}
