@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:#0c2438;--ink:#162c3d;--blue:#153b56;--accent:#e9a851;--white:#fff;--muted:#596a77;--line:#dce3e8;--soft:#f3f6f8}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--white);font-family:'DM Sans',Arial,sans-serif;font-size:1rem;line-height:1.7}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-size:clamp(2.8rem,5.4vw,5.4rem);font-weight:800;line-height:1.08;letter-spacing:-.055em}h2{font-size:clamp(2rem,3.3vw,3.15rem);font-weight:800;line-height:1.18;letter-spacing:-.035em}h3{font-size:1.2rem;line-height:1.45;letter-spacing:-.015em}a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.skip{position:absolute;top:-100px;z-index:20;background:white;padding:15px}.skip:focus{top:10px}.site-header{max-width:1440px;margin:auto;padding:27px 5%;display:flex;justify-content:space-between;align-items:center;gap:24px}.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:.9rem;font-weight:800;letter-spacing:.075em;line-height:1.4}.wordmark small{display:block;font-size:.65rem;letter-spacing:.12em;color:var(--muted);margin-top:5px}.monogram{background:var(--navy);color:white;font-family:Manrope,sans-serif;font-size:1.1rem;width:47px;height:47px;display:grid;place-items:center;letter-spacing:-.06em}nav{display:flex;gap:30px;align-items:center;font-size:.9rem;font-weight:600}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.nav-contact{padding:9px 18px;border:1px solid var(--line)}.hero{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;min-height:610px;max-width:1440px;margin:auto}.hero-copy{padding:68px 12% 62px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:700;line-height:1.5;margin-bottom:22px}.hero .eyebrow{color:var(--accent)}.accent{color:var(--accent)}.hero-role{font-size:1.15rem;line-height:1.6;margin-top:25px;color:#e8eff4}.hero-role strong{font-weight:500}.hero-description{font-size:1rem;color:#bfd0dc;max-width:420px;margin-top:20px}.actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.88rem;font-weight:700;padding:15px 22px;min-height:48px;transition:background .15s}.primary{background:var(--accent);color:var(--navy)}.primary:hover{background:#f6be74}.text-link{font-size:.9rem;font-weight:600;text-decoration:underline}.hero-image{position:relative;min-height:100%;overflow:hidden}.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:53% center}.hero-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(4,20,32,.8));pointer-events:none}.hero-image figcaption{position:absolute;bottom:32px;left:32px;right:25px;z-index:1;font-size:.86rem;line-height:1.6}.hero-image figcaption span{display:block;font-size:.68rem;letter-spacing:.16em;font-weight:700;margin-bottom:5px}.facts{max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;padding:38px 3%;border-bottom:1px solid var(--line);gap:35px}.facts>div{border-left:2px solid var(--accent);padding-left:22px}.facts strong{display:block;font-family:Manrope,sans-serif;font-size:1.05rem;line-height:1.4}.facts span{font-size:.85rem;color:var(--muted)}.section-wrap{max-width:1200px;margin:auto;padding:88px 30px}.about{display:grid;grid-template-columns:.75fr 1.25fr;gap:85px;align-items:center}.portrait-wrap img{width:100%;height:410px;object-fit:cover;object-position:center 35%;background:var(--soft)}.portrait-wrap>p{font-weight:700;font-size:.95rem;margin-top:19px;line-height:1.5}.portrait-wrap>p span{display:block;font-size:.8rem;font-weight:400;color:var(--muted)}.about-copy .eyebrow,.section-heading .eyebrow,.services .eyebrow{color:#546c7d}.about-copy h2{margin-bottom:27px}.about-copy>p:not(.eyebrow){color:var(--muted);margin-top:16px}.about-copy .text-link{display:inline-block;margin-top:27px}.dark{color:var(--navy)}.projects{background:var(--soft);border-top:1px solid #e8edf1;border-bottom:1px solid #e8edf1}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:80px;margin-bottom:42px}.section-heading>p{font-size:1rem;color:var(--muted);padding-bottom:6px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project{background:white}.project img{width:100%;height:265px;object-fit:cover;transition:transform .3s}.project>a{display:block;overflow:hidden}.project>a:hover img{transform:scale(1.04)}.project-copy{padding:25px}.project-number{font-size:.7rem;letter-spacing:.13em;font-weight:700;color:#547085;margin-bottom:12px}.project h3{font-size:1.1rem}.project h3+p{font-size:.85rem;color:var(--muted);margin-top:9px}.gallery-link{display:inline-block;margin-top:33px}.services{display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.service-list>div{border-top:1px solid var(--line);padding:23px 0}.service-list>div:first-child{padding-top:0;border-top:0}.service-list p{color:var(--muted);font-size:.95rem;margin-top:9px}.contact{background:var(--navy);color:white}.contact-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:90px;align-items:center}.contact .eyebrow{color:var(--accent)}.contact h2{font-size:clamp(2.4rem,4vw,3.8rem)}.contact h2+p{max-width:490px;margin-top:25px;color:#bfd0dc}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.phone{text-decoration:none;font-family:Manrope,sans-serif;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;line-height:1.4}.contact-actions>span{font-size:.85rem;color:#bfd0dc;margin-top:-12px}.light{background:white;color:var(--navy);margin-top:12px}.light:hover{background:#dce9f2}footer{max-width:1200px;margin:auto;padding:30px;display:flex;justify-content:space-between;gap:24px;font-size:.8rem;color:var(--muted)}footer span{padding:0 6px}
@media(min-width:1441px){.hero{margin:0 auto}.hero-copy{padding-left:75px}}@media(max-width:1000px){.hero{min-height:550px}.hero-copy{padding:50px 8%}.actions{gap:18px}.about{gap:45px}.section-heading{gap:35px}.project-copy{padding:20px}.project img{height:230px}.services,.contact-inner{gap:45px}}@media(max-width:700px){.site-header{padding:20px 6%;align-items:flex-start;gap:18px}.wordmark{font-size:.75rem;gap:9px}.wordmark small{font-size:.6rem}.monogram{width:38px;height:38px}nav{gap:17px;font-size:.85rem;flex-wrap:wrap;justify-content:flex-end}nav .nav-contact{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 7%}.hero h1{font-size:clamp(2.8rem,10vw,4.4rem)}.hero-image{min-height:340px;height:340px}.hero-image figcaption{left:7%;bottom:25px}.facts{grid-template-columns:1fr;gap:24px;padding:32px 7%}.facts strong{font-size:1rem}.section-wrap{padding:58px 7%}.about{grid-template-columns:1fr;gap:38px}.portrait-wrap{max-width:370px}.portrait-wrap img{height:360px}.section-heading{grid-template-columns:1fr;gap:25px}.project-grid{grid-template-columns:1fr;gap:25px}.project img{height:auto;aspect-ratio:1.5;object-fit:cover}.project-copy{padding:25px}.services{grid-template-columns:1fr;gap:35px}.contact-inner{grid-template-columns:1fr;gap:38px}.phone{font-size:1.8rem}footer{padding:27px 7%;flex-direction:column;gap:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.bio-links{display:flex;flex-wrap:wrap;column-gap:24px;row-gap:0}

.customer-feedback{border-bottom:1px solid var(--line)}.feedback-heading .eyebrow{color:#546c7d}.feedback-heading>p:last-child{color:var(--muted);margin-top:18px;max-width:650px}.feedback-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.feedback-card{margin:0;padding:30px;background:var(--soft);border-top:3px solid var(--accent)}.feedback-card blockquote{margin:0;font-family:Manrope,sans-serif;font-size:1.15rem;line-height:1.65;color:var(--navy)}.feedback-card figcaption{margin-top:25px}.feedback-card figcaption strong,.feedback-card figcaption span{display:block}.feedback-card figcaption span{font-size:.9rem;color:var(--muted);margin-top:5px}.feedback-card .text-link{display:inline-block;margin-top:18px}@media(max-width:650px){.feedback-grid{grid-template-columns:1fr}.feedback-card{padding:24px}}
