:root {
  --bg: #0c0a07;
  --bg2: #110f0b;
  --panel: #161410;
  --ink: #f0ead8;
  --muted: #b8ad9a;
  --soft: #8a8070;
  --gold: #c8a96e;
  --gold2: #e8c98a;
  --line: rgba(200,169,110,.18);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 20px;
  line-height: 1.75;
}
body:before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .04;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  background-size: 180px;
  mix-blend-mode: overlay;
}
a { color: inherit; }
.header {
  min-height: 74vh;
  padding: 34px 6vw 11vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background:
    linear-gradient(to right, rgba(12,10,7,.95), rgba(12,10,7,.7)),
    url('/assets/archive-aircraft.svg') center/cover no-repeat;
}
.nav {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: flex-start;
  position: relative;
}
.brand {
  color: var(--ink);
  text-decoration: none;
  font-size: .92rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.nav-links {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
  justify-content: flex-end;
  max-width: 760px;
}
.nav-links a,
.mobile-menu-panel a {
  color: var(--muted);
  text-decoration: none;
  font-size: .74rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.nav-links a:hover,
.nav-links a:focus,
.mobile-menu-panel a:hover,
.mobile-menu-panel a:focus { color: var(--ink); }
.mobile-menu { display: none; position: relative; }
.mobile-menu summary {
  list-style: none;
  width: 46px;
  height: 46px;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: rgba(12,10,7,.72);
}
.mobile-menu summary::-webkit-details-marker { display: none; }
.mobile-menu summary span {
  display: block;
  width: 20px;
  height: 1px;
  background: var(--ink);
}
.mobile-menu-panel {
  position: absolute;
  right: 0;
  top: 54px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 250px;
  padding: 22px;
  background: rgba(12,10,7,.98);
  border: 1px solid var(--line);
  box-shadow: 0 20px 50px rgba(0,0,0,.35);
  z-index: 5;
}
.hero {
  max-width: 940px;
  padding-top: 16vh;
}
.eyebrow {
  color: var(--gold);
  font-size: .8rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin: 0 0 22px;
}
h1 {
  max-width: 980px;
  margin: 0 0 28px;
  font-size: clamp(3.1rem, 8vw, 7.5rem);
  line-height: .94;
  letter-spacing: -.055em;
}
.lede {
  max-width: 760px;
  color: var(--muted);
  font-size: clamp(1.25rem, 2.2vw, 1.6rem);
  line-height: 1.6;
  margin: 0;
}
main { background: var(--bg); }
.panel, .section {
  max-width: 980px;
  margin: 0 auto;
  padding: 10vh 6vw;
}
.panel {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: linear-gradient(135deg, rgba(200,169,110,.055), rgba(255,255,255,.015));
}
.section + .section, .panel + .section, .section + .panel { margin-top: 0; }
h2 {
  margin: 0 0 24px;
  font-size: clamp(2.1rem, 4vw, 4.2rem);
  line-height: 1.06;
  letter-spacing: -.035em;
}
p {
  max-width: 780px;
  margin: 0 0 22px;
  color: var(--muted);
}
ul {
  max-width: 760px;
  margin: 0;
  padding-left: 1.25em;
  color: var(--muted);
}
li { margin: 0 0 14px; }
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 15px 28px;
  background: var(--gold);
  color: var(--bg);
  text-decoration: none;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.note {
  color: var(--soft);
  font-size: .9rem;
}
.footer {
  border-top: 1px solid var(--line);
  padding: 34px 6vw;
  color: var(--soft);
  font-size: .85rem;
  letter-spacing: .02em;
}
.footer p { margin: 0; color: var(--soft); }
@media (max-width: 760px) {
  body { font-size: 18px; }
  .header { min-height: 72vh; padding: 24px 6vw 8vh; }
  .nav { display: flex; align-items: flex-start; }
  .brand { display: block; max-width: 210px; }
  .nav-links { display: none; }
  .mobile-menu { display: block; }
  .hero { padding-top: 10vh; }
  h1 { font-size: clamp(3rem, 14vw, 5rem); }
  .lede { font-size: 1.25rem; }
  .panel, .section { padding: 8vh 6vw; }
}
