/* ============================================================
   MAYSART — estilos do site
   Depende de maysart-tokens.css (cores, tipos, raios, sombras,
   espaçamentos e botões vêm de lá).
   ============================================================ */

/* ---------- RESET ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:140px}
html.sem-rolagem{overflow:hidden}
body{min-height:100vh;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0}
h1,h2,h3{line-height:1.2}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:2px solid var(--rosa-600);outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pular{position:absolute;left:var(--e-4);top:-60px;z-index:100;background:var(--cacau-500);color:var(--texto-invertido);padding:var(--e-2) var(--e-4);border-radius:var(--r-pill);font-size:var(--ts-corpo-sm)}
.pular:focus{top:var(--e-2)}
.icone{width:20px;height:20px;flex:none}
[hidden]{display:none !important}

.container{width:100%;max-width:calc(var(--largura-conteudo) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}
@media (max-width:640px){.container{padding-inline:var(--gutter-mobile)}}

/* ---------- TIPOGRAFIA ---------- */
.eyebrow{display:block;font-size:var(--ts-rotulo);font-weight:600;letter-spacing:var(--ls-rotulo);text-transform:uppercase;color:var(--rosa-700);margin-bottom:var(--e-3)}
.t-display{font-family:var(--fonte-titulo);font-weight:400;font-size:clamp(38px,5.2vw,var(--ts-display-1));line-height:var(--lh-display-1)}
.t-display-2{font-family:var(--fonte-titulo);font-weight:400;font-size:clamp(32px,4vw,var(--ts-display-2));line-height:var(--lh-display-2)}
.t1{font-family:var(--fonte-titulo);font-weight:400;font-size:clamp(27px,3.2vw,var(--ts-t1));line-height:var(--lh-t1)}
.t2{font-family:var(--fonte-titulo);font-weight:400;font-size:clamp(22px,2.4vw,var(--ts-t2));line-height:var(--lh-t2)}
.t3{font-family:var(--fonte-texto);font-weight:600;font-size:var(--ts-t3);line-height:var(--lh-t3)}
.acento-t{font-family:var(--fonte-acento);font-style:normal;font-weight:400;color:var(--rosa-600);font-size:1.22em;line-height:.9;white-space:nowrap}
.lead{font-size:var(--ts-corpo-lg);line-height:var(--lh-corpo-lg);font-weight:300;color:var(--texto-suave);max-width:58ch}
.texto-suave{color:var(--texto-suave);font-weight:300}
.legenda{font-size:var(--ts-legenda);line-height:var(--lh-legenda);color:var(--texto-fraco)}
.onda{display:block;width:132px;height:12px;margin-top:var(--e-4);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 12'%3E%3Cpath d='M2 6 Q 9 1 16 6 T 30 6 T 44 6 T 58 6 T 72 6 T 86 6 T 100 6 T 114 6 T 130 6' fill='none' stroke='%23DB9799' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") left center/contain no-repeat}
.centro{text-align:center}
.centro .onda,.centro .lead{margin-inline:auto}

/* ---------- ELEMENTOS DO DS ---------- */
.bolha{width:64px;height:64px;border-radius:var(--r-pill);display:grid;place-items:center;flex:none;background:var(--tom-200,var(--rosa-200));color:var(--tom-600,var(--rosa-700))}
.bolha svg{width:28px;height:28px}
.bolha--sm{width:34px;height:34px}
.bolha--sm svg{width:18px;height:18px}
.bolha--lg{width:88px;height:88px}
.bolha--lg svg{width:36px;height:36px}

.tag{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:5px 13px;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
.tag--rosa{background:var(--rosa-200);color:var(--rosa-800)}
.tag--sucesso{background:var(--sucesso-bg);color:var(--sucesso)}
.tag--atencao{background:var(--atencao-bg);color:var(--atencao)}
.tag--info{background:var(--info-bg);color:var(--info)}
.tag--neutra{background:var(--neutro-100);color:var(--texto-suave)}
.tag--tom{background:var(--tom-100);color:var(--texto);border:1px solid var(--tom-borda)}

.selo{position:absolute;top:12px;left:12px;z-index:2;background:var(--superficie);border-radius:var(--r-pill);padding:5px 12px;font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;box-shadow:var(--sh-xs);color:var(--texto)}

.aviso{display:flex;gap:var(--e-3);padding:var(--e-4) var(--e-5);border-radius:var(--r-md);border:1px solid transparent;font-size:var(--ts-corpo-sm);align-items:flex-start;line-height:1.55}
.aviso svg{width:20px;height:20px;flex:none;margin-top:1px}
.aviso b{display:block;font-weight:600}
.aviso p{color:inherit;opacity:.9;font-weight:300}
.aviso--info{background:var(--info-bg);border-color:var(--info-borda);color:var(--info)}
.aviso--atencao{background:var(--atencao-bg);border-color:var(--atencao-borda);color:var(--atencao)}
.aviso--sucesso{background:var(--sucesso-bg);border-color:var(--sucesso-borda);color:var(--sucesso)}

.campo input,.campo select{appearance:none;-webkit-appearance:none}
.campo select{background:var(--superficie) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233E3121' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center/18px no-repeat;padding-right:42px}
.campo select:focus{outline:none;border-color:var(--rosa-500);box-shadow:var(--sh-foco)}
.campo-linha{display:flex;gap:var(--e-2)}
.campo-linha input{flex:1;min-width:0}

.painel{background:var(--superficie);border:1px solid var(--borda-sutil);border-radius:var(--r-xl);padding:var(--e-8);box-shadow:var(--sh-sm)}

.migalhas{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:var(--texto-fraco);padding-block:var(--e-5)}
.migalhas a:hover{color:var(--texto);text-decoration:underline;text-underline-offset:3px}
.migalhas svg{width:14px;height:14px;color:var(--neutro-500)}
.migalhas [aria-current]{color:var(--texto);font-weight:500}

.link-seta{display:inline-flex;align-items:center;gap:8px;font-size:var(--ts-corpo-sm);font-weight:600;color:var(--cacau-500);border-bottom:1.5px solid var(--rosa-400);padding-bottom:2px;transition:gap var(--transicao),border-color var(--transicao)}
.link-seta svg{width:16px;height:16px}
.link-seta:hover{gap:12px;border-color:var(--cacau-500)}

/* ============================================================
   CABEÇALHO
   ============================================================ */
.faixa{background:var(--rosa-300);color:var(--cacau-500);font-size:12px;height:var(--altura-faixa)}
.faixa .container{display:flex;align-items:center;justify-content:space-between;gap:var(--e-6);height:100%}
.faixa .icone{width:16px;height:16px}
.faixa__msg,.faixa__cupom{display:flex;align-items:center;gap:8px;white-space:nowrap}
.faixa__cupom b{font-weight:600;letter-spacing:.06em}
.faixa__links{display:flex;gap:var(--e-5)}
.faixa__links a:hover{text-decoration:underline;text-underline-offset:3px}
@media (max-width:1100px){.faixa__msg{display:none}}
@media (max-width:760px){
  .faixa__links{display:none}
  .faixa .container{justify-content:center}
}

.cabecalho{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--borda-sutil);transition:box-shadow var(--transicao)}
.cabecalho.rolado{box-shadow:var(--sh-sm)}
.nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--e-10);height:var(--altura-nav)}
.nav__burger{display:none;width:44px;height:44px;border:0;background:transparent;border-radius:var(--r-pill);place-items:center;color:var(--cacau-500);margin-left:-10px}
.nav__burger svg{width:24px;height:24px}

.logo{display:inline-flex;align-items:baseline;color:var(--cacau-500);line-height:1;white-space:nowrap}
.logo__m{font-family:var(--fonte-titulo);font-size:42px;letter-spacing:-.02em}
.logo__script{font-family:var(--fonte-acento);font-size:30px;color:var(--rosa-600);margin-left:2px;transform:translateY(2px)}

