/* toms-rest-canyon-retreat-center-sisters design-a — Wayside (BODY ONLY, below injected hero)
   All selectors scoped to [data-design="a"]. Keyframes prefixed wayside-.
   Motion: transform / opacity / clip-path / box-shadow / background-color / filter ONLY.
   Hover transforms gated behind @media (hover:hover) and (pointer:fine).
   Every content column is windowed-center (max-width + margin-inline:auto).
   Parallax is owned by body-life.js on data-bl-feature. */

/* ── ROOT TOKENS (Wayside, re-declared under the live design id) ─────────────── */
[data-design="a"]{
  --paper:#F2E6CC; --paper-2:#E9D9B6; --ink:#1A2620;
  --pine:#1F4D3A; --lake:#2C6E72; --blaze:#D2622B; --gold:#E2A636;
  --brick:#A6341E; --trail:#4C7A3A; --field:#8B8160; --keyline:#2B3A30;
  --reg:3px;
  --font-display:"Zilla Slab","Rockwell","Roboto Slab",Georgia,serif;
  --font-body:"Work Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-mono:"Space Mono","IBM Plex Mono",ui-monospace,Menlo,monospace;
  --t-banner:clamp(2.75rem,8vw,6rem);
  --t-display:clamp(2rem,5vw,3.5rem);
  --t-head:clamp(1.5rem,3vw,2.25rem);
  --t-sub:clamp(1.125rem,2vw,1.5rem);
  --t-body:clamp(1rem,1.2vw,1.125rem);
  --t-cap:0.8125rem;
  --lh-body:1.55; --lh-tight:1.05; --track-cap:0.18em;
  --gutter:clamp(20px,5vw,48px);
  --run:clamp(4rem,9vw,7rem);
  --bleed:clamp(1.5rem,4vw,3rem);
  --hair:2px;
  --snap:360ms; --settle:520ms;
  --ease-press:cubic-bezier(.2,.9,.2,1);
  --ease-out:cubic-bezier(.17,.84,.44,1);
  --r-chip:2px; --r-frame:0;
  --shadow-reg:var(--reg) var(--reg) 0 0 var(--keyline);
  --shadow-blaze:var(--reg) var(--reg) 0 0 var(--blaze);
  --maxw:1180px;
  box-sizing:border-box; color:var(--ink); background:var(--paper-2);
  font-family:var(--font-body); line-height:var(--lh-body);
}
[data-design="a"].dq-design *,
[data-design="a"].dq-design *::before,
[data-design="a"].dq-design *::after{ box-sizing:border-box; }

@media (prefers-color-scheme: dark){
  [data-design="a"]{
    --paper:#16201A; --paper-2:#101813; --ink:#F2E6CC;
    --pine:#4E8C6F; --lake:#5AA0A2; --blaze:#E6783F; --gold:#EBB85A;
    --brick:#C9533A; --trail:#79A85F; --field:#A89E78; --keyline:#C7B891;
  }
}

/* ── Screenprint grain — hand-pulled halftone on every panel ─────────────────── */
[data-design="a"] .wayside-grain{ position:relative; }
[data-design="a"] .wayside-grain::after{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:1;
  background-image:radial-gradient(var(--ink) 0.5px, transparent 0.6px);
  background-size:4px 4px; opacity:.06; mix-blend-mode:multiply;
  animation:wayside-grain 12s steps(6) infinite;
}
@keyframes wayside-grain{
  0%,100%{ transform:translate(0,0); opacity:.05; }
  50%    { transform:translate(.5px,.5px); opacity:.08; }
}

/* ── Shared printerly type primitives ────────────────────────────────────────── */
[data-design="a"] .wayside-eyebrow{
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:var(--track-cap);
  text-transform:uppercase; color:var(--field); margin:0 0 .9rem;
}
[data-design="a"] .wayside-section-head{
  font-family:var(--font-display); font-weight:700; letter-spacing:.02em;
  text-transform:uppercase; font-size:var(--t-head); line-height:1.1;
  color:var(--pine); margin:0 0 clamp(1.5rem,4vw,2.5rem);
}

/* ── My own scroll-reveals (transform + opacity only). Feature image is NOT
   reveal-hidden — body-life parallax needs it visible. ─────────────────────── */
[data-design="a"] [data-rv]{
  opacity:0; transform:translateY(26px);
  transition:opacity var(--settle) var(--ease-out), transform var(--settle) var(--ease-out);
}
[data-design="a"] [data-rv][data-rv-seen]{ opacity:1; transform:none; }

