/* PG Hero — scoped to .pg-hero (+ per-preset modifier). Ported from the DRobb
   home hero. Other presets (editorial / title-plate / image) add their own
   .pg-hero--<preset> blocks below in later passes. */

.pg-hero{ position:relative; overflow:hidden; }

/* shared media layer (photo + cinematic gradient) */
.pg-hero__media{ position:absolute; inset:0; overflow:hidden; background:var(--pg-ink); }
.pg-hero__ph{ position:absolute; inset:0; background-size:cover; transform:translateZ(0); backface-visibility:hidden; }
/* "Built-in photo background = off" — make the hero transparent so a container
   background (e.g. a video) shows through. The legibility gradient (::after) stays. */
.pg-hero--bg-none .pg-hero__media{ background:transparent; }
.pg-hero--bg-none .pg-hero__ph{ display:none; }
.pg-hero--kb .pg-hero__ph{ animation:pg-kenburns 32s var(--pg-ease-soft) infinite alternate; }
/* landing media treatment */
.pg-hero--landing .pg-hero__media::after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, rgba(26,21,18,.42) 0%, rgba(26,21,18,.08) 28%, rgba(26,21,18,.32) 62%, rgba(26,21,18,.86) 100%);
}
.pg-hero--landing .pg-hero__ph{ filter:saturate(.94) contrast(1.04) brightness(.97); }
@keyframes pg-kenburns{ from{ transform:scale(1.04) } to{ transform:scale(1.10) translate3d(-1.2%,-.8%,0) } }

/* ============================ LANDING ============================ */
.pg-hero--landing{
  min-height:100dvh; padding:120px 56px 56px;
  display:flex; flex-direction:column; justify-content:space-between;
}
.pg-hero--landing .pg-hero__inner{
  position:relative; z-index:2; flex:1; padding:32px;
  display:flex; flex-direction:column; justify-content:space-between;
}
.pg-hero--landing .pg-hero__top{ display:flex; justify-content:space-between; align-items:flex-start; }
.pg-hero--landing .pg-hero__top span{
  color:var(--pg-bone-soft); font-family:var(--pg-font-sans); font-weight:400;
  text-transform:uppercase; letter-spacing:.24em; font-size:10px;
}
.pg-hero--landing .pg-hero__atlas{ text-align:center; margin-top:6vh; color:var(--pg-bone); }
.pg-hero--landing .coord-line{
  font-family:var(--pg-font-sans); font-weight:500; text-transform:uppercase;
  letter-spacing:.32em; font-size:10px; color:var(--pg-bone-soft); margin-bottom:18px;
}
.pg-hero--landing .name{
  font-family:var(--pg-font-display); font-weight:400; text-transform:uppercase;
  letter-spacing:.36em; font-size:clamp(34px,6vw,64px); line-height:1.05;
  color:var(--pg-bone); font-variation-settings:"opsz" 144;
}
.pg-hero--landing .divider{ display:flex; align-items:center; justify-content:center; gap:12px; margin:18px 0; }
.pg-hero--landing .divider .rule{ width:48px; height:1px; background:var(--pg-bone-faint); }
.pg-hero--landing .divider .diamond{ width:5px; height:5px; background:var(--pg-terracotta); transform:rotate(45deg); }
.pg-hero--landing .pubname{
  font-family:var(--pg-font-italic); font-style:italic; font-size:17px;
  color:var(--pg-bone-soft); letter-spacing:.02em;
}
.pg-hero--landing .pubname em{ font-style:italic; color:var(--pg-terracotta); }
.pg-hero--landing .pg-hero__statement{ margin-bottom:4vh; max-width:880px; }
.pg-hero--landing .declarative{
  font-family:var(--pg-font-display); font-weight:400; font-size:clamp(28px,4.4vw,56px);
  line-height:1.08; letter-spacing:-.012em; color:var(--pg-bone); font-variation-settings:"opsz" 144;
}
.pg-hero--landing .declarative em{ font-style:italic; color:var(--pg-terracotta); }
.pg-hero--landing .author-line{
  margin-top:28px; display:flex; align-items:center; gap:16px;
  font-family:var(--pg-font-sans); text-transform:uppercase; letter-spacing:.24em;
  font-size:10px; color:var(--pg-bone-soft);
}
.pg-hero--landing .author-line .rule{ width:32px; height:1px; background:var(--pg-bone-faint); }
.pg-hero--landing .pg-hero__bottom{ display:flex; justify-content:space-between; align-items:flex-end; color:var(--pg-bone-soft); }
.pg-hero--landing .pg-hero__cue{
  display:flex; align-items:center; gap:14px; font-family:var(--pg-font-sans);
  font-weight:300; text-transform:uppercase; letter-spacing:.24em; font-size:10px;
}
.pg-hero--landing .pg-hero__cue .line{
  display:inline-block; width:1px; height:36px;
  background:linear-gradient(to bottom, var(--pg-bone-faint) 0%, transparent 100%);
  animation:pg-scrollPulse 2.4s var(--pg-ease) infinite;
}
@keyframes pg-scrollPulse{ 0%,100%{ opacity:.4; transform:scaleY(.8) } 50%{ opacity:1; transform:scaleY(1) } }
.pg-hero--landing .pg-hero__foot{
  display:inline-flex; align-items:center; gap:10px; font-family:var(--pg-font-sans);
  font-weight:300; text-transform:uppercase; letter-spacing:.24em; font-size:10px; color:var(--pg-bone-soft);
}
.pg-hero--landing .pg-hero__foot .compass-mark{
  width:14px; height:14px; color:var(--pg-bone-soft);
  animation:pg-compassDrift 18s var(--pg-ease) infinite; transform-origin:50% 50%;
}
@keyframes pg-compassDrift{ 0%{ transform:rotate(-3deg) } 50%{ transform:rotate(3deg) } 100%{ transform:rotate(-3deg) } }

