/* FEATU custom enhancements */
.featu-trust-bar {
    background: var(--featu-navy);
    padding: 14px 0;
    border-bottom: 3px solid var(--featu-gold);
}

.featu-trust-bar .trust-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px 0;
    list-style: none;
    margin: 0;
    padding: 0;
}

.featu-trust-bar .trust-items li {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.3px;
    padding: 0 24px;
    position: relative;
    text-align: center;
}

.featu-trust-bar .trust-items li:not(:last-child)::after {
    content: '|';
    position: absolute;
    right: 0;
    color: var(--featu-orange);
    font-weight: 400;
}

.featu-trust-bar .trust-items li span {
    color: var(--featu-orange);
    margin-right: 6px;
}

.featu-pillars-section {
    padding: 80px 0 60px;
    background: #f8f9fb;
}

.featu-pillar-card {
    background: #fff;
    border-radius: 8px;
    padding: 30px 24px;
    height: 100%;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.featu-pillar-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.featu-pillar-card .pillar-icon {
    font-size: 42px;
    color: var(--featu-orange);
    margin-bottom: 16px;
    display: block;
}

.featu-pillar-card h4 {
    font-size: 18px;
    margin-bottom: 12px;
    color: var(--featu-navy);
}

.featu-pillar-card p {
    color: #666;
    line-height: 1.7;
    margin: 0;
    font-size: 15px;
}

.featu-impact-section {
    padding: 80px 0;
    background: var(--featu-navy);
    color: #fff;
}

.featu-impact-section .sec-title h2 {
    color: #fff;
}

.featu-impact-list {
    list-style: none;
    margin: 30px 0 0;
    padding: 0;
}

.featu-impact-list li {
    position: relative;
    padding: 14px 0 14px 36px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    font-size: 16px;
    line-height: 1.6;
}

.featu-impact-list li:last-child {
    border-bottom: none;
}

.featu-impact-list li::before {
    content: '\2713';
    position: absolute;
    left: 0;
    top: 14px;
    width: 24px;
    height: 24px;
    background: var(--featu-orange);
    border-radius: 50%;
    text-align: center;
    line-height: 24px;
    font-size: 12px;
    font-weight: bold;
}

.featu-final-cta {
    padding: 70px 0;
    background: linear-gradient(135deg, var(--featu-navy-dark) 0%, var(--featu-navy) 45%, var(--featu-blue) 100%);
    text-align: center;
    color: #fff;
}

.featu-final-cta h2 {
    color: #fff;
    font-size: 36px;
    margin-bottom: 16px;
}

.featu-final-cta p {
    font-size: 18px;
    max-width: 640px;
    margin: 0 auto 30px;
    opacity: 0.95;
}

.featu-final-cta .cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
}

.featu-final-cta .theme-btn.btn-style-two {
    background: #fff;
    color: var(--featu-orange);
}

.featu-mission-vision-block {
    padding: 70px 0;
}

.featu-mv-card {
    background: #fff;
    padding: 30px;
    height: 100%;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.06);
}

.featu-mv-card h3 {
    color: var(--featu-orange);
    margin-bottom: 14px;
    font-size: 22px;
}

.featu-mv-card p {
    color: #555;
    line-height: 1.8;
    margin: 0;
}

.featu-engage-card {
    background: #f8f9fb;
    border-radius: 8px;
    padding: 30px;
    height: 100%;
}

.featu-engage-card h4 {
    color: var(--featu-navy);
    margin-bottom: 12px;
}

.featu-engage-card p {
    color: #666;
    line-height: 1.7;
}

/* Explore Our Resources – card grid */
.featu-resources-section {
    position: relative;
    padding: 100px 0 90px;
    overflow: hidden;
    background: var(--featu-navy);
}

.featu-resources-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    transform: scale(1.02);
}

.featu-resources-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(15, 26, 46, 0.88) 0%,
        rgba(11, 79, 134, 0.82) 45%,
        rgba(10, 18, 32, 0.9) 100%
    );
    z-index: 1;
}

.featu-resources-section .auto-container {
    position: relative;
    z-index: 2;
}

.featu-resources-section .sec-title h2 {
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
}

.featu-resources-section .lower-text {
    color: rgba(255, 255, 255, 0.9);
    max-width: 580px;
    margin: 14px auto 0;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.35);
}

.featu-resources-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
    margin-top: 52px;
}

.featu-resource-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    background: #ffffff;
    border-radius: 12px;
    padding: 24px 20px 20px;
    text-decoration: none !important;
    color: var(--featu-navy);
    min-height: 160px;
    position: relative;
    overflow: hidden;
    box-shadow:
        0 4px 6px rgba(0, 0, 0, 0.12),
        0 12px 28px rgba(0, 0, 0, 0.28),
        0 24px 48px rgba(0, 0, 0, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.featu-resource-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--featu-orange), var(--featu-orange-light));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.featu-resource-card:hover {
    transform: translateY(-8px);
    box-shadow:
        0 8px 16px rgba(0, 0, 0, 0.15),
        0 20px 40px rgba(0, 0, 0, 0.35),
        0 32px 64px rgba(29, 126, 213, 0.15);
    border-color: rgba(29, 126, 213, 0.3);
}

.featu-resource-card:hover::after {
    transform: scaleX(1);
}

.featu-resource-card .resource-icon-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: linear-gradient(135deg, #fff5ee 0%, #ffe8d6 100%);
    box-shadow: 0 4px 12px rgba(29, 126, 213, 0.2);
}

.featu-resource-card .resource-icon {
    font-size: 26px;
    color: var(--featu-orange);
    line-height: 1;
}

.featu-resource-card .resource-body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}

.featu-resource-card .resource-body strong {
    font-size: 15px;
    font-weight: 700;
    color: var(--featu-navy);
    line-height: 1.35;
}

.featu-resource-card .resource-body span {
    font-size: 13px;
    color: #5a6478;
    line-height: 1.55;
}

.featu-resource-card .resource-arrow {
    font-size: 16px;
    color: var(--featu-orange);
    font-weight: bold;
    align-self: flex-end;
    opacity: 0.5;
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.featu-resource-card:hover .resource-arrow {
    opacity: 1;
    transform: translateX(4px);
}

@media (max-width: 1199px) {
    .featu-resources-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767px) {
    .featu-resources-bg {
        background-attachment: scroll;
    }

    .featu-resources-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .featu-resource-card {
        min-height: 140px;
        padding: 20px 16px 16px;
    }
}

@media (max-width: 479px) {
    .featu-resources-grid {
        grid-template-columns: 1fr;
    }
}

.featu-impact-list.light li {
    border-color: #eee;
    color: #555;
}

.featu-impact-list.light li::before {
    background: var(--featu-orange);
    color: #fff;
}

@media (max-width: 767px) {
    .featu-trust-bar .trust-items li {
        padding: 6px 16px;
        width: 100%;
    }

    .featu-trust-bar .trust-items li::after {
        display: none;
    }

    .featu-final-cta h2 {
        font-size: 28px;
    }
}

/* ============================================================
   FEATU Design System – logo-based brand palette
   Sampled from the official FEATU emblem:
   Blue #1D7ED5 · Gold #F0D000 · Green #1B700F · Red #DB1212
   ============================================================ */
:root {
    /* Logo colors */
    --featu-blue: #1D7ED5;
    --featu-blue-light: #4A9EE3;
    --featu-blue-pale: #E8F4FC;
    --featu-gold: #E8C200;
    --featu-gold-bright: #F0D000;
    --featu-gold-pale: #FFF8DB;
    --featu-green: #1B700F;
    --featu-green-pale: #E8F5E6;
    --featu-red: #DB1212;
    --featu-red-pale: #FDECEC;

    /* Semantic tokens (used across the site) */
    --featu-navy: #0B4F86;
    --featu-navy-dark: #073A63;
    --featu-orange: #1D7ED5;          /* primary accent = logo blue */
    --featu-orange-light: #4A9EE3;
    --featu-orange-pale: #E8F4FC;
    --featu-gray-50: #F5F8FB;
    --featu-gray-100: #E6EEF5;
    --featu-gray-500: #5A6B7D;
    --featu-gray-700: #3A4A5A;
    --featu-white: #ffffff;
    --featu-shadow-sm: 0 2px 8px rgba(11, 79, 134, 0.08);
    --featu-shadow-md: 0 8px 24px rgba(11, 79, 134, 0.12);
    --featu-shadow-lg: 0 16px 48px rgba(11, 79, 134, 0.18);
    --featu-radius: 12px;
    --featu-radius-sm: 8px;
    --featu-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.featu-site {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ---- Page heroes (all inner pages) ---- */
.featu-site .page-banner,
.featu-page-hero {
    position: relative;
    min-height: 280px;
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: 0;
}

.featu-site .page-banner .image-layer,
.featu-page-hero__bg {
    position: absolute;
    inset: 0;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat;
    transform: scale(1.03);
}

.featu-site .page-banner .image-layer::before,
.featu-page-hero .image-layer::before {
    display: none;
}

.featu-page-hero__overlay,
.featu-site .page-banner::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        120deg,
        rgba(7, 58, 99, 0.94) 0%,
        rgba(11, 79, 134, 0.82) 48%,
        rgba(29, 126, 213, 0.35) 78%,
        rgba(232, 194, 0, 0.22) 100%
    );
    z-index: 1;
}

.featu-page-hero .featu-page-hero__overlay {
    z-index: 1;
}

.featu-site .page-banner .banner-inner,
.featu-page-hero .banner-inner {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 70px 0 60px;
}

.featu-site .page-banner h1,
.featu-page-hero h1 {
    color: var(--featu-white) !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.35);
    margin-bottom: 8px !important;
    line-height: 1.2 !important;
}

.featu-hero-subtitle {
    color: rgba(255, 255, 255, 0.88);
    font-size: 17px;
    max-width: 600px;
    margin: 0 0 16px;
    line-height: 1.6;
}

.featu-site .page-banner .bread-crumb li,
.featu-site .page-banner .bread-crumb li a {
    color: rgba(255, 255, 255, 0.75) !important;
    font-size: 14px;
    font-weight: 500;
}

.featu-site .page-banner .bread-crumb li a:hover,
.featu-site .page-banner .bread-crumb li.active {
    color: var(--featu-orange) !important;
}

.featu-site .page-banner .bread-crumb li:before {
    color: rgba(255, 255, 255, 0.4) !important;
}

/* ---- Section headers ---- */
.featu-section-header {
    margin-bottom: 40px;
}

.featu-section-header--centered {
    text-align: center;
}

.featu-section-header h2 {
    font-size: 32px;
    font-weight: 700;
    color: var(--featu-navy);
    letter-spacing: -0.3px;
    margin-bottom: 14px;
}

.featu-section-header--light h2 {
    color: var(--featu-white);
}

.featu-section-header__line {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}

.featu-section-header--centered .featu-section-header__line {
    justify-content: center;
}

.featu-section-header__line span:first-child,
.featu-section-header__line span:last-child {
    height: 2px;
    width: 40px;
    background: linear-gradient(90deg, transparent, var(--featu-gold));
    border-radius: 2px;
}

.featu-section-header__line span:last-child {
    background: linear-gradient(90deg, var(--featu-gold), transparent);
}

.featu-section-header__dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50%;
    background: var(--featu-gold) !important;
    box-shadow: 0 0 0 3px var(--featu-gold-pale);
    flex-shrink: 0;
}

.featu-section-header__text {
    color: var(--featu-gray-500);
    font-size: 16px;
    line-height: 1.7;
    max-width: 640px;
    margin: 0;
}

.featu-section-header--centered .featu-section-header__text {
    margin: 0 auto;
}

.featu-section-header--light .featu-section-header__text {
    color: rgba(255, 255, 255, 0.8);
}

/* Legacy sec-title polish */
.featu-site .sec-title h2 {
    color: var(--featu-navy);
    font-weight: 700;
    letter-spacing: -0.3px;
}

.featu-site .sec-title.light h2 {
    color: var(--featu-white);
}

.featu-site .sec-title .lower-text {
    color: var(--featu-gray-500);
    line-height: 1.7;
}

/* ---- Page sections ---- */
.featu-section {
    padding: 80px 0;
}

.featu-section--sm {
    padding: 50px 0;
}

.featu-section--alt {
    background: var(--featu-gray-50);
}

.featu-section--white {
    background: var(--featu-white);
}

/* ---- Unified cards ---- */
.featu-pillar-card,
.featu-mv-card,
.featu-engage-card {
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-pillar-card:hover,
.featu-engage-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--featu-shadow-md);
}

.featu-engage-card {
    background: var(--featu-white);
    box-shadow: var(--featu-shadow-sm);
}

.featu-engage-card a {
    color: var(--featu-orange);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.featu-engage-card a:hover {
    text-decoration: underline;
}

.featu-mv-card {
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-md);
}

/* ---- List / blog / event cards ---- */
.featu-site .news-block-five .inner-box,
.featu-site .team-block .inner-box,
.featu-site .event-block .inner-box {
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
    background: var(--featu-white);
}

.featu-site .news-block-five .inner-box:hover,
.featu-site .team-block .inner-box:hover {
    transform: translateY(-6px);
    box-shadow: var(--featu-shadow-lg);
}

