:root {
  --navy: #1B2A4A;
  --navy-dark: #111D33;
  --orange: #E87722;
  --orange-light: #F59340;
  --white: #FFFFFF;
  --off-white: #F7F8FA;
  --gray: #8A94A6;
  --light-gray: #E8ECF2;
  --success: #22C55E;
}

* { margin:0; padding:0; box-sizing:border-box; }

body {
  font-family:'Barlow',sans-serif;
  background:var(--navy);
  color:var(--white);
  min-height:100vh;
}

/* NAV */
nav {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 48px;
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(27,42,74,0.97);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,0.07);
}

.logo { display:flex; align-items:center; gap:12px; text-decoration:none; }

.logo-text {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800;
  font-size:20px;
  line-height:1.1;
  color:var(--white);
}

.logo-text span { color:var(--orange); }

.nav-links { display:flex; gap:32px; align-items:center; }

.nav-links a {
  color:rgba(255,255,255,0.7);
  text-decoration:none;
  font-size:14px;
  font-weight:500;
  transition:color 0.2s;
}

.nav-links a:hover { color:var(--white); }

.nav-cta {
  background:var(--orange) !important;
  color:var(--white) !important;
  padding:10px 22px;
  border-radius:6px;
  font-weight:600 !important;
  transition:background 0.2s !important;
}

.nav-cta:hover { background:var(--orange-light) !important; }

.hamburger {
  display:none;
  background:none;
  border:none;
  color:white;
  font-size:22px;
  cursor:pointer;
}

/* FOOTER */
footer {
  background:var(--navy-dark);
  border-top:1px solid rgba(255,255,255,0.08);
  padding:56px 48px 24px;
}

.footer-inner {
  display:flex;
  justify-content:space-between;
  gap:48px;
  margin-bottom:40px;
  flex-wrap:wrap;
}

.footer-brand p {
  color:rgba(255,255,255,0.45);
  font-size:13px;
  line-height:1.6;
  margin-top:10px;
  max-width:280px;
}

.footer-links { display:flex; gap:64px; }

.footer-col { display:flex; flex-direction:column; gap:10px; }

.footer-heading {
  font-size:11px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--orange);
  margin-bottom:4px;
}

.footer-col a {
  color:rgba(255,255,255,0.55);
  text-decoration:none;
  font-size:14px;
  transition:color 0.2s;
}

.footer-col a:hover { color:var(--white); }

.footer-bottom {
  border-top:1px solid rgba(255,255,255,0.07);
  padding-top:20px;
  color:rgba(255,255,255,0.3);
  font-size:12px;
  text-align:center;
}

/* SHARED SECTION HELPERS */
.section-label {
  font-size:12px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--orange);
  margin-bottom:12px;
}

.section-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(30px,4vw,52px);
  font-weight:800;
  line-height:1.05;
  margin-bottom:16px;
}

.section-sub {
  color:rgba(255,255,255,0.6);
  font-size:16px;
  line-height:1.6;
  max-width:520px;
  margin-bottom:48px;
}

.btn-primary {
  display:inline-block;
  background:var(--orange);
  color:var(--white);
  border:none;
  padding:15px 32px;
  border-radius:8px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:18px;
  font-weight:700;
  letter-spacing:0.5px;
  cursor:pointer;
  transition:all 0.2s;
  text-transform:uppercase;
  text-decoration:none;
}

.btn-primary:hover {
  background:var(--orange-light);
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(232,119,34,0.35);
}

/* MOBILE NAV */
@media (max-width:768px) {
  nav { padding:14px 16px; }
  .hamburger { display:block; }
  .nav-links {
    display:none;
    position:absolute;
    top:100%;
    left:0; right:0;
    background:var(--navy-dark);
    flex-direction:column;
    padding:20px;
    gap:16px;
    border-bottom:1px solid rgba(255,255,255,0.1);
  }
  .nav-links.open { display:flex; }
  footer { padding:40px 16px 20px; }
  .footer-inner { flex-direction:column; gap:32px; }
  .footer-links { gap:32px; }
}