/* ROCI Modern Dark — design system v3 */
:root{
  --ink:#06111b;
  --ink-2:#081824;
  --navy:#0a1c2a;
  --navy-2:#0d2536;
  --panel:#102a3c;
  --panel-2:#0b202f;
  --white:#f7f9fb;
  --soft:#dce4ea;
  --muted:#9eafbc;
  --muted-2:#718592;
  --red:#ff2438;
  --red-dark:#d9182b;
  --line:rgba(255,255,255,.11);
  --line-strong:rgba(255,255,255,.18);
  --light:#f3f5f7;
  --light-2:#e9eef1;
  --light-ink:#0a1b29;
  --max:1280px;
  --radius:8px;
  --shadow:0 22px 60px rgba(0,0,0,.22);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
img{display:block;max-width:100%}
.container{width:min(calc(100% - 56px),var(--max));margin-inline:auto}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(4,13,21,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:background .28s ease,box-shadow .28s ease,border-color .28s ease}
.site-header.site-header-home{position:fixed;top:0;left:0;right:0;background:linear-gradient(180deg,rgba(3,10,16,.72),rgba(3,10,16,.08));backdrop-filter:blur(8px);border-bottom-color:rgba(255,255,255,.08)}
.site-header.site-header-home.scrolled{background:rgba(4,13,21,.96);backdrop-filter:blur(18px);box-shadow:0 10px 35px rgba(0,0,0,.22);border-bottom-color:var(--line)}
.nav{min-height:78px;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;gap:10px;margin-right:auto;min-width:max-content}
.logo-mark-image{width:30px;height:30px;object-fit:contain;flex:none}
.logo-mark{font-size:31px;font-weight:950;letter-spacing:-2.7px;line-height:1}
.brand-divider{width:1px;height:28px;background:rgba(255,255,255,.35)}
.brand-copy{font-size:9px;line-height:1.15;letter-spacing:1.35px;text-transform:uppercase;color:#c9d3da;font-weight:850}
.nav-links{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:750;color:#c5d0d7}
.nav-links a{position:relative;padding:29px 0}
.nav-links a:hover,.nav-links a.active{color:#fff}
.nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:19px;height:2px;background:var(--red)}
.menu-toggle{display:none;border:0;background:none;color:#fff;font-size:26px;line-height:1;padding:8px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 19px;border-radius:5px;border:1px solid transparent;font-size:12px;font-weight:900;letter-spacing:.55px;text-transform:uppercase;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 8px 24px rgba(255,36,56,.18)}
.btn-red:hover{background:#ff3d50}
.btn-outline{border-color:rgba(255,255,255,.42);color:#fff;background:transparent}
.btn-outline:hover{border-color:#fff;background:#fff;color:var(--ink)}
.btn-dark{border-color:rgba(6,17,27,.2);background:var(--light-ink);color:#fff}
.btn-dark:hover{background:#132d3f}
.btn-arrow::after{content:"→";font-size:16px;line-height:0}

/* Type */
.eyebrow,.kicker{font-size:11px;font-weight:900;letter-spacing:2.35px;text-transform:uppercase;color:var(--red)}
h1,h2,h3,h4{margin:0;line-height:.98;letter-spacing:-.045em}
h1{font-size:clamp(56px,7.2vw,104px);font-weight:950;text-transform:uppercase}
h2{font-size:clamp(40px,5vw,68px);font-weight:920;text-transform:uppercase}
h3{font-size:26px;font-weight:850}
.lead{font-size:19px;line-height:1.6;color:var(--soft);max-width:700px}
.copy{font-size:16px;color:var(--muted);max-width:720px}
.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}

/* Home hero */
.hero{position:relative;min-height:620px;display:flex;align-items:flex-end;overflow:hidden;background:#06131f}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(3,10,16,.98) 0%,rgba(3,10,16,.91) 34%,rgba(3,10,16,.52) 58%,rgba(3,10,16,.18) 100%),url("../assets/hero-launch.png");background-size:cover;background-position:center right}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,10,16,.05) 55%,rgba(3,10,16,.62) 100%);pointer-events:none}
.hero-content{position:relative;z-index:2;padding:148px 0 74px}
.hero h1{margin:17px 0 22px;max-width:1060px;font-size:clamp(54px,6.4vw,92px)}
.hero .lead{max-width:700px}
.hero-gridline{position:absolute;z-index:1;inset:auto 0 0;height:1px;background:var(--line)}
.hero-meta{display:flex;align-items:center;gap:18px;margin-top:39px;color:#a9bac5;font-size:11px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase}
.hero-meta span{width:4px;height:4px;border-radius:50%;background:var(--red)}

/* Decorative temporary visual */
.visual-scene{position:relative;overflow:hidden;background:
  linear-gradient(180deg,rgba(4,14,22,.05),rgba(4,14,22,.8)),
  radial-gradient(ellipse at 70% 62%,rgba(255,255,255,.12),transparent 5%),
  radial-gradient(ellipse at 76% 66%,rgba(255,36,56,.24),transparent 16%),
  linear-gradient(135deg,#102d40,#07131f 62%,#02070b)}
.visual-scene::before{content:"";position:absolute;left:7%;right:7%;bottom:0;height:24%;background:linear-gradient(180deg,transparent,#03080c 70%);border-top:1px solid rgba(255,255,255,.06)}
.visual-scene::after{content:"";position:absolute;right:22%;bottom:17%;width:10px;height:45%;background:linear-gradient(#bfcbd2,#fff 35%,#ff2438 36%,#ff2438 49%,#e8edf0 50%);clip-path:polygon(50% 0,82% 10%,72% 100%,28% 100%,18% 10%);box-shadow:0 0 45px rgba(255,255,255,.18)}

/* Feature strip */
.feature-strip{background:#071a29;border-block:1px solid var(--line)}
.features{display:grid;grid-template-columns:repeat(4,1fr)}
.feature{position:relative;padding:30px 26px 31px;border-right:1px solid var(--line);text-align:center;transition:background .2s ease,transform .2s ease}
.feature:last-child{border-right:0}
.feature:hover{background:rgba(255,255,255,.025)}
.feature-top{display:flex;align-items:center;justify-content:center;min-height:54px;margin-bottom:15px}
.feature-index{display:none}
.feature-icon{width:44px;height:44px;object-fit:contain;opacity:.96;transition:transform .2s ease}
.feature:hover .feature-icon{transform:translateY(-2px)}
.feature strong{display:block;font-size:15px;text-transform:uppercase;letter-spacing:.35px}
.feature p{margin:8px auto 0;color:var(--muted);font-size:13px;line-height:1.5;max-width:285px}

/* Sections */
.section{padding:112px 0}
.section-dark{background:var(--ink)}
.section-navy{background:var(--navy)}
.section-light{background:var(--light);color:var(--light-ink)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:44px}
.section-head h2{margin-top:10px}
.section-head .copy{max-width:560px}

/* Upcoming launches */
.upcoming-head{align-items:end}
.upcoming-head h2{max-width:720px}
.section-intro{margin:18px 0 0;color:var(--soft);font-size:17px;max-width:680px}
.upcoming-action{flex:0 0 auto;padding-bottom:2px}

/* Launch cards */
.launch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.launch-grid.count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.launch-grid.count-1{grid-template-columns:minmax(0,1fr);max-width:640px}
.launch-empty{padding:28px 0 0}

.launch-card{overflow:hidden;background:linear-gradient(180deg,#0c2231,#091b29);border:1px solid var(--line);border-radius:var(--radius);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.launch-card:hover{transform:translateY(-5px);border-color:var(--line-strong);box-shadow:var(--shadow)}
.launch-art{position:relative;aspect-ratio:16/9;overflow:hidden;background:#102a3c center/cover no-repeat}
.launch-art::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,9,14,.02) 35%,rgba(3,9,14,.28) 100%);pointer-events:none}
.launch-body{padding:23px 22px 24px}
.launch-type{color:var(--red);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:1.7px}
.launch-date{font-size:25px;font-weight:850;line-height:1.08;margin:9px 0 17px}
.launch-meta{display:grid;gap:7px;color:var(--muted);font-size:12px}
.launch-meta strong{color:#d7e0e5;font-weight:700}

/* Split / about */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:590px}
.split-copy{display:flex;flex-direction:column;justify-content:center;padding:90px clamp(34px,7vw,115px)}
.split-copy h2{margin-top:12px;max-width:650px}
.split-copy .lead{margin:26px 0 0;color:#435360;max-width:650px}
.split-media{position:relative;min-height:590px;overflow:hidden;background:#102a3c url("../assets/about-community.jpg") center/cover no-repeat}
.split-media::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,10,16,.02) 45%,rgba(3,10,16,.32) 100%),linear-gradient(90deg,rgba(3,10,16,.08),rgba(3,10,16,0) 35%);pointer-events:none}

/* Membership CTA */
.cta-band{position:relative;overflow:hidden;min-height:390px;background:#06131d url("../assets/membership-field.jpg") center 78% / cover no-repeat}
.cta-band::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,11,18,.96) 0%,rgba(3,11,18,.84) 30%,rgba(3,11,18,.46) 58%,rgba(3,11,18,.22) 100%),linear-gradient(180deg,rgba(3,11,18,.12),rgba(3,11,18,.42))}
.cta-band-inner{position:relative;z-index:2;min-height:390px;padding:72px 0;display:flex;align-items:center;justify-content:space-between;gap:50px}
.cta-band-copy{max-width:760px}
.cta-band h2{margin-top:12px}
.cta-band p{color:var(--soft);font-size:19px;max-width:630px}

/* Page hero */
.page-hero{position:relative;overflow:hidden;padding:122px 0 92px;background:linear-gradient(135deg,#081a28,#0c2939 58%,#050d14)}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 32%,rgba(255,36,56,.12),transparent 24%),linear-gradient(90deg,rgba(5,13,21,.35),rgba(5,13,21,.02))}
.page-hero .container{position:relative;z-index:2}
.page-hero h1{max-width:980px;margin-top:16px}
.page-intro{max-width:780px;color:var(--soft);font-size:19px;line-height:1.6;margin:24px 0 0}
.page-rule{height:1px;background:var(--line);margin-top:55px}

/* Content pages */
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:80px;align-items:start}
.prose{font-size:17px;color:#c8d2da}
.prose h2{font-size:34px;margin:0 0 18px}
.prose h2:not(:first-child){margin-top:54px}
.prose h3{font-size:23px;margin:35px 0 13px}
.prose p{max-width:800px;margin:0 0 18px}
.prose ul{padding-left:20px;color:#b8c5ce}
.prose li{margin:9px 0}
.side-card{background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 18px 45px rgba(0,0,0,.14)}
.side-card h3{font-size:21px;margin-bottom:17px}
.side-card p{font-size:13px;color:var(--muted);margin:10px 0}
.stat-list{display:grid;gap:0;margin-top:20px}
.stat{padding:17px 0;border-top:1px solid var(--line)}
.stat:last-child{border-bottom:1px solid var(--line)}
.stat span{display:block;color:var(--muted-2);font-size:10px;text-transform:uppercase;letter-spacing:1.6px;font-weight:900}
.stat strong{display:block;margin-top:4px;font-size:17px}

/* Resource cards */
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.resource-card{min-height:260px;display:flex;flex-direction:column;align-items:flex-start;padding:30px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius)}
.resource-number{font-size:11px;color:var(--red);font-weight:900;letter-spacing:1.8px}
.resource-card h3{margin-top:40px}
.resource-card p{color:var(--muted);font-size:14px;line-height:1.55;max-width:330px}
.resource-card .btn{margin-top:auto}

/* Membership */
.membership-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.membership-panel{padding:42px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius)}
.membership-panel h2{font-size:38px;margin-top:10px}
.membership-panel p{color:var(--muted);max-width:700px}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}
.price-card{padding:23px;background:#071722;border:1px solid var(--line);border-radius:6px}
.price-card .price{font-size:32px;font-weight:900;letter-spacing:-.04em}
.price-card .label{color:var(--muted-2);font-size:11px;text-transform:uppercase;letter-spacing:1.4px;font-weight:900}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-card{padding:36px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius)}
.contact-card h3{margin-top:10px}
.contact-card p{color:var(--muted);font-size:15px}
.contact-card.large{grid-column:span 2}

/* Footer */
.site-footer{background:#030a10;border-top:1px solid var(--line);padding:62px 0 28px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}
.footer-brand p{color:var(--muted);font-size:13px;max-width:450px;margin-top:22px}
.footer-heading{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;color:#d6dfe4;font-weight:900}
.footer-links{display:flex;flex-direction:column;gap:11px;margin-top:17px;color:#98aab6;font-size:13px}
.footer-links a:hover{color:#fff}
.copyright{border-top:1px solid var(--line);margin-top:52px;padding-top:22px;color:#627581;font-size:11px;display:flex;justify-content:space-between;gap:20px}

/* Mobile */
@media(max-width:980px){
  .container{width:min(calc(100% - 42px),var(--max))}
  .nav{min-height:70px}
  .site-header.site-header-home{position:fixed}
  .nav-links{display:none;position:absolute;top:70px;left:0;right:0;padding:10px 21px 20px;background:rgba(4,13,21,.98);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}
  .nav-links.open{display:flex}
  .nav-links a{padding:15px 3px}
  .nav-links a.active::after{display:none}
  .menu-toggle{display:block}
  .nav>.btn{display:none}
  .features{grid-template-columns:1fr 1fr}
  .feature:nth-child(2){border-right:0}
  .feature:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .launch-grid,.resource-grid{grid-template-columns:1fr 1fr}
  .split,.content-grid,.membership-layout{grid-template-columns:1fr}
  .split-media{min-height:450px}
  .cta-band-inner{display:block}
  .cta-band-inner .btn{margin-top:22px}
  .contact-grid{grid-template-columns:1fr}
  .contact-card.large{grid-column:auto}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .container{width:min(calc(100% - 32px),var(--max))}
  .brand-copy,.brand-divider{display:none}
  .logo-mark-image{width:27px;height:27px}
  .logo-mark{font-size:28px}
  .hero{min-height:590px}
  .hero::before{background-position:67% center}
  .hero-content{padding:104px 0 64px}
  h1{font-size:51px}
  .hero .lead{font-size:17px}
  .hero-meta{margin-top:32px;gap:11px;flex-wrap:wrap}
  .features,.launch-grid,.resource-grid{grid-template-columns:1fr}
  .feature,.feature:nth-child(2){border-right:0}
  .feature:nth-child(3){border-bottom:1px solid var(--line)}
  .feature-icon{width:42px;height:42px}
  .section{padding:78px 0}
  .section-head{display:block;margin-bottom:32px}
  .section-head .btn{margin-top:20px}
  .split-copy{padding:72px 24px}
  .split-media{min-height:340px}
  .cta-band-inner{padding:78px 0}
  .page-hero{padding:92px 0 68px}
  .page-hero h1{font-size:50px}
  .page-intro{font-size:17px}
  .content-grid{gap:35px}
  .price-grid{grid-template-columns:1fr}
  .membership-panel{padding:28px}
  .footer-grid{grid-template-columns:1fr}
  .copyright{display:block}
  .copyright span{display:block;margin-top:8px}
}

/* About page */
.about-section-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:70px;align-items:end;margin-bottom:50px}
.about-section-heading h2{margin-top:10px}
.about-section-intro{margin:0;color:var(--muted);font-size:17px;line-height:1.65;max-width:570px}
.launch-site-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.launch-site-copy{padding:34px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius)}
.launch-site-copy p{margin:0;color:var(--soft);font-size:16px;line-height:1.7;max-width:760px}
.launch-site-copy p+p{margin-top:18px}
.launch-site-facts{display:grid;grid-template-columns:1fr 1fr;background:#071722;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.launch-site-facts div{padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.launch-site-facts div:nth-child(2n){border-right:0}
.launch-site-facts div:nth-last-child(-n+2){border-bottom:0}
.launch-site-facts span{display:block;color:var(--muted-2);font-size:10px;text-transform:uppercase;letter-spacing:1.6px;font-weight:900}
.launch-site-facts strong{display:block;margin-top:7px;color:var(--white);font-size:15px;line-height:1.35}
.about-support{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.support-card{min-height:270px;padding:30px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column}
.support-number{color:var(--red);font-size:11px;font-weight:900;letter-spacing:1.8px}
.support-card h3{margin-top:42px;text-transform:uppercase}
.support-card p{margin:17px 0 0;color:var(--muted);font-size:14px;line-height:1.6}
.safety-note{margin-top:18px;padding:22px 25px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:var(--radius);color:var(--soft);font-size:14px}
.safety-note strong{color:#fff}
.about-leadership{background:var(--ink)}
.leadership-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.leader-card{padding:32px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius)}
.leader-role{color:var(--red);font-size:10px;font-weight:900;letter-spacing:1.7px;text-transform:uppercase}
.leader-card h3{margin-top:11px;font-size:29px;text-transform:uppercase}
.leader-card ul{list-style:none;padding:19px 0 0;margin:19px 0 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.65}
.leader-card li+li{margin-top:6px}
.about-values{border-top:1px solid #dce2e6}
.about-values .section-head{margin-bottom:0}
.about-values-copy{color:#4c5c68}

@media(max-width:980px){
  .about-section-heading,.launch-site-grid{grid-template-columns:1fr}
  .support-grid,.leadership-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .about-section-heading{gap:28px}
  .launch-site-facts{grid-template-columns:1fr}
  .launch-site-facts div,.launch-site-facts div:nth-child(2n){border-right:0}
  .launch-site-facts div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .launch-site-facts div:last-child{border-bottom:0}
  .support-grid,.leadership-grid{grid-template-columns:1fr}
  .support-card{min-height:0}
  .leader-card h3{font-size:25px}
}

/* Launch schedule page */
.launch-page-hero{background:#06131f url("../assets/launches-hero.jpg") center/cover no-repeat;min-height:430px;display:flex;align-items:flex-end}
.launch-page-hero::before{background:linear-gradient(90deg,rgba(3,10,16,.96) 0%,rgba(3,10,16,.84) 38%,rgba(3,10,16,.45) 68%,rgba(3,10,16,.22) 100%),linear-gradient(180deg,rgba(3,10,16,.16),rgba(3,10,16,.74))}
.launch-page-hero .container{width:min(calc(100% - 56px),var(--max));padding-bottom:0}
.launch-schedule-section{padding-top:96px}
.launch-schedule-head{align-items:end;margin-bottom:24px}
.launch-schedule-head h2{max-width:720px}
.launch-filters{display:flex;align-items:end;gap:12px;flex:0 0 auto}
.launch-filters label{display:flex;align-items:center;gap:10px;color:var(--muted-2);font-size:10px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase}
.launch-filters select{min-width:170px;height:44px;padding:0 34px 0 13px;border:1px solid var(--line-strong);border-radius:5px;background:#0b202f;color:#fff;font-weight:750;cursor:pointer}
.launch-filters select:focus{outline:2px solid rgba(255,36,56,.45);outline-offset:2px}
.launch-schedule-note{margin:0 0 38px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}
.schedule-month{margin-top:46px}
.schedule-month:first-child{margin-top:0}
.schedule-month>h3{font-size:18px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;color:#dbe4e9}
.schedule-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.schedule-row{display:grid;grid-template-columns:82px 132px minmax(0,1fr) auto;align-items:center;gap:24px;min-height:138px;padding:17px 20px;border-top:1px solid var(--line);background:linear-gradient(100deg,rgba(13,38,55,.8),rgba(7,23,34,.76));transition:background .2s ease,border-color .2s ease}
.schedule-row:first-child{border-top:0}
.schedule-row:hover{background:linear-gradient(100deg,rgba(16,45,64,.95),rgba(8,27,40,.95));border-color:var(--line-strong)}
.schedule-date{display:flex;flex-direction:column;align-items:flex-start}
.schedule-date strong{font-size:40px;line-height:.9;font-weight:950;letter-spacing:-.06em}
.schedule-date span{margin-top:9px;color:var(--red);font-size:10px;font-weight:900;letter-spacing:1.8px}
.schedule-thumb{width:132px;height:82px;border-radius:5px;background:#102a3c center/cover no-repeat;border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.schedule-info{min-width:0}
.schedule-organization{font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#fff}
.schedule-event-name{margin-top:4px;font-size:17px;font-weight:800;color:#dce5ea}
.schedule-location{margin-top:8px;color:var(--muted);font-size:13px}
.schedule-details{min-width:110px}
.schedule-status-cancelled .schedule-date strong,.schedule-status-cancelled .schedule-organization{color:#8b9aa4}
.schedule-status-cancelled .schedule-thumb{filter:grayscale(.8);opacity:.6}
.launch-empty-panel{padding:38px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted);text-align:center}

/* Individual launch event */
.event-hero{position:relative;overflow:hidden;background:#06131f url("../assets/launches-hero.jpg") center/cover no-repeat}
.event-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,16,.96) 0%,rgba(3,10,16,.86) 46%,rgba(3,10,16,.38) 100%),linear-gradient(180deg,rgba(3,10,16,.15),rgba(3,10,16,.82))}
.event-hero-inner{position:relative;z-index:2;padding:100px 0 86px}
.event-hero h1{max-width:920px;margin-top:18px;font-size:clamp(52px,6vw,88px)}
.event-subline{margin-top:18px;color:#eef3f6;font-size:20px;font-weight:750}
.event-location-line{margin-top:7px;color:#b5c4cd;font-size:15px}
.event-status{display:inline-flex;margin-top:20px;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#d9e3e8;background:rgba(5,15,23,.55);font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}
.event-status-scheduled{border-color:rgba(255,36,56,.45);color:#fff}
.event-status-completed{border-color:rgba(255,255,255,.18);color:#aebdc6}
.event-status-cancelled{border-color:rgba(255,36,56,.7);background:rgba(255,36,56,.12);color:#ff8793}
.event-status-postponed{border-color:rgba(255,176,71,.45);color:#ffd18d}
.event-main{padding-top:72px}
.event-feature-image{width:100%;aspect-ratio:21/8;min-height:280px;border:1px solid var(--line);border-radius:var(--radius);background:#102a3c center/cover no-repeat;box-shadow:var(--shadow)}
.event-image-empty{background:linear-gradient(135deg,#102d40,#07131f 62%,#02070b)}
.event-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:22px;margin-top:22px;align-items:start}
.event-details-panel,.event-location-panel{background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius);padding:34px}
.event-details-panel h2{font-size:40px;margin-top:10px}
.event-detail-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:30px;border-top:1px solid var(--line)}
.event-detail{padding:18px 18px 17px 0;border-bottom:1px solid var(--line)}
.event-detail:nth-child(even){padding-left:18px;border-left:1px solid var(--line)}
.event-detail span{display:block;color:var(--muted-2);font-size:10px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase}
.event-detail strong{display:block;margin-top:5px;color:#f5f8fa;font-size:16px}
.event-notes{margin-top:32px;color:var(--muted);font-size:15px}
.event-notes p{margin:10px 0 0}
.event-location-panel h3{font-size:23px;line-height:1.1;margin-top:10px}
.event-location-panel>p{color:var(--muted);font-size:14px;margin:13px 0 20px}
.event-map{height:250px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#071722;margin-bottom:18px}
.event-map iframe{width:100%;height:100%;border:0;display:block;filter:saturate(.75) contrast(1.05)}
.event-back{margin-top:26px}

@media(max-width:980px){
  .launch-page-hero{min-height:390px}
  .launch-filters{margin-top:22px}
  .launch-schedule-head{display:flex}
  .schedule-row{grid-template-columns:70px 110px minmax(0,1fr);gap:18px}
  .schedule-details{grid-column:3;justify-self:start;margin-top:10px}
  .event-layout{grid-template-columns:1fr}
}

@media(max-width:640px){
  .launch-page-hero{min-height:360px;background-position:62% center}
  .launch-page-hero .container{width:min(calc(100% - 32px),var(--max))}
  .launch-schedule-section{padding-top:70px}
  .launch-schedule-head{display:block}
  .launch-filters{display:block;margin-top:25px}
  .launch-filters label{display:flex;align-items:center;justify-content:space-between}
  .launch-filters select{min-width:0;width:190px}
  .launch-schedule-note{margin-bottom:28px}
  .schedule-row{grid-template-columns:64px 1fr;gap:14px;padding:18px 14px}
  .schedule-date{grid-row:span 2}
  .schedule-date strong{font-size:34px}
  .schedule-thumb{width:100%;height:90px;grid-column:2}
  .schedule-info{grid-column:2}
  .schedule-details{grid-column:2;margin-top:0;justify-self:start}
  .schedule-event-name{font-size:15px}
  .schedule-location{font-size:12px}
  .event-hero-inner{padding:80px 0 68px}
  .event-hero h1{font-size:50px}
  .event-subline{font-size:18px}
  .event-feature-image{aspect-ratio:16/9;min-height:0}
  .event-details-panel,.event-location-panel{padding:25px}
  .event-details-panel h2{font-size:34px}
  .event-detail-grid{grid-template-columns:1fr}
  .event-detail:nth-child(even){padding-left:0;border-left:0}
  .event-map{height:220px}
}

/* About ROCI page */
.about-hero{background:linear-gradient(135deg,#081a28,#0b2535 58%,#050d14)}
.about-overview{background:#040f18}
.about-overview-grid{gap:80px}
.about-glance-card{margin-top:0}
.about-launch-site{background:#071925;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:112px 0}
.about-launch-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:80px;align-items:center}
.about-launch-copy{max-width:820px}
.about-launch-copy h2{margin-top:10px;max-width:850px}
.about-launch-copy p{color:#c8d2da;font-size:17px;line-height:1.65;max-width:820px;margin:22px 0 0}
.about-launch-facts{display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius);padding:10px 28px;box-shadow:var(--shadow)}
.about-fact{padding:21px 0;border-bottom:1px solid var(--line)}
.about-fact:nth-child(odd){padding-right:20px}
.about-fact:nth-child(even){padding-left:20px;border-left:1px solid var(--line)}
.about-fact:nth-last-child(-n+2){border-bottom:0}
.about-fact span{display:block;color:var(--muted-2);font-size:10px;text-transform:uppercase;letter-spacing:1.6px;font-weight:900}
.about-fact strong{display:block;margin-top:6px;color:#f5f8fa;font-size:16px;line-height:1.35}
.about-support{background:#06131e}
.about-support-head{margin-bottom:48px}
.about-support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.about-support-card{min-height:275px;padding:31px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column}
.about-support-number{color:var(--red);font-size:11px;font-weight:900;letter-spacing:1.8px}
.about-support-card h3{font-size:27px;margin-top:42px}
.about-support-card p{color:var(--muted);font-size:15px;line-height:1.6;margin-top:13px}
.about-safety-note{margin-top:22px;padding:19px 22px;border-left:2px solid var(--red);background:rgba(13,38,55,.58);color:#b9c7cf;font-size:14px}
.about-safety-note strong{color:#fff}
.about-leadership{background:#040f18}
.about-leadership-head{margin-bottom:48px}
.about-leadership-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.about-person{min-height:235px;padding:31px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius)}
.about-person-role{color:var(--red);font-size:10px;text-transform:uppercase;letter-spacing:1.7px;font-weight:900}
.about-person h3{font-size:30px;margin-top:10px}
.about-person ul{margin:19px 0 0;padding-left:18px;color:#c0ccd3}
.about-person li{margin:8px 0;font-size:14px}
.about-get-involved{background:var(--light);color:var(--light-ink);padding:92px 0}
.about-get-involved-inner{display:flex;align-items:center;justify-content:space-between;gap:55px}
.about-get-involved-inner>div:first-child{max-width:760px}
.about-get-involved h2{margin-top:10px}
.about-get-involved p{color:#4c5c68;font-size:17px;line-height:1.6;margin-top:18px;max-width:720px}
.about-get-involved-actions{display:flex;gap:12px;flex:0 0 auto}
.about-get-involved .btn-outline{border-color:#173044;color:#102536}
.about-get-involved .btn-outline:hover{background:#102536;color:#fff}

@media(max-width:980px){
  .about-launch-grid{grid-template-columns:1fr;gap:40px}
  .about-support-grid,.about-leadership-grid{grid-template-columns:1fr 1fr}
  .about-get-involved-inner{display:block}
  .about-get-involved-actions{margin-top:28px}
}

@media(max-width:640px){
  .about-launch-site{padding:78px 0}
  .about-launch-facts{grid-template-columns:1fr;padding:8px 22px}
  .about-fact:nth-child(even){padding-left:0;border-left:0}
  .about-fact:nth-child(odd){padding-right:0}
  .about-fact:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .about-fact:last-child{border-bottom:0}
  .about-support-grid,.about-leadership-grid{grid-template-columns:1fr}
  .about-support-card{min-height:0}
  .about-get-involved{padding:76px 0}
  .about-get-involved-actions{display:flex;flex-direction:column;align-items:stretch}
}

/* Resources expansion */
.resource-links{width:100%;display:flex;flex-direction:column;gap:0;margin-top:auto;border-top:1px solid var(--line)}
.resource-links a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid var(--line);color:#dce5ea;font-size:12px;font-weight:800;line-height:1.35}
.resource-links a:hover{color:#fff}
.resource-links span{color:var(--red);font-size:13px;flex:0 0 auto}
.under-construction-panel{max-width:760px;padding:42px;background:linear-gradient(160deg,#0d2637,#091b29);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.under-construction-panel h2{margin-top:14px;font-size:clamp(34px,4vw,52px)}
.under-construction-panel p{max-width:620px;color:var(--muted);font-size:15px;line-height:1.7}
.under-construction-panel .btn{margin-top:24px}
@media(max-width:640px){
  .under-construction-panel{padding:30px 24px}
}

/* Light content sections — preserve readable text on white backgrounds */
.section-light .prose{color:#263746}
.section-light .prose h2{color:var(--light-ink)}
.section-light .prose h3{color:#1a2d3d}
.section-light .prose p{color:#4c5c68}
.section-light .prose strong{color:#1a2d3d}
.section-light .prose .kicker{color:var(--red)}
