/* ===========================================================================
   Lost Coast Adventure Camp — design-a (Broadside) — BODY styles
   Scoped to [data-design="a"]; keyframes lc-*-prefixed. Mounts under
   #design-mount BELOW the injected AI hero. No funnel. Single design.
   Windowed-center on every reading column (max-width + margin-inline:auto).
   Motion: transform / opacity / clip-path / box-shadow / filter / color only —
   never a layout/paint prop. Scroll-reveals + the data-bl-feature parallax are
   owned by the injected body-life.js; this slice owns the Stays selector.
   =========================================================================== */

/* ── Token contract (Broadside — parchment + vermillion seal, scoped) ──────── */
[data-design="a"][data-lc] {
  --bd-parchment:      #F2EBDB;
  --bd-parchment-deep: #E8DEC5;
  --bd-parchment-edge: #DCD0B2;
  --bd-ink:            #1A1612;
  --bd-ink-soft:       #3A322B;
  --bd-ink-mute:       #6B5F50;
  --bd-vermillion:     #B33A2A;
  --bd-vermillion-deep:#8A2A1E;
  --bd-oxblood:        #5C2018;
  --bd-brass:          #A6864A;
  --bd-foxing:         #9B8869;
  --bd-rule:           rgba(26,22,18,.32);
  --bd-rule-faint:     rgba(26,22,18,.14);

  --bd-display:"EB Garamond","Cormorant Garamond",Georgia,"Times New Roman",serif;
  --bd-body:   "Spectral","Iowan Old Style",Georgia,"Times New Roman",serif;
  --bd-mono:   "JetBrains Mono","IBM Plex Mono",ui-monospace,Menlo,monospace;

  --bd-t-display:clamp(2rem,5vw,3.25rem);
  --bd-t-section:clamp(1.75rem,4vw,2.75rem);
  --bd-t-lede:  clamp(1.25rem,2vw,1.6rem);
  --bd-t-body:  clamp(1.0625rem,1.2vw,1.2rem);
  --bd-t-meta:  0.6875rem;

  --bd-snug:8px; --bd-margin:16px; --bd-gutter:24px; --bd-bay:40px;
  --bd-stanza:64px; --bd-chapter:96px;

  --bd-d-press:120ms; --bd-d-register:220ms; --bd-d-settle:420ms; --bd-d-unfurl:640ms;
  --bd-ease-settle:cubic-bezier(.22,.61,.36,1);
  --bd-ease-register:cubic-bezier(.4,0,.2,1);
  --bd-ease-unfurl:cubic-bezier(.16,.84,.44,1);

  --bd-maxw:1280px; --bd-maxw-narrow:760px;

  color:var(--bd-ink-soft);
  background:var(--bd-parchment);
  font-family:var(--bd-body);
  -webkit-font-smoothing:antialiased;
}

/* ── The windowed-center column — EVERY reading column uses this ──────────── */
[data-design="a"] .lc-col {
  max-width:var(--bd-maxw);
  margin-inline:auto;
  padding-inline:clamp(20px,5vw,48px);
  box-sizing:border-box;
}
[data-design="a"] .lc-col--narrow { max-width:var(--bd-maxw-narrow); }

/* ── Shared type primitives ───────────────────────────────────────────────── */
[data-design="a"] .lc-eyebrow {
  font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.22em;
  text-transform:uppercase; color:var(--bd-ink-mute); margin:0 0 var(--bd-margin);
}
[data-design="a"] .lc-section-title {
  font-family:var(--bd-display); font-weight:500; font-size:var(--bd-t-section);
  line-height:1.06; letter-spacing:-.008em; color:var(--bd-ink); margin:0;
}
[data-design="a"] .lc-lede {
  font-family:var(--bd-display); font-weight:500; font-style:italic;
  font-size:var(--bd-t-lede); line-height:1.4; color:var(--bd-ink);
  margin:var(--bd-bay) 0 var(--bd-margin); max-width:60ch;
}
[data-design="a"] .lc-body {
  font-size:var(--bd-t-body); line-height:1.62; color:var(--bd-ink-soft);
  margin:0 0 var(--bd-margin); max-width:65ch;
}
[data-design="a"] .lc-body:last-child { margin-bottom:0; }
[data-design="a"].dq-design em { font-style:italic; color:var(--bd-oxblood); }

