[data-direction="cellar-light"] {
  --lx-paper:#f3ead8; --lx-ink:#2a1016; --lx-muted:#5f4a4a; --lx-line:rgba(59,20,32,.18); --lx-accent:#c9a25a; --lx-accent-ink:#2a1016;
  --lx-head:var(--font-newsreader), Newsreader, Georgia, serif; --lx-body:var(--font-dmsans), "DM Sans", system-ui, sans-serif;
  --lx-head-w:500; --lx-head-track:-.015em; --lx-head-lh:1.02; --lx-media-r:0;
  background:#f3ead8; color:#2a1016;
}
[data-direction="cellar-light"] :is(.lx-hero-orbit, .lx-hero-sweep, .lx-hero-scroll) { display:none; }
[data-direction="cellar-light"] .mk-dh { background:#3b1420; color:#f3ead8; }
[data-direction="cellar-light"] .mk-dh-brand { font-family:var(--lx-head); font-style:italic; font-size:1.6rem; color:#f3ead8; }
[data-direction="cellar-light"] .mk-dh-dot { display:none; }
.mk-demo-site[data-direction="cellar-light"] .mk-dh-menu > summary { background:#f3ead8; color:#3b1420; border-radius:0; }
[data-direction="cellar-light"] .mk-dh-panel { background:#3b1420; color:#f3ead8; }
[data-direction="cellar-light"] .mk-dh-panel a { color:#f3ead8; font-family:var(--lx-head); font-size:2rem; }
@media (max-width:1023px) { [data-direction="cellar-light"] .mk-dh-index { display:none; } }
/* vertical cellar: the header becomes a claret rail down the left of wide screens */
@media (min-width:1024px) {
  .mk-demo-site[data-direction="cellar-light"] { display:grid; grid-template-columns:232px minmax(0, 1fr); align-items:start; }
  .mk-demo-site[data-direction="cellar-light"] > .mk-dh { grid-column:1; grid-row:1 / span 2; align-self:stretch; position:relative; border:0; }
  .mk-demo-site[data-direction="cellar-light"] > main, .mk-demo-site[data-direction="cellar-light"] > footer { grid-column:2; min-width:0; }
  .mk-demo-site[data-direction="cellar-light"] > main { grid-row:1; }
  .mk-demo-site[data-direction="cellar-light"] > footer { grid-row:2; }
  [data-direction="cellar-light"] .mk-dh-bar { position:sticky; top:0; height:100vh; height:100dvh; width:auto; max-width:none; margin:0; padding:36px 26px 30px; display:flex; flex-direction:column; align-items:stretch; gap:34px; }
  [data-direction="cellar-light"] .mk-dh-brand { font-size:1.9rem; line-height:1.05; }
  [data-direction="cellar-light"] .mk-dh-nav { display:block; flex:1; }
  .mk-demo-site[data-direction="cellar-light"] .mk-dh-links { display:grid; gap:0; padding:0; background:none; border:0; border-radius:0; border-top:1px solid rgba(243,234,216,.22); }
  .mk-demo-site[data-direction="cellar-light"] .mk-dh-links li { border-bottom:1px solid rgba(243,234,216,.22); }
  .mk-demo-site[data-direction="cellar-light"] .mk-dh-links a { width:100%; justify-content:flex-start; min-height:52px; padding:0 4px; border-radius:0; color:#f3ead8; font-family:var(--lx-head); font-size:1.3rem; font-weight:400; }
  .mk-demo-site[data-direction="cellar-light"] .mk-dh-links a:hover { background:none; color:#c9a25a; transform:none; }
  .mk-demo-site[data-direction="cellar-light"] .mk-dh-links li[data-current] a { background:none; color:#c9a25a; box-shadow:inset 3px 0 0 #c9a25a; padding-left:14px; }
  [data-direction="cellar-light"] .mk-dh-index { display:inline; font-family:var(--lx-body); font-size:.875rem; opacity:.65; min-width:2ch; }
  [data-direction="cellar-light"] .mk-dh-end { display:block; }
  [data-direction="cellar-light"] .mk-dh-cta { display:block; }
  [data-direction="cellar-light"] .mk-dh-cta .lx-btn { width:100%; }
  [data-direction="cellar-light"] .mk-dh-menu { display:none; }
}
/* wine-label buttons */
[data-direction="cellar-light"] .lx-btn:not(.lx-btn--link) { border-radius:0; background:#f3ead8; color:#3b1420; clip-path:polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); box-shadow:inset 0 0 0 1.5px #3b1420, inset 0 0 0 5px #f3ead8, inset 0 0 0 6px #c9a25a; font-variant:small-caps; text-transform:lowercase; letter-spacing:.08em; font-weight:600; font-size:1rem; padding-inline:1.6em; }
[data-direction="cellar-light"] .lx-btn--primary:not(.lx-btn--link), [data-direction="cellar-light"] .mk-dh .lx-btn:not(.lx-btn--link) { background:#c9a25a; color:#2a1016; box-shadow:inset 0 0 0 1.5px #2a1016, inset 0 0 0 5px #c9a25a, inset 0 0 0 6px #2a1016; }
[data-direction="cellar-light"] .lx-btn:not(.lx-btn--link):hover { background:#3b1420; color:#f3ead8; box-shadow:inset 0 0 0 1.5px #3b1420, inset 0 0 0 5px #3b1420, inset 0 0 0 6px #c9a25a; }
[data-direction="cellar-light"] .lx-btn--link { color:#3b1420; font-weight:600; text-decoration-color:#c9a25a; }
[data-direction="cellar-light"] .lx-eyebrow { color:#7a3b2a; letter-spacing:.18em; text-transform:uppercase; font-weight:600; }
[data-direction="cellar-light"] .lx-display { font-size:clamp(2.6rem, 1.5rem + 4vw, 5.2rem); }
/* the flight builder: three shelves of radios; the flight card fills in from what is chosen (CSS :has, no script) */
[data-direction="cellar-light"] .lx-flight { display:grid; grid-template-columns:minmax(0, 2fr) minmax(240px, 1fr); gap:clamp(20px, 3vw, 48px); margin-top:28px; align-items:start; }
[data-direction="cellar-light"] .lx-flight-shelves { display:grid; gap:22px; }
[data-direction="cellar-light"] .lx-flight-shelf { margin:0; padding:0; border:0; min-width:0; }
[data-direction="cellar-light"] .lx-flight-shelf legend { width:100%; padding-bottom:8px; border-bottom:2px solid #3b1420; font-family:var(--lx-head); font-size:1.5rem; }
[data-direction="cellar-light"] .lx-flight-shelf legend small { display:inline-block; } [data-direction="cellar-light"] .lx-flight-shelf legend small { margin-left:10px; font-family:var(--lx-body); font-size:.875rem; letter-spacing:.1em; text-transform:uppercase; color:#7a3b2a; }
[data-direction="cellar-light"] .lx-flight-options { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; margin-top:12px; }
[data-direction="cellar-light"] .lx-flight-option { position:relative; display:grid; gap:4px; padding:14px 14px 14px 42px; border:1px solid var(--lx-line); background:#faf4e8; cursor:pointer; }
[data-direction="cellar-light"] .lx-flight-option input { position:absolute; left:14px; top:16px; width:18px; height:18px; margin:0; accent-color:#3b1420; }
[data-direction="cellar-light"] .lx-flight-option:has(input:checked) { border-color:#3b1420; box-shadow:inset 0 0 0 1px #3b1420; background:#fff9ee; }
[data-direction="cellar-light"] .lx-flight-option:has(input:focus-visible) { outline:2px solid #c9a25a; outline-offset:2px; }
[data-direction="cellar-light"] .lx-flight-wine { font-weight:600; line-height:1.3; }
[data-direction="cellar-light"] .lx-flight-note { color:#5f4a4a; font-size:.9375rem; line-height:1.4; }
[data-direction="cellar-light"] .lx-flight-pour { font-size:.875rem; color:#7a3b2a; }
[data-direction="cellar-light"] .lx-flight-card { position:sticky; top:24px; padding:26px 24px; background:#3b1420; color:#f3ead8; clip-path:polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px), 0 14px); }
[data-direction="cellar-light"] .lx-flight-card-k { margin:0 0 14px; font-size:.875rem; letter-spacing:.18em; text-transform:uppercase; color:#c9a25a; }
[data-direction="cellar-light"] .lx-flight-card ol { list-style:none; margin:0; padding:0; display:grid; gap:14px; counter-reset:glass; }
[data-direction="cellar-light"] .lx-flight-card ol > li { counter-increment:glass; display:grid; grid-template-columns:2ch minmax(0, 1fr); gap:10px; font-family:var(--lx-head); font-size:1.2rem; line-height:1.25; }
[data-direction="cellar-light"] .lx-flight-card ol > li::before { content:counter(glass); color:#c9a25a; }
[data-direction="cellar-light"] .lx-flight-pick { display:none; }
/* the card names the chosen glass on each shelf (three shelves of up to five, matched by position) */
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(1) .lx-flight-option:nth-child(1) input:checked) .lx-flight-card li:nth-child(1) .lx-flight-pick:nth-child(1),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(1) .lx-flight-option:nth-child(2) input:checked) .lx-flight-card li:nth-child(1) .lx-flight-pick:nth-child(2),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(1) .lx-flight-option:nth-child(3) input:checked) .lx-flight-card li:nth-child(1) .lx-flight-pick:nth-child(3),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(1) .lx-flight-option:nth-child(4) input:checked) .lx-flight-card li:nth-child(1) .lx-flight-pick:nth-child(4),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(1) .lx-flight-option:nth-child(5) input:checked) .lx-flight-card li:nth-child(1) .lx-flight-pick:nth-child(5),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(2) .lx-flight-option:nth-child(1) input:checked) .lx-flight-card li:nth-child(2) .lx-flight-pick:nth-child(1),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(2) .lx-flight-option:nth-child(2) input:checked) .lx-flight-card li:nth-child(2) .lx-flight-pick:nth-child(2),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(2) .lx-flight-option:nth-child(3) input:checked) .lx-flight-card li:nth-child(2) .lx-flight-pick:nth-child(3),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(2) .lx-flight-option:nth-child(4) input:checked) .lx-flight-card li:nth-child(2) .lx-flight-pick:nth-child(4),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(2) .lx-flight-option:nth-child(5) input:checked) .lx-flight-card li:nth-child(2) .lx-flight-pick:nth-child(5),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(3) .lx-flight-option:nth-child(1) input:checked) .lx-flight-card li:nth-child(3) .lx-flight-pick:nth-child(1),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(3) .lx-flight-option:nth-child(2) input:checked) .lx-flight-card li:nth-child(3) .lx-flight-pick:nth-child(2),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(3) .lx-flight-option:nth-child(3) input:checked) .lx-flight-card li:nth-child(3) .lx-flight-pick:nth-child(3),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(3) .lx-flight-option:nth-child(4) input:checked) .lx-flight-card li:nth-child(3) .lx-flight-pick:nth-child(4),
[data-direction="cellar-light"] .lx-flight:has(.lx-flight-shelf:nth-child(3) .lx-flight-option:nth-child(5) input:checked) .lx-flight-card li:nth-child(3) .lx-flight-pick:nth-child(5) { display:inline; }
@media (max-width:899px) {
  [data-direction="cellar-light"] .lx-flight { grid-template-columns:1fr; }
  [data-direction="cellar-light"] .lx-flight-options { grid-template-columns:repeat(3, minmax(0, 1fr)); gap:6px; }
  [data-direction="cellar-light"] .lx-flight-option { padding:34px 8px 10px; }
  [data-direction="cellar-light"] .lx-flight-option input { left:8px; top:10px; }
  [data-direction="cellar-light"] .lx-flight-note { display:none; }
  [data-direction="cellar-light"] .lx-flight-option:has(input:checked) .lx-flight-note { display:block; }
  [data-direction="cellar-light"] .lx-flight-card { position:static; }
}
/* the cellar notebook: dated notes on a ruled page with a margin line */
[data-direction="cellar-light"] .lx-notebook { list-style:none; margin:28px 0 0; padding:clamp(20px, 3vw, 40px) clamp(20px, 3vw, 40px) clamp(20px, 3vw, 40px) clamp(64px, 8vw, 110px); background:#fffaf0 linear-gradient(transparent 31px, rgba(59,20,32,.12) 32px) 0 18px / 100% 32px; box-shadow:0 30px 50px -40px rgba(42,16,22,.6); position:relative; display:grid; gap:32px; }
[data-direction="cellar-light"] .lx-notebook::before { content:""; position:absolute; top:0; bottom:0; left:clamp(44px, 6vw, 84px); width:2px; background:rgba(178,58,58,.45); }
[data-direction="cellar-light"] .lx-note-entry { display:grid; gap:4px; }
[data-direction="cellar-light"] .lx-note-date { font-size:.875rem; letter-spacing:.14em; text-transform:uppercase; color:#7a3b2a; font-weight:600; }
[data-direction="cellar-light"] .lx-note-wine { font-family:var(--lx-head); font-size:1.6rem; line-height:1.1; }
[data-direction="cellar-light"] .lx-note-text { font-family:var(--lx-head); font-style:italic; font-size:1.15rem; line-height:1.55; color:#4a2a2e; max-width:60ch; }
[data-direction="cellar-light"] .lx-split { background:#eadfca; }
[data-direction="cellar-light"] .lx-footer { background:#2a1016; color:#e2d3c0; }
[data-direction="cellar-light"] .lx-footer a { color:#f3ead8; }
[data-direction="cellar-light"] .lx-svc > .lx-btn--link { justify-self:start; align-self:flex-start; }

[data-direction="cellar-light"] .mk-nights-k { margin:2.5rem 0 .6rem; font-size:.875rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--lx-muted); }
[data-direction="cellar-light"] .mk-nights-days { margin-top:0; grid-template-columns:repeat(auto-fill, minmax(5.5rem, 1fr)); }
[data-direction="cellar-light"] .mk-nights-days > li { border-top:0; padding-top:0; }
[data-direction="cellar-light"] .mk-nights-days .mk-slot[aria-pressed="true"] { border-color:var(--lx-ink); box-shadow:inset 0 0 0 1px var(--lx-ink); }
[data-direction="cellar-light"] .mk-nights-pick { display:flex; flex-wrap:wrap; align-items:end; gap:12px 18px; margin:1.2rem 0 .4rem; }
[data-direction="cellar-light"] .mk-nights-pick label { display:grid; gap:6px; font-size:.875rem; font-weight:600; }
[data-direction="cellar-light"] .mk-book-options { margin-top:2rem; }
[data-direction="cellar-light"] .mk-book-choice-row { display:flex; flex-wrap:wrap; gap:10px; }
[data-direction="cellar-light"] .mk-book-choice { display:grid; gap:2px; min-height:44px; padding:10px 14px; text-align:left; font:inherit; color:var(--lx-ink); background:transparent; border:1.5px solid var(--lx-line); }
[data-direction="cellar-light"] .mk-book-choice[aria-checked="true"] { border-color:var(--lx-ink); box-shadow:inset 0 0 0 1px var(--lx-ink); }
[data-direction="cellar-light"] .mk-book-choice:not(:disabled) { cursor:pointer; } [data-direction="cellar-light"] .mk-book-choice:focus-visible { outline:3px solid var(--lx-accent); outline-offset:2px; }
[data-direction="cellar-light"] .mk-book-choice b { font-weight:700; } [data-direction="cellar-light"] .mk-book-choice span { font-size:.875rem; color:var(--lx-muted); }
[data-direction="cellar-light"] .mk-nights-pick select { min-height:2.75rem; min-width:6rem; padding:0 .6rem; font:inherit; color:var(--lx-ink); background:transparent; border:1.5px solid var(--lx-line); }
@media (prefers-reduced-motion:reduce) {
  [data-direction="cellar-light"] *, [data-direction="cellar-light"] *::before, [data-direction="cellar-light"] *::after { animation:none!important; transition:none!important; }
}

.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq { padding-block: var(--lx-sec-y); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-grid { display: grid; gap: clamp(2rem, 5cqi, 4.5rem); }
@container (min-width: 900px) { .mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; } }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-card { padding: clamp(1.1rem, 3.5cqi, 2.25rem); background: var(--sc-mat, var(--lx-paper)); border: 1px solid var(--lx-line); box-shadow: 0 30px 80px -60px rgb(30 15 25 / .55); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-steps { display: flex; gap: .4rem; list-style: none; margin: 0 0 1.5rem; padding: 0; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-steps li { flex: 1; min-width: 0; padding-top: .6rem; border-top: 3px solid var(--lx-line); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--lx-muted); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-steps li[aria-current="step"], .mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-steps li[data-done] { border-top-color: var(--lx-accent); color: var(--lx-ink); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-h { font-family: var(--lx-head); font-weight: var(--lx-head-w); font-size: clamp(1.5rem, 3.4cqi, 2rem); line-height: 1.1; margin: 0 0 1.25rem; outline: none; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-fields { display: grid; gap: 1.1rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq label, .mk-demo-site:where([data-direction="cellar-light"]) .mk-enq legend { display: grid; gap: .45rem; font-size: .8rem; font-weight: 700; letter-spacing: .04em; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq fieldset { border: 0; margin: 0; padding: 0; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq legend { margin-bottom: .5rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq :is(input, textarea) { font: inherit; font-weight: 400; letter-spacing: 0; min-height: 3rem; padding: .7rem .9rem; color: var(--lx-ink); background: var(--lx-paper); border: 1px solid color-mix(in srgb, var(--lx-ink) 34%, transparent); border-radius: 2px; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq :is(input, textarea):focus-visible { outline: 3px solid var(--lx-accent); outline-offset: 1px; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-chip { min-height: 2.75rem; padding: 0 1rem; border: 1px solid color-mix(in srgb, var(--lx-ink) 40%, transparent); border-radius: 2px; background: transparent; color: var(--lx-ink); font: 700 .78rem/1 var(--lx-body); letter-spacing: .06em; cursor: pointer; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-chip[aria-pressed="true"] { background: var(--lx-accent); border-color: var(--lx-accent); color: var(--lx-accent-ink); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-err { margin: 0; padding: .7rem .9rem; border-left: 3px solid #a3122a; background: color-mix(in srgb, #a3122a 8%, var(--lx-paper)); color: var(--lx-ink); font-size: .9rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-nav { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: space-between; margin-top: 1.5rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-review { margin: 0; display: grid; border-top: 1px solid var(--lx-ink); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-review > div { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1rem; padding: .7rem 0; border-bottom: 1px solid var(--lx-line); font-size: .92rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-review dt { color: var(--lx-muted); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-review dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-owner { margin-top: 1.25rem; padding: 1rem; border: 1px dashed var(--lx-line); font-size: .88rem; color: var(--lx-muted); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-owner b { color: var(--lx-ink); }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-enq-carried { margin:0 0 1.25rem; padding:.8rem 1rem; border-left:3px solid var(--lx-accent); background:color-mix(in srgb, var(--lx-accent) 10%, var(--lx-paper)); font-size:.92rem; line-height:1.45; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-carry { margin-top:1rem; justify-self:start; }
/* The room selector (DemoSite Rooms, xGallery layout "rooms"): a neutral base in the design's own tokens, so any stay
 * design can show its rooms, cabins or houses one at a time; a design's own rules (Assembly House) still win. */
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms { border:0; margin:0; padding:0; min-width:0; display:grid; gap:24px; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-legend { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-tabs { display:flex; flex-wrap:wrap; gap:8px; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-tab { position:relative; display:inline-flex; align-items:center; min-height:48px; padding:0 18px; border:1.5px solid var(--lx-line); font-family:var(--lx-head); font-weight:600; font-size:1.05rem; cursor:pointer; color:var(--lx-ink); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-tab input { position:absolute; inset:0; opacity:0; margin:0; cursor:pointer; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-tab:has(input:checked) { background:var(--lx-ink); border-color:var(--lx-ink); color:var(--lx-paper); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-tab:has(input:focus-visible) { outline:3px solid var(--lx-accent); outline-offset:2px; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-views { list-style:none; margin:0; padding:0; display:grid; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-view { grid-area:1 / 1; display:grid; grid-template-columns:minmax(0, 1.6fr) minmax(0, 1fr); gap:32px; align-items:end; visibility:hidden; opacity:0; transition:opacity .3s ease; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms:has(.lx-rooms-tab:nth-child(1) input:checked) .lx-rooms-view:nth-child(1),
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms:has(.lx-rooms-tab:nth-child(2) input:checked) .lx-rooms-view:nth-child(2),
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms:has(.lx-rooms-tab:nth-child(3) input:checked) .lx-rooms-view:nth-child(3),
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms:has(.lx-rooms-tab:nth-child(4) input:checked) .lx-rooms-view:nth-child(4) { visibility:visible; opacity:1; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-frame img { aspect-ratio:16 / 10; object-fit:cover; width:100%; display:block; border-radius:var(--lx-media-r, 0); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-name { font-family:var(--lx-head); font-size:clamp(1.8rem, 1.3rem + 1.6vw, 2.8rem); line-height:1.05; margin:0; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-facts { margin:12px 0 0; color:var(--lx-muted); font-size:1.02rem; line-height:1.55; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-rate { margin:16px 0 0; display:inline-block; padding:8px 14px; border:1.5px solid var(--lx-line); font-weight:700; font-size:.95rem; }
@media (max-width:819px) { .mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-view { grid-template-columns:1fr; gap:16px; } .mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-tab { flex:1 1 auto; justify-content:center; padding:0 12px; font-size:.95rem; } }
@media (prefers-reduced-motion:reduce) { .mk-demo-site:where([data-direction="cellar-light"]) .lx-rooms-view { transition:none; } }
/* Two step layouts four of the designs use had no rules of their own (live audit, 26 Oct: bare numerals and run-on
 * rows): the walking route (xSteps "route": Assembly House, House Party, Borough Stay) and the margin-numbered list
 * (xSteps "margin": Dry Course). A neutral base in the design's own tokens; a design's own rules still win. */
.mk-demo-site:where([data-direction="cellar-light"]) .lx-route { list-style:none; margin:clamp(1.5rem, 4cqi, 2.5rem) 0 0; padding:0; display:grid; gap:0; max-width:46rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-stop { position:relative; padding:0 0 1.75rem 2.25rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-stop::before { content:""; position:absolute; left:.45rem; top:1.1rem; bottom:0; width:2px; background:var(--lx-line); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-stop:last-child { padding-bottom:0; } .mk-demo-site:where([data-direction="cellar-light"]) .lx-stop:last-child::before { display:none; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-stop-pin { position:absolute; left:0; top:.3rem; width:1rem; height:1rem; border-radius:999px; background:var(--lx-paper); border:3px solid var(--lx-accent); box-sizing:border-box; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-stop .lx-h3 { margin:0; font-family:var(--lx-head); font-size:clamp(1.1rem, 2.4cqi, 1.35rem); line-height:1.25; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-stop .lx-body { margin:.35rem 0 0; color:var(--lx-muted); max-width:38em; line-height:1.6; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin { max-width:56rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-list { list-style:none; margin:clamp(1.5rem, 4cqi, 2.5rem) 0 0; padding:0; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-list > li { display:grid; grid-template-columns:3rem minmax(0, 1fr); gap:1rem; padding-block:1.4rem; border-top:1px solid var(--lx-line); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-list > li:last-child { border-bottom:1px solid var(--lx-line); }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-n { font:italic 400 1.4rem/1.1 var(--lx-head); color:var(--lx-accent); text-align:right; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-list .lx-h3 { margin:0; font-family:var(--lx-head); font-size:clamp(1.25rem, 2.6cqi, 1.6rem); line-height:1.2; }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-list .lx-body { margin:.45rem 0 0; color:var(--lx-muted); max-width:38em; line-height:1.65; }
@container (min-width:900px) { .mk-demo-site:where([data-direction="cellar-light"]) .lx-margin-list > li { grid-template-columns:5rem minmax(0, 1fr); gap:2rem; } }
.mk-demo-site:where([data-direction="cellar-light"]) .lx-margin + .lx-actions, .mk-demo-site:where([data-direction="cellar-light"]) .lx-margin .lx-actions { margin-top:2rem; }
/* The phone menu panel is solid paper: the shared panel is 94% paper over a backdrop blur, and a blur nested inside the
 * sticky header's own blur samples nothing, so the hero headline showed through behind the links (live audit, 26 Oct).
 * Left out for a design that colours its own panel (it would tie with that rule and, coming later, replace it). */
/* Its links keep their label on one line: eighteen of these designs hide the link number, which dropped the label into
 * the 2.25rem number column ("Build / a / stay", one word a line). Each part keeps its own column; a hidden number's
 * column takes no width. */
.mk-demo-site:where([data-direction="cellar-light"]) .mk-dh-panel-links > li > * { grid-template-columns: auto minmax(0, 1fr) auto; column-gap: .6rem; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-dh-panel-links .mk-dh-index { grid-column: 1; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-dh-panel-links > li > * > span:not(.mk-dh-index):not(.mk-dh-dot) { grid-column: 2; min-width: 0; }
.mk-demo-site:where([data-direction="cellar-light"]) .mk-dh-panel-links .mk-dh-dot { grid-column: 3; }
/* opening hours never widen a phone page: a long line wraps inside its own row */
.mk-demo-site:where([data-direction="cellar-light"]) .lx-hours li { flex-wrap:wrap; column-gap:12px; }
.mk-demo-site[data-direction="cellar-light"] .lx-hours li > span { min-width:0; overflow-wrap:anywhere; white-space:normal; }
/* Actions on a dark band (CTA bands, dark sections): a design's ink-filled primary button would vanish into an ink
 * band (independent review, Harbour Table menu: "the band provides no booking action"), so on dark it takes the accent. */
.mk-demo-site[data-direction="cellar-light"] .lx-on-dark .lx-btn--primary { background:var(--lx-accent); color:var(--lx-accent-ink, #111); box-shadow:none; }
.mk-demo-site[data-direction="cellar-light"] .lx-on-dark .lx-btn--secondary { background:transparent; color:currentColor; box-shadow:inset 0 0 0 1.5px currentColor; }
.mk-demo-site[data-direction="cellar-light"] .lx-on-dark .lx-btn--link { color:currentColor; }
