:root{--ink:#0d2235;--orange:#ff713b;--muted:#536270;--paper:#f4f6f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:23px 5%;gap:24px;background:white} .brand b{font-size:32px;letter-spacing:-1px}.brand b span{font-size:18px;font-weight:400;color:var(--muted);letter-spacing:0}.brand small{display:block;font-size:10px;letter-spacing:1.8px}nav{display:flex;gap:30px;font-size:14px}nav a:hover,footer a:hover{color:#d34311}.nav-contact{border:1px solid #ccd2d8;padding:10px 18px;font-size:14px}.hero{background:var(--ink);color:white;padding:30px 5% 20px}.hero-top,.hero-footer{display:flex;justify-content:space-between;color:#a8b6c4;font-size:12px;letter-spacing:1.6px}.hero-top{border-bottom:1px solid #304456;padding-bottom:22px}.hero-body{display:grid;grid-template-columns:1.5fr 1fr;gap:7%;padding:60px 0}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:bold;margin:0 0 24px}.hero .eyebrow{color:var(--orange)}h1{font-size:clamp(48px,5.5vw,82px);letter-spacing:-3px;line-height:1.1;margin:0 0 28px}h1 em{font-style:normal;color:var(--orange)}.lead{max-width:590px;font-size:18px;color:#c0ccd7;line-height:1.8}.button{display:inline-block;background:var(--orange);color:var(--ink);padding:14px 24px;font-size:14px;font-weight:bold;margin-top:20px}.button:hover{background:#ff8d62}.hero-panel{border:1px solid #415566;padding:32px;background:#142e43;align-self:center}.panel-label{font-size:12px;letter-spacing:1.8px;color:#c5d0d9}.big-number{font-size:80px;letter-spacing:-5px;line-height:1.3;margin-top:20px}.big-number span{color:var(--orange);font-size:54px}.hero-panel>p{margin:0 0 26px;color:#becbd5}.panel-line{height:1px;background:#405466}.panel-stat{display:flex;align-items:center;justify-content:space-between;margin-top:20px;gap:15px}.panel-stat strong{font-size:29px;font-weight:400}.panel-stat small{font-size:16px}.panel-stat>span{font-size:14px;color:#becbd5}.panel-bottom{border-top:1px solid #405466;margin-top:30px;padding-top:20px;font-size:10px;letter-spacing:.8px}.panel-bottom span{color:var(--orange);padding:0 6px}.hero-footer{border-top:1px solid #304456;padding-top:20px}.section{padding:90px 7%;scroll-margin-top:20px}h2{font-size:clamp(34px,3.2vw,48px);line-height:1.2;letter-spacing:-1.5px;margin:0}h3{font-size:23px;line-height:1.3;margin:16px 0}p{margin:0 0 20px}.intro{display:grid;grid-template-columns:1fr 1.6fr;gap:8%}.large-copy{font-size:23px;line-height:1.6}.intro p:not(.eyebrow):not(.large-copy){color:var(--muted)}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px;border-top:1px solid #ccd4db;padding-top:25px}.timeline b{font-size:18px}.timeline p{font-size:14px;margin-top:12px}.services{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:9%;margin-bottom:40px}.section-heading>p{max-width:390px;color:var(--muted);margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-grid article{background:white;border-top:3px solid var(--ink);padding:32px;display:flex;flex-direction:column}.index{font-size:14px;color:#a5411c}.service-grid p{color:var(--muted);flex:1}.tag,.service-grid a{font-size:12px;letter-spacing:.8px;font-weight:bold;margin-top:20px}.service-grid a{text-decoration:underline;text-underline-offset:4px}.electric{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;background:#102a40;color:white}.electric .eyebrow{color:var(--orange)}.electric h2{margin-bottom:25px}.electric p{color:#bccbd6}.electric-lead{font-size:21px}.partner-roles article{padding:26px 0;border-top:1px solid #536677}.partner-roles article:last-child{border-bottom:1px solid #536677}.partner-roles span{font-size:12px;color:var(--orange);letter-spacing:1.5px}.partner-roles h3{margin:12px 0}.partner-roles p{margin:0}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.partner-grid article{border-top:1px solid #cbd3dc;padding-top:16px}.partner-grid p{color:var(--muted)}details{border:1px solid #d6dde3;padding:20px 24px;margin-top:25px}summary{cursor:pointer;font-weight:bold}details p{margin:20px 0 0;color:var(--muted)}.location{background:#e9eef2;display:grid;grid-template-columns:1.3fr 1fr;gap:7%;align-items:center}.location h2{margin-bottom:25px}.location-note{border-left:3px solid var(--orange);padding:12px 30px}.location-note b{font-size:17px;letter-spacing:1px}.location-note span{color:var(--muted)}footer{display:flex;gap:30px;align-items:center;justify-content:space-between;padding:30px 5%;font-size:14px}footer p{margin:0;color:var(--muted)}@media(min-width:1600px){header,.hero{padding-left:max(5%,calc((100vw - 1450px)/2));padding-right:max(5%,calc((100vw - 1450px)/2))}.section{padding-left:max(7%,calc((100vw - 1380px)/2));padding-right:max(7%,calc((100vw - 1380px)/2))}}@media(max-width:850px){header{flex-wrap:wrap;padding:18px 6%}nav{order:3;width:100%;justify-content:space-between;gap:12px}.hero-body{grid-template-columns:1fr;gap:35px;padding:38px 0}.hero-top,.hero-footer{font-size:10px;letter-spacing:.5px;gap:15px}.hero-panel{width:100%}.hero{padding:24px 6%}.section{padding:55px 6%}.intro,.electric,.location{grid-template-columns:1fr;gap:32px}.section-heading{display:block}.section-heading>p{margin-top:24px}.service-grid,.partner-grid{grid-template-columns:1fr}.timeline{gap:12px}.timeline b{font-size:15px}h1{letter-spacing:-2px}.service-grid article{padding:26px}.panel-bottom{font-size:11px}footer{align-items:start;flex-wrap:wrap}.location-note{margin-top:10px}.nav-contact{font-size:12px;padding:8px 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.workshop-banner{margin:0;position:relative;background:#0d2235}.workshop-banner img{display:block;width:100%;height:480px;object-fit:cover;object-position:center 55%}.workshop-banner figcaption{position:absolute;left:5%;bottom:22px;padding:10px 18px;color:white;background:#0d2235e8;font-size:14px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.photo-card{border:0;padding:0;background:#f4f6f8;color:var(--ink);text-align:left;font:inherit;cursor:pointer;overflow:hidden}.photo-card img{display:block;width:100%;height:240px;object-fit:cover;transition:transform .25s}.photo-card:hover img{transform:scale(1.025)}.photo-card span{display:block;padding:16px 18px;font-size:15px}.gallery{background:#f8fafb}dialog{width:min(1100px,94vw);max-height:94vh;border:0;padding:20px;background:#102a40;color:white}dialog::backdrop{background:#071522df}dialog img{display:block;max-height:75vh;width:100%;object-fit:contain}#close-photo{display:block;margin:0 0 15px auto;padding:10px 20px;font:inherit;background:white;color:var(--ink);border:0;cursor:pointer}#photo-caption{margin:15px 0 0}body:has(dialog[open]){overflow:hidden}@media(max-width:850px){.photo-grid{grid-template-columns:repeat(2,1fr);gap:16px}.photo-card img{height:190px}.workshop-banner img{height:340px}nav{flex-wrap:wrap}}@media(max-width:500px){.photo-grid{grid-template-columns:1fr}.photo-card img{height:250px}.workshop-banner img{height:280px}}@media(prefers-reduced-motion:reduce){.photo-card img{transition:none}}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-bottom:1px solid #d6dde3}.contact-links{display:grid;gap:18px}.contact-links a{display:block;border-bottom:1px solid #d6dde3;padding:0 0 18px;overflow-wrap:anywhere}.contact-links span{display:block;color:var(--muted);font-size:14px}.contact-links strong{font-size:clamp(23px,2.5vw,32px);font-weight:500}.contact-links a:hover strong{color:#d34311}@media(max-width:850px){.contact{grid-template-columns:1fr;gap:30px}}

.history{background:#fff}.history-grid{grid-template-columns:repeat(6,1fr)}.history-grid .photo-card{grid-column:span 2}.history-grid .photo-card:nth-child(-n+2){grid-column:span 3}.history-grid .photo-card img{height:auto;aspect-ratio:3/2;object-fit:cover}@media(max-width:850px){.history-grid{grid-template-columns:repeat(2,1fr)}.history-grid .photo-card,.history-grid .photo-card:nth-child(-n+2){grid-column:span 1}.history-grid .photo-card:last-child{grid-column:1/-1}}@media(max-width:500px){.history-grid{grid-template-columns:1fr}.history-grid .photo-card:last-child{grid-column:auto}}

.history-grid .photo-card{grid-column:span 2}.history-grid .photo-card:nth-child(-n+2){grid-column:span 2}.history-grid .kts-photo img{object-position:center 70%}@media(max-width:850px){.history-grid .photo-card,.history-grid .photo-card:nth-child(-n+2),.history-grid .photo-card:last-child{grid-column:span 1}}

.brand-logos{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand-logos img{display:block;object-fit:contain;height:auto}.brand-logos .atg-logo{width:76px}.brand-logos .ttci-logo{width:176px}.logo-divider{width:1px;height:56px;background:#d6dde3}header{padding-top:14px;padding-bottom:14px}header nav{gap:20px;flex-wrap:wrap}footer .brand-logos .atg-logo{width:58px}footer .brand-logos .ttci-logo{width:140px}@media(max-width:1100px){header{flex-wrap:wrap}header nav{order:3;width:100%;justify-content:space-between}}@media(max-width:500px){.brand-logos{gap:8px}.brand-logos .atg-logo{width:55px}.brand-logos .ttci-logo{width:128px}.logo-divider{height:40px}.nav-contact{font-size:12px;padding:8px}.brand-logos{max-width:100%}}
