:root{--gold:#d7b767;--line:#2b4656;--ink:#0b2330;--paper:#edf1ed}body{background:#081823}.brand img{border-radius:50%;width:58px;height:58px}header{padding-block:16px}nav[aria-label]{font-size:.83rem}nav a[aria-current=page]{color:var(--gold)}h1 em{font-style:normal;color:#d7b767}.hero{background:linear-gradient(110deg,#0c2534,#081823);position:relative}.hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#37536816 1px,transparent 1px),linear-gradient(90deg,#37536816 1px,transparent 1px);background-size:60px 60px;pointer-events:none}.hero>div,.hero figure{position:relative}.hero h1{font-size:clamp(2.4rem,4.4vw,4.6rem)}.hero figure{border:1px solid #536977;padding:8px;background:#0c2634}.hero img{border-radius:0;object-fit:contain;background:#122c3c}.hero figcaption{background:#102836}.eyebrow{color:var(--gold)}.section-top{display:flex;justify-content:space-between;align-items:flex-start;gap:35px;margin-bottom:32px}.section-top h2{margin:0}.section-top>p{max-width:340px;margin:0;font-size:.9rem}.service-card{position:relative;overflow:hidden;border-left:2px solid #56695f}.service-card:hover{transform:translateY(-3px);border-color:var(--gold);background:#173342}.service-card span{color:var(--gold)}.feature{background:#102b3b;gap:50px}.feature h2{font-size:clamp(2rem,3.5vw,3.6rem)}.feature .button{background:var(--gold);border-color:var(--gold)}.system-map{padding:24px;background:#081e2b;border:1px solid #416272;display:flex;flex-direction:column;gap:20px;position:relative}.system-source,.system-monitor{padding:18px;border:1px solid #416272;position:relative;background:#12313f}.system-source:after{content:'↓';position:absolute;bottom:-24px;left:48%;color:var(--gold);font-size:24px}.system-map span{display:block;font-size:.7rem;color:#a4bcc9}.system-map b{display:block;font-size:1.1rem;font-weight:600}.system-loads{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.system-loads span{border:1px solid #546f77;padding:15px;text-align:center;font-size:.9rem;color:#d9e7ec}.system-monitor{border-color:var(--gold)}.system-monitor b{color:var(--gold)}.system-section .system-map{max-width:800px;margin:auto}.menu-toggle{display:none}.portfolio-hero{padding:75px 6% 55px;background:linear-gradient(125deg,#173443,#081823);position:relative;border-bottom:1px solid var(--line)}.portfolio-hero h1{font-size:clamp(2.8rem,5vw,5.5rem)}.portfolio-hero .intro{max-width:790px}.portfolio-stats{display:flex;gap:65px;margin-top:35px;padding-top:25px;border-top:1px solid #4b616e}.portfolio-stats span{font-size:.8rem;color:#b3c6d2}.portfolio-stats b{display:block;font-size:1.8rem;line-height:1.3;color:var(--gold);font-weight:500}.project-section{background:var(--paper);color:var(--ink);max-width:none}.project-section .eyebrow{color:#6f5b30}.project-section p{color:#4e6672}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.filters button{border:1px solid #9aaeb5;background:transparent;padding:12px 18px;border-radius:2px;font:inherit;font-size:.85rem;color:var(--ink);cursor:pointer;min-height:44px}.filters button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.filter-count{font-size:.75rem;margin:0 0 20px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.project-card{background:white;border:1px solid #bccbd1;transition:transform .2s}.project-card:hover{transform:translateY(-4px)}.project-card[hidden]{display:none}.project-card>a{display:flex;flex-direction:column;height:100%}.project-card img{width:100%;height:330px;object-fit:contain;background:#d7dedb;padding:16px;border-bottom:1px solid #bccbd1}.project-copy{padding:28px;flex:1;display:flex;flex-direction:column}.project-copy .eyebrow{font-size:.65rem;margin-bottom:10px;color:#7d6839}.project-copy h3{font-size:1.4rem}.project-copy p{font-size:.9rem;flex:1;color:#4f6570;margin:0 0 22px}.project-link{color:#245448;font-size:.82rem;font-weight:700}.home-studies{grid-template-columns:repeat(3,1fr)}.home-studies .project-card img{height:270px}.home-studies .project-copy h3{font-size:1.2rem}.home-studies .project-card{color:var(--ink)}.evidence-note{background:#153140;max-width:none}.evidence-note p{max-width:850px}.case-hero{padding:60px 6%;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:55px;background:#102a3a;border-bottom:1px solid var(--line)}.case-hero h1{font-size:clamp(2.4rem,4vw,4rem)}.breadcrumbs{display:flex;font-size:.8rem;gap:10px;color:#91a8b9;margin-bottom:35px;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--gold)}.evidence-photo{margin:0;border:1px solid #3c5a6c;background:#102936}.evidence-photo img{width:100%;height:420px;object-fit:contain;padding:12px;background:#09202c}.evidence-photo figcaption{padding:15px 20px;font-size:.75rem;color:#afc9d6}.evidence-photo figcaption h3{font-size:1.05rem}.evidence-photo figcaption p{margin-bottom:0;font-size:.85rem}.case-layout{display:grid;grid-template-columns:280px 1fr;gap:70px;align-items:start}.case-summary{background:#133040;border:1px solid #38586b;padding:25px;position:sticky;top:130px}.case-summary dt{color:#9bb1bf;font-size:.75rem;margin-top:20px}.case-summary dd{margin:4px 0 0;font-size:.95rem}.case-summary .text-link{font-size:.8rem}.case-body .eyebrow{margin-top:45px}.case-body>.eyebrow:first-child{margin-top:0}.case-body h2{font-size:2rem}.case-body p{font-size:1rem}.check-list{padding-inline-start:22px;list-style:square}.check-list li::marker{color:var(--gold)}.inspection{background:var(--paper);color:var(--ink);padding:30px;margin-top:35px;border-top:3px solid var(--gold)}.inspection .eyebrow{margin-top:0;color:#705d32}.inspection li,.inspection p{color:#435e6c}.small{font-size:.82rem!important}.engineering-detail{background:#102a38}.engineering-detail article{border-top:2px solid var(--gold);padding-top:22px}.engineering-detail h3{font-size:1.2rem}.faq{max-width:1000px}.faq details{border-top:1px solid #3f5969;padding:22px 0}.faq summary{cursor:pointer;font-size:1.05rem;color:#e9f3f7;min-height:30px}.faq p{margin-bottom:0}.enquiry{max-width:1000px}.enquiry label{display:block;color:#d8e5ec;font-size:.9rem}.enquiry input,.enquiry textarea{display:block;width:100%;background:#133242;color:white;border:1px solid #547080;font:inherit;padding:13px 15px;min-height:48px;margin:8px 0 20px;border-radius:3px}.enquiry input:focus,.enquiry textarea:focus{outline:2px solid var(--gold);outline-offset:2px}.enquiry-section{background:#0e2b3c}.closing{background:#e6ece6;border-top:4px solid var(--gold)}.floating{background:var(--gold);color:#152c35}button:focus-visible,summary:focus-visible{outline:3px solid #d7b767;outline-offset:4px}html[dir=rtl] h1{font-size:clamp(2.3rem,4vw,3.8rem)}html[dir=rtl] .service-card{border-left:1px solid #263d4b;border-right:2px solid #56695f}@media(max-width:1100px){.brand{gap:8px}.brand img{width:48px;height:48px}nav[aria-label]{gap:12px;font-size:.8rem}.case-layout{grid-template-columns:230px 1fr;gap:35px}.home-studies .project-copy{padding:20px}}@media(max-width:760px){header{position:sticky;flex-wrap:wrap;gap:12px;padding:13px 5%}.brand b{font-size:.6rem}.menu-toggle{display:block;cursor:pointer;background:#102d3d;border:1px solid #526c7b;color:#f0f6f7;border-radius:3px;min-height:44px;padding:9px 13px;font-size:.88rem}header #site-navigation{display:none;flex-basis:100%;gap:0;max-height:65vh;overflow:auto;border-top:1px solid #426071;padding-top:8px}header #site-navigation.open{display:flex;flex-direction:column;align-items:stretch}header #site-navigation a{min-height:44px;padding:10px;font-size:.95rem}.hero h1{font-size:2.6rem}.hero{padding-top:40px}.hero img{height:330px}.section-top{display:block;margin-bottom:25px}.section-top>p{max-width:none;margin-top:20px}.project-grid,.home-studies{grid-template-columns:1fr}.project-card img,.home-studies .project-card img{height:330px;padding:14px}.project-copy{padding:24px}.portfolio-hero{padding:45px 5%}.portfolio-stats{gap:20px;justify-content:space-between;flex-wrap:wrap}.portfolio-stats b{font-size:1.5rem}.portfolio-stats span{font-size:.68rem}.case-hero{grid-template-columns:1fr;padding:35px 5%;gap:25px}.breadcrumbs{margin-bottom:24px}.case-layout{grid-template-columns:1fr;gap:35px}.case-summary{position:static}.case-summary dl{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;margin:0}.case-summary dt,.case-summary dd{margin:0}.case-body h2{font-size:1.7rem}.evidence-photo img{height:360px}.inspection{padding:25px 20px}.system-map{padding:18px}.filters{gap:8px}.filters button{padding:10px 13px;font-size:.8rem}.feature .system-map{width:100%}.floating{font-size:.72rem;max-width:90vw}.faq summary{font-size:1rem}html[dir=rtl] h1{font-size:2.2rem}.enquiry .grid{gap:0}.engineering-detail article{padding-top:18px}.closing .actions{margin-bottom:0}}
