:root{--ink:#10283a;--ink2:#1b364b;--navy:#10283a;--blue:#3174a4;--blue2:#4f96bd;--paper:#f8f8f5;--white:#fff;--muted:#64727b;--line:#dce4e5;--head:Georgia,'Times New Roman',serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}::selection{background:#3174a4;color:#fff}.container{width:min(100% - 84px,1248px);margin:auto}.skip-link{position:absolute;left:10px;top:-100px;z-index:1000;background:white;padding:12px}.skip-link:focus{top:10px}.topbar{height:38px;background:var(--navy);color:#e5edef;font-size:11px;letter-spacing:.11em;text-transform:uppercase}.topbar-inner{height:100%;display:flex;justify-content:space-between;align-items:center}.topbar a{font-weight:700;color:#e7edef}.topbar a span{margin-left:8px;color:#77b2d5}.topbar-dot{display:inline-block;width:6px;height:6px;background:#87afc8;border-radius:50%;margin-right:9px;vertical-align:middle}.site-header{background:#fff;border-bottom:1px solid #e7eded;position:sticky;top:0;z-index:30}.nav-shell{height:94px;display:flex;align-items:center;gap:28px;justify-content:space-between}.brand{display:flex;align-items:center;gap:8px;min-width:240px}.brand img{width:61px;height:62px;object-fit:contain}.brand-wordmark{display:flex;flex-direction:column;gap:3px}.brand-wordmark strong{font:700 21px var(--head);letter-spacing:.11em}.brand-wordmark b{font-weight:400}.brand-wordmark small{font-size:8px;letter-spacing:.15em;font-weight:700;color:#657782}.desktop-nav{display:flex;gap:29px;align-items:center;white-space:nowrap}.desktop-nav a{font-size:13px;font-weight:700;color:#42515b;transition:color .2s}.desktop-nav a:hover,.footer-links a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:0;min-height:48px;padding:0 23px;font-size:12px;font-weight:800;letter-spacing:.02em;border-radius:3px;transition:transform .2s,background .2s;white-space:nowrap}.button:hover{transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.button-dark{background:var(--navy);color:white}.button-blue{background:#276e9d;color:#fff}.button-blue:hover{background:#1b527a}.button-outline{border:1px solid #bacbd2;background:transparent;color:var(--ink)}.header-cta{min-height:44px}.menu-toggle{border:0;background:transparent;display:none;width:36px;height:36px;flex-direction:column;gap:6px;justify-content:center;padding:7px}.menu-toggle span{display:block;width:100%;height:2px;background:var(--navy)}.mobile-nav[hidden]{display:none!important}.mobile-nav{padding:12px 30px 25px;background:#fff;border-top:1px solid var(--line)}.mobile-nav a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:700}
.hero{background:#fafbf9;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:35px;min-height:625px;align-items:center;padding-top:48px;padding-bottom:34px}.hero-copy{padding:30px 0 43px;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:800;color:#597283;display:flex;align-items:center;gap:12px;line-height:1.5}.eyebrow-mark{background:#4685ae;width:30px;height:1px;display:inline-block}.eyebrow-blue{color:var(--blue);margin-bottom:21px}.eyebrow-light{color:#adc8d8;margin-bottom:20px}.hero h1{font:400 clamp(64px,6.1vw,102px)/.98 var(--head);letter-spacing:-.056em;margin:27px 0 25px}.hero h1 em,.section-intro h2 em,.about h2 em,.about-copy h2 em,.contact-copy h2 em{font-weight:400;font-style:italic;color:var(--blue)}.hero h1>span{color:#7a8a96}.hero-copy>p{max-width:440px;font-size:16px;line-height:1.85;color:#5f6c74}.hero-buttons{display:flex;gap:11px;flex-wrap:wrap;margin-top:31px}.hero-trust{display:flex;align-items:center;gap:12px;margin-top:41px;color:#657680;font-size:11px;white-space:nowrap}.trust-diamond{font-size:22px;color:#376d90}.trust-divider{height:11px;width:1px;background:#bbc7cb}.hero-art{height:600px;position:relative;margin-right:-38px}.hero-photo-wrap{position:absolute;right:0;top:14px;width:91%;height:490px;overflow:hidden;border-radius:2px;background:#eee}.hero-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:50% center}.hero-photo-wrap:after{position:absolute;inset:0;content:'';background:linear-gradient(0deg,rgba(18,38,55,.08),transparent 47%)}.hero-photo-small{position:absolute;bottom:5px;left:0;width:45%;height:222px;border:8px solid #fafbf9;box-shadow:0 16px 32px #0a263020;overflow:hidden}.hero-photo-small img{width:100%;height:100%;object-fit:cover}.hero-number{position:absolute;right:0;bottom:36px;background:var(--navy);color:white;padding:25px 37px 22px;display:flex;align-items:center;gap:23px;min-width:295px}.hero-number .sparkle{font-size:32px;color:#79b4d0}.hero-number strong{font:400 22px/1.12 var(--head);display:block}.hero-number small{display:block;font-size:10px;margin-top:10px;color:#c1d6e0}.hero-photo-credit{position:absolute;right:10px;top:520px;color:#647581;font-size:10px;letter-spacing:.03em}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #dee6e8;padding:21px 0 26px;font-size:10px;letter-spacing:.16em;color:#6b7b86;font-weight:700}.hero-bottom span span{font-size:16px;margin-left:15px}
.section-pad{padding:104px 0 115px}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-intro h2,.about-copy h2,.contact-copy h2{font:400 clamp(43px,4.35vw,66px)/1.12 var(--head);letter-spacing:-.047em;margin:0}.section-intro>p,.inspiration-intro-right>p{max-width:390px;color:var(--muted);line-height:1.8;font-size:15px;margin:0 0 7px}.services-section{background:#fff}.services-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-card{padding:25px 20px 23px 20px;border-right:1px solid var(--line);min-height:336px;display:flex;flex-direction:column;transition:background .2s}.service-card:first-child{border-left:1px solid var(--line)}.service-card:hover{background:#f0f6f7}.service-number{font-size:11px;color:#92a1a8;font-weight:700}.service-icon{margin:27px 0 25px;width:50px;height:50px;color:#275a7e}.service-icon svg{height:100%;width:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font:400 25px/1.17 var(--head);margin:0 0 13px;letter-spacing:-.02em}.service-card p{font-size:12px;color:#657681;line-height:1.75;margin:0 0 22px}.card-link{font-size:11px;font-weight:800;color:#276d9c;margin-top:auto}.card-link span{font-size:16px;margin-left:5px}
.inspiration-section{background:#f4f6f5}.inspiration-intro-right{display:flex;flex-direction:column;gap:13px}.gallery-note{font-size:11px;color:#60727b;line-height:1.6;max-width:450px}.gallery-note span{font-size:16px;color:var(--blue);vertical-align:middle;margin-right:4px}.comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.comparison-card{background:#fff;box-shadow:0 6px 24px rgba(16,40,58,.045)}.comparison-topline{padding:17px 21px;display:flex;justify-content:space-between;letter-spacing:.16em;color:#3b5970;font-size:10px;font-weight:800;border-bottom:1px solid var(--line)}.compare{position:relative;--reveal:50%;height:245px;overflow:hidden;background:#c4c9ca;touch-action:pan-y}.compare-before,.compare-after{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover}.compare-after-clip{position:absolute;inset:0;clip-path:inset(0 0 0 var(--reveal));pointer-events:none}.compare-after-clip img{object-position:center}.compare:before{content:'';position:absolute;left:var(--reveal);top:0;bottom:0;z-index:3;transform:translateX(-50%);background:#fff;width:3px;box-shadow:0 0 0 1px rgba(0,0,0,.05)}.compare-handle{position:absolute;left:var(--reveal);top:50%;z-index:4;background:#fff;color:#276a94;border:2px solid #e8edf0;width:47px;height:47px;border-radius:50%;transform:translate(-50%,-50%);display:flex;justify-content:center;align-items:center;gap:8px;pointer-events:none;box-shadow:0 3px 15px #0004}.compare-handle span{font-size:30px;line-height:1;margin-top:-3px}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:5;cursor:ew-resize;touch-action:pan-y}.compare input:focus-visible{opacity:.15;outline:5px solid #2f7fae;outline-offset:-5px}.compare-label{position:absolute;top:14px;z-index:2;font-size:9px;letter-spacing:.12em;font-weight:800;padding:8px 12px;background:#193145dc;color:white}.label-before{left:13px}.label-after{right:13px;background:#2d7199ed}.comparison-caption{padding:21px 22px 24px}.comparison-caption h3{font:400 26px var(--head);margin:0 0 7px}.comparison-caption p{font-size:12px;color:#6b7b82;margin:0;line-height:1.7}.slider-hint{text-align:center;font-size:10px;letter-spacing:.13em;color:#8a969b;margin:24px 0 0;font-weight:800}.slider-hint span{font-size:17px;margin-left:6px}
.about-section{background:#11293d;color:#fff;padding:95px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(42px,7vw,130px);align-items:center}.about-photo{height:600px;position:relative}.about-photo>img{height:100%;width:100%;object-fit:cover;object-position:center}.about-photo-label{position:absolute;bottom:0;left:0;background:#fff;color:#294258;padding:23px 29px;font-size:10px;letter-spacing:.16em;font-weight:800;line-height:1.9}.about-photo-label strong{color:var(--blue);font-size:12px}.about-copy h2{font-size:clamp(49px,4.8vw,73px);margin-bottom:23px}.about-copy h2 em{color:#73acd0}.about-copy>p{font-size:14px;line-height:1.9;color:#c5d2d8;max-width:485px}.about-copy>p.about-lead{font-size:18px;line-height:1.7;color:#e3eef1;margin-bottom:16px}.about-values{border-top:1px solid #3c5364;margin-top:31px}.about-values>div{padding:18px 0;display:flex;gap:24px;align-items:center;border-bottom:1px solid #3c5364}.about-values span{font-size:11px;color:#74a9c7}.about-values strong{font-size:13px;font-weight:600}.text-cta{display:inline-flex;margin-top:32px;align-items:center;gap:24px;font-size:13px;font-weight:800;border-bottom:1px solid #9dc2d7;padding-bottom:12px}.text-cta span{font-size:20px;color:#89b7d0}
.process-section{background:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:52px}.step-number{font:400 45px var(--head);color:#31749f}.step-rule{margin:21px 0 25px;height:1px;background:#d9e1e3;position:relative}.step-rule:before{content:'';position:absolute;top:-4px;left:0;width:9px;height:9px;background:#2d79a8;border-radius:50%}.step h3{font:400 25px var(--head);margin:0 0 12px}.step p{font-size:13px;line-height:1.8;color:#667780;margin:0}
.contact-section{background:#172f42;color:#fff;padding:105px 0}.contact-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(55px,9vw,150px);align-items:start}.contact-copy h2{font-size:clamp(53px,5.3vw,78px)}.contact-copy h2 em{color:#78b2d4}.contact-copy>p{margin:28px 0 36px;color:#c0d3db;line-height:1.85;max-width:420px;font-size:15px}.contact-detail{padding:20px 0;border-top:1px solid #435b6c;display:flex;flex-direction:column;gap:9px}.contact-detail>span{font-size:10px;letter-spacing:.16em;color:#97b6c7;font-weight:800}.contact-detail a{font:400 27px var(--head);overflow-wrap:anywhere}.contact-detail a span{font-family:Arial;font-size:18px;color:#8fbcd3}.availability{display:flex;align-items:center;gap:10px;margin-top:19px;font-size:12px;color:#bcd7e3}.availability-dot{width:8px;height:8px;border-radius:50%;background:#86b8ba}.contact-panel{background:#f9faf9;color:var(--ink);padding:38px 41px;box-shadow:0 20px 50px #0002}.contact-panel h3{font:400 32px var(--head);margin:0 0 8px}.contact-panel>p{font-size:12px;color:#76858b;line-height:1.7;margin:0 0 24px}.contact-panel form{display:flex;flex-direction:column;gap:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.contact-panel label{font-size:12px;font-weight:700;color:#3f5664;display:flex;flex-direction:column;gap:8px}.contact-panel input,.contact-panel select,.contact-panel textarea{border:1px solid #d6e0e4;background:#fff;border-radius:2px;padding:12px 13px;outline:none;font-size:13px;font-weight:400;color:#243d50;width:100%}.contact-panel input:focus,.contact-panel textarea:focus,.contact-panel select:focus{border-color:#367bac;box-shadow:0 0 0 2px #367bac22}.contact-panel textarea{resize:vertical;min-height:107px}.contact-panel input::placeholder,.contact-panel textarea::placeholder{color:#a3adb3}.form-submit{width:100%;min-height:54px;margin-top:2px}.form-help{font-size:10px;line-height:1.6;color:#839198;margin:0;text-align:center}
.site-footer{background:#fafbfa;padding:44px 0 22px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:37px}.footer-brand{display:flex;align-items:center;gap:8px}.footer-brand img{width:74px;height:74px;object-fit:contain}.footer-brand strong{display:block;font:400 23px var(--head);letter-spacing:.08em}.footer-brand small{font-size:8px;letter-spacing:.14em;color:#657884}.footer-links{display:flex;gap:25px;font-size:12px;font-weight:700;color:#496071}.back-to-top{font-size:10px;color:#417b9c;letter-spacing:.13em;font-weight:800;white-space:nowrap}.footer-bottom{border-top:1px solid #dfe7e9;padding-top:20px;display:flex;gap:15px;justify-content:space-between;font-size:10px;color:#87959e;line-height:1.6}.footer-bottom span:nth-child(2){letter-spacing:.12em;color:#607d90}
@media(max-width:1150px){.container{width:min(100% - 54px,1248px)}.desktop-nav{gap:18px}.brand{min-width:220px}.brand-wordmark strong{font-size:18px}.header-cta{padding:0 12px}.hero h1{font-size:76px}.hero-trust{font-size:10px;gap:8px}.hero-photo-small{width:52%}.services-grid{grid-template-columns:repeat(3,1fr)}.service-card:nth-child(4){border-left:1px solid var(--line);border-top:1px solid var(--line)}.service-card:nth-child(5){border-top:1px solid var(--line)}}
@media(max-width:830px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.nav-shell{height:75px}.brand{min-width:0}.hero-grid{grid-template-columns:1fr;gap:10px;padding-top:28px}.hero-copy{padding:15px 0}.hero h1{font-size:clamp(67px,9vw,95px)}.hero-copy>p{max-width:600px}.hero-art{height:510px;margin:0}.hero-photo-wrap{height:440px;width:84%}.hero-photo-small{width:38%;height:210px}.hero-number{bottom:17px}.hero-photo-credit{top:460px}.hero-trust{margin-top:26px}.section-pad{padding:76px 0}.section-intro{align-items:start;flex-direction:column;gap:15px}.section-intro>p{max-width:540px}.comparison-grid{gap:12px}.compare{height:190px}.comparison-caption{padding:16px}.comparison-caption h3{font-size:22px}.about-grid{grid-template-columns:1fr;gap:40px}.about-photo{height:360px;max-width:660px}.contact-grid{grid-template-columns:1fr;gap:36px}.contact-panel{max-width:650px}.steps{gap:18px}}
@media(max-width:600px){.container{width:calc(100% - 36px)}.topbar{font-size:9px}.topbar-inner a{letter-spacing:0;font-size:10px}.topbar-inner>span{font-size:0}.topbar-dot{display:none}.topbar-inner>span:after{content:'AC REMODELING LLC';font-size:9px}.nav-shell{height:69px}.brand{gap:2px}.brand img{height:53px;width:53px}.brand-wordmark strong{font-size:16px}.brand-wordmark small{font-size:7px;letter-spacing:.09em}.hero h1{font-size:clamp(57px,14vw,76px);margin:20px 0}.hero-copy>p{font-size:14px}.hero-buttons{gap:10px}.hero-buttons .button{flex:1;min-width:143px;padding:0 14px;font-size:11px;gap:5px}.hero-trust{flex-wrap:wrap;gap:6px 8px;font-size:10px}.hero-art{height:348px}.hero-photo-wrap{height:285px;width:89%;top:4px}.hero-photo-small{height:133px;width:48%;bottom:0;border:5px solid #fafbf9}.hero-number{padding:15px 16px;bottom:11px;min-width:0;gap:10px}.hero-number strong{font-size:17px}.hero-number small{font-size:8px}.hero-number .sparkle{font-size:22px}.hero-photo-credit{top:297px;font-size:8px}.hero-bottom{font-size:8px;letter-spacing:.1em}.section-pad{padding:70px 0}.section-intro h2,.about-copy h2,.contact-copy h2{font-size:clamp(43px,9vw,54px)}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:300px;padding:17px 14px}.service-card:nth-child(3){border-left:1px solid var(--line);border-top:1px solid var(--line)}.service-card:nth-child(5){border-left:1px solid var(--line)}.service-icon{margin:23px 0 16px;width:40px;height:40px}.service-card h3{font-size:21px}.service-card p{font-size:11px}.service-card .card-link{font-size:10px}.comparison-grid{grid-template-columns:1fr;gap:18px}.compare{height:250px}.inspiration-intro-right>p{font-size:14px}.about-section{padding:65px 0}.about-photo{height:320px}.about-copy>p.about-lead{font-size:16px}.steps{grid-template-columns:1fr 1fr;gap:35px 25px}.step-number{font-size:37px}.step h3{font-size:22px}.step p{font-size:12px}.contact-section{padding:70px 0}.contact-detail a{font-size:24px}.contact-panel{padding:25px 18px}.contact-panel h3{font-size:29px}.form-row{grid-template-columns:1fr}.footer-main{flex-wrap:wrap;gap:17px}.footer-links{width:100%;gap:21px;flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}


/* AC Remodeling LLC v2: gallery, founder, interactive additions */
.desktop-nav a[href="gallery.html"],.desktop-nav a[href="about.html"]{transition:color .18s}
.section-bottom-action{text-align:center;margin-top:33px}
.section-bottom-action .button{padding:0 29px}
.highlight-section{background:#fff;overflow:hidden}
.highlight-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:7%;align-items:center}
.highlight-copy h2,.faq-section h2,.gallery-heading h2,.founder-copy h2{font:400 clamp(43px,4.8vw,68px)/1.09 var(--head);letter-spacing:-.047em;margin:0 0 23px}
.highlight-copy h2 em,.faq-section h2 em,.gallery-heading h2 em,.founder-copy h2 em{color:var(--blue);font-style:italic}
.highlight-copy>p,.faq-grid>div:first-child>p{color:var(--muted);font-size:15px;line-height:1.85;margin-bottom:25px}
.highlight-list{display:grid;gap:13px;font-size:13px;color:#496578;margin:23px 0 29px;font-weight:700}
.highlight-photos{height:480px;position:relative}
.highlight-large{width:87%;height:390px;object-fit:cover;object-position:center;margin-left:auto;border-radius:3px}
.highlight-small{position:absolute;left:0;bottom:0;width:47%;height:215px;object-fit:cover;border:8px solid white;box-shadow:0 14px 30px #1232}
.highlight-caption{position:absolute;right:10px;bottom:39px;font-size:10px;letter-spacing:.03em;color:#73838c}
.faq-section{background:#f1f5f7}
.faq-grid{display:grid;grid-template-columns:.72fr 1fr;gap:10%;align-items:start}
.faq-grid .text-cta{color:var(--blue);font-size:13px}
.faq-items{border-top:1px solid #ccdbe1}
.faq-items details{border-bottom:1px solid #ccdbe1;padding:0 0}
.faq-items summary{list-style:none;display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:750;padding:22px 0;cursor:pointer;gap:20px}
.faq-items summary::-webkit-details-marker{display:none}
.faq-items summary::after{content:'+';font-size:25px;font-weight:300;color:var(--blue)}
.faq-items details[open] summary::after{content:'−'}
.faq-items details p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 30px 24px 0}
.mobile-call{display:none}
.interior-hero{background:#112d42;color:#fff;padding:63px 0 78px;overflow:hidden}
.interior-hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:6%;align-items:center}
.interior-hero h1{font:400 clamp(64px,7vw,104px)/.98 var(--head);letter-spacing:-.052em;margin:17px 0 25px}
.interior-hero h1 em,.real-work-inner h2 em{font-style:italic;color:#79b7dc}
.interior-hero p{line-height:1.86;color:#c4d8e2;max-width:495px;font-size:16px}
.interior-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.button-ghost{border:1px solid #b8cfd88c;color:#fff;background:transparent}
.interior-hero-art{height:438px;overflow:hidden;border-radius:4px;box-shadow:0 30px 65px #0716214d}
.interior-hero-art img{width:100%;height:100%;object-fit:cover}
.gallery-heading{display:flex;gap:50px;justify-content:space-between;align-items:end}
.gallery-heading>p{max-width:450px;color:var(--muted);line-height:1.8;font-size:15px}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:39px 0 27px}
.filter-group{display:flex;gap:9px;flex-wrap:wrap}
.filter-button{border:1px solid #d7e0e5;border-radius:20px;background:#fff;color:#3a586c;font-size:12px;font-weight:700;padding:10px 19px;transition:.2s}
.filter-button.active,.filter-button[aria-pressed="true"]{background:#123450;color:#fff;border-color:#123450}
.filter-button:hover{border-color:#2b789d}
.filter-button span{opacity:.5;font-size:10px;padding-left:7px}
#gallery-count{font-size:11px;color:#687982;white-space:nowrap}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.gallery-grid .gallery-card[hidden]{display:none!important}
.gallery-card .compare{height:260px}
.gallery-card-actions{display:flex;gap:14px;align-items:center;margin-top:20px;flex-wrap:wrap}
.gallery-card-actions a,.gallery-card-actions button{font-size:11px;color:#2b709d;font-weight:800}
.gallery-card-actions button{background:transparent;border:0;padding:0;text-decoration:underline;text-underline-offset:4px}
.gallery-card-actions a:hover,.gallery-card-actions button:hover{color:#14394d}
.gallery-disclosure{padding:22px 29px;border-left:3px solid var(--blue);background:#eaf2f5;margin-top:45px;color:#34526a}
.gallery-disclosure strong{font-size:13px}.gallery-disclosure p{font-size:12px;line-height:1.7;margin:9px 0 0;max-width:990px}
.real-work-callout{background:#122c40;color:#fff;padding:70px 0}
.real-work-inner{display:flex;justify-content:space-between;gap:40px;align-items:center}
.real-work-inner h2{font:400 clamp(38px,4.2vw,62px)/1.05 var(--head);margin:15px 0}
.real-work-inner p{font-size:14px;line-height:1.8;color:#bdd3df;max-width:580px}
.image-dialog{width:min(92vw,1050px);padding:0;border:0;border-radius:7px;box-shadow:0 23px 100px #0019;background:#fff;color:#17394d}
.image-dialog::backdrop{background:#04131ede;backdrop-filter:blur(6px)}
.image-dialog img{width:100%;max-height:75vh;object-fit:contain;background:#edf3f5}
.image-dialog .lightbox-top{display:flex;justify-content:space-between;align-items:center;padding:17px 25px;font-weight:700;font-size:14px}
.image-dialog #lightbox-close{border:0;background:#edf3f5;border-radius:100%;height:34px;width:34px;color:#15334b;font-size:19px}
.image-dialog>p{font-size:12px;color:#647783;padding:0 25px 19px;margin:0}
.founder-section{background:#fafaf8}
.founder-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;align-items:center}
.founder-mark{padding:60px 40px;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid #e0e6e9;min-height:510px;justify-content:center}
.founder-mark img{width:min(80%,270px);height:auto;object-fit:contain}
.founder-mark>span{color:#416b82;font-size:11px;letter-spacing:.2em;font-weight:800;margin:25px 0}
.founder-mark-rule{height:1px;background:#b4ced8;width:90px;margin:5px auto 20px}
.founder-mark blockquote{font:italic 27px/1.4 Georgia,serif;color:#16364e;margin:0}
.founder-mark small{margin-top:18px;letter-spacing:.16em;color:#5d7483;font-size:10px}
.founder-copy .lead{color:#143e5c;font-size:20px;font-weight:600}
.founder-copy p{font-size:15px;line-height:1.95;color:#536b77}
.founder-copy .founder-note{padding:17px 18px;background:#eaf1f4;border-left:3px solid var(--blue);font-size:12px}
.founder-copy .button{margin-top:16px}
.about-principles{background:white}
.principles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.principles-grid article{border:1px solid #dfe8ec;background:#f8fafb;padding:31px 26px;min-height:212px}
.principles-grid article>span{font-size:13px;color:#4b83a9}
.principles-grid h3{font:400 27px Georgia,serif;margin:25px 0 14px}
.principles-grid p{font-size:13px;line-height:1.75;color:#6a7c85}
.about-wide-photo{height:480px;position:relative;overflow:hidden}
.about-wide-photo img{width:100%;height:100%;object-fit:cover}
.about-wide-label{position:absolute;bottom:32px;left:max(6%,calc((100% - 1248px)/2));background:#112c42ec;color:white;padding:20px 32px;font:30px Georgia,serif}
.about-wide-label small{display:block;font:11px var(--body);margin-top:8px;color:#b5d2e2}
.about-contact-buttons{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:1000px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-heading{align-items:start;flex-direction:column;gap:10px}.principles-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:830px){.highlight-grid,.faq-grid,.founder-grid{grid-template-columns:1fr;gap:30px}.highlight-photos{height:350px}.highlight-large{height:300px}.highlight-small{height:155px}.interior-hero-grid{grid-template-columns:1fr;gap:30px}.interior-hero-art{height:360px}.interior-hero{padding:50px 0}.gallery-toolbar{flex-wrap:wrap}.real-work-inner{flex-direction:column;align-items:start}.founder-mark{min-height:320px}.about-wide-photo{height:320px}}
@media(max-width:600px){.gallery-grid{grid-template-columns:1fr}.highlight-photos{height:315px}.highlight-large{height:252px}.highlight-small{height:150px}.highlight-caption{bottom:32px}.gallery-heading h2,.highlight-copy h2,.founder-copy h2{font-size:43px}.gallery-toolbar{margin-top:23px}.filter-group{gap:7px}.filter-button{padding:8px 12px;font-size:11px}.interior-hero h1{font-size:clamp(55px,14vw,78px)}.interior-hero-art{height:275px}.principles-grid{grid-template-columns:1fr}.mobile-call{display:block;position:fixed;z-index:60;right:17px;bottom:16px;background:#205c85;color:white;font-size:12px;font-weight:800;border-radius:40px;box-shadow:0 6px 18px #0017;padding:12px 18px}.site-footer{padding-bottom:70px}.about-wide-label{left:20px;right:20px;font-size:22px}.gallery-grid .compare{height:230px}}

/* Gallery images are full-resolution, scene-aligned photographs. No artificial zoom. */
.gallery-grid .compare .compare-before,
.gallery-grid .compare .compare-after {
  transform: none;
  object-fit: cover;
  object-position: center;
  image-rendering: auto;
}
.gallery-toolbar { align-items: flex-start; }
.filter-group { flex-wrap: wrap; }

/* Proposal: visible, adjacent gallery transparency and brief footer context. */
.gallery-illustration-note{max-width:760px;margin:15px auto 0;text-align:center;color:#4b6575;font-size:12px;line-height:1.65}
.gallery-illustration-note strong{color:#24475d}
.footer-legal-note{max-width:1100px;margin:20px 0 15px;color:#677b88;font-size:11px;line-height:1.65}

/* Fine-print legal links: unobtrusive, keyboard accessible, no hidden disclosures. */
.footer-policy-links{border-top:1px solid #e3e9eb;display:flex;justify-content:center;gap:24px;flex-wrap:wrap;padding:16px 0 8px;font-size:10px;letter-spacing:.025em;color:#7b8b94}
.footer-policy-links a{text-decoration:none;color:inherit}
.footer-policy-links a:hover,.footer-policy-links a:focus-visible{text-decoration:underline;color:#236b97}
.site-footer .footer-bottom{border-top:0;padding-top:10px}
.desktop-nav{gap:clamp(10px,1.2vw,21px)}
.desktop-nav a{font-size:12px}
.manage-followup{display:block;text-align:center;color:#246a96;font-size:12px;font-weight:700;padding:10px 0}
.manage-followup[hidden]{display:none!important}
.legal-hero{padding:65px 0 70px}
.legal-hero h1{font-size:clamp(53px,6vw,84px)}
.legal-content{max-width:920px}
.legal-content .legal-effective{font-size:12px;color:#6b7d89}
.legal-content a{color:#236c99;text-decoration:underline;text-underline-offset:2px}
.legal-panel{border-bottom:1px solid #d7e1e6;padding:28px 0 37px;scroll-margin-top:125px}
.legal-panel h2{font:400 clamp(30px,4vw,46px)/1.15 var(--head);letter-spacing:-.035em;margin:0 0 18px}
.legal-panel h3{font-size:15px;margin:25px 0 8px;color:#304b5e}
.legal-panel p,.legal-last-note{font-size:14px;line-height:1.9;color:#526575;max-width:870px}
.manage-grid{display:grid;grid-template-columns:1fr 1.04fr;gap:65px;align-items:start}
.manage-intro h2{font:400 clamp(36px,4vw,55px)/1.12 var(--head);letter-spacing:-.035em}
.manage-intro p{font-size:14px;line-height:1.88;color:#5b6e7b}
.manage-assistance{border-top:1px solid #d6e1e7;margin-top:30px;padding-top:24px}
.manage-assistance h3{font:400 26px var(--head);margin:0 0 10px}
.manage-assistance .button{margin-top:10px}
.manage-panel{border:1px solid #e2e9ea;box-shadow:0 10px 35px #193d5410}
#project-help-status[data-result="error"]{color:#a13a35}
#project-help-status[data-result="success"]{color:#266247}
@media(max-width:900px){.manage-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:600px){.legal-hero{padding:43px 0 52px}.legal-panel p{font-size:13px}.footer-policy-links{gap:17px;font-size:10px}.manage-panel{padding:25px 20px}}

/* Optional consultation booking, visually consistent with the existing estimate panel. */
.booking-opt-in{padding:16px 17px;margin:2px 0;border:1px solid #c9dce5;background:#f0f5f7;border-radius:4px}
.booking-option-title{font-size:14px;color:#193f56;font-weight:800;margin:0 0 10px}
.booking-checkbox{flex-direction:row!important;gap:10px!important;align-items:flex-start!important;cursor:pointer;line-height:1.5!important;font-size:13px!important}
.booking-checkbox input{width:18px;height:18px;flex:none;accent-color:#297ca5;margin:0}
.booking-fields{border-top:1px solid #d6e2e8;margin-top:14px;padding-top:14px}
.booking-fields[hidden]{display:none!important}
.booking-instruction{font-size:12px;line-height:1.65;color:#597181;margin:0 0 13px}
.booking-slot-status{font-size:12px;line-height:1.6;color:#567280;min-height:20px;margin:0}
.booking-slot-status[data-result="error"]{color:#a13a35}
.separate-booking-link{font-size:12px;line-height:1.6;text-align:center;color:#216a93;font-weight:700;padding:4px 0;text-decoration:underline;text-underline-offset:4px}
.manage-booking-cta{display:inline-flex;margin-bottom:26px;max-width:100%;white-space:normal;text-align:center;line-height:1.4}
.booking-fields .form-row{margin-top:8px}
@media(max-width:600px){.booking-opt-in{padding:15px 14px}.booking-fields .form-row{grid-template-columns:1fr}}

/* Contact page — keep the original AC Remodeling LLC typography and neutral cards. */
.contact-page{max-width:1170px}
.contact-page-heading{max-width:780px;margin-bottom:36px}
.contact-page-heading h2{font:400 clamp(36px,4.5vw,58px)/1.12 var(--head);letter-spacing:-.04em;margin:12px 0 17px}
.contact-page-heading p{color:#61737e;line-height:1.85;font-size:15px}
.contact-page-heading p strong{color:#243f50;font-weight:700}
.contact-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.contact-method-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:13px;background:#fff;border:1px solid #e0e7e8;border-radius:5px;padding:30px 25px;transition:border-color .2s,transform .2s,box-shadow .2s}
.contact-method-card:hover,.contact-method-card:focus-visible{border-color:#7caac5;box-shadow:0 9px 26px #122b3b14;transform:translateY(-2px)}
.contact-method-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#edf4f7;color:#2a77a0;border-radius:50%;font-size:22px}
.contact-method-label{color:#608399;font-size:10px;letter-spacing:.12em;font-weight:800}
.contact-method-card strong{font:400 clamp(23px,2.3vw,30px)/1.18 var(--head);color:#152e40;overflow-wrap:anywhere}
.contact-method-card .contact-email-value{font-family:var(--body);font-size:clamp(14px,1.4vw,18px);font-weight:700}
.contact-method-desc{color:#657985;font-size:12px;line-height:1.7}
.contact-next-steps{border-top:1px solid #d5e0e5;display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:48px;padding-top:38px}
.contact-next-steps h3{font:400 30px var(--head);margin:0 0 10px}
.contact-next-steps p{color:#677782;line-height:1.8;font-size:13px;margin:0 0 20px}
.contact-next-steps .button{white-space:normal;text-align:center;line-height:1.35}
@media(max-width:1120px) and (min-width:831px){.desktop-nav{gap:10px}.desktop-nav a{font-size:11px}.header-cta{font-size:11px;padding:0 10px}}
@media(max-width:960px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}}
@media(max-width:850px){.contact-method-grid{grid-template-columns:1fr}.contact-method-card{padding:23px 22px}.contact-next-steps{grid-template-columns:1fr;gap:27px}}

/* Authorized business dashboard — no data is rendered until the server verifies a session. */
.admin-page{max-width:1220px}
.admin-page [hidden]{display:none!important}
.admin-warning{padding:14px 18px;background:#f4f4ee;border-left:3px solid #b68d40;color:#425866;font-size:12px;line-height:1.7;margin-bottom:27px}
.admin-auth-panel{max-width:610px;background:#fff;border:1px solid #dce5e9;padding:33px;border-radius:6px;box-shadow:0 8px 30px #1234480d}
.admin-auth-panel h2,.admin-toolbar h2{font:400 37px var(--head);letter-spacing:-.035em;margin:0 0 12px}
.admin-auth-panel p,.admin-toolbar p{color:#637782;font-size:14px;line-height:1.75}
.admin-auth-panel form{margin-top:23px;display:flex;flex-wrap:wrap;align-items:end;gap:14px}
.admin-auth-panel label,.admin-records label,.admin-actions label,.admin-appointment label{font-size:12px;font-weight:700;color:#395668;display:flex;flex-direction:column;gap:7px}
.admin-auth-panel input,.admin-records input,.admin-actions select,.admin-appointment input,.admin-appointment select{border:1px solid #c7d9e1;background:#fff;border-radius:3px;padding:12px;font-size:14px;min-width:0;color:#263e4c}
.admin-toolbar{display:flex;gap:13px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.admin-toolbar>div{flex:1;min-width:230px}
.admin-toolbar .button{min-height:43px}
.admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0}
.admin-metric{background:#fff;border:1px solid #e1e7eb;border-radius:5px;padding:21px}
.admin-metric strong{display:block;font:400 38px var(--head);color:var(--ink)}
.admin-metric span{display:block;color:#65808e;font-size:12px;margin-top:7px}
.admin-columns{display:grid;grid-template-columns:minmax(270px,.82fr) minmax(0,1.18fr);gap:20px;align-items:start}
.admin-records,.admin-details{padding:23px;background:white;border:1px solid #dce5e8;border-radius:5px;min-width:0}
.admin-records input{width:100%;margin-bottom:18px}
.admin-project-list{max-height:650px;overflow:auto}
.admin-project-item{display:flex;flex-direction:column;gap:6px;width:100%;border:0;border-bottom:1px solid #e5ecef;background:transparent;text-align:left;padding:15px 11px;color:#193b4d}
.admin-project-item:hover,.admin-project-item.active{background:#edf5f8}
.admin-project-item strong{font-size:13px;overflow-wrap:anywhere}
.admin-project-item span{font-size:13px}
.admin-project-item small{font-size:11px;color:#6a7e89;line-height:1.5}
.admin-details h3{font:400 30px var(--head);letter-spacing:-.03em;overflow-wrap:anywhere}
.admin-details h4{font-size:16px;color:#284b60;margin:28px 0 14px}
.admin-muted{font-size:12px;color:#677d89;line-height:1.75}
.admin-description{white-space:pre-wrap;line-height:1.7;font-size:13px;color:#405869;padding:17px;background:#f4f8f9;border-radius:4px;overflow-wrap:anywhere}
.admin-actions,.admin-appointment{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-top:17px}
.admin-actions label,.admin-appointment label{flex:1;min-width:170px}
.admin-actions button{min-height:43px}
.admin-appointment{display:block;border-top:1px solid #e0e7eb;margin-top:25px;padding-top:4px}
.admin-appointment label{margin-bottom:12px}
.admin-button-row{display:flex;gap:10px;flex-wrap:wrap}
.admin-button-row .button{white-space:normal;text-align:center;line-height:1.35;min-height:46px}
.admin-event{border-bottom:1px solid #e7ecee;display:flex;gap:8px;flex-direction:column;padding:12px 0;font-size:12px;color:#546e7c}
.admin-event strong{color:#29495c}
@media(max-width:850px){.admin-columns{grid-template-columns:1fr}.admin-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.admin-metrics{grid-template-columns:1fr}.admin-auth-panel,.admin-records,.admin-details{padding:20px}.admin-toolbar .button{flex:1}.admin-button-row .button{flex:1}}

/* Private calendar bridge onboarding, staff-only. */
.admin-calendar-panel{border:1px solid #d7e3e9;background:#f8fbfc;padding:23px 26px;border-radius:5px;margin-bottom:22px}
.admin-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.admin-calendar-head h3{font:400 29px var(--head);margin:0 0 6px}
.admin-calendar-setup{border-top:1px solid #d5e1e6;margin-top:16px;padding-top:16px}
.admin-calendar-setup summary{font-weight:700;color:#245c78;font-size:13px;cursor:pointer}
.admin-calendar-setup ol{padding-left:19px;font-size:13px;color:#465f6e;line-height:1.85}
.admin-calendar-setup li{margin:8px 0}
.admin-calendar-setup a{color:#236c99;text-decoration:underline}
.admin-calendar-setup code{font-size:12px;background:#e4eff4;padding:2px 5px}
#admin-calendar-key-box{margin:20px 0 9px;padding:14px;background:#edf5f8;overflow-wrap:anywhere}
#admin-calendar-key-box[hidden]{display:none!important}
#admin-calendar-key-box label{display:block;font-size:12px;color:#365666;font-weight:700}
#admin-calendar-key{display:block;width:100%;min-width:0;border:1px solid #b1ccd9;padding:12px;font-size:13px;margin:8px 0;color:#203e53}
@media(max-width:650px){.admin-calendar-panel{padding:18px}.admin-calendar-head{align-items:flex-start;flex-direction:column}.admin-calendar-head .button{width:100%}}

/* Explore Gallery: display complete photographs, not cropped thumbnails. */
.gallery-grid .compare {height:auto;aspect-ratio:var(--gallery-image-ratio,4 / 3);background:#e5ebee}
.gallery-grid .compare .compare-before,.gallery-grid .compare .compare-after {
  width:100%;height:100%;object-fit:contain;object-position:center;transform:none;
}
@media(max-width:600px){.gallery-grid .compare{height:auto}}

/* Explain that filters cover related finishes as well as named rooms. */
.gallery-filter-note{margin:-13px 0 26px;color:#607787;font-size:12px;line-height:1.65}

/* Honest Google review invitation for previous customers; no intrusive prompts. */
.review-invite{padding:52px 0;background:#f2f6f7;border-top:1px solid #dde7ea}
.review-invite-layout{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}
.review-invite-layout>div{max-width:680px}
.review-invite h2{font:400 clamp(34px,3.5vw,50px)/1.12 var(--head);letter-spacing:-.03em;margin:8px 0 12px;color:var(--navy)}
.review-invite p{font-size:14px;line-height:1.8;color:#61737e;margin:0}
@media(max-width:600px){.review-invite{padding:38px 0}.review-invite-layout .button{width:100%;white-space:normal}}

/* Small, optional review link below the homepage's primary calls to action. */
.hero-review-nudge{margin-top:13px;display:flex;flex-wrap:wrap;align-items:center;gap:5px;color:#72818a;font-size:12px;line-height:1.65}
.hero-review-nudge a{display:inline-flex;align-items:center;gap:4px;color:#306c91;font-weight:700;text-decoration:underline;text-decoration-color:#adc8d7;text-underline-offset:4px;transition:color .18s ease}
.hero-review-nudge a:hover,.hero-review-nudge a:focus-visible{color:#173b55;text-decoration-color:currentColor}
.hero-review-nudge a:focus-visible{outline:2px solid #276e9d;outline-offset:4px;border-radius:2px}
.hero-review-nudge+ .hero-trust{margin-top:24px}
@media(max-width:600px){.hero-review-nudge{font-size:11px;margin-top:12px}.hero-review-nudge+ .hero-trust{margin-top:23px}}
@media(prefers-reduced-motion:reduce){.hero-review-nudge a{transition:none}}

/* AC Remodeling LLC: wordmark fit only; existing layout and interactions retained. */
.brand-wordmark strong{font-size:clamp(14px,1.3vw,19px);letter-spacing:0;white-space:nowrap}
.brand-wordmark small{font-size:8px;letter-spacing:.02em;white-space:nowrap}
.footer-brand strong{font-size:20px;letter-spacing:.03em}
@media(max-width:600px){.brand-wordmark strong{font-size:13px}.brand-wordmark small{font-size:6.5px}.footer-brand strong{font-size:17px}}
