/* ==========================================================
   Free GEO + SEO Audit - page-scoped overrides
   Scoped to body.page-geo-audit. Reuses --rek-* tokens from style.css.
   ========================================================== */

/* ---------------------------------------------------------
   Sticky header: always opaque on this page so nav stays
   readable after scrolling past the dark hero.
   --------------------------------------------------------- */
.page-geo-audit .site-header {
    background: rgba(11, 36, 71, 0.92);
    backdrop-filter: saturate(140%) blur(10px);
    -webkit-backdrop-filter: saturate(140%) blur(10px);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06), 0 6px 24px rgba(0, 0, 0, 0.18);
    transition: background 0.3s ease, box-shadow 0.3s ease;
}
.page-geo-audit .site-header.scrolled {
    background: #0b2447 !important;
    background-color: #0b2447 !important;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 30px rgba(0, 0, 0, 0.28);
}
.page-geo-audit .site-header .navbar-brand img {
    filter: brightness(0) invert(1);
}
.page-geo-audit .site-header .nav-link {
    color: rgba(255, 255, 255, 0.85) !important;
}
.page-geo-audit .site-header .nav-link:hover,
.page-geo-audit .site-header .nav-link.active {
    color: #ffffff !important;
}

/* ---------------------------------------------------------
   Section eyebrow labels: force to block so they stack above
   the inline-block .heading-animated h2.
   --------------------------------------------------------- */
.page-geo-audit small.text-uppercase.ls-2 {
    display: block;
    margin-bottom: 0.25rem;
}

/* ---------------------------------------------------------
   Hero: dark navy, full-bleed gradient
   --------------------------------------------------------- */
.page-geo-audit .banner {
    background: radial-gradient(ellipse at top left, #13315c 0%, #0b2447 55%, #061a38 100%);
    color: #fff;
    position: relative;
    overflow: hidden;
    padding-top: 180px !important;
}
.page-geo-audit .banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: 0.4;
    pointer-events: none;
}
.page-geo-audit .banner > .container-xl {
    position: relative;
    z-index: 1;
}
.page-geo-audit .banner h1 {
    color: #ffffff;
    font-weight: 700;
    letter-spacing: -0.01em;
}
.page-geo-audit .banner .lead {
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.98rem;
    line-height: 1.65;
    font-weight: 400;
}
@media (min-width: 992px) {
    .page-geo-audit .banner .lead {
        font-size: 1rem;
        line-height: 1.7;
    }
}
.page-geo-audit .banner .badge.bg-green {
    background: rgba(75, 162, 159, 0.18) !important;
    color: var(--rek-teal-light);
    border: 1px solid rgba(75, 162, 159, 0.35);
    font-weight: 600;
}
.page-geo-audit .banner .trust-badges .number {
    color: var(--rek-teal-light);
}
.page-geo-audit .banner .trust-badges .label {
    color: rgba(255, 255, 255, 0.6);
}

/* ---------------------------------------------------------
   Hero form card: glass panel on dark bg
   --------------------------------------------------------- */
.page-geo-audit .banner-form {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: var(--rek-radius-card);
    padding: 1.75rem;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;
    max-width: 100%;
}
.page-geo-audit .banner-form h2 {
    color: #ffffff;
}
.page-geo-audit .banner-form .text-muted {
    color: rgba(255, 255, 255, 0.55) !important;
}
.page-geo-audit .banner-form .form-control {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #ffffff;
}
.page-geo-audit .banner-form .form-control::placeholder {
    color: rgba(255, 255, 255, 0.4);
}
.page-geo-audit .banner-form .form-control:focus {
    background: rgba(255, 255, 255, 0.1);
    border-color: var(--rek-teal-light);
    color: #ffffff;
    box-shadow: 0 0 0 3px rgba(85, 181, 178, 0.2);
}
.page-geo-audit .banner-form .btn-green2 {
    background-color: var(--rek-teal) !important;
    border-color: var(--rek-teal) !important;
    color: #ffffff !important;
    font-weight: 600;
}
.page-geo-audit .banner-form .btn-green2:hover {
    background-color: var(--rek-teal-light) !important;
    border-color: var(--rek-teal-light) !important;
}
.page-geo-audit .banner-form .small a {
    color: var(--rek-teal-light) !important;
}

