:root {
  --black: #070707;
  --ink: #10100f;
  --gold: #cbaa4d;
  --gold2: #e0c36f;
  --white: #fff;
  --muted: #bbb9b4;
  --line: rgba(203, 170, 77, 0.34);
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: var(--black);
  color: var(--white);
  font-family: Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}
h1,
h2,
h3,
h4,
p {
  margin-top: 0;
}
h1,
h2,
h3,
h4 {
  font-family: Georgia, "Times New Roman", serif;
}
.wrap {
  width: min(1500px, 92vw);
  margin: auto;
}
.eyebrow {
  font-size: 0.76rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 800;
}
.gold {
  color: var(--gold);
}
.serif {
  font-family: Georgia, "Times New Roman", serif;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.13em;
  border: 1px solid var(--gold);
  transition: 0.2s;
}
.btn-primary {
  background: var(--gold);
  color: #080808;
  font-size: 19px;
  line-height: 1.2;
  min-height: 52px;
  height: auto;
  padding: 14px 26px;
}
.btn-primary:hover {
  background: var(--gold2);
}
.btn-outline {
  color: var(--gold);
  font-size: 18px;
  line-height: 1.2;
  min-height: 48px;
  height: auto;
  padding: 13px 22px;
}
.btn-outline:hover {
  background: rgba(203, 170, 77, 0.09);
}
@media (max-width: 768px) {
  .btn-primary { font-size: 18px; }
  .btn-outline { font-size: 17px; }
}


nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(7, 7, 7, 0.96);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(10px);
}
.nav-inner,
.navigation-wraper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: nowrap;
}
.brand {
  font-family: Georgia, serif;
  color: var(--gold);
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 1rem;
  font-weight: 800;
  flex: 0 0 auto;
}
.nav-links {
  display: flex;
  gap: 14px;
  align-items: center;
  flex-wrap: nowrap;
  flex: 1 1 auto;
  justify-content: flex-end;
  min-width: 0;
}
.nav-links a {
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  flex: 0 0 auto;
}
body #kajabi-form .curated-privacy strong {
    display: block;
    margin-top: 6px;
    font-size: 17px !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #e6ad2f !important;
    font-weight: 400 !important;  text-align: center;
}
  body #kajabi-form .curated-privacy{
    margin-top:10px;
    font-size:.95rem;
    color:#fff;
    text-align: center;
  }body .contact-text .curated-privacy strong {
    display: block;
    margin-top: 6px;
    font-size: 17px !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #e6ad2f !important;
    font-weight: 400 !important;  text-align: center;
}
  body .contact-text .curated-privacy{
    margin-top:10px;
    font-size:.95rem;
    color:#fff;
    text-align: center;
  }
.nav-links a:hover {
  color: var(--gold);
}
.golden-brand-lockup {
  display: flex;
  align-items: center;
  gap: 14px;
}
.golden-brand-lockup a {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.golden-strategy-logo,
.brand .golden-strategy-logo,
nav .golden-strategy-logo {
  display: block !important;
  max-width: 128px;
  max-height: 72px;
  width: auto;
  height: auto;
  object-fit: contain;
  visibility: visible !important;
  opacity: 1 !important;
}
.nav-socials {
  flex: 0 0 auto;
  flex-wrap: nowrap;
}
nav .btn.btn-primary {
  white-space: nowrap;
  flex: 0 0 auto;
  padding-left: 18px;
  padding-right: 18px;
  font-size: 15px;
  min-height: 44px;
}
.nav-socials,
.footer-socials {
  display: flex;
  gap: 9px;
  align-items: center;
}
.nav-socials a,
.footer-socials a {
  width: 31px;
  height: 31px;
  border: 1px solid rgba(203, 170, 77, 0.65);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--gold);
}
.nav-socials svg,
.footer-socials svg {
  width: 17px;
  height: 17px;
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 1.6;
}
.nav-socials svg rect,
.nav-socials svg circle:not(.solid),
.footer-socials svg rect,
.footer-socials svg circle:not(.solid) {
  fill: none;
}
.nav-socials svg .solid,
.footer-socials svg .solid {
  fill: currentColor;
  stroke: none;
}
footer {
  padding: 38px 0;
  color: #85827b;
}
.footer-inner {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: center;
}
.footer-brand {
  display: flex;
  align-items: center;
  gap: 15px;
}
.footer-inner strong {
  color: var(--gold);
}

.nav-toggler {
  background: none;
  box-shadow: none;
  border: none;
  display: none;
}

.nav-toggler svg {
  fill: #fff;
}

