
:root { --background:#06080b; --foreground:#f2eee7; --muted:#a9abb0; --line:rgba(242,238,231,.18); --accent:#f08d73; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--background); color:var(--foreground); font-family:Arial,Helvetica,sans-serif; font-size:16px; }
a { color:inherit; text-decoration:none; }
.site-header { position:absolute; inset:0 0 auto; z-index:10; display:flex; align-items:center; justify-content:space-between; padding:2rem 3.5vw; }
.wordmark { font-size:.82rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.collection-link { border-bottom:1px solid rgba(255,255,255,.5); padding-bottom:.35rem; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; }
.hero { min-height:100svh; display:block; position:relative; overflow:hidden; }
.hero-copy { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:flex-end; padding:7rem 6vw 8vh; }
.eyebrow { margin:0; color:var(--accent); font-size:.72rem; font-weight:700; letter-spacing:.2em; line-height:1.5; text-transform:uppercase; }
h1 { margin:1.5rem 0 1.8rem; font-family:Georgia,"Times New Roman",serif; font-size:clamp(4.5rem,9vw,10rem); font-weight:400; letter-spacing:-.065em; line-height:.78; }
.intro { max-width:24rem; margin:0; color:#d3d0cb; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.15rem,1.6vw,1.55rem); line-height:1.45; }
.hero-image-wrap { position:relative; min-height:100svh; overflow:hidden; }
.hero-image { object-fit:cover; object-position:53% 50%; }
.hero-image-wrap::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,8,11,.93),rgba(6,8,11,.1) 72%); pointer-events:none; }
.hero-index { position:absolute; right:2rem; bottom:2rem; z-index:1; font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; }
.collection { padding:9rem 7vw 7rem; }
.section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:2rem; margin-bottom:6rem; padding-bottom:1.5rem; border-bottom:1px solid var(--line); }
h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.4rem,5vw,5rem); font-weight:400; letter-spacing:-.04em; }
.gallery { display:grid; gap:8rem; }
.photograph { margin:0; }
.photo-button { display:block; width:100%; padding:0; border:0; background:transparent; color:inherit; text-align:inherit; cursor:pointer; }
.image-frame { position:relative; width:100%; aspect-ratio:16/8.6; overflow:hidden; background:#11151b; }
.image-frame img { object-fit:cover; }
.view-room { position:absolute; right:1rem; bottom:1rem; padding:.7rem 1rem; background:rgba(6,8,11,.82); color:#fff; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; opacity:0; transform:translateY(.5rem); transition:.25s ease; }
.photo-button:hover .view-room, .photo-button:focus-visible .view-room { opacity:1; transform:translateY(0); }
.crop-one img { object-position:center 43%; }
.crop-two img { object-position:center 42%; }
.crop-three img { object-position:center; }
.crop-four img { object-position:center 51%; }
.crop-five img { object-position:center 61%; }
figcaption { display:flex; justify-content:space-between; gap:2rem; padding-top:1rem; color:var(--muted); font-size:.72rem; letter-spacing:.13em; text-transform:uppercase; }
.statement { display:grid; grid-template-columns:1fr 2.8fr; gap:3rem; margin:2rem 7vw 8rem; padding:6rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.statement-copy { max-width:62rem; margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2rem,4.5vw,4.8rem); letter-spacing:-.035em; line-height:1.08; }
.availability { grid-column:2; margin:1rem 0 0; color:var(--muted); font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; }
footer { display:flex; justify-content:space-between; padding:0 7vw 3rem; color:var(--muted); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; }
.art-dialog { display:block!important; width:min(94vw,1180px)!important; max-width:1180px!important; max-height:92vh; padding:0!important; gap:0!important; overflow:hidden; border:1px solid rgba(255,255,255,.18)!important; border-radius:0!important; background:#090b0f!important; color:var(--foreground)!important; }
.art-dialog-body { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(18rem,.75fr); max-height:92vh; overflow:auto; }
.room-close { position:absolute; top:.75rem; right:.75rem; z-index:20; display:grid; place-items:center; width:3rem; height:3rem; padding:0; border:1px solid #fff; border-radius:50%; background:#090b0f; color:#fff; font:2rem/1 Arial,Helvetica,sans-serif; cursor:pointer; box-shadow:0 2px 12px #0009; }
.room-close:hover, .room-close:focus-visible { background:#303844; outline:2px solid #fff; outline-offset:2px; }
.room-preview { position:relative; width:100%; aspect-ratio:3/2; align-self:center; background:#161616; }
.room-preview img { object-fit:contain; }
.purchase-panel { padding:3rem 2rem; align-self:center; }
.purchase-panel [data-slot="dialog-title"] { margin:.9rem 0 1rem; font-family:Georgia,"Times New Roman",serif; font-size:2.25rem; font-weight:400; letter-spacing:-.03em; }
.purchase-panel [data-slot="dialog-description"] { color:#b7b5b1; font-size:1rem; line-height:1.6; }
.price-list { margin:2rem 0; border-top:1px solid var(--line); }
.price-list div { display:grid; gap:.35rem; padding:1rem 0; border-bottom:1px solid var(--line); }
.price-list strong { font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; }
.price-list span { color:var(--muted); font-size:.9rem; }
.inquiry-button { display:block; padding:1rem 1.25rem; background:var(--foreground); color:var(--background); text-align:center; font-size:.78rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.shipping-note { margin:1rem 0 0; color:var(--muted); font-size:.75rem; line-height:1.5; }
@media (max-width:820px) {
  .site-header { padding:1.5rem 5vw; }
  .hero { display:block; position:relative; min-height:100svh; }
  .hero-copy { position:absolute; inset:0; justify-content:flex-end; padding:7rem 6vw 8vh; }
  .hero-image-wrap { min-height:100svh; }
  .hero-image-wrap::after { background:linear-gradient(0deg,rgba(6,8,11,.93),rgba(6,8,11,.1) 72%); }
  h1 { font-size:clamp(4rem,19vw,7rem); }
  .intro { max-width:20rem; }
  .collection { padding:7rem 5vw 5rem; }
  .section-heading { display:block; margin-bottom:3rem; }
  .section-heading h2 { margin-top:1rem; }
  .gallery { gap:4.5rem; }
  .image-frame { aspect-ratio:4/3; }
  .view-room { opacity:1; transform:none; }
  figcaption { font-size:.62rem; }
  .statement { display:block; margin:2rem 5vw 5rem; padding:4rem 0; }
  .statement-copy { margin-top:2rem; }
  .availability { margin-top:2rem; }
  footer { padding:0 5vw 2rem; }
  .art-dialog { width:calc(100vw - 1rem)!important; max-height:94vh; }
  .art-dialog-body { display:block; max-height:94vh; }
  .room-preview { aspect-ratio:3/2; }
  .purchase-panel { padding:2rem 1.25rem; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.hero-image, .image-frame img, .room-preview img { position:absolute; inset:0; width:100%; height:100%; }
.room-close { appearance:none; }
.art-dialog { position:fixed; inset:0; margin:auto; box-shadow:0 25px 75px #000b; }
.art-dialog:not([open]) { display:none!important; }
.art-dialog::backdrop { background:rgba(0,0,0,.78); }
.purchase-panel h3 { margin:.9rem 0 1rem; font-family:Georgia,"Times New Roman",serif; font-size:2.25rem; font-weight:400; letter-spacing:-.03em; }
.dialog-description { color:#b7b5b1; font-size:1rem; line-height:1.6; }
@media (max-width:820px) { .art-dialog { margin:auto; } }
