/* GeoCARE Media */
.media-page { max-width: 1160px; margin: 0.6rem auto 3rem; font-family: 'Open Sans', 'Segoe UI', Arial, sans-serif; font-size: 1rem; line-height: 1.6; color: #322427; }
.media-page, .media-page * { box-sizing: border-box; }
:where(.media-page) :where(h2, h3, p) { margin: 0; padding: 0; }
.media-page .pub-admin-bar { margin-bottom: 1.4rem; }
.vidfilter { position: absolute; opacity: 0; pointer-events: none; }
#vf-all:checked ~ .news-filters [for="vf-all"], #vf-lecture:checked ~ .news-filters [for="vf-lecture"], #vf-webinar:checked ~ .news-filters [for="vf-webinar"], #vf-training:checked ~ .news-filters [for="vf-training"], #vf-talk:checked ~ .news-filters [for="vf-talk"], #vf-interview:checked ~ .news-filters [for="vf-interview"], #vf-other:checked ~ .news-filters [for="vf-other"] { background: #6b1239; border-color: #6b1239; color: #fff; }
#vf-all:checked ~ .news-filters [for="vf-all"] .news-chip__n, #vf-lecture:checked ~ .news-filters [for="vf-lecture"] .news-chip__n, #vf-webinar:checked ~ .news-filters [for="vf-webinar"] .news-chip__n, #vf-training:checked ~ .news-filters [for="vf-training"] .news-chip__n, #vf-talk:checked ~ .news-filters [for="vf-talk"] .news-chip__n, #vf-interview:checked ~ .news-filters [for="vf-interview"] .news-chip__n, #vf-other:checked ~ .news-filters [for="vf-other"] .news-chip__n { background: rgba(255,255,255,0.2); color: #fff; }
#vf-lecture:checked ~ .vid-grid .vid:not([data-type="lecture"]), #vf-webinar:checked ~ .vid-grid .vid:not([data-type="webinar"]), #vf-training:checked ~ .vid-grid .vid:not([data-type="training"]), #vf-talk:checked ~ .vid-grid .vid:not([data-type="talk"]), #vf-interview:checked ~ .vid-grid .vid:not([data-type="interview"]), #vf-other:checked ~ .vid-grid .vid:not([data-type="other"]) { display: none; }

.vid-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem; }
.vid { display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1.8px solid #e2cdd9; border-radius: 16px; box-shadow: 0 4px 12px rgba(107, 18, 57, 0.07); transition: box-shadow 0.25s, transform 0.25s; }
.vid:hover { box-shadow: 0 10px 24px rgba(107, 18, 57, 0.13); transform: translateY(-2px); }
.vid__frame { position: relative; aspect-ratio: 16 / 9; background: #1a0a10; }
.vid__frame iframe, .vid__poster { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.vid__poster img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: 0.92; transition: opacity 0.2s, transform 0.4s; }
.vid__poster:hover img { opacity: 1; transform: scale(1.03); }
.vid__play { position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; background: rgba(107, 18, 57, 0.92); box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35); transition: background 0.2s, transform 0.2s; }
.vid__play::after { content: ""; position: absolute; left: 25px; top: 19px; border-style: solid; border-width: 13px 0 13px 20px; border-color: transparent transparent transparent #fff; }
.vid__poster:hover .vid__play { background: #f0c14b; transform: scale(1.06); }
.vid__poster:hover .vid__play::after { border-left-color: #3a0a20; }
.vid__body { position: relative; display: flex; flex-direction: column; gap: 0.35rem; padding: 0.9rem 1rem 1rem; }
.vid__body .story-meta { padding-right: 3.5rem; }
.vid__title { color: #3a0a20; font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif; font-size: 1.02rem; font-weight: 800; line-height: 1.35; }
.vid__by { color: #7f4862; font-size: 0.88rem; }
.vid__note { color: #6b1239; font-weight: 600; }
.vid__ext { padding: 2rem 1rem; text-align: center; }
.vid__tag--lecture { background: #f0e4f4; color: #5b2a7a; }
.vid__tag--webinar { background: #e4f3ea; color: #1d6b3a; }
.vid__tag--training { background: #e6eef9; color: #1f4a8a; }
.vid__tag--talk { background: #fdf3d5; color: #7a5a00; }
.vid__edit { position: absolute; top: 10px; right: 10px; }

.vid-invite { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 1.8rem; padding: 1.4rem 1.7rem; background: linear-gradient(135deg, #6b1239, #4e0c29); color: #fff; border-radius: 14px; }
.vid-invite h3 { color: #fff; font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif; font-size: 1.2rem; font-weight: 800; margin-bottom: 0.3rem; }
.vid-invite p { color: #f3e4ec; font-size: 0.95rem; }
.vid-invite__b { display: flex; flex-wrap: wrap; gap: 0.6rem; justify-content: flex-end; }
.vid-invite .wb__btn--ghost { border-color: rgba(255,255,255,0.7); color: #fff !important; }
.vid-invite .wb__btn--ghost:hover { background: rgba(255,255,255,0.12); }
.vid-invite .wb__btn { white-space: nowrap; }

@media (max-width: 980px) { .vid-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .vid-grid { grid-template-columns: 1fr; } .vid-invite { flex-direction: column; align-items: flex-start; } .vid-invite__b { justify-content: flex-start; } }
@media print { .pub-admin-bar, .vid__edit, .news-filters { display: none !important; } }

/* Homepage block */
.gcv-latest { max-width: 1160px; margin: 0.4rem auto 0.6rem; font-family: 'Open Sans', 'Segoe UI', Arial, sans-serif; font-size: 1rem; line-height: 1.5; color: #322427; }
.gcv-latest .story-meta { padding-right: 3.5rem; line-height: 1.4; }
.gcv-latest .vid-grid--3 { grid-template-columns: repeat(3, 1fr); }
.gcv-latest .vid-grid--2 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 700px) { .gcv-latest .vid-grid--3, .gcv-latest .vid-grid--2 { grid-template-columns: 1fr; } }
.gcv-latest, .gcv-latest * { box-sizing: border-box; }
.gcv-latest__head { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; }
.gcv-latest__h2 { margin: 0; padding: 0; color: #6b1239; font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif; font-size: 1.7rem; font-weight: 800; line-height: 1.2; }
.gcv-latest__sub { margin: 0.2rem 0 0; padding: 0; color: #7f4862; font-size: 0.95rem; line-height: 1.5; }
.gcv-latest__links { display: flex; align-items: center; gap: 0.8rem; white-space: nowrap; }
.gcv-latest__all { color: #6b1239; font-weight: 700; font-size: 0.92rem; text-decoration: none; }
.gcv-latest__all:hover { text-decoration: underline; }
.gcv-latest .vid__title { font-size: 0.98rem; }
.gcv-latest .vid__body { padding: 0.8rem 0.9rem 0.9rem; }
@media (max-width: 640px) { .gcv-latest__head { flex-direction: column; align-items: flex-start; } .gcv-latest__links { flex-wrap: wrap; row-gap: 0.4rem; max-width: 100%; } }
