@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f7f5ef;--ink:#223c33;--green:#244c41;--soft:#e8ece4;--muted:#65736b;--line:#d8ddd3;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ad7336;outline-offset:5px}button,a,summary{touch-action:manipulation}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.07}em{font-weight:400;color:#677c6d}h3{font-size:21px;font-weight:500;letter-spacing:-.02em}.header{height:100px;max-width:1440px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:inline-flex;align-items:center;gap:12px;font-size:23px;font-weight:600;line-height:1.1;letter-spacing:-1px;white-space:nowrap}.brand-pro{display:block;font-size:10px;letter-spacing:4px;margin-top:7px}.brand-icon{width:32px;display:grid;gap:5px;transform:skewY(-22deg)}.brand-icon i{display:block;height:4px;background:var(--green)}.brand-icon i:nth-child(2){width:26px}.brand-icon i:last-child{width:20px}.header nav{display:flex;gap:30px;font-size:13px}.header nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.header-call{font-size:13px;white-space:nowrap}.header-call span{margin-right:8px}.hero{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.08fr 1fr;gap:4%;padding:36px 5% 52px;align-items:center}.hero-copy{padding:35px 0}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;margin-bottom:28px;display:flex;align-items:center;gap:10px}.dot{height:6px;width:6px;background:#72866d;border-radius:50%}h1{font-size:clamp(52px,5.5vw,83px);margin-bottom:25px}.hero-description{color:var(--muted);font-size:16px;max-width:390px;line-height:1.85}.button-row{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.hero .button-row{margin-top:28px;align-items:flex-start;gap:15px;flex-direction:column}.button{display:inline-flex;justify-content:space-between;gap:25px;align-items:center;min-height:52px;padding:15px 23px;font-size:12px;font-weight:500;cursor:pointer;border:0;border-radius:2px}.primary{background:var(--green);color:#fff}.primary:hover{background:#17372d}.text-link{font-size:12px;font-weight:500}.text-link span{margin-left:15px}.experience{display:flex;align-items:center;gap:15px;margin-top:47px;font-size:10px;line-height:1.7}.experience-number{font-family:var(--serif);font-size:44px;letter-spacing:-3px;line-height:1}.experience strong{font-weight:400;color:var(--muted)}.experience-line{width:1px;background:var(--line);height:32px;margin:0 8px}.experience-note{color:var(--muted)}.hero-art{position:relative;overflow:hidden;background:#d4d1bc;aspect-ratio:880/920}.hero-art img{width:100%;height:100%;display:block;object-fit:cover}.art-label{position:absolute;top:24px;left:24px;font-size:8px;letter-spacing:1.5px;color:#566050;background:#f7f5efd6;padding:6px 9px}.art-caption{position:absolute;left:24px;bottom:24px;right:24px;display:flex;justify-content:space-between;align-items:end;color:#fff;font-family:var(--serif);font-size:29px;line-height:1.15;text-shadow:0 1px 8px #0006}.caption-arrow{width:40px;height:40px;border:1px solid #fff6;border-radius:50%;font-family:Arial;display:grid;place-items:center;font-size:22px}.service-strip{background:var(--green);color:#e7ecdf;display:flex;align-items:center;justify-content:center;gap:42px;padding:22px 4%;font-size:9px;letter-spacing:1.4px;flex-wrap:wrap}.service-strip i{font-size:14px;font-style:normal;color:#aabc99}.section{max-width:1280px;margin:auto;padding:100px 5%;scroll-margin-top:15px}.section h2{font-size:clamp(38px,4.4vw,59px);margin-bottom:25px}.section-heading p:last-child,.finish-copy>p:not(.eyebrow){max-width:360px;color:var(--muted);line-height:1.85}.services{display:grid;grid-template-columns:1fr 1.15fr;gap:70px}.service-list article{display:flex;gap:23px;border-top:1px solid var(--line);padding:25px 0}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-number{font-size:10px;line-height:32px;color:var(--muted)}.service-list h3{margin-bottom:10px}.service-list p{color:var(--muted);font-size:13px;line-height:1.8;margin:0}.service-symbol{margin-left:auto;font-size:22px;padding-left:8px}.finish{display:grid;grid-template-columns:1.14fr 1fr;gap:10%;align-items:center;background:var(--soft);max-width:none;padding-left:max(5%,calc((100vw - 1152px)/2));padding-right:max(5%,calc((100vw - 1152px)/2))}.finish-scene{height:320px;position:relative;background:linear-gradient(155deg,#e2ddcd 2%,#fbf8ed 65%,#e2dcc9);overflow:hidden;--split:48%}.scene-light{position:absolute;width:32px;height:13px;background:#fffdf6;border-radius:50%;left:57%;top:85px;box-shadow:0 0 30px 15px #fff8d480;transform:rotate(-11deg);z-index:2;border:2px solid #bebdae}.scene-wall{position:absolute;inset:64% -10% -20%;background:linear-gradient(100deg,#b8b3a0,#e3dece 75%);transform:rotate(-8deg);box-shadow:0 -2px 4px #00000012;z-index:2}.texture-layer{position:absolute;inset:0;background-color:#cac5b5;background-image:radial-gradient(ellipse at 20% 30%,#f3efe6 1px,#d4cfc1 2px,transparent 4px),radial-gradient(ellipse at 70% 80%,#a5a18d 1px,transparent 3px);background-size:7px 9px,11px 12px;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.split-line{position:absolute;left:var(--split);top:0;bottom:0;width:1px;background:#fff;z-index:4}.split-line:after{content:'↔';position:absolute;top:44%;left:-18px;background:var(--paper);border-radius:50%;width:37px;height:37px;display:grid;place-items:center;font-size:18px;box-shadow:0 2px 7px #0002}.scene-tag{position:absolute;z-index:5;bottom:17px;background:#f7f5efe6;padding:5px 8px;font-size:8px;letter-spacing:1.5px}.before{left:16px}.after{right:16px}.slider-label{display:flex;justify-content:space-between;font-size:11px;margin-top:17px}input[type=range]{width:100%;accent-color:var(--green);margin:12px 0;cursor:ew-resize}.illustration-note{font-size:9px;color:#677368;margin:0}.finish-copy .text-link{display:inline-block;margin-top:8px}.process{border-bottom:1px solid var(--line)}.process .section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}.process .section-heading h2{width:58%}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:35px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps article>span{display:block;font-size:10px;color:var(--muted);margin-bottom:30px}.steps h3{font-size:18px}.steps p{font-size:13px;color:var(--muted);max-width:270px}.questions{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;font-size:14px;cursor:pointer;gap:15px;list-style:none}summary::-webkit-details-marker{display:none}summary span{font-size:21px;color:var(--muted);font-weight:400}details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:13px;color:var(--muted);margin:17px 30px 0 0}.quote{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#203f35;color:var(--paper);padding-left:max(5%,calc((100vw - 1152px)/2));padding-right:max(5%,calc((100vw - 1152px)/2))}.quote em{color:#b4c2a6}.quote-copy>p:not(.eyebrow){color:#c4cfc5;max-width:350px;font-size:14px;line-height:1.9}.quote-phone{display:inline-flex;font-size:29px;font-family:var(--serif);gap:30px;margin:18px 0 25px}.quote-phone span{font-size:22px}.quote-copy .quote-small{font-size:11px!important}.quote form{background:var(--paper);color:var(--ink);padding:35px;align-self:start}.quote form h3{font-size:21px;margin-bottom:24px}.quote form label{display:block;font-size:11px;margin:15px 0 6px}.quote form input,.quote form select,.quote form textarea{width:100%;border:1px solid #d3d8ce;border-radius:0;background:transparent;padding:10px 11px;color:var(--ink);font-size:12px;min-height:43px}.quote form input::placeholder,.quote form textarea::placeholder{color:#747d72}.quote form textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote form>.button{margin-top:22px;width:100%}.form-note{font-size:10px;line-height:1.65;color:var(--muted);margin:13px 0 0}.message-output{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.message-output>p{font-size:12px}.message-output pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.65 'DM Sans',Arial,sans-serif;background:var(--soft);padding:15px;max-height:280px;overflow:auto}.copy-button{border:0;background:transparent;font-size:12px;text-decoration:underline;cursor:pointer;color:var(--ink);padding:8px}.copy-status{min-height:18px;font-size:11px!important;margin-bottom:0}footer{max-width:1440px;margin:auto;padding:42px 5% 25px;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}footer p,footer>a:not(.brand){font-size:10px;margin:0}footer small{flex-basis:100%;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:15px}.skip{position:absolute;left:15px;top:-60px;padding:10px;background:var(--green);color:white;z-index:10}.skip:focus{top:15px}[hidden]{display:none!important}@media(min-width:1350px){.hero .button-row{flex-direction:row;align-items:center;gap:25px}}@media(max-width:900px){.header{height:85px;gap:15px}.header nav{gap:20px}.brand{font-size:20px}.hero{gap:4%;padding-top:20px}h1{font-size:55px}.hero-description{font-size:14px}.hero-art{aspect-ratio:3/4}.experience{margin-top:30px;gap:10px}.experience-note{display:none}.experience-line{display:none}.art-caption{font-size:24px;left:18px;bottom:18px;right:18px}.services,.questions{gap:35px}.section{padding-top:70px;padding-bottom:70px}.service-strip{gap:22px;font-size:8px}.service-strip span:last-child,.service-strip i:last-of-type{display:none}.finish{gap:6%}.steps{gap:28px}.quote{gap:5%}.quote form{padding:25px}.quote-phone{font-size:25px}}@media(max-width:650px){.header{height:80px;padding:0 6%}.header nav{display:none}.header-call{font-size:11px}.brand{font-size:18px}.brand-icon{width:25px}.brand-icon i:nth-child(2){width:20px}.brand-icon i:last-child{width:15px}.brand-pro{font-size:8px}.hero{display:flex;flex-direction:column;padding:35px 6% 32px;gap:32px;align-items:stretch}.hero-copy{padding:0}.eyebrow{font-size:9px;margin-bottom:24px}h1{font-size:clamp(46px,11vw,65px)}.hero-description{font-size:15px;max-width:390px}.hero .button-row{margin-top:24px;gap:17px}.button{min-height:50px}.experience{margin-top:32px}.experience-note,.experience-line{display:block}.hero-art{aspect-ratio:1.18;max-height:470px}.hero-art img{object-position:center 46%;object-fit:cover}.art-label{top:17px;left:17px;font-size:7px}.art-caption{font-size:25px}.service-strip{gap:12px;padding:18px 4%;font-size:7px;letter-spacing:.7px}.service-strip i{font-size:10px}.section{padding:58px 6%}.section h2{font-size:43px}.services,.questions,.finish,.quote{grid-template-columns:1fr;gap:30px}.service-list h3{font-size:20px}.service-list article{gap:20px;padding:24px 0}.finish-copy{grid-row:1}.finish-scene{height:280px}.finish-copy p{max-width:100%!important}.process .section-heading{display:block}.process .section-heading h2{width:100%}.steps{grid-template-columns:1fr;gap:20px;margin-top:25px}.steps article{display:grid;grid-template-columns:25px 1fr;column-gap:20px;padding-top:20px}.steps article>span{grid-row:1/3;margin:0}.steps h3{margin-bottom:6px}.steps p{max-width:none;margin:0}.questions{gap:12px}.quote{gap:28px}.quote form{padding:25px}.form-grid{gap:12px}.quote-phone{font-size:32px;margin-top:10px}.quote-copy .quote-small{margin-bottom:0}footer{padding:35px 6% 25px;gap:22px}footer p{flex-basis:100%;order:3}footer small{order:4;margin-top:0}.message-output .button-row{gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Phone-only contact and before/after comparisons. */
.brand-pro{display:inline;font:inherit;letter-spacing:inherit;margin:0}.brand-name{display:block;font:500 12px/1.3 'DM Sans',Arial,sans-serif;letter-spacing:1.4px;margin-top:7px}.phone-note{font-size:12px;color:var(--muted)}.hero-comparison{min-width:0}.hero-comparison input{margin-bottom:0}.comparison-surface{--split:50%;position:relative;overflow:hidden;touch-action:pan-y;cursor:ew-resize;user-select:none}.comparison-surface>*{pointer-events:none}.comparison-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.comparison-before img,.wall-scene>img{width:100%;height:100%;object-fit:cover;display:block}.hero-art .art-label{z-index:5;top:18px;left:18px}.hero-art .art-caption{z-index:6;bottom:58px}.hero-state{position:absolute;bottom:19px;color:white;font-size:9px;letter-spacing:1.5px;padding:5px 8px;background:#263c32b3;z-index:5}.hero-state-before{left:18px}.hero-state-after{right:18px}.hero-divider:after{top:43%;color:var(--ink);text-shadow:none}.hero-before img{object-position:center}.finish{display:block}.finish-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;margin-bottom:34px}.finish-intro>div>p:not(.eyebrow){max-width:370px;color:var(--muted);line-height:1.85}.finish-intro h2{margin-bottom:0}.comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.comparison-grid .finish-scene,.wall-scene{height:auto;aspect-ratio:640/430}.service-comparison h3{font-size:18px;margin:18px 0 8px}.service-comparison p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:0}.service-comparison .slider-label{font-size:10px}.service-comparison input{margin-bottom:0}.finish>.illustration-note{margin-top:28px;font-size:10px}.call-section{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#203f35;color:var(--paper);padding-left:max(5%,calc((100vw - 1152px)/2));padding-right:max(5%,calc((100vw - 1152px)/2));align-items:center}.call-section em{color:#b4c2a6}.call-section>div>p:not(.eyebrow){color:#c4cfc5;max-width:390px;font-size:14px;line-height:1.9;margin-bottom:0}.call-details{border-left:1px solid #e2ecdb35;padding-left:40px}.call-label{display:block;font-size:9px;letter-spacing:2px;color:#c4cfc5}.call-phone{display:flex;justify-content:space-between;align-items:center;gap:20px;font:400 clamp(30px,3.3vw,48px)/1.4 var(--serif);letter-spacing:-.04em;margin:12px 0 15px}.call-phone span{font-family:Arial;font-size:28px}.call-button{background:var(--paper);color:var(--green);margin-top:25px;min-width:160px}.call-button:hover{background:#e4e9dc}.project-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:32px}.project-intro h2{margin-bottom:0}.project-intro>p{color:var(--muted);font-size:13px;line-height:1.85;max-width:330px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#fff}.photo-placeholder{aspect-ratio:3/4;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#e7e3d9;color:#7e8477;gap:15px;padding:15px;text-align:center;font-size:10px}.after-placeholder{background:#e7ece2;color:#61745f}.photo-stage{position:absolute;left:12px;top:13px;font-size:8px;letter-spacing:1.4px;color:var(--ink)}.photo-frame{width:35px;height:40px;display:grid;place-items:center;border:1px solid currentColor;font-size:20px;opacity:.5}.project-caption{display:flex;gap:13px;margin-top:20px;align-items:center}.project-index{font-size:9px;color:var(--muted)}.project-caption h3{font-size:15px;margin:0}.gallery-call{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:42px;padding-top:24px}.gallery-call p{margin:0;font-size:13px;color:var(--muted)}footer{border-top:1px solid var(--line)}
@media(max-width:900px){.comparison-grid{gap:18px}.service-comparison h3{font-size:15px}.service-comparison .slider-label{font-size:9px}.call-details{padding-left:24px}.project-grid{gap:18px}.project-caption h3{font-size:13px}.photo-placeholder{padding:10px;font-size:9px}.hero-comparison .hero-art{aspect-ratio:3/4}}
@media(max-width:650px){.header .brand{font-size:16px;gap:9px;letter-spacing:-.8px}.header .brand-name{font-size:11px;letter-spacing:1px;margin-top:5px}.header{gap:12px}.header-call{font-size:10px}.header-call span{margin-right:3px}.hero-comparison .hero-art{aspect-ratio:1.05;max-height:none}.hero-before img{object-position:center 46%}.hero-art .art-caption{bottom:52px;font-size:25px}.hero-state{font-size:8px}.finish-intro{grid-template-columns:1fr;gap:23px;margin-bottom:30px}.comparison-grid{grid-template-columns:1fr;gap:37px}.comparison-grid .finish-scene,.wall-scene{aspect-ratio:640/430}.service-comparison h3{font-size:20px;margin-top:14px}.service-comparison p{font-size:13px}.service-comparison .slider-label{font-size:11px}.call-section{grid-template-columns:1fr;gap:30px}.call-details{border-left:0;border-top:1px solid #e2ecdb35;padding:26px 0 0}.call-phone{font-size:40px;justify-content:flex-start;gap:35px}.call-details>p{max-width:330px!important}.project-intro{display:block;margin-bottom:25px}.project-intro>p{margin:20px 0 0}.project-grid{grid-template-columns:1fr;gap:32px}.photo-placeholder{aspect-ratio:4/3;font-size:10px}.project-caption h3{font-size:17px}.gallery-call{align-items:flex-start;flex-direction:column;gap:10px;margin-top:32px}.brand-name{font-size:11px}}
.project-card,.photo-placeholder{min-width:0}.photo-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-placeholder>span{max-width:100%;overflow-wrap:anywhere}@media(max-width:650px){.project-grid{grid-template-columns:minmax(0,1fr)}}
/* Simplified phone contact, service areas and larger comparison guidance. */
.hero-areas{max-width:440px;color:var(--muted);font-size:12px;line-height:1.9;margin-top:18px;margin-bottom:0}.hero .hero-call-button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;min-height:82px;min-width:285px;padding:18px 28px;font-size:17px}.hero-call-button strong{font-size:24px;font-weight:500;line-height:1.35;letter-spacing:.4px}.slider-label{align-items:center;gap:15px}.slider-label .drag-prompt{font-size:20px;font-weight:600;color:var(--ink);white-space:nowrap}.hero-comparison input{height:28px}.contact-areas{margin-top:28px;padding-top:24px;border-top:1px solid #e2ecdb35}.contact-areas h3{font-family:'DM Sans',Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:1.5px;margin-bottom:12px}.contact-areas p{font-size:12px;line-height:2;color:#c4cfc5;margin:0;max-width:460px}.gallery-call-button{font-size:14px;min-height:56px;padding:16px 24px}.photo-placeholder{gap:0}.hero-art .art-caption{right:20px}.call-button{font-size:15px;min-height:58px;justify-content:center}
@media(max-width:650px){.hero .hero-call-button{width:100%;min-width:0;min-height:90px;font-size:19px;padding:20px 24px}.hero-call-button strong{font-size:27px}.hero-areas{font-size:12px;margin-top:17px}.slider-label{font-size:10px}.slider-label .drag-prompt{font-size:20px}.gallery-call-button{width:100%;justify-content:center}.contact-areas{margin-top:22px}.contact-areas p{font-size:12px}}

/* Place service areas alongside experience and give the phone button more presence. */
.hero .button-row{width:100%}.hero .hero-call-button{width:100%;min-width:0}.experience{align-items:center}.experience>span:nth-child(2){flex-shrink:0}.experience-number{flex-shrink:0}.experience-line{flex-shrink:0;height:58px}.experience .hero-areas{flex:1;min-width:0;margin:0;font-size:12px;line-height:1.9;max-width:300px}
@media(max-width:900px){.experience{flex-wrap:wrap}.experience-line{display:none}.experience .hero-areas{flex-basis:100%;max-width:440px;margin-top:8px}}
@media(max-width:650px){.hero .hero-call-button{width:100%}.experience .hero-areas{margin-top:6px}}

/* Actual project photos retain their full framing so the ceiling damage remains visible. */
.project-card-real{grid-column:1 / -1}.project-photo{position:relative;margin:0;min-width:0;background:#e7e3d9}.project-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.project-photo .photo-stage{background:var(--paper);padding:5px 9px;top:12px;left:12px}.project-card-real .project-caption h3{font-size:20px}
@media(max-width:650px){.project-card-real .photo-pair{grid-template-columns:1fr;gap:8px}.project-card-real .project-caption h3{font-size:18px}}

.process{border-top:1px solid var(--line)}.process-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:36px}.process-intro h2{margin-bottom:0}.process-intro>p{color:var(--muted);font-size:15px;line-height:1.9;max-width:480px;margin:0}.process-photos{display:grid;grid-template-columns:1fr 1fr;gap:25px}.process-photos figure{margin:0;min-width:0}.process-photos img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}.process-photos figcaption{font-size:12px;color:var(--muted);margin-top:14px}
@media(max-width:650px){.process-intro{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.process-photos{grid-template-columns:1fr;gap:28px}}

/* Keep the real photo gallery and preparation section balanced and compact. */
.project-grid{grid-template-columns:minmax(0,1fr);gap:40px}.project-card-real .project-caption{margin:0 0 16px;gap:16px}.project-card-real .project-index{font-size:11px;letter-spacing:1px}.project-card-real .project-caption h3{font-size:22px}.project-card-real .photo-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:transparent}.project-photo{overflow:hidden;border-radius:3px}.project-photo .photo-stage{font-size:9px;font-weight:600;letter-spacing:1.2px}.projects{padding-bottom:70px}.gallery-call{margin-top:30px}
.process{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;padding-top:70px;padding-bottom:70px}.process-intro{display:block;margin:0}.process-intro h2{font-size:clamp(36px,3.8vw,51px);margin-bottom:24px}.process-intro>p{font-size:14px;line-height:1.85;max-width:400px}.process-photos{gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.process-photos img{border-radius:3px}.process-photos figcaption{font-size:11px;line-height:1.6;margin-top:10px;max-width:230px}
@media(max-width:900px){.process{gap:30px;grid-template-columns:.85fr 1.15fr}}
@media(max-width:650px){.projects{padding-bottom:48px}.project-grid{gap:30px}.project-card-real .project-caption h3{font-size:19px}.project-card-real .photo-pair{gap:7px}.project-photo .photo-stage{font-size:8px;top:8px;left:8px;padding:4px 6px}.process{grid-template-columns:1fr;gap:25px;padding-top:48px;padding-bottom:48px}.process-intro h2{font-size:39px;margin-bottom:18px}.process-intro .eyebrow{margin-bottom:22px}.process-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.process-photos figcaption{font-size:10px}}

/* Spacing before the real project gallery. */
.projects{padding-top:70px}
@media(max-width:650px){.projects{padding-top:48px}}

/* Restore the soft sage backdrop for section 02, across the page width. */
.projects{background:var(--soft);max-width:none;padding-left:max(5%,calc((100vw - 1152px)/2));padding-right:max(5%,calc((100vw - 1152px)/2))}

/* Service details keep the same typography and phone-first layout. */
.service-list h3 a{display:inline-block;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:#9baa9b}.service-list h3 a:hover{color:#677c6d}.service-detail{max-width:1152px;margin:auto;padding:45px 5% 80px}.service-back{font-size:12px;margin-bottom:35px;text-decoration:underline;text-underline-offset:4px}.service-detail h1{font-size:clamp(42px,5vw,70px);max-width:900px}.service-lead{font-size:18px;line-height:1.85;max-width:780px;color:var(--muted)}.service-detail-call{font-size:16px;min-height:64px;justify-content:center;margin:8px 0 24px;padding:18px 32px}.service-detail-content{max-width:780px}.service-detail-content h2{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:34px 0 16px}.service-detail-content p{color:var(--muted);font-size:15px;line-height:1.9}.service-detail-content p a{text-decoration:underline;text-underline-offset:4px}.service-detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:36px 0}.service-detail-gallery figure{margin:0}.service-detail-gallery img{width:100%;height:auto;display:block;border-radius:3px}.service-detail-gallery figcaption{font-size:10px;font-weight:600;letter-spacing:1.5px;margin-top:10px}.related-services{display:flex;gap:12px;flex-wrap:wrap}.related-services a{border:1px solid var(--line);padding:12px 16px;font-size:13px}.related-services a:hover{background:var(--soft)}
@media(max-width:650px){.service-detail{padding:30px 6% 50px}.service-lead{font-size:16px}.service-detail-call{width:100%;font-size:15px}.service-detail-content h2{font-size:28px}.service-detail-gallery{gap:8px}}

/* Align the hero content to one width and give experience and areas clear columns. */
.hero{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}.hero-copy{min-width:0}.hero-description{max-width:none;width:100%;font-size:17px;line-height:1.8;margin-bottom:0}.hero .button-row{margin-top:28px}.hero .hero-call-button{width:100%;min-width:0}.experience{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,1.2fr);gap:24px;align-items:start;margin-top:32px;padding-top:26px;border-top:1px solid var(--line)}.experience-stat{display:flex;gap:14px;align-items:center;min-width:0}.experience-copy{font-size:12px;line-height:1.65}.experience-number{font-size:46px;letter-spacing:-2px}.experience-areas{min-width:0;border-left:1px solid var(--line);padding-left:24px}.areas-label{display:block;font-size:9px;letter-spacing:1.5px;font-weight:600;line-height:1.5;margin-bottom:8px}.experience .hero-areas{max-width:none;margin:0;font-size:13px;line-height:1.8}
@media(min-width:651px) and (max-width:1000px){.experience{grid-template-columns:1fr;gap:18px}.experience-areas{border-left:0;padding-left:0}.hero-description{font-size:15px}}
@media(max-width:650px){.hero{grid-template-columns:minmax(0,1fr)}.hero-description{font-size:16px;line-height:1.8}.experience{grid-template-columns:1fr;gap:20px;margin-top:26px;padding-top:22px}.experience-areas{border-left:0;padding-left:0}.experience-copy{font-size:13px}.experience .hero-areas{font-size:13px;line-height:1.85}.experience-number{font-size:44px}}
