:root{color-scheme:light;--ink:#17202a;--muted:#5b6778;--line:#d8dee7;--surface:#fff;--surface-2:#f5f7fa;--brand:#1f5f8b;--brand-strong:#16476b;--energy:#2f7d54;--supply:#a9662a;--gold:#c8a349;--shadow:0 18px 42px #17202a1f;--radius:8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--surface);color:var(--ink);scroll-behavior:smooth}body{min-width:320px;margin:0;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}.site-header{z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(14px);background:#fffffff0;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:24px;padding:26px clamp(20px,4.5vw,64px);display:grid;position:sticky;top:0}.brand{min-width:0;color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;width:auto;max-width:min(190px,42vw);height:38px}.brand-mark{border-radius:var(--radius);color:#fff;background:var(--brand);flex:0 0 38px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.main-nav,.site-footer nav{flex-wrap:wrap;gap:6px;display:flex}.nav-link,.language-switch,.site-footer a{border-radius:var(--radius);color:var(--muted);font-size:.93rem;font-weight:650;line-height:1;text-decoration:none}.nav-link{padding:14px 15px}.nav-link.active,.nav-link:hover,.language-switch:hover,.site-footer a:hover{color:var(--brand-strong);background:#eaf2f7}.language-switch{border:1px solid var(--line);white-space:nowrap;padding:14px 16px}.hero{background-image:linear-gradient(90deg, #0b1927bd, #0b19275c), var(--hero-image);color:#fff;background-position:50%;background-size:cover;min-height:min(720px,100vh - 72px)}.hero-overlay{min-height:inherit;grid-template-columns:minmax(0,1fr);align-content:end;gap:42px;padding:clamp(96px,16vh,180px) clamp(20px,6vw,84px) clamp(42px,8vw,76px);display:grid}.hero-copy{max-width:880px}.eyebrow{color:var(--gold);letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:.82rem;font-weight:800}.hero h1,.page-hero h1{letter-spacing:0;max-width:980px;margin:0;font-size:clamp(2.35rem,5.5vw,5rem);line-height:1.03}.hero-intro,.page-hero p,.section-heading h2,.closing-band p{max-width:760px;color:inherit;font-size:clamp(1.02rem,1.7vw,1.24rem)}.hero-intro{color:#ffffffe6}.cta-row{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.button{border-radius:var(--radius);justify-content:center;align-items:center;min-height:44px;padding:12px 18px;font-weight:800;line-height:1.15;text-decoration:none;display:inline-flex}.button.primary{color:#fff;background:var(--energy)}.button.secondary{color:#fff;border:1px solid #ffffffa3}.hero-stats{border-radius:var(--radius);background:#ffffff3d;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:880px;margin:0;display:grid;overflow:hidden}.hero-stats div{background:#081420ad;min-width:0;padding:18px}.hero-stats dt{font-size:clamp(1.25rem,2.4vw,1.8rem);font-weight:850}.hero-stats dd{color:#fffc;margin:4px 0 0}.section{padding:clamp(56px,8vw,96px) clamp(20px,6vw,84px)}.section-heading{max-width:980px;margin-bottom:32px}.section h2,.section h3,.page-hero h1{color:var(--ink)}.section h2{margin:0 0 14px;font-size:clamp(1.75rem,3vw,3rem);line-height:1.1}.section h3,.service-card h2,.landmark-card h3,.job-card h2{margin:0 0 10px;font-size:1.2rem;line-height:1.2}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.service-grid.detailed{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.info-card,.contact-card,.job-card,.apply-box,.landmark-card,.project-group{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 12px 28px #17202a0f}.service-card{flex-direction:column;min-height:260px;padding:22px;display:flex}.home-service-card{grid-template-rows:auto 1fr;min-height:0;padding:0;display:grid;overflow:hidden}.home-service-card img{aspect-ratio:16/10;background:var(--line);object-fit:cover;border-radius:0;width:100%}.home-service-card>div{flex-direction:column;padding:20px;display:flex}.service-card p,.info-card p,.landmark-card p,.job-card p,.prose p,.project-group p,.project-note{color:var(--muted)}.service-card ul,.check-list{gap:9px;margin:18px 0 0;padding:0;list-style:none;display:grid}.service-card li,.check-list li{color:var(--ink);padding-left:18px;position:relative}.service-card li:before,.check-list li:before{background:var(--energy);content:"";border-radius:999px;width:7px;height:7px;position:absolute;top:.6em;left:0}.split{background:var(--surface-2);grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(28px,5vw,64px);display:grid}.split.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.split img,.page-hero img{border-radius:var(--radius);object-fit:cover;width:100%}.split>img{aspect-ratio:4/3}.timeline{gap:14px;margin-top:26px;display:grid}.timeline article{border-top:1px solid var(--line);grid-template-columns:54px minmax(0,1fr);align-items:start;gap:16px;padding:18px 0;display:grid}.timeline span{color:var(--supply);font-weight:900}.timeline h3,.timeline p{margin:0}.closing-band{color:#fff;background:#17384b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.closing-band h2,.closing-band p{color:#fff}.project-summary{grid-template-columns:minmax(0,1fr) minmax(320px,.58fr);align-items:end;gap:clamp(24px,5vw,56px);padding-top:0;display:grid}.landmark-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.landmark-card{overflow:hidden}.landmark-card img{aspect-ratio:16/10;background:var(--line);object-fit:cover;border-radius:0;width:100%}.landmark-card div{gap:10px;padding:20px;display:grid}.landmark-card h3,.landmark-card p{margin:0}.project-note{max-width:820px;margin:0}.project-stats{grid-template-columns:1fr;gap:10px;margin:0;display:grid}.project-stats div{border-left:4px solid var(--energy);border-radius:0 var(--radius) var(--radius) 0;background:#eef6f0;padding:18px}.project-stats dt{color:var(--ink);font-size:1.24rem;font-weight:850}.project-stats dd{color:var(--muted);margin:4px 0 0}.project-partners{border:1px solid var(--line);border-radius:var(--radius);background:#f8f5ee;grid-column:1/-1;padding:22px 24px}.project-partners h2{color:var(--ink);margin:0 0 8px;font-size:1.18rem}.project-partners p{max-width:980px;color:var(--muted);margin:0}.project-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:0;display:grid}.project-group{align-content:start;gap:18px;padding:24px;display:grid}.project-group h2,.project-group p{margin:0}.project-group ul{flex-wrap:wrap;gap:9px;margin:0;padding:0;list-style:none;display:flex}.project-group li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--ink);padding:7px 10px;font-size:.94rem;line-height:1.25}.page-hero{background:var(--surface-2);grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(72px,10vw,118px) clamp(20px,6vw,84px) clamp(42px,6vw,72px);display:grid}.page-hero img{aspect-ratio:16/10;box-shadow:var(--shadow)}.page-hero-background{color:#fff;background:#102434;grid-template-columns:minmax(0,1fr);align-items:end;min-height:clamp(500px,62vh,700px);padding-top:clamp(110px,15vw,180px);padding-bottom:clamp(58px,8vw,92px);position:relative;overflow:hidden}.page-hero-background:before{z-index:1;content:"";background:linear-gradient(90deg,#102434e0,#10243470 48%,#1024342e),linear-gradient(#10243414 48%,#1024349e);position:absolute;inset:0}.page-hero-background>div{z-index:2;max-width:880px;position:relative}.page-hero-background img{object-fit:cover;object-position:center;width:100%;max-width:none;height:100%;box-shadow:none;position:absolute;inset:0}.page-hero-background h1{color:#fff}.page-hero-background p:not(.eyebrow){color:#ffffffe6}.copyright-hero{background:var(--surface-2)}.copyright-hero h1{max-width:920px;color:var(--ink);margin:0;font-size:clamp(2.15rem,4vw,4rem);line-height:1.08}.copyright-hero p:not(.eyebrow){max-width:820px;color:var(--muted);font-size:clamp(1.02rem,1.7vw,1.2rem)}.copyright-list{gap:14px;padding-top:40px;display:grid}.copyright-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:24px;padding:22px;display:grid;box-shadow:0 12px 28px #17202a0f}.copyright-card span{color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:.82rem;font-weight:800;display:block}.copyright-card h2{margin:0;font-size:1.16rem;line-height:1.25}.copyright-card dl{gap:10px;margin:0;display:grid}.copyright-card dt{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:800}.copyright-card dd{overflow-wrap:anywhere;margin:2px 0 0}.copyright-card a{color:var(--brand-strong);text-decoration:none}.copyright-card a:hover{text-decoration:underline}.prose-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.46fr);gap:48px;display:grid}.prose{max-width:860px}.fact-list{align-content:start;gap:10px;display:grid}.fact-list div{border-left:4px solid var(--brand);border-radius:0 var(--radius) var(--radius) 0;background:#edf4f8;padding:16px;font-weight:700}.card-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:0;display:grid}.info-card{padding:24px}.job-list,.contact-grid{gap:16px;display:grid}.job-card{grid-template-columns:minmax(0,1fr) minmax(220px,.32fr);gap:24px;padding:24px;display:grid}.job-card dl{gap:12px;margin:0;display:grid}.job-card dt{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800}.job-card dd{margin:0;font-weight:750}.apply-box{color:var(--ink);background:#eef6f0;padding:28px;font-weight:750}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-card{padding:24px}.contact-card span{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:800;display:block}.contact-card a,.contact-card strong{color:var(--brand-strong);overflow-wrap:anywhere;margin-top:8px;font-size:1.08rem;display:block}.contact-layout{grid-template-columns:minmax(260px,.42fr) minmax(0,.58fr);align-items:start;gap:clamp(24px,5vw,56px);display:grid}.contact-layout h2,.contact-layout p{margin:0}.contact-layout>div{gap:14px;padding-top:8px;display:grid}.contact-layout>div p:not(.eyebrow){max-width:520px;color:var(--muted)}.contact-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:20px;padding:28px;display:grid;box-shadow:0 16px 36px #17202a14}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.contact-form label{gap:7px;display:grid}.contact-form label span{color:var(--ink);font-size:.84rem;font-weight:800}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;color:var(--ink);font:inherit;background:#fff;line-height:1.35}.contact-form input,.contact-form select{min-height:48px;padding:10px 12px}.contact-form textarea{resize:vertical;min-height:150px;padding:12px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--brand);outline:3px solid #1f5f8b29}.form-wide,.form-actions{grid-column:1/-1}.form-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.form-note{color:var(--muted);margin:0;font-size:.92rem}.site-footer{border-top:1px solid var(--line);color:#fff;background:#102434;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;padding:34px clamp(20px,6vw,84px);display:grid}.site-footer a{color:#ffffffbd;padding:8px}@media (width<=1080px){.site-header,.page-hero,.copyright-card,.project-summary,.prose-grid,.split,.split.compact,.contact-layout{grid-template-columns:1fr}.site-header{gap:12px}.main-nav{order:3}.service-grid,.service-grid.detailed,.landmark-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid,.card-row,.project-directory{grid-template-columns:1fr}}@media (width<=720px){.site-header{grid-template-columns:1fr auto}.brand-logo{max-width:156px;height:32px}.main-nav{flex-wrap:nowrap;grid-column:1/-1;padding-bottom:2px;overflow-x:auto}.nav-link{white-space:nowrap}.hero-stats,.service-grid,.landmark-grid,.job-card,.form-grid{grid-template-columns:1fr}.hero{min-height:680px}.hero h1,.page-hero h1{font-size:2.35rem}.site-footer{grid-template-columns:1fr}}
