/* Beat34 — identidade da logomarca original: preto, branco e vermelho.
   Experiência mobile-first, leve, sem checkout. */
:root{--ink:#171719;--ink2:#2e3031;--lime:#e32229;--acid:#f7e0e0;--paper:#fcfaf7;--red:#e32229;--gray:#727270;--line:#e6e0dd;--white:#fff}
body{background:var(--paper);color:var(--ink)}
.announcement{background:#181819;color:white;font-size:10px;letter-spacing:1px;min-height:29px}
.siteHeader{background:var(--paper);color:var(--ink);box-shadow:0 2px 12px #19191913}
.headerInner{height:75px;gap:12px}
.officialLogo{display:flex;align-items:center;letter-spacing:normal}
.officialLogo img{display:block;height:54px;width:135px;object-fit:contain;max-width:none}
.menuBtn span{background:var(--ink)}
.desktopNav a,.headerWA,.searchBtn{color:var(--ink)}
.desktopNav a:hover,.footerCol a:hover{color:var(--red)}
.headerWA{border:1px solid #d2cecb;color:var(--ink);border-radius:40px}
.headerWA span{color:var(--red)}
.headerWA:hover{background:var(--red);color:white}.headerWA:hover span{color:white}
.mobileNav{background:#fbf7f5;color:var(--ink);border-color:#e7ddda;box-shadow:0 16px 20px #19191915}
.mobileNav a{border-color:#e7ddda}.mobileNav a span{color:var(--red)}
.heroCarousel{display:block;position:relative;min-height:0;overflow:hidden;background:#f7f3ef}
.heroSlide{display:none;grid-template-columns:52% 48%;min-height:460px;background:#f6f3ef;color:var(--ink);position:relative;isolation:isolate}
.heroSlide.active{display:grid}
.heroSlide .heroCopy{padding:69px 34px 77px clamp(24px,5.6vw,96px);align-self:center}
.heroSlide .heroSerial{font-size:10px;color:#b82c2f;letter-spacing:1.8px}
.heroSlide .heroSerial .dot{background:var(--red);box-shadow:0 0 0 5px #e3222918}
.heroSlide h1{font-size:clamp(46px,5.7vw,86px);line-height:.99;letter-spacing:-2.6px;margin:22px 0 18px;max-width:670px}
.heroSlide h1 em{color:var(--red)}
.heroSlide .heroCopy>p{font-size:15px;max-width:370px;color:#5e5755;line-height:1.65}
.heroSlide .heroActions{margin-top:23px}
.btnLime{background:var(--red);color:white;border-radius:2px;min-height:47px;padding:14px 19px;font-size:11px}
.btnLime:hover{background:#b81820;color:white}
.heroSlide .heroArt{min-height:460px;background:#e9d5cf;position:relative}
.heroSlide .artCircle{width:min(81%,460px);height:auto;aspect-ratio:1;background:#fff9f3;border:0;box-shadow:none;transform:rotate(-4deg)}
.heroSlide .artCircle img{width:100%;height:100%;transform:rotate(4deg) scale(1.04);filter:drop-shadow(0 20px 18px #31302e28)}
.heroSlide .heroArt::before{opacity:.08;background-size:30px 30px}
.heroSlide .heroArtTwo{background:#d6dde0}
.heroSlide .heroArtThree{background:#ecd6c9}
.heroSlide .artGiant,.heroSideLabel,.artEdge{display:none!important}
.heroNumber{position:absolute;right:22px;bottom:19px;color:#56504d;font:700 10px var(--mono);letter-spacing:1.6px;z-index:2}
.carouselControl{position:absolute;left:clamp(24px,5.6vw,96px);bottom:19px;display:flex;gap:14px;align-items:center;z-index:5}
.carouselControl>button{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d5cbc7;background:white;color:#242323;border-radius:50%;font:22px var(--body)}
.carouselControl>button:hover{background:var(--red);color:white}
.carouselDots{display:flex;gap:7px;align-items:center}
.carouselDots button{height:7px;width:7px;border-radius:20px;border:0;background:#bdb6b2;padding:0}
.carouselDots button.on{width:28px;background:var(--red)}
.ticker{background:#f3e9e5;color:#703b3d;font-size:10px;letter-spacing:1.4px;padding:12px}
.ticker span{color:var(--red);margin:0 18px}
.section{padding-top:67px;padding-bottom:67px}
.sectionHeading{margin-bottom:26px}
.sectionHeading h2,.howInner h2{font-size:clamp(32px,4.1vw,58px);letter-spacing:-1.8px;margin-top:12px}
.sectionHeading h2 em,.howInner h2 em{color:var(--red)}
.eyebrow{font-size:10px;color:#9e3339}
.eyebrowLine{background:var(--red)}
.sectionHeading>p{max-width:260px;font-size:13px}
.categoryGrid{grid-template-rows:185px 185px;gap:11px}
.categoryTile{background:#eee9e4}.categoryTile[data-index="0"]{background:#efd0c8}
.categoryTile:nth-child(3){background:#e5e5e1}.categoryTile:nth-child(4){background:#e8e0d7}.categoryTile:nth-child(5){background:#efe9e7}
.categoryTile:after{background:linear-gradient(0deg,#121213a1,transparent 65%)}
.categoryLabel{font-size:clamp(17px,1.9vw,29px);left:17px;bottom:17px;right:17px}
.categoryLabel small,.categoryLabel b{color:#ffd2cf}
.categoryLabel small{font-size:9px}
.newSection{background:#f2efeb}
.featuredGrid,.productGrid{gap:11px}
.productCard{border:1px solid #ebe5e0;background:white;border-radius:7px;overflow:hidden}
.productCard:hover{transform:translateY(-2px);box-shadow:0 10px 30px #1616160c}
.productPhoto{background:#f6f3f0;position:relative;isolation:isolate;aspect-ratio:1.15/1}
.productPhoto img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .24s ease,transform .35s ease;mix-blend-mode:multiply}
.productPhoto img.primaryPhoto{opacity:1}
.productPhoto img.secondaryPhoto{opacity:0}
.productCard:hover .photoHover{transform:translateY(0)}
.photoHover{background:#171719dd;font-size:10px}
.productInfo{padding:12px 13px}
.productCat{font-size:9px}
.productTitle{font-size:13px;margin:6px 0 7px;min-height:34px;line-height:1.35}
.productPrice{font-size:17px}
.productActions{margin-top:10px}
.productBuy{font-size:9px;min-height:40px;padding:10px 9px}
.productBuy:hover{background:var(--red)}
.productMore{font-size:15px;border-radius:3px}
.productMore:hover{background:#ffe8e5}
.photoCount{position:absolute;top:10px;right:10px;background:#fffefedd;padding:5px 8px;font-size:9px;font-weight:700;letter-spacing:.1px;z-index:5;color:#515151;border-radius:12px;pointer-events:none}
.flipPhotoBtn{background:transparent;border:1px solid #e8e2de;border-radius:3px;font-size:9px;color:#5c5b5b;padding:6px 8px;cursor:pointer;margin-top:8px;align-self:flex-start}
.flipPhotoBtn:hover{background:#f9eee9;color:#bc2027}
@media(min-width:751px){.productCard .flipPhotoBtn{display:none!important}}
.productBadge{background:var(--red);color:white}
.campaign{min-height:340px;background:#232021}
.campaignPhoto{background:#e9ddda}
.campaignCopy{padding:45px clamp(25px,5vw,75px)}
.campaignCopy h2{font-size:clamp(30px,4.3vw,59px);letter-spacing:-1.8px;margin:15px 0}
.campaignEyebrow{color:#ffbbb7}
.campaignCopy>p:not(.campaignEyebrow){font-size:14px}
.stamp{background:white;color:var(--red);font-size:22px}
.campaignNumber{color:#ccb3b0;margin-top:20px}
.btnOutline:hover{background:#f4dada;color:#222}
.catalogTools{border-color:#e7dedc;padding:14px 0;gap:13px}
.filters{gap:6px;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding-bottom:4px;scrollbar-width:none}
.filters::-webkit-scrollbar{display:none}
.filters button{scroll-snap-align:start;flex-shrink:0;border-radius:99px;border-color:#e2dad8;padding:9px 13px;font-size:9px;background:#fff}
.filters button.active,.filters button:hover{background:var(--red);border-color:var(--red);color:white}
.sortTools input,.sortTools select{background:white;border-color:#ded7d3;border-radius:5px;min-height:39px}
.sortTools{justify-content:start}
.sortTools input{min-width:200px}
.catalogMeta{font-size:11px;line-height:1.6;color:#777371;margin:14px 0}
.loadMore{border-color:var(--ink);padding:14px 20px;font-size:10px}
.howSection{background:#fbefed}
.howInner{gap:40px}
.howInner h2{font-size:clamp(30px,4vw,58px)}
.howInner h2 em{color:var(--red)}
.howInner .btnLime{background:#1c1b1c;color:#fff}
.howDescription{color:#625858}
.steps>div{padding:16px 0;border-color:#e6d0cd}
.steps strong{font-size:28px;color:#bb4e4f}
.steps b{font-size:12px}
.steps small{font-size:12px;color:#68605e}
.manifesto{background:#262224;padding:52px clamp(18px,5vw,70px);min-height:260px}
.manifesto h2{font-size:clamp(34px,4vw,57px);letter-spacing:-2px}
.manifesto p{font-size:14px;margin:14px 0}
.manifestoMark{font-size:clamp(100px,12vw,210px);color:#fc7776;letter-spacing:-10px}
.manifesto .eyebrow,.manifesto .textLink{color:#ffacac;border-color:#ecaaaa}
.faqList details{border-color:#e9dfdc}
.faqList details summary span{color:var(--red)}
.footer{background:#171719;padding-top:50px}
.footerTop{padding-bottom:45px}
.footerBrand .officialLogo{display:inline-flex;background:transparent;padding:0;border:0;border-radius:0;box-shadow:none}
.footerBrand .officialLogo img{width:145px;height:auto;max-height:65px;object-fit:contain;filter:brightness(0) invert(1)}
.footerCol h3{color:#f48b86}
.footerBottom a{color:#f69a9b}
.floatingWA{background:var(--red);border:0;color:white;box-shadow:0 6px 22px #17171929}
.floatingWA:hover{background:#b41b22}
#productDialog{background:#fffaf7}
#productDialog::backdrop{background:#171418c4}
.dialogClose{background:#1d1a1a}
.detailMain{background:#f5f1ed}
.detailTextPanel .detailEyebrow{color:#ab3338}
.detailDesc{background:#fbefed;border-left:3px solid var(--red);color:#5a4442}
.detailVariants{background:#fff;border:1px solid #eadeda}
.thumb.selected{border-color:var(--red)}
.shareBtn{border-color:#e5d9d5}
.editorialPreview{padding:62px clamp(20px,5.2vw,88px);max-width:1550px;margin:auto}
.editorialHeading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:23px}
.miniEyebrow{font-size:10px;color:#c22b33;font-weight:800;letter-spacing:1.2px}
.editorialHeading h2{font:clamp(31px,4vw,57px)/1.07 var(--display);letter-spacing:-1.4px;margin:10px 0 0}
.editorialHeading h2 em{color:var(--red);font-style:normal}
.editorialCards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
@media(min-width:761px) and (max-width:1100px){.editorialCards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.editorialCard{display:flex;flex-direction:column;align-items:start;gap:12px;min-height:200px;border:1px solid #e5dbd8;border-radius:6px;background:#fff;padding:22px;transition:transform .18s,border .18s}
.editorialCard:hover{transform:translateY(-3px);border-color:#dca9a6}
.editorialCard .cmsCardImage{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:3px}
.editorialCard .cmsCardImage[src*="prosa-casal"]{object-position:center 36%}
.editorialCard .cmsCardImage[src*="prosa-cuidados"]{object-position:center 62%}
.editorialIndex{font-size:10px;color:#bc3137;font-weight:800;letter-spacing:.8px}
.editorialCard strong{font:700 clamp(18px,2vw,25px)/1.18 var(--mono);letter-spacing:-.5px}
.editorialCard>span:not(.editorialIndex){font-size:12px;line-height:1.6;color:#777371}
.editorialCard b{font-size:10px;letter-spacing:1px;margin-top:auto}
@media (hover:hover) and (pointer:fine){.productCard:hover img.secondaryPhoto{opacity:1}.productCard:hover img.primaryPhoto:has(+ img.secondaryPhoto){opacity:0}}
@media(max-width:1060px){.heroSlide h1{font-size:clamp(42px,5vw,69px)}.headerInner{height:65px}.mobileNav{border-color:#eee2dd}.mobileNav:not([hidden]){display:block}}
@media(max-width:750px){
 html{scroll-padding-top:67px}
 .headerInner{height:57px;padding:0 14px}
 .officialLogo img{width:117px;height:49px}
 .headerTools{gap:6px}.searchBtn{width:34px}
 .announcement{font-size:9px;padding:5px 12px;min-height:26px}
 .heroSlide{display:none!important}
 .heroSlide.active{display:grid!important;grid-template-columns:50% 50%;min-height:265px}
 .heroSlide .heroCopy{padding:27px 0 44px 17px}
 .heroSlide .heroSerial{font-size:8px;letter-spacing:.7px;gap:7px}
 .heroSlide .heroSerial .dot{height:6px;width:6px;box-shadow:0 0 0 3px #e3222918}
 .heroSlide h1{font-size:clamp(27px,8.2vw,43px);line-height:1.04;letter-spacing:-1.5px;margin:14px 0 9px}
 .heroSlide .heroCopy>p{font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:210px}
 .heroSlide .btnLime{font-size:9px;min-height:35px;padding:9px 10px;gap:6px}
 .heroSlide .heroActions{margin-top:12px}
 .heroSlide .heroArt{height:265px;min-height:265px}
 .heroSlide .artCircle{width:93%}
 .heroSlide .heroNumber{bottom:13px;right:8px;font-size:8px}
 .carouselControl{left:17px;bottom:8px;gap:8px}
 .carouselControl>button{width:24px;height:24px;font-size:16px}
 .carouselDots{gap:5px}.carouselDots button{height:6px;width:6px}.carouselDots button.on{width:18px}
 .ticker{font-size:9px;padding:8px;white-space:nowrap;overflow:hidden}
 .section{padding:34px 15px}
 .sectionHeading{margin-bottom:16px}
 .sectionHeading h2{font-size:clamp(25px,6.5vw,35px);letter-spacing:-1px;margin:8px 0 0}
 .sectionHeading>p{font-size:12px;margin:8px 0 0;line-height:1.6}
 .eyebrow{font-size:9px;letter-spacing:1px}
 .categoryGrid{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none;overscroll-behavior-inline:contain}
 .categoryTile,.categoryTile[data-index="0"]{flex:0 0 min(39vw,150px);height:143px;min-height:143px;grid-row:auto;scroll-snap-align:start}
 .categoryLabel{font-size:14px;left:9px;right:9px;bottom:12px;letter-spacing:-.4px}
 .categoryLabel small{font-size:8px;letter-spacing:.3px}
 .categoryLabel b{font-size:16px}
 .newInner{padding-top:33px;padding-bottom:36px}
 .newInner .sectionHeading{margin-bottom:6px}
 .sectionNote{font-size:12px;margin:8px 0 15px}
 .newInner .textLink{font-size:9px;margin-top:12px;display:inline-block}
 .featuredGrid{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 8px;scrollbar-width:none}
 .featuredGrid .productCard{flex:0 0 min(46vw,205px);scroll-snap-align:start}
 .featuredGrid .productPhoto{aspect-ratio:1.1}
 .productGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .productPhoto{aspect-ratio:1.1}
 .productInfo{padding:10px 9px}
 .productTitle{font-size:12px;min-height:29px;margin:5px 0 6px}
 .productCat{font-size:8px;line-height:1.4}
 .productPrice{font-size:16px}
 .productActions{grid-template-columns:1fr 30px;gap:4px}
 .productBuy{font-size:9px;padding:7px;min-height:37px;line-height:1.3}
 .productMore{min-width:30px;padding:4px;font-size:13px}
 .photoCount{top:5px;right:5px;padding:4px 6px;font-size:8px}
 .flipPhotoBtn{font-size:9px;padding:4px 5px;margin-top:4px}
 .campaign{grid-template-columns:1.15fr 1fr;min-height:210px}
 .campaignPhoto{height:215px;min-height:215px}
 .campaignPhoto img{width:100%;height:100%;object-fit:contain}
 .campaignCopy{padding:19px 12px;justify-content:center}
 .campaignEyebrow{font-size:8px;letter-spacing:.8px}
 .campaignCopy h2{font-size:clamp(22px,5.6vw,35px);line-height:1.07;margin:10px 0 9px}
 .campaignCopy>p:not(.campaignEyebrow){font-size:10px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .campaign .btnOutline{margin-top:7px;padding:9px;gap:5px;font-size:9px;min-height:31px}
 .campaignNumber{display:none}.stamp{width:45px;height:45px;font-size:14px;left:9px;top:8px}
 .catalogHeading{margin-bottom:15px}
 .catalogTools{padding:10px 0;gap:7px}
 .filters{flex-wrap:nowrap;gap:6px}
 .filters button{font-size:9px;padding:9px 12px}
 .sortTools{gap:6px}
 .sortTools input{min-width:100%;width:100%;font-size:12px;min-height:38px}
 .sortTools select{flex:1;min-width:0;font-size:11px;min-height:37px;padding:7px}
 .catalogMeta{font-size:10px;margin:10px 0 12px}
 .howInner{display:block}
 .howInner h2{font-size:32px;margin:13px 0}
 .howDescription{font-size:12px}
 .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:17px}
 .steps>div,.steps>div:first-child{border:1px solid #e7d6d1;padding:10px 8px;display:block;min-height:102px}
 .steps strong{font-size:16px;display:block;margin-bottom:4px}
 .steps span{display:block}.steps b{font-size:10px}
 .steps small{font-size:9px;line-height:1.4;display:block;margin-top:5px}
 .manifesto{padding:37px 18px;min-height:0}
 .manifesto h2{font-size:32px}
 .manifesto p{font-size:12px;line-height:1.65}
 .manifestoMark{display:none}
 .editorialPreview{padding:38px 15px}
 .editorialHeading{align-items:end}
 .editorialHeading h2{font-size:31px;line-height:1.05}
 .editorialHeading .textLink{font-size:9px;max-width:110px;white-space:normal;line-height:1.5}
 .editorialCards{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none}
 .editorialCard{flex:0 0 72vw;min-height:162px;padding:16px;scroll-snap-align:start}
 .editorialCard strong{font-size:19px}
 .footer{padding:36px 17px 0}
 .footerBrand .officialLogo img{width:114px;height:43px}
 .footerTop{gap:20px}
 .footerCol{gap:8px}
 .footerCol a,.footerCol p{font-size:12px}
 .footerBottom{font-size:9px}
 .faqSection .sectionHeading h2{font-size:31px}
 .faqList details summary{font-size:13px;padding:14px 5px}
 .faqList details p{font-size:12px}
 .floatingWA{background:var(--red)}
 #productDialog .detailMain{height:240px}
}
@media(max-width:370px){.heroSlide{min-height:255px}.heroSlide .heroArt{height:255px;min-height:255px}.heroSlide h1{font-size:27px}.heroSlide .heroCopy{padding-left:12px}.categoryTile,.categoryTile[data-index="0"]{flex-basis:140px}.productBuy{font-size:8px}.campaignCopy h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.heroSlide{transition:none!important}}

/* No celular, o botão "ver outra foto" substitui a ausência de hover. */
.productCard.manualSecondary .productPhoto img.secondaryPhoto{opacity:1!important}
.productCard.manualSecondary .productPhoto img.primaryPhoto{opacity:0!important}
@media (hover:none),(pointer:coarse){.productCard .photoHover{display:none}.flipPhotoBtn{min-height:28px}}
/* Hover funciona em desktop sem depender da classificação de ponteiro do navegador. */
@media(min-width:751px){.productCard:hover .productPhoto .secondaryPhoto{opacity:1!important}.productCard:hover .productPhoto .primaryPhoto:has(+ .secondaryPhoto){opacity:0!important}}
.instaRibbon{background:#f3e9e7;border-top:1px solid #e6d9d6;border-bottom:1px solid #e6d9d6;padding:20px clamp(18px,5.2vw,88px);display:flex;align-items:center;justify-content:space-between;gap:15px}.instaRibbon div{display:flex;flex-direction:column;gap:5px}.instaRibbon span{font-size:9px;font-weight:800;color:#c02b34;letter-spacing:1px}.instaRibbon strong{font-size:clamp(14px,1.6vw,19px);font-family:var(--mono)}.instaRibbon a{font-size:10px;white-space:nowrap;font-weight:800;border:1px solid #d5bbb9;padding:13px 15px;border-radius:4px}.instaRibbon a:hover{background:#e32229;color:white}@media(max-width:750px){.instaRibbon{padding:16px 15px}.instaRibbon strong{font-size:13px}.instaRibbon a{padding:10px 9px;font-size:9px}}
/* Estoque unificado: estados claros sem inventar disponibilidade. */
.cardInventory{display:block;margin-top:5px;font-size:9px;line-height:1.4;color:#896f5d;font-weight:700}.cardInventory.disponivel{color:#298048}.cardInventory.esgotado{color:#a92d35}.inventoryStatus{font-size:12px;line-height:1.6;padding:9px 12px;border-radius:5px;background:#f7eeea;color:#6e5751}.detailVariants select{width:100%;padding:12px;margin-top:7px;border:1px solid #d8cbc5;border-radius:5px;background:#fff;font-size:12px}.detailDesc p{margin:0 0 12px}.detailDesc p:last-child{margin-bottom:0}.detailDesc h3{font-size:16px;margin:15px 0 7px}.detailDesc ul{padding-left:20px;margin:8px 0}.detailDesc li{margin:5px 0}
/* Links para páginas individuais (sem abrir modal). */
.productPhoto,.productTitle,.productMore{cursor:pointer;text-decoration:none}
.productPhoto:focus-visible,.productTitle:focus-visible,.productMore:focus-visible{outline:3px solid #c23038;outline-offset:3px}
.productMore{display:grid;place-items:center}