
:root{
  --bg:#060709;
  --panel:#0d1015;
  --panel-2:#131720;
  --line:rgba(255,255,255,.10);
  --line-strong:rgba(255,255,255,.18);
  --text:#f4f4f2;
  --muted:#aab0ba;
  --red:#e33a3a;
  --red-soft:#ff5b5b;
  --gold:#c8a36a;
  --shadow:0 24px 70px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 15%, rgba(227,58,58,.07), transparent 22%),
    radial-gradient(circle at 85% 10%, rgba(200,163,106,.06), transparent 18%),
    linear-gradient(180deg,#040506 0%, #0b0d11 40%, #050608 100%);
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
video{display:block;width:100%;height:auto;background:#000}
.bg-noise,.bg-carbon,.bg-glow{
  position:fixed;inset:0;pointer-events:none;z-index:0;
}
.bg-noise{
  opacity:.04;
  background-image:
    radial-gradient(circle at 25% 20%, rgba(255,255,255,.14) .5px, transparent .8px),
    radial-gradient(circle at 80% 75%, rgba(255,255,255,.1) .4px, transparent .8px);
  background-size:18px 18px,22px 22px;
}
.bg-carbon{
  opacity:.09;
  background:
    linear-gradient(135deg, rgba(255,255,255,.16) 0 8%, transparent 8% 16%, rgba(255,255,255,.09) 16% 24%, transparent 24% 32%),
    linear-gradient(315deg, rgba(255,255,255,.10) 0 8%, transparent 8% 16%, rgba(255,255,255,.05) 16% 24%, transparent 24% 32%);
  background-size:94px 94px;
  mix-blend-mode:soft-light;
}
.bg-glow{
  background:
    radial-gradient(circle at 25% 30%, rgba(227,58,58,.08), transparent 18%),
    radial-gradient(circle at 72% 18%, rgba(255,255,255,.04), transparent 22%);
}
.page{position:relative;z-index:1;padding-bottom:40px}
.shell{
  width:min(1360px, calc(100vw - 36px));
  margin:0 auto;
}
.header{
  position:sticky;top:0;z-index:40;
  border-bottom:1px solid var(--line);
  background:rgba(8,10,14,.78);
  backdrop-filter:blur(16px);
}
.header-inner{
  width:min(1360px, calc(100vw - 36px));
  margin:0 auto;
  min-height:88px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
}
.header-nav{
  display:flex;gap:20px;align-items:center;
}
.header-nav.right{justify-content:flex-end}
.header-nav a{
  font-family:Orbitron,sans-serif;
  font-size:.76rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#d4dae5;
}
.header-brand{
  justify-self:center;
  padding:16px 34px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
    linear-gradient(90deg, rgba(227,58,58,.08), rgba(255,255,255,.02), rgba(200,163,106,.08));
  box-shadow:0 16px 40px rgba(0,0,0,.28);
  font-family:Orbitron,sans-serif;
  letter-spacing:.16em;
  font-size:1.25rem;
  font-weight:800;
}
.header-cta{
  padding:12px 18px;
  border:1px solid rgba(227,58,58,.4);
  border-radius:999px;
  background:linear-gradient(90deg, rgba(227,58,58,.16), rgba(255,255,255,.03));
}
.hero-section,.intro-strip,.featured-section,.timeline-section,.modules-section,.kit-section,.technical-section,.package-section,.video-section,.cta-section{
  padding:26px 0 0;
}
.hero-section{padding-top:34px}
.breadcrumbs,.section-label,.eyebrow,.module-kicker{
  font-family:Orbitron,sans-serif;
  text-transform:uppercase;
  letter-spacing:.16em;
}
.breadcrumbs{
  color:#adb4bf;
  font-size:.72rem;
  margin-bottom:22px;
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:20px;
  align-items:stretch;
}
.hero-copy,.hero-media,.copy-block,.timeline-card,.category-card,.cta-shell,.video-frame,.studio-card,.spec-box,.mini-panel,.module-card,.panel-card,.package-card{
  position:relative;
  overflow:hidden;
}
.hero-copy,.copy-block,.timeline-card,.cta-shell,.mini-panel,.module-card,.panel-card,.package-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)),
    linear-gradient(180deg, rgba(14,17,23,.92), rgba(9,11,15,.95));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.hero-copy,.copy-block,.cta-shell{padding:28px}
