/* Font source: replace this import with local @font-face declarations when ready. */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');
:root{--bg:#0B1726;--facts:#0E1D31;--scene:#08121F;--line:#1F3550;--text:#EEF3F8;--muted:#A3B4C7;--quiet:#8597AB;--blue:#3075C9;--glow:#6FA6E8;--orange:#F7931E;--green:#4FD1A5;--body-font:Inter,Arial,sans-serif;--heading-font:Manrope,Arial,sans-serif;--header-height:84px}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:var(--body-font);scroll-padding-top:0}body{margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--orange)}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:5px}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--heading-font);font-weight:600}h1{font-size:50px;line-height:1.1;letter-spacing:-1px}h2{font-size:36px;line-height:1.3}h3{font-size:20px;line-height:1.4}section{scroll-margin-top:calc(var(--header-height) + 12px)}.container{max-width:1440px;margin-inline:auto;padding-inline:40px}.mobile-copy{display:none!important}.muted{color:var(--quiet)}
.site-header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand strong{font:700 28px var(--heading-font);letter-spacing:-.5px;color:var(--blue)}.brand span{max-width:120px;font-size:11px;line-height:1.35;letter-spacing:.8px;color:var(--muted)}nav{display:flex;gap:28px;font-size:14px}nav a{display:flex;align-items:center;min-height:44px}.header-actions{display:flex;align-items:center;gap:8px}.phone{font-size:15px;font-weight:600;white-space:nowrap}.phone svg,.menu-toggle{display:none}.menu-toggle{align-items:center;justify-content:center;background:none;border:1px solid var(--line);border-radius:4px;color:var(--text);width:44px;height:44px}
.hero-grid{padding-top:56px;padding-bottom:48px;display:grid;grid-template-columns:minmax(320px,400px) minmax(0,1fr);gap:32px 48px;align-items:center}.hero-copy{display:flex;flex-direction:column;gap:24px}.eyebrow{font-size:13px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--orange)}.lead{font-size:17px;line-height:1.55;color:#C9D5E2}.brands{font-size:14px;line-height:1.6;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border:1px solid var(--blue);border-radius:4px;font-size:16px;font-weight:600}.button.primary{background:var(--orange);border-color:var(--orange);color:var(--bg)}.button:hover{filter:brightness(1.08)}.mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:168px;gap:8px;min-width:0}.mosaic figure{position:relative;overflow:hidden;background:#13253D}.photo-main{grid-column:span 2;grid-row:span 2}.mosaic img{width:100%;height:100%;object-fit:cover;display:block}.mosaic figcaption{position:absolute;inset:auto 0 0;padding:8px 12px;background:#0B1726D9;font-size:12px;line-height:1.35}.mosaic .photo-main figcaption{padding:10px 14px;font-size:13px}.mosaic figcaption span{color:var(--muted)}.mosaic figcaption .caption-text{color:var(--text)}.draft-note{display:none;color:var(--orange);font-size:14px;font-weight:600;line-height:1.45}.is-draft .draft-note{display:block}.photo-note{grid-column:1/-1;text-align:right}.facts{background:var(--facts);border-block:1px solid var(--line)}.facts-inner{display:flex;flex-wrap:wrap;gap:16px 48px;padding-block:18px;font-size:14px;color:#C9D5E2}.facts-inner>span>span{color:var(--quiet)}
.repair{height:200vh;background:var(--scene);border-bottom:1px solid var(--line);position:relative}.repair-sticky{position:sticky;top:var(--header-height);height:calc(100svh - var(--header-height));min-height:600px;display:grid;grid-template-rows:auto minmax(200px,1fr) auto}.section-heading{display:flex;gap:40px;align-items:baseline}.repair .section-heading{padding-top:48px;width:100%}.section-number{font-size:13px;font-weight:600;color:var(--orange);flex-shrink:0}.section-heading p{max-width:680px;font-size:16px;line-height:1.55;color:var(--muted);margin-top:12px}.turbine-scene{position:relative;width:100%;max-width:1440px;margin:auto;height:100%;min-height:0;overflow:hidden;touch-action:pan-y}.turbine-scene canvas,.turbine-poster,.model-labels{position:absolute;inset:0;width:100%;height:100%;display:block}.turbine-scene canvas{pointer-events:none;opacity:0}.turbine-poster{object-fit:contain;mix-blend-mode:screen}.turbine-scene.is-ready canvas{opacity:1}.turbine-scene.is-ready .turbine-poster{display:none}.model-labels{pointer-events:none}.model-label{position:absolute;display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:13px;color:#C9D5E2;opacity:0;transform:translate(-50%,-50%);background:#08121Fd9;padding:5px 7px;border-radius:3px}.model-label b{color:var(--glow)}.model-label i{width:22px;height:1px;background:var(--glow)}.model-label.hot b{color:var(--orange)}.model-label.hot i{background:var(--orange)}
.experience,.placeholder{border-bottom:1px solid var(--line)}.experience-inner{padding-block:64px;display:flex;flex-direction:column;gap:40px}.experience-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.projects-link{font-size:15px;font-weight:600;color:var(--orange);white-space:nowrap}.experience-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.card{border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;gap:18px;min-width:0}.equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.equipment-grid b{font-size:15px;font-weight:600}.equipment-grid p{margin-top:4px;font-size:13px;line-height:1.4;color:var(--muted)}.objects ul{list-style:none;margin:0;padding:0}.objects li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap;font-size:15px;line-height:1.4}.objects li:last-child{border:0}.work-kind{font-size:13px;color:var(--orange)}.customers{font-size:13px;line-height:1.4;color:var(--muted)}.history{display:flex;flex-direction:column;gap:16px}.timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px solid var(--blue)}.timeline>div{padding:20px 20px 0 0}.timeline h4{font-size:22px;font-weight:700;color:var(--orange);margin-bottom:8px}.timeline p{font-size:14px;line-height:1.5;color:#C9D5E2}.placeholder .section-heading{padding-block:56px}.footer-inner{padding-block:40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--quiet)}.footer-inner small{flex-basis:100%;font-size:10px}
@media(max-width:1100px){nav{gap:16px;font-size:12px}.header-inner{gap:16px}.brand span{max-width:98px;font-size:10px}.phone{font-size:13px}.hero-grid{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:28px}h1{font-size:40px}.mosaic{grid-auto-rows:140px}.mosaic figcaption{font-size:10px;padding:6px 8px}.section-heading{gap:24px}h2{font-size:32px}.card{padding:22px}}
@media(max-width:900px){:root{--header-height:64px}.container{padding-inline:24px}nav{position:absolute;top:100%;left:0;right:0;display:none;padding:12px 24px 20px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 18px 24px #0003;font-size:15px}nav.is-open{display:flex;flex-direction:column;gap:0}.menu-toggle{display:flex}.phone{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;color:var(--orange)}.phone span{display:none}.phone svg{display:block}.hero-grid{grid-template-columns:1fr;gap:24px;padding-top:36px;padding-bottom:32px}.hero-copy{max-width:680px}.mosaic{grid-auto-rows:160px}.mosaic figcaption{font-size:12px}.photo-note{text-align:left}.experience-cards{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.repair .section-heading{padding-top:28px}.repair-sticky{min-height:600px}.projects-link{font-size:13px}}
@media(max-width:700px){.container{padding-inline:16px}.desktop-copy{display:none!important}.mobile-copy{display:initial!important}.brand{gap:10px}.brand strong{font-size:24px}.brand span{font-size:10px;line-height:1.3;letter-spacing:.6px;max-width:96px}.hero-grid{padding-top:28px;padding-bottom:24px;gap:16px}.hero-copy{gap:16px}h1{font-size:31px;line-height:1.12;letter-spacing:-.5px}.eyebrow{font-size:11px;letter-spacing:1.4px}.lead{font-size:15px;line-height:1.5}.brands{font-size:13px;line-height:1.5}.hero-actions{gap:10px;flex-wrap:nowrap}.button{font-size:15px;padding-inline:16px}.hero-actions .button{flex:1}.mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px;gap:6px;margin-top:4px}.photo-extra{display:none}.mosaic figcaption{padding:6px 10px;font-size:11px}.mosaic .photo-main figcaption{padding:8px 12px;font-size:12px}.draft-note{font-size:13px}.facts{border:0;background:var(--bg)}.facts-inner{margin-inline:16px;padding:14px 0;border-top:1px solid var(--line);flex-direction:column;gap:6px;font-size:13px}.facts-inner>span:first-child{display:none}.repair{border-top:1px solid var(--line)}.repair-sticky{min-height:730px;grid-template-rows:auto minmax(160px,1fr) auto}.repair .section-heading{padding-top:22px;gap:8px;flex-direction:column;align-items:flex-start}h2{font-size:26px;line-height:1.25}.section-number{font-size:12px}.section-heading p{font-size:14px;line-height:1.5;margin-top:8px}.turbine-scene{margin:0 auto}.model-label{font-size:10px;gap:4px;padding:4px}.model-label i{width:10px}.experience-inner{padding-block:36px;gap:20px}.experience-heading .section-heading{flex-direction:column;gap:8px}.projects-link{display:none}.experience-cards{gap:20px}.card{padding:18px;gap:12px}h3{font-size:17px}.equipment-mobile p{font-size:13px;color:var(--muted);margin-bottom:10px}.equipment-mobile b{font-weight:600;color:var(--text)}.equipment-mobile small{font-size:12px;color:var(--quiet)}.objects li{font-size:14px;padding:10px 0}.objects .work-kind,.objects .customers{display:none}.history{gap:14px;border-left:2px solid var(--blue);padding-left:16px}.timeline{display:flex;flex-direction:column;gap:14px;border:0}.timeline>div{padding:0}.timeline h4{font-size:16px;margin-bottom:4px}.timeline p{font-size:13px}.projects-mobile.button{display:flex!important;border-color:var(--orange);color:var(--orange);width:100%}.placeholder .section-heading{padding-block:36px;gap:16px}.footer-inner{padding-block:32px;flex-direction:column;gap:6px}.footer-inner small{margin-top:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}.repair{height:auto}.repair-sticky{position:relative;top:auto;height:auto;min-height:0}.turbine-scene{height:480px}@media(max-width:700px){.turbine-scene{height:260px}}}

/* Shared reduced-motion layout, also used by the accessibility QA fixture. */
.is-reduced .repair{height:auto}.is-reduced .repair-sticky{position:relative;top:auto;height:auto;min-height:0}.is-reduced .turbine-scene{height:480px}.is-reduced *{transition:none!important}@media(max-width:700px){.is-reduced .turbine-scene{height:260px}}

/* Repair: progressive enhancement leaves all work descriptions readable without JS. */
.repair{height:auto;--finish:1}.repair-sticky{display:block;height:auto;min-height:0;position:relative;top:auto;padding-bottom:40px}
.repair.is-enhanced{height:calc(var(--content-height,800px) + 100vh);--finish:0}
.is-enhanced .repair-sticky{position:sticky;top:var(--header-height)}
.repair .turbine-scene{height:440px;transform:translateY(var(--scene-lift,-40px));opacity:var(--scene-opacity,.85)}
.model-label:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:var(--glow)}.model-label.hot:before{background:var(--orange)}
.work-overlay{position:relative;z-index:2;margin-top:-200px;padding-top:120px}.work-overlay:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#08121F00 0%,#08121FB3 45%,#08121F 75%);opacity:var(--finish)}
.work-groups{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:56px}.work-group{--group-color:var(--glow);--reveal:1;--item:1;opacity:var(--reveal);transform:translateY(calc(24px * (1 - var(--reveal))))}.work-group.restoration{--group-color:var(--orange)}.work-group.inspection{--group-color:var(--green)}
.work-group h3{display:flex;align-items:center;gap:14px;font:600 24px/1.4 var(--heading-font);margin-bottom:16px}.work-group h3:before{content:"";width:10px;height:10px;border-radius:50%;flex:none;background:var(--group-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--group-color) 15%,transparent),0 0 14px var(--group-color),0 0 28px color-mix(in srgb,var(--group-color) 53%,transparent)}
.work-group ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.work-group li{opacity:var(--item);transform:translateY(calc(24px * (1 - var(--item))))}.work-group strong{font-size:15px;font-weight:600;line-height:1.4}.work-group p{font-size:13px;line-height:1.45;color:var(--muted);margin-top:2px}
@media(min-width:768px) and (max-width:1199px){.work-groups{gap:24px}.work-group h3{font-size:22px}}
@media(max-width:767px){.repair.is-enhanced{height:calc(var(--content-height,1100px) + 100vh)}.repair .turbine-scene{height:300px}.work-overlay{margin-top:-110px;padding-top:60px}.work-groups{display:flex;flex-direction:column;gap:0}.work-group{padding:18px 0;border-top:1px solid #1C3350}.work-group h3{font-size:20px;gap:10px;margin-bottom:12px}.work-group h3:before{width:9px;height:9px}.work-group ul{gap:12px}.repair .model-labels{display:none}.repair-sticky{padding-bottom:24px}}
.is-reduced .repair.is-enhanced{height:auto;--finish:1}.is-reduced .repair-sticky{position:relative;top:auto}.is-reduced .work-group,.is-reduced .work-group li{opacity:1;transform:none;visibility:visible!important}
@media(prefers-reduced-motion:reduce){.repair.is-enhanced{height:auto;--finish:1}.repair .repair-sticky{position:relative;top:auto}.repair .work-group,.repair .work-group li{opacity:1;transform:none;visibility:visible!important}}

