:root {
  /* Existing NADAR identity, not a new design system. */
  --navy: #12233d;
  --navy-deep: #0c1829;
  --cream: #f5efe0;
  --cream-warm: #faf6ec;
  --gold: #b8893f;
  --gold-deep: #8f6626;
  --gold-label: #805b22;
  --gold-bright: #f3c35f;
  --gold-soft: #d9bd85;
  --ink: #22303f;
  --ink-soft: #5d6b78;
  --font-display: "Zodiak", Georgia, serif;
  --font-body: "Supreme", "Helvetica Neue", sans-serif;
  --text-xs: .8125rem;
  --text-sm: .875rem;
  --text-base: clamp(1rem, .94rem + .2vw, 1.125rem);
  --text-xl: clamp(1.3rem, 1rem + .7vw, 1.625rem);
  --text-title: clamp(1.65rem, 1.25rem + 1vw, 2.125rem);
  --text-hero: clamp(2.1rem, 1.35rem + 2.7vw, 3.75rem);
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --shell: 1220px;
}
body { font-family: var(--font-body); font-size: var(--text-base); color: var(--ink); background: var(--cream); }
.shell { width: min(calc(100% - var(--space-16)), var(--shell)); margin-inline: auto; }
.skip-link {
  position: absolute; top: var(--space-4); left: var(--space-4); z-index: 5;
  padding: var(--space-3) var(--space-5); background: var(--navy); color: var(--cream-warm);
  transform: translateY(-180%);
}
.skip-link:focus { transform: translateY(0); }
.masthead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-6); padding-block: var(--space-8) var(--space-6); }
.brand { display: flex; gap: var(--space-5); align-items: center; text-decoration: none; min-width: 0; max-width: 100%; }
.brand-words { min-width: 0; }
.brand-seal { flex: 0 0 auto; width: 104px; height: 104px; object-fit: contain; }
.brand-name { display: block; color: var(--navy); font: 700 var(--text-xl)/1.2 var(--font-display); text-transform: uppercase; }
.brand-tag { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-top: var(--space-2); color: var(--gold-label); font-size: var(--text-xs); text-transform: uppercase; letter-spacing: .15em; }
.brand-tag span { font-size: .7em; }
.header-status {
  color: var(--gold-bright); background: var(--navy);
  padding: var(--space-3) var(--space-5);
  font-size: clamp(1.125rem, 1rem + .4vw, 1.5rem);
  line-height: 1.4; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; text-align: center;
}
.rule { display: flex; align-items: center; gap: var(--space-5); margin-bottom: var(--space-8); color: var(--gold); }
.rule span { height: 1px; flex: 1; background: color-mix(in srgb, var(--gold) 28%, transparent); }
.rule b { font-size: var(--text-xs); font-weight: 400; }
.hero { position: relative; isolation: isolate; min-height: 530px; display: grid; align-items: center; border-bottom: 1px solid var(--gold); background: var(--cream-warm); }
.hero-image { position: absolute; inset: 0; z-index: -2; }
.hero-image img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; background: var(--cream-warm); }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, var(--cream-warm) 5%, var(--cream-warm) 27%, rgba(250,246,236,.96) 39%, rgba(250,246,236,.65) 51%, rgba(250,246,236,.02) 73%); }
.hero-image figcaption { position: absolute; right: var(--space-4); bottom: var(--space-3); color: var(--cream-warm); background: var(--navy-deep); padding: var(--space-1) var(--space-2); font-size: var(--text-xs); }
.hero-copy { width: 54%; padding: var(--space-12) var(--space-8); }
h1 { color: var(--navy); font-family: var(--font-display); font-size: var(--text-hero); font-weight: 700; letter-spacing: -.035em; }
.hero-subtitle { font: 400 var(--text-xl)/1.5 var(--font-display); color: var(--gold-deep); margin-top: var(--space-3); }
.hero-intro { font-size: var(--text-base); max-width: 43ch; margin-top: var(--space-5); }
.launch-status { margin-top: var(--space-8); max-width: 440px; }
.launch-status h2 { font: 700 var(--text-base)/1.5 var(--font-body); color: var(--navy); max-width: 34ch; }
.launch-status p { margin-top: var(--space-2); color: var(--ink-soft); font-size: var(--text-sm); }
.mission { padding: var(--space-16) var(--space-8) var(--space-20); text-align: center; }
.mission h2 { font: 400 var(--text-title)/1.35 var(--font-display); color: var(--navy); }
.mission p { max-width: 70ch; margin: var(--space-5) auto 0; font-size: var(--text-base); }
.site-footer { background: var(--navy-deep); color: var(--cream-warm); border-top: 1px solid var(--gold); }
.footer-inner { display: flex; justify-content: space-between; align-items: center; gap: var(--space-8); padding-block: var(--space-8); }
.footer-name { font-size: var(--text-sm); letter-spacing: .08em; text-transform: uppercase; color: var(--gold-soft); }
.footer-contact { display: grid; justify-items: end; gap: var(--space-1); }
.contact-label { color: var(--gold-soft); font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; }
.footer-contact a { display: flex; align-items: center; min-height: 44px; font-size: var(--text-base); text-decoration-thickness: 1px; text-underline-offset: .2em; overflow-wrap: anywhere; }
.footer-contact a:hover { color: var(--gold-soft); }
.footer-contact a:focus-visible { outline-color: var(--gold-soft); }
@media (max-width: 900px) {
  .hero-copy { width: 66%; }
  .hero::before { background: linear-gradient(90deg, var(--cream-warm) 3%, rgba(250,246,236,.98) 35%, rgba(250,246,236,.9) 49%, rgba(250,246,236,.05) 85%); }
  .brand-seal { width: 88px; height: 88px; }
}
@media (max-width: 640px) {
  .shell { width: calc(100% - var(--space-8)); }
  .masthead { padding-block: var(--space-6) var(--space-5); gap: var(--space-4); flex-wrap: wrap; }
  .brand { gap: var(--space-3); }
  .brand-seal { width: 80px; height: 80px; }
  .brand-name { font-size: var(--text-base); }
  .brand-tag { font-size: .75rem; gap: var(--space-1); letter-spacing: .08em; }
  .rule { margin-bottom: var(--space-5); gap: var(--space-3); }
  .hero { display: flex; flex-direction: column; min-height: 0; }
  .hero::before { display: none; }
  .hero-image { position: relative; z-index: auto; width: 100%; height: 208px; }
  .hero-image img { object-position: 50% 58%; }
  .hero-image figcaption { right: var(--space-2); bottom: var(--space-2); }
  .hero-copy { width: 100%; padding: var(--space-8) var(--space-5); }
  .hero-subtitle { margin-top: var(--space-3); }
  .hero-intro { margin-top: var(--space-4); }
  .launch-status { margin-top: var(--space-6); }
  .mission { padding: var(--space-10) var(--space-1) var(--space-12); }
  .footer-inner { flex-direction: column; align-items: flex-start; gap: var(--space-5); padding-block: var(--space-6); }
  .footer-contact { justify-items: start; }
}
@media (max-width: 359px) {
  .brand-seal { width: 62px; height: 62px; }
  .brand-tag { letter-spacing: 0; }
}
@media (min-width: 1800px) {
  .hero { min-height: 600px; }
}
