:root{--ink:#071b33;--navy:#0a2f58;--blue:#165da4;--ice:#f4f8fa;--line:rgba(7,27,51,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}.site-header{height:100px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;z-index:5;color:#fff;border-bottom:1px solid #ffffff33}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}.brand-mark{width:45px;height:45px;border:1px solid;border-radius:50%;display:grid;place-items:center;font:25px Georgia,serif}.brand-name{font-size:12px;line-height:1.15;letter-spacing:.13em;text-transform:uppercase;font-weight:600}nav{display:flex;align-items:center;gap:34px;font-size:13px}nav a{text-decoration:none}.nav-contact{border:1px solid #ffffff88;padding:12px 16px;border-radius:99px}.nav-contact span{margin-left:16px}.mobile-nav{display:none}.hero{min-height:830px;height:100svh;background:#061a32 url('cityscape-hero.png') center/cover no-repeat;color:#fff;padding:165px 7vw 70px;position:relative;overflow:hidden;display:flex;flex-direction:column}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#031122e0 0%,#05182daf 42%,#05182d47 74%,#05182d29 100%)}.hero>*{position:relative}.hero-kicker,.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:700}.hero-kicker{display:flex;align-items:center;gap:12px;opacity:.8}.hero-kicker span{width:35px;height:1px;background:currentColor}.hero h1,.section h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em;margin:0}.hero h1{font-size:clamp(82px,10.7vw,164px);line-height:.82;margin-top:8vh}.hero em,.section h2 em{font-weight:400;color:#8dc5e8}.hero-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:end}.hero-bottom p{width:min(450px,43vw);font-size:18px;line-height:1.55;color:#ffffffb8}.circle-link{width:98px;height:98px;border-radius:50%;border:1px solid #ffffff66;display:grid;place-items:center;text-align:center;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.15em}.section{padding:130px 7vw}.section-heading{display:flex;justify-content:space-between;margin-bottom:90px}.eyebrow{color:var(--blue)}.section h2{font-size:clamp(50px,6vw,87px);line-height:1}.services{background:var(--ice)}.services-list{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.service{min-height:390px;padding:30px 26px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.service:last-child{border:0}.service>span{font-size:11px;color:var(--blue);font-weight:700}.service h3{font:400 clamp(25px,2.2vw,34px)/1.08 Georgia,serif;margin:54px 0 24px;min-height:2.2em}.service p{color:#506276;line-height:1.7;font-size:14px}.service b{font-size:22px;color:var(--blue);margin-top:auto;align-self:end}.about{display:grid;grid-template-columns:43% 1fr;gap:10%;align-items:center}.about-visual{aspect-ratio:1;background:linear-gradient(145deg,#0b3c70,#061b35);border-radius:50% 50% 47% 53%;display:grid;place-items:center}.about-core{color:#fff;font:120px Georgia,serif}.about-copy h2{font-size:clamp(50px,5vw,76px);margin:28px 0 46px}.lead{font:25px/1.55 Georgia,serif}.about-copy>p:not(.eyebrow):not(.lead){color:#596a7b;line-height:1.8}.principles{display:flex;flex-wrap:wrap;gap:10px;margin-top:38px}.principles span{padding:12px 16px;border:1px solid var(--line);border-radius:99px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}.contact{color:#fff;background:var(--navy);display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact .eyebrow{color:#8dc5e8}.contact h2{font-size:clamp(54px,5.6vw,84px);margin:30px 0 42px}.contact-intro>p:not(.eyebrow){color:#ffffffa6;line-height:1.7}.contact-form{padding-top:20px}.contact-form label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#ffffffa6}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact-form input,.contact-form textarea{display:block;width:100%;background:transparent;color:#fff;border:0;border-bottom:1px solid #ffffff59;padding:13px 0;margin-bottom:32px;font:17px Arial;outline:0;resize:vertical}.contact-form button{background:#8dc5e8;color:var(--ink);border:0;border-radius:99px;padding:17px 24px;min-width:190px;display:inline-flex;justify-content:space-between;cursor:pointer;font-weight:700}.contact-form button:disabled{opacity:.7}.honeypot{position:absolute;left:-10000px}.form-note{display:inline;margin-left:18px;color:#ffffff73;font-size:11px}.form-note.sent{color:#a8ddb5}.form-note.error{color:#ffb5ad}footer{min-height:270px;padding:65px 7vw 42px;background:#051628;color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr}footer>p{color:#ffffff8c;font:19px/1.5 Georgia,serif}.footer-meta{display:flex;flex-direction:column;text-align:right;gap:100px;font-size:11px;color:#ffffff8c}
@media(max-width:800px){.site-header{height:76px;padding:0 18px}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{list-style:none;display:flex;align-items:center;gap:10px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:fixed;inset:0;background:#061b35;padding:120px 25px 35px;display:flex;flex-direction:column;align-items:stretch;z-index:-1}.mobile-nav nav a{padding:20px 0;border-bottom:1px solid #ffffff2e;font:34px Georgia,serif}.hero{min-height:700px;padding:140px 25px 45px}.hero h1{font-size:clamp(52px,16vw,76px);line-height:.9;margin-top:12vh}.hero-bottom p{width:70%;font-size:15px}.circle-link{width:76px;height:76px}.section{padding:85px 25px}.section h2{font-size:clamp(42px,13vw,58px)}.section-heading{display:block;margin-bottom:55px}.services-list{display:block;border-bottom:0}.service{min-height:0;padding:34px 0;border-right:0;border-bottom:1px solid var(--line)}.service h3{margin:18px 0;min-height:0}.about{grid-template-columns:1fr;gap:65px}.about-visual{width:92%}.about-core{font-size:86px}.contact{grid-template-columns:1fr;gap:55px}.field-row{grid-template-columns:1fr;gap:0}.form-note{display:block;margin:15px 0 0}footer{grid-template-columns:1fr;gap:48px}.footer-meta{text-align:left;gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
