@font-face{font-family:Rockstar;font-style:normal;font-weight:800;font-display:swap;src:url('./fonts/Rockstar-ExtraBold.otf') format('opentype')}
:root{--blue-900:#071a31;--blue-800:#0b2545;--blue-700:#12365f;--blue-050:#eef4fa;--yellow:#f4b500;--white:#fff;--anthracite:#202b35;--gray-700:#526170;--gray-500:#677b88;--gray-300:#a7b5be;--gray-200:#d5dfe2;--gray-050:#f4f6f6;--font-sans:'Helvetica Neue',Arial,sans-serif;--font-display:Rockstar,'Helvetica Neue',Arial,sans-serif;--header-h:80px;--container:1280px;--section-space:clamp(72px,8vw,112px);--focus:#276466}
*{box-sizing:border-box;scrollbar-color:#8597a3 var(--gray-050);scrollbar-width:thin}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:#fff;color:var(--anthracite);font:16px/1.6 var(--font-sans);-webkit-font-smoothing:antialiased}::selection{background:#f4d774;color:var(--blue-800)}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button{color:inherit}input,textarea{caret-color:var(--blue-800)}p,h1,h2,h3{margin:0}h1,h2,h3{color:var(--blue-800);font-family:var(--font-display);font-weight:800;line-height:1.08;letter-spacing:0;text-wrap:balance}h1{font-size:clamp(52px,5.8vw,84px)}h2{font-size:clamp(36px,4vw,54px)}h3{font-size:28px}p{max-width:70ch}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px}[hidden]{display:none!important}.dark :focus-visible,.footer :focus-visible{outline-color:var(--yellow)}.wrap{width:min(var(--container),calc(100% - 96px));margin-inline:auto}.site-main{padding-top:var(--header-h)}.section{padding-block:var(--section-space)}.paper{background:var(--gray-050)}.dark{background:var(--blue-800);color:#fff}.dark h1,.dark h2,.dark h3{color:#fff}.dark p{color:#d0dce5}.muted-copy{color:var(--gray-700)}.text-link{display:inline-flex;align-items:center;gap:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.text-link:hover{text-decoration-thickness:2px}.text-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.lead{font-size:19px;line-height:1.65;color:var(--gray-700)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-top:30px}.btn,.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;border:1px solid transparent;border-radius:4px;padding:12px 22px;font:600 15px/1.4 var(--font-sans);text-align:center;transition:background 160ms ease,color 160ms ease,border-color 160ms ease}.btn svg,.header-cta svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.btn-primary,.header-cta{background:var(--blue-800);color:white}.btn-primary:hover,.header-cta:hover{background:var(--blue-900)}.btn-yellow{background:var(--yellow);color:var(--blue-800)}.btn-yellow:hover{background:#dfaa10}.btn-secondary{background:#fff;color:var(--blue-800);border-color:var(--gray-300)}.btn-secondary:hover{background:var(--blue-050);border-color:var(--blue-800)}
.skip-link{position:fixed;z-index:100;left:20px;top:12px;background:var(--blue-800);color:#fff;padding:12px 20px;transform:translateY(-180%)}.skip-link:focus{transform:none}.site-header{position:fixed;z-index:30;inset:0 0 auto;height:var(--header-h);background:#fff;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;gap:32px;padding-inline:max(32px,calc((100vw - 1280px)/2))}.brand{flex-shrink:0}.brand img{width:144px;height:auto}.main-nav{display:flex;align-items:center;justify-content:center;gap:26px;flex:1}.main-nav a{display:flex;align-items:center;min-height:48px;position:relative;font-size:14px;font-weight:600;color:var(--gray-700);white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--blue-800)}.main-nav a[aria-current=page]::after{content:'';position:absolute;bottom:2px;left:0;right:0;height:3px;background:var(--yellow)}.header-cta{min-height:44px;font-size:14px;padding:10px 16px;flex-shrink:0}.menu-button{display:none;background:#fff;border:1px solid var(--gray-200);border-radius:4px;width:46px;height:46px;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-button span{display:block;width:21px;height:1.5px;background:var(--blue-800)}
.home-hero{padding-block:60px 64px}.home-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;align-items:center;gap:70px}.home-hero h1{font-size:clamp(56px,6.6vw,94px);line-height:1.04;margin-bottom:26px}.home-hero .lead{max-width:570px}.hero-note{font-size:14px;line-height:1.65;margin-top:26px;max-width:520px}.engineering-figure{margin:0;min-width:0}.engineering-image{padding:22px 16px;background:#fff}.engineering-image img{width:100%;height:auto}.engineering-figure figcaption{font-size:12px;line-height:1.6;color:var(--gray-700);padding-top:14px}.dark .engineering-figure figcaption{color:#c2d1df}.engineering-figure figcaption span{display:block;font-size:14px;font-weight:600;color:var(--blue-800);margin-bottom:3px}.dark .engineering-figure figcaption span{color:#fff}.home-paths{display:flex;gap:12px 32px;flex-wrap:wrap;border-top:1px solid #3a5069;padding-top:28px;margin-top:46px}.home-paths a{font-size:14px;color:#d0dce5;text-decoration:underline;text-underline-offset:5px}.home-paths a:hover{color:#fff}.section-intro{display:grid;grid-template-columns:1fr 0.75fr;align-items:start;gap:80px;margin-bottom:44px}.section-intro p{font-size:18px;color:var(--gray-700)}.section-intro h2{max-width:650px}.service-list{border-top:1px solid var(--gray-200)}.service-row{display:grid;grid-template-columns:0.95fr 1fr 32px;gap:40px;align-items:center;padding:34px 0;border-bottom:1px solid var(--gray-200)}.service-row h3{font-size:34px}.service-row p{color:var(--gray-700);max-width:570px}.service-row svg{width:24px;height:24px;fill:none;stroke:var(--blue-800);stroke-width:1.5;transition:transform 160ms ease}.service-row:hover h3{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}.service-row:hover svg{transform:translateX(4px)}.house-entry{display:grid;grid-template-columns:0.95fr 1.05fr;align-items:center;gap:80px}.house-entry h2{margin-bottom:24px}.house-entry p{font-size:18px;color:var(--gray-700)}.house-entry .house-name{font-family:var(--font-display);font-size:30px;color:var(--blue-800);margin-bottom:22px}.house-entry figure{margin:0}.house-entry img{width:100%;height:auto;background:#fff}.house-entry figcaption{font-size:12px;line-height:1.6;color:var(--gray-700);margin-top:12px}.work-sequence{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;list-style:none;padding:0;margin:44px 0 0}.work-sequence li{border-top:1px solid var(--gray-200);padding-top:24px}.step-no{display:block;font-size:15px;color:var(--gray-700);font-variant-numeric:tabular-nums;margin-bottom:18px}.work-sequence h3{font-family:var(--font-sans);font-size:18px;line-height:1.3;font-weight:600;margin-bottom:10px}.work-sequence p{font-size:15px;color:var(--gray-700)}
.service-hero{padding-block:64px 72px;border-bottom:1px solid var(--gray-200)}.service-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:80px;align-items:center}.service-hero h1{margin-bottom:24px}.service-hero .lead{max-width:590px}.service-hero .engineering-image{background:var(--gray-050);padding:18px}.service-hero .engineering-image img{max-height:390px;object-fit:contain}.breadcrumbs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--gray-700);margin-bottom:42px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.breadcrumbs svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.5}.service-layout{display:grid;grid-template-columns:0.72fr 1.28fr;gap:80px}.service-layout>div>p{font-size:17px;color:var(--gray-700);margin-top:20px}.detail-rows{margin:0}.detail-row{display:grid;grid-template-columns:0.75fr 1.2fr;gap:36px;padding:25px 0;border-bottom:1px solid var(--gray-200)}.detail-row:first-child{border-top:1px solid var(--gray-200)}.detail-row dt{font-weight:600;font-size:18px;color:var(--blue-800)}.detail-row dd{margin:0;color:var(--gray-700)}.supply-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:80px;align-items:start}.supply-grid h2{margin-bottom:24px}.supply-grid p{font-size:17px;color:var(--gray-700)}.plain-list{list-style:none;padding:0;margin:0}.plain-list li{padding:17px 0;border-bottom:1px solid var(--gray-200);display:flex;gap:16px;align-items:flex-start}.plain-list li:first-child{padding-top:0}.plain-list svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:#276466;stroke-width:1.7;margin-top:3px}.scope-note{margin-top:26px!important;font-size:14px!important}.request-band{display:grid;grid-template-columns:1fr 0.85fr;gap:80px;align-items:center}.request-band h2{margin-bottom:20px}.request-band p{font-size:17px}.request-documents{list-style:none;margin:0;padding:0}.request-documents li{padding:13px 0;border-bottom:1px solid #3a5069;font-size:15px;color:#d0dce5}.request-documents li:first-child{padding-top:0}.faq-layout{display:grid;grid-template-columns:0.7fr 1.3fr;gap:80px}.faq-list details{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--gray-200)}.faq-list summary{font-size:18px;line-height:1.5;font-weight:600;color:var(--blue-800);padding-right:16px}.faq-list p{margin-top:16px;color:var(--gray-700);font-size:15px}.service-next{padding-block:36px;border-top:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between;gap:24px}.service-next p{font-size:17px;font-weight:600;color:var(--blue-800)}
.contact-hero{padding-top:58px}.contact-hero .breadcrumbs{margin-bottom:30px}.contact-hero h1{font-size:clamp(50px,5.5vw,76px);max-width:900px;margin-bottom:22px}.contact-hero .lead{max-width:780px}.contact-grid{display:grid;grid-template-columns:0.85fr 1.15fr;align-items:start;gap:80px;padding-top:48px;padding-bottom:var(--section-space)}.contact-brief h2{font-size:32px;margin-bottom:20px}.contact-brief>p{color:var(--gray-700);font-size:16px;margin-bottom:24px}.document-list{list-style:none;padding:0;margin:0}.document-list li{padding:16px 0;border-bottom:1px solid var(--gray-200);font-size:16px}.document-list li:first-child{border-top:1px solid var(--gray-200)}.contact-hint{margin-top:22px!important;font-size:14px!important}.contact-house{margin-top:44px;padding-top:28px;border-top:1px solid var(--gray-200)}.contact-house h3{font-size:26px;margin-bottom:12px}.contact-house p{font-size:15px;color:var(--gray-700);margin-bottom:16px}.quote-form{background:var(--gray-050);padding:32px;display:grid;gap:22px;border:0;border-radius:0}.quote-form h2{font-size:30px}.quote-form label{display:grid;gap:8px;font-size:14px;line-height:1.5;font-weight:600;color:var(--blue-800)}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-height:48px;border:1px solid var(--gray-300);border-radius:2px;padding:12px;background:#fff;font-size:16px;color:var(--blue-800)}.quote-form textarea{min-height:140px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-form .request-note{font-size:13px;line-height:1.6;font-weight:400;color:var(--gray-700)}.quote-form .request-status{font-size:14px;line-height:1.6;color:var(--blue-800)}.contact-channel:not(:empty){font-size:14px;padding:16px;background:#fff;border:1px solid var(--gray-200);line-height:1.6;overflow-wrap:anywhere}.form-actions{display:flex;flex-wrap:wrap;gap:12px}.form-actions .btn{flex:1}.field-optional{font-weight:400;color:var(--gray-700)}.noscript-note{border:1px solid var(--gray-200);padding:16px;font-size:14px}.footer{background:var(--blue-800);color:#fff;padding:52px max(32px,calc((100vw - 1280px)/2)) 28px}.footer-grid{display:grid;grid-template-columns:1.2fr 0.8fr 0.8fr;gap:64px;padding-bottom:42px}.footer img{width:144px;height:auto}.footer-brand p{font-size:14px;line-height:1.7;color:#d0dce5;max-width:320px;margin-top:20px}.footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer nav strong{font-size:14px;margin-bottom:4px;font-weight:600}.footer a{font-size:14px;color:#d0dce5;line-height:1.5}.footer a:hover{text-decoration:underline;text-underline-offset:4px;color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #3a5069;padding-top:24px;font-size:12px;color:#b7cad9}.footer-bottom a{font-size:12px}.footer-bottom p{color:#b7cad9}
@media(max-width:1120px){.site-header{gap:24px;padding-inline:28px}.main-nav{gap:20px}.header-cta{display:none}.home-hero-grid,.service-hero-grid{gap:40px}.home-hero h1{font-size:76px}.wrap{width:calc(100% - 64px)}.section-intro,.house-entry,.service-layout,.supply-grid,.request-band,.contact-grid,.faq-layout{gap:44px}.footer{padding-inline:32px}}
@media(max-width:860px){.site-header{height:72px}.site-main{padding-top:72px}:root{--header-h:72px}.menu-button{display:flex;margin-left:auto}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:20px 28px 24px;background:#fff;border-bottom:1px solid var(--gray-200);flex-direction:column;align-items:stretch;gap:2px}.main-nav.is-open{display:flex}.main-nav a{min-height:46px}.main-nav a[aria-current=page]::after{right:auto;width:28px;bottom:4px}.home-hero-grid,.service-hero-grid{grid-template-columns:1fr 0.8fr;gap:30px}.home-hero h1{font-size:60px}.service-hero h1{font-size:52px}.home-hero .lead,.service-hero .lead{font-size:17px}.work-sequence{grid-template-columns:1fr 1fr;gap:32px}.section-intro{grid-template-columns:1fr;gap:20px}.section-intro p{max-width:680px}.service-row{grid-template-columns:0.8fr 1fr 24px;gap:26px}.service-row h3{font-size:28px}.service-layout{grid-template-columns:1fr;gap:32px}.service-layout>div>p{max-width:680px}.service-hero .engineering-image img{max-height:320px}.contact-grid{grid-template-columns:0.8fr 1.2fr;gap:30px}.quote-form{padding:24px}.form-row{grid-template-columns:1fr}.footer-grid{gap:40px}}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}.site-header{padding-inline:20px}.brand img{width:128px}h1{font-size:48px}h2{font-size:38px}.home-hero{padding-block:40px}.home-hero-grid,.service-hero-grid,.house-entry,.supply-grid,.request-band,.contact-grid,.faq-layout{grid-template-columns:1fr;gap:34px}.home-hero h1{font-size:clamp(48px,12vw,66px)}.home-hero .lead{font-size:17px}.home-hero .engineering-image{padding:12px}.home-hero .engineering-image img{max-height:350px;object-fit:contain}.home-hero .hero-note{margin-top:20px}.home-paths{display:none}.engineering-figure figcaption{font-size:12px}.actions{gap:16px;margin-top:26px}.actions .btn{width:100%}.actions .text-link{font-size:14px}.section-intro{gap:18px;margin-bottom:32px}.section-intro p{font-size:17px}.service-row{grid-template-columns:1fr 24px;gap:14px 22px;padding:26px 0}.service-row h3{grid-column:1;font-size:29px}.service-row p{grid-column:1;font-size:15px}.service-row svg{grid-column:2;grid-row:1/3}.house-entry p{font-size:17px}.house-entry .house-name{margin-bottom:16px}.work-sequence{grid-template-columns:1fr;gap:26px;margin-top:32px}.work-sequence li{display:grid;grid-template-columns:32px 1fr;gap:8px 12px;padding-top:22px}.step-no{grid-row:span 2;margin:0}.work-sequence h3{margin:0}.work-sequence p{grid-column:2}.service-hero{padding-block:30px 44px}.breadcrumbs{margin-bottom:30px}.service-hero h1{font-size:46px}.service-hero .engineering-image{padding:12px}.service-hero .engineering-image img{max-height:320px}.detail-row{grid-template-columns:1fr;gap:10px;padding:22px 0}.detail-row dt{font-size:17px}.detail-row dd{font-size:15px}.service-next{align-items:flex-start;flex-direction:column;padding-block:28px}.service-next .text-link{font-size:15px}.contact-hero{padding-top:30px}.contact-hero h1{font-size:46px}.contact-hero .lead{font-size:17px}.contact-grid{padding-top:34px}.contact-brief{order:2}.quote-form{order:1;padding:24px 20px}.contact-brief h2{font-size:30px}.footer{padding:40px 20px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px 24px;padding-bottom:32px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:360px}.footer-bottom{flex-direction:column;gap:14px}.btn{padding:12px 18px}.form-actions{flex-direction:column}.request-band .actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.form-fields{display:grid;gap:22px;min-width:0;border:0;padding:0;margin:0}.field-optional{display:inline;font-size:13px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Editorial navigation extends the existing shared header. */
@media(min-width:861px){.main-nav{gap:20px}}@media(max-width:1200px){.site-header .header-cta{display:none}}
