/* ═══════════════════════════════════════════════
   NEW AGE CONSULTING GROUP, LLC — Global Styles
   ═══════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Montserrat:wght@300;400;500;600;700;800&display=swap');

:root {
  --navy:       #1a2356;
  --navy-deep:  #0f1530;
  --navy-mid:   #1e2d6b;
  --gold:       #b8902a;
  --gold-light: #d4a940;
  --gold-pale:  #f0d88a;
  --steel:      #4a6fa5;
  --steel-light:#7a9ec5;
  --cream:      #faf8f3;
  --white:      #ffffff;
  --gray-light: #f4f3f0;
  --gray-text:  #6b7280;
  --text-dark:  #1a1a2e;
  --shadow-sm:  0 4px 16px rgba(0,0,0,0.07);
  --shadow-md:  0 10px 40px rgba(0,0,0,0.12);
  --shadow-lg:  0 24px 64px rgba(0,0,0,0.18);
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  font-family:'Montserrat',sans-serif;
  background:var(--cream);
  color:var(--text-dark);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

/* ── NAVIGATION ─────────────────────────────── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:999;
  background:rgba(15,21,48,0.97);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(184,144,42,0.25);
  height:72px;
  display:flex; align-items:center;
  padding:0 6%;
  justify-content:space-between;
  transition:background 0.3s;
}
.nav-logo { height:50px; display:block; }
.nav-links {
  display:flex; align-items:center;
  gap:2.2rem; list-style:none;
}
.nav-links a {
  color:rgba(255,255,255,0.8);
  text-decoration:none;
  font-size:0.7rem; font-weight:600;
  letter-spacing:0.14em; text-transform:uppercase;
  transition:color 0.25s;
  position:relative; padding-bottom:2px;
}
.nav-links a::after {
  content:''; position:absolute; bottom:0; left:0;
  width:0; height:1px; background:var(--gold-light);
  transition:width 0.3s;
}
.nav-links a:hover { color:var(--gold-light); }
.nav-links a:hover::after { width:100%; }
.nav-links a.active { color:var(--gold-light); }
.nav-links a.active::after { width:100%; }
.nav-cta {
  background:var(--gold) !important;
  color:var(--white) !important;
  padding:0.55rem 1.4rem !important;
  border-radius:2px;
  letter-spacing:0.12em !important;
}
.nav-cta::after { display:none !important; }
.nav-cta:hover { background:var(--gold-light) !important; color:var(--navy-deep) !important; }

/* hamburger */
.nav-toggle {
  display:none; flex-direction:column;
  gap:5px; cursor:pointer; padding:4px;
}
.nav-toggle span {
  display:block; width:24px; height:2px;
  background:var(--white); border-radius:2px;
  transition:all 0.3s;
}
.nav-mobile {
  display:none; position:fixed;
  top:72px; left:0; right:0;
  background:var(--navy-deep);
  border-bottom:1px solid rgba(184,144,42,0.2);
  padding:1.5rem 6%;
  flex-direction:column; gap:1.2rem;
  z-index:998;
}
.nav-mobile.open { display:flex; }
.nav-mobile a {
  color:rgba(255,255,255,0.8); text-decoration:none;
  font-size:0.8rem; font-weight:600;
  letter-spacing:0.12em; text-transform:uppercase;
  padding:0.5rem 0; border-bottom:1px solid rgba(255,255,255,0.07);
}
.nav-mobile a:last-child { border-bottom:none; }

/* ── PAGE HERO (inner pages) ─────────────────── */
.page-hero {
  background:linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 60%, var(--navy-mid) 100%);
  padding:140px 6% 80px;
  position:relative; overflow:hidden;
}
.page-hero-bg {
  position:absolute; inset:0;
  background-image:
    radial-gradient(circle at 80% 50%, rgba(184,144,42,0.07) 0%, transparent 50%),
    radial-gradient(circle at 10% 80%, rgba(74,111,165,0.12) 0%, transparent 40%);
}
.page-hero-grid {
  position:absolute; inset:0; opacity:0.03;
  background-image:
    linear-gradient(var(--gold) 1px, transparent 1px),
    linear-gradient(90deg, var(--gold) 1px, transparent 1px);
  background-size:60px 60px;
}
.page-hero-inner {
  max-width:1100px; margin:0 auto;
  position:relative; z-index:2;
}
.page-hero-eyebrow {
  display:inline-block;
  font-size:0.65rem; font-weight:700;
  letter-spacing:0.28em; text-transform:uppercase;
  color:var(--gold-light);
  border-left:3px solid var(--gold);
  padding-left:1rem; margin-bottom:1.2rem;
}
.page-hero-title {
  font-family:'Playfair Display',serif;
  font-size:clamp(2.2rem,4.5vw,3.8rem);
  font-weight:900; line-height:1.1;
  color:var(--white); margin-bottom:1.2rem;
}
.page-hero-title em { color:var(--gold-light); font-style:italic; }
.page-hero-sub {
  font-size:1rem; line-height:1.85; font-weight:300;
  color:rgba(255,255,255,0.72); max-width:580px;
}

