@charset "UTF-8";
:root{--navy:#202f3b;--navy-dark:#16232d;--yellow:#ebce29;--ink:#283743;--muted:#53616b;--light:#f1f3f4;--white:#fff;--line:#dce1e4;--width:1120px;--header:104px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.7;scroll-behavior:smooth;scroll-padding-top:var(--header)}
*{box-sizing:border-box}body{margin:0;background:var(--white)}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12}h2{font-size:clamp(2.25rem,4vw,3.1rem);font-weight:700;text-transform:uppercase;letter-spacing:.055em;margin-bottom:24px}h3{font-size:1.45rem;font-weight:600}p{margin-bottom:1.25rem}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #937b00;outline-offset:5px}.wrap{width:min(var(--width),calc(100% - 72px));margin-inline:auto}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--yellow);color:var(--navy);padding:12px 20px}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:20;min-height:var(--header);background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:18px 4.5%;gap:30px;color:#fff}.wordmark{display:flex;flex-direction:column;text-decoration:none;line-height:1.06;font-size:1.1rem;font-weight:600;letter-spacing:.04em}.wordmark span:first-child{font-size:1.9rem;font-weight:700}.wordmark span:last-child{font-size:1rem}.site-nav{display:flex;gap:clamp(20px,3.1vw,48px);align-items:center}.site-nav a{text-transform:uppercase;font-size:.875rem;letter-spacing:.06em;text-decoration:none;padding:12px 0;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav a[aria-current]{color:var(--yellow);border-color:var(--yellow)}.menu-toggle{display:none}.hero{min-height:620px;height:min(76vh,850px);position:relative;isolation:isolate;display:flex;align-items:center;background:var(--navy) url('assets/hero.jpg') center 57%/cover;color:var(--white)}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,34,46,.74),rgba(16,34,46,.26) 66%,rgba(16,34,46,.12))}.hero-content{padding-block:65px 100px}.eyebrow{font-size:.85rem;text-transform:uppercase;letter-spacing:.16em;font-weight:600}.hero .eyebrow{color:var(--yellow);margin-bottom:26px}.hero h1{font-size:clamp(3.1rem,6.2vw,5.5rem);line-height:1.04;text-transform:uppercase;letter-spacing:.045em;margin:0 0 28px;max-width:850px}.hero-intro{font-size:1.2rem;line-height:1.6;margin-bottom:0}.scroll-cue{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);text-decoration:none;font-size:2.8rem;line-height:1;padding:12px 20px}.scroll-cue:hover{color:var(--yellow)}.section{padding-block:94px}.section-heading{text-align:center;margin-bottom:50px}.section-heading p{margin:22px 0 0;color:var(--muted)}.yellow-rule{display:block;width:72px;height:6px;background:var(--yellow);margin-inline:auto}.section-number{display:block;color:#667784;font-size:.8rem;letter-spacing:.12em;font-weight:700;margin-bottom:16px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.service-card{background:var(--light)}.service-card img{width:100%;height:240px;object-fit:cover}.service-copy{padding:26px 28px 28px}.service-card h3{line-height:1.25;margin-bottom:18px}.service-card p{color:var(--muted);margin-bottom:0}.about{background:var(--light);display:grid;grid-template-columns:1fr 1fr;scroll-margin-top:0}.about-copy{padding:76px max(42px,calc((100vw - var(--width))/2)) 76px max(36px,calc((100vw - var(--width))/2));padding-right:65px}.align-left{text-align:left;margin-bottom:30px}.align-left .yellow-rule{margin-inline:0}.lead{font-size:1.75rem;line-height:1.32;font-weight:600}.about-copy>p:not(.lead){color:var(--muted)}.about-copy>p:last-child{margin-bottom:0}.about-photo{background:var(--navy) url('assets/about.jpg') center/cover;min-height:600px;position:relative}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:40px;background:linear-gradient(transparent,rgba(15,30,40,.86));padding-top:100px;color:var(--white);font-size:1.5rem;line-height:1.4;font-weight:600}.project-feature{position:relative;background:var(--navy);overflow:hidden}.project-feature>img{width:100%;height:540px;object-fit:cover}.project-caption{padding:36px 40px;color:#fff;background:var(--navy);border-left:6px solid var(--yellow)}.project-caption .eyebrow{color:var(--yellow);margin-bottom:12px}.project-caption h3{font-size:2rem;margin-bottom:16px}.project-caption p:last-child{margin:0;color:#dce3e8}.clients{background:var(--light);padding-block:75px 85px}.client-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.client-grid li{border-top:1px solid #b9c4cc;padding-top:24px}.client-category{display:block;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}.client-grid h3{font-size:1.1rem;line-height:1.5;margin:0}.contact-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:90px}.inquiries>h3{font-size:1.65rem}.inquiries>p{color:var(--muted)}.inquiries>p a{white-space:nowrap}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:.875rem;margin:18px 0 6px;font-weight:600}input,textarea{background:#f6f7f8;width:100%;border:1px solid #c2cbd1;border-radius:0;padding:11px 12px;color:var(--ink);min-height:48px}textarea{resize:vertical;min-height:150px}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.form-bottom p{font-size:.8rem;color:var(--muted);margin:0}.button{background:var(--navy);color:#fff;border:0;display:inline-flex;align-items:center;gap:24px;padding:13px 22px;min-height:50px;text-decoration:none;font-size:.94rem;font-weight:600}.button:hover{background:#354d5e}.button:disabled{cursor:wait;opacity:.65}.button span{color:var(--yellow);font-size:1.2rem}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{font-size:.94rem;margin-top:20px;padding:0}.form-status:empty{display:none}.form-status.is-error{color:#9d2525}.form-status.is-success{color:#23603b}.contact-details h3{margin-bottom:16px}.contact-details address{font-style:normal;line-height:2;color:var(--muted)}.contact-details a{overflow-wrap:anywhere;text-underline-offset:4px}.contact-details .yellow-rule{margin:34px 0;width:56px;height:4px}.contact-details>p{color:var(--muted);margin-bottom:12px}.email-link{font-size:.94rem}.quote{margin-top:36px;background:var(--yellow);padding:23px 26px}.quote p{margin-bottom:2px;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.quote>a{font-size:1.75rem;line-height:1.5;font-weight:700;text-decoration:none}.site-footer{background:var(--navy);color:#cdd7de;padding:26px 0;font-size:.85rem}.site-footer>.wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}.site-footer p{margin:0}.site-footer a{text-decoration:none}.site-footer a span{color:var(--yellow);margin-left:10px}
@media(min-width:1600px){.about-copy{padding-right:85px}}
@media(max-width:1000px){:root{--header:96px}.site-header{padding-inline:28px;gap:20px}.wordmark{font-size:.9rem}.site-nav{gap:20px}.site-nav a{font-size:.8rem}.wrap{width:calc(100% - 56px)}.hero{min-height:560px}.service-grid{gap:18px}.service-copy{padding:24px 22px}.service-card img{height:190px}.about-copy{padding:60px 35px}.about-photo{min-height:650px}.contact-grid{gap:45px}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 40px}.project-feature>img{height:430px}}
@media(max-width:720px){:root{--header:86px;scroll-padding-top:86px}.wrap{width:calc(100% - 40px)}.site-header{padding:15px 20px;min-height:86px;flex-wrap:wrap;gap:12px}.wordmark{font-size:.8rem}.wordmark span:first-child{font-size:1.5rem}.wordmark span:last-child{font-size:.8rem}.js .menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid #7c8a95;color:white;font-size:.875rem;padding:8px 11px;min-height:44px}.site-nav{width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:8px 0}.js .site-nav{display:none}.js .site-nav.is-open{display:flex}.site-nav a{font-size:.8rem;padding:8px 0}.hero{height:calc(83svh - 86px);min-height:510px;max-height:690px;background-position:61% center}.hero-content{padding-block:50px 90px}.hero .eyebrow{font-size:.72rem;letter-spacing:.1em}.hero h1{font-size:clamp(2.6rem,9.8vw,4.2rem);letter-spacing:.025em}.hero-intro{font-size:1.05rem}.section{padding-block:64px}.section-heading{margin-bottom:36px}h2{font-size:2.2rem;letter-spacing:.04em;margin-bottom:20px}.service-grid{grid-template-columns:1fr;gap:28px}.service-card img{height:260px}.service-copy{padding:26px}.service-card h3 br{display:none}.about{grid-template-columns:1fr}.about-copy{padding:58px 24px}.about-photo{min-height:390px;background-position:center}.photo-caption{padding:80px 26px 26px}.project-feature>img{height:320px}.project-caption{padding:28px 24px}.project-caption h3{font-size:1.65rem}.project-caption .eyebrow{font-size:.73rem}.client-grid{gap:28px 20px}.client-grid h3{font-size:1rem}.contact-grid{grid-template-columns:1fr;gap:52px}.contact-details{border-top:1px solid var(--line);padding-top:36px}.contact-details address a,.email-link{font-size:.9rem}.quote{max-width:380px}.site-footer>.wrap{flex-direction:column;align-items:flex-start;gap:12px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{align-items:flex-start;flex-direction:column}.form-bottom .button{align-self:flex-end}}
@media(max-width:380px){.client-grid{grid-template-columns:1fr}.service-card img{height:220px}.hero h1{font-size:2.45rem}.site-nav{justify-content:flex-start;gap:8px 20px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.project-gallery img{width:100%;height:230px;object-fit:cover}.desk{background:var(--navy-dark);color:#fff}.desk-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.desk-intro>.eyebrow{color:var(--yellow)}.desk h2{font-size:clamp(2rem,3.4vw,2.9rem);text-transform:none;letter-spacing:-.025em;margin-bottom:24px}.desk .yellow-rule{margin:0 0 32px;width:56px;height:4px}.desk .lead{font-size:2.1rem;line-height:1.22}.desk-intro>p:not(.eyebrow):not(.lead){color:#c7d3db}.desk-links{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:28px}.button-gold,.button-gold span{background:var(--yellow);color:var(--navy-dark)}.button-gold:hover{background:#f6dd49}.desk-signin{font-size:.875rem;text-underline-offset:5px}.desk-signin span{color:var(--yellow);margin-left:8px}.desk-workflows article{display:flex;gap:24px;border-top:1px solid #4a5b67;padding:26px 0}.desk-workflows article:first-child{padding-top:20px}.desk-workflows article>span{font-size:.8rem;font-weight:bold;color:var(--yellow);padding-top:4px}.desk-workflows h3{font-size:1.2rem;margin:0 0 10px;line-height:1.3}.desk-workflows p{font-size:.94rem;color:#c7d3db;margin:0}.desk a:focus-visible{outline-color:var(--yellow)}
@media(max-width:1100px){.site-nav{gap:20px}.site-nav a{font-size:.8rem}.desk-grid{gap:55px}}
@media(max-width:1000px){.site-header{flex-wrap:wrap}.js .menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid #7c8a95;color:white;font-size:.875rem;padding:8px 11px;min-height:44px}.site-nav{width:100%;flex-wrap:wrap;justify-content:space-between;padding:8px 0}.js .site-nav{display:none}.js .site-nav.is-open{display:flex}}
@media(max-width:720px){.desk-grid{grid-template-columns:1fr;gap:42px}.desk .lead{font-size:1.85rem}.desk-workflows article:last-child{padding-bottom:0}.project-gallery{gap:10px}.project-gallery img{height:150px}.site-nav{justify-content:flex-start;gap:8px 20px}}
@media(max-width:430px){.project-gallery{grid-template-columns:1fr}.project-gallery img{height:230px}}

.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.video-toggle{position:absolute;bottom:20px;right:24px;z-index:2;border:1px solid #ffffff90;background:#152b3bbb;color:#fff;padding:7px 12px;min-height:38px;font-size:12px;letter-spacing:.01em;border-radius:0}.video-toggle:hover{background:#152b3b}.video-toggle:focus-visible{outline:3px solid #edcd1f;outline-offset:3px}.reduced-motion .hero-video{visibility:hidden}@media(max-width:720px){.hero-video{object-position:58% center}.video-toggle{bottom:16px;right:16px;font-size:12px}}
