/* Fios de Sobrancelha · estilos
   Direção: luxo sofisticado. Ameixa profundo como base, champanhe em fios finos,
   marfim como papel de convite. O dourado é acento, nunca dominante. */

:root{
  --bg:#1E0B1D;
  --bg-2:#2A1129;
  --panel:#331634;
  --plum:#4A235A;
  --paper:#F7F0E8;
  --ivory:#F6EDE6;
  --mist:#CDB8C6;
  --ink:#3B1C33;
  --ink-2:#6E5466;
  --gold:#C9A180;
  --gold-1:#F0DDBC;
  --gold-3:#9C7653;
  --gold-ink:#73553D;
  --hair:rgba(201,161,128,.42);
  --hair-soft:rgba(201,161,128,.18);
  --hair-paper:rgba(115,85,61,.26);
  --gold-grad:linear-gradient(105deg,#F3E2C4 0%,#DDBC93 30%,#C9A180 52%,#E8CDA4 72%,#A98262 100%);
  --bronze-grad:linear-gradient(105deg,#A9835F 0%,#73553D 46%,#94704F 74%,#664934 100%);

  --ease-out:cubic-bezier(.22,.61,.36,1);
  --ease-silk:cubic-bezier(.65,.05,.36,1);

  --f-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --f-text:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg)}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--bg);color:var(--ivory);font:400 1.0625rem/1.7 var(--f-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;animation:pagein 1.2s var(--ease-out) both}
@keyframes pagein{from{opacity:0}to{opacity:1}}
img,svg,canvas{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
button{font:inherit;color:inherit}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.wrap{position:relative;width:min(1200px,calc(100% - 32px));margin-inline:auto}
main:focus{outline:none}

.skip{position:absolute;left:16px;top:-64px;z-index:100;background:var(--gold);color:var(--bg);padding:12px 20px;text-decoration:none;transition:top .3s var(--ease-out)}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--gold-1);outline-offset:4px}
.paper :focus-visible{outline-color:var(--plum)}

/* grão fino sobre tudo, como papel e seda */
body::after{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}

/* ---------- ornamentos e textos dourados ---------- */
.orn{display:inline-flex;align-items:center;gap:12px;color:var(--gold)}
.orn::before,.orn::after{content:"";width:56px;height:1px;background:linear-gradient(90deg,transparent,currentColor)}
.orn::after{transform:scaleX(-1)}
.orn i{display:block;width:7px;height:7px;border:1px solid currentColor;transform:rotate(45deg)}

.kicker{display:inline-flex;align-items:center;gap:14px;font:500 .7rem/1 var(--f-text);letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}
.kicker::before{content:"";width:36px;height:1px;background:linear-gradient(90deg,transparent,currentColor)}
.center .kicker::after{content:"";width:36px;height:1px;background:linear-gradient(90deg,currentColor,transparent)}

.h2{max-width:16ch;margin-top:24px;font:300 clamp(2.5rem,5vw,4.6rem)/1.03 var(--f-display);letter-spacing:-.012em;text-wrap:balance}
.h2 .l{display:block}
.h2 em,.band-title em,.settle h1 em,.quote-t em,.foot-sig em{font-style:italic;font-weight:400;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em;margin:0 -.08em}
.split em{background:none!important;padding:0;margin:0}
.split em .w{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding:0 .08em;margin:0 -.08em}
.lead{max-width:46ch;font-weight:300;font-size:1.2rem;line-height:1.65;color:var(--mist)}

.paper{background:radial-gradient(120% 80% at 50% 0%,#FCF8F2 0%,var(--paper) 55%,#F0E6DA 100%);color:var(--ink)}
.paper .kicker{color:var(--gold-ink)}
.paper .h2 em{background:var(--bronze-grad);-webkit-background-clip:text;background-clip:text}
.paper .lead{color:var(--ink-2)}

/* ---------- navegação ---------- */
.nav{position:fixed;inset:0 0 auto;z-index:50;height:84px}
.nav::before{content:"";position:absolute;inset:0;background:rgba(24,9,23,.96);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);border-bottom:1px solid var(--hair-soft);opacity:0;transition:opacity .7s var(--ease-out)}
.nav.solid::before{opacity:1}
.nav .wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:16px;text-decoration:none}
.brand-mark{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;box-shadow:0 0 0 1px rgba(201,161,128,.6),0 0 0 5px rgba(201,161,128,.08)}
.brand-mark img{width:44px;height:44px}
.brand-mark.big{width:132px;height:132px;box-shadow:0 0 0 1px rgba(201,161,128,.6),0 0 0 8px #140711,0 0 0 9px rgba(201,161,128,.32)}
.brand-mark.big img{width:112px;height:112px}
.brand-name{font:400 1.36rem/1 var(--f-display);letter-spacing:.03em;color:var(--ivory)}
.menu{display:flex;align-items:center;gap:34px}
.menu .lk a{position:relative;display:inline-block;padding:10px 0;font:400 .7rem/1 var(--f-text);letter-spacing:.28em;text-transform:uppercase;text-decoration:none;color:var(--ivory)}
.menu .lk a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease-out)}
.menu .lk a:hover::after{transform:scaleX(1)}
@media (max-width:980px){.menu .lk{display:none}}
@media (max-width:520px){.brand-name{display:none}}