/* ── Element 1 — header / masthead ────────────────────────────────────────── */
[data-design="a"] .lc-header {
  position:relative; isolation:isolate; overflow:hidden;
  background:var(--bd-parchment);
  border-bottom:1px solid var(--bd-rule);
}
[data-design="a"] .lc-header__wash {
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(140% 220% at 8% 50%, rgba(179,58,42,.10), transparent 55%),
    radial-gradient(120% 200% at 92% 50%, rgba(166,134,74,.14), transparent 60%);
  animation:lc-header-wash 27s var(--bd-ease-settle) infinite alternate;
}
[data-design="a"] .lc-header__rule {
  position:absolute; left:0; right:0; bottom:-1px; height:2px; z-index:1;
  background:linear-gradient(90deg, transparent, var(--bd-vermillion) 18%, var(--bd-oxblood) 50%, var(--bd-vermillion) 82%, transparent);
  transform:scaleX(0); transform-origin:left center; opacity:.9;
  animation:lc-rule-draw 1100ms 200ms var(--bd-ease-settle) forwards,
            lc-rule-breath 31s 1500ms var(--bd-ease-settle) infinite;
}
[data-design="a"] .lc-header__bar {
  position:relative; z-index:2;
  max-width:var(--bd-maxw); margin-inline:auto;
  padding:clamp(16px,2.2vw,22px) clamp(20px,5vw,48px);
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
[data-design="a"] .lc-logo { text-decoration:none; display:flex; flex-direction:column; gap:3px; }
[data-design="a"] .lc-logo__mark {
  font-family:var(--bd-display); font-weight:600; font-size:clamp(1.1rem,2.4vw,1.5rem);
  letter-spacing:.005em; color:var(--bd-ink); line-height:1;
}
[data-design="a"] .lc-logo__seal {
  font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.2em;
  text-transform:uppercase; color:var(--bd-ink-mute);
}
@media (max-width:560px){ [data-design="a"] .lc-logo__seal { display:none; } }

[data-design="a"] .lc-burger {
  appearance:none; background:var(--bd-parchment); border:1px solid var(--bd-rule);
  width:48px; height:48px; min-width:48px; display:grid; place-content:center; gap:5px;
  cursor:pointer; padding:0; transition:background var(--bd-d-register) var(--bd-ease-register);
}
[data-design="a"] .lc-burger span {
  display:block; width:22px; height:2px; background:var(--bd-ink);
  transition:transform var(--bd-d-settle) var(--bd-ease-unfurl), opacity var(--bd-d-settle) ease;
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-burger:hover { background:var(--bd-parchment-deep); }
}
[data-design="a"] .lc-burger:focus-visible { outline:2px solid var(--bd-vermillion); outline-offset:3px; }
[data-design="a"] .lc-burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
[data-design="a"] .lc-burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
[data-design="a"] .lc-burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* drawer (tipped-in note) */
[data-design="a"] .lc-drawer {
  position:relative; z-index:2; background:var(--bd-parchment-deep);
  border-bottom:1px solid var(--bd-rule);
  max-width:var(--bd-maxw); margin-inline:auto;
  padding:clamp(20px,4vw,40px) clamp(20px,5vw,48px);
  display:flex; flex-direction:column; gap:6px;
  transform-origin:top center; clip-path:inset(0 0 100% 0);
  transition:clip-path var(--bd-d-unfurl) var(--bd-ease-unfurl);
}
[data-design="a"] .lc-drawer[data-open]{ clip-path:inset(0 0 0 0); }
[data-design="a"] .lc-drawer__cap {
  font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.24em;
  text-transform:uppercase; color:var(--bd-ink-mute); margin:0 0 6px;
}
[data-design="a"] .lc-drawer__link {
  font-family:var(--bd-display); font-size:1.25rem; color:var(--bd-ink);
  text-decoration:none; padding:10px 0; min-height:44px; display:flex; align-items:baseline; gap:10px;
  border-bottom:1px solid var(--bd-rule-faint);
  transition:color var(--bd-d-register) var(--bd-ease-register), transform var(--bd-d-register) var(--bd-ease-register);
}
[data-design="a"] .lc-drawer__link small { font-family:var(--bd-mono); font-size:.7rem; color:var(--bd-foxing); letter-spacing:.1em; }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-drawer__link:hover { color:var(--bd-vermillion-deep); transform:translateX(8px); }
}
[data-design="a"] .lc-drawer__link:focus-visible { outline:2px solid var(--bd-vermillion); outline-offset:3px; }
[data-design="a"] .lc-drawer__book {
  margin-top:14px; align-self:flex-start;
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--bd-display); font-weight:600; font-size:1.05rem; letter-spacing:.03em;
  color:#F8EFE0; background:var(--bd-vermillion); border:1px solid var(--bd-vermillion-deep);
  padding:14px 26px; min-height:48px; text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,220,200,.35), inset 0 -1px 0 rgba(0,0,0,.18);
  transition:background var(--bd-d-register) var(--bd-ease-register), transform var(--bd-d-press) var(--bd-ease-register);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-drawer__book:hover { background:var(--bd-vermillion-deep); transform:translateY(-1px); }
}
[data-design="a"] .lc-drawer__book:focus-visible { outline:2px solid var(--bd-ink); outline-offset:3px; }

