/* =============================================
   GEO DIGITAL MARKETING — DESIGN SYSTEM
   Shopify Theme Palette (March 2026)
   ─────────────────────────────────────────────
   Dark charcoal: #1a1a1a   (header, dark sections)
   Emerald:       #2EAB7A   (primary action colour)
   Body text:     #1a1a1a   (headings on white bg)
   Muted text:    #4a5568   (body / supporting)
   Light bg:      #f8f8f8   (subtle section contrast)
   ============================================= */

/* ── 1. OLD DARK TEAL #1a3d4f ─────────────────────
   As background → charcoal | As text → near-black  */
[style*="background-color:#1a3d4f"],
[style*="background-color: #1a3d4f"],
[style*="background:#1a3d4f"] {
  background-color: #1a1a1a !important;
}
[style*="color:#1a3d4f"],
[style*="color: #1a3d4f"] {
  color: #1a1a1a !important;
}

/* ── 2. OLD ACCENT TEAL → EMERALD ────────────────── */
[style*="color:#4ec9c0"],
[style*="color: #4ec9c0"],
[style*="color:#38b5ae"],
[style*="color: #38b5ae"] {
  color: #2EAB7A !important;
}
[style*="background-color:#4ec9c0"],
[style*="background-color: #4ec9c0"],
[style*="background:#4ec9c0"],
[style*="background: #4ec9c0"],
[style*="background-color:#38b5ae"],
[style*="background-color: #38b5ae"],
[style*="background-color:#2EAB7A"],
[style*="background-color: #2EAB7A"] {
  background-color: #2EAB7A !important;
}

/* ── 3. TEXT INSIDE EMERALD SECTIONS → WHITE ────────
   Stats band and any emerald-bg block: white text    */
[style*="background-color:#4ec9c0"] *,
[style*="background-color:#38b5ae"] *,
[style*="background-color:#2EAB7A"] * {
  color: #ffffff !important;
}

/* ── 4. TEXT INSIDE DARK SECTIONS → WHITE ──────────
   Charcoal-bg and old dark teal sections: white text */
[style*="background-color:#1a3d4f"] *,
[style*="background-color:#1a1a1a"] * {
  color: #ffffff !important;
}