/* ---------- botões e links ---------- */
.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 38px;border:0;border-radius:2px;background:var(--gold-grad);background-size:170% 100%;background-position:0 0;color:#2A0F26;font:500 .74rem/1 var(--f-text);letter-spacing:.26em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-position 1s var(--ease-out),box-shadow .7s var(--ease-out)}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 32%,rgba(255,251,242,.6) 50%,transparent 68%);transform:translateX(-130%);transition:transform 1.2s var(--ease-out)}
.btn::after{content:"";position:absolute;inset:4px;border:1px solid rgba(42,15,38,.22);pointer-events:none}
.btn:hover{background-position:100% 0;box-shadow:0 14px 44px -14px rgba(201,161,128,.6)}
.btn:hover::before{transform:translateX(130%)}
.btn-ghost{background:transparent;color:var(--ivory);box-shadow:inset 0 0 0 1px rgba(201,161,128,.6)}
.btn-ghost::after{display:none}
.btn-ghost:hover{background:rgba(201,161,128,.1);box-shadow:inset 0 0 0 1px var(--gold-1)}
.btn-sm{min-height:42px;padding:0 24px;font-size:.66rem}
.btn-block{width:100%}
@media (pointer:coarse){.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center}.btn-sm{min-height:44px}}

.link{display:inline-flex;align-items:center;gap:8px;font:500 .72rem/1.4 var(--f-text);letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--gold-1);padding-bottom:4px;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:background-size .6s var(--ease-out)}
.link:hover{background-size:40% 1px}
.paper .link{color:var(--plum)}

/* ================= TOPO ================= */
.hero{position:relative;background:var(--bg)}
.stage{position:relative;overflow:hidden;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:124px 0 84px;
  background:radial-gradient(80% 70% at 50% 42%,#3C1A3B 0%,#261126 52%,#160815 100%)}
.silk-wrap{position:absolute;inset:-4%;pointer-events:none;will-change:transform;animation:silk 52s var(--ease-silk) -14s infinite alternate}
.silk{width:100%;height:100%}
@keyframes silk{from{transform:translate3d(-1.5%,0,0) scale(1.02)}to{transform:translate3d(1.5%,-1.2%,0) scale(1.07)}}
.vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(90% 80% at 50% 45%,transparent 52%,rgba(10,3,10,.6) 100%)}

.art{position:relative;width:min(760px,92vw,110vh)}
.art-box{position:relative;aspect-ratio:1200/560}
.art-box canvas,.art-box svg{position:absolute;inset:0;width:100%;height:100%}
.art-box canvas{filter:drop-shadow(0 0 6px rgba(240,221,188,.28))}
/* a foto do topo: alinhada à sobrancelha desenhada, com máscara que se dissolve na seda */
.hero-photo{position:absolute;left:-2.4%;top:-63%;width:117.2%;height:auto;max-width:none;pointer-events:none;
  -webkit-mask-image:radial-gradient(ellipse 46% 31% at 47.6% 46%,#000 50%,rgba(0,0,0,.6) 75%,transparent 100%);
  mask-image:radial-gradient(ellipse 46% 31% at 47.6% 46%,#000 50%,rgba(0,0,0,.6) 75%,transparent 100%);
  filter:saturate(.9) contrast(1.04) brightness(.96)}
html:not(.scrub) .art-box canvas,html:not(.scrub) .guides{opacity:0!important}
.scrub .hero-photo{opacity:0}
.guides{opacity:0}
.guides .g{fill:none;stroke:#C9A180;stroke-width:1.3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:.85}
.guides .dia{fill:#2A1129;stroke:#E9CFA6;stroke-width:1.4}
.guides text{font:500 14px var(--f-text);letter-spacing:.3em;fill:#C9A180}
.guides .gd{opacity:0}

.captions,.cue{display:none}
.band-label{display:block;margin-bottom:18px;font:500 .68rem/1.7 var(--f-text);letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}
.band-title{max-width:20ch;font:300 clamp(2.3rem,4.1vw,3.8rem)/1.04 var(--f-display);letter-spacing:-.01em;color:var(--ivory)}
.band-body{max-width:46ch;margin-top:16px;font-weight:300;font-size:1.05rem;color:var(--mist)}

.settle{position:relative;z-index:2;width:min(1000px,92vw);text-align:center;isolation:isolate}
.settle::before{content:"";position:absolute;inset:-18% -12%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(22,8,21,.72) 0%,rgba(22,8,21,.45) 55%,rgba(22,8,21,0) 100%)}
.captions .band::before{content:"";position:absolute;left:-6%;right:30%;top:-30%;bottom:-30%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(22,8,21,.55),rgba(22,8,21,0))}
.captions .band{isolation:isolate}
.settle h1{max-width:24ch;margin-inline:auto;font:300 clamp(2.8rem,6vw,5.8rem)/1 var(--f-display);letter-spacing:-.015em;color:var(--ivory)}
.settle h1 .l{display:block;text-wrap:balance}
.settle .sub{max-width:52ch;margin:26px auto 0;font-weight:300;font-size:1.1rem;color:var(--mist)}
.settle .ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:36px}

/* texto dividido */
.split .w{display:inline-block;white-space:nowrap}
.split .c{display:inline-block}

/* ----- modo scrub: o topo fixo comandado pelo scroll ----- */
.scrub .hero{height:640vh}
.scrub .stage{position:sticky;top:0;display:block;height:100vh;height:100svh;min-height:0;padding:0}
.scrub .art{position:absolute;left:50%;top:13vh;width:min(1060px,92vw,108vh);transform-origin:50% 0;will-change:transform;
  --lift:-4vh;--shrink:.38;
  transform:translate3d(calc(-50% + var(--dx,0px)),calc(var(--s,0) * var(--lift)),0) scale(calc(1 - var(--s,0) * var(--shrink)))}
.scrub .captions{display:block;position:absolute;left:0;right:0;bottom:8vh;height:30vh;pointer-events:none}
.scrub .band{opacity:0}
.scrub .captions .band{position:absolute;left:50%;bottom:0;width:min(1060px,92vw,108vh);transform:translateX(-50%)}
.scrub .band-body{opacity:clamp(0,(var(--k,0) - .45) * 3,1);transform:translateY(calc((1 - clamp(0,(var(--k,0) - .45) * 3,1)) * 10px))}
.scrub .band-label{opacity:clamp(0,var(--k,0) * 4,1)}
.scrub .settle{position:absolute;left:50%;top:45vh;transform:translateX(-50%)}
.scrub .settle{--ks:clamp(0,(var(--k,0) - .6) * 4,1);--kb:clamp(0,(var(--k,0) - .76) * 5,1)}
.scrub .settle .sub{opacity:var(--ks);transform:translateY(calc((1 - var(--ks)) * 14px))}
.scrub .settle .ctas{opacity:var(--kb);transform:translateY(calc((1 - var(--kb)) * 14px))}
.scrub .cue{display:flex;align-items:center;gap:16px;margin-top:28px;font:500 .64rem/1 var(--f-text);letter-spacing:.3em;text-transform:uppercase;color:var(--mist);transition:opacity .6s var(--ease-out)}
.cue i{position:relative;display:block;width:48px;height:1px;background:rgba(201,161,128,.25);overflow:hidden}
.cue i::after{content:"";position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:left;animation:cue 2.8s var(--ease-silk) -.6s infinite}
@keyframes cue{0%{transform:scaleX(0);opacity:1}60%{transform:scaleX(1);opacity:1}100%{transform:scaleX(1);opacity:0}}
.scrub .cue.gone{opacity:0}

/* entradas por faixa (só transform e opacity, comandadas por --k) */
.scrub .fx-rise .w{--kc:clamp(0,(var(--k,0) - var(--th,0)) * 2.4,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc)) * .5em))}
.scrub .fx-align .c{--kc:clamp(0,(var(--k,0) - var(--th,0)) * 3,1);opacity:var(--kc);transform:translateX(calc((1 - var(--kc)) * var(--jx,0px)))}
.scrub .fx-trace .c{--kc:clamp(0,(var(--k,0) - var(--th,0)) * 2.8,1);opacity:var(--kc);transform:translate(calc((1 - var(--kc)) * var(--jx,0px)),calc((1 - var(--kc)) * var(--jy,0px))) rotate(calc((1 - var(--kc)) * var(--jr,0deg)))}
.scrub .fx-depth .w{--kc:clamp(0,(var(--k,0) - var(--th,0)) * 2.4,1);opacity:var(--kc);transform:scale(calc(.84 + .16 * var(--kc)))}

