/* honeycomb-hill-ashland design-a — Mortise & Meadow
   All selectors scoped to [data-design="a"].dq-design
   Keyframes prefixed mm- to avoid collision
   ─────────────────────────────────────────────────────── */

/* ── Design tokens ───────────────────────────────────────────────────────── */

[data-design="a"] {
  --mm-paper:        #E9DEC6;
  --mm-paper-deep:   #E0D3B4;
  --mm-panel:        #D7C7A2;
  --mm-surface:      #F1E8D2;
  --mm-surface-2:    #F8F1E0;
  --mm-oak:          #2A2017;
  --mm-oak-2:        #4A3725;
  --mm-bark:         #715A3E;
  --mm-faint:        #9C875F;
  --mm-border:       #C8B488;
  --mm-border-soft:  #D8C8A0;
  --mm-rule:         #B29A6B;
  --mm-fumed:        #221A12;
  --mm-fumed-deep:   #19130C;

  --mm-moss:         #5C6A38;
  --mm-moss-deep:    #44512A;
  --mm-moss-glow:    #7A8A4E;
  --mm-ochre:        #B5832A;
  --mm-ochre-deep:   #936818;
  --mm-ochre-glow:   #DCA948;
  --mm-oxblood:      #8E3A22;
  --mm-oxblood-deep: #6C2914;
  --mm-oxblood-glow: #B05433;
  --mm-patina:       #2F6A5B;
  --mm-patina-deep:  #1F4E42;

  --mm-success:      #6A7A3C;
  --mm-warn:         #B5832A;
  --mm-critical:     #9A3318;

  --mm-dusk-sky:     #20262A;
  --mm-dusk-ground:  #161B1E;
  --mm-dusk-ink:     #E9DEC6;
  --mm-dusk-muted:   #AEB4AC;
  --mm-dusk-lamp:    #DCA948;

  --mm-font-display: "Goudy Old Style","Goudy Bookletter 1911","Sorts Mill Goudy","Hoefler Text","Iowan Old Style",Georgia,serif;
  --mm-font-body:    "Iowan Old Style","Charter","Palatino Linotype","Book Antiqua",Georgia,serif;
  --mm-font-stamp:   "Saira Semi Condensed","Oswald","Trade Gothic Condensed","Futura","Arial Narrow",system-ui,sans-serif;
  --mm-font-mono:    "Space Mono","IBM Plex Mono",ui-monospace,"Courier New",monospace;

  --mm-text-meta:    clamp(0.75rem, 0.72rem + 0.15vw, 0.8125rem);
  --mm-text-cap:     clamp(0.875rem, 0.84rem + 0.2vw, 0.9375rem);
  --mm-text-body:    clamp(1rem, 0.96rem + 0.3vw, 1.1875rem);
  --mm-text-lead:    clamp(1.125rem, 1.04rem + 0.5vw, 1.375rem);
  --mm-text-h3:      clamp(1.375rem, 1.2rem + 0.9vw, 1.875rem);
  --mm-text-h2:      clamp(1.875rem, 1.5rem + 1.9vw, 3.125rem);
  --mm-text-h1:      clamp(2.625rem, 1.7rem + 4.4vw, 5.25rem);

  --mm-leading-body:     1.62;
  --mm-leading-tight:    1.08;
  --mm-tracking-display: 0.004em;
  --mm-tracking-stamp:   0.16em;

  --mm-hair:    4px;
  --mm-tight:   8px;
  --mm-gap:     16px;
  --mm-pad:     24px;
  --mm-stile:   40px;
  --mm-rail:    64px;
  --mm-section: clamp(72px, 6vw + 40px, 96px);
  --mm-bay:     clamp(96px, 9vw, 128px);

  --mm-ease-seat:  cubic-bezier(0.2, 0.85, 0.2, 1);
  --mm-ease-press: cubic-bezier(0.4, 0, 0.2, 1);
  --mm-ease-gouge: cubic-bezier(0.62, 0, 0.36, 1);
  --mm-ease-warm:  cubic-bezier(0.45, 0, 0.2, 1);

  --mm-dur-tap:    150ms;
  --mm-dur-warm:   240ms;
  --mm-dur-settle: 520ms;

  --mm-cyc-header:  30s;
  --mm-cyc-sky:     26s;
  --mm-cyc-cta:     5s;
  --mm-cyc-pointer: 5.5s;
  --mm-cyc-kb:      14s;
  --mm-cyc-mote:    20s;
  --mm-cyc-pattern: 24s;

  --mm-r-peg:   3px;
  --mm-r-card:  4px;
  --mm-r-frame: 2px;
  --mm-r-pill:  9999px;

  --mm-shadow-plate: 0 8px 22px rgba(42, 32, 24, 0.13);
  --mm-shadow-lift:  0 14px 34px rgba(42, 32, 24, 0.20);
  --mm-impress: inset 0 2px 0 rgba(255, 250, 235, 0.55),
                inset 0 -3px 4px rgba(42, 32, 24, 0.18);
  --mm-ring-rule:  0 0 0 1px var(--mm-rule);
  --mm-focus-ring: 0 0 0 3px rgba(92, 106, 56, 0.55);

  font-family: var(--mm-font-body);
  color: var(--mm-oak);
  background: var(--mm-paper);
  box-sizing: border-box;
}

