/* Externalized from inline css in public page bloat-reduction phase. Source marker: assets/css/oloropa21-phase6-sitewide-hero-media-assignment.css. */
/* Inlined from assets/css/oloropa21-phase6-sitewide-hero-media-assignment.css */
/* OLOROPA (21) PHASE 6 — Sitewide Hero Media Assignment
   Purpose: every hero has an intentional video/poster/sound contract, visible controls,
   poster-first fallbacks, active-only media, ivory/deep-green luxury surfaces, and reduced-motion safety. */
:root {
  --ol21-p6-ivory: #fffaf0;
  --ol21-p6-white: #ffffff;
  --ol21-p6-green: #123326;
  --ol21-p6-green-2: #1f4a37;
  --ol21-p6-gold: #c8a45d;
  --ol21-p6-ink: #1b211c;
  --ol21-p6-soft: rgba(255,250,240,.84);
}
body.ol21-phase6-sitewide-hero-media {
  background: linear-gradient(180deg, #ffffff 0%, #fffaf0 48%, #ffffff 100%);
}
[data-ol21-phase6-hero-media="assigned"] {
  position: relative;
  isolation: isolate;
  overflow: clip;
  --ol21-p6-hero-poster-opacity: .34;
  --ol21-p6-hero-veil: linear-gradient(120deg, rgba(12,36,26,.72), rgba(18,51,38,.38) 45%, rgba(255,250,240,.10));
}
[data-ol21-phase6-hero-media="assigned"] > :not(.ol21-p6-hero-video-shell):not(.ol21-p6-hero-dock):not(.ol21-p6-hero-trace) {
  position: relative;
  z-index: 2;
}
.ol21-p6-hero-video-shell {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  background: #123326;
}
.ol21-p6-hero-video-shell video,
[data-ol21-phase6-hero-media="assigned"] > video:first-child,
[data-ol21-phase6-hero-media="assigned"] .p13-hero-video,
[data-ol21-phase6-hero-media="assigned"] .ol19-lab-hero__video {
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
  filter: saturate(1.03) contrast(1.03);
  transform: scale(1.015);
}
.ol21-p6-hero-video-shell::after,
.ol21-p6-hero-trace {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: var(--ol21-p6-hero-veil);
  pointer-events: none;
}
.ol21-p6-hero-trace {
  opacity: .55;
  mix-blend-mode: multiply;
}
[data-ol21-p6-primary-destination="diani-beach"],
[data-ol21-p6-primary-destination="watamu-marine-park"] {
  --ol21-p6-hero-veil: linear-gradient(120deg, rgba(13,54,48,.62), rgba(27,94,91,.34), rgba(255,250,240,.20));
}
[data-ol21-p6-primary-destination="tsavo-east"],
[data-ol21-p6-primary-destination="samburu"] {
  --ol21-p6-hero-veil: linear-gradient(120deg, rgba(49,28,15,.70), rgba(124,65,30,.35), rgba(255,250,240,.13));
}
[data-ol21-p6-primary-destination="lake-nakuru"] {
  --ol21-p6-hero-veil: linear-gradient(120deg, rgba(21,51,43,.62), rgba(134,156,137,.30), rgba(255,250,240,.18));
}
[data-ol21-p6-primary-destination="amboseli"] {
  --ol21-p6-hero-veil: linear-gradient(120deg, rgba(33,42,31,.66), rgba(182,151,101,.30), rgba(255,250,240,.14));
}
[data-ol21-p6-primary-destination="shimba-hills"] {
  --ol21-p6-hero-veil: linear-gradient(120deg, rgba(11,55,38,.70), rgba(38,93,59,.32), rgba(255,250,240,.14));
}
.ol21-p6-hero-dock {
  position: absolute;
  z-index: 8;
  left: clamp(1rem, 4vw, 3rem);
  bottom: clamp(1rem, 4vw, 2.5rem);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem;
  max-width: min(92vw, 720px);
  padding: .62rem .72rem;
  border: 1px solid rgba(200,164,93,.32);
  border-radius: 999px;
  color: var(--ol21-p6-green);
  background: rgba(255,250,240,.78);
  box-shadow: 0 18px 50px rgba(18,51,38,.16);
  backdrop-filter: blur(14px);
}
.ol21-p6-hero-dock__label {
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(18,51,38,.82);
  padding: 0 .35rem;
}
.ol21-p6-hero-dock__button {
  border: 1px solid rgba(18,51,38,.18);
  background: rgba(255,255,255,.58);
  color: var(--ol21-p6-green);
  border-radius: 999px;
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .45rem .72rem;
  transition: transform .24s ease, border-color .24s ease, background .24s ease;
}
.ol21-p6-hero-dock__button:hover,
.ol21-p6-hero-dock__button:focus-visible {
  transform: translateY(-1px);
  outline: none;
  border-color: rgba(200,164,93,.68);
  background: rgba(255,255,255,.88);
}
.ol21-p6-hero-dock__button[aria-pressed="true"] {
  background: rgba(18,51,38,.92);
  color: #fffaf0;
  border-color: rgba(200,164,93,.65);
}
[data-ol21-p6-audio-policy^="silent"] .ol21-p6-hero-dock__button[data-ol21-p6-sound-button] {
  display: none;
}
[data-ol21-p6-audio-policy*="disabled"] .ol21-p6-hero-dock__button[data-ol21-p6-sound-button] {
  opacity: .65;
}
.ol21-p6-hero-media-chip {
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  border-radius:999px;
  padding:.42rem .68rem;
  border:1px solid rgba(200,164,93,.24);
  background:rgba(255,250,240,.68);
  color:rgba(18,51,38,.86);
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
@media (max-width: 760px) {
  .ol21-p6-hero-dock {
    left: 1rem;
    right: 1rem;
    bottom: .9rem;
    border-radius: 1.25rem;
    justify-content: space-between;
  }
  .ol21-p6-hero-dock__label { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  [data-ol21-phase6-hero-media="assigned"] video { animation: none !important; transform: none !important; }
  .ol21-p6-hero-video-shell video { display: none; }
  .ol21-p6-hero-dock__button { transition: none; }
}
