/* ===========================================================================
   Prosper Bluff — design-a body styles (Heliotrope grammar, coastal register)
   Scoped to [data-design="a"]. BODY ONLY — the hero is injected by the shell.
   Motion: transform / opacity / clip-path only. Every reading column is
   windowed-centered (max-width + margin-inline:auto).
   =========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=Lora:ital,wght@0,400;0,500;1,400&family=Manrope:wght@500;600&family=JetBrains+Mono&display=swap');

/* ── Tokens ──────────────────────────────────────────────────────────────── */
[data-design="a"].pb,
[data-design="a"] .pb {
  --pb-ivory:#F5EDE0; --pb-ivory-deep:#EBE0CD; --pb-ivory-edge:#DDCFB6;
  --pb-ink:#2A2025; --pb-ink-soft:#4A3D44; --pb-mute:#7B6E6F;
  --pb-mauve:#8A6E94; --pb-mauve-deep:#634D6E;
  --pb-sage:#8FA083; --pb-sage-deep:#5D7152;
  --pb-gilt:#B89A4E; --pb-dust:#C4B3A0;
  --pb-rule:rgba(42,32,37,.22); --pb-rule-faint:rgba(42,32,37,.10);
  --pb-ease-hush:cubic-bezier(.32,.72,.32,1);
  --pb-ease-bloom:cubic-bezier(.16,.84,.44,1);
  --pb-ease-petal:cubic-bezier(.4,0,.2,1);
  --pb-maxw:1280px;
  /* hand the body-life CTA-floor + design-toggle dot the right palette */
  --bl-cta-bg:linear-gradient(135deg,#8A6E94,#634D6E);
  --bl-cta-ink:#F5EDE0;
  --design-a-primary:#8A6E94;
}

[data-design="a"].pb{
  font-family:"Lora",Georgia,serif; color:var(--pb-ink);
  background:var(--pb-ivory);
}
[data-design="a"].pb *{box-sizing:border-box;}

/* shared windowed-center column */
[data-design="a"] .pb-col,
[data-design="a"] .pb-story__grid,
[data-design="a"] .pb-facts__head,
[data-design="a"] .pb-facts__grid,
[data-design="a"] .pb-stays__head,
[data-design="a"] .pb-selector,
[data-design="a"] .pb-gallery__head,
[data-design="a"] .pb-gallery__grid,
[data-design="a"] .pb-nearby__head,
[data-design="a"] .pb-nearby__list,
[data-design="a"] .pb-host__inner,
[data-design="a"] .pb-closing__inner,
[data-design="a"] .pb-header__bar,
[data-design="a"] .pb-header__rule{
  max-width:var(--pb-maxw); margin-inline:auto;
  padding-inline:clamp(20px,5vw,48px);
}

/* shared eyebrow */
[data-design="a"] .pb-eyebrow{
  font-family:"Manrope",sans-serif; font-size:11px; font-weight:600; letter-spacing:.22em;
  color:var(--pb-mute); text-transform:uppercase;
  display:inline-flex; align-items:center; gap:12px; margin-bottom:24px;
}
[data-design="a"] .pb-eyebrow__mark{ width:6px; height:6px; background:var(--pb-mauve); border-radius:50%; display:inline-block; }

/* shared section titles */
[data-design="a"] .pb-story__title,
[data-design="a"] .pb-facts__title,
[data-design="a"] .pb-stays__title,
[data-design="a"] .pb-gallery__title,
[data-design="a"] .pb-nearby__title,
[data-design="a"] .pb-host__title,
[data-design="a"] .pb-closing__title{
  font-family:"Cormorant Garamond",serif; font-weight:400; letter-spacing:-.005em;
  font-size:clamp(34px,5vw,64px); line-height:1.05; margin:0; text-wrap:balance;
}
[data-design="a"] .pb-story__title em,[data-design="a"] .pb-facts__title em,
[data-design="a"] .pb-stays__title em,[data-design="a"] .pb-gallery__title em,
[data-design="a"] .pb-nearby__title em,[data-design="a"] .pb-host__title em{
  color:var(--pb-mauve-deep); font-style:italic; font-weight:300;
}

/* =========================================================================
   1 · HEADER
   ========================================================================= */
[data-design="a"] .pb-header{
  position:sticky; top:0; z-index:40; background:var(--pb-ivory); isolation:isolate;
  border-bottom:1px solid var(--pb-rule-faint);
}
[data-design="a"] .pb-header__bar{
  display:flex; align-items:center; justify-content:space-between;
  padding-block:20px;
}
[data-design="a"] .pb-logo{ text-decoration:none; color:var(--pb-ink); display:inline-flex; align-items:baseline; gap:16px; white-space:nowrap; }
[data-design="a"] .pb-logo__mark{ font-family:"Cormorant Garamond",serif; font-weight:400; font-style:italic; font-size:clamp(24px,2.4vw,32px); letter-spacing:-.005em; }
[data-design="a"] .pb-logo__est{
  font-family:"Manrope",sans-serif; font-size:11px; font-weight:500; letter-spacing:.22em;
  color:var(--pb-mute); text-transform:uppercase; padding-left:16px; border-left:1px solid var(--pb-rule);
}
@media (max-width:640px){ [data-design="a"] .pb-logo__est{ display:none; } }

[data-design="a"] .pb-menu-btn{
  appearance:none; background:var(--pb-ivory-deep); color:var(--pb-ink); border:1px solid var(--pb-mauve);
  display:inline-flex; align-items:center; gap:10px; padding:0 18px; height:44px; min-width:44px; cursor:pointer;
  font-family:"Cormorant Garamond",serif; font-style:italic; font-size:17px;
  transition:background 180ms var(--pb-ease-petal), color 180ms var(--pb-ease-petal);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .pb-menu-btn:hover{ background:var(--pb-mauve); color:var(--pb-ivory); }
  [data-design="a"] .pb-menu-btn:hover .pb-menu-btn__sprig{ color:var(--pb-ivory); }
}
[data-design="a"] .pb-menu-btn:focus-visible{ outline:2px solid var(--pb-gilt); outline-offset:3px; }
[data-design="a"] .pb-menu-btn__sprig{ display:inline-grid; place-items:center; width:14px; height:14px; color:var(--pb-mauve); transition:transform 280ms var(--pb-ease-bloom), color 180ms var(--pb-ease-petal); }
[data-design="a"] .pb-menu-btn[aria-expanded="true"] .pb-menu-btn__sprig{ transform:rotate(90deg); }

[data-design="a"] .pb-header__rule{ position:relative; height:18px; pointer-events:none; }
[data-design="a"] .pb-header__rule-line{
  position:absolute; left:clamp(20px,5vw,48px); right:clamp(20px,5vw,48px); top:50%; height:1px;
  background:var(--pb-mauve); opacity:.7; transform:scaleX(0); transform-origin:left center;
  animation:pb-rule-draw 1800ms 300ms var(--pb-ease-hush) forwards;
}
[data-design="a"] .pb-header__sprig{
  position:absolute; left:50%; top:-2px; width:36px; height:18px; color:var(--pb-sage-deep);
  background:var(--pb-ivory); padding:0 6px; opacity:0; transform-origin:bottom center;
  animation:pb-sprig-in 600ms 1800ms var(--pb-ease-bloom) forwards, pb-sprig-sway 18s 2400ms var(--pb-ease-hush) infinite;
}
[data-design="a"] .pb-header__sprig svg{ width:100%; height:100%; display:block; }
@keyframes pb-rule-draw{ to{ transform:scaleX(1); } }
@keyframes pb-sprig-in{ from{ opacity:0; transform:translateX(-50%) translateY(-4px); } to{ opacity:1; transform:translateX(-50%) translateY(0); } }
@keyframes pb-sprig-sway{ 0%{ transform:translateX(-50%) rotate(0deg); } 50%{ transform:translateX(-50%) rotate(2deg); } 100%{ transform:translateX(-50%) rotate(0deg); } }

/* Drawer */
[data-design="a"] .pb-drawer{
  position:fixed; inset:0; z-index:35; background:var(--pb-ivory-deep);
  transform:translateY(-100%); transition:transform 780ms var(--pb-ease-bloom);
  padding-top:92px; overflow-y:auto;
}
[data-design="a"] .pb-drawer[data-open="true"]{ transform:translateY(0); }
[data-design="a"] .pb-drawer__inner{
  max-width:1080px; margin-inline:auto; padding:clamp(32px,5vw,72px) clamp(20px,5vw,48px);
  display:grid; gap:4px;
}
[data-design="a"] .pb-drawer a:not(.pb-cta){
  display:grid; grid-template-columns:36px 1fr auto; gap:16px; align-items:baseline;
  padding:18px 0; color:var(--pb-ink); text-decoration:none; border-bottom:1px solid var(--pb-rule-faint);
  font-family:"Cormorant Garamond",serif; font-weight:300; font-style:italic;
  font-size:clamp(30px,5vw,56px); letter-spacing:-.005em; line-height:1.05;
  transition:transform 520ms var(--pb-ease-hush), color 280ms var(--pb-ease-petal);
}
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .pb-drawer a:not(.pb-cta):hover{ color:var(--pb-mauve-deep); transform:translateX(24px); }
  [data-design="a"] .pb-drawer a:not(.pb-cta):hover .pb-drawer__sprig{ opacity:1; }
}
[data-design="a"] .pb-drawer__sprig{ color:var(--pb-sage); font-size:24px; font-style:normal; opacity:0; transition:opacity 280ms var(--pb-ease-bloom); }
[data-design="a"] .pb-drawer a small{ font-family:"Manrope",sans-serif; font-size:11px; font-weight:500; letter-spacing:.22em; color:var(--pb-mute); text-transform:uppercase; font-style:normal; }
[data-design="a"] .pb-cta--drawer{ margin-top:28px; justify-self:start; }