/* ── 1 · HEADER (printed masthead) ───────────────────────────────────────────── */
[data-design="a"] .wayside-header{
  position:sticky; top:0; z-index:40; isolation:isolate;
  background:var(--paper); border-bottom:var(--hair) solid var(--keyline);
}
[data-design="a"] .wayside-header__band{ position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:-1; }
[data-design="a"] .wayside-header__band::before{
  content:""; position:absolute; inset:-30% -10%; opacity:.5;
  background:radial-gradient(60% 120% at 20% 0%,
    color-mix(in oklab,var(--gold),transparent 55%), transparent 60%);
  animation:wayside-bleed-warm 31s var(--ease-out) infinite alternate;
}
[data-design="a"] .wayside-header__bar{
  position:relative; display:flex; align-items:center; justify-content:space-between; gap:1rem;
  max-width:var(--maxw); margin-inline:auto; padding:.8rem var(--gutter);
}
[data-design="a"] .wayside-logo{ position:relative; text-decoration:none; }
[data-design="a"] .wayside-logo__mark{
  position:relative; font-family:var(--font-display); font-weight:700;
  font-size:var(--t-sub); letter-spacing:.02em; text-transform:uppercase; color:var(--pine);
}
[data-design="a"] .wayside-logo__mark::before{
  content:attr(data-reg); position:absolute; left:0; top:0; z-index:-1;
  color:var(--blaze); opacity:.9; transform:translate(var(--reg),var(--reg));
}
[data-design="a"] .wayside-burger{
  display:inline-flex; flex-direction:column; gap:5px; width:48px; height:48px;
  align-items:center; justify-content:center; background:transparent;
  border:var(--hair) solid var(--keyline); cursor:pointer;
}
[data-design="a"] .wayside-burger span{
  width:22px; height:2px; background:var(--ink);
  transition:transform var(--snap) var(--ease-press), opacity var(--snap) var(--ease-out);
}
[data-design="a"] .wayside-burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
[data-design="a"] .wayside-burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
[data-design="a"] .wayside-burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* Drawer — a full paper sheet that tips in from the top edge */
[data-design="a"] .wayside-drawer{
  position:fixed; inset:0; z-index:50; display:none;
}
[data-design="a"] .wayside-drawer[data-open="true"]{ display:block; }
[data-design="a"] .wayside-drawer__scrim{
  position:absolute; inset:0; background:color-mix(in oklab,var(--ink),transparent 35%);
  opacity:0; transition:opacity var(--snap) var(--ease-out);
}
[data-design="a"] .wayside-drawer[data-open="true"] .wayside-drawer__scrim{ opacity:1; }
[data-design="a"] .wayside-drawer__panel{
  position:absolute; inset:0; background:var(--paper);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1.1rem;
  padding:var(--bleed); text-align:center;
  transform:translateY(-12px); opacity:0;
  transition:transform var(--snap) var(--ease-press), opacity var(--snap) var(--ease-out);
}
[data-design="a"] .wayside-drawer[data-open="true"] .wayside-drawer__panel{ transform:translateY(0); opacity:1; }
[data-design="a"] .wayside-drawer__close{
  position:absolute; top:1rem; right:1rem; min-width:48px; min-height:48px;
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:var(--track-cap);
  text-transform:uppercase; color:var(--ink); background:transparent;
  border:var(--hair) solid var(--keyline); cursor:pointer;
}
[data-design="a"] .wayside-marker{
  font-family:var(--font-display); text-transform:uppercase; letter-spacing:.02em;
  color:var(--ink); text-decoration:none; font-size:var(--t-head); line-height:1.2;
  position:relative; padding-bottom:4px;
}
[data-design="a"] .wayside-marker::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:var(--hair);
  background:var(--blaze); transform:scaleX(0); transform-origin:left center;
  transition:transform var(--snap) var(--ease-press);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .wayside-marker:hover::after{ transform:scaleX(1); }
}
[data-design="a"] .wayside-marker:focus-visible::after{ transform:scaleX(1); }
@keyframes wayside-bleed-warm{ from{ transform:translateY(0); opacity:.5; } to{ transform:translateY(-6%); opacity:.22; } }