[data-design="a"].dq-design *,
[data-design="a"].dq-design *::before,
[data-design="a"].dq-design *::after {
  box-sizing: inherit;
}

/* ── Stamp (CTA button) ──────────────────────────────────────────────────── */

[data-design="a"] .mm-stamp {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  gap: var(--mm-tight);
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-lead);
  letter-spacing: var(--mm-tracking-display);
  text-decoration: none;
  color: var(--mm-surface-2);
  background: var(--mm-oxblood);
  padding: 14px 26px;
  min-height: 48px;
  border-radius: var(--mm-r-card);
  border: none;
  cursor: pointer;
  box-shadow: var(--mm-impress), var(--mm-shadow-plate);
  transition: transform var(--mm-dur-tap) var(--mm-ease-press),
              background-color var(--mm-dur-warm) var(--mm-ease-warm),
              box-shadow var(--mm-dur-tap) var(--mm-ease-press);
}
[data-design="a"] .mm-stamp__ext { font-weight: 700; font-size: .9em; }
[data-design="a"] .mm-stamp__halo {
  position: absolute;
  inset: -2px;
  z-index: -1;
  border-radius: inherit;
  box-shadow: 0 0 0 0 rgba(220, 169, 72, 0);
  animation: mm-lantern var(--mm-cyc-cta) var(--mm-ease-warm) infinite;
}
@keyframes mm-lantern {
  0%, 100% { box-shadow: 0 0 12px 0 rgba(220, 169, 72, .22); }
  50%       { box-shadow: 0 0 24px 5px rgba(220, 169, 72, .42); }
}
[data-design="a"] .mm-stamp:focus-visible {
  outline: none;
  box-shadow: var(--mm-focus-ring), var(--mm-impress);
}
[data-design="a"] .mm-stamp:active {
  transform: translateY(2px) scale(.985);
  background: var(--mm-oxblood-deep);
  box-shadow: inset 0 3px 5px rgba(42, 32, 24, .34), inset 0 1px 0 rgba(255, 250, 235, .25);
}
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .mm-stamp:hover {
    transform: translateY(-1px);
    background: var(--mm-oxblood-glow);
  }
}
[data-design="a"] .mm-stamp--drawer {
  background: var(--mm-ochre);
  color: var(--mm-fumed-deep);
  font-size: var(--mm-text-h3);
  margin-top: var(--mm-stile);
}
[data-design="a"] .mm-stamp--drawer:active { background: var(--mm-ochre-deep); }
[data-design="a"] .mm-stamp--footer {
  background: var(--mm-moss);
  color: var(--mm-surface-2);
  font-size: var(--mm-text-body);
}
[data-design="a"] .mm-stamp--footer:active { background: var(--mm-moss-deep); }
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .mm-stamp__halo { animation: none; box-shadow: 0 0 12px 0 rgba(220, 169, 72, .28); }
  [data-design="a"] .mm-stamp { transition: background-color var(--mm-dur-warm) linear; }
}