.featu-site .news-block-five .image-box .image img {
    transition: transform 0.5s ease;
}

.featu-site .news-block-five .inner-box:hover .image-box .image img {
    transform: scale(1.05);
}

.featu-site .news-block-five .lower-box h4 a {
    color: var(--featu-navy);
    transition: color var(--featu-transition);
}

.featu-site .news-block-five .lower-box h4 a:hover {
    color: var(--featu-orange);
}

.featu-site .news-block-five .image-box .date {
    background: var(--featu-orange) !important;
    border-radius: var(--featu-radius-sm);
}

/* ---- Sidebar pages ---- */
.featu-site .sidebar-page-container {
    padding: 70px 0 80px;
    background: var(--featu-gray-50);
}

.featu-site .sidebar-page-container .content-inner {
    background: var(--featu-white);
    border-radius: var(--featu-radius);
    padding: 36px;
    box-shadow: var(--featu-shadow-sm);
}

.featu-site .sidebar .sidebar-widget {
    background: var(--featu-white);
    border-radius: var(--featu-radius);
    padding: 28px;
    box-shadow: var(--featu-shadow-sm);
    margin-bottom: 24px;
}

/* ---- Forms ---- */
.featu-site .default-form .field-inner input,
.featu-site .default-form .field-inner textarea,
.featu-site .default-form .field-inner select,
.featu-site .newsletter-box .form-group input[type="email"] {
    border: 1.5px solid var(--featu-gray-100) !important;
    border-radius: var(--featu-radius-sm) !important;
    padding: 14px 18px !important;
    font-size: 15px;
    transition: border-color var(--featu-transition), box-shadow var(--featu-transition);
    background: var(--featu-white) !important;
}

.featu-site .default-form .field-inner input:focus,
.featu-site .default-form .field-inner textarea:focus,
.featu-site .default-form .field-inner select:focus {
    border-color: var(--featu-orange) !important;
    box-shadow: 0 0 0 3px rgba(29, 126, 213, 0.15) !important;
    outline: none;
}

.featu-site .contact-section {
    padding: 80px 0;
    background: var(--featu-gray-50);
}

.featu-site .contact-info-box {
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-lg);
}

.featu-site .contact-info-box .inner {
    background: var(--featu-white);
}

.featu-site .contact-info-box .info {
    background: var(--featu-white);
    padding: 8px 28px 20px;
}

.featu-site .contact-info-box .info li {
    color: var(--featu-gray-700);
    border-bottom-color: var(--featu-gray-100);
    padding: 24px 0 20px;
}

.featu-site .contact-info-box .info h4 {
    color: var(--featu-orange) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.featu-site .contact-info-box .contact-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--featu-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-bottom: 6px;
}

.featu-site .contact-info-box .contact-value,
.featu-site .contact-info-box .txt,
.featu-site .contact-info-box .info li a.txt {
    display: block;
    color: var(--featu-navy) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
    text-decoration: none;
}

.featu-site .contact-info-box .info li a.txt:hover {
    color: var(--featu-orange) !important;
    text-decoration: underline;
}

.featu-site .contact-info-box .info li .icon {
    color: var(--featu-orange);
    font-size: 36px;
    line-height: 1;
    top: 4px;
}

/* ---- Buttons ---- */
.featu-site .theme-btn.btn-style-one {
    border-radius: var(--featu-radius-sm);
    font-weight: 600;
    letter-spacing: 0.3px;
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-site .theme-btn.btn-style-one .btn-title {
    background: var(--featu-blue) !important;
    color: #fff !important;
}

.featu-site .theme-btn.btn-style-one:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(29, 126, 213, 0.4);
}

.featu-site .theme-btn.btn-style-one:hover .btn-title {
    background: var(--featu-navy) !important;
}

.featu-site .theme-btn.btn-style-two {
    border-radius: var(--featu-radius-sm);
    font-weight: 600;
}

.featu-site .theme-btn.btn-style-two .btn-title {
    background: transparent !important;
    color: var(--featu-navy) !important;
    border: 2px solid var(--featu-blue);
}

.featu-site .theme-btn.btn-style-two:hover .btn-title {
    background: var(--featu-blue) !important;
    color: #fff !important;
    border-color: var(--featu-blue);
}

.featu-final-cta .theme-btn.btn-style-two .btn-title,
.featu-about-impact .theme-btn.btn-style-two .btn-title {
    background: #fff !important;
    color: var(--featu-navy) !important;
    border-color: #fff;
}

.featu-final-cta .theme-btn.btn-style-two:hover .btn-title,
.featu-about-impact .theme-btn.btn-style-two:hover .btn-title {
    background: var(--featu-gold) !important;
    color: var(--featu-navy-dark) !important;
    border-color: var(--featu-gold);
}

/* ---- Header & footer ---- */
.featu-site .header-top-one {
    background: var(--featu-navy-dark);
}

.featu-site .header-upper {
    box-shadow: 0 2px 20px rgba(11, 79, 134, 0.08);
}

/* Main nav sits on the right of the white bar */
.featu-site .header-style-one .header-upper .nav-outer {
    width: auto;
    float: right;
    text-align: right;
    margin-left: 0;
}

.featu-site .header-style-one .header-upper .nav-outer .main-menu {
    display: block;
}

@media only screen and (max-width: 991px) {
    .featu-site .header-style-one .header-upper .nav-outer {
        float: right;
        margin-left: 0;
    }

    .featu-site .header-top-one .top-right {
        justify-content: center;
        flex-wrap: wrap;
    }

    .featu-site .header-top-one .header-top-social {
        padding-left: 0;
        border-left: none;
    }
}

.featu-site .main-menu .navigation > li > a {
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.2px;
}

/* ---- Social icon alignment (header, footer, mobile) ---- */
.featu-site .social-links-one li a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    line-height: 1 !important;
    padding: 0 !important;
    font-size: 14px !important;
    border-color: rgba(11, 79, 134, 0.12) !important;
    color: var(--featu-gray-500) !important;
}

.featu-site .social-links-one li a > span.fab,
.featu-site .social-links-one li a > span.far,
.featu-site .social-links-one li a > span.fas,
.featu-site .social-links-one li a > span.fa {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100%;
    height: 100%;
    line-height: 1 !important;
}

.featu-site .social-links-one li a .c-tooltip {
    top: calc(100% + 8px);
    margin-top: 0;
}

.featu-site .social-links-one li a:hover {
    background: var(--featu-orange) !important;
    border-color: var(--featu-orange) !important;
    color: var(--featu-white) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(29, 126, 213, 0.3);
}

.featu-site .social-links-one ul {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.featu-site .social-links-one li {
    float: none !important;
    margin: 0 !important;
}

/* Social icons in the dark top bar */
.featu-site .header-top-one .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 30px;
}

.featu-site .header-top-one .top-left,
.featu-site .header-top-one .top-right {
    float: none;
    display: flex;
    align-items: center;
}

.featu-site .header-top-one .top-right {
    gap: 0;
}

.featu-site .header-top-one .top-right .phone,
.featu-site .header-top-one .top-right .hours,
.featu-site .header-top-one .top-left .email {
    float: none;
    margin: 0;
    padding: 0;
    line-height: 1;
}

.featu-site .header-top-one .top-left .email:before,
.featu-site .header-top-one .top-right .hours:before {
    display: none;
}

.featu-site .header-top-one .top-right .phone,
.featu-site .header-top-one .top-right .hours {
    display: flex;
    align-items: center;
    height: 30px;
}

.featu-site .header-top-one .top-right .hours {
    margin-left: 16px;
    padding-left: 16px;
    border-left: 1px solid rgba(255, 255, 255, 0.3);
}

.featu-site .header-top-one .top-right .hours .hours-btn {
    line-height: 24px;
    padding: 3px 15px;
}

.featu-site .header-top-one .header-top-social {
    float: none;
    margin: 0 0 0 16px;
    padding: 0 0 0 16px;
    border-left: 1px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    height: 30px;
}

.featu-site .header-top-one .header-top-social ul {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
    height: 30px;
}

.featu-site .header-top-one .header-top-social li {
    display: flex;
    align-items: center;
    height: 30px;
}

.featu-site .header-top-one .header-top-social li a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    background: transparent !important;
    border: 1.5px solid rgba(255, 255, 255, 0.65) !important;
    border-radius: 50% !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
}

.featu-site .header-top-one .header-top-social li a > span.fab,
.featu-site .header-top-one .header-top-social li a > span.far,
.featu-site .header-top-one .header-top-social li a > span.fas,
.featu-site .header-top-one .header-top-social li a > span.fa {
    display: block !important;
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
    color: #ffffff !important;
    position: relative;
}

/* Optical centering for brand glyphs */
.featu-site .header-top-one .header-top-social .fa-facebook-f {
    transform: translateX(-0.5px);
}

.featu-site .header-top-one .header-top-social .fa-twitter,
.featu-site .header-top-one .header-top-social .fa-linkedin-in {
    transform: translateY(-0.5px);
}

.featu-site .header-top-one .header-top-social li a:hover {
    background: var(--featu-orange) !important;
    border-color: var(--featu-orange) !important;
    color: #ffffff !important;
    transform: none;
    box-shadow: none;
}

.featu-site .header-top-one .header-top-social li a:hover > span.fab,
.featu-site .header-top-one .header-top-social li a:hover > span.far,
.featu-site .header-top-one .header-top-social li a:hover > span.fas,
.featu-site .header-top-one .header-top-social li a:hover > span.fa {
    color: #ffffff !important;
}

.featu-site .header-top-one .header-top-social li a .c-tooltip {
    top: calc(100% + 8px);
    pointer-events: none;
}

.featu-site .main-footer .social-links li a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 14px;
    line-height: 1 !important;
    transition: all var(--featu-transition);
}

.featu-site .main-footer .social-links li a:hover {
    background: var(--featu-orange);
    border-color: var(--featu-orange);
    color: var(--featu-white) !important;
    transform: translateY(-2px);
}

.featu-site .mobile-menu .social-links li a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

.featu-site .main-footer {
    background: var(--featu-navy-dark);
}

.featu-site .main-footer .widgets-section {
    padding: 70px 0 50px;
}

.featu-site .footer-bottom {
    background: rgba(0, 0, 0, 0.2);
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.featu-site .main-footer .widget-title h4 {
    color: var(--featu-white);
    font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--featu-orange);
    display: inline-block;
}

/* ---- Welcome / content sections ---- */
.featu-site .welcome-section-two {
    padding: 70px 0;
}

.featu-site .welcome-section-two.alternate {
    background: var(--featu-gray-50);
}

.featu-site .welcome-section {
    padding: 80px 0;
    background: var(--featu-white);
}

.featu-site .about-section {
    border-radius: 0;
}

/* ---- Team carousel ---- */
.featu-site .team-section {
    padding: 80px 0;
    background: var(--featu-gray-50);
}

.featu-site .team-block .lower-box h4 a {
    color: var(--featu-navy);
}

.featu-site .team-block .designation {
    color: var(--featu-orange);
    font-weight: 600;
}

/* ---- Leadership page ---- */
.featu-site .leadership-page {
    padding: 72px 0 96px;
    background:
        radial-gradient(ellipse 80% 40% at 50% 0%, var(--featu-blue-pale) 0%, transparent 70%),
        var(--featu-gray-50);
}

.featu-site .leadership-intro {
    max-width: 720px;
    margin: 0 auto 64px;
}

.featu-site .leadership-intro h2 {
    color: var(--featu-navy);
    margin-bottom: 14px;
    font-size: clamp(26px, 3vw, 34px);
}

.featu-site .leadership-intro p {
    color: var(--featu-gray-500);
    font-size: 17px;
    line-height: 1.75;
    margin: 0;
}

.featu-site .leadership-section {
    margin-bottom: 72px;
}

.featu-site .leadership-section:last-child {
    margin-bottom: 0;
}

.featu-site .leadership-section__head {
    margin-bottom: 32px;
    max-width: 640px;
}

.featu-site .leadership-section__head h3 {
    color: var(--featu-navy);
    margin: 0 0 10px;
    font-size: clamp(22px, 2.4vw, 28px);
    position: relative;
    padding-bottom: 14px;
}

.featu-site .leadership-section__head h3::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 48px;
    height: 3px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--featu-blue), var(--featu-gold));
}

.featu-site .leadership-section__head p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 15px;
    line-height: 1.65;
}

.featu-site .leadership-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    align-items: stretch;
}

.featu-site .leadership-grid--compact {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

.featu-site .leadership-card {
    display: flex;
    flex-direction: column;
    background: var(--featu-white);
    border-radius: var(--featu-radius);
    overflow: hidden;
    border: 1px solid rgba(11, 79, 134, 0.08);
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition), border-color var(--featu-transition);
    height: 100%;
}

.featu-site .leadership-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--featu-shadow-lg);
    border-color: rgba(29, 126, 213, 0.22);
}

.featu-site .leadership-card__media {
    display: block;
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: linear-gradient(160deg, var(--featu-navy-dark), var(--featu-blue));
}

.featu-site .leadership-card__media::after {
    content: '';
    position: absolute;
    inset: auto 0 0;
    height: 42%;
    background: linear-gradient(to top, rgba(7, 58, 99, 0.55), transparent);
    pointer-events: none;
    opacity: 0;
    transition: opacity var(--featu-transition);
}

