@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/hanken-grotesk-400.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/hanken-grotesk-500.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/hanken-grotesk-700.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400-italic.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400.woff2) format('woff2')}

:root{--v:#9e1519;--ink:#141010;--dew:#efefef;--coral:#e4665a;--mut:#616161;--serif:'Instrument Serif',Georgia,serif;--sans:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{font-weight:500;line-height:1.12;margin:0}
p{margin:0 0 1em}
ul,ol{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid #24b2ff;outline-offset:3px}

/* bloco do pacote */
.pular{position:absolute;left:-9999px;top:0;z-index:100}
.pular:focus{left:8px;top:8px;background:#fff;color:#000;padding:12px 16px;border-radius:6px}
.rascunho{background:#fff3e0;color:#6b3500;font-size:.8rem;line-height:1.3;text-align:center;padding:8px 16px}
.pacote{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;background:var(--ink);padding:6px clamp(10px,2vw,24px)}
.pacote-abas{display:flex;flex-wrap:wrap;gap:2px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;color:#fff;text-decoration:none;font:500 .9rem var(--sans)}
.pacote-abas a[aria-current="page"]{background:#fff;color:var(--ink)}
.pacote-abas .curto{display:none}
.chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:999px;background:var(--v);color:#fff;text-decoration:none;font:500 .95rem var(--sans)}
.rodape{background:var(--ink);color:#fff;padding:36px clamp(20px,4vw,48px);font-size:.9rem}
.rodape p{margin:0 0 10px;max-width:72ch}
.rodape a{color:#fff}
.rodape-chat{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1.5px solid #fff;border-radius:999px;text-decoration:none}
.rodape-fontes{color:#d8d8d8;font-size:.82rem}

/* base das seções */
.s{position:relative;overflow-x:clip}
.wrap{position:relative;z-index:2;width:100%;max-width:1360px;margin-inline:auto;padding-inline:clamp(20px,4vw,48px)}
.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.eyebrow{font:500 .8rem var(--sans);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px}
.eyebrow.dark{color:var(--ink)}
.caps{font:500 1.25rem var(--sans);letter-spacing:.02em;text-transform:uppercase;margin:0 0 24px}
.serif{font-family:var(--serif);font-weight:400}
.mut{color:var(--mut);margin:0}
.sm{font-size:.875rem}
.small{font-size:.875rem}
.lead{font-size:1.15rem;max-width:62ch}
.lead2{font:italic 400 1.5rem/1.2 var(--serif);color:#333;margin:.5rem 0 0}
.note{color:#333;max-width:56ch}
.btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0 0}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:999px;border:1.5px solid transparent;font:italic 400 1.2rem var(--serif);text-decoration:none;text-align:center}
.pill.sm{min-height:44px;padding:0 18px;font-size:1.05rem}
.pill-w{background:#fff;color:var(--v)}
.pill-o{background:rgba(40,0,3,.6);color:#fff;border-color:#fff}
.pill-r{background:var(--v);color:#fff}
.pill-ro{border-color:var(--v);color:var(--v);background:transparent}
.pill-d{background:var(--ink);color:#fff}
.lnk{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:underline;text-underline-offset:4px}
#packages .lnk,#journal .lnk{color:var(--v)}

/* revelação */
.rv{transition:opacity .6s ease,transform .6s ease}
.com-js .rv:not(.in){opacity:0;transform:translateY(16px)}

/* door */
#door{display:grid;place-items:center;min-height:clamp(620px,100svh,900px);padding:96px 0;color:#fff;text-align:center}
#door::before,#cta-final::before{content:"";position:absolute;inset:0;z-index:1;background:rgba(60,0,5,.42);pointer-events:none}
.door-in{max-width:900px}
.tag{display:inline-block;margin:0 0 20px;padding:7px 16px;border:1px solid rgba(255,255,255,.75);border-radius:999px;background:rgba(40,0,3,.55);font:500 .8rem var(--sans);letter-spacing:.14em;text-transform:uppercase}
#door h1{font-size:clamp(2rem,4.6vw,3.3rem);letter-spacing:-.01em}
#door .lead,#cta-final .lead{margin:1.1rem auto 0}
#door .btns,#cta-final .btns{justify-content:center}

/* doorknob */
#doorknob{padding:72px 0}
.knob{max-width:900px;text-align:center}
.knob h2{font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.05;margin-bottom:20px}
.knob p{max-width:64ch;margin:0 auto 1em;color:#333}

/* menu */
#menu{min-height:880px;padding:80px 0;color:#fff}
.cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:900px}
.card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:18px 20px;background:rgba(78,6,10,.9);border-radius:4px}
.card.on{background:var(--v)}
.card img{width:72px;height:72px;object-fit:cover;border-radius:50%}
.card h3{font-size:1.15rem;margin:0 0 4px}
.card p{margin:0 0 6px;font-size:.92rem}
.card .btns{margin:8px 0 0}
.menu-note{margin:16px 0 0;max-width:900px;padding:14px 18px;background:rgba(78,6,10,.9);border-radius:4px;font-size:.95rem}

/* separação em duas metades */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:700px}
.split-t{display:flex;flex-direction:column;justify-content:center;padding:72px clamp(20px,5vw,72px)}
.split-p{position:relative;min-height:320px}
.split-p img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.steps{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:26px}
.steps li{display:flex;gap:18px;align-items:flex-start}
.num{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--v);color:#fff;font:400 1.7rem var(--serif)}
.steps h3{font-size:2rem;line-height:1.05}
.steps p{margin:.25rem 0 0;color:#333}
#plan h2{font-size:clamp(2rem,3.6vw,2.7rem)}
.checks{list-style:none;padding:0;margin:18px 0}
.checks li{position:relative;padding-left:40px;margin-bottom:10px;font-size:1.35rem}
.checks li::before{content:"✓";position:absolute;left:0;color:var(--v)}
.mini{list-style:none;padding:0;margin:16px 0;display:grid;gap:10px}
.mini li{font-size:.95rem;color:#333}
.mini strong{display:block;color:var(--ink)}

/* staff */
#staff{background-color:var(--v);color:#fff;padding:80px 0 72px}
#staff h2{font-size:clamp(1.9rem,3.4vw,2.6rem);margin-bottom:32px}
.rail{overflow-x:auto;padding:4px clamp(20px,4vw,48px) 20px;scroll-snap-type:x mandatory}
.rail:focus-visible{outline:3px solid #fff;outline-offset:-3px}
.rail-l{list-style:none;padding:0;margin:0;display:flex;gap:20px;width:max-content}
.pcard{flex:none;width:300px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:4px;padding:24px 20px;background:#f6f7f9;color:var(--ink);border-radius:8px;text-align:center}
.pcard img{width:120px;height:120px;border-radius:50%;object-fit:cover;background:#fff}
.pcard h3{margin:8px 0 0;font-size:1.6rem}
.pcard .rev{margin:8px 0}
.top{margin:8px 0 14px;font-weight:500}
.top span{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:400;color:var(--mut)}
.pcard .pill{margin-top:auto}
.cols2{columns:2;column-gap:40px;margin-top:28px}
.cols2 p{break-inside:avoid;max-width:60ch}

/* folio */
#folio{background-color:var(--dew);padding:88px 0}
.two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:stretch}
#folio h2,#packages h2,#bios h2,#aftercare h2,#journal h2,#guestbook h2,#shelf h2{font-size:clamp(1.9rem,3.6vw,2.7rem)}
.ledger{margin:24px 0 0}
.ledger div{display:flex;align-items:baseline;gap:10px;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.2)}
.ledger dt{flex:1 1 auto;display:flex;align-items:baseline;gap:10px;font-size:1.15rem;font-weight:500}
.ledger dt::after{content:"";flex:1;min-width:16px;border-bottom:2px dotted #8a8a8a;transform:translateY(-4px)}
.ledger dd{margin:0;font:400 1.7rem var(--serif);white-space:nowrap}
.fine{font-size:.92rem;color:#3a3a3a;margin-top:20px;max-width:62ch}
.folio-p{position:relative;min-height:480px}
.folio-p img{position:absolute;left:0;width:100%;height:calc(50% - 8px);object-fit:cover;border-radius:6px}
.folio-p img:first-child{top:0}
.folio-p img:last-child{bottom:0}

/* packages */
#packages{padding:88px 0}
.head-r{text-align:right;margin-left:auto;max-width:660px}
.head-r p{color:#333}
.pk{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.pk li{display:flex;flex-direction:column;gap:6px}
.pk img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px}
.pk h3{font-size:1.2rem;margin-top:10px}
.pk p{margin:0;font-size:.95rem;color:#333}
.after{margin:28px 0 0;text-align:right}

/* membership */
#membership{background-color:var(--v);color:#fff;padding:88px 0}
#membership .two{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
#membership h2{font-size:clamp(1.9rem,3.6vw,2.7rem);margin-bottom:12px}
.plus{list-style:none;padding:0;margin:18px 0}
.plus li{position:relative;padding-left:30px;margin-bottom:8px}
.plus li::before{content:"✓";position:absolute;left:0}
.plus.dark li::before{color:var(--v)}
.q{margin:24px 0;padding:18px 24px;border-left:3px solid #fff;background:rgba(0,0,0,.2)}
.q p{font:italic 400 1.35rem/1.3 var(--serif);margin:0 0 8px}
.q footer{font-size:.9rem}
.mem-p,.ref-p{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.mem-p img,.ref-p img{width:100%;height:100%;min-height:380px;object-fit:cover;border-radius:6px}

/* bios */
#bios{padding:88px 0}
.head-c{text-align:center;max-width:720px;margin:0 auto 40px}
.head-c p{color:#333;margin-top:12px}
.bio{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bio li{padding:22px;background:#faf7f6;border:1px solid #e6dcdb;border-radius:8px}
.who{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.who img{flex:none;width:72px;height:72px;border-radius:50%;object-fit:cover;background:#fff}
.who h3{font-size:1.2rem}
.bio p{margin:0;font-size:.95rem;color:#333}
.bio .who p{margin:0}

/* the-pinch */
#the-pinch{background-color:var(--v);color:#fff;padding:72px 0}
.pinch-in{max-width:960px;text-align:center}
.big{font-size:clamp(2.4rem,6vw,4.6rem);line-height:1;margin-bottom:22px}
.pinch-in p{font-size:1.15rem;max-width:62ch;margin:0 auto 1em}
.pinch-in .small{font-size:.9rem}

/* states */
#states{background-color:var(--coral);color:var(--ink);padding:72px 0}
.states-in{display:flex;align-items:center;justify-content:space-between;gap:48px}
.states-t{flex:1 1 0;min-width:0}
.states-t h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}
.pills{list-style:none;padding:0;margin:22px 0;display:flex;flex-wrap:wrap;gap:10px}
.pills li{display:grid;place-items:center;min-width:56px;min-height:44px;padding:0 16px;border:1.5px solid var(--ink);border-radius:999px;font-weight:500}
.states-p{flex:0 0 min(420px,38%);width:min(420px,38%);border-radius:8px}

/* aftercare */
#aftercare{padding:88px 0 72px}
.head-l{max-width:760px;margin-bottom:32px}
.head-l p{color:#333;margin-top:12px}
.ac{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ac img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}
.ac h3{font:400 1.9rem/1.1 var(--serif);margin:14px 0 6px}
.ac p{margin:0;color:#333;font-size:.97rem}

/* shelf */
#shelf{padding:72px 0;border-top:1px solid #d9d0d0}
.sh{list-style:none;padding:0;margin:24px 0 0;columns:2;column-gap:56px}
.sh li{break-inside:avoid;margin-bottom:20px}
.sh h3{font-size:1.15rem;margin-bottom:4px}
.sh p{margin:0;color:#333;font-size:.95rem}
.shelf-n{max-width:70ch;color:#333;margin-top:12px}

/* refer */
#refer{padding:88px 0}
#refer .two{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
#refer h2{font-size:clamp(1.9rem,3.6vw,2.7rem)}

/* journal */
#journal{background-color:var(--dew);padding:80px 0}
.jr{list-style:none;padding:0;margin:28px 0 0;columns:2;column-gap:56px;counter-reset:j}
.jr li{position:relative;break-inside:avoid;counter-increment:j;padding:0 0 22px 56px}
.jr li::before{content:counter(j,decimal-leading-zero);position:absolute;left:0;top:-4px;font:400 2rem var(--serif);color:var(--v)}
.jr h3{font-size:1.1rem}
.jr p{margin:4px 0 0;color:#333;font-size:.92rem}

/* guestbook */
#guestbook{padding:88px 0}
.stats{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;text-align:center}
.stats strong{display:block;font:400 clamp(3rem,8vw,6rem)/1 var(--serif);color:var(--v)}
.stats span{display:block;color:#333;max-width:34ch;margin:8px auto 0}
.note-c{text-align:center;max-width:60ch;margin:0 auto 28px;color:#333}
.strip{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.strip img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:4px}

/* one-two */
#one-two{padding:80px 0;border-top:1px solid #d9d0d0}
.big2{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.02;margin:0 0 28px}
.ot{columns:2;column-gap:56px}
.ot>div{break-inside:avoid;margin-bottom:12px}
.ot h3{font:400 1.7rem/1.1 var(--serif);margin-bottom:10px}
.ot p{color:#333}
.gl-h{margin:32px 0 16px;font-size:1.25rem}
.gl{columns:4;column-gap:28px}
.gl>div{break-inside:avoid;margin-bottom:12px}
.gl h4{margin:0 0 8px;font-size:1rem}
.gl ul{padding:0;margin:0;list-style:none}
.gl li{position:relative;padding-left:20px;margin-bottom:6px;font-size:.92rem;color:#333}
.gl li::before{content:"+";position:absolute;left:0;color:var(--v)}

/* cta */
#cta-final{display:grid;place-items:center;min-height:600px;padding:96px 0;color:#fff;text-align:center}
.cta-in h2{font:400 clamp(2.4rem,6vw,4.4rem)/1 var(--serif)}

@media (max-width:900px){
  .split,.two,#membership .two,#refer .two{grid-template-columns:minmax(0,1fr)}
  .split-p{min-height:0;aspect-ratio:3/2}
  .folio-p{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
  .folio-p img{position:static;aspect-ratio:4/5;height:auto}
  .mem-p img,.ref-p img{min-height:0;height:auto;aspect-ratio:4/5}
  .cards{grid-template-columns:minmax(0,1fr)}
  .pk{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bio{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac{grid-template-columns:minmax(0,1fr)}
  .stats{grid-template-columns:minmax(0,1fr)}
  .strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .states-in{flex-direction:column;align-items:stretch}
  .states-p{flex:none;width:100%}
  .cols2,.sh,.jr,.ot,.gl{columns:1}
  #menu{min-height:0;padding:56px 0}
}
@media (max-width:640px){
  .pacote-abas .longo{display:none}
  .pacote-abas .curto{display:inline}
  .pacote-abas a{padding:0 10px;font-size:.85rem}
  .pk,.bio{grid-template-columns:minmax(0,1fr)}
  .head-r{text-align:left;margin-left:0}
  .after{text-align:left}
  .ledger dd{font-size:1.4rem}
  .pcard{width:260px}
  #folio,#packages,#membership,#bios,#aftercare,#refer,#guestbook,#journal{padding-block:56px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv{transition:none}
  .com-js .rv:not(.in){opacity:1;transform:none}
}
