/* serene-spot-for-design-lovers-jacksonville design-a styles
   Design: mortise-and-meadow — all rules scoped to [data-design="a"].dq-design
   Keyframes prefixed mm- to avoid collision when co-loaded.
   ─────────────────────────────────────────────────────────────────────── */

/* ─── DESIGN TOKENS ─────────────────────────────────────────────────────── */
[data-design="a"] {
  /* Color — handmade-paper field */
  --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;

  /* Accent inks */
  --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;

  /* Semantic */
  --mm-success:     #6A7A3C;
  --mm-warn:        #B5832A;
  --mm-critical:    #9A3318;

  /* Dusk register */
  --mm-dusk-sky:    #20262A;
  --mm-dusk-ground: #161B1E;
  --mm-dusk-ink:    #E9DEC6;
  --mm-dusk-muted:  #AEB4AC;
  --mm-dusk-lamp:   #DCA948;

  /* Typography */
  --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;

  /* Fluid scale */
  --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;

  /* Spacing */
  --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);

  /* Motion — easing */
  --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);

  /* Motion — interaction durations */
  --mm-dur-tap:    150ms;
  --mm-dur-warm:   240ms;
  --mm-dur-settle: 520ms;

  /* Motion — ambient cycles */
  --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;

  /* Radius */
  --mm-r-peg:   3px;
  --mm-r-card:  4px;
  --mm-r-frame: 2px;
  --mm-r-pill:  9999px;

  /* Shadow / Elevation */
  --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);

  /* Page defaults */
  background: var(--mm-paper);
  color: var(--mm-oak);
  font-family: var(--mm-font-body);
  font-size: var(--mm-text-body);
  line-height: var(--mm-leading-body);
  box-sizing: border-box;
}

[data-design="a"].dq-design *, [data-design="a"].dq-design *::before, [data-design="a"].dq-design *::after {
  box-sizing: inherit;
}

/* ─── HEADER / NAV (Element 1) ──────────────────────────────────────────── */
[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; }

/* Dappled-lamplight layer */
[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); } }

/* Hamburger */
[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; }

/* Dovetail drawer */
[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); }

/* ─── STAMP / CTA (Element 2) ───────────────────────────────────────────── */
[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);
  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);
}
[data-design="a"] .mm-stamp--drawer {
  background: var(--mm-ochre); color: var(--mm-fumed-deep); font-size: var(--mm-text-h3);
}
[data-design="a"] .mm-stamp--drawer:active { background: var(--mm-ochre-deep); }

/* ─── TAG / BADGE ────────────────────────────────────────────────────────── */
[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); }
[data-design="a"] .mm-tag--open   { background: var(--mm-moss);  color: var(--mm-surface-2); }
[data-design="a"] .mm-tag--cool   { background: var(--mm-patina); color: var(--mm-surface-2); }
[data-design="a"] .mm-tag--closed { background: var(--mm-critical); color: var(--mm-surface-2); }

/* ─── TOP CTA BAND ───────────────────────────────────────────────────────── */
[data-design="a"] .mm-cta-band--top {
  background: var(--mm-paper-deep);
  padding: var(--mm-pad) clamp(16px, 5vw, 48px);
  display: flex; justify-content: center;
  border-bottom: 1px solid var(--mm-border-soft);
}

/* ─── PLACE STORY ────────────────────────────────────────────────────────── */
[data-design="a"] .mm-place-story {
  background: var(--mm-paper);
  padding-block: var(--mm-section);
}
[data-design="a"] .mm-place-story__inner {
  max-width: 1100px; margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid; gap: var(--mm-stile);
}
[data-design="a"] .mm-place-story__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;
  border-bottom: 2px solid var(--mm-moss); padding-bottom: var(--mm-tight);
}
[data-design="a"] .mm-place-story__body {
  font-size: var(--mm-text-lead); color: var(--mm-oak-2);
  max-width: 68ch; text-wrap: pretty; margin: 0;
}
[data-design="a"] .mm-place-story__facts {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--mm-gap);
  list-style: none; padding: 0; margin: 0;
}
[data-design="a"] .mm-fact {
  background: var(--mm-surface); border: 1px solid var(--mm-border);
  border-radius: var(--mm-r-card); padding: var(--mm-pad);
  display: grid; gap: var(--mm-tight);
  box-shadow: var(--mm-shadow-plate);
}
[data-design="a"] .mm-fact__line {
  font-family: var(--mm-font-body); font-size: var(--mm-text-body);
  color: var(--mm-oak-2);
}

