/* Walletflick – identidade: céu noturno, carmim da logo, prata lunar e ouro do Sol. */
@font-face{font-family:"Fraunces";src:url(/assets/fonts/fraunces-latin.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(/assets/fonts/fraunces-italic-latin.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/inter-latin.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --bg:#09060f;--bg2:#0f0a17;--surface:#150f1f;--surface2:#1c1428;--line:rgba(255,255,255,.1);--line2:rgba(255,255,255,.18);
  --text:#f1ecf5;--muted:#bdb3cc;--crimson:#a2143c;--crimson-hi:#c9204f;--rose:#ff86a5;--silver:#e9e4f0;--gold:#f4bd50;--earth:#4a82d6;
  --ok:#7fe6b4;--r:20px;--sombra:0 18px 50px rgba(0,0,0,.45);
  --serif:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.7;color:var(--text);min-height:100vh;
  background:radial-gradient(1100px 650px at 85% -8%,rgba(162,20,60,.26),transparent 62%),radial-gradient(900px 600px at -5% 18%,rgba(74,58,150,.2),transparent 60%),var(--bg);background-attachment:fixed}
body::before,body::after{content:"";position:fixed;left:0;top:0;width:1px;height:1px;pointer-events:none;z-index:-1;border-radius:50%}
body::before{box-shadow:478px 1827px 0 rgba(255,255,255,0.67),1854px 99px 0 rgba(255,255,255,0.81),722px 106px 0 rgba(255,255,255,0.34),1968px 1946px 0 rgba(255,255,255,0.62),904px 1096px 0 rgba(255,255,255,0.66),1555px 1560px 0 rgba(255,255,255,0.55),948px 1704px 0 rgba(255,255,255,0.52),963px 184px 0 rgba(255,255,255,0.75),1668px 716px 0 rgba(255,255,255,0.41),1964px 244px 0 rgba(255,255,255,0.57),913px 216px 0 rgba(255,255,255,0.37),1243px 1546px 0 rgba(255,255,255,0.35),1211px 1853px 0 rgba(255,255,255,0.46),1181px 705px 0 rgba(255,255,255,0.49),1025px 1423px 0 rgba(255,255,255,0.49),316px 1748px 0 rgba(255,255,255,0.68),759px 1993px 0 rgba(255,255,255,0.59),356px 507px 0 rgba(255,255,255,0.85),1176px 986px 0 rgba(255,255,255,0.40),868px 357px 0 rgba(255,255,255,0.30),1383px 1520px 0 rgba(255,255,255,0.39),1086px 1484px 0 rgba(255,255,255,0.83),743px 813px 0 rgba(255,255,255,0.68),1657px 1007px 0 rgba(255,255,255,0.59),1571px 1914px 0 rgba(255,255,255,0.49),1770px 414px 0 rgba(255,255,255,0.47),1899px 1430px 0 rgba(255,255,255,0.43),104px 588px 0 rgba(255,255,255,0.80),1520px 421px 0 rgba(255,255,255,0.61),1513px 835px 0 rgba(255,255,255,0.50),705px 411px 0 rgba(255,255,255,0.82),409px 1358px 0 rgba(255,255,255,0.72),881px 537px 0 rgba(255,255,255,0.61),674px 201px 0 rgba(255,255,255,0.53),932px 1501px 0 rgba(255,255,255,0.82),1548px 463px 0 rgba(255,255,255,0.71),1170px 152px 0 rgba(255,255,255,0.75),1646px 1126px 0 rgba(255,255,255,0.81),114px 1494px 0 rgba(255,255,255,0.56),1990px 1822px 0 rgba(255,255,255,0.42),564px 1695px 0 rgba(255,255,255,0.79),1970px 1904px 0 rgba(255,255,255,0.32),1767px 477px 0 rgba(255,255,255,0.89),482px 1849px 0 rgba(255,255,255,0.80),1296px 1125px 0 rgba(255,255,255,0.52),372px 54px 0 rgba(255,255,255,0.31),270px 1529px 0 rgba(255,255,255,0.35),733px 983px 0 rgba(255,255,255,0.90),378px 1107px 0 rgba(255,255,255,0.60),816px 1076px 0 rgba(255,255,255,0.33),1354px 469px 0 rgba(255,255,255,0.57),360px 1495px 0 rgba(255,255,255,0.75),863px 234px 0 rgba(255,255,255,0.85),170px 1174px 0 rgba(255,255,255,0.39),1690px 746px 0 rgba(255,255,255,0.68),925px 538px 0 rgba(255,255,255,0.51),1364px 606px 0 rgba(255,255,255,0.31),1575px 1124px 0 rgba(255,255,255,0.66),1527px 1065px 0 rgba(255,255,255,0.47),410px 1909px 0 rgba(255,255,255,0.77),56px 651px 0 rgba(255,255,255,0.61),118px 1048px 0 rgba(255,255,255,0.85),855px 1841px 0 rgba(255,255,255,0.30),1978px 490px 0 rgba(255,255,255,0.56),1873px 493px 0 rgba(255,255,255,0.38),1889px 275px 0 rgba(255,255,255,0.50),67px 1083px 0 rgba(255,255,255,0.41),1363px 1850px 0 rgba(255,255,255,0.56),118px 1742px 0 rgba(255,255,255,0.57),34px 1029px 0 rgba(255,255,255,0.75),579px 792px 0 rgba(255,255,255,0.64),1723px 1950px 0 rgba(255,255,255,0.67),217px 22px 0 rgba(255,255,255,0.42),1880px 1165px 0 rgba(255,255,255,0.79),1384px 1466px 0 rgba(255,255,255,0.40),1314px 451px 0 rgba(255,255,255,0.33),1814px 1110px 0 rgba(255,255,255,0.52),1737px 1654px 0 rgba(255,255,255,0.64),8px 818px 0 rgba(255,255,255,0.80),1823px 1571px 0 rgba(255,255,255,0.47),1949px 2px 0 rgba(255,255,255,0.89),470px 1056px 0 rgba(255,255,255,0.82),829px 1288px 0 rgba(255,255,255,0.74),1696px 966px 0 rgba(255,255,255,0.46),522px 765px 0 rgba(255,255,255,0.53),1429px 1681px 0 rgba(255,255,255,0.55),240px 1447px 0 rgba(255,255,255,0.55),1320px 1610px 0 rgba(255,255,255,0.40),1766px 1526px 0 rgba(255,255,255,0.58),836px 674px 0 rgba(255,255,255,0.36),488px 367px 0 rgba(255,255,255,0.42),890px 760px 0 rgba(255,255,255,0.49),791px 1758px 0 rgba(255,255,255,0.41),1576px 650px 0 rgba(255,255,255,0.37),256px 1747px 0 rgba(255,255,255,0.78),606px 1848px 0 rgba(255,255,255,0.68),1309px 534px 0 rgba(255,255,255,0.32),722px 950px 0 rgba(255,255,255,0.75),956px 1087px 0 rgba(255,255,255,0.64),1442px 920px 0 rgba(255,255,255,0.36),1366px 559px 0 rgba(255,255,255,0.66),222px 672px 0 rgba(255,255,255,0.30),1195px 869px 0 rgba(255,255,255,0.81),1284px 1216px 0 rgba(255,255,255,0.76),693px 1007px 0 rgba(255,255,255,0.76),291px 864px 0 rgba(255,255,255,0.31),1099px 1907px 0 rgba(255,255,255,0.41),431px 1920px 0 rgba(255,255,255,0.82),1373px 498px 0 rgba(255,255,255,0.71),675px 911px 0 rgba(255,255,255,0.32),1499px 1164px 0 rgba(255,255,255,0.38),1436px 573px 0 rgba(255,255,255,0.36),1090px 1234px 0 rgba(255,255,255,0.58),440px 1899px 0 rgba(255,255,255,0.72),1437px 543px 0 rgba(255,255,255,0.32),1620px 1441px 0 rgba(255,255,255,0.45),121px 613px 0 rgba(255,255,255,0.83),316px 110px 0 rgba(255,255,255,0.68),433px 775px 0 rgba(255,255,255,0.39),140px 1822px 0 rgba(255,255,255,0.78),763px 1644px 0 rgba(255,255,255,0.84),682px 876px 0 rgba(255,255,255,0.87),511px 962px 0 rgba(255,255,255,0.53),1913px 747px 0 rgba(255,255,255,0.68),432px 32px 0 rgba(255,255,255,0.90),781px 1502px 0 rgba(255,255,255,0.37),1425px 901px 0 rgba(255,255,255,0.48),1281px 1055px 0 rgba(255,255,255,0.43),143px 257px 0 rgba(255,255,255,0.59),1277px 479px 0 rgba(255,255,255,0.46),1073px 1766px 0 rgba(255,255,255,0.41),719px 303px 0 rgba(255,255,255,0.69),600px 1506px 0 rgba(255,255,255,0.47),722px 711px 0 rgba(255,255,255,0.35),1561px 1241px 0 rgba(255,255,255,0.51);opacity:.75}
body::after{width:2px;height:2px;box-shadow:549px 516px 0 rgba(255,255,255,0.66),665px 728px 0 rgba(255,255,255,0.69),33px 678px 0 rgba(255,255,255,0.82),538px 1431px 0 rgba(255,255,255,0.62),646px 230px 0 rgba(255,255,255,0.67),1316px 1740px 0 rgba(255,255,255,0.79),1888px 872px 0 rgba(255,255,255,0.87),524px 1507px 0 rgba(255,255,255,0.51),1270px 9px 0 rgba(255,255,255,0.49),1105px 1257px 0 rgba(255,255,255,0.45),1032px 759px 0 rgba(255,255,255,0.74),819px 662px 0 rgba(255,255,255,0.89),821px 1101px 0 rgba(255,255,255,0.85),140px 1486px 0 rgba(255,255,255,0.40),1988px 1832px 0 rgba(255,255,255,0.82),152px 794px 0 rgba(255,255,255,0.83),1566px 1145px 0 rgba(255,255,255,0.41),564px 1788px 0 rgba(255,255,255,0.80);animation:brilho 7s ease-in-out infinite alternate}
@keyframes brilho{from{opacity:.35}to{opacity:.95}}
img,svg{max-width:100%}
a{color:var(--rose);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:#ffc0d1}
:focus-visible{outline:2px solid #ffc0d1;outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0 0 .6em;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,5.2vw,4.1rem)}
h2{font-size:clamp(1.65rem,3.2vw,2.5rem)}
h3{font-size:1.28rem}
p{margin:0 0 1.1em}
ul,ol{padding-left:1.25rem}
.container{width:min(1180px,100% - 2rem);margin-inline:auto}
.estreito{width:min(780px,100% - 2rem)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pular{position:absolute;left:-999px;top:0;z-index:100;background:var(--crimson);color:#fff;padding:.7rem 1rem;border-radius:0 0 10px 0}
.pular:focus{left:0}
.centro{text-align:center;margin-top:2rem}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.78rem 1.35rem;border-radius:999px;border:1.5px solid transparent;font:600 1rem/1.2 var(--sans);text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;color:#fff}
.btn:hover{transform:translateY(-2px);color:#fff}
.btn-primario{background:linear-gradient(135deg,#d0245a,#a2143c 70%);box-shadow:0 10px 30px rgba(162,20,60,.45),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-primario:hover{box-shadow:0 14px 38px rgba(201,32,79,.55),inset 0 1px 0 rgba(255,255,255,.3)}
.btn-secundario{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.4)}
.btn-secundario:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn-grande{padding:1rem 1.7rem;font-size:1.06rem}
.btn-mini{padding:.4rem .9rem;font-size:.85rem;background:rgba(255,255,255,.06);border-color:var(--line2)}
.btn-mini.pulsa{animation:pulsa 1.4s ease-in-out infinite;border-color:var(--rose)}
@keyframes pulsa{50%{box-shadow:0 0 0 6px rgba(255,134,165,.2)}}
.btn-opcao{background:var(--surface2);border-color:var(--line2);flex:1 1 150px}
.btn-opcao:hover{border-color:var(--rose)}
.btn-opcao.certa{background:rgba(127,230,180,.16);border-color:var(--ok)}
.btn-opcao.errada{opacity:.45}
.link-btn{background:none;border:0;padding:0;color:var(--rose);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.chip{font:600 .88rem var(--sans);padding:.45rem .95rem;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line2);color:var(--text);cursor:pointer;transition:.2s}
.chip:hover{border-color:var(--rose)}
.chip[aria-pressed=true]{background:var(--crimson);border-color:var(--crimson-hi);color:#fff}

/* Cabeçalho */
.cabecalho{position:sticky;top:0;z-index:60;background:rgba(9,6,15,.7);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.cabecalho.rolou{border-bottom-color:var(--line);background:rgba(9,6,15,.88)}
.cab-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
.marca{display:flex;align-items:center}.marca img{display:block;height:36px;width:auto}
.nav ul{display:flex;gap:.2rem;list-style:none;margin:0;padding:0}
.nav{display:flex;align-items:center;gap:1.1rem}
.nav a{color:var(--text);text-decoration:none;font-weight:500;font-size:.96rem;padding:.5rem .8rem;border-radius:999px;transition:.2s}
.nav ul a:hover{background:rgba(255,255,255,.08)}
.nav a[aria-current=page]{background:rgba(255,255,255,.1)}
.nav .nav-dest{color:#ffd2de}
.pill-prog{display:flex;align-items:center;gap:.6rem;border:1px solid var(--line2);font-size:.82rem!important;color:var(--muted)!important;padding:.35rem .8rem!important}
.pill-prog b{color:#fff}
.pp-barra,.stat-barra{display:block;height:6px;border-radius:9px;background:rgba(255,255,255,.12);overflow:hidden}
.pp-barra{width:44px}
.pp-barra i,.stat-barra i{display:block;height:100%;width:var(--p,0%);background:linear-gradient(90deg,var(--crimson),var(--rose));border-radius:inherit;transition:width .6s}
.nav-toggle{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line2);background:rgba(255,255,255,.05);cursor:pointer;position:relative}
.nav-toggle i,.nav-toggle i::before,.nav-toggle i::after{position:absolute;left:12px;right:12px;height:2px;background:#fff;border-radius:2px;transition:.25s;content:""}
.nav-toggle i{top:21px}.nav-toggle i::before{top:-7px;left:0;right:0}.nav-toggle i::after{top:7px;left:0;right:0}
.nav-aberto .nav-toggle i{background:transparent}.nav-aberto .nav-toggle i::before{top:0;transform:rotate(45deg)}.nav-aberto .nav-toggle i::after{top:0;transform:rotate(-45deg)}
@media(max-width:940px){
  .nav-toggle{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;background:rgba(12,8,19,.97);border-bottom:1px solid var(--line);padding:1rem;gap:.8rem;display:none}
  .nav-aberto .nav{display:flex}
  .nav ul{flex-direction:column}.nav a{padding:.8rem 1rem}
  .pill-prog{justify-content:center}
}

/* Hero */
.hero{padding:clamp(2rem,5vw,4rem) 0 2rem;position:relative;overflow:hidden}
.hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:2.5rem;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:600;color:var(--rose);margin:0 0 1rem}
.eyebrow a{color:inherit;text-decoration:none}
.eyebrow .ponto{width:8px;height:8px;border-radius:50%;background:var(--rose);box-shadow:0 0 12px var(--rose)}
.hero h1{font-weight:400;margin-bottom:.5em}
.hero h1 em{font-style:italic;background:linear-gradient(100deg,#ffd9e3,var(--rose) 55%,#ff5d89);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{font-size:1.2rem;color:var(--muted);max-width:34em}
.hero-cta{display:flex;gap:.9rem;flex-wrap:wrap;margin:1.8rem 0}
.hero-nums{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;list-style:none;padding:0;margin:0;color:var(--muted);font-size:.95rem}
.hero-nums b{font-family:var(--serif);font-size:1.5rem;color:#fff;font-weight:500;margin-right:.2rem}
.hero-lua{position:relative;display:grid;place-items:center;padding:1rem}
.hero-lua-svg{width:min(100%,470px);height:auto;filter:drop-shadow(0 0 60px rgba(162,20,60,.35))}
.hero-sombra{animation:eclipse 30s ease-in-out infinite}
@keyframes eclipse{0%{transform:translateX(-430px)}34%{transform:translateX(0)}62%{transform:translateX(0)}100%{transform:translateX(430px)}}
.hero-lua.pausada .hero-sombra{animation-play-state:paused}
.hero-orbita{position:absolute;inset:2%;border-radius:50%;border:1px dashed rgba(255,255,255,.18);animation:giro 90s linear infinite;pointer-events:none}
.hero-lua.pausada .hero-orbita{animation-play-state:paused}
.orb-ponto{position:absolute;top:-6px;left:50%;width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 18px var(--gold)}
@keyframes giro{to{transform:rotate(360deg)}}
.hero-legenda{font-size:.8rem;color:var(--muted);text-align:center;margin:.6rem 0 0;max-width:30em}
.fases-faixa{list-style:none;margin:2.6rem 0 0;padding:1.2rem;display:grid;grid-template-columns:repeat(8,1fr);gap:.4rem;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));backdrop-filter:blur(6px)}
.fases-faixa a{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-decoration:none;color:var(--muted);font-size:.78rem;text-align:center;transition:.25s}
.fases-faixa svg{width:52px;height:52px;transition:transform .3s}
.fases-faixa a:hover{color:#fff}.fases-faixa a:hover svg{transform:scale(1.14) rotate(-4deg)}
@media(max-width:900px){.hero-in{grid-template-columns:1fr}.hero-lua{order:-1}.hero-lua-svg{width:min(78%,330px)}.fases-faixa{grid-template-columns:repeat(4,1fr);row-gap:1rem}}

/* Seções da home */
.secao{padding:clamp(3.2rem,7vw,6rem) 0;position:relative}
.secao-cab{max-width:700px;margin-bottom:2.4rem}
.secao-cab p:last-child{color:var(--muted);font-size:1.1rem}
.secao-demo{background:linear-gradient(180deg,transparent,rgba(162,20,60,.09) 50%,transparent)}
.secao-eclipse{background:radial-gradient(900px 420px at 50% -10%,rgba(162,20,60,.34),transparent 70%),#0c050e;border-block:1px solid rgba(162,20,60,.3)}
.secao-cal{background:linear-gradient(180deg,transparent,#130c1d 30%,#130c1d 70%,transparent)}
.secao-painel{padding-top:2rem}
.secao-cred{border-top:1px solid var(--line)}
.rec-grade{display:grid;grid-template-columns:1.05fr .95fr;gap:2.5rem;align-items:center}
.rec-passos{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.rec-passos li{display:flex;gap:1rem;padding:1.2rem 1.3rem;border:1px solid var(--line);border-radius:var(--r);background:rgba(255,255,255,.03);transition:.25s}
.rec-passos li:hover{border-color:rgba(255,134,165,.5);transform:translateX(4px)}
.rec-passos h3{margin-bottom:.2em}.rec-passos p{margin:0;color:var(--muted)}
.rec-n{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:600 1.2rem var(--serif);background:linear-gradient(135deg,var(--crimson-hi),var(--crimson));box-shadow:0 0 20px rgba(162,20,60,.5)}
.gate-mini{display:grid;gap:.8rem;padding:1.6rem;border-radius:24px;border:1px solid rgba(255,134,165,.4);background:linear-gradient(160deg,rgba(162,20,60,.22),rgba(255,255,255,.03));box-shadow:var(--sombra);transform:rotate(1.2deg)}
.gate-mini strong{font:500 1.35rem var(--serif)}.gm-lede{color:var(--muted);font-size:.95rem}
.gate-mini-b{display:inline-flex;align-items:center;gap:.4rem;color:#ffc0d1;font-size:.82rem;font-weight:600}
.gm-btns{display:flex;gap:.6rem;flex-wrap:wrap}.gm-btns .btn{flex:1 1 140px;font-size:.88rem;pointer-events:none}
.rec-nota{margin-top:2rem;padding:1rem 1.3rem;border-left:3px solid var(--rose);background:rgba(255,255,255,.04);border-radius:0 14px 14px 0}
.demo-grade{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem;align-items:center}
.demo-label{display:block;font-weight:600;margin:1.2rem 0 .4rem}
.demo-range{width:100%;accent-color:var(--rose);height:34px}
.demo-nome{font:500 1.5rem var(--serif);color:#fff;margin:.3rem 0 1rem}
.demo-botoes{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.demo-nota{color:var(--muted);font-size:.95rem}
.demo-fig{padding:1rem;border:1px solid var(--line);border-radius:var(--r);background:rgba(255,255,255,.03)}
.cards-secoes{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.card-secao{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;border-radius:var(--r);border:1px solid var(--line);background:linear-gradient(165deg,rgba(255,255,255,.06),rgba(255,255,255,.015));text-decoration:none;color:var(--text);transition:.3s;position:relative;overflow:hidden}
.card-secao::after{content:"";position:absolute;right:-40px;top:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(162,20,60,.35),transparent 70%);opacity:0;transition:.4s}
.card-secao:hover{transform:translateY(-5px);border-color:rgba(255,134,165,.55)}.card-secao:hover::after{opacity:1}
.cs-arte{width:60px;height:60px}.card-secao h3{margin:.4rem 0 0}.card-secao p{color:var(--muted);margin:0;font-size:.97rem}
.cs-n{margin-top:auto;padding-top:.6rem;color:var(--rose);font-weight:600;font-size:.9rem}.cs-n i{font-style:normal;transition:.2s;display:inline-block}.card-secao:hover .cs-n i{transform:translateX(4px)}
.ecl-grade{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.ecl-card{padding:1.5rem;border:1px solid rgba(255,134,165,.22);border-radius:var(--r);background:rgba(10,5,12,.6)}
.ecl-fig{margin:.5rem 0 1rem}.ecl-card p{color:var(--muted)}
.link-seta{font-weight:600;text-decoration:none}.link-seta::after{content:" →"}
.cal-grade{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.cal-prog{display:flex;align-items:center;gap:1.4rem;margin:1.4rem 0 1.8rem}
.cal-lista{list-style:none;margin:0;padding:0;color:var(--muted)}.cal-lista b{color:#fff}
.cal-cartas{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.cal-cartas .carta{padding:.6rem .4rem}.cal-cartas .carta-arte-w{width:64px;height:64px}.cal-cartas .carta-tag{display:none}.cal-cartas .carta-nome{font-size:.78rem}
.cred-grade{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem}
.faq-item{border:1px solid var(--line);border-radius:16px;margin-bottom:.7rem;background:rgba(255,255,255,.03)}
.faq-item summary{padding:1.05rem 1.3rem;cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq-item summary::after{content:"+";color:var(--rose);font-size:1.4rem;line-height:1;transition:.2s}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item p{padding:0 1.3rem 1.1rem;margin:0;color:var(--muted)}
@media(max-width:900px){.rec-grade,.demo-grade,.cal-grade,.cred-grade,.ecl-grade{grid-template-columns:1fr}.cards-secoes{grid-template-columns:1fr 1fr}.cal-cartas{grid-template-columns:repeat(4,1fr)}}
@media(max-width:560px){.cards-secoes{grid-template-columns:1fr}.cal-cartas{grid-template-columns:repeat(2,1fr)}.cal-prog{flex-direction:column;align-items:flex-start}}

/* Páginas internas */
.breadcrumb{padding:1.1rem 0 .4rem;font-size:.88rem}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem;margin:0;padding:0;color:var(--muted)}
.breadcrumb li+li::before{content:"›";margin-right:.35rem;opacity:.6}
.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:#fff}
.pagina-cab{max-width:780px;padding:1.4rem 0 1.6rem}
.pagina-cab h1{font-size:clamp(2rem,4.4vw,3.3rem)}
.pagina-intro{font-size:1.14rem;color:var(--muted)}
.aside-sec{margin:3.5rem 0 4rem;padding:1.6rem;border:1px solid var(--line);border-radius:var(--r);background:rgba(255,255,255,.03)}
.lista-links{columns:2;list-style:none;padding:0;margin:0}.lista-links li{padding:.25rem 0}
.texto-largo{max-width:780px;margin:2.5rem 0 4rem}
.texto-largo h2{font-size:1.7rem;margin-top:2.2rem}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.card-artigo{display:flex;flex-direction:column;border-radius:var(--r);border:1px solid var(--line);background:linear-gradient(170deg,var(--surface2),var(--surface));text-decoration:none;color:var(--text);overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.card-artigo[hidden]{display:none}
.card-artigo:hover{transform:translateY(-5px);border-color:rgba(255,134,165,.55);box-shadow:0 18px 44px rgba(162,20,60,.22);color:var(--text)}
.ca-arte{height:122px;display:grid;place-items:center;background:radial-gradient(circle at 50% 120%,rgba(162,20,60,.4),transparent 70%),rgba(255,255,255,.02);border-bottom:1px solid var(--line)}
.ca-arte svg{width:82px;height:82px;transition:transform .4s}.card-artigo:hover .ca-arte svg{transform:scale(1.1)}
.esta-bloqueado .ca-arte svg{opacity:.55;filter:saturate(.6)}
.ca-corpo{padding:1.1rem 1.25rem 1.25rem;display:flex;flex-direction:column;flex:1}
.ca-sec{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);margin:0 0 .3rem;font-weight:600}
.ca-t{font-size:1.25rem;margin-bottom:.4rem}
.ca-l{color:var(--muted);font-size:.93rem;line-height:1.55;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ca-rod{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;color:var(--muted)}
.status{display:inline-flex;align-items:center;gap:.35rem;font-size:.76rem;font-weight:600;padding:.25rem .65rem;border-radius:999px}
.ico{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.status .ico{width:14px;height:14px}
.status.aberto{color:var(--ok);background:rgba(60,190,130,.14)}.status.bloqueado{color:#ffb9cc;background:rgba(162,20,60,.28)}
.status.aberto .ico-lock,.status.bloqueado .ico-open{display:none}
@media(max-width:900px){.cards-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cards-grid{grid-template-columns:1fr}.lista-links{columns:1}}
.filtros{display:flex;flex-direction:column;gap:.8rem;margin:1.6rem 0 1.6rem}
.filtro-grupo{display:flex;flex-wrap:wrap;gap:.5rem}.filtro-n{color:var(--muted);font-size:.9rem;margin:0}
.vazio{padding:1rem 1.3rem;border:1px dashed var(--line2);border-radius:14px;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}
.stat{padding:1.15rem 1.25rem;border-radius:18px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02));display:flex;flex-direction:column;gap:.15rem}
.stat-n{display:flex;align-items:baseline;gap:.35rem}.stat-n b{font:500 2.3rem/1 var(--serif);color:#fff}.stat-n small{color:var(--muted);font-size:.85rem}
.stat-l{color:var(--muted);font-size:.9rem}.stat-s{font-size:.8rem;color:var(--rose)}.stat .stat-barra{margin-top:.5rem}
.stats-compacto{margin:1.4rem 0}.stats-compacto .stat-n b{font-size:1.9rem}
@media(max-width:780px){.stats{grid-template-columns:1fr 1fr}}@media(max-width:420px){.stats{grid-template-columns:1fr}}

/* Artigo */
.artigo-wrap{width:min(920px,100% - 2rem)}
.artigo-hero{padding:1.2rem 0 1.4rem}
.artigo-hero h1{font-size:clamp(2rem,4.8vw,3.4rem)}
.artigo-lede{font-size:1.25rem;color:#d8cfe3;line-height:1.55}
.artigo-meta{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;color:var(--muted);font-size:.88rem;margin:0}
.gate{display:none;margin:.5rem 0 1.5rem;scroll-margin-top:90px}
.wf-locked .gate{display:block}
.gate-card{padding:clamp(1.4rem,4vw,2.4rem);border-radius:26px;border:1px solid rgba(255,134,165,.45);background:radial-gradient(500px 240px at 100% 0,rgba(162,20,60,.4),transparent 70%),linear-gradient(160deg,var(--surface2),var(--surface));box-shadow:var(--sombra)}
.gate-badge{display:inline-flex;align-items:center;gap:.45rem;font-size:.82rem;font-weight:600;color:#ffc0d1;background:rgba(162,20,60,.3);padding:.3rem .8rem;border-radius:999px;margin-bottom:.9rem}
.gate-badge .ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.gate-card h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.gate-lede{color:#d8cfe3}
.gate-itens{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;padding:0;margin:1rem 0 1.6rem}
.gate-itens li{font-size:.82rem;padding:.3rem .75rem;border-radius:999px;border:1px solid var(--line2);color:var(--muted)}
.gate-acoes{display:flex;gap:.9rem;flex-wrap:wrap}.gate-acoes .btn{flex:1 1 230px}
.gate-nota{margin:1.1rem 0 0;color:var(--muted);font-size:.9rem}
.gate-jogo{padding:1rem 0}
.gate-jogo-topo{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}.gate-jogo-t{margin:0}
.carregando{color:var(--muted)}
.wf-locked .artigo-corpo{max-height:340px;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(#000 35%,transparent);mask-image:linear-gradient(#000 35%,transparent)}
.wf-locked .toc{display:none}
.artigo-corpo{padding-bottom:2rem;scroll-margin-top:90px}
.artigo-corpo section{margin:2.6rem 0;scroll-margin-top:90px}
.artigo-corpo h2{font-size:1.8rem;display:flex;align-items:center;gap:.7rem}
.artigo-corpo h2::before{content:"";width:5px;height:1.5rem;border-radius:3px;background:linear-gradient(var(--rose),var(--crimson));flex:none}
.artigo-corpo section>p{max-width:68ch;color:#e6dfee}
.toc{padding:1.2rem 1.4rem;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.035)}
.toc-t{font:600 .78rem var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--rose);margin:0 0 .5rem}
.toc ol{columns:2;margin:0;padding-left:1.2rem}.toc li{padding:.12rem 0}.toc a{text-decoration:none;color:var(--text)}.toc a:hover{color:var(--rose)}
@media(max-width:600px){.toc ol{columns:1}}
.figura{margin:0;padding:1.2rem;border-radius:var(--r);border:1px solid var(--line);background:radial-gradient(700px 300px at 50% 100%,rgba(162,20,60,.14),transparent),rgba(255,255,255,.03)}
.figura figcaption{margin-top:.9rem;font-size:.88rem;color:var(--muted)}
.passos{list-style:none;counter-reset:p;padding:0;display:grid;gap:.7rem;max-width:68ch}
.passos li{counter-increment:p;position:relative;padding:.9rem 1rem .9rem 3.3rem;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.passos li::before{content:counter(p);position:absolute;left:.9rem;top:.8rem;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--crimson);font:600 .9rem var(--sans)}
.conceitos{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin:0}
.conceitos div{padding:1.1rem 1.2rem;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.conceitos dt{font:500 1.15rem var(--serif);color:#fff;margin-bottom:.25rem}.conceitos dd{margin:0;color:var(--muted);font-size:.96rem;line-height:1.6}
@media(max-width:640px){.conceitos{grid-template-columns:1fr}}
.erros{display:grid;gap:.9rem}
.erro{border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.erro p{margin:0;padding:.9rem 1.2rem}.erro p span{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin-bottom:.2rem}
.erro-q{background:rgba(162,20,60,.2)}.erro-q span{color:#ffb2c6}
.erro-a{background:rgba(255,255,255,.04)}.erro-a span{color:var(--ok)}
.curios{padding:0;list-style:none;display:grid;gap:.7rem;max-width:68ch}
.curios li{padding:1rem 1.2rem 1rem 3rem;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);position:relative}
.curios li::before{content:"✦";position:absolute;left:1.1rem;top:.9rem;color:var(--gold)}
.fonte-ref{display:inline-block;font-size:.72rem;font-weight:600;padding:.05rem .5rem;border-radius:999px;border:1px solid var(--line2);text-decoration:none;margin-left:.3rem;color:var(--muted)}
.fontes-lista{list-style:none;padding:0;display:grid;gap:.5rem}.fontes-lista li{padding:.7rem 1rem;border-radius:12px;background:rgba(255,255,255,.04)}.fontes-lista span{color:var(--muted);font-size:.85rem;margin-left:.4rem}
.fontes-nota,.rel-links{color:var(--muted);font-size:.92rem}
#relacionados .cards-grid{grid-template-columns:1fr 1fr}@media(max-width:600px){#relacionados .cards-grid{grid-template-columns:1fr}}
.glossario{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin:2rem 0 4rem}.gl-item{padding:1.1rem 1.2rem;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.035)}
.gl-item dt{font:500 1.2rem var(--serif)}.gl-item dd{margin:.3rem 0 0;color:var(--muted);font-size:.96rem}@media(max-width:700px){.glossario{grid-template-columns:1fr}}

/* Contato */
.contato-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem}@media(max-width:800px){.contato-grid{grid-template-columns:1fr}}
.form{display:grid;gap:.5rem;padding:1.6rem;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.04)}
.form label{font-weight:600;font-size:.92rem;margin-top:.5rem}
.form input,.form select,.form textarea{font:inherit;color:var(--text);background:rgba(0,0,0,.35);border:1px solid var(--line2);border-radius:12px;padding:.75rem .9rem;width:100%}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--rose);border-color:transparent}
.form .btn{margin-top:1rem;justify-self:start}.form-nota{font-size:.85rem;color:var(--muted);margin:.4rem 0 0}
.contato-lado h2{font-size:1.2rem;margin-top:1.2rem}
.nf{padding:5rem 0;text-align:left}.noscript{text-align:center;padding:1rem;background:var(--crimson);margin:0}

/* Rodapé */
.rodape{margin-top:4rem;border-top:1px solid var(--line);background:rgba(6,4,10,.7);padding:3rem 0 2rem}
.rod-grade{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
.rod-marca p{color:var(--muted);font-size:.92rem;max-width:30em;margin-top:1rem}
.rod-t{font:600 .78rem var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--rose);margin-bottom:.8rem}
.rodape ul{list-style:none;padding:0;margin:0}.rodape li{padding:.22rem 0}.rodape li a{color:var(--text);text-decoration:none;font-size:.93rem}.rodape li a:hover{color:var(--rose)}
.rod-fim{margin:2.2rem 0 0;padding-top:1.4rem;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}
@media(max-width:860px){.rod-grade{grid-template-columns:1fr 1fr}}@media(max-width:520px){.rod-grade{grid-template-columns:1fr}}

/* Simulador */
.sim-tabs{display:flex;gap:.5rem;margin:.5rem 0 1rem}
.sim{border:1px solid var(--line2);border-radius:26px;padding:clamp(.9rem,2.5vw,1.5rem);background:linear-gradient(170deg,rgba(28,20,40,.95),rgba(14,9,22,.95));box-shadow:var(--sombra)}
.gate-sim .sim{margin-top:.3rem}
.sim-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}
.sim-objetivo{font:500 1.2rem/1.35 var(--serif);margin:0;flex:1 1 320px}
.sim-botoes{display:flex;gap:.5rem}
.sim-palco{position:relative;display:grid;grid-template-columns:1fr 168px;gap:1rem}
.sim-svg{width:100%;height:auto;border-radius:20px;background:radial-gradient(500px 280px at 50% 50%,#1a1230,#0a0612);border:1px solid var(--line);touch-action:pan-y;user-select:none;-webkit-user-select:none}
.sim-estrela{fill:#fff;opacity:.5}
.sim-token{cursor:grab;touch-action:none;outline:none}.sim-token.arrastando{cursor:grabbing}
.sim-hit{fill:transparent;stroke:transparent}
.sim-token:hover .sim-hit{fill:rgba(255,255,255,.06)}
.sim-token:focus-visible .sim-hit{stroke:#fff;stroke-dasharray:4 4;fill:rgba(255,255,255,.08)}
.sim-zona{fill:none;stroke:var(--rose);stroke-width:10;stroke-linecap:round;opacity:.8}
.sim-sombras .d-moonsh{opacity:.85}
.sim-red{opacity:0;transition:opacity .4s}.sim-red.on{opacity:.88}
.sim-vista{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1rem;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.03);text-align:center}
.sim-vista-t{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rose);margin:0;font-weight:600}
.sim-disco{width:112px;height:112px}
.sim-vista-n{font:500 1.05rem var(--serif);margin:0;min-height:1.4em}.sim-vista-i{font-size:.82rem;color:var(--muted);margin:0;min-height:1.2em}
.sim-feedback{margin:.9rem 0;padding:.8rem 1rem;border-radius:14px;background:rgba(255,255,255,.04);min-height:3.2em;border-left:3px solid transparent;font-size:.97rem;line-height:1.55}
.sim-feedback.ok{border-color:var(--ok);background:rgba(127,230,180,.1)}.sim-feedback.erro{border-color:var(--rose);background:rgba(162,20,60,.2)}.sim-feedback.dica{border-color:var(--gold);background:rgba(244,189,80,.1)}
.sim-barra{display:flex;gap:1rem;align-items:center}.sim-nota{font-size:.82rem;color:var(--muted);margin:.9rem 0 0}
.sim-opcoes{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem}
.sim-recompensa{margin-top:.9rem;padding:1.1rem 1.2rem;border-radius:18px;border:1px solid rgba(244,189,80,.5);background:linear-gradient(160deg,rgba(244,189,80,.12),rgba(162,20,60,.12));display:block}
.rec-t{font-weight:600;color:var(--gold);margin:0 0 .7rem}.rec-art{margin:.7rem 0}
.rec-cartas{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.7rem}
.rec-carta{display:flex;align-items:center;gap:.6rem;padding:.4rem .8rem .4rem .4rem;border-radius:14px;background:rgba(0,0,0,.3);animation:surge .6s both}
.rec-carta span{display:flex;flex-direction:column;font-size:.9rem;font-weight:600}.rec-carta small{font-weight:400;color:var(--muted)}
.carta-mini{width:48px;height:48px}.rec-acoes{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
@keyframes surge{from{opacity:0;transform:translateY(10px) scale(.9)}}
.faisca{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold);pointer-events:none;animation:voa 1.2s ease-out forwards}
@keyframes voa{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}
@media(max-width:720px){.sim-palco{grid-template-columns:1fr}.sim-vista{flex-direction:row;justify-content:center;gap:1rem;padding:.6rem}.sim-disco{width:78px;height:78px}}

/* Calendário */
.cal-painel{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;align-items:center;margin:1rem 0 1.5rem}.cal-anel{display:flex;gap:1.2rem;align-items:center;padding:1.2rem;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.04)}.cal-anel p{margin:0;font-size:1.05rem}.cal-anel b{font:500 1.6rem var(--serif)}.nivel{color:var(--muted);font-size:.92rem}.cal-painel .stats{margin:0}
@media(max-width:900px){.cal-painel{grid-template-columns:1fr}}
.anel{width:104px;height:104px;flex:none}.anel-b{fill:none;stroke:rgba(255,255,255,.12);stroke-width:3}.anel-v{fill:none;stroke:var(--rose);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .9s}.anel text{fill:#fff;font:500 8px var(--serif)}
.cartas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:.9rem;margin:1rem 0}
.carta{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem .7rem;border-radius:18px;border:1px solid var(--line);background:linear-gradient(170deg,var(--surface2),var(--surface));color:var(--text);font:inherit;text-align:center;cursor:pointer;transition:.25s}
.carta:hover{transform:translateY(-4px) rotate(-.6deg);border-color:var(--rose)}
.carta-arte-w{width:84px;height:84px;display:block}.carta-arte{width:100%;height:100%}
.carta-nome{font:500 1rem/1.2 var(--serif)}.carta-tag{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.est-bloqueada{opacity:.6;border-style:dashed}.est-bloqueada .carta-nome{color:var(--muted)}
.est-descoberta{border-color:var(--line2)}.est-descoberta .carta-tag{color:var(--rose)}
.est-dominada{border-color:rgba(244,189,80,.7);box-shadow:0 0 0 1px rgba(244,189,80,.25),0 10px 30px rgba(244,189,80,.1)}.est-dominada .carta-tag{color:var(--gold)}
.cat-marco.est-descoberta{border-color:rgba(255,134,165,.6)}
.dialogo{background:var(--surface2);color:var(--text);border:1px solid var(--line2);border-radius:24px;width:min(92vw,420px);padding:1.6rem;text-align:center}
.dialogo::backdrop{background:rgba(5,3,9,.75);backdrop-filter:blur(4px)}
.dlg-arte{width:120px;height:120px;margin:0 auto .6rem}.dlg-c{color:var(--rose);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin:0}.dlg-t{font-size:1.6rem;margin:.2rem 0 .6rem}.dlg-p{color:var(--muted)}.dlg-st{color:var(--gold)}.dlg-how:empty{display:none}

/* Diagramas */
.diagrama{width:100%;height:auto;display:block}
.d-sun{fill:var(--gold)}.d-sun-glow{fill:rgba(244,189,80,.1)}.d-sun-glow2{fill:rgba(244,189,80,.18)}
.d-ray{stroke:rgba(244,189,80,.55);stroke-width:1.6;fill:none}.d-ray-head{fill:rgba(244,189,80,.85)}
.d-orbit{fill:none;stroke:rgba(255,255,255,.3);stroke-width:1.3;stroke-dasharray:3 5}
.d-line{stroke:rgba(255,255,255,.22);stroke-width:1;stroke-dasharray:2 4;fill:none}
.d-peri{stroke:var(--rose)}.d-apo{stroke:#9fb4ff}
.d-earth-dark{fill:#14264a}.d-earth-lit{fill:var(--earth)}
.d-moon-dark{fill:#211a2f}.d-moon-lit{fill:var(--silver)}.d-moon-rim{fill:none;stroke:rgba(255,255,255,.25);stroke-width:1}
.d-solid{fill:#07040c}.d-moon-red{fill:#a8322f}.d-moon-part{fill:#c6a3ab}.d-moon-pen{fill:#cfc8d6}.d-moon-ghost{fill:rgba(233,228,240,.3);stroke:rgba(255,255,255,.35)}
.d-umbra{fill:rgba(0,0,0,.6)}.d-penumbra{fill:rgba(255,255,255,.075)}.d-antumbra{fill:rgba(0,0,0,.28)}
.d-label{fill:var(--text);font:600 13px var(--sans)}.d-strong{font-weight:700}.d-small{font-size:11.5px}
.d-note{fill:var(--muted);font:400 11.5px var(--sans)}.d-umb{fill:#ffa8bf}.d-pen{fill:#c9bfdc}
.d-arrow{fill:none;stroke:rgba(255,255,255,.45);stroke-width:1.6}
.d-node{fill:var(--crimson-hi);stroke:#fff;stroke-width:1.5}.d-tilted{stroke:var(--rose);stroke-dasharray:none;stroke-width:2.2}.d-plane{stroke:rgba(255,255,255,.45)}
.d-face{fill:var(--crimson-hi)}.d-face-dot{fill:#fff}
.g-stroke{fill:none;stroke:var(--silver);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.g-thick{stroke-width:5}.g-dim{opacity:.45}
.g-fill{fill:var(--rose)}.g-fill2{fill:var(--silver)}.g-dimfill{fill:rgba(255,255,255,.14)}.g-bg{fill:var(--surface)}.g-q{fill:rgba(255,255,255,.4);font:600 34px var(--serif)}
.c-corona{fill:rgba(244,189,80,.28)}.c-corona2{fill:rgba(255,255,255,.45)}.c-ring{fill:none;stroke:#fff;stroke-width:1.6}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .hero-sombra{transform:translateX(-130px)}
}

/* ===== Camada imersiva (home ousada) ===== */
.hero{padding-top:clamp(2.5rem,6vw,5rem)}
.hero h1{font-size:clamp(2.5rem,6vw,4.9rem);line-height:1.03;text-shadow:0 4px 40px rgba(162,20,60,.35)}
.hero-in,.fases-faixa{position:relative;z-index:2}
.aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.aurora i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;animation:deriva 22s ease-in-out infinite alternate}
.aurora i:nth-child(1){width:520px;height:520px;right:-120px;top:-140px;background:radial-gradient(circle,#a2143c,transparent 68%)}
.aurora i:nth-child(2){width:460px;height:460px;left:-160px;top:120px;background:radial-gradient(circle,#4b3aa8,transparent 68%);animation-duration:28s;opacity:.4}
.aurora i:nth-child(3){width:380px;height:380px;left:42%;bottom:-160px;background:radial-gradient(circle,#c9204f,transparent 70%);animation-duration:34s;opacity:.32}
@keyframes deriva{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-60px,50px,0) scale(1.18)}}
.cadentes{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.cadentes i{position:absolute;width:140px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#fff 70%,#ffd9e3);opacity:0;transform:rotate(-28deg);animation:cadente 9s linear infinite}
.cadentes i:nth-child(1){left:62%;top:8%;animation-delay:1s}
.cadentes i:nth-child(2){left:30%;top:2%;animation-delay:4.5s;animation-duration:11s}
.cadentes i:nth-child(3){left:78%;top:30%;animation-delay:7s}
.cadentes i:nth-child(4){left:12%;top:22%;animation-delay:11s;animation-duration:13s}
@keyframes cadente{0%{opacity:0;translate:0 0}3%{opacity:1}14%{opacity:0;translate:-300px 160px}100%{opacity:0;translate:-300px 160px}}
.hero-lua-svg{animation:flutua 9s ease-in-out infinite}
@keyframes flutua{50%{transform:translateY(-12px)}}
.hero-orbita2{inset:-7%;border-style:solid;border-color:rgba(255,255,255,.07);animation-direction:reverse;animation-duration:140s}
.orb-terra{position:absolute;bottom:8%;left:10%;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#8db8ff,#2e5fb0);box-shadow:0 0 22px rgba(74,130,214,.8)}
.hero-lua::before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,rgba(201,32,79,.28),transparent 66%);filter:blur(30px);z-index:-1;animation:pulso 6s ease-in-out infinite}
@keyframes pulso{50%{transform:scale(1.15);opacity:.7}}

/* botões com reflexo */
.btn-primario{position:relative;overflow:hidden}
.btn-primario::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-20deg);transition:left .7s}
.btn-primario:hover::after{left:130%}
.marca img{transition:filter .3s}.marca:hover img{filter:drop-shadow(0 0 12px rgba(201,32,79,.8))}

/* faixa em movimento */
.marquee{overflow:hidden;border-block:1px solid var(--line);background:linear-gradient(90deg,rgba(162,20,60,.14),rgba(255,255,255,.02),rgba(162,20,60,.14));padding:.9rem 0;margin-top:1rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-trilho{display:flex;width:max-content;animation:corre 60s linear infinite}
.marquee ul{display:flex;gap:2.6rem;list-style:none;margin:0;padding:0 1.3rem;white-space:nowrap}
.marquee li{display:flex;align-items:center;gap:.6rem;font:italic 400 1.15rem var(--serif);color:#e3d9ee}
.marquee svg{width:26px;height:26px}.mq-sep{color:var(--rose)!important;font-style:normal!important;letter-spacing:.06em;font:600 .82rem var(--sans)!important;text-transform:uppercase}
@keyframes corre{to{transform:translateX(-50%)}}

/* faixa de fases: destaque que passeia */
.fases-faixa{box-shadow:0 20px 60px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.08)}
.fases-faixa a{padding:.5rem .2rem;border-radius:14px;transition:background .35s,transform .35s}
.fases-faixa a.ativa{background:rgba(255,134,165,.1);transform:translateY(-4px);color:#fff}
.fases-faixa a.ativa svg{filter:drop-shadow(0 0 14px rgba(255,200,220,.75));transform:scale(1.14)}

/* seções com profundidade */
.secao::before{content:"";position:absolute;left:50%;top:0;width:min(780px,80%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(255,134,165,.5),transparent)}
.hero+.marquee+.secao::before{display:none}
.secao-cab h2{background:linear-gradient(100deg,#fff 30%,#ffc6d6);-webkit-background-clip:text;background-clip:text;color:transparent}
.secao-eclipse{overflow:hidden}
.ecl-halo{position:absolute;left:50%;top:-220px;width:760px;height:760px;margin-left:-380px;border-radius:50%;background:radial-gradient(circle,rgba(201,32,79,.42),rgba(162,20,60,.12) 48%,transparent 70%);animation:pulso 8s ease-in-out infinite;pointer-events:none}
.secao-eclipse .container{position:relative}
.ecl-card{backdrop-filter:blur(8px);transition:transform .4s,border-color .4s,box-shadow .4s}
.ecl-card:hover{transform:translateY(-6px);border-color:rgba(255,134,165,.6);box-shadow:0 24px 60px rgba(162,20,60,.3)}
.secao-cal{overflow:hidden}
.secao-cal::after{content:"";position:absolute;right:-120px;bottom:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(75,58,168,.35),transparent 68%);filter:blur(30px);pointer-events:none}
.cal-cartas .carta{transition:transform .35s,border-color .3s,box-shadow .3s}
.cal-cartas .carta:nth-child(4n+1){transform:rotate(-3deg)}.cal-cartas .carta:nth-child(4n+2){transform:rotate(1.5deg) translateY(8px)}
.cal-cartas .carta:nth-child(4n+3){transform:rotate(-1.5deg)}.cal-cartas .carta:nth-child(4n){transform:rotate(3deg) translateY(8px)}
.cal-cartas .carta:hover{transform:rotate(0) translateY(-8px) scale(1.05);box-shadow:0 20px 40px rgba(162,20,60,.35)}
.gate-mini{animation:flutua 7s ease-in-out infinite}
.rec-passos li{background:linear-gradient(120deg,rgba(255,255,255,.05),rgba(255,255,255,.015))}

/* brilho que segue o cursor nos cartões */
.card-secao,.card-artigo,.stat{--mx:50%;--my:0%;position:relative}
.card-secao::before,.card-artigo::before,.stat::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(260px circle at var(--mx) var(--my),rgba(255,134,165,.18),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;z-index:0}
.card-secao:hover::before,.card-artigo:hover::before,.stat:hover::before{opacity:1}
.card-secao>*,.card-artigo>*{position:relative;z-index:1}
.card-artigo{isolation:isolate}

/* entrada suave ao rolar */
.js .rev{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms)}
.js .rev.vis{opacity:1;transform:none}
.js .cal-cartas .carta.rev.vis{transform:revert-layer}
@media(prefers-reduced-motion:reduce){.js .rev{opacity:1;transform:none}.aurora i,.cadentes i,.marquee-trilho{animation:none!important}}
@media(max-width:600px){.aurora i{opacity:.35}.marquee li{font-size:1rem}.cal-cartas .carta:nth-child(n){transform:none}}
.hero h1{font-size:clamp(2.4rem,4.9vw,4.1rem)}
.hero h1 em{white-space:nowrap}
@media(max-width:420px){.hero h1 em{white-space:normal}}
.d-eclipse .d-penumbra,.d-eclipse .d-antumbra{-webkit-mask-image:linear-gradient(90deg,#000 45%,transparent 100%);mask-image:linear-gradient(90deg,#000 45%,transparent 100%)}
.d-eclipse .d-umbra{-webkit-mask-image:linear-gradient(90deg,#000 70%,transparent 100%);mask-image:linear-gradient(90deg,#000 70%,transparent 100%)}
