
:root { --font-archivo: Arial, Helvetica, sans-serif; --font-display: "Arial Black", Arial, sans-serif; --ink:#111413; --paper:#f3f1ea; --white:#fffefa; --acid:#d7ff2f; --orange:#ff5a26; --muted:#a6ada7; --line:rgba(17,20,19,.16); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-archivo),Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.section { padding-block:112px; }

.hero { min-height:820px; background:var(--ink); color:var(--white); position:relative; overflow:hidden; }
.hero::before { content:""; position:absolute; inset:0; opacity:.075; background-image:linear-gradient(rgba(255,255,255,.9) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.9) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to right,transparent 10%,black 85%); }
.nav { height:92px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.16); position:relative; z-index:1; }
.brand { display:inline-flex; align-items:center; gap:12px; }
.brand-mark { background:var(--acid); color:var(--ink); font-family:var(--font-display); font-size:17px; letter-spacing:-1px; padding:9px 8px 7px; transform:skew(-5deg); }
.brand-name { font-weight:800; font-size:12px; line-height:1.05; text-transform:uppercase; letter-spacing:.08em; }
.nav-links { display:flex; gap:34px; font-size:12px; letter-spacing:.12em; font-weight:700; text-transform:uppercase; }
.nav-links a, footer a { transition:color .2s ease; }
.nav-links a:hover, footer a:hover { color:var(--acid); }
.status-pill { border:1px solid rgba(255,255,255,.25); padding:10px 14px; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.status-pill i,.launch-card i { display:inline-block; width:7px; height:7px; margin-right:8px; border-radius:50%; background:var(--acid); box-shadow:0 0 0 4px rgba(215,255,47,.1); }
.hero-grid { display:grid; grid-template-columns:1.45fr .65fr; gap:88px; padding-top:112px; padding-bottom:132px; align-items:center; position:relative; z-index:1; }
.eyebrow { display:flex; align-items:center; gap:14px; font-size:11px; font-weight:800; letter-spacing:.2em; text-transform:uppercase; color:var(--acid); }
.eyebrow::before { content:""; width:38px; height:3px; background:var(--acid); }
h1 { font-family:var(--font-display); font-size:clamp(60px,7.5vw,112px); line-height:.87; letter-spacing:-.055em; text-transform:uppercase; margin:28px 0 30px; max-width:820px; }
h1 em,.closing h2 em { font-style:normal; color:var(--acid); }
.hero-lede { max-width:690px; color:#c2c7c3; font-size:19px; line-height:1.65; margin:0; }
.hero-actions { display:flex; align-items:center; gap:34px; margin-top:42px; }
.button { display:inline-flex; align-items:center; gap:26px; padding:18px 22px; font-size:12px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.button-primary { background:var(--acid); color:var(--ink); box-shadow:6px 6px 0 var(--orange); transition:transform .2s ease,box-shadow .2s ease; }
.button-primary:hover { transform:translate(3px,3px); box-shadow:3px 3px 0 var(--orange); }
.text-link { font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; border-bottom:1px solid rgba(255,255,255,.4); padding-bottom:5px; }
.text-link span { color:var(--acid); }
.hero-panel { border:1px solid rgba(255,255,255,.2); background:rgba(17,20,19,.72); padding:26px; position:relative; transform:rotate(1deg); box-shadow:14px 14px 0 rgba(255,90,38,.85); }
.panel-topline { display:flex; justify-content:space-between; color:var(--muted); font-size:9px; letter-spacing:.2em; font-weight:800; }
.panel-statement { font-family:var(--font-display); font-size:30px; line-height:1.1; text-transform:uppercase; margin:74px 0 28px; }
.signal-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(255,255,255,.2); border-left:1px solid rgba(255,255,255,.2); }
.signal-grid div { padding:16px; border-right:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); }
.signal-grid strong { color:var(--acid); display:block; font-size:16px; }
.signal-grid span { color:var(--muted); font-size:7px; letter-spacing:.12em; }
.panel-stripe { height:8px; margin-top:22px; background:repeating-linear-gradient(135deg,var(--acid),var(--acid) 10px,var(--ink) 10px,var(--ink) 18px); }
.hero-rail { position:absolute; left:0; right:0; bottom:0; background:var(--acid); color:var(--ink); padding:16px 0; transform:rotate(-.3deg) scale(1.01); transform-origin:center; }
.rail-inner { display:flex; justify-content:space-between; align-items:center; font-size:10px; font-weight:900; letter-spacing:.12em; }
.rail-inner i { width:5px; height:5px; border-radius:50%; background:var(--ink); }

.section-label { display:flex; align-items:center; gap:12px; font-size:10px; letter-spacing:.2em; font-weight:900; text-transform:uppercase; color:#626863; }
.section-label span { color:var(--orange); }
.section-label.light { color:#929a94; }
.manifesto-copy { display:grid; grid-template-columns:1fr 1fr; gap:100px; margin-top:58px; }
.kicker { font-family:var(--font-display); font-size:clamp(38px,4vw,62px); line-height:1; text-transform:uppercase; letter-spacing:-.035em; margin:0; }
.kicker strong { color:var(--orange); }
.manifesto-body { border-left:1px solid var(--line); padding-left:48px; font-size:18px; line-height:1.65; }
.manifesto-body p:first-child { font-weight:750; font-size:22px; margin-top:0; }
.truth-bar { margin-top:72px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; gap:20px; padding:22px 0; }
.truth-icon { width:34px; height:34px; display:grid; place-items:center; background:var(--orange); color:white; font-weight:900; font-size:20px; transform:rotate(3deg); }
.truth-bar p { margin:0; font-size:13px; }
.truth-bar strong { margin-right:16px; letter-spacing:.1em; font-size:10px; }

.programs { background:#171b19; color:var(--white); }
.section-heading { display:grid; grid-template-columns:1.4fr .6fr; align-items:end; gap:60px; }
.section-heading h2,.method h2,.experience h2,.closing h2 { font-family:var(--font-display); font-size:clamp(44px,5vw,72px); line-height:.95; letter-spacing:-.04em; text-transform:uppercase; margin:28px 0 0; }
.section-heading>p { color:#aeb4af; font-size:17px; line-height:1.6; margin:0 0 4px; }
.program-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:64px; border-left:1px solid rgba(255,255,255,.16); }
.program-card { padding:34px; border-top:1px solid rgba(255,255,255,.16); border-right:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); position:relative; min-height:500px; transition:background .25s ease,transform .25s ease; }
.program-card:hover { background:#202521; transform:translateY(-5px); }
.program-card-head { display:flex; justify-content:space-between; align-items:center; }
.program-card-head>span { font-family:var(--font-display); font-size:36px; color:var(--acid); }
.program-card-head small { border:1px solid rgba(255,255,255,.2); padding:6px 8px; letter-spacing:.12em; color:#aeb4af; }
.program-card h3 { font-size:26px; line-height:1.1; text-transform:uppercase; margin:50px 0 20px; max-width:270px; }
.program-card>p { color:#aeb4af; line-height:1.55; }
.program-card ul { list-style:none; padding:0; margin:28px 0 48px; }
.program-card li { border-top:1px solid rgba(255,255,255,.12); padding:12px 0; color:#d4d8d4; font-size:13px; }
.program-card li::before { content:"+"; color:var(--acid); font-weight:900; margin-right:12px; }
.coming-tag { position:absolute; left:34px; bottom:30px; color:var(--acid); font-weight:900; letter-spacing:.16em; font-size:9px; }
.catalog-note { text-align:center; margin:32px auto 0; color:#7f8781; font-size:12px; }

.method { display:grid; grid-template-columns:.8fr 1.2fr; gap:120px; }
.method-intro>p { line-height:1.6; color:#5e655f; max-width:480px; font-size:17px; }
.steps { border-top:1px solid var(--line); }
.step { display:grid; grid-template-columns:70px 1fr; gap:20px; padding:28px 0; border-bottom:1px solid var(--line); }
.step-number { color:var(--orange); font-family:var(--font-display); font-size:15px; }
.step h3 { font-size:21px; text-transform:uppercase; margin:0 0 7px; }
.step p { margin:0; color:#646b65; line-height:1.5; }

.experience { background:var(--orange); color:var(--ink); padding:105px 0; position:relative; overflow:hidden; }
.experience::after { content:"BSP"; position:absolute; right:-20px; bottom:-85px; font-family:var(--font-display); font-size:270px; color:rgba(17,20,19,.07); letter-spacing:-.08em; }
.experience-grid { display:grid; grid-template-columns:1fr 1fr; gap:120px; position:relative; z-index:1; }
.experience .section-label.light { color:rgba(17,20,19,.65); }
.experience .section-label span { color:var(--ink); }
.experience-copy>p:first-child { font-size:19px; line-height:1.65; margin-top:3px; }
blockquote { font-family:var(--font-display); font-size:27px; line-height:1.2; text-transform:uppercase; margin:38px 0 20px; padding-left:24px; border-left:6px solid var(--ink); }
.experience-copy .small { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }

.closing { display:grid; grid-template-columns:140px 1fr 300px; gap:60px; align-items:center; }
.closing-mark { font-family:var(--font-display); font-size:66px; color:var(--ink); background:var(--acid); display:grid; place-items:center; width:120px; height:120px; transform:rotate(-3deg); box-shadow:9px 9px 0 var(--orange); }
.closing-overline { letter-spacing:.18em; font-size:10px; font-weight:900; color:#777e78; }
.closing h2 { margin:14px 0 20px; }
.closing h2 em { color:var(--orange); }
.closing-copy { color:#5f665f; }
.launch-card { border:1px solid var(--line); padding:25px; box-shadow:7px 7px 0 var(--ink); }
.launch-card>span { display:block; font-size:9px; font-weight:900; letter-spacing:.16em; color:#727973; margin-bottom:14px; }
.launch-card strong { display:block; font-size:13px; }
.launch-card i { background:var(--orange); box-shadow:0 0 0 4px rgba(255,90,38,.12); }
.launch-card p { font-size:12px; line-height:1.5; color:#646b65; margin-bottom:0; }

footer { background:var(--ink); color:var(--white); padding:38px 0; }
.footer-inner { display:flex; justify-content:space-between; align-items:center; }
.footer-inner>p { color:#7f8781; font-size:12px; }
.footer-inner>a:last-child { font-size:9px; letter-spacing:.14em; font-weight:900; }

@media (max-width:900px) {
  .nav-links { display:none; }
  .hero { min-height:auto; }
  .hero-grid { grid-template-columns:1fr; gap:70px; padding:85px 0 145px; }
  .hero-panel { max-width:440px; }
  .rail-inner span:nth-of-type(3),.rail-inner span:nth-of-type(4),.rail-inner i:nth-of-type(2),.rail-inner i:nth-of-type(3) { display:none; }
  .manifesto-copy,.section-heading,.method,.experience-grid { grid-template-columns:1fr; gap:50px; }
  .program-grid { grid-template-columns:1fr; }
  .program-card { min-height:450px; }
  .closing { grid-template-columns:120px 1fr; }
  .launch-card { grid-column:1/-1; }
}

@media (max-width:600px) {
  .shell { width:min(100% - 30px,1180px); }
  .section { padding-block:76px; }
  .nav { height:78px; }
  .status-pill { display:none; }
  .hero-grid { padding-top:70px; }
  h1 { font-size:clamp(52px,16vw,74px); }
  .hero-lede { font-size:16px; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:26px; }
  .hero-panel { margin-right:12px; }
  .rail-inner { justify-content:space-around; }
  .manifesto-copy { gap:34px; }
  .manifesto-body { border-left:0; border-top:1px solid var(--line); padding:30px 0 0; }
  .truth-bar { align-items:flex-start; }
  .program-card { padding:26px; min-height:470px; }
  .coming-tag { left:26px; }
  .method { gap:50px; }
  .step { grid-template-columns:48px 1fr; }
  .experience { padding:78px 0; }
  .experience-grid { gap:38px; }
  .closing { grid-template-columns:1fr; gap:35px; }
  .closing-mark { width:92px; height:92px; font-size:48px; }
  .footer-inner { align-items:flex-start; gap:30px; flex-wrap:wrap; }
  .footer-inner>p { order:3; width:100%; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