/* ─── STAYS SELECTOR ─────────────────────────────────────────────────────── */
[data-design="a"] .mm-stays {
  background: var(--mm-paper-deep);
  padding-block: var(--mm-section);
}
[data-design="a"] .mm-stays__inner {
  max-width: 1100px; margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid; gap: var(--mm-stile);
}
[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;
}
[data-design="a"] .mm-stays__sub {
  font-size: var(--mm-text-lead); color: var(--mm-bark);
  margin: calc(var(--mm-tight) * -1) 0 0; max-width: 60ch;
}

/* Tabs */
[data-design="a"] .mm-tabs {
  display: flex; flex-wrap: wrap; gap: var(--mm-tight);
  border-bottom: 2px solid var(--mm-border);
  padding-bottom: 0;
}
[data-design="a"] .mm-tab {
  font-family: var(--mm-font-stamp); letter-spacing: var(--mm-tracking-stamp);
  text-transform: uppercase; font-size: var(--mm-text-cap);
  padding: var(--mm-tight) var(--mm-pad); cursor: pointer;
  background: transparent; border: 0; border-bottom: 3px solid transparent;
  color: var(--mm-bark); 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-tab--active,
[data-design="a"] .mm-tab[aria-selected="true"] {
  color: var(--mm-oxblood); border-bottom-color: var(--mm-oxblood);
  font-weight: 700;
}
[data-design="a"] .mm-tab:focus-visible {
  outline: none; box-shadow: var(--mm-focus-ring); border-radius: var(--mm-r-peg);
}

/* Panels */
[data-design="a"] .mm-panel {
  background: var(--mm-surface); border: 1px solid var(--mm-border);
  border-radius: var(--mm-r-card); box-shadow: var(--mm-shadow-plate);
  overflow: clip;
  animation: mm-panel-seat var(--mm-dur-settle) var(--mm-ease-seat) both;
}
@keyframes mm-panel-seat { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
[data-design="a"] .mm-panel--hidden { display: none; }
[data-design="a"] .mm-panel__layout {
  display: grid; grid-template-columns: 1fr 1fr; align-items: start;
}
[data-design="a"] .mm-panel__photo-wrap { aspect-ratio: 4/3; overflow: clip; }
[data-design="a"] .mm-panel__photo {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform var(--mm-dur-settle) var(--mm-ease-seat);
}
[data-design="a"] .mm-panel__copy {
  padding: var(--mm-pad); display: grid; gap: var(--mm-gap);
}
[data-design="a"] .mm-panel__name {
  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-panel__desc {
  font-size: var(--mm-text-body); color: var(--mm-oak-2); margin: 0; text-wrap: pretty;
}
[data-design="a"] .mm-panel__perks {
  list-style: none; padding: 0; margin: 0;
  display: grid; gap: var(--mm-tight);
}
[data-design="a"] .mm-panel__perks li {
  font-family: var(--mm-font-stamp); font-size: var(--mm-text-cap);
  letter-spacing: var(--mm-tracking-stamp); text-transform: uppercase;
  color: var(--mm-bark); padding-left: 18px; position: relative;
}
[data-design="a"] .mm-panel__perks li::before {
  content: "·"; position: absolute; left: 4px; color: var(--mm-moss);
}
[data-design="a"] .mm-panel__cta { justify-self: start; }

@media (max-width: 680px) {
  [data-design="a"] .mm-panel__layout {
    grid-template-columns: 1fr;
  }
  [data-design="a"] .mm-panel__photo-wrap { aspect-ratio: 16/9; }
}

/* ─── LANTERN POINTER (Element 6) ───────────────────────────────────────── */
[data-design="a"] .mm-pointer {
  display: grid; justify-items: center; gap: var(--mm-tight);
  padding-block: var(--mm-rail); background: var(--mm-paper); cursor: pointer;
}
[data-design="a"] .mm-pointer__lamp { width: 54px; height: 80px; overflow: visible; }
[data-design="a"] .mm-pointer__chain { stroke: var(--mm-rule); stroke-width: 2; stroke-linecap: round; }
[data-design="a"] .mm-pointer__cap,
[data-design="a"] .mm-pointer__base { fill: var(--mm-ochre-deep); }
[data-design="a"] .mm-pointer__glass {
  fill: color-mix(in oklab, var(--mm-ochre-glow), transparent 72%);
  stroke: var(--mm-ochre-deep); stroke-width: 1.5;
}
[data-design="a"] .mm-pointer__flame {
  fill: var(--mm-ochre-glow); filter: drop-shadow(0 0 6px rgba(220,169,72,.8));
}
[data-design="a"] .mm-pointer__body {
  transform-origin: 30px 12px;
  animation: mm-lower var(--mm-cyc-pointer) var(--mm-ease-warm) infinite;
}
[data-design="a"] .mm-pointer__flame {
  transform-origin: center;
  animation: mm-flicker 3.2s var(--mm-ease-warm) infinite alternate;
}
@keyframes mm-lower {
  0%   { transform: translateY(-8px) rotate(-1.5deg); }
  55%  { transform: translateY(5px)  rotate(1deg); }
  100% { transform: translateY(10px) rotate(0deg); }
}
@keyframes mm-flicker { from { opacity: .7; transform: scale(.92); } to { opacity: 1; transform: scale(1.06); } }
[data-design="a"] .mm-pointer__label {
  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);
}

/* ─── GALLERY — PLATE FOLIO (Element 5) ─────────────────────────────────── */
[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__head { display: grid; gap: var(--mm-tight); }
[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); }
  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); }

