/* National Mustard Museum — "Yes, there really is a mustard museum."
   The museum's own wall text under the case lights. Remake 2026-10-04. */

@font-face { font-family: "Linden Hill"; src: url("/fonts/linden-hill-400.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Linden Hill"; src: url("/fonts/linden-hill-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Alegreya Sans"; src: url("/fonts/alegreya-sans-400.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Alegreya Sans"; src: url("/fonts/alegreya-sans-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Alegreya Sans"; src: url("/fonts/alegreya-sans-500.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Alegreya Sans"; src: url("/fonts/alegreya-sans-700.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }

:root {
  --wall: #2A102B;      /* cellar aubergine ground */
  --wall-2: #34112f;    /* a step lighter, for the visitor panel */
  --plum: #56004e;      /* logo purple: rules, hover, button on yellow */
  --cream: #F7F4E9;     /* reading text on the wall */
  --mustard: #F6CF12;   /* logo mustard: primary fill, italic lines */
  --ink: #231f20;       /* text on mustard and yellow */
  --lav: #c9b0c4;       /* credit lines */
  --brass: #b08a2e;     /* vitrine line only */
  --yellow: #F6CF12;    /* upstairs band */

  --display: "Linden Hill", "Iowan Old Style", "Palatino Linotype", serif;
  --text: "Alegreya Sans", "Gill Sans", "Trebuchet MS", sans-serif;

  --wrap: 1320px;
  --gut: clamp(20px, 4vw, 56px);
  --sp-1: 8px; --sp-2: 16px; --sp-3: 24px; --sp-4: 40px; --sp-5: 64px; --sp-6: 112px;

  --ease: cubic-bezier(.22, .9, .3, 1);
  --t-fast: 160ms; --t-mid: 280ms; --t-slow: 700ms;
  --header-h: 76px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--header-h) + 12px); }
body {
  margin: 0; background: var(--wall); color: var(--cream);
  font: 400 19px/1.6 var(--text); font-kerning: normal;
  text-rendering: optimizeLegibility;
}
img { display: block; max-width: 100%; height: auto; }
figure { margin: 0; }
[hidden] { display: none !important; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .2em; }
a:hover { color: var(--mustard); }
p { margin: 0 0 1em; }
h1, h2, h3 { font-family: var(--display); font-weight: 400; margin: 0; line-height: 1.04; text-wrap: balance; }
h1 { font-size: clamp(42px, 5vw, 72px); line-height: 1; letter-spacing: -.005em; }
h2 { font-size: clamp(34px, 3.6vw, 50px); }
h3 { font-size: clamp(26px, 2.4vw, 36px); line-height: 1.1; }
em, .it { font-style: italic; }
:focus-visible { outline: 3px solid var(--mustard); outline-offset: 3px; }
.on-yellow :focus-visible, .band-yellow :focus-visible { outline-color: var(--plum); }

.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding-inline: var(--gut); }
.vh { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--mustard); color: var(--ink); padding: 10px 16px; font-weight: 700; }
.skip:focus { top: 12px; }

/* ── Buttons ─────────────────────────────────────────────── */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5em;
  min-height: 48px; padding: 10px 22px; max-width: 100%;
  font: 700 17px/1.2 var(--text); text-decoration: none; text-align: center;
  border: 1px solid var(--mustard); background: var(--mustard); color: var(--ink);
  transition: background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);
}
.btn:hover { background: var(--cream); border-color: var(--cream); color: var(--ink); }
.btn:active { transform: translateY(1px); }
.btn--line { background: transparent; color: var(--cream); border-color: rgba(246, 234, 208, .55); }
.btn--line:hover { background: transparent; color: var(--mustard); border-color: var(--mustard); }
.band-yellow .btn { background: var(--plum); border-color: var(--plum); color: var(--cream); }
.band-yellow .btn:hover { background: var(--ink); border-color: var(--ink); color: var(--yellow); }
.band-yellow .btn--line { background: transparent; color: var(--ink); border-color: var(--ink); }
.band-yellow .btn--line:hover { background: transparent; color: var(--plum); border-color: var(--plum); }
.actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.tlink { font-weight: 500; text-decoration: underline; text-decoration-color: var(--mustard); }
.tlink:hover { color: var(--mustard); }
.band-yellow .tlink { text-decoration-color: var(--plum); }
.band-yellow .tlink:hover { color: var(--plum); }

/* ── Header ──────────────────────────────────────────────── */
.hdr { position: sticky; top: 0; z-index: 50; background: var(--wall); border-bottom: 1px solid rgba(176, 138, 46, .45); }
.hdr__in { display: flex; align-items: center; gap: 24px; min-height: var(--header-h); }
.mark { display: flex; flex-direction: column; text-decoration: none; line-height: 1; color: var(--cream); flex: none; }
.mark__small { font: italic 400 15px/1 var(--display); color: var(--mustard); letter-spacing: .02em; }
.mark__big { font: 400 26px/1.05 var(--display); white-space: nowrap; }
.mark:hover { color: var(--cream); }
.mark:hover .mark__big { color: var(--mustard); }

.nav { margin-left: auto; }
.nav__list { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 4px; }
.nav__list > li { position: relative; display: flex; align-items: center; }
.nav__list > li > a { display: block; padding: 12px 10px; font-weight: 500; font-size: 17px; text-decoration: none; }
.nav__list > li > a[aria-current="page"] { color: var(--mustard); text-decoration: underline; text-decoration-color: var(--mustard); }
.nav__btn {
  display: grid; place-items: center; width: 28px; height: 40px; margin-left: -6px; padding: 0;
  background: none; border: 0; color: var(--lav); cursor: pointer;
}
.nav__btn svg { width: 12px; height: 12px; transition: transform var(--t-fast) var(--ease); }
.nav__group.is-open .nav__btn svg { transform: rotate(180deg); }
.nav__btn:hover { color: var(--mustard); }
.nav__panel {
  position: absolute; top: 100%; left: -12px; min-width: 300px; padding: 10px 0;
  background: var(--wall-2); border: 1px solid var(--brass);
  opacity: 0; visibility: hidden; transform: translateY(6px);
  transition: opacity var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), visibility 0s linear var(--t-fast);
}
.nav__group:focus-within .nav__panel,
.no-js .nav__group:hover .nav__panel,
.nav__group.is-open .nav__panel { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.js .nav__group:not(.is-open) .nav__panel { opacity: 0; visibility: hidden; transform: translateY(6px); }
.nav__panel a { display: block; padding: 10px 20px; text-decoration: none; }
.nav__panel a strong { display: block; font: 400 22px/1.15 var(--display); color: var(--cream); }
.nav__panel a span { display: block; font-size: 15px; color: var(--lav); line-height: 1.35; }
.nav__panel a:hover strong, .nav__panel a:focus-visible strong { color: var(--mustard); }
.nav__panel a:hover { background: rgba(86, 0, 78, .55); }
.nav__floor { margin: 0 20px 6px; padding-bottom: 6px; font-style: normal; font-size: 15px; color: var(--mustard); border-bottom: 1px solid rgba(176, 138, 46, .4); }

.hdr__call { font-weight: 700; text-decoration: none; white-space: nowrap; padding: 12px 4px; }
.hdr__call:hover { color: var(--mustard); }
.hdr__cta { min-height: 44px; padding: 8px 18px; font-size: 16px; white-space: nowrap; }
.menu-btn {
  display: none; align-items: center; gap: 8px; min-height: 44px; padding: 8px 14px;
  background: transparent; color: var(--cream); border: 1px solid rgba(246, 234, 208, .55);
  font: 700 16px/1 var(--text); cursor: pointer;
}
.menu-btn__lines { display: grid; gap: 4px; }
.menu-btn__lines i { display: block; width: 16px; height: 1.5px; background: currentColor; }

@media (max-width: 1180px) { .hdr__cta { display: none; } }
@media (max-width: 960px) { .nav__list > li > a { padding-inline: 8px; font-size: 16px; } .hdr__in { gap: 14px; } .mark__big { font-size: 23px; } }
@media (max-width: 879px) {
  .nav { display: none; }
  .menu-btn { display: inline-flex; }
  .hdr__call { margin-left: auto; padding: 10px 6px; }
  .hdr__call .long { display: none; }
  :root { --header-h: 64px; }
  .mark__big { font-size: 21px; }
  .mark__small { font-size: 13px; }
}
@media (min-width: 880px) { .hdr__call .short { display: none; } }
@media (max-width: 359px) { .mark__big { font-size: 18px; } .menu-btn { padding-inline: 10px; } }

/* Phone sheet */
.sheet {
  position: fixed; inset: 0; z-index: 80; display: flex; flex-direction: column;
  background: var(--wall); overflow-y: auto; overscroll-behavior: contain;
  opacity: 0; transform: translateY(-12px);
  transition: opacity var(--t-mid) var(--ease), transform var(--t-mid) var(--ease);
}
.sheet.is-open { opacity: 1; transform: none; }
.sheet__top { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding-inline: var(--gut); border-bottom: 1px solid rgba(176, 138, 46, .45); }
.sheet__close { min-height: 44px; padding: 8px 14px; background: none; color: var(--cream); border: 1px solid rgba(246, 234, 208, .55); font: 700 16px/1 var(--text); cursor: pointer; }
.sheet__body { padding: 24px var(--gut) 32px; display: grid; gap: 28px; }
.sheet__floor { margin: 0 0 8px; font: 500 17px/1.3 var(--text); color: var(--mustard); }
.sheet ul { list-style: none; margin: 0; padding: 0; }
.sheet li a { display: block; padding: 10px 0; font: 400 28px/1.15 var(--display); text-decoration: none; border-bottom: 1px solid rgba(201, 176, 196, .18); }
.sheet li a[aria-current="page"] { color: var(--mustard); }
.sheet__foot { margin-top: auto; padding: 20px var(--gut) 32px; border-top: 1px solid rgba(176, 138, 46, .45); color: var(--lav); font-size: 17px; }
.sheet__foot .btn { width: 100%; margin-bottom: 16px; }
html.sheet-open { overflow: hidden; }

/* ── Vitrine (photo set into the wall) ───────────────────── */
.vitrine { position: relative; background: transparent; padding: 0; overflow: hidden; }

.vitrine img { width: 100%; height: 100%; object-fit: cover; }
.band-yellow .vitrine { background: var(--plum); }

/* Tombstone label */
.label h3 { margin-bottom: 12px; }
.label p { max-width: 58ch; }
.credit { font-style: normal; font-size: 16px; line-height: 1.45; color: var(--lav); margin: 0; }
.band-yellow .credit { color: var(--plum); }
.quote { font: italic 400 clamp(24px, 2.4vw, 34px)/1.25 var(--display); color: var(--mustard); margin: 0; }

/* ── Sections ────────────────────────────────────────────── */
.sec { padding-block: clamp(56px, 6vw, 88px); border-top: 1px solid rgba(176, 138, 46, .35); }
.sec__head { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--sp-4); align-items: end; margin-bottom: clamp(36px, 5vw, 64px); }
.sec__head p { margin: 0; max-width: 46ch; color: var(--cream); }
.floor { display: block; font: 500 17px/1.3 var(--text); color: var(--mustard); margin-bottom: 14px; }
.band-yellow { background: var(--yellow); color: var(--ink); border-top: 0; }
.band-yellow .floor { color: var(--plum); }
.band-yellow .sec__head p { color: var(--ink); }

