@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--navy:#101e31;--cream:#f7f3e9;--red:#d5343c;--blue:#007eba;--gold:#f4c96a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--navy);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.topline{padding:12px 5%;background:var(--navy);color:var(--cream);font-size:10px;letter-spacing:2px;display:flex;justify-content:space-between}header{padding:26px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d8d6cd}.brand{font-family:'Barlow Condensed',Impact,sans-serif;font-size:32px;font-weight:800;letter-spacing:1px;line-height:.95}.brand span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:9px;letter-spacing:1.7px;margin-top:9px}nav{display:flex;gap:32px;font-size:13px;font-weight:600}.button{border:0;background:var(--red);color:#fff;padding:19px 26px;border-radius:4px;font-weight:700;display:inline-block;cursor:pointer;font-size:14px;transition:transform .2s,background .2s}.button:hover{background:#b92730;transform:translateY(-2px)}.small{padding:14px 22px}.hero{padding:65px 5% 70px;display:grid;grid-template-columns:1.05fr 1fr;gap:5%;align-items:center;max-width:1500px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;margin-bottom:24px}.dot{display:inline-block;width:7px;height:7px;background:var(--red);border-radius:50%;margin-right:7px}h1,h2,h3{font-family:'Barlow Condensed',Impact,sans-serif;letter-spacing:-1px;margin:0;font-weight:700;line-height:.94}h1{font-size:clamp(64px,7.6vw,112px)}em{font-style:normal;color:var(--red)}.intro{font-size:17px;line-height:1.7;max-width:440px;margin:27px 0}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.textlink{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px}.rating{display:flex;align-items:center;gap:18px;margin-top:35px}.stars{color:#ad7112;letter-spacing:3px;font-size:19px}.rating b{font-size:12px}.rating small{display:block;font-size:10px;margin-top:6px;color:#46515f}.hero-art{position:relative;background:#fff;border:1px solid #dcdcd5;border-radius:8px;box-shadow:12px 14px 0 #e9e5d9;transform:rotate(2deg);padding:28px 18px 10px}.hero-art img{width:100%;display:block}.art-label{font-size:9px;letter-spacing:3px;text-align:center;font-weight:700}.signature{background:var(--navy);color:white;padding:20px 22px;font-size:23px;font-family:'Barlow Condensed',sans-serif;display:flex;justify-content:space-between;align-items:center;border-radius:4px}.signature span{font:8px 'DM Sans',sans-serif;letter-spacing:2px}.ticker{background:var(--red);color:white;padding:22px 5%;display:flex;justify-content:space-around;gap:20px;font-family:'Barlow Condensed',sans-serif;font-size:20px;letter-spacing:2px;text-align:center}.ticker span{color:var(--gold)}.section{padding:90px 7%;max-width:1500px;margin:auto}h2{font-size:clamp(44px,5.5vw,76px)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px;gap:45px}.section-head>p{max-width:360px;font-size:15px;line-height:1.8;color:#46515f}.services{display:grid;grid-template-columns:1fr 1fr;border:1px solid #d8d6cd}.services article{padding:42px;background:#ece8dd;position:relative}.services article.permanent{background:var(--navy);color:var(--cream)}.number{position:absolute;right:35px;top:35px;font-size:13px;color:var(--blue)}h3{font-size:47px}.services p{max-width:380px;font-size:14px;line-height:1.8;margin:24px 0}.tags{display:flex;gap:10px;margin-bottom:40px}.tags span{border:1px solid #9da1a2;padding:7px 10px;font-size:9px;border-radius:20px}.glow-section{background:var(--navy);color:var(--cream);padding:70px 7%;display:grid;grid-template-columns:1fr 1.15fr;gap:40px;align-items:center}.glow-section p{font-size:13px;line-height:1.8;color:#bcc8d3}.modes{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.modes button{padding:11px 13px;background:transparent;border:1px solid #526174;border-radius:20px;color:var(--cream);font-size:10px;cursor:pointer}.modes .active{background:var(--gold);color:var(--navy);border-color:var(--gold)}.house-wrap svg{width:100%}.roof-lights,.roof-glow{stroke:#ffe0a1;transition:stroke .4s}.house-wrap p{text-align:center;font-size:8px;letter-spacing:1.4px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.steps>div{border-top:1px solid #bbbebc;padding-top:22px}.steps span{font-size:12px;color:var(--red)}.steps h3{font-size:30px;margin-top:20px}.steps p{font-size:13px;line-height:1.8;color:#46515f}.doc{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#e9e5da;align-items:center}.news img{width:100%;display:block;transform:rotate(-2deg);box-shadow:8px 12px 0 #d1ccbf}.news small{display:block;margin-top:25px;font-size:8px;letter-spacing:1px}.doc p{font-size:14px;line-height:1.9}.doc .intro{font-size:17px}blockquote{margin:28px 0;font-family:'Barlow Condensed',sans-serif;font-size:30px;border-left:3px solid var(--red);padding-left:20px}.review-block{border-top:1px solid #bfbcaf;padding-top:25px}.review-block b{display:block;margin-top:10px;font-size:14px}.review-block p{font-size:11px}.area{text-align:center}.area p:not(.eyebrow){max-width:550px;margin:25px auto;line-height:1.8;font-size:14px}.towns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.towns span{padding:12px 22px;border:1px solid #c5c8c2;border-radius:30px;font-size:13px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;border-top:1px solid #d1d2c9}details{border-bottom:1px solid #c4c9c7;padding:22px 0}summary{cursor:pointer;font-size:14px;font-weight:700}details p{font-size:13px;line-height:1.8;color:#46515f}.quote{background:var(--navy);color:var(--cream);display:grid;grid-template-columns:1fr 1.1fr;gap:9%;max-width:none}.quote h2{font-size:clamp(65px,7vw,96px)}.quote h2 em{color:var(--gold)}.quote p{font-size:14px;line-height:1.8;max-width:380px}.phone{display:block;font-family:'Barlow Condensed',sans-serif;font-size:37px;margin-top:35px}label{display:block;font-size:11px;letter-spacing:.3px;margin-bottom:20px}input,select,textarea{display:block;width:100%;padding:14px;margin-top:9px;background:#1d2d43;color:white;border:1px solid #526174;border-radius:3px;font-size:13px}input::placeholder,textarea::placeholder{color:#acb8c5}input:focus,textarea:focus,select:focus{outline:2px solid var(--gold)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fine,.quote p.fine{font-size:10px;line-height:1.7;color:#b0bdcb}#message-result{margin-top:25px;border-top:1px solid #526174;padding-top:25px}#copy-text{background:transparent;color:white;border:1px solid #526174;padding:12px;cursor:pointer}footer{padding:45px 7%;display:grid;grid-template-columns:1.1fr 1fr 1fr;align-items:center;gap:25px}footer p,footer>a:not(.brand){font-size:11px;line-height:1.8}footer small{grid-column:1/-1;border-top:1px solid #d1d2c9;padding-top:22px;font-size:9px;color:#46515f}@media(min-width:1600px){.glow-section,.quote{padding-left:calc((100vw - 1300px)/2);padding-right:calc((100vw - 1300px)/2)}}@media(max-width:850px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:45px;gap:45px}.hero-art{max-width:540px;width:100%;margin:0 auto}.hero-copy{max-width:620px}h1{font-size:86px}.ticker{font-size:14px;flex-wrap:wrap}.section{padding:65px 6%}.section-head{align-items:start}.glow-section,.doc,.quote,.faq{grid-template-columns:1fr}.news{max-width:500px}.steps{gap:20px}.quote{gap:45px}.glow-section{padding:60px 6%}.doc{gap:50px}}@media(max-width:540px){.topline span{display:none}.brand{font-size:26px}.brand span{font-size:7px}.small{padding:12px;font-size:11px}header{padding:22px 5%}h1{font-size:67px}.eyebrow{font-size:8px;letter-spacing:1.5px}.intro{font-size:15px}.section-head{display:block}.section-head>p{margin-top:25px}.services,.steps{grid-template-columns:1fr}.services article{padding:32px}.steps{gap:25px}.ticker{gap:12px;font-size:12px}.rating{gap:12px}.stars{font-size:15px}.rating b{font-size:11px}.form-row{grid-template-columns:1fr;gap:0}footer{grid-template-columns:1fr 1fr}footer .brand{grid-column:1/-1}.hero-art{padding:20px 10px 10px}.signature{padding:15px}.actions{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.bulb-strand{height:24px;background:var(--navy);display:flex;justify-content:space-around;align-items:start;border-top:2px solid #344837;overflow:visible;position:relative;z-index:2}.bulb-strand i{display:block;width:7px;height:13px;border-radius:3px 3px 6px 6px;background:#ffdc96;box-shadow:0 0 8px #ffda82,0 0 17px #ffcf7770;position:relative;transform:rotate(-8deg)}.bulb-strand i:before{content:'';position:absolute;top:-3px;left:1px;width:5px;height:4px;background:#465843}.bulb-strand i:nth-child(3n){background:#42c9ff;box-shadow:0 0 8px #42c9ff,0 0 17px #42c9ff70;transform:rotate(8deg)}.bulb-strand i:nth-child(3n + 2){background:#f24c58;box-shadow:0 0 8px #f24c58,0 0 17px #f24c5870}.hero-art{box-shadow:12px 14px 0 #e9e5d9,0 0 65px #007eba18}.transformation{padding-bottom:50px}.comparison{position:relative;aspect-ratio:620/350;background:var(--navy);overflow:hidden;border-radius:8px;cursor:ew-resize;touch-action:pan-y;box-shadow:0 20px 45px #101e311a}.comparison-base,.comparison-after{position:absolute;inset:0}.comparison svg{width:100%;height:100%;display:block}.comparison-after{clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.compare-divider{position:absolute;top:0;bottom:0;left:var(--reveal);width:2px;background:#fff;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 20px #fff5}.compare-divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:2px solid white;background:var(--navy);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:white;font-size:23px;box-shadow:0 4px 15px #0005}.compare-label{position:absolute;bottom:20px;border:1px solid #ffffff60;border-radius:3px;padding:9px 13px;background:#101e31cc;color:white;font-size:9px;letter-spacing:1.5px;pointer-events:none}.before-label{right:20px}.after-label{left:20px}.compare-controls{display:flex;align-items:center;gap:20px;margin-top:25px}.compare-controls label{margin:0;font-size:12px;font-weight:600}.compare-controls input{flex:1;width:auto;margin:0;padding:0;accent-color:var(--red);cursor:ew-resize}.compare-controls output{font-size:12px;min-width:35px}.compare-note{font-size:9px;letter-spacing:1.3px;color:#66717a;margin:20px 0 25px}.hero-copy{animation:arrive .7s ease-out both}.hero-art{animation:art-arrive .9s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes art-arrive{from{opacity:0;transform:translateY(20px) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(2deg)}}@media(max-width:540px){.compare-controls{gap:12px}.compare-controls label{font-size:10px}.compare-label{font-size:7px;bottom:12px;padding:7px}.before-label{right:12px}.after-label{left:12px}.compare-divider span{width:38px;height:38px}.comparison{aspect-ratio:620/400}}@media(prefers-reduced-motion:reduce){.hero-copy,.hero-art{animation:none}}
.service-photo{display:block;width:calc(100% + 84px);max-width:none;margin:-42px -42px 32px;height:260px;object-fit:cover;object-position:center 48%}.services .number{top:285px}.installation-gallery{padding-top:45px}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px}.photo-pair figure{margin:0;background:var(--navy);color:var(--cream);border-radius:5px;overflow:hidden}.photo-pair img{width:100%;height:440px;object-fit:cover;display:block}.photo-pair figure:first-child img{object-position:center 58%}.photo-pair figcaption{padding:26px 30px}.photo-pair figcaption span{font-size:9px;letter-spacing:2px;color:var(--gold)}.photo-pair h3{font-size:36px;margin-top:15px}.permanent-showcase{background:#0b1423;color:var(--cream);max-width:none}.permanent-showcase .section-head p{max-width:380px;color:#bcc8d3;font-size:14px;line-height:1.8}.video-frame{position:relative;border:1px solid #344259;border-radius:8px;overflow:hidden;background:#000}.video-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}.video-bottom{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:#152338;gap:15px}.video-bottom span{font-size:9px;letter-spacing:2px;color:var(--gold)}.video-bottom button{color:white;border:1px solid #69768b;background:transparent;padding:9px 13px;border-radius:3px;font-size:11px;cursor:pointer}.video-note{font-size:10px;color:#aebcca;margin-top:18px;line-height:1.8}@media(max-width:850px){.photo-pair img{height:330px}}@media(max-width:540px){.service-photo{width:calc(100% + 64px);margin:-32px -32px 30px;height:220px}.services .number{top:247px}.photo-pair{grid-template-columns:1fr}.photo-pair img{height:350px}.video-bottom{padding:12px}.video-bottom span{font-size:7px;letter-spacing:1px}}
.service-paths>h2{margin-bottom:24px}.path-intro{max-width:560px;font-size:15px;line-height:1.8;color:#46515f}.path-list{margin-top:40px;border-top:1px solid #c9cbc4}.path-list>a{display:flex;justify-content:space-between;align-items:center;padding:34px 8px;border-bottom:1px solid #c9cbc4;gap:30px;transition:background .2s}.path-list>a:hover{background:#ece8dd}.path-list span{font-size:9px;letter-spacing:1.7px;color:#46515f}.path-list h3{font-size:35px;letter-spacing:-.5px;margin:14px 0}.path-list p{font-size:13px;line-height:1.7;margin:0;color:#46515f}.path-list b{font-size:32px;color:var(--red)}.service-page-hero{padding-top:45px;padding-bottom:65px}.back-link{display:inline-block;font-size:12px;color:#46515f;margin-bottom:45px}.service-page-hero h1{font-size:clamp(60px,7vw,100px);max-width:1000px}.service-page-hero .intro{max-width:640px}.dedicated-gallery{padding-top:25px}.dedicated-gallery h2{font-size:48px;margin-bottom:35px}.dedicated-photos{display:grid;gap:55px}.dedicated-photos figure{margin:0}.dedicated-photos img{width:100%;max-height:800px;object-fit:contain;background:#0d1521;display:block;border-radius:6px}.dedicated-photos figcaption{font-size:13px;margin-top:16px;color:#46515f}.service-details{padding-top:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.service-details article{border-top:1px solid #c9cbc4;padding-top:24px}.service-details h3{font-size:30px;line-height:1.1}.service-details p{font-size:14px;line-height:1.8;color:#46515f}.service-page-cta{background:#ece8dd;max-width:none}.service-page-cta h2{font-size:clamp(40px,4.5vw,64px);margin-bottom:35px}.service-page-cta>p:last-child{font-size:11px;margin-top:30px;color:#46515f}@media(max-width:650px){.path-list h3{font-size:30px}.service-details{grid-template-columns:1fr;gap:25px}.dedicated-gallery h2{font-size:40px}.dedicated-photos{gap:35px}.service-page-hero{padding-top:35px}.back-link{margin-bottom:35px}}
.headline-line{display:block;white-space:nowrap}.hero h1{font-size:clamp(54px,6.5vw,94px)}.header-phone{font-size:12px;font-weight:700}.photo-comparison{aspect-ratio:4/3}.photo-comparison img{width:100%;height:100%;display:block;object-fit:fill}.celebrations{background:#ece8dd}.celebrations>p:not(.eyebrow){max-width:650px;font-size:15px;line-height:1.9;color:#46515f}.occasion-list{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.occasion-list span{background:var(--cream);padding:12px 16px;border-radius:4px;font-size:11px}.mobile-contact{display:none}.transformation{padding-top:65px}.service-paths{padding-top:55px}@media(max-width:1050px){.header-phone{display:none}}@media(max-width:850px){.hero h1{font-size:clamp(50px,10vw,82px)}}@media(max-width:540px){.hero h1{font-size:clamp(42px,10.7vw,58px);letter-spacing:-1.4px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:var(--cream);border-top:1px solid #d1d2c9;padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-contact a{flex:1;text-align:center;padding:13px;background:var(--navy);color:white;font-size:12px;font-weight:700;border-radius:4px}.mobile-contact a:last-child{background:var(--red)}body{padding-bottom:72px}.photo-comparison{aspect-ratio:4/3}}
.mansion-feature{padding-top:45px;padding-bottom:65px}.mansion-feature .section-head{align-items:center;margin-bottom:30px}.mansion-feature h2{font-size:clamp(38px,4.5vw,64px)}.mansion-feature .video-bottom{background:#ece8dd}.mansion-feature .video-bottom span{color:var(--navy);font-size:11px;letter-spacing:.5px}.mansion-feature .video-bottom button{color:var(--navy);border-color:#abb1b4}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-grid a{display:block}.project-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:5px}.project-grid a:nth-child(2) img{object-position:center 60%}.project-grid span{display:block;margin-top:14px;font-size:12px;font-weight:600}.home-projects{padding-top:45px}@media(max-width:650px){.project-grid{grid-template-columns:1fr;gap:30px}.mansion-feature .section-head{display:block}.mansion-feature .section-head .textlink{display:inline-block;margin-top:25px}.mansion-feature .video-bottom span{font-size:9px}.mansion-feature{padding-top:30px}}
.brand .lettering-logo{display:block;width:185px;height:auto;max-width:100%}header{gap:20px}footer .brand .lettering-logo{width:220px}.process>h2{font-size:clamp(39px,4.8vw,68px);line-height:1.04}.mansion-feature h2{color:#101010}@media(max-width:540px){.brand .lettering-logo{width:145px}header{gap:12px;padding-top:16px;padding-bottom:16px}}

.booking-note{font-size:12px;font-weight:600;margin:18px 0 0;color:#46515f}.reveal-cta{display:flex;align-items:center;gap:24px;margin-top:28px}.reveal-cta p{font-weight:700;font-size:16px}.quote h2{font-size:clamp(46px,5.5vw,76px);line-height:1.02}#quote{scroll-margin-top:24px}@media(max-width:850px){.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:var(--cream);border-top:1px solid #d1d2c9;padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-contact a{flex:1;text-align:center;padding:14px 8px;background:var(--navy);color:white;font-size:13px;font-weight:700;border-radius:4px}.mobile-contact a:last-child{background:var(--red);flex:2}body{padding-bottom:88px}}@media(max-width:540px){.hero .actions>.button{width:100%;text-align:center;padding:18px 12px;font-size:13px}.reveal-cta{align-items:flex-start;flex-direction:column;gap:6px}.reveal-cta .button{width:100%;text-align:center}}

.path-list .service-thumb{width:230px;height:155px;object-fit:cover;border-radius:5px;flex:none}.path-list>a>div{flex:1}.hero-copy{display:flex;flex-direction:column}.hero-copy>.eyebrow{order:0}.hero-copy>h1{order:1}.hero-copy>.intro{order:2}.hero-copy>.actions{order:3}.hero-copy>.booking-note{order:4}.hero-copy>.rating{order:5}@media(max-width:850px){.hero-copy>.actions{order:2;margin-top:24px}.hero-copy>.booking-note{order:3}.hero-copy>.intro{order:4;margin-top:22px}.hero-copy>.rating{order:5;margin-top:10px}.path-list .service-thumb{width:170px;height:140px}}@media(max-width:540px){.hero{padding-top:28px}.hero-copy>.eyebrow{margin-bottom:16px}.path-list>a{flex-wrap:wrap;gap:18px;padding:26px 0}.path-list .service-thumb{width:100%;height:auto;aspect-ratio:16/9}.path-list>a>div{flex:1}.path-list h3{margin-top:10px}.booking-note{line-height:1.6}}

/* Persistent quote access across screen sizes. */
.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--cream);border-top:1px solid #c9cbc4;box-shadow:0 -4px 20px #10203312;padding:10px max(16px,calc((100vw - 1100px)/2)) calc(10px + env(safe-area-inset-bottom));gap:12px}.mobile-contact a{flex:1;text-align:center;padding:14px 18px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;border-radius:4px}.mobile-contact a:last-child{background:var(--red);flex:2}.mobile-contact a:hover{filter:brightness(.94)}body{padding-bottom:88px}html{scroll-padding-bottom:100px}@media(min-width:851px){.mobile-contact a{flex:none;min-width:200px}.mobile-contact a:last-child{flex:1}.mobile-contact{align-items:center}}@media(max-width:540px){.mobile-contact{padding-left:12px;padding-right:12px;gap:10px}.mobile-contact a{font-size:13px;padding:14px 8px}}

.hero h1 .hero-rally{font-size:.47em;letter-spacing:-.3px;line-height:1.2;margin-top:16px;color:var(--red)}@media(max-width:540px){.hero h1 .hero-rally{font-size:.46em;letter-spacing:-.2px;margin-top:12px}}

.quote-tools{min-width:0}.estimator{padding:26px;border:1px solid #526174;border-radius:6px;margin-bottom:32px;background:#16263b}.estimator h3{font-size:34px;line-height:1.1;margin-bottom:24px}.estimate-price{display:block;color:var(--gold);font-family:'Barlow Condensed',sans-serif;font-size:48px;line-height:1.1}#estimate-result{padding:18px 0;border-top:1px solid #526174}#estimate-result p{margin-bottom:0}.quote-tools form{border-top:1px solid #526174;padding-top:28px}@media(max-width:540px){.estimator{padding:20px}.estimate-price{font-size:42px}}