/* Night leaf */
[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); }

/* Folio book */
[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;
}

/* ─── WHAT'S NEARBY ──────────────────────────────────────────────────────── */
[data-design="a"] .mm-nearby {
  background: var(--mm-paper-deep); padding-block: var(--mm-section);
}
[data-design="a"] .mm-nearby__inner {
  max-width: 1100px; margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid; gap: var(--mm-stile);
}
[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;
}
[data-design="a"] .mm-route {
  list-style: none; padding: 0; margin: 0; display: grid; gap: var(--mm-stile);
}
[data-design="a"] .mm-route__stop {
  display: grid; grid-template-columns: auto 1fr; gap: var(--mm-gap);
  align-items: start; padding-bottom: var(--mm-stile);
  border-bottom: 1px solid var(--mm-border-soft);
}
[data-design="a"] .mm-route__stop:last-child { border-bottom: 0; padding-bottom: 0; }
[data-design="a"] .mm-route__detail { display: grid; gap: var(--mm-tight); }
[data-design="a"] .mm-route__name {
  font-family: var(--mm-font-display); font-weight: 700;
  font-size: var(--mm-text-h3); color: var(--mm-oak);
}
[data-design="a"] .mm-route__desc { font-size: var(--mm-text-body); color: var(--mm-oak-2); margin: 0; }

/* ─── HOST SECTION ───────────────────────────────────────────────────────── */
[data-design="a"] .mm-host {
  background: var(--mm-paper); padding-block: var(--mm-section);
}
[data-design="a"] .mm-host__inner {
  max-width: 1100px; margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: grid; gap: var(--mm-stile);
}
[data-design="a"] .mm-host__label {
  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;
}
[data-design="a"] .mm-host__plate {
  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);
}
[data-design="a"] .mm-host__bio { display: grid; gap: var(--mm-gap); }
[data-design="a"] .mm-host__name {
  font-family: var(--mm-font-display); font-weight: 700;
  font-size: var(--mm-text-h3); color: var(--mm-oak); margin: 0;
}
[data-design="a"] .mm-host__intro {
  font-size: var(--mm-text-body); color: var(--mm-oak-2); margin: 0; text-wrap: pretty; max-width: 68ch;
}
[data-design="a"] .mm-host__quote {
  font-family: var(--mm-font-display); font-size: var(--mm-text-lead);
  font-style: italic; color: var(--mm-oak);
  border-left: 4px solid var(--mm-moss); padding-left: var(--mm-pad);
  margin: 0; max-width: 60ch;
}
[data-design="a"] .mm-host__cite {
  display: block; font-family: var(--mm-font-stamp);
  letter-spacing: var(--mm-tracking-stamp); text-transform: uppercase;
  font-size: var(--mm-text-meta); font-style: normal; color: var(--mm-bark);
  margin-top: var(--mm-tight);
}

