/* Mobile heading sizing fix */
@media (max-width: 781px) {
  h2.wp-block-heading {
    font-size: clamp(26px, 7vw, 40px) !important;
    line-height: 1.2 !important;
  }
}

/* Full-width column blocks on mobile (fixes narrow Calendly scheduler) */
@media (max-width: 781px) {
  .wp-block-columns { max-width: 100% !important; }
}

/* Mobile menu: indent links and enlarge tap targets */
@media (max-width: 781px) {
  .is-menu-open .wp-block-navigation__responsive-container-content {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }
  .is-menu-open .wp-block-navigation-item__content {
    display: block;
    padding: 0.6rem 0 !important;
    font-size: 1.15rem !important;
  }
}

/* Shrink + center podcast videos and Kitces map on mobile */
@media (max-width: 781px) {
  .lyte-wrapper {
    max-width: 300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  img.wp-image-1863 {
    max-width: 320px !important;
    height: auto !important;
  }
}

/* Desktop: shrink standalone video and the Kitces map */
@media (min-width: 782px) {
  .lyte-wrapper {
    width: 100% !important;
    max-width: 640px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  img.wp-image-1863 {
    max-width: 600px !important;
    height: auto !important;
  }
}

/* Stats band (9+ Years / 1M+ / 98%) refinement */
@media (min-width: 782px) {
  .banner-service { padding: 26px 40px !important; }
  .banner-service .wp-block-columns { column-gap: 12px !important; }
  .banner-service h3.wp-block-heading { font-size: 32px !important; line-height: 1.12 !important; }
  .banner-service p { font-size: 15px !important; line-height: 1.3 !important; }
}
@media (max-width: 781px) {
  .banner-service { padding: 22px 18px !important; row-gap: 6px !important; }
  .banner-service .wp-block-columns { row-gap: 6px !important; }
  .banner-service h3.wp-block-heading { font-size: 34px !important; line-height: 1.05 !important; margin: 2px 0 !important; }
  .banner-service p { font-size: 14px !important; line-height: 1.25 !important; margin: 0 !important; }
  .banner-service img { width: 40px !important; height: 40px !important; }
  .banner-service figure { margin: 0 0 2px 0 !important; }
}


/* ===== Header secondary (outline) button ===== */
.header-report-btn .wp-block-button__link {
  background: transparent !important;
  color: var(--wp--preset--color--extra-primary) !important;
  border: 2px solid var(--wp--preset--color--extra-primary) !important;
}
.header-report-btn .wp-block-button__link:hover {
  background: var(--wp--preset--color--extra-primary) !important;
  color: #fff !important;
}

/* ===== Hero secondary (white outline) button ===== */
.hero-secondary-btn .wp-block-button__link {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,0.85) !important;
  border-radius: 5px !important;
}
.hero-secondary-btn .wp-block-button__link:hover {
  background: rgba(255,255,255,0.18) !important;
  border-color: #fff !important;
}

/* ===== Sticky mobile CTA bar ===== */
.nx-sticky-cta { display: none; }
@media (max-width: 781px) {
  body:not(.page-id-304) .nx-sticky-cta {
    display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 99990;
    padding: 10px 14px calc(12px + env(safe-area-inset-bottom, 0px));
    background: rgba(255,255,255,0.97);
    box-shadow: 0 -6px 20px rgba(0,0,0,0.14);
  }
  body:not(.page-id-304) .nx-sticky-cta a {
    display: block; text-align: center; text-decoration: none;
    background: var(--wp--preset--color--extra-primary);
    color: #fff !important; font-weight: 700; font-size: 17px;
    padding: 15px 18px; border-radius: 999px;
    box-shadow: 0 3px 10px rgba(0,105,56,0.35);
  }
  body:not(.page-id-304) { padding-bottom: 76px; }
}

/* ===== Modern exit popup (1773) ===== */
#pum-1773.pum-overlay.pum-active {
  display: flex !important; align-items: center; justify-content: center;
  background: rgba(8, 28, 16, 0.55) !important;
  backdrop-filter: blur(4px);
}
#pum-1773 .pum-container {
  position: relative !important; top: auto !important; left: auto !important;
  margin: 24px !important; width: 100% !important; max-width: 560px !important;
  border-radius: 18px !important; border: none !important;
  border-top: 6px solid var(--wp--preset--color--extra-primary) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,0.30) !important;
  padding: 34px 32px 28px !important; background: #fff !important;
}
#pum-1773 .pum-content h2 {
  color: #1f2f55; font-size: 26px !important; line-height: 1.25 !important;
  margin: 0 0 14px !important;
}
#pum-1773 .pum-content p { color: #4a5568; font-size: 15px; line-height: 1.55; }
#pum-1773 .pum-content input[type=text],
#pum-1773 .pum-content input[type=email],
#pum-1773 .pum-content input[type=tel],
#pum-1773 .pum-content input[type=url] {
  border: 1.5px solid #d8dde4 !important; border-radius: 10px !important;
  padding: 10px 14px !important;
}
#pum-1773 .pum-content button[type=submit] {
  background: var(--wp--preset--color--extra-primary) !important;
  border-radius: 999px !important; border: none !important;
  font-weight: 700 !important; padding: 14px 28px !important;
  width: 100%; color: #fff !important;
}
#pum-1773 .pum-close {
  top: 14px !important; right: 14px !important; left: auto !important; bottom: auto !important;
  width: 34px !important; height: 34px !important; padding: 0 !important;
  border-radius: 50% !important; border: none !important; box-shadow: none !important;
  background: #eef0f3 !important; color: #333 !important;
  font-size: 0 !important; line-height: 34px !important; text-align: center;
}
#pum-1773 .pum-close::after { content: '\00d7'; font-size: 22px; color: #333; line-height: 34px; }
@media (max-width: 600px) {
  #pum-1773 .pum-container { padding: 26px 20px 22px !important; margin: 14px !important; }
  #pum-1773 .pum-content h2 { font-size: 21px !important; }
}


