:root{--bg:#050b10;--panel:#0a1219;--ink:#0b1117;--white:#f7f9fb;--muted:#aeb8c2;--blue:#0798ff;--line:#1d2a34;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--white);background:var(--bg)}a{color:inherit;text-decoration:none}header{height:78px;display:flex;align-items:center;gap:34px;padding:0 max(24px,calc((100vw - var(--max))/2));position:sticky;top:0;z-index:20;background:rgba(5,11,16,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:2px;white-space:nowrap}.brand>span:last-child>span{color:var(--blue)}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#d3dae0}.mark{width:40px;height:40px;border:2px solid var(--blue);display:grid;place-items:center;color:var(--blue);font-size:12px}nav{margin-left:auto;display:flex;gap:28px;font-size:13px;text-transform:uppercase;letter-spacing:1px}nav a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:3px;background:var(--blue);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.btn.ghost{background:transparent;border:1px solid #8e9aa4}.hero{min-height:650px;max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch}.hero-copy{padding:105px 32px 70px 0;align-self:center}.eyebrow{font-size:12px;letter-spacing:2.2px;text-transform:uppercase;color:#aeb8c2}.hero h1{font-size:68px;line-height:.95;margin:22px 0 28px;letter-spacing:-3px;text-transform:uppercase}.hero h1 em{font-style:normal;color:var(--blue)}.lead{font-size:19px;line-height:1.55;max-width:610px;color:#d5dce2}.actions{display:flex;gap:14px;margin-top:32px}.location{margin-top:36px;font-size:12px;text-transform:uppercase;letter-spacing:1.4px;color:#c5ced5}.hero-art{position:relative;overflow:hidden;background:radial-gradient(circle at 60% 45%,#0d4770 0,transparent 38%),linear-gradient(145deg,#08131d,#02070b);border-left:1px solid var(--line)}.grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,153,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(0,153,255,.12) 1px,transparent 1px);background-size:38px 38px;transform:perspective(600px) rotateY(-8deg) scale(1.2)}.wire{position:absolute;left:14%;bottom:17%;font-size:54px;line-height:1.05;font-weight:900;color:transparent;-webkit-text-stroke:1px #0da3ff;letter-spacing:2px}.light,.dark,.about,.contact{padding:82px max(24px,calc((100vw - var(--max))/2))}.light{background:#f4f6f8;color:var(--ink)}.light .eyebrow{color:#52606c}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:34px}.section-head h2,.about h2,.contact h2{font-size:44px;line-height:1.02;margin:8px 0;text-transform:uppercase;letter-spacing:-1.5px}.section-head>p{max-width:430px;line-height:1.55}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cards article{min-width:0}.img,.project-img{height:205px;background:linear-gradient(145deg,#dce3e8,#aebbc5);position:relative;overflow:hidden;display:grid;place-items:center}.img img,.project-img img{position:absolute;width:100%;height:100%;object-fit:cover}.img span,.project-img span{font-size:11px;letter-spacing:1.4px;z-index:0}.cards h3{font-size:20px;margin:18px 0 10px}.cards article>p{font-size:14px;line-height:1.55;color:#44515c}.dark{background:#050b10}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-img{height:260px;background:linear-gradient(145deg,#111c25,#223340)}.project b{display:block;font-size:18px;margin-top:14px}.project small{color:#98a8b5}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about p{font-size:17px;line-height:1.7}.note{color:#65717a;font-size:13px!important}.contact{background:linear-gradient(120deg,#06111a,#0b2638);text-align:left}.contact>p{max-width:680px;line-height:1.6}footer{max-width:var(--max);margin:auto;padding:34px 0;display:flex;align-items:center;justify-content:space-between;color:#98a8b5;font-size:12px}.brand+.btn{margin-left:0}@media(max-width:900px){header{padding:0 18px}header nav{display:none}header>.btn{margin-left:auto}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:80px 24px}.hero h1{font-size:50px}.hero-art{min-height:330px;border-left:0;border-top:1px solid var(--line)}.cards{grid-template-columns:1fr 1fr}.projects{grid-template-columns:1fr}.about{grid-template-columns:1fr;gap:20px}.section-head{display:block}footer{padding:28px 24px;gap:18px;flex-wrap:wrap}}@media(max-width:560px){.brand small{display:none}header>.btn{padding:11px 12px;font-size:10px}.hero h1{font-size:40px}.cards{grid-template-columns:1fr}.section-head h2,.about h2,.contact h2{font-size:34px}.actions{flex-direction:column;align-items:stretch}.wire{font-size:40px}}


.brand-logo{width:52px;height:52px;object-fit:cover;object-position:center;border-radius:6px;display:block;flex:0 0 auto}
.footer-logo{width:38px;height:38px}
@media(max-width:700px){.brand-logo{width:44px;height:44px}.footer-logo{width:34px;height:34px}}


.hero{max-width:none;width:100%;grid-template-columns:minmax(0,1fr) minmax(520px,1fr);min-height:620px;border-bottom:1px solid var(--line)}
.hero-copy{padding-left:max(42px,calc((100vw - var(--max))/2));padding-right:58px;position:relative;z-index:2;background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 88%,rgba(5,11,16,.92) 100%)}
.hero-art{position:relative;overflow:hidden;background:#061018;border-left:1px solid var(--line)}
.hero-building{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;display:block;filter:saturate(.76) brightness(.72) contrast(1.02)}
.hero-art::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(5,11,16,.9) 0%,rgba(5,11,16,.50) 15%,rgba(5,11,16,.10) 42%,rgba(5,11,16,.16) 100%);pointer-events:none}
.hero-art::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(5,11,16,.16),transparent 35%);pointer-events:none}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{padding-left:24px;padding-right:24px}.hero-art{min-height:390px}.hero-building{object-position:72% center}}


