@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_6ebdd91a-module__QE3Yaa__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_6ebdd91a-module__QE3Yaa__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_42eec60-module__Gb1_vG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_42eec60-module__Gb1_vG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.0y1-r_vehenvp.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:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.10_7676vm7pyy.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:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.0hck6o0i8wq3a.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:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.0gq7fw9.sy_5..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:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_c292d6fe-module__ZPbyaG__className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.instrument_serif_c292d6fe-module__ZPbyaG__variable{--font-instrument-serif:"Instrument Serif", "Instrument Serif Fallback"}
:root{--cream:#f2ebd9;--cream-2:#ede3cc;--bone:#fbf7ee;--paper:#fff;--ink:#18130f;--ink-2:#2a211b;--muted:#7a6c5c;--line:#d9cfb8;--line-2:#e5dcc6;--terra:#b84a2a;--terra-2:#9a3e22;--ochre:#c68a3b;--green:#2e4a36;--shadow:0 1px 0 #18130f0a, 0 20px 50px -28px #18130f2e;--shadow-sm:0 1px 0 #18130f0a, 0 8px 20px -16px #18130f2e;--radius:4px;--radius-lg:10px;--max:1240px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--cream);color:var(--ink)}body{font-family:var(--font-geist-sans), -apple-system, system-ui, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";font-size:16px;line-height:1.55}img{max-width:100%;display:block}img[data-nimg=fill]{max-width:none}button{font:inherit;cursor:pointer;color:inherit;background:0;border:0}a{color:inherit;text-decoration:none}input,textarea,select{font:inherit;color:inherit}::selection{background:var(--terra);color:var(--bone)}.serif{font-family:var(--font-instrument-serif), "Times New Roman", serif;letter-spacing:-.01em;font-weight:400}.serif-it{font-family:var(--font-instrument-serif), serif;font-style:italic;font-weight:400}.mono{font-family:var(--font-geist-mono), ui-monospace, monospace}.eyebrow{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:11px}.eyebrow .dot{background:var(--terra);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block;transform:translateY(-1px)}h1,h2,h3,h4{font-family:var(--font-instrument-serif), serif;letter-spacing:-.015em;color:var(--ink);font-weight:400;line-height:1.02}h1{font-size:clamp(56px,8vw,128px)}h2{font-size:clamp(40px,5vw,72px)}h3{font-size:clamp(28px,3vw,40px)}h4{font-size:22px;line-height:1.2}p{color:var(--ink-2)}.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}.wrap-narrow{max-width:940px;margin:0 auto;padding:0 28px}.nav{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f2ebd9d9;position:sticky;top:0}.nav-inner{max-width:var(--max);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;padding:16px 28px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--ink);width:34px;height:34px;color:var(--bone);font-family:var(--font-instrument-serif), serif;letter-spacing:-.02em;border-radius:50%;place-items:center;font-size:20px;font-style:italic;display:grid}.brand-name{flex-direction:column;line-height:1.1;display:flex}.brand-name .a{font-family:var(--font-instrument-serif), serif;font-size:19px}.brand-name .b{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-family:var(--font-geist-mono), ui-monospace, monospace}.nav-links{align-items:center;gap:4px;display:flex}.nav-links a{color:var(--ink-2);border-radius:999px;padding:8px 14px;font-size:14px;transition:all .15s}.nav-links a:hover{background:#18130f0f}.nav-links a.active{background:var(--ink);color:var(--bone)}.nav-cta{background:var(--terra);color:var(--bone);border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.nav-cta:hover{background:var(--terra-2)}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:14px 22px;font-size:15px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--ink);color:var(--bone)}.btn-primary:hover{background:var(--terra)}.btn-terra{background:var(--terra);color:var(--bone)}.btn-terra:hover{background:var(--terra-2)}.btn-ghost{color:var(--ink);border-color:var(--ink);background:0 0}.btn-ghost:hover{background:var(--ink);color:var(--bone)}.btn-light{background:var(--bone);color:var(--ink);border:1px solid var(--line)}.btn-light:hover{border-color:var(--ink)}.btn .arrow{transition:transform .2s}.btn:hover .arrow{transform:translate(3px)}.hero{padding:60px 0 100px;position:relative;overflow:hidden}.hero-top{justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:56px;display:flex}.hero-meta{flex-direction:column;gap:18px;max-width:320px;display:flex}.hero-meta p{color:var(--ink-2);font-size:14px}.hero-headline{letter-spacing:-.025em;max-width:1100px;font-size:clamp(64px,10vw,168px);line-height:.92}.hero-headline em{color:var(--terra);font-style:italic}.hero-headline .tab{width:1ch;display:inline-block}.hero-bottom{grid-template-columns:1.5fr 1fr;align-items:end;gap:56px;margin-top:56px;display:grid}.hero-images{grid-template-columns:2fr 1fr 1fr;gap:12px;height:380px;display:grid}.hero-images .img{background:var(--ink);border-radius:var(--radius-lg);position:relative;overflow:hidden}.hero-images .img img{object-fit:cover;width:100%;height:100%}.hero-images .img-tall{grid-row:span 1}.hero-actions{flex-direction:column;gap:24px;display:flex}.hero-actions .lede{color:var(--ink-2);max-width:380px;font-size:19px;line-height:1.45}.hero-cta-row{flex-wrap:wrap;gap:12px;display:flex}.stats{background:var(--ink);color:var(--bone);padding:56px 0}.stats .grid{grid-template-columns:repeat(4,1fr);gap:40px;display:grid}.stat .n{font-family:var(--font-instrument-serif), serif;font-size:72px;line-height:1}.stat .n em{color:var(--ochre);font-style:italic}.stat .l{color:#fbf7ee99;letter-spacing:.08em;text-transform:uppercase;margin-top:8px;font-size:13px}section.block{border-top:1px solid var(--line);padding:100px 0}section.block.bone{background:var(--bone)}section.block.dark{background:var(--ink);color:var(--bone);border:0}section.block.dark h2,section.block.dark h3{color:var(--bone)}section.block.dark p{color:#fbf7eeb3}.section-head{grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:64px;display:grid}.section-head .right{text-align:right;max-width:420px;margin-left:auto}.services{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.service{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 32px;transition:background .2s;position:relative}.service:nth-child(3n){border-right:0}.service:hover{background:var(--cream-2)}.service .num{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);font-size:12px}.service h4{margin-top:56px;font-size:28px}.service p{color:var(--ink-2);margin-top:14px;font-size:14.5px}.service .icon{width:28px;height:28px;color:var(--terra);position:absolute;top:36px;right:32px}.featured-grid{grid-template-columns:5fr 4fr;gap:16px;display:grid}.f-left{flex-direction:column;gap:16px;display:flex}.f-right{grid-template-rows:1.4fr 1fr;gap:16px;display:grid}.f-card{background:var(--ink);border-radius:var(--radius-lg);aspect-ratio:4/3;cursor:pointer;position:relative;overflow:hidden}.f-card.tall{aspect-ratio:4/5}.f-card.wide{aspect-ratio:16/9}.f-card img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.f-card:hover img{transform:scale(1.04)}.f-meta{color:var(--bone);background:linear-gradient(#0000,#18130fd9);justify-content:space-between;align-items:end;padding:28px;display:flex;position:absolute;bottom:0;left:0;right:0}.f-meta .tag{font-family:var(--font-geist-mono), ui-monospace, monospace;color:#fbf7eeb3;letter-spacing:.12em;text-transform:uppercase;font-size:11px}.f-meta h4{color:var(--bone);margin-top:6px}.f-arrow{background:var(--bone);width:44px;height:44px;color:var(--ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.about{grid-template-columns:1fr 1fr;align-items:start;gap:80px;display:grid}.about-portrait{aspect-ratio:4/5;background:var(--ink);border-radius:var(--radius-lg);position:relative;overflow:hidden}.about-portrait img{object-fit:cover;width:100%;height:100%}.about-body{padding-top:20px}.about-body .pull{font-family:var(--font-instrument-serif), serif;color:var(--ink);border-left:2px solid var(--terra);margin:32px 0;padding-left:24px;font-size:32px;font-style:italic;line-height:1.2}.about-body p{margin-top:16px;font-size:16.5px}.signature{align-items:center;gap:16px;margin-top:40px;display:flex}.signature .scrawl{font-family:var(--font-instrument-serif), serif;color:var(--ink);font-size:36px;font-style:italic;transform:rotate(-3deg)}.signature .who{color:var(--muted);font-size:13px}.signature .who b{color:var(--ink);font-size:15px;font-weight:500;display:block}.test-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.test-card{background:var(--bone);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;padding:32px;display:flex}.test-card .stars{color:var(--ochre);letter-spacing:1px;font-size:14px}.test-card blockquote{font-family:var(--font-instrument-serif), serif;letter-spacing:-.01em;flex:1;margin:16px 0 24px;font-size:24px;line-height:1.3}.test-card .who{color:var(--muted);font-size:13px}.test-card .who b{color:var(--ink);font-weight:500}.cta-band{background:var(--terra);color:var(--bone);text-align:center;padding:100px 0}.cta-band h2{color:var(--bone)}.cta-band h2 em{color:#fbf7eeb3;font-style:italic}.cta-band p{color:#fbf7eed9;max-width:540px;margin:24px auto 36px;font-size:18px}.cta-band .btn-light{background:var(--bone)}.footer{background:var(--ink);color:var(--bone);padding:80px 0 32px}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:56px;display:grid}.footer h5{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.16em;text-transform:uppercase;color:#fbf7ee80;margin-bottom:18px;font-size:11px}.footer ul{list-style:none}.footer li{color:#fbf7eed9;padding:4px 0;font-size:14.5px}.footer a:hover{color:var(--ochre)}.footer .big{font-family:var(--font-instrument-serif), serif;letter-spacing:-.02em;font-size:52px;line-height:1}.footer .big em{color:var(--ochre);font-style:italic}.footer-cta{margin-top:32px}.footer-bottom{color:#fbf7ee80;font-size:12.5px;font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.06em;border-top:1px solid #fbf7ee26;justify-content:space-between;align-items:center;margin-top:64px;padding-top:24px;display:flex}.page-head{border-bottom:1px solid var(--line);padding:80px 0 60px}.page-head .crumbs{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.page-head h1{margin-top:18px;font-size:clamp(56px,9vw,140px);line-height:.95}.page-head .row{grid-template-columns:2fr 1fr;align-items:end;gap:60px;margin-top:28px;display:grid}.page-head p.lede{max-width:520px;font-size:18px}.filters{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-bottom:40px;padding:32px 0;display:flex}.filter-pill{border:1px solid var(--line);color:var(--ink-2);background:0 0;border-radius:999px;padding:8px 16px;font-size:13px;transition:all .15s}.filter-pill:hover{border-color:var(--ink)}.filter-pill.active{background:var(--ink);color:var(--bone);border-color:var(--ink)}.reno-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.reno-card{cursor:pointer;flex-direction:column;gap:14px;display:flex}.reno-card .img-box{aspect-ratio:4/5;background:var(--ink);border-radius:var(--radius-lg);position:relative;overflow:hidden}.reno-card .img-box img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.reno-card:hover .img-box img{transform:scale(1.05)}.reno-card .img-box .tag{color:var(--ink);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;background:#fbf7eeeb;border-radius:999px;padding:6px 12px;font-size:10px;position:absolute;top:16px;left:16px}.reno-card .meta{justify-content:space-between;align-items:baseline;display:flex}.reno-card .meta .num{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;font-size:11px}.reno-card h4{font-size:26px}.reno-card .desc{color:var(--ink-2);font-size:14px}.detail-hero{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:end;gap:40px;padding:60px 0;display:grid}.detail-hero h1{font-size:clamp(56px,7vw,96px);line-height:1}.detail-meta{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.detail-meta .item{border-top:1px solid var(--line);padding-top:14px}.detail-meta .item .label{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.detail-meta .item .val{margin-top:4px;font-size:17px}.detail-cover{aspect-ratio:21/9;background:var(--ink);border-radius:var(--radius-lg);margin:40px 0;position:relative;overflow:hidden}.detail-cover img{object-fit:cover;width:100%;height:100%}.detail-body{grid-template-columns:1fr 2fr;gap:80px;padding:60px 0;display:grid}.detail-body h3{font-size:36px}.detail-body p{margin-top:18px;font-size:17px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:16px;padding:0 0 60px;display:grid}.gallery-grid .g{aspect-ratio:4/3;background:var(--ink);border-radius:var(--radius-lg);position:relative;overflow:hidden}.gallery-grid .g.wide{aspect-ratio:21/9;grid-column:span 2}.gallery-grid .g img{object-fit:cover;width:100%;height:100%}.before-after{grid-template-columns:1fr 1fr;gap:12px;padding:0 0 60px;display:grid}.ba{aspect-ratio:4/3;background:var(--ink);border-radius:var(--radius-lg);position:relative;overflow:hidden}.ba img{object-fit:cover;width:100%;height:100%}.ba .ba-tag{background:var(--bone);color:var(--ink);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:6px 12px;font-size:10px;position:absolute;top:16px;left:16px}.contact-grid{grid-template-columns:1fr 1fr;gap:80px;padding:60px 0;display:grid}.contact-info .item{border-bottom:1px solid var(--line);padding:24px 0}.contact-info .item:last-child{border-bottom:0}.contact-info .label{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.contact-info .val{font-family:var(--font-instrument-serif), serif;margin-top:6px;font-size:28px}.contact-info .val a:hover{color:var(--terra)}.form{flex-direction:column;gap:20px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field label{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.field input,.field textarea,.field select{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:10px 0;font-size:16px}.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--ink);outline:0}.field textarea{resize:vertical;min-height:120px}.success-box{background:var(--bone);border:1px solid var(--line);text-align:center;border-radius:10px;padding:40px}.success-box p{margin-top:12px}.success-mark{background:var(--terra);width:64px;height:64px;color:var(--bone);border-radius:50%;place-items:center;margin:0 auto 24px;font-size:28px;display:grid}.form-submit{align-self:flex-start;margin-top:12px}.contact-small{font-size:20px}.login-wrap{grid-template-columns:1.1fr 1fr;min-height:calc(100vh - 80px);display:grid}.login-side{background:var(--ink);color:var(--bone);flex-direction:column;justify-content:space-between;padding:60px;display:flex;position:relative;overflow:hidden}.login-side .bg-img{opacity:.32;background-position:50%;background-size:cover;position:absolute;inset:0}.login-side>*{z-index:1;position:relative}.login-side h2{color:var(--bone);font-size:clamp(40px,5vw,64px)}.login-side h2 em{color:var(--ochre);font-style:italic}.login-side .note{color:#fbf7eeb3;max-width:380px;margin-top:16px;font-size:14px}.login-eyebrow{color:#fbf7ee99}.login-version{font-family:var(--font-geist-mono), ui-monospace, monospace;color:#fbf7ee80;letter-spacing:.14em;text-transform:uppercase;font-size:11px}.login-form{background:var(--bone);flex-direction:column;justify-content:center;padding:80px 60px;display:flex}.login-form .inner{width:100%;max-width:380px;margin:0 auto}.login-form h3{margin-bottom:8px;font-size:40px}.login-form .sub{color:var(--muted);margin-bottom:32px}.login-form .form{gap:24px}.login-form .field input{padding:12px 0;font-size:17px}.login-form .extras{justify-content:space-between;align-items:center;margin-top:8px;font-size:13px;display:flex}.login-form .extras a{color:var(--terra)}.form-error{color:#a33;background:#fdecec;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.remember-me{cursor:pointer;align-items:center;gap:8px;display:flex}.login-submit{justify-content:center;margin-top:16px}.demo-note{background:var(--cream);color:var(--muted);font-size:12.5px;font-family:var(--font-geist-mono), ui-monospace, monospace;border-radius:8px;margin-top:32px;padding:16px}.demo-note b{color:var(--ink)}.admin-shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.admin-side{background:var(--ink);color:var(--bone);flex-direction:column;gap:4px;min-width:0;padding:28px 20px;display:flex}.admin-side .brand{min-width:0;padding:8px 12px 24px}.admin-side .brand .brand-name{flex:1;min-width:0}.admin-side .brand .brand-name .a{white-space:nowrap;text-overflow:ellipsis;color:var(--bone);overflow:hidden}.admin-side .brand .brand-name .b{color:#fbf7ee80}.admin-side .brand-mark{background:var(--bone);color:var(--ink)}.admin-side .label{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.14em;text-transform:uppercase;color:#fbf7ee66;padding:16px 12px 8px;font-size:10px}.admin-side a{color:#fbf7eeb3;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;transition:all .15s;display:flex}.admin-side a:hover{color:var(--bone);background:#fbf7ee0f}.admin-side a.active{color:var(--bone);background:#fbf7ee1a}.admin-side-button{color:#fbf7eeb3;text-align:left;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;transition:all .15s;display:flex}.admin-side-button:hover{color:var(--bone);background:#fbf7ee0f}.side-count{opacity:.5;margin-left:auto;font-size:11px}.side-badge{background:var(--terra);color:var(--bone);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px}.admin-side .spacer{flex:1}.admin-side .who{border-top:1px solid #fbf7ee26;align-items:center;gap:10px;padding:16px 12px;font-size:13px;display:flex}.admin-side .avatar{background:var(--ochre);width:32px;height:32px;color:var(--ink);font-family:var(--font-instrument-serif), serif;border-radius:50%;place-items:center;font-size:16px;display:grid}.admin-user-name{color:var(--bone)}.admin-user-role{color:#fbf7ee80;font-size:11px}.admin-main{background:var(--bone);min-width:0;padding:40px 48px}.admin-top{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px;display:flex}.admin-top>div:first-child{flex:1;min-width:0}.admin-top h2{font-size:clamp(32px,4vw,48px);line-height:1}.admin-top .crumbs{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;font-size:11px}.admin-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px;display:grid}.admin-stat{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px}.admin-stat .l{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.admin-stat .v{font-family:var(--font-instrument-serif), serif;margin-top:8px;font-size:48px;line-height:1}.admin-stat .v em{color:var(--terra);font-style:italic}.admin-stat .d{color:var(--muted);margin-top:4px;font-size:12px}.admin-section-head{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex}.admin-section-head h3{font-size:28px}.admin-filter-row,.top-actions{gap:8px;display:flex}.admin-table{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.admin-table .row{border-bottom:1px solid var(--line-2);grid-template-columns:80px 1fr 1fr 1fr 120px 40px;align-items:center;gap:16px;padding:18px 20px;font-size:14px;display:grid}.admin-table .row:last-child{border-bottom:0}.admin-table .row.head{background:var(--cream);font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.admin-table .thumb{background:var(--ink);border-radius:8px;width:56px;height:56px;position:relative;overflow:hidden}.admin-table .thumb img{object-fit:cover;width:100%;height:100%}.admin-table .title{font-family:var(--font-instrument-serif), serif;font-size:20px}.muted{color:var(--muted)}.table-menu{text-align:right;color:var(--muted)}.admin-table .status{font-size:12px;font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.status.published{color:var(--green);background:#e8f1e9}.status.draft{background:var(--cream-2);color:var(--muted)}.status .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.admin-tip{background:var(--cream);border:1px solid var(--line);border-radius:10px;align-items:center;gap:24px;margin-top:40px;padding:28px;display:flex}.admin-tip-copy{flex:1}.admin-tip h4{font-size:22px;font-family:var(--font-instrument-serif), serif;margin-top:8px}.admin-tip p{color:var(--muted);margin-top:8px;font-size:14px}.new-shell{max-width:880px;margin:0 auto;padding:0}.new-shell h2{font-size:56px;line-height:1}.new-shell .helper{color:var(--muted);max-width:460px;margin-top:12px}.upload-zone{border:1.5px dashed var(--line);background:var(--cream);border-radius:var(--radius-lg);text-align:center;cursor:pointer;width:100%;padding:48px;transition:all .2s}.upload-zone:hover{border-color:var(--terra);background:var(--cream-2)}.upload-zone .icon{color:var(--terra);font-size:32px}.upload-zone .title{font-family:var(--font-instrument-serif), serif;margin-top:12px;font-size:28px}.upload-zone .sub{color:var(--muted);margin-top:6px;font-size:14px}.upload-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px;display:grid}.upload-grid .img{aspect-ratio:1;background:var(--ink);border-radius:8px;position:relative;overflow:hidden}.upload-grid .img img{object-fit:cover;width:100%;height:100%}.upload-grid .img .x{background:var(--bone);width:24px;height:24px;color:var(--ink);border-radius:50%;place-items:center;font-size:14px;display:grid;position:absolute;top:8px;right:8px}.upload-grid .img .cover{background:var(--terra);color:var(--bone);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:9px;position:absolute;bottom:8px;left:8px}.field-block{flex-direction:column;gap:8px;margin-top:32px;display:flex}.field-block label{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.field-block input,.field-block textarea,.field-block select{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:14px 16px;font-family:inherit;font-size:16px}.field-block input:focus,.field-block textarea:focus,.field-block select:focus{border-color:var(--ink);outline:0}.field-block textarea{resize:vertical;min-height:140px}.field-block .hint{color:var(--muted);margin-top:-2px;font-size:12px}.field-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.field-grid .field-block{margin-top:0}.field-grid-spaced{margin-top:20px}.new-form-tail{height:80px}.form-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:48px;padding-top:32px;display:flex}.form-actions .left{gap:12px;display:flex}.divider{background:var(--line);height:1px;margin:60px 0}.row{align-items:center;gap:16px;display:flex}.spacer{flex:1}.fill-parent{position:absolute;inset:0}.terra-dot{color:var(--terra)}.mt-12{margin-top:12px}.mt-14{margin-top:14px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-20{margin-bottom:20px}.tail-space{height:100px}.project-count{font-family:var(--font-geist-mono), ui-monospace, monospace;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;font-size:12px}.reno-title{margin-top:6px}.detail-page-head{border-bottom:0;padding-bottom:0}.detail-lede{max-width:460px;margin-top:24px;font-size:18px}.ref-code{font-size:14px}.detail-intro{font-size:22px;line-height:1.45;font-family:var(--font-instrument-serif), serif}.before-image{filter:grayscale(.4)brightness(.85)}.after-tag{background:var(--terra);color:var(--bone)}.next-project-block{border-top:1px solid var(--line)}.next-project{justify-content:space-between;align-items:end;gap:40px;display:flex}.next-desc{max-width:440px;margin-top:16px}.next-image{aspect-ratio:4/3;cursor:pointer;border-radius:10px;flex:0 0 420px;position:relative;overflow:hidden}.commitments{grid-template-columns:repeat(4,1fr)}.commitment-title{margin-top:56px}@media (max-width:900px){.nav-links{display:none}.hero-bottom,.featured-grid,.about,.test-grid,.contact-grid,.detail-body,.before-after{grid-template-columns:1fr;gap:32px}.stats .grid,.reno-grid,.upload-grid,.admin-stats{grid-template-columns:repeat(2,1fr)}.services{grid-template-columns:1fr}.service{border-right:0}.footer-grid{grid-template-columns:1fr 1fr}.hero-images{height:240px}.login-wrap,.admin-shell{grid-template-columns:1fr}.admin-side{display:none}.section-head,.page-head .row{grid-template-columns:1fr}.next-project{flex-direction:column;align-items:stretch}.next-image{flex:none;width:100%}.commitments{grid-template-columns:1fr}.admin-section-head,.admin-tip,.form-actions{flex-direction:column;align-items:stretch}.admin-table{overflow-x:auto}.admin-table .row{min-width:820px}.field-grid{grid-template-columns:1fr}}