/* ── Tag ─────────────────────────────────────────────────────────────────── */

[data-design="a"] .mm-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-meta);
  padding: 5px 12px;
  border-radius: var(--mm-r-peg);
}
[data-design="a"] .mm-tag--season {
  background: var(--mm-ochre);
  color: var(--mm-fumed-deep);
}

/* ── Header ──────────────────────────────────────────────────────────────── */

[data-design="a"] .mm-header {
  position: sticky;
  top: 0;
  z-index: 60;
  background: var(--mm-fumed);
  color: var(--mm-paper);
  overflow: clip;
}
[data-design="a"] .mm-header__bar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--mm-gap);
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--mm-tight) clamp(16px, 4vw, 40px);
}
[data-design="a"] .mm-logo {
  display: inline-block;
  text-decoration: none;
  font-family: var(--mm-font-display);
  font-weight: 700;
  letter-spacing: var(--mm-tracking-display);
  font-size: clamp(1.1rem, 0.9rem + 1vw, 1.6rem);
  color: var(--mm-paper);
  background: var(--mm-fumed-deep);
  padding: 6px 16px;
  border-radius: var(--mm-r-peg);
  box-shadow: var(--mm-impress);
}
[data-design="a"] .mm-logo__mark { display: inline-block; }
[data-design="a"] .mm-header__light {
  position: absolute;
  inset: 0;
  z-index: 1;
  color: var(--mm-moss-glow);
  pointer-events: none;
}
[data-design="a"] .mm-header__pool {
  position: absolute;
  top: -40%;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  filter: blur(20px);
  opacity: .22;
  mix-blend-mode: screen;
}
[data-design="a"] .mm-header__pool--a {
  left: 18%;
  background: radial-gradient(circle, var(--mm-ochre-glow) 0%, transparent 68%);
  animation: mm-pool-a var(--mm-cyc-header) var(--mm-ease-warm) infinite alternate;
}
[data-design="a"] .mm-header__pool--b {
  left: 52%;
  background: radial-gradient(circle, var(--mm-moss-glow) 0%, transparent 70%);
  animation: mm-pool-b calc(var(--mm-cyc-header) * 1.18) var(--mm-ease-warm) infinite alternate;
}
@keyframes mm-pool-a { from { transform: translateX(-26px); opacity: .14; } to { transform: translateX(22px); opacity: .30; } }
@keyframes mm-pool-b { from { transform: translateX(20px); opacity: .12; } to { transform: translateX(-24px); opacity: .26; } }
[data-design="a"] .mm-header__bough {
  position: absolute;
  right: clamp(70px, 16vw, 220px);
  top: 50%;
  width: 120px;
  height: 60px;
  transform: translateY(-50%);
  color: var(--mm-moss);
  opacity: .34;
  transform-origin: 6px 50px;
  animation: mm-bough-stir 17s var(--mm-ease-warm) infinite alternate;
}
@keyframes mm-bough-stir { from { transform: translateY(-50%) rotate(-1.4deg); } to { transform: translateY(-50%) rotate(1.6deg); } }
[data-design="a"] .mm-burger {
  display: inline-flex;
  flex-direction: column;
  gap: 5px;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  cursor: pointer;
  border-radius: var(--mm-r-peg);
}
[data-design="a"] .mm-burger__bar {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--mm-paper);
  transition: transform var(--mm-dur-warm) var(--mm-ease-seat), opacity var(--mm-dur-tap) linear;
}
[data-design="a"] .mm-burger[aria-expanded="true"] .mm-burger__bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
[data-design="a"] .mm-burger[aria-expanded="true"] .mm-burger__bar:nth-child(2) { opacity: 0; }
[data-design="a"] .mm-burger[aria-expanded="true"] .mm-burger__bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
[data-design="a"] .mm-burger:focus-visible { box-shadow: var(--mm-focus-ring); outline: none; }
[data-design="a"] .mm-drawer {
  position: fixed;
  inset: 0;
  z-index: 70;
  background: color-mix(in oklab, var(--mm-fumed-deep), transparent 5%);
}
[data-design="a"] .mm-drawer[hidden] { display: none; }
[data-design="a"] .mm-drawer__panel {
  max-width: 1200px;
  margin: 0 auto;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--mm-gap);
  justify-content: center;
  padding: clamp(48px, 12vh, 120px) clamp(24px, 8vw, 80px);
  transform: translateY(-14px);
  opacity: 0;
}
[data-design="a"] .mm-drawer.is-open .mm-drawer__panel {
  animation: mm-drawer-in var(--mm-dur-settle) var(--mm-ease-seat) forwards;
}
@keyframes mm-drawer-in { to { transform: translateY(0); opacity: 1; } }
[data-design="a"] .mm-navlink {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: clamp(1.6rem, 1.1rem + 3vw, 3rem);
  color: var(--mm-paper);
  text-decoration: none;
  width: max-content;
  padding: 4px 0;
}
[data-design="a"] .mm-navlink::after {
  content: "";
  display: block;
  height: 3px;
  background: var(--mm-moss-glow);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--mm-dur-warm) var(--mm-ease-gouge);
}
[data-design="a"] .mm-navlink:focus-visible::after { transform: scaleX(1); }
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .mm-navlink:hover::after { transform: scaleX(1); }
  [data-design="a"] .mm-logo:hover { transform: translateY(-1px); }
}
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .mm-header__pool--a,
  [data-design="a"] .mm-header__pool--b,
  [data-design="a"] .mm-header__bough { animation: none; }
  [data-design="a"] .mm-drawer.is-open .mm-drawer__panel { animation: none; transform: none; opacity: 1; }
}
@media (max-width: 560px) {
  [data-design="a"] .mm-header__bough { right: 10px; opacity: .24; width: 92px; }
  [data-design="a"] .mm-header__pool { width: 150px; height: 150px; }
}

