/* =====================================================================
   Shared animated blue hero background (Events page undersea video).
   Markup: parts/hero-bg.php as the FIRST child of a `.pk-hasbg` hero. The
   hero's own gradient stays underneath as a fallback; its content sits above.
   ===================================================================== */
.pk-herobg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:#083a5c url('../assets/img/undersea-poster.webp') center/cover no-repeat}
.pk-herobg__video{display:block;width:100%;height:100%;object-fit:cover}
.pk-herobg__tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,24,43,.42),rgba(4,24,43,.56))}
.pk-hasbg{position:relative;overflow:hidden}
.pk-hasbg>:not(.pk-herobg){position:relative;z-index:1}
/* reduced motion: still poster only */
@media (prefers-reduced-motion:reduce){.pk-herobg__video{display:none}}

/* Standard page hero height = the Contact Us hero: its padding (header 113 + 96 top, 90 bottom) around the title block and a two-line intro
   (three lines at <=437px, where the intro wraps). min-height = 113+96+90+38(rule) + 1.05*title + intro lines. Used by Product, Policies,
   General Terms and Sales Terms, whose own content is shorter. */
.pk-hero-std{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-sizing:border-box;padding:209px 20px 90px;min-height:calc(394.6px + 1.05 * clamp(36px,5vw,64px))}
@media (max-width:437px){.pk-hero-std{min-height:calc(423.4px + 1.05 * clamp(36px,5vw,64px))}}
