/*
 * ============================================================
 * ARD Pakistan / Lahore View City — Full Responsive Overrides
 * Theme: lahore-view-city | Enqueued via functions.php
 * ============================================================
 */

/* ===== GLOBAL: Prevent horizontal overflow ===== */
/* Use `clip` (not `hidden`) so descendant `position: sticky` keeps working.
   `overflow-x: hidden` on html/body turns them into a scroll container, which
   breaks sticky pinning (e.g. the Leadership section reveal on About Us). */
body,
html {
  overflow-x: clip !important;
  max-width: 100vw !important;
}

.elementor-inner,
.elementor-element,
.e-con {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* ===== GLOBAL: All images contain ===== */
img {
  max-width: 100%;
  height: auto;
}

/* ===== LOCATION CONNECTIVITY: Road-to-label spacing ===== */
#lvcJourneyStraightRoad .lvcjsr-route {
  margin-bottom: 60px;
}
#lvcJourneyStraightRoad .lvcjsr-dot {
  top: 100% !important;
}


/* ==========================================================
   TABLET (max-width: 1024px)
   ========================================================== */
@media (max-width: 1024px) {

  /* --- Header --- */
  .elementor-location-header,
  .elementor-635 {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    box-sizing: border-box !important;
    padding: 0 !important;
  }

  .elementor-location-header {
    background: transparent !important;
  }

  .elementor-635 {
    background: rgba(10, 20, 40, 0.45) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    backdrop-filter: blur(6px) !important;
    transition: background 0.35s ease, backdrop-filter 0.35s ease, box-shadow 0.35s ease !important;
  }

  .elementor-635.header-scrolled {
    background: rgba(10, 20, 40, 0.92) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3) !important;
  }

  .elementor-635 .elementor-section,
  .elementor-635 .elementor-container,
  .elementor-635 .elementor-column-wrap,
  .elementor-635 .elementor-widget-wrap,
  .elementor-635 .elementor-column,
  .elementor-635 .elementor-inner-section,
  .elementor-635 .elementor-top-section,
  .elementor-635 .elementor-element-populated {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .elementor-635 .elementor-top-section {
    min-height: 80px !important;
  }

  .elementor-635 .elementor-element.elementor-element-608b415e > .elementor-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 80px !important;
    padding: 8px 16px !important;
    gap: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-635 .elementor-element-608b415e .elementor-column {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
  }

  /* Col 1 — Hamburger */
  .elementor-635 .elementor-element-608b415e .elementor-column.elementor-element-33193a6f {
    order: 1 !important;
    overflow: hidden !important;
    z-index: 3 !important;
    margin-left: 0 !important;
    width: auto !important;
    max-width: 48px !important;
    position: relative !important;
  }

  /* Col 2 — Logo: absolutely centered */
  .elementor-635 .elementor-element-608b415e .elementor-column.elementor-element-451f30cd {
    order: 2 !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    text-align: center !important;
    z-index: 1 !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  .elementor-635 .elementor-element-451f30cd a,
  .elementor-635 .elementor-element-451f30cd img {
    pointer-events: auto !important;
  }

  .elementor-635 .elementor-element-451f30cd .elementor-widget-wrap {
    justify-content: center !important;
    width: auto !important;
  }

  /* Col 3 — CTA: right */
  .elementor-635 .elementor-element-608b415e .elementor-column.elementor-element-31c1f7f {
    order: 3 !important;
    z-index: 2 !important;
    max-width: none !important;
    overflow: visible !important;
    margin-right: 0 !important;
  }

  /* Hide phone number on tablet */
  .elementor-635 .elementor-element-0d3cf8d {
    display: none !important;
  }

  /* Nav widget */
  .elementor-635 .elementor-element-33193a6f .ekit-wid-con {
    display: flex !important;
    align-items: center !important;
  }

  .elementor-635 .elementor-element-31c1f7f .elementor-widget-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    justify-content: flex-end !important;
  }

  /* Hamburger button */
  .elementor-635 .elementskit-menu-hamburger {
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    border-radius: 5px !important;
    padding: 6px 8px !important;
    color: #fff !important;
  }

  .elementor-635 .elementskit-menu-hamburger .ekit-menu-icon {
    color: #fff !important;
    font-size: 16px !important;
  }

  /* Hide desktop nav */
  .elementor-635 .elementor-nav-menu--main {
    display: none !important;
  }

  /* Logo sizing — tablet */
  .elementor-635 .elementor-widget-theme-site-logo img,
  .elementor-635 .elementor-widget-image img {
    height: 80px !important;
    max-height: 80px !important;
    width: auto !important;
    filter: brightness(1.2) drop-shadow(0 1px 4px rgba(0, 0, 0, 0.35)) !important;
    transition: height 0.35s cubic-bezier(0.22, 0.61, 0.36, 1),
                max-height 0.35s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  }

  /* ===== Shrink header on scroll (tablet + mobile) ===== */
  .elementor-635 .elementor-top-section {
    transition: min-height 0.35s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  }

  .elementor-635 .elementor-top-section.lvc-header-scrolled {
    min-height: 54px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }

  .elementor-635 .lvc-header-scrolled .elementor-element-608b415e > .elementor-container {
    min-height: 54px !important;
    padding: 2px 0 !important;
  }

  .elementor-635 .lvc-header-scrolled .elementor-widget-theme-site-logo img,
  .elementor-635 .lvc-header-scrolled .elementor-widget-image img {
    height: 50px !important;
    max-height: 50px !important;
  }

  /* CTA button */
  .elementor-635 .elementor-element-31c1f7f .elementor-button {
    padding: 5px 10px !important;
    font-size: 8px !important;
    font-weight: 600 !important;
    letter-spacing: 0.4px !important;
    text-transform: uppercase !important;
    border-radius: 50px !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    background: transparent !important;
    color: #fff !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
  }

  /* Off-canvas menu panel */
  .elementor-635 .elementskit-menu-container {
    background: rgba(10, 20, 40, 0.97) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    backdrop-filter: blur(16px) !important;
    position: fixed !important;
    top: 0 !important;
    left: -100vw !important;
    width: 350px !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-height: none !important;
    z-index: 99999 !important;
    overflow-y: auto !important;
    transition: left 0.4s cubic-bezier(0.22, 0.61, 0.24, 1) !important;
    flex-direction: column !important;
    padding-bottom: 40px !important;
    display: flex !important;
  }

  .elementor-635 .elementskit-menu-container.active {
    left: 0 !important;
  }

  .elementor-635 .elementskit-menu-overlay.active {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    z-index: 99998 !important;
  }

  .elementor-635 .elementskit-navbar-nav .ekit-menu-nav-link {
    color: #fff !important;
    font-size: 17px !important;
    padding: 16px 28px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    letter-spacing: 0.3px !important;
  }

  .elementor-635 .elementskit-nav-identity-panel {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 18px 24px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    background: rgba(255, 255, 255, 0.04) !important;
    min-height: 120px !important;
    box-sizing: border-box !important;
    order: -1 !important;
    flex-shrink: 0 !important;
  }

  .elementor-635 .elementskit-nav-identity-panel .elementskit-nav-logo {
    display: flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
  }

  .elementor-635 .elementskit-nav-identity-panel .elementskit-nav-logo img {
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
    filter: brightness(1.2) drop-shadow(0 1px 4px rgba(0, 0, 0, 0.35)) !important;
  }

  .elementor-635 .elementskit-menu-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    font-family: Arial, sans-serif !important;
  }

  .elementor-635 .elementskit-menu-close:hover {
    background: rgba(255, 255, 255, 0.18) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
    transform: rotate(90deg) !important;
  }

  .elementor-635 .elementskit-navbar-nav {
    flex: 0 1 auto !important;
    order: 0 !important;
    /* Force the menu list to stack vertically inside the slide-in panel,
       regardless of ElementsKit's responsive-class state. */
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
  }

  .elementor-635 .elementskit-navbar-nav > li {
    width: 100% !important;
    margin: 0 !important;
  }

  /* Normalise every top-level menu link so all items (incl. the first, "Blog")
     align identically inside the panel — full width, same padding & divider. */
  .elementor-635 .elementskit-navbar-nav > li > a,
  .elementor-635 .elementskit-navbar-nav > li > .ekit-menu-nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 16px 28px !important;
    text-align: left !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  }

  .elementor-635 .elementor-element-31c1f7f .elementor-button-content-wrapper,
  .elementor-635 .elementor-element-31c1f7f .elementor-button-text {
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
    color: inherit !important;
    line-height: inherit !important;
  }

  /* Remove widget-level border on CTA button widget */
  .elementor-635 .elementor-element-f2e604a {
    border: none !important;
    outline: none !important;
  }

  /* --- Hero --- */
  .elementor-element-4956ad7 {
    min-height: auto !important;
    height: auto !important;
  }

  /* --- Vision Cards --- */
  .elementor-element-cef44ff .e-con-inner,
  .elementor-element-a980424 .e-con-inner,
  .elementor-element-a980424.e-con {
    flex-wrap: wrap !important;
    gap: 16px !important;
  }

  .elementor-element-a980424 > .e-con-inner > .e-con {
    width: 48% !important;
    min-width: 48% !important;
    flex: 0 0 48% !important;
  }

  /* --- Trusted Partner + Form --- */
  .elementor-element-a67a89d .elementor-container,
  .elementor-element-ac13961 .elementor-container {
    flex-wrap: wrap !important;
  }

  .elementor-element-a67a89d .elementor-column,
  .elementor-element-ac13961 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- About Us --- */
  .elementor-element-010b223 .elementor-container,
  .elementor-element-67be1c9 .elementor-container,
  .elementor-element-20743ee .elementor-container {
    flex-wrap: wrap !important;
  }

  .elementor-element-010b223 .elementor-column,
  .elementor-element-67be1c9 .elementor-column,
  .elementor-element-20743ee .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Commitment to Excellence --- */
  .elementor-element-e7da66e .elementor-container,
  .elementor-element-08d72fa .elementor-container {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }

  .elementor-element-08d72fa .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-element-76184e7 .elementor-container,
  .elementor-element-a433fcc .elementor-container {
    flex-wrap: wrap !important;
  }

  .elementor-element-76184e7 .elementor-column,
  .elementor-element-a433fcc .elementor-column {
    width: 48% !important;
    max-width: 48% !important;
  }

  /* --- Contact --- */
  .elementor-element-3119cca .e-con-inner,
  .elementor-element-3119cca > .e-con-inner > .e-con {
    flex-wrap: wrap !important;
  }

  .elementor-element-3119cca > .e-con-inner > .e-con > .e-con {
    width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* --- Gallery --- */
  .elementor-element-df10105 .e-con-inner,
  .elementor-element-b1c93a6 .e-con-inner,
  .elementor-element-4a2c967 .e-con-inner {
    flex-wrap: wrap !important;
  }

  .elementor-element-b1c93a6 > .e-con-inner > .e-con,
  .elementor-element-4a2c967 > .e-con-inner > .e-con {
    width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* --- Expect Different --- */
  .elementor-element-4a1317b .elementor-container {
    flex-wrap: wrap !important;
  }

  .elementor-element-4a1317b .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Features --- */
  .elementor-element-e501825 .elementor-container,
  .elementor-element-5cbe460 .elementor-container {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }

  .elementor-element-5cbe460 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Testimonials --- */
  .elementor-element-a285765 .elementor-container {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }

  /* --- Premium Services --- */
  .elementor-element-908b381 .elementor-container,
  .elementor-element-03b9dde .elementor-container {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }

  .elementor-element-03b9dde .elementor-column,
  .elementor-element-d49e9f8 .elementor-column,
  .elementor-element-44d8bce .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Simple Ways --- */
  .elementor-element-7c98f74 .elementor-container {
    flex-wrap: wrap !important;
  }

  .elementor-element-7c98f74 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Footer --- */
  .elementor-70 .elementor-container {
    flex-wrap: wrap !important;
  }

  .elementor-70 .elementor-column {
    width: 50% !important;
    max-width: 50% !important;
  }

  /* --- Flex containers wrapping --- */
  .e-con.e-parent > .e-con-inner {
    flex-wrap: wrap !important;
  }
}


/* ==========================================================
   MOBILE (max-width: 767px)
   ========================================================== */
@media (max-width: 767px) {

  /* ===== GLOBAL MOBILE SPACING & TYPE ===== */
  .elementor-section:not(.elementor-635 .elementor-section) > .elementor-container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .e-con-boxed > .e-con-inner {
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
  }

  /* Section vertical spacing (exclude hero) */
  .elementor-top-section:not(.elementor-635 .elementor-top-section),
  .e-con.e-parent:not(.elementor-element-4956ad7) {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    margin-bottom: 0 !important;
  }

  /* Heading sizes - high specificity to beat Elementor inline */
  .elementor-widget-heading .elementor-heading-title,
  .elementor-heading-title {
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }

  h1.elementor-heading-title,
  .elementor-widget-heading h1 {
    font-size: 28px;
    line-height: 1.2;
  }

  h2.elementor-heading-title,
  .elementor-widget-heading h2 {
    font-size: 24px;
    line-height: 1.2;
  }

  h3.elementor-heading-title,
  .elementor-widget-heading h3 {
    font-size: 20px;
    line-height: 1.3;
  }

  h4.elementor-heading-title,
  .elementor-widget-heading h4 {
    font-size: 18px;
    line-height: 1.3;
  }

  /* Paragraphs */
  .elementor-widget-text-editor p,
  .elementor-widget-text-editor {
    font-size: 14px;
    line-height: 1.6;
  }

  /* Flex containers: force column stacking */
  .e-con.e-parent > .e-con-inner {
    flex-wrap: wrap !important;
    flex-direction: column !important;
  }

  .e-con.e-parent > .e-con-inner > .e-con.e-child {
    width: 100% !important;
    flex: 0 0 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* Old sections: force column (exclude header) */
  .elementor-section:not(.elementor-635 .elementor-section) .elementor-container {
    flex-direction: column !important;
  }

  .elementor-section:not(.elementor-635 .elementor-section) .elementor-container > .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }


  /* ===== HEADER — Mobile Overrides (smaller sizes) ===== */

  /* Mobile header height */
  .elementor-635 .elementor-top-section {
    min-height: 70px !important;
  }

  .elementor-635 .elementor-element.elementor-element-608b415e > .elementor-container {
    min-height: 70px !important;
    padding: 8px 16px !important;
  }

  /* Mobile margins */
  .elementor-635 .elementor-element-608b415e .elementor-column.elementor-element-33193a6f {
    margin-left: 0 !important;
  }

  .elementor-635 .elementor-element-608b415e .elementor-column.elementor-element-31c1f7f {
    margin-right: 0 !important;
  }

  /* Mobile logo — full square, no crop */
  .elementor-635 .elementor-widget-theme-site-logo img,
  .elementor-635 .elementor-widget-image img {
    height: 70px !important;
    max-height: 70px !important;
    width: auto !important;
  }

  /* Mobile CTA button */
  .elementor-635 .elementor-element-31c1f7f .elementor-button {
    padding: 5px 10px !important;
    font-size: 7.5px !important;
  }

  /* Mobile hamburger */
  .elementor-635 .elementskit-menu-hamburger {
    padding: 6px 8px !important;
  }

  .elementor-635 .elementskit-menu-hamburger .ekit-menu-icon {
    font-size: 16px !important;
  }

  /* Mobile menu panel — narrower */
  .elementor-635 .elementskit-menu-container {
    width: 280px !important;
  }

  .elementor-635 .elementskit-navbar-nav .ekit-menu-nav-link {
    font-size: 15px !important;
    padding: 14px 20px !important;
  }

  .elementor-635 .elementskit-navbar-nav > li > a,
  .elementor-635 .elementskit-navbar-nav > li > .ekit-menu-nav-link {
    padding: 14px 20px !important;
  }

  .elementor-635 .elementskit-nav-identity-panel {
    min-height: 114px !important;
    padding: 10px 20px !important;
  }

  .elementor-635 .elementskit-nav-identity-panel .elementskit-nav-logo img {
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
  }

  .elementor-635 .elementskit-menu-close {
    width: 34px !important;
    height: 34px !important;
    font-size: 16px !important;
  }


  /* ===== HERO SECTION — Full-Screen Mobile ===== */
  .elementor-element-4956ad7 {
    min-height: 100vh !important;
    min-height: 100dvh !important;
    height: 100vh !important;
    height: 100dvh !important;
    padding: 0 !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: stretch !important;
  }

  /* Hero widget fills container */
  .elementor-element-4956ad7 > .elementor-widget-wrap,
  .elementor-element-4956ad7 > .elementor-element-8b6031f,
  .elementor-element-4956ad7 .elementor-widget-container {
    width: 100% !important;
    height: 100% !important;
  }

  /* Slider fills hero */
  .elementor-element-4956ad7 .lvc-hero-slider {
    height: 100vh !important;
    height: 100dvh !important;
    width: 100% !important;
  }

  .elementor-element-4956ad7 .swiper-wrapper {
    height: 100% !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__slide {
    height: 100vh !important;
    height: 100dvh !important;
  }

  /* Background image — cover, full bleed */
  .elementor-element-4956ad7 .lvc-hero-slider__background {
    position: absolute !important;
    inset: 0 !important;
    background-size: cover !important;
    background-position: center center !important;
  }

  /* Dark gradient overlay for text readability */
  .elementor-element-4956ad7 .lvc-hero-slider__overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.15) 0%,
      rgba(0, 0, 0, 0.1) 40%,
      rgba(0, 10, 30, 0.65) 100%
    ) !important;
    z-index: 1 !important;
  }

  /* Hero content — centered vertically at bottom */
  .elementor-element-4956ad7 .lvc-hero-slider .swiper-slide .lvc-hero-slider__inner {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding: 0 24px 100px !important;
    text-align: center !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__content {
    max-width: 100% !important;
    text-align: center !important;
  }

  /* Hero title — premium centered typography */
  .elementor-element-4956ad7 .lvc-hero-slider__title {
    font-size: 30px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    color: #fff !important;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3) !important;
    margin-bottom: 20px !important;
    text-align: center !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__title-first {
    display: block !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    opacity: 0.8 !important;
    margin-bottom: 8px !important;
    text-align: center !important;
  }

  /* Hero CTA button — gold pill, centered */
  .elementor-element-4956ad7 .lvc-hero-slider__button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 18px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: none !important;
    color: #4A3014 !important;
    background: linear-gradient(180deg, #ddd0b8 0%, #C8A977 100%) !important;
    border-radius: 999px !important;
    border: 1px solid #9b8a6a !important;
    text-decoration: none !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
    box-shadow: 0 8px 22px rgba(26, 16, 3, 0.3) !important;
    margin: 0 auto !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 26px rgba(26, 16, 3, 0.35) !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__button-arrow {
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #9b8a6a !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__button-arrow img {
    width: 16px !important;
    height: 16px !important;
  }

  /* Hero slider navigation */
  .elementor-element-4956ad7 .elementor-swiper-button {
    display: none !important;
  }


  /* ===== VISION CARDS ===== */
  .elementor-element-cef44ff {
    padding: 40px 16px !important;
  }

  .elementor-element-cef44ff .e-con-inner {
    flex-direction: column !important;
    gap: 20px !important;
  }

  .elementor-element-a980424 > .e-con-inner > .e-con {
    width: 100% !important;
    min-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .elementor-element-cef44ff .elementor-heading-title {
    font-size: 22px !important;
    text-align: center !important;
  }


  /* ===== TRUSTED PARTNER + BOOKING FORM ===== */
  .elementor-element-a67a89d {
    padding: 40px 16px !important;
  }

  .elementor-element-a67a89d .elementor-container {
    flex-direction: column !important;
    gap: 24px !important;
  }

  .elementor-element-a67a89d .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-element-a67a89d .elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.2 !important;
  }

  /* Booking form */
  .elementor-element-a67a89d form,
  .elementor-element-a67a89d .fluentform,
  .elementor-element-a67a89d .ff-t-container {
    position: relative !important;
    z-index: 2 !important;
  }


  /* ===== ABOUT US SECTION ===== */
  .elementor-element-010b223 {
    padding: 40px 16px !important;
  }

  .elementor-element-010b223 .elementor-container {
    flex-direction: column !important;
    gap: 24px !important;
  }

  .elementor-element-010b223 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-element-010b223 .elementor-heading-title {
    font-size: 26px !important;
  }

  /* Video/iframe in about us */
  .elementor-element-010b223 .elementor-video-wrapper,
  .elementor-element-010b223 video,
  .elementor-element-010b223 iframe {
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 16/9;
  }

  /* About Us list items (Vision/Values, Excellence) */
  .elementor-element-010b223 .elementor-icon-list-item {
    font-size: 16px !important;
  }

  .elementor-element-010b223 .elementor-icon-list-text {
    font-size: 18px !important;
    font-weight: 700 !important;
  }


  /* ===== LOCATION CONNECTIVITY (d7f9c0e) ===== */
  /* ScrollTrigger disabled on mobile via JS — make section auto-height */
  .elementor-element-d7f9c0e {
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  #lvcJourneyStraightRoad {
    min-height: auto !important;
    height: auto !important;
    padding: 40px 0 !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-shell {
    height: auto !important;
    min-height: auto !important;
    padding: 24px 10px 20px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-imageBox {
    height: 200px !important;
    border-radius: 16px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-panel {
    padding: 18px 16px !important;
    border-radius: 16px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-panel h3 {
    font-size: 24px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-panel h4 {
    font-size: 18px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-panel p {
    font-size: 13px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-route {
    height: 130px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-top h2 {
    font-size: 24px !important;
  }


  /* ===== COMMITMENT TO EXCELLENCE ===== */
  .elementor-element-e7da66e {
    padding: 40px 16px !important;
  }

  .elementor-element-e7da66e .elementor-container {
    max-width: 100% !important;
  }

  .elementor-element-08d72fa .elementor-container {
    flex-direction: column !important;
  }

  .elementor-element-08d72fa .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
  }

  /* Stats rows — 2×2 grid: icon above counter in each cell */
  .elementor-element-76184e7 .elementor-container,
  .elementor-element-a433fcc .elementor-container {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto auto !important;
    gap: 0 20px !important;
    flex-direction: unset !important;
    justify-items: center !important;
  }

  /* Row 1: icon1→col1/row1, counter1→col1/row2, icon2→col2/row1, counter2→col2/row2 */
  .elementor-element-76184e7 .elementor-element-8b5d633 { grid-column: 1; grid-row: 1; }
  .elementor-element-76184e7 .elementor-element-9885e6c { grid-column: 1; grid-row: 2; }
  .elementor-element-76184e7 .elementor-element-4c15ca7 { grid-column: 2; grid-row: 1; }
  .elementor-element-76184e7 .elementor-element-b98a326 { grid-column: 2; grid-row: 2; }

  /* Row 2: same pattern */
  .elementor-element-a433fcc .elementor-element-fd40147 { grid-column: 1; grid-row: 1; }
  .elementor-element-a433fcc .elementor-element-1aee61a { grid-column: 1; grid-row: 2; }
  .elementor-element-a433fcc .elementor-element-d5c856e { grid-column: 2; grid-row: 1; }
  .elementor-element-a433fcc .elementor-element-1e5c9fc { grid-column: 2; grid-row: 2; }

  /* All stat columns: center content, auto width */
  .elementor-element-76184e7 .elementor-column,
  .elementor-element-a433fcc .elementor-column {
    width: auto !important;
    max-width: 100% !important;
    margin-bottom: 0 !important;
    text-align: center !important;
  }

  /* Stat icons: smaller on mobile, centered */
  .elementor-element-76184e7 .elementor-widget-image img,
  .elementor-element-a433fcc .elementor-widget-image img {
    max-width: 70px !important;
    margin: 0 auto !important;
  }

  /* Counter numbers */
  .elementor-element-76184e7 .elementor-counter-number-wrapper,
  .elementor-element-a433fcc .elementor-counter-number-wrapper {
    font-size: 28px !important;
    justify-content: center !important;
  }

  /* Counter labels */
  .elementor-element-76184e7 .elementor-widget-text-editor,
  .elementor-element-a433fcc .elementor-widget-text-editor {
    text-align: center !important;
    font-size: 13px !important;
  }

  /* Add bottom spacing between the two stat rows */
  .elementor-element-76184e7 {
    margin-bottom: 24px !important;
  }


  /* ===== CONTACT SECTION ===== */
  .elementor-element-3119cca {
    padding: 40px 16px !important;
  }

  .elementor-element-3119cca .e-con-inner {
    flex-direction: column !important;
  }

  .elementor-element-3119cca > .e-con-inner > .e-con {
    width: 100% !important;
    flex: 0 0 100% !important;
  }


  /* ===== GALLERY ===== */
  .elementor-element-df10105 {
    padding: 40px 16px !important;
  }

  .elementor-element-df10105 .e-con-inner {
    flex-direction: column !important;
  }

  .elementor-element-b1c93a6 .e-con-inner,
  .elementor-element-4a2c967 .e-con-inner {
    flex-direction: column !important;
  }

  .elementor-element-b1c93a6 > .e-con-inner > .e-con,
  .elementor-element-4a2c967 > .e-con-inner > .e-con {
    width: 100% !important;
    flex: 0 0 100% !important;
  }

  .elementor-element-df10105 img {
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
  }


  /* ===== LOOKING FOR YOUR ===== */
  .elementor-element-ba7c839 .e-con-inner {
    flex-direction: column !important;
  }

  .elementor-element-ba7c839 .e-con {
    width: 100% !important;
    flex: 0 0 100% !important;
  }


  /* ===== GLIMPSE INTO FUTURE ===== */
  .elementor-element-ede5dc5 .e-con-inner {
    flex-direction: column !important;
  }

  .elementor-element-ede5dc5 .e-con {
    width: 100% !important;
    flex: 0 0 100% !important;
  }


  /* ===== EXPECT DIFFERENT ===== */
  .elementor-element-4a1317b {
    padding: 40px 16px !important;
  }

  .elementor-element-4a1317b .elementor-container {
    flex-direction: column !important;
    gap: 16px !important;
  }

  .elementor-element-4a1317b .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  .elementor-element-42c79ee .elementor-container {
    flex-direction: column !important;
  }

  .elementor-element-42c79ee .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }


  /* ===== FEATURES SECTION ===== */
  .elementor-element-e501825 {
    padding: 40px 16px !important;
  }

  .elementor-element-e501825 .elementor-container {
    max-width: 100% !important;
  }

  .elementor-element-5cbe460 .elementor-container {
    flex-direction: column !important;
  }

  .elementor-element-5cbe460 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Feature cards stacking */
  .elementor-element-947bce9 .elementor-container,
  .elementor-element-c3d664d .elementor-container,
  .elementor-element-a345c33 .elementor-container {
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
  }


  /* ===== TESTIMONIALS ===== */
  .elementor-element-a285765 {
    padding: 40px 16px !important;
  }

  .elementor-element-a285765 .elementor-container {
    max-width: 100% !important;
  }

  .elementor-element-a285765 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Carousel overflow fix */
  .elementor-element-a285765 .swiper-container,
  .elementor-element-a285765 .swiper {
    max-width: 100% !important;
    overflow: hidden !important;
  }


  /* ===== PREMIUM SERVICES ===== */
  .elementor-element-908b381 {
    padding: 40px 16px !important;
  }

  .elementor-element-908b381 .elementor-container {
    max-width: 100% !important;
  }

  .elementor-element-03b9dde .elementor-container {
    flex-direction: column !important;
  }

  .elementor-element-03b9dde .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-element-d49e9f8 .elementor-container,
  .elementor-element-44d8bce .elementor-container {
    flex-direction: column !important;
    gap: 16px !important;
  }

  .elementor-element-d49e9f8 .elementor-column,
  .elementor-element-44d8bce .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }


  /* ===== SIMPLE WAYS TO INVEST ===== */
  .elementor-element-7c98f74 {
    padding: 40px 16px !important;
  }

  .elementor-element-7c98f74 .elementor-container {
    flex-direction: column !important;
    text-align: center !important;
  }

  .elementor-element-7c98f74 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }


  /* ===== FOOTER ===== */
  .elementor-location-footer .elementor-container,
  .elementor-70 .elementor-container {
    flex-direction: column !important;
    padding: 0 16px !important;
  }

  .elementor-70 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 24px !important;
  }

  .elementor-element-3f0be783 .elementor-container {
    flex-direction: column !important;
  }

  .elementor-element-3f0be783 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 24px !important;
  }

  .elementor-element-5bbf11bf .elementor-container {
    flex-direction: column !important;
    text-align: center !important;
  }

  .elementor-element-5bbf11bf .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Footer copyright bar */
  .elementor-element-618e1ea8 .elementor-container {
    flex-direction: column !important;
    text-align: center !important;
    gap: 8px !important;
  }

  .elementor-element-618e1ea8 .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
  }


  /* ===== BUTTONS ===== */
  .elementor-button-wrapper {
    text-align: center !important;
  }

  .elementor-button {
    width: auto !important;
    max-width: 100% !important;
    padding: 12px 24px !important;
    font-size: 14px !important;
  }


  /* ===== ELEMENTOR WIDGETS: Icon boxes, counters ===== */
  .elementor-widget-icon-box .elementor-icon-box-wrapper {
    flex-direction: column !important;
    text-align: center !important;
  }

  .elementor-counter .elementor-counter-number-wrapper {
    font-size: 32px !important;
  }


  /* ===== FIX: Popups & Sticky elements ===== */
  .elementor-element [class*="sticky"],
  .elementor-sticky--active {
    max-width: 100% !important;
  }

  /* ===== FIX: Elementor columns with inline min-height ===== */
  .elementor-column-wrap,
  .elementor-widget-wrap {
    min-height: 0 !important;
  }
}


/* ==========================================================
   SMALL MOBILE (max-width: 400px)
   ========================================================== */
@media (max-width: 400px) {

  h1.elementor-heading-title,
  .elementor-widget-heading h1 {
    font-size: 24px;
  }

  h2.elementor-heading-title,
  .elementor-widget-heading h2 {
    font-size: 20px;
  }

  h3.elementor-heading-title,
  .elementor-widget-heading h3 {
    font-size: 18px;
  }

  .elementor-section > .elementor-container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .e-con-boxed > .e-con-inner {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__title {
    font-size: 24px !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__title-first {
    font-size: 12px !important;
    letter-spacing: 3px !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider__button {
    padding: 8px 18px !important;
    font-size: 9px !important;
  }

  .elementor-element-4956ad7 .lvc-hero-slider .swiper-slide .lvc-hero-slider__inner {
    padding: 0 16px 100px !important;
  }

  .elementor-button {
    padding: 10px 18px !important;
    font-size: 13px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-top h2 {
    font-size: 20px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-imageBox {
    height: 160px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-panel h3 {
    font-size: 20px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-panel h4 {
    font-size: 16px !important;
  }

  #lvcJourneyStraightRoad .lvcjsr-route {
    height: 110px !important;
  }
}