.busca{position:relative;width:100%;max-width:540px;justify-self:center}
.busca input{width:100%;height:48px;border-radius:var(--r-pill);border:1.5px solid var(--borda);background:var(--neutro-50);padding:0 60px 0 22px;font-size:var(--ts-corpo-sm);transition:border-color var(--transicao),box-shadow var(--transicao),background var(--transicao)}
.busca input::placeholder{color:var(--neutro-600)}
.busca input:focus{outline:none;border-color:var(--rosa-500);box-shadow:var(--sh-foco);background:var(--superficie)}
.busca button{position:absolute;right:5px;top:5px;width:38px;height:38px;border-radius:var(--r-pill);border:0;background:var(--rosa-300);color:var(--cacau-500);display:grid;place-items:center;transition:background var(--transicao)}
.busca button:hover{background:var(--rosa-400)}

.acoes{display:flex;align-items:center;gap:var(--e-6)}
.acao{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:var(--texto-suave);white-space:nowrap}
.acao svg{width:24px;height:24px;color:var(--cacau-500)}
.acao:hover span{color:var(--texto)}
.acao__badge{position:absolute;top:-6px;right:4px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--rosa-300);border:2px solid var(--superficie);color:var(--cacau-500);font-size:10px;font-weight:600;display:grid;place-items:center;line-height:1}

/* menu de categorias */
.menu{border-top:1px solid var(--borda-sutil)}
.menu__lista{display:flex;align-items:center;justify-content:space-between;height:50px;margin-inline:-12px}
.menu__link{position:relative;display:inline-flex;align-items:center;gap:8px;height:50px;padding:0 12px;font-size:14px;color:var(--texto-suave);white-space:nowrap;transition:color var(--transicao)}
.menu__link::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;border-radius:2px;background:var(--rosa-500);transform:scaleX(0);transform-origin:left;transition:transform var(--transicao)}
.menu__item:hover .menu__link,.menu__item:focus-within .menu__link,.menu__link.ativo{color:var(--cacau-500)}
.menu__item:hover .menu__link::after,.menu__item:focus-within .menu__link::after,.menu__link.ativo::after{transform:scaleX(1)}
.menu__link--todos{font-weight:600;color:var(--cacau-500)}
.menu__link--todos svg{width:18px;height:18px}

.mega{position:absolute;left:0;right:0;top:100%;background:var(--superficie);border-top:1px solid var(--borda-sutil);box-shadow:var(--sh-lg);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s;pointer-events:none}
.menu__item:hover .mega,.menu__item:focus-within .mega{opacity:1;visibility:visible;transform:none;transition-delay:.08s,.08s,0s;pointer-events:auto}
.mega__todos{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--e-6);padding-block:var(--e-8) var(--e-10)}
.mega__titulo{display:flex;flex-direction:column;gap:var(--e-2);font-family:var(--fonte-titulo);font-size:17px;line-height:1.25;margin-bottom:var(--e-3)}
.mega__titulo:hover{color:var(--rosa-700)}
.mega__coluna li a{display:block;font-size:13px;color:var(--texto-fraco);padding-block:4px;line-height:1.4}
.mega__coluna li a:hover{color:var(--texto)}
.mega__cat{display:grid;grid-template-columns:1fr 340px;gap:var(--e-10);padding-block:var(--e-8)}
.mega__subs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--e-1) var(--e-6)}
.mega__subs a{display:block;padding:var(--e-3) var(--e-4);border-radius:var(--r-md);transition:background var(--transicao)}
.mega__subs a:hover{background:var(--neutro-50)}
.mega__subs b{display:block;font-weight:500;font-size:var(--ts-corpo-sm)}
.mega__subs span{display:block;font-size:13px;color:var(--texto-fraco);line-height:1.5}
.mega__destaque{display:grid;grid-template-rows:auto 1fr;border-radius:var(--r-lg);overflow:hidden;background:var(--tom-50);border:1px solid var(--tom-borda);transition:box-shadow var(--transicao)}
.mega__destaque:hover{box-shadow:var(--sh-md)}
.mega__arte{display:block;aspect-ratio:16/9;overflow:hidden}
.mega__arte > svg{width:100%;height:100%}
.mega__destaque-txt{padding:var(--e-4) var(--e-5);display:flex;flex-direction:column;gap:2px}
.mega__destaque-txt small{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--texto-fraco)}
.mega__destaque-txt b{font-family:var(--fonte-titulo);font-weight:400;font-size:19px}
.mega__destaque-txt span{font-size:13px;color:var(--texto-suave)}

/* gaveta (mobile) */
.gaveta{position:fixed;inset:0;z-index:80;visibility:hidden}
.gaveta.aberta{visibility:visible}
.gaveta__fundo{position:absolute;inset:0;background:rgba(39,30,18,.4);opacity:0;transition:opacity .25s ease}
.gaveta.aberta .gaveta__fundo{opacity:1}
.gaveta__painel{position:absolute;top:0;bottom:0;left:0;width:min(380px,88vw);background:var(--superficie);padding:var(--e-4) var(--e-5) var(--e-10);overflow-y:auto;transform:translateX(-100%);transition:transform .28s ease;box-shadow:var(--sh-lg)}
.gaveta.aberta .gaveta__painel{transform:none}
.gaveta__topo{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--e-6)}
.gaveta__cat{border-bottom:1px solid var(--borda-sutil)}
.gaveta__cat summary{display:flex;align-items:center;gap:var(--e-3);padding-block:var(--e-3);list-style:none;cursor:pointer;font-weight:500;font-size:15px}
.gaveta__cat summary::-webkit-details-marker{display:none}
.gaveta__seta{margin-left:auto;transition:transform var(--transicao)}
.gaveta__cat[open] .gaveta__seta{transform:rotate(180deg)}
.gaveta__cat ul{padding:0 0 var(--e-3) 46px}
.gaveta__cat li a{display:block;padding-block:6px;font-size:14px;color:var(--texto-suave)}
.gaveta__links{display:grid;gap:var(--e-3);margin-top:var(--e-6);font-size:14px}

@media (max-width:1180px){
  .menu__link{font-size:13px;padding-inline:9px}
  .menu__lista{margin-inline:-9px}
  .acao--ajuda{display:none}
}
@media (max-width:1024px){
  .menu{display:none}
  .nav__burger{display:grid}
  .nav{grid-template-columns:auto auto 1fr;gap:var(--e-2) var(--e-3);height:auto;padding-block:var(--e-3)}
  .acoes{justify-self:end;gap:var(--e-4)}
  .busca{grid-column:1/-1;max-width:none;order:4}
  .busca input{height:44px}
  .busca button{width:34px;height:34px}
}
@media (max-width:640px){
  .acao span{display:none}
  .logo__m{font-size:36px}
  .logo__script{font-size:26px}
}

/* ============================================================
   SEÇÕES
   ============================================================ */
.secao{padding-block:var(--e-24)}
.secao--compacta{padding-block:var(--e-16)}
.secao--branca{background:var(--superficie)}
@media (max-width:640px){.secao{padding-block:var(--e-16)}.secao--compacta{padding-block:var(--e-12)}}
.secao-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--e-6);margin-bottom:var(--e-10);flex-wrap:wrap}
.secao-cab .lead{margin-top:var(--e-3)}
.secao-cab--centro{flex-direction:column;align-items:center;text-align:center}
.setas{display:flex;gap:var(--e-2)}

/* ---------- HERO ---------- */
.hero{padding-top:var(--e-5)}
.hero__banner{position:relative;margin-inline:var(--e-5);border-radius:var(--r-xl);border:1px solid var(--rosa-border);overflow:hidden;min-height:520px;
  background:
    radial-gradient(120% 140% at 92% 12%, var(--pessego-100) 0%, transparent 55%),
    radial-gradient(90% 120% at 4% 88%, var(--ceu-100) 0%, transparent 52%),
    linear-gradient(135deg, var(--rosa-100) 0%, var(--neutro-50) 62%)}