/* ── The Book stamp (styled CTA — never a bare link) ─────────────────────────── */
[data-design="a"] .wayside-cta{
  --c:var(--blaze);
  display:inline-flex; align-items:center; gap:.6em; min-height:48px;
  padding:.7em 1.2em; font-family:var(--font-display); font-weight:700;
  font-size:var(--t-sub); letter-spacing:.02em; text-transform:uppercase;
  color:var(--paper); background:var(--c); border:var(--hair) solid var(--keyline);
  text-decoration:none; box-shadow:var(--shadow-reg); border-radius:var(--r-frame);
  transition:transform var(--snap) var(--ease-press),
             box-shadow var(--snap) var(--ease-press),
             background-color var(--snap) var(--ease-out);
  animation:wayside-blaze 5s var(--ease-out) infinite;
}
[data-design="a"] .wayside-cta.is-warm{ background:color-mix(in oklab,var(--blaze),var(--gold) 30%); }
[data-design="a"] .wayside-cta__ext{ transition:transform var(--snap) var(--ease-press); }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .wayside-cta:hover{
    background:color-mix(in oklab,var(--blaze),var(--gold) 30%);
    transform:translate(calc(var(--reg)*-1), calc(var(--reg)*-1));
    box-shadow:calc(var(--reg)*2) calc(var(--reg)*2) 0 0 var(--keyline);
  }
  [data-design="a"] .wayside-cta:hover .wayside-cta__ext{ transform:translate(2px,-2px); }
}
[data-design="a"] .wayside-cta:focus-visible{
  outline:none; transform:translate(calc(var(--reg)*-1), calc(var(--reg)*-1));
  box-shadow:0 0 0 var(--hair) var(--paper), 0 0 0 5px var(--blaze);
}
[data-design="a"] .wayside-cta:active{
  transform:translate(var(--reg),var(--reg)); box-shadow:0 0 0 0 var(--keyline);
}
[data-design="a"] .wayside-cta--big{ font-size:var(--t-head); padding:.8em 1.6em; }
@keyframes wayside-blaze{
  0%,100%{ box-shadow:var(--reg) var(--reg) 0 0 var(--keyline); }
  50%    { box-shadow:var(--reg) var(--reg) 0 0 var(--keyline),
                      0 0 18px -2px color-mix(in oklab,var(--blaze),#fff 12%); }
}

/* ── 2 · STORY (place + handoff feature photo) ──────────────────────────────── */
[data-design="a"] .wayside-story{
  max-width:var(--maxw); margin-inline:auto; padding:var(--run) var(--gutter);
  display:grid; grid-template-columns:1fr; gap:clamp(2rem,5vw,3.5rem); align-items:center;
}
@media (min-width:880px){
  [data-design="a"] .wayside-story{ grid-template-columns:1.05fr .95fr; }
}
[data-design="a"] .wayside-story__col{ min-width:0; }
[data-design="a"] .wayside-story__title{
  font-family:var(--font-display); font-weight:700; text-transform:uppercase;
  letter-spacing:.01em; font-size:var(--t-display); line-height:1.08;
  color:var(--pine); margin:0 0 1.1rem;
}
[data-design="a"] .wayside-story__body{
  font-size:var(--t-body); line-height:var(--lh-body); color:var(--ink);
  margin:0 0 1rem; text-wrap:pretty; max-width:60ch;
}
[data-design="a"] .wayside-story__feature{
  margin:0; position:relative; border:var(--hair) solid var(--keyline);
  box-shadow:var(--shadow-reg); background:var(--paper-2);
  aspect-ratio:4/3; overflow:hidden;
}
[data-design="a"] .wayside-story__feature img{
  width:100%; height:100%; object-fit:cover; display:block;
}
[data-design="a"] .wayside-story__cap{
  position:absolute; left:0; bottom:0; z-index:2;
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:var(--track-cap);
  text-transform:uppercase; color:var(--paper);
  background:color-mix(in oklab,var(--ink),transparent 12%); padding:.35em .7em;
}

/* ── Pointer (Element 6) · sun-arc descent ──────────────────────────────────── */
[data-design="a"] .wayside-pointer{
  max-width:var(--maxw); margin-inline:auto; padding:var(--bleed) var(--gutter) calc(var(--bleed) + .5rem);
  display:flex; justify-content:center;
}
[data-design="a"] .wayside-pointer__link{
  display:flex; flex-direction:column; align-items:center; gap:.55rem;
  text-decoration:none; min-height:48px; padding:.4rem 1rem;
}
[data-design="a"] .wayside-pointer__sun{
  width:14px; height:14px; border-radius:50%; background:var(--gold);
  box-shadow:0 0 0 4px color-mix(in oklab,var(--gold),var(--paper) 45%);
  animation:wayside-sun-arc 6s var(--ease-out) infinite alternate;
}
[data-design="a"] .wayside-pointer__rule{
  width:min(180px,42vw); height:var(--hair);
  background:linear-gradient(90deg, var(--keyline), transparent);
  transform:scaleX(.28); transform-origin:left center;
  animation:wayside-shadow-creep 6s var(--ease-out) infinite alternate;
}
[data-design="a"] .wayside-pointer__label{
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:var(--track-cap);
  text-transform:uppercase; color:var(--field); opacity:.55;
  animation:wayside-pointer-fade 6s var(--ease-out) infinite alternate;
}
@keyframes wayside-sun-arc      { from{ transform:translate(-42px,4px); } to{ transform:translate(42px,-4px); } }
@keyframes wayside-shadow-creep { from{ transform:scaleX(.25); } to{ transform:scaleX(1); } }
@keyframes wayside-pointer-fade { from{ opacity:.35; } to{ opacity:1; } }

/* ── 3 · FACTS GRID ─────────────────────────────────────────────────────────── */
[data-design="a"] .wayside-facts{ background:var(--paper); border-block:var(--hair) solid var(--keyline); }
[data-design="a"] .wayside-facts__inner{
  max-width:var(--maxw); margin-inline:auto; padding:var(--run) var(--gutter);
}
[data-design="a"] .wayside-facts__grid{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1.25rem;
}
[data-design="a"] .wayside-fact{
  background:var(--paper-2); border:var(--hair) solid var(--keyline);
  box-shadow:var(--shadow-reg); padding:var(--bleed);
  display:flex; flex-direction:column; gap:.4rem;
  transition:transform var(--snap) var(--ease-press), box-shadow var(--snap) var(--ease-press);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .wayside-fact:hover{
    transform:translate(calc(var(--reg)*-1),calc(var(--reg)*-1));
    box-shadow:calc(var(--reg)*2) calc(var(--reg)*2) 0 0 var(--keyline);
  }
}
[data-design="a"] .wayside-fact__k{
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:var(--track-cap);
  text-transform:uppercase; color:var(--field);
}
[data-design="a"] .wayside-fact__v{
  font-family:var(--font-display); font-weight:700; font-size:var(--t-sub);
  text-transform:uppercase; color:var(--pine); line-height:1.1;
}
[data-design="a"] .wayside-fact__n{ font-size:var(--t-body); color:var(--ink); line-height:1.4; }

/* ── 4 · STAYS SELECTOR (INT-1) ─────────────────────────────────────────────── */
[data-design="a"] .wayside-stays__inner{
  max-width:var(--maxw); margin-inline:auto; padding:var(--run) var(--gutter);
}
[data-design="a"] .wayside-stays__lede{
  font-size:var(--t-sub); color:var(--ink); margin:-1rem 0 2rem; max-width:52ch;
}
[data-design="a"] .wayside-stays__tabs{
  display:flex; flex-wrap:wrap; gap:.6rem; margin-bottom:1.6rem;
}
[data-design="a"] .wayside-stays__tab{
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:.08em;
  text-transform:uppercase; color:var(--ink); cursor:pointer;
  min-height:44px; padding:.5em 1em; background:var(--paper);
  border:var(--hair) solid var(--keyline); border-radius:var(--r-frame);
  box-shadow:var(--shadow-reg);
  transition:transform var(--snap) var(--ease-press), box-shadow var(--snap) var(--ease-press),
             background-color var(--snap) var(--ease-out), color var(--snap) var(--ease-out);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .wayside-stays__tab:hover{
    transform:translate(calc(var(--reg)*-1),calc(var(--reg)*-1));
    box-shadow:calc(var(--reg)*2) calc(var(--reg)*2) 0 0 var(--keyline);
  }
}
[data-design="a"] .wayside-stays__tab:focus-visible{
  outline:none; box-shadow:0 0 0 var(--hair) var(--paper), 0 0 0 5px var(--blaze);
}
[data-design="a"] .wayside-stays__tab[aria-selected="true"]{
  background:var(--pine); color:var(--paper); box-shadow:var(--shadow-blaze);
}
[data-design="a"] .wayside-stays__body{
  display:grid; grid-template-columns:1fr; gap:clamp(1.5rem,4vw,2.5rem); align-items:stretch;
}
@media (min-width:820px){
  [data-design="a"] .wayside-stays__body{ grid-template-columns:1.1fr .9fr; }
}
[data-design="a"] .wayside-stays__media{
  margin:0; border:var(--hair) solid var(--keyline); box-shadow:var(--shadow-reg);
  background:var(--paper-2); aspect-ratio:4/3; overflow:hidden;
}
[data-design="a"] .wayside-stays__media img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition:opacity var(--snap) var(--ease-out), transform var(--settle) var(--ease-out);
}
[data-design="a"] .wayside-stays__media img[data-fading="true"]{ opacity:0; transform:scale(1.02); }
[data-design="a"] .wayside-stays__detail{
  display:flex; flex-direction:column; align-items:flex-start; gap:.7rem; justify-content:center;
  transition:opacity var(--snap) var(--ease-out), transform var(--snap) var(--ease-out);
}
[data-design="a"] .wayside-stays__detail[data-fading="true"]{ opacity:0; transform:translateY(8px); }
[data-design="a"] .wayside-stays__strip{
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:.1em;
  text-transform:uppercase; color:var(--field);
}
[data-design="a"] .wayside-stays__name{
  font-family:var(--font-display); font-weight:700; font-size:var(--t-head);
  text-transform:uppercase; color:var(--pine); margin:0; line-height:1.1;
}
[data-design="a"] .wayside-stays__desc{
  font-size:var(--t-body); line-height:var(--lh-body); color:var(--ink); margin:0; max-width:48ch;
}
[data-design="a"] .wayside-cta--stay{ margin-top:.4rem; }

/* ── 5 · GALLERY (curated, dawn → night) ────────────────────────────────────── */
[data-design="a"] .wayside-gallery{ background:var(--paper); border-top:var(--hair) solid var(--keyline); }
[data-design="a"] .wayside-gallery__inner{
  max-width:var(--maxw); margin-inline:auto; padding:var(--run) var(--gutter);
}
[data-design="a"] .wayside-gallery__grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(1rem,2.5vw,1.5rem);
}
[data-design="a"] .wayside-gallery__fig{
  margin:0; position:relative; border:var(--hair) solid var(--keyline);
  box-shadow:var(--shadow-reg); background:var(--paper-2);
  aspect-ratio:4/3; overflow:hidden;
  transition:transform var(--snap) var(--ease-press), box-shadow var(--snap) var(--ease-press);
}
[data-design="a"] .wayside-gallery__fig--wide{ grid-column:1 / -1; aspect-ratio:16/9; }
[data-design="a"] .wayside-gallery__fig img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition:transform var(--settle) var(--ease-out), filter var(--snap) var(--ease-out);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .wayside-gallery__fig:hover{
    transform:translate(calc(var(--reg)*-1),calc(var(--reg)*-1));
    box-shadow:calc(var(--reg)*2) calc(var(--reg)*2) 0 0 var(--keyline);
  }
  [data-design="a"] .wayside-gallery__fig:hover img{ transform:scale(1.04); }
}
[data-design="a"] .wayside-gallery__fig figcaption{
  position:absolute; left:0; bottom:0; z-index:2;
  font-family:var(--font-mono); font-size:var(--t-cap); letter-spacing:var(--track-cap);
  text-transform:uppercase; color:var(--paper);
  background:color-mix(in oklab,var(--ink),transparent 12%); padding:.35em .7em;
}
[data-design="a"] .wayside-gallery__finale{ display:grid; place-items:center; margin-top:var(--run); }
@media (max-width:560px){
  [data-design="a"] .wayside-gallery__grid{ grid-template-columns:1fr; }
  [data-design="a"] .wayside-gallery__fig--wide{ aspect-ratio:4/3; }
}

