/* =============================================================
   MONARCA AI — Identidade visual definitiva
   Preto profundo · midnight · roxo · violeta · azul elétrico
   Cinzel (display) · Cormorant (poético) · Inter (interface)
   ============================================================= */

:root{
  /* paleta */
  --void:#06060E;
  --void-2:#090A16;
  --midnight:#0C1030;
  --royal:#4B2E9E;
  --violet:#8B5CF6;
  --violet-2:#A78BFA;
  --electric:#5B7CFF;
  --halo:#C8BEFF;
  --mist:#ECEAF8;
  --haze:#9E9CC0;
  --line:rgba(139,92,246,.16);
  --line-2:rgba(180,170,255,.10);
  --danger:#F0A3AC;

  --maxw:1160px;
  --pad:clamp(20px,5vw,64px);
  --r:16px;

  --f-display:"Cinzel",serif;
  --f-poetic:"Cormorant Garamond",serif;
  --f-ui:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;

  --grad:linear-gradient(120deg,var(--violet) 0%,var(--electric) 100%);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--void);color:var(--mist);
  font-family:var(--f-ui);font-size:16px;line-height:1.65;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:rgba(139,92,246,.35);color:#fff}

/* ambiente: leve névoa violeta ao fundo de toda a página */
body::before{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(1200px 700px at 78% -8%, rgba(75,46,158,.28), transparent 60%),
    radial-gradient(900px 600px at 8% 12%, rgba(37,45,110,.30), transparent 62%),
    radial-gradient(1000px 800px at 50% 120%, rgba(91,124,255,.10), transparent 60%),
    var(--void);
}

/* ---------- tipografia ---------- */
.display{font-family:var(--f-display);font-weight:600;letter-spacing:.12em;line-height:1.05}
.poetic{font-family:var(--f-poetic);font-weight:500;font-style:italic}
.eyebrow{
  font-family:var(--f-ui);font-size:12px;letter-spacing:.42em;text-transform:uppercase;
  color:var(--violet-2);font-weight:600;
  display:inline-flex;align-items:center;gap:12px;
}
.eyebrow::before{content:"";width:26px;height:1px;background:linear-gradient(90deg,transparent,var(--violet))}

/* títulos de seção */
.h-sec{
  font-family:var(--f-display);font-weight:600;letter-spacing:.06em;line-height:1.12;
  font-size:clamp(26px,4.4vw,46px);margin:18px 0 0;
}
.lede{font-size:clamp(16px,1.6vw,19px);color:var(--haze);max-width:60ch;line-height:1.7}

/* ---------- estrutura ---------- */
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
section{position:relative}
.band{padding-block:clamp(84px,12vh,150px)}
.rule{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);border:0;margin:0}

/* pequenos “nós” de xadrez usados como divisores/eyebrows */
.file{font-family:var(--f-ui);font-size:11px;letter-spacing:.4em;color:var(--haze);opacity:.7}

/* ---------- botões ---------- */
.btn{
  --bg:var(--grad);
  font-family:var(--f-ui);font-weight:600;font-size:13.5px;letter-spacing:.22em;text-transform:uppercase;
  color:#fff;background:var(--grad);border:0;border-radius:999px;
  padding:16px 30px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px;
  box-shadow:0 10px 34px -12px rgba(91,124,255,.7), inset 0 0 0 1px rgba(255,255,255,.12);
  transition:transform .3s cubic-bezier(.2,.7,.2,1), box-shadow .3s, filter .3s;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 46px -14px rgba(139,92,246,.8), inset 0 0 0 1px rgba(255,255,255,.2)}
.btn:active{transform:translateY(0)}
.btn.ghost{
  background:transparent;color:var(--mist);
  box-shadow:inset 0 0 0 1px var(--line);
}
.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--violet);color:#fff}
.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible{
  outline:2px solid var(--violet-2);outline-offset:3px;border-radius:8px;
}