.featu-site .leadership-card:hover .leadership-card__media::after {
    opacity: 1;
}

.featu-site .leadership-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.featu-site .leadership-card:hover .leadership-card__media img {
    transform: scale(1.05);
}

.featu-site .leadership-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 22px 22px 24px;
}

.featu-site .leadership-card__role {
    display: inline-block;
    align-self: flex-start;
    margin: 0 0 10px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: var(--featu-navy);
    background: var(--featu-blue-pale);
    border-radius: 4px;
    line-height: 1.3;
}

.featu-site .leadership-card__name {
    margin: 0 0 8px;
    font-size: 19px;
    line-height: 1.3;
    color: var(--featu-navy);
}

.featu-site .leadership-card__name a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease;
}

.featu-site .leadership-card__name a:hover {
    color: var(--featu-blue);
}

.featu-site .leadership-card__meta {
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 500;
    color: var(--featu-gray-500);
    line-height: 1.45;
}

.featu-site .leadership-card__bio {
    margin: 0 0 16px;
    font-size: 14px;
    line-height: 1.65;
    color: var(--featu-gray-700);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: 1;
}

.featu-site .leadership-card__cta {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    color: var(--featu-blue);
    text-decoration: none;
    transition: gap 0.2s ease, color 0.2s ease;
}

.featu-site .leadership-card__cta:hover {
    color: var(--featu-navy-dark);
    gap: 10px;
}

.featu-site .leadership-committee-block {
    margin-bottom: 40px;
}

.featu-site .leadership-committee-block:last-child {
    margin-bottom: 0;
}

.featu-site .leadership-committee-title {
    color: var(--featu-navy);
    font-size: 18px;
    margin: 0 0 20px;
    padding-left: 14px;
    border-left: 4px solid var(--featu-blue);
}

.featu-site .leadership-empty {
    padding: 60px 20px;
    color: var(--featu-gray-500);
}

.featu-site .leadership-profile {
    padding: 60px 0 80px;
}

.featu-site .leadership-profile__photo img {
    width: 100%;
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-md);
}

.featu-site .leadership-profile__category {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--featu-blue);
    margin-bottom: 8px;
}

.featu-site .leadership-profile h2 {
    color: var(--featu-navy);
    margin: 0 0 4px;
}

.featu-site .leadership-profile h3 {
    margin: 0 0 16px;
}

.featu-site .leadership-profile__meta {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
}

.featu-site .leadership-profile__bio {
    line-height: 1.75;
    color: var(--featu-gray-700);
}

.featu-site .leadership-profile__others {
    margin-top: 48px;
    padding-top: 40px;
    border-top: 1px solid var(--featu-gray-100);
}

@media (max-width: 991px) {
    .featu-site .leadership-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 22px;
    }
}

@media (max-width: 575px) {
    .featu-site .leadership-page {
        padding: 48px 0 64px;
    }

    .featu-site .leadership-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        max-width: 400px;
        margin: 0 auto;
    }

    .featu-site .leadership-card__body {
        padding: 18px 18px 20px;
    }
}

/* ---- News section home ---- */
.featu-site .news-section {
    padding: 80px 0;
    background: var(--featu-white);
}

/* ---- Facts section ---- */
.featu-site .facts-section {
    padding: 70px 0;
    background: linear-gradient(135deg, var(--featu-navy) 0%, var(--featu-navy-dark) 100%);
}

.featu-site .facts-section .fact-title {
    color: var(--featu-white) !important;
}

.featu-site .facts-section .text {
    color: rgba(255, 255, 255, 0.75) !important;
}

.featu-site .facts-section .count-box {
    color: var(--featu-orange) !important;
    font-weight: 700;
}

/* ---- Gallery grid ---- */
.featu-site .gallery-section,
.featu-site .gallery-page-section {
    padding: 70px 0;
    background: var(--featu-gray-50);
}

/* ---- Map ---- */
.featu-site .map-section .map-box {
    border-radius: 0;
    overflow: hidden;
    box-shadow: var(--featu-shadow-md);
}

/* ---- Alerts ---- */
.featu-site .alert-success {
    border-radius: var(--featu-radius-sm) !important;
    border: none !important;
    border-left: 4px solid #28a745 !important;
}

.featu-site .alert-danger {
    border-radius: var(--featu-radius-sm) !important;
    border: none !important;
    border-left: 4px solid #dc3545 !important;
}

@media (max-width: 991px) {
    .featu-site .page-banner h1,
    .featu-page-hero h1 {
        font-size: 32px !important;
    }

    .featu-site .sidebar-page-container .content-inner {
        padding: 24px;
    }
}

@media (max-width: 767px) {
    .featu-section {
        padding: 50px 0;
    }

    .featu-section-header h2 {
        font-size: 26px;
    }
}

/* ---- Flash messages ---- */
.featu-flash-messages {
    position: relative;
    z-index: 100;
    padding: 16px 0 0;
}

.featu-flash {
    padding: 14px 20px;
    border-radius: var(--featu-radius-sm);
    margin-bottom: 12px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
    box-shadow: var(--featu-shadow-sm);
}

.featu-flash--success {
    background: #d4edda;
    color: #155724;
    border-left: 4px solid #28a745;
}

.featu-flash--error {
    background: #f8d7da;
    color: #721c24;
    border-left: 4px solid #dc3545;
}

.featu-flash--warning {
    background: #fff3cd;
    color: #856404;
    border-left: 4px solid #ffc107;
}

/* ---- Objectives (About preview + /objectives page) ---- */
.featu-objectives-section {
    position: relative;
    padding: 80px 0 90px;
    background:
        linear-gradient(180deg, var(--featu-gray-50) 0%, #fff 48%, var(--featu-gray-50) 100%);
    overflow: hidden;
}

.featu-objectives-section::before {
    content: '';
    position: absolute;
    top: -120px;
    right: -80px;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(29, 126, 213, 0.08) 0%, transparent 70%);
    pointer-events: none;
}

.featu-objectives-section::after {
    content: '';
    position: absolute;
    bottom: -100px;
    left: -60px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(11, 79, 134, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

.featu-objectives-section .auto-container {
    position: relative;
    z-index: 1;
}

.featu-objectives-section--page {
    padding: 70px 0 100px;
}

.featu-objectives-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
    margin-top: 48px;
}

.featu-objectives-grid--preview {
    grid-template-columns: repeat(3, 1fr);
}

.featu-objective-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--featu-white);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    padding: 28px 26px 30px;
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition), border-color var(--featu-transition);
}

.featu-objective-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--featu-shadow-md);
    border-color: rgba(29, 126, 213, 0.35);
}

.featu-objective-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.featu-objective-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: var(--featu-orange-pale);
    color: var(--featu-orange);
    font-size: 26px;
    line-height: 1;
    box-shadow: inset 0 0 0 1px rgba(29, 126, 213, 0.12);
    transition: background var(--featu-transition), color var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-objective-card__icon::before {
    display: block;
    line-height: 1;
}

.featu-objective-card:hover .featu-objective-card__icon {
    background: var(--featu-orange);
    color: #fff;
    box-shadow: none;
}

.featu-objective-card__letter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border-radius: 999px;
    background: var(--featu-navy);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.featu-objective-card h3 {
    margin: 0 0 10px;
    color: var(--featu-navy);
    font-size: 18px;
    line-height: 1.35;
    font-weight: 700;
}

.featu-objective-card p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 15px;
    line-height: 1.7;
    flex: 1;
}

.featu-objectives-section__cta {
    text-align: center;
    margin-top: 40px;
}

.featu-objectives-source {
    text-align: center;
    margin: 44px auto 0;
    max-width: 720px;
    font-size: 13px;
    color: var(--featu-gray-500);
    font-style: italic;
}

@media (max-width: 991px) {
    .featu-objectives-grid,
    .featu-objectives-grid--preview {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .featu-objectives-section {
        padding: 60px 0 70px;
    }

    .featu-objectives-grid,
    .featu-objectives-grid--preview {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 36px;
    }

    .featu-objective-card {
        padding: 22px 20px 24px;
    }
}

/* ---- About page ---- */
.featu-about-intro {
    padding: 80px 0 70px;
    background: var(--featu-white);
}

.featu-about-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    gap: 48px;
    align-items: center;
}

.featu-about-intro__copy p {
    color: var(--featu-gray-500);
    font-size: 16px;
    line-height: 1.8;
    margin: 0 0 16px;
}

.featu-about-intro__copy .featu-section-header {
    margin-bottom: 22px;
}

.featu-about-intro__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 28px;
    margin-top: 28px;
}

.featu-about-intro__meta-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.featu-about-intro__meta-label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--featu-orange);
}

.featu-about-intro__meta-item strong {
    color: var(--featu-navy);
    font-size: 16px;
}

.featu-about-mosaic {
    display: grid;
    grid-template-columns: 1.45fr 1fr 1fr;
    grid-template-rows: 150px 150px;
    gap: 12px;
}

.featu-about-mosaic__item {
    display: block;
    overflow: hidden;
    border-radius: var(--featu-radius-sm);
    position: relative;
}

.featu-about-mosaic__item--lg {
    grid-row: span 2;
}

.featu-about-mosaic__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.featu-about-mosaic__item:hover img {
    transform: scale(1.06);
}

.featu-about-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 56px;
    padding: 28px;
    background: var(--featu-navy);
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-md);
}

.featu-about-stat {
    text-align: center;
    padding: 8px 12px;
    position: relative;
}

.featu-about-stat:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 1px;
    background: rgba(255, 255, 255, 0.15);
}

.featu-about-stat__value {
    display: block;
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 6px;
}

.featu-about-stat__label {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.featu-about-mv {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-top: 44px;
}

.featu-about-mv-card {
    background: var(--featu-white);
    border-radius: var(--featu-radius);
    padding: 32px 30px;
    box-shadow: var(--featu-shadow-sm);
    height: 100%;
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-about-mv-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--featu-shadow-md);
}

.featu-about-mv-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--featu-orange-pale);
    color: var(--featu-orange);
    font-size: 24px;
    margin-bottom: 18px;
}

.featu-about-mv-card__icon::before {
    display: block;
    line-height: 1;
}

.featu-about-mv-card h3 {
    margin: 0 0 12px;
    color: var(--featu-navy);
    font-size: 22px;
}

.featu-about-mv-card p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 15px;
    line-height: 1.75;
}

.featu-about-unions {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 44px;
}

.featu-about-union-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    padding: 26px 24px;
    transition: transform var(--featu-transition), box-shadow var(--featu-transition), border-color var(--featu-transition), background var(--featu-transition);
}

.featu-about-union-card:hover {
    background: var(--featu-white);
    transform: translateY(-4px);
    box-shadow: var(--featu-shadow-md);
    border-color: rgba(29, 126, 213, 0.3);
}

.featu-about-union-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.featu-about-union-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--featu-orange-pale);
    color: var(--featu-orange);
    font-size: 20px;
}

.featu-about-union-card__icon::before {
    display: block;
    line-height: 1;
}

.featu-about-union-card__country {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--featu-orange);
}

.featu-about-union-card h3 {
    margin: 0 0 10px;
    font-size: 17px;
    line-height: 1.35;
}

.featu-about-union-card h3 a {
    color: var(--featu-navy);
    text-decoration: none;
}

.featu-about-union-card h3 a:hover {
    color: var(--featu-orange);
}

.featu-about-union-card p {
    margin: 0 0 16px;
    color: var(--featu-gray-500);
    font-size: 14px;
    line-height: 1.7;
    flex: 1;
    display: -webkit-box;
    line-clamp: 3;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.featu-about-union-card__link {
    color: var(--featu-orange);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.featu-about-union-card__link:hover {
    text-decoration: underline;
}

.featu-about-unions__empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 40px 20px;
}

/* ---- Member unions network ---- */
.featu-network-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 28px;
    margin: 28px 0 8px;
    color: var(--featu-gray-500);
    font-size: 14px;
}

.featu-network-meta strong {
    color: var(--featu-navy);
    font-weight: 700;
}

.featu-network {
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-top: 36px;
}

.featu-network-country__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid rgba(26, 80, 139, 0.12);
}

.featu-network-country__head h3 {
    margin: 0;
    font-size: 22px;
    color: var(--featu-navy);
}

.featu-network-country__head span {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--featu-orange);
}

.featu-network-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.featu-network-grid--home {
    margin-top: 40px;
}

.featu-union-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 20px 18px 18px;
    background: #fff;
    border: 1px solid var(--featu-gray-100);
    border-radius: 12px;
    border-top: 3px solid var(--featu-blue);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.featu-union-card:hover {
    border-color: rgba(29, 126, 213, 0.35);
    border-top-color: var(--featu-orange);
    box-shadow: 0 10px 28px rgba(15, 40, 70, 0.08);
}

.featu-union-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.featu-union-card__country {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--featu-gray-500);
}

.featu-union-card__acronym {
    flex-shrink: 0;
    padding: 2px 8px;
    border-radius: 4px;
    background: rgba(26, 80, 139, 0.08);
    color: var(--featu-navy);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.featu-union-card__title {
    margin: 0 0 8px;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 600;
}

.featu-union-card__title a {
    color: var(--featu-navy);
    text-decoration: none;
}

.featu-union-card__title a:hover {
    color: var(--featu-orange);
}

.featu-union-card__text {
    margin: 0 0 14px;
    color: var(--featu-gray-500);
    font-size: 13px;
    line-height: 1.55;
    flex: 1;
}

.featu-union-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: center;
    margin-top: auto;
}

