/* Preserve the existing Elementor design while allowing long titles to wrap. */
.ed-page-hero .swiper-slide-contents {max-width:100%;min-width:0;}
.ed-page-hero .elementor-slide-heading {margin:0;line-height:1.15;overflow-wrap:break-word;text-wrap:balance;}
.ed-page-hero .swiper-slide-inner {padding-inline:24px;}
.banner-overlay .swiper-slide-contents {width:100%;max-width:1386px;}
.banner-overlay .swiper-slide-contents .elementor-slide-description {width:60%;}
.elementor-location-footer > .e-con:not(.ed-credit-bar) {background-color:#080808;}
.ed-credit-bar {width:100%;max-width:none;min-height:0;}
.ed-site-credit {width:100%;padding:8px 12px;background:#000;color:#b2b2b2;text-align:center;font-family:Poppins,Arial,sans-serif;font-size:10px;line-height:1.4;}
html {scroll-padding-top:24px;}
body a:focus-visible,body button:focus-visible,body input:focus-visible,body textarea:focus-visible,body select:focus-visible {outline:2px solid #e51721!important;outline-offset:4px;}
.elementor-location-header .menu-item-has-children:focus-within > .wpr-sub-menu,
.elementor-location-header .menu-item-has-children:focus-within > .wpr-sub-mega-menu {visibility:visible!important;opacity:1!important;}
.elementor-form input,.elementor-form textarea {max-width:100%;}
.elementor-message-success {padding:14px;border:1px solid currentColor;}
.ed-cookie-settings {border:0;background:transparent;color:#b2b2b2;font:inherit;text-decoration:underline;cursor:pointer;padding:8px 0;}
@media(max-width:1024px){
 .banner-overlay .swiper-slide-contents .elementor-slide-description {width:100%;}
 .ed-page-hero .elementor-slide-heading {font-size:clamp(28px,4.2vw,45px)!important;}
}
@media(max-width:767px){
 .banner-overlay .swiper-slide,.banner-overlay .swiper-slide-inner {height:auto!important;min-height:640px;}
 .banner-overlay .swiper-slide-inner {position:relative;}
 .banner-overlay .swiper-slide-bg {position:absolute;inset:0;height:100%!important;}
 .banner-overlay .swiper-slide-contents {padding-block:15px;}
 .ed-page-hero .elementor-slide-heading {font-size:clamp(27px,7.6vw,32px)!important;line-height:1.15!important;}
 .ed-page-hero .swiper-slide-inner {padding:28px 20px!important;}
 .elementor-form input:not([type=checkbox]):not([type=radio]),.elementor-form textarea,.elementor-form select {font-size:16px!important;}
 .elementor-field-type-submit button {min-height:44px;}
 .lined-heading .elementor-heading-title {gap:12px;}
 .elementor-widget-text-editor {overflow-wrap:break-word;}
}
@media(prefers-reduced-motion:reduce){
 html {scroll-behavior:auto!important;}
 .animated,.elementor-ken-burns--active {animation:none!important;}
}
/* Same grey and red palette, adjusted just enough for readable small text. */
body.elementor-kit-8894 {--e-global-color-text:#767676;}

.elementor-location-header .wpr-nav-menu .wpr-menu-item.wpr-active-menu-item,
.elementor-location-header .wpr-nav-menu .current-menu-ancestor > .wpr-menu-item {color:#e91b26!important;}
/* Reserve single-grid gallery space without changing Elementor's layout calculations. */
@supports (container-type:inline-size) and selector(:has(*)) {
 .elementor-widget-gallery:has(.ed-reserve-gallery) {container-type:inline-size;}
 .ed-reserve-gallery {min-height:var(--ed-gallery-height);}
 @media(max-width:1024px){.ed-reserve-gallery{min-height:var(--ed-gallery-height-tablet);}}
 @media(max-width:767px){.ed-reserve-gallery{min-height:var(--ed-gallery-height-mobile);}}
}