/* ── Element 2 — the CTA (wax-seal-press) ─────────────────────────────────── */
[data-design="a"] .lc-cta {
  position:relative; display:inline-flex; align-items:center; gap:14px;
  padding:18px 30px; min-height:56px; box-sizing:border-box;
  background:var(--bd-vermillion); color:#F8EFE0;
  font-family:var(--bd-display); font-size:1.15rem; font-weight:600; letter-spacing:.04em;
  border:1px solid var(--bd-vermillion-deep); text-decoration:none; isolation:isolate; cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,220,200,.35), inset 0 -1px 0 rgba(0,0,0,.18), 0 1px 0 rgba(0,0,0,.08);
  transition:transform var(--bd-d-press) var(--bd-ease-register),
             box-shadow var(--bd-d-press) var(--bd-ease-register),
             background var(--bd-d-register) var(--bd-ease-register);
  animation:lc-cta-breath 5.2s var(--bd-ease-settle) infinite;
}
[data-design="a"] .lc-cta__ext { font-size:1em; transition:transform var(--bd-d-register) var(--bd-ease-register); }
[data-design="a"] .lc-cta:hover { background:var(--bd-vermillion-deep);
  box-shadow:inset 0 1px 0 rgba(255,220,200,.45), inset 0 -2px 0 rgba(0,0,0,.22), 0 4px 0 rgba(0,0,0,.10); }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-cta:hover { transform:translateY(-1px); }
  [data-design="a"] .lc-cta:hover .lc-cta__ext { transform:translate(2px,-2px); }
}
[data-design="a"] .lc-cta:active { transform:translateY(1px);
  box-shadow:inset 0 1px 0 rgba(0,0,0,.20), inset 0 -1px 0 rgba(255,220,200,.10); }
[data-design="a"] .lc-cta:focus-visible { outline:2px solid var(--bd-ink); outline-offset:3px; }
[data-design="a"] .lc-cta--lg { font-size:1.3rem; padding:22px 40px; }

/* ── Place story ─────────────────────────────────────────────────────────── */
[data-design="a"] .lc-place {
  padding:clamp(64px,9vw,120px) 0 clamp(48px,6vw,72px);
  border-bottom:1px solid var(--bd-rule);
}
[data-design="a"] .lc-place__title {
  font-family:var(--bd-display); font-weight:500; font-size:var(--bd-t-display);
  line-height:1.05; letter-spacing:-.012em; color:var(--bd-ink); margin:0; max-width:16ch;
}
[data-design="a"] .lc-place__feature {
  position:relative; margin:clamp(40px,6vw,72px) auto 0;
  max-width:var(--bd-maxw); padding-inline:clamp(20px,5vw,48px); box-sizing:border-box;
}
[data-design="a"] .lc-place__feature img {
  display:block; width:100%; height:clamp(300px,48vw,560px); object-fit:cover;
  border:1px solid var(--bd-parchment-edge);
}
[data-design="a"] .lc-place__cap {
  font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.18em;
  text-transform:uppercase; color:var(--bd-ink-mute);
  margin:12px 0 0; padding-inline:clamp(20px,5vw,48px);
}