/* ---------- header ---------- */
.top{
  position:fixed;top:0;left:0;right:0;z-index:60;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px var(--pad);
  transition:background .4s, backdrop-filter .4s, border-color .4s;
  border-bottom:1px solid transparent;
}
.top.scrolled{background:rgba(6,6,14,.72);backdrop-filter:blur(14px);border-bottom-color:var(--line)}
.top .mark{display:flex;align-items:center;gap:12px}
.top .mark svg{width:30px;height:30px;filter:drop-shadow(0 0 10px rgba(139,92,246,.5))}
.top .wordmark{font-family:var(--f-display);font-weight:700;letter-spacing:.32em;font-size:15px}
.top .wordmark small{color:var(--violet-2);letter-spacing:.3em;margin-left:2px}
.top .cta-mini{
  font-family:var(--f-ui);font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  padding:10px 18px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);color:var(--mist);
  transition:box-shadow .3s,color .3s,background .3s;
}
.top .cta-mini:hover{box-shadow:inset 0 0 0 1px var(--violet);color:#fff;background:rgba(139,92,246,.08)}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.hero__media{position:absolute;inset:0;z-index:0}
.hero__media video,.hero__media img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% center;
}
/* escurecimento cinematográfico + transição por scroll (via --scrim) */
.hero__scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg, rgba(6,6,14,.92) 0%, rgba(6,6,14,.55) 34%, rgba(6,6,14,.12) 60%, rgba(6,6,14,.35) 100%),
    linear-gradient(180deg, rgba(6,6,14,.55) 0%, transparent 26%, transparent 52%, rgba(6,6,14,.96) 100%);
}
.hero__darken{position:absolute;inset:0;z-index:2;background:var(--void);opacity:var(--scrim,0);pointer-events:none;transition:opacity .1s linear}
.hero__fx{position:absolute;inset:0;z-index:3;pointer-events:none}

.hero__inner{position:relative;z-index:4;width:100%;max-width:var(--maxw);margin-inline:auto;padding:0 var(--pad) clamp(64px,12vh,120px)}
.hero__kicker{margin-bottom:26px}
.hero h1{
  font-family:var(--f-display);font-weight:700;letter-spacing:.14em;
  font-size:clamp(44px,9vw,104px);line-height:.98;margin:0;
  text-shadow:0 2px 40px rgba(75,46,158,.5);
}
.hero h1 .ai{
  display:inline-block;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 22px rgba(139,92,246,.45));
}
.hero .sig{font-family:var(--f-poetic);font-style:italic;font-size:clamp(19px,2.6vw,30px);color:var(--halo);margin:18px 0 0;letter-spacing:.01em}
.hero .support{margin:26px 0 0;max-width:34ch;color:var(--mist);font-size:clamp(15px,1.7vw,18px);line-height:1.6;opacity:.92}
.hero .support b{color:#fff;font-weight:600}
.hero__actions{margin-top:34px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* controle de áudio “ouvir monarca” */
.audio-btn{
  display:inline-flex;align-items:center;gap:11px;cursor:pointer;
  font-family:var(--f-ui);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--mist);
  padding:13px 20px;border-radius:999px;background:rgba(10,12,28,.5);backdrop-filter:blur(8px);
  box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s,color .3s}
.audio-btn:hover{box-shadow:inset 0 0 0 1px var(--violet);color:#fff}
.audio-btn .ico{position:relative;width:16px;height:16px;display:inline-grid;place-items:center}
.audio-btn .ico svg{width:16px;height:16px;stroke:var(--violet-2);fill:none;stroke-width:1.7}
.audio-btn.playing .ico::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid var(--violet);animation:pulse 1.8s ease-out infinite}
@keyframes pulse{0%{transform:scale(.7);opacity:.8}100%{transform:scale(1.5);opacity:0}}

/* monograma holográfico flutuante */
.sigil{position:absolute;z-index:4;top:clamp(88px,14vh,132px);left:clamp(20px,6vw,90px);right:auto;width:clamp(74px,11vw,128px);opacity:.82;pointer-events:none}
.sigil svg{width:100%;height:auto;filter:drop-shadow(0 0 20px rgba(139,92,246,.55))}
.sigil .ring{transform-origin:center;animation:spin 60s linear infinite}
.sigil .glow{animation:breathe 5.5s ease-in-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes breathe{0%,100%{opacity:.55}50%{opacity:1}}

/* indicador de scroll */
.scroll-cue{position:absolute;left:50%;bottom:26px;z-index:5;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--haze)}
.scroll-cue span{font-size:10px;letter-spacing:.34em;text-transform:uppercase}
.scroll-cue .bar{width:1px;height:40px;background:linear-gradient(var(--violet),transparent);position:relative;overflow:hidden}
.scroll-cue .bar::after{content:"";position:absolute;top:-40%;left:0;width:100%;height:40%;background:var(--halo);animation:drop 2.4s ease-in-out infinite}
@keyframes drop{0%{top:-40%}60%,100%{top:110%}}

/* ============================================================
   SEÇÕES
   ============================================================ */

/* Uma nova forma de pensar */
.think .lead-quote{font-family:var(--f-poetic);font-style:italic;font-size:clamp(22px,3.2vw,34px);color:var(--halo);line-height:1.35;margin:22px 0 0;max-width:22ch}
.think .body{margin-top:28px;max-width:64ch}
.think .accent{margin-top:26px;font-family:var(--f-display);font-weight:600;letter-spacing:.05em;font-size:clamp(18px,2.4vw,26px);line-height:1.35}
.think .accent b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* fluxo Contextualiza → Questiona → Organiza → Direciona */
.flow{margin-top:56px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:stretch}
.flow .node{position:relative;padding:26px 22px;text-align:center}
.flow .node::before{content:attr(data-step);position:absolute;top:-30px;left:50%;transform:translateX(-50%);font-family:var(--f-ui);font-size:11px;letter-spacing:.3em;color:var(--haze)}
.flow .node .dot{width:14px;height:14px;border-radius:50%;margin:0 auto 20px;background:var(--grad);box-shadow:0 0 0 6px rgba(139,92,246,.12), 0 0 22px rgba(139,92,246,.6);position:relative}
.flow .node h4{font-family:var(--f-display);font-weight:600;letter-spacing:.08em;font-size:15px;margin:0 0 8px;text-transform:uppercase}
.flow .node p{font-size:14px;color:var(--haze);line-height:1.6;margin:0}
.flow .link{position:relative}
.flow .link::before{content:"";position:absolute;top:32px;left:-50%;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--violet),transparent);opacity:.5}
.flow .node.reveal-dot .dot::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--violet);animation:pulse 2.6s ease-out infinite}

