:root{--black:#1d1d1b;--yellow:#f89602;--paper:#f5f4f0;--white:#fff;--grey:#666662;--line:#d8d5cd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--black);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.contact-bar{height:46px;background:#222;color:#fff;display:flex;align-items:center;padding:0 4vw;font-size:.88rem}.contact-bar-inner{display:flex;gap:28px}.contact-bar a{display:flex;align-items:center;gap:8px}.contact-bar svg{width:17px;fill:var(--yellow)}.site-header{height:104px;background:#fff;display:flex;align-items:center;padding:0 4vw;position:sticky;top:0;z-index:20;box-shadow:0 1px 0 rgba(0,0,0,.08)}.brand img{width:218px}.site-header nav{display:flex;margin-left:auto;gap:2.25rem;font-size:.9rem;font-weight:800}.site-header nav a{transition:.2s}.site-header nav a:hover,.site-header nav a.active{color:#b96e00}.menu{display:none}.page-hero{min-height:520px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#111;color:#fff;padding:82px 5.5vw}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.48}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.15))}.page-hero-copy{position:relative;z-index:1;max-width:900px}.eyebrow{margin:0 0 18px;color:var(--yellow);font-size:.78rem;font-weight:800;letter-spacing:.08em}.page-hero h1,.section-heading h2{margin:0;max-width:940px;font-size:clamp(3.2rem,6.5vw,6.8rem);font-weight:300;line-height:1;letter-spacing:-.055em}.page-hero h1 strong,.section-heading h2 strong{font-weight:800}.page-hero p:last-child{font-size:1.08rem;line-height:1.7;max-width:660px;margin:25px 0 0;color:#ddd}.page-section{padding:110px 5.5vw}.section-heading{margin-bottom:58px}.section-heading .eyebrow{color:#956000}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.copy p{font-size:1.02rem;line-height:1.9;color:#5d5d59}.copy p:first-child{margin-top:0}.quote-panel{background:var(--black);color:#fff;padding:48px;border-top:5px solid var(--yellow)}.quote-panel p{font-size:clamp(1.45rem,2.3vw,2.5rem);line-height:1.35;margin:0}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:70px}.values article{background:#fff;padding:35px;min-height:220px;border-top:4px solid var(--yellow)}.values span,.service-number{font-size:.72rem;color:#9a6500}.values h3{font-size:1.45rem;margin:34px 0 12px}.values p{color:var(--grey);line-height:1.65}.services-page{background:#eceae4}.service-row{display:grid;grid-template-columns:.8fr 1.2fr;background:#fff;margin-bottom:20px;min-height:430px}.service-row:nth-child(even){grid-template-columns:1.2fr .8fr}.service-row:nth-child(even) .service-media{order:2}.service-media img{width:100%;height:100%;min-height:430px;object-fit:cover}.service-detail{padding:52px;display:flex;flex-direction:column;justify-content:center}.service-detail h2{font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-.045em;margin:20px 0}.service-detail p{color:var(--grey);line-height:1.75}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding:0;list-style:none;margin:25px 0 0}.service-list li{padding:12px 0;border-top:1px solid var(--line);font-size:.88rem;font-weight:700}.project-intro{display:grid;grid-template-columns:1.15fr .85fr;background:#fff}.project-slider{position:relative;overflow:hidden;min-height:640px}.project-slider-track{display:flex;height:100%;transition:transform .55s ease}.project-slider-track img{min-width:100%;width:100%;height:640px;object-fit:cover}.project-arrows{position:absolute;left:24px;bottom:24px;display:flex;gap:8px}.project-arrows button{width:52px;height:52px;border:0;border-radius:50%;background:#fff;font-size:1.2rem;cursor:pointer}.project-copy{padding:60px}.project-copy h2{font-size:clamp(3rem,5vw,5.4rem);letter-spacing:-.055em;margin:0 0 25px}.project-copy>p{color:var(--grey);line-height:1.75}.project-facts{margin:36px 0}.project-facts div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:14px 0}.project-facts dt{color:var(--grey)}.project-facts dd{font-weight:800;margin:0;text-align:right}.status-section{background:var(--black);color:#fff}.status-section .split p{color:#bbb;line-height:1.8}.partners{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:55px}.partners div{height:120px;background:#fff;display:grid;place-items:center;padding:20px}.partners img{max-height:72px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.contact-card{background:var(--yellow);padding:48px}.contact-card a,.contact-card address{display:block;font-style:normal;font-size:1.05rem;font-weight:700;line-height:1.7;padding:18px 0;border-bottom:1px solid rgba(0,0,0,.22)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{font-size:.78rem;font-weight:800}.contact-form input,.contact-form textarea,.contact-form select{width:100%;margin-top:9px;border:1px solid var(--line);background:#fff;padding:16px;border-radius:12px;font:inherit}.contact-form textarea{height:160px;resize:vertical}.contact-form .wide{grid-column:1/-1}.pill{display:inline-flex;border:0;border-radius:999px;padding:16px 24px;background:var(--black);color:#fff;font:700 .82rem Manrope;cursor:pointer}.cta{background:var(--yellow);padding:68px 5.5vw;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin:0;font-size:clamp(2rem,4vw,4.4rem);letter-spacing:-.05em}.cta .pill{background:#fff;color:#111}footer{background:var(--black);color:#fff;padding:65px 5.5vw 28px}.footer-top{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:42px}.footer-top img{width:218px;height:auto}.footer-top p{font-size:clamp(1.4rem,2.7vw,2.8rem);font-weight:300;margin:0}.footer-links{display:flex;gap:28px;padding:32px 0;font-size:.82rem}.footer-bottom{display:flex;justify-content:space-between;color:#999;font-size:.72rem;border-top:1px solid rgba(255,255,255,.12);padding-top:24px}.reveal{opacity:0;transform:translateY(22px);transition:.65s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.contact-bar{height:40px}.site-header{height:88px;padding:0 5vw}.brand img{width:178px}.menu{display:block;margin-left:auto;width:46px;height:46px;border:0;border-radius:50%;background:var(--yellow);padding:12px}.menu span{display:block;height:2px;background:#111;margin:5px}.site-header nav{display:none}.site-header.open nav{display:flex;position:absolute;top:88px;left:0;width:100%;background:#fff;flex-direction:column;gap:20px;padding:28px 6vw;box-shadow:0 12px 25px rgba(0,0,0,.14)}.page-hero{min-height:460px}.page-section{padding:82px 6vw}.split,.contact-layout,.project-intro{grid-template-columns:1fr}.values{grid-template-columns:1fr 1fr}.service-row,.service-row:nth-child(even){grid-template-columns:1fr}.service-row:nth-child(even) .service-media{order:0}.project-slider,.project-slider-track img{min-height:500px;height:500px}.partners{grid-template-columns:repeat(3,1fr)}.cta{align-items:flex-start;flex-direction:column}.footer-top{align-items:flex-start;flex-direction:column;gap:28px}}
@media(max-width:560px){.contact-bar-inner{gap:14px;font-size:.75rem}.contact-bar a:first-child{display:none}.brand img{width:166px}.page-hero{min-height:410px;padding:55px 6vw}.page-hero h1,.section-heading h2{font-size:clamp(2.75rem,13vw,4.2rem)}.page-section{padding:68px 6vw}.values{grid-template-columns:1fr}.service-detail,.project-copy,.quote-panel,.contact-card{padding:32px 25px}.service-list,.contact-form{grid-template-columns:1fr}.service-media img{min-height:300px;height:300px}.project-slider,.project-slider-track img{min-height:360px;height:360px}.partners{grid-template-columns:1fr 1fr}.footer-links{flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:16px}}
.contact-map{height:260px;margin-top:30px;overflow:hidden;border-radius:18px;border:3px solid rgba(29,29,27,.85);background:#fff}.contact-map iframe{width:100%;height:100%;border:0;display:block;filter:saturate(.85) contrast(1.02)}

/* Align the supplied high-resolution footer mark with the statement. */
.footer-top{align-items:center}
.footer-top img{width:360px;max-width:32vw;height:auto;margin:-55px 0}
@media(max-width:900px){.footer-top{align-items:flex-start}.footer-top img{width:300px;max-width:70vw;margin:-46px 0}}

/* Keep arrow glyphs from receiving Safari's native blue link/button styling. */
.pill,.pill span,.hero-scroll,.hero-scroll span,.quick-links a,.expertise-grid a,.credential-row a,.contact-box a{-webkit-text-fill-color:currentColor;text-decoration:none}
button,.services-controls button,.development-slider-controls button,.project-arrows button{-webkit-appearance:none;appearance:none;color:var(--black);-webkit-text-fill-color:currentColor}
