* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; }
/* ==========================================================================
   Smart Home Air & Heat — Site Components CSS
   Scoped: .shah-ticker, .shah-header, .shah-mobile-menu, .shah-footer
   ========================================================================== */

/* ---------- Font Import ---------- */


/* ---------- REMOVE ELEMENTOR INJECTED CONTENT ---------- */
.elementor-location-footer,
.elementor-location-header,
div[data-elementor-type="footer"],
div[data-elementor-type="header"],
.footer-service-areas,
.footer-tagline {
  display: none !important;
}

/* ---------- ANNOUNCEMENT TICKER ---------- */
.shah-ticker {
  position: relative !important;
  z-index: 99999 !important;
  background: #FE4A00 !important;
  overflow: hidden !important;
  width: 100% !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
}

.shah-ticker__track {
  display: flex !important;
  width: max-content !important;
  animation: shahTickerScroll 34s linear infinite !important;
}

.shah-ticker__track:hover {
  animation-play-state: paused !important;
}

.shah-ticker__content {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.shah-ticker__item {
  color: #fff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 19px;
  font-weight: 700;
  line-height: 1 !important;
  padding: 0 16px !important;
  white-space: nowrap !important;
}

.shah-ticker__dot {
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  background: #fff !important;
  border-radius: 50% !important;
  opacity: 0.7 !important;
  flex-shrink: 0 !important;
}

@keyframes shahTickerScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ---------- SITE HEADER ---------- */
.shah-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 99998 !important;
  background: #234190 !important;
  border-bottom: 3px solid #FE4A00 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
  width: 100% !important;
}

.shah-header__inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 24px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  height: 84px !important;
}

/* Logo */
.shah-header__logo {
  flex-shrink: 0 !important;
}

.shah-header__logo a {
  display: block !important;
  text-decoration: none !important;
}

.shah-header__logo img {
  width: 180px !important;
  height: auto !important;
  display: block !important;
}

/* Desktop Nav */
.shah-header__nav {
  flex: 1 !important;
  display: flex !important;
  justify-content: center !important;
}

