/**
 * Sirajul Huda v1.0.8
 * Art-directed colour system: coherent surfaces, text, controls, imagery,
 * gradients, and accessible states for every global skin.
 */

.theme-color-skin {
    --skin-page: var(--theme-body);
    --skin-panel: var(--theme-surface);
    --skin-section: var(--theme-section);
    --skin-soft: var(--theme-soft);
    --skin-text: var(--theme-ink);
    --skin-heading: var(--theme-heading);
    --skin-muted: var(--theme-muted);
    --skin-border: var(--theme-border);
    --skin-border-strong: var(--theme-border-strong);
    --skin-link: var(--theme-primary);
    --skin-link-hover: var(--theme-primary-hover);
    --skin-icon: var(--theme-icon);
    --skin-icon-surface: var(--theme-icon-surface);
    --skin-shadow:
        0 1px 2px color-mix(in srgb, var(--theme-deep) 5%, transparent),
        0 18px 48px color-mix(in srgb, var(--theme-deep) 10%, transparent);
    --skin-shadow-hover:
        0 2px 5px color-mix(in srgb, var(--theme-deep) 7%, transparent),
        0 24px 58px color-mix(in srgb, var(--theme-deep) 15%, transparent);
    color-scheme: light;
    background: var(--skin-page);
    color: var(--skin-text);
}

.theme-color-skin.theme-surface-dark {
    --skin-page: #0E1311;
    --skin-panel: #151C18;
    --skin-section: #111814;
    --skin-soft: #1C2822;
    --skin-text: #EEF4F0;
    --skin-heading: #FFFFFF;
    --skin-muted: #B6C3BC;
    --skin-border: #34443B;
    --skin-border-strong: #52665B;
    --skin-link: #B9D8C8;
    --skin-link-hover: #FFFFFF;
    --skin-icon: #D9EAE1;
    --skin-icon-surface: #23342B;
    color-scheme: dark;
}

.theme-color-skin.theme-surface-contrast {
    --skin-page: #FFFFFF;
    --skin-panel: #FFFFFF;
    --skin-section: #FFFFFF;
    --skin-soft: #FFFFFF;
    --skin-text: #000000;
    --skin-heading: #000000;
    --skin-muted: #202020;
    --skin-border: #000000;
    --skin-border-strong: #000000;
    --skin-link: #0000CC;
    --skin-link-hover: #660099;
    --skin-icon: #000000;
    --skin-icon-surface: #FFFFFF;
    --skin-shadow: none;
    --skin-shadow-hover: none;
    color-scheme: light;
}