.hero__blob{position:absolute;border-radius:50%;filter:blur(.5px);pointer-events:none}
.hero__blob--a{width:260px;height:220px;left:-110px;top:-70px;background:var(--rosa-300);border-radius:58% 42% 55% 45%/50% 60% 40% 50%;opacity:.8}
.hero__blob--b{width:220px;height:200px;left:-80px;bottom:-90px;background:var(--ceu-300);border-radius:45% 55% 40% 60%/55% 45% 55% 45%;opacity:.75}
.hero__blob--c{width:180px;height:120px;left:30%;bottom:-70px;background:var(--baunilha-300);border-radius:50% 50% 45% 55%/60% 60% 40% 40%;opacity:.8}
.hero__fio{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero__slides{position:relative;display:grid;grid-template-columns:minmax(0,1fr)}
.hero__slide{grid-area:1/1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:var(--e-6);min-height:520px;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}
.hero__slide.ativo{opacity:1;visibility:visible;transition-delay:0s}
.hero__texto{position:relative;z-index:2;padding:var(--e-16) 0 var(--e-20) var(--e-12)}
.hero .t-display{font-size:clamp(36px,4.1vw,52px)}
.hero__texto .lead{margin-top:var(--e-5)}
.hero__cta{display:flex;flex-wrap:wrap;gap:var(--e-3);margin-top:var(--e-8)}
.hero__arte{position:relative;align-self:stretch;min-height:420px}
.hero__arte > svg{position:absolute;inset:0;width:100%;height:100%}
.hero__controles{position:absolute;left:calc(max(0px, (100% - var(--largura-conteudo) - var(--gutter) * 2) / 2) + var(--gutter) + var(--e-12));bottom:var(--e-6);z-index:3;display:flex;align-items:center;gap:var(--e-4)}
.hero__pontos{display:flex;gap:8px}
.hero__ponto{width:8px;height:8px;border-radius:var(--r-pill);border:0;padding:0;background:var(--cacau-200);transition:width var(--transicao),background var(--transicao)}
.hero__ponto[aria-current="true"]{width:28px;background:var(--cacau-500)}
.hero__seta{width:36px;height:36px;border-radius:var(--r-pill);border:1.5px solid var(--cacau-border);background:rgba(255,255,255,.7);display:grid;place-items:center;color:var(--cacau-500);transition:background var(--transicao)}
.hero__seta:hover{background:var(--rosa-100);border-color:var(--rosa-border)}
.hero__seta svg{width:16px;height:16px}
.hero__cupom{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--e-3);margin-top:var(--e-6);padding:10px 12px 10px 18px;border:1.5px dashed var(--rosa-500);border-radius:var(--r-pill);background:rgba(255,255,255,.7);font-size:var(--ts-corpo-sm)}
.hero__cupom b{letter-spacing:.14em}
.hero__lista{display:grid;gap:var(--e-2);margin-top:var(--e-5);font-size:15px;color:var(--texto-suave)}
.hero__lista li{display:flex;align-items:center;gap:var(--e-2)}
.hero__lista svg{width:18px;height:18px;color:var(--rosa-600)}

@media (max-width:960px){
  .hero__banner{margin-inline:var(--e-3);min-height:0}
  .hero__slide{grid-template-columns:minmax(0,1fr);min-height:0;gap:0}
  .hero__texto{padding:var(--e-12) var(--e-6) 0}
  .hero__arte{min-height:340px;margin-bottom:var(--e-12)}
  .hero__controles{left:var(--e-6);bottom:var(--e-4)}
}
@media (max-width:640px){
  .hero{padding-top:var(--e-3)}
  .hero__texto{padding:var(--e-10) var(--e-5) 0}
  .hero__arte{min-height:280px}
  .hero__cta .btn{flex:1 1 100%}
}

/* ---------- SELOS DE CONFIANÇA ---------- */
.confianca{padding-block:var(--e-8)}
.confianca__lista{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--e-6)}
.confianca__item{display:flex;align-items:center;gap:var(--e-3);font-size:var(--ts-corpo-sm);line-height:1.45;color:var(--texto-suave)}
.confianca__item svg{width:22px;height:22px;flex:none;color:var(--rosa-600)}
.confianca__item + .confianca__item{border-left:1px solid var(--borda);padding-left:var(--e-6)}
@media (max-width:960px){
  .confianca__lista{grid-template-columns:repeat(2,1fr)}
  .confianca__item + .confianca__item{border-left:0;padding-left:0}
}
@media (max-width:480px){.confianca__lista{grid-template-columns:1fr;gap:var(--e-3)}}

/* ---------- CARDS DE CATEGORIA ---------- */
.cats{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--e-4)}
.cat-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--superficie);border:1px solid var(--borda-sutil);border-radius:var(--r-lg);padding:var(--e-6) var(--e-4);transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}
.cat-card:hover{border-color:var(--rosa-border);box-shadow:var(--sh-md);transform:translateY(-3px)}
.cat-card .bolha{width:76px;height:76px;margin-bottom:var(--e-4);transition:transform .3s ease}
.cat-card .bolha svg{width:32px;height:32px}
.cat-card:hover .bolha{transform:scale(1.05) rotate(-4deg)}
.cat-card b{display:block;font-family:var(--fonte-titulo);font-size:17px;font-weight:400;line-height:1.25;margin-bottom:6px}
.cat-card__txt{display:block;font-size:12px;color:var(--texto-fraco);line-height:1.5;margin-bottom:var(--e-4)}
.cat-card .btn{margin-top:auto}
@media (max-width:1100px){.cats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:720px){.cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--e-3)}}

/* ---------- CARD DE PRODUTO ---------- */
.prod{background:var(--superficie);border:1px solid var(--borda-sutil);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .22s ease,border-color .22s ease}
.prod:hover{box-shadow:var(--sh-md);border-color:var(--borda)}
.prod__foto{position:relative;display:block;aspect-ratio:5/4;overflow:hidden;background:var(--tom-50,var(--neutro-100))}
.prod__foto > svg{width:100%;height:100%;transition:transform .5s ease}
.prod:hover .prod__foto > svg{transform:scale(1.04)}
.prod__corpo{padding:var(--e-4) var(--e-4) var(--e-5);display:flex;flex-direction:column;gap:var(--e-1);flex:1}
.prod__cat{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--texto-fraco)}
.prod__nome{font-family:var(--fonte-titulo);font-weight:400;font-size:18px;line-height:1.3}
.prod__nome a:hover{color:var(--rosa-700)}
.prod__linha{font-size:13px;color:var(--texto-fraco);line-height:1.5}
.prod__preco{font-size:var(--ts-t3);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.3;margin:var(--e-3) 0 var(--e-4)}
.prod__preco small{display:block;font-size:12px;font-weight:400;color:var(--texto-fraco);line-height:1.4}
.prod .btn{margin-top:auto}

.trilho{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - var(--e-5) * 3) / 4);gap:var(--e-5);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:var(--e-2)}
.trilho::-webkit-scrollbar{display:none}
.trilho > *{scroll-snap-align:start}
@media (max-width:1024px){.trilho{grid-auto-columns:calc((100% - var(--e-5) * 2) / 3)}}
@media (max-width:720px){.trilho{grid-auto-columns:74%;gap:var(--e-3)}}

/* ---------- COMO FUNCIONA ---------- */
.passos-home{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--e-6);counter-reset:passo;position:relative}
.passos-home::before{content:"";position:absolute;top:36px;left:12%;right:12%;border-top:1.5px dashed var(--rosa-400)}
.passo-home{position:relative;text-align:center;padding-inline:var(--e-2)}
.passo-home__num{position:relative;width:72px;height:72px;margin:0 auto var(--e-5);border-radius:var(--r-pill);background:var(--superficie);border:1px solid var(--rosa-border);display:grid;place-items:center;font-family:var(--fonte-titulo);font-size:30px;color:var(--cacau-500);box-shadow:var(--sh-sm)}
.passo-home__num svg{position:absolute;right:-6px;bottom:-4px;width:30px;height:30px;padding:6px;border-radius:var(--r-pill);background:var(--rosa-300);color:var(--cacau-500)}
.passo-home h3{margin-bottom:var(--e-2)}
.passo-home p{font-size:var(--ts-corpo-sm);color:var(--texto-fraco);max-width:30ch;margin-inline:auto}
@media (max-width:900px){
  .passos-home{grid-template-columns:repeat(2,1fr);row-gap:var(--e-10)}
  .passos-home::before{display:none}
}
@media (max-width:520px){
  .passos-home{grid-template-columns:1fr}
  .passo-home{display:grid;grid-template-columns:64px 1fr;gap:var(--e-4);text-align:left}
  .passo-home__num{width:60px;height:60px;margin:0;font-size:24px}
  .passo-home p{margin:0}
}