/* ===== Calendly loading hint ===== */
.wp-block-jetpack-calendly { position: relative; min-height: 630px; }
.wp-block-jetpack-calendly::before {
  content: 'Loading the calendar…';
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  color: #8a929c; font-size: 15px; z-index: 0;
  animation: nxCalHint 8s ease forwards;
}
@keyframes nxCalHint { 0%, 75% { opacity: 1; } 100% { opacity: 0; } }
.wp-block-jetpack-calendly iframe { position: relative; z-index: 1; }


/* ===== Trust strip under hero ===== */
.nx-trust-strip { color: #6b7280; font-size: 15px; margin-top: 18px; margin-bottom: 0; padding: 0 16px; }

/* ===== Founder headshot styling ===== */
img.nx-headshot { border-radius: 50%; box-shadow: 0 8px 28px rgba(0,0,0,0.12); }
.nx-meet-steve { text-align: center; margin: 20px auto 4px; }
.nx-meet-steve img { width: 110px; height: 110px; border-radius: 50%; object-fit: cover; box-shadow: 0 6px 20px rgba(0,0,0,0.15); }
.nx-meet-steve p { color: #4a5568; font-size: 15px; margin: 10px 0 0; }


/* ===== Founder card ===== */
.nx-founder-card { text-align: center; padding: 8px 10px; }
.nx-founder-card img { width: 210px; height: 210px; border-radius: 50%; object-fit: cover; box-shadow: 0 8px 28px rgba(0,0,0,0.12); }
.nx-founder-card h3 { margin: 14px 0 2px; font-size: 22px; }
.nx-founder-title { color: var(--wp--preset--color--extra-primary); font-weight: 600; font-size: 15px; margin: 0 0 8px; }
.nx-founder-bio { color: #4a5568; font-size: 15px; line-height: 1.5; margin: 0 0 14px; }
.nx-founder-btn { display: inline-block; background: var(--wp--preset--color--extra-primary); color: #fff !important; font-weight: 700; text-decoration: none; padding: 12px 22px; border-radius: 999px; font-size: 15px; box-shadow: 0 3px 10px rgba(0,105,56,0.3); }
.nx-founder-btn:hover { filter: brightness(1.08); }


/* Smooth in-page anchor scrolling */
#territory { scroll-margin-top: 90px; }
