
:root{--ink:#14212b;--muted:#5c6872;--navy:#0d2638;--blue:#145b75;--teal:#16828a;--lime:#9bbf58;--paper:#f3f6f7;--line:#dce4e7;--white:#fff}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.72}a{color:var(--blue)}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}
.top{background:#071b29;color:#d7e4e8;font-size:12px}.top .wrap{padding:8px 0;display:flex;justify-content:space-between}.top a{color:#fff;text-decoration:none}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.nav .wrap{height:78px;display:flex;align-items:center}.brand{font-size:21px;font-weight:900;color:var(--navy);text-decoration:none;letter-spacing:-.04em}.brand span{color:var(--teal)}.links{margin-left:auto;display:flex;align-items:center;gap:8px}.links>a,.drop>button{font:inherit;font-size:13px;font-weight:850;color:var(--ink);text-decoration:none;border:0;background:none;padding:10px 8px;cursor:pointer}.drop{position:relative}.menu{display:none;position:absolute;top:42px;left:-10px;min-width:270px;background:#fff;border:1px solid var(--line);padding:8px;border-radius:9px;box-shadow:0 18px 40px rgba(13,38,56,.14)}.drop:hover .menu,.drop:focus-within .menu{display:block}.menu a{display:block;padding:8px 10px;text-decoration:none;color:var(--ink);font-size:13px;font-weight:750}.cta{background:var(--teal)!important;color:#fff!important;padding:11px 15px!important;border-radius:6px}.toggle{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;padding:8px 10px}
.hero{background:linear-gradient(115deg,#0d2638,#145b75 64%,#16828a);color:#fff;padding:88px 0;position:relative;overflow:hidden}.hero:after{content:"</>";position:absolute;right:7%;top:30px;font:700 190px/1 monospace;color:rgba(255,255,255,.055)}.hero .copy{max-width:830px;position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:#bed87d}.hero h1,.subhero h1{font-family:Georgia,serif;font-weight:500;line-height:1.04;letter-spacing:-.035em}.hero h1{font-size:clamp(3rem,6vw,5.5rem);margin:10px 0 18px}.hero p{font-size:1.1rem;color:#d9e8ec;max-width:770px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.btn{display:inline-block;padding:12px 17px;background:var(--lime);border:2px solid var(--lime);color:#10212b;text-decoration:none;font-weight:900}.btn.alt{background:transparent;color:#fff;border-color:#fff}
.quick{background:#eaf0f2;border-bottom:1px solid var(--line)}.quick .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.quick a{padding:18px;border-right:1px solid var(--line);text-decoration:none;color:var(--ink)}.quick strong{display:block}.quick span{font-size:13px;color:var(--muted)}
.section{padding:68px 0}.section.alt{background:var(--paper)}.section.dark{background:var(--navy);color:#fff}.section h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(2rem,3.6vw,3.15rem);line-height:1.1;margin:8px 0 18px}.section.dark p{color:#d7e5e9}.lead{font-size:1.06rem;color:var(--muted);max-width:880px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}.card{border:1px solid var(--line);background:#fff;padding:24px}.card h3{font-family:Georgia,serif;font-size:1.35rem;margin:0 0 8px}.card p{color:var(--muted)}.card a{font-weight:900;text-decoration:none}
.subhero{background:linear-gradient(110deg,#0d2638,#145b75);color:#fff;padding:65px 0;border-bottom:5px solid var(--lime)}.subhero h1{font-size:clamp(2.6rem,5vw,4.6rem);margin:10px 0 16px;max-width:980px}.subhero p{max-width:880px;color:#d9e8ec;font-size:1.08rem}
.rail{border-bottom:1px solid var(--line)}.rail .wrap{display:flex;gap:7px;flex-wrap:wrap;padding:11px 0}.rail a{font-size:13px;font-weight:800;text-decoration:none;padding:5px 8px}
.split{display:grid;grid-template-columns:1.42fr .58fr;gap:46px}.content h2{margin-top:38px}.content p,.content li{color:#4f5e67}.aside{background:#eaf1f2;border-top:5px solid var(--teal);padding:23px;height:max-content}.aside h3{font-family:Georgia,serif;font-size:1.45rem;margin-top:0}.aside a{display:block;text-decoration:none;font-weight:850;padding:8px 0;border-bottom:1px solid #cfdbde}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:26px 0}.flow div{background:#eaf0f2;padding:17px;font-weight:850}.flow small{display:block;color:var(--muted);font-weight:400;margin-top:5px}
.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}.screen{min-height:145px;background:linear-gradient(145deg,#0d2638,#16828a);padding:24px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.screen small{color:#c8e0df}.project-body{padding:21px;display:flex;flex-direction:column;flex:1}.project-body p{color:var(--muted)}.project-body a{margin-top:auto;font-weight:900;text-decoration:none}
.table{width:100%;border-collapse:collapse;margin:24px 0}.table th,.table td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.table th{background:var(--navy);color:#fff}
.footer{background:#071b29;color:#cbd9df;padding:50px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px}.footer strong{display:block;color:#fff;margin-bottom:10px}.footer a{display:block;color:#cbd9df;text-decoration:none;font-size:13px;margin:6px 0}.footer p{font-size:13px}.bottom{border-top:1px solid #274052;margin-top:28px;padding-top:15px;font-size:12px}
@media(max-width:950px){.links{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px;flex-direction:column;align-items:flex-start}.links.open{display:flex}.toggle{display:block}.nav .wrap{position:relative}.drop{width:100%}.menu{position:static;box-shadow:none;border:0;padding-left:12px}.drop:hover .menu{display:none}.drop.open .menu{display:block}.grid,.work-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.flow{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.quick .wrap{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.grid,.work-grid,.footer-grid,.quick .wrap,.flow{grid-template-columns:1fr}.hero{padding:64px 0}.top .wrap{display:block;text-align:center}.top span:last-child{display:none}}