/* ---------- DIFERENCIAIS ---------- */
.diferenciais{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--e-16);align-items:center}
.diferenciais__texto .lead{margin-top:var(--e-5)}
.diferenciais__texto .btn{margin-top:var(--e-8)}
.diferenciais__grade{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--e-4)}
.diferencial{background:var(--neutro-50);border-radius:var(--r-lg);padding:var(--e-6);border:1px solid var(--borda-sutil)}
.diferencial:nth-child(2){transform:translateY(var(--e-8))}
.diferencial:nth-child(4){transform:translateY(var(--e-8))}
.diferencial .bolha{width:52px;height:52px;margin-bottom:var(--e-4)}
.diferencial .bolha svg{width:24px;height:24px}
.diferencial h3{font-size:17px;margin-bottom:var(--e-2);line-height:1.35}
.diferencial p{font-size:var(--ts-corpo-sm);color:var(--texto-fraco)}
@media (max-width:960px){
  .diferenciais{grid-template-columns:1fr;gap:var(--e-10)}
  .diferencial:nth-child(2),.diferencial:nth-child(4){transform:none}
}
@media (max-width:520px){.diferenciais__grade{grid-template-columns:1fr}}

/* ---------- PROMOS (eventos / empresas) ---------- */
.promos{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--e-5)}
.promo{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border-radius:var(--r-xl);overflow:hidden;background:var(--tom-100);border:1px solid var(--tom-borda);min-height:320px}
.promo__texto{padding:var(--e-10) 0 var(--e-10) var(--e-10);display:flex;flex-direction:column;align-items:flex-start}
.promo__texto h3{margin-bottom:var(--e-3)}
.promo__texto p{font-size:var(--ts-corpo-sm);color:var(--texto-suave);margin-bottom:var(--e-6)}
.promo__texto .btn{margin-top:auto}
.promo__acoes{display:flex;flex-wrap:wrap;gap:var(--e-3);align-items:center;margin-top:auto}
.promo__arte{position:relative}
.promo__arte > svg{position:absolute;inset:0;width:100%;height:100%}
@media (max-width:960px){.promos{grid-template-columns:1fr}}
@media (max-width:560px){
  .promo{grid-template-columns:1fr}
  .promo__texto{padding:var(--e-8) var(--e-6) 0}
  .promo__arte{height:220px;order:-1}
}

/* ---------- INSTITUCIONAL ---------- */
.sobre{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--e-16);align-items:center}
.sobre__arte{position:relative;border-radius:var(--r-2xl);overflow:hidden;aspect-ratio:15/14;border:1px solid var(--borda-sutil)}
.sobre__arte > svg{position:absolute;inset:0;width:100%;height:100%}
.sobre__selo{position:absolute;right:var(--e-5);bottom:var(--e-5);background:var(--superficie);border-radius:var(--r-lg);padding:var(--e-4) var(--e-5);box-shadow:var(--sh-md);display:flex;align-items:center;gap:var(--e-3);font-size:13px;line-height:1.4;max-width:250px}
.sobre__selo b{display:block;font-size:14px}
.sobre__texto p{margin-top:var(--e-5)}
.sobre__texto .btn{margin-top:var(--e-8)}
.sobre__numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e-4);margin-top:var(--e-8);padding-top:var(--e-6);border-top:1px solid var(--borda)}
.sobre__numeros b{display:block;font-family:var(--fonte-titulo);font-weight:400;font-size:30px;line-height:1.1}
.sobre__numeros span{font-size:13px;color:var(--texto-fraco);line-height:1.4;display:block;margin-top:4px}
@media (max-width:960px){.sobre{grid-template-columns:1fr;gap:var(--e-10)}}

/* ---------- CTA FINAL ---------- */
.cta-final{position:relative;overflow:hidden;border-radius:var(--r-2xl);background:var(--cacau-500);color:var(--texto-invertido);padding:var(--e-20) var(--e-10);text-align:center}
.cta-final h2{color:var(--texto-invertido);max-width:20ch;margin-inline:auto}
.cta-final p{color:var(--cacau-100);font-weight:300;max-width:56ch;margin:var(--e-5) auto var(--e-8)}
.cta-final__mancha{position:absolute;border-radius:50%;opacity:.16;pointer-events:none}
.cta-final__mancha--a{width:340px;height:280px;left:-120px;top:-120px;background:var(--rosa-300);border-radius:55% 45% 60% 40%/50% 55% 45% 50%}
.cta-final__mancha--b{width:300px;height:260px;right:-100px;bottom:-130px;background:var(--ceu-300);border-radius:45% 55% 40% 60%/55% 45% 55% 45%}
.cta-final__mancha--c{width:120px;height:100px;right:18%;top:-50px;background:var(--baunilha-300)}
@media (max-width:640px){.cta-final{padding:var(--e-16) var(--e-5);border-radius:var(--r-xl)}}

/* ---------- NEWSLETTER + RODAPÉ ---------- */
.newsletter{padding-bottom:var(--e-16)}
.newsletter__caixa{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--e-10);align-items:center;background:var(--rosa-100);border:1px solid var(--rosa-border);border-radius:var(--r-xl);padding:var(--e-8) var(--e-10)}
.newsletter__texto{display:flex;align-items:center;gap:var(--e-5)}
.newsletter__texto p{font-size:var(--ts-corpo-sm);color:var(--texto-suave);margin-top:var(--e-1)}
.newsletter__form{display:flex;gap:var(--e-2)}
.newsletter__form input{flex:1;min-width:0;height:50px;border-radius:var(--r-pill);border:1.5px solid var(--rosa-border);background:var(--superficie);padding:0 20px;font-size:15px}
.newsletter__form input:focus{outline:none;border-color:var(--rosa-500);box-shadow:var(--sh-foco)}
@media (max-width:900px){
  .newsletter__caixa{grid-template-columns:1fr;gap:var(--e-6);padding:var(--e-8) var(--e-6)}
}
@media (max-width:520px){
  .newsletter__texto{flex-direction:column;align-items:flex-start}
  .newsletter__form{flex-direction:column}
}

.rodape{background:var(--superficie);border-top:1px solid var(--borda-sutil);font-size:var(--ts-corpo-sm)}
.rodape__grade{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:var(--e-8);padding-block:var(--e-16) var(--e-10)}
.rodape__marca p{margin-top:var(--e-4);color:var(--texto-fraco);max-width:32ch;line-height:1.6}
.rodape__redes{display:flex;gap:var(--e-2);margin-top:var(--e-5)}
.rodape__redes a{width:40px;height:40px;border-radius:var(--r-pill);border:1.5px solid var(--cacau-border);display:grid;place-items:center;color:var(--cacau-500);transition:background var(--transicao),border-color var(--transicao)}
.rodape__redes a:hover{background:var(--rosa-100);border-color:var(--rosa-border)}
.rodape__titulo{font-family:var(--fonte-texto);font-size:var(--ts-rotulo);font-weight:600;letter-spacing:var(--ls-rotulo);text-transform:uppercase;color:var(--texto);margin-bottom:var(--e-4)}
.rodape li + li{margin-top:var(--e-2)}
.rodape__grade ul a{color:var(--texto-fraco);transition:color var(--transicao)}
.rodape__grade ul a:hover{color:var(--texto)}
.rodape__contato li{display:flex;gap:var(--e-3);align-items:flex-start;color:var(--texto-fraco);line-height:1.45}
.rodape__contato li + li{margin-top:var(--e-4)}
.rodape__contato svg{width:18px;height:18px;margin-top:2px;color:var(--rosa-600)}
.rodape__contato b{display:block;color:var(--texto);font-weight:500}
.rodape__base{display:flex;align-items:center;justify-content:space-between;gap:var(--e-4);flex-wrap:wrap;padding-block:var(--e-6);border-top:1px solid var(--borda-sutil)}
.rodape__pagamentos{display:flex;flex-wrap:wrap;gap:var(--e-2)}
.rodape__pagamentos span{font-size:11px;font-weight:600;letter-spacing:.04em;padding:5px 10px;border-radius:var(--r-xs);border:1px solid var(--borda);color:var(--texto-suave);background:var(--neutro-25)}
.rodape__seguro{display:flex;align-items:center;gap:var(--e-2);color:var(--sucesso);font-weight:500;font-size:13px}
.rodape__seguro svg{width:18px;height:18px}
.rodape__legal{background:var(--neutro-50);font-size:12px;color:var(--texto-fraco)}
.rodape__legal .container{display:flex;justify-content:space-between;gap:var(--e-3);flex-wrap:wrap;padding-block:var(--e-4)}
.rodape__legal a:hover{color:var(--texto)}
@media (max-width:1024px){.rodape__grade{grid-template-columns:repeat(2,1fr)}.rodape__marca{grid-column:1/-1}}
@media (max-width:520px){.rodape__grade{grid-template-columns:1fr;gap:var(--e-6)}}

