@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/montserrat-400.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/montserrat-500.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/montserrat-600.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/montserrat-700.woff2) format('woff2')}

:root{--ink:#131313;--orange:#fa9300;--deep:#1a1200;--choc:#2a170d;--grey:#f0f0f0;--rust:#a84a00}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Montserrat',system-ui,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ul,dl,dd{margin:0 0 16px}
ul{padding:0}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
section{position:relative;overflow-x:clip}
.wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 24px}

/* pacote */
.pular{position:absolute;left:-999px;top:0;background:#fff;color:var(--ink);padding:12px 16px;z-index:100}
.pular:focus{left:8px;top:8px}
.rascunho{background-color:#ffe500;color:var(--deep);font-size:12px;font-weight:600;text-align:center;padding:6px 12px}
.pacote{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:6px 16px;background:#fff;border-bottom:1px solid #d9d9d9}
.pacote-abas{display:flex;flex-wrap:wrap;gap:4px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-size:13px;font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;border-bottom:3px solid transparent}
.pacote-abas a[aria-current="page"]{border-bottom-color:var(--orange)}
.pacote-abas .curto{display:none}
.chat{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;background-color:var(--orange);color:var(--deep);font-weight:700;font-size:13px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}
.rodape{background-color:var(--ink);color:#fff;padding:40px 24px;text-align:center;font-size:14px}
.rodape p{max-width:760px;margin:0 auto 12px}
.rodape-chat{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid #fff;text-decoration:none;font-weight:600}
.rodape-fontes{color:#d6d6d6;font-size:13px}

/* tipografia */
h1,h2{text-transform:uppercase;font-weight:500;letter-spacing:.06em;line-height:1.15}
h1{font-size:clamp(1.7rem,3.4vw,2.6rem)}
h2{font-size:clamp(1.5rem,3vw,2.3rem)}
h3{text-transform:uppercase;font-weight:600;font-size:.9rem;letter-spacing:.04em;line-height:1.35}
.eyebrow{font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rust);margin-bottom:12px}
.price{font-weight:700;font-size:1.05rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border:1px solid currentColor;background:transparent;color:inherit;font:600 .78rem/1.2 'Montserrat',sans-serif;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;text-align:center;transition:background-color .2s,color .2s}
.btn:hover{background-color:var(--ink);color:#fff;border-color:var(--ink)}
.btn-light{color:#fff}
.btn-light:hover{background-color:#fff;color:var(--ink);border-color:#fff}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:999px;background:#fff;color:var(--ink);font-weight:700;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.sec-head{max-width:680px;margin-bottom:48px}
.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}
.sec-head.right{text-align:right;margin-left:auto}
.ticks{list-style:none}
.ticks li{position:relative;padding:6px 0 6px 22px}
.ticks li::before{content:"";position:absolute;left:0;top:15px;width:10px;height:10px;background-color:var(--orange)}

/* revelação */
.rv{transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1)}
.com-js .rv:not(.in){opacity:0;transform:translateY(18px)}
@media (prefers-reduced-motion:reduce){.rv{transition:none}.com-js .rv:not(.in){opacity:1;transform:none}html{scroll-behavior:auto}}

/* hero */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);min-height:820px;background-color:var(--ink);color:#fff}
.hero-photo{position:relative;overflow:hidden}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left center}
.hero-panel{position:relative;z-index:1;background-color:var(--ink);display:flex;flex-direction:column;justify-content:center;gap:40px;padding:64px 44px}
.hero-copy .eyebrow{color:var(--orange)}
.lead{color:#e8e8e8;max-width:520px}
.popup{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background-color:#000;border-radius:16px;padding:16px;max-width:560px}
.popup img{width:96px;height:96px;border-radius:12px;object-fit:cover}
.popup-text{flex:1 1 160px}
.popup-name{font-size:1.3rem;font-weight:700;margin:0}
.popup-sub{margin:0;color:#d8d8d8;font-size:.85rem}

/* faixa laranja */
.ticker-band{background-color:var(--orange);color:var(--deep)}
.ticker{list-style:none;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 40px;margin:0 auto;padding:24px;max-width:1320px}
.ticker li{font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;flex:1 1 280px}

/* seções com padding próprio */
.best,.formula,.shades,.choc,.phase,.beta,.after,.sets,.build,.fine,.desk,.nums,.cta{padding:88px 0}
.desk{padding:64px 0}
.beta{padding:56px 0}
.cta{padding:72px 0}
.split{display:grid;gap:64px;align-items:start}
.after .split{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.after .sec-head{margin-bottom:0}
.best .split{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.side{position:sticky;top:24px;align-self:start}
.cards{display:grid;gap:48px 32px}
.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards.four{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}
.pcard img{width:100%;max-width:440px;aspect-ratio:1/1;object-fit:contain;margin-bottom:16px}
.pcard p{color:#2b2b2b}
.pcard .price{color:var(--ink);margin-bottom:8px}
.pcard .btn{margin-top:8px}
.cards.rows{grid-template-columns:minmax(0,1fr);gap:0}
.rows .pcard{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);column-gap:48px;align-content:center;align-items:center;padding:36px 0;border-top:1px solid #d0d0d0}
.rows .pcard:last-child{border-bottom:1px solid #d0d0d0}
.rows .pcard img{grid-column:1;grid-row:1/span 4;margin:0}
.rows .pcard>:not(img){grid-column:2;max-width:560px}
.rows .pcard:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,340px);justify-items:end}
.rows .pcard:nth-child(even) img{grid-column:2}
.rows .pcard:nth-child(even)>:not(img){grid-column:1;justify-self:start}
.pcard.flat{background-color:var(--grey);padding:16px}
.pcard.flat img{max-width:none}

/* faixas de foto */
.band{display:flex;align-items:center;color:#fff;min-height:440px}
.band .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.band .wrap{position:relative;z-index:1;padding-top:56px;padding-bottom:56px}
.band-card{max-width:560px;background-color:var(--ink);color:#fff;padding:40px}
.band-card .eyebrow{color:var(--orange)}
.band-card.wide{max-width:840px}
.hairs{background-color:var(--choc);color:#fff}
.hairs-photo{width:100%;height:auto;aspect-ratio:2400/1028;min-height:220px;object-fit:cover}
.hairs .wrap{padding-top:64px;padding-bottom:72px}
.hairs .eyebrow{color:var(--orange)}
.hair-card{display:flex;gap:40px;align-items:center;max-width:900px}
.hair-card img{width:220px;height:220px;object-fit:cover;flex:0 0 auto}
.wholesale{min-height:900px}
.types{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:560px;margin:0 0 20px}
.types li{border:1px solid #fff;padding:10px 14px;font-size:.8rem;font-weight:600;display:flex;align-items:center}
.logos{display:flex;gap:16px;margin:8px 0 24px}
.logos img{flex:1 1 0;min-width:0;max-width:300px;object-fit:cover}

/* fórmula */
.formula{background-color:var(--grey)}
.formula .split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:stretch}
.formula-photo{position:relative;min-height:440px}
.formula-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{border:1px solid var(--ink);padding:8px 16px;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:520px}
.pair img{width:100%;aspect-ratio:1/1;object-fit:cover}

/* shade card */
.swatch .chip{display:block;height:14px;margin-bottom:16px}
.swatch img{width:100%;aspect-ratio:1/1;object-fit:contain;margin-bottom:12px}
.swatch p{font-size:.88rem;color:#2b2b2b}
.t1 .chip{background-color:#f3dcae}.t2 .chip{background-color:#eec58a}.t3 .chip{background-color:#e6a45a}.t4 .chip{background-color:#d9823a}
.t5 .chip{background-color:#c0622a}.t6 .chip{background-color:#8a4423}.t7 .chip{background-color:#5c2e18}.t8 .chip{background-color:#3a1d0e}

/* chocolate */
.choc{background-color:var(--choc);color:#fff}
.choc .split{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:stretch}
.choc .eyebrow,.build .eyebrow{color:var(--orange)}
.choc-photo{position:relative;min-height:520px}
.choc-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ladder{list-style:none;display:flex;flex-wrap:wrap;gap:12px}
.ladder li{border:1px solid var(--orange);padding:10px 16px;font-weight:700}
.mini{width:140px;height:140px;object-fit:cover;margin-top:8px}

/* spray */
.phase{background-color:var(--orange);color:var(--deep)}
.phase .split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:stretch}
.phase .eyebrow,.cta .eyebrow{color:var(--deep)}
.phase .ticks li::before,.cta .ticks li::before{background-color:var(--deep)}
.phase .duo img{aspect-ratio:1/1;object-fit:contain;background-color:#fff}
.phase-text h2,.phase-text .eyebrow{text-align:right}
.phase a:focus-visible,.cta a:focus-visible{outline-color:var(--deep)}
.stack{display:flex;flex-direction:column;gap:12px;align-self:stretch}
.stack .big{flex:1 1 0;height:0;min-height:260px;width:100%;object-fit:cover}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.duo img{width:100%;aspect-ratio:16/10;object-fit:cover}

/* beta */
.trio{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,4fr) minmax(0,3fr);gap:32px;align-items:stretch}
.beta-photo{position:relative;min-height:340px}
.beta-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.beta-text{align-self:center}
.bignum{font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:700;color:var(--rust);line-height:1.2}

/* sets */
.strip{display:flex;flex-wrap:wrap;gap:24px 40px;align-items:center;justify-content:space-between;margin-top:56px;padding:32px;background-color:var(--ink);color:#fff}
.strip h3,.strip p{margin-bottom:6px}
.strip ul{list-style:none;margin:0}
.strip .price{color:var(--orange);margin-left:8px}

/* bundle */
.build{background-color:var(--ink);color:#fff}
.build .split{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.tiers{list-style:none;display:flex;flex-wrap:wrap;gap:12px}
.tiers li{background-color:var(--orange);color:var(--deep);font-weight:700;padding:10px 16px}
.pcard.dark{background-color:#242424;padding:20px}
.pcard.dark p{color:#e6e6e6}

/* fine print */
.fine{background-color:var(--grey)}
.qa{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:36px 48px;align-items:start}
.qa>div{grid-column:span 2}
.qa>div:nth-last-child(2):nth-child(3n+1){grid-column:2/span 2}
.qa>div:last-child:nth-child(3n+2){grid-column:4/span 2}
.qa dt{font-weight:700;text-transform:uppercase;font-size:.82rem;letter-spacing:.05em;margin-bottom:6px}
.qa dd{margin:0}
.qa dd ul{margin:8px 0 0 18px}

/* delivery */
.desk{background-color:var(--choc);color:#fff}
.desk-list{list-style:none;display:flex;flex-wrap:wrap;gap:24px;margin:24px 0 0}
.desk-list li{flex:0 0 calc((100% - 72px)/4);border-top:3px solid var(--orange);padding-top:16px;font-size:.92rem}

/* números */
.nums{background-color:var(--grey)}
.nums .split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:stretch}
.nums .stats li{border-bottom-color:#c8c8c8}
.stats{list-style:none;margin:24px 0}
.stats li{padding:16px 0;border-bottom:1px solid #d0d0d0}
.stats strong{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700;color:var(--rust);margin-right:.2em;line-height:1.1}

/* cta */
.cta{background-color:var(--orange);color:var(--deep)}
.cta .split{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:stretch}
.steps{margin:0 0 20px;padding-left:22px}
.steps li{padding:4px 0}

@media (max-width:1100px){
  .qa{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qa>div,.qa>div:nth-last-child(2):nth-child(3n+1),.qa>div:last-child:nth-child(3n+2){grid-column:auto}
  .qa>div:last-child:nth-child(odd){grid-column:1/-1;max-width:calc(50% - 24px);justify-self:center}
  .desk-list li{flex-basis:calc((100% - 24px)/2)}
  .cards.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trio{grid-template-columns:minmax(0,1fr)}
  .beta-photo{min-height:300px}
}
@media (max-width:900px){
  .after .split,.best .split,.formula .split,.choc .split,.phase .split,.build .split,.nums .split,.cta .split{grid-template-columns:minmax(0,1fr)}
  .split{gap:40px}
  .hero{display:block;min-height:0}
  .hero-photo{min-height:340px}
  .hero-panel{width:100%;padding:40px 24px}
  .wholesale .wrap{padding-top:300px}
  .rows .pcard,.rows .pcard:nth-child(even){grid-template-columns:minmax(0,1fr);justify-items:start;padding:28px 0}
  .rows .pcard img,.rows .pcard:nth-child(even) img{grid-column:1;grid-row:auto;margin-bottom:16px;max-width:360px}
  .rows .pcard>:not(img),.rows .pcard:nth-child(even)>:not(img){grid-column:1}
  .side{position:static}
  .cards.three{grid-template-columns:minmax(0,1fr)}
  .qa{grid-template-columns:minmax(0,1fr)}
  .qa>div:last-child:nth-child(odd){max-width:none;justify-self:stretch}
  .stack .big{height:auto;aspect-ratio:16/10;min-height:0;flex:none}
  .choc-photo,.formula-photo{min-height:340px}
  .hair-card{flex-direction:column;align-items:flex-start}
  .phase-text h2,.phase-text .eyebrow{text-align:left}
  .sec-head.right{text-align:left;margin-left:0}
}
@media (max-width:640px){
  .pacote-abas .longo{display:none}
  .pacote-abas .curto{display:inline}
  .pacote-abas a{padding:0 8px;font-size:12px}
  .cards.two{grid-template-columns:minmax(0,1fr)}
  .types{grid-template-columns:minmax(0,1fr)}
  .cards.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}
  .desk-list li{flex-basis:100%}
  .band-card{padding:28px 22px}
  .best,.formula,.shades,.choc,.phase,.after,.sets,.build,.fine,.nums,.cta{padding:56px 0}
  .strip{padding:24px 20px}
}
@media (max-width:640px){
  .hairs .wrap{padding-top:40px;padding-bottom:48px}
  .hairs-photo{aspect-ratio:16/10;object-position:center}
  .desk{padding:48px 0}
}
@media (max-width:340px){
  .cards.four{grid-template-columns:minmax(0,1fr)}
}

/* n3 06/10: trava de diversidade (0.105 da plumgoodness): nenhum título centralizado. Cabeçalhos de seção e cartões de faixa passam a centralizar (a marca vende pele bronzeada em cartaz curto); seções de texto + foto lado a lado continuam à esquerda. */
.sec-head,.band-card,.hair-card>div,.desk>.wrap>h2{text-align:center}
.sec-head.side,.sec-head.right{margin-left:auto;margin-right:auto}

/* n3 06/10: na home real o Best Sellers é um título centralizado sobre uma grade de 3 colunas de cartões centralizados (nome, preço, botão-contorno). A landing o tinha em duas colunas, texto à esquerda e cartões à direita; passa a seguir a home. */
@media (min-width:901px){
  .best .split{display:block}
  .best .side{max-width:760px;margin:0 auto 48px;text-align:center}
  .best .cards.two{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.pcard{text-align:center}
/* n3 06/10: o After Sun & SPF segue o mesmo molde do Best Sellers da home: cabeçalho centralizado sobre a grade de cartões. */
@media (min-width:901px){
  .after .split{display:block}
  .after .sec-head.side{max-width:760px;margin:0 auto 48px;text-align:center}
}
/* n3 06/10: o axe acusou target-size no botão do 5º cartão (1440); botão de cartão com altura de toque fixa e respiro entre alvos */
.pcard .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}
.pcard{display:flex;flex-direction:column;align-items:center}
/* n3 06/10: com o cabeçalho empilhado sobre a grade, o .side sticky ficava por cima dos botões dos cartões ao rolar (axe target-size): volta ao fluxo normal */
@media (min-width:901px){
  .best .side,.after .sec-head.side{position:static}
}