/* Problema */
.problem{text-align:center}
.problem .big{font-family:var(--f-display);font-weight:600;letter-spacing:.04em;font-size:clamp(24px,4.2vw,44px);line-height:1.18;max-width:20ch;margin:18px auto 0}
.problem .stack{margin:40px auto 0;max-width:520px;display:flex;flex-direction:column;gap:14px}
.problem .stack div{
  font-family:var(--f-ui);font-size:clamp(15px,2vw,18px);letter-spacing:.02em;color:var(--haze);
  padding:16px 20px;border-radius:12px;background:linear-gradient(180deg,rgba(139,92,246,.06),transparent);
  box-shadow:inset 0 0 0 1px var(--line);
}
.problem .turn{margin-top:44px;font-family:var(--f-poetic);font-style:italic;font-size:clamp(22px,3.4vw,34px);color:var(--mist)}
.problem .turn b{color:#fff;font-style:normal;font-family:var(--f-display);font-weight:600;display:block;margin-top:6px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Como a Monarca pensa — 4 blocos “interface inteligente” */
.think-grid{margin-top:52px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.iblock{
  position:relative;padding:30px 28px;border-radius:var(--r);overflow:hidden;
  background:linear-gradient(180deg,rgba(18,20,44,.6),rgba(10,11,24,.5));
  box-shadow:inset 0 0 0 1px var(--line);
  transition:box-shadow .4s,transform .4s;
}
.iblock:hover{box-shadow:inset 0 0 0 1px var(--violet), 0 24px 60px -30px rgba(91,124,255,.5);transform:translateY(-3px)}
.iblock::before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:var(--grad);opacity:.7}
.iblock .idx{font-family:var(--f-ui);font-size:12px;letter-spacing:.34em;color:var(--violet-2);text-transform:uppercase}
.iblock h3{font-family:var(--f-display);font-weight:600;letter-spacing:.07em;font-size:clamp(18px,2.4vw,24px);margin:14px 0 10px;text-transform:uppercase}
.iblock p{margin:0;color:var(--haze);font-size:15px;line-height:1.65}
.iblock .hud{position:absolute;right:-30px;bottom:-30px;width:120px;height:120px;border-radius:50%;border:1px solid var(--line);opacity:.5}
.iblock .hud::after{content:"";position:absolute;inset:16px;border-radius:50%;border:1px dashed var(--line-2)}

/* Seção institucional (imagem Monarca olhando para frente) */
.institucional{padding:0;position:relative;min-height:82vh;display:flex;align-items:center;overflow:hidden}
.institucional .bg{position:absolute;inset:0;z-index:0}
.institucional .bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.institucional .veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(6,6,14,.94),rgba(6,6,14,.5) 46%,rgba(6,6,14,.2) 72%,rgba(6,6,14,.6))}
.institucional .content{position:relative;z-index:2;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);width:100%}
.institucional .content .box{max-width:30ch}
.institucional blockquote{margin:16px 0 0;font-family:var(--f-poetic);font-style:italic;font-size:clamp(24px,3.6vw,40px);line-height:1.3;color:var(--mist)}