/* ---------- MODAL DE CUPOM ---------- */
.modal{border:0;padding:0;border-radius:var(--r-xl);width:min(780px,calc(100% - 32px));max-height:calc(100dvh - 32px);box-shadow:var(--sh-lg);background:var(--superficie);color:var(--texto);overflow:auto}
.modal::backdrop{background:rgba(39,30,18,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.modal[open]{animation:modal-entra .35s ease}
@keyframes modal-entra{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.modal__grade{display:grid;grid-template-columns:320px 1fr}
.modal__arte{position:relative;min-height:460px;background:var(--rosa-100)}
.modal__arte > svg{position:absolute;inset:0;width:100%;height:100%}
.modal__corpo{position:relative;padding:var(--e-12) var(--e-10) var(--e-8)}
.modal__fechar{position:absolute;top:var(--e-4);right:var(--e-4)}
.modal__titulo{font-family:var(--fonte-titulo);font-weight:400;font-size:clamp(30px,4vw,40px);line-height:1.12;margin-bottom:var(--e-4)}
.modal__texto{color:var(--texto-suave);font-weight:300;margin-bottom:var(--e-6)}
.modal__form{display:grid;gap:var(--e-4)}
.modal__agora-nao{display:block;margin:var(--e-4) auto var(--e-3);border:0;background:none;font-size:13px;color:var(--texto-fraco);text-decoration:underline;text-underline-offset:3px}
.modal__agora-nao:hover{color:var(--texto)}
.modal .legenda{text-align:center}
.modal__passo[data-passo="2"] .bolha{margin-bottom:var(--e-5)}
.cupom-codigo{display:flex;align-items:center;justify-content:space-between;gap:var(--e-3);border:1.5px dashed var(--rosa-500);border-radius:var(--r-md);padding:var(--e-3) var(--e-3) var(--e-3) var(--e-5);background:var(--rosa-50);margin-bottom:var(--e-5)}
.cupom-codigo span{font-weight:600;font-size:20px;letter-spacing:.16em}
@media (max-width:680px){
  .modal__grade{grid-template-columns:1fr}
  .modal__arte{min-height:150px}
  .modal__corpo{padding:var(--e-8) var(--e-5) var(--e-6)}
}

/* ============================================================
   PÁGINA DE CATEGORIA
   ============================================================ */
.cat-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--tom-borda);
  background:radial-gradient(90% 120% at 100% 0%, var(--tom-200) 0%, transparent 60%),linear-gradient(135deg,var(--tom-100) 0%,var(--neutro-50) 70%)}
.cat-hero__texto{padding:var(--e-12) 0 var(--e-12) var(--e-12)}
.cat-hero__texto .bolha{margin-bottom:var(--e-5);background:var(--superficie)}
.cat-hero__texto .lead{margin-top:var(--e-4);font-size:17px}
.cat-hero__arte{position:relative;min-height:340px}
.cat-hero__arte > svg{position:absolute;inset:0;width:100%;height:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%);mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
@media (max-width:860px){
  .cat-hero{grid-template-columns:1fr}
  .cat-hero__texto{padding:var(--e-8) var(--e-6) 0}
  .cat-hero__arte{min-height:240px}
  .cat-hero__arte > svg{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 25%);mask-image:linear-gradient(180deg,transparent 0,#000 25%)}
}

.chips{display:flex;gap:var(--e-2);overflow-x:auto;scrollbar-width:none;padding-block:var(--e-6) var(--e-2)}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-xs);border:1px solid var(--borda);background:var(--superficie);padding:8px 14px;font-size:13px;color:var(--texto-suave);white-space:nowrap;transition:border-color var(--transicao),background var(--transicao)}
.chip:hover{border-color:var(--borda-forte);color:var(--texto)}
.chip.ativo{background:var(--cacau-500);border-color:var(--cacau-500);color:var(--texto-invertido)}
.chip b{font-weight:600}

.catalogo{display:grid;grid-template-columns:250px minmax(0,1fr);gap:var(--e-10);align-items:start;padding-block:var(--e-8) var(--e-16)}
.filtros{position:sticky;top:150px}
.filtros__topo{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--e-3);border-bottom:1px solid var(--borda)}
.filtros__topo h2{font-family:var(--fonte-texto);font-size:var(--ts-rotulo);font-weight:600;letter-spacing:var(--ls-rotulo);text-transform:uppercase;display:flex;align-items:center;gap:8px}
.filtros__topo button{border:0;background:none;font-size:12px;color:var(--texto-fraco);text-decoration:underline;text-underline-offset:3px}
.filtro{border-bottom:1px solid var(--borda-sutil)}
.filtro summary{display:flex;align-items:center;justify-content:space-between;padding-block:var(--e-4);font-weight:500;font-size:var(--ts-corpo-sm);cursor:pointer;list-style:none}
.filtro summary::-webkit-details-marker{display:none}
.filtro summary svg{width:16px;height:16px;transition:transform var(--transicao)}
.filtro[open] summary svg{transform:rotate(180deg)}
.filtro ul{padding-bottom:var(--e-4);display:grid;gap:var(--e-2)}
.check{display:flex;align-items:center;gap:10px;font-size:var(--ts-corpo-sm);color:var(--texto-suave);cursor:pointer}
.check input{appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;border:1.5px solid var(--borda-forte);border-radius:var(--r-xs);background:var(--superficie);display:grid;place-items:center;flex:none;transition:background var(--transicao),border-color var(--transicao)}
.check input:checked{background:var(--cacau-500) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat;border-color:var(--cacau-500)}
.check input:focus-visible{box-shadow:var(--sh-foco);outline:none}
.check small{margin-left:auto;font-size:12px;color:var(--neutro-500)}
.faixa-preco{display:flex;gap:var(--e-2);padding-bottom:var(--e-4)}
.faixa-preco input{width:100%;min-width:0;height:40px;border:1.5px solid var(--borda);border-radius:var(--r-md);padding:0 12px;font-size:13px;background:var(--superficie)}

.barra-lista{display:flex;align-items:center;justify-content:space-between;gap:var(--e-4);margin-bottom:var(--e-5);flex-wrap:wrap}
.barra-lista p{font-size:var(--ts-corpo-sm);color:var(--texto-fraco)}
.barra-lista p b{color:var(--texto);font-weight:600}
.barra-lista .campo{flex-direction:row;align-items:center;gap:var(--e-3)}
.barra-lista .campo label{white-space:nowrap}
.barra-lista select{padding-block:10px;font-size:14px;min-width:190px}
.btn-filtros{display:none}
.grade-prod{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--e-5)}
@media (max-width:1024px){
  .catalogo{grid-template-columns:1fr}
  .filtros{display:none}
  .btn-filtros{display:inline-flex}
  .grade-prod{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:820px){.grade-prod{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--e-3)}}
