/* PG Pull Quote — scoped to .pg-pullquote. Ported from the DRobb .pull-band.
   Section uses .pg-reveal only to receive .pg-in (own fade neutralised). */

.pg-pullquote.pg-reveal{ opacity:1; transform:none; filter:none; transition:none; will-change:auto; }
.pg-pullquote{ background:var(--pg-ink); color:var(--pg-bone); padding:160px 56px; text-align:center; position:relative; overflow:hidden; }
.pg-pullquote::before{ content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(ellipse at 30% 50%, rgba(200,146,61,.10) 0%, transparent 60%), radial-gradient(ellipse at 80% 50%, rgba(180,83,58,.10) 0%, transparent 55%); }
.pg-pullquote .container{ position:relative; z-index:2; max-width:980px; margin:0 auto; }

.pg-pullquote .marker{ display:inline-flex; align-items:center; gap:14px; font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase; letter-spacing:.32em; font-size:10px; color:rgba(244,239,230,.62); margin-bottom:32px; }
.pg-pullquote .marker .rule{ width:32px; height:1px; background:rgba(244,239,230,.36); }

.pg-pullquote .quote-setup{ font-family:var(--pg-font-display); font-weight:400; font-variation-settings:"opsz" 144; font-size:clamp(40px,4.4vw,68px); line-height:1.16; letter-spacing:-.014em; color:rgba(244,239,230,.72); text-transform:lowercase; margin:0 0 48px; }

.pg-pullquote .quote-emphasis{ font-family:var(--pg-font-display); font-weight:700; font-variation-settings:"opsz" 144; font-style:italic; font-size:clamp(96px,13vw,200px); line-height:1.3; letter-spacing:-.020em; color:var(--pg-terracotta); margin:0; padding:24px 8px 32px; clip-path:inset(0 100% 0 0); transition:clip-path 1600ms var(--pg-ease) 200ms; }
.pg-pullquote.pg-in .quote-emphasis{ clip-path:inset(0 0 0 0); animation:pg-ie-thump 700ms cubic-bezier(.2,1.4,.4,1) 1800ms; }
@keyframes pg-ie-thump{ 0%{ transform:scale(1); } 40%{ transform:scale(1.05); } 100%{ transform:scale(1); } }
.pg-pullquote .quote-emphasis .ie-text{ display:inline-block; position:relative; }
.pg-pullquote .quote-emphasis .ie-text::after{ content:''; position:absolute; left:0; right:0; bottom:-0.02em; height:0.05em; background:var(--pg-terracotta); transform:scaleX(0); transform-origin:left; transition:transform 1400ms var(--pg-ease) 2400ms; }
.pg-pullquote.pg-in .quote-emphasis .ie-text::after{ transform:scaleX(1); }

.pg-pullquote .attribution{ margin-top:56px; font-family:var(--pg-font-italic); font-style:italic; font-size:16px; color:rgba(244,239,230,.55); }

@media (prefers-reduced-motion: reduce){
  .pg-pullquote .quote-emphasis{ clip-path:none; animation:none; }
  .pg-pullquote .quote-emphasis .ie-text::after{ transform:scaleX(1); }
}
@media (max-width:768px){ .pg-pullquote{ padding:110px 24px; } }
