/* Final shared responsive layer. Desktop presentation stays in the existing stylesheets. */
.hk-menu-toggle,.hk-mobile-contact{display:none}
.hk-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hk-mobile-menu{box-sizing:border-box;border:0;padding:0;color:#13354a;font:16px/1.5 Arial,sans-serif}
.hk-mobile-menu:not([open]){display:none}
.hk-mobile-menu::backdrop{background:#13354a80;backdrop-filter:blur(3px)}
.hk-mobile-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(420px,100%);max-width:100%;height:100dvh;max-height:100dvh;background:#fff;overflow-y:auto;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom)}
.hk-mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e1e9ed}
.hk-mobile-menu-head img{display:block;width:40px;height:50px;object-fit:contain}
.hk-mobile-menu button{border:0;background:#f0f5f6;color:#13354a;min-width:44px;min-height:44px;border-radius:8px;font-size:20px}
.hk-mobile-menu nav{padding:12px 20px 24px}
.hk-mobile-menu nav>a,.hk-mobile-menu summary{display:flex;align-items:center;justify-content:space-between;padding:14px 4px;min-height:48px;box-sizing:border-box;color:#13354a;text-decoration:none;font-weight:600;border-bottom:1px solid #e4ecef;cursor:pointer}
.hk-mobile-menu summary{list-style:none}.hk-mobile-menu summary::-webkit-details-marker{display:none}.hk-mobile-menu summary:after{content:'+';font-size:23px;font-weight:400}.hk-mobile-menu details[open]>summary:after{content:'−'}
.hk-mobile-menu details>a{display:block;padding:12px 16px;min-height:44px;box-sizing:border-box;color:#526c7b;text-decoration:none;background:#f5f8f9}
.hk-mobile-menu [aria-current=page]{color:#007c75!important}
.hk-mobile-menu a:focus-visible,.hk-mobile-menu button:focus-visible,.hk-menu-toggle:focus-visible,.hk-mobile-contact :focus-visible{outline:3px solid #007c75;outline-offset:2px}
.hk-menu-open{overflow:hidden!important}
@media(max-width:1024px){
 .hk-mobile-ready header .cat-navigation{display:none!important}
 .hk-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #dce6eb;border-radius:8px;background:#fff;color:#13354a;font:22px Arial;cursor:pointer;flex-shrink:0}
 header .wp-block-columns{padding:8px 20px!important;gap:14px!important;min-height:72px!important;flex-wrap:nowrap!important}
 header .wp-block-columns>.wp-block-column:first-child{min-width:0;flex:1 1 auto!important}
 header .wp-block-columns>.wp-block-column:first-child>.wp-block-group{width:100%;justify-content:space-between!important;gap:12px!important}
 header .aide-company-logo{width:42px!important;height:53px!important;object-fit:contain}
 header .wp-block-button__link{padding:12px 14px!important;font-size:12px!important;min-height:44px!important;white-space:nowrap}
}
@media(max-width:781px){
 :root{--hk-mobile-gutter:20px}
 body{font-family:Arial,Helvetica,sans-serif;font-size:16px;-webkit-text-size-adjust:100%}
 main *,footer *{min-width:0} main p,main li,main dd,footer address{overflow-wrap:anywhere}
 .hk-container{width:calc(100% - 40px)}
 .med-main:not(.vision-home){padding:24px 20px 40px!important}
 .catalog-main{padding:22px 20px 40px}
 .vision-home.med-main{padding:0!important;max-width:none!important}
 .vision-wide-carousel{margin:0!important;width:100%;border-radius:0}
 .vision-wide-carousel .vision-slide{display:flex;flex-direction:column;height:auto;min-height:590px;padding:0 0 56px!important;background:#eef5f8}
 .vision-wide-carousel .vision-hero-copy{order:0;position:relative;width:auto;margin:0;padding:30px 24px 22px;height:auto;flex:0 0 auto;justify-content:flex-start}
 .vision-wide-carousel h1,.vision-wide-carousel .vision-slide-title{font-size:clamp(30px,8vw,38px)!important;line-height:1.13!important;letter-spacing:-.025em!important;margin:0 0 16px!important}
 .vision-wide-carousel .vision-intro{font-size:16px;line-height:1.6;max-width:440px;margin:0 0 20px}
 .vision-wide-carousel .vision-hero-image{order:1;position:relative;inset:auto;flex:1 0 230px;min-height:230px;padding:0;mask-image:none;width:100%;overflow:hidden}
 .vision-wide-carousel .vision-hero-image>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;max-width:none;object-fit:cover;object-position:right center;padding:0;mix-blend-mode:normal}
 .vision-wide-carousel .vision-slide:after{display:none}
 .vision-wide-carousel .vision-button{min-height:48px;font-size:14px;padding:14px 20px}
 .vision-wide-carousel .vision-carousel-controls [data-prev],.vision-wide-carousel .vision-carousel-controls [data-next]{top:auto;bottom:6px;transform:none;width:44px;height:44px}
 .vision-wide-carousel .vision-carousel-controls [data-prev]{left:16px}.vision-wide-carousel .vision-carousel-controls [data-next]{right:16px}
 .vision-wide-carousel .vision-dots{left:50%;bottom:6px;transform:translateX(-50%);gap:4px}.vision-wide-carousel .vision-dots button{width:28px;min-width:28px;min-height:44px}.vision-wide-carousel .vision-dots span{width:24px}
 .vision-wide-carousel .vision-carousel-controls [data-rotation]{right:68px;left:auto;bottom:8px;min-width:44px;min-height:40px;font-size:11px}
 .hk-assurance-grid{grid-template-columns:1fr 1fr}.hk-assurance-grid>div{padding:20px 12px;border-bottom:1px solid #e1e9ed}.hk-assurance strong{font-size:18px}.hk-assurance-grid>div:nth-child(2n){border-right:0}
 .cat-home-products{margin:44px auto;padding:0 20px}.cat-home-heading{margin-bottom:24px}.cat-home-heading h2{font-size:30px}.cat-home-heading p{font-size:16px;line-height:1.6}
 .cat-home-grid,.cat-family-grid,.cat-grid,.cat-overview{grid-template-columns:1fr!important;gap:20px}
 .cat-home-card img,.cat-family img,.cat-overview-card img{height:auto;aspect-ratio:3/2;object-fit:cover}.cat-card img{height:auto;aspect-ratio:4/3;object-fit:contain;padding:16px}
 .cat-home-card>div,.cat-family>div,.cat-card a>div,.cat-overview-card>div{padding:22px}.cat-home-card h3,.cat-family h3,.cat-card h3,.cat-overview-card h2{font-size:24px;line-height:1.25}
 .cat-printer-support{grid-template-columns:92px 1fr;gap:16px;padding:18px}.cat-printer-support img{width:92px;height:92px}.cat-printer-support h3{font-size:22px}.cat-printer-support>span{grid-column:2}
 .cat-hero{grid-template-columns:1fr;gap:0;margin-bottom:28px}.cat-hero>div{padding:26px 22px}.cat-hero>img{height:auto!important;min-height:0!important;aspect-ratio:3/2}.cat-hero h1{font-size:32px}
 .cat-detail{grid-template-columns:1fr;margin-bottom:30px}.cat-gallery{padding:0}.cat-main-image{height:auto;aspect-ratio:4/3;padding:16px}.cat-detail-copy{padding:24px 0 0}.cat-detail-copy h1{font-size:32px;line-height:1.15}.cat-detail-copy dl>div{grid-template-columns:1fr;gap:4px;padding:12px 0}.cat-detail-copy dd{line-height:1.55}
 .cat-actions{display:grid;grid-template-columns:1fr;gap:10px}.cat-actions>a{min-height:48px}.cat-thumbnails{gap:10px}.cat-thumbnails button{min-width:76px;min-height:64px}
 .cat-section{margin:32px 0}.cat-table-wrap{max-width:100%;overscroll-behavior-x:contain}.cat-table-wrap table{font-size:14px}.cat-table-wrap td,.cat-table-wrap th{padding:12px;overflow-wrap:anywhere}.cat-table-wrap th{width:36%}.cat-comparison table{min-width:620px}
 .cat-filters{flex-wrap:nowrap;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity}.cat-filters button{flex:0 0 auto;white-space:nowrap;min-height:44px;scroll-snap-align:start}.cat-search{max-width:none}.cat-selection-status{justify-content:space-between;gap:12px}
 .cat-cta,.med-cta{padding:24px;gap:18px;display:flex;flex-direction:column;align-items:stretch;margin-top:32px}.cat-cta h2{font-size:26px}.cat-cta>a,.med-cta>a{min-height:48px;text-align:center}
 .hk-applications{padding:42px 0}.hk-applications .hk-section-head h2{font-size:30px}.hk-applications .hk-tabs{padding-bottom:12px;scroll-snap-type:x proximity}.hk-applications .hk-tabs button{min-height:46px;scroll-snap-align:start}
 .hk-applications .hk-panel{grid-template-columns:1fr;min-height:0}.hk-applications .hk-panel-image{height:auto;aspect-ratio:3/2;min-height:0;position:relative}.hk-applications .hk-panel-image img{position:absolute;inset:0;height:100%;min-height:0;object-position:center}
 .hk-applications .hk-panel-copy{padding:26px 22px}.hk-applications .hk-panel-copy h3{font-size:26px}.hk-applications .hk-panel-copy li{grid-template-columns:1fr;gap:4px;padding:12px 0}.hk-applications .hk-panel-copy>a{min-height:44px;display:inline-flex;align-items:center}
 .hk-company,.vision-supply{grid-template-columns:1fr;gap:26px;padding-top:40px;padding-bottom:40px}.hk-company-copy h2,.vision-supply h2{font-size:30px}.hk-company-image img{max-width:100%;height:auto}.hk-support-grid{grid-template-columns:1fr 1fr;gap:16px}
 .vision-interior-hero,.med-hero{grid-template-columns:1fr;padding:24px;gap:22px;min-height:0}.vision-interior-hero h1,.med-hero h1{font-size:32px}.vision-interior-hero>img,.med-hero>img{height:auto;aspect-ratio:3/2;width:100%;object-fit:contain}.med-three,.med-guide-list{grid-template-columns:1fr}.med-grid{grid-template-columns:1fr}.med-gallery img{width:100%;height:auto;aspect-ratio:4/3}
 .med-enquiry{padding:24px 18px;border-radius:10px}.med-fields{grid-template-columns:1fr;gap:0}.med-enquiry input:not([type=checkbox]),.med-enquiry select,.med-enquiry textarea{font-size:16px;min-height:48px;box-sizing:border-box}.med-enquiry textarea{min-height:150px}.med-enquiry button[type=submit]{width:100%;min-height:50px}.med-verification{flex-direction:column;align-items:stretch;gap:12px}.med-verification>label{max-width:none;width:100%}.med-verification button{min-height:44px}.med-consent input{width:20px;height:20px}
 .vision-end{padding:30px 20px!important}.vision-end h2{font-size:28px!important}.vision-end>a{justify-self:stretch;text-align:center;min-height:48px}
 .hk-footer .hk-footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px;padding:32px 20px}.hk-footer .hk-footer-brand,.hk-footer .hk-footer-contact{grid-column:1/-1}.hk-footer .hk-footer-brand{display:flex;gap:18px;align-items:center}.hk-footer .hk-footer-brand img{margin:0}.hk-footer .hk-footer-column a{min-height:44px;display:flex;align-items:center;line-height:1.45}.hk-footer .hk-footer-contact address{max-width:none}.hk-footer .hk-footer-legal>div{padding:18px 20px;flex-direction:column;align-items:flex-start}
 .hk-mobile-contact{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #dfe8ec;background:#fffffff5;backdrop-filter:blur(12px);box-sizing:border-box}
 .hk-mobile-contact>a,.hk-mobile-contact>button{flex:1;min-height:46px;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px;border:0;border-radius:7px;background:#007c75;color:white;font:600 14px Arial;text-decoration:none;cursor:pointer}.hk-mobile-contact>button{background:#087d47}
 .hk-has-mobile-contact{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.hk-has-mobile-contact .aide-wa-fab,.hk-has-mobile-contact .aide-wa-trigger{display:none!important}
 body:has(.med-enquiry input:not([type=checkbox]):focus) .hk-mobile-contact,body:has(.med-enquiry textarea:focus) .hk-mobile-contact{display:none}
 .aide-wa-dialog{box-sizing:border-box;width:calc(100% - 24px)!important;max-height:calc(100dvh - 32px)!important;padding:24px 18px!important;overflow-y:auto;overscroll-behavior:contain}.aide-wa-dialog h2{font-size:26px!important;line-height:1.2}.aide-region-grid{grid-template-columns:1fr!important}.aide-wa-dialog button,.aide-wa-dialog a[data-aide-region]{min-height:44px}
 iframe[title*="chat widget" i]{max-width:calc(100vw - 16px)!important}
 @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.vision-slide{transition:none!important}}
}
@media(max-width:360px){header .wp-block-columns{padding-left:14px!important;padding-right:14px!important;gap:10px!important}header .wp-block-button__link{padding-left:10px!important;padding-right:10px!important;font-size:11px!important}.vision-wide-carousel .vision-hero-copy{padding-left:20px;padding-right:20px}.vision-wide-carousel .vision-carousel-controls [data-rotation]{right:60px}.vision-wide-carousel .vision-dots{left:42%}.hk-footer .hk-footer-grid{grid-template-columns:1fr}.hk-footer .hk-footer-column{grid-column:auto}}
