/* Kelly Queiroz — direção visual v2: "luxo silencioso" com calor brasileiro.
   Base marfim + café; dourado-bronze nos detalhes; urucum (terracota) como assinatura da Kelly. */
:root{
  --ivory:#FAF6F0;--white:#FFFCF7;--tint:#F2EADF;--tint2:#EADFD0;
  --ink:#2A1F18;--muted:#5C4B3D;--soft:#7A6A5B;--line:#E3D9CC;
  --gold:#A9772F;--gold-text:#8A5F22;--urucum:#9C4A2E;
  --espresso:#2A1F18;--espresso2:#3A2C22;
  --ph:#EFE6DA;--phline:#C9B392;--phtext:#6B5847;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"Jost",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 17px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--ink)}a:hover{color:var(--urucum)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
img{max-width:100%}
.c{max-width:1180px;margin:0 auto;padding-inline:40px}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.08;letter-spacing:-.005em}
h1 em,h2 em{font-style:italic;color:var(--urucum)}
h2{font-size:clamp(36px,4.4vw,52px)}
.eyebrow{font:500 12px/1.4 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-text)}
.orn{display:flex;align-items:center;gap:12px;color:var(--gold)}
.orn::after{content:"";width:56px;height:1px;background:var(--gold)}
.lead2{margin:14px 0 0;color:var(--muted);max-width:620px;font-size:18px}
.center{text-align:center}.center .lead2{margin-inline:auto}.center .orn{justify-content:center}.center .orn::before{content:"";width:56px;height:1px;background:var(--gold)}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 30px;border:1px solid var(--ink);border-radius:2px;font:500 12.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--ink);background:transparent;transition:background .2s,color .2s,border-color .2s}
.btn:hover{background:var(--ink);color:var(--ivory)}
.btn.p{background:var(--espresso);color:var(--ivory);border-color:var(--espresso)}
.btn.p:hover{background:var(--urucum);border-color:var(--urucum);color:#fff}
.row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.arrow{font:500 12.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--gold-text);display:inline-flex;align-items:center;gap:8px;min-height:44px}
.arrow::after{content:"→";font-size:15px;letter-spacing:0}

/* placeholders de foto */
.ph{background:var(--ph);border:1px dashed var(--phline);display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--phtext);font-size:14px;line-height:1.5}
.ph strong{display:block;font:500 11px/1.4 var(--sans);letter-spacing:.24em;margin-bottom:6px;color:var(--gold-text)}

/* faixa de prévia */
.preview{background:#002F32;color:#F5F5EF;font:15px/1.4 Manrope,Arial,sans-serif;padding:10px 16px;text-align:center}
.preview a{color:#C99A48;font-weight:700}

/* header */
header{background:var(--ivory);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:15}
header .c{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1}
.brand b{font:400 28px/1 var(--serif);letter-spacing:.01em}
.brand span{font:500 10px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--gold-text);margin-top:6px}
nav.m{display:flex;gap:30px}
nav.m a{font:500 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--muted);padding-block:10px}
nav.m a:hover{color:var(--ink)}
header .btn{min-height:44px;padding:12px 22px}
@media (max-width:900px){nav.m{display:none}}
@media (max-width:760px){header .btn{display:none}}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:640px}
.hero .txt{display:flex;flex-direction:column;justify-content:center;gap:26px;padding:72px 64px 72px max(40px,calc((100vw - 1180px)/2 + 40px))}
.hero h1{font-size:clamp(48px,6.2vw,84px);line-height:.98}
.hero p{margin:0;font-size:19px;color:var(--muted);max-width:470px}
.hero .meta{font:500 12px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.hero .vis{background:var(--tint);display:flex;align-items:center;justify-content:center;padding:56px 40px;position:relative}
.hero .portrait{width:min(100%,460px);aspect-ratio:4/5;border-radius:240px 240px 4px 4px}
.hero .badge{position:absolute;left:24px;bottom:56px;background:var(--white);border:1px solid var(--line);padding:16px 20px;display:flex;align-items:center;gap:14px;box-shadow:0 18px 40px -24px rgba(42,31,24,.35)}
.hero .badge b{font:400 40px/1 var(--serif)}
.hero .badge span{font-size:13px;line-height:1.35;color:var(--muted)}
.stars{color:var(--gold);letter-spacing:3px;font-size:13px}

/* faixa de confiança */
.trust{border-block:1px solid var(--line);background:var(--white)}
.trust .c{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.trust .i{padding:28px 20px;display:flex;flex-direction:column;gap:4px;text-align:center}
.trust .i+.i{border-left:1px solid var(--line)}
.trust b{font:400 34px/1.1 var(--serif)}
.trust span{font-size:14px;color:var(--muted)}

section.s{padding-block:112px}

/* ti riconosci */
.pains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:48px;border-top:1px solid var(--line)}
.pain{display:flex;gap:22px;align-items:baseline;padding:28px 8px;border-bottom:1px solid var(--line);font:400 26px/1.3 var(--serif)}
.pain:nth-child(odd){border-right:1px solid var(--line);padding-right:32px}
.pain:nth-child(even){padding-left:32px}
.pain i{font:500 12px/1 var(--sans);letter-spacing:.2em;color:var(--gold-text);font-style:normal}
.note-line{margin:34px 0 0;font:italic 400 24px/1.4 var(--serif);color:var(--urucum)}

/* come lavoro */
.tint{background:var(--tint)}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:56px}
.steps>div{display:flex;flex-direction:column;gap:10px}
.steps .n{font:italic 400 56px/1 var(--serif);color:var(--gold)}
.steps h3{font-size:28px}
.steps p{margin:0;color:var(--muted)}