/* =========================================================================
   CTA — mauve calling-card button (styled, never bare)
   ========================================================================= */
[data-design="a"] .pb-cta{
  position:relative; display:inline-flex; align-items:center; gap:12px;
  padding:15px 28px; min-height:48px;
  background:var(--pb-mauve); color:var(--pb-gilt);
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:500; font-size:19px; letter-spacing:.005em;
  border:1px solid var(--pb-mauve-deep); text-decoration:none; cursor:pointer; line-height:1.1;
  transition:background 180ms var(--pb-ease-petal), transform 180ms var(--pb-ease-petal);
  animation:pb-cta-halo 5.6s var(--pb-ease-hush) infinite;
}
[data-design="a"] .pb-cta__ext{ display:inline-grid; place-items:center; font-style:normal; font-size:16px; color:var(--pb-gilt); transition:transform 280ms var(--pb-ease-bloom); }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .pb-cta:hover{ background:var(--pb-mauve-deep); }
  [data-design="a"] .pb-cta:hover .pb-cta__ext{ transform:translate(2px,-2px); }
}
[data-design="a"] .pb-cta:active{ transform:translateY(1px); }
[data-design="a"] .pb-cta:focus-visible{ outline:2px solid var(--pb-gilt); outline-offset:3px; }
[data-design="a"] .pb-cta--lg{ font-size:22px; padding:18px 36px; }
@keyframes pb-cta-halo{ 0%,100%{ box-shadow:0 0 0 0 rgba(184,154,78,0); } 50%{ box-shadow:0 0 0 6px rgba(184,154,78,.14); } }