/* ── Inner page opening: H1 beside its first vitrine ─────── */
.opening { padding-block: clamp(40px, 6vw, 88px) clamp(48px, 6vw, 88px); background: var(--wall); }
.opening__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: clamp(28px, 4vw, 64px); align-items: end; }
.opening h1 { font-size: clamp(42px, 4.7vw, 68px); }
.opening__lede { margin: 22px 0 0; font-size: clamp(19px, 1.5vw, 21px); max-width: 44ch; }
.opening .actions { margin-top: 26px; }
.opening .vitrine { aspect-ratio: 4 / 3; }
.opening .vitrine--wide { aspect-ratio: 16 / 10; }
.band-yellow.opening { background: var(--yellow); }
@media (max-width: 899px) {
  .opening__grid { grid-template-columns: 1fr; gap: 28px; }
  .opening .vitrine { aspect-ratio: 3 / 2; }
  .opening .actions .btn { flex: 1 1 100%; }
}

/* ── Exhibit labels ──────────────────────────────────────── */
.exhibit { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(24px, 4vw, 64px); align-items: center; }
.exhibit + .exhibit { margin-top: clamp(48px, 6vw, 88px); }
.exhibit--flip .vitrine { order: 2; }
.exhibit .vitrine { aspect-ratio: 3 / 2; }
.ruled { list-style: none; margin: clamp(48px, 6vw, 88px) 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(28px, 4vw, 64px); }
.ruled > li { padding: 26px 0 30px; border-top: 1px solid rgba(176, 138, 46, .55); }
.ruled h3 { margin-bottom: 10px; }
.ruled p { margin-bottom: 10px; }
@media (max-width: 899px) {
  .exhibit { grid-template-columns: 1fr; }
  .exhibit--flip .vitrine { order: 0; }
  .ruled { grid-template-columns: 1fr; }
  .sec__head { grid-template-columns: 1fr; gap: 16px; }
}