.hero-copy::before,.hero-media::before,.copy-block::before,.timeline-card::before,.video-frame::before,.mini-panel::before,.module-card::before,.panel-card::before,.package-card::before{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.10) 0 6%, transparent 6% 12%, rgba(255,255,255,.05) 12% 18%, transparent 18% 24%),
    linear-gradient(315deg, rgba(255,255,255,.06) 0 6%, transparent 6% 12%, rgba(255,255,255,.03) 12% 18%, transparent 18% 24%);
  background-size:64px 64px;
  opacity:.12;
  pointer-events:none;
}
.eyebrow{
  color:var(--red-soft);
  font-size:.82rem;
  margin-bottom:14px;
}
.hero-copy h1{
  margin:0 0 14px;
  font-family:Orbitron,sans-serif;
  font-weight:800;
  font-size:clamp(2.5rem,5vw,4.7rem);
  line-height:.95;
  letter-spacing:.05em;
}
.hero-text,.copy-block p,.category-card p,.module-copy p,.panel-card p,.package-card p{
  color:var(--muted);
  line-height:1.85;
}
.hero-specs{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.spec-box{
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01)),
    linear-gradient(90deg, rgba(227,58,58,.04), rgba(255,255,255,.02));
}
.spec-box span,.section-label,.mini-panel span{
  display:block;
  color:#b4bac4;
  font-size:.68rem;
}
.spec-box span{
  margin-bottom:8px;
}
.spec-box strong{
  display:block;
  font-family:Orbitron,sans-serif;
  font-size:1.12rem;
  letter-spacing:.06em;
}
.spec-box small{
  color:#8f96a3;
}
.hero-actions{
  display:flex;
  gap:12px;
  margin-top:24px;
  flex-wrap:wrap;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 18px;
  border-radius:999px;
  border:1px solid transparent;
  font-family:Orbitron,sans-serif;
  font-size:.78rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.btn.primary{
  background:linear-gradient(180deg, var(--red-soft), var(--red));
  color:#fff;
  box-shadow:0 14px 30px rgba(227,58,58,.24);
}
.btn.secondary{
  background:rgba(255,255,255,.05);
  color:#fff;
  border-color:var(--line);
}
.frame-tech,.studio-card{
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  box-shadow:var(--shadow);
}
.frame-tech{
  padding:14px;
}
.hero-media img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
}
.section-label{
  color:var(--text);
  margin-bottom:14px;
  padding-left:2px;
}
.section-label.red{color:var(--red-soft)}
.copy-block h2,.cta-shell h2,.panel-card h3{
  margin:0 0 12px;
  font-family:Orbitron,sans-serif;
  font-size:clamp(1.4rem,2vw,2.2rem);
  letter-spacing:.04em;
}
.featured-grid{
  margin-top:16px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.white-bg{
  background:
    linear-gradient(180deg, #f9fafb, #eef1f4);
  padding:10px;
}
.studio-card img{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#fff;
}
.intro-strip-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.mini-panel{
  padding:16px 18px;
}
.mini-panel strong{
  display:block;
  margin-top:8px;
  font-family:Orbitron,sans-serif;
  font-size:.92rem;
  letter-spacing:.05em;
}
.progress-bar{
  margin:8px 0 18px;
  position:relative;
  height:24px;
}
.progress-track{
  position:absolute;left:0;right:0;top:10px;height:3px;
  background:linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,255,255,.2));
}
.progress-fill{
  position:absolute;left:0;top:10px;height:3px;width:72%;
  background:linear-gradient(90deg, var(--red), var(--red-soft), rgba(255,255,255,.3));
  box-shadow:0 0 20px rgba(227,58,58,.45);
}
.timeline-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.timeline-card{
  padding:18px;
}
.timeline-card strong{
  display:block;
  font-family:Orbitron,sans-serif;
  font-size:1.4rem;
  letter-spacing:.06em;
}
.timeline-card span{
  display:block;
  color:#d2d7df;
  margin-top:6px;
  font-size:.8rem;
  letter-spacing:.14em;
}
.module-grid{
  display:grid;
  gap:18px;
}
.module-card{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  padding:18px;
}
.module-card.reverse .module-copy{order:2}
.module-card.reverse figure{order:1}
.module-kicker{
  color:var(--red-soft);
  font-size:.74rem;
  margin-bottom:14px;
}
.module-copy h3{
  margin:0 0 12px;
  font-family:Orbitron,sans-serif;
  letter-spacing:.05em;
  font-size:1.7rem;
}
.module-copy ul,.panel-card ul{
  margin:12px 0 0;
  padding-left:18px;
  color:#d7dce4;
  line-height:1.85;
}
.tall{min-height:420px}
.kit-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:16px;
}
.panel-card{
  padding:24px;
}
.kit-points{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.kit-points article{
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03);
}
.kit-points span{
  display:inline-block;
  margin-right:10px;
  color:var(--red-soft);
  font-family:Orbitron,sans-serif;
  font-size:.72rem;
}
.asset-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr .95fr;
  gap:14px;
}
.asset-grid .studio-card{
  min-height:320px;
}
.package-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.package-card{
  padding:22px;
}
.package-card.highlight{
  border-color:rgba(227,58,58,.35);
  background:
    linear-gradient(180deg, rgba(227,58,58,.08), rgba(255,255,255,.01)),
    linear-gradient(180deg, rgba(14,17,23,.92), rgba(9,11,15,.95));
}
.package-card span{
  display:inline-block;
  color:var(--red-soft);
  font-family:Orbitron,sans-serif;
  font-size:.72rem;
  letter-spacing:.18em;
  margin-bottom:12px;
}
.package-card h3{
  margin:0 0 10px;
  font-family:Orbitron,sans-serif;
  letter-spacing:.05em;
  font-size:1.05rem;
}
.video-frame{
  padding:14px;
}
.cta-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-color:rgba(227,58,58,.22);
  background:
    linear-gradient(90deg, rgba(227,58,58,.12), rgba(255,255,255,.02)),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)),
    linear-gradient(180deg, rgba(14,17,23,.92), rgba(9,11,15,.95));
}
.cta-shell p{
  color:var(--muted);
}
@media (max-width:1150px){
  .hero-grid,.featured-grid,.timeline-grid,.asset-grid,.package-grid,.hero-specs,.intro-strip-grid,.kit-grid,.module-card{
    grid-template-columns:1fr;
  }
  .hero-media img{
    min-height:380px;
  }
  .module-card.reverse .module-copy,
  .module-card.reverse figure{
    order:initial;
  }
}
@media (max-width:900px){
  .header-inner{
    grid-template-columns:1fr;
    padding:14px 0;
  }
  .header-nav{
    justify-content:center;
    flex-wrap:wrap;
  }
  .header-brand{
    justify-self:center;
  }
  .cta-shell{
    flex-direction:column;
    align-items:flex-start;
  }
}