@media (orientation:portrait) and (min-width:721px) and (max-aspect-ratio:4/5){
  .scrub .art{top:22vh}
}
@media (max-width:720px) and (orientation:portrait){
  .scrub .art{top:24vh;width:128vw;--dx:-4.4vw;--lift:-9vh;--shrink:.28}
  .scrub .captions{bottom:7vh;height:34vh}
  .scrub .settle{top:36vh}
}
@media (max-width:720px){
  .scrub .captions .band{width:calc(100vw - 32px)}
  .guides text{display:none}
  .guides .g{stroke-width:2.4}
  .band-title{font-size:2.2rem}
  .settle h1{font-size:2.5rem}
  .settle .sub{margin-top:18px;font-size:1rem}
  .settle .ctas{margin-top:26px}
}

/* partículas douradas, em nível de sussurro */
.motes{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.motes i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold-1);box-shadow:0 0 8px 1px rgba(240,221,188,.55);opacity:0}
.motes.live i{animation:mote 24s linear infinite}
.motes i:nth-child(1){left:8%;top:72%;animation-duration:26s!important;animation-delay:-4s!important}
.motes i:nth-child(2){left:18%;top:30%;animation-duration:21s!important;animation-delay:-11s!important}
.motes i:nth-child(3){left:27%;top:84%;animation-duration:24s!important;animation-delay:-17s!important}
.motes i:nth-child(4){left:36%;top:18%;animation-duration:28s!important;animation-delay:-2s!important}
.motes i:nth-child(5){left:45%;top:62%;animation-duration:23s!important;animation-delay:-9s!important}
.motes i:nth-child(6){left:55%;top:88%;animation-duration:27s!important;animation-delay:-14s!important}
.motes i:nth-child(7){left:63%;top:24%;animation-duration:22s!important;animation-delay:-6s!important}
.motes i:nth-child(8){left:71%;top:70%;animation-duration:25s!important;animation-delay:-19s!important}
.motes i:nth-child(9){left:80%;top:40%;animation-duration:29s!important;animation-delay:-12s!important}
.motes i:nth-child(10){left:88%;top:80%;animation-duration:24s!important;animation-delay:-7s!important}
.motes i:nth-child(11){left:93%;top:16%;animation-duration:26s!important;animation-delay:-15s!important}
.motes i:nth-child(12){left:4%;top:44%;animation-duration:30s!important;animation-delay:-21s!important}
.motes i:nth-child(13){left:50%;top:10%;animation-duration:31s!important;animation-delay:-25s!important}
.motes i:nth-child(14){left:76%;top:52%;animation-duration:27s!important;animation-delay:-3s!important}
@keyframes mote{0%{transform:translate3d(0,0,0);opacity:0}15%{opacity:.6}85%{opacity:.35}100%{transform:translate3d(28px,-130px,0);opacity:0}}

