/* Desktop: a local craft business, with clear editorial hierarchy.
   The small-screen design remains owned by style.css and wizard.css. */@media (min-width: 1000px){:root{--max:1280px;--ink:#173247;--muted:#5b6d79;--line:#dce5eb;--surface:#f4f7f9}body{font-size:17px}.container{width:min(calc(100% - 112px), var(--max))}.section{padding-block:88px}h1{font-size:clamp(50px, 4.45vw, 70px);line-height:1.075;letter-spacing:-.045em}h2{font-size:clamp(34px, 2.9vw, 46px);line-height:1.14;letter-spacing:-.038em}h3{line-height:1.3;letter-spacing:-.025em}p{line-height:1.75}.section-heading{max-width:770px;margin-bottom:38px}.section-heading-row{align-items:end;gap:48px}.section-heading-row .section-heading{margin-bottom:38px}.heading-aside{font-size:16px;line-height:1.7;margin-bottom:39px;max-width:31ch}.header-inner{width:min(calc(100% - 96px), 1440px);gap:28px}.brand{width:292px;height:64px}.site-header nav{gap:26px}.site-header nav > a{font-size:14px;font-weight:550}.header-cta{min-height:48px;padding-inline:20px;font-size:14px;gap:16px}.button{min-height:58px;padding:17px 25px;border-radius:6px;font-size:16.5px;gap:23px}.button:hover{transform:translateY(-2px)}.button-secondary:hover,.cta-band .button:hover{background:#fff;color:var(--navy);border-color:var(--navy)}.text-link{font-size:16px;gap:14px}/* The opening view introduces people and a local service, not a product card. */.hero{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:72px;padding-block:68px 76px;align-items:center}.hero-copy{max-width:640px;min-width:0}.hero h1{margin-bottom:27px}.hero-lead{font-size:18px;line-height:1.75;max-width:52ch}.hero-actions{margin-top:31px;gap:24px}.hero-visual{min-width:0}.hero-photo{height:470px;border-radius:12px}.hero-note{position:static;padding:19px 0 0;margin:0;background:transparent;border-radius:0;box-shadow:none;font-size:13px;gap:12px}.hero-note > .icon{width:27px;height:27px}.hero-note strong{font-size:15px}.local-proof{display:flex;align-items:flex-start;gap:12px;max-width:47ch;margin:26px 0 0;color:var(--navy);font-size:16px;line-height:1.6}.local-proof > .icon{width:22px;height:22px;margin-top:2px}.local-proof strong{font-weight:600}.page-home .hero{grid-template-columns:minmax(0, 1fr) minmax(0, 1.06fr);gap:64px;padding-block:72px 76px}.page-home .hero h1{max-width:none;font-size:clamp(48px, 4.15vw, 64px)}.page-home .hero h1 em{font-size:.88em}.page-home .home-team-hero{align-self:center}.page-home .home-team-hero picture{display:block}.page-home .home-team-hero .hero-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:50% 50%;border-radius:10px}.inner-hero{padding-block:68px 64px}.inner-hero .hero-photo{height:450px}/* Four commitments form one quiet strip, with no badge or box styling. */.benefit-strip{border-block:1px solid var(--line);background:#fff}.benefits{grid-template-columns:repeat(4, minmax(0, 1fr));padding-block:33px 35px}.benefits > div{display:block;padding:4px 30px;min-width:0}.benefits > div:first-child{padding-left:0}.benefits > div:last-child{padding-right:0}.benefits > div + div{border-left:1px solid var(--line)}.benefits > div > .icon{width:33px;height:33px;margin:0 0 20px;color:var(--navy)}.benefits h3{font-size:18px;font-weight:600;line-height:1.35;margin:0 0 7px;max-width:24ch}.benefits p{font-size:15.5px;line-height:1.7;max-width:28ch;margin:0}/* Services read like an editorial overview, rather than a product catalogue. */.service-showcase{grid-template-columns:minmax(0, 1.12fr) minmax(0, 1fr);gap:64px}.service-feature{min-height:0;background:transparent;border-radius:0;overflow:visible}.service-feature > img{height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:10px}.service-feature > div{position:relative;inset:auto;margin:0;padding:24px 60px 25px 0;border-radius:0;border-bottom:1px solid var(--line);background:transparent}.service-feature h3{font-size:28px;margin:0 0 10px}.service-feature p{font-size:16px;line-height:1.7;max-width:43ch}.service-feature .round-arrow{right:0;bottom:auto;top:25px;width:40px;height:40px;background:#fff;border:1px solid var(--line)}.service-feature:hover > img{transform:none}.service-stack{grid-template-rows:repeat(3, 1fr)}.service-stack > a{padding:26px 0;gap:23px}.service-stack > a > .icon:first-child{width:38px;height:38px;color:var(--navy)}.service-stack > a > .icon:last-child{width:22px;height:22px}.service-stack h3{font-size:25px;margin-bottom:9px}.service-stack p{font-size:16px;line-height:1.7;max-width:34ch}.service-stack > a:hover{background:transparent}.split-content{gap:88px;align-items:center}.split-content h2{margin-bottom:25px}.split-content p:not(.eyebrow){max-width:54ch;font-size:17px;line-height:1.8}.vertical-process li{gap:25px;padding-block:25px}.vertical-process li > .icon{width:40px;height:40px;margin-top:2px}.vertical-process h3{font-size:23px;margin-bottom:10px}.vertical-process p{font-size:16px;line-height:1.75}.team-section{grid-template-columns:minmax(0, 1.07fr) minmax(0, 1fr);gap:88px}.team-section h2{margin-bottom:25px}.team-section p:not(.eyebrow){max-width:48ch;font-size:17px;line-height:1.8}.home-team-photo img{height:auto;aspect-ratio:1.18;object-fit:cover;border-radius:10px}.service-team-section > .photo > img{height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:10px}.craft-story{display:grid;grid-template-columns:minmax(0, 1.06fr) minmax(0, 1fr);gap:88px;align-items:center}.craft-story > *{min-width:0}.craft-story h2{margin-bottom:26px}.craft-story p{max-width:52ch;font-size:17px;line-height:1.8;color:var(--muted)}.craft-story .photo > img,.craft-story > picture > img,.craft-story > img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.craft-story .button{margin-top:12px}/* Climate: the practical decision comes before the enquiry. */.manufacturer-section{padding-block:14px 29px}.manufacturer-logos{max-width:500px;gap:60px}.manufacturer-logos li{height:86px}.manufacturer-logos img{max-width:185px;width:100%;height:100%;object-fit:contain}.room-choice{grid-template-columns:minmax(0, .85fr) minmax(0, 1.25fr);gap:88px}.room-types{gap:0}.room-types a{padding:22px 0;gap:21px}.room-types a > span{font-size:22px}.room-types a > .icon:first-child{width:33px;height:33px}.room-types a:hover{background:transparent}.function-grid{gap:38px;margin-block:21px 60px}.function-grid > article > .icon{width:38px;height:38px;margin-bottom:23px}.function-grid h3{font-size:23px;margin-bottom:12px}.function-grid p{max-width:29ch;font-size:16px;line-height:1.75}.system-choice{gap:80px;padding-top:55px}.system-choice > div > p:not(.eyebrow){max-width:49ch;font-size:17px;line-height:1.75}.split-diagram{gap:30px}.split-diagram span{font-size:15px}.split-diagram p{font-size:13px;line-height:1.6}.installation .photo > img{aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:10px}.check-list{gap:15px;margin-block:26px}.check-list > li{font-size:16px;line-height:1.7;gap:13px}.check-list .icon{width:20px;height:20px;margin-top:3px}.decision-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:38px}.decision-grid > article{min-width:0;padding-top:25px;border-top:1px solid var(--line)}.decision-grid > article > .icon{width:37px;height:37px;color:var(--navy);margin-bottom:22px}.decision-grid h3{font-size:23px;margin-bottom:14px}.decision-grid p{max-width:38ch;font-size:16px;line-height:1.8;color:var(--muted)}.decision-grid .text-link{margin-top:5px}.process{gap:35px;border-top:1px solid var(--line);margin-top:40px}.process li{border:0;padding-top:29px;min-width:0}.process li > .icon{width:41px;height:41px;margin-bottom:25px}.process h3{font-size:23px;margin-bottom:14px}.process p{max-width:31ch;font-size:16px;line-height:1.8}.faq-layout{grid-template-columns:minmax(0, .76fr) minmax(0, 1.24fr);gap:88px;align-items:start}.faq-layout > div:first-child h2{max-width:15ch}.faq-layout > div:first-child > p:not(.eyebrow){max-width:35ch;font-size:17px;line-height:1.75;margin-top:24px}.faq summary{padding-block:25px;font-size:18px;line-height:1.5;font-weight:550;gap:28px}.faq summary > span{font-size:26px}.faq details > p{max-width:64ch;font-size:16px;line-height:1.85;margin-bottom:25px}.inquiry-section{max-width:1160px}.consultation-intro{display:flex;align-items:end;justify-content:space-between;gap:52px;margin-bottom:34px}.consultation-intro h2{max-width:20ch}.consultation-intro > p{max-width:45ch;margin:0;color:var(--muted);font-size:17px;line-height:1.75}.air-inquiry-panel{border-radius:12px;box-shadow:none}.air-inquiry .air-inquiry-content{padding:38px}.air-inquiry h2{font-size:31px;max-width:31ch;line-height:1.25;margin-bottom:28px}.air-inquiry .air-inquiry-option{border-radius:9px;min-height:190px}.air-inquiry .air-inquiry-option-label{font-size:17px}.air-inquiry .air-inquiry-option-description{font-size:13px;line-height:1.5}.air-inquiry label{font-size:15px}.air-inquiry input{min-height:56px}.air-inquiry .air-inquiry-primary{font-size:16px;min-height:56px;padding-inline:25px}.air-inquiry .air-inquiry-privacy{font-size:14px}/* Every secondary page has an intentional reading width and supporting rhythm. */.page-intro{padding-block:72px 55px}.page-intro h1{max-width:23ch;margin-bottom:26px}.page-intro .hero-lead{max-width:66ch;font-size:18px;line-height:1.75;margin-bottom:0}.page-intro .button{margin-top:27px}.detail-layout{grid-template-columns:minmax(0, 1.5fr) minmax(280px, .8fr);gap:84px;padding-top:15px;align-items:start}.detail-main > article{display:grid;grid-template-columns:39px minmax(0, 1fr);column-gap:25px;padding:28px 0 35px}.detail-main > article > .icon{grid-column:1;grid-row:1/span 2;width:35px;height:35px;margin:2px 0 0}.detail-main > article > h2,.detail-main > article > p,.detail-main > article > ul{grid-column:2}.detail-main h2{max-width:27ch;font-size:30px;line-height:1.24;margin-bottom:19px}.detail-main p{max-width:68ch;font-size:17px;line-height:1.85;margin-bottom:0}.detail-main .check-list{margin-block:24px 0}.detail-main .check-list > li{font-size:15px}.detail-aside{top:120px}.detail-aside .photo > img{aspect-ratio:4/3;height:auto;border-radius:10px}.aside-callout{border-radius:8px;padding:29px;margin-top:25px;box-shadow:none}.aside-callout > .icon{width:29px;height:29px;margin-bottom:20px}.aside-callout h2{font-size:25px;line-height:1.25;margin-bottom:14px}.aside-callout p{font-size:16px;line-height:1.75;margin-bottom:20px}.aside-callout .button{font-size:15px;gap:17px;padding-inline:16px}.page-contact .contact-intro,.page-contact .contact-layout,.page-contact .contact-direct{max-width:1160px}.contact-intro{padding-block:68px 44px}.contact-intro h1{font-size:clamp(50px, 4.45vw, 70px);line-height:1.075;margin-bottom:26px}.contact-intro .hero-lead{max-width:55ch;font-size:18px;line-height:1.75}/* Address, availability and direct contact share one calm editorial row. */.page-contact .contact-direct{display:grid;grid-template-columns:minmax(150px, .55fr) minmax(0, 1.8fr);align-items:start;gap:56px;margin-top:64px;padding-block:40px 68px}.page-contact .contact-direct > h2{font-size:30px;line-height:1.3;margin:0}.page-contact .contact-basic{grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr);gap:42px}.page-contact .contact-basic > div{min-width:0}.page-contact .contact-basic > div + div{border-left:1px solid var(--line);padding-left:42px}.page-contact .contact-basic p,.page-contact .contact-basic address,.page-contact .contact-direct .contact-number,.page-contact .contact-email-reveal,.page-contact .contact-email-address{font-size:16px;line-height:1.85;letter-spacing:0}.page-contact .contact-basic p{margin:0 0 17px}.page-contact .contact-basic address{max-width:28ch;margin:0;color:var(--muted)}.page-contact .contact-basic address a::first-line{color:var(--ink);font-weight:650}.page-contact .contact-basic address a{display:inline-block}.page-contact .contact-basic address a:hover{text-decoration:underline;text-underline-offset:4px}.page-contact .contact-basic > div + div > p:first-child{color:var(--muted)}.page-contact .contact-number{font-weight:550;white-space:nowrap}.page-contact .contact-email-reveal,.page-contact .contact-email-address{min-height:34px;font-weight:550}.page-services .page-intro{max-width:1280px}.service-directory{margin-bottom:28px}.service-directory > a{grid-template-columns:48px minmax(0, 1fr) 28px;gap:29px;padding:31px 0}.service-directory > a > span{display:none}.service-directory > a > .icon:first-of-type{width:40px;height:40px;color:var(--navy)}.service-directory > a > .icon:last-child{width:24px;height:24px}.service-directory h2{font-size:30px;line-height:1.25;margin-bottom:10px}.service-directory p{max-width:67ch;font-size:17px;line-height:1.75}.service-directory > a:hover{background:transparent}.page-team .page-intro{padding-bottom:48px}.team-portraits{max-width:1180px;grid-template-columns:repeat(4, minmax(0, 1fr));gap:26px}.team-portraits img{aspect-ratio:2/3;border-radius:10px}.team-portraits .portrait-highlight-patch{aspect-ratio:auto;border-radius:0}.page-team .split-content{align-items:start}.editorial-points > article{grid-template-columns:40px minmax(0, 1fr);column-gap:25px;row-gap:10px;padding-block:25px}.editorial-points article > .icon{width:36px;height:36px;margin-top:2px}.editorial-points h3{font-size:25px}.editorial-points p{font-size:16px;line-height:1.8}.team-gallery-section{grid-template-columns:minmax(0, 1.08fr) minmax(0, 1fr);gap:88px}.team-gallery-section .photo{max-width:none}.team-gallery-section .natural-photo > img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:transparent;border-radius:10px}.team-gallery-section p:not(.eyebrow){max-width:47ch;font-size:17px;line-height:1.8}.page-region .page-intro{padding-bottom:48px}.region-overview{grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr);gap:78px;align-items:center}.region-overview > div{max-width:47ch}.region-overview h2{margin-bottom:26px}.region-overview p{font-size:17px;line-height:1.85}.air-region-map{border-radius:12px}.town-links{gap:13px}.town-links > a{min-height:66px;padding:18px;border-radius:6px;font-size:15px;gap:12px}.town-links > a:hover{background:#fff;border-color:#9cb3c3}.career-photo{max-width:1280px}.career-photo .photo > img{border-radius:10px;aspect-ratio:16/9;object-position:50% 38%}.page-career .prose{max-width:850px;padding-top:64px}.prose{max-width:850px}.prose p{font-size:17px;line-height:1.85}.cta-band{padding-block:62px}.cta-inner{gap:64px}.cta-band h2{max-width:24ch;font-size:42px;line-height:1.15;margin-bottom:17px}.cta-band p:not(.eyebrow){max-width:56ch;font-size:18px;line-height:1.75}.cta-band .button{min-width:235px;flex-shrink:0}.footer-clean{padding-block:35px;gap:22px}.footer-clean nav{font-size:15px;gap:32px}.footer-clean p{font-size:14px}.legal{max-width:1040px;padding-top:64px;font-size:16px;line-height:1.9}.legal h1{font-size:54px;line-height:1.1;max-width:26ch;margin-bottom:45px}.legal h2{font-size:28px;line-height:1.3;letter-spacing:-.025em;margin-top:40px}.legal h3{font-size:22px;line-height:1.35}.legal p{max-width:85ch;font-size:16px}.legal table{font-size:14px;line-height:1.75}.legal th,.legal td{padding:15px 16px}}@media (min-width: 1000px) and (max-width: 1199px){.container{width:calc(100% - 80px)}.header-inner{width:calc(100% - 64px)}.brand{width:280px}.hero,.page-home .hero{gap:45px}.page-home .hero h1{font-size:49px}.hero-photo,.inner-hero .hero-photo{height:415px}.benefits > div{padding-inline:23px}.benefits h3{font-size:17px}.benefits p{font-size:15px}.split-content,.craft-story,.team-section,.team-gallery-section{gap:58px}.service-showcase{gap:44px}.service-feature > img{aspect-ratio:4/3}.service-stack h3{font-size:23px}.function-grid,.decision-grid{gap:27px}.function-grid p,.decision-grid p{font-size:15px}.room-choice{gap:55px}.process{gap:25px}.process h3{font-size:21px}.process p{font-size:15px}.faq-layout{gap:58px;grid-template-columns:minmax(0, .72fr) minmax(0, 1.28fr)}.detail-layout{gap:52px;grid-template-columns:minmax(0, 1.45fr) minmax(270px, .8fr)}.detail-main > article{grid-template-columns:34px minmax(0, 1fr);column-gap:20px}.detail-main h2{font-size:28px}.aside-callout{padding:24px}.region-overview{gap:50px}.team-portraits{gap:20px}.consultation-intro{gap:35px}}@media (min-width: 1500px){.section{padding-block:102px}.hero,.page-home .hero{padding-block:82px 88px}.hero-photo{height:515px}.inner-hero .hero-photo{height:485px}.page-home .home-team-hero .hero-photo{height:auto}}@media (min-width: 1000px) and (max-width: 1180px){.site-header nav.is-open > a{font-size:17px;padding-block:16px}}