/* ── Pointer ─────────────────────────────────────────────────────────────── */
[data-design="a"] .lc-pointer {
  position:relative; z-index:5; max-width:var(--bd-maxw); margin:-8px auto 0;
  padding:0 clamp(20px,5vw,48px); display:flex; justify-content:center; pointer-events:none;
}
[data-design="a"] .lc-pointer__inner {
  display:flex; flex-direction:column; align-items:center; gap:12px; pointer-events:auto; cursor:pointer;
}
[data-design="a"] .lc-pointer__rule {
  width:1px; height:96px;
  background:linear-gradient(to bottom, transparent, var(--bd-vermillion) 30%, var(--bd-vermillion-deep) 100%);
  transform-origin:top center;
  animation:lc-pointer-draw 1400ms 700ms var(--bd-ease-settle) both,
            lc-pointer-breath 5.4s 2400ms var(--bd-ease-settle) infinite;
}
[data-design="a"] .lc-pointer__chevron { width:28px; height:18px; color:var(--bd-vermillion-deep);
  animation:lc-pointer-breath 5.4s 2400ms var(--bd-ease-settle) infinite; }
[data-design="a"] .lc-pointer__label {
  font-family:var(--bd-mono); font-size:.625rem; letter-spacing:.32em; text-transform:uppercase;
  color:var(--bd-ink-mute);
}

/* ── Facts ledger ────────────────────────────────────────────────────────── */
[data-design="a"] .lc-facts {
  padding:clamp(64px,9vw,120px) 0;
  background:var(--bd-parchment-deep); border-bottom:1px solid var(--bd-rule);
}
[data-design="a"] .lc-facts__head { margin-bottom:var(--bd-stanza); }
[data-design="a"] .lc-ledger { margin:0; display:flex; flex-direction:column; }
[data-design="a"] .lc-ledger__row {
  display:grid; grid-template-columns:90px 1fr; gap:var(--bd-gutter); align-items:baseline;
  padding:22px 0; position:relative; border-bottom:1px solid var(--bd-rule-faint);
}
[data-design="a"] .lc-ledger__num {
  font-family:var(--bd-mono); font-size:.875rem; letter-spacing:.1em; color:var(--bd-vermillion-deep); margin:0;
}
[data-design="a"] .lc-ledger__body { margin:0; display:flex; flex-direction:column; gap:4px; }
[data-design="a"] .lc-ledger__k {
  font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.2em;
  text-transform:uppercase; color:var(--bd-ink-mute);
}
[data-design="a"] .lc-ledger__v {
  font-family:var(--bd-display); font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.3; color:var(--bd-ink);
}
@media (max-width:560px){
  [data-design="a"] .lc-ledger__row { grid-template-columns:1fr; row-gap:6px; }
}

/* ── Stays selector (INT-1) ──────────────────────────────────────────────── */
[data-design="a"] .lc-stays { padding:clamp(64px,9vw,120px) 0; border-bottom:1px solid var(--bd-rule); }
[data-design="a"] .lc-stays__head { margin-bottom:var(--bd-stanza); }
[data-design="a"] .lc-stays__intro { margin-top:var(--bd-margin); }
[data-design="a"] .lc-find { display:grid; grid-template-columns:1fr; gap:clamp(20px,3vw,32px); }
@media (min-width:880px){ [data-design="a"] .lc-find { grid-template-columns:300px 1fr; align-items:start; } }

[data-design="a"] .lc-find__list { display:flex; flex-direction:column; gap:10px; }
[data-design="a"] .lc-site {
  appearance:none; text-align:left; cursor:pointer;
  background:var(--bd-parchment); border:1px solid var(--bd-rule-faint);
  padding:16px 18px; min-height:56px; display:flex; flex-direction:column; gap:4px;
  font-family:inherit; color:var(--bd-ink);
  transition:transform var(--bd-d-register) var(--bd-ease-register),
             border-color var(--bd-d-register) var(--bd-ease-register),
             background var(--bd-d-register) var(--bd-ease-register);
}
[data-design="a"] .lc-site__name { font-family:var(--bd-display); font-weight:600; font-size:1.2rem; }
[data-design="a"] .lc-site__note { font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.16em; text-transform:uppercase; color:var(--bd-ink-mute); }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-site:hover { transform:translateX(4px); border-color:var(--bd-rule); }
}
[data-design="a"] .lc-site:focus-visible { outline:2px solid var(--bd-vermillion); outline-offset:2px; }
[data-design="a"] .lc-site[aria-checked="true"] {
  background:var(--bd-parchment-deep); border-color:var(--bd-vermillion);
  box-shadow:inset 3px 0 0 var(--bd-vermillion);
}

