@media (min-width:768px){.kh-mobile-experience{display:none!important}}
@media (max-width:767px){
 body.kh-mobile-v220{margin:0!important;overflow-x:hidden!important;background:#fff!important}
 /* v2.2.1 runtime activation correction: support both the lightweight theme shell and
    the Elementor Theme Builder wrappers observed on staging. Keep selectors scoped to
    direct body children so the mobile experience's own nested header/main/footer remain visible. */
 body.kh-mobile-v220 > .site-header,
 body.kh-mobile-v220 > main#main,
 body.kh-mobile-v220 > .site-footer,
 body.kh-mobile-v220 > .elementor-location-header,
 body.kh-mobile-v220 > .elementor-location-footer,
 body.kh-mobile-v220 > [data-elementor-type="header"],
 body.kh-mobile-v220 > [data-elementor-type="wp-page"],
 body.kh-mobile-v220 > [data-elementor-type="single-post"],
 body.kh-mobile-v220 > [data-elementor-type="single"],
 body.kh-mobile-v220 > [data-elementor-type="footer"]{display:none!important}
 /* v2.2.7 Blog runtime exclusivity: custom desktop Blog renderers are not
    inside Elementor wp-page wrappers. Hide them explicitly on phone so the
    appended mobile Blog experience is the only visitor-visible Blog layer. */
 body.kh-mobile-v220 .kh-blog-hub,
 body.kh-mobile-v220 .kh-blog-article{display:none!important}
 body.kh-mobile-v220 .kh-mobile-experience{display:block!important;width:100%!important;max-width:none!important;overflow-x:hidden!important;font-family:Inter,"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif!important}
 body.kh-mobile-v220 .kh-mobile-experience *{box-sizing:border-box}
body.kh-mobile-v220 .kh-mobile-experience button{appearance:none;-webkit-appearance:none;font-family:inherit}

 /* v2.2.5 render-parity isolation layer. Neutralise only desktop properties that
    are unsafe on phone. Page-family mobile CSS remains authoritative for hero
    backgrounds, typography, accent colours, intro rhythm and section spacing. */
 body.kh-mobile-v220 .kh-mobile-experience{position:relative!important;isolation:isolate}
 .kh-mobile-experience .hero{min-height:0;max-height:none;color:inherit;}
 .kh-mobile-experience .hero-intro{max-width:none;line-height:inherit;}
 .kh-mobile-experience .hero::after{content:none;display:none;}
 body.kh-mobile-v220 .kh-mobile-experience img{max-width:100%;}

 /* One shared phone header/navigation contract across every mobile family. */
 body.kh-mobile-v220 .kh-mobile-global-header{position:sticky;top:0;z-index:2140;width:100%;max-width:none;height:80px;margin:0;display:grid;grid-template-columns:minmax(0,1fr) auto 50px;gap:10px;align-items:center;padding-top:0;padding-bottom:0;padding-left:max(16px,calc((100vw - 520px)/2 + 16px));padding-right:max(16px,calc((100vw - 520px)/2 + 16px));background:rgba(255,255,255,.98);border-bottom:1px solid #dceaf3;box-shadow:0 4px 16px rgba(7,23,43,.035);backdrop-filter:blur(14px);}
 body.admin-bar.kh-mobile-v220 .kh-mobile-global-header{top:46px;}
 body.kh-mobile-v220 .kh-mobile-home-link{display:flex;align-items:center;min-width:0;text-decoration:none;}
 body.kh-mobile-v220 .kh-mobile-home-link img{display:block;width:146px;height:auto;}
 body.kh-mobile-v220 .kh-mobile-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 17px;border-radius:16px;background:#5AAAE4;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:850;white-space:nowrap;}
 body.kh-mobile-v220 .kh-mobile-menu-toggle{display:grid;place-items:center;width:50px;height:50px;padding:0;border:1px solid #cfe2f1;border-radius:16px;background:#fff;color:#0c1c2e;font:inherit;font-size:25px;line-height:1;cursor:pointer;}
 body.kh-mobile-v220 .kh-mobile-global-menu{position:fixed;z-index:2135;top:80px;left:0;right:0;bottom:0;display:block;overflow-y:auto;background:#fff;opacity:1;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:transform .16s ease,visibility .16s ease;border-top:1px solid #edf3f7;}
 body.admin-bar.kh-mobile-v220 .kh-mobile-global-menu{top:126px;}
 body.kh-mobile-v220 .kh-mobile-global-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:none;}
 body.kh-mobile-v220 .kh-mobile-global-menu-inner{width:min(100%,520px);min-height:100%;margin:0 auto;padding:18px 20px 34px;background:#fff;}
 body.kh-mobile-v220 .kh-mobile-menu-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;}
 body.kh-mobile-v220 .kh-mobile-menu-top strong{color:#0c1c2e;font-size:13px;letter-spacing:.13em;text-transform:uppercase;}
 body.kh-mobile-v220 .kh-mobile-menu-close{display:grid;place-items:center;width:46px;height:46px;border:1px solid #d6e5ef;border-radius:14px;background:#fff;color:#0c1c2e;font:inherit;font-size:26px;line-height:1;cursor:pointer;}
 body.kh-mobile-v220 .kh-mobile-primary-links{display:grid;}
 body.kh-mobile-v220 .kh-mobile-primary-links a{display:flex;align-items:center;min-height:56px;border-bottom:1px solid #e5edf3;color:#0c1c2e!important;text-decoration:none!important;font-size:18px;font-weight:850;}
 body.kh-mobile-v220 .kh-mobile-local-nav{margin-top:22px;padding-top:18px;border-top:1px solid #dfe9f0;}
 body.kh-mobile-v220 .kh-mobile-local-nav>span{display:block;margin-bottom:8px;color:#688096;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
 body.kh-mobile-v220 .kh-mobile-local-nav nav{display:grid;}
 body.kh-mobile-v220 .kh-mobile-local-nav a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid #eef3f6;color:#34536c!important;text-decoration:none!important;font-size:14px;font-weight:750;}
 body.kh-mobile-v220 .kh-mobile-menu-demo{display:flex;align-items:center;justify-content:center;min-height:50px;margin-top:22px;padding:12px 16px;border-radius:15px;background:#5AAAE4;color:#07172b!important;text-decoration:none!important;text-align:center;font-size:15px;font-weight:900;}
 body.kh-mobile-v220.kh-mobile-menu-open{overflow:hidden!important;}
body.kh-mobile-v220 .kh-mobile-experience[data-kh-mobile-page="faq"]{--header-height:80px;}

 /* One shared compact footer with full site and capability access. */
 body.kh-mobile-v220 .kh-mobile-global-footer{width:100%;max-width:none;margin:0;padding-top:31px;padding-bottom:25px;padding-left:max(20px,calc((100vw - 520px)/2 + 20px));padding-right:max(20px,calc((100vw - 520px)/2 + 20px));background:#061427;color:#b3c4d0;}
 body.kh-mobile-v220 .kh-mobile-footer-brand{display:inline-flex;align-items:center;text-decoration:none;}
 body.kh-mobile-v220 .kh-mobile-footer-brand img{display:block;width:132px;height:auto;filter:brightness(0) invert(1);opacity:.94;}
 body.kh-mobile-v220 .kh-mobile-global-footer>p{margin:12px 0 18px;color:#b3c4d0;font-size:13px;line-height:1.5;}
 body.kh-mobile-v220 .kh-mobile-foot-group{border-top:1px solid rgba(255,255,255,.12);}
 body.kh-mobile-v220 .kh-mobile-foot-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:0;color:#fff;font-size:14px;font-weight:850;cursor:pointer;}
 body.kh-mobile-v220 .kh-mobile-foot-group summary::-webkit-details-marker{display:none;}
 body.kh-mobile-v220 .kh-mobile-foot-group summary span{font-size:18px;}
 body.kh-mobile-v220 .kh-mobile-foot-group[open] summary span{transform:rotate(45deg);}
 body.kh-mobile-v220 .kh-mobile-foot-links{display:grid;gap:0;padding:0 0 12px;}
 body.kh-mobile-v220 .kh-mobile-foot-links a,body.kh-mobile-v220 .kh-mobile-foot-links>span{display:block;padding:7px 0;color:#aec3d0!important;text-decoration:none!important;font-size:13px;line-height:1.42;}
 body.kh-mobile-v220 .kh-mobile-legal{margin-top:18px;color:#7890a0;font-size:11px;line-height:1.45;}
 @media(max-width:360px){
   body.kh-mobile-v220 .kh-mobile-global-header{grid-template-columns:minmax(0,1fr) 90px 46px;gap:6px;padding-top:0;padding-bottom:0;padding-left:10px;padding-right:10px;}
   body.kh-mobile-v220 .kh-mobile-home-link img{width:116px;}
   body.kh-mobile-v220 .kh-mobile-header-cta{min-height:44px;padding:0 10px;font-size:11px;}
   body.kh-mobile-v220 .kh-mobile-menu-toggle{width:46px;height:46px;}
 }
 body.kh-mobile-v220 dialog.demo-modal{width:min(94vw,430px)!important;max-height:92dvh!important;padding:0!important;border:0!important;border-radius:24px!important;overflow:auto!important}
 body.kh-mobile-v220 dialog.demo-modal .modal-card{padding:28px 20px 24px!important}
 body.kh-mobile-v220 dialog.demo-modal .form-grid,
 body.kh-mobile-v220 dialog.demo-modal .kh-form-grid{grid-template-columns:1fr!important}
 body.kh-mobile-v220 dialog.demo-modal input,
 body.kh-mobile-v220 dialog.demo-modal select,
 body.kh-mobile-v220 dialog.demo-modal textarea{font-size:16px!important;min-height:48px!important}
 body.kh-mobile-v220 dialog.demo-modal .button{min-height:50px!important;width:100%!important}
}