.featu-union-card__link,
.featu-union-card__ext {
    color: var(--featu-blue);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
}

.featu-union-card__ext {
    color: var(--featu-gray-500);
}

.featu-union-card__link:hover,
.featu-union-card__ext:hover {
    color: var(--featu-orange);
}

.featu-network-cta {
    display: grid;
    grid-template-columns: 1.4fr auto;
    gap: 28px;
    align-items: center;
}

.featu-network-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-end;
}

/* Homepage banner: smaller, readable titles */
.banner-carousel .content-box h1 {
    font-size: 38px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: -0.01em !important;
    max-width: 520px;
    margin-bottom: 14px !important;
}

.banner-carousel .content-box .text {
    font-size: 15px !important;
    line-height: 1.65 !important;
    max-width: 480px !important;
    margin-bottom: 24px !important;
    font-weight: 400 !important;
}

.banner-carousel .content-box .inner {
    max-width: 560px;
}

.banner-carousel .next-slide {
    max-width: 200px !important;
    width: auto !important;
    padding: 10px 12px 10px 12px !important;
    right: 16px !important;
    bottom: 16px !important;
    border-radius: 6px;
}

.banner-carousel .next-slide .inner {
    padding-left: 42px !important;
    padding-right: 22px !important;
}

.banner-carousel .next-slide .count {
    width: 34px !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    top: 50% !important;
    transform: translateY(-50%);
}

.banner-carousel .next-slide .count:after {
    top: 0 !important;
    height: 100% !important;
}

.banner-carousel .next-slide .text {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    padding: 0 !important;
    opacity: 1 !important;
    transform: none !important;
    max-width: none !important;
    margin: 0 !important;
    text-shadow: none !important;
}

.banner-carousel .next-slide .arrow {
    font-size: 14px !important;
    line-height: 1.2 !important;
    top: 50% !important;
    transform: translateY(-50%);
}

@media (max-width: 767px) {
    .banner-carousel .next-slide {
        display: none !important;
    }
}

@media (max-width: 1199px) {
    .banner-carousel .content-box h1 {
        font-size: 34px !important;
    }
}

@media (max-width: 991px) {
    .featu-network-grid,
    .featu-network-grid--home {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .featu-network-cta {
        grid-template-columns: 1fr;
    }

    .featu-network-cta__actions {
        justify-content: flex-start;
    }

    .banner-carousel .content-box h1 {
        font-size: 30px !important;
    }
}

@media (max-width: 640px) {
    .featu-network-grid,
    .featu-network-grid--home {
        grid-template-columns: 1fr;
    }

    .banner-carousel .content-box h1 {
        font-size: 26px !important;
    }

    .banner-carousel .content-box .text {
        font-size: 14px !important;
    }
}

.featu-about-section-cta {
    text-align: center;
    margin-top: 40px;
}

.featu-about-impact {
    padding: 80px 0;
    background: linear-gradient(135deg, var(--featu-navy-dark) 0%, var(--featu-navy) 55%, var(--featu-blue) 100%);
    color: #fff;
}

.featu-about-impact__grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 48px;
    align-items: center;
}

.featu-about-impact__copy p {
    color: rgba(255, 255, 255, 0.82);
    font-size: 16px;
    line-height: 1.8;
    margin: 0 0 28px;
}

.featu-about-impact .theme-btn.btn-style-two {
    background: #fff;
    color: var(--featu-navy);
}

.featu-about-impact .theme-btn.btn-style-two:hover {
    background: var(--featu-orange);
    color: #fff;
}

.featu-about-leaders {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 44px;
}

.featu-about-leader-card {
    display: block;
    background: var(--featu-white);
    border-radius: var(--featu-radius);
    overflow: hidden;
    border: 1px solid var(--featu-gray-100);
    box-shadow: var(--featu-shadow-sm);
    text-decoration: none;
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
    height: 100%;
}

.featu-about-leader-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--featu-shadow-md);
}

.featu-about-leader-card__photo {
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: var(--featu-gray-100);
}

.featu-about-leader-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
}

.featu-about-leader-card:hover .featu-about-leader-card__photo img {
    transform: scale(1.05);
}

.featu-about-leader-card__body {
    padding: 20px 20px 22px;
}

.featu-about-leader-card__role {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--featu-orange);
    margin-bottom: 6px;
}

.featu-about-leader-card h3 {
    margin: 0 0 6px;
    color: var(--featu-navy);
    font-size: 18px;
    line-height: 1.3;
}

.featu-about-leader-card p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 14px;
}

@media (max-width: 991px) {
    .featu-about-intro__grid,
    .featu-about-impact__grid,
    .featu-about-mv {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .featu-about-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px 0;
    }

    .featu-about-stat:nth-child(2)::after {
        display: none;
    }

    .featu-about-unions,
    .featu-about-leaders {
        grid-template-columns: repeat(2, 1fr);
    }

    .featu-about-mosaic {
        grid-template-rows: 130px 130px;
    }
}

@media (max-width: 575px) {
    .featu-about-intro {
        padding: 60px 0 50px;
    }

    .featu-about-stats {
        grid-template-columns: 1fr 1fr;
        padding: 20px 12px;
        margin-top: 36px;
    }

    .featu-about-stat__value {
        font-size: 26px;
    }

    .featu-about-stat:not(:last-child)::after {
        display: none;
    }

    .featu-about-unions,
    .featu-about-leaders {
        grid-template-columns: 1fr;
    }

    .featu-about-mosaic {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 160px 110px 110px;
    }

    .featu-about-mosaic__item--lg {
        grid-column: span 2;
        grid-row: span 1;
    }
}

/* ---- Home page ---- */
.featu-home-stats {
    position: relative;
    z-index: 3;
    padding: 0 0 8px;
    margin-top: -48px;
}

.featu-home-stats .auto-container {
    position: relative;
}

.featu-home-stats .featu-about-stats {
    margin-top: 0;
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-lg);
}

.featu-home-intro {
    display: grid;
    grid-template-columns: 1.35fr 1fr;
    gap: 40px;
    align-items: start;
}

.featu-home-intro__copy p {
    color: var(--featu-gray-500);
    font-size: 16px;
    line-height: 1.8;
    margin: 0 0 16px;
}

.featu-home-intro__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}

.featu-home-intro__aside {
    display: grid;
    gap: 16px;
}

.featu-home-aside-card {
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    padding: 24px;
}

.featu-home-aside-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--featu-orange-pale);
    color: var(--featu-blue);
    font-size: 20px;
    margin-bottom: 14px;
}

.featu-home-aside-card__icon::before {
    display: block;
    line-height: 1;
}

.featu-home-aside-card h3 {
    margin: 0 0 8px;
    color: var(--featu-navy);
    font-size: 18px;
}

.featu-home-aside-card p {
    margin: 0 0 12px;
    color: var(--featu-gray-500);
    font-size: 14px;
    line-height: 1.65;
}

.featu-home-aside-card a {
    color: var(--featu-blue);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.featu-home-aside-card a:hover {
    text-decoration: underline;
}

.featu-home-link {
    display: inline-block;
    margin-top: 16px;
    color: var(--featu-blue);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.featu-home-link:hover {
    color: var(--featu-navy);
    text-decoration: underline;
}

.featu-about-mv-card .featu-home-link {
    margin-top: 18px;
}

.featu-home-pillars,
.featu-home-programmes {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 44px;
}

.featu-home-programmes {
    grid-template-columns: repeat(2, 1fr);
}

.featu-about-section-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
}

.featu-home-split {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 48px;
    align-items: start;
}

.featu-home-news,
.featu-home-events {
    display: grid;
    gap: 16px;
    margin-top: 28px;
}

.featu-home-news-card {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 16px;
    align-items: center;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    overflow: hidden;
    transition: box-shadow var(--featu-transition), transform var(--featu-transition);
}

.featu-home-news-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--featu-shadow-sm);
}

.featu-home-news-card__media {
    display: block;
    height: 100%;
    min-height: 96px;
    overflow: hidden;
}

.featu-home-news-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.featu-home-news-card__body {
    padding: 14px 16px 14px 0;
}

.featu-home-news-card__meta {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--featu-blue);
    margin-bottom: 6px;
}

.featu-home-news-card h3 {
    margin: 0;
    font-size: 16px;
    line-height: 1.4;
}

.featu-home-news-card h3 a {
    color: var(--featu-navy);
    text-decoration: none;
}

.featu-home-news-card h3 a:hover {
    color: var(--featu-blue);
}

.featu-home-event-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    background: var(--featu-white);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    padding: 16px;
    box-shadow: var(--featu-shadow-sm);
}

.featu-home-event-card__date {
    flex-shrink: 0;
    width: 58px;
    text-align: center;
    background: var(--featu-navy);
    color: #fff;
    border-radius: var(--featu-radius-sm);
    padding: 10px 6px;
}

.featu-home-event-card__date .day {
    display: block;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.featu-home-event-card__date .month {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-top: 4px;
    opacity: 0.85;
}

.featu-home-event-card__type {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--featu-gold-deep, #D4B000);
    color: var(--featu-blue);
    margin-bottom: 4px;
}

.featu-home-event-card h3 {
    margin: 0 0 6px;
    font-size: 16px;
    line-height: 1.35;
}

.featu-home-event-card h3 a {
    color: var(--featu-navy);
    text-decoration: none;
}

.featu-home-event-card h3 a:hover {
    color: var(--featu-blue);
}

.featu-home-event-card p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 13px;
}

.featu-home-empty {
    color: var(--featu-gray-500);
    font-size: 15px;
    line-height: 1.7;
    margin: 20px 0 0;
}

.featu-home-engage {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 44px;
}

.featu-home-newsletter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.featu-home-newsletter input[type="email"] {
    flex: 1;
    min-width: 160px;
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius-sm);
    padding: 12px 14px;
    font-size: 14px;
}

.featu-home-newsletter .theme-btn .btn-title {
    padding: 12px 18px !important;
    line-height: 1.2 !important;
}

.featu-home-contact {
    padding: 36px 0;
    background: var(--featu-navy-dark);
    color: #fff;
}

.featu-home-contact__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.featu-home-contact__item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.featu-home-contact__item > span {
    color: var(--featu-gold);
    font-size: 26px;
    line-height: 1;
}

.featu-home-contact__item strong {
    display: block;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.65);
    margin-bottom: 4px;
}

.featu-home-contact__item a,
.featu-home-contact__item span:not([class]) {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
}

.featu-home-contact__item a:hover {
    color: var(--featu-gold);
}

@media (max-width: 991px) {
    .featu-home-intro,
    .featu-home-split,
    .featu-home-engage,
    .featu-home-contact__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .featu-home-pillars {
        grid-template-columns: repeat(2, 1fr);
    }

    .featu-home-stats {
        margin-top: 24px;
        padding-bottom: 0;
    }
}

@media (max-width: 575px) {
    .featu-home-pillars,
    .featu-home-programmes {
        grid-template-columns: 1fr;
    }

    .featu-home-news-card {
        grid-template-columns: 1fr;
    }

    .featu-home-news-card__media {
        min-height: 160px;
    }

    .featu-home-news-card__body {
        padding: 0 16px 16px;
    }
}

/* ---- Events page ---- */
.featu-events-page {
    padding: 70px 0 80px;
    background: var(--featu-white);
}

.featu-events-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 28px 0 40px;
}

.featu-events-filter {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 999px;
    border: 1px solid var(--featu-gray-100);
    background: var(--featu-gray-50);
    color: var(--featu-navy);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: background var(--featu-transition), color var(--featu-transition), border-color var(--featu-transition);
}

.featu-events-filter:hover,
.featu-events-filter.is-active {
    background: var(--featu-blue);
    border-color: var(--featu-blue);
    color: #fff;
}

.featu-event-featured {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    gap: 0;
    margin-bottom: 36px;
    border-radius: var(--featu-radius);
    overflow: hidden;
    background: var(--featu-navy);
    color: #fff;
    text-decoration: none;
    box-shadow: var(--featu-shadow-md);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-event-featured:hover {
    transform: translateY(-3px);
    box-shadow: var(--featu-shadow-lg);
    color: #fff;
}

.featu-event-featured__media {
    position: relative;
    min-height: 320px;
}

.featu-event-featured__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.featu-event-featured__date {
    position: absolute;
    left: 20px;
    bottom: 20px;
    background: var(--featu-gold);
    color: var(--featu-navy-dark);
    border-radius: var(--featu-radius-sm);
    padding: 12px 14px;
    text-align: center;
    min-width: 72px;
}

.featu-event-featured__date .day {
    display: block;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
}

.featu-event-featured__date .month {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-top: 4px;
}

.featu-event-featured__body {
    padding: 36px 34px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.featu-event-featured__type {
    display: inline-block;
    align-self: flex-start;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--featu-gold);
    margin-bottom: 12px;
}

.featu-event-featured__body h2 {
    margin: 0 0 14px;
    color: #fff;
    font-size: 28px;
    line-height: 1.25;
}

.featu-event-featured__body p {
    margin: 0 0 18px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 15px;
    line-height: 1.7;
}

.featu-event-featured__meta {
    list-style: none;
    margin: 0 0 22px;
    padding: 0;
    display: grid;
    gap: 8px;
}

.featu-event-featured__meta li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 14px;
}