/* =========================================================================
   2 · STORY + feature handoff (parallax mark on figure)
   ========================================================================= */
[data-design="a"] .pb-story{ padding-block:clamp(72px,10vw,128px); background:var(--pb-ivory); }
[data-design="a"] .pb-story__grid{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:clamp(36px,6vw,80px); align-items:center; }
@media (max-width:880px){ [data-design="a"] .pb-story__grid{ grid-template-columns:1fr; } }
[data-design="a"] .pb-story__kicker{ font-family:"Cormorant Garamond",serif; font-style:italic; font-size:clamp(20px,1.8vw,26px); color:var(--pb-mauve-deep); margin:0 0 14px; }
[data-design="a"] .pb-story__title{ margin-bottom:24px; max-width:18ch; }
[data-design="a"] .pb-story__lede{ font-size:clamp(17px,1.4vw,20px); line-height:1.6; color:var(--pb-ink-soft); margin:0 0 20px; max-width:62ch; }
[data-design="a"] .pb-story__note{ font-family:"Lora",serif; font-style:italic; font-size:16px; line-height:1.55; color:var(--pb-ink-soft); border-left:2px solid var(--pb-sage); padding-left:16px; margin:0; max-width:60ch; }
[data-design="a"] .pb-story__feature{ margin:0; position:relative; }
[data-design="a"] .pb-story__feature img{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block; border:1px solid var(--pb-ivory-edge); box-shadow:2px 2px 0 var(--pb-ivory-edge), 4px 4px 0 var(--pb-ivory-edge); }
[data-design="a"] .pb-story__cap{ font-family:"Manrope",sans-serif; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--pb-mute); margin-top:14px; }

