@font-face{font-family:"Unbounded";src:url(fonts/unbounded.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(fonts/instrument-sans.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
:root{
  color-scheme: dark;
  --night:#060A22; --deep:#0C1340; --panel:#111A52; --line:#2A3690;
  --text:#EAF0FF; --muted:#A3AEDD;
  --screen:#7FE7FF; --amber:#FFB547; --tail:#FF4D7A; --ok:#5BE2A4;
  --display:"Unbounded","Arial Black","Segoe UI",system-ui,sans-serif;
  --body:"Instrument Sans","Segoe UI",system-ui,-apple-system,sans-serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--night);color:var(--text);font:400 1.0625rem/1.55 var(--body);overflow-x:hidden}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--display);line-height:1.1;letter-spacing:-.01em}
h1{font-size:clamp(2rem,5.2vw,4rem);font-weight:800}
h2{font-size:clamp(1.6rem,3.4vw,2.7rem);font-weight:600}
h2.display{font-size:clamp(1.8rem,4.4vw,3.4rem);font-weight:800}
h3{font-size:1.05rem;font-weight:600;line-height:1.3}
a{color:inherit}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}
.wrap{width:min(100% - 2.5rem,1180px);margin-inline:auto}
.center{text-align:center}
.center h2{margin-inline:auto;max-width:22ch}
.center .lead{margin-inline:auto}
.lead{color:var(--muted);max-width:56ch;margin-top:1rem;font-size:1.125rem}
.small{font-size:.88rem;line-height:1.4;color:var(--muted)}
.lead.on-dark{margin-inline:auto;color:#CBD4F7}
.small.mt{margin-top:1.2rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.4rem;border-radius:999px;font:600 1rem var(--body);text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .15s,background .15s,border-color .15s}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--amber);color:#1A1200}
.btn-primary:hover{background:#FFC670}
.btn-light{border-color:rgba(127,231,255,.55);color:var(--text);background:rgba(6,10,34,.45)}
.btn-light:hover{border-color:var(--screen);background:rgba(127,231,255,.12)}
.actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}