.featu-event-featured__meta li span {
    color: var(--featu-gold);
}

.featu-event-featured__cta {
    display: inline-flex;
    align-self: flex-start;
    font-weight: 700;
    font-size: 14px;
    color: #fff;
    border-bottom: 2px solid var(--featu-gold);
    padding-bottom: 2px;
}

.featu-events-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.featu-event-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--featu-white);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-event-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--featu-shadow-md);
}

.featu-event-card__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--featu-gray-100);
}

.featu-event-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
}

.featu-event-card:hover .featu-event-card__media img {
    transform: scale(1.05);
}

.featu-event-card__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: var(--featu-blue);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 999px;
}

.featu-event-card__body {
    display: flex;
    gap: 14px;
    padding: 18px 18px 20px;
    flex: 1;
}

.featu-event-card__date {
    flex-shrink: 0;
    width: 52px;
    text-align: center;
    background: var(--featu-navy);
    color: #fff;
    border-radius: var(--featu-radius-sm);
    padding: 10px 6px;
    height: fit-content;
}

.featu-event-card__date .day {
    display: block;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.featu-event-card__date .month {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    margin-top: 4px;
    opacity: 0.85;
}

.featu-event-card__content {
    min-width: 0;
    flex: 1;
}

.featu-event-card h3 {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.35;
}

.featu-event-card h3 a {
    color: var(--featu-navy);
    text-decoration: none;
}

.featu-event-card h3 a:hover {
    color: var(--featu-blue);
}

.featu-event-card__location {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin: 0 0 8px;
    color: var(--featu-gray-500);
    font-size: 13px;
    line-height: 1.4;
}

.featu-event-card__location span {
    color: var(--featu-blue);
    margin-top: 1px;
}

.featu-event-card__excerpt {
    margin: 0 0 10px;
    color: var(--featu-gray-500);
    font-size: 14px;
    line-height: 1.6;
}

.featu-event-card--past {
    background: var(--featu-white);
}

.featu-event-card--past .featu-event-card__date {
    background: var(--featu-gray-500);
}

.featu-event-card--past .featu-event-card__badge {
    background: var(--featu-navy);
}

.featu-events-empty {
    text-align: center;
    padding: 48px 20px;
    background: var(--featu-gray-50);
    border-radius: var(--featu-radius);
    border: 1px dashed var(--featu-gray-100);
}

.featu-events-empty h3 {
    margin: 0 0 8px;
    color: var(--featu-navy);
}

.featu-events-empty p {
    margin: 0;
    color: var(--featu-gray-500);
}

.featu-events-pagination {
    margin-top: 36px;
    display: flex;
    justify-content: center;
}

.featu-events-subscribe {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    flex-wrap: wrap;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    padding: 32px 34px;
}

.featu-events-subscribe h2 {
    margin: 0 0 8px;
    color: var(--featu-navy);
    font-size: 26px;
}

.featu-events-subscribe p {
    margin: 0;
    color: var(--featu-gray-500);
    max-width: 480px;
}

@media (max-width: 991px) {
    .featu-event-featured {
        grid-template-columns: 1fr;
    }

    .featu-event-featured__media {
        min-height: 240px;
    }

    .featu-events-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .featu-events-page {
        padding: 50px 0 60px;
    }

    .featu-events-grid {
        grid-template-columns: 1fr;
    }

    .featu-event-featured__body {
        padding: 24px 20px;
    }

    .featu-event-featured__body h2 {
        font-size: 22px;
    }

    .featu-events-subscribe {
        padding: 24px 20px;
    }
}

/* ---- Gallery page ---- */
.featu-gallery-page {
    padding: 70px 0 90px;
    background: var(--featu-white);
}

.featu-gallery-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px 24px;
    margin: 36px 0 32px;
}

.featu-gallery-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.featu-gallery-filter {
    appearance: none;
    border: 1px solid var(--featu-gray-100);
    background: var(--featu-gray-50);
    color: var(--featu-navy);
    border-radius: 999px;
    padding: 10px 16px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--featu-transition), color var(--featu-transition), border-color var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-gallery-filter span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    margin-left: 6px;
    padding: 1px 7px;
    border-radius: 999px;
    background: rgba(11, 79, 134, 0.08);
    color: var(--featu-navy);
    font-size: 11px;
}

.featu-gallery-filter:hover {
    border-color: rgba(29, 126, 213, 0.45);
    color: var(--featu-blue);
}

.featu-gallery-filter.is-active {
    background: var(--featu-blue);
    border-color: var(--featu-blue);
    color: #fff;
    box-shadow: 0 8px 18px rgba(29, 126, 213, 0.28);
}

.featu-gallery-filter.is-active span {
    background: rgba(255, 255, 255, 0.22);
    color: #fff;
}

.featu-gallery-count {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 14px;
}

.featu-gallery-count strong {
    color: var(--featu-navy);
}

.featu-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.featu-gallery-card {
    border-radius: var(--featu-radius);
    overflow: hidden;
    background: var(--featu-white);
    border: 1px solid var(--featu-gray-100);
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-gallery-card.is-hidden,
.featu-gallery-card[hidden] {
    display: none !important;
}

.featu-gallery-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--featu-shadow-md);
}

.featu-gallery-card__link {
    display: block;
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
}

.featu-gallery-card__link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
}

.featu-gallery-card:hover .featu-gallery-card__link img {
    transform: scale(1.06);
}

.featu-gallery-card__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
    padding: 18px;
    background: linear-gradient(180deg, rgba(7, 58, 99, 0.05) 35%, rgba(7, 58, 99, 0.88) 100%);
    opacity: 0;
    transition: opacity var(--featu-transition);
}

.featu-gallery-card:hover .featu-gallery-card__overlay {
    opacity: 1;
}

.featu-gallery-card__zoom {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    color: var(--featu-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.featu-gallery-card__badge {
    align-self: flex-start;
    background: var(--featu-gold);
    color: var(--featu-navy-dark);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 999px;
}

.featu-gallery-card__overlay h3 {
    margin: 0;
    color: #fff;
    font-size: 16px;
    line-height: 1.35;
}

.featu-gallery-empty {
    text-align: center;
    padding: 56px 24px;
    margin-top: 12px;
    background: var(--featu-gray-50);
    border: 1px dashed var(--featu-gray-100);
    border-radius: var(--featu-radius);
}

.featu-gallery-empty h3 {
    margin: 0 0 8px;
    color: var(--featu-navy);
}

.featu-gallery-empty p {
    margin: 0 0 20px;
    color: var(--featu-gray-500);
}

.featu-gallery-grid.is-empty {
    display: none;
}

@media (max-width: 991px) {
    .featu-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .featu-gallery-page {
        padding: 50px 0 70px;
    }

    .featu-gallery-toolbar {
        margin-top: 28px;
    }

    .featu-gallery-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .featu-gallery-card__overlay {
        opacity: 1;
        background: linear-gradient(180deg, transparent 40%, rgba(7, 58, 99, 0.9) 100%);
    }

    .featu-gallery-card__zoom {
        display: none;
    }
}

/* Bot honeypot — keep out of sight/tab order */
.featu-hp {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* ---- Blog show page ---- */
.featu-blog-show {
    padding: 60px 0 70px;
    background: var(--featu-white);
}

.featu-blog-show__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, 0.75fr);
    gap: 40px;
    align-items: start;
}

.featu-blog-article__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    align-items: center;
    margin-bottom: 22px;
    color: var(--featu-gray-500);
    font-size: 14px;
}

.featu-blog-article__badge {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 999px;
    background: var(--featu-orange-pale);
    color: var(--featu-blue);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-decoration: none;
}

.featu-blog-article__image {
    margin: 0 0 28px;
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-sm);
}

.featu-blog-article__image img {
    width: 100%;
    max-height: 420px;
    object-fit: cover;
    display: block;
}

.featu-blog-article__content {
    color: var(--featu-gray-700);
    font-size: 16px;
    line-height: 1.85;
}

.featu-blog-article__content p {
    margin: 0 0 18px;
}

.featu-blog-article__content h2,
.featu-blog-article__content h3,
.featu-blog-article__content h4 {
    color: var(--featu-navy);
    margin: 28px 0 12px;
}

.featu-blog-article__content ul,
.featu-blog-article__content ol {
    margin: 0 0 18px;
    padding-left: 22px;
}

.featu-blog-article__content img {
    max-width: 100%;
    height: auto;
    border-radius: var(--featu-radius-sm);
}

.featu-blog-author {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    margin-top: 28px;
    padding: 20px;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
}

.featu-blog-author__avatar {
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    overflow: hidden;
    background: #fff;
    border: 2px solid var(--featu-gray-100);
}

.featu-blog-author__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featu-blog-author__label {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--featu-blue);
    margin-bottom: 4px;
}

.featu-blog-author h3 {
    margin: 0 0 6px;
    color: var(--featu-navy);
    font-size: 18px;
}

.featu-blog-author p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 14px;
    line-height: 1.6;
}

.featu-blog-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--featu-gray-100);
}

.featu-blog-nav__link {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px 18px;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius-sm);
    text-decoration: none;
    transition: border-color var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-blog-nav__link:hover {
    border-color: rgba(29, 126, 213, 0.35);
    box-shadow: var(--featu-shadow-sm);
}

.featu-blog-nav__link span {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--featu-blue);
}

.featu-blog-nav__link strong {
    color: var(--featu-navy);
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
}

.featu-blog-nav__link--next {
    text-align: right;
}

.featu-blog-nav--single {
    grid-template-columns: 1fr;
}

.featu-blog-nav--single .featu-blog-nav__link--next {
    text-align: left;
}

.featu-blog-aside {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 110px;
}

.featu-blog-widget {
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    padding: 22px;
}

.featu-blog-widget h4 {
    margin: 0 0 14px;
    color: var(--featu-navy);
    font-size: 16px;
}

.featu-blog-widget--cta p {
    margin: 0 0 14px;
    color: var(--featu-gray-500);
    font-size: 14px;
    line-height: 1.6;
}

.featu-blog-search {
    display: flex;
    gap: 8px;
}

.featu-blog-search input {
    flex: 1;
    min-width: 0;
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius-sm);
    padding: 11px 12px;
    background: #fff;
    font-size: 14px;
}

.featu-blog-search button {
    width: 44px;
    border: none;
    border-radius: var(--featu-radius-sm);
    background: var(--featu-blue);
    color: #fff;
    cursor: pointer;
}

.featu-blog-cats {
    list-style: none;
    margin: 0;
    padding: 0;
}

.featu-blog-cats li + li {
    margin-top: 6px;
}

.featu-blog-cats a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: var(--featu-radius-sm);
    text-decoration: none;
    color: var(--featu-navy);
    background: #fff;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 600;
}

.featu-blog-cats a em {
    font-style: normal;
    font-size: 12px;
    color: var(--featu-gray-500);
    background: var(--featu-gray-50);
    border-radius: 999px;
    padding: 2px 8px;
}

.featu-blog-cats a:hover,
.featu-blog-cats a.is-active {
    border-color: rgba(29, 126, 213, 0.3);
    color: var(--featu-blue);
}

.featu-blog-aside-posts {
    display: grid;
    gap: 12px;
}

.featu-blog-aside-post {
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 12px;
    text-decoration: none;
    align-items: center;
}

.featu-blog-aside-post img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: var(--featu-radius-sm);
    background: #fff;
}

.featu-blog-aside-post span {
    display: block;
    font-size: 11px;
    font-weight: 700;
    color: var(--featu-blue);
    margin-bottom: 4px;
}

.featu-blog-aside-post strong {
    display: block;
    color: var(--featu-navy);
    font-size: 14px;
    line-height: 1.35;
    font-weight: 600;
}

.featu-blog-aside-post:hover strong {
    color: var(--featu-blue);
}

.featu-blog-related {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 40px;
}

.featu-blog-related-card {
    background: var(--featu-white);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-sm);
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-blog-related-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--featu-shadow-md);
}

.featu-blog-related-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--featu-gray-100);
}

.featu-blog-related-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.featu-blog-related-card__body {
    padding: 18px 18px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.featu-blog-related-card__body > span {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--featu-blue);
    margin-bottom: 8px;
}

.featu-blog-related-card h3 {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.35;
}

.featu-blog-related-card h3 a {
    color: var(--featu-navy);
    text-decoration: none;
}

.featu-blog-related-card h3 a:hover {
    color: var(--featu-blue);
}

.featu-blog-related-card p {
    margin: 0 0 12px;
    color: var(--featu-gray-500);
    font-size: 14px;
    line-height: 1.6;
    flex: 1;
}

