:root{--charcoal:#25282a;--orange:#f05a28;--steel:#7a8288;--white:#f7f7f4;--ink:#202326;--muted:#515b60;--line:#dce0e1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--white);font:1rem/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:2px}.wrap{width:min(1200px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.navigation{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px}.brand{width:310px;max-width:40%;display:block;line-height:0}.brand img{width:100%;height:auto}nav{display:flex;align-items:center;gap:25px;font-size:.9rem;font-weight:700}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.nav-contact{border:1px solid var(--charcoal);padding:11px 16px}.menu{display:none}.hero{background:var(--charcoal);color:var(--white);padding:90px 0 80px;border-bottom:7px solid var(--orange)}.hero-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:80px}.eyebrow{font-size:.8rem;letter-spacing:.13em;font-weight:800;color:#a73b15;margin:0 0 20px}.hero .eyebrow,.dark .eyebrow,.contact .eyebrow{color:#ff9169}h1,h2,h3{line-height:1.1;letter-spacing:-.045em;margin:0}h1{font-size:clamp(3.1rem,5.5vw,5rem);font-weight:800}h1 span{color:var(--orange)}.intro{font-size:1.15rem;color:#d7dcdf;max-width:580px;margin:28px 0}.actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-block;background:var(--orange);color:#161616;text-decoration:none;border:0;font-weight:800;font-size:.95rem;padding:15px 22px;cursor:pointer;text-align:center}.button:hover{background:#ff7947}.outline{background:transparent;color:white;border:1px solid #879094}.outline:hover{background:#363b3e}.hero-note{font-size:.875rem;color:#c5cbce;margin:22px 0 0}.project-index{border-top:1px solid #61676b;padding-top:18px}.project-index .eyebrow{font-size:.75rem}.project-index a{display:grid;grid-template-columns:35px 1fr;column-gap:12px;border-bottom:1px solid #51575a;padding:12px 0;text-decoration:none}.project-index a:hover strong{color:#ff9169}.project-index span{grid-row:span 2;font-size:.85rem;color:#ff9169}.project-index strong{font-size:1.15rem;line-height:1.3}.project-index small{color:#c5cbce;font-size:.875rem}.principles{background:#eceeeb}.principles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:30px 0}.principles b{display:block;font-size:1rem}.principles span{display:block;font-size:.9rem;color:var(--muted);line-height:1.5;margin-top:5px}.section{padding:90px 0}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end;margin-bottom:40px}h2{font-size:clamp(2.2rem,3.7vw,3.25rem);font-weight:800}.section-heading p{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-grid article{background:white;padding:32px;border:1px solid var(--line);border-top:4px solid var(--charcoal);scroll-margin-top:120px}.service-number{color:#a73b15;letter-spacing:.08em;font-size:.8rem;font-weight:bold}.service-grid h3{font-size:1.65rem;margin-top:18px;letter-spacing:-.025em}.service-grid p{color:var(--muted)}.service-grid ul{padding-left:20px;color:var(--muted);font-size:.95rem}.service-grid a{display:inline-block;font-weight:700;font-size:.95rem;margin-top:12px}.wide{grid-column:span 2;display:grid;grid-template-columns:1.2fr 1fr;gap:50px}.wide-side{border-left:1px solid var(--line);padding-left:35px}.dark{background:var(--charcoal);color:white}.dark .section-heading p{color:#d1d6d8}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;list-style:none;padding:0;margin:45px 0 0}.process-grid li{border-top:1px solid #697175;padding-top:22px}.process-grid span{color:#ff9169;font-size:1.8rem;line-height:1}.process-grid h3{font-size:1.35rem;margin-top:23px;letter-spacing:-.02em}.process-grid p{color:#cdd3d6;font-size:.95rem}.area-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center}.area-grid p:not(.eyebrow){color:var(--muted)}.area-grid .button{margin-top:15px}.area-panel{border:1px solid var(--line);border-left:7px solid var(--orange);background:white;padding:38px 45px}.area-panel .radius{font-size:6rem;font-weight:800;line-height:1;color:var(--charcoal)!important;margin:20px 0 25px;letter-spacing:-.06em}.radius span{display:block;font-size:.9rem;letter-spacing:.12em;margin-top:10px}.area-list{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:22px}.area-list span{color:var(--muted);font-size:.95rem}.about{background:#e9ecea}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.about-grid p{margin-top:0;color:var(--muted)}.about-grid a{font-weight:bold}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:35px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:bold;font-size:1.05rem}details p{color:var(--muted);padding-right:20px}.contact{background:var(--charcoal);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:75px}.contact-grid>div>p{color:#d1d6d8}.phone{font-size:2.25rem;letter-spacing:-.025em;font-weight:800;text-decoration:none;display:inline-block;margin-top:12px}.email{font-size:1rem;overflow-wrap:anywhere}.small{font-size:.875rem;line-height:1.5}.contact .small{color:#c5cbce}form{background:#313639;border:1px solid #60676a;padding:30px}label{display:block;font-size:.875rem;font-weight:700;margin-bottom:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}input,select,textarea{display:block;width:100%;min-width:0;margin-top:7px;background:white;border:1px solid #c2c9cb;border-radius:0;padding:11px 12px;color:var(--ink)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#646c70}form .button{width:100%}.draft-link{font-size:.9rem;color:white}footer{background:#191c1e;color:#d1d6d8;padding:40px 0}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:30px}.footer-grid b{font-size:1rem;line-height:1.3;display:block}.footer-grid p{font-size:.875rem}.footer-grid>p{text-align:right}section:target{scroll-margin-top:110px}
@media(max-width:1000px){.navigation{min-height:90px;gap:15px}.brand{width:260px}nav{gap:14px;font-size:.875rem}.hero-layout{gap:40px}.hero{padding:65px 0}.area-grid,.about-grid,.contact-grid{gap:40px}.section-heading{gap:40px}.wrap{width:calc(100% - 40px)}}
@media(max-width:760px){html{scroll-padding-top:90px}.navigation{flex-wrap:wrap;min-height:80px;padding:12px 0}.brand{width:255px;max-width:75%}.menu{display:block;background:white;border:1px solid var(--line);padding:9px 13px;font-size:.875rem;font-weight:700}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:12px 5px}.nav-contact{border:0}.hero-layout,.section-heading,.area-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.hero{padding:50px 0}.hero .eyebrow{font-size:.75rem}.intro{font-size:1.05rem}.project-index{margin-top:12px}.principles-grid{grid-template-columns:1fr 1fr;gap:25px}.section{padding:60px 0}.service-grid{grid-template-columns:1fr}.service-grid article{padding:26px}.wide{grid-column:auto;grid-template-columns:1fr;gap:5px}.wide-side{border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.process-grid{grid-template-columns:1fr 1fr;gap:25px}.area-panel{padding:28px}.faq-grid{grid-template-columns:1fr}form{padding:22px}.footer-grid{grid-template-columns:1fr;gap:10px}.footer-grid>p{text-align:left}.phone{font-size:2rem}.email{font-size:.95rem}}
@media(max-width:390px){.wrap{width:calc(100% - 28px)}.form-row{grid-template-columns:1fr;gap:0}.actions{display:grid}.button{padding:14px 16px}.brand{max-width:70%}.process-grid{grid-template-columns:1fr}.principles-grid{gap:18px}h1{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
