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

:root {
  --navy: #0A1628;
  --navy-light: #111f38;
  --gold: #C9A84C;
  --gold-dim: rgba(201,168,76,0.15);
  --white: #FFFFFF;
  --gray: #B0B8C8;
  --dark: #070e1a;
}

html { scroll-behavior: smooth; }
body { background: var(--navy); color: var(--white); font-family: Georgia, 'Times New Roman', serif; line-height: 1.6; }

nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.2rem 4rem;
  background: rgba(10,22,40,0.97);
  border-bottom: 1px solid rgba(201,168,76,0.2);
  backdrop-filter: blur(10px);
}

.nav-logo {
  font-size: 18px;
  letter-spacing: 5px;
  color: var(--gold);
  text-decoration: none;
  font-family: Georgia, serif;
  line-height: 1.2;
}

.nav-links {
  display: flex;
  gap: 2.5rem;
  list-style: none;
  align-items: center;
}

.nav-links a {
  color: var(--gray);
  text-decoration: none;
  font-family: sans-serif;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  transition: color 0.2s;
}

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

.nav-cta {
  background: var(--gold) !important;
  color: var(--navy) !important;
  padding: 9px 22px !important;
  font-weight: bold !important;
  letter-spacing: 1.5px !important;
  white-space: nowrap;
}

.nav-cta:hover { background: #d4b05a !important; }

.gold-rule { width: 60px; height: 1px; background: var(--gold); margin: 1.5rem 0; }
.section-eyebrow { font-family: sans-serif; font-size: 10px; letter-spacing: 4px; color: var(--gold); text-transform: uppercase; margin-bottom: 1rem; }
.section-title { font-size: clamp(32px, 4vw, 52px); font-weight: 700; letter-spacing: 2px; line-height: 1.1; margin-bottom: 1.5rem; }
.section-body { font-family: sans-serif; font-size: 15px; color: var(--gray); line-height: 1.9; max-width: 580px; }

.btn-primary { background: var(--gold); color: var(--navy); padding: 16px 40px; font-family: sans-serif; font-size: 11px; letter-spacing: 2px; text-transform: uppercase; text-decoration: none; font-weight: bold; transition: background 0.2s; display: inline-block; }
.btn-primary:hover { background: #d4b05a; }
.btn-outline { border: 1px solid var(--gold); color: var(--gold); padding: 16px 40px; font-family: sans-serif; font-size: 11px; letter-spacing: 2px; text-transform: uppercase; text-decoration: none; transition: background 0.2s; display: inline-block; }
.btn-outline:hover { background: var(--gold-dim); }

footer { background: var(--dark); border-top: 1px solid rgba(201,168,76,0.15); padding: 3rem 4rem; display: flex; justify-content: space-between; align-items: center; }
.footer-logo { font-size: 16px; letter-spacing: 4px; color: var(--gold); }
.footer-copy { font-family: sans-serif; font-size: 11px; letter-spacing: 1px; color: var(--gray); }
.footer-markets { display: flex; gap: 6px; align-items: center; font-family: sans-serif; font-size: 9px; letter-spacing: 2px; color: var(--gray); }
.footer-markets .d { color: var(--gold); }

/* =====================
   MOBILE RESPONSIVE
   ===================== */
@media (max-width: 768px) {
  nav {
    padding: 1rem 1.5rem;
    flex-wrap: wrap;
    gap: 0.75rem;
  }

  .nav-logo {
    font-size: 14px;
    letter-spacing: 3px;
  }

  .nav-links {
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
  }

  .nav-links a {
    font-size: 9px;
    letter-spacing: 1px;
  }

  .nav-cta {
    padding: 7px 14px !important;
    font-size: 9px !important;
  }

  section, .page-hero {
    padding: 7rem 1.5rem 3rem !important;
  }

  .section-title {
    font-size: 28px !important;
  }

  .section-body {
    font-size: 14px !important;
  }

  /* Grids → single column */
  .services-grid,
  .markets-grid,
  .preview-grid,
  .testimonials-grid,
  .gallery-grid,
  .lease-features,
  .process-steps,
  .about-grid {
    grid-template-columns: 1fr !important;
    margin: 2rem 1.5rem !important;
    gap: 1rem !important;
  }

  /* Stats row */
  .hero-stats {
    flex-wrap: wrap;
    gap: 2rem !important;
    justify-content: center;
  }

  .stat-num { font-size: 28px; }

  /* Hero */
  .hero {
    padding: 7rem 1.5rem 3rem !important;
  }

  .hero-title {
    font-size: 52px !important;
    letter-spacing: 3px !important;
  }

  .hero-sub {
    font-size: 14px !important;
  }

  .btn-group {
    flex-direction: column;
    align-items: center;
  }

  .btn-primary, .btn-outline {
    width: 100%;
    text-align: center;
    padding: 14px 24px;
  }

  /* Markets */
  .market-city { font-size: 32px !important; }

  /* Process steps */
  .step { padding-top: 1rem; }
  .step-num { font-size: 36px; }

  /* Quote form */
  .quote-form {
    grid-template-columns: 1fr !important;
    margin: 2rem 0 0 !important;
  }

  .form-field.full { grid-column: 1 !important; }

  /* Footer */
  footer {
    flex-direction: column !important;
    gap: 1.5rem !important;
    text-align: center !important;
    padding: 2rem 1.5rem !important;
  }

  /* About grid */
  .why-box { margin-top: 2rem; }

  /* CTA band */
  .cta-band { padding: 3rem 1.5rem !important; }
  .cta-band h2 { font-size: 24px !important; }
}
