/* Shared geometry, imagery and accessible controls. Typography/colours remain native Elementor. */
body.hffu-site{overflow-x:clip;}
body.hffu-legacy{padding-top:112px;}
.hffu-header{position:fixed!important;top:14px;left:50%;width:calc(100% - 36px)!important;max-width:1340px;transform:translateX(-50%);z-index:1000;backdrop-filter:blur(14px);box-shadow:0 8px 28px #00000024;transition:box-shadow .2s ease,transform .2s ease;}
.hffu-header.hffu-scrolled{transform:translate(-50%,-4px);box-shadow:0 12px 34px #00000040;}
.hffu-top{position:fixed!important;right:22px;bottom:22px;width:auto!important;z-index:999;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease;}
.hffu-top.hffu-visible{visibility:visible;opacity:1;pointer-events:auto;transform:none;}
.hffu-top a{min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;}
.hffu-site [id]{scroll-margin-top:115px;}
.hffu-header a:focus-visible,.hffu-header button:focus-visible,.hffu-header .elementor-menu-toggle:focus-visible,.hffu-top a:focus-visible{outline:2px solid #F36A21;outline-offset:4px;}
.hffu-content a:focus-visible,.hffu-content input:focus-visible,.hffu-content select:focus-visible,.hffu-content textarea:focus-visible{outline:2px solid #141414;outline-offset:3px;}
.hffu-ui .hffu-header .sub-arrow{display:none!important;}
.hffu-header .hffu-dropdown-toggle{background:transparent;border:0;padding:0;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;}
.hffu-header .hffu-dropdown-toggle svg{width:13px;height:13px;transition:transform .16s ease;}
.hffu-header .hffu-dropdown-toggle[aria-expanded=true] svg{transform:rotate(180deg);}
.hffu-ui .hffu-header .menu-item-has-children{display:flex;align-items:center;position:relative;flex-wrap:wrap;}
.hffu-ui .hffu-header .sub-menu{display:none!important;position:absolute!important;top:100%!important;left:0!important;margin:8px 0 0!important;min-width:260px!important;max-width:360px;width:auto!important;box-shadow:0 12px 28px #00000038;border-radius:8px;overflow:hidden;}
.hffu-ui .hffu-header .hffu-sub-open>.sub-menu{display:block!important;}
.hffu-ui .hffu-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{display:none!important;}
.hffu-ui .hffu-header .elementor-nav-menu--main{display:block;}
.hffu-site [hidden]{display:none!important;}
.hffu-hero{position:relative;overflow:hidden;}
.hffu-hero>.e-con-inner{position:static;}
.hffu-hero-photo{position:absolute!important;inset:0;width:100%!important;max-width:none;height:100%!important;z-index:0;}
.hffu-hero-photo .elementor-widget-container{height:100%;overflow:hidden;}
.hffu-hero-photo img{width:100%;height:100%;}
.hffu-hero-photo::after{content:"";position:absolute;inset:0;background:rgba(20,20,20,.58);pointer-events:none;}
.hffu-hero-copy{position:relative;z-index:1;}
.hffu-story-main .elementor-widget-container,.hffu-method-photo .elementor-widget-container{overflow:hidden;}
.hffu-programme-tab,.hffu-case-tab{opacity:.6;transition:opacity .18s ease;}
.hffu-programme-tab.hffu-selected,.hffu-case-tab.hffu-selected{opacity:1;}
.hffu-programme-tab.hffu-selected .elementor-button,.hffu-case-tab.hffu-selected .elementor-button{box-shadow:inset 0 -2px 0 #F36A21;}
@media(max-width:1024px){
 .hffu-ui .hffu-header .elementor-nav-menu--main{display:none!important;}
 .hffu-ui .hffu-header.hffu-mobile-open .elementor-nav-menu--dropdown.elementor-nav-menu__container{display:block!important;position:absolute;top:calc(100% + 8px);left:0;right:0;width:100%!important;margin:0!important;max-height:calc(100dvh - 118px);overflow:auto;border-radius:12px;box-shadow:0 12px 28px #00000038;}
 .hffu-ui .hffu-header .menu-item-has-children>a{flex:1;}
 .hffu-ui .hffu-header .sub-menu{position:static!important;flex-basis:100%;margin:0!important;max-width:none;min-width:0!important;width:100%!important;box-shadow:none;}
 .hffu-ui .hffu-header .hffu-dropdown-toggle{min-width:52px;min-height:48px;}
}
@media(max-width:767px){.hffu-header{top:8px;width:calc(100% - 16px)!important;}.hffu-top{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));}body.hffu-legacy{padding-top:98px;}}
@supports(min-height:100svh){.hffu-hero{min-height:100svh;}}
@media(prefers-reduced-motion:reduce){.hffu-header,.hffu-top,.hffu-programme-tab,.hffu-case-tab,.hffu-dropdown-toggle svg{transition:none!important;}.hffu-hero-photo,.hffu-hero-photo img,.hffu-story-main .elementor-widget-container,.hffu-story-main img,.hffu-method-photo img{transform:none!important;opacity:1!important;clip-path:none!important;}}
body.elementor-editor-active .hffu-header,body.elementor-editor-active .hffu-top{position:relative!important;inset:auto!important;transform:none!important;visibility:visible!important;opacity:1!important;}
body.elementor-editor-active .hffu-hero-photo{position:relative!important;inset:auto!important;}

.hffu-header .elementor-menu-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center;}