/* =========================================================================
   3 · FACTS
   ========================================================================= */
[data-design="a"] .pb-facts{ padding-block:clamp(72px,10vw,128px); background:var(--pb-ivory-deep); border-top:1px solid var(--pb-rule-faint); border-bottom:1px solid var(--pb-rule-faint); }
[data-design="a"] .pb-facts__head{ margin-bottom:clamp(40px,6vw,64px); }
[data-design="a"] .pb-facts__title{ max-width:20ch; }
[data-design="a"] .pb-facts__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:24px; }
[data-design="a"] .pb-fact{ background:var(--pb-ivory); border:1px solid var(--pb-ivory-edge); padding:28px; }
[data-design="a"] .pb-fact__num{ font-family:"Cormorant Garamond",serif; font-style:italic; font-size:22px; color:var(--pb-mauve); margin-bottom:12px; }
[data-design="a"] .pb-fact__title{ font-family:"Cormorant Garamond",serif; font-weight:400; font-style:italic; font-size:clamp(22px,2.4vw,28px); margin:0 0 10px; line-height:1.2; color:var(--pb-ink); }
[data-design="a"] .pb-fact__body{ font-family:"Lora",serif; font-size:15.5px; line-height:1.55; color:var(--pb-ink-soft); margin:0; }
[data-design="a"] .pb-fact__body em{ color:var(--pb-mauve-deep); font-style:italic; }

/* =========================================================================
   4 · STAYS SELECTOR (INT-1)
   ========================================================================= */
[data-design="a"] .pb-stays{ padding-block:clamp(72px,10vw,128px); background:var(--pb-ivory); }
[data-design="a"] .pb-stays__head{ margin-bottom:clamp(36px,5vw,56px); }
[data-design="a"] .pb-stays__title{ max-width:18ch; margin-bottom:16px; }
[data-design="a"] .pb-stays__note{ font-family:"Lora",serif; font-size:17px; line-height:1.6; color:var(--pb-ink-soft); margin:0; max-width:58ch; }

[data-design="a"] .pb-selector__tabs{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px; }
[data-design="a"] .pb-tab{
  appearance:none; background:var(--pb-ivory-deep); color:var(--pb-ink);
  border:0; border-left:2px solid var(--pb-rule); padding:14px 22px; min-height:48px; cursor:pointer; text-align:left;
  display:inline-flex; align-items:baseline; gap:12px; flex:1 1 220px;
  transition:background 280ms var(--pb-ease-petal), border-left-color 280ms var(--pb-ease-petal);
}
[data-design="a"] .pb-tab__num{ font-family:"Cormorant Garamond",serif; font-style:italic; font-size:18px; color:var(--pb-mauve-deep); }
[data-design="a"] .pb-tab__name{ font-family:"Cormorant Garamond",serif; font-style:italic; font-size:clamp(18px,2vw,22px); line-height:1.15; }
[data-design="a"] .pb-tab__name small{ font-family:"Manrope",sans-serif; font-style:normal; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--pb-mute); display:block; margin-top:2px; }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .pb-tab:hover{ background:var(--pb-ivory); border-left-color:var(--pb-mauve); }
}
[data-design="a"] .pb-tab[aria-selected="true"]{ background:var(--pb-ivory); border-left-color:var(--pb-mauve); }
[data-design="a"] .pb-tab[aria-selected="true"] .pb-tab__name{ color:var(--pb-mauve-deep); }
[data-design="a"] .pb-tab:focus-visible{ outline:2px solid var(--pb-gilt); outline-offset:2px; }

