* {
  box-sizing:border-box}
body {
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:#112b49;
  background:#fff}
a {
  color:inherit}
header {
  background:#fff;
  border-bottom:1px solid #e4e8ee}
.wrap {
  max-width:1180px;
  margin:auto;
  padding:0 28px}
.head {
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px}
.logo {
  width:180px;
  max-height:74px;
  object-fit:contain}
.nav {
  display:flex;
  gap:12px;
  flex-wrap:wrap}
.nav a {
  border:2px solid #252b30;
  border-radius:8px;
  padding:12px 16px;
  text-decoration:none;
  text-align:center;
  font-size:14px;
  line-height:1.15;
  min-width:110px}
.nav a:hover,.nav a:focus-visible {
  background:#f2f6fc}
.hero {
  background:linear-gradient(115deg,#0a315b,#06407b);
  color:white}
.hero-inner {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
  min-height:430px}
.hero-copy {
  padding:64px 28px 64px 0}
.eyebrow {
  font-size:11px;
  letter-spacing:2px;
  color:#e8b858;
  font-weight:bold}
.hero h1 {
  font-size:clamp(34px,4vw,55px);
  line-height:1.04;
  margin:20px 0;
  letter-spacing:-1.5px}
.hero p {
  line-height:1.55;
  font-size:17px;
  color:#e6eff8}
.hero-photo {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center}
.actions {
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  margin-top:30px}
.gold {
  display:inline-block;
  background:#e6b454;
  color:#142c46;
  padding:15px 22px;
  text-decoration:none;
  font-weight:bold;
  border-radius:3px}
.explore {
  font-size:14px;
  color:white;
  text-underline-offset:5px}
.gallery {
  padding-top:34px;
  padding-bottom:45px}
.gallery h2 {
  font-size:27px;
  margin:0 0 20px}
.gallery-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px}
.gallery figure {
  margin:0}
.gallery img {
  width:100%;
  height:220px;
  object-fit:contain;
  background:#082f58}
.gallery figcaption {
  font-weight:bold;
  font-size:14px;
  padding-top:9px}
.footer {
  background:#092b4e;
  color:white}
.values {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:25px;
  padding-top:50px;
  padding-bottom:45px}
.values h3 {
  font-size:13px;
  letter-spacing:1.2px}
.values p {
  font-size:14px;
  line-height:1.6;
  color:#d2e0ee}
.bottom {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:30px;
  align-items:center;
  border-top:1px solid #31516c;
  padding-top:30px;
  padding-bottom:50px}
.bottom img.logo {
  filter:brightness(0) invert(1)}
.bottom .part {
  width:100%;
  max-width:220px;
  height:120px;
  object-fit:cover}
.bottom p {
  font-size:14px;
  line-height:1.8}
.bottom a {
  color:white}
.notice {
  background:#e6f4ea;
  color:#164628;
  padding:16px 28px}
.notice[hidden] {
  display:none}
.notice .wrap {
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap}
.notice a {
  color:#164628}
.simple {
  padding:80px 28px;
  min-height:45vh}
.simple h1 {
  font-size:42px}
@media(max-width:760px) {
  .head {
  flex-direction:column;
  padding-top:15px;
  padding-bottom:15px}
.nav {
  justify-content:center}
.nav a {
  min-width:calc(50% - 10px)}
.hero-inner {
  grid-template-columns:1fr}
.hero-copy {
  padding:45px 0}
.hero-photo {
  height:300px}
.gallery-grid {
  grid-template-columns:1fr}
.gallery img {
  height:240px}
.values {
  grid-template-columns:1fr 1fr}
.bottom {
  grid-template-columns:1fr 1fr}
}
@media(max-width:440px) {
  .values,.bottom {
  grid-template-columns:1fr}
}

/* October 2026 staging homepage refinements.
   Navigation visually aligned with approved Get a Quote page. */
.nav {
  gap: 9px;
  align-items: center;
}
.nav a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 42px;
  min-width: 0;
  padding: 9px 15px;
  border: 1px solid #123d70;
  border-radius: 0;
  background: #fff;
  color: #09294d;
  font-size: 12px;
  line-height: 1.2;
  font-weight: bold;
  text-decoration: none;
}
.nav a:hover, .nav a:focus-visible {
  background: #f2f6fc;
}
.nav a.nav-cta {
  background: #09294d;
  color: #fff;
}
.nav a.nav-cta:hover, .nav a.nav-cta:focus-visible {
  background: #1454a0;
  color: #fff;
}
.gallery img {
  object-fit: contain;
  background: #252525;
}
/* Two-column footer after removal of redundant center image. */
.bottom {
  grid-template-columns: 1fr 1fr;
}
.bottom > :last-child {
  justify-self: end;
}
@media (max-width: 760px) {
  .nav a {
    min-width: calc(50% - 5px);
  }
  .bottom > :last-child {
    justify-self: start;
  }
}
@media (max-width: 440px) {
  .bottom {
    grid-template-columns: 1fr;
  }
}

/* Space Coast EDM unified palette and desktop navigation — staging 2026-10-24.
   Homepage only; does not modify RFQ forms or other pages. */
:root {
  --scedm-navy: #092d52;
  --scedm-gold: #e6b557;
}
.footer { background: var(--scedm-navy); }
.hero { background: var(--scedm-navy); }
.nav a {
  border-color: var(--scedm-navy);
  color: var(--scedm-navy);
  white-space: nowrap;
  min-height: 44px;
  font-size: 13px;
  padding: 10px 13px;
}
.nav a.nav-cta {
  background: var(--scedm-navy);
  border-color: var(--scedm-navy);
  color: #fff;
}
.nav a.nav-cta:hover, .nav a.nav-cta:focus-visible {
  background: #174a80;
  color: #fff;
}
.eyebrow { color: var(--scedm-gold); }
.gold { background: var(--scedm-gold); }
@media (max-width: 760px) {
  .nav { width: 100%; }
  .nav a {
    flex: 1 1 calc(50% - 9px);
    white-space: normal;
    min-width: 0;
  }
}

/* Header layout correction: keep navigation right-aligned and single-line. */
@media (min-width: 761px) {
  header .wrap { max-width: 1480px; }
  .head { flex-wrap: nowrap; }
  .head .nav {
    margin-left: auto;
    flex-wrap: nowrap;
    flex-shrink: 0;
    justify-content: flex-end;
  }
  .head .nav a {
    white-space: nowrap;
    flex-shrink: 0;
    min-width: max-content;
    padding: 10px 13px;
  }
}
