@font-face{font-family:Camelia;src:url('assets/RNS_Camelia.otf') format('opentype');font-display:swap}
:root{--blue:#0788b7;--blue-deep:#006f98;--ink:#2f3035;--muted:#71757a;--paper:#f7f8f8;--line:rgba(47,48,53,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}img{max-width:100%}
.nav{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);background:rgba(247,248,248,.94);backdrop-filter:blur(12px);position:fixed;inset:0 0 auto;z-index:10}.brand{display:flex;align-items:center;gap:18px;text-decoration:none;color:var(--ink)}.brand img{width:92px;height:63px;object-fit:contain}.brand span{font-size:12px;letter-spacing:.32em;border-left:1px solid var(--line);padding-left:18px}.nav nav{display:flex;gap:30px}.nav nav a,.menu{color:inherit;text-decoration:none;font-size:13px}.menu{display:none;background:none;border:0}
.hero{min-height:100vh;display:grid;grid-template-columns:58% 42%;padding-top:90px}.hero-title{padding:12vh 4vw 8vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow,.section-no{text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700}.hero h1{font-family:Camelia,Arial,sans-serif;font-weight:400;font-size:clamp(58px,7.5vw,118px);line-height:.92;letter-spacing:-.045em;margin:7vh 0 32px}.hero h1 em{color:var(--blue);font-style:normal}.intro{font-size:18px;line-height:1.65;max-width:650px;margin:0;color:#555a5f}.cta{margin-top:34px;background:var(--ink);color:#fff;padding:17px 20px;text-decoration:none;display:flex;gap:60px;font-size:14px}.cta span{color:#46c3ee}.hero-brand{background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;overflow:hidden;position:relative}.hero-brand:after{content:"";position:absolute;width:34vw;height:34vw;border:1px solid rgba(255,255,255,.24);border-radius:50%}.hero-brand img{width:min(78%,520px);position:relative;z-index:1}.hero-brand b{font:400 clamp(18px,2.2vw,34px) Camelia;letter-spacing:.42em;margin-top:-2vw;z-index:1}.hero-brand span{font-size:10px;letter-spacing:.2em;margin-top:28px;z-index:1}
.statement,.services,.projects,.approach,.contact{padding:120px 4vw}.statement{background:#fff}.statement h2,.approach h2,.contact h2{font:400 clamp(48px,6vw,94px)/.98 Camelia,Arial,sans-serif;letter-spacing:-.04em;margin:50px 0 75px}.statement h2 span,.service-intro h2 span,.projects-lead h2 span{color:var(--blue)}.statement-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-left:22%}.statement-grid p{font-size:19px;line-height:1.65}.section-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:24px}.section-head p:last-child{font-size:13px;color:var(--muted)}
.services{background:var(--paper)}.service-intro,.projects-lead{display:grid;grid-template-columns:1.5fr 1fr;gap:8vw;align-items:end;padding:70px 0}.service-intro h2,.projects-lead h2{font:400 clamp(50px,6vw,88px)/.98 Camelia;letter-spacing:-.04em;margin:0}.service-intro p,.projects-lead p{font-size:17px;line-height:1.65;color:#5e6367}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:38px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:290px;transition:.25s}.service-grid article:hover{background:#dff5fc}.service-grid span{font-size:11px;color:var(--blue)}.service-grid h3{font:400 31px Camelia;margin:36px 0 18px}.service-grid p{margin:0;font-size:14px;line-height:1.75;color:#5e6367}
.projects{background:#e8ebec}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:52px 18px}.project-card.feature{grid-column:span 2}.project-card img{width:100%;height:330px;object-fit:cover;display:block;filter:saturate(.78);transition:.4s}.project-card.feature img{height:500px}.project-card:hover img{filter:saturate(1);transform:translateY(-3px)}.project-card>div{border-top:1px solid var(--ink);padding-top:15px;margin-top:15px}.project-card span,.mep-list span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--blue-deep)}.project-card h3{font:400 27px Camelia;margin:11px 0 7px}.project-card p{font-size:12px;line-height:1.55;margin:0;color:#596065}.mep-experience{margin-top:140px;padding-top:28px;border-top:1px solid var(--ink);display:grid;grid-template-columns:34% 1fr;gap:8vw}.mep-heading{position:sticky;top:125px;align-self:start}.mep-heading h2{font:400 clamp(42px,5vw,72px)/1 Camelia;margin:42px 0 26px}.mep-heading>p:last-child{font-size:15px;line-height:1.6;color:#60666a}.mep-list{display:grid;grid-template-columns:repeat(2,1fr)}.mep-list article{min-height:155px;padding:24px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.mep-list h3{font:400 23px/1.15 Camelia;margin:18px 0 0}
.approach{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--ink);color:#fff}.approach-mark{min-height:590px;background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.approach-mark:before,.approach-mark:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:50%;width:52%;aspect-ratio:1}.approach-mark:after{width:84%}.approach-mark img{width:72%;z-index:1}.approach-mark span{font:400 24px Camelia;letter-spacing:.4em;z-index:1}.approach h2{margin:45px 0}.approach-copy>p:not(.section-no){font-size:18px;line-height:1.65;color:#c7c9ca}.approach ol{list-style:none;padding:20px 0 0;margin-top:35px;border-top:1px solid rgba(255,255,255,.25)}.approach li{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.25);display:flex;gap:25px;font-size:14px}.approach li span{color:#46c3ee}.contact{background:var(--blue);color:#fff}.contact h2{font-size:clamp(55px,8vw,120px)}.contact h2 em{font-style:normal;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:12px}.contact-row{display:flex;align-items:end;justify-content:space-between;border-top:1px solid rgba(255,255,255,.7);padding-top:25px;margin-top:90px}.contact-row a{font:400 clamp(19px,2.5vw,34px) Camelia;color:inherit;text-decoration:none}.contact-row p{text-align:right;line-height:1.5}.contact-row span{opacity:.7}footer{padding:28px 4vw;display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.reveal{animation:rise .8s ease both}@keyframes rise{from{opacity:0;transform:translateY(20px)}}
@media(max-width:900px){.nav nav{display:none}.menu{display:block}.nav.open nav{display:flex;position:absolute;top:90px;left:0;right:0;background:var(--paper);padding:24px 6vw;flex-direction:column}.hero{grid-template-columns:1fr}.hero-title{min-height:80vh;padding:120px 6vw 70px}.hero-brand{min-height:60vh}.hero-brand:after{width:85vw;height:85vw}.statement,.services,.projects,.approach,.contact{padding:80px 6vw}.statement-grid{grid-template-columns:1fr;margin-left:0;gap:10px}.service-intro,.projects-lead{grid-template-columns:1fr;gap:25px}.service-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr;gap:45px}.project-card.feature{grid-column:auto}.project-card img,.project-card.feature img{height:360px}.mep-experience{grid-template-columns:1fr;gap:30px;margin-top:90px}.mep-heading{position:static}.approach{grid-template-columns:1fr}.approach-mark{min-height:430px}.contact-row{align-items:flex-start;gap:40px;flex-direction:column}.contact-row p{text-align:left}footer{gap:25px;flex-direction:column}.section-head p:last-child{display:none}}@media(max-width:560px){.brand img{width:74px}.brand span{font-size:10px;letter-spacing:.22em}.hero h1{font-size:16vw}.mep-list{grid-template-columns:1fr}.project-card img,.project-card.feature img{height:300px}}
/* Brand lockup spacing: keep every element clearly separate. */
.hero-brand img{width:min(68%,430px)}.hero-brand b{font:400 clamp(16px,1.7vw,26px) Camelia;letter-spacing:.28em;line-height:1.2;margin-top:28px;text-align:center}.hero-brand span{letter-spacing:.18em;line-height:1.4;margin-top:16px;text-align:center}
