.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-67ae012 *//* Modal Wrapper Base */
.flexi-modal-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.flexi-modal-wrapper.is-active {
  opacity: 1;
  pointer-events: auto;
}

/* Ambient Dark Backdrop */
.flexi-modal-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(18, 18, 18, 0.65);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* Modal Card (10px Radius & Light Gradient) */
.flexi-modal-card {
  position: relative;
  width: 90%;
  max-width: 380px;
  background: linear-gradient(145deg, #ffffff 0%, #FAF4F4 100%);
  border-radius: 10px !important;
  padding: 32px 24px 26px;
  box-shadow: 
    0 20px 40px rgba(0, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(217, 7, 0, 0.12);
  transform: scale(0.94) translateY(10px);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 2;
}

.flexi-modal-wrapper.is-active .flexi-modal-card {
  transform: scale(1) translateY(0px);
}

/* Close Button */
.flexi-modal-close {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 50% !important;
  color: #121212 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: none !important;
  outline: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease !important;
}

.flexi-modal-close:hover {
  background: rgba(217, 7, 0, 0.1) !important;
  color: #D90700 !important;
  transform: rotate(90deg) !important;
}

/* Header Text */
.flexi-modal-header h3 {
  margin: 0 0 6px 0 !important;
  color: #121212 !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  line-height: 1.3 !important;
}

.flexi-modal-header p {
  margin: 0 0 24px 0 !important;
  color: #666666 !important;
  font-size: 0.85rem !important;
  text-align: center !important;
}

/* Buttons Container */
.flexi-modal-options {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Base Button Layout & Lens Anchor */
.flexi-option-btn {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 14px 20px !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0px !important;

  /* Motion Setup */
  transform: scale(1) translateX(0px) !important;
  transition: 
    transform 0.5s cubic-bezier(0.16, 1, 0.3, 1),
    letter-spacing 0.4s ease-out,
    box-shadow 0.4s ease-out,
    background-color 0.3s ease,
    border-color 0.3s ease !important;

  /* Glass Top-Edge Rim Highlight */
  box-shadow: 
    inset 0 1px 1.5px 0px rgba(255, 255, 255, 0.85),
    0 2px 6px rgba(0, 0, 0, 0.05) !important;
}

/* Ambient Radial Lens Reflection Sweep Layer */
.flexi-option-btn::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  left: -50% !important;
  width: 70% !important;
  height: 250% !important;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 255, 255, 0.85) 0%,
    rgba(255, 255, 255, 0.3) 40%,
    rgba(255, 255, 255, 0) 75%
  ) !important;
  transform: translateY(-50%) rotate(15deg) !important;
  mix-blend-mode: overlay !important;
  opacity: 0 !important;
  transition: left 0s 0.4s, opacity 0.3s ease-out !important;
  pointer-events: none !important;
  z-index: 10 !important;
}

/* Hover Base Motion & Trigger Lens Sweep */
.flexi-option-btn:hover {
  transform: scale(1.025) translateX(4px) !important;
  letter-spacing: 0.5px !important;
}

.flexi-option-btn:hover::after {
  left: 110% !important;
  opacity: 1 !important;
  transition: 
    left 1.1s cubic-bezier(0.16, 1, 0.3, 1), 
    opacity 0.2s ease-in !important;
}

/* Primary Button Styling (#D90700 Accent) */
.flexi-option-btn.primary {
  background: #D90700 !important;
  color: #ffffff !important;
  border: 1px solid #D90700 !important;
  box-shadow: 
    inset 0 1px 1.5px 0px rgba(255, 255, 255, 0.5),
    0 4px 14px rgba(217, 7, 0, 0.3) !important;
}

.flexi-option-btn.primary:hover {
  background: #b50600 !important;
  border-color: #b50600 !important;
  box-shadow: 
    inset 0 1px 2px 0px rgba(255, 255, 255, 0.8),
    inset 0 0 12px 0px rgba(255, 255, 255, 0.25),
    0 6px 20px rgba(217, 7, 0, 0.45) !important;
}

/* Outline Button Styling (Light base, red on hover) */
.flexi-option-btn.outline {
  background: #ffffff !important;
  color: #121212 !important;
  border: 1px solid rgba(18, 18, 18, 0.15) !important;
}

.flexi-option-btn.outline:hover {
  border-color: #D90700 !important;
  color: #D90700 !important;
  box-shadow: 
    inset 0 1px 2px 0px rgba(255, 255, 255, 1),
    inset 0 0 12px 0px rgba(217, 7, 0, 0.15),
    0 4px 14px rgba(217, 7, 0, 0.12) !important;
}/* End custom CSS */
/* Start custom CSS *//* Viewport-Fixed Header Base (Pure White Top State) */
.main-sticky-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99 !important; /* Reduced from 9999 so Popups render above it */

  /* Top Position: Pure Solid White, No Glass/Blur */
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  background-color: #ffffff !important;
  backdrop-filter: blur(0px) !important;
  -webkit-backdrop-filter: blur(0px) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: none !important;

  /* Smooth Morph Curves */
  transition: 
    padding 0.4s cubic-bezier(0.16, 1, 0.3, 1),
    background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1),
    backdrop-filter 0.4s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.4s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Scrolled State: Transitions into Frosted Glass */
.main-sticky-header.is-scrolled {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  background-color: rgba(255, 255, 255, 0.82) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  box-shadow: 
    0 12px 32px -8px rgba(0, 0, 0, 0.25),
    inset 0 1px 1.5px 0 rgba(255, 255, 255, 0.9) !important;
}

/* Smart Hide on Scroll Down */
.main-sticky-header.header-hidden {
  transform: translateY(-100%) !important;
}

/* Logo Scale Down */
.main-sticky-header img,
.main-sticky-header svg {
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.main-sticky-header.is-scrolled img,
.main-sticky-header.is-scrolled svg {
  transform: scale(0.92);
}

/* ==========================================================
   ELEMENTOR POPUP OVERRIDE SAFEGUARD
   ========================================================== */
/* Ensures header stays behind when any Elementor popup opens */
body.elementor-popup-is-visible .main-sticky-header {
  z-index: 1 !important;
}/* End custom CSS */