@media (max-width:420px){.grade-prod{grid-template-columns:1fr}}
@media (max-width:560px){.barra-lista .campo label{display:none}.barra-lista select{min-width:0}}

.orcamento{display:grid;grid-template-columns:auto 1fr auto;gap:var(--e-6);align-items:center;background:var(--superficie);border:1px solid var(--borda-sutil);border-radius:var(--r-xl);padding:var(--e-8) var(--e-10);box-shadow:var(--sh-sm)}
.orcamento p{font-size:var(--ts-corpo-sm);color:var(--texto-fraco);margin-top:var(--e-1)}
.orcamento .acoes-orc{display:flex;gap:var(--e-3);flex-wrap:wrap}
@media (max-width:820px){.orcamento{grid-template-columns:1fr;padding:var(--e-8) var(--e-6)}}

.seo-bloco{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--e-16);align-items:start}
.seo-bloco p{color:var(--texto-suave);font-weight:300;margin-top:var(--e-4);max-width:62ch}
.seo-bloco ul{margin-top:var(--e-5);display:grid;gap:var(--e-3)}
.seo-bloco li{display:flex;gap:var(--e-3);font-size:var(--ts-corpo-sm);line-height:1.55}
.seo-bloco li svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--rosa-600)}
.seo-bloco li b{font-weight:600}
@media (max-width:900px){.seo-bloco{grid-template-columns:1fr;gap:var(--e-10)}}

.faq details{border-bottom:1px solid var(--borda)}
.faq details:first-of-type{border-top:1px solid var(--borda)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--e-4);padding-block:var(--e-5);cursor:pointer;list-style:none;font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{width:20px;height:20px;flex:none;transition:transform var(--transicao);color:var(--rosa-700)}
.faq details[open] summary svg{transform:rotate(45deg)}
.faq details p{margin:0 0 var(--e-5);font-size:var(--ts-corpo-sm);color:var(--texto-suave);max-width:62ch}

/* ============================================================
   PÁGINA DE PRODUTO
   ============================================================ */
.pdp{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--e-12);align-items:start;padding-bottom:var(--e-16)}
.galeria{position:sticky;top:150px}
.galeria__principal{position:relative;aspect-ratio:5/4;border-radius:var(--r-xl);overflow:hidden;background:var(--neutro-100);border:1px solid var(--borda-sutil)}
.galeria__principal > svg{position:absolute;inset:0;width:100%;height:100%;transition:opacity .25s ease}
.galeria__legenda{position:absolute;left:var(--e-4);bottom:var(--e-4);background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--r-pill);padding:6px 14px;font-size:12px;font-weight:500}
.galeria__zoom{position:absolute;right:var(--e-4);top:var(--e-4);background:var(--superficie)}
.galeria__minis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--e-3);margin-top:var(--e-3)}
.galeria__mini{position:relative;aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;border:1.5px solid var(--borda-sutil);padding:0;background:var(--neutro-100);transition:border-color var(--transicao)}
.galeria__mini > svg{position:absolute;inset:0;width:100%;height:100%}
.galeria__mini:hover{border-color:var(--borda-forte)}
.galeria__mini[aria-current="true"]{border-color:var(--cacau-500);box-shadow:0 0 0 1px var(--cacau-500)}
.galeria__mini--arte{display:grid;place-items:center;align-content:center;gap:4px;background:var(--rosa-50);color:var(--rosa-700);font-size:11px;font-weight:600;letter-spacing:.04em;border-style:dashed;border-color:var(--rosa-border)}
.galeria__mini--arte > svg{position:static;width:22px;height:22px}
.galeria .legenda{margin-top:var(--e-3)}
.galeria__beneficios{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e-3);margin-top:var(--e-5);padding-top:var(--e-5);border-top:1px solid var(--borda-sutil)}
.galeria__beneficios li{display:flex;align-items:center;gap:var(--e-2);font-size:12px;line-height:1.4;color:var(--texto-suave)}
.galeria__beneficios svg{width:20px;height:20px;color:var(--rosa-600)}

.pdp__info h1{margin-top:var(--e-3)}
.pdp__resumo{margin-top:var(--e-4);color:var(--texto-suave);font-weight:300;max-width:56ch}
.pdp__destaques{display:flex;flex-wrap:wrap;gap:var(--e-2) var(--e-5);margin-top:var(--e-5)}
.pdp__destaques li{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--texto-suave)}
.pdp__destaques svg{width:18px;height:18px;color:var(--sucesso)}
.pdp__preco-topo{display:flex;align-items:baseline;gap:var(--e-3);flex-wrap:wrap;margin-top:var(--e-6);padding:var(--e-4) var(--e-5);border-radius:var(--r-md);background:var(--superficie);border:1px solid var(--borda-sutil)}
.pdp__preco-topo small{font-size:13px;color:var(--texto-fraco)}
.pdp__preco-topo b{font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}
.pdp__preco-topo a{margin-left:auto}

.config{margin-top:var(--e-8)}
.passo{padding-block:var(--e-6);border-top:1px solid var(--borda)}
.passo__cab{display:flex;align-items:center;gap:var(--e-3);margin-bottom:var(--e-4)}
.passo__num{width:28px;height:28px;border-radius:var(--r-pill);background:var(--rosa-200);color:var(--rosa-800);font-size:12px;font-weight:600;display:grid;place-items:center;flex:none;font-variant-numeric:tabular-nums}
.passo__titulo{font-size:17px}
.passo__escolha{margin-left:auto;font-size:13px;color:var(--texto-fraco);text-align:right}
.passo__escolha b{color:var(--texto);font-weight:500}
.passo__ajuda{display:inline-flex;align-items:center;gap:4px;margin-left:var(--e-2);font-size:12px;color:var(--rosa-700);text-decoration:underline;text-underline-offset:3px;border:0;background:none;padding:0}

.opcoes-texto{display:flex;flex-wrap:wrap;gap:var(--e-2)}
.opt-txt{position:relative;border:1.5px solid var(--borda);border-radius:var(--r-pill);padding:10px 20px;font-size:14px;background:var(--superficie);transition:border-color var(--transicao),background var(--transicao),box-shadow var(--transicao)}
.opt-txt:hover{border-color:var(--borda-forte)}
.opt-txt[aria-checked="true"]{border-color:var(--cacau-500);background:var(--rosa-50);box-shadow:inset 0 0 0 1px var(--cacau-500);font-weight:500}
.opt-txt:focus-visible,.opt-foto:focus-visible,.qtd:focus-visible,.arte-opt:focus-visible{outline:none;box-shadow:var(--sh-foco)}

.opcoes-foto{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:var(--e-3)}
.opt-foto{position:relative;display:flex;flex-direction:column;text-align:left;border:1.5px solid var(--borda);border-radius:var(--r-md);background:var(--superficie);padding:6px 6px var(--e-3);transition:border-color var(--transicao),box-shadow var(--transicao),transform var(--transicao)}
.opt-foto:hover{border-color:var(--borda-forte);transform:translateY(-1px)}
.opt-foto__img{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--r-sm);overflow:hidden;background:var(--neutro-50)}
.opt-foto__img > svg{position:absolute;inset:0;width:100%;height:100%}
.opt-foto__nome{display:block;font-size:13px;font-weight:500;line-height:1.35;margin:var(--e-2) var(--e-1) 0}
.opt-foto__extra{display:block;font-size:12px;color:var(--texto-fraco);line-height:1.35;margin:2px var(--e-1) 0}
.opt-foto[aria-checked="true"]{border-color:var(--cacau-500);box-shadow:inset 0 0 0 1px var(--cacau-500);background:var(--rosa-50)}
.marcado{position:absolute;top:10px;right:10px;z-index:2;width:22px;height:22px;border-radius:var(--r-pill);background:var(--cacau-500);color:var(--texto-invertido);display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity var(--transicao),transform var(--transicao)}
.marcado svg{width:14px;height:14px;stroke-width:2.4}
[aria-checked="true"] > .marcado{opacity:1;transform:none}

