:root{--blue:#153ee8;--navy:#101d3c;--orange:#ff6a1a;--ink:#14213c;--muted:#44516a;--line:#dce2ee;--soft:#f2f5fb;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font:400 17px/1.65 Arial,Helvetica,sans-serif;background:var(--white)}a{color:inherit;text-decoration:none}p{margin:0 0 1.3rem}h1,h2,h3{font-weight:750;line-height:1.08;letter-spacing:-.045em;margin:0 0 1.3rem}h1{font-size:clamp(2.7rem,6.3vw,5.6rem)}h2{font-size:clamp(2rem,3.8vw,3.25rem)}h3{font-size:1.45rem;letter-spacing:-.025em;line-height:1.2}img{max-width:100%;height:auto;display:block}.container{width:min(1220px,calc(100% - 80px));margin-inline:auto}.topbar{background:var(--navy);color:white;font-size:14px;padding:9px 0}.topbar .container{display:flex;justify-content:space-between;gap:20px}.topbar a{font-weight:700}.site-header{position:sticky;top:0;background:white;z-index:20;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:20px}.brand{display:flex;align-items:center;gap:8px;font-weight:900;font-size:23px;letter-spacing:-.045em;line-height:1.05}.brand img{width:78px;height:65px;object-fit:contain;background:var(--navy);border-radius:8px}.brand small{display:block;font-size:13px;letter-spacing:.12em;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:27px;font-size:15px;font-weight:700}.site-header nav>a:not(.button){padding:12px 0}.site-header nav a[aria-current]:not(.button){color:var(--blue)}.button{display:inline-flex;justify-content:center;align-items:center;padding:15px 23px;border-radius:5px;background:var(--blue);color:white;font-size:16px;font-weight:700;line-height:1.3;min-height:52px;text-align:center;transition:background .18s,transform .18s;box-shadow:0 6px 18px #153ee81a}.button:hover{background:#0f2cb0;transform:translateY(-2px)}.button-small{font-size:14px;min-height:44px;padding:13px 18px}.button-light{background:white;color:var(--navy);box-shadow:none}.button-light:hover{background:#eaf0ff;color:var(--navy)}.text-link{display:inline-block;font-weight:700;color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.menu-toggle{display:none;min-height:44px;padding:10px 15px;border:1px solid var(--line);background:white;border-radius:5px;color:var(--ink);font:700 16px Arial}.eyebrow{text-transform:uppercase;font-size:13px;font-weight:800;letter-spacing:.15em;color:var(--blue);margin-bottom:23px;line-height:1.5}.hero{padding:64px 0 76px;background:linear-gradient(130deg,#fff 55%,#f1f4fc)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.hero h1{margin-bottom:25px}.hero h1 span{color:var(--blue)}.lead{font-size:20px;line-height:1.6;color:var(--muted);max-width:670px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:30px 0 14px}.hero-actions .text-link{font-size:17px}.small-print{font-size:14px;color:var(--muted);margin:0}.hero-photo{position:relative;margin:0;border-radius:8px;overflow:hidden;background:var(--navy);height:540px;box-shadow:22px 22px 0 #e8edf9}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#101d3cdd);pointer-events:none}.hero-photo figcaption{position:absolute;top:16px;left:16px;z-index:1;padding:5px 10px;background:#101d3ce8;color:white;font-size:12px;border-radius:3px}.photo-label{position:absolute;bottom:35px;left:35px;right:25px;color:white;z-index:1;border-left:4px solid var(--orange);padding-left:20px}.photo-label span{font-size:13px;text-transform:uppercase;letter-spacing:.13em}.photo-label strong{display:block;margin-top:10px;font-size:33px;line-height:1.1;letter-spacing:-.03em}.trust-strip{background:var(--navy);color:white}.trust-strip .container{display:flex;justify-content:space-between;gap:20px;padding-top:21px;padding-bottom:21px}.trust-strip span{font-size:15px;font-weight:700}.trust-strip span:before{content:"";display:inline-block;width:6px;height:6px;background:var(--orange);margin-right:12px;vertical-align:middle}.section{padding-top:88px;padding-bottom:88px}.section-intro{max-width:720px;margin-bottom:38px}.section-intro p:not(.eyebrow){color:var(--muted);max-width:610px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{border:1px solid var(--line);border-radius:6px;padding:28px 23px;display:flex;flex-direction:column;background:white;transition:border .2s,box-shadow .2s}.service-card:hover{border-color:var(--blue);box-shadow:0 12px 30px #14213c0c}.card-number{color:var(--blue);font-size:14px;font-weight:700;letter-spacing:.08em;margin-bottom:30px}.service-card p{font-size:16px;line-height:1.6;color:var(--muted)}.card-link{margin-top:auto;padding-top:22px;font-size:14px;font-weight:700;color:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contrast{background:var(--navy);color:white}.contrast .eyebrow{color:#ffad7c}.contrast .section-intro p:not(.eyebrow){color:#c4cee4}.feature-list>div{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid #ffffff26}.feature-list>div:last-child{margin-bottom:0;border:0}.feature-list p{color:#c4cee4;font-size:16px;margin-bottom:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.step-no{display:block;font-size:14px;font-weight:700;color:var(--blue);padding-top:18px;border-top:2px solid var(--line);margin-bottom:25px}.steps p{color:var(--muted);font-size:16px}.soft{background:var(--soft)}.area-panel{background:white;border:1px solid var(--line);padding:35px;border-radius:6px}.area-panel span{display:block;font-size:27px;font-weight:700;letter-spacing:-.03em;padding-bottom:13px;margin-bottom:13px;border-bottom:1px solid var(--line)}.area-panel p{font-size:14px;color:var(--muted);margin:20px 0 0}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:22px 22px 22px 0;font-weight:700;font-size:18px;line-height:1.4}.faq details p{font-size:16px;color:var(--muted);padding:0 18px 20px 0;margin-bottom:0}.cta{padding:65px 0;background:var(--blue);color:white}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:45px}.cta .eyebrow{color:#dbe2ff;margin-bottom:15px}.cta h2{font-size:clamp(2rem,3.4vw,3rem)}.cta p:last-child{margin:0;color:#e0e6ff}.cta .button{flex-shrink:0}footer{background:var(--navy);color:#c6cfe3;padding:60px 0 25px;font-size:15px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:55px}.footer-brand{display:block;font-size:27px;font-weight:900;line-height:1.1;color:white;margin-bottom:22px;letter-spacing:-.04em}.footer-brand span{font-size:15px;letter-spacing:.1em}.footer-grid h2{font-size:16px;color:white;letter-spacing:0;margin-bottom:20px}.footer-grid>div:not(:first-child)>a{display:block;margin:10px 0}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #ffffff20;margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;gap:25px;font-size:13px}.page-hero{background:var(--soft);padding:66px 0 70px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.7rem,5.5vw,4.7rem);max-width:950px}.page-hero .lead{max-width:790px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.feature-grid article{border-top:3px solid var(--orange);padding-top:26px}.feature-grid p,.prose p{color:var(--muted)}.prose a:not(.button){color:var(--blue);text-decoration:underline;text-underline-offset:3px}.prose h2{font-size:2rem}.prose ul{padding-left:20px;color:var(--muted)}.prose li{margin-bottom:12px}.readable{max-width:850px}.note{padding:35px;border:1px solid var(--line);border-radius:6px;background:white}.note h2{font-size:2rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact-grid>.prose{grid-column:1/-1;margin-top:25px;max-width:750px}.contact-card{padding:38px;border:1px solid var(--line);border-radius:6px}.contact-card h2{font-size:2rem}.contact-card p:not(.eyebrow){color:var(--muted)}.contact-phone{display:block;font-size:clamp(1.6rem,2.8vw,2.3rem);font-weight:700;color:var(--blue);margin-bottom:20px;letter-spacing:-.04em}.blue{background:var(--blue);color:white}.blue .eyebrow,.blue p:not(.eyebrow){color:#e0e6ff}.mobile-actions{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:20px;top:-100px;background:var(--blue);color:white;padding:12px;z-index:100}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #f77d34;outline-offset:5px}a,button,summary{-webkit-tap-highlight-color:transparent}
@media(max-width:1100px){.container{width:calc(100% - 48px)}.hero-grid{gap:35px}.hero-photo{height:490px;box-shadow:12px 12px 0 #e8edf9}.site-header nav{gap:17px}.brand{font-size:20px}.cards{grid-template-columns:repeat(2,1fr)}.split{gap:50px}.header-inner{min-height:85px}.hero h1{font-size:4.7rem}}
@media(max-width:900px){.menu-toggle{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:22px 24px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #14213c12}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px}.hero{padding:45px 0 60px}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:3.8rem}.hero-photo{height:420px}.hero-actions{gap:15px}.hero .lead{font-size:18px}.photo-label{left:22px;bottom:25px}.photo-label strong{font-size:27px}.split{gap:35px}.section{padding-top:65px;padding-bottom:65px}.steps{gap:30px}.feature-grid{gap:25px}.cta-inner{gap:25px}.footer-grid{gap:25px}}
@media(max-width:650px){.container{width:calc(100% - 36px)}.topbar .container{justify-content:center}.topbar span{display:none}.header-inner{min-height:78px}.brand{font-size:20px}.brand img{width:64px;height:54px}.brand small{font-size:12px}.hero-grid{grid-template-columns:1fr}.hero{padding-top:35px}.hero h1{font-size:clamp(3.3rem,14vw,4.5rem);line-height:1.03}.eyebrow{font-size:12px;letter-spacing:.12em}.hero-photo{height:360px;margin-top:20px;box-shadow:8px 8px 0 #e8edf9}.hero .lead{font-size:18px}.hero-actions{gap:20px}.trust-strip .container{flex-wrap:wrap;justify-content:center;gap:8px 20px;padding:18px 0}.trust-strip span{font-size:13px}.trust-strip span:before{margin-right:7px}.section{padding-top:52px;padding-bottom:52px}.split,.steps,.feature-grid,.footer-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.cards{grid-template-columns:1fr;gap:14px}.service-card{padding:25px}.card-number{margin-bottom:18px}.card-link{padding-top:8px}.section-intro{margin-bottom:28px}h2{font-size:2.25rem}.feature-list{margin-top:5px}.steps{gap:20px}.steps p{margin-bottom:0}.area-panel{padding:25px}.cta-inner{display:block}.cta{padding:45px 0}.cta .button{margin-top:25px}.footer-grid{gap:35px}.footer-bottom{display:block;margin-top:30px}.footer-bottom span{display:block;margin-bottom:10px}footer{padding-bottom:90px}.mobile-actions{display:grid;grid-template-columns:1fr 1.4fr;position:fixed;bottom:0;left:0;right:0;z-index:30;padding-bottom:env(safe-area-inset-bottom);background:white;box-shadow:0 -3px 16px #14213c18}.mobile-actions a{padding:15px 10px;text-align:center;font-size:15px;font-weight:700;line-height:1.4;background:white;color:var(--blue)}.mobile-actions a:last-child{background:var(--blue);color:white}.page-hero{padding:40px 0}.page-hero h1{font-size:2.9rem}.lead{font-size:18px}.contact-card{padding:28px}.contact-grid>.prose{grid-column:auto}.note{padding:28px}.faq summary{font-size:17px}.hero-photo figcaption{font-size:12px}.photo-label span{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.brand-mark{display:block;position:relative;overflow:hidden;width:78px;height:65px;flex-shrink:0;background:var(--navy);border-radius:6px}.brand .brand-mark img{position:absolute;width:205px;max-width:none;height:auto;left:-65px;top:-40px;background:none;border-radius:0}@media(max-width:650px){.brand-mark{width:64px;height:54px}.brand .brand-mark img{width:168px;left:-54px;top:-33px}}
/* Guided planning and homeowner resources */
[hidden]{display:none!important}.button-outline{background:white;color:var(--blue);border:1px solid var(--line);box-shadow:none}.button-outline:hover{background:var(--soft);color:var(--blue)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;padding-top:18px;padding-bottom:18px;font-size:14px;color:var(--muted)}.breadcrumbs a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.project-start{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:40px;padding-top:48px;padding-bottom:48px;border-bottom:1px solid var(--line)}.project-start h2{font-size:2rem;margin:0}.project-start .eyebrow{margin-bottom:12px}.project-shortcuts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.project-shortcuts a{padding:17px 20px;background:var(--soft);border:1px solid var(--line);font-weight:700;border-radius:5px}.project-shortcuts a:hover{color:var(--blue);border-color:var(--blue)}.planning-feature{background:var(--soft)}.planning-links{display:flex;flex-direction:column;gap:12px}.planning-links>a{display:flex;gap:22px;padding:24px;background:white;border:1px solid var(--line);border-radius:6px}.planning-links>a:hover{border-color:var(--blue)}.planning-links span{color:var(--blue);font-size:14px;font-weight:700}.planning-links h3{margin-bottom:8px;font-size:1.3rem}.planning-links p{margin:0;color:var(--muted);font-size:15px}.decision-bar{display:flex;gap:40px;align-items:center;justify-content:space-between}.decision-bar h2{font-size:2.4rem}.decision-bar>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:20px;flex-shrink:0}.decision-bar p:last-child{margin:0;color:var(--muted)}.contact-planner{grid-column:1/-1;background:var(--soft);padding:32px;border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-planner h2{font-size:2rem}.contact-planner p:last-child{margin:0;color:var(--muted)}.contact-planner .button{flex-shrink:0}.planner-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:start}.planner-aside p,.planner-benefits{color:var(--muted)}.planner-benefits{padding-left:20px;margin:25px 0 30px}.planner-benefits li{margin:12px 0;font-size:16px}.planner-box{border:1px solid var(--line);border-radius:8px;padding:34px;box-shadow:0 15px 45px #14213c09}.planner-progress{display:flex;gap:20px;justify-content:space-between;list-style:none;padding:0;margin:0 0 35px;font-size:14px;color:var(--muted)}.planner-progress li{padding-bottom:13px;flex:1;border-bottom:2px solid var(--line)}.planner-progress li[aria-current]{color:var(--blue);font-weight:700;border-color:var(--blue)}.planner-panel h2{font-size:2rem}.planner-panel fieldset{margin:0;padding:0;border:0;min-width:0}.project-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.project-choices label{position:relative;cursor:pointer}.project-choices input{position:absolute;top:20px;left:15px;accent-color:var(--blue);width:17px;height:17px;margin:0}.project-choices span{display:block;border:1px solid var(--line);border-radius:6px;padding:18px 15px 18px 43px;min-height:120px;background:white}.project-choices strong{display:block;line-height:1.25;font-size:17px}.project-choices small{display:block;color:var(--muted);font-size:14px;line-height:1.4;margin-top:10px}.project-choices input:checked+span{border:2px solid var(--blue);padding:17px 14px 17px 42px;background:#f0f4ff}.planner-controls{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.planner-controls button{cursor:pointer;font-family:inherit}.planner-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.planner-fields label,.summary-label{font-size:15px;font-weight:700;line-height:1.5}.planner-fields input,.planner-fields select,.planner-fields textarea,.project-summary{display:block;width:100%;min-width:0;font:400 16px/1.5 Arial;color:var(--ink);background:white;border:1px solid #b4bfd2;padding:12px 14px;border-radius:5px;margin-top:10px}.planner-fields textarea{resize:vertical;min-height:120px}.full-field{grid-column:1/-1}.field-hint{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:5px}.planner-error{background:#fff3ea;border-left:3px solid var(--orange);padding:13px 16px;color:var(--ink);font-size:15px;margin-bottom:25px}.project-summary{background:var(--soft);resize:vertical;margin-bottom:18px}.summary-tools{display:flex;gap:12px;flex-wrap:wrap}.summary-tools button{font-family:inherit;cursor:pointer;font-size:14px;min-height:44px;padding:12px 15px}.planner-feedback{font-size:14px;color:var(--muted);margin-top:16px;min-height:1.5em}.planner-handoff{padding-top:24px;border-top:1px solid var(--line)}.planner-handoff p{font-size:16px;color:var(--muted)}.planner-handoff .text-link{display:block;margin-top:20px}.planner-handoff .small-print{font-size:14px;margin-top:20px}.guide-layout{display:grid;grid-template-columns:230px 1fr;gap:65px}.guide-nav{align-self:start}.guide-nav h2{font-size:1.3rem;letter-spacing:-.02em}.guide-nav a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--blue);font-weight:700}.guide-copy>section{padding-bottom:38px;margin-bottom:38px;border-bottom:1px solid var(--line);scroll-margin-top:125px}.guide-copy>section:last-child{margin-bottom:0;padding-bottom:0;border:0}.guide-copy h2{font-size:2.2rem}.scope-table{overflow-x:auto;margin:25px 0 30px}.scope-table table{border-collapse:collapse;width:100%;font-size:16px;min-width:280px}.scope-table th{text-align:left;font-weight:700;background:var(--soft)}.scope-table th,.scope-table td{padding:16px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}.scope-table td:first-child{width:30%;font-weight:700}.guide-factors{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.guide-factors>div{padding-top:20px;border-top:2px solid var(--line)}.guide-factors h3{font-size:1.2rem}.guide-factors p{font-size:16px}.process-path{max-width:900px;margin:auto}.process-path article{display:flex;gap:40px;border-bottom:1px solid var(--line);padding:35px 0}.process-path article:first-child{padding-top:0}.process-path article>span{font-size:22px;font-weight:700;color:var(--blue);min-width:40px}.process-path h2{font-size:2rem}.process-path p{color:var(--muted);max-width:700px}.process-note{max-width:900px;margin:45px auto 0}.process-note p:last-child{font-size:14px;color:var(--muted);margin:0}
@media(max-width:900px){.hero h1{font-size:3.4rem}.project-start{grid-template-columns:1fr;gap:24px}.planner-layout{grid-template-columns:1fr;gap:30px}.planner-aside{max-width:650px}.planner-benefits{margin-bottom:20px}.guide-layout{grid-template-columns:1fr;gap:35px}.guide-nav{display:flex;flex-wrap:wrap;gap:5px 22px}.guide-nav h2{width:100%;margin-bottom:5px}.guide-nav a{font-size:14px}.decision-bar{align-items:flex-start}.decision-bar h2{font-size:2rem}}
@media(max-width:650px){.hero h1{font-size:clamp(2.65rem,12vw,4rem);overflow-wrap:normal}.project-start{padding-top:35px;padding-bottom:35px}.project-shortcuts{grid-template-columns:1fr 1fr;gap:10px}.project-shortcuts a{font-size:15px;padding:15px 12px}.planning-links>a{padding:20px;gap:15px}.decision-bar,.contact-planner{display:block}.decision-bar>div:last-child{margin-top:25px}.contact-planner .button{margin-top:22px}.planner-box{padding:23px 18px}.planner-progress{gap:12px;font-size:13px}.project-choices{grid-template-columns:1fr}.project-choices span{min-height:95px}.planner-fields{grid-template-columns:1fr;gap:20px}.full-field{grid-column:auto}.planner-controls .button{flex-grow:1}.guide-factors{grid-template-columns:1fr;gap:18px}.scope-table th,.scope-table td{padding:12px}.process-path article{gap:18px;padding:25px 0}.process-path h2{font-size:1.7rem}.process-path article>span{font-size:18px;min-width:25px}.planner-handoff .button{width:100%}.planner-panel h2{font-size:1.7rem}.guide-copy h2{font-size:1.9rem}.contact-planner{padding:25px}.planner-progress li{white-space:nowrap}}
.analytics-choice{position:fixed;bottom:20px;left:20px;right:20px;z-index:60;max-width:760px;margin:auto;background:white;border:1px solid var(--line);box-shadow:0 10px 50px #14213c30;padding:25px;border-radius:6px}.analytics-choice p{font-size:15px;line-height:1.5}.analytics-choice>div{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.analytics-choice button,.analytics-preferences{font-family:inherit;cursor:pointer}.analytics-preferences{padding:0;color:inherit;background:transparent;border:0;text-decoration:underline;font-size:13px;line-height:1.5}@media(max-width:650px){.analytics-choice{bottom:76px;left:12px;right:12px;padding:20px}.analytics-choice .button{font-size:14px;min-height:44px;padding:12px 15px}}

/* Project photography and supplied brand mark */
.brand-mark{display:flex;width:52px;height:68px;background:#292e5d;border-radius:4px;overflow:hidden;flex-shrink:0;align-items:center}.brand-mark img{position:static!important;width:100%!important;height:100%!important;object-fit:contain;border-radius:0;background:#292e5d}.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-gallery figure{margin:0;min-width:0}.project-gallery a{display:block;overflow:hidden;background:var(--soft)}.project-gallery img{width:100%;height:250px;object-fit:cover;transition:transform .2s}.project-gallery a:hover img{transform:scale(1.025)}.project-gallery figcaption{font-size:15px;color:var(--muted);padding-top:14px;line-height:1.5}.gallery-jumps{display:flex;flex-wrap:wrap;gap:25px}.gallery-more{margin-top:30px;margin-bottom:0}.testimonial-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.customer-quote{margin:0}.customer-quote blockquote{margin:0 0 25px;font-size:22px;line-height:1.6;letter-spacing:-.01em}.customer-quote figcaption{margin-bottom:20px;font-weight:700}.customer-quote small{font-weight:400;color:var(--muted);font-size:13px}.booking-code{margin:0;text-align:center}.booking-code img{margin:0 auto 20px}.booking-code figcaption{font-size:14px;color:var(--muted)}.site-header nav{gap:18px;font-size:14px}
@media(max-width:1050px){.site-header nav{gap:12px}.brand{font-size:20px}.brand small{font-size:11px}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-layout{gap:35px}}
@media(max-width:800px){.testimonial-layout{grid-template-columns:1fr}.project-gallery img{height:240px}}
@media(max-width:650px){.brand-mark{width:38px!important;height:52px!important}.project-gallery{grid-template-columns:1fr;gap:30px}.project-gallery img{height:auto;max-height:420px;object-fit:contain}.customer-quote blockquote{font-size:19px}}

/* Explicit two-line company name in every header */
.site-header .brand-lines{display:flex;flex-direction:column;gap:5px;flex-shrink:0;line-height:1.05}.site-header .brand-name{display:block;font-size:24px;font-weight:900;letter-spacing:.025em;white-space:nowrap}.site-header .brand-subtitle{display:block;font-size:16px;font-weight:800;letter-spacing:.075em;white-space:nowrap;color:var(--ink)}
@media(max-width:1050px){.site-header .brand-name{font-size:21px}.site-header .brand-subtitle{font-size:14px}}
@media(max-width:650px){.site-header .brand-name{font-size:20px}.site-header .brand-subtitle{font-size:13px}.campaign-header .brand-name{font-size:16px}.campaign-header .brand-subtitle{font-size:11px}}

.before-after-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.before-after-grid figure{margin:0;min-width:0}.before-after-grid a{display:block;background:var(--navy);overflow:hidden}.before-after-grid img{width:100%;height:330px;object-fit:contain}.comparison-label{display:inline-block;margin-bottom:12px;font-size:14px;font-weight:800;letter-spacing:.14em;color:var(--blue)}.before-after-grid figcaption{margin-top:14px;font-size:15px;line-height:1.5;color:var(--muted)}.comparison-note{font-size:14px;color:var(--muted);margin-top:20px}@media(max-width:650px){.before-after-grid{grid-template-columns:1fr;gap:30px}.before-after-grid img{height:auto;max-height:440px}.comparison-label{font-size:13px}}

/* Simplified header: compact brand, four links and one distinct action. */
.site-header .header-inner{min-height:88px;gap:32px}.site-header .brand{gap:12px;flex-shrink:0}.site-header .brand-mark{width:42px!important;height:58px!important;border-radius:3px}.site-header .brand-lines{gap:6px}.site-header .brand-name{font-size:23px;letter-spacing:.025em}.site-header .brand-subtitle{font-size:13px;letter-spacing:.1em;font-weight:700}.site-header nav{position:static;display:flex;align-items:center;gap:26px;font-size:14px;font-weight:600;padding:0;box-shadow:none}.site-header nav>a:not(.button){padding:18px 0;white-space:nowrap}.site-header nav .button{margin-left:12px;padding:12px 18px;min-height:46px;font-size:14px}.site-header .menu-toggle{display:none}.topbar{padding:6px 0}.campaign-header .header-inner{gap:20px}.campaign-actions{gap:24px}
@media(max-width:1000px){.site-header .header-inner{min-height:82px;gap:20px}.site-header .menu-toggle{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;padding:18px 24px 24px;background:white;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #14213c12}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav>a:not(.button){padding:14px 4px;border-bottom:1px solid var(--line)}.site-header nav .button{margin:18px 0 0}.site-header .brand-name{font-size:22px}.site-header .brand-subtitle{font-size:13px}}
@media(max-width:650px){.site-header .header-inner{min-height:76px;gap:14px}.site-header .brand{gap:10px}.site-header .brand-mark{width:35px!important;height:48px!important}.site-header .brand-name{font-size:20px}.site-header .brand-subtitle{font-size:12px;letter-spacing:.085em}.site-header .brand-lines{gap:5px}.site-header .menu-toggle{font-size:14px;padding:10px 13px;min-height:44px}.campaign-header .brand-name{font-size:16px}.campaign-header .brand-subtitle{font-size:10px}.campaign-header .brand{gap:7px}.campaign-header .brand-mark{width:30px!important;height:42px!important}.campaign-header .header-inner{gap:12px}}

/* Wider header keeps the full desktop navigation visible. */
.site-header .container.header-inner{width:calc(100% - 40px);max-width:1480px;margin-inline:auto;gap:24px}.site-header nav{margin-left:auto;gap:22px}.site-header nav .button{margin-left:8px}.site-header .brand{margin-right:12px}
@media(min-width:901px) and (max-width:1000px){.site-header .menu-toggle{display:none}.site-header nav{display:flex;position:static;flex-direction:row;align-items:center;gap:17px;padding:0;border:0;box-shadow:none}.site-header nav>a:not(.button){padding:18px 0;border:0}.site-header nav .button{margin:0 0 0 8px;padding:12px 15px}.site-header .brand-name{font-size:21px}.site-header .brand-subtitle{font-size:12px}}
@media(max-width:900px){.site-header .container.header-inner{width:calc(100% - 32px);gap:16px}.site-header .menu-toggle{display:block}.site-header nav{display:none;margin-left:0}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav .button{margin:18px 0 0}.site-header .brand{margin-right:0}}

/* Readable text on light panels, dark sections, buttons and photographs. */
.site-header .brand,.site-header nav>a:not(.button){color:var(--ink)}.site-header nav>a[aria-current]:not(.button){color:var(--blue)}.site-header nav>a.button,.site-header nav>a.button[aria-current]{color:#fff}.contrast h2,.contrast h3,.cta h2,.blue h2{color:#fff}.contrast .section-intro p:not(.eyebrow),.contrast .feature-list p{color:#e5ebf7}.contrast .text-link,.blue .text-link{color:#fff}.cta p:last-child,.blue p:not(.eyebrow),.blue .eyebrow{color:#f0f3ff}.contrast .button-light,.cta .button-light,.blue .button-light{background:#fff;color:var(--navy)}.contrast .button-light:hover,.cta .button-light:hover,.blue .button-light:hover{background:#eaf0ff;color:var(--navy)}footer{color:#e0e7f5}.photo-label{background:#101d3c;color:#fff;padding:16px 20px;left:24px;right:24px;bottom:24px}.hero-photo figcaption{background:#101d3c;color:#fff}.planner-fields input::placeholder,.planner-fields textarea::placeholder{color:#566078;opacity:1}.planner-fields input,.planner-fields select,.planner-fields textarea,.project-summary{color:var(--ink)}
@media(max-width:650px){.photo-label{left:16px;right:16px;bottom:16px;padding:14px 16px}.photo-label strong{font-size:25px}}

.footer-credential{display:block;color:#fff;font-size:14px;font-weight:700;margin:18px 0;text-decoration:underline;text-underline-offset:4px}.footer-address{font-style:normal;line-height:1.6;margin-bottom:18px;color:#e0e7f5}.trust-strip a{font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:4px;color:#fff}.credential-row{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.verification-date{margin-top:16px}.review-excerpts{display:grid;grid-template-columns:1fr 1fr;gap:45px}.review-excerpts figure,.google-excerpt{margin:0}.review-excerpts blockquote,.google-excerpt blockquote{margin:0 0 20px;font-size:23px;line-height:1.5;color:var(--ink)}.review-excerpts figcaption,.google-excerpt figcaption{font-size:15px;line-height:1.6;color:var(--muted);margin-bottom:20px}.google-excerpt{margin-bottom:28px;max-width:850px}.review-links{display:flex;flex-wrap:wrap;gap:20px}.review-excerpts .text-link{font-size:15px}address{font-style:normal;line-height:1.6;margin-bottom:20px}@media(max-width:700px){.credential-row,.review-excerpts{grid-template-columns:1fr;gap:35px}.trust-strip .container{flex-wrap:wrap;justify-content:center}.review-excerpts blockquote,.google-excerpt blockquote{font-size:20px}}

.google-review-feed{min-width:0}.google-review-feed>.review-links{margin-top:28px}.google-review-feed>[class^="elfsight-app-"]{min-width:0;width:100%}

/* Keep every main navigation link visible at every screen size. */
.site-header .menu-toggle{display:none!important}
.site-header nav,.site-header nav.open{display:flex;position:static;flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:12px 20px;padding:0;border:0;box-shadow:none}
.site-header .header-inner{flex-wrap:wrap;padding-block:12px}
@media(max-width:1100px){
 .site-header:not(.campaign-header) .header-inner{gap:12px}
 .site-header nav,.site-header nav.open{width:100%;margin:0;justify-content:center;gap:8px 24px;border-top:1px solid var(--line);padding-top:10px}
 .site-header nav>a:not(.button){padding:10px 0;border:0}
 .site-header nav .button{margin:0;min-height:44px;padding:12px 16px}
}
@media(max-width:650px){
 .site-header nav,.site-header nav.open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px;text-align:center;font-size:13px}
 .site-header nav>a:not(.button){display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 4px;white-space:normal}
 .site-header nav .button{margin:0;font-size:12px;padding:8px 6px;min-height:44px}
 html{scroll-padding-top:200px}
}

.estimate-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;margin:32px 0}.estimate-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px}.estimate-card h2{font-size:1.7rem}.estimate-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:24px}.estimate-fields label{font-size:14px;font-weight:700}.estimate-fields input,.estimate-fields select,.estimate-fields textarea{display:block;width:100%;font:inherit;color:var(--ink);background:white;border:1px solid #78859c;border-radius:4px;padding:12px;margin-top:6px}.estimate-wide{grid-column:1/-1}.estimate-ai{background:var(--soft)}.estimate-ai input{width:20px;height:20px;vertical-align:middle}.estimate-card button:disabled{opacity:.65;cursor:wait}.estimate-output{white-space:pre-wrap;overflow-wrap:anywhere}.estimate-range{font-size:1.7rem;font-weight:800;color:var(--blue)}#estimate-actions{margin-top:20px}#estimate-actions p{margin-top:18px}
@media(max-width:1100px){html{scroll-padding-top:200px}}
@media(max-width:750px){.estimate-grid,.estimate-fields{grid-template-columns:1fr}.estimate-card{padding:20px}.estimate-wide{grid-column:auto}}
@media(max-width:650px){.site-header nav .button{grid-column:1/-1}}
.estimate-materials{border:1px solid var(--line);border-radius:6px;margin:0 0 24px;padding:20px;min-width:0}.estimate-materials legend{font-size:19px;font-weight:800;padding:0 8px}.material-links{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.material-links a{border:1px solid var(--line);background:var(--soft);color:var(--blue);padding:8px 12px;border-radius:4px;font-weight:700;font-size:14px}.material-row{padding:18px 0;border-top:1px solid var(--line)}.material-remove{font:700 14px Arial;color:#9a3412;background:white;border:1px solid #9a3412;padding:10px 14px;border-radius:4px;min-height:44px}#materials-subtotal{margin-top:16px;font-size:14px;font-weight:700}