@media (max-width: 991px) {
    .featu-blog-show__layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .featu-blog-aside {
        position: static;
        grid-template-columns: repeat(2, 1fr);
    }

    .featu-blog-widget--cta {
        grid-column: 1 / -1;
    }

    .featu-blog-related {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .featu-blog-show {
        padding: 40px 0 50px;
    }

    .featu-blog-aside,
    .featu-blog-related,
    .featu-blog-nav {
        grid-template-columns: 1fr;
    }

    .featu-blog-nav__link--next {
        text-align: left;
    }

    .featu-blog-author {
        flex-direction: column;
    }
}

/* ---- Event detail page ---- */
.featu-site .page-banner .featu-event-detail__eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #fff;
    background: rgba(29, 126, 213, 0.85);
    border-radius: 4px;
}

.featu-site .featu-event-detail {
    padding: 56px 0 80px;
    background:
        radial-gradient(ellipse 70% 35% at 10% 0%, var(--featu-blue-pale) 0%, transparent 55%),
        var(--featu-gray-50);
}

.featu-site .featu-event-detail__simple {
    max-width: 900px;
    margin: 0 auto;
}

.featu-site .featu-event-detail__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    gap: 36px;
    align-items: start;
}

.featu-site .featu-event-detail__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 28px;
}

.featu-site .featu-event-fact {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px 22px;
    background: linear-gradient(135deg, var(--featu-navy) 0%, var(--featu-blue) 100%);
    border-radius: var(--featu-radius);
    color: #fff;
    box-shadow: var(--featu-shadow-md);
}

.featu-site .featu-event-fact__icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.16);
    font-size: 20px;
}

.featu-site .featu-event-fact h3 {
    margin: 0 0 6px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.8);
}

.featu-site .featu-event-fact p {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    color: #fff;
}

.featu-site .featu-event-fact__sub {
    margin-top: 4px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.85) !important;
}

.featu-site .featu-event-detail__media {
    margin: 0 0 32px;
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-md);
}

.featu-site .featu-event-detail__media img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 420px;
    object-fit: cover;
}

.featu-site .featu-event-detail__section {
    margin-bottom: 40px;
    padding: 28px;
    background: var(--featu-white);
    border: 1px solid rgba(11, 79, 134, 0.08);
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-sm);
}

.featu-site .featu-event-detail__section h2 {
    margin: 0 0 20px;
    padding-bottom: 12px;
    color: var(--featu-navy);
    font-size: clamp(22px, 2.2vw, 26px);
    border-bottom: 2px solid var(--featu-gray-100);
    position: relative;
}

.featu-site .featu-event-detail__section h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 56px;
    height: 2px;
    background: linear-gradient(90deg, var(--featu-blue), var(--featu-gold));
}

.featu-site .featu-event-detail__prose {
    color: var(--featu-gray-700);
    font-size: 16px;
    line-height: 1.75;
}

.featu-site .featu-event-detail__prose p {
    margin: 0 0 14px;
}

.featu-site .featu-event-detail__rich {
    margin-top: 12px;
}

/* Agenda timeline */
.featu-site .featu-agenda {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.featu-site .featu-agenda__item {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 20px;
    position: relative;
    padding: 0 0 28px 0;
}

.featu-site .featu-agenda__item:last-child {
    padding-bottom: 0;
}

.featu-site .featu-agenda__item:not(:last-child)::before {
    content: "";
    position: absolute;
    left: 54px;
    top: 48px;
    bottom: 0;
    width: 2px;
    background: var(--featu-gray-100);
}

.featu-site .featu-agenda__time {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 4px;
    padding-top: 4px;
}

.featu-site .featu-agenda__time > span:first-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    padding: 8px 10px;
    border-radius: 999px;
    background: var(--featu-blue-pale);
    color: var(--featu-navy);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    position: relative;
    z-index: 1;
}

.featu-site .featu-agenda__time-end {
    font-size: 12px;
    color: var(--featu-gray-500);
    font-weight: 600;
}

.featu-site .featu-agenda__body {
    padding: 16px 18px;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius-sm);
    transition: border-color var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-site .featu-agenda__item:hover .featu-agenda__body {
    border-color: rgba(29, 126, 213, 0.35);
    box-shadow: var(--featu-shadow-sm);
}

.featu-site .featu-agenda__body h3 {
    margin: 0 0 6px;
    color: var(--featu-navy);
    font-size: 17px;
    line-height: 1.35;
}

.featu-site .featu-agenda__speaker {
    margin: 0 0 8px;
    color: var(--featu-blue);
    font-size: 14px;
    font-weight: 600;
}

.featu-site .featu-agenda__body > p {
    margin: 0 0 10px;
    color: var(--featu-gray-700);
    font-size: 14px;
    line-height: 1.65;
}

.featu-site .featu-agenda__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.featu-site .featu-agenda__meta span {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 4px;
    background: #fff;
    border: 1px solid var(--featu-gray-100);
    color: var(--featu-gray-500);
    font-size: 12px;
    font-weight: 600;
}

/* Speakers */
.featu-site .featu-speaker-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.featu-site .featu-speaker-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition), border-color var(--featu-transition);
}

.featu-site .featu-speaker-card:hover {
    transform: translateY(-3px);
    border-color: rgba(29, 126, 213, 0.3);
    box-shadow: var(--featu-shadow-md);
    background: #fff;
}

.featu-site .featu-speaker-card__avatar {
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(145deg, var(--featu-navy), var(--featu-blue));
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.featu-site .featu-speaker-card__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featu-site .featu-speaker-card__body h3 {
    margin: 0 0 4px;
    color: var(--featu-navy);
    font-size: 16px;
    line-height: 1.3;
}

.featu-site .featu-speaker-card__role {
    margin: 0;
    color: var(--featu-blue);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.featu-site .featu-speaker-card__org {
    margin: 4px 0 0;
    color: var(--featu-gray-500);
    font-size: 13px;
}

/* Related */
.featu-site .featu-event-related {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.featu-site .featu-event-related__card {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 16px;
    background: var(--featu-gray-50);
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius-sm);
    text-decoration: none;
    transition: border-color var(--featu-transition), box-shadow var(--featu-transition), transform var(--featu-transition);
}

.featu-site .featu-event-related__card:hover {
    transform: translateY(-2px);
    border-color: rgba(29, 126, 213, 0.35);
    box-shadow: var(--featu-shadow-sm);
}

.featu-site .featu-event-related__date {
    flex-shrink: 0;
    width: 54px;
    text-align: center;
    padding: 8px 6px;
    border-radius: 8px;
    background: var(--featu-navy);
    color: #fff;
}

.featu-site .featu-event-related__date .day {
    display: block;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.featu-site .featu-event-related__date .month {
    display: block;
    margin-top: 4px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.85;
}

.featu-site .featu-event-related__type {
    display: inline-block;
    margin-bottom: 4px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--featu-blue);
}

.featu-site .featu-event-related__card h3 {
    margin: 0 0 4px;
    color: var(--featu-navy);
    font-size: 15px;
    line-height: 1.35;
}

.featu-site .featu-event-related__card p {
    margin: 0;
    color: var(--featu-gray-500);
    font-size: 13px;
}

/* Sidebar */
.featu-site .featu-event-detail__aside {
    position: sticky;
    top: 100px;
}

.featu-site .featu-event-side {
    background: #fff;
    border: 1px solid rgba(11, 79, 134, 0.1);
    border-radius: var(--featu-radius);
    overflow: hidden;
    box-shadow: var(--featu-shadow-md);
}

.featu-site .featu-event-side__title {
    margin: 0;
    padding: 18px 22px;
    background: linear-gradient(135deg, var(--featu-navy), var(--featu-blue));
    color: #fff;
    font-size: 18px;
}

.featu-site .featu-event-side__list {
    list-style: none;
    margin: 0;
    padding: 8px 0;
}

.featu-site .featu-event-side__list li {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 14px 22px;
    border-bottom: 1px solid var(--featu-gray-100);
}

.featu-site .featu-event-side__list li:last-child {
    border-bottom: 0;
}

.featu-site .featu-event-side__list span {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--featu-gray-500);
}

.featu-site .featu-event-side__list strong {
    color: var(--featu-navy);
    font-size: 14px;
    font-weight: 600;
    word-break: break-word;
}

.featu-site .featu-event-side__list a {
    color: var(--featu-blue);
    text-decoration: none;
}

.featu-site .featu-event-side__list a:hover {
    text-decoration: underline;
}

.featu-site .featu-event-side__block {
    padding: 18px 22px 8px;
    border-top: 1px solid var(--featu-gray-100);
}

.featu-site .featu-event-side__block h4 {
    margin: 0 0 12px;
    color: var(--featu-navy);
    font-size: 15px;
}

.featu-site .featu-event-side__plain {
    list-style: none;
    margin: 0;
    padding: 0;
}

.featu-site .featu-event-side__plain li {
    margin: 0 0 10px;
    color: var(--featu-gray-700);
    font-size: 14px;
    line-height: 1.5;
}

.featu-site .featu-event-side__note {
    margin: 0 0 12px;
    color: var(--featu-gray-500);
    font-size: 13px;
    line-height: 1.6;
}

.featu-site .featu-event-side__cta {
    padding: 8px 22px 22px;
}

.featu-site .featu-event-side__cta .theme-btn {
    width: 100%;
    text-align: center;
}

@media (max-width: 991px) {
    .featu-site .featu-event-detail__layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .featu-site .featu-event-detail__aside {
        position: static;
        order: 2;
    }

    .featu-site .featu-event-related {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .featu-site .featu-event-detail {
        padding: 36px 0 56px;
    }

    .featu-site .featu-event-detail__facts {
        grid-template-columns: 1fr;
    }

    .featu-site .featu-event-detail__section {
        padding: 20px;
    }

    .featu-site .featu-agenda__item {
        grid-template-columns: 1fr;
        gap: 10px;
        padding-bottom: 22px;
    }

    .featu-site .featu-agenda__item:not(:last-child)::before {
        display: none;
    }

    .featu-site .featu-agenda__time {
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        gap: 10px;
    }

    .featu-site .featu-speaker-grid {
        grid-template-columns: 1fr;
    }

    .featu-site .featu-event-related {
        grid-template-columns: 1fr;
    }
}

/* ---- Fast images ---- */
.featu-site img {
    max-width: 100%;
    height: auto;
}

.featu-site img[loading="lazy"] {
    content-visibility: auto;
}

.featu-site .banner-section .image-layer,
.featu-site .page-banner .image-layer {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Defer paint work for below-the-fold image cards */
.featu-site .leadership-card,
.featu-site .featu-speaker-card,
.featu-site .featu-event-card,
.featu-site .featu-home-event-card,
.featu-site .featu-gallery-card,
.featu-site .news-block-five,
.featu-site .gallery-item,
.featu-site .mixitup-item {
    content-visibility: auto;
    contain-intrinsic-size: 280px 320px;
}

/* ---- Header brand logo (keep circular emblem proportional) ---- */
.featu-site .main-header .header-upper {
    background: #fff;
    border-bottom: 1px solid #e6eff7;
    box-shadow: none;
}

.featu-site .header-style-one .header-upper .auto-container {
    max-width: 1180px;
    padding: 0 18px;
}

.featu-site .main-header .header-upper .inner-container {
    min-height: 78px;
    padding: 0 !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.featu-site .main-header .header-upper .logo-box {
    flex: 0 0 auto;
    float: none !important;
    padding: 8px 0 !important;
    display: flex;
    align-items: center;
}

.featu-site .main-header .header-upper .logo-box .logo {
    float: none !important;
}

.featu-site .main-header .header-upper .logo-box a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 86px;
    height: 62px;
}

.featu-site .main-header .header-upper .logo-box .logo img,
.featu-site .featu-brand-logo {
    width: auto !important;
    height: auto !important;
    max-width: 76px !important;
    max-height: 58px !important;
    object-fit: contain !important;
    display: block;
}

.featu-site .main-header .header-upper .nav-outer {
    flex: 1 1 auto;
    float: none !important;
    width: auto !important;
    margin-left: 0 !important;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 0;
}

.featu-site .main-header .header-upper .nav-outer .main-menu {
    display: block !important;
    width: 100%;
}

.featu-site .main-header .header-upper .navbar-collapse {
    display: block !important;
}

.featu-site .main-header .header-upper .main-menu .navigation {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    width: 100%;
}

.featu-site .main-header .header-upper .main-menu .navigation > li {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.featu-site .main-header .header-upper .main-menu .navigation > li > a {
    padding: 24px 10px 22px !important;
    color: var(--featu-navy);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
}

.featu-site .main-header .header-upper .main-menu .navigation > li:hover > a,
.featu-site .main-header .header-upper .main-menu .navigation > li.current > a {
    color: var(--featu-blue);
}

.featu-site .main-menu .navigation > li.dropdown > a:before {
    right: -2px;
    top: 50%;
    transform: translateY(-50%);
}

.featu-site .featu-brand-logo--sticky {
    max-width: 52px !important;
    max-height: 52px !important;
}

.featu-site .featu-brand-logo--mobile {
    max-width: 72px !important;
    max-height: 72px !important;
}

.featu-site .sticky-header .logo img {
    width: auto !important;
    height: auto !important;
    max-width: 52px !important;
    max-height: 52px !important;
    object-fit: contain !important;
}

.featu-site .mobile-menu .nav-logo img {
    width: auto !important;
    height: auto !important;
    max-width: 72px !important;
    max-height: 72px !important;
    object-fit: contain !important;
}

@media (max-width: 991px) {
    .featu-site .main-header .header-upper .inner-container {
        min-height: 68px;
        gap: 12px;
    }

    .featu-site .main-header .header-upper .logo-box a {
        width: 72px;
        height: 54px;
    }

    .featu-site .main-header .header-upper .logo-box .logo img,
    .featu-site .featu-brand-logo {
        max-width: 64px !important;
        max-height: 50px !important;
    }

    .featu-site .main-header .header-upper .nav-outer {
        flex: 0 0 auto;
        margin-left: auto !important;
        justify-content: flex-end;
    }

    .featu-site .main-header .header-upper .nav-outer .main-menu {
        display: none !important;
    }

    .featu-site .nav-outer .mobile-nav-toggler,
    .featu-site .mobile-nav-toggler {
        width: 42px;
        height: 42px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        float: none !important;
        margin: 0 !important;
        color: var(--featu-navy);
        background: #eef7ff;
        border: 1px solid #d7eaf8;
        border-radius: 12px;
        font-size: 22px;
        line-height: 1;
        box-shadow: 0 6px 18px rgba(11, 79, 134, 0.08);
    }
}

@media (max-width: 575px) {
    .featu-site .main-header .header-upper .auto-container {
        padding: 0 16px;
    }

    .featu-site .main-header .header-upper .inner-container {
        min-height: 64px;
    }

    .featu-site .main-header .header-upper .logo-box a {
        width: 66px;
        height: 50px;
    }

    .featu-site .main-header .header-upper .logo-box .logo img,
    .featu-site .featu-brand-logo {
        max-width: 58px !important;
        max-height: 46px !important;
    }
}

/* ---- Member union detail: logo only ---- */
.featu-site .featu-union-logo-only {
    padding: 64px 0 84px;
    background: var(--featu-gray-50);
}

.featu-site .featu-union-logo-only__card {
    max-width: 560px;
    min-height: 320px;
    margin: 0 auto;
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-md);
}

.featu-site .featu-union-logo-only__card img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 240px;
    object-fit: contain;
}

@media (max-width: 575px) {
    .featu-site .featu-union-logo-only {
        padding: 40px 0 56px;
    }

    .featu-site .featu-union-logo-only__card {
        min-height: 220px;
        padding: 24px;
    }

    .featu-site .featu-union-logo-only__card img {
        max-height: 180px;
    }
}

.featu-site .featu-member-union-logo {
    min-height: 260px;
    margin: 0;
    padding: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid var(--featu-gray-100);
    border-radius: var(--featu-radius);
}

.featu-site .featu-member-union-logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 210px;
    object-fit: contain;
}

@media (max-width: 767px) {
    .featu-site .featu-member-union-logo {
        margin-bottom: 24px;
        min-height: 220px;
    }
}

/* ---- Responsive top contact bar ---- */
.featu-site .header-top-one {
    padding: 7px 20px;
    background: #06436d;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.featu-site .header-top-one .inner {
    gap: 16px;
    min-height: 28px;
}

.featu-site .header-top-one .top-left,
.featu-site .header-top-one .top-right {
    min-width: 0;
}

.featu-site .header-top-one .top-left .email a,
.featu-site .header-top-one .top-right .phone a,
.featu-site .header-top-one .top-right .hours .hours-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}

