
:root{--red:#e5232e;--yellow:#f4ec43;--ink:#191919;--muted:#626262;--cream:#f6f5ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}button,a,input{touch-action:manipulation}button{font:inherit}.wrap{max-width:1240px;margin:auto;padding:0 36px}.top{background:var(--ink);color:#fff;font-size:12px;letter-spacing:1px;padding:9px 0}.top .wrap{display:flex;justify-content:space-between}.top b{color:var(--yellow)}header{background:white;position:sticky;top:0;z-index:20;border-bottom:1px solid #eee}.nav{height:98px;display:flex;align-items:center;gap:35px}.brand img{width:222px;display:block}.brand small{display:block;font-size:10px;font-weight:bold;letter-spacing:4px;text-align:center;margin-top:4px}.nav nav{display:flex;gap:27px;margin-left:auto;font-size:13px;font-weight:700}.nav nav a:hover{color:var(--red)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:17px 25px;background:var(--red);color:white;font-size:13px;font-weight:800;border:0;cursor:pointer}.btn:hover{background:#b71520}.btn.yellow{background:var(--yellow);color:var(--ink)}.menu{display:none}.hero{background:var(--ink);color:#fff;display:grid;grid-template-columns:48% 52%;min-height:620px}.hero-copy{padding:73px 50px 70px max(36px,calc((100vw - 1168px)/2));position:relative}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-weight:800;font-size:11px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:26px;height:3px;background:var(--red)}.hero .eyebrow{color:var(--yellow)}h1,h2,h3,p{margin:0}h1{font-size:clamp(46px,4.4vw,68px);line-height:1.04;letter-spacing:-2.4px;margin:24px 0}h1 em{font-style:normal;color:var(--yellow)}.hero p{color:#d1d1d1;max-width:430px;font-size:16px}.hero-actions{display:flex;gap:23px;align-items:center;margin:30px 0 25px}.phone{font-size:14px;font-weight:700}.micro{font-size:11px;color:#aaa}.hero-visual{position:relative;min-height:520px;background:url('assets/hero.jpg') center/cover}.hero-visual:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#19191925,transparent)}.photo-caption{position:absolute;bottom:32px;right:32px;background:white;padding:22px 28px;color:var(--ink);border-left:5px solid var(--red);max-width:290px}.photo-caption b{display:block;font-size:19px;line-height:1.2}.photo-caption span{font-size:11px;color:var(--muted)}.trust{background:var(--yellow)}.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-top:23px;padding-bottom:23px}.trust span{text-align:center;font-size:12px;font-weight:800;border-right:1px solid #0003}.trust span:last-child{border:0}.section{padding:92px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:37px}h2{font-size:42px;line-height:1.12;letter-spacing:-1.4px;margin-top:16px}.section-head p{max-width:360px;color:var(--muted);font-size:14px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service{border:1px solid #e4e4df;background:#fff}.service img{width:100%;height:270px;object-fit:cover;display:block}.service:first-child img{object-position:center 43%}.service-body{padding:25px}.service h3{font-size:23px;letter-spacing:-.5px;margin-bottom:10px}.service p{font-size:14px;color:var(--muted);min-height:68px}.service a{display:flex;justify-content:space-between;font-size:12px;font-weight:bold;border-top:1px solid #eee;margin-top:23px;padding-top:17px}.service a span{color:var(--red)}.feature{background:var(--cream)}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.feature-visual{position:relative}.feature-visual img{width:100%;height:550px;object-fit:cover;display:block}.tag{position:absolute;bottom:25px;left:-18px;background:var(--red);color:white;font-size:13px;font-weight:bold;padding:15px 23px}.feature p{color:var(--muted);margin:22px 0;font-size:15px}.points{padding:0;list-style:none}.points li{border-bottom:1px solid #ddd;padding:17px 0;display:flex;gap:15px;font-size:14px}.points b{color:var(--red)}.compare{background:#202020;color:white}.compare .section-head p{color:#bbb}.comparison{position:relative;height:480px;overflow:hidden;background:#333}.comparison img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 49%}.comparison .before{clip-path:inset(0 50% 0 0)}.comparison input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.divider{position:absolute;top:0;bottom:0;left:50%;width:3px;background:var(--yellow);pointer-events:none}.divider b{position:absolute;top:48%;left:-24px;border-radius:50%;width:50px;height:50px;display:grid;place-items:center;background:var(--yellow);color:var(--ink)}.label{position:absolute;top:22px;background:#191919c9;padding:7px 16px;font-size:11px;font-weight:bold;letter-spacing:2px}.label.left{left:22px}.label.right{right:22px}.compare-note{font-size:12px;color:#bbb;margin-top:15px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.step{border-top:1px solid #ccc;padding-top:20px}.step .num{font-size:13px;color:var(--red);font-weight:800}.step h3{font-size:23px;margin:16px 0 10px}.step p{font-size:14px;color:var(--muted)}.area{background:var(--cream)}.area .split{align-items:start}.counties{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.counties span{padding:13px 0;border-bottom:1px solid #d6d6d0;font-weight:bold;font-size:14px}.area p{margin:22px 0;color:var(--muted);font-size:14px}.office{margin-top:28px;font-size:13px;border-left:3px solid var(--red);padding-left:18px}.faq{max-width:850px;margin:auto}.faq h2{margin-bottom:35px}details{border-bottom:1px solid #ddd;padding:21px 0}summary{font-size:17px;font-weight:bold;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';color:var(--red);font-size:24px;line-height:1}details[open] summary:after{content:'−'}details p{padding:16px 35px 0 0;font-size:14px;color:var(--muted)}.cta{background:var(--yellow);padding:65px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta h2{max-width:600px;margin:0}.cta p{margin-top:15px;font-size:14px}.cta-actions{text-align:center;flex-shrink:0}.cta-actions a.phone{display:block;margin-top:17px}footer{background:var(--ink);color:#eee;padding:55px 0 25px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footergrid h3{color:var(--yellow);font-size:20px}.footergrid h4{font-size:12px;margin:0 0 17px}.footergrid p,.footergrid a{font-size:12px;color:#bbb}.footergrid a{display:block;margin-bottom:9px}.copyright{border-top:1px solid #ffffff22;margin-top:40px;padding-top:23px;font-size:10px;color:#999;display:flex;justify-content:space-between}.mobile-call{display:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e5232e;outline-offset:5px}@media(max-width:1000px){.nav{gap:15px}.nav nav{gap:15px}.brand img{width:180px}.hero-copy{padding:55px 30px}.hero-actions{flex-wrap:wrap}.split{gap:40px}.section{padding:65px 0}h2{font-size:34px}}@media(max-width:760px){.wrap{padding:0 22px}.top .wrap{font-size:9px;letter-spacing:.3px}.top .wrap span:last-child{display:none}.nav{height:83px;justify-content:space-between}.brand img{width:172px}.nav>.btn{display:none}.menu{display:block;background:none;border:1px solid #ddd;padding:7px 12px}.nav nav{display:none;position:absolute;top:83px;left:0;right:0;background:white;padding:24px;box-shadow:0 8px 12px #0002;flex-direction:column}.nav nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 24px}.hero h1{font-size:49px}.hero-visual{min-height:340px}.photo-caption{bottom:20px;right:20px}.trust .wrap{grid-template-columns:1fr 1fr;gap:17px}.trust span{font-size:10px}.trust span:nth-child(2){border:0}.section-head{display:block}.section-head p{margin-top:20px}.services,.split,.process,.footergrid{grid-template-columns:1fr}.services{gap:25px}.service p{min-height:0}.service img{height:300px}.feature-visual img{height:430px}.tag{left:0}.comparison{height:430px}.cta .wrap{display:block}.cta-actions{text-align:left;margin-top:25px}.cta-actions a.phone{display:inline-block;margin-left:15px}.counties{margin-top:5px}.copyright{display:block}.mobile-call{display:block;position:fixed;bottom:16px;right:16px;background:var(--red);color:white;padding:12px 20px;border-radius:30px;font-size:13px;font-weight:bold;z-index:25;box-shadow:0 3px 15px #0003}footer{padding-bottom:85px}}

.utility{background:var(--yellow);font-size:12px;font-weight:bold;padding:7px 0}.utility .wrap{display:flex;justify-content:space-between}.nav{gap:18px}.nav nav{gap:20px}.drop{position:relative}.drop>button{background:none;border:0;font-size:13px;font-weight:bold;padding:12px 0;cursor:pointer}.dropdown{position:absolute;top:100%;left:-18px;width:270px;background:white;box-shadow:0 12px 30px #0003;padding:15px;display:none;border-top:3px solid var(--red);max-height:70vh;overflow:auto}.dropdown a{display:block;padding:8px 10px;font-size:12px}.drop:hover .dropdown,.drop:focus-within .dropdown,.drop.open .dropdown{display:block}.nav .brand img{width:195px}.pagehero{background:var(--ink);color:white;padding:60px 0}.pagehero .eyebrow{color:var(--yellow)}.pagehero h1{font-size:52px;max-width:900px}.pagehero p{max-width:750px;color:#ccc;font-size:17px}.crumb{font-size:11px;color:#aaa;margin-bottom:22px}.content{padding:65px 0}.content h2{margin-bottom:25px}.content h3{margin:24px 0 12px;font-size:23px}.content p{margin-bottom:20px;color:var(--muted);max-width:850px}.content li{margin-bottom:10px;color:var(--muted)}.content .split{align-items:start}.detailimage{width:100%;max-height:550px;object-fit:cover}.panel{background:var(--cream);padding:30px;border-top:3px solid var(--red)}.panel p{font-size:14px}.panel ul{padding-left:20px;font-size:14px}.linkgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.linkcard{border:1px solid #ddd;padding:27px;display:block;background:white}.linkcard h3{margin:0 0 12px;font-size:21px}.linkcard p{font-size:14px;margin:0 0 18px}.linkcard>span{color:var(--red);font-size:12px;font-weight:bold}.linkcard:hover{border-color:var(--red)}.linkcard img{width:100%;height:210px;object-fit:cover;margin-bottom:20px}.benefitgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.benefitgrid article{border-top:3px solid var(--yellow);padding-top:18px}.benefitgrid h3{font-size:20px}.benefitgrid p{font-size:14px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;background:var(--ink);color:white;padding:32px}.stats b{font-size:35px;display:block;color:var(--yellow)}.stats span{font-size:12px}.articlelist a{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid #ddd;padding:24px 0;font-weight:bold}.articlelist a span{color:var(--red)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.filters button{padding:10px 18px;border:1px solid #ddd;background:white;cursor:pointer}.filters button.active{background:var(--ink);color:var(--yellow)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery figure{margin:0}.gallery button{padding:0;border:0;background:none;cursor:zoom-in;width:100%}.gallery img{width:100%;height:290px;object-fit:cover}.gallery figcaption{font-size:12px;padding:8px 0}.gallery figure[hidden]{display:none}dialog{border:0;padding:20px;max-width:90vw;background:#fff}dialog::backdrop{background:#000c}dialog img{max-width:80vw;max-height:80vh;display:block}dialog button{float:right;margin-bottom:10px;cursor:pointer}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.formgrid label{font-size:12px;font-weight:bold;display:block}.formgrid input,.formgrid select,.formgrid textarea{display:block;width:100%;border:1px solid #bbb;background:white;padding:13px;font:inherit;margin-top:7px}.formgrid .full{grid-column:1/-1}.fine{font-size:12px;color:var(--muted);margin-top:12px}.comparison-table{width:100%;border-collapse:collapse;font-size:14px}.comparison-table th,.comparison-table td{text-align:left;padding:19px;border-bottom:1px solid #ddd}.comparison-table th{background:var(--ink);color:white}.comparison-table td:last-child{background:var(--cream)}.section-links{margin-top:35px;display:flex;gap:20px;flex-wrap:wrap;font-size:13px;font-weight:bold}.more-services{margin-top:25px}.footergrid{grid-template-columns:1.5fr 1fr 1fr 1fr}.countylist{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.countylist a{border-bottom:1px solid #ccc;padding:18px 0;font-weight:bold;font-size:14px}.quote{background:var(--cream);padding:35px;border-left:4px solid var(--red);margin:30px 0}.quote p{font-size:20px;color:var(--ink)}.quote small{font-size:12px}.stickycontact{font-size:12px;font-weight:bold;color:var(--red)}@media(max-width:1100px){.nav nav{gap:12px}.nav .brand img{width:165px}.nav>.btn{padding:14px}.nav{gap:12px}.nav nav a,.drop>button{font-size:12px}}@media(max-width:760px){.utility{font-size:10px}.utility .wrap span{display:none}.nav .brand img{width:172px}.nav nav{max-height:75vh;overflow:auto}.drop{width:100%}.drop>button{text-align:left;width:100%;font-size:15px}.dropdown{position:static;box-shadow:none;width:100%;border:0;max-height:none}.drop:hover .dropdown{display:none}.drop.open .dropdown,.drop:focus-within .dropdown{display:block}.pagehero{padding:40px 0}.pagehero h1{font-size:39px;letter-spacing:-1px}.linkgrid,.benefitgrid,.gallery,.footergrid{grid-template-columns:1fr}.stats,.countylist{grid-template-columns:1fr 1fr}.stats b{font-size:28px}.formgrid{grid-template-columns:1fr}.gallery img{height:340px}.comparison-table{font-size:12px}.comparison-table th,.comparison-table td{padding:11px}.content{padding:45px 0}.stickycontact{display:none}}

.nav nav{align-items:center}@media(max-width:760px){.nav nav{align-items:stretch}}

/* Bright, high-contrast brand treatment across the site. */
:root{--muted:#454545;--cream:#f7f8fa}
body{background:#fff;color:#191919}
.top{background:#191919;color:#fff}
.top b{color:#fff}
.utility{background:#fff;color:#191919;border-bottom:1px solid #e8e8e8}
.utility a:last-child{color:#b91423}
.hero{background:#fff;color:#191919}
.hero-copy{background:#fff}
.hero .eyebrow{color:#b91423}
h1 em{color:#d71929}
.hero p{color:#3c3c3c}
.micro{color:#454545}
.hero-visual:before{background:none}
.photo-caption{box-shadow:0 5px 24px #00000012}
.photo-caption span{color:#454545}
.trust{background:#fafafa;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7}
.trust span{color:#191919;border-color:#d6d6d6}
.feature,.area{background:#f7f8fa}
.compare{background:#fff;color:#191919;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7}
.compare .section-head p,.compare-note{color:#454545}
.label{background:#191919;color:#fff}
.pagehero{background:#f7f8fa;color:#191919;border-bottom:1px solid #e5e5e5}
.pagehero .eyebrow{color:#b91423}
.pagehero p{color:#3c3c3c}
.crumb{color:#454545}
.crumb a{color:#b91423}
.stats{background:#fff;color:#191919;border:1px solid #e1e1e1}
.stats b{color:#c81727}
.stats span{color:#383838}
.comparison-table th{background:#f0f1f3;color:#191919;border-bottom:2px solid #c81727}
.comparison-table td:last-child{background:#fafafa}
.filters button.active{background:#191919;color:#fff}
.cta{background:#fff;border-top:4px solid var(--yellow);border-bottom:1px solid #e5e5e5}
.cta p{color:#3c3c3c}
footer{background:#fff;color:#191919;border-top:1px solid #e5e5e5}
.footergrid h3{color:#c81727}
.footergrid h4{color:#191919}
.footergrid p,.footergrid a{color:#383838}
.footergrid a:hover{color:#b91423;text-decoration:underline}
.copyright{border-top:1px solid #dedede;color:#454545}
.btn{background:#cf1728;color:#fff}
.btn:hover{background:#a80e1e}
.btn.yellow{background:var(--yellow);color:#191919}
.btn.yellow:hover{background:#e5dc22}
.mobile-call{background:#cf1728;color:#fff}

.ct-reviews{background:#f7f8fa}.reviewcards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.reviewcard{margin:0;background:white;border:1px solid #dedede;border-top:3px solid #e5232e;padding:30px;display:flex;flex-direction:column}.review-source{font-size:11px;font-weight:bold;color:#454545}.reviewcard blockquote{margin:22px 0 28px;font-size:23px;font-weight:bold;line-height:1.45;color:#191919;flex:1}.reviewcard figcaption strong{display:block;font-size:14px}.reviewcard figcaption a{font-size:12px;color:#ad1422;text-decoration:underline}.reviewnote{font-size:12px;color:#454545;margin-top:22px}.reviewnote a{text-decoration:underline}@media(max-width:760px){.reviewcards{grid-template-columns:1fr}.ct-reviews .btn{margin-top:20px;font-size:11px;padding:15px}.reviewcard blockquote{font-size:22px}}

.gallery figure.transformation img{height:auto;aspect-ratio:1;object-fit:contain;background:#fff}.gallery figure.transformation figcaption{font-weight:700}.social-projects{background:#f7f8fa}.social-projects> .wrap>p{margin:20px 0 30px;color:#454545}

.social-original figcaption strong{display:block;font-size:13px}.social-original figcaption a{display:block;font-size:12px;font-weight:normal;color:#b91423;text-decoration:underline;margin-top:6px}.gallery figure.social-original img{aspect-ratio:auto;height:auto;max-height:none}.gallery{align-items:start}

.social-original button{display:block}.comparison-labels{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 8px 12px;text-align:center}.comparison-labels span{display:inline-block;justify-self:center;min-width:108px;max-width:95%;padding:5px 17px 6px;background:#f4ec43;border:2px solid #e5232e;border-radius:999px;color:#e5232e;font-family:Impact,'Arial Black',Arial,sans-serif;font-weight:900;font-size:22px;line-height:1.1;letter-spacing:.2px;text-transform:uppercase}.comparison .label{display:none}.compare>.wrap>.comparison-labels{padding-bottom:18px}.compare>.wrap>.comparison-labels span{font-size:25px;min-width:145px;padding:7px 24px}@media(max-width:760px){.comparison-labels span{font-size:22px;min-width:112px}.compare>.wrap>.comparison-labels span{font-size:23px;min-width:120px}}

.ct-controls{display:flex;gap:25px;align-items:end;flex-wrap:wrap;margin:30px 0}.ct-controls label{font-size:12px;font-weight:700}.ct-controls select{display:block;min-width:245px;margin-top:8px;padding:12px;background:white;border:1px solid #bbb;font:inherit;font-size:14px}.ct-view{display:flex;gap:8px}.ct-view button{background:#fff;border:1px solid #bbb;padding:12px 18px;cursor:pointer;font-size:13px}.ct-view button.active{background:#191919;color:white}.ct-controls>p{font-size:12px;color:#454545;margin-left:auto;padding-bottom:12px}.ct-gallery{grid-template-columns:1fr 1fr;gap:34px}.ct-gallery .ct-project{border:1px solid #e1e1e1;padding:20px;background:#fff}.ct-project-heading{margin-bottom:18px}.ct-project-heading h3{font-size:22px;margin:0 0 3px}.ct-project-heading>span{font-size:12px;color:#454545}.ct-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f7f8fa}.ct-gallery .ct-photo-pair img{width:100%;height:350px;object-fit:contain;display:block}.ct-gallery .ct-photo-pair button{display:block;width:100%;padding:0;background:none;border:0;cursor:zoom-in}.ct-gallery figcaption{font-size:11px;color:#454545;margin-top:10px}.ct-more{text-align:center;margin-top:40px}.ct-more button[hidden]{display:none}.ct-gallery figure[hidden]{display:none}@media(max-width:760px){.ct-gallery{grid-template-columns:1fr;gap:25px}.ct-gallery .ct-project{padding:14px}.ct-gallery .ct-photo-pair img{height:280px}.ct-controls{gap:17px}.ct-controls>p{margin-left:0;width:100%;padding:0}.ct-view button{padding:11px 15px}.ct-controls select{width:100%}.ct-controls label{width:100%}.ct-gallery .comparison-labels span{font-size:21px;min-width:100px}}

/* Verified Connecticut projects throughout the site; preserve the full photo. */
.ct-installed-photo{object-fit:contain!important;background:#f7f8fa;display:block}.service img.ct-installed-photo{object-position:center}.feature-visual img.ct-installed-photo{height:550px}.detailimage.ct-installed-photo{height:520px;max-height:none}.project-feature{background:#f7f8fa;border-top:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8}.project-feature-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:65px;align-items:center}.project-feature-copy h2{font-size:36px;max-width:420px}.project-feature-copy p{font-size:15px;margin:22px 0}.project-gallery-link{font-size:13px;font-weight:700;display:inline-flex;gap:22px;border-bottom:2px solid #e5232e;padding:0 0 9px}.project-gallery-link:hover{color:#c81727}.project-comparison{margin:0;padding:20px;background:white;border:1px solid #e1e1e1;min-width:0}.project-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.project-photo-grid a{display:block;background:#f7f8fa}.project-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}.project-comparison figcaption{font-size:12px;color:#454545;padding-top:13px}.project-snapshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project-snapshot{display:block;border:1px solid #e1e1e1;background:white;transition:border-color .15s}.project-snapshot:hover{border-color:#c81727}.project-snapshot figure{margin:0}.project-snapshot img{display:block;width:100%;height:340px;object-fit:contain;background:#f7f8fa}.project-snapshot figcaption{padding:19px 22px}.project-snapshot strong{font-size:18px;display:block}.project-snapshot span{font-size:12px;display:block;color:#454545;margin-top:4px}.project-snapshots .section-head h2{font-size:36px}.project-gallery-link:focus-visible,.project-snapshot:focus-visible,.project-photo-grid a:focus-visible{outline:3px solid #c81727;outline-offset:5px}@media(max-width:760px){.project-feature-grid{grid-template-columns:1fr;gap:28px}.project-feature-copy h2,.project-snapshots .section-head h2{font-size:31px}.project-comparison{padding:13px}.project-photo-grid{gap:7px}.project-feature .comparison-labels{gap:7px;padding:0 0 12px}.project-feature .comparison-labels span{min-width:0;font-size:20px;padding:5px 13px}.project-snapshot-grid{grid-template-columns:1fr;gap:22px}.project-snapshot img{height:380px}.detailimage.ct-installed-photo,.feature-visual img.ct-installed-photo{height:440px}} 

/* Show both complete portrait photos without cropping the windows. */
.home-project-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;max-width:960px;margin:0 auto;background:#f7f8fa}.home-project-comparison img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;position:static}.compare>.wrap>.comparison-labels{max-width:960px;margin:0 auto}.compare>.wrap>.compare-note{max-width:960px;margin:15px auto 0}@media(max-width:760px){.home-project-comparison{gap:8px}.compare>.wrap>.comparison-labels span{min-width:0;font-size:21px;padding:7px 20px}}

/* Original three-photo Facebook cover, shown in full at every width. */
.facebook-cover{background:#f6f40a;border-bottom:1px solid #e8e8e8}.facebook-cover img{display:block;width:100%;max-width:1240px;height:auto;margin:0 auto}.hero.hero-with-cover{display:block;min-height:0}.hero-with-cover .hero-copy{max-width:1240px;margin:0 auto;padding:48px 36px 50px;display:grid;grid-template-columns:1.1fr 1fr;column-gap:65px}.hero-with-cover .eyebrow{grid-column:1/-1}.hero-with-cover h1{grid-row:2/5;font-size:clamp(38px,4.4vw,60px);margin:20px 0 0}.hero-with-cover h1 br{display:none}.hero-with-cover h1 br:after{content:' '}.hero-with-cover h1 em{display:block}.hero-with-cover p{margin-top:24px;max-width:490px}.hero-with-cover .hero-actions{flex-wrap:wrap;margin:22px 0 14px}.hero-with-cover .micro{grid-column:2}@media(max-width:760px){.hero-with-cover .hero-copy{display:block;padding:30px 22px 36px}.hero-with-cover h1{font-size:40px;letter-spacing:-1.5px}.hero-with-cover p{margin-top:20px}.hero-with-cover .hero-actions{gap:18px}.facebook-cover img{min-height:0}}

/* Crisp live type and vector marks around the original, untouched photographs. */
.facebook-cover.escape-banner{background:#fff;border-bottom:1px solid #e8e8e8;padding:46px 36px 30px}.escape-cards{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px}.escape-card{margin:0;min-width:0}.escape-photo{position:relative;aspect-ratio:1;background:#fff}.escape-original{width:100%;height:100%;display:block;border:1px solid #ddd}.escape-mark{position:absolute;top:-12px;left:-12px;width:64px;height:64px;border:7px solid white;border-radius:50%;display:grid;place-items:center}.escape-mark.incorrect{background:#cf1728}.escape-mark.correct{background:#18763d}.escape-mark svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.escape-card figcaption{text-align:center;font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:clamp(20px,2.6vw,33px);font-weight:900;line-height:1.15;text-transform:uppercase;letter-spacing:.3px;color:#cf1728;padding-top:20px}.escape-wordmark{position:absolute;bottom:0;left:22%;width:56%;height:19%;display:grid;place-items:center;background:#fff;border:2px solid #cf1728;border-radius:8px;color:#cf1728;font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;font-size:clamp(11px,1.9vw,24px);line-height:1}@media(max-width:760px){.facebook-cover.escape-banner{padding:26px 18px 22px}.escape-cards{gap:15px}.escape-mark{top:-7px;left:-7px;width:36px;height:36px;border-width:4px}.escape-mark svg{width:21px;height:21px}.escape-card figcaption{font-size:clamp(13px,3.2vw,23px);padding-top:12px;letter-spacing:0}.escape-wordmark{font-size:clamp(8px,1.9vw,14px);border-width:1px;border-radius:4px}}
.escape-mark{width:30%;height:30%;top:-5%;left:-5%;border-width:8px}.escape-mark svg{width:55%;height:55%}.escape-original{clip-path:inset(2px)}.escape-wordmark{width:60%;left:20%;font-size:clamp(9px,1.5vw,20px);white-space:nowrap;text-align:center;font-weight:900}@media(max-width:760px){.escape-mark{border-width:4px}.escape-wordmark{font-size:clamp(7px,1.65vw,12px)}}

@font-face{font-family:EgressBanner;src:url('assets/banner-bold.woff') format('woff');font-weight:900;font-display:swap}.escape-card figcaption{font-family:EgressBanner,'Arial Black',Arial,sans-serif;font-weight:900;font-size:clamp(20px,2.15vw,29px);letter-spacing:-1px;-webkit-text-stroke:.5px currentColor}@media(max-width:760px){.escape-card figcaption{font-size:clamp(11px,2.7vw,20px);letter-spacing:-.4px;-webkit-text-stroke:.25px currentColor}}

/* Home only: retain the source photographs and their person-to-window scale.
   Limit enlargement of the 184px photo regions rather than inventing detail. */
.escape-banner .escape-cards{max-width:800px;gap:34px}.escape-banner .escape-card figcaption{font-size:clamp(18px,2vw,24px);letter-spacing:-.8px}.facebook-cover.escape-banner{padding-top:36px;padding-bottom:28px}.escape-banner .escape-original{clip-path:inset(3px)}@media(max-width:760px){.escape-banner .escape-cards{gap:15px}.facebook-cover.escape-banner{padding:26px 18px 22px}.escape-banner .escape-card figcaption{font-size:clamp(11px,2.7vw,20px);letter-spacing:-.4px}}

.home-two-windows{padding-bottom:0}.home-two-windows figure{margin:0}.home-two-windows img{display:block;width:100%;height:auto}.home-two-windows .section-head p{max-width:330px}@media(max-width:760px){.home-two-windows .section-head{align-items:start;gap:20px}.home-two-windows h2{font-size:32px}.home-two-windows .section-head p{max-width:none}}

.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-200%);z-index:100;background:#fff;color:#191919;border:3px solid #cf1728;padding:10px 18px;font-weight:bold}.skip-link:focus{transform:translateY(0)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #cf1728;outline-offset:4px}.buyer-guide{max-width:1120px}.buyer-guide>h2{font-size:34px;margin:48px 0 24px}.buyer-guide>p{margin:18px 0;color:#454545}.guide-answer{background:#f7f8fa;border-left:4px solid #cf1728;padding:30px;margin:0 0 36px}.guide-answer h2{font-size:32px;margin:10px 0 18px}.guide-answer p{margin:16px 0;max-width:850px}.guide-answer .btn{margin-top:10px}.buyer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.buyer-card{display:block;padding:26px;border:1px solid #ddd;background:#fff}.buyer-card h3{font-size:23px;line-height:1.2;margin:0 0 16px}.buyer-card p{font-size:15px;color:#454545;margin:0 0 16px}.buyer-card b,.buyer-card>a{font-size:13px;color:#b91423}.buyer-entry{background:#f7f8fa}.table-scroll{overflow-x:auto;border:1px solid #ddd;margin:24px 0}.buyer-table{border-collapse:collapse;width:100%;min-width:640px;text-align:left}.buyer-table caption{caption-side:top;text-align:left;padding:14px 20px;font-weight:700;color:#454545;font-size:13px}.buyer-table th,.buyer-table td{padding:18px;vertical-align:top;border-bottom:1px solid #ddd;font-size:15px}.buyer-table thead{background:#f7f8fa}.buyer-table tbody th{width:22%}.buyer-list{padding-left:24px;color:#454545}.buyer-list li{padding:7px 0}.buyer-list a{text-decoration:underline}.buyer-photo-split{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center;margin:48px 0}.buyer-photo-split h2{font-size:34px;margin:0 0 24px}.buyer-photo-split p{margin:18px 0}.buyer-photo-split figure{margin:0;border:1px solid #ddd;background:#f7f8fa;padding:12px}.buyer-photo-split img{display:block;width:100%;height:430px;object-fit:contain}.buyer-photo-split figcaption{font-size:12px;padding:8px 0 0}.operation-step{padding:0 0 40px;border-bottom:1px solid #ddd}.contact-choices{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:26px 0 35px}.contact-choices+h3{margin-bottom:15px}.inquiry-review{padding:24px;border:2px solid #cf1728;margin-top:28px}.inquiry-review[hidden]{display:none}.inquiry-review h3{font-size:24px}.inquiry-review p{margin:16px 0}.inquiry-review label{display:block;font-weight:bold;font-size:13px}.inquiry-review textarea{width:100%;font:inherit;font-size:14px;padding:12px;border:1px solid #aaa;margin-top:8px;resize:vertical}.inquiry-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px}.inquiry-actions .btn[hidden]{display:none}.btn.secondary{background:#fff;color:#b91423;border:1px solid #b91423}.formgrid input,.formgrid select,.formgrid textarea{max-width:100%;font-size:16px}.formgrid select{width:100%;padding:12px;background:white;border:1px solid #bbb;margin-top:7px}.formgrid textarea{resize:vertical}@media(max-width:760px){.buyer-grid,.buyer-photo-split{grid-template-columns:1fr}.buyer-photo-split{gap:24px;margin:34px 0}.buyer-guide>h2,.buyer-photo-split h2,.guide-answer h2{font-size:29px}.guide-answer{padding:22px}.buyer-card{padding:23px}.buyer-photo-split img{height:auto;max-height:460px;object-fit:contain}.inquiry-review{padding:18px}.inquiry-actions .btn{width:100%}.contact-choices{gap:18px}}
/* Preserve the wordmark's aspect ratio when image dimensions are declared. */
.brand img{height:auto}@media(max-width:760px){body{padding-bottom:76px}}

.pro-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0 55px}.pro-hub-card{border-top:3px solid #cf1728;display:flex;flex-direction:column}.pro-hub-card p{flex:1}.pro-hub-card:hover{border-color:#cf1728;background:#fafafa}.pro-hub-section{border-top:1px solid #ddd;margin-top:46px;padding-top:34px}.pro-hub-section h2{font-size:34px;margin:0 0 24px}.pro-hub-section>p{margin:18px 0;color:#454545;max-width:1000px}.pro-downloads{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0}.pro-related{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pro-related a{padding:14px;border:1px solid #ddd;font-size:14px;font-weight:700}.pro-related a:hover{color:#b91423;border-color:#cf1728}.pro-template-grid{display:grid;grid-template-columns:1fr;gap:16px;margin:24px 0}.pro-hero .town-hero-layout h1{font-size:clamp(36px,3.5vw,48px)}.pro-hero .town-hero-photo{max-width:280px}.professional-fields{margin:0 0 12px;padding:20px;border:1px solid #ccc;background:#fafafa;min-width:0}.professional-fields[hidden]{display:none}.professional-fields legend{padding:0 7px;font-size:16px;font-weight:700}.professional-fields p{font-size:14px;margin:0 0 20px;color:#454545}.guide-nav{max-height:calc(100vh - 150px);overflow-y:auto}@media(max-width:760px){.pro-hub-grid{grid-template-columns:1fr;gap:18px}.pro-hub-section h2{font-size:29px}.pro-related{grid-template-columns:1fr}.pro-downloads .btn{width:100%;font-size:12px;padding:16px}.professional-fields{padding:14px}.guide-nav{max-height:none}.pro-hero .town-hero-layout h1{font-size:36px}}@media print{header,.top,.utility,footer,.guide-nav,.mobile-call,.pro-downloads,.cta{display:none!important}.guide-layout{display:block}.content{padding:20px 0}.wrap{padding:0}.table-scroll{overflow:visible}.buyer-table{min-width:0}.pagehero{padding:20px 0}}

/* Keep all mobile navigation links inside the visible screen, including iOS browser chrome. */
@media(max-width:760px){
 .nav nav{max-height:var(--menu-available-height,calc(100dvh - 83px));overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scroll-padding-block:16px;padding-bottom:calc(28px + env(safe-area-inset-bottom));touch-action:pan-y}
 .nav .drop:not(.open) .dropdown{display:none}
 .nav .drop.open .dropdown{display:block;max-height:none;overflow:visible}
 .nav nav.open~.menu{flex-shrink:0}
 body:has(#navigation.open) .mobile-call{display:none}
}
