:root{--orange:#ed5b2a;--orange-dark:#cf401b;--ink:#20211f;--paper:#f6f5f1;--muted:#777873;--line:#deded8;--green:#253e34;--white:#fff;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{height:82px;padding:0 6.2%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(32,33,31,.08)}.brand{display:flex;align-items:center;gap:10px}.brand-logo{width:49px;height:49px;object-fit:contain;border-radius:50%}.brand-copy{font-size:11px;letter-spacing:.04em;line-height:1.3}.brand-copy b{font-weight:700}.brand-copy small{display:block;font-size:8px;letter-spacing:.16em;color:var(--muted);margin-top:3px}.nav{display:flex;align-items:center;gap:38px;font-size:12px;color:#555650}.nav a:not(.nav-cta):hover{color:var(--orange)}.nav-cta{background:var(--orange);color:white;padding:13px 18px;border-radius:2px;font-weight:600}.nav-cta span{padding-left:16px}.menu-toggle{display:none;background:none;border:0}.hero{min-height:650px;height:min(790px,calc(100vh - 82px));background:var(--orange);color:white;position:relative;overflow:hidden;display:flex;align-items:center}.hero-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(189,60,28,.3),transparent 66%),radial-gradient(ellipse at 24% 95%,rgba(123,46,26,.2),transparent 55%)}.hero-content{z-index:2;margin-left:11%;width:48%;padding-bottom:35px}.eyebrow,.section-kicker{font-size:9px;font-weight:700;letter-spacing:.18em;display:flex;align-items:center;gap:12px}.eyebrow span,.section-kicker i{width:22px;height:1px;background:currentColor;display:inline-block}.hero h1{font:600 clamp(56px,7vw,104px)/.99 var(--display);letter-spacing:-.075em;margin:34px 0 24px}.hero h1 em,.intro h2 em,.services h2 em,.projects h2 em,.gallery h2 em,.contact h2 em{font-style:normal;font-weight:400}.hero-lede{font-size:15px;line-height:1.8;max-width:400px;color:rgba(255,255,255,.84)}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.button{display:inline-flex;align-items:center;gap:32px;padding:16px 20px;font-size:11px;font-weight:700}.button span{font-size:16px}.button-light{background:#fff;color:var(--ink)}.button-light:hover{background:#f1eee8}.text-link{font-size:11px;font-weight:700;border-bottom:1px solid var(--orange);padding-bottom:7px}.text-link span{padding-left:15px;color:var(--orange)}.light-link{border-color:rgba(255,255,255,.6)}.light-link span{color:white}.hero-photo{position:absolute;right:0;top:0;width:39%;height:84%;overflow:hidden;background:#968f7e}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,21,18,.32),transparent 50%),linear-gradient(90deg,rgba(196,64,27,.18),transparent 30%)}.hero-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.photo-tag{position:absolute;bottom:28px;left:32px;z-index:1;font-size:8px;letter-spacing:.17em}.tag-dot{width:6px;height:6px;border-radius:50%;background:#fff;display:inline-block;margin-right:8px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;height:66px;border-top:1px solid rgba(255,255,255,.3);display:flex;justify-content:space-between;align-items:center;padding:0 6.2%;font-size:8px;letter-spacing:.16em;color:rgba(255,255,255,.75)}.hero-bottom b{font-size:14px;margin-left:12px;color:white}.section-pad{padding:118px 11%}.intro{background:var(--paper)}.section-kicker{color:var(--muted)}.section-kicker span{color:var(--orange)}.section-kicker i{color:var(--orange);height:1px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:48px}.about-message-column{min-width:0}.about-message-column h2{margin:0}.chairperson-message{margin-top:28px;max-width:490px}.chairperson-message p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 12px}.chairperson-message .message-signoff{color:var(--orange);font-weight:700;margin-top:18px}.chairperson-signature{display:flex;flex-direction:column;gap:5px;margin-top:22px}.chairperson-signature strong{font:600 15px var(--display)}.chairperson-signature span{font-size:9px;letter-spacing:.08em;color:var(--muted)}.intro h2,.services h2,.projects h2,.gallery h2,.contact h2{font:600 clamp(42px,5vw,66px)/1.08 var(--display);letter-spacing:-.07em;margin:0}.intro h2 em,.services h2 em,.projects h2 em,.gallery h2 em{color:var(--orange)}.intro-copy{max-width:460px;padding-top:3px}.about-portrait{display:block;width:500px!important;height:575px!important;max-width:100%;object-fit:cover;object-position:center 30%;margin:0 0 25px}.chairperson-message{font-size:12px;line-height:1.8;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:24px}.chairperson-message p{margin:0 0 10px}.chairperson-message .message-signoff{font-weight:700;color:var(--orange);margin-top:18px}.chairperson-signature{display:flex;flex-direction:column;gap:4px;color:var(--ink);font-size:10px}.chairperson-signature strong{font-size:13px}.chairperson-signature span{font-size:8px;letter-spacing:.08em;color:var(--muted)}.about-firm-copy p{font-size:13px;line-height:1.9;color:var(--muted)}.about-firm-copy .lead{font-size:18px;line-height:1.6;color:var(--ink)}.intro-copy p{font-size:13px;line-height:1.9;color:var(--muted)}.intro-copy .lead{font-size:18px;line-height:1.6;color:var(--ink);margin-top:0}.intro-copy .text-link{display:inline-block;margin-top:20px}.stats{border-top:1px solid var(--line);margin-top:80px;padding-top:28px;display:grid;grid-template-columns:repeat(4,1fr)}.stats div{display:flex;flex-direction:column;gap:8px}.stats strong{font:600 36px var(--display);letter-spacing:-.06em}.stats strong span{color:var(--orange)}.stats div>span{font-size:8px;letter-spacing:.12em;color:var(--muted)}.chairperson-message{margin-top:88px;padding-top:34px;border-top:1px solid var(--line)}.chairperson-body{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:35px}.chairperson-body h3{font:600 clamp(34px,4vw,52px)/1.1 var(--display);letter-spacing:-.065em;margin:0}.chairperson-body h3 em{font-weight:400;font-style:normal;color:var(--orange)}.chairperson-copy{max-width:520px}.chairperson-copy p{font-size:12px;line-height:1.85;color:var(--muted);margin:0 0 13px}.chairperson-copy .message-signoff{font-weight:700;color:var(--orange);margin-top:20px}.chairperson-signature{display:flex;flex-direction:column;gap:6px;margin-top:23px;padding-top:17px;border-top:1px solid var(--line)}.chairperson-signature strong{font:700 15px var(--display)}.chairperson-signature span{font-size:8px;letter-spacing:.1em;color:var(--muted)}.services{background:#eeede7}.services-head,.projects-head{display:flex;justify-content:space-between;align-items:flex-end}.services-head h2{margin-top:36px}.services-head>p,.projects-head>p{max-width:290px;color:var(--muted);font-size:12px;line-height:1.8;margin:0 0 8px}.service-list{margin-top:68px;border-top:1px solid #d5d4cc}.service-list article{display:grid;grid-template-columns:9% 1fr 30px;align-items:center;padding:24px 0;border-bottom:1px solid #d5d4cc}.service-no{font-size:9px;color:var(--orange)}.service-list h3{font:600 21px var(--display);letter-spacing:-.04em;margin:0}.service-list p{font-size:11px;color:var(--muted);margin:7px 0 0}.service-icon{color:var(--orange);font-size:18px}.values{display:flex;gap:21px;align-items:center;margin-top:48px;font-size:9px;letter-spacing:.11em}.values span{color:var(--muted);margin-right:14px}.values b{font-size:9px}.values i{color:var(--orange);font-style:normal}.projects{background:var(--green);color:white}.projects .section-kicker{color:#b4c1b8}.projects h2{margin-top:35px}.projects h2 em{color:#f07443}.projects-head>p{color:#b4c1b8}.project-controls{display:flex;align-items:center;justify-content:space-between;margin-top:55px;padding:16px 0;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25);font-size:8px;letter-spacing:.13em}.project-controls>span b{color:#f07443}.filters{display:flex;gap:6px}.filter{color:#c4ccc5;background:none;border:1px solid transparent;padding:8px 12px;font:inherit;letter-spacing:.04em;cursor:pointer}.filter.active,.filter:hover{border-color:rgba(255,255,255,.35);color:white}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 6%;}.project-card{padding:28px 0 25px;border-bottom:1px solid rgba(255,255,255,.2);display:grid;grid-template-columns:43px 1fr;gap:10px;animation:fade .35s both}.project-number{color:#f07443;font-size:9px;padding-top:4px}.project-card h3{font:500 16px/1.55 var(--display);margin:0}.project-card p{font-size:9px;color:#b4c1b8;letter-spacing:.05em;margin:9px 0 0;text-decoration:none}.project-card .project-contract{text-decoration:none!important;border:0;box-shadow:none}.project-note{margin-top:24px;color:#aab8af;font-size:9px}.gallery{background:var(--paper)}.gallery-top{display:flex;justify-content:space-between;align-items:flex-end}.gallery h2{margin-top:36px}.gallery-intro{max-width:315px}.gallery-intro p{color:var(--muted);font-size:12px;line-height:1.8;margin:0 0 16px}.upload-button{display:inline-block;padding:12px 16px;background:var(--orange);color:white;font-size:10px;font-weight:700;cursor:pointer}.upload-button:hover{background:var(--orange-dark)}.gallery-intro small{display:block;color:var(--muted);font-size:9px;line-height:1.6;margin-top:10px}.gallery-grid{margin-top:52px;display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:14px}.gallery-grid figure{margin:0;min-width:0}.gallery-grid figure img{width:100%;height:230px;object-fit:cover;background:#ddd;filter:saturate(.75)}.gallery-grid .gallery-large img{height:320px}.gallery-grid figcaption{padding-top:12px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.gallery-grid figcaption span{color:var(--orange);font-size:9px}.gallery-grid .user-photo{animation:fade .3s both}.contact{background:var(--orange);color:white;display:grid;grid-template-columns:1.15fr .85fr;gap:14%}.contact .section-kicker{color:rgba(255,255,255,.72)}.contact .section-kicker span{color:white}.contact h2{font-size:clamp(45px,5.7vw,72px);margin-top:48px}.contact h2 em{color:rgba(255,255,255,.72)}.contact-left>p{font-size:12px;color:rgba(255,255,255,.78);margin:24px 0 28px}.contact-right{padding-top:27px}.contact-item{padding:0 0 19px;margin-bottom:19px;border-bottom:1px solid rgba(255,255,255,.3)}.contact-item>span,.contact-legal>span{font-size:8px;letter-spacing:.16em;color:rgba(255,255,255,.7)}.contact-item p,.contact-item a{font-size:13px;line-height:1.7;margin:9px 0 0;display:block}.contact-item a:hover{text-decoration:underline}.contact-legal p{font-size:10px}.footer{padding:25px 6.2%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--paper)}.footer>span,.footer>a:not(.brand){font-size:8px;letter-spacing:.12em;color:var(--muted)}.footer>small{font-size:8px;color:var(--muted)}@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px){.site-header{padding:0 5%;height:72px}.nav{gap:20px}.hero{height:690px;min-height:620px}.hero-content{margin-left:8%;width:58%}.hero-photo{width:43%;height:70%;opacity:.76}.section-pad{padding:90px 8%}.contact{gap:8%}.gallery-grid figure img{height:190px}.gallery-grid .gallery-large img{height:270px}.footer>span{display:none}}
@media(max-width:620px){html{scroll-padding-top:68px}.site-header{height:68px}.brand-logo{width:45px;height:45px}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:10px;z-index:2}.menu-toggle i{display:block;width:21px;height:1px;background:var(--ink)}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:20px 6% 26px;align-items:stretch;flex-direction:column;gap:0;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a:not(.nav-cta){padding:14px 0;border-bottom:1px solid var(--line)}.nav-cta{margin-top:16px;text-align:center}.hero{height:calc(100svh - 68px);min-height:670px;align-items:flex-end}.hero-photo{width:72%;height:54%;opacity:.42}.hero-photo:after{background:linear-gradient(0deg,rgba(165,54,24,.6),rgba(165,54,24,.1))}.hero-content{margin:0;padding:0 7% 118px;width:100%}.hero h1{font-size:clamp(58px,15vw,86px);margin:28px 0 18px}.hero-lede{font-size:13px;max-width:330px}.hero-actions{gap:18px;flex-wrap:wrap}.button{padding:15px 16px;gap:20px}.hero-bottom{height:56px;padding:0 7%;font-size:7px}.hero-bottom a{font-size:0}.hero-bottom b{font-size:13px}.section-pad{padding:77px 7%}.intro-grid{grid-template-columns:1fr;gap:38px;margin-top:34px}.chairperson-message{max-width:none;margin-top:22px}.intro h2,.services h2,.projects h2,.gallery h2{font-size:51px}.about-portrait{display:block;width:600px!important;height:500px!important;max-width:100%;object-fit:cover;object-position:center 30%;margin:0 0 25px}.intro-copy .lead{font-size:16px}.stats{margin-top:53px;grid-template-columns:1fr 1fr;gap:28px 12px}.chairperson-message{margin-top:60px}.chairperson-body{grid-template-columns:1fr;gap:22px;margin-top:27px}.chairperson-body h3{font-size:42px}.stats strong{font-size:31px}.services-head,.projects-head,.gallery-top{display:block}.services-head h2,.projects-head h2,.gallery h2{margin-top:30px}.services-head>p,.projects-head>p{margin-top:20px}.service-list{margin-top:42px}.service-list article{grid-template-columns:34px 1fr 22px;padding:22px 0}.service-list h3{font-size:17px}.service-list p{font-size:10px;line-height:1.6}.values{gap:9px;flex-wrap:wrap;margin-top:34px}.values span{width:100%;margin-bottom:3px}.values b{font-size:8px}.project-controls{margin-top:35px;display:block}.filters{margin-top:12px}.project-grid{grid-template-columns:1fr}.project-card{padding:22px 0}.project-card h3{font-size:15px}.project-note{line-height:1.6}.gallery-intro{margin-top:23px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:36px}.gallery-grid .gallery-large{grid-column:1/-1}.gallery-grid figure img,.gallery-grid .gallery-large img{height:190px}.gallery-grid .gallery-large img{height:240px}.contact{grid-template-columns:1fr;gap:25px}.contact h2{font-size:59px;margin-top:35px}.contact-right{padding-top:5px}.footer{padding:25px 7%;display:grid;grid-template-columns:1fr 1fr}.footer .brand{grid-column:1/-1}.footer>a:not(.brand){text-align:right}.footer>small{grid-column:1/-1}}