.nav{position:absolute;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:10}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:72px;padding:0 1.25rem}
.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;white-space:nowrap;color:var(--text)}
.brand .mark{width:38px;height:38px;flex:none}
.brand .bn{display:grid;line-height:1}
.brand b{font:800 1.25rem/1 var(--display)}
.brand small{font:500 .74rem/1.2 var(--body);color:var(--muted);margin-top:3px}
.nav ul{display:flex;gap:.3rem;list-style:none;margin:0;padding:0}
.nav ul a{display:block;padding:.55rem .8rem;border-radius:999px;font:500 .95rem var(--body);text-decoration:none;color:#CBD4F7}
.nav ul a:hover{color:var(--text);background:rgba(127,231,255,.12)}
.nav li:last-child a{color:var(--amber)}
@media (max-width:860px){.nav li.opt{display:none}}

/* jornada */
.ride{position:relative;height:620vh}
.ride-pin{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:radial-gradient(120% 80% at 60% 100%,#141C5E 0%,var(--night) 60%)}
.ab{position:absolute;left:0;top:0;width:1024px;height:687px;transform-origin:0 0;will-change:transform}
.ab img{position:absolute;left:0;top:0;width:1024px;height:687px;max-width:none}
#imgB{opacity:0}
.photo{position:absolute;inset:0;overflow:hidden;opacity:0;background:var(--night)}
.photo-stage{position:absolute;left:0;top:0;width:1536px;height:1024px;transform-origin:0 0;will-change:transform}
.photo-stage img{width:1536px;height:1024px;max-width:none;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.photo-stage canvas{transform:matrix3d(0.46305218,-0.012677212,0,-5.0458936e-07,0.024163357,0.45562009,0,-1.887437e-05,0,0,1,0,702.1,356.2,0,1);position:absolute;left:0;top:0;transform-origin:0 0;transition:opacity .25s}
.ride-pin::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(6,10,34,.9) 0%,rgba(6,10,34,.55) 24%,rgba(6,10,34,0) 44%,rgba(6,10,34,0) 60%,rgba(6,10,34,.9) 100%)}
.ride-intro{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;padding:clamp(96px,16vh,150px) 1.25rem clamp(36px,8vh,80px)}
.ride-intro h1,.ride-intro p,.ride-mid,.ride-cap{text-shadow:0 2px 18px rgba(6,10,34,.9)}
.ride-intro p{color:#fff;font-weight:500;margin:1.1rem auto 0;max-width:46ch;font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.5;background:rgba(6,10,34,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(127,231,255,.22);border-radius:18px;padding:.9rem 1.15rem;text-shadow:none}
@media (max-width:520px){.ride-intro{padding-top:92px}.ride-intro h1{font-size:1.72rem}.ride-intro p{font-size:1rem;padding:.8rem .95rem}}
.ride-cap,.ride-mid{position:absolute;z-index:2;left:0;right:0;bottom:clamp(24px,5vh,56px);padding:0 1.25rem;text-align:center;opacity:0}
.ride-mid{bottom:clamp(40px,9vh,96px);font:600 clamp(1.25rem,2.6vw,1.9rem)/1.2 var(--display)}
.ride-cap h2{font-size:clamp(1.25rem,2.6vw,1.9rem)}
.ride-cap p{margin-top:.5rem;color:#CBD4F7}
.ride-cap .small{color:var(--muted);margin-top:.6rem}
.dots{display:flex;gap:8px;justify-content:center;margin-top:.9rem}
.dots i{width:44px;height:4px;border-radius:2px;background:rgba(127,231,255,.25);transition:background .3s}
.dots i.on{background:var(--amber)}
.ride-hint{font:500 .95rem var(--body);color:var(--muted);margin-top:1.1rem;display:flex;flex-direction:column;align-items:center;gap:.4rem}
.ride-hint svg{width:20px;height:20px;color:var(--amber);animation:nudge 1.8s ease-in-out infinite}
@keyframes nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

.sec{padding:clamp(4.5rem,10vw,8rem) 0;position:relative}
.lane::before{content:"";position:absolute;top:0;left:50%;width:min(100% - 2.5rem,1180px);transform:translateX(-50%);height:3px;background:repeating-linear-gradient(90deg,rgba(255,181,71,.55) 0 38px,transparent 38px 76px)}

/* três rendas */
.rendas{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:3rem}
.renda{background:var(--deep);border:1.5px solid var(--line);border-radius:24px;padding:1.6rem 1.5rem 2rem;display:flex;flex-direction:column;gap:.6rem}
.renda-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.6rem}
.renda .num{font:800 3.4rem/1 var(--display);color:var(--amber)}
.renda svg{width:48px;height:48px;color:var(--screen)}
.renda h3{font-size:1.35rem}
.renda p{color:#CBD4F7}
@media (max-width:860px){.rendas{grid-template-columns:1fr}}

/* afiliado */
.afil{position:relative;background:linear-gradient(180deg,#0A1038,#111A52);padding:clamp(5rem,12vw,10rem) 0}
.afil h2{max-width:18ch;margin-inline:auto}
.afil h2 em{font-style:normal;color:var(--amber)}
.ride-intro h1 em{font-style:normal;color:var(--amber)}
.afil .lead{color:#CBD4F7}
.afil .actions{margin-top:2rem}

/* avatares */
.cast-head{padding:clamp(4.5rem,10vw,7rem) 1.25rem 1.5rem;text-align:center}
.cast-head h2{max-width:20ch;margin-inline:auto}
.av{position:relative;min-height:100vh;min-height:100svh;background:radial-gradient(70% 55% at 50% 100%,#1B2A8C 0%,#0C1340 55%,var(--night) 100%);display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;padding:clamp(56px,9vh,96px) 1.25rem 0;overflow:hidden;border-top:1.5px solid var(--line)}
@media (min-height:640px){.av{position:sticky;top:0}}
.av h3{font-size:clamp(2.2rem,6vw,4rem);font-weight:800;line-height:1.05}
.av .sub{color:#CBD4F7;margin:.8rem auto 0;max-width:40ch;font-size:1.125rem}
.av-row{display:flex;align-items:flex-end;justify-content:center;gap:clamp(1rem,4vw,3.5rem);width:100%}
.av-row > img{height:min(50vh,420px);height:min(50svh,420px);width:auto;max-width:none;flex:none;filter:drop-shadow(0 0 40px rgba(127,231,255,.25))}
.plaque{background:rgba(6,10,34,.72);border:1.5px solid var(--line);border-radius:20px;padding:1rem;text-align:left;width:min(270px,100%);margin-bottom:clamp(24px,8vh,80px);display:grid;gap:.25rem;box-shadow:0 0 60px -20px rgba(127,231,255,.4)}
.plaque .prod{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;margin-bottom:.5rem}
.plaque b{font-weight:600;font-size:1.05rem;line-height:1.3}
.plaque .price{font:600 1.5rem/1.2 var(--display);color:var(--amber)}
@media (max-width:640px){
  .av-row{flex-direction:column-reverse;align-items:center;gap:0}
  .av-row > img{height:min(36vh,300px);height:min(36svh,300px)}
  .plaque{margin:1rem 0;grid-template-columns:auto 1fr;column-gap:1rem;align-items:center;width:100%;max-width:340px}
  .plaque .prod{grid-row:1/4;margin:0;width:88px;height:88px}
  .plaque .price{font-size:1.15rem}
}
.cast-note{position:relative;background:var(--night);padding:1rem 1.25rem 2rem;text-align:center;color:var(--muted);font-size:.88rem}

/* como funciona */
.how{counter-reset:how;list-style:none;margin:3rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.how li{counter-increment:how;padding:1.6rem 1.4rem 0 0;border-top:1.5px solid var(--line);position:relative}
.how li::before{content:counter(how);position:absolute;top:-19px;left:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--night);border:1.5px solid var(--screen);color:var(--screen);font:600 .9rem var(--display)}
.how h3{margin-top:.6rem}
.how p{color:var(--muted);margin-top:.6rem;font-size:1rem}
@media (max-width:860px){.how{grid-template-columns:1fr}.how li{border-top:0;border-left:1.5px solid var(--line);padding:0 0 2rem 2rem;margin-left:18px}.how li::before{top:-4px;left:-19px}.how h3{margin-top:0}}

/* segurança */
.safe{background:linear-gradient(180deg,#0A1038,#0C1340)}
.safe-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.safe dl{margin:0}
.safe dt{font:600 1.05rem/1.3 var(--display);padding-top:1.4rem;border-top:1.5px solid var(--line)}
.safe dl > div:first-child dt{border-top:0;padding-top:0}
.safe dd{margin:.5rem 0 1.4rem;color:var(--muted)}
@media (max-width:860px){.safe-grid{grid-template-columns:1fr}}

/* contato */
.priv h2{font-size:clamp(1.3rem,2.4vw,1.8rem)}
.priv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:2rem}
.priv-grid p{color:var(--muted);font-size:.95rem;margin-top:.5rem}
@media (max-width:860px){.priv-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.priv-grid{grid-template-columns:1fr}}
.cta-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.form{display:grid;gap:1.1rem;background:var(--deep);border:1.5px solid var(--line);border-radius:24px;padding:clamp(1.3rem,3vw,2.2rem)}
.field{display:grid;gap:.4rem}
.field label,.field legend{font-weight:600;font-size:.95rem;padding:0}
.field input[type=text],.field input[type=tel]{min-height:50px;border-radius:12px;border:1.5px solid var(--line);background:var(--night);color:var(--text);padding:.6rem .9rem;font:inherit;width:100%}
.field input[aria-invalid="true"]{border-color:var(--tail)}
.err{color:#FF9DB6;font-size:.88rem}
fieldset.field{border:0;margin:0;padding:0}
.seg{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.4rem}
.seg label{position:relative;cursor:pointer}
.seg input{position:absolute;opacity:0;inset:0;cursor:pointer}
.seg span{display:inline-flex;align-items:center;min-height:44px;padding:.4rem 1rem;border-radius:999px;border:1.5px solid var(--line);font-weight:500}
.seg input:checked + span{border-color:var(--amber);background:rgba(255,181,71,.14);color:var(--amber)}
.seg input:focus-visible + span{outline:3px solid var(--amber);outline-offset:3px}
.consent{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;font-size:.92rem;color:var(--muted)}
.consent input{width:22px;height:22px;accent-color:var(--amber);margin:.1rem 0 0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form .btn[disabled]{opacity:.5;cursor:not-allowed}
.form-msg{border-radius:12px;padding:.8rem 1rem;background:rgba(91,226,164,.12);border:1.5px solid rgba(91,226,164,.5);color:#C9F7E2;font-size:.95rem}
.form-msg[hidden]{display:none}
@media (max-width:860px){.cta-grid{grid-template-columns:1fr}}

footer{border-top:1px solid rgba(42,54,144,.6);padding:2rem 0 2.4rem;color:var(--muted);font-size:.92rem}
.foot{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:center}
.contacts{list-style:none;margin:1.8rem 0 0;padding:0;display:grid;gap:.9rem}
.contacts li{display:flex;align-items:center;gap:.9rem}
.contacts .ic{width:44px;height:44px;flex:none;padding:10px;border-radius:12px;border:1.5px solid var(--line);background:var(--deep);color:var(--amber)}
.contacts .ic-img{padding:0;border:0;background:none;border-radius:11px}
.contacts span{display:block;font-size:.88rem;color:var(--muted)}
.contacts a{display:inline-block;padding:.2rem 0;font-weight:600;font-size:1.1rem;color:var(--screen);text-decoration:none;overflow-wrap:anywhere}
.contacts a:hover{text-decoration:underline}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