/* ── Story section ───────────────────────────────────────────────────────── */

[data-design="a"] .mm-story {
  background: var(--mm-paper);
  padding-block: var(--mm-section);
  border-bottom: 1px solid var(--mm-border-soft);
}
[data-design="a"] .mm-story__inner {
  max-width: 720px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
}
[data-design="a"] .mm-story__stamp {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-meta);
  color: var(--mm-bark);
  margin: 0 0 var(--mm-gap);
}
[data-design="a"] .mm-story__body {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-lead);
  line-height: var(--mm-leading-body);
  color: var(--mm-oak-2);
  margin: 0;
  text-wrap: pretty;
}

/* ── Key Facts ───────────────────────────────────────────────────────────── */

[data-design="a"] .mm-facts {
  background: var(--mm-panel);
  padding-block: var(--mm-section);
  border-bottom: 1px solid var(--mm-border);
}
[data-design="a"] .mm-facts__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
}
[data-design="a"] .mm-facts__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  border: 1px solid var(--mm-border);
  border-radius: var(--mm-r-card);
  overflow: hidden;
}
[data-design="a"] .mm-facts__item {
  padding: var(--mm-pad);
  border-right: 1px solid var(--mm-border-soft);
  border-bottom: 1px solid var(--mm-border-soft);
  background: var(--mm-surface);
}
[data-design="a"] .mm-facts__item:last-child { border-right: none; }
[data-design="a"] .mm-facts__label {
  display: block;
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-meta);
  color: var(--mm-bark);
  margin: 0 0 var(--mm-tight);
}
[data-design="a"] .mm-facts__value {
  display: block;
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  font-weight: 700;
  color: var(--mm-oak);
  margin: 0;
}

/* ── Stays Selector ──────────────────────────────────────────────────────── */

