/* ============ Ilha Forte — site profissional ============ */
:root{
  --navy:#1C1A75; --navy-2:#15135c; --ink:#0c0b3a; --ink-2:#08072a;
  --violet:#5652FF; --violet-2:#7a77ff; --sky:#C4E1FF; --ice:#EEF4FF; --ice-2:#E2ECFF;
  --blue:#1638c9; --white:#fff; --txt:#16154a; --mut:#5d5f86;
  --ff:'Manrope',system-ui,sans-serif; --fs:'Instrument Serif',Georgia,serif;
  --r:18px; --wrap:1240px; --gut:clamp(20px,4vw,48px);
  --ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{overflow-x:clip;-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{font-family:var(--ff);color:var(--txt);background:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none;cursor:pointer}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select{font:inherit;font-size:16px}
h1,h2,h3{text-wrap:balance;letter-spacing:-.02em;line-height:1.08}
p,li{text-wrap:pretty}
em{font-family:var(--fs);font-style:italic;font-weight:400;letter-spacing:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.mk{width:1.15em;height:1em;flex:none}

.kick{display:inline-flex;align-items:center;gap:.55em;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--violet)}
.kick.center{display:flex;justify-content:center;text-align:center}
.h1{font-size:clamp(2.9rem,7.2vw,6.4rem);font-weight:700;letter-spacing:-.035em;line-height:.98}
.h2{font-size:clamp(2.1rem,4.4vw,3.7rem);font-weight:700;margin:10px 0 0}
.h2 em,.h1 em{color:var(--violet-2)}
.sub{font-size:1.12rem;color:var(--mut);max-width:620px;margin-top:16px}
.lead{font-size:clamp(1.05rem,1.4vw,1.25rem);max-width:560px;color:rgba(255,255,255,.82);margin-top:22px}
.sec-hd{margin-bottom:56px;max-width:760px}
.sec-hd.row{display:flex;justify-content:space-between;align-items:flex-end;max-width:none;gap:24px}
.lnk{display:inline-block;font-weight:700;color:var(--violet);margin-top:22px;border-bottom:1.5px solid currentColor;padding-bottom:2px;transition:gap .3s}
.lnk:hover{color:var(--violet-2)}
.fine{display:block;font-size:.74rem;opacity:.6;margin-top:16px}

/* botões */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:.6em;background:var(--violet);color:#fff;font-weight:700;font-size:.98rem;padding:16px 26px;border-radius:999px;transition:background .3s,transform .3s var(--ease),box-shadow .3s;box-shadow:0 10px 30px -10px rgba(86,82,255,.7)}
.bt:hover{background:#6b67ff;transform:translateY(-2px)}
.bt .ar{transition:transform .3s var(--ease)}
.bt:hover .ar{transform:translateX(4px)}
.bt-sm{padding:11px 18px;font-size:.88rem}
.bt-full{width:100%}
.bt-ghost{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);backdrop-filter:blur(6px)}
.bt-ghost:hover{background:rgba(255,255,255,.16)}
.bt-ghost-d{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 1.5px var(--navy);margin-top:28px}
.bt-ghost-d:hover{background:var(--navy);color:#fff}
.pulse{position:relative}
.pulse::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(86,82,255,.6);animation:pulse 2.4s infinite 3s}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(122,119,255,.55)}70%{box-shadow:0 0 0 16px rgba(122,119,255,0)}100%{box-shadow:0 0 0 0 rgba(122,119,255,0)}}

/* ============ cabeçalho ============ */
.hd{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;gap:28px;padding:16px var(--gut);color:#fff;transition:background .4s,padding .4s,transform .5s var(--ease),opacity .5s}
.hd.pre{opacity:0;transform:translateY(-100%)}
.hd.solid{background:rgba(12,11,58,.86);backdrop-filter:blur(14px);padding-top:11px;padding-bottom:11px;box-shadow:0 1px 0 rgba(255,255,255,.06)}
.hd.light{color:var(--navy);background:rgba(255,255,255,.9);box-shadow:0 1px 0 rgba(28,26,117,.08)}
.hd-logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.22rem;letter-spacing:-.02em}
.hd-logo sup{font-size:.5em;font-weight:500}
.hd-logo .mk{width:30px;height:27px}
.hd-nav{display:flex;gap:6px;margin-left:auto;font-size:.92rem;font-weight:600}
.hd-nav>a,.dd-bt{padding:9px 14px;border-radius:999px;transition:background .3s;display:flex;align-items:center;gap:7px}
.hd-nav>a:hover,.dd-bt:hover,.dd:focus-within .dd-bt{background:rgba(127,127,255,.14)}
.dd{position:relative}
.dd-bt i{width:7px;height:7px;border-right:1.6px solid;border-bottom:1.6px solid;transform:rotate(45deg) translateY(-2px);transition:transform .3s}
.dd:hover .dd-bt i{transform:rotate(225deg) translate(-1px,-1px)}
.dd-pn{position:absolute;top:calc(100% + 10px);left:0;display:flex;gap:34px;background:#fff;color:var(--txt);padding:22px 26px;border-radius:16px;box-shadow:0 30px 60px -20px rgba(8,7,42,.45);opacity:0;visibility:hidden;transform:translateY(8px);transition:.3s var(--ease);white-space:nowrap}
.dd-pn::before{content:"";position:absolute;inset:-12px 0 auto;height:12px}
.dd:hover .dd-pn,.dd:focus-within .dd-pn{opacity:1;visibility:visible;transform:none}
.dd-col{display:flex;flex-direction:column;gap:2px}
.dd-col b{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);margin-bottom:6px}
.dd-col a{padding:6px 10px;margin:0 -10px;border-radius:8px;font-weight:600;font-size:.92rem;transition:background .2s,color .2s}
.dd-col a:hover{background:var(--ice);color:var(--violet)}
.hd-burger{display:none;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);flex-direction:column;align-items:center;justify-content:center;gap:5px}
.hd-burger i{width:18px;height:1.8px;background:currentColor;transition:.3s}
.mm{position:fixed;inset:0;z-index:45;background:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:0 32px;gap:6px}
.mm a{color:#fff;font-size:2rem;font-weight:700;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.08)}

/* trilho de rolagem (andares) */
.rail{position:fixed;right:18px;top:50%;transform:translateY(-50%);width:3px;height:180px;background:rgba(140,140,255,.18);border-radius:3px;z-index:40;opacity:0;transition:opacity .5s}
.rail.on{opacity:1}
.rail-fill{position:absolute;left:0;right:0;bottom:0;height:0;background:var(--violet);border-radius:3px;background-image:repeating-linear-gradient(to top,var(--violet) 0 10px,transparent 10px 12px)}
.rail-lb{position:absolute;right:14px;bottom:0;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--violet-2);opacity:0;transition:opacity .3s;translate:0 50%}
.rail.moving .rail-lb{opacity:1}

