.ol-header .ol-old-language{display:none!important}
.ol-header-row{align-items:center}
.ol-tools{display:flex;align-items:center;gap:8px;margin-left:auto;color:#304b43;font-family:Lato,sans-serif}
.ol-language-switch{display:flex;align-items:center;gap:2px}
.ol-language-switch a,.ol-language-switch span{display:inline-flex;min-width:40px;min-height:44px;align-items:center;justify-content:center;font:600 13px Lato,sans-serif;color:#304b43;text-decoration:none}
.ol-language-switch [aria-current]{text-decoration:underline;text-underline-offset:5px}
.ol-language-switch [aria-disabled]{opacity:.5;cursor:default}
.ol-menu-toggle,.ol-menu-close{display:none;background:transparent;color:#304b43;border:0;border-radius:4px;width:44px;height:44px;padding:10px;align-items:center;justify-content:center;cursor:pointer}
.ol-menu-toggle svg,.ol-menu-close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}
/* Explicitly override theme button defaults, including on desktop. */
.ol-header .ol-menu-toggle{display:none!important}
@media(max-width:767px){.ol-header .ol-menu-toggle{display:flex!important}}
.ol-tools :focus-visible,.ol-drawer :focus-visible{outline:2px solid #304b43;outline-offset:3px}
.ol-menu-backdrop{display:none}
/* Native Elementor Image Carousel: slide changes never replace the text layer. */
.elementor .ol-hero{position:relative;isolation:isolate;overflow:hidden}
.elementor .ol-hero::before{z-index:1;pointer-events:none}
.elementor .ol-hero .ol-hero-carousel{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;z-index:0}
.ol-hero-carousel .elementor-widget-container,.ol-hero-carousel .elementor-image-carousel-wrapper,.ol-hero-carousel .swiper-wrapper,.ol-hero-carousel .swiper-slide,.ol-hero-carousel .swiper-slide-inner{height:100%!important}
.ol-hero-carousel .swiper-slide-image{width:100%;height:100%!important;object-fit:cover;object-position:center}
.elementor .ol-hero .ol-hero-copy{z-index:2;pointer-events:none}
.ol-hero-copy a,.ol-hero-copy button{pointer-events:auto}
.ol-hero-carousel .elementor-swiper-button{top:auto;bottom:18px;transform:none;background:#304b43;color:white;border-radius:50%;width:44px;height:44px;justify-content:center;z-index:3}
.ol-hero-carousel .elementor-swiper-button-prev{left:auto;right:76px}
.ol-hero-carousel .elementor-swiper-button-next{right:22px}
.ol-hero-carousel .swiper-pagination{bottom:32px!important;left:24px!important;width:auto!important;z-index:3}
.ol-hero-carousel .swiper-pagination-bullet{background:white;opacity:.55}
.ol-hero-carousel .swiper-pagination-bullet-active{opacity:1}
.ol-gallery-carousel .swiper-slide-image{width:100%;height:400px;object-fit:cover;border-radius:10px}
.ol-gallery-carousel.ol-height-360 .swiper-slide-image{height:360px}
.ol-gallery-carousel .elementor-swiper-button{width:44px;height:44px;border-radius:50%;background:#304b43;color:white;justify-content:center}
.ol-gallery-carousel .swiper-pagination-bullet{background:#304b43}
@media(max-width:767px){
 .elementor #why .ol-benefits,.elementor #why .elementor-element-0000034{order:-1}
 .elementor #why .ol-right-photos{padding-top:0}
 html.oikos-mobile-js body:not(.elementor-editor-active) .elementor .oikos-dock:not(.oikos-dock-visible){visibility:hidden!important;opacity:0;pointer-events:none}
 .elementor .oikos-dock{padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .oikos-dock .elementor-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
 .ol-header .ol-header-row{flex-direction:row!important;flex-wrap:nowrap!important;gap:8px!important}
 .ol-header .ol-logo{width:auto!important;flex:1;min-width:0}
 .ol-header .ol-logo .elementor-heading-title{font-size:23px!important;line-height:1.2!important}
 .ol-tools{flex:none;gap:2px}
 .ol-menu-toggle,.ol-menu-close{display:flex}
 .ol-header.ol-menu-ready .ol-navigation{display:none!important}
 .ol-gallery-carousel .swiper-slide-image{height:340px!important}
 .ol-hero-carousel .swiper-slide-image{object-position:center right}
 body.ol-menu-open{overflow:hidden}
 .ol-menu-backdrop{position:fixed;inset:0;background:rgba(18,37,29,.38);z-index:99998}
 .ol-menu-backdrop.ol-open{display:block}
 .ol-drawer{position:fixed;right:0;top:0;bottom:0;width:min(340px,88vw);background:#fafaf7;color:#304b43;padding:20px 22px calc(24px + env(safe-area-inset-bottom));overflow:auto;box-shadow:-8px 0 32px rgba(18,37,29,.12)}
 body.admin-bar .ol-drawer{top:46px}
 .ol-drawer-head{display:flex;align-items:center;justify-content:space-between;font:600 22px Lato,sans-serif;margin-bottom:32px}
 .ol-drawer .ol-navigation{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:8px!important}
 .ol-drawer .ol-navigation>.elementor-element{width:100%!important}
 .ol-drawer .elementor-button{display:block;text-align:left;padding:16px 12px;font:400 18px/26px Lato,sans-serif;color:#304b43;background:transparent;border-radius:0;border-bottom:1px solid #d8e0d9}
 .ol-drawer .elementor-button:hover{background:#dde8e0;color:#304b43}
 .ol-drawer .elementor-button-text{flex-grow:1}
 .ol-menu-backdrop.ol-open .ol-drawer{animation:ol-enter .22s ease-out}
 @keyframes ol-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}
}
@media(prefers-reduced-motion:reduce){.ol-menu-backdrop.ol-open .ol-drawer{animation:none}}
/* Editor remains directly editable; drawer behavior belongs to the frontend. */
body.elementor-editor-active .ol-header .ol-old-language{display:block!important}
/* Opt-in: pages upgraded to the new hero only. Header scrolls with its photo. */
.elementor:has(> .ol-header-overlay){position:relative}
.elementor .ol-header-overlay{position:absolute!important;top:0;left:0;width:100%;z-index:20;background:transparent!important}
.ol-header-overlay::before{background:transparent!important}
.ol-header-overlay .ol-logo .elementor-heading-title,
.ol-header-overlay .ol-logo a,
.ol-header-overlay .ol-navigation .elementor-button,
.ol-header-overlay .ol-language-switch a,
.ol-header-overlay .ol-language-switch span,
.ol-header-overlay .ol-menu-toggle{color:#fff!important}
.ol-header-overlay .ol-menu-toggle{background:transparent!important;border:1px solid rgba(255,255,255,.5)!important}
.ol-header-overlay .ol-navigation .elementor-button{background:transparent!important}
.ol-header-overlay .ol-tools :focus-visible{outline-color:#fff}
.ol-hero-refreshed .ol-hero-facts .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:12px 24px;margin:0!important;padding:0!important}
.ol-hero-refreshed .ol-hero-facts .elementor-icon-list-item{margin:0!important;white-space:nowrap}
.ol-hero-refreshed .ol-hero-facts .elementor-icon-list-icon{display:inline-flex;align-items:center}
.ol-hero-refreshed .ol-hero-facts .elementor-icon-list-icon svg{fill:currentColor;width:19px;height:19px}
@media(max-width:767px){
 .elementor .ol-hero-refreshed .elementor-element.ol-hero-facts .elementor-icon-list-items{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
 .ol-hero-refreshed .ol-hero-facts .elementor-icon-list-item{white-space:normal;min-width:0}
}
.ol-hero-carousel .elementor-swiper-button{top:auto!important;bottom:18px!important;transform:none!important}
.ol-hero-carousel .elementor-swiper-button-prev{left:auto!important;right:76px!important}
.ol-hero-carousel .elementor-swiper-button-next{left:auto!important;right:22px!important}
@media(max-width:767px){
 .ol-drawer,.ol-drawer *{box-sizing:border-box}
 .ol-drawer .ol-navigation{padding:0!important;margin:0!important;max-width:100%!important}
 .ol-drawer .elementor-button{background:transparent!important;color:#304b43!important;text-decoration:none!important;font:400 18px/26px Lato,sans-serif!important}
 .ol-drawer .elementor-button:hover{background:#dde8e0!important}
 .ol-drawer .elementor-button-content-wrapper{justify-content:flex-start}
}
