/* Free Growth Audit (2026-11-09): the landing page (page-free-growth-audit.php) and the site-wide band above the
   footer (footer.php). Its own file so a change here is not hidden behind style.css's theme-version cache key. */

/* ---------------------------------------------------------------- the band on every page */
.ga-band { background: var(--c-dark); color: rgba(255,255,255,0.78); padding: var(--s-9) 0; position: relative; overflow: hidden; }
.ga-band::after { content: ''; position: absolute; right: -120px; top: -120px; width: 420px; height: 420px; border-radius: 50%;
  background: radial-gradient(circle, rgba(237,30,36,0.28) 0%, rgba(237,30,36,0) 70%); pointer-events: none; }
.ga-band-inner { display: flex; align-items: center; justify-content: space-between; gap: var(--s-7); position: relative; z-index: 1; }
.ga-band h2 { color: #fff; font-size: var(--t-3xl); line-height: 1.12; letter-spacing: -0.02em; margin: var(--s-3) 0 var(--s-3); max-width: 720px; }
.ga-band h2 em { font-family: var(--font-serif); font-style: italic; font-weight: 400; color: var(--c-primary); }
.ga-band p { margin: 0; max-width: 620px; font-size: var(--t-base); line-height: 1.6; }
.ga-band .btn { flex: none; }
@media (max-width: 900px) {
  .ga-band { padding: var(--s-8) 0; }
  .ga-band-inner { flex-direction: column; align-items: flex-start; gap: var(--s-5); }
  .ga-band h2 { font-size: var(--t-2xl); }
}

/* ---------------------------------------------------------------- nav link */
.primary-nav-list li.nav-audit > a { color: var(--c-primary); }
.primary-nav-list li.nav-audit > a::before { content: ''; display: inline-block; width: 6px; height: 6px; border-radius: 50%;
  background: var(--c-primary); margin-right: 7px; vertical-align: middle; position: relative; top: -1px; }
.mobile-menu-overlay a.mobile-nav-audit { color: var(--c-primary); }

/* ---------------------------------------------------------------- the landing page */
.ga-page { overflow-x: clip; }
.ga-hero { padding: calc(var(--header-h) + var(--s-9)) 0 var(--s-9); background:
  linear-gradient(180deg, rgba(250,246,241,0) 0%, var(--c-cream) 100%); }
.ga-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: var(--s-8); align-items: start; }
.ga-hero h1 { font-size: var(--t-5xl); line-height: 1.02; letter-spacing: -0.035em; margin: var(--s-4) 0 var(--s-5); color: var(--c-dark); }
.ga-hero h1 em, .ga-page h2 em { font-family: var(--font-serif); font-style: italic; font-weight: 400; color: var(--c-primary); letter-spacing: -0.01em; }
.ga-hero .lede { font-size: var(--t-lg); line-height: 1.6; color: var(--c-text); max-width: 560px; margin: 0 0 var(--s-6); }
.ga-points { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-3); }
.ga-points li { position: relative; padding-left: 30px; font-size: var(--t-base); color: var(--c-text); }
.ga-points li::before { content: ''; position: absolute; left: 0; top: 4px; width: 18px; height: 18px; border-radius: 50%;
  background: var(--c-primary-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12.5L10 17.5L19 7.5' stroke='%23ED1E24' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat; }

.ga-form-card { background: #fff; border: 1px solid var(--c-border); border-radius: 28px; padding: var(--s-7) var(--s-6);
  box-shadow: 0 30px 80px -40px rgba(10,10,11,0.35); scroll-margin-top: calc(var(--header-h) + 24px); }
.ga-form-head h2 { font-size: var(--t-2xl); letter-spacing: -0.02em; margin: var(--s-4) 0 var(--s-1); color: var(--c-dark); }
.ga-form-head p { margin: 0 0 var(--s-5); color: var(--c-text-muted); }
.ga-form { display: grid; gap: var(--s-4); }
.ga-field { display: grid; gap: 6px; }
.ga-field span { font-size: var(--t-sm); font-weight: 600; color: var(--c-dark); }
.ga-field span em { font-family: var(--font-sans); font-style: normal; font-weight: 400; color: var(--c-text-muted); }
.ga-badge { display: inline-flex; align-items: center; gap: 8px; font-size: var(--t-xs); font-weight: 600; letter-spacing: .04em;
  color: var(--c-primary-dark); background: var(--c-primary-soft); border-radius: 999px; padding: 6px 12px; }
.ga-badge-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--c-primary); box-shadow: 0 0 0 4px rgba(237,30,36,0.15); }
.ga-field input { width: 100%; font: inherit; font-size: 1rem; padding: 14px 16px; border: 1px solid var(--c-border); border-radius: 14px;
  background: var(--c-soft); color: var(--c-dark); transition: border-color .2s ease, background .2s ease, box-shadow .2s ease; }
