:root {
  color-scheme: dark;
  --ink:#101318;
  --paper:#e6ebf1;
  --accent:#d66d77;
  --action:#862c3a;
  --action-hover:#9b3543;
  --muted:#aeb9c7;
  --line:#343c48;
  --panel:#171c24;
  --reveal-desktop-ratio:2.18;
  --reveal-mobile-ratio:1.61;
  --mobile-header-height:65px;
  --mobile-reveal-time:2.2s;
  --serif:Georgia,'Times New Roman',serif;
  font: 16px/1.5 system-ui, sans-serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--paper); background:var(--ink); }
main { min-height:65vh; }
main:focus { outline:none; }
.public-demo-label { padding:5px 16px; border-bottom:1px solid var(--line); color:var(--muted); text-align:center; font-size:.76rem; }
h1,h2,h3,p,figure { margin:0; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:default; opacity:.55; }
img { display:block; max-width:100%; }
em { color:var(--accent); font-weight:inherit; }
[hidden] { display:none !important; }
:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.skip { position:fixed; z-index:20; top:10px; left:10px; padding:.75rem 1rem; background:var(--paper); color:var(--ink); transform:translateY(-200%); }
.skip:focus { transform:none; }
.shell { width:min(1312px,calc(100% - 112px)); margin-inline:auto; }
.topbar { height:78px; padding-inline:max(56px,calc((100% - 1312px)/2)); display:flex; justify-content:space-between; align-items:center; gap:1rem; border-bottom:1px solid #343c48; }
.brand { display:inline-flex; min-height:44px; align-items:center; flex-shrink:0; }
.brand img { width:178px; height:auto; }
.footer .brand img { width:136px; }
.topbar nav { display:flex; gap:clamp(12px,2.1vw,32px); align-items:center; font-size:.79rem; }
.topbar nav a { padding-block:12px; color:var(--muted); white-space:nowrap; }
.topbar nav a:hover,.topbar nav a[aria-current] { color:var(--paper); }
.topbar .studio-link { border:1px solid var(--line); padding:10px 15px; color:var(--accent); }
.topbar .studio-link span { margin-left:6px; }
#site-language { appearance:none; width:60px; padding-inline:0; text-align:center; text-align-last:center; cursor:pointer; }
.topbar .menu-toggle { display:none; }
@media (651px <= width <= 800px) {
  .topbar .brand img { width:144px; }
  .topbar nav { gap:10px; }
  .topbar .studio-link { padding-inline:8px; }
}
.hero { position:relative; isolation:isolate; overflow:hidden; aspect-ratio:var(--reveal-desktop-ratio); display:grid; grid-template-rows:minmax(0,1fr); align-items:center; }
.reveal-frame { position:relative; isolation:isolate; overflow:hidden; aspect-ratio:var(--reveal-desktop-ratio); background:var(--ink); }
.reveal-atmosphere { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; filter:blur(34px) brightness(.4) saturate(.65); opacity:.55; mask-image:radial-gradient(ellipse at 50% 40%,#000 12%,transparent 69%); pointer-events:none; }
.hero > .reveal-frame { position:absolute; inset:0; z-index:-1; }
.reveal-photo,.reveal-shade { position:absolute; z-index:-2; inset:0; width:100%; height:100%; }
.reveal-photo { object-fit:cover; object-position:var(--reveal-position); }
.hero-image { animation:reveal 1.75s cubic-bezier(.2,.65,.25,1) both; }
.reveal-backdrop { position:absolute; z-index:-3; inset:0; width:100%; height:100%; object-fit:cover; filter:blur(22px) brightness(.38); transform:scale(1.09); }
.reveal-contain .reveal-photo { object-fit:contain; object-position:center; }
.reveal-shade { z-index:-1; background:linear-gradient(90deg,#0a0d12f2,#0d1117d9 25%,#0d111784 48%,transparent 75%),linear-gradient(0deg,#0a0d12d6,transparent 26%); }
.is-cinematic .reveal-shade { background:linear-gradient(90deg,#0a0d12e8 0%,#0d1117c5 21%,#0d111724 50%,transparent 72%),linear-gradient(0deg,#0a0d12d6,transparent 26%); }
.reveal-frame.is-mobile { aspect-ratio:var(--reveal-mobile-ratio); }
.is-mobile .reveal-backdrop { filter:blur(20px) brightness(.48) saturate(.65); }
.is-mobile .reveal-shade { background:linear-gradient(180deg,#101318e0,transparent 32%,transparent 70%,#101318),linear-gradient(90deg,#10131855,transparent 18%,transparent 82%,#10131855); }
.scene-marker { display:none; }
.is-mobile .scene-marker { position:absolute; top:16px; left:18px; right:18px; display:flex; align-items:center; gap:9px; color:var(--paper); font:500 .59rem ui-monospace,Consolas,monospace; letter-spacing:.15em; }
.scene-marker b { color:var(--accent); font-weight:500; }
.scene-marker::after { content:''; flex:1; height:1px; background:linear-gradient(90deg,#d66d7780,transparent); }
.hero-body { padding-block:50px 96px; animation:rise .95s .18s both; }
.eyebrow,.section-rule,.hero-foot,figcaption { font-family:ui-monospace,Consolas,monospace; letter-spacing:.15em; font-size:.7rem; font-weight:500; }
.eyebrow { display:flex; gap:.8em; align-items:center; color:var(--muted); margin-bottom:1.15rem; }
.eyebrow span { color:var(--accent); }
.eyebrow span:empty { display:none; }
h1,h2 { font-family:var(--serif); font-weight:400; line-height:.99; letter-spacing:-.048em; overflow-wrap:anywhere; }
h1 { font-size:clamp(3.3rem,7.3vw,7.4rem); }
h2 { font-size:clamp(2.8rem,5.5vw,5.9rem); }
.hero h1 { font-size:clamp(3.55rem,6.7vw,6.8rem); }
.hero-intro { margin-top:24px; color:#d7dfe8; font-size:clamp(.94rem,1.5vw,1.08rem); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:1.25rem; min-height:44px; padding:10px 16px; font-size:.82rem; font-weight:680; border:1px solid transparent; text-align:center; }
.button.primary { background:var(--action); color:var(--paper); }
.button.primary:hover { background:var(--action-hover); }
.button.primary:focus-visible { outline-color:var(--paper); }
.button.outline { border-color:#626f81; color:var(--paper); background:transparent; }
.button.outline:hover { border-color:var(--accent); }
.hero-actions { display:flex; flex-wrap:wrap; gap:8px 10px; margin-top:25px; }
.hero-actions .outline { background:#101318aa; }
.hero-foot { position:absolute; bottom:0; left:50%; transform:translateX(-50%); display:flex; justify-content:space-between; align-items:center; min-height:62px; border-top:1px solid #d66d7766; color:var(--paper); gap:1rem; }
.hero-foot a { min-height:44px; display:inline-flex; align-items:center; gap:.5rem; }
.hero-foot a:hover,.text-link:hover { color:var(--accent); }
.hero-foot b,.hero-foot a span { color:var(--accent); }
.hero-foot i,.badge i { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--accent); margin-right:.55em; vertical-align:.1em; }
@keyframes reveal { from { opacity:.2; transform:scale(1.055); } to { opacity:1; transform:scale(1); } }
@keyframes mobile-reveal { 0% { opacity:0; filter:brightness(.2); } 25% { opacity:.25; filter:brightness(.42); } 100% { opacity:1; filter:brightness(1); } }
@keyframes rise { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
.room-open,.photo-open,.viewing-open { overflow:hidden; }
.gallery-room { width:min(1240px,calc(100% - 40px)); height:min(760px,calc(100dvh - 40px)); padding:0; border:1px solid #566477; background:#101318; color:var(--paper); }
.gallery-room[open] { display:grid; grid-template-rows:auto minmax(240px,1fr) auto; }
.gallery-room::backdrop { background:#080b10e8; backdrop-filter:blur(8px); }
.room-header,.room-controls { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; background:#151a22; }
.room-header { border-bottom:1px solid var(--line); }
.room-header .eyebrow { margin-bottom:5px; }
.room-header h2 { font-size:clamp(1.8rem,4vw,3.8rem); }
.room-stage { position:relative; isolation:isolate; overflow:hidden; touch-action:pan-y; cursor:grab; perspective:980px; background:radial-gradient(ellipse at 50% 15%,#303e50 0%,#1c2531 30%,#101318 76%); }
.room-stage:active { cursor:grabbing; }
.room-world { position:absolute; inset:0; transform-style:preserve-3d; transform:translateX(var(--room-slide,0px)) rotateY(var(--room-look,0deg)); transition:transform .23s ease-out; }
.room-floor { position:absolute; z-index:-1; inset:56% -58% -65%; transform-origin:50% 0; transform:translateZ(-370px) rotateX(64deg); background:
  linear-gradient(#879ab23d 1px,transparent 1px) 0 0 / 58px 58px,
  linear-gradient(90deg,#879ab23d 1px,transparent 1px) 0 0 / 58px 58px,
  radial-gradient(ellipse at 50% 10%,#34465990,transparent 59%); mask-image:linear-gradient(180deg,#000,transparent 80%); }
.room-light { position:absolute; top:-11%; left:32%; width:36%; height:36%; transform:rotateX(-48deg); background:linear-gradient(180deg,#a0b4cc0f,#a0b4cc5e 70%,#c5d5e6ac 96%); box-shadow:0 16px 100px #a0b4cc50; opacity:.65; transition:opacity .6s; pointer-events:none; }
.room-exhibit { --slide:0%; --depth:0px; --angle:0deg; position:absolute; top:50%; left:50%; width:min(57%,640px); aspect-ratio:1.65; max-height:calc(100% - 64px); padding:0; border:1px solid #8292a7; background:#11151c; color:var(--paper); overflow:hidden; cursor:pointer;
  transform:translate(-50%,-50%) translateX(var(--slide)) translateZ(var(--depth)) rotateY(var(--angle)); transition:transform .65s cubic-bezier(.19,1,.22,1),opacity .42s,filter .48s,box-shadow .48s; }
.room-exhibit[data-position=left] { --slide:-99%; --depth:-220px; --angle:37deg; opacity:.58; filter:brightness(.6); }
.room-exhibit[data-position=right] { --slide:99%; --depth:-220px; --angle:-37deg; opacity:.58; filter:brightness(.6); }
.room-exhibit[data-position=center] { box-shadow:0 30px 70px #000d,0 0 34px #9caec535; }
.room-exhibit:focus-visible { opacity:1; filter:none; outline-offset:-4px; }
.room-exhibit img { width:100%; height:100%; object-fit:contain; user-select:none; }
.photo-matte { isolation:isolate; }
.photo-matte::before,.photo-matte::after { content:''; position:absolute; pointer-events:none; }
.photo-matte::before { inset:-18px; z-index:-2; background:var(--matte-image) center/cover no-repeat; filter:blur(21px) brightness(.58) saturate(.74); }
.photo-matte::after { inset:0; z-index:-1; background:radial-gradient(ellipse,#11161f0d 35%,#10131859); }
.room-exhibit-tag,.room-coordinate,.room-hint,#room-count { font:500 .66rem ui-monospace,Consolas,monospace; letter-spacing:.13em; }
.room-exhibit-tag { position:absolute; top:0; left:0; padding:8px 10px; color:#d5dfe9; background:#11161fda; }
.room-enlarge { display:none; position:absolute; right:10px; bottom:10px; width:36px; height:36px; place-items:center; border:1px solid #d66d77a0; background:#101318e0; color:var(--accent); }
.room-exhibit[data-position=center]:enabled .room-enlarge { display:grid; }
.room-coordinate { position:absolute; top:16px; left:18px; color:var(--accent); pointer-events:none; }
.room-hint { position:absolute; bottom:13px; left:0; right:0; text-align:center; color:var(--muted); pointer-events:none; }
.room-controls { display:grid; grid-template-columns:minmax(180px,.85fr) minmax(0,1.75fr); gap:12px 24px; padding-block:14px; border-top:1px solid var(--line); }
.room-caption { min-width:0; }
.room-caption h3 { font:400 clamp(1.1rem,2.5vw,2rem)/1.04 var(--serif); overflow-wrap:anywhere; }
.room-offer { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:7px; }
.room-offer .vehicle-price { font-size:1.14rem; }
.room-specs { min-width:0; border-left:1px solid var(--line); padding-left:20px; }
.room-specs dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px 14px; margin:0; }
.room-specs dt { color:var(--muted); font-size:.68rem; }
.room-specs dd { margin:2px 0 0; font-size:.84rem; overflow-wrap:anywhere; }
.room-specs .vehicle-highlights { margin-top:7px; }
.room-toolbar { grid-column:1 / -1; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 14px; padding-top:10px; border-top:1px solid var(--line); }
.room-navigation,.room-actions { display:flex; align-items:center; justify-content:center; gap:10px; }
#room-count { min-width:7ch; text-align:center; }
.night-room .room-light { opacity:.07; }
.night-room .room-exhibit { filter:brightness(.62) saturate(.7); }
.night-room .room-exhibit[data-position=center] { box-shadow:0 0 52px #887ca85e; border-color:#9892b0; }
.night-room #room-night { border-color:var(--accent); color:var(--accent); }
.collection,.listing,.detail,.editor { padding-block:clamp(54px,7vw,110px); }
.collection { scroll-margin-top:1rem; }
.section-intro { display:flex; justify-content:space-between; align-items:end; gap:24px 48px; margin-bottom:32px; }
.section-intro > p { max-width:285px; color:var(--muted); padding-bottom:4px; }
.section-rule { display:flex; justify-content:space-between; gap:1rem; border-top:1px solid var(--line); padding:14px 0 18px; color:var(--muted); }
.cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,2.1vw,30px); }
.vehicle { min-width:0; }
.vehicle-link { display:flex; flex-direction:column; height:100%; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:var(--panel); transition:border-color .25s ease; }
.vehicle-link:hover,.vehicle-link:focus-visible { border-color:var(--accent); }
.vehicle-photo { position:relative; aspect-ratio:1.55; overflow:hidden; background:#19202a; }
.vehicle-photo img { width:100%; height:100%; object-fit:var(--card-fit,cover); object-position:var(--card-position,50% 50%); transition:transform .55s ease; }
.vehicle-photo.card-zoomed img { position:absolute; inset:var(--card-top) auto auto var(--card-left); width:var(--card-width); height:var(--card-height); max-width:none; object-fit:fill; }
.vehicle-link:hover .vehicle-photo:not(.has-card-framing) img { transform:scale(1.025); }
.badge { display:inline-flex; width:max-content; align-items:center; background:#29222a; border:1px solid #77515b; padding:5px 8px; font-size:.69rem; color:#f2b5b9; white-space:nowrap; }
.badge.available { color:#d8e7d6; border-color:#5b6a54; background:#192019; }
.badge.available i { background:#a9c7a3; }
.badge.sold,.badge.archived,.badge.draft { color:var(--paper); border-color:#647082; background:#222832; }
.badge.sold i,.badge.archived i,.badge.draft i { background:#aeb9c7; }
.vehicle-caption { display:flex; flex:1; flex-direction:column; gap:14px; padding:clamp(16px,2vw,24px); }
.make { color:var(--accent); letter-spacing:.14em; text-transform:uppercase; font-size:.68rem; margin-bottom:4px; }
.vehicle h3 { font:400 clamp(1.6rem,2.6vw,2.4rem)/1.06 var(--serif); overflow-wrap:anywhere; }
.vehicle-trim { margin-top:5px; color:var(--muted); font-size:.81rem; overflow-wrap:anywhere; }
.stock-title:hover { color:var(--accent); }
.vehicle-offer { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:6px 12px; }
.vehicle-price { font:400 clamp(1.2rem,1.6vw,1.55rem)/1.2 var(--serif); }
.vehicle-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 14px; margin:0; padding:12px 0; border-block:1px solid var(--line); }
.vehicle-facts dt { color:var(--muted); font-size:.7rem; }
.vehicle-facts dd { margin:3px 0 0; font-size:.87rem; overflow-wrap:anywhere; }
.vehicle-summary { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; color:var(--muted); font-size:.84rem; }
.vehicle-notes { display:grid; gap:7px; }
.vehicle-highlights { color:#c4cfdb; font-size:.78rem; line-height:1.5; overflow-wrap:anywhere; }
.vehicle-cta { margin-top:auto; padding-top:3px; display:flex; justify-content:space-between; gap:10px; color:var(--accent); font-size:.78rem; }
.vehicle-cta span:last-child { font-family:ui-monospace,Consolas,monospace; }
.meta { color:var(--muted); font-size:.78rem; margin-top:8px; }
.collection-link { margin-top:30px; }
.footer { border-top:1px solid var(--line); padding-block:32px 22px; color:var(--muted); font-size:.8rem; }
.footer-grid { display:grid; grid-template-columns:minmax(0,1.25fr) repeat(3,minmax(0,1fr)); gap:20px clamp(18px,4vw,56px); }
.footer-brand p { max-width:230px; margin-top:8px; }
.footer h2 { font:600 .79rem system-ui,sans-serif; letter-spacing:.06em; color:var(--paper); margin:8px 0 10px; }
.footer ul { list-style:none; margin:0; padding:0; }
.footer li a { display:inline-block; padding:4px 0; }
.footer a:hover,.footer a[aria-current] { color:var(--accent); }
.footer address { font-style:normal; margin-bottom:6px; }
.footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px 16px; border-top:1px solid var(--line); margin-top:24px; padding-top:12px; font-size:.72rem; }
.site-page { padding-block:clamp(42px,7vw,96px); }
.site-page-heading { margin-bottom:clamp(24px,4vw,48px); }
.site-page-heading h1 { font-size:clamp(2.65rem,6.2vw,6rem); }
.site-page-heading > p:last-child { max-width:60ch; margin-top:17px; color:var(--muted); }
.site-page-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; margin-top:25px; }
.about-teaser { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:center; gap:18px 38px; border-top:1px solid var(--line); padding-block:clamp(35px,6vw,78px); }
.about-teaser h2 { font-size:clamp(2.45rem,5vw,5.2rem); }
.about-teaser p:not(.eyebrow) { color:var(--muted); max-width:55ch; }
.about-teaser .text-link { color:var(--accent); }
.about-intro { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:clamp(22px,5vw,74px); align-items:center; }
.about-intro .site-page-heading { margin-bottom:0; }
.about-photo { border:1px solid var(--line); background:var(--panel); overflow:hidden; }
.about-photo img { width:100%; height:auto; aspect-ratio:1.35; object-fit:cover; }
.about-photo figcaption { padding:12px; color:var(--accent); }
.about-principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:clamp(24px,5vw,64px); }
.about-principles > div { border-top:1px solid #526074; padding-top:14px; }
.about-principles .eyebrow { margin-bottom:9px; }
.about-principles h2,.contact-layout h2,.policy-content h2 { font-size:clamp(1.55rem,3vw,2.45rem); margin-bottom:10px; }
.about-principles > div > p:last-child,.policy-content p { color:var(--muted); }
.contact-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr); gap:clamp(16px,3vw,36px); align-items:start; }
.contact-layout > section { min-width:0; border:1px solid var(--line); background:var(--panel); padding:clamp(14px,3vw,32px); }
.contact-info address { font-style:normal; color:var(--muted); margin-bottom:16px; }
.contact-info address strong { color:var(--paper); font-weight:600; }
.contact-info dl { margin:0 0 18px; font-size:.85rem; }
.contact-info dl div { display:flex; justify-content:space-between; gap:8px 12px; border-top:1px solid var(--line); padding:7px 0; }
.contact-info dt { color:var(--muted); flex-shrink:0; }
.contact-info dd { margin:0; text-align:right; overflow-wrap:anywhere; }
.contact-info h3 { color:var(--accent); font-size:.85rem; margin-bottom:6px; }
.contact-form { display:grid; gap:12px; }
.contact-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.contact-form .button { justify-self:start; }
.contact-form a { text-decoration:underline; text-underline-offset:3px; }
.contact-result { margin-top:12px; padding:10px 12px; border:1px solid var(--line); color:var(--accent); font-size:.84rem; overflow-wrap:anywhere; }
.policy-page { max-width:920px; }
.policy-content { border-top:1px solid var(--line); }
.policy-content section { border-bottom:1px solid var(--line); padding:18px 0; }
.policy-content p { max-width:68ch; }
.loading { padding-block:70px; }
.muted,.fine { color:var(--muted); }
.fine { font-size:.79rem; }
.listing h1,.editor h1,.detail h1 { font-size:clamp(3rem,7.1vw,6.2rem); }
.filters { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px 16px; padding:18px; background:var(--panel); border:1px solid var(--line); margin-bottom:26px; }
.manage-filters { grid-template-columns:2fr 1fr 1fr; }
.collection-search-submit,.collection-filter-toggle { display:none; }
.collection-filter-fields { display:contents; }
.collection-sort { order:1; }
.collection-filter-fields .filter-actions { order:2; }
label { display:grid; align-content:start; gap:6px; font-size:.81rem; color:var(--paper); min-width:0; }
input,select,textarea { background:#11161d; border:1px solid #626f81; color:var(--paper); min-height:44px; width:100%; border-radius:0; padding:8px 10px; }
input::placeholder { color:#aeb9c7; }
input[type=file] { padding:8px; }
textarea { resize:vertical; }
.filter-actions,.save-row { display:flex; gap:14px; align-items:end; flex-wrap:wrap; }
.text-link { display:inline-flex; align-items:center; min-height:44px; font-size:.85rem; text-decoration:underline; text-underline-offset:4px; gap:8px; }
.empty { border:1px solid var(--line); padding:26px; color:var(--muted); }
.pager { display:flex; justify-content:center; align-items:center; gap:14px; flex-wrap:wrap; margin-top:30px; color:var(--muted); font-size:.8rem; }
.stock-list { list-style:none; padding:0; margin:0; }
.stock-list li { display:grid; grid-template-columns:96px minmax(0,1fr) minmax(126px,150px) 105px auto; gap:16px; align-items:center; padding:12px 0; border-bottom:1px solid var(--line); }
.stock-list img { width:96px; height:65px; object-fit:cover; }
.stock-title { font-family:var(--serif); font-size:1.45rem; overflow-wrap:anywhere; }
.stock-location { width:max-content; max-width:100%; margin-top:7px; padding:3px 7px; border:1px solid var(--line); color:var(--accent); font-size:.75rem; overflow-wrap:anywhere; }
.stock-price { white-space:nowrap; }
.stock-status { gap:4px; }
.stock-status > span { font-size:.68rem; color:var(--muted); }
.stock-status select { font-size:.81rem; }
.stock-site-action { grid-column:2 / -1; justify-self:start; }
.stock-restore-controls { display:flex; flex-wrap:wrap; align-items:end; gap:8px 12px; max-width:100%; }
.stock-restore-controls label { flex:1 1 128px; max-width:180px; }
.stock-restore { max-width:100%; flex-wrap:wrap; justify-content:flex-start; gap:4px 8px; text-align:left; }
.stock-restore-status { color:var(--accent); font-size:.75rem; }
.stock-feedback { margin:0 0 12px; color:var(--accent); font-size:.84rem; }
.stock-feedback:empty { margin:0; }
.back { margin-bottom:20px; color:var(--muted); }
.detail { padding-block:clamp(24px,4vw,64px); }
.detail .back { margin-bottom:12px; }
.vehicle-dossier { padding:clamp(14px,2.3vw,32px); border:1px solid var(--line); border-radius:8px; background:#151a22; }
.detail-heading { margin-bottom:18px; padding-bottom:16px; border-bottom:1px solid var(--line); }
.detail-heading .eyebrow { margin-bottom:8px; }
.detail .detail-heading h1 { font-size:clamp(2.5rem,5.3vw,5.25rem); }
.detail-price { flex-shrink:0; text-align:right; }
.detail-trim { margin-top:12px; color:var(--muted); font-size:clamp(.92rem,1.6vw,1.18rem); overflow-wrap:anywhere; }
.detail-price p { margin-top:8px; font:1.8rem var(--serif); }
.detail-price .detail-cta { margin-top:10px; }
.detail-appointments { display:grid; gap:8px; margin-top:10px; }
.studio-actions { display:flex; flex-wrap:wrap; gap:8px; }
.stock-disposition:has(label:not([hidden])) { margin-top:12px; }
.sale-history { max-width:360px; margin-top:16px; padding-top:10px; border-top:1px solid var(--line); }
.sale-history h2 { color:var(--accent); font:550 .85rem system-ui,sans-serif; }
.sale-history ul { list-style:none; margin:5px 0 0; padding:0; }
.sale-history li { display:flex; justify-content:space-between; gap:8px 16px; flex-wrap:wrap; padding:5px 0; color:var(--muted); font-size:.82rem; }
.sale-history strong { color:var(--paper); }
.sold-ribbon { position:absolute; z-index:1; inset:0 0 auto; padding:7px 10px; background:var(--action); color:var(--paper); text-align:center; font:650 .75rem system-ui,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
#stock-dialog .muted { margin-top:10px; }
.request-list { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.request-list li { display:grid; grid-template-columns:minmax(0,1fr) minmax(140px,180px); gap:12px 24px; align-items:center; border:1px solid var(--line); background:var(--panel); padding:clamp(14px,2.5vw,24px); }
.request-list .eyebrow { margin-bottom:6px; }
.request-list h2 { font-size:clamp(1.45rem,3vw,2rem); margin-bottom:6px; }
.request-list .muted { overflow-wrap:anywhere; }
.request-agenda { margin-bottom:20px; padding:14px; border:1px solid var(--line); background:var(--panel); }
.request-agenda h2 { margin-bottom:10px; font:550 .9rem system-ui,sans-serif; color:var(--accent); }
.request-agenda-days { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:12px 20px; }
.request-agenda h3 { font-size:.83rem; padding-bottom:5px; border-bottom:1px solid var(--line); }
.request-agenda h3 time { color:var(--muted); font-size:.75rem; font-weight:400; margin-left:5px; }
.request-agenda ul { list-style:none; padding:0; margin:0; }
.request-agenda a { display:flex; align-items:center; gap:10px; min-height:44px; font-size:.8rem; overflow-wrap:anywhere; }
.request-agenda a:hover { color:var(--accent); }
.request-agenda a time { color:var(--accent); font-variant-numeric:tabular-nums; }
.request-agenda .muted { margin-top:7px; font-size:.8rem; }
.request-list li[id] { scroll-margin-top:1rem; }
.request-appointment { grid-column:1 / -1; border-top:1px solid var(--line); padding-top:8px; }
.request-appointment summary { cursor:pointer; padding-block:7px; font-size:.85rem; }
.request-appointment summary span { margin-left:8px; color:var(--accent); font-size:.78rem; }
.appointment-admin-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; margin-top:8px; max-width:460px; }
.appointment-admin-form .studio-actions,.appointment-admin-form .fine { grid-column:1 / -1; }
.viewing-dialog { width:min(500px,calc(100% - 28px)); max-height:calc(100dvh - 28px); padding:clamp(16px,4vw,27px); border:1px solid #566477; border-radius:7px; background:var(--panel); color:var(--paper); }
.viewing-dialog::backdrop { background:#0a0d12e8; }
.viewing-header { display:flex; justify-content:space-between; align-items:start; gap:12px; }
.viewing-header .eyebrow { margin-bottom:6px; }
.viewing-header h2 { font-size:clamp(1.85rem,5vw,2.8rem); }
.viewing-vehicle { margin:14px 0 5px; color:var(--accent); }
.viewing-dialog > .muted { font-size:.87rem; }
.viewing-form { display:grid; gap:12px; margin-top:18px; }
.viewing-form .button { justify-self:start; }
.viewing-result { margin-top:16px; padding:12px; border:1px solid var(--line); color:var(--paper); }
.detail-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:clamp(18px,2.6vw,38px); align-items:start; }
.detail-photo { overflow:hidden; border:1px solid var(--line); border-radius:7px; background:var(--panel); }
.detail-image-stage { position:relative; overflow:hidden; aspect-ratio:1.45; background:radial-gradient(ellipse at center,#26313e,#121821 80%); }
.detail-image-stage img { width:100%; height:100%; object-fit:contain; }
.detail-photo figcaption { display:flex; justify-content:space-between; align-items:center; gap:10px; min-height:44px; padding-inline:13px; color:var(--muted); border-top:1px solid var(--line); }
.photo-open-button { flex-shrink:0; min-height:44px; padding:0 1px; border:0; background:none; color:var(--accent); font:500 .75rem system-ui,sans-serif; }
.photo-open-button span { margin-left:4px; }
.photo-options { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.photo-options button { overflow:hidden; background:var(--panel); padding:3px; border:1px solid var(--line); border-radius:5px; }
.photo-options button[aria-pressed=true] { border-color:var(--accent); }
.photo-options img { width:90px; height:62px; object-fit:cover; border-radius:2px; }
.detail-copy { padding:0 0 0 clamp(12px,1.6vw,24px); border-left:1px solid var(--line); }
.detail-options { margin:0 0 20px; }
.detail-options h3 { color:var(--accent); font-size:.78rem; font-weight:550; }
.detail-options ul { margin:6px 0 0; padding-left:1.15rem; color:var(--muted); font-size:.86rem; overflow-wrap:anywhere; }
.vehicle-history { margin:0 0 14px; padding:12px; border:1px solid var(--line); background:var(--panel); }
.vehicle-history h3 { color:var(--accent); font-size:.86rem; font-weight:550; }
.vehicle-history dl { margin:7px 0 0; font-size:.8rem; }
.vehicle-history dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:6px 12px; padding:6px 0; border-top:1px solid var(--line); }
.vehicle-history dt { color:var(--muted); }
.vehicle-history dd { margin:0; overflow-wrap:anywhere; white-space:pre-line; }
.vehicle-pdfs,.editor-pdfs { list-style:none; margin:8px 0 0; padding:0; }
.vehicle-pdfs li,.editor-pdfs li { border-top:1px solid var(--line); }
.vehicle-pdfs .text-link { width:100%; justify-content:space-between; overflow-wrap:anywhere; }
.pdf-tag { flex:none; color:var(--accent); font-size:.72rem; }
#pdf-editor { padding-top:12px; border-top:1px solid var(--line); }
#pdf-editor h3,#pdf-editor p { margin-bottom:8px; }
.pdf-upload,.editor-pdfs li { display:flex; flex-wrap:wrap; align-items:end; gap:8px 16px; }
.pdf-upload label { flex:1 1 230px; }
.pdf-upload input { max-width:100%; }
.editor-pdfs li { align-items:center; justify-content:space-between; padding-block:4px; }
.editor-pdfs .text-link { overflow-wrap:anywhere; min-width:0; }
.pdf-toggle { display:flex; align-items:center; min-height:44px; }
.pdf-toggle input { width:16px; height:16px; min-height:0; margin:0; padding:0; accent-color:var(--accent); }
.photo-lightbox { width:min(1280px,calc(100% - 32px)); height:min(920px,calc(100dvh - 32px)); max-width:none; max-height:none; padding:0; border:1px solid var(--line); color:var(--paper); background:var(--ink); }
.room-lightbox { position:fixed; inset:0; width:100%; height:100dvh; margin:0; border:0; }
.photo-lightbox[open] { display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.photo-lightbox::backdrop { background:#080b10ee; }
.photo-lightbox-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; background:var(--panel); }
.photo-lightbox-bar h2 { font-size:clamp(1.35rem,3vw,2.5rem); }
.lightbox-stage { min-height:0; touch-action:none; overflow:hidden; }
.lightbox-stage[data-zoomed] { cursor:grab; }
.lightbox-stage[data-zoomed]:active { cursor:grabbing; }
.lightbox-image { width:100%; height:100%; min-height:0; object-fit:contain; user-select:none; pointer-events:none; }
.lightbox-navigation { justify-content:center; flex-wrap:wrap; gap:8px 22px; }
.lightbox-browse,.lightbox-zoom { display:flex; align-items:center; justify-content:center; gap:6px; }
.lightbox-zoom .button { min-width:44px; padding-inline:8px; }
.lightbox-zoom [data-zoom-reset] { min-width:59px; font-variant-numeric:tabular-nums; }
.lightbox-position { display:grid; align-content:center; width:150px; min-height:3rem; gap:4px; text-align:center; }
.lightbox-hint { color:var(--muted); font-size:.7rem; line-height:1.25; }
.lightbox-count { color:var(--muted); font:500 .68rem ui-monospace,Consolas,monospace; letter-spacing:.09em; }
.detail-copy h2 { font-size:clamp(1.65rem,2.6vw,2.65rem); margin-bottom:10px; }
.detail-copy > p:not(.eyebrow) { color:var(--muted); }
.detail-copy > .fine { margin-top:12px; }
.specs { margin:14px 0; font-size:.87rem; }
.specs div { display:flex; justify-content:space-between; gap:1rem; border-top:1px solid var(--line); padding:7px 0; }
.specs dt { color:var(--muted); }
.specs dd { margin:0; text-align:right; overflow-wrap:anywhere; }
.editor { max-width:920px; }
.editor h1 { margin-bottom:28px; }
fieldset { border:1px solid var(--line); padding:18px; min-width:0; margin:0 0 24px; background:var(--panel); }
legend { color:var(--accent); padding-inline:8px; font-size:.9rem; }
.fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.rdw-lookup { margin-bottom:16px; padding:12px; border:1px solid var(--line); background:var(--ink); }
.rdw-lookup h2 { margin-bottom:8px; font:550 .92rem system-ui,sans-serif; }
.rdw-controls { display:flex; flex-wrap:wrap; align-items:end; gap:8px; }
.rdw-controls label { flex:1 1 160px; max-width:220px; }
#rdw-plate { text-transform:uppercase; }
.rdw-lookup .fine { margin-top:8px; }
#rdw-result,#plate-feedback { color:var(--accent); }
#rdw-result:empty,#plate-feedback:empty { margin-top:0; }
#plate-feedback a { text-decoration:underline; text-underline-offset:3px; }
.wide { grid-column:1 / -1; }
.equipment-fields > p { font-size:.84rem; margin-bottom:8px; }
.equipment-inputs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.status-field,.upload { max-width:410px; }
fieldset .muted { margin-block:8px; font-size:.84rem; }
.appointment-slots { margin:0; padding:10px 12px 12px; }
.slot-options { display:grid; grid-template-columns:repeat(auto-fit,minmax(80px,1fr)); gap:8px; }
.slot-options:not(:empty) { margin-top:8px; }
.slot-options label { display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:6px; border:1px solid var(--line); cursor:pointer; font-variant-numeric:tabular-nums; }
.slot-options label:has(input:checked) { border-color:var(--accent); background:var(--action); }
.slot-options input[type=radio] { flex:none; width:14px; min-height:0; height:14px; margin:0; padding:0; accent-color:var(--accent); }
.cover-edit { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:18px; align-items:start; }
.cover-preview { max-width:320px; min-width:0; }
.cover-preview .vehicle-photo { outline:1px solid var(--line); outline-offset:-1px; border-radius:5px; }
.cover-preview figcaption { margin-bottom:8px; color:var(--accent); }
.cover-preview .card-device { margin-bottom:10px; }
.cover-preview .card-mobile-preview { width:min(100%,280px); margin-inline:auto; }
.cover-preview .card-adjustable { touch-action:none; cursor:grab; }
.cover-preview .card-adjustable:active { cursor:grabbing; }
.cover-preview img { pointer-events:none; user-select:none; }
.card-framing-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 10px; margin:10px 0; }
.card-framing-controls input[type=range] { padding-inline:0; accent-color:var(--accent); }
#card-zoom-value { color:var(--accent); }
.publish-fields #remove-from-stock { margin-top:12px; }
.editor-action-bar { position:sticky; bottom:0; z-index:4; display:flex; align-items:center; flex-wrap:wrap; gap:4px 16px; padding:8px 10px calc(8px + env(safe-area-inset-bottom)); background:var(--panel); border:1px solid var(--line); }
.editor-action-bar .save-row { gap:4px 8px; }
.editor-action-bar .notice { margin:0; min-height:0; font-size:.82rem; overflow-wrap:anywhere; }
.editor-action-bar .notice:empty { width:0; }
.vehicle-preview { inset:0; width:100%; height:100dvh; max-width:none; max-height:none; margin:0; padding:0; border:0; background:var(--ink); color:var(--paper); overscroll-behavior:contain; }
.vehicle-preview[open] { display:grid; grid-template-rows:auto minmax(0,1fr); }
.vehicle-preview-bar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px 16px; padding:10px clamp(16px,4vw,48px); background:var(--panel); border-bottom:1px solid var(--line); }
.vehicle-preview-bar h2 { font:400 clamp(1.2rem,2vw,1.65rem)/1.2 var(--serif); }
.vehicle-preview-bar p { color:var(--muted); font-size:.78rem; }
.vehicle-preview-controls,.vehicle-preview-devices { display:flex; gap:4px; }
.vehicle-preview-controls { flex-wrap:wrap; gap:8px; }
.vehicle-preview-language { width:auto; min-height:44px; color:var(--paper); background:var(--ink); border:1px solid var(--line); padding-inline:8px; }
.vehicle-preview-devices [aria-pressed=true] { border-color:var(--accent); background:var(--ink); }
.vehicle-preview-content { min-width:0; overflow:auto; }
.vehicle-preview-frame { display:block; width:100%; min-width:900px; height:100%; border:0; }
.vehicle-preview-content[data-device=mobile] { background:var(--panel); }
.vehicle-preview-content[data-device=mobile] .vehicle-preview-frame { width:min(100%,390px); min-width:0; max-height:844px; margin-inline:auto; outline:1px solid var(--line); }
.publication-check { flex:1 0 100%; border-bottom:1px solid var(--line); }
.publication-check summary { padding:7px 3px; cursor:pointer; font-size:.82rem; }
.check-count { margin-left:8px; color:var(--muted); font-size:.76rem; }
.check-translation-count,.publication-translation-status { color:var(--muted); font-size:.76rem; }
.publication-translation-status { margin:0 0 5px; }
.publication-check ul { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr)); gap:5px; list-style:none; margin:0 0 8px; padding:0; }
.publication-check .publication-translations { max-height:26dvh; overflow:auto; padding:4px; }
.publication-check button { width:100%; min-height:44px; display:flex; flex-wrap:wrap; align-items:center; gap:0 6px; padding:5px 7px; border:1px solid var(--line); background:var(--ink); color:var(--paper); text-align:left; font-size:.76rem; }
.publication-check .check-state { color:var(--accent); font-size:.7rem; }
.publication-check [data-ready] .check-state { color:var(--muted); }
#editor-form :is(input,select,textarea,button,a,summary) { scroll-margin-bottom:124px; }
.editor-extra { margin-bottom:12px; border:1px solid var(--line); background:var(--panel); }
.editor-extra summary { padding:12px 16px; color:var(--accent); cursor:pointer; }
.editor-extra-body { padding:0 16px 16px; }
.editor-extra-body > .muted { margin:0 0 10px; font-size:.84rem; }
.translation-editor { display:grid; gap:10px; }
.translation-fields { display:grid; gap:12px; margin:0; }
.translation-fields .button { justify-self:start; }
.translation-fields [role=status]:empty { display:none; }
.edit-photos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:12px; }
.edit-photos img { width:100%; aspect-ratio:1.5; object-fit:cover; }
.edit-photos p { color:var(--accent); font-size:.78rem; margin-top:5px; }
.photo-actions { display:flex; flex-wrap:wrap; gap:3px 9px; }
.photo-actions button { padding:3px 0; background:none; border:none; color:var(--paper); text-decoration:underline; min-height:34px; font-size:.75rem; }
.notice { min-height:1.6em; margin-top:12px; color:var(--accent); }
.spin-link { margin:0 0 18px; }
.performance-panel { margin-top:14px; padding:13px; border:1px solid #526074; border-radius:5px; background:radial-gradient(ellipse at 14% 0,#283c5270,transparent 58%),#151a22; }
.performance-header { padding-bottom:8px; border-bottom:1px solid var(--line); }
.performance-header .eyebrow { margin-bottom:3px; font-size:.59rem; }
.performance-header h2 { margin:0; font-size:clamp(1.45rem,2.5vw,2.15rem); }
.performance-grid dt,.scale-range { font:500 .59rem ui-monospace,Consolas,monospace; letter-spacing:.08em; }
.performance-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; align-items:center; margin-top:11px; }
.performance-grid dl,.performance-grid dd { margin:0; }
.performance-grid .visually-hidden { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.instrument-readout { font-variant-numeric:tabular-nums; }
.performance-grid > :only-child { grid-column:1 / -1; width:min(100%,220px); }
.performance-grid dt { text-transform:uppercase; color:var(--muted); }
.power-instrument dd { width:min(100%,240px); position:relative; }
.power-instrument svg,.performance-ruler svg { display:block; width:100%; fill:none; overflow:visible; }
.power-instrument svg { margin-top:8px; }
.instrument-ticks { stroke:#718299; stroke-width:8px; stroke-dasharray:1 2.8; }
.instrument-progress { stroke:var(--accent); stroke-width:2px; }
.power-value { position:absolute; inset:auto 0 12px; text-align:center; font:400 clamp(1.4rem,2.5vw,2.4rem)/1 var(--serif); }
.power-value small,.ruler-value small { color:var(--accent); font:500 .65rem ui-monospace,Consolas,monospace; }
.scale-range { display:flex; justify-content:space-between; gap:8px; padding-inline:7%; color:var(--muted); letter-spacing:.05em; }
.performance-rulers { display:grid; gap:8px; }
.performance-ruler { padding-block:0 6px; border-bottom:1px solid var(--line); }
.performance-ruler:last-child { border-bottom:0; }
.ruler-value { display:block; margin-top:3px; font:400 clamp(1.2rem,2.3vw,1.75rem)/1 var(--serif); }
.performance-ruler svg { height:15px; margin-top:3px; }
.ruler-track { stroke:#718299; stroke-width:3; stroke-dasharray:.5 4.5; }
.ruler-fill { stroke:#d66d7778; stroke-width:.85; }
.ruler-marker { fill:var(--accent); }
.performance-ruler .scale-range { padding-inline:2%; }
.spin-viewer { margin-top:clamp(22px,3vw,42px); scroll-margin-top:18px; border-top:1px solid var(--line); padding-top:20px; }
.spin-viewer .eyebrow { margin-bottom:8px; }
.spin-viewer h2 { margin-bottom:12px; }
.spin-stage { overflow:hidden; aspect-ratio:1.7; margin-top:18px; border:1px solid var(--line); background:radial-gradient(ellipse,#26313e,#101318 78%); touch-action:pan-y; cursor:grab; }
.spin-stage:active { cursor:grabbing; }
.spin-stage img { width:100%; height:100%; object-fit:contain; pointer-events:none; user-select:none; }
.spin-controls { display:flex; align-items:center; justify-content:center; gap:14px; padding:12px; border-bottom:1px solid var(--line); }
.spin-counter { min-width:13ch; text-align:center; color:var(--muted); font-size:.8rem; }
.edit-spin { margin-bottom:0; padding:0; list-style:none; }
.edit-spin .photo-actions button { padding-inline:5px; }
.hero-setting { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; border:1px solid var(--line); background:var(--panel); padding:14px 18px; margin-bottom:24px; }
.hero-setting .eyebrow { color:var(--accent); margin-bottom:4px; }
.hero-setting .muted { font-size:.84rem; }
.reveal-device { width:min(100%,220px); }
.reveal-preview { position:relative; isolation:isolate; overflow:hidden; margin:12px 0 16px; background:var(--ink); border:1px solid var(--line); }
.reveal-zoomed .reveal-photo { position:absolute; inset:var(--reveal-top) auto auto var(--reveal-left); width:var(--reveal-width); height:var(--reveal-height); max-width:none; object-fit:fill; }
.reveal-preview p { position:absolute; z-index:1; top:50%; left:4.5%; transform:translateY(-50%); color:var(--paper); font:clamp(1rem,4vw,3rem)/1 var(--serif); }
.mobile-preview { display:grid; grid-template-rows:minmax(min-content,1fr) auto; aspect-ratio:1 / 2; max-width:390px; margin-inline:auto; }
.mobile-preview .reveal-frame { align-self:center; }
.mobile-preview p { position:relative; inset:auto; transform:none; padding:0 5% 14%; font-size:clamp(1.5rem,6vw,2.65rem); }
.reveal-controls { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:12px; }
.reveal-controls input[type=range] { accent-color:var(--accent); padding-inline:0; }
.reveal-controls input:disabled { opacity:.45; }
#reveal-zoom-value { color:var(--accent); }
@media (max-width:1000px) {
  .shell { width:calc(100% - 64px); }
  .topbar { padding-inline:32px; }
  .cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-body { padding-block:22px 58px; }
  .hero h1 { font-size:clamp(2.7rem,6.4vw,4.2rem); }
  .hero .eyebrow { margin-bottom:.65rem; }
  .hero-intro { margin-top:13px; }
  .hero-actions { margin-top:15px; }
  .hero-foot { min-height:46px; }
}
@media (max-width:650px) {
  .shell { width:calc(100% - 36px); }
  .topbar { position:relative; z-index:5; height:var(--mobile-header-height); padding-inline:18px; gap:8px; }
  .is-showroom .topbar { position:absolute; inset:0 0 auto; background:linear-gradient(#101318,transparent); border-bottom:0; }
  .brand img { width:clamp(140px,41vw,170px); }
  .footer .brand img { width:126px; }
  .topbar .menu-toggle { display:inline-flex; gap:9px; padding-inline:12px; background:#101318d9; }
  .menu-icon { position:relative; width:15px; height:1px; background:currentColor; box-shadow:0 -5px currentColor,0 5px currentColor; }
  .topbar[data-menu-open] .menu-icon { transform:rotate(45deg); box-shadow:none; }
  .topbar[data-menu-open] .menu-icon::after { content:''; position:absolute; inset:0; background:currentColor; transform:rotate(90deg); }
  .topbar nav { display:none; position:absolute; top:100%; inset-inline:0; gap:2px; padding:10px 18px 15px; background:var(--panel); border-bottom:1px solid #526074; box-shadow:0 16px 24px #0008; font-size:.87rem; }
  .topbar[data-menu-open] nav { display:grid; }
  .topbar nav a { display:flex; align-items:center; justify-content:space-between; min-height:44px; padding:8px 10px; border-bottom:1px solid var(--line); }
  .topbar .studio-link { margin-top:5px; padding:8px 10px; }
  .topbar .studio-link span { margin-left:0; }
  #site-language { margin:8px 0 0 10px; justify-self:start; }
  .hero { aspect-ratio:auto; grid-template-rows:minmax(min-content,1fr) auto auto; min-height:100vh; min-height:100svh; padding-top:var(--mobile-header-height); }
  .hero-body { padding:0 0 24px; position:relative; z-index:2; opacity:0; animation:none; }
  .hero-body .eyebrow { display:none; }
  .hero h1 { font-size:clamp(2.5rem,11.8vw,4.65rem); }
  .hero-intro { margin-top:13px; }
  .hero-actions { margin-top:16px; }
  .hero > .reveal-frame { position:relative; inset:auto; }
  .hero .hero-image { animation:none; }
  .hero .reveal-ready .hero-image { animation:mobile-reveal var(--mobile-reveal-time) ease-out both; }
  .hero .reveal-ready ~ .hero-body { animation:rise .7s var(--mobile-reveal-time) both; }
  .hero .hero-body:focus-within { opacity:1; animation:none; }
  .hero-foot { position:relative; left:auto; transform:none; min-height:46px; font-size:.57rem; letter-spacing:.085em; }
  .gallery-room { width:100%; height:100dvh; max-width:none; max-height:none; margin:0; border:0; }
  .gallery-room[open] { grid-template-rows:auto minmax(200px,1fr) auto; }
  .room-header,.room-controls { padding:12px 15px; gap:10px; }
  .room-controls { grid-template-columns:minmax(0,1fr); }
  .room-caption { padding-block:2px; }
  .room-specs { padding:8px 0 0; border:0; border-top:1px solid var(--line); }
  .room-specs dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .room-navigation { justify-content:start; gap:5px; }
  .room-actions { justify-content:end; gap:6px; }
  .room-controls .button { padding-inline:8px; gap:5px; }
  #room-count { min-width:6ch; letter-spacing:0; }
  .room-stage { background:radial-gradient(ellipse at 50% 35%,#283646,#1b2530 41%,#101318 79%); }
  .room-light { top:-14%; left:5%; width:90%; height:64%; transform:none; background:radial-gradient(ellipse at 50% 27%,#a0b4cc36,transparent 67%); box-shadow:none; }
  .room-exhibit { width:82%; }
  .room-exhibit.photo-matte[data-position=center]::after { z-index:1; background:radial-gradient(ellipse 76% 64% at 50% 38%,#c0d0e425,transparent 76%); mix-blend-mode:screen; transition:opacity .6s; }
  .night-room .room-exhibit.photo-matte[data-position=center]::after { opacity:0; }
  .room-exhibit-tag,.room-enlarge { z-index:2; }
  .room-exhibit[data-position=left] { --slide:-100%; --depth:-180px; }
  .room-exhibit[data-position=right] { --slide:100%; --depth:-180px; }
  .section-intro { display:flex; flex-wrap:wrap; align-items:start; margin-bottom:22px; gap:14px; }
  .section-intro > p { max-width:none; }
  .cards { grid-template-columns:1fr; gap:24px; }
  .filters,.manage-filters { grid-template-columns:1fr 1fr; padding:12px; gap:10px; }
  .manage-filters label:first-child,.filter-actions { grid-column:1 / -1; }
  .collection-listing { padding-top:32px; }
  .collection-filters { grid-template-columns:minmax(0,1fr) auto; gap:8px; margin-bottom:14px; }
  .collection-search { grid-area:1 / 1; }
  .collection-search-submit { display:inline-flex; grid-area:1 / 2; }
  .collection-filter-toggle { display:inline-flex; grid-area:2 / 1; justify-self:start; }
  .collection-sort { grid-area:2 / 2; width:min(156px,42vw); }
  .collection-filters .collection-search > span,.collection-sort > span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .collection-filter-fields { display:none; grid-area:3 / 1 / 4 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding-top:10px; border-top:1px solid var(--line); }
  .collection-filters[data-filters-open] .collection-filter-fields { display:grid; }
  .footer { padding-block:24px 18px; }
  .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; }
  .footer-brand { grid-column:1 / -1; }
  .footer-bottom { margin-top:18px; }
  .about-intro,.about-teaser,.about-principles,.contact-layout,.contact-fields { grid-template-columns:1fr; }
  .contact-info dl div { flex-wrap:wrap; }
  .stock-list li { grid-template-columns:58px minmax(0,1fr) auto; gap:7px 9px; }
  .stock-list img { width:58px; height:52px; }
  .stock-title { font-size:1.14rem; }
  .stock-price { grid-column:3; grid-row:1; font-size:.84rem; text-align:right; }
  .stock-status { grid-column:2; grid-row:2; }
  .stock-edit { grid-column:3; grid-row:2; padding-inline:8px; gap:5px; }
  .stock-site-action { grid-row:3; }
  .detail-layout { grid-template-columns:1fr; }
  .detail-copy { padding:12px 0 0; border-left:0; border-top:1px solid var(--line); }
  .equipment-inputs { grid-template-columns:1fr; }
  .photo-lightbox { width:100%; height:100dvh; margin:0; border:0; }
  .detail-price { text-align:left; }
  .request-list li { grid-template-columns:1fr; }
  fieldset { padding:12px; }
  .cover-edit { grid-template-columns:1fr; gap:14px; }
  .edit-photos { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .spin-stage { aspect-ratio:1.25; }
  .reveal-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:360px) {
  .room-toolbar { justify-content:start; }
  .room-actions { justify-content:start; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .hero-body { opacity:1; }
}