@supports (color: color-mix(in srgb, #000 50%, #fff)) {
    .theme-color-skin.theme-surface-dark {
        --skin-page: color-mix(in srgb, var(--theme-deep) 20%, #090C0B);
        --skin-panel: color-mix(in srgb, var(--theme-deep) 25%, #101512);
        --skin-section: color-mix(in srgb, var(--theme-deep) 16%, #0D120F);
        --skin-soft: color-mix(in srgb, var(--theme-primary) 20%, #111814);
        --skin-border: color-mix(in srgb, var(--theme-primary) 24%, #344039);
        --skin-border-strong: color-mix(in srgb, var(--theme-primary) 35%, #526159);
        --skin-link: color-mix(in srgb, var(--theme-primary) 38%, #FFFFFF);
        --skin-icon: color-mix(in srgb, var(--theme-primary) 34%, #FFFFFF);
        --skin-icon-surface: color-mix(in srgb, var(--theme-primary) 20%, #17201B);
    }
}

.theme-color-skin,
.theme-color-skin main,
.theme-color-skin .article-body {
    background-color: var(--skin-page);
    color: var(--skin-text);
}

.theme-color-skin a {
    color: var(--skin-link);
}

.theme-color-skin a:hover,
.theme-color-skin a:focus-visible {
    color: var(--skin-link-hover);
}

.theme-color-skin :focus-visible {
    outline: 3px solid var(--theme-accent);
    outline-offset: 3px;
}

.theme-color-skin img {
    opacity: 1;
    filter: none;
}

/* Buttons use explicit on-colours instead of assuming white is readable. */
.theme-color-skin .btn-green,
.theme-color-skin .sirda-cta-button,
.theme-color-skin .article-pagination a.is-active,
.theme-color-skin .article-pagination a:hover {
    border-color: var(--theme-primary);
    background: var(--theme-primary);
    color: var(--theme-on-primary);
    box-shadow: 0 10px 25px color-mix(in srgb, var(--theme-primary) 18%, transparent);
}

.theme-color-skin .btn-green:hover,
.theme-color-skin .btn-green:focus-visible,
.theme-color-skin .sirda-cta-button:hover,
.theme-color-skin .sirda-cta-button:focus-visible {
    border-color: var(--theme-primary-hover);
    background: var(--theme-primary-hover);
    color: var(--theme-on-primary);
}

.theme-color-skin .btn-gold,
.theme-color-skin .newsletter-form button,
.theme-color-skin .capacity-badge,
.theme-color-skin .hero-indicators .active {
    border-color: var(--theme-accent);
    background: var(--theme-accent);
    color: var(--theme-accent-text);
}

.theme-color-skin .btn-gold:hover,
.theme-color-skin .btn-gold:focus-visible,
.theme-color-skin .newsletter-form button:hover,
.theme-color-skin .newsletter-form button:focus-visible {
    border-color: var(--theme-accent-hover);
    background: var(--theme-accent-hover);
    color: var(--theme-accent-text);
}

.theme-color-skin .btn-outline-green {
    border-color: var(--theme-primary);
    background: transparent;
    color: var(--theme-primary);
}

.theme-color-skin .btn-outline-green:hover,
.theme-color-skin .btn-outline-green:focus-visible {
    border-color: var(--theme-primary);
    background: var(--theme-primary);
    color: var(--theme-on-primary);
}

/* Topbar, header, navigation, logo protection, and mobile menu. */
.theme-color-skin .topbar {
    border-bottom-color: color-mix(in srgb, var(--theme-on-deep) 18%, transparent);
    background: var(--theme-topbar);
    color: var(--theme-on-deep);
}

.theme-color-skin .topbar a,
.theme-color-skin .topbar button,
.theme-color-skin .topbar-item {
    color: var(--theme-on-deep);
}

.theme-color-skin .topbar i,
.theme-color-skin .topbar-item i {
    color: var(--theme-accent);
}

.home-page.theme-color-skin .topbar {
    background: color-mix(in srgb, var(--theme-topbar) 82%, transparent);
    backdrop-filter: blur(10px);
}

.theme-color-skin:not(.home-page) .site-header,
.theme-color-skin .site-header.scrolled {
    border-bottom: 1px solid var(--skin-border);
    background: color-mix(in srgb, var(--skin-panel) 96%, transparent);
    box-shadow: 0 8px 30px color-mix(in srgb, var(--theme-deep) 11%, transparent);
    backdrop-filter: blur(12px);
}

.theme-color-skin .site-header .navbar-brand img,
.theme-color-skin #mobileMenu .navbar-brand img,
.theme-color-skin .footer-brand img {
    box-sizing: border-box;
    padding: 3px;
    border: 1px solid color-mix(in srgb, var(--theme-primary) 20%, var(--skin-border));
    border-radius: 50%;
    background: #FFFFFF;
    box-shadow: 0 6px 18px color-mix(in srgb, var(--theme-deep) 13%, transparent);
}

.theme-color-skin:not(.home-page) .navbar-brand strong,
.theme-color-skin .site-header.scrolled .navbar-brand strong,
.theme-color-skin:not(.home-page) .navbar-nav .nav-link,
.theme-color-skin .site-header.scrolled .navbar-nav .nav-link,
.theme-color-skin .navbar-toggler,
.theme-color-skin .mobile-nav-link {
    color: var(--skin-heading);
}

.theme-color-skin:not(.home-page) .navbar-brand small,
.theme-color-skin .site-header.scrolled .navbar-brand small {
    color: var(--theme-primary);
}

.home-page.theme-color-skin .site-header:not(.scrolled) {
    border-bottom-color: rgba(255, 255, 255, .2);
    background: linear-gradient(180deg, rgba(5, 13, 10, .44), rgba(5, 13, 10, .04));
}

.home-page.theme-color-skin .site-header:not(.scrolled) .navbar-brand strong,
.home-page.theme-color-skin .site-header:not(.scrolled) .navbar-brand small,
.home-page.theme-color-skin .site-header:not(.scrolled) .navbar-nav .nav-link,
.home-page.theme-color-skin .site-header:not(.scrolled) .navbar-toggler {
    color: #FFFFFF;
    text-shadow: 0 1px 8px rgba(0, 0, 0, .38);
}

.theme-color-skin .navbar-nav .nav-link:hover,
.theme-color-skin .navbar-nav .nav-link:focus-visible,
.theme-color-skin .navbar-nav .nav-link.active {
    color: var(--theme-primary);
}

.home-page.theme-color-skin .site-header:not(.scrolled) .navbar-nav .nav-link:hover,
.home-page.theme-color-skin .site-header:not(.scrolled) .navbar-nav .nav-link:focus-visible {
    color: var(--theme-accent);
}

.theme-color-skin .nav-style-pills .navbar-nav .nav-link:hover,
.theme-color-skin .nav-style-pills .navbar-nav .nav-link:focus-visible,
.theme-color-skin .nav-style-pills .navbar-nav .nav-link.active {
    background: var(--theme-primary-subtle);
    color: var(--theme-deep);
}

.theme-color-skin .dropdown-menu,
.theme-color-skin .offcanvas,
.theme-color-skin .modal-content {
    border-color: var(--skin-border);
    background: var(--skin-panel);
    color: var(--skin-text);
}

.theme-color-skin .dropdown-item,
.theme-color-skin .mobile-submenu a,
.theme-color-skin .offcanvas .btn-close {
    color: var(--skin-text);
}

.theme-color-skin .dropdown-item:hover,
.theme-color-skin .dropdown-item:focus,
.theme-color-skin .mobile-nav-link:hover,
.theme-color-skin .mobile-submenu a:hover {
    background: var(--skin-soft);
    color: var(--skin-heading);
}

.theme-color-skin .language-selector {
    border-color: var(--skin-border);
    background-color: var(--skin-panel);
    color: var(--skin-heading);
}

.theme-color-skin .language-control small {
    color: var(--skin-muted);
}

.home-page.theme-color-skin .site-header:not(.scrolled) .language-selector {
    border-color: rgba(255, 255, 255, .46);
    background-color: rgba(5, 18, 13, .48);
    color: #FFFFFF;
}

/* Hero and image gradients share the selected palette and protect white copy. */
.theme-color-skin .hero,
.theme-color-skin .hero-slider,
.theme-color-skin .video-poster {
    background-color: var(--theme-deep);
}

.theme-color-skin .hero-slide::before {
    background:
        linear-gradient(
            90deg,
            color-mix(in srgb, var(--theme-deep) 96%, transparent),
            color-mix(in srgb, var(--theme-deep) 72%, transparent) 52%,
            color-mix(in srgb, var(--theme-primary) 24%, transparent) 82%
        ),
        var(--hero-image) var(--hero-bg-position) center / cover no-repeat;
}

.theme-color-skin .hero-overlay-light .hero-slide::before {
    background:
        linear-gradient(
            90deg,
            color-mix(in srgb, var(--theme-deep) 82%, transparent),
            color-mix(in srgb, var(--theme-deep) 54%, transparent) 52%,
            color-mix(in srgb, var(--theme-primary) 14%, transparent) 82%
        ),
        var(--hero-image) var(--hero-bg-position) center / cover no-repeat;
}

.theme-color-skin .hero-overlay-strong .hero-slide::before {
    background:
        linear-gradient(
            90deg,
            color-mix(in srgb, var(--theme-deep) 98%, transparent),
            color-mix(in srgb, var(--theme-deep) 84%, transparent) 52%,
            color-mix(in srgb, var(--theme-primary) 44%, transparent) 82%
        ),
        var(--hero-image) var(--hero-bg-position) center / cover no-repeat;
}

.theme-color-skin .hero-copy,
.theme-color-skin .hero-copy h1,
.theme-color-skin .hero-copy p,
.theme-color-skin .hero-trust,
.theme-color-skin .hero-trust span {
    color: var(--theme-hero-text);
}

.theme-color-skin .hero-eyebrow,
.theme-color-skin .hero-kicker {
    color: var(--theme-accent);
}

.theme-color-skin .service-overlay {
    background: linear-gradient(
        180deg,
        transparent 8%,
        color-mix(in srgb, var(--theme-deep) 22%, transparent) 45%,
        color-mix(in srgb, var(--theme-deep) 96%, #000000) 100%
    );
}

.theme-color-skin .unit-hero-overlay {
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--theme-deep) 97%, transparent),
        color-mix(in srgb, var(--theme-primary) 62%, transparent)
    );
}

.theme-color-skin .page-hero,
.theme-color-skin .unit-cta {
    background:
        radial-gradient(circle at 90% 10%, color-mix(in srgb, var(--theme-accent) 22%, transparent), transparent 27%),
        linear-gradient(125deg, var(--theme-deep), var(--theme-primary));
    color: var(--theme-on-deep);
}

.theme-color-skin .page-hero h1,
.theme-color-skin .page-hero p,
.theme-color-skin .unit-cta h2,
.theme-color-skin .unit-cta p {
    color: var(--theme-on-deep);
}

.theme-color-skin .breadcrumb a {
    color: color-mix(in srgb, var(--theme-accent) 58%, #FFFFFF);
}

/* Alternating section rhythm follows the 60–30–10 visual composition. */
.theme-color-skin .section-about,
.theme-color-skin .stats-section,
.theme-color-skin .ppdb-wrap,
.theme-color-skin .units-section,
.theme-color-skin .donation-section,
.theme-color-skin .news-section,
.theme-color-skin .testimonials-style-minimal,
.theme-color-skin .child-safe-section {
    background-color: var(--skin-page);
}

.theme-color-skin .services-section,
.theme-color-skin .leadership-section,
.theme-color-skin .testimonials-section,
.theme-color-skin .home-notice-section,
.theme-color-skin .video-section,
.theme-color-skin .soft-section,
.theme-color-skin .article-header {
    background-color: var(--skin-section);
}

.theme-color-skin .testimonials-section {
    background:
        radial-gradient(circle at 6% 18%, var(--theme-accent-soft), transparent 29%),
        var(--skin-section);
}

.theme-color-skin .hero-curve {
    background: var(--skin-page);
}

/* Shared panels, cards, forms, and tables. */
.theme-color-skin .news-card,
.theme-color-skin .unit-card,
.theme-color-skin .leader-card,
.theme-color-skin .listing-card,
.theme-color-skin .form-card,
.theme-color-skin .video-card,
.theme-color-skin .ppdb-card,
.theme-color-skin .gallery-card,
.theme-color-skin .testimonial-modern,
.theme-color-skin .home-notice-panel,
.theme-color-skin .related-post-card,
.theme-color-skin .inline-related,
.theme-color-skin .post-navigation-card,
.theme-color-skin .info-card,
.theme-color-skin .program-list > a,
.theme-color-skin .donation-numbers > div,
.theme-color-skin .location-tag,
.theme-color-skin .contact-box,
.theme-color-skin .bank-box,
.theme-color-skin .empty-state {
    border-color: var(--skin-border);
    background-color: var(--skin-panel);
    color: var(--skin-text);
    box-shadow: var(--skin-shadow);
}

.theme-color-skin .news-card:hover,
.theme-color-skin .unit-card:hover,
.theme-color-skin .leader-card:hover,
.theme-color-skin .listing-card:hover,
.theme-color-skin .related-post-card:hover,
.theme-color-skin .post-navigation-card:hover {
    border-color: var(--skin-border-strong);
    box-shadow: var(--skin-shadow-hover);
}

.theme-color-skin .child-safe-card {
    border-color: var(--skin-border);
    background: linear-gradient(135deg, var(--skin-soft), var(--skin-panel));
    color: var(--skin-text);
}

.theme-color-skin .campus-panel,
.theme-color-skin .facility-card {
    background:
        radial-gradient(circle at 92% 8%, color-mix(in srgb, var(--theme-accent) 18%, transparent), transparent 28%),
        var(--theme-deep);
    color: var(--theme-on-deep);
}

.theme-color-skin .form-control,
.theme-color-skin .form-select,
.theme-color-skin .newsletter-form input {
    border-color: var(--skin-border);
    background-color: var(--skin-panel);
    color: var(--skin-text);
}

.theme-color-skin .form-control::placeholder,
.theme-color-skin .newsletter-form input::placeholder {
    color: var(--skin-muted);
    opacity: .78;
}

.theme-color-skin .form-control:focus,
.theme-color-skin .form-select:focus,
.theme-color-skin .language-selector:focus {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 .22rem color-mix(in srgb, var(--theme-primary) 17%, transparent);
}

.theme-color-skin .prose table,
.theme-color-skin .prose th,
.theme-color-skin .prose td {
    border-color: var(--skin-border);
}

.theme-color-skin .prose th {
    background: var(--skin-soft);
    color: var(--skin-heading);
}

.theme-color-skin .prose tr:nth-child(even) td {
    background: color-mix(in srgb, var(--skin-section) 55%, transparent);
}

/* Typography and metadata remain readable on every surface. */
.theme-color-skin .section-title,
.theme-color-skin .article-header h1,
.theme-color-skin .news-body h2 a,
.theme-color-skin .news-body h3 a,
.theme-color-skin .unit-card h3,
.theme-color-skin .leader-card h3,
.theme-color-skin .listing-card h2,
.theme-color-skin .form-card h2,
.theme-color-skin .home-notice-heading h2,
.theme-color-skin .home-notice-list h3 a,
.theme-color-skin .related-post-card h3 a,
.theme-color-skin .post-navigation-card strong,
.theme-color-skin .program-list h3,
.theme-color-skin .search-results h2 a,
.theme-color-skin .prose h1,
.theme-color-skin .prose h2,
.theme-color-skin .prose h3,
.theme-color-skin .prose h4,
.theme-color-skin .empty-state h2,
.theme-color-skin .empty-state h3 {
    color: var(--skin-heading);
}

.theme-color-skin .section-lead,
.theme-color-skin .section-heading > p,
.theme-color-skin .news-body p,
.theme-color-skin .news-meta,
.theme-color-skin .unit-card p,
.theme-color-skin .leader-card p,
.theme-color-skin .listing-card p,
.theme-color-skin .article-lead,
.theme-color-skin .article-meta,
.theme-color-skin .related-post-card time,
.theme-color-skin .testimonial-modern footer small,
.theme-color-skin .home-notice-list p,
.theme-color-skin .home-notice-list time,
.theme-color-skin .notice-category,
.theme-color-skin .prose,
.theme-color-skin .progress-label {
    color: var(--skin-muted);
}

.theme-color-skin .eyebrow,
.theme-color-skin .text-link,
.theme-color-skin .testimonial-verified {
    color: var(--theme-primary);
}

.theme-color-skin .eyebrow::after {
    background: var(--theme-accent);
}

.theme-color-skin .news-category,
.theme-color-skin .special-article-category,
.theme-color-skin .related-post-card > div > span,
.theme-color-skin .search-results article > span {
    color: var(--theme-category);
}

.theme-color-skin .news-category {
    padding: 5px 9px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--theme-category) 11%, var(--skin-panel));
}

/* Icon system. */
.theme-color-skin .listing-icon,
.theme-color-skin .notice-icon,
.theme-color-skin .testimonial-avatar {
    border: 1px solid color-mix(in srgb, var(--theme-primary) 18%, var(--skin-border));
    background: var(--skin-icon-surface);
    color: var(--skin-icon);
}

.theme-color-skin .agenda-date,
.theme-color-skin .child-safe-icon,
.theme-color-skin .leader-initial {
    background: linear-gradient(145deg, var(--theme-primary), var(--theme-deep));
    color: var(--theme-on-primary);
}

.theme-color-skin .agenda-date span,
.theme-color-skin .service-content > i,
.theme-color-skin .greeting-card > i,
.theme-color-skin .footer-contact i {
    color: var(--theme-accent);
}

.theme-color-skin .play-button {
    background: var(--theme-category);
    color: var(--theme-on-category);
}

/* PPDB, donation, editorial blocks, and notices. */
.theme-color-skin .ppdb-banner {
    background:
        radial-gradient(circle at 88% 14%, color-mix(in srgb, var(--theme-accent) 20%, transparent), transparent 29%),
        linear-gradient(120deg, var(--theme-deep), var(--theme-primary));
    color: var(--theme-on-deep);
    box-shadow: 0 26px 70px color-mix(in srgb, var(--theme-deep) 22%, transparent);
}

.theme-color-skin .ppdb-copy h2,
.theme-color-skin .ppdb-copy p,
.theme-color-skin .ppdb-levels {
    color: var(--theme-on-deep);
}

.theme-color-skin .ppdb-copy .kicker {
    color: var(--theme-accent);
}

.theme-color-skin .donation-progress {
    background: var(--skin-soft);
}

.theme-color-skin .donation-progress .progress-bar {
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-accent));
}

.theme-color-skin .verification-note,
.theme-color-skin .privacy-note {
    border-color: color-mix(in srgb, var(--theme-accent) 35%, var(--skin-border));
    background: var(--theme-accent-soft);
    color: var(--theme-accent-text);
}

.theme-color-skin .prose blockquote,
.theme-color-skin .prose .sirda-info-box,
.theme-color-skin .prose .sirda-content-index {
    border-color: var(--skin-border);
    border-left-color: var(--theme-accent);
    background: var(--skin-section);
    color: var(--skin-text);
}

.theme-color-skin .prose .sirda-highlight {
    background: var(--theme-accent-soft);
    color: var(--theme-accent-text);
}

.theme-color-skin .special-articles-section {
    background:
        radial-gradient(circle at 88% 0, color-mix(in srgb, var(--theme-accent) 18%, transparent), transparent 34%),
        linear-gradient(135deg, var(--theme-footer), var(--theme-deep));
    color: var(--theme-on-deep);
}

.theme-color-skin .special-article-card {
    border-color: color-mix(in srgb, var(--theme-on-deep) 17%, transparent);
    background: color-mix(in srgb, var(--theme-on-deep) 8%, transparent);
}

.theme-color-skin .special-articles-section .section-title,
.theme-color-skin .special-articles-section .section-heading p,
.theme-color-skin .special-article-copy h3 a,
.theme-color-skin .special-article-copy > div a {
    color: var(--theme-on-deep);
}

.theme-color-skin .special-article-copy > span {
    color: var(--theme-accent);
}

.theme-color-skin .special-articles-section .btn-outline-green {
    border-color: color-mix(in srgb, var(--theme-on-deep) 48%, transparent);
    color: var(--theme-on-deep);
}

.theme-color-skin .special-articles-section .btn-outline-green:hover {
    border-color: var(--theme-accent);
    background: var(--theme-accent);
    color: var(--theme-accent-text);
}

/* Single post, sharing, related content, and pagination. */
.theme-color-skin .share-button,
.theme-color-skin .testimonial-controls button,
.theme-color-skin .article-pagination a {
    border-color: var(--skin-border);
    background: var(--skin-panel);
    color: var(--skin-heading);
}

.theme-color-skin .share-button:hover,
.theme-color-skin .share-button:focus-visible,
.theme-color-skin .testimonial-controls button:hover,
.theme-color-skin .testimonial-controls button:focus-visible {
    border-color: var(--theme-primary);
    background: var(--skin-soft);
    color: var(--theme-primary);
}

.theme-color-skin .share-button.share-whatsapp,
.theme-color-skin .form-success-whatsapp {
    border-color: #9ED7B6;
    background: #EFFAF4;
    color: #087A43;
}

.theme-color-skin .share-button.share-whatsapp:hover,
.theme-color-skin .share-button.share-whatsapp:focus-visible,
.theme-color-skin .form-success-whatsapp:hover,
.theme-color-skin .form-success-whatsapp:focus-visible {
    border-color: #168D50;
    background: #168D50;
    color: #FFFFFF;
}

.theme-color-skin .inline-related a {
    color: var(--skin-heading);
}

.theme-color-skin .inline-related li + li,
.theme-color-skin .article-pagination,
.theme-color-skin .home-notice-list article + article,
.theme-color-skin .home-notice-heading {
    border-color: var(--skin-border);
}

.theme-color-skin .inline-related-style-accent {
    border-left-color: var(--theme-accent);
    background: var(--theme-accent-soft);
}

.theme-color-skin .article-pagination a.is-active {
    color: var(--theme-on-primary);
}

.theme-color-skin .related-posts-style-image-overlay .related-post-image::after,
.theme-color-skin .special-articles-style-spotlight .special-article-image::after {
    background: linear-gradient(
        0deg,
        color-mix(in srgb, var(--theme-deep) 97%, #000000),
        color-mix(in srgb, var(--theme-deep) 7%, transparent) 74%
    );
}

/* Footer stays deep enough for white text in every skin. */
.theme-color-skin .site-footer,
.theme-color-skin .back-to-top {
    background: var(--theme-footer);
    color: var(--theme-on-deep);
}

.theme-color-skin .footer-overlay {
    background:
        radial-gradient(circle at 12% 0, color-mix(in srgb, var(--theme-accent) 13%, transparent), transparent 31%),
        linear-gradient(
            105deg,
            color-mix(in srgb, var(--theme-footer) 98%, #000000),
            color-mix(in srgb, var(--theme-deep) 94%, #000000)
        );
}

.theme-color-skin .footer-title,
.theme-color-skin .footer-brand strong {
    color: var(--theme-on-deep);
}

.theme-color-skin .footer-address,
.theme-color-skin .footer-brand span span,
.theme-color-skin .footer-links a,
.theme-color-skin .footer-contact a,
.theme-color-skin .footer-bottom {
    color: color-mix(in srgb, var(--theme-on-deep) 79%, var(--theme-accent));
}

.theme-color-skin .footer-title::before {
    background: var(--theme-accent);
}

.theme-color-skin .footer-links a:hover,
.theme-color-skin .footer-contact a:hover {
    color: var(--theme-accent);
}

.theme-color-skin .social-links a {
    border-color: color-mix(in srgb, var(--theme-on-deep) 27%, transparent);
    color: var(--theme-on-deep);
}

.theme-color-skin .social-links a:hover {
    border-color: var(--theme-accent);
    background: var(--theme-accent);
    color: var(--theme-accent-text);
}

/* Image containers use palette-neutral surfaces; photographs remain natural. */
.theme-color-skin .news-image img,
.theme-color-skin .related-post-image img,
.theme-color-skin .special-article-image img,
.theme-color-skin .video-poster img,
.theme-color-skin .gallery-card img,
.theme-color-skin .article-image-wrap img,
.theme-color-skin .donation-visual img,
.theme-color-skin .photo-stack img {
    background: var(--skin-soft);
    color: transparent;
}

.theme-color-skin .article-image-wrap img,
.theme-color-skin .donation-visual img,
.theme-color-skin .photo-stack img {
    border: 1px solid var(--skin-border);
}

/* High-contrast mode is intentionally strict and independent of decoration. */
.theme-color-skin.theme-surface-contrast .news-card,
.theme-color-skin.theme-surface-contrast .unit-card,
.theme-color-skin.theme-surface-contrast .leader-card,
.theme-color-skin.theme-surface-contrast .listing-card,
.theme-color-skin.theme-surface-contrast .form-card,
.theme-color-skin.theme-surface-contrast .testimonial-modern,
.theme-color-skin.theme-surface-contrast .home-notice-panel,
.theme-color-skin.theme-surface-contrast .related-post-card,
.theme-color-skin.theme-surface-contrast .inline-related,
.theme-color-skin.theme-surface-contrast .post-navigation-card {
    border: 2px solid #000000;
    box-shadow: none;
}

.theme-color-skin.theme-surface-contrast .news-category {
    border: 1px solid #000000;
    background: #FFFFFF;
    color: #000000;
}

@media (max-width: 991.98px) {
    .theme-color-skin .hero-slider .hero-slide::before {
        background:
            linear-gradient(
                90deg,
                color-mix(in srgb, var(--theme-deep) 96%, transparent),
                color-mix(in srgb, var(--theme-deep) 76%, transparent) 72%,
                color-mix(in srgb, var(--theme-primary) 44%, transparent)
            ),
            var(--hero-image) var(--hero-bg-position) center / cover no-repeat;
    }
}

@media (max-width: 767.98px) {
    .theme-color-skin .site-header .navbar-brand img,
    .theme-color-skin #mobileMenu .navbar-brand img {
        padding: 2px;
    }

    .theme-color-skin .news-category {
        padding: 4px 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .theme-color-skin .news-card,
    .theme-color-skin .unit-card,
    .theme-color-skin .leader-card,
    .theme-color-skin .listing-card,
    .theme-color-skin .related-post-card,
    .theme-color-skin .post-navigation-card {
        transition: none;
    }
}

@media (forced-colors: active) {
    .theme-color-skin .site-header .navbar-brand img,
    .theme-color-skin #mobileMenu .navbar-brand img,
    .theme-color-skin .footer-brand img {
        border: 1px solid CanvasText;
        background: Canvas;
    }
}
