@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0a192f;--gold:#c5a059;--white:#fafafa;--ink:#172338;--muted:#596473;--line:#dce0e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--white);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.15;font-weight:500}h1{font-size:clamp(36px,4.5vw,68px);letter-spacing:-.045em}h2{font-size:clamp(30px,3.3vw,48px);letter-spacing:-.035em}h3{font-size:23px;letter-spacing:-.02em}em{font-style:normal;color:var(--gold)}header{position:sticky;top:0;z-index:10;background:rgba(250,250,250,.98);display:flex;align-items:center;justify-content:space-between;padding:16px 5%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:21px;font-weight:600;letter-spacing:.035em}.brand img{height:48px;width:48px;object-fit:cover}.brand i,.footer-brand i{color:#97702d;font-style:normal}.brand small{display:block;font-size:10px;letter-spacing:.19em;margin-top:2px}nav{display:flex;gap:28px;align-items:center;font-size:14px}nav a:hover{color:#987439}.nav-cta{border:1px solid var(--navy);padding:11px 17px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--navy);color:white}.hero-copy{padding:68px 9% 34px 10%}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:600;margin-bottom:22px}.hero .eyebrow{color:#cfb780;font-size:11px}.intro{max-width:490px;margin:28px 0;color:#d3d9e2;font-size:17px}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;border:1px solid transparent;padding:14px 20px;font-size:14px;font-weight:600;text-align:center;transition:background .2s}.gold{background:var(--gold);color:var(--navy)}.gold:hover{background:#d5b577}.outline{border-color:#778191;color:#fff}.outline:hover{background:#20324a}.hero-foot{border-top:1px solid #334055;margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#b9c2cf}.hero-image{position:relative;margin:0;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:48% center;position:absolute}.hero-image figcaption{position:absolute;bottom:20px;left:20px;background:#0a192fd9;color:white;padding:7px 12px;font-size:10px;letter-spacing:.1em}.intro-strip{padding:70px 7%;display:grid;grid-template-columns:.6fr 1.2fr 1.2fr;gap:40px;align-items:start;border-bottom:1px solid var(--line)}.intro-strip h2{font-size:30px}.intro-strip>p:last-child{color:var(--muted)}.intro-strip .eyebrow{padding-top:7px}.service-section,.approach,.questions{padding:90px 7%}.section-heading{display:flex;justify-content:space-between;gap:70px;align-items:end;margin-bottom:44px}.section-heading>p{max-width:390px;color:var(--muted)}.section-heading em{color:#6e7784}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:28px 24px 30px 0;display:flex;align-items:flex-start;flex-direction:column}.service-grid article+article{border-left:1px solid var(--line);padding-left:24px}.number{color:#92713a;font-size:13px;margin-bottom:30px}.service-grid p{color:var(--muted);font-size:15px;margin:18px 0 26px}.service-grid button,.commercial-grid button{margin-top:auto;border:0;border-bottom:1px solid #a28b60;padding:0 0 4px;background:none;color:inherit;font-size:14px}.section-note{margin-top:25px;display:flex;justify-content:space-between;font-size:14px;gap:20px}.section-note a{text-decoration:underline;text-underline-offset:4px}.commercial{padding:85px 7%;background:var(--navy);color:#fff}.commercial .eyebrow,.commercial article>span{color:#d2b77e}.commercial .section-heading>p{color:#c5cdd7}.commercial .section-heading em{color:#c5a059}.commercial-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #344258}.commercial-grid article{padding:32px 40px 34px 0;border-bottom:1px solid #344258}.commercial-grid article:nth-child(even){padding-left:40px;border-left:1px solid #344258}.commercial article>span{font-size:11px;letter-spacing:.13em}.commercial h3{margin-top:18px;font-size:28px}.commercial article p{margin:15px 0 22px;max-width:480px;color:#c5cdd7}.sectors{padding-top:35px}.sectors .eyebrow{margin-bottom:12px}.sectors b{padding:0 14px;color:#8d7449;font-weight:400}.commercial details{border-color:#344258;margin-top:24px}.commercial details p{color:#c5cdd7}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:55px}.steps article{border-top:2px solid var(--gold);padding-top:20px}.steps span{font-size:13px;color:#7a6241}.steps h3{margin:20px 0 14px}.steps p{color:var(--muted);font-size:15px}.about{display:grid;grid-template-columns:1fr 1fr;column-gap:90px;padding:70px 7%;background:#edf0f2}.about>.eyebrow{grid-column:1/-1}.about p+p{margin-top:18px}.about>div{color:var(--muted)}.text-link{display:inline-block;color:var(--ink);border-bottom:1px solid #8e713b;margin-top:25px;font-size:14px}.questions{max-width:1050px;margin:auto}.questions h2{margin-bottom:30px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;position:relative;padding:22px 35px 22px 0;font-size:17px;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:5px;font-size:24px;top:16px;font-weight:400}details[open] summary:after{content:'−'}details p{padding:0 30px 22px 0;color:var(--muted)}.project{padding:85px 7%;background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:90px}.project>div>p:not(.eyebrow){margin-top:24px;max-width:440px;color:#c6cfdb}.small{font-size:13px;line-height:1.65}.project .small{max-width:370px!important}.field{margin-bottom:18px}.field label{display:block;font-size:13px;margin-bottom:7px;color:#dbe0e8}input,select,textarea{width:100%;padding:11px 12px;background:#15263d;border:1px solid #506078;border-radius:0;color:white;font-size:15px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#aab6c7}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}#status{font-size:13px;margin-top:12px;color:#e1ca99}footer{padding:45px 7% 24px;display:grid;grid-template-columns:1.3fr 1fr .6fr;gap:30px}.footer-brand{font-size:22px;letter-spacing:.04em}footer p,footer a:not(.footer-brand){font-size:14px}footer>div{display:flex;flex-direction:column;gap:7px}footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:12px}dialog{border:0;padding:40px;max-width:620px;width:calc(100% - 32px);color:var(--ink);background:var(--white)}dialog::backdrop{background:#071427b8}dialog h2{font-size:32px;margin-bottom:20px}dialog p{margin-bottom:20px}dialog li{margin-bottom:9px}dialog ul{padding-left:20px;margin-bottom:25px}.close{position:absolute;right:12px;top:7px;background:none;border:0;font-size:30px}.skip{position:fixed;top:-100px;left:20px;padding:12px;z-index:100;background:white}.skip:focus{top:10px}@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:15px}.brand{font-size:17px}.hero-copy{padding:55px 7%}.hero{min-height:610px}.intro-strip{grid-template-columns:1fr 1.5fr}.intro-strip>.eyebrow{grid-column:1/-1;margin-bottom:0}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.service-grid article:nth-child(4){border-top:1px solid var(--line)}.section-heading{gap:35px}.section-heading>p{max-width:320px}.project{gap:35px}.steps{grid-template-columns:1fr 1fr}}@media(max-width:700px){header{padding:12px 5%;flex-wrap:wrap}.brand{font-size:17px}.brand img{width:42px;height:42px}.brand small{font-size:8px}.menu{display:block;border:1px solid var(--line);background:none;padding:8px 12px;font-size:14px}nav{display:none;flex-direction:column;align-items:stretch;width:100%;padding:18px 0 6px;gap:16px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 7% 30px}h1{font-size:43px}.hero-image{height:340px}.intro-strip{display:block;padding:45px 7%}.intro-strip h2{margin:16px 0 22px}.service-section,.approach,.questions,.commercial,.project{padding:55px 7%}.section-heading{display:block}.section-heading>p{margin-top:24px;max-width:none}.service-grid,.commercial-grid{grid-template-columns:1fr}.service-grid article,.service-grid article+article{padding:24px 0;border-left:0;border-top:1px solid var(--line)}.service-grid{border-top:0}.number{margin-bottom:15px}.service-grid h3{font-size:25px}.service-grid p{margin:14px 0 19px}.section-note{display:block}.section-note a{display:inline-block;margin-top:12px}.commercial-grid article,.commercial-grid article:nth-child(even){padding:26px 0;border-left:0}.commercial h3{font-size:26px}.sectors p{line-height:2}.steps{gap:25px 20px}.steps h3{font-size:21px}.about{display:block;padding:45px 7%}.about h2{margin-bottom:25px}.project{grid-template-columns:1fr}.two-fields{grid-template-columns:1fr;gap:0}footer{grid-template-columns:1fr 1fr;padding:35px 7%}.footer-brand{grid-column:1/-1}dialog{padding:35px 24px}.hero-foot{font-size:11px}.button{font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Header actions and social links */
header nav .nav-cta{border:1px solid var(--navy);padding:10px 14px;white-space:nowrap;transition:background .25s ease,color .25s ease,transform .25s ease}header nav .nav-cta:hover{background:var(--navy);color:#fff;transform:translateY(-1px)}footer{grid-template-columns:1.3fr 1fr .75fr .65fr}.social-links strong{font-size:13px;margin-bottom:5px}.social-links{display:flex;flex-direction:column;gap:7px}@media(max-width:1150px){header nav .nav-cta{padding:8px 10px}}@media(max-width:700px){header nav .nav-cta{padding:10px 12px}footer{grid-template-columns:1fr 1fr}.social-links{grid-column:auto}}
