:root{
  --night:#14081E;
  --night-2:#210C31;
  --pink:#FF007A;
  --coral:#FF6B6B;
  --text:#F8F9FA;
  --muted:rgba(248,249,250,.72);
  --line:rgba(255,255,255,.14);
  --glass:rgba(255,255,255,.075);
  --glass-strong:rgba(255,255,255,.11);
  --shadow:0 28px 90px rgba(0,0,0,.48);
  --radius-xl:34px;
  --radius-lg:24px;
  --radius-md:16px;
  --max:1180px;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,0,122,.25), transparent 30rem),
    radial-gradient(circle at 85% 16%, rgba(255,107,107,.18), transparent 34rem),
    linear-gradient(135deg, var(--night), #08020e 52%, #1a0826);
  color:var(--text);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.65;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.024) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.024) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.8), transparent 76%);
  z-index:-2;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background:repeating-linear-gradient(0deg, transparent 0 3px, rgba(255,255,255,.045) 4px);
  mix-blend-mode:screen;
  z-index:-1;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.skip-link{
  position:fixed;
  left:1rem;
  top:1rem;
  z-index:20;
  transform:translateY(-140%);
  background:var(--text);
  color:var(--night);
  padding:.75rem 1rem;
  border-radius:999px;
  font-weight:800;
}
.skip-link:focus{transform:none}
.orbital-header{
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter:blur(22px);
  background:rgba(20,8,30,.58);
  border-bottom:1px solid transparent;
  transition:border-color .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease);
}
.orbital-header.is-scrolled{
  background:rgba(20,8,30,.88);
  border-bottom-color:rgba(255,0,122,.22);
  box-shadow:0 10px 40px rgba(0,0,0,.32);
}
.nav-shell{
  width:min(var(--max), calc(100% - 32px));
  margin:auto;
  min-height:78px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:1.2rem;
}
.brand{display:inline-flex;align-items:center;filter:drop-shadow(0 0 18px rgba(255,0,122,.23))}
.primary-nav{display:flex;justify-content:center;gap:.35rem;align-items:center}
.primary-nav a,.nav-cta{
  border:1px solid transparent;
  border-radius:999px;
  padding:.68rem .95rem;
  color:var(--muted);
  font-weight:750;
  font-size:.94rem;
  transition:.25s var(--ease);
}
.primary-nav a:hover,.primary-nav a:focus-visible{color:var(--text);border-color:rgba(255,0,122,.33);background:rgba(255,255,255,.055)}
.nav-cta{background:linear-gradient(135deg, var(--pink), var(--coral));color:#fff;box-shadow:0 0 30px rgba(255,0,122,.28)}
.nav-cta:hover{transform:translateY(-2px)}
.nav-toggle{display:none;inline-size:46px;block-size:46px;border:1px solid var(--line);background:var(--glass);border-radius:16px;color:#fff;place-items:center;gap:4px;padding:12px}
.nav-toggle span{display:block;height:2px;width:20px;background:currentColor;border-radius:4px;transition:.25s var(--ease)}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
main{isolation:isolate}
.hero-galaxy{
  width:min(var(--max), calc(100% - 32px));
  margin:clamp(1.1rem, 3vw, 2.2rem) auto 0;
  min-height:calc(100svh - 120px);
  display:flex;
  align-items:center;
}
.hero-galaxy__grid{
  position:relative;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0, .9fr) minmax(340px, .78fr);
  gap:clamp(1.2rem, 4vw, 4rem);
  align-items:center;
}
.hero-galaxy__copy{
  position:relative;
  z-index:2;
  padding:clamp(1rem, 3vw, 2.4rem);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius-xl);
  background:linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.035));
  box-shadow:var(--shadow);
  overflow:hidden;
}
.hero-galaxy__copy::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:linear-gradient(100deg, rgba(255,0,122,.44), transparent 30%, rgba(255,107,107,.26));
  z-index:-1;
  opacity:.38;
  filter:blur(30px);
}
h1{
  margin:0 0 1.1rem;
  font-size:clamp(2.2rem, 6.6vw, 5.8rem);
  line-height:.96;
  letter-spacing:-.07em;
  max-width:12ch;
}
h1::first-letter{color:var(--pink);text-shadow:0 0 28px rgba(255,0,122,.6)}
h2{
  margin:0 0 1.05rem;
  font-size:clamp(1.7rem, 3.6vw, 3.2rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
h3{
  margin:1.5rem 0 .55rem;
  color:#fff;
  font-size:clamp(1.08rem, 2vw, 1.34rem);
  line-height:1.25;
}
p{margin:0 0 1rem;color:var(--muted)}
.hero-galaxy p:first-of-type{font-size:clamp(1.05rem, 1.55vw, 1.28rem);color:#fff}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.3rem}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:.92rem 1.2rem;
  font-weight:850;
  transition:.28s var(--ease);
  border:1px solid rgba(255,255,255,.14);
}
.btn--primary{background:linear-gradient(135deg, var(--pink), var(--coral));box-shadow:0 0 36px rgba(255,0,122,.32)}
.btn--ghost{background:rgba(255,255,255,.06);color:#fff}
.btn:hover{transform:translateY(-3px)}
.hero-galaxy figure{
  position:relative;
  margin:0;
  grid-column:2;
  grid-row:1;
  z-index:2;
  border-radius:var(--radius-xl);
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.065);
  box-shadow:0 40px 120px rgba(0,0,0,.55), 0 0 80px rgba(255,0,122,.12);
  overflow:hidden;
  transform:perspective(1100px) rotateY(-8deg) rotateX(3deg);
}
.hero-galaxy figure img{aspect-ratio:16/9;object-fit:cover;width:100%}
figure{margin:1.4rem 0 0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);box-shadow:0 24px 80px rgba(0,0,0,.32)}
figure img{width:100%;aspect-ratio:16/9;object-fit:cover}
figcaption{padding:1rem 1.1rem;color:rgba(248,249,250,.78);font-size:.95rem;border-top:1px solid rgba(255,255,255,.1)}
.hero-orbit{position:absolute;inset:auto 0 0 auto;width:44%;height:86%;pointer-events:none;z-index:1;filter:drop-shadow(0 0 18px rgba(255,0,122,.45))}
.orbit-line{position:absolute;border:1px solid rgba(255,0,122,.4);border-radius:50%;inset:10% 0 14% 8%;transform:rotate(-12deg)}
.orbit-line--two{inset:22% 8% 22% 22%;border-color:rgba(255,107,107,.34);transform:rotate(18deg)}
.orbit-dot{position:absolute;right:14%;top:22%;inline-size:12px;block-size:12px;border-radius:50%;background:var(--coral);box-shadow:0 0 28px var(--coral)}
.constellation{width:min(var(--max), calc(100% - 32px));margin:0 auto;height:2px;background:linear-gradient(90deg, transparent, var(--pink), var(--coral), transparent);opacity:.6}
.chapter{position:relative;width:min(var(--max), calc(100% - 32px));margin:clamp(3rem, 7vw, 7rem) auto}
.chapter__shell{
  position:relative;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius-xl);
  padding:clamp(1.1rem, 3.8vw, 3.5rem);
  background:linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  box-shadow:var(--shadow);
  overflow:hidden;
}
.chapter__shell::before{
  content:attr(data-fake);
  position:absolute;
  inset:-1px;
  pointer-events:none;
  border-radius:inherit;
  background:
    radial-gradient(circle at 8% 12%, rgba(255,0,122,.24), transparent 16rem),
    radial-gradient(circle at 92% 88%, rgba(255,107,107,.18), transparent 18rem);
  opacity:.8;
  z-index:-1;
}
.chapter h2{max-width:850px}
.chapter p{max-width:84ch}
.chapter--signal .chapter__shell{display:grid;grid-template-columns:1fr minmax(250px,.55fr);gap:2rem;align-items:start}
.chapter--signal .chapter__shell::after{
  content:"";
  min-height:100%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,0,122,.34), transparent 58%);
  border:1px solid rgba(255,0,122,.24);
  grid-column:2;
  grid-row:1 / span 4;
  aspect-ratio:1/1;
  align-self:center;
  box-shadow:inset 0 0 80px rgba(255,0,122,.12), 0 0 60px rgba(255,0,122,.18);
}
.chapter--split .chapter__shell{display:grid;grid-template-columns:minmax(0,.88fr) minmax(330px,.75fr);gap:clamp(1.2rem,4vw,3rem);align-items:start}
.chapter--split h2,.chapter--split p,.chapter--split ol{grid-column:1}
.chapter--split figure{grid-column:2;grid-row:1 / span 5;margin-top:0;position:sticky;top:105px}
.chapter--table table{min-width:760px}
table{width:100%;border-collapse:separate;border-spacing:0;margin:1.2rem 0;border:1px solid rgba(255,255,255,.13);border-radius:22px;overflow:hidden;background:rgba(0,0,0,.18)}
th,td{text-align:left;vertical-align:top;padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(248,249,250,.82)}
th{color:#fff;background:rgba(255,0,122,.14);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}
tr:last-child td{border-bottom:0}
.chapter--table .chapter__shell{overflow-x:auto}
ol,ul{margin:1rem 0 0;padding-left:1.25rem;color:var(--muted)}
li{margin:.55rem 0;padding-left:.15rem}
.chapter--gold .chapter__shell{
  background:
    linear-gradient(145deg, rgba(255,107,107,.105), rgba(255,0,122,.06)),
    rgba(255,255,255,.045);
}
.chapter--gold h2{color:#fff;text-shadow:0 0 32px rgba(255,0,122,.32)}
.chapter--cards ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding-left:0;list-style:none}
.chapter--cards li{margin:0;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:1rem;background:rgba(255,255,255,.055)}
.figure-signal{
  display:flex;
  min-height:180px;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:1.4rem;
  background:
    radial-gradient(circle at 50% 40%, rgba(255,0,122,.3), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
}
.figure-signal span{border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:.7rem 1rem;color:#fff;background:rgba(20,8,30,.62)}
.chapter--faq .chapter__shell{max-width:960px;margin:auto}
.faq-item{border:1px solid rgba(255,255,255,.12);border-radius:20px;margin:.9rem 0;background:rgba(255,255,255,.055);overflow:hidden}
.faq-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:0;background:transparent;color:#fff;text-align:left;font:inherit;font-weight:850;cursor:pointer}
.faq-button::after{content:"+";font-size:1.35rem;color:var(--coral);transition:.22s var(--ease)}
.faq-button[aria-expanded="true"]::after{transform:rotate(45deg)}
.faq-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s var(--ease)}
.faq-panel.is-open{grid-template-rows:1fr}
.faq-panel > div{overflow:hidden}
.faq-panel p{padding:0 1.1rem 1rem;margin:0}
.float-cta{
  position:fixed;
  right:1rem;
  bottom:1rem;
  z-index:9;
  max-width:calc(100vw - 2rem);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:.9rem 1.05rem;
  background:linear-gradient(135deg, var(--pink), var(--coral));
  box-shadow:0 0 34px rgba(255,0,122,.36);
  font-weight:900;
  transform:translateY(140%);
  opacity:0;
  transition:.3s var(--ease);
}
.float-cta.is-visible{transform:translateY(0);opacity:1}
.cookie-panel{
  position:fixed;
  left:1rem;
  bottom:1rem;
  z-index:11;
  width:min(380px, calc(100vw - 2rem));
  display:flex;
  gap:1rem;
  justify-content:space-between;
  align-items:center;
  padding:1rem;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(20,8,30,.86);
  backdrop-filter:blur(18px);
  box-shadow:0 20px 70px rgba(0,0,0,.5);
}
.cookie-panel strong,.cookie-panel span{display:block}
.cookie-panel span{color:var(--muted);font-size:.9rem}
.cookie-panel button{border:0;border-radius:999px;background:var(--text);color:var(--night);font-weight:850;padding:.7rem .95rem;cursor:pointer}
.site-footer{border-top:1px solid rgba(255,255,255,.1);padding:2.2rem 0;background:rgba(0,0,0,.18)}
.footer-inner{width:min(var(--max), calc(100% - 32px));margin:auto;display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.footer-inner nav{display:flex;flex-wrap:wrap;gap:.4rem}
.footer-inner nav a{color:var(--muted);padding:.5rem .7rem;border-radius:999px}
.footer-inner nav a:hover{background:rgba(255,255,255,.06);color:#fff}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s var(--ease), transform .65s var(--ease)}
.reveal.is-visible{opacity:1;transform:none}
@media (max-width: 980px){
  .nav-shell{grid-template-columns:auto auto;justify-content:space-between}
  .nav-toggle{display:grid;order:3}
  .primary-nav{
    position:fixed;
    top:78px;
    left:16px;
    right:16px;
    display:grid;
    gap:.5rem;
    padding:1rem;
    border:1px solid rgba(255,255,255,.14);
    border-radius:24px;
    background:rgba(20,8,30,.96);
    backdrop-filter:blur(22px);
    box-shadow:var(--shadow);
    opacity:0;
    visibility:hidden;
    transform:translateY(-12px);
    transition:.25s var(--ease);
  }
  .primary-nav.is-open{opacity:1;visibility:visible;transform:none}
  .primary-nav a{display:block;text-align:center}
  .nav-cta{display:none}
  .hero-galaxy{min-height:auto;padding:2rem 0 0}
  .hero-galaxy__grid{grid-template-columns:1fr}
  .hero-galaxy figure{grid-column:auto;grid-row:auto;transform:none}
  .hero-orbit{display:none}
  .chapter--signal .chapter__shell,.chapter--split .chapter__shell{display:block}
  .chapter--signal .chapter__shell::after{display:none}
  .chapter--split figure{position:relative;top:auto;margin-top:1.2rem}
}
@media (max-width: 680px){
  .nav-shell,.hero-galaxy,.chapter,.constellation,.footer-inner{width:min(100% - 22px, var(--max))}
  .brand img{width:148px;height:auto}
  .hero-galaxy__copy,.chapter__shell{border-radius:24px;padding:1rem}
  h1{font-size:clamp(2rem, 13vw, 3.55rem)}
  h2{font-size:clamp(1.55rem, 9vw, 2.25rem)}
  .chapter--cards ul{grid-template-columns:1fr}
  th,td{padding:.82rem;min-width:180px}
  .hero-actions{display:grid}
  .float-cta{left:1rem;right:1rem}
  .cookie-panel{bottom:5.2rem}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