.hero-art{background:#03101a}
.hero-building{object-fit:cover;object-position:58% center;filter:saturate(.82) brightness(.78) contrast(1.03)}
.hero-art::before{background:linear-gradient(90deg,rgba(5,11,16,.82) 0%,rgba(5,11,16,.38) 13%,rgba(5,11,16,.06) 38%,rgba(5,11,16,.06) 100%)}
.hero-art::after{background:linear-gradient(0deg,rgba(5,11,16,.10),transparent 30%)}
@media(max-width:900px){.hero-building{object-position:58% center}}


.hero-building{object-position:center center;filter:saturate(.82) brightness(.72) contrast(1.04)}
.hero-art::before{background:linear-gradient(90deg,rgba(5,11,16,.78) 0%,rgba(5,11,16,.34) 15%,rgba(5,11,16,.06) 42%,rgba(5,11,16,.05) 100%)}
@media(max-width:900px){.hero-building{object-position:center center}}


.project-link{display:block;cursor:pointer}.project-link .project-img img{transition:transform .4s ease}.project-link:hover .project-img img{transform:scale(1.045)}.project-link:hover .view-project{color:#6cc2ff}.project-img .project-tag{position:absolute;z-index:2;top:16px;left:16px;background:rgba(4,12,19,.83);color:#fff;padding:9px 12px;font-weight:800;letter-spacing:1.4px;font-size:10px}.project p{font-size:13px;color:#b3c0c9;line-height:1.6;margin:12px 0}.project-link b{display:flex;justify-content:space-between}.view-project{font-size:11px;font-weight:800;letter-spacing:1px;color:var(--blue)}.project-upcoming{opacity:.75}

.case-hero{display:grid;grid-template-columns:48% 52%;min-height:590px;border-bottom:1px solid var(--line)}.case-intro{padding:76px 45px 72px max(24px,calc((100vw - var(--max))/2));align-self:center}.back-link{display:inline-block;font-size:11px;font-weight:800;letter-spacing:1.4px;color:#9cb2c2;margin-bottom:65px}.back-link:hover{color:var(--blue)}.case-intro h1{font-size:clamp(44px,5.3vw,84px);line-height:.99;letter-spacing:-3px;margin:20px 0 24px}.case-intro h1 em,.case-cta h2 em{color:var(--blue);font-style:normal}.case-lead{font-size:18px;line-height:1.65;color:#c9d5dd;max-width:560px}.case-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.case-tags span{border:1px solid #345064;color:#b4cad8;padding:9px 10px;font-size:10px;letter-spacing:1px}.case-hero-image{min-height:540px;overflow:hidden}.case-hero-image img{width:100%;height:100%;object-fit:cover;display:block}.case-overview{padding:100px max(24px,calc((100vw - var(--max))/2));background:#f4f6f8;color:#111b23;display:grid;grid-template-columns:1fr 1fr;gap:80px}.case-overview h2,.case-gallery h2,.process-section h2,.case-cta h2{font-size:clamp(34px,4vw,58px);line-height:1.05;letter-spacing:-1.5px;text-transform:uppercase;margin:15px 0 28px}.case-overview .eyebrow,.case-gallery .eyebrow{color:#50616e}.case-overview p:not(.eyebrow){font-size:17px;line-height:1.8;color:#41515d;margin-top:0}.case-gallery{background:#f4f6f8;color:#111b23;padding:20px max(24px,calc((100vw - var(--max))/2)) 110px}.case-gallery>h2{margin-bottom:45px}.feature{display:grid;grid-template-columns:1.2fr 1fr;background:white;margin:0 0 22px;min-height:385px}.feature.reverse{grid-template-columns:1fr 1.2fr}.feature.reverse .feature-photo{order:2}.feature-photo{min-height:385px;overflow:hidden}.feature-photo img{width:100%;height:100%;object-fit:cover;display:block}.feature-copy{padding:55px 52px;display:flex;flex-direction:column;justify-content:center}.feature-num{font-size:11px;color:#168de0;letter-spacing:1.5px;font-weight:800}.feature h3{font-size:clamp(27px,3vw,42px);line-height:1.07;text-transform:uppercase;letter-spacing:-1px;margin:22px 0}.feature p{color:#4a5b67;line-height:1.8;font-size:16px}.process-section{padding:95px max(24px,calc((100vw - var(--max))/2));background:#0a151e}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:35px}.process-grid>div{border-top:1px solid #315067;padding-top:22px}.process-grid strong{color:var(--blue);font-size:25px}.process-grid h3{font-size:19px;text-transform:uppercase}.process-grid p{font-size:15px;line-height:1.7;color:#a9bdc9}.case-cta{padding:105px max(24px,calc((100vw - var(--max))/2));background:linear-gradient(115deg,#071722,#0c3049)}.case-cta p:not(.eyebrow){font-size:17px;color:#bdcdd8;max-width:580px;line-height:1.7}
@media(max-width:900px){.case-hero{grid-template-columns:1fr}.case-intro{padding:48px 24px}.back-link{margin-bottom:40px}.case-hero-image{min-height:350px;max-height:480px}.case-overview{grid-template-columns:1fr;gap:15px;padding:65px 24px}.case-gallery{padding:20px 24px 65px}.feature,.feature.reverse{grid-template-columns:1fr}.feature.reverse .feature-photo{order:0}.feature-photo{min-height:270px;max-height:410px}.feature-copy{padding:35px 28px}.process-section,.case-cta{padding:65px 24px}.process-grid{grid-template-columns:1fr}}


.project02-visual{padding-top:80px}.visual-intro{color:#4a5b67;font-size:16px;line-height:1.7;max-width:760px;margin:-8px 0 32px}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.comparison-grid figure{margin:0;background:#fff;overflow:hidden}.comparison-grid img{width:100%;height:310px;object-fit:contain;background:#eef1f3;display:block}.comparison-grid figcaption{padding:16px 20px;color:#455867;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}@media(max-width:700px){.comparison-grid{grid-template-columns:1fr}.comparison-grid img{height:auto;max-height:380px}}


.institute-hero .case-intro h1{font-size:clamp(36px,3.55vw,58px);letter-spacing:-1.8px;overflow-wrap:normal}
@media(max-width:900px){.institute-hero .case-intro h1{font-size:clamp(36px,7.5vw,58px)}}


.residential-hero .case-intro h1{font-size:clamp(36px,4vw,66px);letter-spacing:-1.8px}.residential-hero .case-hero-image img{object-position:55% center}.res-story{padding:90px max(24px,calc((100vw - var(--max))/2));background:#091923}.res-story h2,.res-plans h2{font-size:clamp(34px,4.5vw,60px);line-height:1.05;letter-spacing:-1.8px;text-transform:uppercase}.res-story h2 em,.res-plans h2 em{font-style:normal;color:var(--blue)}.res-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:48px}.res-steps>div{border-top:1px solid #2c5169;padding-top:24px}.res-steps strong{font-size:30px;color:var(--blue)}.res-steps h3{text-transform:uppercase;font-size:21px}.res-steps p{color:#b6c9d6;line-height:1.75}.res-plans{background:#e8eef2;color:#0c1b26;padding:95px max(24px,calc((100vw - var(--max))/2))}.res-plans-head{max-width:780px}.res-plans-head p:last-child{font-size:17px;color:#526676;line-height:1.7}.res-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:45px}.res-plan-grid figure,.res-image-grid figure{margin:0;background:white;overflow:hidden}.res-plan-grid img{width:100%;display:block;transition:transform .3s}.res-plan-grid a:hover img{transform:scale(1.02)}.res-plan-grid figcaption{display:flex;justify-content:space-between;gap:15px;padding:18px 22px;font-size:13px;font-weight:800;letter-spacing:.5px}.res-plan-grid figcaption span{color:#007cd1}.res-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.res-image-grid img{display:block;width:100%;height:340px;object-fit:contain;background:#e5eaee}.res-image-grid figcaption{padding:17px 20px;color:#3d5362;font-size:13px}.residential-gallery .feature-photo img{object-fit:contain;background:#e8ecef}@media(max-width:900px){.res-story,.res-plans{padding:65px 24px}.res-steps{grid-template-columns:1fr}.res-plan-grid,.res-image-grid{grid-template-columns:1fr}.res-image-grid img{height:auto}.residential-hero .case-intro h1{font-size:clamp(38px,7vw,60px)}}

.delivery-note{padding:52px max(7vw,24px);background:#eaf2f8;border-top:1px solid #d7e3ed;border-bottom:1px solid #d7e3ed;display:grid;grid-template-columns:minmax(210px,1fr) 2fr;column-gap:36px;align-items:start}.delivery-note .eyebrow{grid-column:1/-1;color:#177dbd}.delivery-note h2{font-size:clamp(26px,3vw,40px);line-height:1.13;margin:8px 0 12px;color:#0b1826}.delivery-note p:last-child{font-size:16px;line-height:1.75;color:#304657;max-width:800px;margin:8px 0}@media(max-width:700px){.delivery-note{grid-template-columns:1fr;padding:36px 22px}}
