:root{--wine:#970719;--wine-dark:#72000d;--wine-lite:#bb2134;--ink:#17191a;--ink2:#292b2d;--sub:#5d6264;--line:#dddcd7;--paper:#f7f5f1;--ivory:#eeebe5;--white:#fff;--container:1260px;--radius:3px;--focus:#e5ac35}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit}img{display:block;max-width:100%}button,input{font:inherit}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}::selection{background:#96071b;color:white}.container{width:min(calc(100% - 72px),var(--container));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-90px;left:20px;z-index:999;background:#fff;color:var(--ink);padding:14px 18px}.skip-link:focus{top:12px}.eyebrow{display:flex;gap:12px;align-items:center;font-size:11px;line-height:1.4;letter-spacing:.22em;font-weight:800;text-transform:uppercase;color:var(--wine)}.eyebrow:before{content:"";display:block;width:29px;height:2px;background:currentColor;flex:none}.eyebrow.on-dark{color:#e7a6aa}.eyebrow.on-dark:before{background:#d18b92}.h-display,.h-section,.h-page{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.048em}.h-display{font-size:clamp(55px,6.1vw,95px);line-height:1.005;margin:24px 0 24px}.h-display em,.h-section em,.h-page em{color:var(--wine);font-style:normal}.h-section{font-size:clamp(38px,4.55vw,69px);line-height:1.09;margin:20px 0 20px}.h-page{font-size:clamp(50px,5.5vw,86px);line-height:1.04;margin:20px 0}.copy{color:var(--sub);font-size:16px;line-height:1.9}.copy.large{font-size:18px;line-height:1.83}.copy p{margin:0 0 20px}.muted{color:var(--sub)}.rule-link{text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;display:inline-flex;gap:14px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:10px;transition:color .2s,gap .2s}.rule-link:hover{color:var(--wine);gap:22px}.rule-link .arrow{font-size:20px;line-height:1;font-weight:400}.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:19px 23px;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.145em;text-transform:uppercase;white-space:nowrap;transition:background .2s,transform .2s,color .2s,border-color .2s}.btn svg{width:16px;height:16px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--wine);color:white}.btn-primary:hover{background:var(--wine-dark)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#3b3d40}.btn-outline{border-color:#9d9b95;color:var(--ink);background:transparent}.btn-outline:hover{background:var(--ink);border-color:var(--ink);color:#fff}.btn-light{background:#fff;color:var(--ink)}.btn-light:hover{background:var(--ivory)}.btn-ghostlight{border-color:rgba(255,255,255,.45);color:#fff}.btn-ghostlight:hover{background:white;color:var(--ink)}.button-row{display:flex;gap:13px;flex-wrap:wrap;align-items:center}.meta-line{color:#999998;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.topline{background:#17191a;color:#eeeae6;min-height:34px;display:flex;align-items:center}.topline-inner{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:34px;font-size:10px;font-weight:700;letter-spacing:.105em;text-transform:uppercase}.topline a{text-decoration:none}.topline a:hover{color:#fff}.topline .right{display:flex;align-items:center;gap:25px}.topline svg{width:13px;height:13px;vertical-align:middle;margin-right:5px;color:#e2a7aa}.site-header{background:rgba(255,255,255,.985);position:sticky;top:0;z-index:100;border-bottom:1px solid #ebe8e3;box-shadow:0 5px 22px rgba(0,0,0,.025)}.header-inner{min-height:96px;display:flex;justify-content:space-between;align-items:center;gap:35px}.brand{display:block;flex:0 0 auto}.brand img{width:257px;height:auto}.desktop-nav{display:flex;align-items:center;gap:36px;margin-left:auto}.nav-link{text-decoration:none;color:#3b3d3e;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:800;padding:12px 0;position:relative}.nav-link:after{content:"";position:absolute;bottom:3px;left:0;width:0;height:2px;background:var(--wine);transition:width .2s}.nav-link:hover:after,.nav-link[aria-current="page"]:after{width:100%}.header-call{background:var(--wine);color:white;text-decoration:none;display:flex;align-items:center;gap:13px;padding:16px 19px;font-size:11px;font-weight:800;letter-spacing:.08em}.header-call:hover{background:var(--wine-dark)}.header-call svg{width:16px}.menu-toggle{display:none;background:none;border:1px solid #d9d6d0;padding:10px 12px;width:49px;height:49px;align-items:center;justify-content:center}.menu-toggle svg{width:23px}.nav-drawer,.drawer-shade{display:none}.hero{background:var(--paper);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;pointer-events:none;left:45%;top:-200px;width:55vw;height:1000px;opacity:.34;background:repeating-linear-gradient(90deg,transparent 0,transparent 78px,#e7e2dc 79px,#e7e2dc 80px);transform:skew(-17deg)}.hero-grid{display:grid;grid-template-columns:52% 48%;min-height:664px;position:relative;z-index:1}.hero-copy{padding:95px 50px 100px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero-copy .copy{max-width:555px;margin-bottom:26px}.hero-photo-wrap{position:relative;align-self:stretch;padding:37px 0 38px 0;min-height:620px}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:54% 50%;border-radius:1px;filter:saturate(.82)}.hero-photo-wrap:before{content:"";width:56px;height:56px;position:absolute;left:-16px;top:20px;z-index:2;border-top:4px solid var(--wine);border-left:4px solid var(--wine)}.hero-photo-wrap:after{content:"";position:absolute;inset:37px 0 38px 0;background:linear-gradient(180deg,transparent 65%,rgba(10,9,9,.55));pointer-events:none}.hero-photo-caption{position:absolute;z-index:4;bottom:70px;right:26px;color:#fff;display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.18em;font-weight:800;text-transform:uppercase}.hero-photo-caption span{width:36px;height:1px;background:#fff}.hero-index{position:absolute;z-index:5;top:73px;right:30px;color:#fff;font-size:11px;letter-spacing:.24em;font-weight:800}.hero-bottom{border-top:1px solid #ded9d2;background:var(--paper)}.hero-bottom .container{display:flex;justify-content:space-between;gap:15px;padding-top:20px;padding-bottom:20px}.mini-point{display:flex;gap:10px;align-items:center;font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#444}.mini-point svg{width:19px;height:19px;color:var(--wine)}.section{padding:108px 0}.section-small{padding:78px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:43px}.section-heading .copy{max-width:390px}.section-heading .h-section{max-width:730px;margin-bottom:0}.intro-ribbon{background:var(--ink);color:#fff;position:relative;overflow:hidden}.intro-ribbon:before{content:'CL';position:absolute;font-family:Georgia,serif;right:0;top:-135px;font-size:450px;line-height:1;color:rgba(255,255,255,.028);pointer-events:none}.ribbon-inner{padding:90px 0;display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center;position:relative}.ribbon-inner h2{font-family:Georgia,serif;font-size:clamp(34px,4.1vw,62px);font-weight:400;letter-spacing:-.045em;line-height:1.12;margin:0}.ribbon-inner h2 em{font-style:normal;color:#eab5b9}.ribbon-right p{font-size:18px;line-height:1.9;color:#d0d0ce;margin:0 0 25px}.ribbon-right .rule-link{color:white}.services-section{background:#fff}.service-feature-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-feature{padding:30px 34px 34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;min-height:192px;display:grid;grid-template-columns:1fr 28px;gap:10px;transition:background .23s}.service-feature:hover{background:var(--paper)}.service-feature .num{display:block;font-size:11px;color:var(--wine);font-weight:800;letter-spacing:.11em;margin-bottom:18px}.service-feature h3{font-family:Georgia,serif;letter-spacing:-.02em;font-weight:400;font-size:27px;margin:0 0 11px}.service-feature p{color:#6a6b6c;font-size:13px;line-height:1.65;margin:0;max-width:370px}.service-feature svg{width:23px;height:23px;stroke:var(--wine);stroke-width:1.6;margin-top:22px;transition:transform .2s}.service-feature:hover svg{transform:translate(3px,-3px)}.service-footer{padding-top:27px;display:flex;justify-content:space-between;align-items:center;gap:30px}.service-footer p{font-size:13px;color:var(--sub)}.feature-story{background:var(--paper);overflow:hidden}.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:8%;min-height:605px}.story-photo{position:relative;min-height:595px}.story-photo img{height:100%;width:100%;object-fit:cover;object-position:center}.story-photo:after{content:"";border:1px solid rgba(255,255,255,.63);position:absolute;inset:20px;pointer-events:none}.story-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:80px 0}.story-copy .h-section{max-width:570px}.story-copy .copy{max-width:510px;margin-bottom:26px}.fact-row{display:flex;gap:40px;flex-wrap:wrap;margin-top:17px;padding-top:25px;border-top:1px solid #d6d1cb}.fact strong{display:block;font-size:18px;font-family:Georgia,serif;font-weight:400;margin-bottom:4px}.fact small{font-size:10px;letter-spacing:.12em;color:#777;text-transform:uppercase}.editorial-strip{display:grid;grid-template-columns:2fr 1fr;gap:0;background:#181a1b;color:white;min-height:495px}.editorial-image{background-size:cover;background-position:center;position:relative}.editorial-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,.32))}.editorial-text{padding:66px max(36px,calc((100vw - 1320px)/2)) 64px 55px;display:flex;flex-direction:column;justify-content:center}.editorial-text h2{font:400 clamp(32px,3.2vw,51px)/1.13 Georgia,serif;letter-spacing:-.04em;margin:17px 0}.editorial-text p{color:#c7c7c5;line-height:1.8;font-size:14px}.editorial-text .rule-link{align-self:flex-start;color:white;margin-top:17px}.showcase{background:var(--paper)}.showcase-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:stretch}.showcase-main{position:relative;overflow:hidden;min-height:480px}.showcase-main img{width:100%;height:100%;object-fit:cover}.showcase-main:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.73),rgba(0,0,0,.03) 60%)}.showcase-label{position:absolute;bottom:35px;left:38px;z-index:1;color:#fff}.showcase-label span{font-size:10px;letter-spacing:.22em;font-weight:800;text-transform:uppercase;color:#e6acac}.showcase-label h3{font:400 36px/1.1 Georgia,serif;letter-spacing:-.03em;margin:11px 0 0}.showcase-side{background:#fff;border:1px solid #e3ded8;padding:55px 48px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.showcase-side .h-section{font-size:clamp(35px,3.3vw,50px)}.showcase-side .copy{margin-bottom:30px}.band-cta{padding:95px 0;background:var(--wine);color:#fff;position:relative;overflow:hidden}.band-cta:before{content:"↗";font-family:Georgia,serif;font-size:500px;position:absolute;right:-60px;top:-225px;color:rgba(255,255,255,.07);pointer-events:none}.band-grid{display:flex;justify-content:space-between;align-items:center;gap:60px;position:relative}.band-grid .h-section{max-width:780px;font-size:clamp(37px,4vw,65px);margin:15px 0}.band-grid .eyebrow{color:#f2c4c6}.band-grid .eyebrow:before{background:#f2c4c6}.band-grid .btn{flex:none}.site-footer{background:#17191a;color:#f1f1ee}.footer-top{padding:83px 0 75px;display:grid;grid-template-columns:1.75fr 1fr 1.12fr;gap:80px}.footer-logo{width:265px;height:auto;max-width:100%;margin-bottom:27px}.footer-copy{font-size:14px;line-height:1.8;max-width:340px;color:#b8b9b6}.footer-label{font-size:10px;letter-spacing:.2em;color:#cf999e;text-transform:uppercase;font-weight:800;margin:7px 0 27px}.footer-nav{display:grid;gap:17px}.footer-nav a{display:inline-block;width:max-content;color:#ecebe9;font-size:14px;text-decoration:none}.footer-nav a:hover{color:#dba8ab}.footer-contact a{display:block;color:#fff;text-decoration:none;font-size:19px;line-height:1.6;overflow-wrap:anywhere}.footer-contact a:hover{color:#edb3b6}.footer-contact p{color:#b8b9b6;font-size:13px;line-height:1.8}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding:24px 0;display:flex;justify-content:space-between;gap:22px;align-items:center;color:#b4b6b4;font-size:11px;letter-spacing:.035em}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{color:white}.page-hero{padding:92px 0 91px;background:var(--paper);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-hero:before{content:"";width:520px;height:520px;border:1px solid #e5ded5;border-radius:50%;position:absolute;right:-80px;top:-160px}.page-hero:after{content:"";width:380px;height:380px;border:1px solid #e5ded5;border-radius:50%;position:absolute;right:80px;top:-70px}.page-hero-inner{position:relative;z-index:1;max-width:850px}.page-hero .copy{font-size:18px;max-width:680px}.breadcrumbs{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#6d6d6d;margin-bottom:35px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{color:var(--wine)}.breadcrumbs span{padding:0 10px;color:var(--wine)}.about-vision{display:grid;grid-template-columns:.98fr 1.02fr;gap:8%;align-items:center}.about-vision-img{height:575px;overflow:hidden}.about-vision-img img{width:100%;height:100%;object-fit:cover;object-position:47%}.about-vision-copy .h-section{font-size:clamp(37px,4vw,63px)}.quote-block{padding:21px 0 0 23px;border-left:3px solid var(--wine);margin-top:35px;font-family:Georgia,serif;font-size:22px;line-height:1.45;color:var(--ink)}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.promise{background:#fff;border:1px solid #e8e4df;padding:40px 36px;min-height:285px}.promise .mark{width:51px;height:51px;background:#f7ecec;color:var(--wine);display:grid;place-items:center;margin-bottom:27px}.promise .mark svg{width:24px;height:24px;stroke-width:1.7}.promise h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:0 0 16px}.promise p{font-size:14px;color:var(--sub);line-height:1.8;margin:0}.services-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.directory-card{border:1px solid var(--line);padding:38px 32px;min-height:260px;display:flex;flex-direction:column;background:#fff;transition:border-color .2s,transform .2s}.directory-card:hover{border-color:var(--wine);transform:translateY(-3px)}.directory-card .ic{color:var(--wine);width:28px;height:28px;margin-bottom:25px;stroke-width:1.45}.directory-card .idx{color:#9c9692;font-size:10px;letter-spacing:.1em;font-weight:800}.directory-card h3{font:400 25px/1.2 Georgia,serif;margin:11px 0 12px}.directory-card p{font-size:13px;line-height:1.75;color:var(--sub);margin:0}.directory-card a{margin-top:auto;align-self:flex-start;padding-top:19px;text-decoration:none;color:var(--wine);font-size:11px;letter-spacing:.13em;font-weight:800;text-transform:uppercase}.split-note{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split-note .h-section{max-width:580px}.split-note .copy{margin:0}.faq{max-width:930px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:21px 0}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:25px;align-items:center;font-family:Georgia,serif;font-size:22px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-family:Arial,sans-serif;font-size:25px;font-weight:300;color:var(--wine)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:15px;line-height:1.8;color:var(--sub);margin:19px 45px 4px 0;max-width:750px}.projects-filter{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 31px}.filter-btn{background:#fff;border:1px solid #d2ceca;padding:13px 19px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.filter-btn[aria-pressed='true'],.filter-btn:hover{background:var(--ink);border-color:var(--ink);color:#fff}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.project-card{background:white;border:1px solid var(--line);overflow:hidden}.project-card[hidden]{display:none}.project-img{height:265px;position:relative;overflow:hidden;background:#e8e4dc}.project-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project-card:hover img{transform:scale(1.045)}.project-img .tag{position:absolute;bottom:13px;left:14px;background:rgba(255,255,255,.93);padding:8px 12px;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.project-content{padding:26px}.project-content small{color:var(--wine);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:800}.project-content h3{font:400 25px/1.2 Georgia,serif;margin:12px 0}.project-content p{color:var(--sub);line-height:1.7;font-size:13px;margin:0}.projects-disclaimer{border-left:3px solid var(--wine);padding:19px 24px;background:#f5f0ea;color:#5f5852;font-size:13px;line-height:1.75;margin:0 0 30px}.project-placeholder{background:#f9f7f4;border:1px dashed #c9c2ba;padding:34px 25px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:15px;min-height:230px}.project-placeholder svg{width:30px;height:30px;color:#b5aaa1}.project-placeholder p{font-family:Georgia,serif;color:#797169;margin:0;font-size:19px}.contact-layout{display:grid;grid-template-columns:1.06fr .94fr;gap:80px;align-items:stretch}.contact-info .h-section{font-size:clamp(38px,4.3vw,65px)}.contact-details{border-top:1px solid var(--line);margin-top:42px}.contact-item{display:grid;grid-template-columns:55px 1fr;gap:18px;padding:30px 0;border-bottom:1px solid var(--line)}.contact-item .icon{width:42px;height:42px;display:grid;place-items:center;background:#f5eceb;color:var(--wine)}.contact-item .icon svg{width:19px;height:19px}.contact-item .contact-kicker{display:block;color:#7b7771;font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;margin-bottom:9px}.contact-item a{font:400 clamp(19px,2.1vw,30px)/1.25 Georgia,serif;letter-spacing:-.02em;overflow-wrap:anywhere;text-decoration:none}.contact-item a:hover{color:var(--wine)}.contact-item p{font-size:14px;line-height:1.8;color:var(--sub);margin:4px 0}.contact-aside{background:var(--ink);color:white;padding:55px 50px;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-height:555px;overflow:hidden;position:relative}.contact-aside:after{content:"CL";font:400 265px Georgia,serif;letter-spacing:-.07em;position:absolute;bottom:-73px;right:-22px;color:rgba(255,255,255,.035);pointer-events:none}.contact-aside .eyebrow{color:#eab3b7}.contact-aside h2{font:400 44px/1.12 Georgia,serif;letter-spacing:-.04em;max-width:380px;margin:22px 0}.contact-aside p{font-size:15px;color:#c7c7c5;line-height:1.8;max-width:390px}.contact-aside .btn{align-self:flex-start;margin-top:28px}.contact-aside small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#dca6ad;position:relative;z-index:1}.contact-aside .outline{height:1px;background:#585758;margin:36px 0}.contact-aside ul{margin:0;padding:0;list-style:none}.contact-aside li{font-size:13px;color:#d8d6d2;line-height:1.8;padding:8px 0}.contact-aside li:before{content:'↗';color:#e4a7a9;margin-right:12px}.intro-lede{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}.intro-lede .copy{margin-top:5px}.full-image{width:100%;height:470px;object-fit:cover}.note-box{font-size:12px;color:#696864;border-top:1px solid var(--line);padding-top:20px;line-height:1.8}.redline{height:4px;background:var(--wine);width:49px;margin:26px 0}.project-proposal{display:flex;align-items:center;gap:40px;background:var(--ink);color:white;padding:53px 55px;margin-top:40px;justify-content:space-between}.project-proposal h3{font:400 31px Georgia,serif;letter-spacing:-.03em;margin:0 0 9px}.project-proposal p{font-size:14px;color:#cfceca;line-height:1.7;margin:0}.project-proposal .btn{flex:none}@media(max-width:1160px){.container{width:min(calc(100% - 56px),var(--container))}.desktop-nav{gap:20px}.header-call{padding:14px}.brand img{width:225px}.hero-grid{grid-template-columns:50% 50%}.h-display{font-size:clamp(48px,5.3vw,75px)}.hero-copy{padding-right:28px}.footer-top{gap:40px}}@media(max-width:930px){.topline .right span:nth-child(2){display:none}.desktop-nav,.header-call{display:none}.menu-toggle{display:flex}.header-inner{min-height:80px}.brand img{width:235px}.drawer-shade{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:105;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.nav-drawer{display:flex;position:fixed;right:0;top:0;bottom:0;width:min(88vw,385px);background:#17191a;color:white;z-index:106;padding:28px;flex-direction:column;transform:translateX(102%);visibility:hidden;transition:transform .3s,visibility .3s;overflow:auto}.menu-open .nav-drawer{transform:translateX(0);visibility:visible}.menu-open .drawer-shade{opacity:1;visibility:visible}.drawer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:22px;border-bottom:1px solid #454545}.drawer-brand{font:400 27px Georgia,serif;letter-spacing:-.04em}.drawer-brand span{color:#ce5260}.drawer-close{color:white;background:none;border:1px solid #5a5a5a;display:grid;place-items:center;width:43px;height:43px}.drawer-close svg{width:20px}.drawer-nav{display:grid;margin-top:23px}.drawer-nav a{padding:18px 0;font:400 25px Georgia,serif;text-decoration:none;border-bottom:1px solid #414141}.drawer-nav a[aria-current='page']{color:#e8a5ad}.drawer-bottom{margin-top:auto;padding-top:50px;display:grid;gap:10px;font-size:13px}.drawer-bottom .btn{width:100%}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:75px 0 45px}.hero-photo-wrap{height:520px;min-height:unset;padding:0 0 35px}.hero-photo-wrap:after{inset:0 0 35px}.hero-photo-wrap:before{top:-15px}.hero-photo-caption{bottom:65px}.hero:after{left:20%}.hero-bottom .container{flex-wrap:wrap;justify-content:center;gap:15px 35px}.ribbon-inner{gap:55px}.story-grid{gap:5%}.story-photo{min-height:530px}.editorial-strip{grid-template-columns:1.2fr 1fr}.editorial-text{padding:45px 32px}.footer-top{grid-template-columns:1.25fr 1fr;gap:40px}.footer-top>div:last-child{grid-column:span 2;max-width:550px}.services-directory{grid-template-columns:repeat(2,1fr)}.project-gallery{grid-template-columns:repeat(2,1fr)}.contact-layout{gap:35px}.contact-aside{padding:42px 33px}}@media(max-width:660px){.container{width:min(calc(100% - 38px),var(--container))}.topline-inner{justify-content:center;min-height:31px;font-size:9px}.topline .right{display:none}.header-inner{min-height:75px}.brand img{width:210px}.h-display{font-size:clamp(49px,10.7vw,73px)}.h-section{font-size:clamp(37px,9vw,56px)}.h-page{font-size:clamp(48px,10vw,65px)}.hero-copy{padding:70px 0 38px}.hero-photo-wrap{height:405px}.hero-index{top:26px}.hero-photo-caption{font-size:8px;bottom:58px;right:13px}.hero-bottom .container{justify-content:flex-start;gap:15px 22px}.mini-point{font-size:9px}.mini-point svg{width:16px}.section{padding:75px 0}.section-small{padding:58px 0}.section-heading{display:block}.section-heading .copy{margin-top:16px}.ribbon-inner{padding:65px 0;grid-template-columns:1fr;gap:23px}.ribbon-inner h2{font-size:clamp(37px,9vw,56px)}.ribbon-right p{font-size:16px}.service-feature-list{grid-template-columns:1fr}.service-feature{min-height:156px;padding:25px}.service-feature .num{margin-bottom:12px}.service-feature h3{font-size:25px}.service-footer{align-items:flex-start;flex-direction:column}.story-grid{grid-template-columns:1fr;gap:0}.story-photo{height:400px;min-height:unset;margin:0 -19px}.story-copy{padding:64px 0 12px}.editorial-strip{display:flex;flex-direction:column}.editorial-image{height:300px}.editorial-text{padding:52px 19px 62px}.showcase-grid{grid-template-columns:1fr}.showcase-main{min-height:330px}.showcase-side{padding:42px 30px}.band-cta{padding:65px 0}.band-grid{flex-direction:column;align-items:stretch;gap:22px}.band-grid .btn{align-self:flex-start}.footer-top{padding:62px 0;grid-template-columns:1fr;gap:40px}.footer-top>div:last-child{grid-column:auto}.footer-logo{width:245px}.footer-bottom{flex-direction:column;align-items:flex-start;font-size:10px}.page-hero{padding:64px 0}.page-hero:before{right:-350px}.page-hero:after{right:-280px}.about-vision,.intro-lede,.split-note{grid-template-columns:1fr;gap:30px}.about-vision-img{height:375px}.promise-grid,.services-directory,.project-gallery{grid-template-columns:1fr}.promise{min-height:unset}.directory-card{min-height:225px}.full-image{height:290px}.contact-layout{grid-template-columns:1fr;gap:46px}.contact-aside{min-height:480px;padding:43px 32px}.contact-aside h2{font-size:38px}.contact-item a{font-size:23px}.project-proposal{padding:35px 29px;flex-direction:column;align-items:flex-start;gap:22px}.showcase-label{left:23px;bottom:27px}.showcase-label h3{font-size:30px}.project-img{height:240px}.button-row .btn{white-space:normal;justify-content:center;gap:18px}.btn{padding:17px 19px}.fact-row{gap:25px}.faq summary{font-size:19px}.copy.large{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-width:1190px) and (min-width:931px){.desktop-nav{gap:17px}.brand img{width:220px}.header-inner{gap:24px}.header-call{font-size:10px;padding:14px 12px}}.faq-home-teaser{background:#f3f0eb;border-top:1px solid var(--line);padding:69px 0}.faq-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.faq-home-grid h2{font:400 clamp(35px,3.6vw,55px)/1.12 Georgia,serif;letter-spacing:-.04em;margin:19px 0 0}.faq-home-grid h2 em{font-style:normal;color:var(--wine)}.faq-home-grid p{color:var(--sub);font-size:16px;line-height:1.8;max-width:525px;margin:0 0 23px}.faq-teaser-link{border:1px solid var(--line);border-top:0;padding:30px 33px;background:var(--paper)}.faq-teaser-link p{color:var(--sub);line-height:1.7;margin:0 0 17px}.faq-contact-nudge{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 0 65px}.faq-contact-nudge strong{font:400 25px Georgia,serif}.faq-contact-nudge p{color:var(--sub);font-size:14px;margin:7px 0 0}.faq-page-hero{background:var(--paper)}.faq-page{padding-bottom:44px}.faq-intro{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-bottom:45px}.faq-intro .copy{max-width:430px;margin-bottom:12px}.faq-category-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.faq-category-nav a{display:flex;align-items:center;gap:15px;text-decoration:none;padding:24px;border:1px solid var(--line);color:var(--ink);font-size:13px;font-weight:700;transition:background .2s,border-color .2s}.faq-category-nav a:hover{background:var(--paper);border-color:#b2aaa2}.faq-category-nav span{color:var(--wine);font-size:11px;letter-spacing:.14em;font-weight:800}.faq-group-section{border-top:1px solid var(--line);padding:78px 0;scroll-margin-top:115px}.faq-group-section:nth-of-type(even){background:var(--paper)}.faq-section-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:85px}.faq-group-heading h2{font:400 clamp(35px,3.8vw,55px)/1.14 Georgia,serif;letter-spacing:-.04em;margin:23px 0 10px}.faq-group-heading p{color:var(--sub);line-height:1.7;margin:0}.faq-group-items{border-top:1px solid var(--line)}.faq-group-items details{background:transparent}.faq-group-items details[open]{background:rgba(255,255,255,.38)}.faq-group-items summary{font-size:21px;line-height:1.35;padding:23px 20px 23px 0}.faq-group-items summary:after{flex:none;margin-left:18px}.faq-group-items details p{margin:0 48px 22px 0;font-size:15px;line-height:1.8}.faq-bottom-cta{background:var(--ink);color:white;padding:75px 0}.faq-bottom-grid{display:flex;align-items:center;justify-content:space-between;gap:35px}.faq-bottom-grid h2{font:400 clamp(34px,4vw,55px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:19px 0}.faq-bottom-grid p{max-width:500px;color:#d1cecb;line-height:1.8;margin:0}.faq-bottom-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}@media(max-width:900px){.faq-section-grid{gap:40px;grid-template-columns:.75fr 1.25fr}.faq-bottom-grid{align-items:start;flex-direction:column}.faq-bottom-actions{justify-content:flex-start}}@media(max-width:660px){.faq-home-teaser{padding:59px 0}.faq-home-grid{grid-template-columns:1fr;gap:21px}.faq-home-grid p{font-size:15px}.faq-category-nav{grid-template-columns:1fr}.faq-category-nav a{padding:19px 20px}.faq-intro{display:block}.faq-intro .copy{margin-top:18px}.faq-group-section{padding:59px 0;scroll-margin-top:80px}.faq-section-grid{grid-template-columns:1fr;gap:20px}.faq-group-items summary{font-size:19px}.faq-group-items details p{margin-right:12px;font-size:14px}.faq-bottom-cta{padding:64px 0}.faq-bottom-actions{width:100%;flex-direction:column}.faq-bottom-actions .btn{width:100%}.faq-contact-nudge{align-items:flex-start;flex-direction:column;gap:18px;padding-bottom:55px}.faq-teaser-link{padding:25px}}@media(max-width:360px){.header-inner{gap:14px}.brand img{width:188px}.menu-toggle{width:45px;height:45px}.faq-group-items summary{font-size:18px}}.service-catalog-intro{padding-bottom:48px}.service-catalog-intro .section-heading{margin-bottom:37px}.service-category-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.service-category-nav a{border:1px solid var(--line);background:var(--white);padding:24px 22px;display:flex;align-items:center;gap:13px;min-height:90px;text-decoration:none;font-weight:700;font-size:13px;line-height:1.45;transition:border-color .2s,background .2s,transform .2s}.service-category-nav a>span:first-child{color:var(--wine);font-size:11px;letter-spacing:.13em;align-self:flex-start;white-space:nowrap}.service-category-nav .catalog-jump-arrow{color:var(--wine);font-size:17px;margin-left:auto;align-self:flex-end}.service-category-nav a:hover{border-color:var(--wine);background:var(--paper);transform:translateY(-2px)}.catalog-intro-footnote{font-size:13px;color:var(--sub);margin:20px 0 0;line-height:1.7}.catalog-intro-footnote a{color:var(--wine);text-underline-offset:3px}.service-category-section{scroll-margin-top:115px;padding-top:85px;padding-bottom:88px;border-top:1px solid var(--line)}.service-category-section:nth-of-type(even){background:var(--paper)}.catalog-group-heading{display:grid;grid-template-columns:.31fr 1fr;gap:5%;align-items:start;margin-bottom:40px}.catalog-group-eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--wine);font-weight:800;padding-top:12px}.catalog-group-copy{display:flex;align-items:end;justify-content:space-between;gap:30px}.catalog-group-copy .h-section{font-size:clamp(35px,3.65vw,55px);max-width:600px;margin:0}.catalog-group-copy p{font-size:14px;line-height:1.75;max-width:350px;color:var(--sub);margin:0 0 6px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.service-catalog-card{min-height:316px;padding:33px 35px 30px;scroll-margin-top:120px;position:relative}.catalog-icon{height:35px;margin:0 0 18px}.service-catalog-card .ic{width:30px;height:30px;margin:0}.service-catalog-card h3{font-size:clamp(23px,2.2vw,30px);margin-top:13px;max-width:430px}.service-catalog-card p{font-size:14px;line-height:1.75;max-width:500px}.service-details{list-style:none;margin:17px 0 0;padding:0;display:flex;flex-wrap:wrap;column-gap:13px;row-gap:9px}.service-details li{background:var(--paper);color:#5c5b5a;font-size:11px;line-height:1.35;padding:8px 10px;border:1px solid #e9e6df}.service-category-section:nth-of-type(even) .service-details li{background:#fff}.service-catalog-card a{padding-top:23px;font-size:11px;letter-spacing:.09em}.service-catalog-card a span{font-size:15px}.service-catalog-card:target{outline:3px solid var(--wine);outline-offset:3px}@media(max-width:1100px){.service-category-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-group-heading{grid-template-columns:1fr;gap:17px}.catalog-group-copy p{max-width:280px}}@media(max-width:720px){.service-category-section{padding:64px 0}.catalog-group-copy{display:block}.catalog-group-copy p{max-width:580px;margin-top:17px}.catalog-grid{grid-template-columns:1fr}.service-catalog-card{min-height:unset;padding:29px 26px}.service-category-nav a{min-height:78px;padding:18px}.service-catalog-intro .section-heading{margin-bottom:25px}}@media(max-width:420px){.service-category-nav{grid-template-columns:1fr}.service-category-nav a{min-height:62px}.service-catalog-card h3{font-size:26px}}@media(prefers-reduced-motion:reduce){.service-category-nav a{transition:none}}.catalog-group-heading{display:flex;flex-direction:column;align-items:stretch;gap:20px;}.catalog-group-eyebrow{padding-top:0}.catalog-group-copy{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:clamp(24px,5vw,75px);min-width:0;}.catalog-group-copy .h-section{max-width:760px}.catalog-group-copy p{margin:0 0 4px;max-width:390px}.service-faq-section{background:#fff}.service-faq-layout{display:grid;grid-template-columns:minmax(0,.73fr) minmax(0,1.27fr);align-items:start;gap:clamp(45px,7vw,115px);}.service-faq-lead .h-section{max-width:460px;margin-bottom:15px}.service-faq-desc{color:var(--sub);font-size:15px;line-height:1.8;max-width:325px;margin:0}.service-faq-content{min-width:0}.service-faq-items{width:100%;max-width:none;margin:0;min-width:0}.service-faq-items details:first-child{border-top:1px solid var(--line)}.service-faq-items details{padding:23px 0}.service-faq-items summary{font-size:clamp(20px,2vw,24px);line-height:1.45}.service-faq-content .faq-teaser-link{margin-top:27px;padding:29px 32px;border:1px solid var(--line);background:var(--paper);}.service-faq-content .faq-teaser-link p{font-size:14px;margin:0 0 15px}.faq-section-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}.faq-group-items{width:100%;min-width:0;max-width:none;margin:0}.faq-group-items details{width:100%;min-width:0}.faq-group-items summary{width:100%;min-width:0;box-sizing:border-box}.faq-group-items details p{max-width:100%;box-sizing:border-box}.faq-bottom-cta{background:var(--wine);color:#fff;position:relative;overflow:hidden}.faq-bottom-cta:before{content:'↗';font:400 470px/1 Georgia,serif;position:absolute;right:-70px;top:-175px;color:rgba(255,255,255,.065);pointer-events:none;}.faq-bottom-grid{position:relative;z-index:1}.faq-bottom-grid p{color:#f2dee0}.faq-bottom-cta .eyebrow.on-dark{color:#f6d8da}.faq-bottom-cta .eyebrow.on-dark:before{background:#f6d8da}.faq-bottom-actions .btn-ghostlight{border-color:rgba(255,255,255,.62)}@media(max-width:1100px){.catalog-group-heading{gap:16px}.catalog-group-copy{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:26px}.catalog-group-copy p{max-width:none}}@media(max-width:800px){.service-faq-layout{grid-template-columns:1fr;gap:27px}.service-faq-lead .h-section{margin-bottom:10px}.service-faq-desc{max-width:590px}.catalog-group-copy{grid-template-columns:1fr;gap:13px}.catalog-group-copy p{max-width:650px}.faq-section-grid{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:28px}}@media(max-width:660px){.catalog-group-heading{gap:14px}.catalog-group-copy{display:block}.catalog-group-copy p{margin-top:16px}.service-faq-section{padding-top:69px;padding-bottom:69px}.service-faq-content .faq-teaser-link{padding:24px 23px}.faq-section-grid{grid-template-columns:1fr;gap:22px}.faq-group-items{width:100%;margin:0}.faq-group-items details p{margin-right:8px}.faq-bottom-cta:before{font-size:300px;right:-90px;top:-90px}}@media(max-width:930px){.nav-drawer{height:100vh;height:100dvh;bottom:auto;overflow:hidden;padding:clamp(13px,2.5dvh,25px) clamp(17px,5vw,27px);}.drawer-top{padding-bottom:clamp(8px,1.4dvh,18px);flex:none}.drawer-brand{font-size:clamp(23px,3.1dvh,27px)}.drawer-close{width:39px;height:39px;flex:none}.drawer-nav{display:grid;grid-template-rows:repeat(6,minmax(0,1fr));flex:1 1 auto;min-height:0;margin-top:clamp(5px,1.15dvh,13px);}.drawer-nav a{display:flex;align-items:center;padding:clamp(4px,1.25dvh,13px) 0;font-size:clamp(19px,2.8dvh,24px);line-height:1.12;}.drawer-bottom{flex:none;margin-top:clamp(8px,1.3dvh,16px);padding-top:clamp(6px,1.2dvh,14px);gap:clamp(4px,.8dvh,8px);border-top:1px solid #414141;}.drawer-bottom .muted{font-size:10px;letter-spacing:.08em}.drawer-bottom .btn{min-height:43px;padding:11px 13px;font-size:10px}.drawer-bottom a[href^="mailto:"]{padding:5px 0!important;font-size:clamp(10px,1.65dvh,12px);line-height:1.2;overflow-wrap:anywhere;}}@media(max-width:930px) and (max-height:600px){.nav-drawer{padding-top:11px;padding-bottom:11px}.drawer-top{padding-bottom:7px}.drawer-nav{margin-top:3px}.drawer-nav a{font-size:19px;padding:3px 0}.drawer-bottom{padding-top:6px;margin-top:5px;gap:2px}.drawer-bottom .muted{display:none}.drawer-bottom .btn{padding:8px 11px;min-height:35px}.drawer-bottom a[href^="mailto:"]{padding:3px 0!important}}@media(max-width:930px) and (max-height:455px){.nav-drawer{overflow:auto}.drawer-nav{flex:none;grid-template-rows:none}.drawer-nav a{padding:5px 0}}@media (min-width:661px){.feature-story .story-photo{margin-block:clamp(27px,3.1vw,44px);min-height:0;overflow:hidden;}.feature-story .story-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}}@media (max-width:660px){.feature-story .story-photo{margin-top:22px;margin-bottom:18px;}.feature-story .story-copy{padding-top:43px;padding-bottom:53px;}}@media (max-width:930px){.drawer-nav a:last-child{border-bottom:0}}:root{--container:1260px;--focus:#efaa32}html{scroll-padding-top:102px}body{overflow-x:clip;text-rendering:optimizeLegibility}body,button,a{touch-action:manipulation}:is(a,button,summary,input,textarea,select):focus-visible{outline:3px solid var(--focus);outline-offset:3px}a:focus-visible{border-radius:2px}main section[id], main [id^="faq-"], main [id^="lighting-"]{scroll-margin-top:110px}.copy{line-height:1.8}.copy.large{line-height:1.76}.eyebrow{letter-spacing:.17em}.btn{min-height:48px;font-size:12px;letter-spacing:.1em;line-height:1.25}.btn:active{transform:translateY(0)}.rule-link{font-size:12px;line-height:1.45;letter-spacing:.1em;transition:color .18s,border-color .18s}.header-inner{min-height:89px;gap:26px}.brand,.brand picture{display:block;flex:none}.brand img{display:block;width:clamp(250px,20.4vw,293px);height:auto;max-width:none}.desktop-nav{gap:clamp(16px,1.7vw,28px)}.nav-link{font-size:11px;letter-spacing:.09em;white-space:nowrap}.header-call{border-radius:2px;font-size:11px;line-height:1.4;white-space:nowrap;min-height:44px;transition:background-color .18s}.topline .right a{color:#fff}.hero-copy{padding-block:85px 92px}.hero-copy .copy{max-width:520px}.hero-photo-wrap{min-height:610px}.hero-photo{filter:saturate(.9)}.hero-index,.hero-photo-caption{letter-spacing:.15em}.section{padding-block:clamp(72px,7.5vw,110px)}.section-heading{gap:clamp(25px,4vw,60px)}.section-heading .copy{max-width:425px;margin-bottom:2px}.service-feature{min-height:197px;position:relative;transition:background .18s,box-shadow .18s}.service-feature:hover,.service-feature:focus-visible{background:#faf7f5}.service-feature:focus-visible{outline-offset:-4px;z-index:2}.service-feature h3{font-size:clamp(24px,2.15vw,28px);line-height:1.2}.service-feature p{font-size:14px;line-height:1.7}.service-feature svg{width:22px;height:22px}.service-footer p{font-size:14px;line-height:1.65;max-width:580px}.feature-story .story-photo img{filter:saturate(.94)}.feature-story .story-photo{border-radius:2px}.editorial-text p,.showcase-side p{max-width:56ch}.showcase-main,.showcase-side{min-width:0}.faq-home-grid p{line-height:1.8}.faq-group-items summary,.service-faq-items summary{cursor:pointer;transition:color .18s,background-color .18s}.faq-group-items summary:hover,.service-faq-items summary:hover{color:var(--wine)}.faq-group-items details[open],.service-faq-items details[open]{background:rgba(151,7,25,.024)}.faq-group-items details[open] summary{color:var(--wine)}.faq-group-items details p{color:#55595a;line-height:1.8}.service-category-nav a{transition:background-color .18s,color .18s,border-color .18s}.service-category-nav a.is-active{border-color:var(--wine);background:#fff9f8}.service-category-nav a.is-active span{color:var(--wine)}.service-catalog-card{transition:border-color .18s,background-color .18s}.service-catalog-card:hover{border-color:#b7aca7;background:#fdfbf9}.project-card[hidden]{display:none!important}.project-results-status{margin:13px 0 0;color:#6b6562;font-size:12px;letter-spacing:.02em;line-height:1.5}.project-card img{width:100%;height:auto;aspect-ratio:16 / 11;object-fit:cover}.contact-item a,.footer-contact a{overflow-wrap:anywhere}.contact-item .contact-kicker{letter-spacing:.08em}.contact-item p{line-height:1.7}.contact-aside ul{line-height:1.65}.site-footer{border-top:1px solid #343536}.footer-logo{width:clamp(252px,25vw,345px);height:auto;max-width:100%;margin-bottom:28px}.footer-contact a,.footer-nav a{transition:color .18s}.footer-contact a:hover,.footer-nav a:hover{color:#f2b1b5}.footer-copy{max-width:430px;line-height:1.8}.menu-toggle,.drawer-close{border-radius:2px;aspect-ratio:1/1;transition:border-color .18s,background-color .18s}.menu-toggle:hover{background:var(--paper);border-color:var(--wine)}@media(min-width:931px) and (max-width:1200px){.header-inner{gap:clamp(10px,1.4vw,20px)}.brand img{width:clamp(205px,22vw,252px)}.desktop-nav{gap:clamp(10px,1.35vw,18px)}.header-call{padding:13px 12px;font-size:10px;gap:7px}.nav-link{font-size:10px;letter-spacing:.06em}}@media(max-width:930px){.topline-inner{min-height:32px}.site-header .header-inner{min-height:76px;gap:16px}.site-header .brand img{width:min(263px,calc(100vw - 144px));height:auto}.drawer-brand{font-size:clamp(16px,2.3dvh,22px);letter-spacing:.005em}.drawer-nav a[aria-current="page"]{color:#fff;border-left:3px solid #e3a2a9;padding-left:12px}.drawer-nav a:hover{color:#f4c4c7}.nav-drawer{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(13px,env(safe-area-inset-bottom))}.drawer-bottom a[href^="mailto:"]{max-width:100%;line-height:1.35}}@media(max-width:800px){.section-heading{align-items:flex-start}.service-footer{align-items:flex-start}.footer-logo{width:305px}.service-category-section{scroll-margin-top:94px}}@media(max-width:660px){.container{width:min(calc(100% - 38px),var(--container))}.topline-inner{font-size:9px;letter-spacing:.055em}.topline .right{gap:0}.header-inner{min-height:72px}.brand img{max-height:62px;object-fit:contain;object-position:left center}.hero-copy{padding-block:57px 43px}.hero-photo-wrap{min-height:370px}.h-display{font-size:clamp(44px,10.9vw,66px)}.h-page{font-size:clamp(43px,10.2vw,64px)}.h-section{font-size:clamp(37px,8.5vw,54px)}.copy.large{font-size:16px;line-height:1.75}.section{padding-block:66px}.section-heading{gap:18px;margin-bottom:30px}.section-heading .copy{max-width:100%}.service-feature{min-height:0;padding:27px 22px}.service-feature p{font-size:14px}.service-footer{flex-direction:column;gap:8px}.service-footer p{margin:0}.feature-story .story-photo{border-radius:2px}.showcase-main{min-height:310px}.footer-logo{width:min(330px,100%)}.btn{white-space:normal;min-height:47px;padding:15px 19px;gap:14px}.faq-group-items summary{font-size:clamp(19px,5vw,22px);line-height:1.43}.service-faq-items summary{font-size:clamp(19px,5vw,22px)}.contact-item a{font-size:clamp(15px,4.2vw,22px)}}@media(max-width:460px){.site-header .brand img{width:min(226px,calc(100vw - 121px));max-height:60px}.site-header .header-inner{min-height:72px}.menu-toggle{width:45px;height:45px;flex:none}.footer-logo{width:min(305px,100%)}}@media(max-width:360px){.site-header .brand img{width:min(205px,calc(100vw - 114px))}.header-inner{gap:9px}.hero .button-row a{width:100%;justify-content:space-between}.drawer-brand{font-size:17px}.drawer-nav a{font-size:clamp(18px,2.5dvh,21px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.hero-photo{object-position:48% 26%}.story-photo img{object-position:center 30%}.showcase-main img{object-position:center 30%}.project-card .tag{background:rgba(151,7,25,.94)}.field-proof{background:var(--paper);border-top:1px solid #e7e2db;border-bottom:1px solid #e7e2db}.field-proof-heading{align-items:end}.field-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.field-proof-photo{margin:0;background:#fff;border:1px solid var(--line);padding:14px}.field-proof-photo img{width:100%;height:320px;object-fit:cover;object-position:center 34%}.field-proof-photo figcaption{font-size:12px;line-height:1.6;color:var(--sub);padding-top:12px}.contact-photo-mini{margin:26px 0 16px}.contact-photo-mini img{width:100%;height:220px;object-fit:cover;object-position:center 34%;border:1px solid rgba(255,255,255,.25)}.contact-photo-mini figcaption{display:block;margin-top:10px;color:#c9cbcd;font-size:11px;letter-spacing:.09em;text-transform:uppercase}@media (max-width:900px){.field-proof-grid{grid-template-columns:1fr}.field-proof-photo img{height:280px}}[hidden]{display:none!important}.cl-icon{width:20px;height:20px;flex:0 0 auto;vertical-align:middle}.rule-link .cl-icon,.catalog-jump-arrow .cl-icon{width:18px;height:18px}.cl-top-divider{opacity:.5;padding:0 8px}.cl-license{margin-top:26px}.cl-footer-email{font-size:13px!important;margin-top:12px}.footer-contact .rule-link{color:#fff;margin-top:8px}.desktop-nav ul{display:flex;align-items:center;gap:clamp(16px,1.7vw,28px);list-style:none;padding:0;margin:0}.footer-nav ul,.drawer-nav ul{display:contents;list-style:none;padding:0;margin:0}.footer-nav li,.drawer-nav li{display:contents}.footer-nav .nav-link{font-size:13px;letter-spacing:0;text-transform:none;white-space:normal;padding:0}.footer-nav .nav-link:after,.drawer-nav .nav-link:after{display:none}.drawer-nav .nav-link{white-space:normal;text-transform:none;letter-spacing:0}.drawer-brand{display:block;max-width:calc(100% - 58px)}.drawer-brand img{width:220px;height:auto}.drawer-bottom>a[href^="mailto:"]{color:#ddd}.drawer-nav li:last-child a{border-bottom:0}.drawer-nav li:not(:last-child) a{border-bottom:1px solid #414141}.cl-noscript-nav{padding-block:18px;display:flex;gap:16px;flex-wrap:wrap}.cl-native-content{color:var(--ink);line-height:1.8}.cl-native-content>.container{max-width:960px}.cl-native-content h2,.cl-native-content h3{font-family:Georgia,serif;font-weight:400}.cl-native-content a{color:var(--wine)}.cl-native-content img{height:auto}.cl-native-content .wp-block-image{max-width:100%;margin-inline:0}.cl-native-content article{padding-block:25px;border-bottom:1px solid var(--line)}.hero-photo-wrap{position:relative}.hero-photo{object-position:50% 37%}.editorial-image{position:relative;overflow:hidden}.editorial-image .editorial-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 43%}.project-card .project-img{overflow:hidden}.project-card .tag{color:#fff}.meta-line{color:#646466}.site-footer .meta-line{color:#b8babd}.fact small{color:#666}.field-proof-photo{min-width:0}.field-proof-photo img{object-position:50% 37%}.contact-photo-mini{width:100%}.contact-photo-mini img{object-position:50% 42%}.faq-category-nav a .cl-icon{margin-left:auto}.faq-category-nav a{gap:12px}.faq-bottom-actions .btn .cl-icon{flex:none}.contact-item>div{min-width:0}.rule-link{max-width:100%;white-space:normal}.rule-link>svg,.rule-link>.arrow{flex:none}.site-footer .footer-nav .nav-link{font-weight:500}.service-faq-content,.faq-group-items{min-width:0}.service-category-section{scroll-margin-top:115px}.cl-contact-section{background:var(--paper);border-top:1px solid var(--line)}.cl-contact-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(35px,6vw,80px);align-items:start}.cl-contact-lead .copy{max-width:36ch}.cl-form{background:#fff;border:1px solid var(--line);padding:clamp(24px,3vw,42px);min-width:0}.cl-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}.cl-field{display:flex;flex-direction:column;gap:9px;min-width:0}.cl-field-full{grid-column:1/-1}.cl-field label{font-size:13px;line-height:1.4;font-weight:700}.cl-field input,.cl-field textarea,.cl-field select{width:100%;min-width:0;border:1px solid #aba8a2;border-radius:2px;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;padding:12px 14px;box-sizing:border-box;appearance:none;-webkit-appearance:none}.cl-field select{padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 8 5 5 5-5' fill='none' stroke='%2317191a' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:18px}.cl-field textarea{resize:vertical;min-height:146px}.cl-consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.7}.cl-consent input{accent-color:var(--wine);width:18px;height:18px;flex:none;margin-top:3px}.cl-form-help{font-size:13px;color:var(--sub);line-height:1.7}.cl-form-status{padding:14px 16px;border-left:3px solid var(--wine);background:var(--paper);line-height:1.7;font-size:14px}.cl-form-status[data-state="success"]{border-color:#286345;background:#eff8f2}.cl-form .btn:disabled{opacity:.6;cursor:wait;transform:none}.cl-honeypot{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}.cl-form .cf-turnstile{max-width:100%}.cl-form label abbr{text-decoration:none;color:var(--wine)}.cl-form .cl-form-status:empty{display:none}@media(min-width:931px) and (max-width:1200px){.desktop-nav ul{gap:clamp(10px,1.35vw,18px)}}@media(min-width:783px){body.admin-bar .site-header{top:32px}body.admin-bar .nav-drawer{top:32px;height:calc(100dvh - 32px)}}@media(min-width:601px) and (max-width:782px){body.admin-bar .site-header{top:46px}body.admin-bar .nav-drawer{top:46px;height:calc(100dvh - 46px)}}@media(max-width:930px){.drawer-nav .nav-link{font-size:clamp(19px,2.8dvh,24px);padding-block:clamp(4px,1.25dvh,13px);line-height:1.12}.drawer-top{gap:12px}.drawer-close{min-width:39px}.cl-contact-grid{grid-template-columns:1fr;gap:24px}.cl-contact-lead .copy{max-width:65ch}.desktop-nav{display:none}}@media(max-width:660px){.hero-photo{object-position:50% 36%}.cl-form-grid{grid-template-columns:1fr;gap:18px}.cl-form{padding:22px 18px}.cl-contact-section{padding-block:58px}.cl-form .btn{width:100%}.editorial-image{min-height:340px}.project-card .project-img img{aspect-ratio:4/3;object-position:50% 35%}.cl-inline-arrow{display:inline-flex}.drawer-nav a{min-height:40px}.cl-form-help{overflow-wrap:anywhere}}@media(max-width:930px) and (max-height:600px){.drawer-nav .nav-link{padding-block:3px;font-size:19px}.drawer-brand img{width:190px;max-height:55px;object-fit:contain}.drawer-nav a{min-height:34px}}@media(max-width:930px) and (max-height:455px){.nav-drawer{overflow-y:auto}.drawer-nav{flex:none}.drawer-nav .nav-link{padding-block:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.hero-photo{position:absolute;top:37px;left:0;width:100%;height:calc(100% - 75px);object-fit:cover;object-position:50% 34%}.showcase-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}@media(max-width:930px){.hero-photo-wrap{min-height:0;height:520px}.hero-photo{top:0;height:calc(100% - 35px);object-position:50% 30%}}@media(max-width:660px){.hero-photo-wrap{min-height:0;height:405px}.showcase-main{min-height:360px}.hero-photo{object-position:50% 30%}}.nav-drawer .drawer-nav .nav-link{color:#f5f3ef}.nav-drawer .drawer-nav .nav-link:hover,.nav-drawer .drawer-nav .nav-link[aria-current="page"]{color:#fff}.nav-drawer .drawer-bottom .muted{color:#c6c8cb}.site-footer .footer-nav .nav-link{color:#c6c8cb}.site-footer .footer-nav .nav-link:hover,.site-footer .footer-nav .nav-link[aria-current="page"]{color:#fff}.cl-electric-site .page-hero .breadcrumbs{display:none!important;margin:0;padding:0}.site-header .brand{min-width:0}.site-header .brand picture{line-height:0}.site-header .brand img{width:310px;height:auto;aspect-ratio:60/13;max-height:none;object-fit:contain;object-position:left center}.drawer-brand img{width:230px;max-width:100%;height:auto;aspect-ratio:60/13;object-fit:contain;object-position:left center}.footer-logo{aspect-ratio:60/13;object-fit:contain;object-position:left center}@media(min-width:931px) and (max-width:1200px){.site-header .brand img{width:clamp(211px,22vw,264px)}}@media(max-width:930px){.site-header .brand img{width:min(275px,calc(100vw - 132px))}}@media(max-width:460px){.site-header .brand img{width:min(246px,calc(100vw - 106px))}}@media(max-width:360px){.site-header .brand img{width:calc(100vw - 105px)}}@media(max-width:930px) and (max-height:600px){.drawer-brand img{width:190px;max-height:42px}}
/* v1.2 overrides */
.hero-bottom .container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:14px 24px}
.projects-filter{margin-top:26px}
.project-results-status{margin:0 0 20px;color:var(--sub);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.project-card .tag{background:rgba(151,7,25,.94);color:#fff}
@media(max-width:930px){.hero-bottom .container{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}}
@media(max-width:660px){.hero-bottom .container{grid-template-columns:1fr;gap:12px}.project-results-status{font-size:11px}}


/* CL-Electric 1.3: project gallery progressive reveal. */
.cl-page-projects .project-gallery{align-items:stretch;}
.cl-page-projects .project-card{min-width:0;}
.cl-page-projects .project-img{height:auto;aspect-ratio:16 / 11;}
.cl-page-projects .project-img img{display:block;width:100%;height:100%;aspect-ratio:16 / 11;object-fit:cover;object-position:center;}
.cl-page-projects .project-card[hidden],.cl-page-projects .project-load-more[hidden]{display:none!important;}
.cl-page-projects .project-load-more{display:flex;justify-content:center;padding:34px 0 8px;}
.cl-page-projects .project-load-more-button{min-width:min(300px,100%);min-height:52px;justify-content:space-between;}
.cl-page-projects .project-results-status{min-height:1.5em;}
@media(max-width:660px){.cl-page-projects .project-load-more{padding-top:28px;}.cl-page-projects .project-load-more-button{width:100%;}}


/* V1.4 — Click-to-expand individual project images, no slideshow or carousel. */
.project-img{isolation:isolate}
.project-photo-trigger{position:relative;display:block;width:100%;height:100%;min-height:0;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:#fff;text-align:inherit;cursor:zoom-in;overflow:hidden}
.project-photo-trigger img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .32s ease,filter .32s ease}
.project-photo-trigger:hover img,.project-photo-trigger:focus-visible img{transform:scale(1.055);filter:brightness(.82)}
.project-photo-trigger:focus-visible{outline:3px solid var(--focus);outline-offset:-4px}
.project-image-action{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;gap:7px;padding:9px 11px;background:rgba(23,25,26,.86);color:#fff;font-size:11px;font-weight:700;letter-spacing:.045em;border:1px solid rgba(255,255,255,.28);opacity:0;transform:translateY(-5px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}
.project-image-action svg{width:16px;height:16px;flex:none}
.project-photo-trigger:hover .project-image-action,.project-photo-trigger:focus-visible .project-image-action{opacity:1;transform:translateY(0)}
.project-img .tag{pointer-events:none;z-index:2}
.cl-photo-open{overflow:hidden}
.cl-photo-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(1200px,96vw);max-width:96vw;max-height:94vh;max-height:94dvh;margin:auto;padding:0;border:1px solid rgba(255,255,255,.23);background:#141617;color:#fff;box-shadow:0 25px 75px rgba(0,0,0,.45);overflow:hidden}
.cl-photo-dialog::backdrop{background:rgba(6,8,10,.88);backdrop-filter:blur(5px)}
.cl-photo-dialog-inner{position:relative;max-height:94vh;max-height:94dvh;display:flex;flex-direction:column;justify-content:center;min-height:0}
.cl-photo-dialog-close{position:absolute;right:15px;top:15px;z-index:3;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.38);background:rgba(0,0,0,.78);color:#fff;cursor:pointer}
.cl-photo-dialog-close:hover{background:var(--wine)}
.cl-photo-dialog-close:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.cl-photo-dialog-close svg{width:21px;height:21px}
.cl-photo-dialog-figure{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:18px;margin:0;min-height:0;overflow:hidden}
.cl-photo-dialog-figure img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(94vh - 122px);max-height:calc(94dvh - 122px);object-fit:contain;box-shadow:0 2px 18px rgba(0,0,0,.2)}
.cl-photo-dialog-figure figcaption{align-self:stretch;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;align-items:baseline;padding:14px 5px 1px;font-size:13px;line-height:1.45;color:#d8d9db}
.cl-photo-dialog-figure figcaption strong{font-size:15px;color:#fff}
.cl-photo-dialog-figure figcaption span{color:#c1c1c3}
.contact-aside .cl-contact-email{display:inline-flex;align-self:flex-start;margin-top:12px;border-color:rgba(255,255,255,.48)}
@media(max-width:660px){.project-image-action{opacity:1;transform:none;top:10px;right:10px;padding:7px 9px;font-size:10px}.project-image-action svg{width:14px;height:14px}.cl-photo-dialog{width:100vw;max-width:100vw;max-height:100dvh;border:0}.cl-photo-dialog-inner{max-height:100dvh}.cl-photo-dialog-figure{padding:70px 12px 22px}.cl-photo-dialog-figure img{max-height:calc(100dvh - 170px)}.cl-photo-dialog-figure figcaption{flex-direction:column;gap:5px;font-size:12px}.cl-photo-dialog-close{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){.project-photo-trigger img,.project-image-action{transition:none}}


/* CL-Electric 1.7 - featured kitchen remodel before / after comparison. */
.cl-before-after-section{padding:clamp(76px,8vw,112px) 0 clamp(74px,7.4vw,103px);background:var(--paper);border-block:1px solid #e4e0da}
.cl-before-after-section .container{max-width:var(--container)}
.cl-compare-heading{display:grid;grid-template-columns:minmax(0,1.23fr) minmax(0,.77fr);gap:clamp(32px,6vw,96px);align-items:end;margin-bottom:clamp(30px,4vw,52px)}
.cl-compare-heading .h-section{margin-bottom:0;max-width:720px}
.cl-compare-intro{max-width:420px;justify-self:end}
.cl-compare-intro p.copy{margin:0 0 17px}
.cl-compare-instruction{display:flex;align-items:center;gap:12px;color:var(--wine-dark);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0}
.cl-compare-instruction span{width:30px;height:30px;border:1px solid #ccbfc0;display:grid;place-items:center;border-radius:50%;font-size:19px}
.cl-compare-widget{position:relative;border:1px solid #e0dbd5;box-shadow:0 20px 48px rgba(25,23,19,.08);background:#fff}
.cl-compare-stage{position:relative;isolation:isolate;width:100%;aspect-ratio:16/8.8;overflow:hidden;background:#3d3b38}
.cl-compare-photo{position:absolute!important;inset:0;display:block;width:100%!important;height:100%!important;max-width:none;object-fit:cover;object-position:50% 47%;pointer-events:none;user-select:none;-webkit-user-drag:none}
.cl-compare-before{z-index:2;clip-path:inset(0 calc(100% - var(--cl-compare-position)) 0 0)}
.cl-compare-after{z-index:1}
.cl-compare-badge{z-index:4;position:absolute;top:clamp(16px,2.2vw,30px);color:white;padding:10px 17px;background:rgba(20,22,22,.86);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;pointer-events:none}
.cl-compare-badge-before{left:clamp(16px,2vw,30px)}
.cl-compare-badge-after{right:clamp(16px,2vw,30px);background:var(--wine-dark)}
.cl-compare-line{position:absolute;top:0;bottom:0;left:var(--cl-compare-position);width:3px;transform:translateX(-50%);z-index:5;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.2),0 0 20px rgba(0,0,0,.16);pointer-events:none}
.cl-compare-handle{position:absolute;top:50%;left:50%;width:56px;height:56px;transform:translate(-50%,-50%);border:3px solid #fff;border-radius:50%;background:var(--wine);color:#fff;box-shadow:0 6px 24px rgba(0,0,0,.3);display:grid;place-items:center}
.cl-compare-handle svg{width:34px;height:24px}
.cl-compare-input{position:absolute;inset:0;z-index:6;display:block;width:100%;height:100%;padding:0;margin:0;opacity:0;cursor:ew-resize;touch-action:none;appearance:none;-webkit-appearance:none}
.cl-compare-input:focus-visible{outline:none}
.cl-compare-stage:has(.cl-compare-input:focus-visible){outline:4px solid var(--focus);outline-offset:4px}
.cl-compare-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 27px 23px}
.cl-compare-foot>div{display:grid;gap:5px}
.cl-compare-foot strong{font:400 clamp(20px,2.3vw,30px)/1.2 Georgia,serif;letter-spacing:-.02em;color:var(--ink)}
.cl-compare-foot span{font-size:12px;line-height:1.55;color:var(--sub)}
.cl-compare-note{text-align:right;white-space:nowrap}
@media(max-width:800px){.cl-compare-heading{grid-template-columns:1fr;gap:18px}.cl-compare-intro{max-width:650px;justify-self:start}.cl-compare-stage{aspect-ratio:4/3}.cl-compare-foot{align-items:flex-start;flex-direction:column;gap:9px}.cl-compare-note{text-align:left}}
@media(max-width:660px){.cl-before-after-section{padding:65px 0 71px}.cl-compare-stage{aspect-ratio:4/4.4}.cl-compare-photo{object-position:38% 48%}.cl-compare-badge{top:15px;padding:8px 10px;font-size:10px;letter-spacing:.1em}.cl-compare-badge-before{left:12px}.cl-compare-badge-after{right:12px}.cl-compare-handle{width:46px;height:46px}.cl-compare-handle svg{width:29px}.cl-compare-foot{padding:18px 18px 19px}.cl-compare-foot span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.cl-compare-before,.cl-compare-line{transition:none!important}}
