/*
Theme Name: GGP Starter
Theme URI: https://globalgradpath.com/
Author: Your Team
Author URI: https://globalgradpath.com/
Description: Updated theme stylesheet with header styles extracted from the custom header (logo height independent of navbar, lead-gate overlay, CTA styles). Safe to drop-in replace.
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ggp-starter
Tags: bootstrap, responsive, starter-theme
*/

/* ==============================
   CSS Variables (header-focused)
   ============================== */
:root{
  /* Will be overridden by inline style from header.php: --brand-logo-h: <n>px */
  --brand-logo-h: 150px;

  /* Palette */
  --mint:#00BFA6; 
  --mint-600:#00ab95; 
  --ink:#0f172a; 
  --muted:#4b5563; 
  --bg:#f3faf8;
  --card:#ffffff; 
  --border:#e5e7eb; 
  --pill:#e7f8f5; 
  --orange:#ff6b3d; 
  --orange-600:#ef5a2b;

  /* FX */
  --radius:18px; 
  --shadow:0 10px 30px rgba(2, 8, 23, .08); 
  --shadow-lg:0 22px 60px rgba(2, 8, 23, .12);
}

/* ============
   Base / Reset
   ============ */
*{ box-sizing:border-box; }
html, body{ height:100%; }
body{
  margin:0;
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif;
  color: var(--ink);
  background:#fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Accessible skip link */
.skip-link{
  position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.skip-link:focus{
  position:static; width:auto; height:auto; padding:.5rem; background:#000; color:#fff;
}

/* ======================
   Header / Navbar styles
   ====================== */
.brand-logo,
.custom-logo{
  height: var(--brand-logo-h);
  width:auto;
  display:inline-block;
}
.sc-navbar{
  background:#fff;
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  z-index:3000;
}
.sc-navbar .navbar-brand{
  font-weight:800;
  letter-spacing:.2px;
  color:#0a8e7e;
  display:flex;
  align-items:center;
  gap:.65rem;
  padding-top:0;
  padding-bottom:0;
}
.sc-navbar .nav-link{
  font-weight:700;
  color:#0f2f2e;
}
.sc-navbar .nav-link.active,
.sc-navbar .nav-link:focus,
.sc-navbar .nav-link:hover{
  color:#0a8e7e;
}
.navbar .dropdown-menu{ z-index:3100; }

/* ==========================
   Page wrapper + Lead Gating
   ========================== */
.sc-page{ position:relative; z-index:0; min-height:60vh; }
.sc-page.is-gated{
  pointer-events:none; 
  user-select:none;
}

/* Visual-only shield shown until modal appears */
#gateShield{
  position:fixed; inset:0; z-index:1030;
  display:none; 
  background:#ffffffcc;
  pointer-events:none;
  backdrop-filter:saturate(120%) blur(1.5px);
}
#gateShield.active{ display:block; }
#gateShield .inner{
  position:absolute; inset:0; 
  display:flex; align-items:center; justify-content:center; 
  flex-direction:column; gap:.75rem;
  pointer-events:none;
}
#gateShield .title{ font-weight:800; font-size:1.15rem; color:var(--ink); }
#gateShield .sub{ color:var(--muted); }

/* =========
   CTA Pill
   ========= */
.cta-loan{
  position:relative; 
  display:inline-flex; align-items:center; gap:.6rem; 
  font-weight:900; letter-spacing:.2px; 
  border:0; border-radius:14px; 
  padding:.65rem 1rem; 
  color:#fff!important; 
  background:linear-gradient(135deg,#00BFA6,#0fbfb0 40%,#06b6d4 100%);
  box-shadow:var(--shadow-lg);
  text-decoration:none;
}
.cta-dot{ 
  width:8px; height:8px; border-radius:999px; 
  background:#fff; opacity:.9; position:relative;
}
.cta-dot::after{
  content:""; position:absolute; inset:-6px; 
  border-radius:999px; border:2px solid rgba(255,255,255,.55); 
  animation:pulse 1.8s ease-out infinite;
}
@keyframes pulse{
  0%{ transform:scale(0.9); opacity:.8; }
  70%{ transform:scale(1.2); opacity:.2; }
  100%{ transform:scale(1.35); opacity:0; }
}

/* ========
   Helpers
   ======== */
.container-narrow{ max-width: 900px; }
.text-muted-ink{ color: var(--muted); }

/* Optional cards */
.card-soft{
  background: var(--card);
  border:1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

/* Footer (class names may be present elsewhere; harmless here) */
.sc-footer a{ text-decoration:none; }

/* WordPress align classes */
.alignwide{ max-width:1200px; margin-left:auto; margin-right:auto; }
.alignfull{ width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