/* ── 6 · NEARBY ─────────────────────────────────────────────────────────────── */
[data-design="a"] .wayside-nearby__inner{
  max-width:var(--maxw); margin-inline:auto; padding:var(--run) var(--gutter);
}
[data-design="a"] .wayside-nearby__list{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1.25rem;
}
[data-design="a"] .wayside-near{
  background:var(--paper); border:var(--hair) solid var(--keyline);
  box-shadow:var(--shadow-reg); padding:var(--bleed);
  display:flex; flex-direction:column; gap:.4rem;
  transition:transform var(--snap) var(--ease-press), box-shadow var(--snap) var(--ease-press);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .wayside-near:hover{
    transform:translate(calc(var(--reg)*-1),calc(var(--reg)*-1));
    box-shadow:calc(var(--reg)*2) calc(var(--reg)*2) 0 0 var(--keyline);
  }
}
[data-design="a"] .wayside-near__k{
  font-family:var(--font-display); font-weight:700; font-size:var(--t-sub);
  text-transform:uppercase; color:var(--lake); line-height:1.1;
}
[data-design="a"] .wayside-near__v{ font-size:var(--t-body); line-height:1.45; color:var(--ink); }

/* ── 7 · HOST (the story) ───────────────────────────────────────────────────── */
[data-design="a"] .wayside-host{ background:var(--paper); border-top:var(--hair) solid var(--keyline); }
[data-design="a"] .wayside-host__inner{
  max-width:var(--maxw); margin-inline:auto; padding:var(--run) var(--gutter);
}
[data-design="a"] .wayside-host__plate{
  max-width:68ch; margin-inline:auto;
  background:var(--paper-2); border:var(--hair) solid var(--keyline);
  box-shadow:var(--shadow-reg); padding:clamp(1.75rem,5vw,3rem);
}
[data-design="a"] .wayside-host__title{
  font-family:var(--font-display); font-weight:700; text-transform:uppercase;
  font-size:var(--t-head); color:var(--pine); margin:0 0 1rem; line-height:1.1;
}
[data-design="a"] .wayside-host__body{ font-size:var(--t-body); line-height:var(--lh-body); color:var(--ink); margin:0; text-wrap:pretty; }

