@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/inter-700.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-400.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-500.woff2) format('woff2')}
@font-face{font-family:'Allura';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/allura-400.woff2) format('woff2')}

:root{--vinho:#6f0936;--ink:#000914;--page:#fdfbf8;--claro:#fdf6f0;--cor:#8a5e67;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter',system-ui,sans-serif;--script:'Allura',cursive}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background-color:var(--page);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ul,dl,dd,figure,blockquote{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--vinho);outline-offset:2px}
.bg-escuro :focus-visible,.bg-cor :focus-visible{outline-color:#fff}

/* bloco do pacote */
.pular{position:absolute;left:-9999px;top:0;background:var(--vinho);color:#fff;padding:12px 18px;z-index:100;min-height:44px}
.pular:focus{left:8px;top:8px}
.rascunho{background-color:var(--ink);color:#fff;font-size:13px;line-height:1.4;padding:8px 24px}
.pacote{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;background-color:var(--page);border-bottom:1px solid var(--vinho);padding:6px 24px;min-height:62px;z-index:50}
.pacote-abas{display:flex;flex-wrap:wrap;gap:0 4px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;text-decoration:none;color:var(--vinho);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-bottom:2px solid transparent}
.pacote-abas a[aria-current="page"]{border-bottom-color:var(--vinho);font-weight:700}
.pacote-abas a:hover{background-color:var(--claro)}
.pacote-abas .longo{display:none}
.chat{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;background-color:var(--vinho);color:#fff;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.chat:hover{background-color:var(--ink)}
@media (min-width:960px){.pacote{position:sticky;top:0}.pacote-abas .longo{display:inline}.pacote-abas .curto{display:none}}
.rodape{background-color:var(--ink);color:#fff;padding:40px 24px;font-size:14px}
.rodape p{max-width:760px;margin:0 0 12px}
.rodape a{color:#fff}
.rodape-chat{display:inline-flex;align-items:center;min-height:44px;border:1px solid #fff;padding:0 22px;text-decoration:none;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:12px}
.rodape-fontes{font-size:13px;color:#d9d2cc}

/* base das seções */
.s{position:relative;overflow-x:clip;padding:72px 0;scroll-margin-top:70px}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.bg-claro{background-color:var(--claro)}
.bg-escuro{background-color:var(--vinho);color:var(--page)}
.bg-cor{background-color:var(--cor);color:#fff}
h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,4.2vw,3rem);line-height:1.05;margin:6px 0 20px;letter-spacing:-.005em}
h3{font-family:var(--sans);font-weight:500;font-size:1rem;line-height:1.35;margin:18px 0 6px}
p+p{margin-top:14px}
.lead{font-size:1.18rem;line-height:1.55}
.small{font-size:.875rem}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--vinho);margin-bottom:6px}
.eyebrow-claro{color:var(--page)}
.bg-cor .eyebrow-claro{color:#fff}
.dot{display:inline-block;width:12px;height:12px;border-radius:50%;background-color:var(--vinho);margin-right:10px;vertical-align:-1px}
.dot-claro{background-color:var(--page)}
.price{font-weight:700;color:var(--vinho)}
.bg-cor .price{color:#fff}
.btn{display:inline-flex;align-items:center;min-height:48px;padding:0 28px;border:1px solid var(--vinho);color:var(--vinho);text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;background-color:transparent;margin-top:18px}
.btn:hover{background-color:var(--vinho);color:#fff}
.btn-claro{border-color:var(--page);color:var(--page)}
.btn-claro:hover{background-color:var(--page);color:var(--vinho)}
blockquote{border-left:3px solid var(--vinho);padding-left:20px;margin:20px 0}
blockquote p{font-family:var(--serif);font-size:1.5rem;line-height:1.25}
blockquote footer{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--vinho);margin-top:8px}
.sign{font-family:var(--script);font-size:2.3rem;line-height:1.2;margin-top:12px}
.ticks,.plain{list-style:none;padding:0;margin:8px 0 0}
.ticks li{position:relative;padding-left:22px;margin:7px 0}
.ticks li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background-color:var(--vinho)}
.plain li{padding:14px 0;border-top:1px solid rgba(111,9,54,.28)}
.more{font-weight:500;color:var(--vinho)}

/* hero: split foto + texto (trava de diversidade) */
.s-hero{display:flex;align-items:center;justify-content:flex-end;min-height:min(810px,calc(100svh - 70px));padding:0;background-color:var(--page)}
.s-hero::after{content:"";position:absolute;left:calc(44% - 90px);bottom:64px;width:180px;height:180px;border-radius:50%;background-color:var(--vinho)}
.hero-fig{position:absolute;left:0;top:0;bottom:0;width:44%;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero-card{position:relative;width:52%;padding:48px max(24px,calc((100vw - 1200px)/2)) 48px 24px;text-align:right}
.hero-card>p:not(.eyebrow){max-width:460px;margin-left:auto}
.hero-card h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,4.4vw,3.5rem);line-height:1;margin:10px 0 18px}

/* faixa de virtudes */
#virtues{padding:36px 0 40px}
.virtues-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px}
.virtues-head h2{font-size:1.9rem;margin:0}
.virtues-head p{flex:1 1 260px;margin:0}
.pause{min-height:44px;min-width:92px;padding:0 20px;border:1px solid var(--page);background-color:transparent;color:var(--page);font:700 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.pause:hover{background-color:var(--page);color:var(--vinho)}
.virtues-view{overflow:hidden;margin-top:20px}
.virtues-track{display:flex;gap:56px;width:max-content;list-style:none;margin:0;padding:6px 24px;animation:slide 70s linear infinite alternate}
.virtues-track.paused{animation-play-state:paused}
.virtues-track li{font-family:var(--script);font-size:2.8rem;line-height:1.2;white-space:nowrap}
.virtues-track li::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background-color:var(--page);margin-right:16px;vertical-align:middle}
@keyframes slide{to{transform:translateX(calc(-100% + 100vw))}}

/* faixas com rolagem */
.strip-wrap{overflow-x:auto;padding:12px 24px 24px;scroll-snap-type:x proximity}
.strip{display:flex;gap:24px;width:max-content;list-style:none;margin:0;padding:0}
.card{flex:0 0 280px;scroll-snap-align:start}
.strip-sm .card{flex-basis:240px}
.card img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;background-color:var(--page)}
.card img.contain{object-fit:contain;background-color:var(--claro)}
.card h3{margin:12px 0 4px}
.card p{font-size:.875rem;line-height:1.45;margin:0 0 4px}
.card .price{font-size:.8125rem}

/* grades */
.grid-5-7,.grid-2-3,.grid-3-7,.grid-2,.grid-4,.founder{display:grid;gap:56px;align-items:stretch}
.grid-5-7{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.grid-2-3{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
.grid-3-7{grid-template-columns:minmax(0,4fr) minmax(0,6fr)}
.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.founder{grid-template-columns:minmax(0,1fr);gap:40px}
.founder .txt{column-count:2;column-gap:56px}
.founder blockquote{break-inside:avoid}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px}
.two h2{font-size:clamp(1.8rem,3vw,2.3rem)}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fill{position:relative;min-height:320px;overflow:hidden}
.fill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fill figcaption{position:absolute;left:0;right:0;bottom:0;background-color:var(--page);color:var(--ink);padding:8px 12px;font-size:12px;line-height:1.35}
.sf-text{grid-column:1/3;grid-row:1/3}
.sf-a{grid-column:3;grid-row:1/3}
.sf-b{grid-column:4;grid-row:1}
.sf-c{grid-column:4;grid-row:2}
.sf-b,.sf-c{min-height:260px}
.right h2,.right .eyebrow{text-align:right}
.sticky{align-self:start;position:sticky;top:90px}
.photo4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:12px;min-height:640px}
.photo4 img{width:100%;height:100%;object-fit:cover;min-height:0}
.cols2{column-count:2;column-gap:40px;margin-top:18px}
.spec{margin-bottom:22px;break-inside:avoid}
.spec h3{margin-top:0}

/* faves */
.intro{font-size:.9375rem;margin-bottom:24px}
.six{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 56px;list-style:none;margin:0;padding:0}
.mini{display:grid;grid-template-columns:132px minmax(0,1fr);gap:20px;align-items:start;padding:20px 0;border-top:1px solid rgba(255,255,255,.4)}
.mini img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.mini h3{font-size:1rem;margin:0 0 4px}
.mini p{font-size:.875rem;line-height:1.45;margin:0 0 4px}
#faves .wrap>.eyebrow,#faves .wrap>h2,#faves .wrap>.intro{text-align:center}

/* números */
.ledger{list-style:none;margin:20px 0 28px;padding:0}
.ledger li{display:flex;align-items:baseline;gap:32px;padding:16px 0;border-top:1px solid rgba(111,9,54,.3)}
.ledger li:last-child{border-bottom:1px solid rgba(111,9,54,.3)}
.big{flex:0 0 190px;font-family:var(--serif);font-size:4rem;line-height:1;color:var(--vinho)}
.counts{font-size:.875rem;max-width:72ch}

/* fundador */
.collage{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:12px;height:460px}
.collage img{width:100%;height:100%;object-fit:cover;min-width:0;min-height:0}
.c-col{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0;min-height:0}

/* missão */
.bg-escuro .wrap>h2{font-size:clamp(2.4rem,5vw,3.6rem)}
#mission .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px}
#mission .wrap>.eyebrow,#mission .wrap>h2,#mission .wrap>.beliefs{grid-column:1/-1}
#mission .wrap>p+p{margin-top:0}
#cta-final .wrap{display:grid;grid-template-columns:minmax(0,1fr);row-gap:36px;justify-items:center}
.beliefs{list-style:none;padding:0;margin:28px 0 0;column-count:2;column-gap:48px}
.beliefs li{break-inside:avoid;font-family:var(--serif);font-size:1.7rem;line-height:1.2;padding:16px 0;border-top:1px solid rgba(253,251,248,.4)}

#receipts{padding:56px 0}
#fragrance-craft{padding:44px 0}
#mission{padding:112px 0}
#mission .wrap>.eyebrow,#mission .wrap>h2{text-align:center}
#cta-final{padding:136px 0}
#cta-final .wrap{max-width:820px;text-align:center}

/* rotina */
.routine{display:flex;align-items:center}
.r-photo{flex:0 0 62%;min-width:0}
.r-photo img{width:100%;height:auto}
.r-card{flex:0 0 42%;min-width:0;margin-left:-4%;position:relative;background-color:var(--claro);border:1px solid var(--vinho);padding:32px}
.r-inset{width:46%;height:auto;margin-top:20px}

/* impacto */
.s-impact{display:flex;align-items:center;justify-content:flex-end;padding:48px max(24px,calc((100% - 1200px)/2));min-height:900px}
.bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:20% 50%}
.impact-card{position:relative;width:min(560px,100%);background-color:var(--page);padding:36px}
.impact-card h2,.impact-card .eyebrow{text-align:right}
.report{display:flex;gap:16px;align-items:center;margin:18px 0 10px}
.report img{width:140px;flex:0 0 140px;height:auto}
.report figcaption{font-size:.875rem;line-height:1.45}

/* faq */
.faq div{padding:14px 0;border-top:1px solid rgba(111,9,54,.3)}
.faq dt{font-weight:700;color:var(--vinho)}
.faq dd{margin:4px 0 0}

/* revelação: só esconde com JS */
.com-js .rv{transition:opacity .7s ease,transform .7s ease}
.com-js .rv:not(.in){opacity:0;transform:translateY(24px)}
@media (prefers-reduced-motion:reduce){
  .com-js .rv:not(.in){opacity:1;transform:none}
  .virtues-track{animation:none}
  .virtues-view{overflow-x:auto}
  html{scroll-behavior:auto}
}

@media (max-width:1100px){.six{gap:8px 32px}.beliefs{column-count:1}}
@media (max-width:860px){
  .grid-5-7,.grid-2-3,.grid-3-7,.grid-2,.founder,.two{grid-template-columns:minmax(0,1fr);gap:28px}
  .cols2{column-count:1}
  .grid-4{grid-template-columns:minmax(0,1fr)}
  .six{grid-template-columns:minmax(0,1fr)}
  .s-hero{display:block;min-height:0}
  .s-hero::after{display:none}
  .hero-fig{position:relative;width:auto;aspect-ratio:4/5;max-height:560px}
  .hero-card{width:auto;padding:32px 24px 40px;text-align:left}
  .hero-card>p:not(.eyebrow){margin-left:0}
  .sf-text,.sf-a,.sf-b,.sf-c{grid-column:1;grid-row:auto}
  .fill{min-height:0;aspect-ratio:4/3}
  .sf-b,.sf-c{min-height:0;aspect-ratio:4/3}
  .sticky{position:static}
  .photo4{min-height:0}
  .photo4 img{aspect-ratio:1/1;height:auto}
  .collage{height:440px}
  .routine{flex-direction:column}
  .r-photo{flex:none;width:100%}
  .r-card{flex:none;width:calc(100% - 32px);margin:-40px 0 0}
  .founder .txt{column-count:1}
  #mission .wrap,#cta-final .wrap{grid-template-columns:minmax(0,1fr)}
  #mission .wrap>p+p{margin-top:14px}
}
@media (max-width:640px){
  .wrap{padding:0 20px}
  .s{padding:56px 0}
  .rascunho{padding:8px 20px}
  .pacote{padding:6px 12px}
  .pacote-abas a{padding:0 8px;letter-spacing:.06em}
  .mini{grid-template-columns:96px minmax(0,1fr);gap:16px}
  .s-impact{display:block;padding:0 0 48px;min-height:0}
  .bg-img{position:relative;height:340px;object-position:35% 50%}
  .impact-card{width:auto;margin:-48px 16px 0;padding:24px}
  .big{flex-basis:110px;font-size:2.6rem}
  .ledger li{gap:16px}
  .strip-wrap{padding:12px 20px 24px}
  .card{flex-basis:240px}
  .strip-sm .card{flex-basis:220px}
  .virtues-track li{font-size:2.2rem}
}

/* V7: hero em 3 colunas (foto | calha do círculo vinho | texto), altura de 540 px; mobile intacto */
@media (min-width:861px){
  .s-hero{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,8fr) minmax(0,48fr);align-items:stretch;min-height:min(540px,calc(100svh - 70px))}
  .hero-fig{position:relative;grid-column:1;grid-row:1;left:auto;top:auto;bottom:auto;width:auto}
  .s-hero::after{position:relative;grid-column:2;grid-row:1;align-self:end;justify-self:start;left:auto;bottom:auto;margin:0 0 64px -90px;z-index:1}
  .hero-card{grid-column:3;grid-row:1;align-self:center;width:auto}
}
