:root{--pine:#183b37;--ink:#18322f;--cream:#f4f1e8;--paper:#fffdf8;--gold:#efc261;--muted:#687570;--line:#d6d8cd;--heading:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--heading);font-weight:700;line-height:.92;letter-spacing:-.025em}h2{font-size:clamp(48px,5.2vw,76px)}h3{line-height:1.2}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b47618;outline-offset:5px}button{border:0}::selection{background:var(--gold);color:var(--ink)}.skip{position:fixed;left:20px;top:-70px;background:var(--gold);padding:12px;z-index:100}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.topline{height:35px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--pine);color:var(--cream);font-size:10px;font-weight:600;letter-spacing:.12em}.topline a span{margin-left:10px;color:var(--gold)}.header{display:flex;align-items:center;justify-content:space-between;min-height:100px;padding:18px 5%;background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:30}.brand{display:flex;gap:13px;align-items:center;line-height:.8;font-family:var(--heading);font-size:32px;font-weight:800;letter-spacing:.01em}.brand svg{width:41px;fill:none;stroke:var(--pine);stroke-width:2.5}.brand small{display:block;font-size:16px;letter-spacing:.18em;margin-top:7px}nav{display:flex;align-items:center;gap:32px}nav>a{font-size:13px;font-weight:600}nav>a:not(.button){position:relative}nav>a:not(.button):after{content:'';position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--pine);transition:right .2s}nav>a:hover:after{right:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:17px 23px;font-size:13px;font-weight:700;line-height:1.4;min-height:54px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:22px;line-height:1}.button-dark{color:var(--paper);background:var(--pine)}.button-dark:hover{background:#2e5148}.button-gold{background:var(--gold);color:var(--pine)}.button-gold:hover{background:#f4ce7e}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;padding:60px 5% 0;gap:5%;overflow:hidden;min-height:715px}.hero-copy{padding-top:17px;padding-bottom:45px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;line-height:1.5}.hero .eyebrow{display:flex;gap:10px;align-items:center;margin-bottom:25px}.tiny-cross{font-size:25px;font-weight:400}.hero h1{font-size:clamp(66px,7.6vw,116px);white-space:nowrap}.hero h1 span{color:#8c6528}.intro{font-size:17px;max-width:390px;line-height:1.7;margin-top:27px;color:#4c6059}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--ink);padding:7px 0}.text-link span{margin-left:20px}.hero-bottom{display:flex;gap:17px;align-items:center;margin-top:58px}.hero-bottom p{font-size:10px;font-weight:600;line-height:1.6;letter-spacing:.035em}.line-icon{font-size:58px;line-height:.5;transform:rotate(-30deg)}.vertical-line{height:35px;width:1px;background:#c0c7b9;margin:0 3px}.hero-visual{position:relative;min-width:0;align-self:end}.photo-frame{height:550px;position:relative;background:#b6bcaf;overflow:hidden}.photo-frame>img{width:100%;height:100%;transition:opacity .22s,transform .8s}.photo-frame:hover>img{transform:scale(1.025)}.photo-frame:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#102a28a6);pointer-events:none}.photo-index{position:absolute;top:22px;right:22px;background:var(--cream);padding:7px 12px;font-size:10px;letter-spacing:.1em}.photo-caption{position:absolute;z-index:1;bottom:22px;left:25px;right:25px;color:white;display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;letter-spacing:.13em}.photo-caption>span:last-child{font-size:30px}.project-stamp{position:absolute;left:-40px;top:47px;background:var(--gold);padding:17px 20px;transform:rotate(-7deg);z-index:2;box-shadow:0 6px 12px #102a2810;text-align:center}.project-stamp span{font-size:7px;font-weight:700;letter-spacing:.15em;display:block}.project-stamp b{display:block;font-family:var(--heading);font-size:29px;line-height:.95;margin:9px 0}.hero-tabs{display:flex;align-items:stretch;height:74px;background:var(--pine);color:var(--cream)}.tab-cue{font-size:7px;line-height:1.5;font-weight:600;letter-spacing:.13em;display:flex;align-items:center;padding:10px 16px;gap:6px;max-width:130px}.hero-tabs button{flex:1;background:transparent;color:var(--cream);border-left:1px solid #ffffff22;font-size:10px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}.hero-tabs button span{font-size:12px}.hero-tabs button.active,.hero-tabs button:hover{background:var(--gold);color:var(--pine)}.service-ticker{display:flex;justify-content:space-around;align-items:center;background:var(--gold);padding:18px 3%;font-family:var(--heading);font-size:22px;letter-spacing:.04em;font-weight:600;gap:20px;overflow:hidden;white-space:nowrap}.service-ticker i{font-size:27px;font-style:normal}.section{padding:100px 7%}.services{display:grid;grid-template-columns:1fr 1.25fr;gap:11%;padding-top:110px;padding-bottom:115px}.section-heading .eyebrow{margin-bottom:22px}.section-heading>p:last-child{max-width:350px;margin-top:25px;font-size:15px;color:#53655d}.service-list{border-top:1px solid var(--ink);align-self:center}.service-list details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:25px 0}summary::-webkit-details-marker{display:none}.service-number{font-size:10px;color:#6f7a6c}summary h3{font-family:var(--heading);font-size:29px;font-weight:600;flex:1}.plus{font-size:25px;font-weight:400;transition:transform .2s}details[open] .plus{transform:rotate(45deg)}.service-body{padding:0 38px 27px;animation:fadeIn .3s}.service-body p{font-size:14px;line-height:1.8;color:#52645b;max-width:420px}.small-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;font-weight:700;margin-top:18px;border-bottom:1px solid;padding-bottom:4px}.transformation{background:var(--pine);color:var(--paper);display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center}.compare-heading .eyebrow{color:var(--gold);margin-bottom:24px}.compare-heading h2{font-size:clamp(47px,4.5vw,68px)}.compare-heading>p:not(.eyebrow){color:#c5d1c8;max-width:330px;font-size:15px;margin-top:26px}.compare-instruction{display:flex;align-items:center;gap:13px;font-size:9px;letter-spacing:.13em;color:var(--gold);margin-top:32px}.compare-instruction span{border:1px solid #aebeb36b;border-radius:50%;font-size:23px;width:40px;height:40px;text-align:center}.comparison{position:relative;aspect-ratio:4/3;overflow:hidden;isolation:isolate}.comparison img{width:100%;height:100%;object-fit:cover}.before-layer{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.image-label{position:absolute;top:19px;background:var(--cream);color:var(--ink);font-size:9px;letter-spacing:.14em;padding:7px 11px;font-weight:700}.before-label{left:18px}.after-label{right:18px}.compare-divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:var(--gold);transform:translateX(-50%);pointer-events:none}.compare-divider span{background:var(--gold);color:var(--pine);width:50px;height:50px;display:grid;place-items:center;border:5px solid #ffffff;border-radius:50%;font-size:25px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 10px #0002}.comparison input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.comparison:focus-within{outline:3px solid var(--gold);outline-offset:6px}.work-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.work-top .eyebrow{margin-bottom:22px}.work-top>p{max-width:300px;font-size:14px;color:#53655d;margin-bottom:4px}.filters{display:flex;gap:28px;border-bottom:1px solid var(--line);padding:35px 0 0;margin-bottom:30px}.filters button{padding:12px 0 16px;background:transparent;color:#657469;font-size:12px;border-bottom:2px solid transparent;margin-bottom:-1px}.filters button.active{border-color:var(--pine);color:var(--pine);font-weight:700}.filters sup{margin-left:5px;font-size:8px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.project{padding:0;background:var(--paper);text-align:left;overflow:hidden}.project.wide{grid-column:span 2}.project img{width:100%;height:300px;transition:transform .4s}.project:first-child img{object-position:center 68%}.project:hover img{transform:scale(1.035)}.project span{display:flex;justify-content:space-between;padding:17px 15px;font-size:11px;gap:10px;align-items:center}.project b{font-weight:500}.project i{font-size:18px;font-style:normal}.project[hidden]{display:none}.gallery-count{text-align:right;color:#6e7b71;font-size:10px;padding:15px 0 25px}.progress-note{display:flex;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px;padding:22px 0}.progress-note>span{font-size:9px;font-weight:700;letter-spacing:.1em;max-width:70px}.progress-note img{width:110px;height:85px}.progress-note p{font-size:12px;flex:1;color:#596a60;max-width:450px}.progress-note .small-link{margin:0 0 0 auto}.about{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;background:#e6e8dc;position:relative;overflow:hidden}.about-title .eyebrow{margin-bottom:30px}.about h2{font-size:clamp(64px,7vw,102px)}.about h2>span{color:#7b8a70}.signature-mark{width:170px;fill:none;stroke:var(--pine);stroke-width:2.6;stroke-linecap:round;margin-top:27px}.about-copy{padding-top:20px}.cross-large{color:#6b805f;font-size:75px;line-height:1;display:block;margin-bottom:35px}.about-copy h3{font-family:var(--heading);font-size:34px;max-width:350px;line-height:1.05;font-weight:600;margin-bottom:22px}.about-copy p{font-size:14px;line-height:1.9;max-width:410px;color:#4c6155;margin-top:16px}.about-phone{font-family:var(--heading);font-size:30px;font-weight:600;display:block;margin-top:27px}.about-phone span{font-size:25px;margin-left:30px}.profile-link{display:inline-block;font-size:11px;border-bottom:1px solid;margin-top:8px}.profile-link span{margin-left:18px}.process{display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.process .eyebrow{margin-bottom:25px}.process h2{font-size:59px}.process ol{padding:0;margin:0;list-style:none}.process li{display:grid;grid-template-columns:35px 1fr;gap:4px 15px;border-top:1px solid var(--line);padding:20px 0}.process li>span{grid-row:span 2;font-family:var(--heading);font-size:26px;color:#8a6c32}.process li h3{font-size:16px;font-weight:600}.process li p{font-size:13px;color:#5e7065;max-width:360px}.quote{background:var(--pine);color:var(--paper);display:grid;grid-template-columns:.85fr 1.15fr;gap:9%}.quote-copy .eyebrow{color:var(--gold);margin-bottom:25px}.quote-copy h2{font-size:clamp(70px,7vw,102px)}.quote-copy h2>span{color:var(--gold)}.quote-copy>p:not(.eyebrow){font-size:14px;color:#ced9cd;margin-top:28px;line-height:1.9}.quote-copy>a{display:block;font-family:var(--heading);font-size:30px;font-weight:600;margin-top:22px}.quote-copy>a>span{margin-left:30px}.quote-note{display:flex;align-items:flex-start;gap:13px;max-width:325px;margin-top:45px;color:#becdbf}.quote-note p{font-size:11px;line-height:1.8}.quote-note>span{font-size:20px;line-height:1.3}form{padding:32px;background:#244a43;align-self:start;border:1px solid #517367}.form-heading{display:flex;align-items:center;gap:15px;justify-content:space-between;margin-bottom:24px}.form-heading h3{font-family:var(--heading);font-size:27px;font-weight:600}.form-heading>span{font-size:7px;letter-spacing:.14em;color:var(--gold);border:1px solid #8b936f;padding:4px 7px;white-space:nowrap}form label{display:block;font-size:10px;font-weight:500;margin-bottom:17px}input,textarea,select{display:block;width:100%;background:#183b3777;color:var(--paper);border:1px solid #72948286;border-radius:0;padding:13px 12px;line-height:1.5;margin-top:7px;font-size:13px;min-height:47px}select option{background:var(--pine)}input::placeholder,textarea::placeholder{color:#acc0b4;opacity:1}input:focus,select:focus,textarea:focus{border-color:var(--gold)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.optional{font-weight:400;color:#bed0c2}.form-fineprint{font-size:9px;color:#bdd0bf;margin-top:13px}.quote form .button{width:100%;margin-top:3px}.quote textarea{resize:vertical}#form-feedback{background:var(--cream);color:var(--pine);padding:18px;margin-top:20px;font-size:13px}#form-feedback p{font-size:11px;margin-top:8px;line-height:1.8}footer{padding:55px 5% 30px;background:#102e2a;color:var(--cream)}.footer-wordmark{display:flex;justify-content:space-between;align-items:center;font-family:var(--heading);font-size:clamp(35px,7vw,100px);line-height:1;font-weight:600;letter-spacing:-.01em;padding-bottom:40px;border-bottom:1px solid #ffffff24}.footer-wordmark>span{font-size:.9em;color:var(--gold)}footer>div{display:flex;justify-content:space-between;gap:20px;font-size:9px;margin-top:28px;color:#c8d2c3}footer>div>span:first-child{letter-spacing:.13em}footer button{color:inherit;background:transparent;padding:0;font-size:9px;text-decoration:underline}dialog{border:0;background:var(--cream);color:var(--pine);max-width:90vw;max-height:90vh;padding:25px}dialog::backdrop{background:#0a211aeb;backdrop-filter:blur(5px)}#lightbox{width:900px}#lightbox>img{max-height:70vh;width:100%;object-fit:contain}dialog .dialog-close{display:block;margin:0 0 18px auto;background:var(--pine);color:var(--paper);padding:8px 14px;font-size:12px}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:17px;gap:15px}.lightbox-bottom button{font-size:25px;background:transparent;padding:0 12px}.lightbox-bottom p{font-size:13px}#privacy{width:500px;padding:30px}#privacy h2{font-size:45px;margin-bottom:22px}#privacy p{font-size:14px;margin-top:14px}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s,transform .65s}.js-motion .reveal.visible{opacity:1;transform:none}@keyframes fadeIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(min-width:1600px){.hero{padding-left:max(5%,calc((100vw - 1450px)/2));padding-right:max(5%,calc((100vw - 1450px)/2))}.section{padding-left:max(7%,calc((100vw - 1350px)/2));padding-right:max(7%,calc((100vw - 1350px)/2))}}
@media(max-width:1050px){.hero{gap:4%;min-height:620px;padding-top:40px}.hero h1{font-size:8vw}.photo-frame{height:480px}.hero-tabs{height:66px}.tab-cue{display:none}.project-stamp{left:-20px;top:35px;padding:12px 15px}.hero-bottom{margin-top:40px}.services{gap:7%}.section{padding:80px 5%}nav{gap:23px}nav .button{padding:14px 18px}.gallery{gap:15px}.project img{height:250px}.progress-note{gap:18px}.progress-note p{max-width:300px}.about{gap:8%}.quote{gap:6%}form{padding:24px}.form-row{gap:12px}.process{gap:7%}.process h2{font-size:52px}.form-heading{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:760px){html{scroll-padding-top:25px}.topline{font-size:8px;height:31px;padding:0 5%;letter-spacing:.07em}.topline a span{margin-left:5px}.header{min-height:82px;padding:15px 5%}.brand{font-size:28px;gap:10px}.brand svg{width:35px}.brand small{font-size:13px}.menu-toggle{display:flex;gap:12px;align-items:center;background:transparent;font-size:12px;padding:12px 0 12px 12px}.menu-toggle>span{font-size:20px}nav{display:none;position:absolute;left:0;right:0;top:100%;padding:23px 5% 28px;flex-direction:column;align-items:stretch;background:var(--cream);border-bottom:1px solid var(--ink);gap:0;box-shadow:0 12px 15px #0001}nav.open{display:flex}nav>a{padding:15px 0}nav .button{margin-top:12px;justify-content:space-between}.hero{display:flex;flex-direction:column;padding:38px 5% 0;gap:0;min-height:auto}.hero-copy{padding:0 0 35px}.hero .eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:20px}.tiny-cross{font-size:21px}.hero h1{font-size:clamp(55px,12.5vw,94px);letter-spacing:-.015em;line-height:.95;white-space:normal}.intro{font-size:14px;max-width:320px;margin-top:22px;line-height:1.75}.hero-actions{gap:24px;margin-top:24px}.hero-actions .button{font-size:12px;padding:15px 18px;min-height:50px;gap:20px}.text-link{font-size:11px}.text-link span{margin-left:10px}.hero-bottom{display:none}.hero-visual{align-self:stretch;margin-top:8px}.photo-frame{height:390px}.photo-frame>img{object-position:center 58%}.project-stamp{left:auto;right:20px;top:-24px;transform:rotate(6deg);padding:12px 15px}.project-stamp b{font-size:25px;margin:6px 0}.project-stamp span{font-size:6px}.photo-index{top:18px;left:18px;right:auto;font-size:8px}.photo-caption{font-size:10px;bottom:18px;left:20px;right:20px}.hero-tabs{height:61px}.hero-tabs button{font-size:9px;gap:10px}.hero-tabs button>span{font-size:12px}.tab-cue{display:none}.service-ticker{font-size:17px;gap:20px;padding:13px 5%;justify-content:flex-start}.service-ticker i{font-size:20px}.section{padding:65px 6%}h2{font-size:clamp(46px,11vw,68px)}.services{display:block}.section-heading>p:last-child{font-size:14px;margin-top:20px;max-width:340px}.section-heading .eyebrow{margin-bottom:20px}.service-list{margin-top:32px}summary{gap:13px;padding:22px 0}summary h3{font-size:26px}.service-body{padding-left:27px;padding-right:15px}.service-body p{font-size:13px}.transformation{display:flex;flex-direction:column;gap:30px;align-items:stretch}.compare-heading h2{font-size:clamp(45px,11vw,66px)}.compare-heading .eyebrow{font-size:8px;margin-bottom:20px}.compare-heading>p:not(.eyebrow){font-size:13px;max-width:340px;margin-top:22px}.compare-instruction{font-size:8px;margin-top:24px;gap:10px}.compare-instruction span{font-size:20px;width:34px;height:34px}.comparison{width:100%}.compare-divider span{width:42px;height:42px;font-size:21px;border-width:4px}.image-label{font-size:7px;top:13px;padding:6px 8px}.before-label{left:13px}.after-label{right:13px}.work-top{display:block}.work-top>p{max-width:310px;font-size:13px;margin-top:23px}.work-top .eyebrow{margin-bottom:20px}.filters{gap:22px;padding-top:22px;margin-bottom:20px}.filters button{font-size:10px;padding-bottom:12px;white-space:nowrap}.filters sup{margin-left:3px;font-size:7px}.gallery{grid-template-columns:1fr 1fr;gap:13px}.project.wide{grid-column:span 2}.project img{height:210px}.project.wide img{height:300px}.project>span{padding:12px 10px;font-size:9px;line-height:1.4}.project i{font-size:15px}.progress-note{flex-wrap:wrap;padding:20px 0;gap:15px}.progress-note img{width:90px;height:75px}.progress-note>span{font-size:8px;max-width:65px}.progress-note p{font-size:11px;flex-basis:100%;max-width:100%;order:3}.progress-note .small-link{font-size:10px;gap:10px;margin-left:auto}.about{display:block}.about h2{font-size:clamp(65px,16vw,95px)}.about-title .eyebrow{font-size:8px;margin-bottom:25px}.signature-mark{width:145px;margin-top:22px}.about-copy{padding-top:24px}.cross-large{display:none}.about-copy h3{font-size:31px;margin-bottom:20px}.about-copy p{font-size:13px}.about-phone{font-size:29px;margin-top:22px}.process{display:block}.process h2{font-size:clamp(45px,11vw,67px)}.process ol{margin-top:30px}.process li p{font-size:12px}.quote{display:block}.quote-copy h2{font-size:clamp(72px,17vw,105px)}.quote-copy>p:not(.eyebrow){font-size:13px;margin-top:22px}.quote-copy>a{font-size:29px;margin-top:16px}.quote-note{margin-top:25px;max-width:340px}.quote-note p{font-size:10px}.quote form{margin-top:35px;padding:22px 18px}.form-heading{flex-direction:row;align-items:center;margin-bottom:22px}.form-heading h3{font-size:24px}.form-heading>span{font-size:6px;letter-spacing:.06em;padding:4px 5px}.form-row{grid-template-columns:1fr;gap:0}form label{font-size:11px;margin-bottom:17px}input,select,textarea{font-size:16px;padding:12px 10px}form .button{font-size:13px}.form-fineprint{font-size:9px}footer{padding:38px 6% 28px}.footer-wordmark{font-size:9vw;padding-bottom:25px}footer>div{display:grid;grid-template-columns:1fr 1fr;gap:15px 20px;font-size:8px;margin-top:22px}footer button{text-align:right;font-size:8px}footer>div>a{text-align:right}dialog{padding:15px;max-width:94vw}.lightbox-bottom p{font-size:11px}#privacy{padding:22px}#privacy p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}