[data-design="a"] .mm-stays {
  background: var(--mm-paper);
  padding-block: var(--mm-section);
  border-bottom: 1px solid var(--mm-border-soft);
}
[data-design="a"] .mm-stays__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
}
[data-design="a"] .mm-stays__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h2);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-oak);
  margin: 0 0 var(--mm-tight);
}
[data-design="a"] .mm-stays__sub {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-lead);
  color: var(--mm-bark);
  margin: 0 0 var(--mm-stile);
  max-width: 56ch;
}
[data-design="a"] .mm-stays__tabs {
  display: flex;
  gap: var(--mm-tight);
  border-bottom: 2px solid var(--mm-border);
  margin-bottom: var(--mm-stile);
}
[data-design="a"] .mm-stays__tab {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-cap);
  color: var(--mm-bark);
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  padding: var(--mm-tight) var(--mm-pad);
  cursor: pointer;
  margin-bottom: -2px;
  transition: color var(--mm-dur-warm) var(--mm-ease-warm),
              border-color var(--mm-dur-warm) var(--mm-ease-warm);
}
[data-design="a"] .mm-stays__tab.is-active {
  color: var(--mm-oxblood);
  border-bottom-color: var(--mm-oxblood);
}
[data-design="a"] .mm-stays__tab:focus-visible { outline: none; box-shadow: var(--mm-focus-ring); }
[data-design="a"] .mm-stays__panel { display: none; }
[data-design="a"] .mm-stays__panel.is-active {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--mm-stile);
  align-items: start;
}
[data-design="a"] .mm-stays__photo-wrap {
  border-radius: var(--mm-r-card);
  overflow: hidden;
  box-shadow: var(--mm-shadow-plate);
  border: 1px solid var(--mm-border);
}
[data-design="a"] .mm-stays__photo {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  background: var(--mm-panel);
}
[data-design="a"] .mm-stays__details {
  display: grid;
  gap: var(--mm-gap);
  align-content: start;
}
[data-design="a"] .mm-stays__stamp {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-meta);
  color: var(--mm-bark);
  margin: 0;
}
[data-design="a"] .mm-stays__desc {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  line-height: var(--mm-leading-body);
  color: var(--mm-oak-2);
  margin: 0;
  text-wrap: pretty;
}
@media (max-width: 640px) {
  [data-design="a"] .mm-stays__panel.is-active { grid-template-columns: 1fr; }
}

/* ── Folio (Gallery E5) ──────────────────────────────────────────────────── */

