:root{--bg: #efe9dd;--bg-raised: #fbf8f0;--ink: #191510;--ink-muted: #837a68;--hairline: #ddd2ba;--gold: #96700f;--ok: #3f7a4d;--bad: #ac3b32}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #110f0c;--bg-raised: #1a1712;--ink: #f3ede1;--ink-muted: #948a76;--hairline: #2b2620;--gold: #d9ab41;--ok: #79c48d;--bad: #e8776c}}:root[data-theme=dark]{--bg: #110f0c;--bg-raised: #1a1712;--ink: #f3ede1;--ink-muted: #948a76;--hairline: #2b2620;--gold: #d9ab41;--ok: #79c48d;--bad: #e8776c}*{box-sizing:border-box}html{color-scheme:light dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}a{color:inherit}button{font:inherit;color:inherit}.display{font-weight:800;letter-spacing:-.035em;text-wrap:balance;line-height:.98}.topbar{display:flex;align-items:baseline;justify-content:space-between;padding:1.6rem clamp(1.25rem,4vw,3rem) 1.1rem;border-bottom:1px solid var(--hairline);position:sticky;top:0;background:var(--bg);z-index:30}.topbar .word{font-size:1rem;font-weight:800;letter-spacing:-.01em;text-decoration:none}.topbar .word b{color:var(--gold);font-weight:800}.topbar nav{display:flex;gap:1.25rem;font-size:.82rem;color:var(--ink-muted)}.topbar nav a{text-decoration:none}.topbar nav a:hover{color:var(--ink)}.hero{max-width:760px;margin:0 auto;padding:clamp(3rem,10vw,6.5rem) clamp(1.25rem,4vw,3rem) clamp(2rem,6vw,4rem);text-align:center}.hero .kicker{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:1.4rem}.hero h1{font-size:clamp(2.3rem,7vw,4rem);margin:0 0 1.1rem}.hero h1 em{font-style:normal;color:var(--gold)}.hero .slogan{font-size:clamp(1.05rem,2.4vw,1.3rem);font-style:italic;color:var(--ink);margin:0 0 1.8rem}.hero p.sub{color:var(--ink-muted);max-width:42ch;margin:0 auto 2.2rem;font-size:1rem}.cta{display:inline-block;background:var(--ink);color:var(--bg);text-decoration:none;padding:.85rem 2rem;border-radius:999px;font-size:.85rem;letter-spacing:.04em;font-weight:700;cursor:pointer;border:none}.cta:hover{background:var(--gold)}.cat-section{max-width:1180px;margin:0 auto;padding:clamp(3rem,7vw,5.5rem) clamp(1.25rem,4vw,3rem) 0}.cat-section:last-of-type{padding-bottom:2rem}.cat-head{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:0 1.5rem;border-bottom:1px solid var(--hairline);padding-bottom:1rem;margin-bottom:2rem}.cat-head h2{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;margin:0}.cat-head p{margin:0;color:var(--ink-muted);font-size:.95rem;font-style:italic;justify-self:end;text-align:right}@media(max-width:640px){.cat-head{grid-template-columns:1fr;gap:.35rem}.cat-head p{justify-self:start;text-align:left}}.pieces{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2.25rem 1.5rem}.piece{display:flex;flex-direction:column;text-align:left;cursor:pointer;background:none;border:none;padding:0}.piece .frame{position:relative;display:block;aspect-ratio:4 / 5;overflow:hidden;background:var(--bg-raised)}.piece .frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.piece:hover .frame img{transform:scale(1.035)}.piece .badge{position:absolute;top:.6rem;left:.6rem;background:var(--bg);border:1px solid var(--hairline);padding:.25rem .6rem;border-radius:999px;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.piece .cap{display:flex;justify-content:space-between;align-items:baseline;padding-top:.65rem;gap:.75rem}.piece .t{font-size:.88rem;color:var(--ink)}.piece .p{font-size:.88rem;color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:color-mix(in srgb,var(--bg) 85%,black 15%);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1.5rem;overflow-y:auto}.modal-card{background:var(--bg-raised);border:1px solid var(--hairline);border-radius:10px;max-width:760px;width:100%;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;max-height:90vh;position:relative}@media(max-width:640px){.modal-card{grid-template-columns:1fr;overflow-y:auto}}.modal-card .frame{background:var(--bg)}.modal-card .frame img{width:100%;height:100%;object-fit:cover;display:block}.modal-body{padding:1.75rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.modal-body h2{margin:0;font-size:1.4rem;letter-spacing:-.02em}.modal-body .price{font-size:1.4rem;color:var(--gold);font-variant-numeric:tabular-nums}.modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;border:1px solid var(--hairline);background:var(--bg-raised);cursor:pointer;font-size:1rem;z-index:5}.field-group{display:grid;gap:.6rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}label.field{display:flex;flex-direction:column;gap:.3rem;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}input,select{font:inherit;background:var(--bg);border:1px solid var(--hairline);border-radius:6px;padding:.55rem .7rem;color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--gold)}.submit-btn{background:var(--ink);color:var(--bg);border:none;border-radius:999px;padding:.9rem 1.5rem;font-weight:700;font-size:.9rem;cursor:pointer;margin-top:.4rem}.submit-btn:hover{background:var(--gold)}.submit-btn:disabled{opacity:.5;cursor:default}.form-error{color:var(--bad);font-size:.82rem}.form-note{font-size:.78rem;color:var(--ink-muted);border-top:1px solid var(--hairline);padding-top:.8rem}.lightbox-card{max-width:520px}.lightbox-card .cap-block{padding:1.75rem}.lightbox-card .status{font-size:.85rem;color:var(--ink-muted)}.break{max-width:640px;margin:clamp(3.5rem,9vw,6rem) auto;padding:0 1.5rem;text-align:center}.break p{font-size:clamp(1.3rem,3vw,1.7rem);font-weight:500;font-style:italic;color:var(--ink);line-height:1.35;text-wrap:balance}.break span{display:block;margin-top:.6rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);font-style:normal}footer{max-width:640px;margin:0 auto;padding:3rem 1.5rem 5rem;text-align:center;color:var(--ink-muted);font-size:.8rem;line-height:1.7}footer strong{color:var(--ink)}.status-page{max-width:480px;margin:0 auto;padding:clamp(4rem,12vw,8rem) 1.5rem;text-align:center}.status-page .icon{font-size:2.6rem;margin-bottom:1rem}.status-page h1{font-size:1.8rem;margin:0 0 .8rem}.status-page p{color:var(--ink-muted)}