.qtd-lista{border:1.5px solid var(--borda);border-radius:var(--r-md);overflow:hidden;background:var(--superficie)}
.qtd-cab,.qtd{display:grid;grid-template-columns:28px 1fr 1fr 1fr;align-items:center;gap:var(--e-3);padding:12px var(--e-4)}
.qtd-cab{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-fraco);background:var(--neutro-50);border-bottom:1px solid var(--borda)}
.qtd{width:100%;border:0;border-bottom:1px solid var(--borda-sutil);background:transparent;text-align:left;font-size:14px;font-variant-numeric:tabular-nums;transition:background var(--transicao)}
.qtd:last-child{border-bottom:0}
.qtd:hover{background:var(--neutro-50)}
.qtd[aria-checked="true"]{background:var(--rosa-50)}
.qtd__radio{width:18px;height:18px;border-radius:var(--r-pill);border:1.5px solid var(--borda-forte);display:grid;place-items:center}
.qtd[aria-checked="true"] .qtd__radio{border-color:var(--cacau-500)}
.qtd[aria-checked="true"] .qtd__radio::after{content:"";width:10px;height:10px;border-radius:var(--r-pill);background:var(--cacau-500)}
.qtd__total{font-weight:600}
.qtd__un{color:var(--texto-fraco)}
.qtd__eco{display:inline-block;margin-left:6px;font-size:11px;font-weight:600;color:var(--sucesso);background:var(--sucesso-bg);padding:2px 7px;border-radius:var(--r-pill)}
.qtd-mais{display:flex;align-items:center;justify-content:space-between;gap:var(--e-3);flex-wrap:wrap;margin-top:var(--e-3);font-size:13px;color:var(--texto-fraco)}

.arte-opcoes{display:grid;gap:var(--e-2)}
.arte-opt{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:var(--e-4);align-items:center;text-align:left;border:1.5px solid var(--borda);border-radius:var(--r-md);background:var(--superficie);padding:var(--e-4)}
.arte-opt:hover{border-color:var(--borda-forte)}
.arte-opt[aria-checked="true"]{border-color:var(--cacau-500);box-shadow:inset 0 0 0 1px var(--cacau-500);background:var(--rosa-50)}
.arte-opt .bolha{width:44px;height:44px}
.arte-opt .bolha svg{width:22px;height:22px}
.arte-opt b{display:block;font-weight:500;font-size:15px}
.arte-opt span{display:block;font-size:13px;color:var(--texto-fraco);line-height:1.45}
.arte-opt__preco{font-size:13px;font-weight:600;white-space:nowrap}
.envio-arte{margin-top:var(--e-4);border:1.5px dashed var(--rosa-border);border-radius:var(--r-md);background:var(--rosa-50);padding:var(--e-8) var(--e-6);text-align:center}
.envio-arte svg{width:28px;height:28px;margin:0 auto var(--e-3);color:var(--rosa-700)}
.envio-arte p{font-size:var(--ts-corpo-sm)}
.envio-arte u{text-underline-offset:3px;font-weight:600}
.envio-arte .legenda{margin-top:var(--e-2)}
.editor-previa{margin-top:var(--e-4);display:grid;grid-template-columns:120px 1fr;gap:var(--e-5);align-items:center;border:1px solid var(--borda-sutil);border-radius:var(--r-md);padding:var(--e-4);background:var(--superficie)}
.editor-previa__arte{aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;position:relative;background:var(--neutro-100)}
.editor-previa__arte > svg{position:absolute;inset:0;width:100%;height:100%}
.editor-previa p{font-size:var(--ts-corpo-sm);color:var(--texto-suave);margin-bottom:var(--e-3)}

.resumo{margin-top:var(--e-6);background:var(--superficie);border:1px solid var(--borda-sutil);border-radius:var(--r-xl);box-shadow:var(--sh-md);overflow:hidden}
.resumo__topo{padding:var(--e-6) var(--e-6) var(--e-5)}
.resumo__topo h2{font-family:var(--fonte-texto);font-size:var(--ts-rotulo);font-weight:600;letter-spacing:var(--ls-rotulo);text-transform:uppercase;color:var(--texto-fraco);margin-bottom:var(--e-4)}
.resumo__itens{display:grid;grid-template-columns:auto 1fr;gap:6px var(--e-4);font-size:13px}
.resumo__itens dt{color:var(--texto-fraco)}
.resumo__itens dd{margin:0;text-align:right;font-weight:500}
.resumo__preco{padding:var(--e-5) var(--e-6);background:var(--neutro-50);border-block:1px solid var(--borda-sutil);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--e-4);flex-wrap:wrap}
.resumo__total small{display:block;font-size:12px;color:var(--texto-fraco)}
.resumo__total b{display:block;font-size:32px;line-height:1.15;font-weight:600;font-variant-numeric:tabular-nums}
.resumo__total span{display:block;font-size:13px;color:var(--texto-suave)}
.resumo__prazo{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--texto-suave);text-align:right}
.resumo__prazo svg{width:20px;height:20px;color:var(--rosa-600)}
.resumo__prazo b{display:block;color:var(--texto)}
.resumo__acoes{padding:var(--e-5) var(--e-6) var(--e-6);display:grid;gap:var(--e-3)}
.resumo__cep{display:flex;gap:var(--e-2);align-items:center}
.resumo__cep input{flex:1;min-width:0;height:44px;border:1.5px solid var(--borda);border-radius:var(--r-pill);padding:0 18px;font-size:14px;background:var(--superficie)}
.resumo__cep input:focus{outline:none;border-color:var(--rosa-500);box-shadow:var(--sh-foco)}
.resumo__confianca{display:grid;gap:var(--e-2);padding-top:var(--e-2)}
.resumo__confianca li{display:flex;gap:var(--e-2);align-items:center;font-size:13px;color:var(--texto-suave)}
.resumo__confianca svg{width:18px;height:18px;color:var(--sucesso)}
.resumo__orc{font-size:13px;color:var(--texto-fraco);text-align:center}
.resumo__orc a{color:var(--texto);font-weight:600;text-decoration:underline;text-underline-offset:3px}

.barra-compra{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--borda-sutil);box-shadow:0 -8px 24px rgba(62,49,33,.08);transform:translateY(110%);transition:transform .3s ease}
.barra-compra.visivel{transform:none}
.barra-compra .container{display:flex;align-items:center;gap:var(--e-4);padding-block:var(--e-3)}
.barra-compra__mini{width:52px;height:52px;border-radius:var(--r-sm);overflow:hidden;position:relative;flex:none;background:var(--neutro-100)}
.barra-compra__mini > svg{position:absolute;inset:0;width:100%;height:100%}
.barra-compra__nome{min-width:0}
.barra-compra__nome b{display:block;font-family:var(--fonte-titulo);font-weight:400;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barra-compra__nome span{display:block;font-size:12px;color:var(--texto-fraco);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barra-compra__preco{margin-left:auto;text-align:right;white-space:nowrap}
.barra-compra__preco b{display:block;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.2}
.barra-compra__preco span{font-size:12px;color:var(--texto-fraco)}
@media (max-width:640px){
  .barra-compra__mini,.barra-compra__nome{display:none}
  .barra-compra__preco{margin-left:0;text-align:left}
  .barra-compra .btn{margin-left:auto;padding-inline:20px}
}

.pdp__detalhes{padding-bottom:var(--e-16)}
.abas{border-bottom:1px solid var(--borda);display:flex;gap:var(--e-6);overflow-x:auto;scrollbar-width:none}
.abas::-webkit-scrollbar{display:none}
.aba{position:relative;border:0;background:none;padding:var(--e-4) 0;font-size:15px;color:var(--texto-fraco);white-space:nowrap}
.aba::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--cacau-500);transform:scaleX(0);transition:transform var(--transicao)}
.aba[aria-selected="true"]{color:var(--texto);font-weight:500}
.aba[aria-selected="true"]::after{transform:scaleX(1)}
.aba-painel{padding-block:var(--e-8)}
.aba-painel__grade{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--e-12);align-items:start}
.aba-painel p + p{margin-top:var(--e-4)}
.aba-painel p{color:var(--texto-suave);max-width:62ch}
.specs{width:100%;border-collapse:collapse;font-size:var(--ts-corpo-sm)}
.specs th,.specs td{text-align:left;padding:12px 0;border-bottom:1px solid var(--borda-sutil);vertical-align:top}
.specs th{font-weight:500;width:38%;padding-right:var(--e-4)}
.specs td{color:var(--texto-suave)}
.arquivo-passos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e-4)}
.arquivo-passo{border:1px solid var(--borda-sutil);border-radius:var(--r-lg);padding:var(--e-5);background:var(--superficie)}
.arquivo-passo b{display:block;font-family:var(--fonte-titulo);font-weight:400;font-size:28px;color:var(--rosa-600);line-height:1}
.arquivo-passo h3{font-size:15px;margin:var(--e-3) 0 var(--e-1)}
.arquivo-passo p{font-size:13px;color:var(--texto-fraco)}
@media (max-width:900px){
  .pdp{grid-template-columns:1fr;gap:var(--e-8)}
  .galeria{position:static}
  .aba-painel__grade{grid-template-columns:1fr;gap:var(--e-8)}
  .arquivo-passos{grid-template-columns:1fr}
}
@media (max-width:520px){
  .qtd-cab,.qtd{grid-template-columns:24px 1fr 1fr;padding-inline:var(--e-3)}
  .qtd-cab span:last-child,.qtd__un{display:none}
  .galeria__beneficios{grid-template-columns:1fr}
  .opcoes-foto{grid-template-columns:repeat(2,minmax(0,1fr))}
  .arte-opt{grid-template-columns:auto 1fr}
  .arte-opt__preco{grid-column:2}
  .resumo__topo,.resumo__preco,.resumo__acoes{padding-inline:var(--e-5)}
  .editor-previa{grid-template-columns:1fr}
}

