/**
 * Guidee Critical CSS – Above-the-fold only
 * Version: 1.2.1
 * Last modified: 2026-03-26
 * DUPLICITY ANALYSIS (v1.2.1): Variables removed (now in base/variables.css). Visibility/tablet/scroll rules centralized here for LCP.
 */
/* GLOBAL SCROLL & OVERFLOW FIX */
html, body {
  overflow-x: hidden !important;
}
/* GLOBAL VISIBILITY SWITCH (used by header + footer) */
.desktop-header-visible,
.desktop-footer-visible {
  display: block !important;
}
.mobile-header-visible,
.mobile-footer-visible {
  display: none !important;
}
@media (max-width: 767px) {
  .desktop-header-visible,
  .desktop-footer-visible {
    display: none !important;
  }
  .mobile-header-visible,
  .mobile-footer-visible {
    display: flex !important;
  }
}
/* TABLET = MOBILE (20px gaps) */
@media (min-width: 768px) and (max-width: 1023px) {
  .desktop-header-visible,
  .desktop-footer-visible {
    display: none !important;
  }
  .mobile-header-visible,
  .mobile-footer-visible {
    display: flex !important;
    padding: 12px 20px !important;
  }
  .elementor-section,
  .elementor-container,
  main,
  .site-main,
  .elementor-location-main,
  .site-content {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
/* HEADER – FIXED + SOLID WHITE (critical for LCP) */
.guidee-header-outer,
.desktop-header-visible,
.mobile-header-visible,
header.elementor-location-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  z-index: 99999 !important;
  background: var(--guidee-white) !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.06) !important;
}
body.admin-bar .guidee-header-outer,
body.admin-bar .desktop-header-visible,
body.admin-bar .mobile-header-visible,
body.admin-bar header.elementor-location-header {
  top: 32px !important;
}
/* CONTENT SPACING ON LOAD */
.site-main,
.elementor-location-main,
main,
.elementor-page .elementor-location-main,
.elementor-page .site-content {
  padding-top: 64px !important;
}
@media (min-width: 1024px) {
  .site-main,
  .elementor-location-main,
  main,
  .elementor-page .elementor-location-main,
  .elementor-page .site-content {
    padding-top: 125px !important;
  }
}
/* SEARCH BAR – CRITICAL LAYOUT */
.guidee-custom-search-wrapper {
  width: 100%;
  height: 40px;
  position: relative;
  z-index: 10000;
}
.guidee-search-input-container {
  display: flex;
  align-items: center;
  width: 100%;
  height: 40px;
  background: #f8f8f8;
  border-radius: 20px;
  padding: 0 48px 0 0;
  transition: background 0.3s ease;
  position: relative;
  border: none !important;
  z-index: 10000;
}
.guidee-search-input {
  flex: 1;
  height: 100%;
  border: none !important;
  background: transparent !important;
  padding: 0 10px 0 0 !important;
  font-size: 16px;
  outline: none !important;
  color: #333333;
  box-sizing: border-box !important;
}
.guidee-search-icon {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 45px;
  padding-left: 12px;
  color: #666666;
  pointer-events: none;
}
/* MOBILE SEARCH OVERLAY – CRITICAL */
#guidee-mobile-search-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(0,0,0,0.5) !important;
  z-index: 9999999 !important;
  display: none !important;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
  pointer-events: none !important;
  padding: 120px 20px 40px !important;
  box-sizing: border-box !important;
  align-items: flex-start !important;
  justify-content: center !important;
}
#guidee-mobile-search-overlay.active {
  display: flex !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
/* FOOTER SKELETON – CRITICAL */
.guidee-footer-outer {
  background: var(--guidee-charcoal) !important;
  color: var(--guidee-white);
  padding: 80px 5% 40px;
  position: relative;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
}
/* MINIMAL TYPOGRAPHY RESET FOR ABOVE-FOLD */
h1, h2, h3, p, a, button {
  font-family: inherit;
  line-height: 1.4;
}