/* Para quem */
.audience .grid{margin-top:44px;display:flex;flex-wrap:wrap;gap:12px}
.audience .chip{
  font-family:var(--f-display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:clamp(14px,1.8vw,18px);
  padding:14px 22px;border-radius:999px;color:var(--mist);
  background:linear-gradient(180deg,rgba(139,92,246,.08),transparent);box-shadow:inset 0 0 0 1px var(--line);
  transition:box-shadow .3s,color .3s}
.audience .chip:hover{box-shadow:inset 0 0 0 1px var(--violet)}
.audience .close{margin-top:34px;font-family:var(--f-poetic);font-style:italic;font-size:clamp(19px,2.6vw,27px);color:var(--halo)}

/* Acesso antecipado */
.access{position:relative}
.access .panel{
  margin-top:44px;border-radius:22px;padding:clamp(28px,5vw,54px);
  background:linear-gradient(160deg,rgba(24,20,60,.7),rgba(10,11,24,.6));
  box-shadow:inset 0 0 0 1px var(--line), 0 40px 100px -50px rgba(75,46,158,.7);
  display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,56px);align-items:center;
}
.access .benefits{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.access .benefits li{display:flex;gap:14px;align-items:flex-start;color:var(--mist);font-size:15.5px}
.access .benefits li::before{content:"";flex:0 0 auto;width:9px;height:9px;margin-top:7px;border-radius:2px;transform:rotate(45deg);background:var(--grad);box-shadow:0 0 12px rgba(139,92,246,.7)}
.access .badge{
  display:inline-flex;align-items:center;gap:10px;font-family:var(--f-ui);font-size:11px;letter-spacing:.32em;text-transform:uppercase;font-weight:700;
  color:var(--halo);padding:8px 16px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--violet);background:rgba(139,92,246,.08)}

/* ---------- formulário ---------- */
.form{display:flex;flex-direction:column;gap:16px}
.form .field label{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--haze);margin-bottom:8px;font-weight:600}
.form .field input,.form .field select{
  width:100%;font-family:var(--f-ui);font-size:15px;color:var(--mist);
  background:rgba(6,6,14,.6);border:0;border-radius:12px;padding:15px 16px;
  box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .25s,background .25s}
.form .field input::placeholder{color:#6f6d90}
.form .field input:focus,.form .field select:focus{box-shadow:inset 0 0 0 1px var(--violet);background:rgba(6,6,14,.85)}
.form .field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23A78BFA' stroke-width='2'%3E%3Cpath d='M2 5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;color:var(--haze);line-height:1.55}
.form .consent input{margin-top:3px;width:18px;height:18px;accent-color:var(--violet);flex:0 0 auto}
.form .consent a{color:var(--violet-2);text-decoration:underline;text-underline-offset:2px}
.form .btn{width:100%;margin-top:4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Founding Members (teaser) */
.founding{text-align:center}
.founding .card{
  margin:44px auto 0;max-width:760px;border-radius:22px;padding:clamp(30px,5vw,52px);position:relative;overflow:hidden;
  background:linear-gradient(160deg,rgba(20,16,52,.7),rgba(10,11,24,.55));box-shadow:inset 0 0 0 1px var(--line)}
.founding .soon{position:absolute;top:20px;right:20px;font-family:var(--f-ui);font-size:10.5px;letter-spacing:.34em;text-transform:uppercase;font-weight:700;color:var(--halo);padding:7px 14px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--violet);background:rgba(139,92,246,.1)}
.founding .items{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:left}
.founding .items li{color:var(--haze);font-size:14.5px;display:flex;gap:10px;align-items:flex-start}
.founding .items li::before{content:"◆";color:var(--violet-2);font-size:11px;margin-top:3px}

