:root{--paper:#fff;--steel:#edf0f2;--blue:#1548d8;--ink:#202d3c;--muted:#536272;--line:#cbd2da}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Barlow,Arial,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #e57813;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:600;line-height:1.02}p{max-width:62ch}img{display:block;width:100%;object-fit:cover}.skip{position:absolute;left:15px;top:-100px;background:#fff;z-index:10;padding:12px}.skip:focus{top:10px}.demo{background:var(--steel);padding:10px max(5vw,20px);display:flex;justify-content:space-between;gap:15px;font-size:14px;line-height:1.5}.demo a{font-weight:500}.header{padding:28px 5vw;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{text-decoration:none;display:flex;gap:13px;align-items:center;font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-size:38px;font-weight:600;line-height:.95}.brand small{display:block;font-family:Barlow,Arial,sans-serif;font-size:13px;font-weight:500;margin-top:8px}.brand-mark{height:42px;display:flex;gap:5px;align-items:center}.brand-mark i{display:block;background:var(--blue);width:7px;height:24px}.brand-mark i:nth-child(2){height:42px}.brand-mark i:nth-child(3){height:32px}nav{display:flex;gap:32px;font-size:17px;font-weight:500}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--steel);margin:0 24px}.hero-copy{padding:62px 4vw 64px calc(5vw - 24px)}h1{font-size:clamp(70px,8.1vw,124px);letter-spacing:-2.5px;color:var(--blue)}.hero-copy p{font-size:21px;max-width:32ch;margin-top:27px;line-height:1.5}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--blue);color:#fff;padding:15px 22px;min-height:54px;text-decoration:none;font-weight:600;font-size:17px;line-height:1.3;border:2px solid transparent}.button:hover{background:#113bb5}.hero-copy .button{margin-top:31px}.hero-image{position:relative;min-height:530px}.hero-image img{height:100%;position:absolute;inset:0}.hero-image figcaption{position:absolute;bottom:20px;left:20px;right:20px;width:max-content;max-width:calc(100% - 40px);padding:9px 13px;background:white;font-size:14px;color:var(--ink)}.hero-foot{grid-column:1/-1;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px calc(5vw - 24px)}.hero-foot span{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-size:30px;font-weight:500}.hero-foot p{font-size:16px}.section{padding:110px 5vw}h2{font-size:clamp(48px,4.6vw,70px);letter-spacing:-.7px}.services{display:grid;grid-template-columns:5fr 6fr;gap:8vw}.section-intro p{margin-top:26px;max-width:32ch;color:var(--muted)}.service-list article{padding:26px 0 30px;border-top:1px solid var(--line)}.service-list article:first-child{padding-top:0;border:0}.service-list h3{font-size:32px;margin-bottom:13px}.service-list p{max-width:48ch;color:var(--muted)}.service-list span{display:block;margin-top:15px;font-size:14px;font-weight:500;color:var(--blue)}.projects{background:var(--steel)}.projects-heading{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin-bottom:48px}.projects-heading p{max-width:43ch;color:var(--muted)}.project-body{display:grid;grid-template-columns:1.2fr 1fr;gap:7vw}.project-body figure img{height:500px}.project-body figcaption{font-size:14px;margin-top:12px;color:var(--muted)}.scenarios{display:flex;flex-direction:column;justify-content:center;gap:46px}.scenarios h3{font-size:40px;margin-bottom:16px}.scenarios p{color:var(--muted);max-width:39ch}.planning{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.planning>div>p{margin-top:25px;max-width:37ch;color:var(--muted)}.planning-note{align-self:center;border-left:5px solid var(--blue);padding:12px 0 12px 34px}.planning-note h3{font-size:30px}.planning-note ul{margin:24px 0 0;padding-left:20px}.planning-note li{padding:4px 0 4px 4px}.request{background:var(--blue);color:white;padding:70px 5vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.request h2{margin-top:16px}.request>div>p{max-width:37ch}.button-white{background:#fff;color:var(--blue);margin-top:25px}.button-white:hover{background:var(--steel)}.request small{display:block;margin-top:16px;font-size:14px}footer{padding:45px 5vw;display:grid;grid-template-columns:1fr 1.4fr auto;gap:45px;align-items:start;font-size:14px}.footer-brand{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:600;font-size:30px;line-height:1}.footer-brand small{font-family:Barlow,Arial,sans-serif;display:block;font-weight:400;font-size:13px;margin-top:8px}footer p{color:var(--muted);max-width:42ch}footer>div{display:flex;flex-direction:column;gap:8px}@media(min-width:1600px){body{max-width:1800px;margin:0 auto}}@media(max-width:900px){.hero-copy{padding-top:45px}.hero-image{min-height:490px}.hero-copy p{font-size:18px}.hero-foot{align-items:start;flex-direction:column;gap:5px}.services{gap:5vw}.project-body{gap:5vw}.project-body figure img{height:460px}.section{padding-top:75px;padding-bottom:75px}.planning,.request{gap:6vw}footer{grid-template-columns:1fr 2fr}footer>div{grid-column:2}.hero-copy .button{font-size:15px;padding:13px}}@media(max-width:640px){body{font-size:17px}.demo{flex-direction:column;gap:2px;padding:10px 20px;font-size:12px}.header{padding:23px 20px;flex-direction:column;align-items:flex-start;gap:23px}.brand{font-size:34px}nav{gap:25px;font-size:15px;flex-wrap:wrap}.hero{margin:0;grid-template-columns:1fr}.hero-copy{padding:35px 20px 38px}h1{font-size:76px;letter-spacing:-1.5px}.hero-copy p{font-size:19px;margin-top:22px;max-width:30ch}.hero-copy .button{font-size:16px;padding:15px 17px;margin-top:25px}.hero-image{min-height:290px}.hero-image figcaption{font-size:12px;bottom:15px;left:20px}.hero-foot{padding:22px 20px;gap:7px}.hero-foot span{font-size:28px}.hero-foot p{font-size:15px;max-width:30ch}.section{padding:60px 20px}.services,.projects-heading,.project-body,.planning,.request{grid-template-columns:1fr;gap:35px}h2{font-size:51px}.section-intro p{margin-top:20px}.service-list article{padding:23px 0}.service-list h3{font-size:32px}.service-list span{font-size:13px}.projects-heading{margin-bottom:30px;gap:23px}.project-body figure img{height:320px}.project-body figcaption{font-size:13px}.scenarios{gap:34px}.scenarios h3{font-size:36px}.planning-note{padding-left:22px}.planning-note h3{font-size:28px}.request{padding:50px 20px;gap:28px}.request h2{font-size:54px}.button-white{font-size:16px;padding:15px}.request small{max-width:30ch}footer{padding:35px 20px;grid-template-columns:1fr;gap:24px}footer>div{grid-column:auto;flex-direction:row;gap:22px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Service desk: task-oriented content below the established hero. */
.service-desk{padding:80px 5vw;display:grid;grid-template-columns:1fr 1.6fr;gap:7vw}.desk-heading h2,.drawing-title h2,.service-contact h2{font-size:42px;line-height:1.08;letter-spacing:-.3px}.desk-heading p{font-size:17px;color:var(--muted);max-width:31ch;margin-top:21px}.issue-list{border-top:2px solid var(--blue)}.issue-list details{border-bottom:1px solid var(--line)}.issue-list summary{padding:21px 8px;font-weight:600;font-size:21px;cursor:pointer;line-height:1.4}.issue-list summary::marker{color:var(--blue)}.issue-list summary:focus-visible{outline:3px solid #e57813;outline-offset:3px}.issue-list details[open] summary{color:var(--blue)}.issue-answer{padding:0 10px 27px 29px;font-size:17px}.issue-answer>p{max-width:58ch}.issue-answer h3{font-family:Barlow,Arial,sans-serif;font-size:16px;margin-top:24px;line-height:1.5}.issue-answer ul{padding-left:19px;margin:10px 0 22px}.issue-answer li{padding:3px 0}.issue-answer .safety-note{font-size:14px;color:var(--muted);border-left:3px solid var(--line);padding-left:16px}.drawing-section{padding:58px 5vw;background:#f5f7f9}.drawing-title{display:flex;justify-content:space-between;align-items:start;gap:50px;margin-bottom:30px}.drawing-title p{font-size:17px;max-width:43ch;color:var(--muted)}.drawing-workspace{display:grid;grid-template-columns:2fr 1fr;gap:40px;align-items:start}.room-plan{min-width:0}.room-plan>svg{width:100%;height:auto;display:block;background:#fff;border:1px solid var(--line)}.room-plan figcaption{font-size:13px;line-height:1.5;margin:12px 0 0;color:var(--muted);max-width:76ch}.plan-notes h3{font-size:26px}.plan-notes dl{margin:15px 0 22px}.plan-notes dl>div{margin-bottom:15px}.plan-notes dt{font-size:15px;font-weight:600}.plan-notes dd{font-size:15px;color:var(--muted);margin:4px 0 0;line-height:1.5}.plan-notes figure img{height:170px;object-position:50% 48%}.plan-notes figcaption{font-size:12px;margin-top:6px;color:var(--muted)}.plan-key{display:flex;gap:27px;align-items:center;flex-wrap:wrap;padding-top:25px;font-size:14px}.plan-key>span{display:flex;align-items:center;gap:8px}.plan-key svg{height:25px;width:25px;fill:none;stroke:var(--blue);stroke-width:2}.plan-key .key-note{color:var(--muted);font-size:12px}.service-contact{padding:48px 5vw;display:grid;grid-template-columns:1.4fr 1fr;gap:7vw;align-items:center;border-bottom:1px solid var(--line)}.service-contact h2{font-size:31px}.service-contact>div>p{font-size:16px;color:var(--muted);margin-top:13px;max-width:55ch}.service-contact>div:last-child>p{font-size:13px;margin-top:10px}.service-contact .button{font-size:16px}
@media(max-width:900px){.service-desk{grid-template-columns:1fr 1.4fr;gap:35px}.drawing-workspace{grid-template-columns:1.7fr 1fr;gap:25px}.drawing-title{gap:30px}.drawing-title h2{font-size:38px}.service-contact{gap:30px}.service-contact .button{padding:12px;font-size:15px}}@media(max-width:640px){.service-desk{padding:48px 20px;grid-template-columns:1fr;gap:25px}.desk-heading h2,.drawing-title h2{font-size:38px}.desk-heading p{max-width:38ch;margin-top:15px}.issue-list summary{font-size:19px;padding:19px 5px}.issue-answer{padding-left:20px;font-size:16px}.drawing-section{padding:42px 20px}.drawing-title{display:block;margin-bottom:24px}.drawing-title p{margin-top:18px;font-size:16px}.drawing-workspace{grid-template-columns:1fr;gap:27px}.room-plan>svg{width:100%}.plan-notes{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.plan-notes h3{grid-column:1/-1}.plan-notes dl{margin:8px 0 0}.plan-notes figure{padding-top:10px}.plan-notes figure img{height:250px}.plan-key{gap:15px;font-size:12px;padding-top:22px}.plan-key .key-note{width:100%}.service-contact{padding:36px 20px;grid-template-columns:1fr;gap:20px}.service-contact h2{font-size:31px}.service-contact .button{padding:14px 17px;font-size:16px}}
@media(max-width:640px){.room-plan .plan-interior-labels{display:none}.header nav{gap:12px 22px;font-size:14px}.plan-key{font-size:14px;gap:14px 19px}.plan-key svg{width:29px;height:29px}.plan-notes dt{font-size:16px}.plan-notes dd{font-size:15px}}
@media(max-width:620px){.plan-notes{grid-template-columns:1fr;gap:12px}.plan-notes h3{grid-column:auto}.plan-notes dl{margin-top:0}.plan-notes dl>div{margin-bottom:18px}.plan-notes figure{padding-top:0}.plan-notes figure img{height:220px;object-position:50% 45%}.plan-notes figcaption{font-size:13px}}
.drawing-workspace>.room-plan{grid-column:1;grid-row:1}.drawing-workspace>.plan-key{grid-column:1;grid-row:2;padding-top:0;align-self:start}.drawing-workspace>.plan-notes{grid-column:2;grid-row:1 / span 2}.drawing-workspace{row-gap:18px}
@media(max-width:640px){.drawing-workspace>.room-plan,.drawing-workspace>.plan-key,.drawing-workspace>.plan-notes{grid-column:1;grid-row:auto}.drawing-workspace{row-gap:22px}.drawing-workspace>.plan-key{padding:0 0 6px}}
