.elementor-widget-section .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-section .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-image .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-image .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), OpenSans;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), OpenSans;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-19994 .elementor-element.elementor-element-f7af000{text-align:center;}.elementor-19994 .elementor-element.elementor-element-f7af000 .elementor-heading-title{font-family:"D-DIN", OpenSans;font-size:35px;font-weight:900;color:#000000;}.elementor-widget-template .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-template .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-19994 .elementor-element.elementor-element-67372eb > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-bc-flex-widget .elementor-19994 .elementor-element.elementor-element-68bb6c5.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-19994 .elementor-element.elementor-element-68bb6c5.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-19994 .elementor-element.elementor-element-68bb6c5 > .elementor-element-populated{padding:0px 0px 0px 40px;}.elementor-19994 .elementor-element.elementor-element-31f8523 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-31f8523{text-align:start;}.elementor-19994 .elementor-element.elementor-element-31f8523 .elementor-heading-title{font-family:"D-DIN", OpenSans;font-size:42px;font-weight:800;color:#000000;}.elementor-widget-text-editor .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), OpenSans;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-19994 .elementor-element.elementor-element-8cf8e27{width:var( --container-widget-width, 75.735% );max-width:75.735%;--container-widget-width:75.735%;--container-widget-flex-grow:0;column-gap:0px;text-align:start;font-family:"D-DIN", OpenSans;font-size:16px;font-weight:400;line-height:1.25em;color:#000000;}.elementor-19994 .elementor-element.elementor-element-8cf8e27 > .elementor-widget-container{margin:-20px 0px 25px 0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), OpenSans;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-button .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-button .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-19994 .elementor-element.elementor-element-8b5175d .elementor-button{background-color:#61CE7000;font-family:"D-DIN", OpenSans;font-weight:700;text-transform:uppercase;fill:#000000;color:#000000;border-style:solid;border-width:2px 2px 2px 2px;border-radius:30px 30px 30px 30px;padding:10px 20px 10px 20px;}.elementor-19994 .elementor-element.elementor-element-8b5175d > .elementor-widget-container{margin:6px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-1eb49c1:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-19994 .elementor-element.elementor-element-1eb49c1 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00519E;}.elementor-19994 .elementor-element.elementor-element-1eb49c1 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-19994 .elementor-element.elementor-element-1eb49c1 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-video .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-video .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), OpenSans;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-19994 .elementor-element.elementor-element-dedb9a7 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-19994 .elementor-element.elementor-element-e7ebe3c:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-19994 .elementor-element.elementor-element-e7ebe3c > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00519E;}.elementor-19994 .elementor-element.elementor-element-e7ebe3c > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-19994 .elementor-element.elementor-element-e7ebe3c > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-19994 .elementor-element.elementor-element-6c165d6.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-19994 .elementor-element.elementor-element-6c165d6.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-19994 .elementor-element.elementor-element-6c165d6 > .elementor-element-populated{padding:0px 0px 0px 40px;}.elementor-19994 .elementor-element.elementor-element-c3efa6b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-c3efa6b{text-align:start;}.elementor-19994 .elementor-element.elementor-element-c3efa6b .elementor-heading-title{font-family:"D-DIN", OpenSans;font-size:42px;font-weight:800;color:#000000;}.elementor-19994 .elementor-element.elementor-element-b01d38d{width:var( --container-widget-width, 75.735% );max-width:75.735%;--container-widget-width:75.735%;--container-widget-flex-grow:0;column-gap:0px;text-align:start;font-family:"D-DIN", OpenSans;font-size:16px;font-weight:400;line-height:1.25em;color:#000000;}.elementor-19994 .elementor-element.elementor-element-b01d38d > .elementor-widget-container{margin:-20px 0px 25px 0px;}.elementor-19994 .elementor-element.elementor-element-ee36106 .elementor-button{background-color:#61CE7000;font-family:"D-DIN", OpenSans;font-weight:700;text-transform:uppercase;fill:#000000;color:#000000;border-style:solid;border-width:2px 2px 2px 2px;border-radius:30px 30px 30px 30px;padding:10px 20px 10px 20px;}.elementor-19994 .elementor-element.elementor-element-ee36106 > .elementor-widget-container{margin:6px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-3e54bac{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;}.elementor-19994 .elementor-element.elementor-element-3e54bac > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-19994 .elementor-element.elementor-element-e134686 > .elementor-widget-container{margin:-20px 0px 0px 0px;}@media(max-width:767px){.elementor-19994 .elementor-element.elementor-element-bafe1ad{padding:0px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-3b087f2 > .elementor-container{max-width:603px;}.elementor-19994 .elementor-element.elementor-element-3b087f2{padding:0px 16px 0px 16px;}.elementor-19994 .elementor-element.elementor-element-68bb6c5 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-31f8523{text-align:center;}.elementor-19994 .elementor-element.elementor-element-8cf8e27{width:100%;max-width:100%;text-align:center;}.elementor-19994 .elementor-element.elementor-element-8b5175d{width:100%;max-width:100%;}.elementor-19994 .elementor-element.elementor-element-8b5175d > .elementor-widget-container{margin:0px 0px 15px 0px;}.elementor-19994 .elementor-element.elementor-element-b9e8e58{padding:0px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-64814e1 > .elementor-container{max-width:603px;}.elementor-19994 .elementor-element.elementor-element-64814e1{padding:0px 16px 0px 16px;}.elementor-19994 .elementor-element.elementor-element-6c165d6{width:100%;}.elementor-19994 .elementor-element.elementor-element-6c165d6.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-19994 .elementor-element.elementor-element-6c165d6 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-19994 .elementor-element.elementor-element-c3efa6b{width:100%;max-width:100%;text-align:center;}.elementor-19994 .elementor-element.elementor-element-c3efa6b > .elementor-widget-container{padding:10px 016px 0px 016px;}.elementor-19994 .elementor-element.elementor-element-b01d38d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 016px 0px 016px;}.elementor-19994 .elementor-element.elementor-element-b01d38d{--container-widget-width:691px;--container-widget-flex-grow:0;width:var( --container-widget-width, 691px );max-width:691px;align-self:center;}.elementor-19994 .elementor-element.elementor-element-ee36106{width:100%;max-width:100%;}.elementor-19994 .elementor-element.elementor-element-ee36106 > .elementor-widget-container{padding:00px 016px 0px 016px;}.elementor-19994 .elementor-element.elementor-element-d450d34{text-align:center;}.elementor-19994 .elementor-element.elementor-element-d450d34 img{width:100%;}}/* Start custom CSS for image, class: .elementor-element-5375f96 *//* Rounded corners for driver action tiles */
.lm-press-card{
  border-radius:25px;
  overflow:hidden; /* ensures images follow the radius */
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-bafe1ad *//* ============================
   Interactive tiles (lift + press + subtle 3D hover)
   Optimised for Elementor Image widgets
   No bezel
============================ */

/* Base targets: widget wrapper + container + link */
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card,
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card .elementor-widget-container,
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card a{
  position: relative;
  display: block;
  overflow: hidden;
  transform: translateZ(0);
  transition: transform 220ms cubic-bezier(.2,.8,.2,1),
              filter 220ms ease;
  will-change: transform, filter;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

/* Ensure image behaves correctly */
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card img{
  display:block;
  width:100%;
  height:auto;
  transition: transform 420ms cubic-bezier(.2,.8,.2,1);
}

/* Subtle highlight overlay */
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card::before{
  content:"";
  position:absolute;
  inset:0;
  background: radial-gradient(
    120% 80% at 30% 10%,
    rgba(255,255,255,.18),
    rgba(255,255,255,0) 55%
  );
  opacity:0;
  transition: opacity 200ms ease;
  pointer-events:none;
}

/* ============================
   Desktop hover interaction
============================ */

@media (hover:hover) and (pointer:fine){

  .elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card{
    transform-style: preserve-3d;
    perspective: 800px;
  }

  /* Lift + subtle tilt */
  .elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card:hover{
    transform: translateY(-6px) rotateX(2deg) rotateY(-2deg);
  }

  /* Light highlight */
  .elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card:hover::before{
    opacity:1;
  }

  /* Image zoom */
  .elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card:hover img{
    transform: scale(1.04);
  }
}

/* ============================
   Press effect (mouse + touch)
============================ */

.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card:active,
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card a:active,
.elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card:active .elementor-widget-container{
  transform: translateY(-2px) scale(.97);
  filter: brightness(.95);
}

/* ============================
   Stronger tactile feedback on mobile
============================ */

@media (hover:none){
  .elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card:active,
  .elementor-19994 .elementor-element.elementor-element-bafe1ad .lm-press-card a:active{
    transform: scale(.96);
    filter: brightness(.92);
  }
}
/* ============================
   Focus effect (dim other tiles)
============================ */

@media (hover:hover) and (pointer:fine){

  /* dim all cards when hovering the container */
  .elementor-19994 .elementor-element.elementor-element-bafe1ad:hover .lm-press-card{
    filter: brightness(.85);
  }

  /* keep hovered card bright */
  .elementor-19994 .elementor-element.elementor-element-bafe1ad:hover .lm-press-card:hover{
    filter: brightness(1);
  }

}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-58b7486 *//* ============================
   Ultra-premium dual-layer shimmer
   (clean-coat reflection vibe)
============================ */

.hero-banner-shimmer-right{
  position: relative;
  overflow: hidden;
  -webkit-tap-highlight-color: transparent;
}

/* Wide soft reflection */
.hero-banner-shimmer-right::before{
  content:"";
  position:absolute;
  top:0;
  left:-180%;
  width:70%;
  height:100%;
  background: linear-gradient(
    110deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.06) 40%,
    rgba(255,255,255,.10) 50%,
    rgba(255,255,255,.06) 60%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-18deg);
  opacity:.9;
  transition: left 2.1s cubic-bezier(.2,.8,.2,1), opacity 300ms ease;
  pointer-events:none;
}

/* Thin specular highlight line */
.hero-banner-shimmer-right::after{
  content:"";
  position:absolute;
  top:-10%;
  left:-200%;
  width:35%;
  height:120%;
  background: linear-gradient(
    110deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.10) 46%,
    rgba(255,255,255,.28) 50%,
    rgba(255,255,255,.10) 54%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-18deg);
  opacity:.75;
  transition: left 1.55s cubic-bezier(.2,.9,.2,1);
  pointer-events:none;
  mix-blend-mode: screen;
}

/* Optional: tiny premium “engage” lift without scaling */
.hero-banner-shimmer-right:hover{
  filter: brightness(1.03) contrast(1.02);
}

/* Trigger both layers */
.hero-banner-shimmer-right:hover::before{
  left:160%;
}

.hero-banner-shimmer-right:hover::after{
  left:190%;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .hero-banner-shimmer-right,
  .hero-banner-shimmer-right::before,
  .hero-banner-shimmer-right::after{
    transition:none !important;
  }
  .hero-banner-shimmer-right:hover{
    filter:none !important;
  }
  .hero-banner-shimmer-right::before,
  .hero-banner-shimmer-right::after{
    display:none !important;
  }
}

/* ============================
   Mobile crop for shimmer banner
   (right-focused)
============================ */

@media (max-width: 767px){

  .hero-banner-shimmer-right img{
    width: 100% !important;
    height: 240px !important;
    object-fit: cover !important;

    /* shifted RIGHT instead of left */
    object-position: 85% 50% !important;

    display:block;
  }

}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-4fad039 *//* ============================ Ultra-premium dual-layer shimmer (clean-coat reflection vibe) ============================ */ .hero-banner-shimmer{ position: relative; overflow: hidden; -webkit-tap-highlight-color: transparent; } /* Wide soft reflection */ .hero-banner-shimmer::before{ content:""; position:absolute; top:0; left:-180%; width:70%; height:100%; background: linear-gradient( 110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.06) 40%, rgba(255,255,255,.10) 50%, rgba(255,255,255,.06) 60%, rgba(255,255,255,0) 100% ); transform: skewX(-18deg); opacity:.9; transition: left 2.1s cubic-bezier(.2,.8,.2,1), opacity 300ms ease; pointer-events:none; } /* Thin specular highlight line */ .hero-banner-shimmer::after{ content:""; position:absolute; top:-10%; left:-200%; width:35%; height:120%; background: linear-gradient( 110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.10) 46%, rgba(255,255,255,.28) 50%, rgba(255,255,255,.10) 54%, rgba(255,255,255,0) 100% ); transform: skewX(-18deg); opacity:.75; transition: left 1.55s cubic-bezier(.2,.9,.2,1); pointer-events:none; mix-blend-mode: screen; /* gives it that clear-coat “pop” */ } /* Optional: tiny premium “engage” lift without scaling */ .hero-banner-shimmer:hover{ filter: brightness(1.03) contrast(1.02); } /* Trigger both layers */ .hero-banner-shimmer:hover::before{ left:160%; } .hero-banner-shimmer:hover::after{ left:190%; } /* Reduced motion */ @media (prefers-reduced-motion: reduce){ .hero-banner-shimmer, .hero-banner-shimmer::before, .hero-banner-shimmer::after{ transition:none !important; } .hero-banner-shimmer:hover{ filter:none !important; } .hero-banner-shimmer::before, .hero-banner-shimmer::after{ display:none !important; } } /* ============================ Mobile crop for shimmer banner (prevents tiny strip, no stretching) ============================ */ @media (max-width: 767px){ /* Crop the actual image inside the widget */ .hero-banner-shimmer img{ width: 100% !important; height: 240px !important; /* tweak: 220–280 */ object-fit: cover !important; /* KEY: crop, don’t stretch */ object-position: 15% 50% !important; /* keeps car nose visible */ display: block; } }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-8b5175d *//* Premium outlined pill button */
.lm-pill-btn .elementor-button{
  background: transparent !important;
  border: 2px solid #000 !important;
  color: #000 !important;
  border-radius: 999px !important;
  padding: 10px 22px !important;
  font-weight: 700;
  letter-spacing: .6px;
  transition: transform 320ms cubic-bezier(.2,.8,.2,1), 
              box-shadow 320ms cubic-bezier(.2,.8,.2,1),
              background 220ms ease,
              color 220ms ease;
  position: relative;
  overflow: hidden;
}

/* subtle sheen sweep */
.lm-pill-btn .elementor-button:after{
  content:"";
  position:absolute;
  inset:-60%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 45%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,0) 55%
  );
  transform: translateX(-60%) rotate(15deg);
  opacity: 0;
  transition: transform 650ms cubic-bezier(.2,.8,.2,1), opacity 200ms ease;
  pointer-events:none;
}