.ga-field input:focus { outline: none; border-color: var(--c-primary); background: #fff; box-shadow: 0 0 0 4px var(--c-primary-soft); }
.ga-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.ga-submit { width: 100%; justify-content: center; margin-top: var(--s-2); }
.ga-submit[disabled] { opacity: .7; cursor: wait; }
.ga-error { margin: 0; color: var(--c-primary-dark); font-size: var(--t-sm); font-weight: 500; }
.ga-fine { margin: 0; font-size: var(--t-xs); color: var(--c-text-muted); text-align: center; }
.ga-fine a { color: inherit; text-decoration: underline; }
.ga-done { text-align: center; padding: var(--s-6) 0 var(--s-2); }
.ga-done-check { display: inline-flex; width: 56px; height: 56px; border-radius: 50%; align-items: center; justify-content: center;
  background: var(--c-primary); color: #fff; }
.ga-done h2 { font-size: var(--t-2xl); margin: var(--s-4) 0 var(--s-3); color: var(--c-dark); }
.ga-done-text { color: var(--c-text); line-height: 1.6; margin: 0 0 var(--s-4); }

.ga-inside-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr); gap: var(--s-8); align-items: center; }
.ga-page h2 { font-size: var(--t-4xl); line-height: 1.06; letter-spacing: -0.03em; margin: var(--s-4) 0 var(--s-6); color: var(--c-dark); }
.ga-cards { display: grid; gap: var(--s-4); }
.ga-card { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: var(--s-4); padding: var(--s-5); border: 1px solid var(--c-border);
  border-radius: 20px; background: #fff; }
.ga-card-n { grid-row: span 2; font-family: var(--font-serif); font-style: italic; font-size: 2rem; color: var(--c-primary); line-height: 1; }
.ga-card h3 { margin: 0 0 6px; font-size: var(--t-lg); color: var(--c-dark); }
.ga-card p { margin: 0; color: var(--c-text-muted); line-height: 1.55; }
.ga-sample { margin: 0; }
.ga-sample img { width: 100%; height: auto; display: block; border-radius: 16px; border: 1px solid var(--c-border);
  box-shadow: 0 40px 90px -50px rgba(10,10,11,0.45); transform: rotate(1.2deg); }
.ga-sample figcaption { margin-top: var(--s-4); font-size: var(--t-xs); color: var(--c-text-muted); text-align: center; }

.ga-steps-list { list-style: none; counter-reset: gastep; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-5); }
.ga-steps-list li { counter-increment: gastep; background: #fff; border-radius: 20px; padding: var(--s-6) var(--s-5); color: var(--c-text-muted); line-height: 1.6; }
.ga-steps-list li::before { content: counter(gastep); display: inline-flex; width: 36px; height: 36px; border-radius: 50%; align-items: center;
  justify-content: center; background: var(--c-dark); color: #fff; font-weight: 700; margin-bottom: var(--s-4); }
.ga-steps-list strong { display: block; color: var(--c-dark); font-size: var(--t-lg); margin-bottom: 6px; }

.ga-why-inner { max-width: 860px; }
.ga-why-inner p { font-size: var(--t-lg); line-height: 1.7; color: var(--c-text); margin: 0; }

.ga-faq-inner { max-width: 860px; }
.ga-faq-list { border-top: 1px solid var(--c-border); }
.ga-faq-item { border-bottom: 1px solid var(--c-border); }
.ga-faq-item summary { cursor: pointer; list-style: none; padding: var(--s-5) 40px var(--s-5) 0; font-size: var(--t-lg); font-weight: 600;
  color: var(--c-dark); position: relative; }
.ga-faq-item summary::-webkit-details-marker { display: none; }
.ga-faq-item summary::after { content: '+'; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); font-size: 1.5rem;
  font-weight: 400; color: var(--c-primary); }
.ga-faq-item[open] summary::after { content: '\2212'; }
.ga-faq-item p { margin: 0 0 var(--s-5); color: var(--c-text-muted); line-height: 1.65; max-width: 720px; }
.ga-faq-cta { margin-top: var(--s-7); }

@media (max-width: 1024px) {
  .ga-hero-grid, .ga-inside-grid { grid-template-columns: minmax(0, 1fr); }
  .ga-sample { max-width: 520px; }
  .ga-steps-list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .ga-hero { padding: calc(var(--header-h) + var(--s-6)) 0 var(--s-7); }
  .ga-hero h1 { font-size: 2.6rem; }
  .ga-page h2 { font-size: 2rem; }
  .ga-form-card { padding: var(--s-6) var(--s-5); border-radius: 22px; }
  .ga-sample img { transform: none; }
}
