/* On-demand, in-page media. Keep provider controls visible and unobstructed. */
.inline-player [hidden] { display: none !important; }
.inline-player { position: relative; }
.inline-viewport { width: 100%; height: 100%; }
button.media-facade { border: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; text-align: inherit; background: #e6e5db; }
.media-title-card { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-start; gap:12px; padding:24px; background:linear-gradient(125deg,#e9e4d7,#d6decd); color:#354d41; }
.media-title-card>span:first-child { font-size:9px; letter-spacing:.16em; }
.media-title-card>span:last-child { font-family:var(--serif); font-size:clamp(16px,2.6vw,25px); line-height:1.6; }
.youtube-facade .inline-play-label { position:absolute; bottom:12px; left:14px; right:14px; justify-content:center; padding:9px 12px; font-size:11px; }
.inline-player .inline-play-label { min-height: 48px; }
.youtube-facade .inline-play-label { background: #faf9f6f5; }
.inline-player.is-active,
.hero-film.has-portrait .inline-player.is-active,
.hero-film.has-portrait .video-frame.is-portrait.is-active {
  width: 100%; max-width: 540px; height: auto; aspect-ratio: auto; overflow: visible;
}
.inline-player.is-active .inline-viewport { height: auto; }
.hero-film.has-portrait .inline-player[data-provider="instagram"].is-active { max-width: 360px; }
.embed-mount { width: 100%; min-width: 0; background: #fff; min-height: 200px; }
.embed-mount iframe { display: block; width: 100% !important; min-width: 0 !important; max-width: 100% !important; border: 0; margin: 0 !important; }
.embed-mount .instagram-media { width: 100% !important; min-width: 0 !important; max-width: 100% !important; margin: 0 !important; box-shadow: none !important; }
[data-provider="instagram"] .embed-mount:empty { min-height: 350px; }
[data-provider="youtube"] .embed-mount { aspect-ratio: 16 / 9; min-height: 200px; background: #20231f; }
[data-provider="youtube"] .embed-mount iframe { height: 100%; min-height: 200px; aspect-ratio: 16 / 9; }
.player-tools { background: #f4f1e9; padding: 14px; border: 1px solid #d9d6c8; border-top: 0; }
.player-status { font-size: 12px; line-height: 1.8; color: #525b4c; }
.player-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-top: 8px; }
.player-actions button { display: inline-flex; gap: 5px; align-items: center; min-height: 44px; padding: 6px 0; background: transparent; border: 0; border-bottom: 1px solid #a9b09f; color: #354d41; font: inherit; font-size: 12px; cursor: pointer; }
.player-actions .icon { width: 15px; height: 15px; }
.player-help { margin-top: 12px; font-size: 11px; line-height: 1.9; color: #626955; }
.player-help summary { cursor: pointer; padding-block: 8px; }
.player-help p { margin-top: 8px; }
.player-noscript { padding: 12px; background: #faf9f6; font-size: 12px; }
.instagram-card .inline-player img { aspect-ratio: auto; }
.video-frame.is-square { aspect-ratio: 1; }
.instagram-grid:has(>.instagram-card:nth-child(2):last-child) { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 1000px; gap: 48px; }
.instagram-card>h3 { font-family: var(--serif); font-size: 22px; font-weight: 400; line-height: 1.7; margin-bottom: 20px; }
.instagram-card .video-frame.is-portrait:not(.is-active) { max-width: 250px; }
.instagram-card .media-facade>img { transform: none; }
.instagram .editorial-note { font-size: 11px; line-height: 1.9; margin-top: 28px; }
@media (max-width: 700px) {
  .media-title-card { padding: 18px; gap: 8px; }
  .media-title-card>span:first-child { font-size: 8px; line-height: 1.5; }
  .media-title-card>span:last-child { font-size: 16px; line-height: 1.5; }
  .instagram-grid:has(>.instagram-card:nth-child(2):last-child) { grid-template-columns: 1fr; gap: 42px; }
  .instagram-card>h3 { font-size: 20px; margin-bottom: 16px; }
  .instagram-card>p { font-size: 15px; line-height: 1.85; }
  .hero-film.has-portrait .inline-player.is-active { grid-column: 1 / -1; }
  .hero-film.has-portrait:has(.is-active) { display: flex; }
  .hero-film.has-portrait:has(.is-active) figcaption { order: 2; }
  .hero-film.has-portrait:has(.is-active) .video-frame { order: 3; }
  .player-tools { padding: 12px; }
}