/* hover: fill + lift + sheen */
.lm-pill-btn .elementor-button:hover{
  background:#000 !important;
  color:#fff !important;
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
}

.lm-pill-btn .elementor-button:hover:after{
  opacity: 1;
  transform: translateX(60%) rotate(15deg);
}

/* active click */
.lm-pill-btn .elementor-button:active{
  transform: translateY(0px);
  box-shadow: 0 10px 20px rgba(0,0,0,.12);
}

/* accessibility */
.lm-pill-btn .elementor-button:focus{
  outline: none;
}

.lm-pill-btn .elementor-button:focus-visible{
  outline: 3px solid rgba(0,0,0,.25);
  outline-offset: 3px;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-68bb6c5 */@media (max-width: 767px){

  /* 1) Force the container itself to be centered */
  .lm-mobile-center-col{
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;

    /* kill any weird positioning */
    left: auto !important;
    right: auto !important;
    transform: none !important;

    /* optional: keep text centered */
    text-align: center;
    box-sizing: border-box;
  }

  /* 2) Center the inner widgets as a column */
  .lm-mobile-center-col > .elementor-element{
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 3) Constrain readable width so it doesn't feel floaty */
  .lm-mobile-center-col .elementor-heading-title,
  .lm-mobile-center-col .elementor-widget-text-editor,
  .lm-mobile-center-col .elementor-button-wrapper{
    max-width: 340px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-1eb49c1 */.lm-feature-section img{
transition: transform 500ms cubic-bezier(.2,.8,.2,1);
}

.lm-feature-section:hover img{
transform: scale(1.03);
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-3b087f2 *//* Mobile: keep centered, but readable width */
@media (max-width: 767px){
  .mobile-readable{
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    text-align: center;
  }

  /* Constrain the actual text elements */
  .mobile-readable .elementor-heading-title,
  .mobile-readable .elementor-widget-text-editor,
  .mobile-readable .elementor-button-wrapper{
    max-width: 340px;   /* tweak: 320–360 */
    margin-left: auto;
    margin-right: auto;
  }

  /* Heading scale + line-height for mobile */
  .mobile-readable .elementor-heading-title{
    font-size: clamp(30px, 7.5vw, 40px);
    line-height: 1.05;
  }

  /* Paragraph readability */
  .mobile-readable .elementor-widget-text-editor{
    line-height: 1.5;
  }

  /* Button spacing */
  .mobile-readable .elementor-button-wrapper{
    margin-top: 14px;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-e7ebe3c */.lm-feature-section img{
transition: transform 500ms cubic-bezier(.2,.8,.2,1);
}

.lm-feature-section:hover img{
transform: scale(1.03);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ee36106 *//* Premium outlined pill button */
.lm-pill-btn .elementor-button{
  background: transparent !important;
  border: 2px solid #000 !important;
  color: #000 !important;
  border-radius: 999px !important;
  padding: 10px 22px !important;
  font-weight: 700;
  letter-spacing: .6px;
  transition: transform 320ms cubic-bezier(.2,.8,.2,1), 
              box-shadow 320ms cubic-bezier(.2,.8,.2,1),
              background 220ms ease,
              color 220ms ease;
  position: relative;
  overflow: hidden;
}

/* subtle sheen sweep */
.lm-pill-btn .elementor-button:after{
  content:"";
  position:absolute;
  inset:-60%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 45%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,0) 55%
  );
  transform: translateX(-60%) rotate(15deg);
  opacity: 0;
  transition: transform 650ms cubic-bezier(.2,.8,.2,1), opacity 200ms ease;
  pointer-events:none;
}

/* hover: fill + lift + sheen */
.lm-pill-btn .elementor-button:hover{
  background:#000 !important;
  color:#fff !important;
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
}

.lm-pill-btn .elementor-button:hover:after{
  opacity: 1;
  transform: translateX(60%) rotate(15deg);
}

/* active click */
.lm-pill-btn .elementor-button:active{
  transform: translateY(0px);
  box-shadow: 0 10px 20px rgba(0,0,0,.12);
}

/* accessibility */
.lm-pill-btn .elementor-button:focus{
  outline: none;
}

.lm-pill-btn .elementor-button:focus-visible{
  outline: 3px solid rgba(0,0,0,.25);
  outline-offset: 3px;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-6c165d6 */@media (max-width: 767px){

  /* 1) Force the container itself to be centered */
  .lm-mobile-center-col{
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;

    /* kill any weird positioning */
    left: auto !important;
    right: auto !important;
    transform: none !important;

    /* optional: keep text centered */
    text-align: center;
    box-sizing: border-box;
  }

  /* 2) Center the inner widgets as a column */
  .lm-mobile-center-col > .elementor-element{
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 3) Constrain readable width so it doesn't feel floaty */
  .lm-mobile-center-col .elementor-heading-title,
  .lm-mobile-center-col .elementor-widget-text-editor,
  .lm-mobile-center-col .elementor-button-wrapper{
    max-width: 340px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-64814e1 *//* Mobile: keep centered, but readable width */
@media (max-width: 767px){
  .mobile-readable{
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    text-align: center;
  }

  /* Constrain the actual text elements */
  .mobile-readable .elementor-heading-title,
  .mobile-readable .elementor-widget-text-editor,
  .mobile-readable .elementor-button-wrapper{
    max-width: 340px;   /* tweak: 320–360 */
    margin-left: auto;
    margin-right: auto;
  }

  /* Heading scale + line-height for mobile */
  .mobile-readable .elementor-heading-title{
    font-size: clamp(30px, 7.5vw, 40px);
    line-height: 1.05;
  }

  /* Paragraph readability */
  .mobile-readable .elementor-widget-text-editor{
    line-height: 1.5;
  }

  /* Button spacing */
  .mobile-readable .elementor-button-wrapper{
    margin-top: 14px;
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d450d34 *//* ============================ Ultra-premium dual-layer shimmer (clean-coat reflection vibe) ============================ */ .hero-banner-shimmer{ position: relative; overflow: hidden; -webkit-tap-highlight-color: transparent; } /* Wide soft reflection */ .hero-banner-shimmer::before{ content:""; position:absolute; top:0; left:-180%; width:70%; height:100%; background: linear-gradient( 110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.06) 40%, rgba(255,255,255,.10) 50%, rgba(255,255,255,.06) 60%, rgba(255,255,255,0) 100% ); transform: skewX(-18deg); opacity:.9; transition: left 2.1s cubic-bezier(.2,.8,.2,1), opacity 300ms ease; pointer-events:none; } /* Thin specular highlight line */ .hero-banner-shimmer::after{ content:""; position:absolute; top:-10%; left:-200%; width:35%; height:120%; background: linear-gradient( 110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.10) 46%, rgba(255,255,255,.28) 50%, rgba(255,255,255,.10) 54%, rgba(255,255,255,0) 100% ); transform: skewX(-18deg); opacity:.75; transition: left 1.55s cubic-bezier(.2,.9,.2,1); pointer-events:none; mix-blend-mode: screen; /* gives it that clear-coat “pop” */ } /* Optional: tiny premium “engage” lift without scaling */ .hero-banner-shimmer:hover{ filter: brightness(1.03) contrast(1.02); } /* Trigger both layers */ .hero-banner-shimmer:hover::before{ left:160%; } .hero-banner-shimmer:hover::after{ left:190%; } /* Reduced motion */ @media (prefers-reduced-motion: reduce){ .hero-banner-shimmer, .hero-banner-shimmer::before, .hero-banner-shimmer::after{ transition:none !important; } .hero-banner-shimmer:hover{ filter:none !important; } .hero-banner-shimmer::before, .hero-banner-shimmer::after{ display:none !important; } } /* ============================ Mobile crop for shimmer banner (prevents tiny strip, no stretching) ============================ */ @media (max-width: 767px){ /* Crop the actual image inside the widget */ .hero-banner-shimmer img{ width: 100% !important; height: 240px !important; /* tweak: 220–280 */ object-fit: cover !important; /* KEY: crop, don’t stretch */ object-position: 15% 50% !important; /* keeps car nose visible */ display: block; } }/* End custom CSS */