/* Structural exceptions only. Marketing colors and typography live in the Elementor kit. */
.he-page .elementor-widget-heading .elementor-heading-title{font-family:var(--e-global-typography-primary-font-family,Sora),sans-serif;letter-spacing:-.035em}
.he-page .elementor-top-section>.elementor-container,.elementor-location-header .elementor-top-section>.elementor-container{margin-left:auto!important;margin-right:auto!important;max-width:100%}
.he-page .elementor-widget-button .elementor-button{white-space:normal}
.he-page .he-card{overflow:hidden}
.he-service-grid>.elementor-container{flex-wrap:wrap}
.he-page .he-card>.elementor-element-populated{flex-direction:column;flex-wrap:nowrap}
.he-card-actions{margin-top:auto}
.he-service-card-list ul{margin:0;padding-left:1.15em}
.he-service-card-list li+li{margin-top:8px}
.elementor-location-header{position:sticky;top:0;z-index:1000;box-shadow:0 1px 0 #1a1a1a18}
html:has(.he-elementor-header),body:has(.he-elementor-header){overflow-x:clip;overflow-y:visible}
.he-header{position:relative;z-index:1000}
.admin-bar .elementor-location-header{top:32px}
.he-header>.elementor-container{flex-wrap:nowrap;align-items:center}
.he-header .he-actions .elementor-widget-button .elementor-button{white-space:nowrap}
.he-header .elementor-inner-section>.elementor-container{flex-wrap:nowrap;align-items:center}
.he-header .elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:6px}
body.he-page .elementor-location-footer a,body.he-page footer a{color:inherit}
.ht-ctc-chat,.ht_ctc_chat_style,.ctc-analytics{display:none!important}
.he-nav{font-family:var(--e-global-typography-text-font-family,Sora),sans-serif;font-size:12px;color:var(--e-global-color-text,#1A1A1A)}
.he-nav button{font:inherit;color:inherit;text-transform:inherit;background:transparent;border:0;padding:10px 7px;cursor:pointer}
.he-menu{display:flex;align-items:center;gap:3px;margin:0!important;padding:0!important;list-style:none!important}
.he-menu-item{position:relative;list-style:none!important}
.he-menu-item>a{display:block;padding:10px 7px;color:inherit;line-height:1.4}
.he-submenu{display:none;position:absolute;top:100%;left:0;min-width:300px;width:380px;background:var(--e-global-color-surface,#fff);padding:12px!important;margin:0!important;border:1px solid #1a1a1a18;border-radius:12px;box-shadow:0 14px 32px #1a1a1a12;z-index:1010}
.he-open>.he-submenu{display:grid;gap:4px}
.he-menu-services>.he-submenu{width:640px}
.he-menu-services.he-open>.he-submenu{grid-template-columns:repeat(2,minmax(0,1fr))}
.he-submenu a{padding:12px!important;border-radius:8px;white-space:normal}
.he-submenu a:hover,.he-submenu a:focus-visible{background:var(--e-global-color-bg,#FFF4EE)}
.he-submenu small{display:block;font-size:11px;font-weight:400;line-height:1.5;color:var(--e-global-color-muted,#615954);margin-top:3px}
.he-menu-toggle{display:none!important}
.he-menu-toggle{white-space:nowrap;font-size:11px!important}
.he-nav a:focus-visible,.he-nav button:focus-visible,.he-page a:focus-visible,.he-page button:focus-visible{outline:3px solid var(--e-global-color-action,#D2322A);outline-offset:4px}
.he-enquiry-form{font-family:var(--e-global-typography-text-font-family,Sora),sans-serif}
.he-enquiry-form input:not([type=checkbox]):not([type=radio]),.he-enquiry-form select,.he-enquiry-form textarea{min-height:48px;border-radius:8px!important}
.he-enquiry-form input[type=radio],.he-enquiry-form input[type=checkbox]{accent-color:var(--e-global-color-action,#D2322A)}
.he-enquiry-form .gform_button,.he-enquiry-form .gform_next_button,.he-enquiry-form .gform_previous_button{border-radius:999px!important;min-height:48px!important}
.he-enquiry-form .gform_button,.he-enquiry-form .gform_next_button{background:var(--e-global-color-action,#D2322A)!important;color:#fff!important}
.he-enquiry-form .gfield_radio{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.he-enquiry-form .gfield_radio .gchoice{border:1px solid #1a1a1a35;border-radius:10px;padding:14px;display:flex;align-items:center;gap:10px}
.he-enquiry-form .gfield_radio .gchoice:has(input:checked){border-color:var(--e-global-color-action,#D2322A);background:var(--e-global-color-bg,#FFF4EE)}
.he-mobile-bar{display:none}
.he-reference{padding:16px;border:1px solid #1a1a1a20;border-radius:8px}
.he-sidebar a{color:inherit}
body.he-redesign #pagetitle,body.he-redesign .page-title{display:none!important}
body.he-redesign .site-content .content-inner{padding-top:0!important}
body.he-page #content.site-content{padding:0!important}
body.he-redesign .site-content .container{max-width:none;padding-left:0;padding-right:0}
@media(max-width:1150px){.he-menu-toggle{display:block!important}.he-menu{display:none!important;position:absolute;top:100%;right:0;width:min(90vw,460px);max-height:80vh;overflow:auto;background:var(--e-global-color-surface,#fff);padding:18px!important;box-shadow:0 10px 25px #1a1a1a20}.he-nav.he-open>.he-menu{display:block!important}.he-submenu{position:static;width:100%;min-width:0;box-shadow:none;border:0}.he-menu-item>a,.he-nav button{padding:13px}.he-header .he-header-phone{display:none}}
@media(max-width:767px){.he-enquiry-form .gfield_radio{grid-template-columns:1fr}.he-enquiry-form .gform_page_footer{display:flex;gap:10px;flex-wrap:wrap}.he-enquiry-form .gform_page_footer input{flex:1}.he-mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--e-global-color-surface,#fff);box-shadow:0 -1px 10px #1a1a1a15;gap:10px;z-index:999}.he-mobile-bar>a{flex:1;text-align:center;padding:13px;border:1px solid var(--e-global-color-action,#D2322A);border-radius:999px;color:var(--e-global-color-action,#D2322A);font-weight:600}.he-mobile-bar .he-mobile-enquire{background:var(--e-global-color-action,#D2322A);color:#fff}body:has(.he-mobile-bar){padding-bottom:85px}.admin-bar .elementor-location-header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
@media(max-width:1150px){.he-nav .he-menu{position:fixed;left:12px;right:12px;top:var(--he-header-bottom,88px);width:auto;max-height:calc(100dvh - var(--he-header-bottom,88px) - 90px);overflow-y:auto}}
@media(max-width:1150px){.he-menu-services.he-open>.he-submenu{width:100%;grid-template-columns:1fr}}
@media(max-width:767px){.he-header .he-actions .elementor-inner-section .elementor-column{width:auto}.he-header .he-actions .elementor-inner-section .elementor-column:has(.he-outline),.he-header .he-actions .elementor-inner-section .elementor-column:has(.he-header-phone){display:none!important}.he-header .elementor-widget-image,.he-header .elementor-widget-button{margin-bottom:0}.he-nav button{padding:10px 2px}.he-header>.elementor-container>.elementor-column>.elementor-element-populated{padding:4px}}