.exhibit .vitrine--case { aspect-ratio: 16 / 9; }
.cases { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 48px); }
.cases .vitrine { aspect-ratio: 16 / 10; margin-bottom: 16px; }
.cases h3 { font-size: clamp(24px, 2vw, 30px); margin-bottom: 6px; }
@media (max-width: 899px) { .cases { grid-template-columns: 1fr; } }

/* ── Red Sox story: dated lines ──────────────────────────── */
.story { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.story .vitrine { aspect-ratio: 4 / 5; position: sticky; top: calc(var(--header-h) + 24px); }
.dates { list-style: none; margin: 0; padding: 0; }
.dates li { display: grid; grid-template-columns: 5.2ch minmax(0, 1fr); gap: 20px; padding: 22px 0; border-top: 1px solid rgba(176, 138, 46, .45); }
.dates b { font: 400 clamp(26px, 2.4vw, 34px)/1 var(--display); color: var(--mustard); font-weight: 400; }
.dates p { margin: 0; }
.story .quote { margin-top: 36px; }
@media (max-width: 899px) {
  .story { grid-template-columns: 1fr; }
  .story .vitrine { position: relative; top: 0; aspect-ratio: 3 / 2; }
  .dates li { grid-template-columns: 1fr; gap: 6px; }
}

/* ── Blind-tasting wall in type ──────────────────────────── */
.typewall { text-align: center; }
.typewall__sample { font-style: italic; color: var(--lav); margin-bottom: 18px; }
.typewall__champ { font: 400 clamp(34px, 3.4vw, 48px)/1.08 var(--display); color: var(--mustard); margin: 0; overflow-wrap: anywhere; }
.typewall__title { font: italic 400 clamp(20px, 1.8vw, 26px)/1.3 var(--display); margin: 14px 0 40px; }
.typewall__shelf { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; padding-top: 26px; border-top: 1px solid rgba(176, 138, 46, .55); max-width: 980px; margin: 0 auto; }
.typewall__shelf span { font: 400 clamp(22px, 2.2vw, 30px)/1.2 var(--display); }
.typewall__shelf span i { color: var(--lav); font-size: .7em; }

/* ── Upstairs (yellow) ───────────────────────────────────── */
.jars { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 40px); }
.jars--six { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: clamp(36px, 4vw, 56px); }
.jar a { display: grid; gap: 14px; text-decoration: none; color: var(--ink); }
.jar .vitrine { width: 100%; max-width: 220px; aspect-ratio: 1; padding: 6px; }
.jar .vitrine::after { inset: 6px; }
.jar h3 { font-size: clamp(22px, 2vw, 28px); }
.jar a:hover h3 { color: var(--plum); text-decoration: underline; text-decoration-thickness: 1px; }
.jar p { margin: 0; font-size: 17px; }
.upstairs { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(28px, 4vw, 64px); align-items: start; }
.upstairs .vitrine { aspect-ratio: 3 / 2; }
.upstairs__note { margin-top: 28px; padding-top: 18px; border-top: 1px solid rgba(86, 0, 78, .35); font-size: 17px; }
@media (max-width: 899px) {
  .upstairs { grid-template-columns: 1fr; }
  .jars, .jars--six { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 479px) { .jars, .jars--six { grid-template-columns: 1fr; } .jar .vitrine { max-width: 200px; } }

.cats { list-style: none; margin: 0; padding: 0; }
.cats li a { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr) auto; gap: 20px; align-items: baseline; padding: 20px 0; border-top: 1px solid rgba(86, 0, 78, .4); text-decoration: none; color: var(--ink); }
.cats li:last-child a { border-bottom: 1px solid rgba(86, 0, 78, .4); }
.cats b { font: 400 clamp(26px, 2.6vw, 38px)/1.05 var(--display); font-weight: 400; }
.cats span { font-size: 17px; }
.cats em { font-style: normal; font-weight: 700; white-space: nowrap; }
.cats li a:hover b, .cats li a:focus-visible b { color: var(--plum); }
@media (max-width: 719px) { .cats li a { grid-template-columns: 1fr; gap: 4px; } .cats em { white-space: normal; } }