.featu-site .header-top-one .top-right {
    gap: 14px;
}

.featu-site .header-top-one .top-right .hours,
.featu-site .header-top-one .header-top-social {
    margin-left: 0;
    padding-left: 14px;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.featu-site .header-top-one .top-right .hours .hours-btn {
    padding: 4px 13px;
    background: #1678d6;
    border-radius: 999px;
    box-shadow: none;
}

@media only screen and (max-width: 991px) {
    .featu-site .header-top-one {
        padding: 7px 14px;
    }

    .featu-site .header-top-one .inner {
        justify-content: center;
        flex-wrap: wrap;
        gap: 7px 16px;
        min-height: auto;
    }

    .featu-site .main-header .header-top .top-left,
    .featu-site .header-top-one .top-left,
    .featu-site .main-header .header-top .top-right,
    .featu-site .header-top-one .top-right {
        display: flex !important;
        width: auto !important;
        text-align: center;
    }

    .featu-site .header-top-one .top-right {
        justify-content: center;
        flex-wrap: wrap;
        gap: 7px 14px;
    }

    .featu-site .header-top-one .top-right .phone,
    .featu-site .header-top-one .top-right .hours,
    .featu-site .header-top-one .header-top-social {
        height: auto;
    }
}

@media only screen and (max-width: 575px) {
    .featu-site .header-top-one .inner,
    .featu-site .header-top-one .top-right {
        gap: 7px 10px;
    }

    .featu-site .header-top-one .top-right .hours,
    .featu-site .header-top-one .header-top-social {
        border-left: 0;
        padding-left: 0;
    }

    .featu-site .header-top-one .top-left .email a,
    .featu-site .header-top-one .top-right .phone a,
    .featu-site .header-top-one .top-right .hours .hours-btn {
        font-size: 11px;
    }

    .featu-site .header-top-one .top-right .hours .hours-btn {
        padding: 4px 10px;
    }

    .featu-site .header-top-one .header-top-social {
        display: none !important;
    }
}

@media only screen and (max-width: 420px) {
    .featu-site .header-top-one .top-left,
    .featu-site .header-top-one .top-right {
        width: 100% !important;
        justify-content: center;
    }

    .featu-site .header-top-one .top-right .phone,
    .featu-site .header-top-one .top-right .hours {
        border-left: 0;
        padding-left: 0;
    }
}

/* ---- Stakeholders directory + detail ---- */
.featu-site .featu-stakeholders-page,
.featu-site .featu-stakeholder-show {
    padding: 72px 0 90px;
    background:
        linear-gradient(180deg, #f7fbff 0%, #ffffff 48%, #f8fbff 100%);
}

.featu-site .featu-stakeholder-show .auto-container {
    max-width: 1080px;
}

.featu-site .featu-stakeholder-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 0 0 34px;
}

.featu-site .featu-stakeholder-filters button {
    border: 1px solid var(--featu-gray-100);
    background: #fff;
    color: var(--featu-navy);
    padding: 9px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: color var(--featu-transition), background var(--featu-transition), border-color var(--featu-transition), box-shadow var(--featu-transition);
}

.featu-site .featu-stakeholder-filters button:hover,
.featu-site .featu-stakeholder-filters button.is-active {
    background: var(--featu-navy);
    color: #fff;
    border-color: var(--featu-navy);
    box-shadow: var(--featu-shadow-sm);
}

.featu-site .featu-stakeholder-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.featu-site .featu-stakeholder-grid--related {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.featu-site .featu-stakeholder-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(11, 79, 134, 0.08);
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-sm);
    transition: transform var(--featu-transition), box-shadow var(--featu-transition), border-color var(--featu-transition);
}

.featu-site .featu-stakeholder-card:hover {
    transform: translateY(-6px);
    border-color: rgba(29, 126, 213, 0.25);
    box-shadow: var(--featu-shadow-lg);
}

.featu-site .featu-stakeholder-card[hidden] {
    display: none;
}

.featu-site .featu-stakeholder-card__media {
    height: 210px;
    padding: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(135deg, rgba(232, 244, 252, 0.78), rgba(255, 255, 255, 0.92)),
        #fff;
    border-bottom: 1px solid var(--featu-gray-100);
}

.featu-site .featu-stakeholder-card__media img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 160px;
    object-fit: contain;
}

.featu-site .featu-stakeholder-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 22px;
}

.featu-site .featu-stakeholder-card__badges,
.featu-site .featu-stakeholder-profile__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.featu-site .featu-stakeholder-card__badges span,
.featu-site .featu-stakeholder-profile__badges span {
    display: inline-block;
    padding: 5px 10px;
    border-radius: 4px;
    background: var(--featu-blue-pale);
    color: var(--featu-navy);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.45px;
}

.featu-site .featu-stakeholder-profile__badges {
    margin-bottom: 16px;
}

.featu-site .featu-stakeholder-profile__badges span {
    padding: 6px 11px;
    background: #eef7ff;
    color: var(--featu-blue);
    border: 1px solid #d7eaf8;
    border-radius: 999px;
}

.featu-site .featu-stakeholder-card h3 {
    margin: 0 0 8px;
    color: var(--featu-navy);
    font-size: 19px;
    line-height: 1.35;
}

.featu-site .featu-stakeholder-card h3 a {
    color: inherit;
    text-decoration: none;
}

.featu-site .featu-stakeholder-card h3 a:hover {
    color: var(--featu-blue);
}

.featu-site .featu-stakeholder-card__meta {
    margin: 0 0 12px;
    color: var(--featu-gray-500);
    font-size: 13px;
    font-weight: 600;
}

.featu-site .featu-stakeholder-card__text {
    margin: 0 0 18px;
    color: var(--featu-gray-700);
    font-size: 14px;
    line-height: 1.65;
    flex: 1;
}

.featu-site .featu-stakeholder-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: auto;
}

.featu-site .featu-stakeholder-card__actions a {
    color: var(--featu-blue);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.featu-site .featu-stakeholder-card__actions a:hover {
    color: var(--featu-navy-dark);
    text-decoration: underline;
}

.featu-site .featu-stakeholder-empty {
    max-width: 560px;
    margin: 0 auto;
    padding: 46px 28px;
    text-align: center;
    background: #fff;
    border-radius: var(--featu-radius);
    box-shadow: var(--featu-shadow-sm);
}

.featu-site .featu-stakeholder-profile {
    position: relative;
    display: grid;
    grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
    gap: 42px;
    align-items: center;
    padding: 38px;
    background: #fff;
    border: 1px solid #dce9f5;
    border-radius: 18px;
    box-shadow: none;
    overflow: hidden;
}

.featu-site .featu-stakeholder-profile::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 5px;
    background: linear-gradient(90deg, var(--featu-blue), #7cc6f4);
}

.featu-site .featu-stakeholder-profile__logo {
    min-height: 285px;
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7fbff;
    border: 1px solid #e2eef8;
    border-radius: 16px;
}

.featu-site .featu-stakeholder-profile__logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 240px;
    object-fit: contain;
}

.featu-site .featu-stakeholder-profile__content h2 {
    margin: 0 0 16px;
    color: var(--featu-navy);
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.featu-site .featu-stakeholder-profile__desc {
    max-width: 720px;
    margin: 0 0 28px;
    color: var(--featu-gray-700);
    font-size: 16.5px;
    line-height: 1.75;
}

.featu-site .featu-stakeholder-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.featu-site .featu-stakeholder-detail {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    min-height: 82px;
    padding: 18px;
    background: #f8fbff;
    border: 1px solid #e1edf7;
    border-radius: 14px;
    box-shadow: none;
}

.featu-site .featu-stakeholder-detail > span {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--featu-blue);
    background: #eaf6ff;
    border-radius: 12px;
}

