.hero { position: relative; min-height: 605px; color: var(--white); background: linear-gradient(0deg, rgba(0,20,48,.7), rgba(0,20,48,.35)), url('https://images.pexels.com/photos/9931200/pexels-photo-9931200.jpeg?auto=compress&cs=tinysrgb&w=1600') center/cover no-repeat; }
.hero-inner { position: relative; max-width: 1220px; margin: 0 auto; padding: 154px 24px 60px 24px; }
.hero-eyebrow { font-size: 17px; color: #dbe6f2; margin-bottom: 14px; max-width: 560px; }
.hero h1 { font-family: "REM", Arial, sans-serif; font-size: 64px; font-weight: 800; line-height: 1.25; max-width: 760px; }

.action-bar { background: var(--white); border-bottom: 1px solid var(--line); }
.action-bar-inner { max-width: 1220px; margin: 0 auto; padding: 16px 24px; display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.action-bar-label { font-weight: 700; color: var(--navy-deep); font-size: 14px; }
.action-bar-inner a { font-size: 14px; color: var(--slate); }
.action-bar-inner a:hover { color: var(--navy-deep); }
.action-bar-cta { margin-left: auto; background: var(--accent); color: var(--white); padding: 10px 20px; font-size: 14px; font-weight: 700; border-radius: 2px; }

.tile-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.tile { position: relative; height: 200px; display: flex; align-items: flex-end; padding: 20px; font-weight: 700; font-size: 16px; color: var(--white); background-size: cover; background-position: center; }
.tile::before { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,20,48,.75), rgba(0,20,48,.05)); }
.tile span { position: relative; }

.marquee-wrap { overflow: hidden; background: var(--bg-alt); padding: 30px 0; }
.marquee-track { display: flex; gap: 48px; align-items: center; opacity: .7; }
.marquee-track span { font-weight: 700; letter-spacing: 1px; color: var(--slate); font-size: 14px; white-space: nowrap; }

.ff-grid { display: grid; grid-template-columns: 550px 1fr; gap: 72px 50px; align-items: center; }
.ff-grid img { width: 100%; height: 380px; object-fit: cover; }
.ff-text h2 { font-family: "REM", Arial, sans-serif; font-size: 28px; margin-bottom: 16px; }
.ff-text p { color: var(--slate); font-size: 16px; margin-bottom: 18px; }
.ff-text a { color: var(--navy-deep); font-weight: 700; font-size: 14px; border-bottom: 2px solid var(--accent); padding-bottom: 3px; }

.contact-panel { background: var(--navy-deep); color: var(--white); border-radius: 4px; padding: 54px; display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.contact-panel h2 { font-family: "REM", Arial, sans-serif; font-size: 28px; margin-bottom: 14px; }
.contact-panel p { color: #c9d6e8; margin-bottom: 20px; }
.contact-form input, .contact-form textarea { width: 100%; padding: 13px 14px; margin-bottom: 12px; border: 1px solid #2c4a75; background: #0d3060; color: var(--white); font-family: inherit; font-size: 14px; }
.contact-form button { width: 100%; }

@media (max-width: 900px) {
  .tile-grid { grid-template-columns: repeat(2, 1fr); }
  .ff-grid, .contact-panel { grid-template-columns: 1fr; }
  .ff-grid img { height: 240px; }
  .footer-inner { grid-template-columns: 1fr 1fr; }
  .header-nav { display: none; }
  .hero h1 { font-size: 38px; }
  .hero-inner { padding-top: 100px; }
}