/* ── 8 · CLOSING ────────────────────────────────────────────────────────────── */
[data-design="a"] .wayside-closing{
  background:linear-gradient(180deg, var(--pine), color-mix(in oklab,var(--pine),#000 22%));
  border-top:var(--hair) solid var(--keyline);
}
[data-design="a"] .wayside-closing__inner{
  max-width:760px; margin-inline:auto; padding:var(--run) var(--gutter);
  display:flex; flex-direction:column; align-items:flex-start; gap:1rem; text-align:left;
}
[data-design="a"] .wayside-closing__title{
  font-family:var(--font-display); font-weight:700; text-transform:uppercase;
  font-size:var(--t-display); line-height:1.06; color:var(--paper); margin:0;
}
[data-design="a"] .wayside-closing__body{ font-size:var(--t-sub); line-height:1.45; color:color-mix(in oklab,var(--paper),transparent 12%); margin:0; max-width:50ch; }
[data-design="a"] .wayside-closing .wayside-cta{ margin-top:.6rem; }

/* ── Reduced motion ─────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce){
  [data-design="a"] .wayside-grain::after,
  [data-design="a"] .wayside-header__band::before,
  [data-design="a"] .wayside-pointer__sun,
  [data-design="a"] .wayside-pointer__rule,
  [data-design="a"] .wayside-pointer__label,
  [data-design="a"] .wayside-cta{ animation:none; }
  [data-design="a"] .wayside-pointer__rule{ transform:scaleX(1); }
  [data-design="a"] .wayside-pointer__label{ opacity:1; }
  [data-design="a"] [data-rv]{ opacity:1; transform:none; transition:none; }
  [data-design="a"] .wayside-cta,
  [data-design="a"] .wayside-cta__ext,
  [data-design="a"] .wayside-fact,
  [data-design="a"] .wayside-near,
  [data-design="a"] .wayside-gallery__fig,
  [data-design="a"] .wayside-gallery__fig img,
  [data-design="a"] .wayside-stays__tab,
  [data-design="a"] .wayside-stays__media img,
  [data-design="a"] .wayside-stays__detail,
  [data-design="a"] .wayside-marker::after,
  [data-design="a"] .wayside-drawer__panel,
  [data-design="a"] .wayside-drawer__scrim,
  [data-design="a"] .wayside-burger span{ transition:none; }
}

/* ── Mobile safety floor (mandatory tail) ───────────────────────────────────── */
[data-design="a"].dq-design,[data-design="a"] .dq-design{ max-width:100%; overflow-x:clip; }
[data-design="a"].dq-design *{ min-width:0; }
[data-design="a"].dq-design img{ max-width:100%; height:auto; }

/* 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; }