/* Por trás da Monarca (fundadora) */
.founder{position:relative}
.founder .grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(30px,6vw,72px);align-items:center;margin-top:44px}
.founder .portrait{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 40px 100px -50px rgba(75,46,158,.8), inset 0 0 0 1px var(--line)}
.founder .portrait img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
.founder .portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,6,14,.55));pointer-events:none}
.founder blockquote{font-family:var(--f-poetic);font-style:italic;font-size:clamp(21px,2.8vw,30px);color:var(--halo);line-height:1.35;margin:0 0 22px}
.founder p{color:var(--haze);max-width:56ch}
.founder .sign{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.founder .sign strong{font-family:var(--f-display);font-weight:600;letter-spacing:.14em;font-size:16px;display:block}
.founder .sign span{font-size:12.5px;color:var(--haze);letter-spacing:.06em}

/* Frase final */
.finale{text-align:center;padding-block:clamp(96px,16vh,180px)}
.finale p{font-family:var(--f-display);font-weight:600;letter-spacing:.05em;line-height:1.28;font-size:clamp(24px,4.4vw,50px);max-width:18ch;margin:0 auto}
.finale p b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Footer */
.foot{border-top:1px solid var(--line);padding-block:56px}
.foot .in{display:flex;flex-wrap:wrap;gap:28px;justify-content:space-between;align-items:flex-start}
.foot .mk{display:flex;align-items:center;gap:14px}
.foot .mk svg{width:40px;height:40px;filter:drop-shadow(0 0 12px rgba(139,92,246,.5))}
.foot .mk .wm{font-family:var(--f-display);font-weight:700;letter-spacing:.3em;font-size:17px}
.foot .mk .wm small{display:block;font-family:var(--f-poetic);font-style:italic;letter-spacing:.02em;font-size:13px;color:var(--haze);margin-top:4px;text-transform:none}
.foot .meta{text-align:right;font-size:13px;color:var(--haze);line-height:1.9}
.foot .meta a{color:var(--violet-2)}
.foot .meta .dom{color:var(--mist);letter-spacing:.04em}

/* ============================================================
   OVERLAY DE CONFIRMAÇÃO
   ============================================================ */
.success{
  position:fixed;inset:0;z-index:120;display:none;place-items:center;padding:24px;
  background:rgba(4,4,10,.86);backdrop-filter:blur(10px)}
.success.on{display:grid;animation:fade .4s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}
.success .box{
  max-width:520px;text-align:center;padding:clamp(32px,6vw,56px);border-radius:24px;position:relative;
  background:linear-gradient(160deg,rgba(22,18,54,.95),rgba(9,10,22,.95));box-shadow:inset 0 0 0 1px var(--violet), 0 50px 120px -40px rgba(75,46,158,.9)}
.success .crest{width:64px;height:64px;margin:0 auto 18px;filter:drop-shadow(0 0 18px rgba(139,92,246,.7))}
.success h2{font-family:var(--f-display);font-weight:600;letter-spacing:.06em;font-size:clamp(22px,3.4vw,32px);margin:0 0 14px}
.success p{color:var(--haze);font-size:15.5px;line-height:1.65;margin:0 auto;max-width:40ch}
.success .btn{margin-top:28px}

/* toast */
.toast{
  position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);z-index:130;
  padding:13px 22px;border-radius:999px;font-size:14px;color:#fff;opacity:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(24,20,60,.96),rgba(12,13,30,.96));box-shadow:inset 0 0 0 1px var(--violet), 0 20px 50px -20px rgba(0,0,0,.8);
  transition:opacity .3s,transform .3s}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast.err{box-shadow:inset 0 0 0 1px var(--danger)}