.trust-section{padding:18px 0 0}
.trust-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.trust-card{
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.1);
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)),
    linear-gradient(180deg, rgba(14,17,23,.92), rgba(9,11,15,.95));
  box-shadow:var(--shadow);
}
.trust-card span{
  display:block;
  color:#b4bac4;
  font-family:Orbitron,sans-serif;
  font-size:.68rem;
  letter-spacing:.16em;
}
.trust-card strong{
  display:block;
  margin-top:8px;
  font-family:Orbitron,sans-serif;
  font-size:.92rem;
  letter-spacing:.05em;
}
.faq-section{padding:26px 0 0}
@media (max-width:1150px){
  .trust-grid{grid-template-columns:1fr}
}


.sticky-cta{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:50;
}
.sticky-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 18px;
  border-radius:999px;
  background:linear-gradient(180deg, var(--red-soft), var(--red));
  color:#fff;
  box-shadow:0 18px 34px rgba(227,58,58,.28);
  font-family:Orbitron,sans-serif;
  font-size:.76rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.comparison-section,.program-inquiry-section{
  padding:26px 0 0;
}
.comparison-table-wrap{
  overflow:auto;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)),
    linear-gradient(180deg, rgba(14,17,23,.92), rgba(9,11,15,.95));
  box-shadow:var(--shadow);
}
.comparison-table{
  width:100%;
  border-collapse:collapse;
  min-width:760px;
}
.comparison-table th,
.comparison-table td{
  padding:16px 18px;
  border-bottom:1px solid rgba(255,255,255,.08);
  text-align:left;
  vertical-align:top;
}
.comparison-table th{
  font-family:Orbitron,sans-serif;
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#dfe4ec;
}
.comparison-table td{
  color:var(--muted);
  line-height:1.7;
}
.inquiry-panel{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:18px;
  align-items:center;
}
.inquiry-actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
@media (max-width:980px){
  .sticky-cta{
    left:16px;
    right:16px;
    bottom:16px;
  }
  .sticky-cta a{
    width:100%;
  }
  .inquiry-panel{
    grid-template-columns:1fr;
  }
  .inquiry-actions{
    justify-content:flex-start;
  }
}