/* Theme control and coordinated dark palette */
.theme-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 12px;font:600 10px var(--font);cursor:pointer;white-space:nowrap;transition:background .2s ease,border-color .2s ease,color .2s ease}
.theme-toggle:hover{border-color:var(--orange);color:var(--orange)}
.theme-icon{font-size:15px;line-height:1}
:root[data-theme="dark"]{--ink:#f1f0eb;--paper:#171a18;--muted:#a5aaa4;--line:#343a35;--green:#101d18;--white:#f1f0eb}
:root[data-theme="dark"] body,:root[data-theme="dark"] .site-header,:root[data-theme="dark"] .intro,:root[data-theme="dark"] .gallery,:root[data-theme="dark"] .footer{background:var(--paper);color:var(--ink)}
:root[data-theme="dark"] .services{background:#222724;color:var(--ink)}
:root[data-theme="dark"] .service-list{border-color:#404640}
:root[data-theme="dark"] .service-list article{border-color:#404640}
:root[data-theme="dark"] .footer>span,:root[data-theme="dark"] .footer>a:not(.brand),:root[data-theme="dark"] .footer>small{color:var(--muted)}
:root[data-theme="dark"] .nav{color:#d5d8d3}
:root[data-theme="dark"] .nav-cta{color:#fff}
:root[data-theme="dark"] .button-light{background:#f1f0eb;color:#20211f}
:root[data-theme="dark"] .chairperson-message p,:root[data-theme="dark"] .intro-copy p,:root[data-theme="dark"] .services-head>p,:root[data-theme="dark"] .projects-head>p,:root[data-theme="dark"] .gallery-intro p{color:var(--muted)}
:root[data-theme="dark"] .stats{border-color:var(--line)}
:root[data-theme="dark"] .gallery-grid figcaption{color:var(--muted)}
:root[data-theme="dark"] .contact{color:#fff}
@media(max-width:620px){.theme-toggle{justify-content:center;margin-top:14px;padding:12px}.nav.open .theme-toggle{display:flex}}