/* tratamentos */
.group{margin-top:56px}
.group>.eyebrow{display:block;padding-bottom:14px;border-bottom:1px solid var(--ink)}
.tr{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto;gap:16px 48px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}
.tr h3{font-size:30px;line-height:1.1}
.tr h3 small{display:block;font:400 14px/1.5 var(--sans);color:var(--soft);margin-top:8px;letter-spacing:0}
.tr p{margin:0;color:var(--muted)}
.tr p+p{margin-top:8px;font-size:15px;color:var(--soft)}
.tr .side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right;min-width:150px}
.tr .price{font:400 30px/1 var(--serif)}
.tr .dur{font:500 12px/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.tr.firma{background:linear-gradient(var(--white),var(--white));padding:34px 28px;margin-inline:-28px;border:1px solid var(--line);border-left:3px solid var(--urucum)}
.tag{display:inline-block;font:500 10.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--urucum);margin-bottom:10px}
.tbd{color:var(--soft);font-size:.85em}

/* metodo brasiliano */
.dark{background:var(--espresso);color:#F3EADF}
.dark .c{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;padding-block:112px}
.dark .eyebrow{color:#D9B577}
.dark h2{font-size:clamp(40px,5vw,60px)}
.dark h2 em{color:#E7A57E}
.dark p{margin:0;color:#D9CCBC;font-size:18px}
.dark ul{margin:0;padding:0;list-style:none;border-top:1px solid rgba(243,234,223,.18)}
.dark li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(243,234,223,.18);font-size:16px}
.dark li span:last-child{color:#F3EADF;font-family:var(--serif);font-size:21px}
.dark .btn{border-color:#F3EADF;color:#F3EADF}
.dark .btn:hover{background:#F3EADF;color:var(--ink)}
.dark .btn.p{background:#F3EADF;color:var(--ink)}
.dark .btn.p:hover{background:var(--urucum);border-color:var(--urucum);color:#fff}
.dark .ph{background:var(--espresso2);border-color:#6E5A45;color:#CDBBA6;aspect-ratio:4/5;border-radius:240px 240px 4px 4px}
.dark .ph strong{color:#D9B577}

/* chi sono */
.about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:center}
.about .ph{aspect-ratio:4/5;border-radius:4px}
.about .txt{display:flex;flex-direction:column;gap:22px}
.about p{margin:0;color:var(--muted)}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line)}
.facts div{padding:16px 12px 16px 0}
.facts div+div{padding-left:16px;border-left:1px solid var(--line)}
.facts b{display:block;font:400 26px/1.1 var(--serif)}
.facts span{font-size:13px;color:var(--soft)}
blockquote.q{margin:0;padding-left:22px;border-left:1px solid var(--gold);font:italic 400 27px/1.35 var(--serif);color:var(--urucum)}

/* recensioni */
.rev-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,2fr);gap:64px;align-items:start}
.score b{display:block;font:400 clamp(88px,10vw,128px)/.9 var(--serif)}
.score span{display:block;color:var(--muted);margin-top:10px}
.revs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.rev{margin:0;padding:30px 28px 30px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.rev:nth-child(even){padding-left:28px;border-left:1px solid var(--line)}
.rev blockquote{margin:0;font:400 27px/1.3 var(--serif)}
.rev figcaption{font:500 11.5px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.small{font-size:13px;color:var(--soft);margin-top:22px}

/* spazio */
.gallery{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:280px 280px;gap:16px;margin-top:52px}
.gallery .ph:first-child{grid-row:span 2}
.gallery .ph{border-radius:2px}

/* arrivare */
.visit{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:72px;align-items:stretch}
.visit .ph{min-height:420px;border-radius:2px}
.visit dl{margin:28px 0 0;display:grid;border-top:1px solid var(--line)}
.visit dl>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.visit dt{font:500 11.5px/1.6 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.visit dd{margin:0}

/* cta */
.cta{background:var(--tint);text-align:center}
.cta .c{display:flex;flex-direction:column;align-items:center;gap:26px;padding-block:120px}
.cta h2{font-size:clamp(44px,6vw,72px)}
.cta p{margin:0;font-size:19px;color:var(--muted);max-width:540px}

footer.f{background:var(--espresso);color:#CDBBA6;font-size:15px}
footer.f .c{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-block:64px 32px}
footer.f a{color:#CDBBA6;text-decoration:none}footer.f a:hover{color:#fff}
footer.f div{display:flex;flex-direction:column;gap:8px}
footer.f .brand b{color:#F3EADF}
footer.f h4{margin:0 0 6px;font:500 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#D9B577}
footer.f .legal{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;justify-content:space-between;border-top:1px solid rgba(243,234,223,.15);padding-top:20px;font-size:13px}

/* barra fixa no celular */
.mbar{display:none}

@media (max-width:960px){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero .vis{order:-1;padding:32px 20px 40px}
  .hero .portrait{width:min(100%,360px)}
  .hero .badge{left:auto;right:16px;bottom:20px}
  .hero .txt{padding:40px 20px 56px}
  .dark .c,.about,.visit,.rev-wrap{grid-template-columns:1fr;gap:44px}
  .steps{grid-template-columns:1fr;gap:36px}
  .tr{grid-template-columns:1fr;gap:10px}
  .tr .side{flex-direction:row;align-items:baseline;justify-content:space-between;text-align:left}
  .gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 220px 220px}
  .gallery .ph:first-child{grid-column:span 2;grid-row:auto}
  footer.f .c{grid-template-columns:1fr}
}
@media (max-width:760px){
  .c{padding-inline:20px}
  section.s{padding-block:72px}
  .dark .c{padding-block:72px}
  .trust .c{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust .i:nth-child(3){border-left:0}
  .trust .i:nth-child(n+3){border-top:1px solid var(--line)}
  .pains,.revs{grid-template-columns:1fr}
  .pain:nth-child(odd){border-right:0;padding-right:8px}
  .pain:nth-child(even){padding-left:8px}
  .pain{font-size:23px}
  .rev,.rev:nth-child(even){padding:24px 0;border-left:0}
  .tr.firma{margin-inline:-12px;padding:26px 16px}
  .visit dl>div{grid-template-columns:1fr;gap:2px}
  .facts b{font-size:22px}
  .mbar{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--white);border-top:1px solid var(--line);padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 24px -16px rgba(42,31,24,.35)}
  .mbar a{min-height:52px;border:1px solid var(--ink);border-radius:2px;display:flex;align-items:center;justify-content:center;gap:8px;font:500 11.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
  .mbar a.p{background:var(--espresso);border-color:var(--espresso);color:var(--ivory)}
  .mbar svg{width:18px;height:18px;flex:none}
  footer.f{padding-bottom:84px}
}

/* ===== camada "luxo" ===== */
.mono{width:46px;height:46px;flex:none}
.brandrow{display:flex;align-items:center;gap:12px;text-decoration:none}
.hero{min-height:calc(100vh - 110px)}
.hero .kicker{display:flex;align-items:center;gap:14px}
.hero .kicker::before{content:"";width:40px;height:1px;background:var(--gold)}
.manifesto{padding-block:140px;text-align:center;background:var(--ivory)}
.manifesto p{margin:0 auto;max-width:900px;font:italic 400 clamp(32px,4.2vw,52px)/1.25 var(--serif);color:var(--ink)}
.manifesto p em{color:var(--urucum)}
.manifesto .sig{display:block;margin-top:28px;font:500 12px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--gold-text)}
.chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:64px;border-top:1px solid var(--line)}
.chapters>div{padding:40px 36px 8px 0;display:flex;flex-direction:column;gap:12px}
.chapters>div+div{padding-left:36px;border-left:1px solid var(--line)}
.chapters .n{font:400 15px/1 var(--serif);letter-spacing:.2em;color:var(--gold-text)}
.chapters h3{font-size:32px}
.chapters p{margin:0;color:var(--muted)}
.signature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;background:var(--white);border:1px solid var(--line)}
.signature .ph{border:0;border-right:1px solid var(--line);min-height:520px;border-radius:0}
.signature .body{padding:56px;display:flex;flex-direction:column;gap:20px;justify-content:center}
.signature h3{font-size:clamp(34px,3.6vw,46px)}
.signature dl{margin:6px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line)}
.signature dl div{padding:14px 12px 14px 0}
.signature dl div+div{padding-left:14px;border-left:1px solid var(--line)}
.signature dt{font:500 10.5px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--soft)}
.signature dd{margin:4px 0 0;font:400 24px/1.1 var(--serif)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform .9s ease}
.reveal.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
@media (max-width:960px){
  .chapters{grid-template-columns:1fr}
  .chapters>div,.chapters>div+div{padding:28px 0 4px;border-left:0}
  .chapters>div+div{border-top:1px solid var(--line)}
  .signature{grid-template-columns:1fr}
  .signature .ph{border-right:0;border-bottom:1px solid var(--line);min-height:320px}
  .signature .body{padding:32px 22px}
  .manifesto{padding-block:96px}
  .hero{min-height:0}
}
.dark .facts{border-color:rgba(243,234,223,.18)}
.dark .facts div+div{border-color:rgba(243,234,223,.18)}
.dark .facts b{color:#F3EADF}
.dark .facts span{color:#BFAE99}
.dark blockquote.q{border-color:#D9B577;color:#E7A57E}
.dark .txt{display:flex;flex-direction:column;gap:22px}
/* fotos reais */
img.photo{display:block;width:100%;height:100%;object-fit:cover}
.hero img.portrait{height:auto;aspect-ratio:4/5;border-radius:240px 240px 4px 4px;box-shadow:0 30px 60px -35px rgba(42,31,24,.45)}
.signature img.photo{min-height:520px;border-right:1px solid var(--line)}
.gallery img.photo{border-radius:2px;min-height:0}
.gallery img.photo:first-child{grid-row:span 2}
.visit img.photo{min-height:420px;border-radius:2px}
.dark img.photo{aspect-ratio:4/5;border-radius:240px 240px 4px 4px}
figure.cap{margin:0;position:relative}
figure.cap figcaption{position:absolute;left:16px;bottom:16px;background:rgba(250,246,240,.92);padding:8px 12px;font:500 11px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
@media (max-width:960px){
  .signature img.photo{min-height:320px;border-right:0;border-bottom:1px solid var(--line)}
  .gallery img.photo:first-child{grid-column:span 2;grid-row:auto}
  .hero img.portrait{width:min(100%,360px)}
}
.chapters.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:960px){.chapters.four{grid-template-columns:1fr}}
@media (max-width:760px){.trust b{font-size:25px}.trust .i{padding:20px 10px}.trust span{font-size:13px}}