/* ============================================================
   CARRINHO
   ============================================================ */
.etapas{display:flex;align-items:center;justify-content:center;gap:var(--e-3);padding-block:var(--e-6);font-size:13px;color:var(--texto-fraco);flex-wrap:wrap}
.etapa{display:flex;align-items:center;gap:var(--e-2)}
.etapa span{width:26px;height:26px;border-radius:var(--r-pill);border:1.5px solid var(--borda-forte);display:grid;place-items:center;font-size:12px;font-weight:600}
.etapa.ativa{color:var(--texto);font-weight:500}
.etapa.ativa span{background:var(--cacau-500);border-color:var(--cacau-500);color:var(--texto-invertido)}
.etapa-linha{width:48px;border-top:1.5px dashed var(--borda-forte)}
.carrinho{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--e-8);align-items:start;padding-bottom:var(--e-20)}
.carrinho h1{margin-bottom:var(--e-6)}
.item{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:var(--e-5);padding:var(--e-5);background:var(--superficie);border:1px solid var(--borda-sutil);border-radius:var(--r-lg)}
.item + .item{margin-top:var(--e-4)}
.item__foto{position:relative;aspect-ratio:1;border-radius:var(--r-md);overflow:hidden;background:var(--neutro-100)}
.item__foto > svg{position:absolute;inset:0;width:100%;height:100%}
.item h2{font-family:var(--fonte-titulo);font-weight:400;font-size:20px}
.item h2 a:hover{color:var(--rosa-700)}
.item__opcoes{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--e-3)}
.item__opcoes li{font-size:12px;background:var(--neutro-50);border:1px solid var(--borda-sutil);border-radius:var(--r-pill);padding:3px 10px;color:var(--texto-suave)}
.item__status{display:flex;align-items:center;gap:6px;margin-top:var(--e-3);font-size:13px}
.item__status svg{width:16px;height:16px}
.item__status--ok{color:var(--sucesso)}
.item__status--pendente{color:var(--atencao)}
.item__acoes{display:flex;gap:var(--e-4);margin-top:var(--e-4);font-size:13px}
.item__acoes a,.item__acoes button{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:0;color:var(--texto-suave);text-decoration:underline;text-underline-offset:3px}
.item__acoes svg{width:16px;height:16px}
.item__lado{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:var(--e-4);text-align:right}
.item__preco b{display:block;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}
.item__preco span{font-size:12px;color:var(--texto-fraco)}
.contador{display:inline-flex;align-items:center;border:1.5px solid var(--borda);border-radius:var(--r-pill);background:var(--superficie)}
.contador button{width:36px;height:36px;border:0;background:none;display:grid;place-items:center;color:var(--cacau-500)}
.contador svg{width:16px;height:16px}
.contador span{min-width:64px;text-align:center;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}
.carrinho__avisos{display:grid;gap:var(--e-3);margin-top:var(--e-6)}
.continuar{margin-top:var(--e-6)}
.pedido{position:sticky;top:150px}
.pedido .painel{padding:var(--e-6)}
.pedido h2{font-family:var(--fonte-texto);font-size:var(--ts-rotulo);font-weight:600;letter-spacing:var(--ls-rotulo);text-transform:uppercase;margin-bottom:var(--e-5)}
.pedido__linhas{display:grid;gap:var(--e-3);font-size:var(--ts-corpo-sm);padding-block:var(--e-5);border-block:1px solid var(--borda-sutil);margin-block:var(--e-5)}
.pedido__linha{display:flex;justify-content:space-between;gap:var(--e-3);font-variant-numeric:tabular-nums}
.pedido__linha span:first-child{color:var(--texto-suave)}
.pedido__linha--desconto{color:var(--sucesso)}
.pedido__linha--desconto span:first-child{color:var(--sucesso)}
.pedido__total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--e-1)}
.pedido__total b{font-size:28px;font-weight:600;font-variant-numeric:tabular-nums}
.pedido__parcelas{text-align:right;font-size:13px;color:var(--texto-fraco);margin-bottom:var(--e-5)}
.cupom-aplicado{display:flex;align-items:center;justify-content:space-between;gap:var(--e-3);margin-top:var(--e-2);padding:8px 12px;border-radius:var(--r-md);background:var(--sucesso-bg);border:1px solid var(--sucesso-borda);color:var(--sucesso);font-size:13px}
.cupom-aplicado b{letter-spacing:.1em}
.cupom-aplicado button{border:0;background:none;color:inherit;text-decoration:underline;font-size:12px}
.frete-opcoes{display:grid;gap:var(--e-2);margin-top:var(--e-3)}
.frete{display:flex;align-items:center;gap:var(--e-3);padding:10px 12px;border:1.5px solid var(--borda);border-radius:var(--r-md);font-size:13px;cursor:pointer}
.frete input{appearance:none;-webkit-appearance:none;margin:0;width:18px;height:18px;border-radius:var(--r-pill);border:1.5px solid var(--borda-forte);display:grid;place-items:center;flex:none}
.frete input:checked{border-color:var(--cacau-500)}
.frete input:checked::after{content:"";width:10px;height:10px;border-radius:var(--r-pill);background:var(--cacau-500)}
.frete:has(input:checked){border-color:var(--cacau-500);background:var(--rosa-50)}
.frete b{font-weight:500;display:block}
.frete span{color:var(--texto-fraco)}
.frete em{margin-left:auto;font-style:normal;font-weight:600;font-variant-numeric:tabular-nums}
.pedido__confianca{display:grid;gap:var(--e-2);margin-top:var(--e-5)}
.pedido__confianca li{display:flex;gap:var(--e-2);align-items:flex-start;font-size:13px;color:var(--texto-suave);line-height:1.45}
.pedido__confianca svg{width:18px;height:18px;flex:none;color:var(--sucesso)}
@media (max-width:1024px){
  .carrinho{grid-template-columns:1fr}
  .pedido{position:static}
}
@media (max-width:640px){
  .item{grid-template-columns:96px minmax(0,1fr);gap:var(--e-4);padding:var(--e-4)}
  .item__lado{grid-column:1/-1;flex-direction:row;align-items:center;text-align:left}
  .etapa-linha{width:20px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