[data-design="a"] .pb-selector__stage{
  position:relative; border:1px solid var(--pb-ivory-edge);
  box-shadow:2px 2px 0 var(--pb-ivory-edge), 4px 4px 0 var(--pb-ivory-edge), 0 24px 60px -40px rgba(42,32,37,.28);
  background:var(--pb-ivory);
}
[data-design="a"] .pb-panel{ display:grid; grid-template-columns:1.1fr 1fr; }
@media (max-width:760px){ [data-design="a"] .pb-panel{ grid-template-columns:1fr; } }
[data-design="a"] .pb-panel[hidden]{ display:none; }
[data-design="a"] .pb-panel[data-active="true"]{ animation:pb-panel-in 520ms var(--pb-ease-bloom) both; }
@keyframes pb-panel-in{ from{ opacity:0; transform:scale(.985); } to{ opacity:1; transform:scale(1); } }
[data-design="a"] .pb-panel__media{ overflow:hidden; min-height:280px; }
[data-design="a"] .pb-panel__media img{ width:100%; height:100%; object-fit:cover; display:block; aspect-ratio:5/4; }
[data-design="a"] .pb-panel__copy{ padding:clamp(28px,4vw,48px); display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
[data-design="a"] .pb-panel__meta{ font-family:"Manrope",sans-serif; font-size:11px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--pb-mute); }
[data-design="a"] .pb-panel__name{ font-family:"Cormorant Garamond",serif; font-weight:400; font-style:italic; font-size:clamp(26px,3.4vw,38px); line-height:1.1; margin:0; }
[data-design="a"] .pb-panel__name em{ color:var(--pb-mauve-deep); }
[data-design="a"] .pb-panel__desc{ font-family:"Lora",serif; font-size:16px; line-height:1.6; color:var(--pb-ink-soft); margin:0; max-width:54ch; }
[data-design="a"] .pb-panel .pb-cta{ margin-top:6px; }

/* =========================================================================
   POINTER (Element 6) — place-rooted wayfinding into the gallery (NOT a button)
   ========================================================================= */
[data-design="a"] .pb-pointer{
  max-width:var(--pb-maxw); margin-inline:auto; padding-inline:clamp(20px,5vw,48px);
  padding-block:clamp(28px,5vw,52px); display:flex; justify-content:center;
  background:var(--pb-ivory);
}
[data-design="a"] .pb-pointer__inner{
  display:flex; flex-direction:column; align-items:center; gap:12px;
  text-decoration:none; color:var(--pb-ink-soft); cursor:pointer;
}
[data-design="a"] .pb-pointer__label{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-size:16px; color:var(--pb-ink-soft);
  opacity:0; animation:pb-pointer-label 800ms 400ms var(--pb-ease-hush) forwards;
}
[data-design="a"] .pb-pointer__rule{
  width:1px; height:84px;
  background:linear-gradient(to bottom, transparent, var(--pb-mauve) 30%, var(--pb-mauve-deep) 100%);
  transform-origin:top center;
  animation:pb-pointer-draw 1400ms 700ms var(--pb-ease-hush) both,
            pb-pointer-breath 5.4s 2200ms var(--pb-ease-hush) infinite;
}
[data-design="a"] .pb-pointer__blossom{
  width:20px; height:20px; color:var(--pb-mauve); opacity:0; transform-origin:center;
  animation:pb-blossom-in 700ms 2000ms var(--pb-ease-bloom) forwards,
            pb-blossom-breath 5.4s 2700ms var(--pb-ease-hush) infinite;
}
[data-design="a"] .pb-pointer__blossom svg{ width:100%; height:100%; fill:currentColor; display:block; }
@keyframes pb-pointer-label{ to{ opacity:1; } }
@keyframes pb-pointer-draw{ from{ transform:scaleY(0); } to{ transform:scaleY(1); } }
@keyframes pb-pointer-breath{ 0%,100%{ opacity:1; } 50%{ opacity:.55; } }
@keyframes pb-blossom-in{ to{ opacity:1; transform:scale(1); } }
@keyframes pb-blossom-breath{ 0%,100%{ transform:scale(.92); } 50%{ transform:scale(1.06); } }

/* =========================================================================
   5 · GALLERY
   ========================================================================= */
[data-design="a"] .pb-gallery{ padding-block:clamp(72px,10vw,128px); background:var(--pb-ivory-deep); border-top:1px solid var(--pb-rule-faint); }
[data-design="a"] .pb-gallery__head{ margin-bottom:clamp(36px,5vw,56px); }
[data-design="a"] .pb-gallery__grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
@media (min-width:760px){ [data-design="a"] .pb-gallery__grid{ grid-template-columns:repeat(3,1fr); } }
[data-design="a"] .pb-gallery__item{ margin:0; overflow:hidden; border:1px solid var(--pb-ivory-edge); }
[data-design="a"] .pb-gallery__item img{ width:100%; height:100%; min-height:200px; aspect-ratio:4/3; object-fit:cover; display:block; transition:transform 780ms var(--pb-ease-hush); }
@media (min-width:760px){ [data-design="a"] .pb-gallery__item--wide{ grid-column:span 2; } }
@media (hover:hover) and (pointer:fine){
  [data-design="a"] .pb-gallery__item:hover img{ transform:scale(1.04); }
}