[data-design="a"] .mm-folio {
  background: var(--mm-paper);
  padding-block: var(--mm-section);
  display: grid;
  gap: var(--mm-rail);
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
}
[data-design="a"] .mm-folio__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h2);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-oak);
  margin: 0 0 var(--mm-tight);
}
[data-design="a"] .mm-folio__sub {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-lead);
  color: var(--mm-bark);
  margin: 0;
  max-width: 60ch;
}
[data-design="a"] .mm-folio__stage {
  position: relative;
  perspective: 1600px;
}
[data-design="a"] .mm-folio__leaf {
  border: 1px solid var(--mm-border);
  border-radius: var(--mm-r-card);
  overflow: clip;
  background: var(--mm-surface);
  box-shadow: var(--mm-shadow-plate);
  transform-style: preserve-3d;
  transform-origin: left center;
}
[data-design="a"] .mm-folio__leaf.is-turning {
  animation: mm-leaf 440ms var(--mm-ease-press);
}
@keyframes mm-leaf {
  0%   { transform: rotateY(0);      opacity: 1; }
  48%  { transform: rotateY(-8deg);  opacity: .62; }
  100% { transform: rotateY(0);      opacity: 1; }
}
[data-design="a"] .mm-folio__fig { margin: 0; }
[data-design="a"] .mm-folio__img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  background: var(--mm-panel);
  transform-origin: center;
  animation: mm-kenburns var(--mm-cyc-kb) var(--mm-ease-warm) infinite alternate;
}
@keyframes mm-kenburns { from { transform: scale(1.0); } to { transform: scale(1.045); } }
[data-design="a"] .mm-folio__cap {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: var(--mm-gap);
  align-items: start;
  padding: var(--mm-pad);
  background: var(--mm-surface);
}
[data-design="a"] .mm-folio__drop {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: clamp(2.2rem, 1.4rem + 3vw, 3.4rem);
  line-height: .8;
  color: var(--mm-oxblood);
}
[data-design="a"] .mm-folio__story {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  color: var(--mm-oak-2);
  text-wrap: pretty;
  align-self: center;
}
[data-design="a"] .mm-folio__num {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  color: var(--mm-bark);
  font-size: var(--mm-text-meta);
  white-space: nowrap;
}
[data-design="a"] .mm-folio__turn {
  position: absolute;
  top: 38%;
  width: 48px;
  height: 48px;
  border: 1px solid var(--mm-moss-deep);
  border-radius: var(--mm-r-peg);
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1;
  color: var(--mm-paper);
  background: var(--mm-moss);
  box-shadow: var(--mm-shadow-plate);
  transition: transform var(--mm-dur-tap) var(--mm-ease-seat),
              background-color var(--mm-dur-warm) var(--mm-ease-warm);
}
[data-design="a"] .mm-folio__turn--prev { left: 8px; }
[data-design="a"] .mm-folio__turn--next { right: 8px; }
[data-design="a"] .mm-folio__turn:focus-visible { outline: none; box-shadow: var(--mm-focus-ring); }
[data-design="a"] .mm-folio__turn:active { transform: scale(.92); background: var(--mm-moss-deep); }
[data-design="a"] .mm-folio__rack {
  display: flex;
  gap: var(--mm-tight);
  overflow-x: auto;
  padding-bottom: var(--mm-tight);
  scroll-snap-type: x proximity;
}
[data-design="a"] .mm-folio__thumb {
  flex: 0 0 auto;
  width: 84px;
  height: 60px;
  border-radius: var(--mm-r-peg);
  overflow: clip;
  border: 2px solid transparent;
  cursor: pointer;
  padding: 0;
  background: var(--mm-panel);
  scroll-snap-align: start;
  transition: border-color var(--mm-dur-warm) var(--mm-ease-warm),
              transform var(--mm-dur-tap) var(--mm-ease-seat);
}
[data-design="a"] .mm-folio__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
[data-design="a"] .mm-folio__thumb[aria-selected="true"] { border-color: var(--mm-oxblood); }
[data-design="a"] .mm-folio__thumb:focus-visible { outline: none; box-shadow: var(--mm-focus-ring); }
[data-design="a"] .mm-folio__leaf.is-night .mm-folio__cap { background: var(--mm-dusk-ground); }
[data-design="a"] .mm-folio__leaf.is-night .mm-folio__story { color: var(--mm-dusk-ink); }
[data-design="a"] .mm-folio__leaf.is-night .mm-folio__num  { color: var(--mm-dusk-lamp); }
[data-design="a"] .mm-folio__book {
  display: grid;
  gap: var(--mm-gap);
  justify-items: center;
  text-align: center;
}
[data-design="a"] .mm-folio__bookline {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h3);
  color: var(--mm-oak);
  margin: 0;
  text-wrap: balance;
}
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .mm-folio__thumb:hover { transform: translateY(-2px); }
  [data-design="a"] .mm-folio__turn:hover { background: var(--mm-moss-glow); }
}
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .mm-folio__img { animation: none; }
  [data-design="a"] .mm-folio__leaf.is-turning { animation: none; }
}
@media (max-width: 560px) {
  [data-design="a"] .mm-folio__cap { grid-template-columns: 1fr; gap: var(--mm-tight); }
  [data-design="a"] .mm-folio__turn { top: auto; bottom: -22px; }
}

/* ── Ambient-B / Amenities ───────────────────────────────────────────────── */