/* ── Visitor panel + "Who's coming?" ─────────────────────── */
.panel { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.facts { margin: 0; }
.facts div { display: grid; grid-template-columns: 7.5em minmax(0, 1fr); gap: 16px; padding: 14px 0; border-top: 1px solid rgba(176, 138, 46, .4); }
.facts dt { font-style: normal; color: var(--lav); }
.facts dd { margin: 0; }
.dijon { margin-top: 28px; }
.who { background: var(--wall-2); border: 1px solid rgba(176, 138, 46, .6); padding: clamp(22px, 3vw, 40px); }
.who h2 { font-size: clamp(32px, 3.4vw, 48px); }
.who__ask { margin: 8px 0 22px; color: var(--lav); }
.who fieldset { border: 0; margin: 0; padding: 0; min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.who label { position: relative; display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 10px 14px; border: 1px solid rgba(246, 234, 208, .35); cursor: pointer; font-weight: 500; line-height: 1.25; transition: border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease); }
.who input { appearance: none; -webkit-appearance: none; flex: none; width: 20px; height: 20px; margin: 0; border: 1px solid var(--cream); border-radius: 50%; display: grid; place-items: center; }
.who input::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--ink); transform: scale(0); transition: transform var(--t-fast) var(--ease); }
.who input:checked { background: var(--mustard); border-color: var(--mustard); }
.who input:checked::after { transform: scale(1); }
.who input:focus-visible { outline: 3px solid var(--mustard); outline-offset: 3px; }
.who label:hover { border-color: var(--mustard); }
.who label:has(input:checked) { border-color: var(--mustard); background: rgba(255, 207, 1, .08); }
.who__answers { margin-top: 24px; }
.who__answer { padding-top: 20px; border-top: 1px solid var(--brass); }
.who__answer + .who__answer { margin-top: 24px; }
.who__answer h3 { color: var(--mustard); margin-bottom: 10px; }
.who__answer p { max-width: 54ch; }
.who__answer .for { display: block; font: italic 400 16px/1.3 var(--text); color: var(--lav); margin-bottom: 6px; }
.js .who__answer .for { display: none; }
.js .who__answer.is-entering { animation: answer-in var(--t-mid) var(--ease) both; }
@keyframes answer-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.no-js .who fieldset { display: none; }
@media (max-width: 899px) { .panel { grid-template-columns: 1fr; } }
@media (max-width: 559px) { .who fieldset { grid-template-columns: 1fr; } .facts div { grid-template-columns: 1fr; gap: 2px; } .who__answer .btn { flex: 1 1 100%; } }

/* ── Closing call (big words, each with its value) ───────── */
.ways { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 4vw, 56px); margin-top: clamp(32px, 4vw, 56px); }
.ways a, .ways div.way { display: block; text-decoration: none; padding-top: 18px; border-top: 1px solid var(--brass); }
.ways b { display: block; font: 400 32px/1.1 var(--display); font-weight: 400; color: var(--cream); }
.ways span { display: block; margin-top: 10px; font-size: clamp(18px, 1.6vw, 21px); font-weight: 500; overflow-wrap: anywhere; }
.ways a:hover b { color: var(--mustard); }
.ways small { display: block; color: var(--lav); font-size: 16px; font-style: italic; margin-top: 4px; }
.closing .actions { margin-top: clamp(32px, 4vw, 48px); }
@media (max-width: 899px) { .ways { grid-template-columns: 1fr; } .ways b { font-size: clamp(44px, 13vw, 64px); } .closing .btn { flex: 1 1 100%; } }

/* ── Prose blocks, two-column text ───────────────────────── */
.cols2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 4vw, 64px); }
.prose p, .prose li { max-width: 62ch; }
.prose ul { padding-left: 1.1em; margin: 0 0 1em; }
.prose li { margin-bottom: 6px; }
@media (max-width: 899px) { .cols2 { grid-template-columns: 1fr; } }

/* FAQ placards */
.qa { border-top: 1px solid rgba(176, 138, 46, .55); }
.qa details { border-bottom: 1px solid rgba(176, 138, 46, .55); }
.qa summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 20px; align-items: baseline; padding: 22px 0; font: 400 clamp(24px, 2.4vw, 32px)/1.15 var(--display); }
.qa summary::-webkit-details-marker { display: none; }
.qa summary::after { content: "+"; font-family: var(--text); color: var(--mustard); font-size: 26px; flex: none; transition: transform var(--t-fast) var(--ease); }
.qa details[open] summary::after { transform: rotate(45deg); }
.qa summary:hover { color: var(--mustard); }
.qa details > div { padding: 0 0 22px; max-width: 64ch; }

/* People (contact) */
.people { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 48px); }
.people li { padding-top: 20px; border-top: 1px solid var(--brass); }
.people h3 { margin-bottom: 6px; }
.people .role { font-style: normal; color: var(--lav); margin-bottom: 14px; }
.people a { overflow-wrap: anywhere; }
@media (max-width: 899px) { .people { grid-template-columns: 1fr; } }

/* Film */
.film { aspect-ratio: 16 / 9; }
.film iframe { width: 100%; height: 100%; border: 0; display: block; position: relative; z-index: 1; }

/* Support note */
.support { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(24px, 4vw, 56px); align-items: end; }
@media (max-width: 899px) { .support { grid-template-columns: 1fr; } }