/* ── SECTION SHARED ─────────────────────────── */
.section { padding:100px 6%; }
.section-inner { max-width:1100px; margin:0 auto; }
.section-label {
  display:block; font-size:0.62rem; font-weight:700;
  letter-spacing:0.3em; text-transform:uppercase;
  color:var(--gold); margin-bottom:0.85rem;
}
.section-title {
  font-family:'Playfair Display',serif;
  font-size:clamp(1.9rem,3.2vw,2.9rem);
  font-weight:700; line-height:1.2;
  color:var(--navy-deep); margin-bottom:1.2rem;
}
.section-title.light { color:var(--white); }
.section-intro {
  font-size:1rem; line-height:1.9; font-weight:300;
  color:var(--gray-text); max-width:660px;
}
.divider {
  width:56px; height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-light));
  margin:1.4rem 0 2.8rem; border-radius:2px;
}

/* ── BUTTONS ────────────────────────────────── */
.btn-gold {
  display:inline-block;
  background:var(--gold); color:var(--white);
  padding:0.85rem 2rem; font-size:0.75rem;
  font-weight:700; letter-spacing:0.12em;
  text-transform:uppercase; text-decoration:none;
  border-radius:2px; border:2px solid var(--gold);
  transition:all 0.3s;
}
.btn-gold:hover { background:transparent; color:var(--gold-light); border-color:var(--gold-light); }
.btn-navy {
  display:inline-block;
  background:var(--navy-deep); color:var(--white);
  padding:0.85rem 2rem; font-size:0.75rem;
  font-weight:700; letter-spacing:0.12em;
  text-transform:uppercase; text-decoration:none;
  border-radius:2px; border:2px solid var(--navy-deep);
  transition:all 0.3s;
}
.btn-navy:hover { background:var(--gold); border-color:var(--gold); }
.btn-outline-white {
  display:inline-block;
  background:transparent; color:var(--white);
  padding:0.85rem 2rem; font-size:0.75rem;
  font-weight:700; letter-spacing:0.12em;
  text-transform:uppercase; text-decoration:none;
  border-radius:2px; border:2px solid rgba(255,255,255,0.35);
  transition:all 0.3s;
}
.btn-outline-white:hover { border-color:var(--white); background:rgba(255,255,255,0.08); }

/* ── REVEAL ANIMATION ───────────────────────── */
.reveal {
  opacity:0; transform:translateY(28px);
  transition:opacity 0.75s ease, transform 0.75s ease;
}
.reveal.visible { opacity:1; transform:translateY(0); }

/* ── FOOTER ─────────────────────────────────── */
footer {
  background:var(--navy-deep);
  border-top:1px solid rgba(184,144,42,0.2);
  padding:60px 6% 32px;
}
.footer-inner { max-width:1100px; margin:0 auto; }
.footer-top {
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1fr;
  gap:3rem; margin-bottom:3.5rem;
}
.footer-brand img { height:58px; margin-bottom:1rem; display:block; }
.footer-brand p {
  font-size:0.8rem; color:rgba(255,255,255,0.4);
  line-height:1.8;
}
.footer-col h4 {
  font-size:0.62rem; font-weight:700;
  letter-spacing:0.22em; text-transform:uppercase;
  color:var(--gold-light); margin-bottom:1.2rem;
}
.footer-col ul { list-style:none; }
.footer-col ul li { margin-bottom:0.65rem; }
.footer-col ul li a {
  font-size:0.8rem; color:rgba(255,255,255,0.42);
  text-decoration:none; transition:color 0.25s;
}
.footer-col ul li a:hover { color:var(--gold-light); }
.footer-bottom {
  border-top:1px solid rgba(255,255,255,0.07);
  padding-top:1.6rem;
  display:flex; justify-content:space-between;
  align-items:center; flex-wrap:wrap; gap:1rem;
}
.footer-copy { font-size:0.72rem; color:rgba(255,255,255,0.28); }
.footer-tagline {
  font-family:'Cormorant Garamond',serif;
  font-size:1rem; font-style:italic;
  color:rgba(184,144,42,0.55); letter-spacing:0.04em;
}

/* ── RESPONSIVE ─────────────────────────────── */
@media(max-width:960px){
  .footer-top { grid-template-columns:1fr 1fr; gap:2rem; }
}
@media(max-width:720px){
  .nav-links { display:none; }
  .nav-toggle { display:flex; }
  .section { padding:70px 5%; }
  .page-hero { padding:120px 5% 60px; }
  .footer-top { grid-template-columns:1fr; gap:2rem; }
}