[data-design="a"] .mm-ambient-b {
  position: relative;
  isolation: isolate;
  overflow: clip;
  background: var(--mm-paper-deep);
  padding-block: var(--mm-section);
}
[data-design="a"] .mm-ambient-b__field {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: .15;
  pointer-events: none;
}
[data-design="a"] .mm-block { width: 132%; height: 100%; }
[data-design="a"] .mm-block__g {
  transform-box: fill-box;
  animation: mm-blockdrift var(--mm-cyc-pattern) var(--mm-ease-warm) infinite alternate;
}
@keyframes mm-blockdrift {
  from { transform: translate3d(0, 0, 0);       opacity: .6; }
  to   { transform: translate3d(-24px, 8px, 0); opacity: 1; }
}
[data-design="a"] .mm-ambient-b__inner {
  position: relative;
  z-index: 1;
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid;
  gap: var(--mm-stile);
}
[data-design="a"] .mm-ambient-b__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h2);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-oak);
  margin: 0;
}
[data-design="a"] .mm-amen-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: var(--mm-stile);
}
[data-design="a"] .mm-amen-heading {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-cap);
  color: var(--mm-bark);
  margin: 0 0 var(--mm-gap);
  padding-bottom: var(--mm-tight);
  border-bottom: 1px solid var(--mm-rule);
}
[data-design="a"] .mm-amen-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--mm-tight);
}
[data-design="a"] .mm-amen-list li {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  color: var(--mm-oak-2);
  padding-left: var(--mm-pad);
  position: relative;
}
[data-design="a"] .mm-amen-list li::before {
  content: "\00B7";
  position: absolute;
  left: var(--mm-tight);
  color: var(--mm-moss);
  font-weight: 700;
}
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .mm-block__g { animation: none; }
}
@media (max-width: 560px) {
  [data-design="a"] .mm-ambient-b__field { opacity: .11; }
  [data-design="a"] .mm-amen-grid { grid-template-columns: 1fr; }
}

/* ── What's Nearby ───────────────────────────────────────────────────────── */

[data-design="a"] .mm-nearby {
  background: var(--mm-paper);
  padding-block: var(--mm-section);
  border-top: 1px solid var(--mm-border-soft);
  border-bottom: 1px solid var(--mm-border-soft);
}
[data-design="a"] .mm-nearby__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
}
[data-design="a"] .mm-nearby__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h2);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-oak);
  margin: 0 0 var(--mm-stile);
}
[data-design="a"] .mm-nearby__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
}
[data-design="a"] .mm-nearby__item {
  display: grid;
  grid-template-columns: minmax(160px, 220px) 1fr;
  gap: var(--mm-stile);
  align-items: baseline;
  padding-block: var(--mm-gap);
  border-bottom: 1px solid var(--mm-border-soft);
}
[data-design="a"] .mm-nearby__item:first-child { border-top: 1px solid var(--mm-border-soft); }
[data-design="a"] .mm-nearby__stamp {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-meta);
  color: var(--mm-moss);
  flex-shrink: 0;
}
[data-design="a"] .mm-nearby__desc {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  color: var(--mm-oak-2);
  line-height: var(--mm-leading-body);
  text-wrap: pretty;
}
@media (max-width: 560px) {
  [data-design="a"] .mm-nearby__item { grid-template-columns: 1fr; gap: var(--mm-tight); }
}

/* ── Reviews ─────────────────────────────────────────────────────────────── */

[data-design="a"] .mm-reviews {
  background: var(--mm-paper-deep);
  padding-block: var(--mm-section);
}
[data-design="a"] .mm-reviews__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
}
[data-design="a"] .mm-reviews__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h2);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-oak);
  margin: 0 0 var(--mm-stile);
}
[data-design="a"] .mm-reviews__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: var(--mm-gap);
}
[data-design="a"] .mm-review-plate {
  margin: 0;
  background: var(--mm-surface);
  border: 1px solid var(--mm-border);
  border-radius: var(--mm-r-card);
  padding: var(--mm-pad);
  box-shadow: var(--mm-shadow-plate);
  display: grid;
  gap: var(--mm-gap);
  align-content: space-between;
}
[data-design="a"] .mm-review-plate__body {
  font-family: var(--mm-font-body);
  font-style: italic;
  font-size: var(--mm-text-body);
  line-height: var(--mm-leading-body);
  color: var(--mm-oak-2);
  margin: 0;
  text-wrap: pretty;
}
[data-design="a"] .mm-review-plate__sig {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase;
  font-size: var(--mm-text-meta);
  color: var(--mm-bark);
}