[data-design="a"] .lc-find__preview {
  background:var(--bd-parchment-deep); border:1px solid var(--bd-ink);
  box-shadow:1px 1px 0 var(--bd-parchment-edge), 2px 2px 0 var(--bd-parchment-edge), 3px 3px 0 var(--bd-parchment-edge);
  overflow:hidden;
}
[data-design="a"] .lc-find__photo {
  width:100%; height:clamp(220px,32vw,360px);
  background-size:cover; background-position:center; background-color:var(--bd-foxing);
  transition:opacity var(--bd-d-settle) var(--bd-ease-settle);
}
[data-design="a"] .lc-find__body { padding:clamp(22px,3vw,36px); }
[data-design="a"] .lc-find__body[data-swap] { animation:lc-swap var(--bd-d-settle) var(--bd-ease-settle); }
[data-design="a"] .lc-find__kicker {
  font-family:var(--bd-mono); font-size:var(--bd-t-meta); letter-spacing:.2em;
  text-transform:uppercase; color:var(--bd-vermillion-deep); margin:0 0 8px;
}
[data-design="a"] .lc-find__name { font-family:var(--bd-display); font-weight:500; font-size:clamp(1.6rem,3vw,2.2rem); color:var(--bd-ink); margin:0; line-height:1.08; }
[data-design="a"] .lc-find__type { font-family:var(--bd-mono); font-size:.8125rem; letter-spacing:.1em; color:var(--bd-ink-mute); margin:8px 0 16px; }
[data-design="a"] .lc-find__desc { font-size:var(--bd-t-body); line-height:1.6; color:var(--bd-ink-soft); margin:0 0 16px; max-width:62ch; }
[data-design="a"] .lc-find__incl { list-style:none; margin:0 0 24px; padding:0; display:flex; flex-direction:column; gap:8px; }
[data-design="a"] .lc-find__incl li {
  position:relative; padding-left:22px; font-size:1rem; line-height:1.5; color:var(--bd-ink-soft);
}
[data-design="a"] .lc-find__incl li::before {
  content:""; position:absolute; left:0; top:.55em; width:7px; height:7px; border-radius:50%;
  background:var(--bd-vermillion);
}
[data-design="a"] .lc-cta--inline { font-size:1.05rem; padding:16px 26px; }

/* ── Gallery ─────────────────────────────────────────────────────────────── */
[data-design="a"] .lc-gallery { padding:clamp(64px,9vw,120px) 0; background:var(--bd-parchment-deep); border-bottom:1px solid var(--bd-rule); }
[data-design="a"] .lc-gallery__head { margin-bottom:var(--bd-stanza); }
[data-design="a"] .lc-gallery__grid { display:grid; grid-template-columns:1fr; gap:var(--bd-gutter); }
@media (min-width:680px){ [data-design="a"] .lc-gallery__grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:980px){ [data-design="a"] .lc-gallery__grid { grid-template-columns:repeat(3,1fr); } }
[data-design="a"] .lc-gallery__frame { margin:0; overflow:hidden; border:1px solid var(--bd-parchment-edge); background:var(--bd-foxing); }
[data-design="a"] .lc-gallery__frame img {
  display:block; width:100%; height:clamp(200px,26vw,300px); object-fit:cover;
  transition:transform var(--bd-d-unfurl) var(--bd-ease-settle), filter var(--bd-d-unfurl) ease;
  filter:saturate(.96);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-gallery__frame img:hover { transform:scale(1.04); filter:saturate(1.05); }
}
@media (min-width:980px){
  [data-design="a"] .lc-gallery__frame--wide { grid-column:span 2; }
  [data-design="a"] .lc-gallery__frame--wide img { height:clamp(280px,32vw,420px); }
}

/* ── Nearby ──────────────────────────────────────────────────────────────── */
[data-design="a"] .lc-nearby { padding:clamp(64px,9vw,120px) 0; border-bottom:1px solid var(--bd-rule); }
[data-design="a"] .lc-nearby__head { margin-bottom:var(--bd-stanza); }
[data-design="a"] .lc-nearby__grid { display:grid; grid-template-columns:1fr; gap:clamp(20px,3vw,32px); }
@media (min-width:740px){ [data-design="a"] .lc-nearby__grid { grid-template-columns:repeat(3,1fr); } }
[data-design="a"] .lc-near {
  background:var(--bd-parchment-deep); border:1px solid var(--bd-rule-faint);
  border-top:2px solid var(--bd-vermillion);
  padding:clamp(22px,3vw,32px);
  transition:transform var(--bd-d-register) var(--bd-ease-register);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .lc-near:hover { transform:translateY(-3px); }
}
[data-design="a"] .lc-near__name { font-family:var(--bd-display); font-weight:600; font-size:1.4rem; color:var(--bd-ink); margin:0 0 10px; }
[data-design="a"] .lc-near__desc { font-size:1rem; line-height:1.55; color:var(--bd-ink-soft); margin:0; }