/* ── Footer ──────────────────────────────────────────────── */
.ftr { background: #200a1e; border-top: 1px solid var(--brass); padding-block: 48px 32px; font-size: 17px; }
.ftr__top { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 5vw, 80px); }
.ftr__name { font: 400 32px/1.1 var(--display); margin: 0 0 22px; }
.ftr__name i { display: block; font-size: .42em; color: var(--mustard); margin-bottom: 8px; }
.ftr address { font-style: normal; line-height: 1.6; }
.ftr__social { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 18px; }
.ftr__mark { font: italic 400 clamp(30px, 3.4vw, 50px)/1.1 var(--display); color: var(--mustard); margin: 0 0 24px; }
.ftr__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 24px; }
.ftr__links h2 { font: italic 400 18px/1.3 var(--display); color: var(--lav); margin: 0 0 6px; grid-column: span 1; }
.ftr__links ul { list-style: none; margin: 0; padding: 0; }
.ftr__links li a { display: inline-block; padding: 5px 0; text-decoration: none; }
.ftr__links li a:hover { text-decoration: underline; }
.ftr__split { margin-top: clamp(36px, 4vw, 56px); padding-top: 22px; border-top: 1px solid rgba(176, 138, 46, .45); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; color: var(--lav); font-size: 16px; }
.ftr__split p { margin: 0; }
.ftr__note { margin-top: 28px; font-size: 15px; color: var(--lav); }
.ftr__note p { margin: 0 0 6px; }
@media (max-width: 899px) { .ftr__top, .ftr__split { grid-template-columns: 1fr; } }

/* ── Sticky action (shared component, phone only) ────────── */
:root { --sticky-action-h: 68px; }
.sticky-action {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
  display: flex; gap: 8px; min-height: var(--sticky-action-h);
  padding: 9px 12px calc(9px + env(safe-area-inset-bottom));
  background: var(--wall); border-top: 1px solid var(--brass);
  transition: transform var(--t-mid) var(--ease), opacity var(--t-mid) var(--ease);
}
.sticky-action a { display: flex; flex: 1 1 0; align-items: center; justify-content: center; min-height: 48px; padding: 0 10px; border: 1px solid rgba(246, 234, 208, .55); color: var(--cream); font-weight: 700; font-size: 16px; line-height: 1.15; text-align: center; text-decoration: none; }
.sticky-action a.sticky-action__offer { flex-grow: 1.3; background: var(--mustard); border-color: var(--mustard); color: var(--ink); }
.sticky-action[data-state="hidden"] { opacity: 0; pointer-events: none; transform: translateY(110%); }
html.has-sticky-action { scroll-padding-bottom: calc(var(--sticky-action-h) + 16px); }
@media (min-width: 880px) { .sticky-action.sticky-action--phone-only { display: none; } }
@media (max-width: 879px) { html.has-sticky-action body { padding-bottom: var(--sticky-action-h); } }

/* 404 */
.lost { min-height: 60vh; }