/* ============ 0. abertura → hero ============ */
.op{height:260vh;height:260lvh;position:relative;background:var(--ink-2)}
.op-stage{position:sticky;top:0;height:100vh;height:100lvh;overflow:hidden;color:#fff}
.op-photo{position:absolute;inset:0;-webkit-mask:url(img/mark-navy.svg) center/180px no-repeat;mask:url(img/mark-navy.svg) center/180px no-repeat;opacity:0;will-change:mask-size}
.op-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.18);transform-origin:50% 55%}
.op-photo.full{-webkit-mask:none;mask:none}
.op-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,42,.92) 0%,rgba(8,7,42,.7) 38%,rgba(8,7,42,.15) 75%),linear-gradient(0deg,rgba(8,7,42,.75),transparent 40%);opacity:0;pointer-events:none}
.op-brand{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:28px;pointer-events:none}
.op-mark{width:min(150px,26vw);overflow:visible}
.op-mark path{fill:var(--violet);stroke:var(--violet);stroke-width:1.5;stroke-linejoin:round}
.op-word{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:700;letter-spacing:-.035em;display:flex;align-items:flex-start;gap:.22em;white-space:nowrap}
.op-word span{display:inline-block;clip-path:inset(0 100% 0 0);animation:wipe .9s var(--ease) forwards}
.op-word span:nth-child(2){animation-delay:.15s}
.op-word sup{font-size:.3em;font-weight:500;margin-top:.6em;opacity:0;animation:fade .6s 1.4s forwards}
.op.pre .op-word span{animation-play-state:paused}
@keyframes wipe{to{clip-path:inset(0 0 0 0)}}
@keyframes fade{to{opacity:1}}
.op-hint{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;opacity:0;transition:opacity .6s}
.op-hint.on{opacity:.75}
.op-hint i{width:1.5px;height:38px;background:linear-gradient(#fff,transparent);animation:drip 1.8s infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.hero{position:absolute;left:0;right:0;bottom:0;top:0;display:flex;flex-direction:column;justify-content:center;max-width:var(--wrap);margin:0 auto;padding:90px var(--gut) 60px;visibility:hidden}
.hero .kick{color:var(--sky)}
.hero .kick .mk{color:var(--violet-2)}
.hero .h1{margin-top:20px;max-width:900px}
.hero .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero .ln>*{display:inline-block}
.gr{position:relative;color:#fff!important;white-space:nowrap}
.gr::after{content:"";position:absolute;left:-.04em;right:-.06em;bottom:.12em;height:.2em;background:var(--violet);z-index:-1;transform:scaleX(var(--g,0));transform-origin:left;border-radius:3px}
.hero-bts{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-seals{display:flex;flex-wrap:wrap;gap:8px 10px;list-style:none;margin-top:38px}
.hero-seals li{font-size:.8rem;font-weight:600;padding:7px 13px;border-radius:999px;background:rgba(196,225,255,.1);box-shadow:inset 0 0 0 1px rgba(196,225,255,.22);color:var(--sky)}

/* ============ 2. números ============ */
.nums{background:var(--navy);color:#fff;padding:64px 0;position:relative;z-index:2}
.nums-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.num{border-left:1px solid rgba(196,225,255,.2);padding-left:22px}
.num b{font-size:clamp(2rem,3.4vw,3.1rem);font-weight:700;letter-spacing:-.03em;display:block;line-height:1.05;font-variant-numeric:tabular-nums}
.num p{color:var(--sky);font-size:.95rem;margin-top:6px}

/* ============ 3. pilares (blueprint) ============ */
.pil{background:var(--blue);color:#fff;position:relative}
.pil-pin{height:100vh;height:100lvh;position:relative;overflow:hidden;display:flex;flex-direction:column}
.pil-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;mask:radial-gradient(ellipse at 50% 60%,#000 30%,transparent 85%)}
.pil-hd{position:relative;padding-top:clamp(90px,13vh,130px);width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.pil-hd .kick{color:var(--sky)}
.pil-hd .h2 em{color:var(--sky)}
.pil-svg{position:relative;flex:1;width:100%;min-height:0;margin-top:10px}
.pil-svg .ln{fill:none;stroke:rgba(225,238,255,.9);stroke-width:1.6}
.pil-svg .ln.th{stroke-width:.9;stroke:rgba(225,238,255,.45)}
.pil-svg .gl{fill:rgba(196,225,255,.06);stroke:none;opacity:0;transition:fill .5s}
.pil-svg .bld{transition:opacity .5s}
.pil-svg .bld.lit .gl{fill:rgba(196,225,255,.2)}
.pil-svg .bld.lit .ln{stroke:#fff}
.pil-svg .bld.dim{opacity:.45}
.pil-svg .plq rect{fill:rgba(12,11,58,.55);stroke:rgba(225,238,255,.7);stroke-width:1}
.pil-svg .plq text{fill:#fff;font-family:var(--ff);font-weight:700;font-size:15px}
.pil-svg .plq text.s{font-weight:500;font-size:11px;fill:var(--sky)}
.pil-svg .grd{stroke:rgba(225,238,255,.6);stroke-width:1;vector-effect:non-scaling-stroke}
.pil-tags{display:flex;gap:12px;flex:none}
.pil-tag{display:flex;flex-direction:column;align-items:flex-start;padding:12px 20px;border-radius:14px;background:rgba(12,11,58,.35);box-shadow:inset 0 0 0 1px rgba(196,225,255,.3);backdrop-filter:blur(6px);text-align:left;transition:background .3s,box-shadow .3s;opacity:0}
.pil-tag small{font-size:.72rem;color:var(--sky);letter-spacing:.06em}
.pil-tag b{font-size:1rem}
.pil-tag:hover,.pil-tag.on{background:var(--violet);box-shadow:none}
.pil-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:20px;padding-bottom:110px;position:relative}
.pc{background:#fff;color:var(--txt);border-radius:24px;padding:40px;transition:transform .5s var(--ease),box-shadow .5s;box-shadow:0 30px 60px -30px rgba(8,7,42,.5)}
.pc:hover{transform:translateY(-6px)}
.pc-n{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--violet)}
.pc h3{font-size:1.9rem;margin:10px 0 12px}
.pc p{color:var(--mut)}
.pc ul{list-style:none;margin-top:22px;border-top:1px solid var(--ice-2)}
.pc li a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--ice-2);font-weight:600;transition:color .25s,padding .3s var(--ease)}
.pc li a::after{content:"→";opacity:.4;transition:.3s}
.pc li a:hover{color:var(--violet);padding-left:8px}
.pc li a:hover::after{opacity:1}

/* ============ 4. objetivo (quiz) ============ */
.obj{background:var(--ice);padding:120px 0}
.obj .h2 em{color:var(--violet)}
.obj-box{background:#fff;border-radius:28px;padding:clamp(22px,3vw,40px);box-shadow:0 40px 80px -50px rgba(28,26,117,.5);min-height:380px}
.obj-opts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.op-t{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:22px;border-radius:18px;background:var(--ice);text-align:left;transition:background .3s,transform .4s var(--ease),color .3s;min-height:150px;opacity:0;transform:translateY(20px)}
.op-t:hover{background:var(--navy);color:#fff;transform:translateY(-4px)}
.op-t .ic{width:44px;height:44px;border-radius:12px;background:#fff;display:grid;place-items:center;transition:background .3s}
.op-t:hover .ic{background:var(--violet)}
.op-t .ic i{width:26px;height:26px;background:var(--navy);-webkit-mask:var(--src) center/contain no-repeat;mask:var(--src) center/contain no-repeat;transition:background .3s}
.op-t:hover .ic i{background:#fff}
.op-t b{font-size:1.05rem;line-height:1.25}
.op-t small{font-size:.82rem;opacity:.65;margin-top:-10px}
.obj-back{font-weight:700;color:var(--violet);font-size:.9rem;margin-bottom:18px}
.obj-res-in{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}
.obj-sol h3{font-size:2.2rem;margin:8px 0 10px;color:var(--navy)}
.obj-sol>p{color:var(--mut);font-size:1.05rem}
.obj-sol ul{list-style:none;margin-top:20px;display:grid;gap:10px}
.obj-sol li{display:flex;gap:12px;align-items:flex-start;font-weight:600}
.obj-sol li::before{content:"";flex:none;width:20px;height:20px;margin-top:2px;border-radius:50%;background:var(--violet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m6 10 3 3 5-6' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E")}
.obj-form{background:var(--navy);color:#fff;border-radius:20px;padding:28px;display:grid;gap:14px;align-content:start}
.obj-form-t{font-weight:700;font-size:1.2rem}
.obj-form small{text-align:center;opacity:.6;font-size:.8rem}
label span{display:block;font-size:.8rem;font-weight:600;margin-bottom:6px;opacity:.8}
input,select{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(196,225,255,.25);background:rgba(255,255,255,.07);color:inherit;outline:none;transition:border .2s,background .2s;appearance:none}
select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23C4E1FF' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px}
select option{color:var(--txt)}
input:focus,select:focus{border-color:var(--violet-2);background:rgba(255,255,255,.12)}
input::placeholder{color:rgba(196,225,255,.45)}

/* ============ 5. simulador ============ */
.sim{background:#fff;padding:120px 0}
.sim .h2 em{color:var(--violet)}
.sim-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.sim-range{display:block;margin-top:34px}
.sim-range span{font-weight:600;font-size:.9rem;color:var(--mut)}
.sim-range output{display:block;font-size:clamp(2rem,3.5vw,2.8rem);font-weight:700;color:var(--navy);letter-spacing:-.03em;margin:4px 0 12px;font-variant-numeric:tabular-nums}
input[type=range]{padding:0;height:6px;border:0;border-radius:6px;background:linear-gradient(90deg,var(--violet) var(--p,30%),var(--ice-2) var(--p,30%));cursor:pointer}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:#fff;border:7px solid var(--violet);box-shadow:0 6px 16px rgba(86,82,255,.4)}
input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:7px solid var(--violet)}
.sim-card{background:var(--ink);color:#fff;border-radius:28px;padding:clamp(26px,3vw,42px);display:grid;gap:24px;box-shadow:0 40px 80px -40px rgba(12,11,58,.7)}
.sim-bar-t{display:flex;justify-content:space-between;align-items:baseline;font-weight:600}
.sim-bar-t b{font-size:1.5rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.sim-track{height:16px;border-radius:8px;background:rgba(255,255,255,.08);margin:10px 0 6px;overflow:hidden}
.sim-track i{display:block;height:100%;border-radius:8px;width:0;transition:width .8s var(--ease)}
.sim-bar[data-k=fin] i{background:linear-gradient(90deg,#8a8aa8,#c9c9da)}
.sim-bar[data-k=con] i{background:linear-gradient(90deg,var(--violet),var(--sky))}
.sim-bar small{font-size:.8rem;opacity:.55}
.sim-eco{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-radius:16px;background:rgba(86,82,255,.18);box-shadow:inset 0 0 0 1px rgba(122,119,255,.4)}
.sim-eco b{font-size:1.7rem;color:var(--sky);font-variant-numeric:tabular-nums}
.sim-note{font-size:.76rem;opacity:.5}

/* ============ 6. exponenciais ============ */
.exp{background:var(--ink);color:#fff}
.exp-pin{min-height:100vh;display:flex;align-items:center;padding:100px 0}
.exp-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:center;width:100%}
.exp .kick{color:var(--violet-2)}
.exp-steps{list-style:none;margin-top:36px;display:grid;gap:4px;counter-reset:s}
.exp-steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;column-gap:16px;padding:16px 0;border-top:1px solid rgba(196,225,255,.12);opacity:.35;transition:opacity .5s}
.exp-steps li::before{content:"0" counter(s);grid-row:span 2;font-weight:700;color:var(--violet-2);font-size:.9rem;padding-top:3px}
.exp-steps li.on{opacity:1}
.exp-steps b{font-size:1.15rem}
.exp-steps span{color:rgba(196,225,255,.7);font-size:.96rem}
.exp-viz{position:relative;aspect-ratio:520/420;border-radius:28px;background:radial-gradient(ellipse at 50% 80%,rgba(86,82,255,.35),transparent 65%),var(--ink-2);box-shadow:inset 0 0 0 1px rgba(196,225,255,.1)}
.exp-viz svg{position:absolute;inset:0;width:100%;height:100%}
.exp-ground line{stroke:rgba(196,225,255,.3);stroke-width:1.5}
.hs .c-body{fill:var(--navy);stroke:var(--sky);stroke-width:2}
.hs .c-roof{fill:none;stroke:var(--sky);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hs .c-door{fill:var(--violet)}
.hs .c-win{fill:#ffd88a;opacity:.85}
.hs.h1 .c-body,.hs.h2 .c-body{fill:#2b28a8}
.key circle{fill:none;stroke:var(--violet-2);stroke-width:2;stroke-dasharray:4 5}
.key path{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round}
.coins text{fill:var(--sky);font:700 18px var(--ff);letter-spacing:.06em}
.exp-cnt{position:absolute;right:22px;top:22px;text-align:right}
.exp-cnt>span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sky);opacity:.7}
.exp-cnt b{display:block;font-size:3.4rem;line-height:1;letter-spacing:-.04em}

/* ============ 7. redoma ============ */
.red{background:var(--ink-2);color:#fff;height:240vh;position:relative}
.red-pin{position:sticky;top:0;height:100vh;height:100lvh;overflow:hidden}
.red-img{position:absolute;left:50%;bottom:0;width:max(100%,177.78vh);width:max(100%,177.78lvh);aspect-ratio:16/9}
.red-img img{position:absolute;inset:0;width:100%;height:100%}
.red-top{clip-path:ellipse(0% 0% at 50% 79%)}
.red-rim{position:absolute;inset:0;width:100%;height:100%}
.red-rim path{fill:none;stroke:rgba(255,236,200,.9);stroke-width:3;filter:drop-shadow(0 0 6px rgba(255,220,160,.9));opacity:0}
.red-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,7,42,.85) 0%,rgba(8,7,42,.35) 30%,transparent 50%);pointer-events:none}
.red-txt{position:relative;padding-top:clamp(96px,13vh,130px);display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.red-txt .kick{grid-column:1/-1;color:var(--sky)}
.red-txt .h2{margin:0}
.red-txt .h2 em{color:#ffd9a0}
.red-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.red-list li{padding:14px 16px;border-radius:14px;background:rgba(12,11,58,.55);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);opacity:0;transform:translateY(16px)}
.red-list b{display:block;font-size:.98rem}
.red-list span{font-size:.84rem;color:rgba(255,255,255,.72);display:block;margin-top:2px;line-height:1.4}

/* ============ 8. multidisciplinar ============ */
.mul{background:var(--ice);padding:120px 0 100px;overflow:hidden}
.mul .h2 em{color:var(--violet)}
.mul-stage{position:relative;height:400px;display:flex;justify-content:center;align-items:flex-start;padding-top:20px}
.mc{position:absolute;width:300px;background:#fff;border-radius:22px;padding:28px;box-shadow:0 30px 60px -35px rgba(28,26,117,.45)}
.mc-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--navy);color:#fff;font-weight:800;font-size:1.3rem;font-family:var(--fs)}
.mc h3{font-size:1.4rem;margin:16px 0 6px}
.mc p{color:var(--mut);font-size:.95rem}
.mul-core{position:absolute;z-index:3;bottom:0;display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--violet);color:#fff;border-radius:22px;padding:20px 30px;text-align:center;opacity:0;transform:scale(.6);box-shadow:0 30px 60px -20px rgba(86,82,255,.7)}
.mul-core .mk{width:36px;height:32px;margin-bottom:4px}
.mul-core b{font-size:1.3rem}
.mul-core span{font-size:.88rem;opacity:.8}
.vals{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:40px}
.vals li{padding:10px 18px;border-radius:999px;background:#fff;font-weight:700;color:var(--navy);font-size:.92rem;box-shadow:0 10px 24px -16px rgba(28,26,117,.4)}

/* ============ 9. como funciona ============ */
.how{background:#fff;padding:120px 0}
.how .h2 em{color:var(--violet)}
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.how-media{position:sticky;top:110px}
.how-img{border-radius:28px;overflow:hidden;aspect-ratio:4/4.4}
.how-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.15)}
.how-badge{position:absolute;left:-18px;bottom:28px;background:var(--violet);color:#fff;border-radius:18px;padding:16px 22px;display:flex;align-items:baseline;gap:8px;box-shadow:0 20px 40px -15px rgba(86,82,255,.7)}
.how-badge b{font-size:2.4rem;letter-spacing:-.04em;line-height:1}
.how-badge span{font-size:.85rem;opacity:.8}
.how-steps .h2{margin-bottom:30px}
.hs-step{position:relative;padding:34px 0 34px 74px;border-top:1px solid var(--ice-2);opacity:.35;transition:opacity .5s}
.hs-step.on{opacity:1}
.hs-step::before{content:attr(data-n);position:absolute;left:0;top:30px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:var(--violet);box-shadow:inset 0 0 0 1.5px var(--violet);transition:background .4s,color .4s}
.hs-step.on::before{background:var(--violet);color:#fff}
.hs-step h3{font-size:1.45rem;margin-bottom:8px;color:var(--navy)}
.hs-step p{color:var(--mut)}

/* ============ 10. parceiros ============ */
.par{background:var(--navy);padding:80px 0;overflow:hidden}
.par .kick{color:var(--sky);margin-bottom:40px}
.mq{display:flex;overflow:hidden;mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.mq+.mq{margin-top:26px}
.mq-in{display:flex;gap:70px;align-items:center;padding-right:70px;flex:none;animation:mq 40s linear infinite}
.mq.rev .mq-in{animation-direction:reverse;animation-duration:46s}
.mq-in img{height:34px;width:auto;max-width:150px;object-fit:contain;opacity:.8}
.mq-in img[src$='.svg']{filter:brightness(0) invert(1)}
@keyframes mq{to{transform:translateX(-50%)}}

/* ============ 11. depoimentos ============ */
.dep{background:var(--ink);color:#fff;padding:120px 0}
.dep .kick{color:var(--violet-2)}
.dep-nav{display:flex;gap:10px}
.dep-nav button{width:52px;height:52px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(196,225,255,.3);font-size:1.2rem;transition:background .3s}
.dep-nav button:hover{background:var(--violet)}
.dep-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px max(var(--gut),calc((100vw - var(--wrap))/2 + var(--gut))) 20px;scrollbar-width:none;cursor:grab}
.dep-track::-webkit-scrollbar{display:none}
.dc{flex:none;width:min(420px,82vw);scroll-snap-align:start;background:linear-gradient(160deg,#1d1b7e,#121058);border-radius:24px;padding:32px;display:flex;flex-direction:column;box-shadow:inset 0 0 0 1px rgba(196,225,255,.1)}
.dc-big{font-size:1.9rem;font-weight:700;letter-spacing:-.03em;line-height:1.1;color:#fff}
.dc-big small{display:block;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sky);font-weight:700;margin-bottom:8px}
.dc q{display:block;margin:20px 0 24px;color:rgba(255,255,255,.78);font-size:.98rem;quotes:"“" "”"}
.dc-who{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid rgba(196,225,255,.12)}
.dc-av{width:42px;height:42px;border-radius:50%;background:var(--violet);display:grid;place-items:center;font-weight:800}
.dc-who b{display:block;font-size:.98rem}
.dc-who span{font-size:.82rem;color:var(--sky);opacity:.8}

/* ============ 12. câmbio ============ */
.cam{position:relative;background:var(--navy-2);color:#fff;padding:130px 0;overflow:hidden}
.cam-cv{position:absolute;inset:0;width:100%;height:100%;opacity:.9}
.cam-in{position:relative}
.cam .kick{color:var(--sky)}
.cam .h2 em{color:var(--sky)}
.cam .sub{color:rgba(196,225,255,.75)}
.cam-roll{font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:600;margin-top:36px;letter-spacing:-.02em}
.cam-w{display:inline-block;color:var(--violet-2);font-family:var(--fs);font-style:italic;font-weight:400;font-size:1.2em}
.cam-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:44px;max-width:860px}
.cc{position:relative;padding:26px 60px 26px 26px;border-radius:20px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(196,225,255,.18);backdrop-filter:blur(6px);transition:background .3s}
.cc:hover{background:var(--violet)}
.cc small{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sky);font-weight:700}
.cc b{display:block;font-size:1.12rem;margin-top:6px;line-height:1.35}
.cc span{position:absolute;right:24px;top:50%;transform:translateY(-50%);font-size:1.3rem;transition:transform .3s}
.cc:hover span{transform:translate(4px,-50%)}

/* ============ 13. FAQ ============ */
.faq{background:var(--ice);padding:120px 0}
.faq .h2 em{color:var(--violet)}
.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:72px;align-items:start}
.faq-grid header{position:sticky;top:120px}
.faq-list details{border-bottom:1px solid #cfdcf5;padding:4px 0}
.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-weight:700;font-size:1.15rem;color:var(--navy)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--violet);font-size:1.3rem;font-weight:500;transition:transform .35s var(--ease),background .3s,color .3s}
.faq-list details[open] summary::after{transform:rotate(45deg);background:var(--violet);color:#fff}
.faq-list details p{color:var(--mut);padding:0 50px 24px 0;animation:fade .5s}

/* ============ 14. contato ============ */
.ct{position:relative;color:#fff;padding:130px 0;overflow:hidden;background:var(--ink-2)}
.ct-bg{position:absolute;inset:0}
.ct-bg img{width:100%;height:100%;object-fit:cover;opacity:.45;transform:scale(1.1)}
.ct-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,42,.95) 30%,rgba(8,7,42,.55))}
.ct-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.ct .kick{color:var(--sky)}
.ct .h2 em{color:var(--violet-2)}
.ct-info{list-style:none;margin-top:40px;display:grid;gap:18px}
.ct-info span{display:block;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sky);opacity:.7;font-weight:700}
.ct-info a{font-size:1.15rem;font-weight:600;border-bottom:1px solid transparent;transition:border .3s}
.ct-info a:hover{border-color:currentColor}
.ct-form{background:rgba(28,26,117,.6);backdrop-filter:blur(14px);border-radius:24px;padding:34px;display:grid;gap:16px;box-shadow:inset 0 0 0 1px rgba(196,225,255,.16)}

/* ============ rodapé ============ */
.ft{background:var(--navy);color:#fff;padding:90px 0 30px;overflow:hidden}
.ft-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.ft-brand p{color:var(--sky);opacity:.8;margin-top:16px;max-width:320px}
.ft-soc{display:flex;gap:18px;margin-top:20px;font-weight:700}
.ft-soc a:hover{color:var(--violet-2)}
.ft-col{display:flex;flex-direction:column;gap:10px;font-size:.95rem}
.ft-col b{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sky);margin-bottom:6px}
.ft-col a{opacity:.85}
.ft-col a:hover{opacity:1;color:var(--violet-2)}
.ft-giant{font-size:clamp(4rem,17vw,16rem);font-weight:800;letter-spacing:-.06em;line-height:.8;text-align:center;margin:70px 0 30px;white-space:nowrap;background:linear-gradient(180deg,rgba(196,225,255,.22),rgba(196,225,255,0) 85%);-webkit-background-clip:text;background-clip:text;color:transparent}
.ft-bot{display:flex;justify-content:space-between;gap:20px;font-size:.82rem;opacity:.7;padding-top:24px;border-top:1px solid rgba(196,225,255,.14)}
.sapia{opacity:.8}
.sapia:hover{opacity:1;text-decoration:underline}

/* whatsapp flutuante */
.wa-fab{position:fixed;right:22px;bottom:22px;z-index:48;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 14px 30px -10px rgba(0,0,0,.5);transform:scale(0);transition:transform .5s var(--ease)}
.wa-fab.on{transform:scale(1)}
.wa-fab svg{width:30px;height:30px;fill:#fff}

/* revelações */
.rv{opacity:0;transform:translateY(28px)}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .rv,.op-t,.red-list li{opacity:1!important;transform:none!important}
}

/* ============ celular / tablet (passada dedicada virá depois) ============ */
@media (max-width:1080px){
  .hd-nav{display:none}
  .hd-burger{display:flex;margin-left:auto}
  .hd-cta{display:none}
  .obj-opts{grid-template-columns:repeat(2,1fr)}
  .nums-grid{grid-template-columns:repeat(2,1fr);row-gap:36px}
}
@media (max-width:860px){
  .pil-cards,.sim-grid,.exp-grid,.how-grid,.faq-grid,.ct-grid,.obj-res-in,.red-txt,.cam-cards{grid-template-columns:1fr}
  .how-media{position:relative;top:0}
  .faq-grid header{position:static}
  .ft-grid{grid-template-columns:1fr 1fr}
  .red-list{grid-template-columns:1fr}
  .rail{display:none}
}

/* ============ PÁGINAS DE SERVIÇO ============ */
.svc{background:#fff}
.svc .hd{color:var(--navy)}
.svc .hd.light{background:rgba(255,255,255,.9);backdrop-filter:blur(14px)}
.sh{background:linear-gradient(180deg,var(--ice) 0%,#fff 100%);padding:140px 0 90px;overflow:hidden}
.sh-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.crumbs{font-size:.82rem;font-weight:600;color:var(--mut);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.crumbs i{font-style:normal;opacity:.4}
.crumbs a:hover{color:var(--violet)}
.crumbs span{color:var(--navy)}
.sh-h1{font-size:clamp(2.7rem,5.4vw,4.9rem);font-weight:700;letter-spacing:-.035em;line-height:1;color:var(--navy);margin-top:16px}
.sh-h1 em{color:var(--violet)}
.sh-sub{font-size:1.15rem;color:var(--mut);max-width:540px;margin-top:22px}
.svc .bt-ghost{background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1.5px rgba(28,26,117,.2)}
.svc .bt-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--navy)}
.sh-viz{position:relative}
.sh-svg{width:100%;height:auto;display:block;filter:drop-shadow(0 40px 50px rgba(28,26,117,.25))}
.sh-chips{position:absolute;left:-40px;bottom:40px;list-style:none;display:grid;gap:10px}
.sh-chips li{background:#fff;border-radius:14px;padding:12px 18px;box-shadow:0 20px 40px -18px rgba(28,26,117,.45);display:flex;flex-direction:column}
.sh-chips b{color:var(--navy);font-size:1rem}
.sh-chips span{font-size:.82rem;color:var(--mut)}
.sh-chips li:nth-child(2){margin-left:30px}
.sh-chips li:nth-child(3){margin-left:60px;background:var(--violet)}
.sh-chips li:nth-child(3) b,.sh-chips li:nth-child(3) span{color:#fff}

.wh{padding:120px 0;background:#fff}
.wh .h2 em{color:var(--violet)}
.wh-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}
.asm{position:relative;aspect-ratio:1;max-width:440px;width:100%;margin:0 auto;border-radius:50%;background:radial-gradient(circle,var(--ice) 0 55%,transparent 56%)}
.asm-ring{position:absolute;inset:0}
.asm-ring i{position:absolute;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:7px;background:var(--ice-2);box-shadow:inset 0 0 0 1.5px #c9d6f3;transition:background .5s,transform .5s var(--ease),box-shadow .5s}
.asm-ring i.on{background:var(--navy);box-shadow:none}
.asm-ring i.now{background:var(--violet);transform:scale(1.5);box-shadow:0 0 0 8px rgba(86,82,255,.18)}
.asm-core{position:absolute;inset:30%;border-radius:50%;background:var(--navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.asm-core small{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sky);opacity:.8}
.asm-core b{font-size:2rem;letter-spacing:-.03em;line-height:1.1}
.asm-core span{font-size:.85rem;color:var(--violet-2);font-weight:700}
.asm-leg{position:absolute;left:0;right:0;bottom:-40px;display:flex;justify-content:center;gap:20px;font-size:.8rem;color:var(--mut);font-weight:600}
.asm-leg i{display:inline-block;width:12px;height:12px;border-radius:4px;background:var(--ice-2);box-shadow:inset 0 0 0 1.5px #c9d6f3;margin-right:6px;vertical-align:-1px}
.asm-leg i.on{background:var(--navy);box-shadow:none}

.sv-sim{background:var(--ice)}
.sv-tog{display:inline-flex;background:#fff;border-radius:999px;padding:5px;margin-top:28px;box-shadow:0 10px 24px -16px rgba(28,26,117,.4)}
.sv-tog button{padding:10px 20px;border-radius:999px;font-weight:700;font-size:.9rem;color:var(--mut);transition:background .3s,color .3s}
.sv-tog button.on{background:var(--navy);color:#fff}
.sv-out{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}
.sv-out>div{background:#fff;border-radius:16px;padding:18px 20px}
.sv-out span{font-size:.82rem;font-weight:600;color:var(--mut)}
.sv-out b{display:block;font-size:1.7rem;letter-spacing:-.03em;color:var(--navy);font-variant-numeric:tabular-nums}
.sv-out>div:first-child{background:var(--violet)}
.sv-out>div:first-child span,.sv-out>div:first-child b{color:#fff}
.sv-sim .sim-note{color:var(--mut);opacity:.8;margin-top:16px}
.sv-form{background:var(--navy)}

.why{padding:120px 0;background:#fff}
.why .h2 em{color:var(--violet)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.why-c{border-radius:20px;padding:28px;background:var(--ice);transition:background .4s,transform .4s var(--ease)}
.why-c:hover{background:var(--navy);transform:translateY(-4px)}
.why-c:hover p{color:#fff}
.why-n{font-weight:800;color:var(--violet);font-size:.9rem}
.why-c p{font-size:1.12rem;font-weight:600;color:var(--navy);margin-top:30px;transition:color .4s}

.tl{padding:110px 0;background:var(--ice)}
.tl .h2 em{color:var(--violet)}
.tl-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
.tl-line{position:absolute;left:26px;right:calc(25% - 26px);top:26px;height:2px;background:#cfdcf5}
.tl-line i{display:block;height:100%;background:var(--violet);transform-origin:left}
.tl-list li{position:relative;opacity:.4;transition:opacity .5s}
.tl-list li.on{opacity:1}
.tl-dot{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--violet);font-weight:800;box-shadow:inset 0 0 0 1.5px var(--violet);transition:background .4s,color .4s}
.tl-list li.on .tl-dot{background:var(--violet);color:#fff}
.tl-list h3{font-size:1.25rem;color:var(--navy);margin:22px 0 8px}
.tl-list p{color:var(--mut);font-size:.96rem}

.ots{padding:120px 0;background:#fff}
.ots .h2 em{color:var(--violet)}
.ot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ot{position:relative;display:flex;flex-direction:column;gap:6px;padding:24px;border-radius:18px;background:var(--ice);transition:background .3s,color .3s,transform .4s var(--ease)}
.ot:hover{background:var(--navy);color:#fff;transform:translateY(-4px)}
.ot-ic{width:44px;height:44px;border-radius:12px;background:#fff;display:grid;place-items:center;margin-bottom:14px;transition:background .3s}
.ot:hover .ot-ic{background:var(--violet)}
.ot-ic i{width:26px;height:26px;background:var(--navy);-webkit-mask:var(--src) center/contain no-repeat;mask:var(--src) center/contain no-repeat}
.ot:hover .ot-ic i{background:#fff}
.ot b{font-size:1.05rem}
.ot small{font-size:.85rem;opacity:.65}
.ot-ar{position:absolute;right:22px;top:24px;opacity:.4;transition:.3s}
.ot:hover .ot-ar{opacity:1;transform:translateX(4px)}

.cta-f{background:var(--navy);color:#fff;padding:120px 0;text-align:center;overflow:hidden;position:relative}
.cta-in{display:flex;flex-direction:column;align-items:center;gap:30px}
.cta-mk{width:64px;height:58px;color:var(--violet-2)}
.cta-f .h2 em{color:var(--sky)}

@media (max-width:860px){
  .sh-grid,.wh-grid,.why-grid,.tl-list,.ot-grid,.sv-out{grid-template-columns:1fr}
  .tl-line{display:none}
  .sh-chips{left:0}
}

/* ============ CINEMATOGRÁFICO (história no scroll) ============ */
.story{height:1300vh;height:1300lvh;position:relative;background:var(--ink-2)}
.st-stage{position:sticky;top:0;height:100vh;height:100lvh;overflow:hidden;color:#fff}
.st-cv{position:absolute;inset:0;width:100%;height:100%;display:block}
.st-mask{position:absolute;inset:0;visibility:hidden;-webkit-mask:url(/img/mark-navy.svg) 0 0/100px no-repeat;mask:url(/img/mark-navy.svg) 0 0/100px no-repeat}
.st-mask.full{-webkit-mask:none;mask:none}
.st-flash{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,#fff6e4 0%,#ffd28a 45%,#ff9f4a 100%);opacity:0;pointer-events:none;mix-blend-mode:screen}
.st-veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,7,42,.85) 0%,rgba(8,7,42,.45) 40%,rgba(8,7,42,0) 70%),linear-gradient(0deg,rgba(8,7,42,.7) 0%,rgba(8,7,42,0) 35%)}
.ch{position:absolute;left:0;right:0;max-width:var(--wrap);margin:0 auto;padding:0 var(--gut);visibility:hidden;will-change:opacity,transform}
.ch .kick{color:var(--sky)}
.ch .h2{font-size:clamp(2.3rem,4.6vw,4.2rem);max-width:760px;text-shadow:0 2px 8px rgba(8,7,42,.35),0 4px 40px rgba(8,7,42,.65)}
.ch .h2 em,.ch .h1 em{color:#c9c7ff}
.ch-hero{bottom:12vh}
.ch-hero .h1{margin-top:18px;max-width:880px;text-shadow:0 4px 40px rgba(8,7,42,.6)}
.ch-hero .ln{display:block;overflow:hidden;padding-bottom:.06em}
.ch-hero .ln>span{display:inline-block}
.ch-c{top:50%;translate:0 -50%;background:radial-gradient(ellipse at center,rgba(8,7,42,.42),transparent 70%);padding-top:40px;padding-bottom:40px;text-align:center;display:flex;flex-direction:column;align-items:center}
.ch-c .h2{max-width:900px}
.ch-sub{font-size:1.2rem;color:rgba(255,255,255,.85);margin-top:16px}
.ch-sede{bottom:10vh}
.ch-nums{display:flex;gap:44px;margin-top:30px}
.ch-nums .num{border-color:rgba(196,225,255,.3)}
.ch-pil{top:16vh}
.ch-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:760px;margin-top:30px}
.chc{display:flex;flex-direction:column;gap:4px;padding:22px 24px;border-radius:18px;background:rgba(12,11,58,.55);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px rgba(196,225,255,.2);transition:background .3s}
.chc:hover{background:var(--violet)}
.chc small{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sky);font-weight:700}
.chc b{font-size:1.25rem}
.chc span{font-size:.92rem;color:rgba(255,255,255,.75)}
.ch-red{top:15vh}
.ch-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;max-width:640px}
.ch-list li{padding:10px 16px;border-radius:999px;background:rgba(12,11,58,.55);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);font-weight:600;font-size:.92rem}
.fim-mark{width:84px;height:75px;margin-bottom:22px;color:var(--violet-2)}
.fim-mark path,.ld-mark path{fill:currentColor}
.ch-fim .hero-bts{justify-content:center}
.st-hint{position:absolute;left:50%;bottom:30px;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;opacity:0;transition:opacity .6s;pointer-events:none}
.st-hint.on{opacity:.8}
.st-hint i{width:1.5px;height:38px;background:linear-gradient(#fff,transparent);animation:drip 1.8s infinite}
.st-load{position:absolute;inset:0;z-index:5;background:var(--ink-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px}
.ld-mark{width:120px;height:107px;color:var(--violet)}
.ld-bar{width:160px;height:2px;background:rgba(196,225,255,.15);border-radius:2px;overflow:hidden}
.ld-bar i{display:block;height:100%;width:0;background:var(--violet-2);transition:width .3s}
.cine .hd{background:linear-gradient(180deg,rgba(8,7,42,.55),transparent)}
.cine .hd.solid,.cine .hd.light{background:rgba(12,11,58,.86)}
.cine .hd.light{background:rgba(255,255,255,.9)}
.ch-forte{top:32%}
.ch-fim{top:36%}
.ch-pil .ch-cards{grid-template-columns:1fr;max-width:400px}