/* ── Hosts ───────────────────────────────────────────────────────────────── */
[data-design="a"] .lc-host { padding:clamp(64px,9vw,120px) 0; border-bottom:1px solid var(--bd-rule); }

/* ── Closing ─────────────────────────────────────────────────────────────── */
[data-design="a"] .lc-close { padding:clamp(72px,10vw,140px) 0 clamp(80px,11vw,150px); background:var(--bd-parchment-deep); }
[data-design="a"] .lc-close__inner { text-align:center; display:flex; flex-direction:column; align-items:center; }
[data-design="a"] .lc-close__seal {
  font-size:2rem; color:var(--bd-vermillion); margin:0 0 var(--bd-margin);
  animation:lc-seal-breath 5.6s var(--bd-ease-settle) infinite;
}
[data-design="a"] .lc-close__title {
  font-family:var(--bd-display); font-weight:500; font-size:var(--bd-t-display);
  line-height:1.06; color:var(--bd-ink); margin:0 0 var(--bd-margin);
}
[data-design="a"] .lc-close__sub { margin:0 auto var(--bd-bay); text-align:center; max-width:52ch; }

/* ── Keyframes (transform / opacity / box-shadow / color only) ────────────── */
@keyframes lc-header-wash { 0%,100% { background-position:0% 50%,100% 50%; } 50% { background-position:6% 48%,94% 52%; } }
@keyframes lc-rule-draw { to { transform:scaleX(1); } }
@keyframes lc-rule-breath { 0%,100% { opacity:.9; } 50% { opacity:.55; } }
@keyframes lc-pointer-draw { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes lc-pointer-breath { 0%,100% { opacity:1; transform:translateY(0); } 50% { opacity:.5; transform:translateY(3px); } }
@keyframes lc-cta-breath {
  0%,100% { box-shadow:inset 0 1px 0 rgba(255,220,200,.35), inset 0 -1px 0 rgba(0,0,0,.18), 0 1px 0 rgba(0,0,0,.08), 0 0 0 0 rgba(179,58,42,.22); }
  50%     { box-shadow:inset 0 1px 0 rgba(255,220,200,.42), inset 0 -1px 0 rgba(0,0,0,.20), 0 1px 0 rgba(0,0,0,.08), 0 0 0 9px rgba(179,58,42,0); }
}
@keyframes lc-swap { from { opacity:.45; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes lc-seal-breath { 0%,100% { transform:scale(1); opacity:1; } 50% { transform:scale(1.12); opacity:.7; } }

/* ── Reduced motion ──────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce){
  [data-design="a"] .lc-header__wash,
  [data-design="a"] .lc-header__rule,
  [data-design="a"] .lc-pointer__rule,
  [data-design="a"] .lc-pointer__chevron,
  [data-design="a"] .lc-cta,
  [data-design="a"] .lc-close__seal { animation:none !important; }
  [data-design="a"] .lc-header__rule { transform:scaleX(1); }
  [data-design="a"] .lc-pointer__rule { transform:scaleY(1); }
  [data-design="a"] .lc-find__body[data-swap] { animation:none !important; }
  [data-design="a"] .lc-drawer { transition-duration:120ms; }
  [data-design="a"] .lc-gallery__frame img,
  [data-design="a"] .lc-site,
  [data-design="a"] .lc-near,
  [data-design="a"] .lc-cta { transition:none; }
}

/* ── Mobile 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; }

/* Re-assert fixed cover heights for object-fit:cover frames (incl. the parallax
   feature, which must fill its clipping frame so scale(1.10) reveals no edge). */
[data-design="a"].dq-design .lc-place__feature img { height:clamp(300px,48vw,560px); }
[data-design="a"].dq-design .lc-gallery__frame img { height:clamp(200px,26vw,300px); }
@media (min-width:980px){
  [data-design="a"].dq-design .lc-gallery__frame--wide img { height:clamp(280px,32vw,420px); }
}

/* 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; }