/* ── Reduced motion ──────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .story .vitrine { position: relative; top: 0; }
}

@media (max-width: 479px) {
  body { font-size: 17px; }
  .wall__cols > div { font-size: 17px; }
  .btn { padding-inline: 16px; }
}

/* Astra cabinet direction — original objects, clear labels, two real floors. */
:root { --wrap: 1376px; --gut: clamp(20px, 3.4vw, 48px); --paper: #F7F4E9; --muted-ink: #68556A; --lav: #D4C4D2; }
::selection { background: var(--mustard); color: var(--wall); }
body { overflow-wrap: break-word; }
button,input,select { font-family: var(--text); }
.hdr { border-bottom-color: rgba(246,207,18,.45); }
.hdr__in { max-width: none; }
.mark__small { font-style: normal; }
.cabinet-hero { display:grid; grid-template-columns:38% 62%; min-height:580px; }
.cabinet-hero__intro { padding:56px clamp(30px,3.4vw,56px); display:flex; align-items:flex-start; flex-direction:column; justify-content:center; }
.place { font-size:18px; color:var(--lav); margin:0 0 24px; }
.cabinet-hero h1 { font-size:clamp(56px,5vw,76px); line-height:1.02; max-width:7.1em; text-wrap:initial; margin-bottom:32px; }
.hero-aside { font:italic 22px/1.2 var(--display); color:var(--mustard); margin:32px 0 0; }
.cabinet-hero__image { min-height:580px; border-left:1px solid var(--mustard); }
.cabinet-hero__image img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:50% 50%; }
.visitor-strip { background:var(--paper); color:var(--wall); border-bottom:1px solid #d4c9c7; padding:19px 0; font-weight:500; }
.visitor-strip .wrap { display:flex; justify-content:space-between; gap:14px 24px; flex-wrap:wrap; }
.visitor-strip a:hover {color:var(--plum);}
.paper { background:var(--paper); color:var(--wall); border-top-color:#d4c9c7; }
.paper .floor,.paper .credit,.paper .facts dt,.paper .people .role {color:var(--muted-ink);}
.paper .sec__head p {color:var(--wall);}
.paper a:hover {color:var(--plum);}
.paper .btn {background:var(--wall);border-color:var(--wall);color:var(--paper);}
.paper .btn:hover {background:var(--plum);color:var(--paper);}
.paper .btn--line {background:transparent;color:var(--wall);}
.paper .tlink {text-decoration-color:var(--plum);}
.paper :focus-visible {outline-color:var(--plum);}
.paper .quote,.paper .dates b {color:var(--plum);}
.paper .qa summary::after {color:var(--plum);}
.paper .qa summary:hover {color:var(--plum);}
.paper .ways b {color:var(--wall);}
.paper .ways small {color:var(--muted-ink);}
.sec__head {margin-bottom:40px;}
.object-label {padding-top:18px;}
.object-label h3 {margin-bottom:8px;}
.object-label p {max-width:46ch; margin:0; font-size:18px;}
.cabinet-displays {display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.45fr) minmax(0,1.1fr);gap:32px;align-items:start;}
.cabinet-context {position:sticky;top:calc(var(--header-h) + 24px);padding-top:16px;}
.cabinet-context__photo {aspect-ratio:1.5;overflow:hidden;margin-bottom:16px;}
.cabinet-context__photo img {width:100%;height:100%;object-fit:cover;}
.cabinet-context__caption {font-size:17px;line-height:1.4;margin-bottom:16px;}
.cabinet-context .tlink {font-size:18px;display:inline-block;min-height:44px;}
.cabinet-object {min-width:0;perspective:1100px;}
.cabinet-object--jars {padding-top:56px;}
.cabinet-object__photo {transform-origin:50% 80%;transition:transform var(--t-mid) var(--ease);}
.cabinet-object--pots .vitrine {aspect-ratio:1.5;}
.cabinet-object--pots img {object-position:56% 50%;}
.cabinet-object--jars .vitrine {aspect-ratio:1.7;}
.cabinet-object .object-label {position:relative;min-height:215px;border-top:2px solid transparent;margin-top:16px;padding-top:12px;}
.cabinet-object.is-selected .object-label {border-top-color:var(--plum);}
.cabinet-detail {margin-top:12px;}
.cabinet-detail summary {list-style:none;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;font-size:17px;cursor:pointer;}
.cabinet-detail summary::-webkit-details-marker {display:none;}
.cabinet-detail__sign {width:20px;height:20px;position:relative;flex-shrink:0;}
.cabinet-detail__sign::before,.cabinet-detail__sign::after {content:"";position:absolute;background:currentColor;top:9px;left:3px;width:14px;height:1px;}
.cabinet-detail__sign::after {transform:rotate(90deg);}
.cabinet-detail[open] .cabinet-detail__sign::after {transform:none;}
.cabinet-detail p {font-size:17px;line-height:1.45;padding:0 0 8px;}
.cabinet-detail summary:focus-visible {outline:2px solid var(--plum);outline-offset:4px;}
.cabinet-detail summary:active {color:var(--plum);}
.cabinet-object .object-view img {transform:none;transition:none;}
@media (hover:hover) and (pointer:fine) {
 .cabinet-detail summary:hover {color:var(--plum);text-decoration:underline;text-underline-offset:4px;}
}
@media (prefers-reduced-motion:no-preference) {
 .cabinet-ready[data-selected]:not([data-selected=""]) .cabinet-object:not(.is-selected) .cabinet-object__photo {transform:translate3d(0,6px,-24px) rotateY(-1.25deg);}
 .cabinet-ready .cabinet-object.is-selected .cabinet-object__photo {transform:translate3d(0,-4px,16px);}
}
.keyboard-ui .cabinet-object__photo {transition:none;}
.film-invitation {display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:32px;padding-top:28px;border-top:1px solid rgba(247,244,233,.25);}
.film-invitation h3 {font-size:30px;max-width:28ch;}
.film-invitation .floor {margin-bottom:8px;}
.film-invitation .tlink {flex-shrink:0;min-height:44px;display:flex;align-items:center;}
.section-end {display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:40px;}
.section-end p {margin:0;font-size:17px;color:var(--muted-ink);}
.object-view {position:relative;display:block;width:100%;height:100%;color:var(--paper);overflow:hidden;}
.object-view img {transition:transform 180ms var(--ease);}
.enlarge-label {position:absolute;bottom:12px;right:12px;padding:7px 12px;background:var(--wall);color:var(--paper);font:500 15px/1.2 var(--text);}
@media (hover:hover) and (pointer:fine) {.object-view:hover img {transform:scale(1.015);}.object-view:hover .enlarge-label {background:var(--mustard);color:var(--wall);}}
.object-view:focus-visible {outline-offset:-5px;outline:3px solid var(--mustard);}
.floor-pair {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:56px;align-items:start;}
.floor-pair article:nth-child(2) {padding-top:72px;}
.floor-pair .vitrine {aspect-ratio:1.5;}
.floor-label {padding-top:24px;}
.floor-label p {max-width:42ch;margin:12px 0 18px;}
.story-edit {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:64px;align-items:center;}
.story-edit__image .vitrine {aspect-ratio:1.3;}
.story-edit__image .vitrine img {object-position:30% 50%;}
.story-edit__image .credit {margin-top:12px;}
.story-edit h2 {margin-bottom:24px;}
.story-edit p {max-width:57ch;}
.history-ribbon {list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;border-top:1px solid #c8bcc6;}
.history-ribbon li {padding-top:20px;}
.history-ribbon b {display:block;font:400 34px/1 var(--display);margin-bottom:10px;}
.history-ribbon span {font-size:17px;}
.competition-section {padding-block:48px;}
.competition {display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.competition h2 {font-size:40px;max-width:13em;}
.competition p {margin-bottom:10px;}
.visit-intro h2 {margin-bottom:24px;}
.visit-intro > p {max-width:36ch;}
.visit-intro .facts {margin:32px 0 22px;}
.paper .who {background:var(--wall);color:var(--paper);border:0;}
.paper .who .btn {background:var(--mustard);color:var(--wall);border-color:var(--mustard);}
.paper .who .btn--line {background:transparent;color:var(--paper);border-color:var(--lav);}
.paper .who a:hover {color:var(--mustard);}
.paper .who .btn:hover {background:var(--paper);color:var(--wall);}
.paper .who .tlink {text-decoration-color:var(--mustard);}
.paper .who :focus-visible {outline-color:var(--mustard);}
.who {padding:32px;}
.who__answer h3 {font-size:30px;}
.who__answer + .who__answer {margin-top:0;}
.no-js .who__answer + .who__answer {margin-top:24px;}
.shop-selection .jars {gap:48px;}
.jar .vitrine,.upstairs .jar .vitrine {max-width:none;aspect-ratio:1;padding:0;background:#fff;}
.jar .vitrine img {object-fit:contain;}
.jar .vitrine::after {display:none;}
.jar a {gap:16px;}
.jar h3 {font-size:30px;max-width:17ch;}
.jar p {font-size:18px;max-width:31ch;}
.paper .jar a {color:var(--wall);}
.retail-note {font-size:16px;max-width:70ch;margin:28px 0 0;}
.arrival-section {padding-block:48px;}
.arrival {display:flex;justify-content:space-between;gap:32px;align-items:center;}
.arrival h2 {font-size:38px;}
.arrival p {margin:16px 0 0;}
.arrival .actions {max-width:240px;}
.opening {padding-block:48px 56px;}
.opening__grid {grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:center;}
.opening .vitrine {aspect-ratio:1.3;}
.opening__lede {font-size:20px;line-height:1.5;max-width:39ch;}
.page-museum .opening .vitrine {aspect-ratio:1.5;}
.page-shop .opening__grid {grid-template-columns:minmax(0,5fr) minmax(0,7fr);}
.page-shop .opening h1 {max-width:8em;}
.page-museum .cases {grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,1fr);align-items:start;}
.page-museum .cases > :nth-child(2) {padding-top:48px;}
.page-museum .cases .vitrine {aspect-ratio:1.3;}
.page-museum .ruled {margin-top:48px;}
.page-museum .exhibit .vitrine {aspect-ratio:auto;}
.page-museum .exhibit .vitrine img {height:auto;}
.page-museum .history-copy {margin-top:24px;}
.event-competition {gap:12px;max-width:960px;margin-inline:auto;}
.event-competition .floor,.event-competition .typewall__sample {grid-column:1/-1;}
.event-competition .typewall__champ {color:var(--wall);}
.event-competition .typewall__title {margin:0;font-style:normal;}
.event-competition .actions {grid-column:1/-1;justify-content:flex-start!important;margin-top:16px;}
.page-recipes .ruled {margin-top:0;}
.page-recipes .ruled > li {padding-block:28px;}
.page-contact .people {grid-template-columns:repeat(3,minmax(0,1fr));}
.people .role {color:var(--muted-ink);}
.facts dd {overflow-wrap:anywhere;}
.ways {margin-top:28px;}
.ways b {font-size:32px;}
.ways small {font-style:normal;}
.ftr {background:var(--wall);}
.ftr__top {grid-template-columns:1.2fr 1fr;gap:64px;}
.ftr__links h2 {font:500 18px/1.3 var(--text);margin-bottom:12px;}
.ftr__name {font-size:32px;max-width:none;margin-bottom:20px;}
.ftr__split {margin-top:32px;}
.ftr__note {font-size:14px;line-height:1.4;margin-top:22px;}
.static-nav {display:flex;gap:12px 24px;flex-wrap:wrap;padding:16px 24px;background:var(--paper);color:var(--wall);}
.no-js .menu-btn {display:none;}
.no-js .hdr {position:relative;}
.gallery-dialog {width:min(1280px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:16px;background:var(--paper);color:var(--wall);border:0;overflow:auto;}
.gallery-dialog::backdrop {background:rgba(24,6,25,.9);}
.gallery-dialog[open] {animation:gallery-in 220ms var(--ease);}
@keyframes gallery-in {from {opacity:0;transform:scale(.98);}to {opacity:1;transform:none;}}
.gallery-dialog__bar {display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:12px;}
.gallery-dialog__bar p {margin:0;font-size:17px;}
.gallery-dialog button {min-width:48px;min-height:44px;background:var(--wall);color:var(--paper);border:0;padding:10px 16px;font:500 17px var(--text);cursor:pointer;}
.gallery-dialog img {width:100%;height:min(68vh,760px);object-fit:contain;background:var(--wall);}
.gallery-dialog__foot {display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:16px;}
.gallery-dialog__foot p {margin:0;max-width:70ch;font-size:18px;line-height:1.4;}
.gallery-dialog__controls {display:flex;gap:8px;flex:none;}
.gallery-dialog :focus-visible {outline:3px solid var(--plum);outline-offset:3px;}
html.gallery-open {overflow:hidden;}
@media (max-width:1100px) and (min-width:880px) {
 .cabinet-hero {grid-template-columns:42% 58%;min-height:550px;}
 .cabinet-hero__intro {padding:40px 32px;}
 .cabinet-hero h1 {font-size:58px;}
 .cabinet-hero__image {min-height:550px;}
 .hdr__in {gap:12px;}
 .hdr__call .long {font-size:15px;}
 .nav__list > li > a {padding-inline:7px;}
 .cabinet-displays {grid-template-columns:minmax(0,.6fr) minmax(0,1.3fr) minmax(0,1fr);gap:24px;}
}
@media (max-width:879px) {
 body {font-size:18px;line-height:1.5;}
 h1 {font-size:44px;}h2 {font-size:36px;}
 .hdr__in {gap:12px;}
 .cabinet-hero {display:block;min-height:0;}
 .cabinet-hero__intro {padding:26px 24px 28px;display:block;}
 .place {font-size:16px;margin-bottom:12px;}
 .cabinet-hero h1 {font-size:44px;line-height:1.01;max-width:8em;margin-bottom:22px;}
 .hero-aside {display:none;}
 .cabinet-hero__image {min-height:0;height:270px;margin:0 20px 20px;border:0;border-top:1px solid var(--mustard);}
 .visitor-strip {padding-block:16px;font-size:16px;}
 .visitor-strip .wrap {gap:6px 20px;}
 .visitor-strip .wrap > a {flex-basis:100%;}
 .sec {padding-block:56px;}
 .sec__head {margin-bottom:28px;}
 .cabinet-heading {margin-bottom:24px;}
 .open-cabinet {padding-block:40px;}
 .cabinet-heading > p {display:none;}
 .cabinet-displays {grid-template-columns:1fr;gap:32px;}
 .cabinet-context {position:static;padding:0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:center;}
 .cabinet-context__photo {aspect-ratio:auto;height:88px;margin:0;}
 .cabinet-context__caption {font-size:16px;margin-bottom:4px;line-height:1.25;}
 .cabinet-context .tlink {font-size:17px;min-height:44px;padding:10px 0;}
 .cabinet-object--jars {padding:0;}
 .cabinet-object .object-label {min-height:0;margin-top:8px;}
 .cabinet-detail {margin-top:8px;}
 .cabinet-ready[data-selected]:not([data-selected=""]) .cabinet-object:not(.is-selected) .cabinet-object__photo {transform:none;}
 .cabinet-ready .cabinet-object.is-selected .cabinet-object__photo {transform:translateY(-3px);}
 .film-invitation {display:block;margin-top:24px;padding-top:20px;}
 .film-invitation h3 {font-size:25px;}
 .film-invitation .tlink {margin-top:8px;}
 .object-label h3 {font-size:29px;}
 .object-label p {font-size:18px;}
 .floor-pair {grid-template-columns:1fr;gap:36px;}
 .floor-pair article:nth-child(2) {padding:0;}
 .floor-label {padding-top:20px;}
 .story-edit {grid-template-columns:1fr;gap:28px;}
 .story-edit__image .vitrine {aspect-ratio:1.7;}
 .story-edit h2 {margin-bottom:20px;}
 .history-ribbon {grid-template-columns:1fr 1fr;gap:24px 20px;margin-top:32px;}
 .history-ribbon b {font-size:30px;}
 .history-ribbon li {padding-top:14px;}
 .competition {grid-template-columns:1fr;gap:20px;}
 .competition h2 {font-size:34px;}
 .panel {gap:32px;}
 .who {padding:24px;}
 .who h2 {font-size:34px;}
 .who fieldset {grid-template-columns:1fr 1fr;gap:8px;}
 .who label {padding:10px;font-size:16px;gap:8px;}
 .who__answer .actions {gap:10px;}
 .shop-selection .jars,.jars--six {grid-template-columns:1fr;gap:32px;}
 .jar a {grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:8px 20px;align-items:start;}
 .jar .vitrine {grid-row:span 2;max-width:none;}
 .jar h3 {font-size:27px;align-self:end;}
 .jar p {font-size:16px;}
 .section-end {gap:18px;margin-top:28px;}
 .arrival {display:block;}
 .arrival h2 {font-size:34px;}
 .arrival .actions {max-width:none;margin-top:24px;}
 .opening {padding-block:28px 36px;}
 .opening__grid,.page-shop .opening__grid {grid-template-columns:1fr;gap:28px;}
 .opening h1 {font-size:44px;max-width:10em;}
 .opening__lede {font-size:18px;line-height:1.45;margin-top:16px;}
 .opening .actions {margin-top:20px;gap:12px;}
 .opening .actions .btn {flex:0 1 auto;font-size:16px;padding:10px 16px;}
 .opening .actions .btn--line {padding-inline:0;border:0;background:transparent;color:inherit;}
 .opening .vitrine,.page-museum .opening .vitrine {aspect-ratio:1.5;}
 .opening .label > .credit {font-size:15px;}
 .page-museum .cases {grid-template-columns:1fr;gap:32px;}
 .page-museum .cases > :nth-child(2) {padding:0;}
 .page-museum .cases .vitrine {aspect-ratio:1.7;}
 .page-contact .people {grid-template-columns:1fr;gap:28px;}
 .ftr__top,.ftr__split {grid-template-columns:1fr;gap:28px;}
 .ftr {padding-block:36px 24px;}
 .ftr__name {font-size:30px;}
 .ways b {font-size:30px;}
 .gallery-dialog {width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:12px;}
 .gallery-dialog img {height:auto;max-height:65vh;object-fit:contain;}
 .gallery-dialog__foot {flex-direction:column;align-items:stretch;gap:16px;}
 .gallery-dialog__controls {justify-content:space-between;}
}
@media (max-width:359px) {
 .cabinet-hero__intro {padding-inline:20px;}
 .cabinet-hero h1,.opening h1 {font-size:42px;}
 .mark__big {font-size:18px;}
 .hdr__in {gap:8px;padding-inline:16px;}
 .menu-btn {padding-inline:8px;gap:5px;}
 .who {padding:20px;}
 .who fieldset {grid-template-columns:1fr;}
 .jar a {gap:8px 14px;}
 .jar h3 {font-size:24px;}
}
@media (prefers-reduced-motion:reduce) {
 .object-view img {transform:none!important;}
 .cabinet-object__photo {transform:none!important;transition:none!important;}
 .gallery-dialog[open] {animation:none;}
}
/* Bounded look-round corrections: intact timeline years and caption contrast. */
.dates li {grid-template-columns:5rem minmax(0,1fr);}
.dates b {white-space:nowrap;}
.paper .typewall__sample {color:var(--muted-ink);font-style:normal;}
.gallery-dialog {overscroll-behavior:contain;}
button,a,input { -webkit-tap-highlight-color:rgba(246,207,18,.25); }
@media (max-width:879px) {.dates li {grid-template-columns:1fr;}}
.keyboard-ui .sheet,.keyboard-ui .nav__panel,.keyboard-ui .nav__btn svg {transition:none;}
.keyboard-ui .gallery-dialog[open] {animation:none;}
.keyboard-ui .who input::after {transition:none;}
