/* Video gallery. One recognizable cover shown immediately; compact player modal. */
.video-gallery-card{cursor:default}
.video-gallery-card:hover{transform:none;box-shadow:0 10px 27px #18394306}
.video-gallery-card .video-cover{isolation:isolate;aspect-ratio:9/16}
.video-cover-button{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;z-index:2;cursor:pointer;border:0;background:transparent;padding:0;color:inherit}
.video-cover-button:focus-visible{outline:3px solid #15b4a2;outline-offset:-5px;border-radius:14px}
.video-cover-button .video-play{position:relative;z-index:2;top:auto;left:auto;transform:none;transition:transform .2s ease,background .2s ease;box-shadow:0 8px 30px #03152377}
.video-cover-button:hover .video-play,.video-cover-button:focus-visible .video-play{transform:scale(1.1);background:#dcfff7}
.video-gallery-card .video-caption{min-height:98px}
.video-gallery-card .video-caption h2{line-height:1.42;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.video-gallery-card .video-caption .kind{overflow-wrap:anywhere}
.video-gallery-card .video-caption p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.6}
.video-gallery-card .video-caption p[hidden]{display:none}
.video-cover-preview{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none;display:block;background:#0d293b}
/* The popup intentionally has no right-hand panel or extra explanatory text. */
.video-modal{box-sizing:border-box;width:min(400px,calc(100vw - 16px));max-width:none;max-height:calc(100dvh - 16px);padding:0;border:1px solid #cfe2df;border-radius:18px;background:#fff;color:#193442;box-shadow:0 30px 100px #06162478;overflow:auto}
.video-modal::backdrop{background:rgba(4,17,28,.78);backdrop-filter:blur(4px)}
.video-modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px 10px;border-bottom:0}
.video-modal-heading{min-width:0;flex:1}
.video-modal-heading h2{font-size:clamp(15px,2.6vw,18px);line-height:1.4;margin:0;overflow-wrap:anywhere}
.video-modal-close{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:50%;border:1px solid #d5e6e4;background:#eff7f5;color:#0a4650;cursor:pointer;font-size:18px}
.video-modal-close:hover{background:#daf1e9}
.video-modal-body{display:flex;align-items:center;justify-content:center;gap:0;padding:0 12px 12px}
.video-modal-player{width:min(100%,350px,calc((100dvh - 112px) * 9 / 16));max-height:calc(100dvh - 112px);aspect-ratio:9 / 16;background:#102b3e;overflow:hidden;border-radius:12px;margin-inline:auto;position:relative}
.video-modal-player iframe{display:block;width:100%;height:100%;border:0}
body.video-dialog-open{overflow:hidden}
@media(max-width:650px){.video-modal{width:min(400px,calc(100vw - 14px));max-height:calc(100dvh - 14px);border-radius:15px}.video-modal-header{padding:10px 12px 9px}.video-modal-close{width:33px;height:33px}.video-modal-body{padding:0 9px 9px}.video-modal-player{width:min(100%,calc((100dvh - 100px)*9/16));max-height:calc(100dvh - 100px)}.video-gallery-card .video-caption{min-height:85px}}
@media(prefers-reduced-motion:reduce){.video-cover-button .video-play{transition:none}}

.video-api-notice{background:#e4f4f1;border:1px solid #bfdfd7;padding:13px 16px;border-radius:10px;font-size:13px;color:#315c62;margin:0 0 20px}
.video-api-notice[hidden]{display:none}