/* ============================================================
   REVEAL / MOTION
   ============================================================ */
[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
[data-reveal].in{opacity:1;transform:none}
[data-reveal][data-delay="1"]{transition-delay:.1s}
[data-reveal][data-delay="2"]{transition-delay:.2s}
[data-reveal][data-delay="3"]{transition-delay:.3s}

/* ============================================================
   RESPONSIVO
   ============================================================ */
@media (max-width:900px){
  .think-grid{grid-template-columns:1fr}
  .access .panel{grid-template-columns:1fr;gap:30px}
  .founder .grid{grid-template-columns:1fr}
  .founder .portrait{max-width:420px;margin-inline:auto}
  .institucional .veil{background:linear-gradient(180deg,rgba(6,6,14,.5),rgba(6,6,14,.35) 40%,rgba(6,6,14,.92))}
  .institucional{min-height:70vh}
}
@media (max-width:720px){
  .flow{grid-template-columns:1fr;gap:8px}
  .flow .link::before{display:none}
  .flow .node{padding:18px 12px 24px}
  .flow .node::before{position:static;transform:none;display:block;margin-bottom:6px}
  .form .row{grid-template-columns:1fr}
  .founding .items{grid-template-columns:1fr}
  .top .wordmark{display:none}
  .hero__media video,.hero__media img{object-position:50% 44%}
  .foot .in{flex-direction:column}
  .foot .meta{text-align:left}
}
@media (max-width:420px){
  .hero .support{max-width:100%}
  .btn{padding:15px 24px}
}

/* ============================================================
   ACESSIBILIDADE — reduzir movimento
   ============================================================ */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .sigil .ring,.sigil .glow,.scroll-cue .bar::after,.flow .node.reveal-dot .dot::after,.audio-btn.playing .ico::after{animation:none !important}
  [data-reveal]{opacity:1;transform:none}
}


/* ============================================================
   MONARCA PRIVATE ACCESS — camada comercial (Stage 1 · REFINED)
   Apenas apresentação visual/comercial. Sem lógica/infra.
   Referência: LUXURY TECH (não gamer/cyberpunk).
   ============================================================ */

/* Teaser antes do formulário */
.pa-teaser{margin:22px 0 30px;padding:18px 22px;border-radius:16px;position:relative;
  background:linear-gradient(160deg,rgba(139,92,246,.08),rgba(91,124,255,.04));
  box-shadow:inset 0 0 0 1px rgba(139,92,246,.28)}
.pa-teaser__ey{display:block;font-family:var(--f-ui);font-size:11.5px;letter-spacing:.24em;
  text-transform:uppercase;color:var(--violet-2);font-weight:600;margin-bottom:7px}
.pa-teaser p{margin:0;color:var(--haze);font-size:15px;line-height:1.6}
.pa-teaser strong{color:var(--halo);font-weight:600}

/* ---------- Overlay: portal rolável (mobile-first) ---------- */
.success .box.pa-box{max-width:600px;max-height:94vh;overflow-y:auto;overflow-x:hidden;
  -webkit-overflow-scrolling:touch;padding:clamp(26px,5vw,46px)}
.success .box.pa-box::-webkit-scrollbar{width:8px}
.success .box.pa-box::-webkit-scrollbar-track{background:transparent}
.success .box.pa-box::-webkit-scrollbar-thumb{background:rgba(139,92,246,.38);border-radius:8px}

/* ---------- Símbolo M/coroa holográfico ---------- */
.pa-crest{position:relative;width:104px;height:104px;margin:0 auto 18px;display:grid;place-items:center}
.pa-crest__halo{position:absolute;inset:-8px;border-radius:50%;pointer-events:none;
  background:conic-gradient(from 0deg,transparent 0 52%,rgba(139,92,246,.55) 68%,rgba(91,124,255,.6) 82%,transparent 93%);
  filter:blur(7px);opacity:.75;animation:paHaloSpin 9s linear infinite}