/* ================= SEÇÕES ================= */
.sec{position:relative;padding:clamp(110px,13vw,190px) 0}

/* entradas abaixo da dobra */
.js [data-reveal] .rv{opacity:0;transform:translateY(26px)}
.js [data-reveal].in .rv{opacity:1;transform:none;transition:opacity 1.2s var(--ease-out),transform 1.4s var(--ease-out);transition-delay:calc(var(--i,0) * 120ms)}
.js [data-reveal].in.done .rv{transition-delay:0s}

/* ---------- estúdio (papel) ---------- */
.est-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(56px,8vw,130px);align-items:center}
.arch-fig{position:relative;width:100%;max-width:440px;justify-self:center}
.arch{position:relative;aspect-ratio:592/740}
.arch-img{position:absolute;inset:0;overflow:hidden;border-radius:999px 999px 4px 4px}
.arch-img img,.frame img{width:100%;height:100%;object-fit:cover}
/* revelação em cortina das fotos */
.js [data-reveal] .arch-img,.js [data-reveal] .frame{clip-path:inset(100% 0 0 0)}
.js [data-reveal] .arch-img img,.js [data-reveal] .frame img{transform:scale(1.14)}
.js [data-reveal].in .arch-img,.js [data-reveal].in .frame{clip-path:inset(0 0 0 0);transition:clip-path 1.7s var(--ease-silk);transition-delay:calc(var(--i,0) * 160ms)}
.js [data-reveal].in .arch-img img,.js [data-reveal].in .frame img{transform:none;transition:transform 2.4s var(--ease-out);transition-delay:calc(var(--i,0) * 160ms)}
.arch::before{content:"";position:absolute;inset:-16px;border:1px solid var(--gold);border-radius:999px 999px 10px 10px;opacity:.8;pointer-events:none}
.arch::after{content:"";position:absolute;inset:0;border-radius:999px 999px 4px 4px;background:linear-gradient(180deg,rgba(74,35,90,0) 55%,rgba(74,35,90,.22) 100%);pointer-events:none}
.arch.round{aspect-ratio:1}
.arch.round .arch-img,.arch.round::after{border-radius:50%}
.arch.round::before{border-radius:50%}
.arch.round + .seal{left:-26px;bottom:62px}
.seal{position:absolute;left:-40px;bottom:72px;width:132px;height:132px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 34% 28%,#F8EAD0 0%,#DDBC93 46%,#B08763 100%);
  box-shadow:0 20px 44px -18px rgba(59,28,51,.55),inset 0 0 0 1px rgba(255,255,255,.4)}
.seal::after{content:"";position:absolute;inset:28px;border-radius:50%;border:1px solid rgba(59,28,51,.35)}
.seal-ring{position:absolute;inset:5px;width:calc(100% - 10px);height:calc(100% - 10px);animation:spin 60s linear infinite}
.seal-ring text{font:500 8.2px var(--f-text);letter-spacing:.16em;fill:#3B1C33}
.seal-fs{position:relative;font:400 2.3rem/1 var(--f-display);letter-spacing:-.03em;color:#3B1C33}
@keyframes spin{to{transform:rotate(360deg)}}
.arch-fig figcaption{margin-top:34px;text-align:center;font:500 .6rem/1 var(--f-text);letter-spacing:.32em;text-transform:uppercase;color:var(--ink-2)}
.est-text .h2{max-width:13ch;font-size:clamp(2.6rem,5.2vw,4.8rem)}
.est-text .lead{margin-top:30px}
.est-text p:not(.lead):not(.sign){max-width:46ch;margin-top:18px;color:var(--ink-2)}
.sign{margin-top:36px;font:italic 400 1.8rem/1.1 var(--f-display);color:var(--ink)}
.sign span{display:block;margin-top:10px;font:500 .62rem/1 var(--f-text);font-style:normal;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-ink)}
.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(90px,10vw,140px);border-top:1px solid var(--hair-paper)}
.facts li{padding:40px clamp(20px,3vw,44px) 0;border-left:1px solid var(--hair-paper)}
.facts li:first-child{border-left:0;padding-left:0}
.num{display:block;font:italic 300 2.4rem/1 var(--f-display);background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.1em}
.paper .num{background:var(--bronze-grad);-webkit-background-clip:text;background-clip:text}
.facts h3{margin-top:18px;font:400 1.7rem/1.15 var(--f-display);color:var(--ink)}
.facts p{max-width:34ch;margin-top:10px;font-size:.98rem;color:var(--ink-2)}