.shah-header__nav-list {
  display: flex !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

.shah-header__nav-item {
  position: relative !important;
}

.shah-header__nav-item > a {
  display: block !important;
  padding: 20px 12px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #ffffff !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color 0.2s ease !important;
}

.shah-header__nav-item > a:hover,
.shah-header__nav-active > a {
  color: #FE4A00 !important;
}

/* Dropdown */
.shah-header__dropdown {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  min-width: 280px !important;
  background: #234190 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3) !important;
  border-radius: 0 !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(4px) !important;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease !important;
  z-index: 99999 !important;
}

.shah-header__dropdown--wide {
  min-width: 320px !important;
}

.shah-header__nav-has-dropdown:hover > .shah-header__dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

.shah-header__dropdown li {
  margin: 0 !important;
  padding: 0 !important;
}

.shah-header__dropdown li a {
  display: block !important;
  padding: 10px 20px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #fff !important;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.1) !important;
  transition: background 0.15s ease !important;
  white-space: normal !important;
  line-height: 1.4 !important;
}

.shah-header__dropdown li:last-child a {
  border-bottom: none !important;
}

.shah-header__dropdown li a:hover,
.shah-header__dropdown-active {
  background: #FE4A00 !important;
  color: #fff !important;
}

/* Right section */
.shah-header__right {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-shrink: 0 !important;
}

.shah-header__phone {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  text-decoration: none !important;
  color: #ffffff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  transition: color 0.2s ease !important;
}

.shah-header__phone:hover {
  color: #FE4A00 !important;
}

.shah-header__phone svg {
  flex-shrink: 0 !important;
}

.shah-header__open-badge {
  display: inline-block !important;
  background: #374151 !important;
  color: #fff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 3px 8px !important;
  border-radius: 3px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.shah-header__location {
  display: block !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 11px !important;
  color: rgba(255,255,255,0.75) !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

/* Hamburger — mobile only */
.shah-header__hamburger {
  display: none !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 5px !important;
  width: 44px !important;
  height: 44px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.shah-header__hamburger-bar {
  display: block !important;
  width: 26px !important;
  height: 3px !important;
  background: #234190 !important;
  border-radius: 2px !important;
  transition: all 0.3s ease !important;
}

/* ---------- MOBILE MENU ---------- */
.shah-mobile-menu {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 100000 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

.shah-mobile-menu.shah-mobile-menu--open {
  pointer-events: auto !important;
  visibility: visible !important;
}

.shah-mobile-menu__overlay {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(0,0,0,0.6) !important;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
}

.shah-mobile-menu--open .shah-mobile-menu__overlay {
  opacity: 1 !important;
}

.shah-mobile-menu__panel {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 320px !important;
  max-width: 85vw !important;
  height: 100% !important;
  background: #234190 !important;
  transform: translateX(100%) !important;
  transition: transform 0.3s ease !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  display: flex !important;
  flex-direction: column !important;
}

.shah-mobile-menu--open .shah-mobile-menu__panel {
  transform: translateX(0) !important;
}

.shah-mobile-menu__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}

.shah-mobile-menu__logo img {
  width: 160px !important;
  height: auto !important;
  display: block !important;
}

.shah-mobile-menu__close {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  background: none !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 4px !important;
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  padding: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.shah-mobile-menu__close:hover {
  background: rgba(255,255,255,0.1) !important;
}

.shah-mobile-menu__nav {
  flex: 1 !important;
  overflow-y: auto !important;
  padding: 8px 0 !important;
}

.shah-mobile-menu__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.shah-mobile-menu__item {
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}

.shah-mobile-menu__parent-row {
  display: flex !important;
  align-items: center !important;
}

.shah-mobile-menu__link {
  display: block !important;
  flex: 1 !important;
  padding: 15px 20px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  color: #fff !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
}

.shah-mobile-menu__link:hover {
  color: #FE4A00 !important;
}

.shah-mobile-menu__toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  background: none !important;
  border: none !important;
  border-left: 1px solid rgba(255,255,255,0.1) !important;
  cursor: pointer !important;
  padding: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  flex-shrink: 0 !important;
}

.shah-mobile-menu__toggle-icon {
  color: #FE4A00 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  transition: transform 0.2s ease !important;
}

.shah-mobile-menu__toggle--open .shah-mobile-menu__toggle-icon {
  transform: rotate(45deg) !important;
}

.shah-mobile-menu__submenu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.3s ease !important;
  background: rgba(0,0,0,0.2) !important;
}

.shah-mobile-menu__submenu--open {
  max-height: 2000px !important;
}

.shah-mobile-menu__sublink {
  display: block !important;
  padding: 12px 20px 12px 36px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,0.8) !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
  line-height: 1.4 !important;
}

.shah-mobile-menu__sublink:hover {
  color: #FE4A00 !important;
  background: rgba(255,255,255,0.03) !important;
}

/* CTA at bottom of mobile menu */
.shah-mobile-menu__cta {
  padding: 20px !important;
  border-top: 1px solid rgba(255,255,255,0.1) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
}

.shah-mobile-menu__phone {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-decoration: none !important;
}

.shah-mobile-menu__phone:hover {
  color: #FE4A00 !important;
}

.shah-mobile-menu__badge {
  display: inline-block !important;
  background: #374151 !important;
  color: #fff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 4px 10px !important;
  border-radius: 3px !important;
}

.shah-mobile-menu__schedule-btn {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 14px 24px !important;
  background: #FE4A00 !important;
  color: #fff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border-radius: 6px !important;
  transition: background 0.2s ease !important;
}

.shah-mobile-menu__schedule-btn:hover {
  background: #fe4a00 !important;
}

/* ---------- FOOTER ---------- */

.shah-footer__container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* Service Areas Band */
.shah-footer__service-areas {
  background: #234190 !important;
  padding: 56px 0 !important;
  width: 100% !important;
}

.shah-footer__areas-heading {
  text-align: center !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 0 32px 0 !important;
  letter-spacing: -0.02em !important;
}

.shah-footer__city-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 12px !important;
}

.shah-footer__areas-tagline {
  text-align: center !important;
  margin-top: 24px !important;
  font-size: 0.85rem !important;
  color: rgba(255,255,255,0.85) !important;
  line-height: 1.6 !important;
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.shah-footer__city-link {
  display: block !important;
  padding: 14px 18px !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-left: 3px solid #FE4A00 !important;
  border-radius: 6px !important;
  color: #fff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  line-height: 1.4 !important;
}

.shah-footer__city-link:hover {
  background: rgba(255,102,0,0.15) !important;
  border-color: rgba(255,102,0,0.3) !important;
  border-left-color: #FE4A00 !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

/* Main Footer */
.shah-footer__main {
  background: #234190 !important;
  padding: 32px 0 !important;
  width: 100% !important;
}

.shah-footer__columns {
  display: grid !important;
  grid-template-columns: 1.3fr 1fr 1fr 1.3fr !important;
  gap: 48px !important;
}

.shah-footer__col {
  min-width: 0 !important;
}

.shah-footer__col--logo img {
  width: 220px !important;
  height: auto !important;
  display: block !important;
  margin-bottom: 20px !important;
}

.shah-footer__tagline {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 17px !important;
  color: #fff !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

.shah-footer__col-heading {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 0 20px 0 !important;
}

.shah-footer__links {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.shah-footer__links li {
  margin: 0 0 14px 0 !important;
}

.shah-footer__links li a {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #fff !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.shah-footer__links li a:hover {
  color: #FE4A00 !important;
}

/* Contact column */
.shah-footer__contact-item {
  margin-bottom: 20px !important;
}

.shah-footer__contact-label {
  display: block !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 6px !important;
}

.shah-footer__contact-phone {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.shah-footer__contact-phone:hover {
  color: #FE4A00 !important;
}

.shah-footer__address {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-style: normal !important;
  color: #fff !important;
  line-height: 1.5 !important;
}

.shah-footer__license {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  color: #fff !important;
}

.shah-footer__emergency {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 15px !important;
  color: #FE4A00 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.shah-footer__emergency:hover { text-decoration: underline !important; }

/* Social Icons (inside logo column) */
.shah-footer__social-icons {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-top: 20px !important;
}

.shah-footer__social-icons a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.08) !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
  text-decoration: none !important;
}

.shah-footer__social-icons a:hover {
  background: #FE4A00 !important;
  transform: translateY(-2px) !important;
}

.shah-footer__social-icons a svg {
  width: 20px !important;
  height: 20px !important;
}

/* Copyright Bar */
.shah-footer__copyright {
  background: #FE4A00 !important;
  padding: 14px 0 !important;
  width: 100% !important;
}

.shah-footer__copyright-text {
  text-align: center !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,0.9) !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

.shah-footer__copyright-text a {
  color: #fff !important;
  text-decoration: underline !important;
  font-weight: 600 !important;
}

/* ==========================================================================
   RESPONSIVE — 1024px (nav collapse to mobile)
   ========================================================================== */
@media (max-width: 1024px) {
  .shah-header__nav {
    display: none !important;
  }

  .shah-header__location {
    display: none !important;
  }

  .shah-header__open-badge {
    display: none !important;
  }

  .shah-header__hamburger {
    display: flex !important;
  }

  .shah-header__inner {
    height: 60px !important;
    padding: 0 16px !important;
  }

  .shah-header__logo img {
    width: 150px !important;
  }

  .shah-header__phone-number {
    display: none !important;
  }

  .shah-header__phone svg {
    width: 24px !important;
    height: 24px !important;
  }

  .shah-ticker__item {
    font-size: 19px;
    padding: 0 12px !important;
  }

  .shah-ticker {
    height: 36px !important;
  }
}

/* ==========================================================================
   RESPONSIVE — 768px (tablet)
   ========================================================================== */
@media (max-width: 768px) {
  .shah-footer__city-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .shah-footer__service-areas {
    padding: 36px 0 !important;
  }

  .shah-footer__columns {
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
  }

  .shah-footer__main {
    padding: 32px 0 !important;
  }
}

/* ==========================================================================
   RESPONSIVE — 480px (compact mobile)
   ========================================================================== */
@media (max-width: 480px) {
  .shah-ticker__item {
    font-size: 19px;
    padding: 0 10px !important;
  }

  .shah-ticker {
    height: 32px !important;
  }

  .shah-ticker__dot {
    width: 4px !important;
    height: 4px !important;
  }

  .shah-header__inner {
    height: 56px !important;
    padding: 0 12px !important;
  }

  .shah-header__logo img {
    width: 130px !important;
  }

  .shah-footer__city-grid {
    grid-template-columns: 1fr !important;
  }

  .shah-footer__service-areas {
    padding: 28px 0 !important;
  }

  .shah-footer__areas-heading {
    font-size: 20px !important;
  }

  .shah-footer__columns {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .shah-footer__main {
    padding: 32px 0 !important;
  }

  .shah-footer__copyright-text {
    font-size: 12px !important;
  }

  .shah-mobile-menu__link {
    font-size: 16px !important;
    padding: 13px 16px !important;
  }

  .shah-mobile-menu__sublink {
    font-size: 14px !important;
    padding: 10px 16px 10px 30px !important;
  }

  .shah-mobile-menu__phone {
    font-size: 18px !important;
  }

  .shah-mobile-menu__panel {
    width: 290px !important;
  }

  .shah-footer__social-icons {
    gap: 10px !important;
  }

  .shah-footer__social-icons a {
    width: 36px !important;
    height: 36px !important;
  }

  .shah-footer__social-icons a svg {
    width: 16px !important;
    height: 16px !important;
  }
}

/* ---------- Hide mobile menu on desktop ---------- */
@media (min-width: 1025px) {
  .shah-mobile-menu {
    display: none !important;
  }

  .shah-header__hamburger {
    display: none !important;
  }
}

/* ---------- Prevent body scroll when mobile menu is open ---------- */
body.shah-mobile-open {
  overflow: hidden !important;
}

/* ── NEARBY CITIES SECTION ── */
.city-nearby {
  background: #fff;
  padding: 52px 20px 48px;
  border-top: 1px solid #ffffff;
}
.city-nearby__inner {
  max-width: 1060px;
  margin: 0 auto;
}
.city-nearby h2 {
  font-family: 'Inter', sans-serif;
  font-size: clamp(1.3rem, 2.5vw, 1.75rem);
  font-weight: 900;
  color: #234190;
  text-align: center;
  margin: 0 0 8px;
}
.city-nearby__sub {
  font-family: 'Inter', sans-serif;
  text-align: center;
  color: #234190;
  font-size: 1rem;
  margin: 0 0 32px;
}
.city-nearby__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.city-nearby__link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border: 1px solid #ffffff;
  border-left: 3px solid #FE4A00;
  border-radius: 6px;
  background: linear-gradient(135deg, #fff 0%, rgba(254,74,0,0.18) 50%, #fe4a00 100%);
  color: #374151;
  font-family: 'Inter', sans-serif;
  font-size: 0.92rem;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.2s;
}
.city-nearby__link:hover {
  background: rgba(254,74,0,0.05);
  border-color: rgba(254,74,0,0.3);
  border-left-color: #FE4A00;
  color: #234190;
  transform: translateY(-1px);
}
.city-nearby__pin { flex-shrink: 0; display: block; }
@media (max-width: 700px) { .city-nearby__grid { grid-template-columns: repeat(2, 1fr); } }

/* City page card images */
.cb-why-card { padding: 0 !important; overflow: hidden !important; }
.cb-why-card-img { width: 100% !important; height: 200px !important; object-fit: cover !important; display: block !important; flex-shrink: 0; }
.cb-why-card-icon { margin: 24px 28px 0 28px !important; }
.cb-why-card h3 { padding: 0 28px !important; margin-top: 12px !important; }
.cb-why-card p { padding: 0 28px 20px 28px !important; }
.cb-featured-stat { padding-left: 28px !important; }
.cb-featured-stat-label { padding: 0 28px 28px 28px !important; }
.cb-service-card { padding: 0 !important; overflow: hidden !important; }
.cb-service-card-img { width: 100% !important; height: 200px !important; object-fit: cover !important; display: block !important; }
.cb-service-card-number { padding: 24px 28px 0 28px !important; }
.cb-service-card h3 { padding: 0 28px !important; margin-top: 8px !important; }
.cb-service-card p { padding: 0 28px 12px 28px !important; }
.cb-service-card a.cb-service-link { display: block; padding: 0 28px 28px 28px !important; }

/* FAQ: always visible */
.cb-faq-answer { max-height: 1000px !important; padding: 8px 24px 20px 24px !important; overflow: visible !important; }
.cb-faq-question { background: transparent !important; background-color: transparent !important; color: #234190 !important; font-weight: 700 !important; font-size: 1.1rem !important; cursor: default !important; pointer-events: none !important; padding: 20px 24px 8px 24px !important; border: none !important; border-radius: 0 !important; box-shadow: none !important; text-align: left !important; width: 100% !important; display: block !important; text-transform: none !important; letter-spacing: normal !important; }
.cb-faq-question::after { display: none !important; }
.cb-faq-question:hover, .cb-faq-question:focus { background: transparent !important; background-color: transparent !important; color: #234190 !important; box-shadow: none !important; outline: none !important; }

/* FAQ question: remove orange box — high-specificity override */
button.cb-faq-question, .cb-faq-question,
body button.cb-faq-question,
.cb-page button.cb-faq-question,
.cb-page .cb-faq-item button,
.cb-page .cb-faq-section button,
body .entry-content button.cb-faq-question,
body .site-main button.cb-faq-question,
body #content button.cb-faq-question {
  background: transparent !important;
  background-color: transparent !important;
  color: #234190 !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  cursor: default !important;
  pointer-events: none !important;
  padding: 20px 24px 8px 24px !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
  width: 100% !important;
  display: block !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
button.cb-faq-question::after, body button.cb-faq-question::after,
.cb-page button.cb-faq-question::after,
body .entry-content button.cb-faq-question::after { display: none !important; content: '' !important; }
button.cb-faq-question:hover, button.cb-faq-question:focus,
body button.cb-faq-question:hover, body button.cb-faq-question:focus,
body .entry-content button.cb-faq-question:hover,
body .entry-content button.cb-faq-question:focus {
  background: transparent !important;
  background-color: transparent !important;
  color: #234190 !important;
  box-shadow: none !important;
  outline: none !important;
}



.cb-page *, .cb-page *::before, .cb-page *::after {box-sizing:border-box !important;margin:0;padding:0}
.cb-page {font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif !important;color:#234190 !important;line-height:1.7 !important;overflow-x:hidden;width:100% !important;max-width:100% !important;margin-left:auto !important;margin-right:auto !important}
.cb-page img {max-width:100% !important;height:auto !important;display:block !important}
.cb-page a {text-decoration:none;color:inherit}
/* FULL-WIDTH THEME OVERRIDES */
.cb-hero,.cb-breadcrumb,.cb-trust-bar,.cb-section,.cb-review-strip,.cb-community-section,.cb-founder-section,.cb-cta-section,.cb-faq-section,.cb-footer-service-areas {width:100% !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important}
.entry-content,.site-main,.page .entry-content,.page-content {max-width:100% !important;width:100% !important;padding-left:0 !important;padding-right:0 !important;margin-left:auto !important;margin-right:auto !important}

/* NUCLEAR THEME BUTTON RESET */
.cb-page button,
.cb-page button[type],
.cb-page .cb-faq-item button,
.cb-page .cb-faq-section button,
body .cb-page button,
body .cb-faq-question,
body button.cb-faq-question,
#content .cb-page button,
.site-main .cb-page button,
.entry-content .cb-page button,
.entry-content button.cb-faq-question {
background:#FE4A00 !important;background-color:#FE4A00 !important;
border:none !important;border-radius:0 !important;
color:#fff !important;
box-shadow:none !important;outline:none !important;
text-transform:none !important;letter-spacing:normal !important;
padding:0 !important;margin:0 !important;
font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif !important;
-webkit-appearance:none !important;appearance:none !important;
}

.cb-container {max-width:1200px;margin:0 auto;padding:0 24px}
.sr-only {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* BREADCRUMB */
.cb-breadcrumb {background:#f0f2f5;padding:12px 0;font-size:0.85rem;color:#4b5563;border-bottom:1px solid #f0f2f5}
.cb-breadcrumb a {color:#234190}
.cb-breadcrumb a:link,.cb-breadcrumb a:visited {color:#234190 !important}
.cb-breadcrumb a:hover {text-decoration:underline}
.cb-breadcrumb span {margin:0 8px}

/* HERO — centered */
.cb-hero {position:relative;background:linear-gradient(rgba(5,15,30,0.80),rgba(5,15,30,0.80)),url('../images/dalle-aerial-drone-photograph-of-casselberry-f-1773508673956.webp') center/cover no-repeat;color:#fff;overflow:hidden}
.cb-hero::after {content:'';position:absolute;bottom:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#FE4A00,#FE4A00,#FE4A00)}
.cb-hero-badge {display:inline-flex;align-items:center;gap:8px;background:rgba(255,102,0,0.15);border:1px solid rgba(255,102,0,0.4);border-radius:50px;padding:8px 20px;font-size:0.85rem;font-weight:600;color:#FE4A00;margin-bottom:24px;letter-spacing:0.5px}
.cb-hero-badge .cb-pulse {width:8px;height:8px;background:#FE4A00;border-radius:50%;animation:cb-pulse 2s infinite}
@keyframes cb-pulse {0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.5)}}
.cb-hero h1 {font-size:3rem;font-weight:900;line-height:1.1;margin-bottom:20px;letter-spacing:-0.02em;color:#fff !important;border:none !important;padding:0 !important}
.cb-hero h1 span {color:#FE4A00;position:relative}
.cb-hero-sub {font-size:1.15rem;color:rgba(255,255,255,0.85);margin-bottom:32px;max-width:520px}
.cb-hero-sub strong {color:#fff}
.cb-hero-ctas {justify-content:flex-end;display:flex;gap:16px;flex-wrap:wrap}
.cb-btn-primary {display:inline-flex;align-items:center;gap:10px;background:#FE4A00;color:#fff !important;padding:16px 32px;border-radius:8px;font-weight:700;font-size:1.05rem;transition:all 0.3s;box-shadow:0 4px 20px rgba(255,102,0,0.4) !important}
.cb-btn-primary:link,.cb-btn-primary:visited {color:#fff !important}
.cb-btn-primary:hover {background:#fe4a00;transform:translateY(-2px);box-shadow:0 6px 30px rgba(255,102,0,0.5) !important}
.cb-btn-secondary {display:inline-flex;align-items:center;gap:10px;background:transparent;color:#fff !important;padding:16px 32px;border-radius:8px;font-weight:700;font-size:1.05rem;border:2px solid rgba(255,255,255,0.3);transition:all 0.3s}
.cb-btn-secondary:link,.cb-btn-secondary:visited {color:#fff !important}
.cb-btn-secondary:hover {border-color:#fff;background:rgba(255,255,255,0.1)}
.cb-guarantee-card {background:rgba(10,8,5,0.92);border:1px solid rgba(255,255,255,0.1);border-radius:20px;padding:40px;text-align:center;position:relative;box-shadow:0 8px 32px rgba(0,0,0,0.2) !important}
.cb-guarantee-card::before {content:'';position:absolute;inset:-2px;border-radius:22px;background:linear-gradient(135deg,rgba(255,102,0,0.5),transparent 50%,rgba(255,102,0,0.3));z-index:-1}
.cb-guarantee-number {font-size:6rem;font-weight:900;line-height:1;background:linear-gradient(135deg, #FE4A00 0%, #FE4A00 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.cb-guarantee-label {font-size:1.5rem;font-weight:700;margin-top:4px;color:#fff}
.cb-guarantee-sub {color:rgba(255,255,255,0.85);margin-top:12px;font-size:1rem}
.cb-guarantee-penalty {display:inline-block;margin-top:20px;background:rgba(255,102,0,0.2);border:1px solid rgba(255,102,0,0.4);border-radius:8px;padding:10px 24px;font-weight:700;color:#FE4A00;font-size:1.1rem}

.cb-hero::before {content:'';position:absolute;bottom:0;left:0;right:0;height:200px;background:radial-gradient(ellipse at center bottom,rgba(42,106,154,0.3) 0%,transparent 70%);z-index:1}
.cb-hero {padding:100px 0 80px;text-align:center}
.cb-hero-grid {position:relative;z-index:2;max-width:620px;margin:0 60px 0 auto;text-align:right;margin-right:auto}
.cb-hero-ctas {justify-content:flex-end;justify-content:center}
.cb-hero h1 {font-size:3.2rem}
.cb-guarantee-floating {max-width:600px;margin:-60px auto 0;position:relative;z-index:10}

/* TRUST BAR — horizontal-strip */
.cb-trust-bar {background:#f0f2f5;border-bottom:1px solid #f0f2f5;padding:20px 0}
.cb-trust-items {display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.cb-trust-item {display:flex;align-items:center;justify-content:center;gap:12px}
.cb-trust-icon {width:44px;height:44px;background:linear-gradient(135deg,#234190,#234190);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;flex-shrink:0}
.cb-trust-text {text-align:left}
.cb-trust-text strong {display:block;font-size:0.95rem;color:#234190}
.cb-trust-text span {font-size:0.8rem;color:#234190}

/* SECTIONS */
.cb-section {padding:60px 0 !important}
.cb-section-label {display:inline-block !important;font-size:0.8rem !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:2px !important;color:#FE4A00 !important;margin-bottom:12px !important}
.cb-section-title {font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif !important;font-size:2.4rem !important;font-weight:800 !important;line-height:1.2 !important;color:#234190 !important;margin-bottom:16px !important;border:none !important;padding:0 !important;text-transform:none !important;font-weight:600 !important;font-size:2.6rem !important}
.cb-section-desc {font-size:1.1rem !important;color:#4b5563 !important;max-width:700px;margin-bottom:40px !important}

/* WHY CHOOSE US */
.cb-why-section {background:#fff}
.cb-why-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cb-why-card {background:rgba(10,8,5,0.92) !important;border-radius:12px !important;padding:32px !important;border:1px solid rgba(255,255,255,0.3) !important;transition:all 0.3s;position:relative;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,0.06) !important;-webkit-backdrop-filter:blur(12px)}
.cb-why-card:hover {border-color:rgba(255,102,0,0.5) !important;transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,0.12) !important}
.cb-why-card-icon {width:56px;height:56px;background:linear-gradient(135deg, #FE4A00 0%, #FE4A00 100%);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;margin-bottom:20px}
.cb-why-card h3 {font-size:1.2rem;font-weight:700;margin-bottom:10px;color:#234190 !important}
.cb-why-card p {color:#4b5563;font-size:0.95rem}
.cb-why-card.cb-featured {background:linear-gradient(135deg,#234190,#234190) !important;color:#fff !important;border-color:transparent !important;grid-row:span 2}
.cb-why-card.cb-featured h3 {color:#fff !important}
.cb-why-card.cb-featured p {color:rgba(255,255,255,0.8)}
.cb-why-card.cb-featured .cb-why-card-icon {background:rgba(10,8,5,0.92)}
.cb-featured-stat {font-size:3.5rem;font-weight:900;color:#FE4A00;line-height:1;margin:24px 0 8px}
.cb-featured-stat-label {font-size:1rem;color:rgba(255,255,255,0.85)}

/* SERVICES */
.cb-services-section {background:linear-gradient(180deg,#f0f2f5 0%,#fff 100%)}
.cb-services-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cb-service-card {background:#fff !important;border-radius:12px !important;padding:32px !important;border:1px solid rgba(255,255,255,0.3) !important;transition:all 0.3s;position:relative;box-shadow:0 4px 16px rgba(0,0,0,0.06) !important;-webkit-backdrop-filter:blur(12px)}
.cb-service-card:hover {border-color:#234190 !important;transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,0.12) !important}
.cb-service-card-number {font-size:3rem;font-weight:900;color:#f3f3f3;line-height:1;margin-bottom:16px}
.cb-service-card h3 {font-size:1.15rem;font-weight:700;margin-bottom:10px;color:#234190 !important}
.cb-service-card p {color:#4b5563;font-size:0.92rem;margin-bottom:16px}
.cb-service-link {color:#FE4A00 !important;font-weight:600;font-size:0.9rem;display:inline-flex;align-items:center;gap:6px;transition:gap 0.3s}
.cb-service-link:link,.cb-service-link:visited {color:#FE4A00 !important}
.cb-service-link:hover {gap:10px}

/* COST TABLE */
.cb-cost-section {background:#fff}
.cb-cost-table {width:100% !important;border-collapse:collapse !important;border-radius:12px !important;overflow:hidden !important;box-shadow:0 4px 20px rgba(0,0,0,0.1) !important}
.cb-cost-table thead {background:linear-gradient(135deg,#234190,#234190);color:#fff}
.cb-cost-table th {padding:16px 24px;text-align:left;font-weight:700;font-size:0.95rem;color:#fff !important}
.cb-cost-table td {padding:14px 24px;border-bottom:1px solid #f0f2f5;font-size:0.95rem}
.cb-cost-table tbody tr:nth-child(even) {background:#f0f2f5}
.cb-cost-table tbody tr:hover {background:#f0f2f5}
.cb-cost-note {margin-top:16px;font-size:0.85rem;color:#4b5563;font-style:italic}

/* NEIGHBORHOODS */
.cb-neighborhoods-section {background:#fff}
.cb-neighborhood-list {display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cb-neighborhood-item {display:flex !important;align-items:center !important;gap:12px !important;padding:14px 18px !important;background:#f0f2f5 !important;border-radius:10px !important;border:1px solid #f0f2f5 !important;transition:all 0.3s;box-shadow:0 2px 8px rgba(0,0,0,0.06) !important}
.cb-neighborhood-item:hover {border-color:#FE4A00;background:#fff}
.cb-neighborhood-item .cb-dot {width:10px;height:10px;background:#FE4A00;border-radius:50%;flex-shrink:0}
.cb-neighborhood-item .cb-name {font-weight:600;font-size:0.95rem}
.cb-neighborhood-item .cb-zip {font-size:0.8rem;color:#234190}
.cb-map-container {border-radius:12px !important;overflow:hidden !important;border:2px solid #ffffff !important;box-shadow:0 8px 30px rgba(0,0,0,0.1) !important;margin-top:32px !important}
.cb-map-container iframe {width:100%;height:400px;border:0}

/* FAQ — accordion */
.cb-faq-section {background:linear-gradient(180deg,#f0f2f5 0%,#fff 100%)}
.cb-faq-grid {display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.cb-faq-item {background:#fff !important;border:1px solid #f0f2f5 !important;border-radius:12px !important;overflow:hidden !important;transition:all 0.3s;box-shadow:0 4px 16px rgba(0,0,0,0.08) !important}
.cb-faq-item:hover {border-color:#234190 !important;box-shadow:0 6px 24px rgba(0,0,0,0.12) !important}
/* FAQ BUTTON — ultra-specific selectors */
button.cb-faq-question,
.cb-faq-question,
.cb-page button.cb-faq-question,
.cb-page .cb-faq-question,
.cb-page .cb-faq-item button,
.cb-page .cb-faq-section button,
.entry-content button.cb-faq-question,
.entry-content .cb-faq-question,
body .entry-content button.cb-faq-question,
body .site-main button.cb-faq-question,
body #content button.cb-faq-question {
padding:20px 24px !important;
font-weight:700 !important;
font-size:1rem !important;
color:#fff !important;
cursor:pointer !important;
display:flex !important;
justify-content:space-between !important;
align-items:center !important;
gap:16px !important;
background:#FE4A00 !important;
background-color:#FE4A00 !important;
background-image:none !important;
border:none !important;
border-radius:0 !important;
width:100% !important;
text-align:left !important;
font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif !important;
margin:0 !important;
box-shadow:none !important;
line-height:1.5 !important;
text-transform:none !important;
letter-spacing:normal !important;
min-height:auto !important;
outline:none !important;
text-decoration:none !important;
-webkit-appearance:none !important;
appearance:none !important;
}
button.cb-faq-question:hover,
.cb-page button.cb-faq-question:hover,
body .entry-content button.cb-faq-question:hover {background:#fe4a00 !important;background-color:#fe4a00 !important;color:#fff !important}
button.cb-faq-question:focus,
.cb-page button.cb-faq-question:focus,
body .entry-content button.cb-faq-question:focus {background:#FE4A00 !important;background-color:#FE4A00 !important;color:#fff !important;outline:none !important;box-shadow:none !important}
button.cb-faq-question::after,
.cb-faq-question::after,
.cb-page button.cb-faq-question::after,
body .entry-content button.cb-faq-question::after {content:'+' !important;font-size:1.5rem !important;color:#fff !important;font-weight:300 !important;flex-shrink:0;transition:transform 0.3s;background:none !important;background-color:transparent !important;border:none !important;box-shadow:none !important;width:auto !important;height:auto !important;padding:0 !important;margin:0 !important}
.cb-faq-item.cb-active button.cb-faq-question::after,
.cb-faq-item.cb-active .cb-faq-question::after {transform:rotate(45deg)}
.cb-faq-answer {padding:0 24px 20px !important;max-height:none;overflow:visible !important;transition:all 0.4s ease;background:#fff !important}
.cb-faq-item.cb-active .cb-faq-answer {padding:0 24px 20px !important;max-height:400px}
.cb-faq-answer p {color:#4b5563 !important;font-size:0.95rem !important;line-height:1.7 !important}

/* FOUNDER */
.cb-founder-section {background: #234190 !important;color:#fff !important;position:relative;overflow:hidden;padding:60px 0}
.cb-founder-section::before {content:'';position:absolute;top:-100px;right:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(255,102,0,0.1) 0%,transparent 70%);border-radius:50%}
.cb-founder-section,.cb-founder-section div,.cb-founder-section span,.cb-founder-section p {color:#fff !important}
.cb-founder-grid {display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:center;position:relative;z-index:2;
  background: rgba(255,255,255,0.07) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 16px !important;
  padding: 36px !important;
}
.cb-founder-image {width:100%;aspect-ratio:1;border-radius:20px;overflow:hidden;border:2px solid rgba(255,255,255,0.1)}
.cb-founder-image img {width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.cb-founder-quote {font-size:1.3rem;font-style:italic;line-height:1.8;color:rgba(255,255,255,0.9) !important;margin-bottom:24px;position:relative;padding-left:24px;border-left:4px solid #FE4A00}
.cb-founder-name {font-weight:700;font-size:1.1rem;color:#fff !important}
.cb-founder-title {color:rgba(255,255,255,0.85) !important;font-size:0.95rem}
.cb-founder-license {margin-top:4px;color:#FE4A00 !important;font-size:0.85rem;font-weight:600}

/* CTA — gradient-box */
.cb-cta-section {background:#FE4A00;color:#fff;text-align:center;padding:60px 0 !important;position:relative;overflow:hidden}
.cb-cta-section::before {content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,0,0,0.1) 0%,transparent 50%,rgba(0,0,0,0.1) 100%)}
.cb-cta-content {position:relative;z-index:2}
.cb-cta-section h2 {font-size:2.2rem;font-weight:900;margin-bottom:12px;color:#fff !important;border:none !important;padding:0 !important}
.cb-cta-section p {font-size:1.15rem;margin-bottom:28px;opacity:0.95;color:#fff}
.cb-btn-white {display:inline-flex;align-items:center;gap:10px;background:#fff;color:#FE4A00 !important;padding:18px 40px;border-radius:8px;font-weight:800;font-size:1.2rem;transition:all 0.3s;box-shadow:0 4px 20px rgba(0,0,0,0.15) !important}
.cb-btn-white:link,.cb-btn-white:visited {color:#FE4A00 !important}
.cb-btn-white:hover {transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,0.2) !important}

/* MOBILE CTA */
.cb-mobile-cta {display:none;position:fixed;bottom:0;left:0;right:0;background:#FE4A00;padding:12px 20px;z-index:1000;box-shadow:0 -4px 20px rgba(0,0,0,0.15)}
.cb-mobile-cta a {display:flex;align-items:center;justify-content:center;gap:10px;color:#fff !important;font-weight:800;font-size:1.1rem}
.cb-mobile-cta a:link,.cb-mobile-cta a:visited {color:#fff !important}

/* DIVIDER — curve */
.cb-divider-curve {height:40px;background:inherit;border-radius:0 0 50% 50%/0 0 100% 100%;margin-top:-1px}

/* RESPONSIVE */
@media (max-width:1024px) {
.cb-hero-grid {grid-template-columns:1fr;gap:40px}
.cb-hero h1 {font-size:2.4rem}
.cb-why-grid {grid-template-columns:1fr 1fr}
.cb-why-card.cb-featured {grid-row:span 1}
.cb-services-grid {grid-template-columns:1fr 1fr}
.cb-neighborhoods-grid {grid-template-columns:1fr}
.cb-founder-grid {grid-template-columns:1fr;
  background: rgba(255,255,255,0.07) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 16px !important;
  padding: 36px !important;
}
.cb-founder-image {max-width:200px}
.cb-faq-grid {grid-template-columns:repeat(2,1fr)}
.cb-cta-content {grid-template-columns:1fr}
}
@media (max-width:768px) {
.cb-hero {padding:50px 0 40px}
.cb-hero h1 {font-size:2rem}
.cb-trust-items {grid-template-columns:1fr 1fr;gap:16px}
.cb-why-grid {grid-template-columns:1fr}
.cb-services-grid {grid-template-columns:1fr}
.cb-neighborhood-list {grid-template-columns:1fr}
.cb-section {padding:40px 0 !important}
.cb-section-title {font-size:1.8rem !important}
.cb-hero-ctas {justify-content:flex-end;flex-direction:column}
.cb-btn-primary,.cb-btn-secondary {justify-content:center}
.cb-mobile-cta {display:block}
.cb-page {padding-bottom:60px}
.cb-cta-content {flex-direction:column;text-align:center}
}


/* ===== CASSELBERRY: Steel Blue Suburban Override ===== */
/* Why section: dark steel bg, 3-col, dark cards with steel border */
.cb-why-section { background: #234190 !important; }
.cb-why-section .cb-section-label { color: #3a7bd5 !important; }
.cb-why-section .cb-section-title { color: #fff !important; border: none !important; }
.cb-why-section .cb-section-desc { color: rgba(255,255,255,0.85) !important; }
.cb-why-card { background: rgba(122,184,232,0.08) !important; border: 1px solid rgba(122,184,232,0.25) !important; border-radius: 8px !important; box-shadow: none !important; }
.cb-why-card:hover { background: rgba(122,184,232,0.15) !important; border-color: rgba(122,184,232,0.5) !important; }
.cb-why-card h3 { color: #fff !important; }
.cb-why-card p { color: rgba(255,255,255,0.85) !important; }
.cb-why-card-icon { background: linear-gradient(135deg, #234190, #234190) !important; }
.cb-why-card.cb-featured { background: linear-gradient(135deg, #234190, #234190) !important; border-color: rgba(122,184,232,0.35) !important; }
/* Services: also dark */
.cb-services-section { background: #234190 !important; }
.cb-services-section .cb-section-label { color: #3a7bd5 !important; }
.cb-services-section .cb-section-title { color: #fff !important; border: none !important; }
.cb-services-section .cb-section-desc { color: rgba(255,255,255,0.85) !important; }
.cb-service-card { background: rgba(122,184,232,0.07) !important; border-color: rgba(122,184,232,0.2) !important; border-radius: 8px !important; }
.cb-service-card:hover { background: rgba(122,184,232,0.14) !important; border-color: rgba(122,184,232,0.4) !important; }
.cb-service-card h3 { color: #fff !important; }
.cb-service-card p { color: rgba(255,255,255,0.85) !important; }
.cb-service-card-number { color: rgba(255,255,255,0.1) !important; }
.cb-service-link { color: #3a7bd5 !important; }
.cb-service-link:link, .cb-service-link:visited { color: #3a7bd5 !important; }
/* Cost: light section, steel header */
.cb-cost-section { background: #fff !important; }
/* FAQ: light, left-border steel */
.cb-faq-section { background: #ffffff !important; }
.cb-faq-item { border-left-color: #3a7bd5 !important; }
.cb-faq-grid { display: grid !important; grid-template-columns: repeat(2,1fr) !important; gap: 20px !important; max-width: 1200px !important; flex-direction: unset !important; }
/* Trust icons: steel blue */
.cb-trust-icon { background: linear-gradient(135deg, #3a7bd5, #3a7bd5) !important; }

/* FAQ question: remove orange box — final override */
button.cb-faq-question, .cb-faq-question,
body button.cb-faq-question,
.cb-page button.cb-faq-question,
.cb-page .cb-faq-item button,
.cb-page .cb-faq-section button,
body .entry-content button.cb-faq-question,
body .site-main button.cb-faq-question,
body #content button.cb-faq-question {
  background: transparent !important;
  background-color: transparent !important;
  color: #234190 !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  cursor: default !important;
  pointer-events: none !important;
  padding: 20px 24px 8px 24px !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
  width: 100% !important;
  display: block !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
button.cb-faq-question::after, body button.cb-faq-question::after,
.cb-page button.cb-faq-question::after,
body .entry-content button.cb-faq-question::after { display: none !important; content: '' !important; }
button.cb-faq-question:hover, button.cb-faq-question:focus,
body button.cb-faq-question:hover, body button.cb-faq-question:focus,
body .entry-content button.cb-faq-question:hover,
body .entry-content button.cb-faq-question:focus {
  background: transparent !important;
  background-color: transparent !important;
  color: #234190 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* ═══ BODY THEME: CB ═══ */
.cb-why-section {
  background: #234190 !important;
}
.cb-why-section .cb-section-title {
  color: #fff !important;
}
.cb-why-section .cb-section-desc {
  color: rgba(255,255,255,0.80) !important;
}
.cb-why-section .cb-section-label {
  color: #3a7bd5 !important;
}
.cb-why-card {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(100,160,220,0.25) !important;
}
.cb-why-card h3 {
  color: #fff !important;
}
.cb-why-card p,
.cb-why-card .cb-featured-stat-label {
  color: rgba(255,255,255,0.78) !important;
}
.cb-why-card-icon {
  background: linear-gradient(135deg,#3a7bd5,#3a7bd5) !important;
}
.cb-faq-section {
  background: #f0f2f5 !important;
}

/* ===== CASSELBERRY: Steel Blue Horizontal Strips ===== */

/* WHY section: white bg, horizontal strip layout */
.cb-why-section { background: #fff !important; }
.cb-why-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
/* Regular cards: flex-row horizontal strips */
.cb-why-card:not(.cb-featured) {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 24px !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #f0f2f5 !important;
  border-radius: 0 !important;
  padding: 24px 8px !important;
  box-shadow: none !important;
}
.cb-why-card:not(.cb-featured):last-child { border-bottom: none !important; }
.cb-why-card:not(.cb-featured) .cb-why-card-icon {
  font-size: 1.8rem !important;
  min-width: 54px !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  background: linear-gradient(135deg, #234190, #234190) !important;
}
.cb-why-card:not(.cb-featured) .cb-why-card-img { display: none !important; }
.cb-why-card:not(.cb-featured) h3 { color: #234190 !important; font-size: 1rem !important; margin-bottom: 4px !important; }
.cb-why-card:not(.cb-featured) p { color: #374151 !important; }

/* Featured card: full-width steel blue horizontal banner */
.cb-why-card.cb-featured {
  background: #234190 !important;
  border-radius: 8px !important;
  padding: 32px 36px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 32px !important;
  border: none !important;
  margin-bottom: 8px !important;
  box-shadow: 0 4px 20px rgba(15,32,64,0.25) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.cb-why-card.cb-featured .cb-why-card-icon {
  font-size: 2.8rem !important;
  min-width: 64px !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  background: rgba(255,255,255,0.12) !important;
}
.cb-why-card.cb-featured .cb-why-card-img { display: none !important; }
.cb-why-card.cb-featured h3 { color: #fff !important; font-size: 1.25rem !important; margin-bottom: 6px !important; }
.cb-why-card.cb-featured p { color: rgba(255,255,255,0.82) !important; }
.cb-why-card.cb-featured .cb-featured-stat { color: #FE4A00 !important; font-size: 2.5rem !important; font-weight: 900 !important; }
.cb-why-card.cb-featured .cb-featured-stat-label { color: rgba(255,255,255,0.85) !important; }

/* Services: steel blue bg, white text cards */
.cb-services-section { background: #234190 !important; }
.cb-services-section h2 { color: #fff !important; }
.cb-services-section .cb-section-label { color: rgba(255,255,255,0.85) !important; }
.cb-services-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 20px !important; }
.cb-service-card {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 8px !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
}
.cb-service-card:hover { background: rgba(255,255,255,0.14) !important; transform: translateY(-2px) !important; }
.cb-service-card-img { display: none !important; }
.cb-service-card h3 { color: #fff !important; padding: 20px 20px 8px !important; font-size: 0.95rem !important; }
.cb-service-card p { color: rgba(255,255,255,0.85) !important; padding: 0 20px 20px !important; font-size: 0.88rem !important; }

/* FAQ: light gray */
.cb-faq-section { background: #f0f2f5 !important; }
.cb-faq-item { background: #fff !important; border: 1px solid #f0f2f5 !important; border-radius: 6px !important; }
.cb-faq-item h3 { color: #234190 !important; }
.cb-faq-item p { color: #374151 !important; }

/* CTA: steel blue bg */
.cb-cta-section { background: #234190 !important; }

/* === CASSELBERRY: Ticket-stub guarantee === */
.cb-guarantee-floating { padding: 0 !important; margin: 0 !important; background: transparent !important; }
.cb-guarantee-ticket-wrap {
  display: flex;
  justify-content: center;
  padding: 0;
  background: #234190;
}
.cb-guarantee-ticket {
  display: flex;
  align-items: center;
  background: #FE4A00;
  clip-path: polygon(0 0, 96% 0, 100% 50%, 96% 100%, 0 100%, 4% 50%);
  padding: 18px 56px;
  gap: 28px;
  max-width: 700px;
  width: 100%;
}
.cb-ticket-left {
  text-align: center;
  flex-shrink: 0;
}
.cb-ticket-num { font-size: 3.2rem; font-weight: 900; color: #fff; line-height: 1; }
.cb-ticket-unit { font-size: 0.75rem; font-weight: 700; color: rgba(255,255,255,0.8); letter-spacing: 2px; text-transform: uppercase; }
.cb-ticket-divider {
  width: 1px;
  height: 60px;
  background: rgba(255,255,255,0.3);
  flex-shrink: 0;
}
.cb-ticket-right { flex: 1; }
.cb-ticket-title { font-size: 1.2rem; font-weight: 800; color: #fff; margin-bottom: 4px; }
.cb-ticket-sub { font-size: 0.85rem; color: rgba(255,255,255,0.85); margin-bottom: 10px; }
.cb-ticket-badges { display: flex; gap: 8px; flex-wrap: wrap; }
.cb-ticket-badges span {
  background: rgba(255,255,255,0.2);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,0.3);
}
@media (max-width: 600px) {
  .cb-guarantee-ticket { clip-path: none; padding: 20px 24px; }
  .cb-ticket-left { display: none; }
  .cb-ticket-divider { display: none; }
}

/* === WHY: L5 Accordion === */
.cb-why-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  grid-template-columns: unset !important;
}
.cb-why-card-img { display: none !important; }
.cb-why-section .cb-why-card {
  border: none !important;
  border-left: 4px solid #FE4A00 !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,0.06) !important;
  padding: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transform: none !important;
}
.cb-why-section .cb-why-card:hover { transform: none !important; background: rgba(255,255,255,0.09) !important; box-shadow: none !important; }
.cb-accordion-trigger {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 24px;
  cursor: pointer;
  width: 100%;
  text-align: left;
  user-select: none;
}
.cb-accordion-trigger:hover { background: rgba(255,255,255,0.04); }
.cb-accordion-icon {
  width: 40px;
  height: 40px;
  background: rgba(240,79,37,0.15);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  flex-shrink: 0;
}
.cb-accordion-title {
  flex: 1;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}
.cb-accordion-arrow {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.85);
  transition: transform 0.2s;
}
.cb-accordion-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
.cb-accordion-body p {
  padding: 0 24px 20px 80px !important;
  color: rgba(255,255,255,0.85) !important;
  font-size: 0.9rem !important;
  line-height: 1.7 !important;
}
.cb-why-card.cb-open .cb-accordion-body { max-height: 300px; }
.cb-why-card.cb-open .cb-accordion-arrow { transform: rotate(180deg); }
.cb-why-card.cb-open .cb-accordion-trigger { background: rgba(255,255,255,0.04); }
/* Featured card: always open, different style */
.cb-why-section .cb-why-card.cb-featured {
  background: rgba(240,79,37,0.12) !important;
  border-left-color: #FE4A00 !important;
  border-left-width: 6px !important;
}
.cb-why-section .cb-why-card.cb-featured .cb-accordion-body { max-height: 300px; }

/* === READABILITY FIX: restore dark bg for accordion (accordion text is white) === */
.cb-why-section { background: #234190 !important; }
.cb-why-section .cb-section-title { color: #fff !important; }
.cb-why-section .cb-section-label { color: rgba(255,255,255,0.85) !important; }
.cb-why-section .cb-section-desc { color: rgba(255,255,255,0.75) !important; }

/* === LAYOUT REFORMAT === */
/* Container: standard 1200px centered */
.cb-container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 32px !important; }

/* Hero: left-aligned text, not crammed to one side */
.cb-hero { text-align: left !important; padding: 100px 0 80px !important; }
.cb-hero-grid { max-width: 700px !important; margin: 0 !important; text-align: left !important; }
.cb-hero h1 { text-align: left !important; font-size: 2.8rem !important; }
.cb-hero-badge { margin: 0 0 20px !important; }
.cb-hero-sub { max-width: 620px !important; margin: 0 0 28px !important; text-align: left !important; }
.cb-hero-ctas { justify-content: flex-start !important; }

/* Sections: left-aligned labels + titles, readable desc width */
.cb-section-label { display: block !important; text-align: left !important; }
.cb-section-title { text-align: left !important; }
.cb-section-desc { max-width: 760px !important; text-align: left !important; }
.cb-featured-stat { color: #FE4A00 !important; font-size: 1.6rem !important; font-weight: 900 !important; }
.cb-featured-stat-label { color: rgba(255,255,255,0.85) !important; font-size: 0.8rem !important; }
/* === SERVICE AREA — EAST ORLANDO STYLE === */
.cb-neighborhoods-section { background: #fff; }
.cb-neighborhoods-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 48px !important; align-items: start !important; }
.cb-neighborhood-list { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
.cb-neighborhood-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  background: #ffffff !important;
  border: 2px solid #FE4A00 !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
  transition: all 0.3s !important;
}
.cb-neighborhood-item:hover { background: #fff !important; border-color: #fe4a00 !important; }
.cb-dot { width:10px; height:10px; background:#FE4A00; border-radius:50%; flex-shrink:0; }
.cb-name { font-weight:600; font-size:0.95rem; color:#234190; }
.cb-zip { font-size:0.8rem; color:#234190; }
.cb-map-container { border-radius: 16px !important; overflow: hidden !important; border: 2px solid #ffffff !important; box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important; }
.cb-map-container iframe { width:100% !important; height:500px !important; border:0 !important; display:block !important; }
@media (max-width:768px) {
  .cb-neighborhoods-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .cb-neighborhood-list { grid-template-columns: 1fr !important; }
  .cb-map-container iframe { height:280px !important; }
}