.pa-crest__ring{position:absolute;inset:6px;border-radius:50%;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(200,190,255,.16), 0 0 30px -6px rgba(139,92,246,.5)}
.pa-crest__svg{position:relative;width:88px;height:88px;
  filter:drop-shadow(0 0 10px rgba(139,92,246,.55)) drop-shadow(0 0 22px rgba(91,124,255,.25));
  animation:paFloat 6s ease-in-out infinite}
@keyframes paHaloSpin{to{transform:rotate(360deg)}}
@keyframes paFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

/* ---------- Oferta ---------- */
.pa-offer{margin-top:22px;text-align:center}
.pa-divider{margin:22px 0 20px;text-align:center}
.pa-divider span{display:inline-block;position:relative;padding-top:20px;font-family:var(--f-ui);
  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--halo)}
.pa-divider span::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:64px;height:1px;background:linear-gradient(90deg,transparent,var(--violet),transparent)}

/* ---------- Portal privado ---------- */
.pa-portal{position:relative;margin-top:4px;padding:clamp(24px,4.6vw,36px);border-radius:22px;text-align:center;
  overflow:hidden;isolation:isolate;
  background:radial-gradient(120% 82% at 50% -12%,rgba(139,92,246,.16),transparent 62%),
             linear-gradient(165deg,rgba(24,20,56,.74),rgba(9,10,22,.72));
  box-shadow:inset 0 0 0 1px rgba(139,92,246,.34), 0 44px 96px -50px rgba(75,46,158,.95)}
/* linhas de interface / dica de xadrez, muito discretas */
.pa-portal::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;z-index:0;
  background:linear-gradient(90deg,rgba(139,92,246,.05) 1px,transparent 1px) 0 0/30px 30px,
             linear-gradient(rgba(139,92,246,.05) 1px,transparent 1px) 0 0/30px 30px;
  -webkit-mask:radial-gradient(130% 72% at 50% 0%,#000,transparent 72%);
          mask:radial-gradient(130% 72% at 50% 0%,#000,transparent 72%)}
/* brilho holográfico varrendo, quase imperceptível */
.pa-portal::after{content:"";position:absolute;top:-60%;left:-45%;width:55%;height:220%;pointer-events:none;z-index:0;
  background:linear-gradient(100deg,transparent,rgba(200,190,255,.06),transparent);transform:rotate(9deg);
  animation:paSheen 8s ease-in-out infinite}
@keyframes paSheen{0%{left:-45%}60%,100%{left:135%}}
.pa-portal>*{position:relative;z-index:1}

/* selo de escassez com pulso sutil */
.pa-seal{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-ui);font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--halo);padding:7px 15px;border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(139,92,246,.5);background:rgba(139,92,246,.1)}
.pa-seal i{width:7px;height:7px;border-radius:50%;background:var(--violet-2);animation:paPulse 2.6s ease-out infinite}
@keyframes paPulse{0%{box-shadow:0 0 0 0 rgba(167,139,250,.6)}70%{box-shadow:0 0 0 9px rgba(167,139,250,0)}100%{box-shadow:0 0 0 0 rgba(167,139,250,0)}}

.pa-label{display:inline-block;margin-top:15px;font-family:var(--f-ui);font-size:10.5px;letter-spacing:.24em;
  text-transform:uppercase;color:var(--violet-2)}
.pa-title{font-family:var(--f-display);font-weight:600;letter-spacing:.05em;
  font-size:clamp(23px,4.6vw,31px);margin:7px 0 12px;color:#fff}
.pa-sub{color:var(--haze);font-size:clamp(14px,3.4vw,15.5px);line-height:1.6;max-width:42ch;margin:0 auto}

.pa-benefits-h{margin:24px 0 15px;font-family:var(--f-ui);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--violet-2)}
.pa-benefits{list-style:none;margin:0;padding:0;text-align:left;display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}
.pa-benefits li{position:relative;padding-left:22px}
.pa-benefits li::before{content:"";position:absolute;left:2px;top:6px;width:8px;height:8px;border-radius:2px;
  transform:rotate(45deg);background:linear-gradient(135deg,var(--violet),var(--electric));
  box-shadow:0 0 8px rgba(139,92,246,.6)}