/* ── Host ────────────────────────────────────────────────────────────────── */

[data-design="a"] .mm-host {
  background: var(--mm-panel);
  padding-block: var(--mm-section);
  border-top: 1px solid var(--mm-border);
  border-bottom: 1px solid var(--mm-border);
}
[data-design="a"] .mm-host__inner {
  max-width: 720px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid;
  gap: var(--mm-gap);
}
[data-design="a"] .mm-host__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h3);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-oak);
  margin: 0;
}
[data-design="a"] .mm-host__bio {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  line-height: var(--mm-leading-body);
  color: var(--mm-oak-2);
  margin: 0;
  text-wrap: pretty;
}
[data-design="a"] .mm-host__colophon {
  font-family: var(--mm-font-body);
  font-style: italic;
  font-size: var(--mm-text-body);
  color: var(--mm-bark);
  margin: 0;
}

/* ── Closing CTA ─────────────────────────────────────────────────────────── */

[data-design="a"] .mm-closing {
  background: var(--mm-fumed);
  padding-block: var(--mm-section);
}
[data-design="a"] .mm-closing__inner {
  max-width: 720px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid;
  gap: var(--mm-gap);
  justify-items: center;
  text-align: center;
}
[data-design="a"] .mm-closing__title {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-h2);
  letter-spacing: var(--mm-tracking-display);
  color: var(--mm-paper);
  margin: 0;
  text-wrap: balance;
}
[data-design="a"] .mm-closing__sub {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-lead);
  color: var(--mm-bark);
  margin: 0;
}

/* ── Footer ──────────────────────────────────────────────────────────────── */

[data-design="a"] .mm-footer {
  background: var(--mm-fumed-deep);
  padding-block: var(--mm-stile);
  border-top: 1px solid rgba(255,255,255,.07);
}
[data-design="a"] .mm-footer__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--mm-stile);
  align-items: start;
}
[data-design="a"] .mm-footer__col {
  display: grid;
  gap: var(--mm-tight);
  align-content: start;
}
[data-design="a"] .mm-footer__name {
  font-family: var(--mm-font-display);
  font-weight: 700;
  font-size: var(--mm-text-lead);
  color: var(--mm-paper);
  margin: 0;
}
[data-design="a"] .mm-footer__loc {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  font-size: var(--mm-text-meta);
  color: var(--mm-bark);
  margin: 0;
  text-transform: uppercase;
}
[data-design="a"] .mm-footer__nearby-label {
  font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp);
  font-size: var(--mm-text-meta);
  color: var(--mm-bark);
  margin: 0;
  text-transform: uppercase;
}
[data-design="a"] .mm-footer__nearby {
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-cap);
  color: var(--mm-faint);
  margin: 0;
}
[data-design="a"] .mm-footer__colophon {
  font-family: var(--mm-font-body);
  font-style: italic;
  font-size: var(--mm-text-cap);
  color: var(--mm-bark);
  margin: 0;
}

/* ── Mobile safety ───────────────────────────────────────────────────────── */

@media (max-width: 390px) {
  [data-design="a"] .mm-facts__grid { grid-template-columns: 1fr; }
  [data-design="a"] .mm-stamp { width: 100%; justify-content: space-between; padding: 14px 20px; }
}
@media (max-width: 320px) {
  [data-design="a"] .mm-closing__title { font-size: var(--mm-text-h3); }
  [data-design="a"] .mm-reviews__grid  { grid-template-columns: 1fr; }
}

/* Phase-3.4 hero visibility floor (forge_assemble) */
[data-design="a"] [data-mf-role="hero"] :is(h1,h2,p,.headline,.subtitle,.proof,[class*="headline"],[class*="subtitle"],[class*="proof"]),
[data-design="a"] [data-mf-role="cta"] { opacity: 1 !important; }