/* =========================================================================
   6 · NEARBY
   ========================================================================= */
[data-design="a"] .pb-nearby{ padding-block:clamp(72px,10vw,128px); background:var(--pb-ivory); }
[data-design="a"] .pb-nearby__head{ margin-bottom:clamp(36px,5vw,56px); }
[data-design="a"] .pb-nearby__list{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:24px; }
[data-design="a"] .pb-near{ border-top:1px solid var(--pb-rule); padding-top:20px; }
[data-design="a"] .pb-near h3{ font-family:"Cormorant Garamond",serif; font-weight:400; font-style:italic; font-size:clamp(20px,2.2vw,26px); margin:0 0 8px; color:var(--pb-ink); }
[data-design="a"] .pb-near p{ font-family:"Lora",serif; font-size:15.5px; line-height:1.55; color:var(--pb-ink-soft); margin:0; }

/* =========================================================================
   7 · HOST
   ========================================================================= */
[data-design="a"] .pb-host{ padding-block:clamp(72px,10vw,128px); background:var(--pb-ivory-deep); border-top:1px solid var(--pb-rule-faint); }
[data-design="a"] .pb-host__inner{ max-width:760px !important; }
[data-design="a"] .pb-host__title{ margin-bottom:20px; }
[data-design="a"] .pb-host__body{ font-family:"Lora",serif; font-size:clamp(17px,1.4vw,19px); line-height:1.65; color:var(--pb-ink-soft); margin:0; }
[data-design="a"] .pb-host__body em{ color:var(--pb-mauve-deep); font-style:italic; }

/* =========================================================================
   8 · CLOSING
   ========================================================================= */
[data-design="a"] .pb-closing{ padding-block:clamp(80px,11vw,140px); background:var(--pb-ivory); border-top:1px solid var(--pb-rule-faint); }
[data-design="a"] .pb-closing__inner{ max-width:680px !important; text-align:center; display:flex; flex-direction:column; align-items:center; }
[data-design="a"] .pb-closing__blossom{ width:28px; height:28px; color:var(--pb-mauve); margin-bottom:20px; animation:pb-blossom-breath 5.4s var(--pb-ease-hush) infinite; transform-origin:center; }
[data-design="a"] .pb-closing__blossom svg{ width:100%; height:100%; fill:currentColor; display:block; }
@keyframes pb-blossom-breath{ 0%,100%{ transform:scale(.92); } 50%{ transform:scale(1.06); } }
[data-design="a"] .pb-closing__title{ margin-bottom:14px; }
[data-design="a"] .pb-closing__sub{ font-family:"Lora",serif; font-size:clamp(16px,1.4vw,19px); line-height:1.6; color:var(--pb-ink-soft); margin:0 0 28px; max-width:46ch; }
[data-design="a"] .pb-closing__foot{ font-family:"Manrope",sans-serif; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--pb-mute); margin:28px 0 0; }

/* =========================================================================
   Own scroll-reveals (TRIAD-1 choreography) — opacity/transform only.
   Body uses opacity:0 here, so body-life.js detects own reveals + skips its
   floor reveals; its parallax still drives [data-bl-feature] independently.
   ========================================================================= */
[data-design="a"] [data-pb-reveal]{ opacity:0; transform:translateY(28px); transition:opacity .7s var(--pb-ease-hush), transform .7s var(--pb-ease-hush); }
[data-design="a"] [data-pb-reveal][data-pb-seen]{ opacity:1; transform:none; }

@media (prefers-reduced-motion:reduce){
  [data-design="a"] .pb-header__rule-line,
  [data-design="a"] .pb-header__sprig,
  [data-design="a"] .pb-cta,
  [data-design="a"] .pb-closing__blossom,
  [data-design="a"] .pb-pointer__label,
  [data-design="a"] .pb-pointer__rule,
  [data-design="a"] .pb-pointer__blossom,
  [data-design="a"] .pb-panel[data-active="true"]{ animation:none !important; opacity:1 !important; transform:none !important; }
  [data-design="a"] .pb-header__rule-line{ transform:scaleX(1) !important; }
  [data-design="a"] .pb-header__sprig{ transform:translateX(-50%) !important; }
  [data-design="a"] [data-pb-reveal]{ opacity:1 !important; transform:none !important; transition:none !important; }
  [data-design="a"] .pb-gallery__item img{ transition:none !important; }
}

/* =========================================================================
   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; }