.featu-site .featu-stakeholder-detail small {
    display: block;
    margin-bottom: 3px;
    color: var(--featu-gray-500);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.featu-site .featu-stakeholder-detail strong,
.featu-site .featu-stakeholder-detail a {
    color: var(--featu-navy);
    font-size: 14px;
    line-height: 1.45;
    word-break: break-word;
}

.featu-site .featu-stakeholder-profile__actions {
    margin-top: 24px;
}

.featu-site .featu-stakeholder-related {
    margin-top: 58px;
}

.featu-site .featu-stakeholder-show .featu-stakeholder-related .sec-title {
    margin-bottom: 28px;
}

.featu-site .featu-stakeholder-show .featu-stakeholder-card,
.featu-site .featu-stakeholder-show .featu-stakeholder-card:hover {
    box-shadow: none;
}

.featu-site .featu-stakeholder-show .featu-stakeholder-card:hover {
    transform: translateY(-2px);
}

@media (max-width: 991px) {
    .featu-site .featu-stakeholder-grid,
    .featu-site .featu-stakeholder-grid--related {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .featu-site .featu-stakeholder-profile {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

@media (max-width: 575px) {
    .featu-site .featu-stakeholders-page,
    .featu-site .featu-stakeholder-show {
        padding: 44px 0 62px;
    }

    .featu-site .featu-stakeholder-grid,
    .featu-site .featu-stakeholder-grid--related,
    .featu-site .featu-stakeholder-detail-grid {
        grid-template-columns: 1fr;
    }

    .featu-site .featu-stakeholder-profile {
        padding: 24px 18px 22px;
        border-radius: 14px;
    }

    .featu-site .featu-stakeholder-profile__logo {
        min-height: 210px;
        padding: 20px;
    }

    .featu-site .featu-stakeholder-profile__content h2 {
        font-size: 27px;
    }

    .featu-site .featu-stakeholder-detail {
        min-height: 0;
        padding: 16px;
    }
}

/* ---- Soft website cards ---- */
.featu-site .featu-union-card,
.featu-site .featu-about-union-card,
.featu-site .featu-pillar-card,
.featu-site .featu-mv-card,
.featu-site .featu-engage-card,
.featu-site .featu-objective-card,
.featu-site .featu-about-mv-card,
.featu-site .featu-home-aside-card,
.featu-site .featu-home-news-card,
.featu-site .featu-home-event-card,
.featu-site .featu-event-card,
.featu-site .featu-speaker-card,
.featu-site .featu-event-related__card,
.featu-site .leadership-card,
.featu-site .featu-about-leader-card,
.featu-site .featu-stakeholder-card,
.featu-site .featu-gallery-card,
.featu-site .news-block-five .inner-box,
.featu-site .event-block .inner-box,
.featu-site .event-block-two .inner-box,
.featu-site .featured-block-six .inner-box,
.featu-site .team-block .inner-box {
    background: #f6faff;
    border: 1px solid #dbe8f5;
    border-radius: 10px;
    box-shadow: none;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.featu-site .featu-union-card:hover,
.featu-site .featu-about-union-card:hover,
.featu-site .featu-pillar-card:hover,
.featu-site .featu-mv-card:hover,
.featu-site .featu-engage-card:hover,
.featu-site .featu-objective-card:hover,
.featu-site .featu-about-mv-card:hover,
.featu-site .featu-home-aside-card:hover,
.featu-site .featu-home-news-card:hover,
.featu-site .featu-home-event-card:hover,
.featu-site .featu-event-card:hover,
.featu-site .featu-speaker-card:hover,
.featu-site .featu-event-related__card:hover,
.featu-site .leadership-card:hover,
.featu-site .featu-about-leader-card:hover,
.featu-site .featu-stakeholder-card:hover,
.featu-site .featu-gallery-card:hover,
.featu-site .news-block-five .inner-box:hover,
.featu-site .event-block .inner-box:hover,
.featu-site .event-block-two .inner-box:hover,
.featu-site .featured-block-six .inner-box:hover,
.featu-site .team-block .inner-box:hover {
    background: #ffffff;
    border-color: rgba(29, 126, 213, 0.28);
    box-shadow: 0 14px 34px rgba(15, 40, 70, 0.08);
    transform: translateY(-4px);
}

.featu-site .featu-union-card,
.featu-site .featu-about-union-card,
.featu-site .featu-pillar-card,
.featu-site .featu-mv-card,
.featu-site .featu-engage-card,
.featu-site .featu-objective-card,
.featu-site .featu-about-mv-card,
.featu-site .featu-home-aside-card,
.featu-site .featu-speaker-card,
.featu-site .featu-event-related__card,
.featu-site .featured-block-six .inner-box {
    padding: 24px 22px;
}

.featu-site .featu-union-card,
.featu-site .featu-about-union-card {
    position: relative;
    padding-top: 58px;
    border-top: 1px solid #dbe8f5;
}

.featu-site .featu-union-card::before,
.featu-site .featu-about-union-card__icon,
.featu-site .featu-home-aside-card__icon,
.featu-site .featu-about-mv-card__icon,
.featu-site .featu-objective-card__icon,
.featu-site .featu-pillar-card .pillar-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: #eaf6ff;
    color: var(--featu-blue);
    font-size: 17px;
    line-height: 1;
}

.featu-site .featu-union-card::before {
    content: "\f19d";
    position: absolute;
    top: 20px;
    left: 22px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.featu-site .featu-union-card__meta {
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 14px;
}

.featu-site .featu-union-card__country,
.featu-site .featu-about-union-card__country,
.featu-site .featu-union-card__acronym,
.featu-site .leadership-card__role,
.featu-site .featu-home-news-card__meta,
.featu-site .featu-home-event-card__type,
.featu-site .featu-event-card__badge,
.featu-site .featu-event-related__type,
.featu-site .featu-stakeholder-card__badges span {
    color: var(--featu-blue);
    background: transparent;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.featu-site .featu-union-card__acronym,
.featu-site .leadership-card__role,
.featu-site .featu-stakeholder-card__badges span {
    padding: 0;
    border-radius: 0;
}

.featu-site .featu-union-card__title,
.featu-site .featu-about-union-card h3,
.featu-site .featu-pillar-card h4,
.featu-site .featu-mv-card h3,
.featu-site .featu-engage-card h4,
.featu-site .featu-objective-card h3,
.featu-site .featu-about-mv-card h3,
.featu-site .featu-home-aside-card h3,
.featu-site .featu-home-news-card h3,
.featu-site .featu-home-event-card h3,
.featu-site .featu-event-card h3,
.featu-site .featu-speaker-card__body h3,
.featu-site .featu-event-related__card h3,
.featu-site .leadership-card__name,
.featu-site .featu-about-leader-card h3,
.featu-site .featu-stakeholder-card h3 {
    color: var(--featu-navy);
    font-weight: 600;
}

.featu-site .featu-union-card__text,
.featu-site .featu-about-union-card p,
.featu-site .featu-pillar-card p,
.featu-site .featu-mv-card p,
.featu-site .featu-engage-card p,
.featu-site .featu-objective-card p,
.featu-site .featu-about-mv-card p,
.featu-site .featu-home-aside-card p,
.featu-site .featu-home-event-card p,
.featu-site .featu-event-card__excerpt,
.featu-site .featu-event-related__card p,
.featu-site .leadership-card__bio,
.featu-site .featu-about-leader-card p,
.featu-site .featu-stakeholder-card__text {
    color: var(--featu-gray-700);
}

.featu-site .featu-union-card__link,
.featu-site .featu-union-card__ext,
.featu-site .featu-about-union-card__link,
.featu-site .featu-home-aside-card a,
.featu-site .featu-home-link,
.featu-site .leadership-card__cta,
.featu-site .featu-stakeholder-card__actions a {
    color: var(--featu-blue);
    font-weight: 700;
}

.featu-site .featu-event-card__date,
.featu-site .featu-home-event-card__date,
.featu-site .featu-event-related__date {
    background: #eaf6ff;
    color: var(--featu-blue);
}

.featu-site .featu-event-card__badge {
    position: absolute;
    top: 14px;
    left: 14px;
    margin: 0;
    padding: 5px 10px;
    background: rgba(234, 246, 255, 0.96);
    border: 1px solid #dbe8f5;
    border-radius: 999px;
}

.featu-site .featu-visual-placeholder {
    width: 100%;
    height: 100%;
    min-height: 160px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 22px;
    text-align: center;
    background:
        radial-gradient(circle at 25% 20%, rgba(29, 126, 213, 0.14), transparent 30%),
        linear-gradient(135deg, #f3f9ff 0%, #ffffff 58%, #eef7ff 100%);
    border: 1px solid #dcebf7;
    border-radius: 14px;
}

.featu-site .featu-visual-placeholder__mark {
    width: 74px;
    height: 74px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--featu-navy);
    background: #fff;
    border: 1px solid #d8e8f5;
    border-radius: 18px;
    font-size: 21px;
    font-weight: 900;
    letter-spacing: 0.05em;
}

.featu-site .featu-visual-placeholder__label {
    max-width: 190px;
    color: var(--featu-blue);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1.35;
    text-transform: uppercase;
}

.featu-site .featu-visual-placeholder--large {
    min-height: 250px;
}

.featu-site .featu-visual-placeholder--large .featu-visual-placeholder__mark {
    width: 96px;
    height: 96px;
    border-radius: 24px;
    font-size: 28px;
}

/* ---- Development partners ---- */
.featu-site .featu-partners-page,
.featu-site .featu-partner-show {
    padding: 72px 0 92px;
    background: linear-gradient(180deg, #f7fbff 0%, #ffffff 46%, #f8fbff 100%);
}

.featu-site .featu-partners-page .auto-container,
.featu-site .featu-partner-show .auto-container {
    max-width: 1120px;
}

.featu-site .featu-partner-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 0 0 34px;
}

.featu-site .featu-partner-filters button {
    padding: 9px 16px;
    border: 1px solid #dbe8f5;
    border-radius: 999px;
    background: #fff;
    color: var(--featu-navy);
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: color var(--featu-transition), background var(--featu-transition), border-color var(--featu-transition);
}

.featu-site .featu-partner-filters button:hover,
.featu-site .featu-partner-filters button.is-active {
    background: var(--featu-navy);
    color: #fff;
    border-color: var(--featu-navy);
}

.featu-site .featu-partners-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.featu-site .featu-partner-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dbe8f5;
    border-radius: 16px;
    box-shadow: none;
    transition: transform var(--featu-transition), border-color var(--featu-transition), background var(--featu-transition);
}

.featu-site .featu-partner-card:hover {
    transform: translateY(-4px);
    background: #fbfdff;
    border-color: rgba(29, 126, 213, 0.32);
}

.featu-site .featu-partner-card[hidden] {
    display: none;
}

.featu-site .featu-partner-card__media {
    height: 220px;
    padding: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7fbff;
    border-bottom: 1px solid #e2eef8;
}

.featu-site .featu-partner-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

.featu-site .featu-partner-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 22px;
}

.featu-site .featu-partner-card__badges,
.featu-site .featu-partner-profile__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.featu-site .featu-partner-card__badges span,
.featu-site .featu-partner-profile__badges span {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border: 1px solid #d7eaf8;
    border-radius: 999px;
    background: #eef7ff;
    color: var(--featu-blue);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1;
    text-transform: uppercase;
}

.featu-site .featu-partner-card h3 {
    margin: 0 0 12px;
    color: var(--featu-navy);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.3;
}

.featu-site .featu-partner-card h3 a {
    color: inherit;
}

.featu-site .featu-partner-card h3 a:hover {
    color: var(--featu-blue);
}

.featu-site .featu-partner-card p {
    margin: 0 0 18px;
    color: var(--featu-gray-700);
    font-size: 15px;
    line-height: 1.65;
}

.featu-site .featu-partner-card__focus {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: auto;
    padding-top: 2px;
}

.featu-site .featu-partner-card__focus span {
    padding: 6px 9px;
    border-radius: 8px;
    background: #f3f8fd;
    color: var(--featu-gray-700);
    font-size: 12px;
    font-weight: 700;
}

.featu-site .featu-partner-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid #e6eff7;
}

.featu-site .featu-partner-card__actions a {
    color: var(--featu-blue);
    font-weight: 800;
}

.featu-site .featu-partner-empty {
    max-width: 560px;
    margin: 0 auto;
    padding: 46px 28px;
    text-align: center;
    background: #fff;
    border: 1px solid #dbe8f5;
    border-radius: 16px;
}

.featu-site .featu-partner-profile {
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
    gap: 42px;
    align-items: center;
    padding: 38px;
    background: #fff;
    border: 1px solid #dbe8f5;
    border-radius: 18px;
    box-shadow: none;
    overflow: hidden;
}

.featu-site .featu-partner-profile::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 5px;
    background: linear-gradient(90deg, var(--featu-blue), #7cc6f4);
}

.featu-site .featu-partner-profile__media {
    min-height: 320px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7fbff;
    border: 1px solid #e2eef8;
    border-radius: 16px;
}

.featu-site .featu-partner-profile__media img {
    width: 100%;
    height: 100%;
    max-height: 290px;
    object-fit: cover;
    border-radius: 12px;
}

.featu-site .featu-partner-profile__content h2 {
    margin: 0 0 16px;
    color: var(--featu-navy);
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.featu-site .featu-partner-profile__desc {
    max-width: 720px;
    margin: 0 0 26px;
    color: var(--featu-gray-700);
    font-size: 16.5px;
    line-height: 1.75;
}

.featu-site .featu-partner-focus {
    margin: 0 0 28px;
}

.featu-site .featu-partner-focus h3 {
    margin: 0 0 12px;
    color: var(--featu-navy);
    font-size: 17px;
    font-weight: 800;
}

.featu-site .featu-partner-focus__list {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.featu-site .featu-partner-focus__list span {
    padding: 8px 11px;
    border: 1px solid #dfeaf4;
    border-radius: 10px;
    background: #f8fbff;
    color: var(--featu-gray-700);
    font-size: 13px;
    font-weight: 700;
}

.featu-site .featu-partner-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.featu-site .featu-partner-detail {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    min-height: 82px;
    padding: 18px;
    background: #f8fbff;
    border: 1px solid #e1edf7;
    border-radius: 14px;
}

.featu-site .featu-partner-detail > span {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--featu-blue);
    background: #eaf6ff;
    border-radius: 12px;
}

.featu-site .featu-partner-detail small {
    display: block;
    margin-bottom: 3px;
    color: var(--featu-gray-500);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.featu-site .featu-partner-detail strong,
.featu-site .featu-partner-detail a {
    color: var(--featu-navy);
    font-size: 14px;
    line-height: 1.45;
    word-break: break-word;
}

.featu-site .featu-partner-related {
    margin-top: 58px;
}

@media (max-width: 991px) {
    .featu-site .featu-partners-grid,
    .featu-site .featu-partners-grid--related {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .featu-site .featu-partner-profile {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

@media (max-width: 575px) {
    .featu-site .featu-partners-page,
    .featu-site .featu-partner-show {
        padding: 44px 0 64px;
    }

    .featu-site .featu-partners-grid,
    .featu-site .featu-partners-grid--related,
    .featu-site .featu-partner-detail-grid {
        grid-template-columns: 1fr;
    }

    .featu-site .featu-partner-profile {
        padding: 24px 18px 22px;
        border-radius: 14px;
    }

    .featu-site .featu-partner-profile__media {
        min-height: 220px;
        padding: 16px;
    }

    .featu-site .featu-partner-profile__content h2 {
        font-size: 27px;
    }

    .featu-site .featu-partner-detail {
        min-height: 0;
        padding: 16px;
    }
}
