/* Dynamic resource fragments. Page structure and typography live in Elementor. */
.rv-resource-badges {display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0;}
.rv-resource-badge {display:inline-block;padding:3px 8px;border-radius:6px;background:var(--rv-badge-bg,#F1EBDD);color:var(--rv-badge-text,#3E3624);font:400 12px/normal var(--rv-mono);}
.rv-resource-filters {display:flex;flex-wrap:wrap;gap:20px 40px;padding:18px 0;border-top:1px solid #D8CFBA;border-bottom:1px solid #D8CFBA;margin-bottom:32px;}
.rv-filter-group {display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rv-filter-label {font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#4A5563;margin-right:4px;}
.elementor .rv-resource-filters [data-rv-filter] {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:38px;margin:0;padding:8px 14px;border:1px solid #CFC6B2;border-radius:999px;background:#FFFFFF;color:#011828;font:400 14px/normal var(--rv-font-stack);cursor:pointer;transition:background-color .4s ease,color .4s ease,border-color .4s ease;}
.elementor .rv-resource-filters [data-rv-filter][aria-pressed="true"] {background:#2C2F73!important;border-color:#2C2F73!important;color:#FFFFFF!important;}
.elementor .rv-resource-filters [data-rv-filter][aria-pressed="false"]:is(:hover,:focus-visible) {background:var(--rv-surface-hover,#E7E0CF);border-color:#CFC6B2;color:#011828;}
.elementor .rv-resource-filters [data-rv-filter][aria-pressed="true"]:is(:hover,:focus-visible) {background:#011828!important;border-color:#011828!important;color:#FFFFFF!important;}
.elementor [data-rv-card="resource"] {display:flex;flex-direction:column;gap:10px;height:100%;width:100%;box-sizing:border-box;cursor:pointer;text-decoration:none;color:#011828;padding:22px;border:1px solid #E7E0CF;border-radius:16px;background:#FFFFFF;transition:border-color .4s ease,background-color .4s ease;}
.elementor [data-rv-card="resource"]:is(:hover,:focus-visible) {border-color:#2C2F73;background:#FFFFFF;color:#011828;}
.elementor [data-rv-card="resource"] .elementor-widget-shortcode {width:100%;margin:0;}
.elementor [data-rv-card="resource"] .rv-card-action {margin-top:auto;}
.rv-resource-actions {display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:8px;}
.elementor .rv-resource-actions .rv-resource-action {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:15px 24px;border:0;border-radius:999px;background:#2C2F73;color:#FFFFFF;font:500 16px/normal var(--rv-font-stack);text-decoration:none;cursor:pointer;transition:color .4s ease,background-color .4s ease,border-color .4s ease;}
.elementor .rv-resource-actions .rv-resource-action[target="_blank"] {line-height:1.6;text-align:left;}
.elementor .rv-resource-actions .rv-resource-action:is(:hover,:focus-visible) {background:#011828;color:#FFFFFF;}
.elementor .rv-resource-availability {margin:0;color:#4A5563;font:400 14px/1.6 var(--rv-font-stack);}
.elementor .rv-resource-pathway {display:inline-block;align-self:flex-start;padding:6px 0;color:#2C2F73;font:400 15px/normal var(--rv-font-stack);text-decoration:underline;text-underline-offset:2px;transition:color .4s ease;}
.elementor .rv-resource-pathway:hover {color:#011828;}
.elementor .rv-resource-meta {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:0;margin:48px 0 0;padding:0;border-top:1px solid #D8CFBA;}
.rv-resource-meta>div {padding:16px 16px 16px 0;}
.rv-resource-meta dt {font:400 13px/1.6 var(--rv-font-stack);letter-spacing:.06em;text-transform:uppercase;color:#4A5563;}
.rv-resource-meta dd {margin:4px 0 0;font:400 16px/1.6 var(--rv-font-stack);color:#011828;}
.rv-resource-media {position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:16px;background:#F1EBDD;isolation:isolate;}
.rv-resource-media .rv-resource-poster {display:block;width:100%;height:100%;object-fit:contain;opacity:1;transition:opacity .4s ease;}
.rv-resource-no-image {display:flex!important;align-items:center;justify-content:center;padding:24px;text-align:center;background:repeating-linear-gradient(135deg,#EFE9DC 0 10px,#F7F3EA 10px 20px);color:#6E6350;font:400 12px/1.6 var(--rv-mono);}
.elementor .rv-video-play {position:absolute;inset:0;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;border:0;border-radius:16px;padding:20px;background:rgba(1,24,40,.18);color:#FFFFFF;cursor:pointer;transition:background-color .4s ease,opacity .4s ease;}
.elementor .rv-video-play:hover {background:rgba(1,24,40,.34);}
.rv-video-play svg {width:64px;height:64px;padding:18px;border-radius:50%;background:#2C2F73;color:#FFFFFF;box-shadow:0 4px 20px #01182833;transition:background-color .4s ease,transform .4s ease;}
.rv-video-play:hover svg {background:#011828;transform:scale(1.06);}
.rv-video-play span {padding:6px 12px;border-radius:999px;background:#2C2F73;color:#FFFFFF;font:500 14px/1.4 var(--rv-font-stack);}
.rv-video-player {position:absolute;inset:0;z-index:2;background:#011828;opacity:0;transition:opacity .4s ease;}
.rv-video-player iframe,.rv-video-player video {display:block;width:100%;height:100%;border:0;object-fit:contain;}
.rv-resource-media[data-playing] .rv-video-player {opacity:1;}
.rv-resource-media[data-playing]>.rv-resource-poster {opacity:0;}
.rv-video-status {position:absolute;z-index:3;left:12px;right:12px;bottom:12px;padding:10px 12px;margin:0;border-radius:8px;background:#FFFFFF;color:#011828;font:400 14px/1.5 var(--rv-font-stack);}
.rv-resource-media [hidden] {display:none!important;}
.rv-resource-body-content:has(.elementor-widget-theme-post-content:empty) {display:none;}
@media(max-width:767px){
 .rv-resource-filters {flex-direction:column;align-items:stretch;gap:18px;}
 .rv-filter-group {gap:6px;}
 .rv-filter-label {flex-basis:100%;margin:0 0 3px;font-size:12px;}
 .elementor .rv-resource-filters [data-rv-filter] {min-height:30px;padding:6px 9px;font-size:12px;white-space:nowrap;}
 .rv-filter-group[aria-label="Type"] {gap:4px;}
 .elementor .rv-filter-group[aria-label="Type"] [data-rv-filter] {padding:6px;font-size:12px;}
}
@media(prefers-reduced-motion:reduce){.rv-resource-media *,.elementor [data-rv-card="resource"],.elementor .rv-resource-filters [data-rv-filter],.rv-resource-actions *{transition:none!important;}}
