:root{--ink:#111827;--navy:#101b30;--blue:#2458ec;--paper:#fff;--muted:#586579;--line:#dce2eb;--light:#f2f5fa;--gold:#f2bb63;--radius:8px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font:16px/1.65 Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink)}[hidden]{display:none!important}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button,a,input,select,textarea,summary{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #6486ff}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(45px,5.9vw,84px);font-weight:700}h2{font-size:clamp(33px,3.9vw,53px);font-weight:600}h3{font-size:25px;letter-spacing:-.025em}p{margin-bottom:20px}.wrap{width:min(1280px,90%);margin-inline:auto}.section{padding-block:88px}.section-sm{padding-block:60px}.eyebrow{display:block;font-size:11px;letter-spacing:2.3px;text-transform:uppercase;font-weight:700;color:var(--blue);margin-bottom:18px}.muted{color:var(--muted)}.lede{font-size:18px;line-height:1.6;max-width:640px;color:var(--muted)}.small{font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid transparent;padding:14px 22px;border-radius:4px;text-decoration:none;background:var(--blue);color:#fff;font-size:13px;font-weight:700;line-height:1.35;min-height:48px}.button:hover{background:#1645c3}.button.light{background:#fff;color:var(--ink)}.button.outline{border-color:#6b7991;background:transparent;color:inherit}.button.ink{background:var(--ink)}.button.text{background:transparent;color:var(--blue);padding-inline:0;justify-content:start}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.section-head{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:35px}.section-head h2{margin-bottom:0;max-width:670px}.section-head p{max-width:355px;margin:0;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:28px}.topbar{background:#0e1626;color:#c9d2e4;font-size:10px;letter-spacing:1.2px;padding:8px 5%;display:flex;justify-content:space-between}.header{background:#fff;position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line)}.nav-row{display:flex;align-items:center;gap:28px;padding-block:12px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;margin-right:auto}.brand img{width:61px;height:61px;border-radius:50%}.brand strong{display:block;font-size:24px;letter-spacing:.06em;line-height:1}.brand small{display:block;font-size:8px;font-weight:700;letter-spacing:.7px;line-height:1.5;margin-top:6px}.main-nav{display:flex;gap:24px;font-size:12px;font-weight:700}.main-nav a{text-decoration:none}.main-nav a:hover{color:var(--blue)}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:4px;padding:10px;font-size:12px}.skip-link{position:fixed;left:15px;top:-90px;z-index:100;padding:10px;background:var(--blue);color:#fff}.skip-link:focus{top:10px}.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;width:700px;height:700px;right:-350px;top:-300px;background:radial-gradient(circle,#315cd455,transparent 65%);pointer-events:none}.hero-inner{display:grid;grid-template-columns:1fr 1.03fr;align-items:center;gap:64px;padding-block:65px}.hero .eyebrow{color:#aabfff}.hero h1{font-size:clamp(56px,6.9vw,96px);margin-bottom:24px;line-height:.99;letter-spacing:-.065em}.hero h1 span{color:#aac0ff}.hero .tagline{font-size:18px;color:#d2dbed;margin-bottom:12px}.hero .lede{font-size:15px;color:#b8c6dd;max-width:440px}.hero .actions{margin-top:28px}.hero-note{margin-top:30px;font-size:11px;letter-spacing:.4px;color:#c3cee0}.hero-media{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative}.hero-shot{position:relative;min-width:0;margin:0;border-radius:5px;overflow:hidden}.hero-shot.large{grid-column:1/-1}.hero-shot img{height:175px;width:100%;object-fit:cover}.hero-shot.large img{height:270px}.hero-shot figcaption{position:absolute;left:14px;bottom:12px;font-size:10px;letter-spacing:1px;color:white;background:#101b30dc;padding:5px 10px}.hero-stamp{position:absolute;right:-14px;top:230px;background:#fff;color:var(--ink);padding:17px 23px;box-shadow:0 6px 30px #0002;z-index:2;font-size:12px;font-weight:700;border-radius:4px}.hero-stamp b{display:block;font-size:27px;line-height:1.2}.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-block:23px;font-size:12px;font-weight:700}.trust-row span:before{content:'✓';color:var(--blue);margin-right:10px}.intro-copy h2{font-size:40px}.intro-mark{display:flex;align-items:center;gap:20px}.intro-mark img{width:110px;border-radius:50%}.intro-mark strong{display:block}.intro-mark p{font-size:13px;color:var(--muted);max-width:300px;margin:5px 0}.light-section{background:var(--light)}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #15234312}.service-card img{width:100%;height:220px;object-fit:cover}.service-card .copy{padding:25px}.service-card .num{font-size:10px;letter-spacing:2px;color:var(--blue)}.service-card h3{font-size:24px;margin:12px 0}.service-card p{color:var(--muted);font-size:14px;line-height:1.55;margin-bottom:15px}.card-link{color:var(--blue);font-size:12px;font-weight:700}.cabinet-feature{display:grid;grid-template-columns:.9fr 1.1fr;background:#fff;border:1px solid var(--line);margin-top:28px;border-radius:var(--radius);overflow:hidden}.cabinet-feature img{height:100%;max-height:375px;width:100%;object-fit:cover}.cabinet-feature .copy{padding:40px}.cabinet-feature h3{font-size:35px}.dark-section{background:var(--navy);color:#fff;position:relative}.dark-section .eyebrow{color:#9db6ff}.dark-section .lede,.dark-section .muted,.dark-section .section-head p{color:#bcc9dd}.reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 45px;margin-top:45px}.reason{border-top:1px solid #526079;padding-top:22px}.reason span{color:#99b4ff;font-size:11px}.reason h3{font-size:23px;margin:15px 0}.reason p{font-size:14px;color:#b9c6db;margin-bottom:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 28px}.project-card{border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden}.project-title{padding:23px 25px 18px}.project-title .eyebrow{margin-bottom:8px;font-size:9px}.project-title h3{font-size:23px;margin:0}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-inline:8px}.stage{margin:0;min-width:0;position:relative;background:#e9edf3}.stage-main{display:block;position:relative}.stage img.stage-photo{width:100%;height:290px;object-fit:contain}.stage figcaption{position:absolute;top:12px;left:12px;background:#fff;padding:5px 10px;font-size:9px;font-weight:700;letter-spacing:1px;pointer-events:none}.stage.after figcaption{background:var(--blue);color:white}.photo-thumbs{display:flex;flex-wrap:wrap;gap:6px;padding:8px}.photo-thumb{border:2px solid transparent;padding:0;background:#fff;cursor:pointer}.photo-thumb[aria-pressed=true]{border-color:var(--blue)}.photo-thumb img{width:45px;height:40px;object-fit:cover}.project-caption{padding:15px 25px 20px;color:var(--muted);font-size:12px}.project-caption p{margin:0}.view-gallery{margin-top:30px;display:flex;gap:15px;flex-wrap:wrap}.portfolio-links{display:grid;grid-template-columns:1fr 1fr;gap:28px}.portfolio-link{position:relative;color:white;text-decoration:none;border-radius:7px;overflow:hidden}.portfolio-link img{width:100%;height:390px;object-fit:cover}.portfolio-link:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#0d172ce8)}.portfolio-link .copy{position:absolute;left:30px;right:30px;bottom:22px;z-index:1}.portfolio-link h2{font-size:36px;margin:12px 0}.portfolio-link .eyebrow{color:#fff;margin:0}.calc-teaser{background:linear-gradient(120deg,#eaf0ff,#f7f9fe);border-block:1px solid #dce5ff}.calc-links{display:grid;grid-template-columns:1fr 1fr;gap:13px}.calc-link{text-decoration:none;background:#fff;border:1px solid #d4def3;border-radius:5px;padding:22px;font-size:15px;font-weight:700;display:flex;justify-content:space-between;gap:15px}.calc-link span{color:var(--blue)}.calc-link:hover{border-color:var(--blue)}.partner-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.partner{background:#fff;border:1px solid var(--line);padding:27px;border-radius:5px;text-align:center;text-decoration:none}.partner img{height:95px;width:100%;object-fit:contain;background:#fff}.partner strong{display:block;margin-top:20px;font-size:13px}.partner p{font-size:12px;color:var(--muted);margin:6px 0 0}.community-preview{display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:14px;margin-top:35px}.community-preview figure{margin:0}.community-preview img{height:265px;width:100%;object-fit:cover;border-radius:5px}.community-preview figcaption{font-size:11px;color:var(--muted);margin-top:9px}.support-band{padding:35px;background:#fff;border:1px solid var(--line);border-radius:6px;display:grid;grid-template-columns:1.1fr 1fr .55fr;align-items:center;gap:35px;margin-top:45px}.support-band img{height:120px;width:100%;object-fit:contain}.support-band h3{font-size:28px;margin-bottom:12px}.support-band p{font-size:13px;color:var(--muted);margin-bottom:0}.reviews-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:5px 0 20px}.review{margin:0;border:1px solid var(--line);border-radius:6px;padding:28px;scroll-snap-align:start;background:#fff}.stars{color:#b76d00;letter-spacing:3px;font-size:15px}.review blockquote{margin:18px 0;color:var(--ink);font-size:14px;line-height:1.7}.review figcaption{font-size:12px;font-weight:700}.review-note{font-size:11px;color:var(--muted);margin-top:15px}.chips{display:flex;gap:10px;flex-wrap:wrap}.chip{text-decoration:none;border:1px solid var(--line);padding:9px 17px;border-radius:25px;font-size:13px;background:#fff}.chip:hover{border-color:var(--blue);color:var(--blue)}.resource img{height:230px;width:100%;object-fit:cover;border-radius:5px;margin-bottom:22px}.resource h3{font-size:25px}.resource p{font-size:14px;color:var(--muted)}.resource a{text-decoration:none}.social-links{display:flex;flex-wrap:wrap;gap:10px}.social-links a{text-decoration:none;border:1px solid #72819b;border-radius:4px;padding:9px 15px;font-size:12px}.social-links a:hover{background:#2458ec;color:#fff}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list summary{cursor:pointer;font-weight:600;font-size:16px}.faq-list p{margin:15px 0 0;color:var(--muted);font-size:14px;max-width:850px}.contact-section{background:#eaf0ff}.contact-section .split{align-items:start}.contact-form{border:1px solid #d2def5;background:white;padding:30px;border-radius:7px}.contact-form h3{margin-bottom:12px}.contact-form>p{font-size:12px;color:var(--muted)}label{display:block;font-size:12px;font-weight:600;margin-bottom:16px}input,select,textarea{display:block;margin-top:6px;border:1px solid #b8c4d6;background:#fff;border-radius:4px;width:100%;padding:11px;color:var(--ink);font-size:14px}textarea{resize:vertical;min-height:95px}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-status{font-size:12px;margin-top:15px}.contact-details{list-style:none;padding:0;margin:25px 0}.contact-details li{padding:8px 0;font-size:15px}.contact-details a{font-weight:700}.footer{background:#0d1627;color:#c5d0e3;padding-block:60px 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}.footer .brand{color:#fff;margin-bottom:20px}.footer p{font-size:12px;max-width:280px}.footer h3{font-size:13px;color:#fff;letter-spacing:0;margin:9px 0 20px}.footer ul{list-style:none;margin:0;padding:0;font-size:12px}.footer li{margin:8px 0}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #39465b;padding-top:25px;margin-top:40px;display:flex;justify-content:space-between;gap:20px;font-size:10px}.google-toggle{position:fixed;left:18px;bottom:18px;z-index:50;background:#fff;border:1px solid #d5dfeb;box-shadow:0 5px 30px #09132926;display:flex;align-items:center;gap:11px;padding:11px 17px;border-radius:40px;color:var(--ink);font-size:12px;font-weight:700}.google-toggle .g{color:#2458ec;font-size:25px;font-weight:700;line-height:1}.google-toggle small{display:block;color:#946000;letter-spacing:1px;font-size:10px;line-height:1.3}.google-panel{position:fixed;left:18px;bottom:85px;width:350px;max-width:calc(100vw - 36px);z-index:51;background:#fff;border:1px solid var(--line);padding:25px;border-radius:10px;box-shadow:0 15px 55px #09132933}.google-panel h3{font-size:24px;margin-bottom:12px}.google-panel p{font-size:12px;color:var(--muted)}.google-panel .close{position:absolute;right:12px;top:10px;background:none;border:0;font-size:20px}.google-panel blockquote{font-size:13px;border-left:3px solid var(--blue);padding-left:14px;margin:15px 0}.google-panel cite{display:block;font-size:11px;margin-top:7px}.google-panel .actions{gap:10px}.google-panel .button{font-size:11px;padding:11px;min-height:40px}.mobile-call{display:none;position:fixed;right:16px;bottom:18px;z-index:50;box-shadow:0 5px 20px #09132930}.page-intro{padding:60px 0 45px;background:linear-gradient(115deg,#f1f5ff,#fff);border-bottom:1px solid var(--line)}.breadcrumb{font-size:11px;color:var(--muted);margin-bottom:25px}.page-intro h1{max-width:1000px;margin-bottom:22px}.page-intro p{max-width:750px}.page-intro .eyebrow{margin-bottom:16px}.service-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:60px}.service-hero h1{font-size:64px}.service-hero img{height:480px;width:100%;object-fit:cover;border-radius:6px}.service-hero .lede{font-size:16px}.bullet-list{padding-left:20px}.bullet-list li{padding-block:8px;font-size:15px}.process-list{list-style:none;counter-reset:steps;margin:0;padding:0}.process-list li{counter-increment:steps;border-top:1px solid var(--line);padding:22px 0 22px 50px;position:relative}.process-list li:before{content:'0' counter(steps);position:absolute;left:0;color:var(--blue);font-size:12px;font-weight:700}.content-col{max-width:850px}.content-col p{color:var(--muted)}.content-col h2{font-size:35px;margin-top:40px}.owner-img{max-height:550px;object-fit:contain;background:#f2f4f8;width:100%;border-radius:6px}.affiliations{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.affiliation{border:1px solid var(--line);border-radius:5px;padding:25px;text-decoration:none;background:#fff}.affiliation img{height:90px;width:100%;object-fit:contain;margin-bottom:20px}.affiliation strong{display:block;font-size:14px}.affiliation small{display:block;font-size:12px;color:var(--muted);margin-top:7px}.vendor-proof{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.vendor-proof img{width:100%;height:220px;object-fit:contain;background:white;border:1px solid var(--line);padding:15px}.community-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.community-grid figure{margin:0}.community-grid img{height:300px;width:100%;object-fit:cover;border-radius:5px}.community-grid figcaption{font-size:12px;color:var(--muted);margin-top:10px}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.filter{border:1px solid var(--line);border-radius:30px;padding:10px 19px;font-size:12px;background:#fff;color:var(--ink)}.filter[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}.gallery-count{font-size:12px;color:var(--muted);margin-bottom:25px}.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.calculator-card{border:1px solid var(--line);padding:32px;border-radius:7px;background:white;scroll-margin-top:120px}.calculator-card .eyebrow{margin-bottom:12px}.calculator-card h2{font-size:32px;margin-bottom:20px}.calculator-card .field-help{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:5px}.calc-result{background:var(--navy);color:white;padding:23px;border-radius:5px;margin-top:25px}.calc-result .amount{font-size:32px;font-weight:700;letter-spacing:-1px;margin:5px 0 10px}.calc-result p{font-size:12px;color:#c4d0e4;margin:0 0 10px}.calc-result .button{margin-top:8px;font-size:12px}.calc-error{color:#a52a2a;font-size:12px}.calc-jumps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.calc-jumps a{background:#fff;border:1px solid var(--line);padding:17px;text-decoration:none;font-size:12px;font-weight:700;border-radius:5px}.calc-jumps a:hover{border-color:var(--blue)}.help-box{padding:30px;border:1px solid var(--line);border-radius:5px;background:var(--light)}.help-box h3{font-size:25px}.help-box p{font-size:14px;color:var(--muted)}.article{max-width:850px}.article h2{font-size:30px;margin:35px 0 15px}.article p{color:var(--muted)}.article img{width:100%;max-height:460px;object-fit:cover;border-radius:6px;margin-bottom:35px}.video-wrap{background:#0d1627;border-radius:7px;overflow:hidden;max-width:600px;margin:auto}.video-wrap iframe{display:block;width:100%;height:650px;border:0}.equipment-row{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:55px;margin-bottom:65px}.equipment-row img{width:100%;max-height:350px;object-fit:contain;border:1px solid var(--line);border-radius:5px}.equipment-row h2{font-size:32px}.equipment-row p{font-size:14px;color:var(--muted)}.equipment-row ul{font-size:14px;color:var(--muted);padding-left:20px}.lightbox{border:0;border-radius:7px;padding:15px;max-width:95vw;max-height:95vh;background:#0d1627;color:white}.lightbox::backdrop{background:#061020e8}.lightbox img{max-height:77vh;max-width:88vw;width:auto;margin:auto;object-fit:contain}.lightbox p{font-size:12px;margin:13px 45px 0 5px}.lightbox button{position:absolute;right:12px;top:10px;background:#fff;color:#111827;border:0;border-radius:50%;width:34px;height:34px;font-size:22px}.lightbox-header{height:35px}.no-js{background:#fff2cd;padding:15px;font-size:13px}.no-js a{font-weight:bold}.city-services{margin-top:30px}.section:target{scroll-margin-top:110px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(min-width:1500px){.hero-inner{gap:90px;padding-block:80px}.hero-shot.large img{height:310px}.hero-shot img{height:200px}}@media(max-width:1100px){.main-nav{display:none}.menu-toggle{display:block}.main-nav.is-open{display:flex;position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #09132915;flex-direction:column;gap:0;padding:15px 5%}.main-nav.is-open a{padding:13px}.nav-row{gap:15px}.hero-inner{gap:35px}.hero h1{font-size:76px}.hero-stamp{right:-5px}.service-card img{height:190px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div:last-child ul{display:flex;flex-wrap:wrap;gap:15px}.support-band{grid-template-columns:1fr 1fr}.support-band img:last-child{display:none}.affiliations{grid-template-columns:1fr 1fr}}@media(max-width:800px){.section{padding-block:60px}.section-sm{padding-block:45px}.topbar span:last-child{display:none}.hero-inner{grid-template-columns:1fr;padding-block:45px;gap:35px}.hero h1{font-size:76px}.hero .lede{max-width:600px}.hero-media{max-width:650px}.hero-shot.large img{height:290px}.hero-stamp{top:250px;right:10px}.split{grid-template-columns:1fr;gap:35px}.grid3{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head p{margin-top:20px;max-width:600px}.reasons{grid-template-columns:1fr 1fr;gap:30px}.cabinet-feature{grid-template-columns:1fr}.cabinet-feature img{height:280px}.project-grid{grid-template-columns:1fr}.project-pair .stage-photo{height:370px}.community-preview{grid-template-columns:1fr 1fr}.community-preview figure:first-child{grid-column:1/-1}.community-preview img{height:240px}.reviews-track{grid-auto-columns:75%}.partner-row{gap:12px}.partner{padding:20px 12px}.partner img{height:70px}.partner strong{font-size:12px}.service-hero{grid-template-columns:1fr;gap:30px}.service-hero h1{font-size:52px}.service-hero img{height:350px}.calc-grid{grid-template-columns:1fr}.calc-jumps{grid-template-columns:1fr 1fr}.community-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-grid>div:last-child ul{display:block}.footer-bottom{flex-direction:column;padding-bottom:65px}.mobile-call{display:inline-flex}.portfolio-links{grid-template-columns:1fr}.equipment-row{grid-template-columns:1fr;gap:25px}.video-wrap iframe{height:580px}}@media(max-width:500px){.wrap{width:90%}.topbar{font-size:9px;letter-spacing:.6px;padding:7px 5%}.brand img{width:49px;height:49px}.brand strong{font-size:21px}.brand small{font-size:6.5px}.nav-row>.button{font-size:11px;padding:10px 13px;min-height:42px}.nav-row{gap:10px}.menu-toggle{font-size:10px;padding:9px 8px}.hero h1{font-size:64px}.hero .tagline{font-size:16px}.hero .lede{font-size:14px}.hero-shot.large img{height:220px}.hero-shot img{height:145px}.hero-stamp{top:195px;padding:12px 15px}.hero-stamp b{font-size:22px}.hero-shot figcaption{left:8px;bottom:8px;font-size:8px;padding:4px 6px}.trust-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:10px}.trust-row span:before{margin-right:5px}.grid3,.grid2{grid-template-columns:1fr}.service-card img{height:245px}.cabinet-feature .copy{padding:27px}.reasons{grid-template-columns:1fr}.project-pair .stage-photo{height:245px}.project-title{padding:20px}.project-title h3{font-size:21px}.project-caption{padding:13px 20px 18px}.stage figcaption{top:8px;left:8px;font-size:8px;padding:4px 6px}.photo-thumb img{width:35px;height:32px}.calc-links{grid-template-columns:1fr}.partner-row{grid-template-columns:1fr}.partner img{height:95px}.partner{padding:25px}.partner strong{font-size:14px}.support-band{grid-template-columns:1fr;padding:27px;gap:20px}.support-band img{height:100px}.reviews-track{grid-auto-columns:90%}.community-grid{grid-template-columns:1fr}.community-grid img{height:340px}.affiliations{grid-template-columns:1fr}.input-row{grid-template-columns:1fr;gap:0}.contact-form{padding:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div:last-child ul{display:flex;gap:18px}.google-toggle{left:12px;bottom:15px;padding:10px 13px;font-size:11px}.google-toggle .g{font-size:23px}.mobile-call{right:12px;bottom:15px;padding:12px 15px;min-height:45px;font-size:12px}.google-panel{left:12px;bottom:78px}.calculator-card{padding:25px}.calc-result .amount{font-size:29px}.calc-jumps a{font-size:11px;padding:15px}.vendor-proof{grid-template-columns:1fr}.video-wrap iframe{height:470px}.lightbox img{max-width:85vw}.intro-mark img{width:85px}.intro-mark{gap:15px}}

/* Service transformations, local landing pages and the permanent phone CTA. */
.service-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#e9edf3;overflow:hidden;width:100%}.service-photo-pair figure{position:relative;margin:0;min-width:0}.service-photo-pair img{height:210px;width:100%;object-fit:contain;background:#e9edf3}.service-photo-pair figcaption{position:absolute;left:9px;top:10px;background:#fff;color:var(--ink);font-size:9px;letter-spacing:.8px;font-weight:700;padding:5px 9px;border-radius:2px}.service-photo-pair figure:last-child figcaption{background:var(--blue);color:#fff}.service-photo-pair.large{border-radius:6px}.service-photo-pair.large img{height:460px;object-fit:contain}.cabinet-feature .service-photo-pair img{height:320px;width:100%;object-fit:contain}.support-band p{margin-bottom:13px;line-height:1.7}.support-link{display:inline-block;font-size:12px;color:var(--blue);font-weight:700;margin-top:7px}.location-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.location-card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:6px;padding:25px;transition:border-color .15s}.location-card:hover{border-color:var(--blue)}.location-card .eyebrow{margin-bottom:14px;font-size:10px}.location-card h3{font-size:23px;margin-bottom:13px}.location-card p{font-size:13px;color:var(--muted);line-height:1.6}.latest-project-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.featured-video{background:var(--navy);border-radius:7px;overflow:hidden;max-width:470px;width:100%}.featured-video iframe{display:block;width:100%;height:550px;border:0}.latest-steps{padding-left:20px;font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:26px}.latest-steps li{padding:5px 0}.faq-home-topics{margin:25px 0}.faq-group{padding-top:55px;scroll-margin-top:110px}.faq-group h2{font-size:32px}.faq-nav{padding-bottom:10px}.faq-nav .chip{font-size:12px}.local-page-nav{margin-top:28px}.local-intro{max-width:1100px}.local-intro h2{font-size:38px;max-width:800px}.local-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.local-service-detail{background:#fff;border:1px solid var(--line);border-radius:7px;padding:30px}.local-service-detail .eyebrow{font-size:9px}.local-service-detail h3{font-size:26px}.local-service-detail p,.local-service-detail li{font-size:14px;color:var(--muted)}.local-service-detail ul{padding-left:18px;margin-bottom:22px}.local-service-detail li{padding-bottom:5px}.call-bubble{display:inline-flex;align-items:center;gap:10px;position:fixed;right:18px;bottom:18px;z-index:50;background:var(--blue);color:#fff;text-decoration:none;border:1px solid #1d4fd9;border-radius:40px;box-shadow:0 5px 30px #09132926;padding:12px 19px;min-height:55px;font-size:13px;font-weight:700;line-height:1.3}.call-bubble:hover{background:#1645c3}.call-bubble svg{width:24px;height:24px;flex:none}.call-bubble small{display:block;font-size:10px;font-weight:400;margin-top:3px;letter-spacing:.35px}.footer{padding-bottom:85px}@media(max-width:900px){.location-grid{grid-template-columns:1fr 1fr}.latest-project-feature{gap:35px}.featured-video iframe{height:490px}}@media(max-width:800px){.service-photo-pair.large img{height:350px}.latest-project-feature{grid-template-columns:1fr}.featured-video{max-width:550px;margin:auto}.featured-video iframe{height:560px}.local-service-grid{grid-template-columns:1fr}.call-bubble{display:inline-flex}}@media(max-width:500px){.service-photo-pair img{height:230px}.service-photo-pair.large img{height:300px}.cabinet-feature .service-photo-pair img{height:260px}.service-photo-pair figcaption{left:7px;top:8px;font-size:8px;padding:4px 7px}.location-grid{grid-template-columns:1fr}.featured-video iframe{height:460px}.call-bubble{right:12px;bottom:max(15px,env(safe-area-inset-bottom));padding:10px 13px;gap:8px;font-size:11px;min-height:51px}.call-bubble svg{width:22px;height:22px}.call-bubble small{font-size:9px;letter-spacing:.1px}.google-toggle{left:12px;bottom:max(15px,env(safe-area-inset-bottom));padding:10px 12px;font-size:10px;gap:8px;min-height:51px}.google-toggle .g{font-size:22px}.google-toggle small{font-size:9px}.local-intro h2{font-size:32px}.local-service-detail{padding:25px}}

/* Service and city navigation works with keyboard, touch, and native details. */
.main-nav{align-items:center;gap:18px}.nav-dropdown{position:relative}.nav-dropdown>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px;padding:12px 0;white-space:nowrap}.nav-dropdown>summary::-webkit-details-marker{display:none}.nav-dropdown>summary:after{content:'⌄';font-size:14px}.nav-dropdown[open]>summary{color:var(--blue)}.nav-submenu{position:absolute;top:100%;left:-18px;min-width:225px;max-height:70vh;overflow:auto;padding:9px;background:white;border:1px solid var(--line);border-radius:6px;box-shadow:0 14px 35px #09132920}.main-nav .nav-submenu a{display:block;padding:11px 12px;border-radius:3px;line-height:1.4}.main-nav .nav-submenu a:hover,.main-nav .nav-submenu a:focus-visible{background:var(--light)}.hero .hero-service-title{font-size:clamp(32px,4.4vw,64px);line-height:1.08;letter-spacing:-.045em}.hero .hero-areas{font-size:13px;line-height:1.8;color:#d2dbed;max-width:470px}.hero-areas a{color:#d2dbed;text-decoration-color:#849dcc}.hero-areas a:hover{color:white}
@media(max-width:1200px){.main-nav{display:none}.menu-toggle{display:block}.main-nav.is-open{display:flex;position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #09132915;flex-direction:column;align-items:stretch;gap:0;padding:15px 5%;max-height:calc(100dvh - 105px);overflow:auto}.main-nav.is-open>a,.main-nav.is-open summary{padding:13px}.nav-submenu{position:static;min-width:0;max-height:none;box-shadow:none;margin:0 13px 10px;padding:6px;background:var(--light);border-radius:4px}.main-nav .nav-submenu a{padding:12px}.nav-dropdown>summary{justify-content:space-between}}
@media(max-width:800px){.hero .hero-service-title{font-size:clamp(32px,8.5vw,64px)}}
/* Dedicated geographic landing pages */
.city-hero{background:#10243f;color:white;padding:64px 0 58px}.city-hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:55px;align-items:center}.city-hero .breadcrumb,.city-hero .breadcrumb a{color:#c9d8ec}.city-hero .eyebrow{color:#9dc9ff}.city-hero h1{font-size:clamp(40px,5.3vw,76px);line-height:1.04;margin:24px 0}.city-hero-copy>p{color:#d1dced;max-width:580px}.city-hero-copy .city-tagline{font-size:24px;line-height:1.4;color:white}.city-hero .outline{color:white;border-color:#98a9c0}.city-hero .city-assurance{font-size:13px;margin-top:22px}.city-hero-photo{margin:0;position:relative}.city-hero-photo img{width:100%;height:510px;object-fit:cover;border-radius:4px}.city-hero-photo figcaption{padding:15px 0 0;font-size:12px;letter-spacing:.04em;color:#cedbed}.city-jumps{background:#edf3fa;border-bottom:1px solid #dce5ef;padding:15px 0}.city-jumps .local-page-nav{margin:0}.city-credentials{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-top:35px}.city-credentials li{margin:12px 0}.city-photo-collection{padding:26px 0;border-top:1px solid #cdd9e5;margin:24px 0}.city-collection-title{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px;color:#53657b;font-size:13px}.city-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.city-photo-grid a{display:block;background:#e1e8ef;border-radius:3px;overflow:hidden}.city-photo-grid img{width:100%;height:330px;object-fit:contain;transition:transform .2s}.city-photo-grid a:hover img{transform:scale(1.025)}.city-more-photos{border:0;margin-top:15px}.city-more-photos summary{padding:15px 0;color:#165ca7;font-weight:700;cursor:pointer}.city-more-photos .city-photo-grid{padding-top:12px}.city-nearby{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.city-nearby h2{font-size:30px}.city-nearby .chips{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:850px){.city-hero-grid{grid-template-columns:1fr;gap:30px}.city-hero{padding:38px 0}.city-hero-photo img{height:360px}.city-hero-copy>p{max-width:none}.city-credentials,.city-nearby{grid-template-columns:1fr;gap:20px}.city-photo-grid img{height:250px}}
@media(max-width:540px){.city-hero h1{font-size:43px}.city-hero-photo img{height:280px}.city-hero-copy .city-tagline{font-size:21px}.city-photo-grid{gap:9px}.city-photo-grid img{height:190px}.city-collection-title{font-size:12px}.city-jumps .chips{gap:7px}.city-jumps .chip{font-size:12px;padding:9px 12px}}

/* Real service products, compact on cards and expanded on service pages. */
.service-products{border-top:1px solid #dce5ef;padding:16px 18px 20px;background:#fff}.service-products-label{display:block;color:#58687b;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;margin-bottom:11px}.service-product-items{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}.service-product-mini{flex:1 1 65px;max-width:130px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;font-size:10px;font-weight:650;line-height:1.35;color:#233954}.service-card .service-product-mini img{width:100%;height:82px;object-fit:contain;background:#fff;border-radius:0}.product-section{border-top:1px solid #dae3ed;background:#f7faff}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px}.product-tile{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #dce6f0;padding:22px;text-decoration:none;border-radius:5px}.product-tile>img{width:100px;height:150px;object-fit:contain}.product-tile h3{font-size:19px;margin:9px 0}.product-tile p{font-size:13px;color:#52647b;margin-bottom:10px}.product-tile .eyebrow{font-size:9px}.product-tile .card-link{font-size:12px}.product-tile:hover{border-color:#2d6bad}
/* Different city narratives within the established MTAC visual identity. */
.city-landing .city-hero h1{font-size:clamp(36px,4vw,58px);line-height:1.12}.city-layout-exterior .city-hero-grid{grid-template-columns:1fr 1.1fr}.city-layout-exterior .city-hero-photo{order:-1}.city-layout-wood .city-hero,.city-layout-clean .city-hero{background:#f1f6fc;color:#142941;border-bottom:1px solid #dbe5f0}.city-layout-wood .city-hero-copy>p,.city-layout-clean .city-hero-copy>p{color:#425a76}.city-layout-wood .city-hero .breadcrumb,.city-layout-wood .city-hero .breadcrumb a,.city-layout-clean .city-hero .breadcrumb,.city-layout-clean .city-hero .breadcrumb a{color:#526a83}.city-layout-wood .city-hero .eyebrow,.city-layout-clean .city-hero .eyebrow{color:#2465a8}.city-layout-wood .city-hero .outline,.city-layout-clean .city-hero .outline{color:#173c68;border-color:#8da5bf}.city-layout-wood .city-hero-photo figcaption,.city-layout-clean .city-hero-photo figcaption{color:#536b84}.city-layout-wood .city-hero-photo img{height:430px}.city-layout-business .city-hero-grid{grid-template-columns:1.2fr 1fr}.city-layout-business .city-hero-photo img{height:430px}.city-layout-detail .city-hero-grid{grid-template-columns:1fr 1.2fr}.city-layout-detail .city-hero-photo img{height:560px}.city-layout-clean .city-hero-photo{order:-1}.city-collection-title h3{font-size:25px;line-height:1.3;margin:9px 0 0;color:#182d46}.city-photo-grid figure{margin:0;position:relative}.city-photo-grid figcaption{position:absolute;bottom:12px;left:12px;padding:6px 13px;background:#10243f;color:white;font-size:12px;border-radius:3px}.city-project-views{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}.city-project-views a{display:block;border:1px solid #d8e1ec;background:#fff;border-radius:3px;overflow:hidden}.city-project-views img{width:100%;height:140px;object-fit:contain}.city-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.city-review-grid .review{min-width:0;max-width:none;margin:0;display:flex;flex-direction:column;align-items:flex-start}.city-review-grid blockquote{flex:1}.city-review-grid .card-link{margin-top:17px}.city-reasons{grid-template-columns:repeat(3,1fr)}.city-warranty{color:#c5d8ee;font-size:14px;margin:30px 0}.city-inline-areas{padding-top:30px;padding-bottom:30px;color:#52657d;font-size:14px}.city-inline-areas a{color:#1c5f9e}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-tile{padding:17px;gap:10px}.product-tile>img{width:80px;height:130px}.city-landing .city-hero-grid{grid-template-columns:1fr 1fr;gap:25px}.city-landing .city-hero-photo img{height:390px}.city-project-views{grid-template-columns:repeat(4,minmax(0,1fr))}.city-reasons{grid-template-columns:1fr}}
@media(max-width:700px){.city-landing .city-hero-grid{grid-template-columns:1fr}.city-landing .city-hero-photo{order:0}.city-landing .city-hero-photo img{height:320px}.city-landing .city-hero h1{font-size:38px}.city-review-grid{grid-template-columns:1fr}.city-project-views{grid-template-columns:repeat(3,minmax(0,1fr))}.city-project-views img{height:115px}.city-collection-title h3{font-size:22px}.product-grid{grid-template-columns:1fr}.product-tile>img{width:95px;height:140px}.service-card .service-product-mini img{height:75px}.city-photo-grid img{height:235px}}
@media(max-width:430px){.city-project-views{grid-template-columns:repeat(2,minmax(0,1fr))}.city-photo-grid img{height:185px}.city-photo-grid figcaption{font-size:10px;padding:4px 8px;left:7px;bottom:7px}.city-landing .city-hero h1{font-size:34px}.service-product-mini{flex-basis:58px;font-size:10px}}

/* Product photographs sit directly below the cabinet transformation. */
.cabinet-products{margin-top:32px}.cabinet-products>h3{font-size:25px;margin-bottom:12px}.cabinet-products>p{font-size:14px}.cabinet-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.cabinet-product{display:flex;flex-direction:column;align-items:center;text-align:center;padding:19px 15px;background:#fff;border:1px solid var(--line);border-radius:7px;text-decoration:none;min-width:0}.cabinet-product:hover{border-color:var(--blue)}.cabinet-product>img{height:155px;width:100%;object-fit:contain;margin-bottom:15px}.cabinet-product .eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:8px}.cabinet-product h4{font-size:17px;line-height:1.35;letter-spacing:-.02em;margin:0 0 14px}.cabinet-product .card-link{margin-top:auto;font-size:11px}@media(max-width:700px){.cabinet-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cabinet-product{padding:16px 10px}.cabinet-product>img{height:130px}.cabinet-product h4{font-size:15px}}

.city-project-note{max-width:850px;color:var(--muted);font-size:15px;line-height:1.75;margin-bottom:24px}

/* Natural photo proportions keep people, certificates, and event details visible. */
.community-gallery-hint{font-size:14px;color:var(--muted);margin:0 0 24px;max-width:680px}
.community-photo-gallery{columns:3;column-gap:20px}
.community-photo{display:inline-block;width:100%;margin:0 0 20px;break-inside:avoid;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;vertical-align:top}
.community-photo-link{display:block;position:relative;background:#e9edf3;text-decoration:none}
.community-photo-link img{width:100%;height:auto;max-height:none;object-fit:contain}
.community-photo-enlarge{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#101b30e6;color:#fff;font-size:18px;transition:background .15s}
.community-photo-link:hover .community-photo-enlarge{background:var(--blue)}
.community-photo figcaption{padding:13px 15px;font-size:12px;color:var(--muted);line-height:1.5}
@media(max-width:900px){.community-photo-gallery{columns:2;column-gap:16px}.community-photo{margin-bottom:16px}}
@media(max-width:480px){.community-photo-gallery{column-gap:12px}.community-photo{margin-bottom:12px}.community-photo figcaption{padding:10px;font-size:11px}.community-photo-enlarge{width:27px;height:27px;right:7px;bottom:7px}}
.spam-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.calc-disclaimer{font-size:12px;line-height:1.6;margin:16px 0;color:inherit}
.topbar{word-spacing:normal;line-height:1.6}
.topbar span{display:inline-block;white-space:normal}
.google-toggle .g{display:inline-flex;align-items:center;justify-content:center;flex:none}
.field-error{color:#a32222;font-size:14px;line-height:1.5;margin:5px 0 12px}
.form-status[data-state="error"]{color:#a32222;border-left:3px solid #a32222;padding-left:12px}
.form-status[data-state="success"]{color:#153e75;border-left:3px solid #2458ec;padding-left:12px}
.photo-contact{font-size:14px;line-height:1.6}
.calc-contact-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px}
.calc-contact-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
.calc-request:disabled{opacity:.65;cursor:not-allowed}
.self-hosted-video video{display:block;width:100%;height:auto;max-height:650px}
.latest-project-feature:not(:has(video)){display:block;max-width:900px}
@media(max-width:500px){.main-nav a,.nav-dropdown summary,.faq-list summary,.faq-nav a,.calc-jumps a,.filter,.lightbox button{min-height:44px}.photo-thumb{min-width:44px;min-height:44px}.menu-toggle{min-width:44px;min-height:44px}.footer a{display:inline-flex;align-items:center;min-height:44px}.calc-request{white-space:normal;width:100%}}
@media(max-width:500px){.chip,.social-links a,.card-link{display:inline-flex;align-items:center;min-height:44px}.google-panel .close,.lightbox button{min-width:44px;min-height:44px}}
