:root{--ink:#171914;--paper:#f2eee5;--cream:#e5dfd2;--rust:#b65d3d;--acid:#c9d16b;--muted:#6d6d61;--line:rgba(23,25,20,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{max-width:100%}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 5.5%;border-bottom:1px solid var(--line);gap:20px}
.brand{font-size:12px;letter-spacing:.17em;text-transform:uppercase;font-weight:800;line-height:1.45}.brand span{display:block;font-weight:400;letter-spacing:.27em;font-size:9px}
.nav{display:flex;gap:27px;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.nav a{border-bottom:1px solid transparent;padding-bottom:5px}.nav a:hover,.nav a[aria-current]{border-color:var(--ink)}.nav .contact-link{border:1px solid var(--ink);padding:11px 14px}.nav .contact-link:hover{background:var(--ink);color:var(--paper)}
.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--rust);font-weight:700}
.hero{padding:30px 5.5% 0}.hero-kicker{display:flex;justify-content:space-between;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:15px}
.hero-title{font-size:clamp(40px,7.4vw,108px);line-height:.87;letter-spacing:-.075em;font-weight:800;margin:0 0 28px;max-width:1100px}.hero-title em,.statement .big em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.08em}
.carousel{height:min(54vw,440px);min-height:260px;position:relative;overflow:hidden;background:#25271f;color:#fff}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;pointer-events:none}.slide.active{opacity:1;pointer-events:auto}.slide>a{display:block;height:100%}.slide img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.95)}
.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),transparent 72%),linear-gradient(0deg,rgba(0,0,0,.22),transparent 40%);pointer-events:none}
.slide-copy{position:absolute;z-index:2;left:5%;bottom:9%;max-width:460px;pointer-events:none}.slide-num{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--acid)}
.slide-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(28px,5vw,60px);letter-spacing:-.05em;line-height:.95;margin:12px 0}.slide-copy p{font-size:12px;line-height:1.6;max-width:330px;color:#eee9df;margin:0}
.carousel-controls{position:absolute;z-index:4;right:4%;bottom:8%;display:flex;gap:9px;align-items:center}.arrow{width:42px;height:42px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:transparent;color:#fff;cursor:pointer;font-size:18px}.arrow:hover{background:#fff;color:var(--ink)}
.dots{display:flex;gap:6px;margin-right:10px}.dot{width:8px;height:8px;border-radius:50%;border:1px solid #fff;background:transparent;padding:0;cursor:pointer}.dot.active{background:var(--acid);border-color:var(--acid)}
.intro{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;padding:75px 9% 82px;border-bottom:1px solid var(--line)}.intro.slim{grid-template-columns:1fr;padding:30px 9% 60px;max-width:1000px}
.intro h2,.section-head h2{font-size:clamp(32px,4.5vw,58px);line-height:.98;letter-spacing:-.06em;margin:17px 0 0;font-weight:700}
.intro-copy{font-family:Georgia,serif;font-size:clamp(18px,2vw,25px);line-height:1.45;max-width:670px}.intro-copy p{margin:0 0 17px}
.text-link{display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:7px;font-family:Arial,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;margin-top:12px}
.section{padding:70px 5.5% 80px}.section.tight{padding-top:30px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-head p{font-size:12px;line-height:1.6;max-width:270px;color:var(--muted);margin:0}
.center{text-align:center;margin-top:40px}.empty{color:var(--muted);font-family:Georgia,serif;font-size:20px;padding:30px 0}
.page-head{padding:55px 5.5% 20px}.page-head h1{font-size:clamp(38px,6vw,84px);line-height:.92;letter-spacing:-.07em;margin:14px 0 14px;font-weight:800}.page-head p{font-family:Georgia,serif;font-size:19px;color:var(--muted);margin:0}
/* grid */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 24px}
.card{display:block}.card-img{position:relative;aspect-ratio:4/5;background:var(--cream);overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.card:hover .card-img img{transform:scale(1.04)}
.card.sold .card-img img{filter:grayscale(.55) brightness(.9)}
.noimg{width:100%;height:100%;background:var(--cream)}
.badge{position:absolute;left:10px;top:10px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:6px 9px;background:var(--paper);color:var(--ink)}.badge.available{background:var(--acid)}.badge.sold{background:var(--ink);color:var(--paper)}.badge.reserved{background:var(--rust);color:#fff}.badge.inline{position:static;display:inline-block}
.card-meta{padding-top:13px}.card-meta h3{font-size:18px;letter-spacing:-.03em;margin:0 0 5px}.card-meta p{font-size:12px;color:var(--muted);margin:0 0 3px}.card-meta .price{color:var(--ink);font-weight:700}
.filters{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:34px}.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1px solid var(--ink);background:transparent;padding:9px 14px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.chip.active,.chip:hover{background:var(--ink);color:var(--paper)}
/* piece */
.piece{padding:30px 5.5% 70px}.crumbs{font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 22px}.crumbs a{border-bottom:1px solid var(--ink);padding-bottom:3px}
.piece-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:5%;align-items:start}
.gallery-main{background:var(--cream);aspect-ratio:4/5;max-height:80vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery-main img{width:100%;height:100%;object-fit:contain;display:block}
.gallery-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin-top:8px}.gthumb{padding:0;border:2px solid transparent;background:var(--cream);cursor:pointer;aspect-ratio:1;overflow:hidden}.gthumb.active{border-color:var(--ink)}.gthumb img{width:100%;height:100%;object-fit:cover;display:block}
.piece-info{position:sticky;top:20px}.piece-info h1{font-size:clamp(32px,4.4vw,58px);line-height:.96;letter-spacing:-.06em;margin:16px 0 12px}.lead{font-family:Georgia,serif;font-size:20px;line-height:1.45;margin:0 0 18px}.bigprice{font-size:26px;font-weight:700;margin:0 0 18px}
.specs{margin:22px 0;border-top:1px solid var(--line)}.specs div{display:flex;gap:16px;border-bottom:1px solid var(--line);padding:11px 0;font-size:13px}.specs dt{width:110px;color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.14em;padding-top:2px}.specs dd{margin:0;flex:1}
.btn{display:inline-block;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:15px 22px;font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;cursor:pointer}.btn:hover{background:var(--rust);border-color:var(--rust)}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--paper)}
.fine{font-size:11px;color:var(--muted);line-height:1.6}
.story{max-width:720px;margin:60px 0 0;font-family:Georgia,serif;font-size:20px;line-height:1.6}.story p{margin:0 0 16px}.story .eyebrow{margin-bottom:14px;font-family:Arial,sans-serif}
.before{margin-top:60px}.before h2{font-size:34px;letter-spacing:-.05em;margin:10px 0 20px}.before-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.before-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:sepia(.25)}
/* studio */
.values{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.value{padding:26px 24px 30px 0}.value+.value{border-left:1px solid var(--line);padding-left:24px}.value .number{font-size:10px;color:var(--rust);letter-spacing:.15em}.value h3{font-size:20px;letter-spacing:-.04em;margin:28px 0 10px}.value p{font-size:13px;line-height:1.7;color:var(--muted);max-width:290px;margin:0}
.ba-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px}.ba{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ba div{position:relative}.ba span{position:absolute;left:8px;top:8px;background:var(--paper);font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:5px 8px}.ba img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.ba h3{grid-column:1/-1;margin:8px 0 0;font-size:16px;letter-spacing:-.02em}
.statement{background:var(--ink);color:var(--paper);padding:76px 9%;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.statement .big{font-family:Georgia,serif;font-size:clamp(34px,5vw,68px);line-height:.95;letter-spacing:-.06em;margin:0}.statement p{font-size:13px;line-height:1.8;color:#c6c5b8;max-width:430px}.statement .text-link{color:var(--acid)}
/* contact */
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:start}
.form{display:grid;gap:16px}.form label{display:grid;gap:7px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}.form small{font-weight:400;color:var(--muted)}
.form input,.form select,.form textarea{font:inherit;font-size:16px;letter-spacing:0;text-transform:none;font-weight:400;padding:13px;border:1px solid var(--ink);background:#fbf9f4;color:var(--ink);border-radius:0;width:100%}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.form-msg{font-size:14px;margin:0;min-height:20px}.form-msg.err{color:#a3281a}.form-msg.ok{color:#2c6b2f;font-family:Georgia,serif;font-size:19px}
.contact-side{background:var(--cream);padding:28px}.contact-side .small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.contact-side p{font-family:Georgia,serif;font-size:19px;line-height:1.5}.contact-side .fine{font-family:Arial,sans-serif;font-size:12px}
.footer{display:flex;justify-content:space-between;gap:20px;padding:26px 5.5%;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);line-height:1.8;border-top:1px solid var(--line);flex-wrap:wrap}.footer-mark{font-weight:800;color:var(--ink)}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a:hover{color:var(--ink)}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr);gap:26px 14px}.piece-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.piece-info{position:static}}
@media(max-width:700px){.topbar{padding:17px 5%}.nav{gap:12px;font-size:9px}.nav a:not(.contact-link){display:none}.nav .contact-link{padding:9px}.hero{padding:24px 5% 0}.hero-title{font-size:clamp(43px,13vw,78px);margin-bottom:22px}.hero-kicker span:last-child{display:none}
.carousel{height:390px;min-height:0}.slide-copy{left:6%;right:6%;bottom:17%}.carousel-controls{right:5%;bottom:5%}.intro,.statement{grid-template-columns:1fr;gap:25px;padding:52px 7%}.intro.slim{padding:20px 7% 40px}
.section{padding:52px 5%}.section.tight{padding-top:24px}.section-head{display:block}.section-head p{margin-top:18px}.values{grid-template-columns:1fr}.value,.value+.value{border-left:0;padding:22px 0;border-bottom:1px solid var(--line)}.value:last-child{border-bottom:0}.value h3{margin:14px 0 8px}
.page-head{padding:38px 5% 12px}.piece{padding:22px 5% 50px}.card-meta h3{font-size:15px}.footer{padding:22px 5%;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slide,.card-img img{transition:none}}