.pa-b{display:block;font-family:var(--f-display);font-weight:600;color:#fff;font-size:14.5px;letter-spacing:.02em}
.pa-d{display:block;color:var(--haze);font-size:12.5px;line-height:1.5;margin-top:3px}

/* preço — parcelamento dominante */
.pa-price{margin:28px auto 2px}
.pa-price__main{display:flex;align-items:baseline;justify-content:center;gap:10px}
.pa-price__main .pa-x{font-family:var(--f-ui);font-size:clamp(18px,5vw,22px);color:var(--violet-2)}
.pa-price__main strong{font-family:var(--f-display);font-weight:700;line-height:1;letter-spacing:.01em;color:#fff;
  font-size:clamp(40px,10vw,54px);text-shadow:0 0 26px rgba(139,92,246,.45)}
.pa-price__alt{margin-top:9px;color:var(--halo);font-size:14.5px}
.pa-price__alt strong{color:#fff;font-weight:600}
.pa-price__meta{margin-top:11px;color:var(--haze);font-size:11.5px;letter-spacing:.04em}

.pa-valuecopy{margin:18px auto 0;max-width:38ch;font-family:var(--f-poetic);font-style:italic;
  font-size:clamp(14px,3.6vw,16px);line-height:1.5;color:var(--halo)}

/* ações */
.pa-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}
.pa-actions .btn{margin-top:0;width:100%}
.pa-primary{position:relative;overflow:hidden;animation:paCtaGlow 3.4s ease-in-out infinite}
.pa-primary::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(120% 130% at 50% -10%,rgba(255,255,255,.28),transparent 55%);opacity:0;transition:opacity .4s}
.pa-primary:hover::after{opacity:1}
@keyframes paCtaGlow{0%,100%{box-shadow:0 14px 40px -16px rgba(139,92,246,.85), inset 0 0 0 1px rgba(255,255,255,.14)}
  50%{box-shadow:0 20px 54px -14px rgba(139,92,246,1), inset 0 0 0 1px rgba(255,255,255,.22)}}
.pa-secondary{font-size:13.5px;opacity:.78}
.pa-secondary:hover{opacity:1}

/* entrada suave do portal */
.success.on .pa-portal{animation:paRise .6s cubic-bezier(.2,.7,.2,1) both}
@keyframes paRise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ---------- responsivo ---------- */
@media (max-width:560px){
  .pa-benefits{grid-template-columns:1fr;gap:14px}
  .success .box.pa-box{padding:24px 17px}
  .pa-portal{padding:22px 17px}
  .pa-sub{max-width:100%}
}

/* ---------- acessibilidade de movimento ---------- */
@media (prefers-reduced-motion:reduce){
  .pa-crest__halo,.pa-crest__svg,.pa-portal::after,.pa-seal i,.pa-primary,.success.on .pa-portal{animation:none!important}
  .pa-crest__halo{opacity:.6}
}

/* ---------- Private Access · item 25 (refino final) ---------- */
.pa-crest.pa-crest--lg{width:126px;height:126px;margin:0 auto 12px}
.pa-crest--lg .pa-crest__svg{width:106px;height:auto;
  filter:drop-shadow(0 0 14px rgba(139,92,246,.6)) drop-shadow(0 0 30px rgba(91,124,255,.28));animation:paFloat 6s ease-in-out infinite}
.pa-crest--lg .pa-crest__halo{inset:-4px;opacity:.6}
.pa-crest__aura{position:absolute;inset:14px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(139,92,246,.3),transparent 68%);filter:blur(7px)}
.pa-sub2{margin:9px auto 0;max-width:40ch;color:var(--halo);font-family:var(--f-poetic);
  font-style:italic;font-size:clamp(14px,3.4vw,16.5px);line-height:1.5}
.pa-cerimony{margin:26px 0 8px;text-align:center}
.pa-cerimony__line{display:block;width:56px;height:1px;margin:0 auto 10px;
  background:linear-gradient(90deg,transparent,var(--violet),transparent)}
.pa-cerimony__txt{font-family:var(--f-ui);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--violet-2)}
.pa-precprice{margin:4px auto 2px;font-family:var(--f-display);font-weight:600;letter-spacing:.03em;
  font-size:clamp(15px,3.8vw,19px);color:#fff}
.pa-price{margin-top:16px}
.pa-price__main strong{font-size:clamp(42px,10.5vw,58px)}