/* Maker's colophon */
[data-design="a"] .mm-colophon {
  display: flex; align-items: center; gap: var(--mm-tight);
  font-family: var(--mm-font-stamp); font-size: var(--mm-text-cap);
  letter-spacing: var(--mm-tracking-stamp); text-transform: uppercase;
  color: var(--mm-faint); margin: 0;
}
[data-design="a"] .mm-colophon__mark { color: var(--mm-ochre); font-size: 1.2em; }

/* ─── CLOSING CTA ────────────────────────────────────────────────────────── */
[data-design="a"] .mm-close-cta {
  background: var(--mm-fumed);
  padding-block: var(--mm-section);
}
[data-design="a"] .mm-close-cta__inner {
  max-width: 1100px; 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-close-cta__headline {
  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-close-cta__sub {
  font-size: var(--mm-text-lead); color: var(--mm-ochre-glow); margin: 0; max-width: 52ch;
}

/* ─── FOOTER ─────────────────────────────────────────────────────────────── */
[data-design="a"] .mm-footer {
  background: var(--mm-fumed-deep);
  border-top: 1px solid rgba(255,255,255,.06);
  padding-block: var(--mm-stile);
}
[data-design="a"] .mm-footer__inner {
  max-width: 1100px; margin: 0 auto;
  padding-inline: clamp(16px, 5vw, 48px);
  display: flex; flex-wrap: wrap; gap: var(--mm-gap);
  align-items: center; justify-content: space-between;
}
[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);
  text-transform: uppercase; font-size: var(--mm-text-meta);
  color: var(--mm-faint); margin: 0;
}
[data-design="a"] .mm-footer__book {
  font-family: var(--mm-font-stamp); letter-spacing: var(--mm-tracking-stamp);
  font-size: var(--mm-text-cap); text-transform: uppercase;
  color: var(--mm-ochre-glow); text-decoration: none;
  transition: color var(--mm-dur-warm) var(--mm-ease-warm);
}
[data-design="a"] .mm-footer__colophon {
  font-family: var(--mm-font-stamp); letter-spacing: var(--mm-tracking-stamp);
  font-size: var(--mm-text-meta); text-transform: uppercase;
  color: var(--mm-faint); margin: 0;
}

/* ─── HOVER INTERACTIONS (fine pointer gate) ─────────────────────────────── */
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .mm-stamp:hover {
    transform: translateY(-1px); background: var(--mm-oxblood-glow);
  }
  [data-design="a"] .mm-logo:hover { transform: translateY(-1px); }
  [data-design="a"] .mm-navlink:hover::after { transform: scaleX(1); }
  [data-design="a"] .mm-folio__thumb:hover { transform: translateY(-2px); }
  [data-design="a"] .mm-folio__turn:hover { background: var(--mm-moss-glow); }
  [data-design="a"] .mm-footer__book:hover { color: var(--mm-ochre); }
  [data-design="a"] .mm-fact:hover { box-shadow: var(--mm-shadow-lift); transform: translateY(-2px); transition: transform var(--mm-dur-warm) var(--mm-ease-seat), box-shadow var(--mm-dur-warm) var(--mm-ease-seat); }
}

/* ─── REDUCED MOTION ─────────────────────────────────────────────────────── */
@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; }
  [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; }
  [data-design="a"] .mm-pointer__body { animation: none; transform: translateY(6px); }
  [data-design="a"] .mm-pointer__flame { animation: none; }
  [data-design="a"] .mm-folio__img { animation: none; }
  [data-design="a"] .mm-folio__leaf.is-turning { animation: none; }
  [data-design="a"] .mm-panel { animation: none; }
}

/* ─── MOBILE ─────────────────────────────────────────────────────────────── */
@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; }
  [data-design="a"] .mm-pointer { padding-block: var(--mm-stile); }
  [data-design="a"] .mm-folio__cap { grid-template-columns: 1fr; gap: var(--mm-tight); }
  [data-design="a"] .mm-folio__turn { top: auto; bottom: -22px; }
  [data-design="a"] .mm-footer__inner { flex-direction: column; align-items: flex-start; gap: var(--mm-tight); }
  [data-design="a"] .mm-route__stop { 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; }