/* ── 5. FULL PAGE WIDTH ────────────────────────── */
.site .container,
.content-container,
.inner-wrap,
.site-content .content-area,
.kadence-container {
  max-width: 1380px !important;
}
.wp-block-cover.alignfull,
.wp-block-group.alignfull,
.wp-block-columns.alignfull {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
.wp-block-cover__inner-container,
.wp-block-group.alignfull > .wp-block-group__inner-container {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}
.entry-content > .alignfull {
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
}

/* ── 6. HEADER & STICKY — ALWAYS CHARCOAL ──────────*/
#masthead,
.site-header,
.site-header-wrap,
#masthead .kadence-sticky-header,
#masthead .kadence-sticky-header.item-is-fixed,
.kadence-sticky-header .site-header-wrap,
.site-header.sticky-enabled,
.sticky-header .site-header-inner,
.site-header-wrap.kadence-header-is-sticky {
  background-color: #1a1a1a !important;
}

/* ── 7. NAVIGATION — WHITE TEXT, EMERALD HOVER ───── */
.primary-navigation .menu > .menu-item > a,
#primary-menu > .menu-item > a,
.header-navigation ul > .menu-item > a,
nav ul > li.menu-item > a {
  color: #ffffff !important;
}
.primary-navigation .menu > .menu-item > a:hover,
#primary-menu > .menu-item > a:hover,
.header-navigation ul > .menu-item > a:hover,
nav ul > li.menu-item > a:hover {
  color: #2EAB7A !important;
}

/* ── 8. BOOK A CALL — EMERALD PILL BUTTON ─────────── */
.primary-navigation .menu > .menu-item:last-child > a,
#primary-menu > .menu-item:last-child > a,
.header-navigation ul > .menu-item:last-child > a,
nav ul > li.menu-item:last-child > a {
  background-color: #2EAB7A !important;
  color: #ffffff !important;
  padding: 7px 18px !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  transition: background-color 0.2s ease !important;
  display: inline-block !important;
}
.primary-navigation .menu > .menu-item:last-child > a:hover,
#primary-menu > .menu-item:last-child > a:hover,
.header-navigation ul > .menu-item:last-child > a:hover,
nav ul > li.menu-item:last-child > a:hover {
  background-color: #238a61 !important;
  color: #ffffff !important;
}

/* ── 9. CTA BUTTONS — WHITE TEXT ON EMERALD ─────────*/
.wp-block-button__link {
  color: #ffffff !important;
}

/* ── 10. SECTION BACKGROUNDS — CLEAN WHITES ─────────*/
[style*="background-color:#f4f9f9"],
[style*="background-color: #f4f9f9"],
[style*="background:#f4f9f9"] {
  background-color: #f8f8f8 !important;
}
[style*="background-color:#d4e8e8"],
[style*="background-color: #d4e8e8"] {
  background-color: #e8f5ee !important;
}

/* ── 11. CONTACT FORM — PREVENT INPUT OVERFLOW ──────
   Constrain Jetpack/WPForms inputs to column width  */
.wp-block-column {
  min-width: 0;
}
.wp-block-column input,
.wp-block-column select,
.wp-block-column textarea,
.wp-block-column .contact-form,
.wp-block-column .grunion-contact-form,
.contact-form input,
.contact-form select,
.contact-form textarea {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ============================================================
   GEO DIGITAL MARKETING — SITE IMPROVEMENTS (March 2026)
   ============================================================ */

/* ── 1. HERO: Remove whitespace below hero image ──────────── */
.wp-block-cover {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.wp-block-cover + .wp-block-group,
.wp-block-cover + section,
.wp-block-cover + .wp-block-columns,
.wp-block-cover + .alignfull {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.site-main > .entry-content > *:first-child {
  margin-top: 0 !important;
}

/* ── 2. STICKY NAVIGATION ─────────────────────────────────── */
#masthead,
.site-header,
header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.12) !important;
  transition: box-shadow 0.3s ease !important;
}

/* ── 3. NAV: "Book a Call" CTA button — orange accent ─────── */
.main-navigation a[href*="book"],
.main-navigation a[href*="call"],
.nav-menu a[href*="book"],
.primary-menu a[href*="book"],
.header-navigation a[href*="book"],
.site-header a[href*="book"],
.site-header a[href*="call"]:last-child {
  background-color: #2EAB7A !important;
  color: #ffffff !important;
  padding: 8px 18px !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  transition: background-color 0.2s ease, transform 0.2s ease !important;
  display: inline-block !important;
}
.main-navigation a[href*="book"]:hover,
.nav-menu a[href*="book"]:hover,
.site-header a[href*="book"]:hover,
.site-header a[href*="call"]:last-child:hover {
  background-color: #1a8a5f !important;
  transform: translateY(-1px) !important;
}

/* ── 4. NAV: Active page indicator ───────────────────────────*/
.main-navigation .current-menu-item > a,
.primary-menu .current-menu-item > a {
  border-bottom: 2px solid #2EAB7A !important;
  padding-bottom: 2px !important;
}

/* ── 5. SERVICE CARDS: Hover lift effect ──────────────────── */
.wp-block-group:has(> .wp-block-heading),
.wp-block-column,
.service-card,
[class*="service"],
.wp-block-kadence-column {
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}
.wp-block-column:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.10) !important;
}

/* ── 6. TYPOGRAPHY: Body line-height & min size ───────────── */
body, p {
  line-height: 1.7 !important;
}
p, li, td {
  font-size: max(16px, 1em) !important;
}

/* ── 7. SECTION RHYTHM: Alternating backgrounds ──────────────*/
.site-main .wp-block-group:nth-child(even):not(.wp-block-cover) {
  background-color: #f8f9fa !important;
}

/* ── 8. CTA BUTTONS: Consistent hover state ──────────────── */
.wp-block-button__link,
.wp-block-button .wp-block-button__link {
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
}
.wp-block-button__link:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,0.15) !important;
}

/* ── 9. MOBILE: Sticky CTA in mobile nav ─────────────────── */
@media (max-width: 768px) {
  .site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
  }
  p, li {
    font-size: 16px !important;
    line-height: 1.65 !important;
  }
}


/* ── WHITESPACE FIX: Reduce hero min-height & section padding ─ */

/* Reduce hero height so content fills it more tightly */
.wp-block-cover.alignfull {
  min-height: 420px !important;
}

/* Remove top padding on the first content section after stats bar */
.wp-block-cover ~ .wp-block-group ~ .wp-block-group.alignfull:first-of-type,
.wp-block-group.alignfull + .wp-block-group.alignfull {
  padding-top: 48px !important;
}

/* Tighten global section vertical padding */
.wp-block-group.alignfull:not(.wp-block-cover):not([style*="background-color:#1a3d4f"]):not([style*="background-color:#1A3D4F"]) {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
}