/* ---------- citação em seda ---------- */
.quote{position:relative;overflow:hidden;padding:clamp(130px,15vw,210px) 0;text-align:center;background:radial-gradient(80% 90% at 50% 50%,#3A1838 0%,#211021 60%,#170816 100%)}
.quote::after,.agendar::after{content:"";position:absolute;left:0;right:0;bottom:0;height:180px;pointer-events:none;background:linear-gradient(180deg,rgba(23,8,22,0),#170816)}
.agendar::after{background:linear-gradient(180deg,rgba(20,7,17,0),#140711)}
.quote-in{display:flex;flex-direction:column;align-items:center;gap:38px}
.quote-t{max-width:22ch;font:300 clamp(2.4rem,5.4vw,5.2rem)/1.08 var(--f-display);letter-spacing:-.01em;color:var(--ivory)}
.quote-t .l{display:block}

/* ---------- serviços: a carta ---------- */
.servicos{background:linear-gradient(180deg,#170816 0%,var(--bg) 22%,#231024 100%)}
.sec-head.center{display:flex;flex-direction:column;align-items:center;text-align:center}
.sec-head .h2{max-width:26ch}
.carta{position:relative;max-width:1080px;margin:clamp(60px,7vw,96px) auto 0;padding:clamp(44px,5vw,76px) clamp(22px,5vw,80px) clamp(40px,4vw,60px);
  background:radial-gradient(110% 70% at 50% 0%,rgba(107,58,110,.34),transparent 65%),rgba(51,22,52,.4);
  border:1px solid var(--hair);outline:1px solid var(--hair-soft);outline-offset:-14px}
.corner{position:absolute;width:11px;height:11px;border:1px solid var(--gold);background:var(--bg);transform:rotate(45deg)}
.corner.tl{top:-6px;left:-6px}.corner.tr{top:-6px;right:-6px}.corner.bl{bottom:-6px;left:-6px}.corner.br{bottom:-6px;right:-6px}
.carta-t{display:flex;flex-direction:column;align-items:center;gap:18px;margin-bottom:26px;font:italic 400 1.8rem/1 var(--f-display);color:var(--gold-1)}
.svc{position:relative;display:grid;grid-template-columns:56px 100px minmax(0,1fr) 150px;gap:16px 28px;align-items:center;padding:32px 0;border-bottom:1px solid var(--hair-soft)}
.svc:last-child{border-bottom:0}
.svc::before{content:"";position:absolute;inset:0 -24px;background:radial-gradient(60% 120% at 30% 50%,rgba(201,161,128,.09),transparent 70%);opacity:0;transition:opacity .7s var(--ease-out);pointer-events:none}
.svc:hover::before{opacity:1}
.svc .num{font-size:2rem}
.svc-ic{width:96px;height:58px;color:var(--gold);overflow:visible}
.svc-ic .ln{fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round}
.svc-ic .ln.soft{stroke-opacity:.45}
.svc-ic .ln.hair{stroke-width:1}
.svc-ic .gl{fill:none;stroke:var(--gold-1);stroke-width:.9;stroke-dasharray:2 3;opacity:.6}
.svc-ic .fl{fill:rgba(201,161,128,.28)}
.svc-ic .st circle{fill:currentColor}
.svc h3{font:400 clamp(1.7rem,2.6vw,2.3rem)/1.1 var(--f-display);color:var(--ivory);transition:color .6s var(--ease-out),transform .7s var(--ease-out)}
.svc p{max-width:54ch;margin-top:8px;font-weight:300;font-size:1rem;color:var(--mist)}
.svc:hover h3{color:var(--gold-1);transform:translateX(6px)}
.svc-tag{justify-self:end;text-align:right;font:500 .62rem/1.4 var(--f-text);letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.carta-foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:12px 22px;margin-top:38px;padding-top:34px;border-top:1px solid var(--hair-soft);color:var(--mist)}

/* ---------- identidade (papel) ---------- */
.ident-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 60px}
.ident-head .lead{max-width:40ch}
.ident-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:clamp(20px,3vw,44px);align-items:start;margin-top:clamp(56px,7vw,96px)}
.ident-grid figure{position:relative;margin:0}
.ident-b{margin-top:clamp(40px,7vw,110px)!important}
.ident-c{margin-top:clamp(80px,14vw,220px)!important}
.frame{position:relative;overflow:hidden}
.ident-a .frame{aspect-ratio:588/700}
.ident-b .frame{aspect-ratio:512/692}
.ident-c .frame{aspect-ratio:640/372}
.ident-grid figure::before{content:"";position:absolute;inset:-12px;border:1px solid var(--hair-paper);pointer-events:none}
.ident-grid figcaption{margin-top:30px;font:italic 300 1.5rem/1.3 var(--f-display);color:var(--ink-2)}
.ident-note{margin-top:clamp(48px,6vw,80px);text-align:center;font:500 .6rem/1 var(--f-text);letter-spacing:.32em;text-transform:uppercase;color:var(--ink-2)}

/* ---------- método (papel) ---------- */
.met-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 60px}
.met-note{max-width:28ch;font:italic 300 1.6rem/1.35 var(--f-display);color:var(--ink-2)}
.steps{position:relative;margin-top:clamp(64px,8vw,104px)}
.steps-line{position:absolute;left:0;right:0;top:0;height:40px}
.steps-line svg{width:100%;height:100%}
.steps-line path{fill:none;stroke:var(--gold-3);stroke-width:1;opacity:.7}
.js .steps .steps-line{clip-path:inset(0 100% 0 0)}
.js .steps.in .steps-line{clip-path:inset(0 0 0 0);transition:clip-path 2.8s var(--ease-silk)}
.steps ol{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,44px)}
.step{position:relative;padding-top:70px}
.step-dot{position:absolute;left:1px;top:14px;width:12px;height:12px;background:var(--paper);border:1px solid var(--gold-ink);transform:rotate(45deg)}
.step-dot::after{content:"";position:absolute;inset:-8px;border:1px solid rgba(115,85,61,.4);opacity:0;animation:halo 5s var(--ease-out) infinite}
.step:nth-child(1) .step-dot::after{animation-delay:-.2s}
.step:nth-child(2) .step-dot::after{animation-delay:-3.95s}
.step:nth-child(3) .step-dot::after{animation-delay:-2.7s}
.step:nth-child(4) .step-dot::after{animation-delay:-1.45s}
@keyframes halo{0%,60%{opacity:0;transform:scale(.6)}75%{opacity:1}100%{opacity:0;transform:scale(1.3)}}
.step .num{font-size:3rem}
.step h3{margin-top:14px;font:400 1.85rem/1.1 var(--f-display);color:var(--ink)}
.step p{max-width:30ch;margin-top:10px;font-size:.98rem;color:var(--ink-2)}

/* ---------- visagismo (momento interativo) ---------- */
.visag{overflow:hidden;background:radial-gradient(60% 70% at 28% 50%,#3D1A3C 0%,var(--bg) 70%)}
.vis-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"play text" "play cta";column-gap:clamp(48px,7vw,110px);row-gap:36px}
.vis-ctl{grid-area:text;align-self:end}
.vis-ctl .lead{margin-top:24px}
.vis-play{grid-area:play;display:flex;flex-direction:column;align-items:center;text-align:center}
.vis-cta{grid-area:cta;align-self:start}
.vis-fig{width:100%}
.vis-fig svg{width:min(460px,100%);margin-inline:auto;overflow:visible}
.vis-halo{fill:rgba(107,58,110,.16)}
.vis-guides path{fill:none;stroke:var(--gold);stroke-opacity:.3;stroke-width:1;stroke-dasharray:3 6}
.vis-face{fill:rgba(237,209,182,.03);stroke:rgba(240,221,188,.75);stroke-width:1.3}
.vis-brow{fill:url(#browFill);stroke:rgba(201,161,128,.6);stroke-width:.6}
.vis-eye path{fill:none;stroke:rgba(240,221,188,.75);stroke-width:1.3;stroke-linecap:round}
.vis-nose,.vis-lips{fill:none;stroke:rgba(240,221,188,.55);stroke-width:1.2;stroke-linecap:round}
.vis-opts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:26px}
.vis-opts button{min-height:46px;padding:0 15px;border:0;border-radius:2px;background:transparent;box-shadow:inset 0 0 0 1px rgba(201,161,128,.42);color:var(--ivory);font:500 .62rem/1 var(--f-text);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:box-shadow .5s var(--ease-out),color .5s var(--ease-out),background-color .5s var(--ease-out)}
.vis-opts button:hover{box-shadow:inset 0 0 0 1px var(--gold-1)}
.vis-opts button[aria-pressed="true"]{background:var(--gold-grad);color:#2A0F26;box-shadow:none}
.vis-note{max-width:40ch;min-height:3.4em;margin:24px auto 0;font-weight:300;font-size:1.06rem;color:var(--ivory)}
.vis-note strong{margin-right:4px;font:italic 400 1.4rem/1 var(--f-display);color:var(--gold-1)}
.vis-note.swap{animation:noteIn .6s var(--ease-out)}
@keyframes noteIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.vis-foot{max-width:44ch;margin-bottom:28px;font-size:.88rem;color:var(--mist)}

/* ---------- dúvidas ---------- */
.duvidas{background:linear-gradient(180deg,#1A0919 0%,var(--bg) 40%,#200D20 100%)}
.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(48px,7vw,110px);align-items:start}
.faq-head{position:sticky;top:130px}
.faq-head .h2{max-width:13ch}
.faq-more{margin-top:30px;color:var(--mist)}
.faq-more .link{margin-left:6px}
.qa{border-top:1px solid var(--hair-soft)}
.qa:last-child{border-bottom:1px solid var(--hair-soft)}
.qa h3{font:inherit}
.qa button{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:80px;padding:24px 0;border:0;background:none;text-align:left;cursor:pointer;font:400 clamp(1.35rem,2.1vw,1.7rem)/1.25 var(--f-display);color:var(--ivory);transition:color .5s var(--ease-out)}
.qa button:hover{color:var(--gold-1)}
.qa button i{position:relative;flex:none;width:18px;height:18px}
.qa button i::before,.qa button i::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--gold);transition:transform .55s var(--ease-out),opacity .55s var(--ease-out)}
.qa button i::after{transform:rotate(90deg)}
.qa button[aria-expanded="true"] i::after{transform:rotate(0);opacity:0}
.qa-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .65s var(--ease-out)}
.qa-a>div{overflow:hidden}
.qa-a p{max-width:56ch;padding:0 0 28px;font-weight:300;color:var(--mist);opacity:0;transform:translateY(-6px);transition:opacity .5s var(--ease-out),transform .6s var(--ease-out)}
.qa.open .qa-a{grid-template-rows:1fr}
.qa.open .qa-a p{opacity:1;transform:none;transition-delay:.1s}

.ig{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px;margin-top:clamp(80px,9vw,120px);padding:40px clamp(26px,4vw,60px);border:1px solid var(--hair);outline:1px solid var(--hair-soft);outline-offset:-10px;text-decoration:none;color:var(--ivory);background:rgba(51,22,52,.35);transition:background-color .7s var(--ease-out)}
.ig:hover{background:rgba(201,161,128,.08)}
.ig-t{max-width:32ch;font-weight:300;color:var(--mist)}
.ig-h{display:inline-flex;align-items:baseline;gap:14px;font:italic 400 clamp(2rem,4.4vw,3.6rem)/1 var(--f-display);color:var(--gold-1)}
.ig-arr{font-size:.5em;transition:transform .6s var(--ease-out)}
.ig:hover .ig-arr{transform:translate(4px,-4px)}

/* ---------- agendamento ---------- */
.agendar{overflow:hidden;background:radial-gradient(80% 80% at 70% 40%,#381737 0%,#211021 55%,#160815 100%)}
.ag-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(48px,7vw,110px);align-items:start}
.ag-main .lead{margin-top:24px}
.ag-info{display:grid;gap:22px;margin:44px 0 34px;padding-top:34px;border-top:1px solid var(--hair-soft)}
.ag-info dt{font:500 .62rem/1 var(--f-text);letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.ag-info dd{margin-top:8px;color:var(--ivory)}
.ag-info dd a{text-decoration:none;background:linear-gradient(var(--hair),var(--hair)) left bottom/100% 1px no-repeat;padding-bottom:2px}
.ag-card{position:relative;padding:clamp(30px,4vw,56px);background:rgba(36,14,36,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--hair);outline:1px solid var(--hair-soft);outline-offset:-12px}
.form{display:grid;gap:24px}
.form-t{font:italic 400 2rem/1 var(--f-display);color:var(--gold-1)}
.field{display:grid;gap:6px;min-width:0;margin:0;padding:0;border:0}
.field label,.field legend{padding:0;font:500 .62rem/1.2 var(--f-text);letter-spacing:.28em;text-transform:uppercase;color:var(--mist)}
.field .opt{letter-spacing:.08em;text-transform:none;opacity:.85}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:12px 2px;border:0;border-bottom:1px solid rgba(201,161,128,.4);border-radius:0;background:transparent;color:var(--ivory);font:300 1.05rem/1.4 var(--f-text);transition:border-color .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.field select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 14px) 52%,calc(100% - 8px) 52%;background-size:6px 6px;background-repeat:no-repeat;padding-right:36px}
.field select option{color:var(--ink);background:var(--paper)}
.field textarea{resize:vertical;min-height:90px}
.field input::placeholder,.field textarea::placeholder{color:rgba(205,184,198,.6)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--gold-1);box-shadow:0 1px 0 var(--gold-1)}
.field input[aria-invalid="true"]{border-bottom-color:#E8A39B}
.err{font-size:.88rem;color:#F0B7AF}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.chips label{position:relative;cursor:pointer}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(201,161,128,.4);color:var(--ivory);font:500 .66rem/1 var(--f-text);letter-spacing:.22em;text-transform:uppercase;transition:box-shadow .5s var(--ease-out),color .5s var(--ease-out),background-color .5s var(--ease-out)}
.chips input:checked+span{background:var(--gold-grad);color:#2A0F26;box-shadow:none}
.chips input:focus-visible+span{outline:2px solid var(--gold-1);outline-offset:3px}
.form .btn{margin-top:8px}
.form-micro{font-size:.86rem;color:var(--mist);text-align:center}
/* agendamento ligado à agenda do estúdio */
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px 22px}
.field input[type=date]{color-scheme:dark}
.field input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.78) sepia(.35) saturate(2.2) hue-rotate(-12deg);opacity:.8;cursor:pointer}
.field select:disabled{opacity:.6;cursor:progress}
.horarios{gap:8px}
.horarios:empty{display:none}
.horarios span{min-width:74px;justify-content:center;padding:0 12px;letter-spacing:.12em}
.faixa{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(201,161,128,.55) transparent;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.faixa label{flex:0 0 auto;scroll-snap-align:start}
.faixa span{flex-direction:column;justify-content:center;gap:5px;min-width:66px;min-height:60px;padding:0 10px;letter-spacing:.1em;text-align:center}
.faixa b{font-weight:500;font-size:.62rem;letter-spacing:.2em}
.faixa input:disabled+span{opacity:.3;cursor:not-allowed;box-shadow:inset 0 0 0 1px rgba(201,161,128,.2)}
.faixa input:disabled{cursor:not-allowed}
.servico-extra{display:flex;gap:10px;align-items:flex-end;margin-top:12px}
.servico-extra select{flex:1;min-width:0}
.servico-extra[hidden]{display:none}
.tirar{flex:0 0 auto;border:0;background:none;color:var(--gold-1);font:500 .66rem/1 var(--f-text);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:14px 4px}
#f-add-servico{margin-top:14px;border:0;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;cursor:pointer;color:var(--gold-1)}
#f-add-servico[hidden]{display:none}
.field-msg{font-size:.88rem;font-weight:300;color:var(--mist)}
.field-msg.carregando{animation:respira 1.6s ease-in-out infinite}
@keyframes respira{50%{opacity:.45}}
.hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-weight:300;font-size:.92rem;line-height:1.5;color:var(--mist)}
.consent input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--gold);cursor:pointer}
.form-erro{padding:14px 16px;border:1px solid rgba(240,183,175,.45);background:rgba(240,183,175,.07);font-size:.92rem;line-height:1.5;color:#F3C4BD}
.form-erro a{color:var(--gold-1)}
.form-micro a{color:var(--gold-1)}
.btn:disabled{cursor:progress;opacity:.75}
.form-ok{display:flex;flex-direction:column;align-items:center;gap:16px;padding:clamp(20px,4vw,40px) 8px;text-align:center;animation:noteIn .8s var(--ease-out)}
.form-ok:focus{outline:none}
.ok-t{font:italic 400 clamp(2rem,3.4vw,2.6rem)/1 var(--f-display);color:var(--gold-1)}
.ok-resumo{font:400 1.25rem/1.4 var(--f-display);color:var(--ivory)}
.ok-resumo::first-letter{text-transform:uppercase}
.ok-d{max-width:34ch;font-weight:300;color:var(--mist)}
.passos{max-width:36ch;margin:0;padding-left:1.3em;text-align:left;font-weight:300;line-height:1.7;color:var(--mist)}
.passos strong{font-weight:500;color:var(--ivory)}
.form-ok[hidden]{display:none}
.form-ok .link{margin-top:6px;border:0;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;cursor:pointer}
@media (max-width:620px){.field-row{grid-template-columns:1fr}}

/* ---------- rodapé ---------- */
.foot{padding:110px 0 44px;background:#140711;text-align:center;color:var(--mist)}
.foot-in{display:flex;flex-direction:column;align-items:center;gap:34px}
.foot-sig{font:300 clamp(2rem,4vw,3.4rem)/1.1 var(--f-display);color:var(--ivory)}
.foot-sig .l{display:block}
.foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;width:100%;padding-top:40px;border-top:1px solid var(--hair-soft);font-size:.95rem}
.foot-h{margin-bottom:12px;font:500 .62rem/1 var(--f-text);letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.foot a{text-decoration:none;color:var(--ivory);transition:color .4s var(--ease-out)}
.foot a:hover{color:var(--gold-1)}
.foot-legal{font-size:.8rem;color:rgba(205,184,198,.75)}

/* ================= RESPONSIVO ================= */
@media (max-width:980px){
  .est-grid,.vis-grid,.faq-grid,.ag-grid{grid-template-columns:1fr}
  .vis-grid{grid-template-areas:"text" "play" "cta";row-gap:44px}
  .vis-fig svg{width:min(330px,80vw)}
  .faq-head{position:static}
  .arch-fig{max-width:360px}
  .svc{grid-template-columns:44px minmax(0,1fr);gap:10px 18px;padding:30px 0}
  .svc .num{grid-column:1;grid-row:1;align-self:center}
  .svc-ic{grid-column:2;grid-row:1}
  .svc-txt{grid-column:2}
  .svc-tag{grid-column:2;justify-self:start;text-align:left;margin-top:4px}
  .ident-grid{grid-template-columns:1fr 1fr}
  .ident-c{grid-column:1 / -1;margin-top:40px!important;max-width:560px;justify-self:center;width:100%}
  .steps ol{grid-template-columns:repeat(2,1fr);row-gap:52px}
  .steps-line{display:none}
  .step{padding-top:44px}
  .step-dot{top:0}
}
@media (max-width:620px){
  .arch-fig{max-width:min(340px,calc(100% - 40px))}
  .ident-grid figure::before{inset:-7px}
  .ident-grid{gap:18px}
  .btn{padding:0 18px;letter-spacing:.18em;line-height:1.3;text-align:center}
  .chips span{padding:0 15px;letter-spacing:.16em}
  .seal{width:104px;height:104px;left:-14px;bottom:52px}
  .seal::after{inset:22px}
  .seal-fs{font-size:1.8rem}
  .seal-ring text{font-size:8.6px}
  .facts{grid-template-columns:1fr;border-top:0}
  .facts li{padding:34px 0 0;border-left:0;border-top:1px solid var(--hair-paper)}
  .facts li+li{margin-top:30px}
  .steps ol{grid-template-columns:1fr}
  .step::before{content:"";position:absolute;left:6.5px;top:22px;bottom:-44px;width:1px;background:rgba(115,85,61,.35)}
  .step:last-child::before{display:none}
  .carta{padding-inline:20px;outline-offset:-9px}
  .foot-cols{grid-template-columns:1fr}
  .met-note{font-size:1.35rem}
  .ig{padding:32px 24px}
}

/* ================= MOVIMENTO REDUZIDO ================= */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important;transition-delay:0s!important}
  .js [data-reveal] .rv{opacity:1;transform:none}
  .js .steps .steps-line{clip-path:none}
  .js [data-reveal] .arch-img,.js [data-reveal] .frame{clip-path:none}
  .js [data-reveal] .arch-img img,.js [data-reveal] .frame img{transform:none}
  .motes{display:none}
}
