:root{--pi-blue:#064bf5;--pi-ink:#0d1d39}html{scroll-padding-top:110px}.blue{color:#78adff}.button{background:var(--pi-blue);border:0;cursor:pointer;font:600 .95rem Arial,sans-serif}.button:hover{background:#003bc8}.button-white{background:#fff;color:var(--pi-ink)}.button-white:hover{background:#e5edff}.header,.header.scrolled,.header.menu-open,.info-page .header{padding:12px 4%;background:#fff;color:var(--pi-ink);box-shadow:0 1px 0 #0d1d391a;align-items:center;gap:24px}.header .brand-logo,.header.scrolled .brand-logo{width:126px}.desktop-nav{display:flex;gap:28px;align-items:center;margin-left:auto;font-size:.9rem;font-weight:600}.desktop-nav>a,.nav-dropdown>summary{padding:18px 0}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--pi-blue)}.nav-dropdown{position:relative}.nav-dropdown summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-dropdown summary:after{content:'⌄';font-size:16px}.nav-dropdown>div{position:absolute;top:100%;left:-24px;min-width:220px;display:grid;background:#fff;box-shadow:0 12px 35px #0d1d3926;padding:12px;border-top:2px solid var(--pi-blue)}.nav-dropdown>div>a{padding:12px}.header-right{gap:18px}.header-contact{background:var(--pi-blue);color:#fff;padding:13px 18px;border:0;font-size:.88rem;white-space:nowrap;letter-spacing:0}.header-contact span{margin-left:18px}.menu-toggle{display:none;color:var(--pi-ink);margin:0}.menu-toggle>span:not(.menu-label){background:var(--pi-ink)}#navigation{background:#fff;color:var(--pi-ink);border-color:#d9e1eb;left:20px;right:20px;box-shadow:0 15px 35px #0002}#navigation>a{border-color:#d9e1eb;font-size:1.6rem}#navigation>a[aria-current=page]{color:var(--pi-blue)}.nav-services{display:grid;gap:0;border-color:#d9e1eb}.nav-services a{color:#30425c;font-size:1rem;padding:10px 0}.nav-services a:hover,.nav-services a[aria-current=page]{color:var(--pi-blue)}.hero{min-height:720px;max-height:990px}.hero-content{padding-top:185px;padding-bottom:145px}.hero h1{font-size:clamp(3.6rem,6.4vw,6.5rem);line-height:1.12;letter-spacing:-.018em}.hero h1 span{color:#fff}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-secondary{font-size:.95rem;border-bottom:1px solid #ffffff80;padding:10px 0}.hero-bottom{padding-top:20px;padding-bottom:20px}.hero-content>p:not(.eyebrow){max-width:450px}.home-page .intro{position:relative;isolation:isolate;color:var(--pi-ink)}.home-page .intro:before{content:'';position:absolute;z-index:-1;inset:0 calc((100% - 100vw)/2);background:#fff}.home-page .intro p,.home-page .services-section p{color:#516072}.home-page .intro .lead{color:var(--pi-ink)}.home-page .intro .blue,.home-page .services-section .blue{color:var(--pi-blue)}.home-page .intro .line-link{color:var(--pi-blue);border-color:#b8c8db}.home-page .principles{border-color:#dce3eb}.home-page .principles span:before{color:var(--pi-blue)}.home-page .services-section{background:#f3f6f9;color:var(--pi-ink)}.home-page .services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.home-page .service-card{grid-row:auto;min-height:470px;color:#fff}.home-page .card-heading{left:26px;right:58px;bottom:30px}.home-page .card-heading h3{font-size:2.8rem}.home-page .ventilation .card-heading h3{font-size:2.45rem}.home-page .service-card p{color:#fff;font-size:.95rem}.home-page .card-heading>span{font-size:.8rem;letter-spacing:.08em}.home-page .card-link{right:20px;bottom:32px;width:35px;height:35px}.contact,.contact-main{background:var(--pi-blue)}.brand-teaser{display:flex;align-items:center;gap:35px;justify-content:space-between;padding-top:40px;padding-bottom:50px;border-top:1px solid #344354}.brand-teaser .eyebrow{margin-bottom:8px;font-size:.75rem}.brand-teaser p{font-size:.9rem}.brand-names{display:flex;gap:30px;font-size:1.15rem;font-weight:700;align-items:center;color:#c6d1df}.brand-teaser .line-link{margin:0;white-space:nowrap}.info-intro{padding-top:175px}.info-intro h1{font-size:clamp(3.2rem,5.8vw,5.6rem)}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.company-panel{min-height:510px;background:#f3f6fa;color:var(--pi-ink);padding:45px;display:flex;flex-direction:column;justify-content:space-between;border-bottom:6px solid var(--pi-blue)}.company-panel>img{width:140px;height:auto}.company-panel .eyebrow{font-size:.75rem;color:#50627a;margin-bottom:15px}.company-panel h2{font-size:3.8rem;margin-bottom:18px}.company-panel p{color:#405570}.about-copy h2{font-size:3.2rem;margin-bottom:25px}.about-copy p+p{margin-top:20px}.about-copy .line-link{margin-top:22px}.inquiry-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start;padding-bottom:50px;scroll-margin-top:25px}.inquiry-heading>p:not(.eyebrow){margin-top:25px}.contact-direct{margin-top:35px;padding-top:25px;border-top:1px solid #3a4858}.contact-direct a{display:block;margin-top:8px;color:#8bbaff;overflow-wrap:anywhere}.inquiry-form{background:#fff;color:var(--pi-ink);padding:38px}.inquiry-form fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}.inquiry-form legend{font-family:Oswald,sans-serif;font-size:1.6rem;margin-bottom:20px;padding:0}.inquiry-form label{display:block;font-size:.9rem;font-weight:600;margin-bottom:7px}.inquiry-form label span{font-weight:400;color:#5b697a}.inquiry-form input:not([type=radio]),.inquiry-form textarea{width:100%;padding:12px;border:1px solid #bdc9d7;background:#f8fafc;color:var(--pi-ink);font:1rem Arial,sans-serif;line-height:1.5;border-radius:0;margin-bottom:20px}.inquiry-form textarea{resize:vertical;min-height:125px}.inquiry-form input:focus,.inquiry-form textarea:focus{outline:2px solid var(--pi-blue);outline-offset:2px}.service-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:25px}.service-options label{display:flex;align-items:center;gap:8px;border:1px solid #bdc9d7;padding:12px 10px;margin:0;cursor:pointer;min-height:48px}.service-options label:has(input:checked){border-color:var(--pi-blue);background:#edf3ff;color:#0347de}.service-options input{accent-color:var(--pi-blue);width:17px;height:17px;flex-shrink:0}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry-form .field-help{font-size:.85rem;color:#586779;line-height:1.55;margin:0 0 15px}.inquiry-form input[type=file]{font-size:.85rem;margin-bottom:8px;padding:12px 8px}.inquiry-form input::file-selector-button{border:0;background:#e3eaf4;padding:8px;color:var(--pi-ink);margin-right:8px;cursor:pointer}.inquiry-form .button{margin-bottom:16px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status:not(:empty){padding:16px;background:#edf3ff;color:#13355d;margin:15px 0}.form-status.error{background:#fff0f0;color:#a42121}.button:disabled{opacity:.55;cursor:wait}.inbox-section{padding-bottom:90px}.inbox-card{border:1px solid #40536a;padding:28px;margin-bottom:22px}.inbox-card h2{font-size:2rem;margin:10px 0}.inbox-card p{white-space:pre-wrap;overflow-wrap:anywhere}.inbox-card .inbox-meta{font-size:.85rem;color:#9fb7d1}.inbox-card .inbox-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}.inbox-card a{text-decoration:underline;text-underline-offset:4px}.inbox-error{padding:25px;border:1px solid #805252}.inbox-card details{margin-top:20px}.inbox-card summary{cursor:pointer}.inbox-card button{margin-top:20px;background:transparent;color:#f7bbbb;border:1px solid #875555;padding:10px 18px;cursor:pointer}.inbox-card[hidden],#load-more[hidden]{display:none}.footer-bottom,.photo-credit{font-size:.85rem}
@media(min-width:1101px){#navigation.open{display:none}}
@media(max-width:1100px){.desktop-nav{display:none}.menu-toggle{display:block}.header-right{margin-left:auto}.header{padding:12px 28px}.home-page .service-card{min-height:400px}.home-page .card-heading h3{font-size:2.4rem}.home-page .ventilation .card-heading h3{font-size:2rem}.home-page .card-heading p{font-size:.88rem}.brand-teaser{flex-wrap:wrap}.brand-names{flex-wrap:wrap}.about-grid,.inquiry-section{gap:40px}.inquiry-form{padding:28px}.brand-teaser .line-link{margin-left:auto}}
@media(max-width:700px){.header,.header.scrolled{padding:10px 20px;gap:15px}.header .brand-logo,.header.scrolled .brand-logo{width:100px}.header-contact{display:block;padding:11px 12px;font-size:.8rem}.header-contact span{display:none}.header-right{gap:14px}.menu-toggle,.header.scrolled .menu-toggle{width:35px;margin:0}.hero{min-height:740px;height:100svh}.hero-content{padding:145px 20px 155px}.hero h1{font-size:clamp(3.15rem,10.8vw,4.8rem)}.hero-actions{gap:12px 22px}.hero-secondary{font-size:.88rem}.hero-bottom{padding:18px 20px}.home-page .services-grid{grid-template-columns:1fr}.home-page .service-card{min-height:390px}.home-page .card-heading h3,.home-page .ventilation .card-heading h3{font-size:2.8rem}.home-page .card-heading p{font-size:1rem}.home-page .intro-grid{gap:26px}.home-page .principles{gap:12px}.brand-teaser{padding:35px 0;gap:24px}.brand-names{gap:16px 25px;font-size:1.05rem}.brand-teaser .line-link{margin-left:0}.info-intro{padding-top:140px}.info-intro h1{font-size:3.1rem}.about-grid,.inquiry-section{grid-template-columns:1fr;gap:35px}.company-panel{min-height:420px;padding:30px}.company-panel h2{font-size:3.3rem}.about-copy h2{font-size:2.8rem}.inquiry-heading h2{font-size:2.8rem}.inquiry-form{padding:25px 20px}.form-pair{grid-template-columns:1fr;gap:0}.service-options{gap:8px}.service-options label{font-size:.84rem;padding:12px 8px}.inquiry-form .button{width:100%}.inbox-card{padding:20px}.detail-hero .hero-content{padding-top:140px}#navigation,.header.scrolled #navigation{max-height:calc(100dvh - 105px)}}
@media(max-width:360px){.header,.header.scrolled{padding-left:14px;padding-right:14px;gap:10px}.header-right{gap:10px}.header .brand-logo,.header.scrolled .brand-logo{width:90px}.header-contact{font-size:.75rem;padding:10px}.hero h1{font-size:3rem}}

/* Company contact details */
.company-panel h2{font-size:clamp(2.3rem,3.3vw,3.4rem);overflow-wrap:anywhere}.contact-direct>p:not(:first-child){margin-top:24px}.contact-direct .contact-phone{font-size:1.45rem}.contact-direct address{font-style:normal;color:#e4eaf2;margin-top:8px;line-height:1.7}.footer-business{display:flex;justify-content:space-between;gap:25px;padding:0 0 30px;color:#c8d2de;font-size:.95rem}.footer-business address{font-style:normal;line-height:1.7}.footer-business strong{font-weight:600;color:#fff}.footer-business>div{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.footer-business a:hover{color:#8bbaff}.footer-business a{overflow-wrap:anywhere}@media(max-width:700px){.footer-business{flex-direction:column;gap:20px}.footer-business>div{align-items:flex-start}.company-panel h2{font-size:2.65rem}}
