/* Narrow-screen layout for the three legacy pages; desktop templates stay intact.
   :is supplies specificity against generated legacy ID rules; some modules are body children.
   Use numeric top:0: the legacy height observer parses top and loops on NaN from auto. */
.qm-mobile-categories{display:none}
.qm-legacy .titleWrapper{margin:0;font-weight:700}
.qm-home .qmuo-clients__page{flex-basis:100%}
/* Company-business enquiry: replace legacy 730px canvas with content flow. */
body.qm-services #web#web #module427,
body.qm-services #web#web #module427 :is(.fullmeasureOuterContentPage,.fullmeasureOuterContent,#fullmeasureContent427_1,#fk-inFullmeasureListZone427-1){height:auto!important;min-height:0!important;top:0!important;box-sizing:border-box}
body.qm-services #web#web #module427 :is(.fullmeasureOuterContentBg427,.fk-elemZoneBg){display:none!important}
body.qm-services #web#web #module427{background:#f8f9fc}
body.qm-services #web#web #fk-inFullmeasureListZone427-1{position:relative!important;padding:40px 0!important}
body.qm-services #web#web #module429{position:relative!important;top:0!important;left:0!important;width:100%!important;height:auto!important;margin:0 auto 20px!important;padding:0 24px;box-sizing:border-box}
body.qm-services #web#web #module429 .fk-editor{font-size:28px!important;line-height:1.5!important}
body.qm-services #web#web #module429 .fk-editor :is(span,b){font-size:inherit!important;line-height:inherit!important}
body.qm-services #web#web #module427 .qmuo-apply{position:relative!important;top:0!important;left:0!important;width:100%!important;padding:0 40px!important;margin:0 auto;box-sizing:border-box}
@media(max-width:1199px){
 body.qm-services #web#web #fk-inFullmeasureListZone427-1{padding:28px 16px!important}
 body.qm-services #web#web #module429{padding:0!important;margin-bottom:16px!important}
 body.qm-services #web#web #module429 .fk-editor{font-size:22px!important}
 body.qm-services #web#web #module427 .qmuo-apply{padding:0!important}
}
@media(max-width:600px){
 body.qm-services #web#web #module429 .fk-editor{font-size:20px!important}
 body.qm-services #web#web #module427 .qa-row{gap:14px;padding:16px}
 body.qm-services #web#web #module427 .qa-field{flex:1 1 100%;padding:0}
}
@media(max-width:1199px){
 html:has(body.qm-legacy),body.qm-legacy{min-width:0!important;width:100%!important;margin:0!important}
 :is(body.qm-legacy,#web#web){min-width:0!important;width:100%!important;padding-top:0!important}
 :is(body.qm-legacy,#web#web) :is(.webTopTable,.webNavTable,.webHeaderTable,.webBannerTable,.webFooterTable,.webContainerTable,.webTop,.webNav,.webHeader,.webBanner,.webFooter,.webContainer,.container,.containerMiddle,.containerMiddleCenter,.webHeaderTd,.web_header_td,.fullmeasureContainer,.fullmeasureOuterContent,.fullmeasureOuterContentPage,.fullmeasureContent,.fk-formPack,.fk-inFullmeasureListZone,.fk-webFooterZone){min-width:0!important;width:100%!important;max-width:100%!important;margin-left:0!important;left:auto!important;box-sizing:border-box}
 :is(body.qm-legacy,#web#web) :is(.webTopTable,.webNavTable){position:relative!important;height:auto!important}
 :is(body.qm-legacy,#web#web) #webTop{height:74px!important;position:relative!important}
 :is(body.qm-legacy,#web#web) #corpTitle{left:94px!important;top:22px!important;width:170px!important;min-width:0!important}
 :is(body.qm-legacy,#web#web) #logo{left:16px!important;top:14px!important}
 :is(body.qm-legacy,#web#web) :is(.absTopTable,#webHeaderTable,#webHeaderContentBg){display:none!important}
 :is(body.qm-legacy,#web#web) #webNav{height:auto!important;position:relative!important;top:0!important;padding:0 12px!important}
 :is(body.qm-legacy,#web#web) :is(#navV2Wrap,#navV2){position:relative!important;left:auto!important;top:0!important;width:100%!important;height:auto!important;min-height:48px!important;background:#fff!important}
 :is(body.qm-legacy,#web#web) #navV2 .navContent{display:flex!important;flex-wrap:wrap!important;width:100%!important;min-width:0!important;height:auto!important;position:relative!important;left:auto!important;top:0!important;padding:0!important}
 :is(body.qm-legacy,#web#web) #navV2 :is(.navMainContent,.navCenterContent,.navCenter,.itemContainer){position:relative!important;width:100%!important;height:auto!important;left:auto!important;top:0!important;transform:none!important;overflow:visible!important}
 :is(body.qm-legacy,#web#web) #navV2 .itemContainer{display:flex!important;flex-wrap:wrap!important;justify-content:center}
 :is(body.qm-legacy,#web#web) #navV2 .item{flex:0 1 auto!important;float:none!important;width:auto!important;height:46px!important;margin:0!important}
 :is(body.qm-legacy,#web#web) #navV2 .itemSep{display:none!important}
 :is(body.qm-legacy,#web#web) #navV2 :is(.itemName,.itemCenter,.itemLeft,.itemRight,.navItem){height:auto!important;min-width:0!important}
 :is(body.qm-legacy,#web#web) #navV2 a.J_nav_item_link{display:block!important;font-size:14px!important;line-height:46px!important;padding:0 12px!important}
 .qm-legacy .qm-mobile-categories{display:block;position:relative;padding:12px 16px;background:#f3f5ff;color:#3b4c91;font-size:14px;line-height:1.7}
 .qm-mobile-categories summary{cursor:pointer;font-weight:600}
 .qm-mobile-categories nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px}
 .qm-mobile-categories a{color:#33416b;text-decoration:none;padding:6px 0}
 :is(body.qm-legacy,#web#web) :is(.fullmeasureContainer,.fullmeasureOuterContent,.fullmeasureOuterContentPage,.fullmeasureContent,.fk-formPack){height:auto!important;min-height:0!important;position:relative!important;top:0!important}
 :is(body.qm-legacy,#web#web) .fk-formFullmeasure{width:100%!important;min-width:0!important;height:auto!important;margin:0!important}
 :is(body.qm-legacy,#web#web) .fk-formPack{padding:24px 16px!important}
 :is(body.qm-legacy,#web#web) .fk-formPack>.form{position:relative!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;float:none!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;margin:0 0 20px!important;box-sizing:border-box;opacity:1!important}
 :is(body.qm-legacy,#web#web) .fk-formPack>.form :is(.formMiddle,.formMiddleCenter,.formMiddleContent,.lightModuleOuterContent){height:auto!important;width:100%!important;max-width:100%!important;box-sizing:border-box}
 :is(body.qm-legacy,#web#web) .fk-editor{width:100%!important;box-sizing:border-box;overflow-wrap:anywhere}
 :is(body.qm-legacy,#web#web) .fk-editor :is(span,font,b){font-size:inherit!important}
 :is(body.qm-legacy,#web#web) .siteEditor .fk-editor{font-size:16px!important;line-height:1.8!important}
 :is(body.qm-legacy,#web#web) .formStyle79 img{max-width:100%!important;height:auto!important;margin:0!important}
 :is(body.qm-legacy,#web#web) .formStyle79 :is(.floatImg,.floatImgWrap,.floatImg_J,.floatImgBox){max-width:100%!important;height:auto!important;width:auto!important}
 .qm-legacy .qmuo-pagehero{height:auto!important;min-height:180px!important}
 .qm-legacy .qmuo-pagehero .ph-inner{width:auto!important;padding:36px 20px!important}
 .qm-legacy .qmuo-pagehero .ph-title{font-size:30px!important}
 .qm-legacy .qmuo-pagehero:after{display:none}
 .qm-legacy :is(.qmuo-apply,.qmuo-apply-banner){position:relative!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:100%;padding:20px 16px!important;box-sizing:border-box}
 .qm-legacy :is(.qmuo-apply,.qmuo-apply-banner) .qa-row{flex-wrap:wrap;gap:12px;padding:16px}
 .qm-legacy :is(.qmuo-apply,.qmuo-apply-banner) .qa-field{flex:1 1 160px;padding:0}
 .qm-legacy :is(.qmuo-apply,.qmuo-apply-banner) .qa-sep{display:none}
 .qm-legacy :is(.qmuo-apply,.qmuo-apply-banner) .qa-submit{flex:1 1 100%;height:48px!important;font-size:16px!important}
 .qm-legacy .qmuo-apply-banner .qa-title{font-size:20px;line-height:1.6}
 /* Existing rotating banner keeps both images and the booking button. */
 .qm-home:is(body,#web#web) :is(.webBannerTable,#webBanner){height:auto!important}
 .qm-home:is(body,#web#web) #bannerV2{width:100%!important;height:400px!important;min-height:0!important;position:relative!important;left:auto!important;top:0!important;margin:0!important}
 .qm-home:is(body,#web#web) #bannerV2 :is(.J_billboardItem,.J_bannerItem){width:100%!important;height:400px!important;min-width:0!important;left:0!important;background-position:center!important;background-size:cover!important}
 .qm-home:is(body,#web#web) #__qmuoBannerCopy{left:20px!important;top:100px!important;width:calc(100% - 40px)!important;transform:none!important}
 .qm-home #__qmuoBannerCopy .qmuo-banner-title{font-size:36px!important;white-space:normal!important}
 .qm-home #__qmuoBannerCopy :is(.qmuo-banner-kicker,.qmuo-banner-subtitle){font-size:14px!important;line-height:1.8!important}
 .qm-home #__qmuoBannerCopy .qmuo-banner-points{font-size:12px!important;gap:14px!important;white-space:normal!important;flex-wrap:wrap}
 .qm-home #__qmuoBannerCopy .qmuo-banner-cta{font-size:15px!important;height:44px!important;line-height:44px!important;margin-top:16px!important}
 .qm-home .qmuo-rec{position:relative!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;width:100%!important;height:auto!important;padding:10px 0 20px!important}
 .qm-home .qmuo-rec .hd :is(h1,h2){font-size:24px!important;line-height:1.5!important}
 .qm-home .qmuo-rec .cards{width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important}
 .qm-home .qmuo-rec .card{width:auto!important;min-width:0}
 .qm-home .qmuo-rec .card img{height:auto!important;aspect-ratio:7/5;object-fit:cover}
 .qm-home .qmuo-rec .card .cbody{padding:12px 8px}
 .qm-home .qmuo-rec .card .cta{min-width:0;width:100%;max-width:140px}
 .qm-home .qmuo-rec .card .cbody p{height:auto!important;min-height:18px}
 .qm-home .qmuo-why{position:relative!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;width:100%!important;height:auto!important;display:block;padding:16px 0!important}
 .qm-home .qmuo-why .ttl{width:auto!important;text-align:center;margin-bottom:28px}
 .qm-home .qmuo-why .ttl h2{font-size:28px!important}
 .qm-home .qmuo-why .stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
 .qm-home .qmuo-why .stat b{font-size:34px!important}
 .qm-home .qmuo-why .stat small{font-size:11px;letter-spacing:0}
 .qm-home .qmuo-why .stat:before{display:none}
 .qm-home:is(body,#web#web) :is(#fk-inFullmeasureListZone386-1,#fk-inFullmeasureListZone342-1){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .qm-home:is(body,#web#web) :is(#module398,#module371){grid-area:1/1}.qm-home:is(body,#web#web) #module402{grid-area:1/2}
 .qm-home:is(body,#web#web) #module399{grid-area:2/1}.qm-home:is(body,#web#web) #module403{grid-area:2/2}
 .qm-home:is(body,#web#web) #module400{grid-area:3/1}.qm-home:is(body,#web#web) #module401{grid-area:3/2}
 .qm-home:is(body,#web#web) #module408{grid-area:4/1}.qm-home:is(body,#web#web) #module404{grid-area:4/2}
 .qm-home:is(body,#web#web) #module409{grid-area:5/1}.qm-home:is(body,#web#web) #module405{grid-area:5/2}
 .qm-home:is(body,#web#web) #module407{grid-area:6/1}.qm-home:is(body,#web#web) #module406{grid-area:6/2}
 .qm-home:is(body,#web#web) #module386 img{max-width:130px!important}
 .qm-home:is(body,#web#web) :is(#module369,#module370){grid-column:1/-1!important;text-align:center}
 .qm-home:is(body,#web#web) #module369{grid-row:1}.qm-home:is(body,#web#web) #module370{grid-row:2}
 .qm-home:is(body,#web#web) #module371{grid-area:3/1}.qm-home:is(body,#web#web) #module378{grid-area:3/2}
 .qm-home:is(body,#web#web) #module372{grid-area:4/1}.qm-home:is(body,#web#web) #module376{grid-area:4/2}
 .qm-home:is(body,#web#web) #module373{grid-area:5/1}.qm-home:is(body,#web#web) #module377{grid-area:5/2}
 .qm-home:is(body,#web#web) #module380{grid-area:6/1}.qm-home:is(body,#web#web) #module385{grid-area:6/2}
 .qm-home:is(body,#web#web) #module381{grid-area:7/1}.qm-home:is(body,#web#web) #module383{grid-area:7/2}
 .qm-home:is(body,#web#web) #module382{grid-area:8/1}.qm-home:is(body,#web#web) #module384{grid-area:8/2}
 .qm-home:is(body,#web#web) :is(#module374,#module375,#module379){display:none!important}
 .qm-home:is(body,#web#web) .fk-elemZoneBg{position:absolute!important;inset:0!important;z-index:-1}
 .qm-home:is(body,#web#web) #module342{background:#5565dd}
 .qm-home:is(body,#web#web) #module342 .siteEditor .fk-editor{color:#fff!important}
 .qm-home :is(.qmuo-network,.qmuo-network__inner,.qmuo-net,.qmuo-net .inner,.qmuo-clients__inner){width:100%!important;max-width:100%!important;box-sizing:border-box}
 .qm-home .qmuo-clients{height:auto!important;padding:20px 16px!important}
 .qm-home .qmuo-clients__panel{height:auto!important;padding:16px!important}
 .qm-home .qmuo-clients h2{font-size:22px!important}
 .qm-home .qmuo-clients__heading{gap:0}
 .qm-home .qmuo-clients__head{align-items:center;gap:12px}
 .qm-home .qmuo-clients__page{flex:0 0 100%;width:100%;grid-template-columns:1fr;gap:16px}
 .qm-home .qmuo-client{min-width:0;height:auto;padding:16px}
 .qm-home .qmuo-clients__heading{display:block}
 .qm-home .qmuo-client__services{flex-wrap:wrap}
 .qm-home .qmuo-client__quote{height:auto;min-height:77px}
 :is(body.qm-legacy,#web#web) :is(.absMiddleTable,.absForms,.fullmeasureContentBg){width:100%!important;min-width:0!important;max-width:100%!important}
 :is(body.qm-legacy,#web#web) .fk-inBannerListZone{display:none!important}
 .qm-home .qmuo-br{position:relative;top:0;left:0;right:auto;bottom:auto;width:100%;height:auto;padding:20px 0;box-sizing:border-box}
 .qm-home .qmuo-br .card{width:100%;padding:16px}
 .qm-home .qmuo-br .hd h2{font-size:26px}
 .qm-home .qmuo-br .hd p{font-size:14px;line-height:1.8}
 .qm-home .qmuo-br .prov{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .qm-home .qmuo-br .prov-name{grid-column:1/-1;text-align:left}
 .qm-home .qmuo-br .city{height:42px;font-size:14px}
 .qm-legacy .qmuo-footer :is(.qf-inner,.qf-bottom){width:100%!important;max-width:100%!important;padding:24px 16px!important;box-sizing:border-box;flex-wrap:wrap;gap:24px}
 .qm-legacy .qmuo-footer .qf-col{width:calc(50% - 12px)!important;flex:none!important}
 .qm-legacy .qmuo-footer .qf-brand{width:100%!important}
 .qm-legacy .qmuo-footer .qf-telbox{width:100%;min-width:0}
 .qm-legacy .qmuo-footer .qf-telrow{flex-wrap:wrap;gap:12px}
 .qm-legacy .qmuo-footer .qf-num{font-size:clamp(24px,6vw,40px);white-space:normal;overflow-wrap:anywhere}
 .qm-about:is(body,#web#web) :is(#module450,#module451,#module458,#module459){display:none!important}
 .qm-about:is(body,#web#web) .qm-company-metric span{font-size:28px!important}
 :is(body.qm-about,#web#web#web#web) :is(#module452,#module453,#module454){top:0!important}
 :is(body.qm-legacy,#web#web#web#web) :is(#footer,.footerInfo,.footerItemList,.footerItemList .footerItem){height:auto!important;min-height:0!important;position:relative!important;top:0!important;left:0!important;padding:16px!important;box-sizing:border-box;text-align:center;width:100%!important}
 :is(body.qm-legacy,#web#web#web#web) #footer div{height:auto!important;min-height:0!important;position:relative!important;top:0!important;left:0!important;margin-top:0!important;padding-top:0!important;padding-bottom:0!important}
 .qm-legacy #module424 .fk-editor{white-space:normal;line-height:2!important;height:auto!important}
 .qm-legacy #module424 .fk-editor a{display:inline-block;margin:0 12px 6px 0}
 .qm-legacy #module424 .fk-editor{word-spacing:-3px}
 .qm-legacy #module424 .lightModuleOuterContent{height:auto!important}
 .qm-legacy #module424 .fk-editor span{line-height:2!important}
 .qm-legacy #module426 .fk-editor :is(p,span){color:#ddd!important}
 .qm-legacy #navV2 :is(.itemNext,.itemPrev){display:none!important}
 :is(body.qm-legacy,#web#web) #module437.qm-biz{position:relative!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;width:100%!important;padding:16px 0!important}
 .qm-legacy #module437.qm-biz .qm-biz-head{flex-wrap:wrap;gap:8px;margin-bottom:24px}
 .qm-legacy #module437.qm-biz .qm-biz-head em{margin:0}
 .qm-legacy #module437.qm-biz .qm-biz-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 12px}
 .qm-legacy #module437.qm-biz .qm-item>div :is(b,span){white-space:normal!important}
 :is(body.qm-legacy,#web#web) :is(.footer,#webFooterTable,.footerContent,.footerContent,.fk-webFooterZone){height:auto!important;min-height:0!important;position:relative!important}
 :is(body.qm-legacy,#web#web) .fk-webFooterZone{padding:24px 16px 90px!important}
 :is(body.qm-legacy,#web#web) .fk-webFooterZone>.form{position:relative!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:100%;margin:0 0 20px!important}
 :is(body.qm-legacy,#web#web) .fk-webFooterZone .fk-editor{font-size:14px!important;line-height:1.8!important}
 :is(body.qm-legacy,#web#web) .fk-webFooterZone .fk-editor span{font-size:inherit!important}
}