.toggler-x-icon {
  transform: rotate(90deg);
  visibility: hidden;
  width: 0px;
  height: 0px;
}

.toggler-hamburg {
  visibility: visible;
  transition: transform 0.3s ease-in;
  width: 30px;
}

body:has(.mobile-nav-active) .toggler-hamburg {
  visibility: hidden;
  transform: rotate(180deg);
  width: 0px;
}

body:has(.mobile-nav-active) .toggler-x-icon {
  visibility: visible;
  width: 30px;
  height: 30px;
  transform: rotate(180deg);
  transition: transform 0.3s ease-in;
}

.mobile-nav-active {
  transform: translateX(0%) !important;
  transition: all 0.3s ease-in;
}

@media (max-width: 1200px) {
  .nav-toggler {
    display: block;
  }

  .nav-links,
  .navigation-wraper {
    align-items: flex-start;
    flex-direction: column;
  }
  .footer-inner,
  .footer-brand {
    flex-direction: column;
    align-items: flex-start;
  }

  .navigation-wraper {
    transform: translateX(-100%);
    transition: all 0.3s ease-in;
    width: 100%;
    padding: 40px 30px;
    background-color: #000;
    position: fixed;
    height: 100vh;
    top: 95px;
    right: 0;
    justify-content: left;
    align-items: flex-start;
    gap: 30px;
    border-top: 1px solid #cbaa4d42;
  }
}

/* UPDATED GOLDEN STRATEGY TYPOGRAPHY (client v2 reference) */
/* TYPOGRAPHY ONLY. Existing copy, layout, colors, graphics and H1 treatment are preserved. */

/* BODY */
body, p, li, input, textarea, select {
font-family: Arial, Helvetica, "Source Sans 3", sans-serif;
font-size: 20px;
line-height: 1.62;
font-weight: 400;
}

/* DO NOT CHANGE HERO H1 FONT */
h1, .hero h1, .hero h1 * {
font-family: Georgia, "Times New Roman", serif;
}

/* H2 + H3 kept on the serif display font (preserved, unchanged) */
h2, .section-title, h3, .section-subtitle, .card-title {
font-family: Georgia, "Times New Roman", serif;
}
h2, .section-title {
font-weight: 600;
font-size: clamp(38px, 3.4vw, 46px);
line-height: 1.12;
letter-spacing: -0.025em;
}
h3, .section-subtitle, .card-title {
font-weight: 600;
font-size: clamp(26px, 2.5vw, 32px);
line-height: 1.18;
letter-spacing: -0.018em;
}

/* Premium, highly legible secondary hierarchy. */
h4 {
font-family: "DM Sans", Arial, Helvetica, sans-serif;
}
h4, .eyebrow, .kicker, .overline, .section-label {
font-family: "DM Sans", Arial, Helvetica, sans-serif;
font-weight: 700;
font-size: 18px;
line-height: 1.30;
letter-spacing: 0.045em;
}

/* LEAD / INTRO COPY */
.lead,
.intro,
.hero-subtitle,
blockquote {
font-family: Arial, Helvetica, "Source Sans 3", sans-serif;
font-size: 22px;
line-height: 1.55;
}

/* BODY EMPHASIS */
strong, b { font-weight: 600; }

/* NAVIGATION + BUTTONS */
nav, nav a, .btn, button, .cta, .transform-cta, .authority, .path-label {
font-family: "DM Sans", Arial, Helvetica, sans-serif;
font-weight: 600;
}

/* SOURCES / FINE PRINT */
small, .small, .caption, .meta, .source, .footnote {
font-family: Arial, Helvetica, "Source Sans 3", sans-serif;
font-size: 16px;
line-height: 1.50;
}

/* Restore component-specific sizes so the change improves type without redesigning layout. */
.stat span { font-size: .78rem; line-height: 1.42; }
.stat small { font-size: .72rem; line-height: 1.4; }
.portrait-card p { font-size: 1rem; line-height: 1.58; }
.transform { font-size: 1.18rem; line-height: 1.6; }

/* MOBILE */
@media (max-width: 768px) {
body, p, li, input, textarea, select {
font-size: 19px;
line-height: 1.60;
}

.lead,
.intro,
.hero-subtitle,
blockquote {
font-size: 20px;
line-height: 1.55;
}

h2, .section-title {
font-size: clamp(30px, 7vw, 34px);
}

h3, .section-subtitle, .card-title {
font-size: clamp(23px, 6vw, 27px);
}

small, .small, .caption, .meta, .source, .footnote {
font-size: 15px;
}
}