/* reCAPTCHA badge hidden (a11y contrast, matches free-seo-audit.html) */
.grecaptcha-badge {
    visibility: hidden !important;
}

/* ---------------------------------------------------------
   Platform chips (inside dark hero form)
   --------------------------------------------------------- */
.page-geo-audit .geo-platform-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}
.page-geo-audit .geo-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.9);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.3px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.page-geo-audit .geo-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
}

/* ---------------------------------------------------------
   Proof strip numbered eyebrow
   --------------------------------------------------------- */
.page-geo-audit .proof-number {
    font-family: "Outfit", sans-serif;
    font-size: 2.25rem;
    font-weight: 700;
    color: var(--rek-teal);
    line-height: 1;
    margin-bottom: 0.5rem;
    display: block;
}

/* ---------------------------------------------------------
   Pillar card numbered eyebrow
   --------------------------------------------------------- */
.page-geo-audit .pillar-eyebrow {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--rek-teal);
    display: block;
    margin-bottom: 0.75rem;
}

/* ---------------------------------------------------------
   Comparison card ribbon override for this page
   --------------------------------------------------------- */
.page-geo-audit .comparison-card.recommended::before {
    content: 'REK MARKETING & DESIGN';
}

/* ---------------------------------------------------------
   Audit preview - score tile layout
   --------------------------------------------------------- */
.page-geo-audit .audit-stat-block {
    flex: 1 1 140px;
    min-width: 140px;
}

/* ---------------------------------------------------------
   Dashboard section - caption on dark bg
   --------------------------------------------------------- */
.page-geo-audit .dashboard-caption {
    color: rgba(255, 255, 255, 0.6);
    font-style: italic;
    font-size: 0.85rem;
}

/* Report slideshow: 3-slide rotation. Override the global 16s/4-slide
   timing to 12s/3-slide timing (4 sec per slide). Navy bg matches the
   SVG dashboards' background so letterboxing blends. */
.page-geo-audit .report-slideshow {
    background: #0b2447 !important;
    background-color: #0b2447 !important;
    border: 1px solid rgba(255, 255, 255, 0.08);
}
.page-geo-audit .report-slideshow img {
    object-fit: contain !important;
    background: #0b2447;
    animation-duration: 12s !important;
}
.page-geo-audit .report-slideshow img:nth-child(1) { animation-delay: 0s !important; }
.page-geo-audit .report-slideshow img:nth-child(2) { animation-delay: 4s !important; }
.page-geo-audit .report-slideshow img:nth-child(3) { animation-delay: 8s !important; }
.page-geo-audit .report-dots span {
    animation-duration: 12s !important;
}
.page-geo-audit .report-dots span:nth-child(1) { animation-delay: 0s !important; }
.page-geo-audit .report-dots span:nth-child(2) { animation-delay: 4s !important; }
.page-geo-audit .report-dots span:nth-child(3) { animation-delay: 8s !important; }

/* ---------------------------------------------------------
   Reporting checklist - reusable check row
   --------------------------------------------------------- */
.page-geo-audit .reporting-check-list li {
    line-height: 1.5;
}
.page-geo-audit .reporting-check-list .round-icon-sm {
    width: 28px;
    height: 28px;
    background: var(--rek-teal);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
}

/* ---------------------------------------------------------
   Testimonial highlight and review stats
   --------------------------------------------------------- */
.page-geo-audit mark.geo-highlight {
    background: rgba(75, 162, 159, 0.15);
    padding: 2px 4px;
    border-radius: 3px;
}
.page-geo-audit .review-side-stats hr {
    opacity: 0.2;
    margin: 1rem 0;
}

/* ---------------------------------------------------------
   Responsive tweaks
   --------------------------------------------------------- */
@media (max-width: 767px) {
    .page-geo-audit .banner h1 {
        font-size: 1.85rem;
        line-height: 1.2;
    }
    .page-geo-audit .banner-form {
        padding: 1.25rem;
    }
}