@media (max-width:768px){
  .pg-hero--landing{ padding:96px 24px 32px; }
  .pg-hero--landing .pg-hero__inner{ padding:16px; }
  .pg-hero--landing .pg-hero__top{ flex-direction:column; gap:8px; }
  .pg-hero--landing .pg-hero__bottom{ flex-direction:column; align-items:flex-start; gap:18px; }
}

@media (prefers-reduced-motion: reduce){
  .pg-hero--kb .pg-hero__ph,
  .pg-hero--landing .pg-hero__cue .line,
  .pg-hero--landing .pg-hero__foot .compass-mark{ animation:none; }
}

/* ============================ EDITORIAL ============================ */
.pg-hero--editorial{ min-height:100dvh; background:var(--pg-ink); isolation:isolate; }
.pg-hero--editorial .pg-hero__media{ inset:-6%; }            /* overscan for ken-burns */
.pg-hero--editorial .pg-hero__media::after{
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, rgba(26,24,22,.45) 0%, rgba(26,24,22,.25) 35%, rgba(26,24,22,.85) 100%);
}
.pg-hero--editorial .pg-hero__ph{ filter:saturate(.78) contrast(1.05) brightness(.92) sepia(.18); }
.pg-hero--editorial .pg-hero__ph::after{
  content:''; position:absolute; inset:0; mix-blend-mode:soft-light;
  background:radial-gradient(ellipse at 30% 40%, rgba(200,146,61,.22) 0%, transparent 60%), linear-gradient(135deg, rgba(180,83,58,.10) 0%, transparent 50%);
}
.pg-hero--editorial .pg-hero__grain{
  position:absolute; inset:0; z-index:2; pointer-events:none; opacity:.42; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.92' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.45 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
.pg-hero--editorial .pg-hero__stage{
  position:relative; z-index:3; min-height:100dvh; display:grid; grid-template-rows:auto 1fr auto;
  padding:140px 56px 96px; color:var(--pg-bone);
}

/* corner compass (settles on reveal) */
.pg-hero--editorial .pg-hero__corner{ position:absolute; top:120px; right:80px; width:96px; height:96px; z-index:4; opacity:0; transition:opacity 1800ms var(--pg-ease) 400ms; }
.pg-hero--editorial.pg-ready .pg-hero__corner{ opacity:.78; }
.pg-hero--editorial .pg-hero__corner svg{ width:100%; height:100%; }
.pg-hero--editorial .pg-hero__corner .needle{ transform-origin:48px 48px; transform:rotate(720deg); transition:transform 5400ms cubic-bezier(.18,.92,.18,1) 800ms; }
.pg-hero--editorial.pg-ready .pg-hero__corner .needle{ transform:rotate(0deg); }

/* coordinate ticks */
.pg-hero--editorial .pg-hero__tick{
  position:absolute; font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase;
  letter-spacing:.28em; font-size:9px; color:rgba(244,239,230,.55); z-index:4;
  opacity:0; transform:translateY(8px); transition:opacity 1400ms var(--pg-ease) 1400ms, transform 1400ms var(--pg-ease) 1400ms;
}
.pg-hero--editorial.pg-ready .pg-hero__tick{ opacity:1; transform:translateY(0); }
.pg-hero--editorial .pg-hero__tick.bl{ bottom:80px; left:80px; }
.pg-hero--editorial .pg-hero__tick.br{ bottom:80px; right:80px; text-align:right; }
.pg-hero--editorial .pg-hero__tick .tick{ display:inline-block; width:14px; height:1px; background:rgba(244,239,230,.4); vertical-align:middle; margin:0 8px; }

/* eyebrow (auto fade + drawing rule) */
.pg-hero--editorial .pg-hero__eyebrow{
  display:flex; align-items:center; gap:16px; font-family:var(--pg-font-sans); font-weight:300;
  text-transform:uppercase; letter-spacing:.32em; font-size:10px; color:rgba(244,239,230,.78);
  opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 600ms forwards; position:relative; z-index:4;
}
.pg-hero--editorial .pg-hero__eyebrow .compass{ font-style:normal; color:var(--pg-ochre); }
.pg-hero--editorial .pg-hero__eyebrow .rule{ flex:0 0 0; height:1px; background:rgba(244,239,230,.5); animation:pg-ruleGrow 1800ms var(--pg-ease) 1000ms forwards; }
@keyframes pg-ruleGrow{ from{ flex-basis:0 } to{ flex-basis:56px } }
@keyframes pg-fadeUp{ from{ opacity:0; transform:translate3d(0,24px,0) } to{ opacity:1; transform:translate3d(0,0,0) } }

/* clip-reveal title */
.pg-hero--editorial h1{
  align-self:end; font-family:var(--pg-font-display); font-weight:300; font-variation-settings:"opsz" 144;
  font-size:clamp(72px,13vw,196px); line-height:1.08; letter-spacing:-.028em; text-transform:lowercase;
  max-width:16ch; color:var(--pg-bone); position:relative; z-index:4;
}
.pg-hero--editorial h1 .line{ display:block; overflow:hidden; padding-bottom:.48em; margin-bottom:-.56em; line-height:1.08; }
.pg-hero--editorial h1 .line.l2{ margin-bottom:0; }
.pg-hero--editorial h1 .line > span{ display:inline-block; transform:translateY(120%); transition:transform 1800ms var(--pg-ease) 700ms; padding-bottom:.14em; padding-right:.14em; }
.pg-hero--editorial h1 .line.l2 > span{ transition-delay:1000ms; }
.pg-hero--editorial.pg-ready h1 .line > span{ transform:translateY(0); }
.pg-hero--editorial h1 em{ font-style:italic; color:var(--pg-ochre); font-weight:300; }
.pg-hero--editorial h1 .arrow{ display:inline-block; vertical-align:middle; margin-right:14px; width:60px; height:2px; background:var(--pg-ochre); position:relative; transform:scaleX(0); transform-origin:left; transition:transform 1400ms var(--pg-ease) 2000ms; }
.pg-hero--editorial h1 .arrow::after{ content:''; position:absolute; right:-2px; top:-5px; border-left:8px solid var(--pg-ochre); border-top:6px solid transparent; border-bottom:6px solid transparent; opacity:0; transition:opacity 600ms var(--pg-ease) 3000ms; }
.pg-hero--editorial.pg-ready h1 .arrow{ transform:scaleX(1); }
.pg-hero--editorial.pg-ready h1 .arrow::after{ opacity:1; }

/* meta foot */
.pg-hero--editorial .pg-hero__metafoot{
  display:flex; justify-content:space-between; align-items:end; font-family:var(--pg-font-sans);
  font-weight:300; text-transform:uppercase; letter-spacing:.24em; font-size:10px; color:rgba(244,239,230,.75);
  opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 1700ms forwards; position:relative; z-index:4;
}
.pg-hero--editorial .pg-hero__metafoot .right{ text-align:right; line-height:1.8; }
.pg-hero--editorial .pg-hero__metafoot .right em{ font-family:var(--pg-font-italic); font-style:italic; text-transform:none; letter-spacing:0; font-size:14px; color:rgba(244,239,230,.9); }

/* editorial scroll cue */
.pg-hero__cue--ed{
  position:absolute; bottom:168px; left:50%; transform:translate3d(-50%,0,0); z-index:4;
  display:flex; flex-direction:column; align-items:center; gap:14px; color:rgba(244,239,230,.7);
  font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase; letter-spacing:.28em; font-size:9px;
  opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 2000ms forwards;
}
@media (max-width:920px){ .pg-hero__cue--ed{ bottom:19px; } }
.pg-hero__cue--ed .line{ width:1px; height:56px; background:linear-gradient(to bottom, rgba(244,239,230,.7), transparent); transform-origin:top; animation:pg-pulseLine 2800ms var(--pg-ease) infinite; }
@keyframes pg-pulseLine{ 0%,100%{ transform:scaleY(.6); opacity:.5 } 50%{ transform:scaleY(1); opacity:1 } }

@media (max-width:768px){
  .pg-hero--editorial .pg-hero__stage{ padding:120px 24px 80px; }
  .pg-hero--editorial .pg-hero__tick{ display:none; }
  .pg-hero--editorial .pg-hero__corner{ top:90px; right:24px; width:64px; height:64px; }
  .pg-hero--editorial .pg-hero__metafoot{ flex-direction:column; align-items:flex-start; gap:16px; }
}
@media (prefers-reduced-motion: reduce){
  .pg-hero--editorial .pg-hero__corner,
  .pg-hero--editorial .pg-hero__tick,
  .pg-hero--editorial .pg-hero__eyebrow,
  .pg-hero--editorial .pg-hero__metafoot,
  .pg-hero__cue--ed{ opacity:1; animation:none; transform:none; }
  .pg-hero--editorial h1 .line > span{ transform:none; transition:none; }
  .pg-hero--editorial h1 .arrow{ transform:scaleX(1); }
  .pg-hero--editorial .pg-hero__corner .needle{ transform:none; }
  .pg-hero__cue--ed .line{ animation:none; }
}

/* ============================ TITLE PLATE ============================ */
/* No hard-coded background — set it on the Elementor container/section so it's editable. */
.pg-hero--title-plate{ min-height:100dvh; padding:130px 96px 96px; display:grid; grid-template-rows:auto 1fr auto; position:relative; overflow:hidden; color:var(--pg-ink); }
.pg-hero--title-plate .pg-hero__heading, .pg-hero--title-plate .pg-hero__footing{ display:grid; grid-template-columns:1fr auto 1fr; gap:32px; align-items:baseline; padding:18px 0; position:relative; z-index:2; }
.pg-hero--title-plate .pg-hero__heading{ border-bottom:1px solid var(--pg-ink-thread); }
.pg-hero--title-plate .pg-hero__footing{ border-top:1px solid var(--pg-ink-thread); align-items:end; padding-bottom:0; }
.pg-hero--title-plate .pg-hero__heading > div, .pg-hero--title-plate .pg-hero__footing > div{ font-family:var(--pg-font-sans); font-size:10px; text-transform:uppercase; letter-spacing:.28em; color:var(--pg-ink-soft); line-height:1.8; }
.pg-hero--title-plate .pg-hero__heading > div:last-child, .pg-hero--title-plate .pg-hero__footing > div:last-child{ text-align:right; }
.pg-hero--title-plate .pg-hero__heading > div:nth-child(2), .pg-hero--title-plate .pg-hero__footing > div:nth-child(2){ font-family:var(--pg-font-italic); font-style:italic; font-size:14px; color:var(--pg-ink); text-align:center; }
.pg-hero--title-plate .pg-hero__heading > div em, .pg-hero--title-plate .pg-hero__footing > div em{ font-family:var(--pg-font-italic); font-style:italic; letter-spacing:0; text-transform:none; color:var(--pg-ink); font-size:13px; }
.pg-hero--title-plate .pg-hero__center{ display:grid; grid-template-columns:1fr auto 1fr; gap:48px; align-items:center; position:relative; z-index:2; padding:48px 0; }
.pg-hero--title-plate .center-left{ text-align:right; padding-right:32px; }
.pg-hero--title-plate .center-right{ text-align:left; padding-left:32px; }
.pg-hero--title-plate h1{ font-family:var(--pg-font-display); font-weight:300; font-variation-settings:"opsz" 144; font-size:clamp(64px,9.2vw,147px); line-height:1.0; letter-spacing:-.028em; text-transform:lowercase; color:var(--pg-ink); }
.pg-hero--title-plate h1 .clip{ display:block; overflow:hidden; padding-bottom:.28em; line-height:1.0; }
.pg-hero--title-plate h1 .clip span{ display:inline-block; transform:translateY(120%); transition:transform 1800ms var(--pg-ease) 1800ms; padding-bottom:.02em; }
.pg-hero--title-plate h1 .clip.l2 span{ transition-delay:2100ms; }
.pg-hero--title-plate.pg-ready h1 .clip span{ transform:translateY(0); }
.pg-hero--title-plate h1 em{ font-style:italic; color:var(--pg-terracotta); }
.pg-hero--title-plate .subtitle{ font-family:var(--pg-font-italic); font-style:italic; font-size:clamp(18px,1.8vw,24px); line-height:1.42; color:var(--pg-ink); max-width:36ch; opacity:0; transform:translateY(12px); transition:opacity 1400ms var(--pg-ease) 2800ms, transform 1400ms var(--pg-ease) 2800ms; }
.pg-hero--title-plate .center-left .subtitle{ margin-left:auto; }
.pg-hero--title-plate.pg-ready .subtitle{ opacity:1; transform:translateY(0); }
.pg-hero--title-plate .subtitle em{ color:var(--pg-terracotta); }
.pg-hero--title-plate .compass-hero{ width:100%; height:100%; position:relative; max-width:380px; }
.pg-hero--title-plate .compass-hero svg{ width:100%; height:100%; display:block; }
.pg-hero--title-plate .compass-hero .face{ opacity:0; transition:opacity 1600ms var(--pg-ease-soft) 400ms; }
.pg-hero--title-plate.pg-ready .compass-hero .face{ opacity:1; }
.pg-hero--title-plate .compass-hero .needle{ transform-origin:190px 190px; transform:rotate(720deg); transition:transform 5400ms cubic-bezier(.18,.92,.18,1) 800ms; }
.pg-hero--title-plate.pg-ready .compass-hero .needle{ transform:rotate(0deg); }
.pg-hero--title-plate .compass-hero .lbl-card{ opacity:0; transition:opacity 1200ms var(--pg-ease); }
.pg-hero--title-plate.pg-ready .compass-hero .lbl-card.n{ opacity:1; transition-delay:5800ms; }
.pg-hero--title-plate.pg-ready .compass-hero .lbl-card.s{ opacity:1; transition-delay:6000ms; }
.pg-hero--title-plate.pg-ready .compass-hero .lbl-card.e{ opacity:1; transition-delay:6200ms; }
.pg-hero--title-plate.pg-ready .compass-hero .lbl-card.w{ opacity:1; transition-delay:6400ms; }
@media (max-width:768px){
  .pg-hero--title-plate{ padding:110px 24px 64px; }
  .pg-hero--title-plate .pg-hero__heading, .pg-hero--title-plate .pg-hero__footing{ grid-template-columns:1fr; gap:8px; }
  .pg-hero--title-plate .pg-hero__heading > div:last-child, .pg-hero--title-plate .pg-hero__footing > div:last-child, .pg-hero--title-plate .pg-hero__heading > div:nth-child(2), .pg-hero--title-plate .pg-hero__footing > div:nth-child(2){ text-align:left; }
  .pg-hero--title-plate .pg-hero__center{ grid-template-columns:1fr; gap:32px; padding:32px 0; }
  .pg-hero--title-plate .center-left, .pg-hero--title-plate .center-right{ text-align:center; padding:0; }
  .pg-hero--title-plate .subtitle{ max-width:100%; }
  .pg-hero--title-plate .center-left .subtitle{ margin-left:0; }
  .pg-hero--title-plate .compass-hero{ width:240px; height:240px; margin:0 auto; }
}
@media (prefers-reduced-motion: reduce){
  .pg-hero--title-plate h1 .clip span{ transform:none; transition:none; }
  .pg-hero--title-plate .subtitle{ opacity:1; transform:none; transition:none; }
  .pg-hero--title-plate .compass-hero .face, .pg-hero--title-plate .compass-hero .lbl-card{ opacity:1; transition:none; }
  .pg-hero--title-plate .compass-hero .needle{ transform:none; }
}

/* ============================ IMAGE ============================ */
.pg-hero--image{ min-height:100dvh; background:var(--pg-ink); isolation:isolate; }
.pg-hero--image .pg-hero__media{ inset:-4%; }
.pg-hero--image .pg-hero__media::after{ content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg, rgba(26,24,22,.42) 0%, rgba(26,24,22,.18) 35%, rgba(26,24,22,.78) 100%); }
.pg-hero--image .pg-hero__ph{ filter:saturate(.85) contrast(1.04) brightness(.96) sepia(.06); }
.pg-hero--image .pg-hero__ph::after{ content:''; position:absolute; inset:0; mix-blend-mode:soft-light; background:radial-gradient(ellipse at 30% 50%, rgba(200,146,61,.22) 0%, transparent 65%), linear-gradient(135deg, rgba(180,83,58,.10) 0%, transparent 50%); }
.pg-hero--image .pg-hero__grain{ position:absolute; inset:0; z-index:2; pointer-events:none; opacity:.42; mix-blend-mode:overlay; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.92' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.45 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"); }
.pg-hero--image .pg-hero__stage{ position:relative; z-index:3; min-height:100dvh; display:grid; grid-template-rows:auto 1fr auto; padding:132px 56px 96px; color:var(--pg-bone); }
.pg-hero--image .pg-hero__masthead{ display:flex; justify-content:space-between; align-items:baseline; padding-bottom:18px; opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 600ms forwards; }
.pg-hero--image .pg-hero__masthead .left{ font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase; letter-spacing:.32em; font-size:10px; color:rgba(244,239,230,.78); }
.pg-hero--image .pg-hero__masthead .left em{ font-family:var(--pg-font-italic); font-style:italic; text-transform:none; letter-spacing:0; font-size:14px; color:var(--pg-bone); }
.pg-hero--image .pg-hero__masthead .right{ font-family:var(--pg-font-italic); font-style:italic; font-size:14px; color:rgba(244,239,230,.85); text-align:right; }
.pg-hero--image h1{ align-self:end; font-family:var(--pg-font-display); font-weight:300; font-variation-settings:"opsz" 144; font-size:clamp(64px,11vw,184px); line-height:.84; letter-spacing:-.028em; text-transform:lowercase; color:var(--pg-bone); max-width:14ch; }
.pg-hero--image h1 .word{ display:inline-block; transform:translate3d(0,110%,0); opacity:0; animation:pg-wordRise 1600ms var(--pg-ease) forwards; }
.pg-hero--image h1 .word.w1{ animation-delay:200ms; }
.pg-hero--image h1 .word.w2{ animation-delay:380ms; padding-right:.08em; }
.pg-hero--image h1 em{ font-style:italic; color:var(--pg-ochre); }
@keyframes pg-wordRise{ from{ transform:translate3d(0,110%,0); opacity:0 } to{ transform:none; opacity:1 } }
.pg-hero--image .pg-hero__footrow{ display:grid; grid-template-columns:.8fr 1.4fr .8fr; gap:56px; align-items:end; opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 1100ms forwards; }
.pg-hero--image .pg-hero__footrow .col{ font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase; letter-spacing:.24em; font-size:10px; color:rgba(244,239,230,.75); line-height:1.8; }
.pg-hero--image .pg-hero__footrow .col em{ font-family:var(--pg-font-italic); font-style:italic; text-transform:none; letter-spacing:0; font-size:14px; color:var(--pg-bone); }
.pg-hero--image .pg-hero__footrow .pull-quote{ font-family:var(--pg-font-display); font-weight:300; font-variation-settings:"opsz" 144; font-size:clamp(20px,1.85vw,27px); line-height:1.26; letter-spacing:-.012em; color:var(--pg-bone); text-transform:none; text-align:center; text-wrap:balance; max-width:42ch; margin:0 auto; }
.pg-hero--image .pg-hero__footrow .pull-quote em{ font-style:italic; color:var(--pg-ochre); }
.pg-hero--image .pg-hero__footrow .right{ text-align:right; }
.pg-airing{ display:inline-flex; align-items:center; gap:8px; background:var(--pg-terracotta); color:var(--pg-bone); padding:4px 11px; border-radius:999px; font-family:var(--pg-font-sans); font-weight:400; font-style:normal; text-transform:uppercase; letter-spacing:.28em; font-size:8.5px; vertical-align:1px; margin-left:6px; }
.pg-airing .pulse{ width:6px; height:6px; background:var(--pg-bone); border-radius:999px; animation:pg-airingPulse 1800ms var(--pg-ease) infinite; }
@keyframes pg-airingPulse{ 0%,100%{ opacity:1; transform:scale(1) } 50%{ opacity:.45; transform:scale(1.5) } }
@media (max-width:768px){
  .pg-hero--image .pg-hero__stage{ padding:110px 24px 80px; }
  .pg-hero--image .pg-hero__masthead{ flex-direction:column; gap:12px; align-items:flex-start; }
  .pg-hero--image .pg-hero__masthead .right{ text-align:left; }
  .pg-hero--image .pg-hero__footrow{ grid-template-columns:1fr; gap:24px; }
  .pg-hero--image .pg-hero__footrow .right, .pg-hero--image .pg-hero__footrow .pull-quote{ text-align:left; }
}
@media (prefers-reduced-motion: reduce){
  .pg-hero--image .pg-hero__masthead, .pg-hero--image .pg-hero__footrow{ opacity:1; animation:none; }
  .pg-hero--image h1 .word{ opacity:1; transform:none; animation:none; }
  .pg-airing .pulse{ animation:none; }
}

/* ============================ WANDERLAND ============================ */
.pg-hero--wanderland .pg-hero__ph{ filter:saturate(.92) contrast(1.10) brightness(.94); }
.pg-hero--wanderland .pg-hero__media::after{ content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg, rgba(26,24,22,.50) 0%, rgba(26,24,22,.20) 35%, rgba(26,24,22,.85) 100%); }
.pg-hero--wanderland .pg-hero__stage{ position:relative; z-index:3; min-height:100dvh; display:grid; grid-template-rows:auto 1fr auto; padding:132px 56px 96px; color:var(--pg-bone); }
.pg-hero--wanderland .top-row{ display:flex; justify-content:space-between; align-items:baseline; border-bottom:1px solid rgba(244,239,230,.30); padding-bottom:18px; opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 600ms forwards; font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase; letter-spacing:.32em; font-size:10px; color:rgba(244,239,230,.78); }
.pg-hero--wanderland .top-row em{ font-family:var(--pg-font-italic); font-style:italic; text-transform:none; letter-spacing:0; font-size:14px; color:var(--pg-bone); }
.pg-hero--wanderland .center-stage{ align-self:center; display:flex; flex-direction:column; gap:36px; max-width:1200px; }
.pg-hero--wanderland h1{ font-family:var(--pg-font-display); font-weight:300; font-variation-settings:"opsz" 144; font-size:clamp(56px,10vw,168px); line-height:.86; letter-spacing:-.028em; text-transform:lowercase; color:var(--pg-bone); max-width:14ch; margin:0; }
.pg-hero--wanderland h1 .word{ display:inline-block; transform:translate3d(0,110%,0); opacity:0; animation:pg-wordRise 1800ms var(--pg-ease) forwards; }
.pg-hero--wanderland h1 .word.w1{ animation-delay:300ms; }
.pg-hero--wanderland h1 .word.w2{ animation-delay:580ms; }
.pg-hero--wanderland h1 em{ font-style:italic; color:var(--pg-ochre); }
.pg-hero--wanderland .tagline{ font-family:var(--pg-font-italic); font-style:italic; font-size:clamp(20px,2.4vw,32px); line-height:1.36; color:rgba(244,239,230,.92); max-width:32ch; margin:0; opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 1100ms forwards; }
.pg-hero--wanderland .tagline em{ color:var(--pg-ochre); }
.pg-hero--wanderland .bottom-row{ display:grid; grid-template-columns:1fr auto 1fr; gap:32px; align-items:end; border-top:1px solid rgba(244,239,230,.30); padding-top:18px; opacity:0; animation:pg-fadeUp 1400ms var(--pg-ease) 1500ms forwards; font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase; letter-spacing:.28em; font-size:10px; color:rgba(244,239,230,.78); line-height:1.8; }
.pg-hero--wanderland .bottom-row .right{ text-align:right; }
.pg-hero--wanderland .bottom-row .center{ font-family:var(--pg-font-italic); font-style:italic; text-transform:none; letter-spacing:0; font-size:14px; color:var(--pg-bone); text-align:center; }
.pg-hero--wanderland .bottom-row em{ font-family:var(--pg-font-italic); font-style:italic; text-transform:none; letter-spacing:0; font-size:13px; color:var(--pg-bone); }
@media (prefers-reduced-motion: reduce){
  .pg-hero--wanderland .top-row, .pg-hero--wanderland .tagline, .pg-hero--wanderland .bottom-row{ opacity:1; animation:none; }
  .pg-hero--wanderland h1 .word{ opacity:1; transform:none; animation:none; }
}
@media (max-width:980px){
  .pg-hero--wanderland .pg-hero__stage{ padding:110px 24px 80px; }
  .pg-hero--wanderland .top-row{ flex-direction:column; gap:8px; align-items:flex-start; }
  .pg-hero--wanderland .bottom-row{ grid-template-columns:1fr; gap:12px; }
  .pg-hero--wanderland .bottom-row .right, .pg-hero--wanderland .bottom-row .center{ text-align:left; }
}
