/* Dynamic Laravel content inside the supplied design. */
[hidden] { display: none !important; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.mobile-menu-btn { min-width: 44px; min-height: 44px; }
img { max-width: 100%; }
a { color: inherit; }
.logo, .blog-body h2 a, .service-body h2 a, .current-event-body h2 a,
.archive-event-body h2 a, .video-info h3 a { text-decoration: none; }
:focus-visible { outline: 3px solid #00a2db; outline-offset: 4px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.empty-state { padding: 24px; color: #526679; grid-column: 1 / -1; }
.blog-media, .service-media, .current-event-media, .archive-event-media,
.article-detail-image, .news-details-media, .service-details-media,
.about-news-thumb, .photo-gallery-item, .video-thumb, .about-book-cover,
.news-thumb, .program-media, .article-media, .library-cover, .committee-portrait { position: relative; overflow: hidden; }
.blog-media > img, .service-media > img, .current-event-media > img,
.archive-event-media > img, .article-detail-image > img,
.news-details-media > img, .service-details-media > img,
.about-news-thumb > img, .photo-gallery-item > img, .video-thumb > img,
.about-book-cover > img, .news-thumb > img, .program-media > img,
.article-media > img, .library-cover > img, .committee-portrait > img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
}
.about-book-cover > img, .library-cover > img { object-fit: contain; background: #edf3f8; }
.about-book-cover:has(> img)::before { content: none; }
.blog-media time, .service-media time, .video-thumb > i { position: relative; z-index: 2; }
.videos-grid .video-thumb > i { position: absolute; }
.video-panel .video-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.video-panel .video-play { position: relative; z-index: 2; }
.rich-content { overflow-wrap: anywhere; color: #43576b; line-height: 1.9; }
.rich-content p, .rich-content li { color: inherit; max-width: none; text-shadow: none; }
.rich-content h1, .rich-content h2, .rich-content h3, .rich-content h4,
.rich-content h5, .rich-content h6 { color: #1d3249; margin-block: 20px 14px; }
.article-detail-title > div { color: #607488; line-height: 1.9; }
.committee-photo > img { width: 100%; height: 100%; object-fit: cover; }
.rich-content img { max-width: 100%; height: auto; }
.rich-content iframe, .rich-content video { max-width: 100%; }
.rich-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.rich-content td, .rich-content th { padding: 10px; border: 1px solid #dce6ef; }
.rich-content ul, .rich-content ol { padding-inline-start: 24px; margin-block: 16px; }
.rich-content p + p { margin-top: 16px; }
.rich-content a { color: #008fa1; text-decoration: underline; }
.rich-content blockquote { padding: 20px; border-inline-start: 4px solid #00d2ff; background: #f3f8fb; }
.detail-gallery, .event-members-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 24px; }
.detail-gallery { padding: 24px; }
.detail-gallery img { width: 100%; border-radius: 8px; }
.event-members-grid { margin-top: 24px; }
.event-member-card { padding: 20px; text-align: center; border: 1px solid #dce6ef; border-radius: 12px; color: #20364f; }
.event-member-card > img { width: 100px; height: 100px; object-fit: cover; border-radius: 50%; margin-bottom: 16px; }
.event-member-card p { margin-block: 12px; color: #607488; text-shadow: none; }
.event-member-card summary { cursor: pointer; color: #008fa1; }
.member-socials { display: flex; justify-content: center; gap: 18px; margin-top: 16px; }
.event-files-card + .event-files-card { margin-top: 28px; }
.event-detail-image { display: block; margin: 0 auto 28px; max-height: 600px; object-fit: contain; }
.event-meeting-details { margin-top: 24px; color: #20364f; overflow-wrap: anywhere; }
.event-file-link { flex-wrap: wrap; }
.event-file-link small { margin-inline-start: auto; }
.events-filter-box > a { display: inline-block; margin-top: 12px; color: #008fa1; font-size: .85rem; }
.events-filter-box > button + label { margin-top: 18px; }
.archive-event-body h2 { color: #20364f; font-size: 1rem; line-height: 1.55; margin-bottom: 16px; }
.blog-pagination > span { display: inline-flex; min-width: 42px; height: 42px; align-items: center; justify-content: center; border: 1px solid #e3ebf2; border-radius: 6px; color: #8192a5; }
.gallery-description { margin-bottom: 28px; color: #20364f; line-height: 1.8; }
.gallery-description h2 { margin-bottom: 12px; }
.album-video-player { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; background: #061121; border-radius: 10px; }
.album-permalink { display: block; padding: 0 24px 18px; color: #008fa1; font-size: .85rem; }
.site-message { padding: 18px 24px; margin-block: 20px; background: #e5f6fb; color: #20364f; border-radius: 8px; line-height: 1.7; }
.site-message-error { background: #fff0ef; color: #932e27; }
.site-message-success { background: #e8f8f0; color: #205b40; }
.site-message ul { padding-inline-start: 20px; }
#main-content:has(> .site-message) { padding-top: var(--header-offset); }
#main-content:has(> .site-message) .about-hero { padding-top: 64px; }
.verification-label { display: block; margin: 18px 0 10px; color: #20364f; }
.contact-captcha, .opinion-captcha { padding: 0; border: 1px solid #dce6ef; background: #fff; }
.contact-captcha img, .opinion-captcha img { display: block; max-width: 180px; height: 52px; object-fit: contain; }
.contact-form-card > input:not([type=hidden]) { width: 100%; padding: 16px; border: 1px solid #dce6ef; border-radius: 8px; }
.site-dialog { position: fixed; inset: 0; margin: auto; width: min(680px, calc(100% - 32px)); max-height: calc(100dvh - 40px); overflow: auto; padding: 32px; border: 0; border-radius: 16px; color: #20364f; background: #fff; }
.site-dialog::backdrop { background: rgba(6, 17, 33, .75); }
.site-dialog h2 { margin: 0 34px 24px 0; font-size: 1.5rem; }
.site-dialog .contact-form-card { padding: 0; box-shadow: none; border: 0; }
.dialog-close { position: absolute; inset-block-start: 15px; inset-inline-end: 15px; width: 32px; height: 32px; border: 0; border-radius: 50%; color: #20364f; background: #edf3f8; }
.request-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.request-field-grid label { display: grid; gap: 8px; font-size: .85rem; }
.request-field-grid input { width: 100%; min-width: 0; padding: 14px; border: 1px solid #dce6ef; border-radius: 8px; }
.book-download-btn { border: 0; font: inherit; }
.event-registration-page .registration-container { width: 90%; max-width: 760px; color: #20364f; }
.event-registration-page .form-header { background: linear-gradient(135deg, #0b2843, #008fa1); }
.event-registration-page .form-row { flex-wrap: wrap; }
.event-registration-page .half-width { min-width: min(100%, 240px); }
.event-registration-page .registration-form { line-height: 1.6; }
.event-registration-page .contact-form-section { background: #f7fbff; }
[dir=rtl] *:not(i) { font-family: 'Noto Kufi Arabic', sans-serif; }
[dir=rtl] .about-breadcrumb, [dir=rtl] .event-meta-row { direction: rtl; }
[dir=rtl] .fa-arrow-right, [dir=rtl] .fa-chevron-right, [dir=rtl] .fa-chevron-left { transform: scaleX(-1); }
[dir=rtl] .registration-container { direction: rtl; }
@media (max-width: 600px) {
  .request-field-grid { grid-template-columns: 1fr; }
  .site-dialog { padding: 26px 20px; }
  .event-registration-page .form-row { display: block; }
  .event-registration-page .registration-form { padding: 24px 18px; }
  .event-details-meta-card strong { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
