@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00y8kskkn0hyx.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b0947914c9718a1e-s.1xjn85gt7t6qs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d0b60be57f16ee32-s.1xtu7gopqv2u0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1f9e983605289f29-s.3aak_kra40y8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.3huc2loe0ie8a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00y8kskkn0hyx.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b0947914c9718a1e-s.1xjn85gt7t6qs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d0b60be57f16ee32-s.1xtu7gopqv2u0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f9e983605289f29-s.3aak_kra40y8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.3huc2loe0ie8a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00y8kskkn0hyx.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b0947914c9718a1e-s.1xjn85gt7t6qs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d0b60be57f16ee32-s.1xtu7gopqv2u0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1f9e983605289f29-s.3aak_kra40y8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.3huc2loe0ie8a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond Fallback;src:local(Times New Roman);ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.0%;size-adjust:96.98%}.cormorant_garamond_f9443eaa-module__gscFkW__className{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.cormorant_garamond_f9443eaa-module__gscFkW__variable{--font-serif:"Cormorant Garamond", "Cormorant Garamond Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_7979cce5-module__mAtNha__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_7979cce5-module__mAtNha__variable{--font-sans:"Inter", "Inter Fallback"}
:root{--paper:#f7f3ec;--limewash:#fffdf8;--mist:#ebe5da;--line:#d8d0c2;--ink:#2f302c;--muted:#68645c;--olive:#65715c;--rust:#a0644a;--clay:#c9a08a;--focus:#174f5b;--shadow:0 18px 50px #2f302c14;--shell:min(1120px, calc(100vw - 32px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans), system-ui, sans-serif;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.65}body::selection{background:var(--clay);color:var(--ink)}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.shell{width:var(--shell);margin-inline:auto}.skip-link,.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{z-index:50;clip:auto;background:var(--ink);width:auto;height:auto;color:var(--limewash);padding:10px 14px;top:12px;left:12px}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f3ece0;border-bottom:1px solid #d8d0c2b8;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:20px;min-height:72px;display:flex}.wordmark,.footer-brand{color:var(--ink);align-items:baseline;gap:9px;text-decoration:none;display:inline-flex}.wordmark span,.footer-brand{font-family:var(--font-serif), Georgia, serif;letter-spacing:0;font-size:1.75rem;font-weight:600}.wordmark small{color:var(--rust);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:700}.menu-button{border:1px solid var(--line);background:0 0;place-content:center;gap:6px;width:44px;height:44px;display:grid}.menu-button span[aria-hidden=true]{background:var(--ink);width:18px;height:1px}.nav{border-bottom:1px solid var(--line);background:var(--paper);padding:20px 16px 24px;display:none;position:fixed;inset:72px 0 auto}.nav.is-open{gap:12px;display:grid}.nav a{color:var(--muted);font-size:.96rem;text-decoration:none}.nav a[aria-current=page],.nav a:hover{color:var(--ink)}.nav-cta{border-bottom:1px solid var(--rust);width:max-content;color:var(--ink)!important}.hero{align-items:end;min-height:calc(100svh - 72px);display:flex;position:relative;overflow:hidden}.hero img{object-fit:cover;object-position:center}.hero-overlay{background:linear-gradient(90deg,#f7f3ecf0 0%,#f7f3ecc7 40%,#f7f3ec14 100%),linear-gradient(#2f302c00,#2f302c2e);position:absolute;inset:0}.hero-content{padding:10vh 0 8vh;position:relative}.hero-content h1,.section-intro h1,.section-heading h2,.editorial-copy h2,.cta-band h2{font-family:var(--font-serif), Georgia, serif;letter-spacing:0;font-weight:600;line-height:.98}.hero-content h1{max-width:760px;margin:0;font-size:clamp(3rem,9vw,6.9rem)}.hero-content p{color:#45443f;max-width:680px;margin:26px 0 0;font-size:clamp(1.05rem,2.2vw,1.28rem)}.eyebrow{color:var(--rust);letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;font-size:.78rem;font-weight:700;line-height:1.3}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border:1px solid;justify-content:center;align-items:center;min-height:48px;padding:12px 18px;text-decoration:none;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.button.primary{background:var(--ink);color:var(--limewash);border-color:var(--ink)}.button.primary:hover{background:var(--rust);border-color:var(--rust)}.button.secondary{color:var(--ink);background:#fffdf87a}.button.secondary:hover{background:var(--limewash)}.hero-note{color:var(--muted);margin-top:26px;display:block}.section{padding:clamp(72px,9vw,132px) 0}.section.compact{padding:42px 0}.page-top{padding-top:clamp(64px,8vw,104px)}.muted{background:var(--mist)}.editorial{background:var(--limewash)}.principle-grid,.project-grid,.contact-grid,.footer-grid{gap:28px;display:grid}.principle{border-top:1px solid var(--line);padding-top:18px}h1,h2,h3,p{overflow-wrap:anywhere}h2,h3{line-height:1.15}.principle h2,.timeline-item h3,.budget-row h2,.project h2,.contact-details h2,.info-slots h2{font-family:var(--font-serif), Georgia, serif;margin:0 0 12px;font-size:clamp(1.7rem,4vw,2.4rem);font-weight:600}.principle p,.section-intro p,.text-block p,.editorial-copy p,.contact-details p,.legal p,.about-copy p{color:var(--muted)}.two-column,.about-grid{align-items:center;gap:clamp(34px,6vw,88px);display:grid}.editorial-copy h2,.section-intro h1,.section-heading h2,.cta-band h2{margin:0;font-size:clamp(2.5rem,7vw,5.3rem)}.section-intro{max-width:860px;margin-bottom:clamp(36px,6vw,76px)}.section-intro p,.section-heading p,.editorial-copy p,.text-block p{font-size:1.06rem}.image-panel{position:relative}.image-panel img,.portrait-placeholder,.compare,.form-panel{border:1px solid #d8d0c2e0}.image-panel img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto}.list-board{border-top:1px solid #2f302c38;gap:0;display:grid}.list-board span{color:#45443f;border-bottom:1px solid #2f302c29;padding:15px 0}.section-heading{max-width:760px;margin-bottom:44px}.timeline{border-top:1px solid var(--line);gap:0;display:grid}.timeline-item{border-bottom:1px solid var(--line);gap:10px;padding:26px 0;display:grid}.timeline-item span{color:var(--rust);font-family:var(--font-serif), Georgia, serif;font-size:2rem}.timeline-item p{color:var(--muted);margin:0}.text-block,.note-box{max-width:760px;margin-top:56px}.text-block h2,.text-block h3{font-family:var(--font-serif), Georgia, serif;margin:0 0 18px;font-size:clamp(2rem,5vw,3.4rem)}.cta-band{background:var(--olive);color:var(--limewash)}.cta-band .shell{gap:24px;display:grid}.cta-band .button.primary{background:var(--limewash);width:max-content;color:var(--ink);border-color:var(--limewash)}.budget-list{border-top:1px solid var(--line);gap:0;display:grid}.budget-row{border-bottom:1px solid var(--line);gap:22px;padding:30px 0;display:grid}.budget-row ul,.project-grid ul,.info-slots ul{color:var(--muted);margin:0;padding-left:20px}.note-box{border-top:1px solid var(--line);padding:24px 0 0}.project{margin-top:34px}.example-label,.budget-tag{color:var(--rust);font-weight:700}.before-after{margin:28px 0 36px}.compare{--split:50%;aspect-ratio:16/10;background:var(--mist);position:relative;overflow:hidden}.compare img{object-fit:cover}.compare-after{clip-path:inset(0 0 0 var(--split));position:absolute;inset:0}.compare:after{content:"";top:0;bottom:0;left:var(--split);background:var(--limewash);width:1px;position:absolute;box-shadow:0 0 0 1px #2f302c47}.compare-label{color:var(--ink);background:#fffdf8e0;padding:5px 9px;font-size:.78rem;font-weight:700;position:absolute;top:12px}.compare-label.before{left:12px}.compare-label.after{right:12px}.range-label{color:var(--muted);gap:10px;margin-top:12px;display:grid}.range-label input{width:100%;accent-color:var(--rust)}.sr-only-image{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.portrait-placeholder{background:linear-gradient(145deg, var(--mist), var(--limewash));min-height:420px;color:var(--muted);place-items:center;display:grid}.about-copy blockquote{border-left:2px solid var(--rust);font-family:var(--font-serif), Georgia, serif;margin:30px 0 0;padding-left:20px;font-size:clamp(2rem,5vw,3rem);line-height:1.08}.contact-details{border-top:1px solid var(--line);padding-top:20px}.narrow{max-width:820px}.form-panel{background:var(--limewash);padding:clamp(18px,4vw,38px)}.form-panel.compact,.form-grid{gap:18px;display:grid}.field{gap:7px;display:grid}.field span{color:var(--ink);font-weight:650}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;padding:12px 13px}.field textarea{resize:vertical}.field small,.field-error{color:var(--muted);font-size:.88rem}.field-error{color:#8a3324}.checkbox{grid-template-columns:22px 1fr;align-items:start}.checkbox input{width:20px;height:20px;min-height:20px;accent-color:var(--olive);margin-top:3px}.honeypot{position:absolute;left:-10000px}.progress{border:1px solid var(--line);background:var(--mist);height:34px;margin:20px 0;position:relative;overflow:hidden}.progress span{background:var(--clay);transition:width .16s;position:absolute;inset:0 auto 0 0}.progress strong{z-index:1;place-items:center;height:100%;font-size:.86rem;display:grid;position:relative}.form-message{border-left:3px solid;margin:18px 0;padding:14px 16px}.form-message p{margin:0}.form-message.success{border-color:var(--olive);background:#eef1e9}.form-message.error{background:#f7e9e3;border-color:#8a3324}.form-panel .button{margin-top:22px}.legal h2{font-family:var(--font-serif), Georgia, serif;margin-top:34px;font-size:2rem}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding:42px 0}.footer-grid{color:var(--muted)}.footer-links,.footer-contact{gap:8px;display:grid}.footer-links a,.footer-contact a{color:var(--ink);text-decoration:none}.reveal{animation:.7s both reveal}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (min-width:720px){.principle-grid{grid-template-columns:repeat(3,1fr)}.two-column,.about-grid,.contact-grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr)}.two-column.reverse{grid-template-columns:minmax(280px,.75fr) minmax(0,1fr)}.two-column.reverse>:first-child{grid-column:2}.two-column.reverse>:last-child{grid-area:1/1}.timeline-item{grid-template-columns:80px minmax(180px,.55fr) minmax(0,1fr);align-items:baseline}.timeline.deep .timeline-item{grid-template-columns:90px minmax(220px,.65fr) minmax(0,1fr)}.budget-row{grid-template-columns:minmax(0,.9fr) minmax(280px,1fr)}.project-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.full{grid-column:1/-1}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}}@media (min-width:980px){.menu-button{display:none}.nav{background:0 0;border:0;align-items:center;gap:20px;padding:0;display:flex;position:static}.nav-cta{margin-left:8px}}@media (max-width:520px){:root{--shell:min(100vw - 24px, 1120px)}.hero{min-height:760px}.hero-overlay{background:linear-gradient(#f7f3ecb8,#f7f3ecf5)}.hero-actions .button,.form-panel .button{width:100%}.wordmark span{font-size:1.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
