@media (max-width: 1180px) {
    .main-navigation > ul { gap: 5px; }
    .main-navigation .nav-link { font-size: .86rem; padding-inline: .66rem; }
    .brand strong { font-size: .96rem; }
    .site-logo { width: 86px; height: 86px; }
}

@media (max-width: 1024px) {
    .hero-grid,
    .split-grid,
    .featured-grid,
    .where-grid {
        grid-template-columns: 1fr;
    }
    .hero-section { min-height: auto; }
    .hero-community-visual {
        left: 12%;
        right: -6%;
        bottom: 3.5rem;
        height: min(48vw, 310px);
        opacity: .24;
    }
    .hero-emblem { min-height: 300px; }
    .hero-features-grid,
    .home-impact-grid,
    .work-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .hero-feature-item:nth-child(2) { border-right: 0; }
    .hero-feature-item:nth-child(-n+2) { border-bottom: 1px solid rgba(6, 43, 103, .10); }
    .card-grid,
    .cta-grid,
    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .impact-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .impact-card {
        border-right: 1px solid rgba(255, 255, 255, .16);
        border-bottom: 1px solid rgba(255, 255, 255, .16);
    }
}

@media (max-width: 991px) {
    :root { --header-height: 104px; }
    .header-inner {
        min-height: var(--header-height);
        position: relative;
    }
    .site-header.is-scrolled .header-inner { min-height: var(--header-height); }
    .site-logo,
    .site-header.is-scrolled .site-logo {
        width: 78px;
        height: 78px;
    }
    .brand { gap: .65rem; }
    .brand strong { font-size: .95rem; }
    .brand small { font-size: .72rem; }
    .mobile-nav-toggle { display: inline-flex; }
    .main-navigation {
        position: absolute;
        left: 0;
        right: 0;
        top: calc(100% + 1px);
        display: block;
        width: 100%;
        max-height: min(72vh, calc(100vh - var(--header-height) - 12px));
        overflow-y: auto;
        padding: .78rem;
        background: rgba(255, 255, 255, .98);
        border-top: 1px solid rgba(11, 45, 89, .08);
        box-shadow: 0 22px 48px rgba(11, 45, 89, .16);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-12px);
        transform-origin: top center;
        transition:
            opacity .24s ease,
            transform .28s cubic-bezier(.22, 1, .36, 1),
            visibility .28s ease;
        will-change: opacity, transform;
    }
    .main-navigation.open {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }
    .main-navigation > ul {
        align-items: stretch;
        flex-direction: column;
        gap: .25rem;
    }
    .main-navigation a,
    .main-navigation .nav-link {
        width: 100%;
        justify-content: space-between;
        padding: .92rem .85rem;
        line-height: 1.2;
    }
    .main-navigation .nav-link::after { display: none; }
    .has-dropdown { width: 100%; }
    .dropdown-menu {
        position: static;
        min-width: 0;
        max-height: 0;
        overflow: hidden;
        margin: 0;
        padding: 0 0 0 .55rem;
        border: 0;
        box-shadow: none;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-4px);
        transition:
            max-height .28s cubic-bezier(.22, 1, .36, 1),
            opacity .2s ease,
            transform .28s cubic-bezier(.22, 1, .36, 1),
            visibility .28s ease;
    }
    .has-dropdown.open > .dropdown-menu {
        max-height: var(--submenu-height, 280px);
        padding-bottom: .45rem;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .dropdown-menu a {
        background: var(--surface-alt);
        margin-top: .22rem;
        border-radius: 8px;
    }
    .hero-section {
        padding-top: 3.5rem;
        padding-bottom: 4.75rem;
    }
    .hero-title { font-size: clamp(42px, 8vw, 60px); }
    .hero-value-list { gap: .58rem; }
    .hero-value,
    .hero-value + .hero-value {
        margin-left: 0;
        padding-left: 0;
        border-left: 0;
    }
    .activity-details,
    .work-details {
        grid-template-columns: 1fr;
    }
    .work-details div:last-child { grid-column: auto; }
    .split-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 768px) {
    .container { width: min(100% - 1.5rem, 1180px); }
    .hero-features-grid,
    .home-impact-grid,
    .card-grid,
    .cta-grid,
    .footer-grid,
    .impact-grid {
        grid-template-columns: 1fr;
    }
    .hero-feature-item,
    .hero-feature-item:nth-child(2),
    .hero-feature-item:nth-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid rgba(6, 43, 103, .10);
    }
    .hero-feature-item:last-child { border-bottom: 0; }
    .impact-card {
        border-right: 0;
    }
    .hero-actions {
        align-items: stretch;
        flex-direction: column;
    }
    .hero-actions .btn { width: 100%; }
    .hero-copy { text-align: left; }
    .hero-value-list { align-items: flex-start; flex-direction: column; }
    .brand-panel,
    .activity-media,
    .where-map {
        min-height: 300px;
    }
    .footer-bottom .container {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 430px) {
    .container { width: min(100% - 1.1rem, 1180px); }
    .brand-text { max-width: 190px; }
    .brand strong { font-size: .86rem; }
    .brand small { font-size: .68rem; }
    .hero-title {
        font-size: clamp(38px, 11vw, 52px);
        line-height: 1.02;
        letter-spacing: -.7px;
    }
    .hero-description { font-size: 1rem; }
    .hero-community-visual {
        left: 0;
        right: -34%;
        bottom: 1.75rem;
        height: 220px;
        opacity: .14;
    }
    .hero-emblem,
    .brand-panel,
    .activity-media,
    .where-map {
        min-height: 265px;
    }
    .hero-card-logo {
        width: min(78%, 220px);
        height: clamp(142px, 42vw, 184px);
        margin-bottom: .4rem;
        padding: .7rem;
    }
    .hero-card-logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .hero-emblem strong { font-size: 3rem; }
    .hero-emblem small { font-size: .86rem; }
    .hero-features { margin-top: -18px; }
    .programme-card,
    .news-content,
    .cta-card {
        padding: 1.1rem;
    }
    .activity-details div,
    .work-details div {
        padding: .85rem;
    }
}

@media (max-width: 360px) {
    .brand-text { max-width: 160px; }
    .site-logo,
    .site-header.is-scrolled .site-logo {
        width: 68px;
        height: 68px;
    }
    .hero-title { font-size: 36px; }
    .btn { padding-inline: .9rem; }
}

/* About page responsive */
@media (max-width: 1024px) {
    .mission-vision-grid,
    .unique-grid {
        grid-template-columns: 1fr;
    }
    .about-card-grid,
    .service-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .about-banner-watermark {
        right: 1rem;
        top: 28%;
    }
}

@media (max-width: 768px) {
    .about-page-banner {
        padding: 3.5rem 0 4rem;
    }
    .about-banner-inner h1 {
        font-size: clamp(2.15rem, 9vw, 3.2rem);
    }
    .about-banner-shape-two {
        display: none;
    }
    .about-motto {
        grid-template-columns: 1fr;
        padding: 1.15rem;
    }
    .about-card-grid,
    .service-grid {
        grid-template-columns: 1fr;
    }
    .about-graphic-panel {
        min-height: 300px;
    }
    .about-panel-logo {
        width: 180px;
    }
    .about-info-card,
    .mission-card,
    .vision-card,
    .history-card {
        padding: 1.15rem;
    }
    .about-final-cta .btn {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .breadcrumb {
        font-size: .84rem;
    }
    .about-banner-watermark {
        display: none;
    }
    .about-page-banner .eyebrow,
    .about-page-banner .section-label {
        letter-spacing: .08em;
    }
    .about-graphic-panel {
        min-height: 270px;
        padding: 1.2rem;
    }
    .about-graphic-panel p {
        font-size: 1.35rem;
    }
    .unique-feature-item {
        align-items: flex-start;
        padding: .95rem;
    }
}

/* Complete About page responsive */
@media (max-width: 1024px) {
    .identity-grid,
    .service-grid,
    .location-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .about-banner-map {
        background-position: 96% 58%;
        background-size: min(58vw, 420px);
    }
}

@media (max-width: 768px) {
    .identity-grid,
    .service-grid,
    .location-card-grid {
        grid-template-columns: 1fr;
    }
    .about-banner-motto {
        align-items: flex-start;
        width: 100%;
    }
    .about-copy-block {
        text-align: left;
    }
}

@media (max-width: 430px) {
    .about-banner-logo,
    .about-banner-map {
        display: none;
    }
    .about-banner-motto {
        font-size: .92rem;
        line-height: 1.35;
    }
    .location-card {
        padding: .95rem;
    }
}

/* About Page Redesign Responsive */
@media (max-width: 1100px) {
    .about-hero-grid,
    .about-intro-grid,
    .who-grid {
        grid-template-columns: 1fr;
    }
    .about-hero-visual,
    .who-visual {
        min-height: 360px;
    }
    .about-page .mission-vision-grid {
        grid-template-columns: 1fr;
    }
    .values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .identity-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
    .about-page .container { width: min(100% - 1.5rem, 1220px); }
    .about-page .content-section { padding-block: 58px; }
    .about-hero { min-height: auto; }
    .about-hero-grid { padding-block: 3rem; }
    .about-hero h1 { font-size: clamp(2.15rem, 9vw, 3.25rem); }
    .about-hero-visual { min-height: 300px; }
    .about-service-badge { align-items: flex-start; }
    .about-banner-motto { width: 100%; align-items: flex-start; }
    .identity-grid,
    .values-grid {
        grid-template-columns: 1fr;
    }
    .about-cta .btn {
        width: 100%;
    }
    .about-cta .hero-actions { align-items: stretch; flex-direction: column; }
}

@media (max-width: 430px) {
    .about-page .container { width: min(100% - 1.1rem, 1220px); }
    .about-page .content-section { padding-block: 48px; }
    .about-hero-map,
    .about-hero-watermark { display: none; }
    .about-hero-visual,
    .who-visual { min-height: 260px; }
    .about-hero-visual { display: none; }
    .about-service-badge { font-size: .8rem; }
    .about-glance,
    .about-page .mission-card,
    .about-page .vision-card {
        padding: 1rem;
    }
    .glance-list div { padding: .7rem; }
    .who-visual p { font-size: 1.35rem; }
    .about-panel-icons { left: 1rem; top: 1rem; }
    .about-panel-icons i { width: 36px; height: 36px; }
}

@media (prefers-reduced-motion: reduce) {
    .about-hero-glow { animation: none !important; }
    .identity-card {
        transition: none !important;
    }
}

/* About hero banner reference layout */
@media (max-width: 1100px) {
    .about-hero {
        width: calc(100% - 32px);
        min-height: 540px;
        height: auto;
        padding: 42px 36px 38px;
    }
    .about-hero-grid {
        padding: 0;
    }
    .about-hero h1 {
        font-size: clamp(2.75rem, 4.4vw, 3.65rem);
    }
}

@media (max-width: 900px) {
    .about-hero {
        height: auto;
        min-height: auto;
    }
    .about-hero-grid {
        align-items: center;
    }
    .about-hero-copy {
        max-width: 720px;
        transform: none;
    }
}

@media (max-width: 768px) {
    .about-hero {
        width: calc(100% - 20px);
        margin: 10px auto;
        padding: 34px 22px 32px;
        border-radius: 16px;
        background-position: center bottom;
    }
    .about-hero::before {
        background: linear-gradient(
            180deg,
            rgba(3, 30, 68, .94) 0%,
            rgba(3, 30, 68, .82) 48%,
            rgba(3, 30, 68, .48) 100%
        );
    }
    .about-hero h1 {
        font-size: clamp(2.3rem, 9vw, 2.6rem);
        line-height: 1.02;
    }
    .about-hero-actions {
        flex-direction: column;
        margin-bottom: 0;
    }
    .about-hero-actions .btn {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .about-hero {
        width: calc(100% - 20px);
        padding: 24px 18px;
    }
    .about-hero .section-label {
        align-items: flex-start;
        gap: .65rem;
        letter-spacing: .1em;
    }
    .about-hero .section-label::before {
        width: 28px;
        margin-top: .45rem;
    }
    .about-hero-text {
        font-size: 1rem !important;
    }
}
/* About Organisation overview responsive */
@media (max-width: 1050px) {
    .about-overview {
        padding: 58px 38px;
    }
    .about-overview-inner {
        grid-template-columns: minmax(0, 1fr) 330px;
        gap: 36px;
    }
    .about-overview-copy h2 {
        font-size: clamp(2.55rem, 5vw, 3.7rem);
    }
}

@media (max-width: 850px) {
    .about-overview-inner {
        grid-template-columns: 1fr;
    }
    .about-overview-glance {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .about-overview {
        width: calc(100% - 20px);
        padding: 40px 22px;
        border-radius: 18px;
    }
    .about-overview-label {
        font-size: 1rem;
        margin-bottom: 24px;
    }
    .about-overview-copy h2 {
        font-size: clamp(2.35rem, 10vw, 2.65rem);
        line-height: 1.06;
    }
    .about-overview-copy p:not(.about-overview-label) {
        font-size: 1rem;
        line-height: 1.72;
    }
    .about-overview-glance {
        padding: 24px 18px;
    }
    .about-overview-row {
        grid-template-columns: 52px minmax(0, 1fr) 14px;
        gap: 12px;
        min-height: 82px;
        padding: 13px 12px;
    }
    .about-overview-icon {
        width: 52px;
        height: 52px;
        font-size: 1.35rem;
    }
    .about-overview-row > span:nth-child(2) {
        font-size: .95rem;
    }
    .about-overview-row-number mark {
        font-size: 1.75rem;
    }
}

@media (max-width: 430px) {
    .about-overview {
        padding: 36px 18px;
    }
    .about-overview-inner {
        gap: 28px;
    }
    .about-overview-glance h2 {
        font-size: 1.55rem;
    }
    .about-overview-row {
        grid-template-columns: 48px minmax(0, 1fr) 12px;
        gap: 10px;
    }
    .about-overview-icon {
        width: 48px;
        height: 48px;
    }
}

/* Who We Are simple layout responsive */
@media (max-width: 768px) {
    .who-we-are-section {
        width: calc(100% - 20px);
        margin-top: 20px;
        padding: 40px 22px;
        border-radius: 18px;
    }
    .who-we-are-label {
        font-size: 1rem;
    }
    .who-we-are-title {
        font-size: clamp(2.25rem, 9vw, 2.5rem);
    }
    .who-we-are-content > p {
        font-size: 1rem;
        line-height: 1.75;
    }
}
/* Mission and Vision compact responsive */
@media (max-width: 900px) {
    .mission-vision-section {
        padding: 40px 28px;
    }
    .mission-vision-grid {
        grid-template-columns: 1fr;
    }
    .mission-vision-card {
        min-height: 0;
        height: auto;
    }
}

@media (max-width: 768px) {
    .mission-vision-section {
        width: calc(100% - 20px);
        margin-top: 22px;
        padding: 36px 18px;
        border-radius: 18px;
    }
    .mission-vision-label {
        font-size: .9rem;
    }
    .mission-vision-intro h2 {
        font-size: clamp(2.15rem, 9vw, 2.4rem);
    }
    .mission-vision-grid {
        gap: 20px;
        margin-top: 30px;
    }
    .mission-vision-card {
        padding: 24px 20px;
    }
    .mission-vision-card i {
        width: 56px;
        height: 56px;
        font-size: 1.55rem;
    }
}
/* Values responsive */
@media (max-width: 1100px) {
    .values-section .values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .values-section {
        padding: 48px 28px 52px;
    }
}

@media (max-width: 768px) {
    .values-section {
        width: calc(100% - 20px);
        margin-top: 22px;
        padding: 40px 20px 42px;
        border-radius: 18px;
    }
    .values-heading {
        margin-bottom: 30px;
    }
    .values-kicker-icon {
        gap: 10px;
        margin-bottom: 14px;
    }
    .values-kicker-icon span {
        width: 30px;
    }
    .values-heading h2 {
        font-size: clamp(2.15rem, 9vw, 2.6rem);
    }
    .values-section .values-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .value-card {
        min-height: 0;
        padding: 26px 22px 32px;
    }
    .values-mission-panel {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 24px 22px;
        text-align: left;
    }
    .values-mission-icon {
        width: 60px;
        height: 60px;
        font-size: 1.55rem;
    }
}/* History simple responsive */
@media (max-width: 768px) {
    .history-section {
        width: calc(100% - 20px);
        margin-top: 22px;
        padding: 40px 22px;
        border-radius: 18px;
    }
    .history-label {
        font-size: 1rem;
    }
    .history-content h2 {
        font-size: clamp(2.25rem, 9vw, 2.5rem);
    }
    .history-content > p {
        font-size: 1rem;
        line-height: 1.75;
    }
}






/* Our Work landing responsive */
@media (max-width: 1180px) {
    .work-programme-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .work-hero {
        min-height: 520px;
        height: auto;
        padding: 44px 36px 40px;
        background-image:
            linear-gradient(180deg, rgba(4, 30, 68, .92) 0%, rgba(4, 30, 68, .76) 58%, rgba(4, 30, 68, .34) 100%),
            url('../images/work/our work.jpg');
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
    }
    .work-hero-inner {
        align-items: flex-start;
    }
    .work-programme-grid,
    .work-project-grid,
    .work-areas {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .work-areas .btn {
        grid-column: 1 / -1;
    }
}

@media (max-width: 768px) {
    .work-hero,
    .work-intro,
    .work-section,
    .work-areas,
}

@media (max-width: 430px) {
    .work-location-chips span {
        width: 100%;
        justify-content: center;
    }
}



@media (max-width: 850px) {
    .areas-operation-page .operations-process {
        padding: 40px 30px;
    }
    .areas-operation-page .operations-process__steps {
        grid-template-columns: 1fr;
        gap: 0;
        margin-top: 30px;
    }
    .areas-operation-page .operations-process__steps::before {
        left: 21px;
        right: auto;
        top: 0;
        bottom: 0;
        width: 2px;
        height: auto;
        background: linear-gradient(180deg, rgba(231, 154, 0, .20), rgba(8, 43, 99, .22), rgba(231, 154, 0, .20));
    }
    .areas-operation-page .operations-process__step {
        padding: 0 0 26px 66px;
    }
    .areas-operation-page .operations-process__step:last-child {
        padding-bottom: 0;
    }
    .areas-operation-page .operations-process__marker {
        left: 0;
        top: 0;
    }
}

@media (max-width: 768px) {
    .areas-operation-page .operations-process {
        width: calc(100% - 20px);
        margin: 22px auto;
        padding: 36px 22px;
        border-radius: 18px;
    }
    .areas-operation-page .operations-process h2 {
        font-size: clamp(2rem, 8vw, 2.2rem);
    }
    .areas-operation-page .operations-process__intro > p:last-child {
        font-size: 1rem;
    }
    .areas-operation-page .operations-process__step {
        padding-left: 58px;
    }
    .areas-operation-page .operations-process__marker {
        width: 42px;
        height: 42px;
    }
}
@media (max-width: 1180px) {
    .our-work-programmes-page .programme-areas-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .our-work-programmes-page .programme-areas-grid,
    .our-work-programmes-page .featured-projects-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .our-work-programmes-page .programme-areas-grid,
    .our-work-programmes-page .featured-projects-grid {
        grid-template-columns: 1fr;
    }
    .our-work-programmes-page .programme-area-card,
    .our-work-programmes-page .featured-project-card__content {
        padding: 20px;
    }
    .our-work-programmes-page .featured-project-card__media,
    .our-work-programmes-page .featured-project-card__image {
        height: 220px;
    }
}
/* News & Updates page responsive */
@media (max-width: 900px) {
    .news-hero {
        min-height: 300px;
        padding: 42px 36px 38px;
    }
    .news-hero-inner {
        min-height: 230px;
    }
    .news-listing {
        padding: 44px 34px 48px;
    }
    .news-page-grid {
        gap: 22px;
    }
}

@media (max-width: 768px) {
    .news-hero {
        width: calc(100% - 20px);
        min-height: auto;
        margin: 10px auto 22px;
        padding: 34px 22px 32px;
        border-radius: 16px;
    }
    .news-hero-inner {
        min-height: 210px;
    }
    .news-hero h1 {
        font-size: clamp(2.3rem, 9vw, 2.8rem);
    }
    .news-listing {
        width: calc(100% - 20px);
        margin-bottom: 28px;
        padding: 38px 22px 42px;
        border-radius: 18px;
    }
    .news-section-heading {
        margin-bottom: 28px;
        text-align: left;
    }
    .news-section-heading .work-label::after {
        margin-left: 0;
    }
    .news-section-heading h2 {
        font-size: clamp(2.05rem, 8vw, 2.45rem);
    }
    .news-page-grid {
        grid-template-columns: 1fr;
    }
    .news-page-card__image {
        min-height: 200px;
    }
    .news-page-card__content {
        padding: 22px;
    }
}

@media (max-width: 430px) {
    .news-hero {
        padding: 26px 18px;
    }
    .news-hero-inner {
        min-height: 190px;
    }
    .news-hero .section-label {
        letter-spacing: .1em;
    }
    .news-listing {
        padding: 34px 18px 38px;
    }
    .news-page-card__image {
        min-height: 190px;
        padding: 22px;
    }
    .news-page-card__content {
        padding: 20px;
    }
    .news-page-card__link {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .impact-section {
        padding: 3.2rem 0;
    }
    .home-impact-intro {
        margin-bottom: 1.6rem;
        text-align: left;
    }
    .home-impact-item {
        min-height: 0;
        padding: 22px 20px 24px;
    }
}
@media (max-width: 991px) {
    .home-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: .85rem;
    }
    .home-value-item:nth-child(odd) {
        border-left: 0;
    }
    .home-value-item:nth-child(n+3) {
        padding-top: .9rem;
        border-top: 1px solid rgba(6, 43, 103, .1);
    }
}

@media (max-width: 768px) {
    .home-prefooter-main {
        padding: 2.05rem 0 1.58rem;
    }
    .home-prefooter-cta .section-label {
        gap: .48rem;
        font-size: .76rem;
        letter-spacing: .1em;
    }
    .home-prefooter-cta .section-label::before,
    .home-prefooter-cta .section-label::after {
        width: 20px;
    }
    .home-prefooter-cta h2 {
        font-size: clamp(1.85rem, 7.5vw, 2.55rem);
    }
    .home-prefooter-button {
        width: 100%;
        max-width: 320px;
    }
    .home-values-strip {
        padding: .9rem 0 1rem;
    }
}

@media (max-width: 560px) {
    .home-values-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .home-value-item,
    .home-value-item:nth-child(n+3) {
        padding: .78rem 0;
        border-left: 0;
        border-top: 0;
    }
    .home-value-item + .home-value-item {
        border-left: 0;
        border-top: 1px solid rgba(6, 43, 103, .1);
    }
}

@media (max-width: 430px) {
    .home-prefooter-cta-inner {
        width: min(100% - 1.1rem, 1180px);
    }
    .home-prefooter-cta .section-label::before,
    .home-prefooter-cta .section-label::after {
        display: none;
    }
    .home-prefooter-cta h2 {
        font-size: clamp(1.72rem, 9vw, 2.22rem);
    }
}
/* Get Involved page responsive */
@media (max-width: 1050px) {
    .involvement-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .why-involved-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .get-involved-hero {
        min-height: auto;
        padding: 3.8rem 0 4.2rem;
    }
    .get-involved-hero h1 {
        font-size: clamp(2.5rem, 10vw, 3.25rem);
    }
    .get-involved-hero-actions {
        align-items: stretch;
        flex-direction: column;
    }
    .get-involved-hero-actions .btn {
        width: 100%;
    }
    .get-involved-intro {
        padding: 3rem 0 2.2rem;
    }
    .get-involved-intro-inner {
        text-align: left;
    }
    .involvement-options {
        padding-bottom: 3.3rem;
    }
    .involvement-card-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .involvement-card {
        min-height: 0;
        padding: 26px 22px 28px;
    }
    .involvement-card .btn {
        width: 100%;
    }
    .why-involved-section {
        padding: 3.4rem 0;
    }
    .why-involved-point {
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 14px;
        padding: 18px;
    }
    .why-involved-point span {
        width: 52px;
        height: 52px;
    }
    .get-involved-final-cta {
        padding: 3.5rem 0;
    }
    .get-involved-final-cta .section-label {
        gap: .48rem;
        font-size: .78rem;
        letter-spacing: .1em;
    }
    .get-involved-final-cta .section-label::before,
    .get-involved-final-cta .section-label::after {
        width: 20px;
    }
    .get-involved-final-cta h2 {
        font-size: clamp(2rem, 9vw, 2.6rem);
    }
    .get-involved-final-cta .btn {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .get-involved-hero-dots,
    .get-involved-hero-shape-two {
        display: none;
    }
    .get-involved-hero-copy > p:not(.section-label) {
        font-size: 1rem;
    }
    .why-involved-point {
        grid-template-columns: 1fr;
    }
    .get-involved-final-cta .section-label::before,
    .get-involved-final-cta .section-label::after {
        display: none;
    }
}
/* What Makes Us Different responsive */
@media (max-width: 900px) {
    .difference-section {
        padding: 44px 30px;
    }
}

@media (max-width: 768px) {
    .difference-section {
        width: calc(100% - 20px);
        margin-top: 22px;
        padding: 38px 20px 42px;
        border-radius: 18px;
    }
    .difference-heading {
        margin-bottom: 26px;
    }
    .difference-heading h2 {
        font-size: clamp(2.1rem, 9vw, 2.5rem);
    }
    .difference-item {
        grid-template-columns: 58px minmax(0, 1fr);
        gap: 16px;
        padding: 22px 18px;
    }
    .difference-icon {
        width: 58px;
        height: 58px;
        font-size: 1.45rem;
    }
}

@media (max-width: 430px) {
    .difference-label {
        align-items: flex-start;
        gap: 10px;
        font-size: .82rem;
    }
    .difference-label::before {
        width: 24px;
        margin-top: .42rem;
    }
    .difference-item {
        grid-template-columns: 1fr;
    }
}
/* Organization section responsive */
@media (max-width: 768px) {
    .organization-feature-item {
        grid-template-columns: 50px minmax(0, 1fr);
        gap: 14px;
        padding: 16px;
    }
    .organization-feature-item span {
        width: 50px;
        height: 50px;
        font-size: 1.22rem;
    }
}

@media (max-width: 430px) {
    .organization-feature-item {
        grid-template-columns: 1fr;
    }
}
/* Contact page responsive */
@media (max-width: 991px) {
    .contact-grid,
    .contact-map-panel {
        grid-template-columns: 1fr;
    }
    .contact-hero {
        padding-top: 4rem;
    }
}

@media (max-width: 575px) {
    .contact-hero {
        padding: 3.4rem 0 3rem;
    }
    .contact-section {
        padding: 3rem 0;
    }
    .contact-info-card,
    .contact-form-card,
    .contact-map-panel {
        padding: 1.1rem;
    }
    .contact-info-item {
        grid-template-columns: 42px minmax(0, 1fr);
        padding: .9rem;
    }
    .contact-info-item > span {
        width: 42px;
        height: 42px;
    }
    .contact-form {
        grid-template-columns: 1fr;
    }
    .contact-submit,
    .contact-final-cta .btn {
        width: 100%;
    }
    .contact-map-frame,
    .contact-map-frame iframe {
        min-height: 230px;
    }
}

/* Homepage reference hero responsive refinements */
@media (max-width: 1180px) {
    .site-logo,
    .site-header.is-scrolled .site-logo {
        width: 72px;
        height: 72px;
    }
    .hero-section {
        min-height: clamp(540px, 68vh, 660px);
    }
    .hero-features-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .hero-title {
        font-size: clamp(52px, 7vw, 82px);
    }
    .hero-message-badge {
        width: min(320px, 34vw);
        right: 1.4rem;
    }
    .hero-feature-item {
        padding: 1.45rem;
        grid-template-columns: 68px minmax(0, 1fr);
    }
    .feature-icon {
        width: 68px;
        height: 68px;
        font-size: 1.75rem;
    }
}

@media (max-width: 991px) {
    :root { --header-height: 86px; }
    .site-logo,
    .site-header.is-scrolled .site-logo {
        width: 64px;
        height: 64px;
    }
    .hero-section {
        min-height: 590px;
        padding: 68px 0 126px;
    }
    .hero-carousel .hero-title {
        max-width: 430px;
        font-size: clamp(25px, 4.4vw, 34px);
    }
    .hero-carousel .hero-copy {
        max-width: min(470px, calc(100vw - 3rem));
        padding: .8rem 1.15rem;
    }
    .hero-carousel-arrow {
        width: 42px;
        height: 42px;
    }
    .hero-section::after {
        width: 330px;
        height: 330px;
        right: -150px;
        bottom: -145px;
        border-width: 24px;
    }
    .hero-curve-logo {
        right: 26px;
        bottom: 20px;
        width: 104px;
    }
    .hero-grid {
        grid-template-columns: 1fr;
        min-height: 380px;
    }
    .hero-title {
        max-width: 560px;
        font-size: clamp(48px, 10vw, 72px);
    }
    .hero-description {
        font-size: 1.16rem;
    }
    .hero-message-badge {
        right: 1rem;
        bottom: 16px;
        width: min(310px, calc(100% - 2rem));
        min-height: 118px;
        padding: 1.2rem 1.25rem;
        grid-template-columns: 46px minmax(0, 1fr);
    }
    .hero-message-badge i {
        font-size: 1.9rem;
    }
    .hero-features {
        margin-top: -62px;
        padding-bottom: 30px;
    }
    .hero-features-grid {
        grid-template-columns: 1fr;
        gap: .85rem;
    }
    .hero-feature-item,
    .hero-feature-item:nth-child(2),
    .hero-feature-item:nth-child(-n+2) {
        min-height: 132px;
        border: 1px solid rgba(11, 45, 89, .08);
    }
}

@media (max-width: 768px) {
    .hero-section {
        min-height: 540px;
        padding: 54px 0 116px;
    }
    .hero-carousel .hero-title {
        max-width: 380px;
        font-size: clamp(23px, 6vw, 31px);
    }
    .hero-carousel .hero-copy {
        max-width: min(420px, calc(100vw - 2.5rem));
        padding: .72rem 1rem;
        background: rgba(255, 255, 255, .86);
    }
    .hero-slide:first-child .hero-grid {
        justify-content: flex-start;
        padding-left: clamp(1.25rem, 6vw, 3rem);
        padding-right: 1.25rem;
    }
    .hero-carousel-dots {
        bottom: 68px;
    }
    .hero-grid {
        min-height: 350px;
    }
    .hero-title {
        font-size: clamp(42px, 13vw, 58px);
    }
    .hero-gold-rule {
        width: 58px;
        margin: 1.1rem 0 1rem;
    }
    .hero-description {
        max-width: 360px;
        font-size: 1.05rem;
    }
    .hero-actions {
        align-items: stretch;
        flex-direction: column;
        max-width: 330px;
        gap: .62rem;
        margin-top: 1.2rem;
    }
    .hero-actions .btn {
        width: 100%;
    }
    .hero-message-badge {
        position: relative;
        right: auto;
        bottom: auto;
        width: min(100%, 330px);
        margin-top: 1.55rem;
        border-left-width: 10px;
        border-radius: 72px 10px 10px 72px;
        box-shadow: 0 18px 40px rgba(3, 24, 61, .20);
    }
    .hero-curve-logo {
        right: 18px;
        bottom: 18px;
        width: 86px;
    }
    .hero-wave {
        height: 96px;
    }
    .hero-features {
        margin-top: -48px;
        padding-bottom: 24px;
    }
    .hero-feature-item {
        grid-template-columns: 58px minmax(0, 1fr);
        gap: .85rem;
        min-height: 0;
        padding: 1.25rem;
    }
    .feature-icon {
        width: 58px;
        height: 58px;
        font-size: 1.45rem;
    }
    .home-motto-strip {
        padding: 1.35rem 0;
    }
    .home-motto-strip-inner {
        justify-content: flex-start;
        gap: .85rem;
    }
    .home-motto-strip p {
        font-size: 1.08rem;
    }
}

@media (max-width: 430px) {
    :root { --header-height: 78px; }
    .site-logo,
    .site-header.is-scrolled .site-logo {
        width: 56px;
        height: 56px;
    }
    .brand-text { max-width: 184px; }
    .hero-section {
        min-height: 520px;
        padding: 44px 0 104px;
    }
    .hero-carousel-arrow {
        top: auto;
        bottom: 62px;
        width: 38px;
        height: 38px;
        transform: none;
    }
    .hero-carousel-arrow:hover,
    .hero-carousel-arrow:focus-visible {
        transform: scale(1.04);
    }
    .hero-carousel-prev { left: 1rem; }
    .hero-carousel-next { right: 1rem; }
    .hero-carousel-dots {
        bottom: 74px;
    }
    .hero-curve-logo {
        right: 14px;
        bottom: 18px;
        width: 68px;
    }
    .hero-carousel .hero-copy {
        max-width: calc(100vw - 2rem);
        padding: .65rem .9rem;
    }
    .hero-carousel .hero-title {
        max-width: 300px;
        font-size: clamp(21px, 6.6vw, 27px);
    }
    .hero-title {
        font-size: clamp(38px, 15vw, 48px);
    }
    .hero-description br {
        display: none;
    }
    .hero-message-badge {
        grid-template-columns: 38px minmax(0, 1fr);
        min-height: 104px;
        padding: 1rem 1.05rem;
    }
    .hero-message-badge i {
        font-size: 1.6rem;
    }
    .hero-message-badge p {
        font-size: .95rem;
    }
    .hero-feature-item {
        grid-template-columns: 1fr;
        text-align: left;
    }
    .home-motto-strip-inner {
        align-items: flex-start;
    }
}

/* Restored About page hero responsiveness: isolated from homepage hero */
@media (max-width: 1100px) {
    .about-page .about-hero {
        min-height: 480px;
        padding: 46px 38px;
        background-position: center center;
    }
    .about-page .about-hero h1 {
        font-size: clamp(2.7rem, 5vw, 3.7rem);
    }
}

@media (max-width: 768px) {
    .about-page .about-hero {
        width: calc(100% - 20px);
        min-height: 430px;
        margin: 10px auto 0;
        padding: 36px 22px;
        border-radius: 18px;
        background-position: center center;
    }
    .about-page .about-hero::before {
        background: linear-gradient(
            180deg,
            rgba(3, 30, 68, .95) 0%,
            rgba(3, 30, 68, .84) 54%,
            rgba(3, 30, 68, .58) 100%
        );
    }
    .about-page .about-hero::after {
        right: -110px;
        top: 18px;
        opacity: .28;
    }
    .about-page .about-hero-grid {
        align-items: center;
        padding: 0;
    }
    .about-page .about-hero-copy {
        max-width: 680px;
    }
    .about-page .about-hero h1 {
        font-size: clamp(2.35rem, 9vw, 3rem);
        line-height: 1.02;
    }
    .about-page .about-hero-text {
        max-width: 560px;
        font-size: 1rem !important;
    }
    .about-page .about-hero-actions {
        align-items: stretch;
        flex-direction: column;
        max-width: 340px;
    }
    .about-page .about-hero-actions .btn {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .about-page .about-hero {
        min-height: 400px;
        padding: 30px 18px;
    }
    .about-page .about-hero .section-label {
        align-items: flex-start;
        gap: .65rem;
        font-size: .72rem;
        letter-spacing: .1em;
    }
    .about-page .about-hero .section-label::before {
        width: 26px;
        margin-top: .42rem;
    }
    .about-page .about-hero h1 {
        font-size: clamp(2.05rem, 11vw, 2.55rem);
    }
}
/* Footer reference responsive layout */
@media (max-width: 1180px) {
    .site-footer .container {
        width: min(100% - 3rem, 1180px);
    }
    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 1.85rem;
    }
    .footer-column,
    .footer-column:first-child,
    .footer-column:last-child {
        padding: 0 1.8rem;
    }
    .footer-column:nth-child(odd) {
        padding-left: 0;
    }
    .footer-column:nth-child(even) {
        padding-right: 0;
    }
    .footer-column:not(:first-child)::before {
        display: none;
    }
    .footer-column:nth-child(even)::before {
        display: block;
        top: .2rem;
        bottom: .2rem;
    }
    .footer-column:nth-child(n+3) {
        padding-top: 1.15rem;
        border-top: 1px solid rgba(246, 185, 26, .18);
    }
}

@media (max-width: 768px) {
    .site-footer {
        padding-top: 1.9rem;
    }
    .site-footer .container {
        width: min(100% - 1.5rem, 1180px);
    }
    .footer-grid {
        grid-template-columns: 1fr;
        row-gap: 0;
    }
    .footer-column,
    .footer-column:first-child,
    .footer-column:last-child,
    .footer-column:nth-child(odd),
    .footer-column:nth-child(even) {
        padding: 0;
    }
    .footer-column:not(:first-child)::before,
    .footer-column:nth-child(even)::before {
        display: none;
    }
    .footer-column + .footer-column {
        padding-top: .9rem;
        margin-top: 1.2rem;
        border-top: 1px solid rgba(246, 185, 26, .2);
    }
    .footer-brand .site-logo {
        width: 78px;
        height: 78px;
    }
    .footer-brand strong {
        font-size: 1.28rem;
    }
    .site-footer h3 {
        font-size: 1.2rem;
        margin-bottom: 1rem;
    }
    .site-footer p,
    .site-footer li,
    .footer-link-list a {
        font-size: .98rem;
    }
    .footer-social-links a {
        width: 48px;
        height: 48px;
    }
    .footer-bottom {
        margin-top: 1.7rem;
        padding: .78rem 0;
    }
    .footer-bottom .container,
    .footer-bottom-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: .58rem;
    }
    .footer-bottom-right {
        gap: .85rem;
    }
}

@media (max-width: 430px) {
    .site-footer .container {
        width: min(100% - 1.1rem, 1180px);
    }
    .footer-brand {
        align-items: flex-start;
        flex-direction: column;
        gap: .58rem;
    }
    .footer-contact-list li {
        grid-template-columns: 34px minmax(0, 1fr);
    }
    .footer-bottom-right {
        align-items: flex-start;
        flex-direction: column;
        gap: .62rem;
    }
}
/* Gallery page responsive layout */
@media (max-width: 991px) {
    .gallery-hero {
        padding: 2.8rem 0 2.35rem;
    }
    .gallery-section {
        padding: 3rem 0 2.8rem;
    }
    .gallery-photo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .gallery-panel-wrap::before {
        left: -1.4rem;
        right: -1.4rem;
        height: 78%;
    }
    .gallery-moments-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .gallery-lightbox-dialog figure {
        grid-template-columns: 1fr;
    }
    .gallery-lightbox-image-wrap {
        min-height: 280px;
        max-height: 56vh;
    }
    .gallery-lightbox-image-wrap img {
        max-height: 56vh;
    }
    .gallery-lightbox-arrow {
        top: 40%;
    }
    .gallery-lightbox-prev {
        left: .55rem;
    }
    .gallery-lightbox-next {
        right: .55rem;
    }
}

@media (max-width: 640px) {
    .gallery-hero {
        padding: 2.35rem 0 2rem;
    }
    .gallery-hero h1 {
        font-size: clamp(2rem, 10vw, 2.85rem);
    }
    .gallery-hero p:last-child,
    .gallery-heading p:last-child {
        font-size: .98rem;
    }
    .gallery-section {
        padding: 2.6rem 0 2.35rem;
    }
    .gallery-heading {
        margin-bottom: 1.05rem;
    }
    .gallery-heading h2 {
        font-size: clamp(1.85rem, 9vw, 2.55rem);
    }
    .gallery-filters {
        justify-content: flex-start;
        gap: .45rem;
        overflow-x: auto;
        padding-bottom: .2rem;
        scrollbar-width: none;
    }
    .gallery-filters::-webkit-scrollbar {
        display: none;
    }
    .gallery-filter {
        flex: 0 0 auto;
        padding: .52rem .75rem;
        font-size: .82rem;
    }
    .gallery-panel-wrap {
        margin-top: 1.35rem;
    }
    .gallery-panel-wrap::before {
        left: -.75rem;
        right: -.75rem;
        height: 88%;
    }
    .gallery-photo-grid {
        grid-template-columns: 1fr;
        gap: .55rem;
    }
    .gallery-photo-frame {
        aspect-ratio: 16 / 11;
    }
    .gallery-photo-title {
        font-size: .88rem;
    }
    .gallery-more-action {
        margin-top: 1.45rem;
    }
    .gallery-moments-section {
        padding: 2.35rem 0 2.6rem;
    }
    .gallery-moments-strip {
        grid-template-columns: 1fr;
        gap: .9rem;
    }
    .gallery-lightbox {
        padding: .65rem;
    }
    .gallery-lightbox-dialog {
        padding: .7rem;
    }
    .gallery-lightbox-image-wrap {
        min-height: 200px;
        max-height: 52vh;
    }
    .gallery-lightbox-image-wrap img {
        max-height: 52vh;
    }
    .gallery-lightbox-dialog figcaption {
        padding: .15rem 0 0;
    }
    .gallery-lightbox-dialog h3 {
        padding-right: 2.8rem;
        font-size: 1.35rem;
    }
    .gallery-lightbox-close {
        top: .55rem;
        right: .55rem;
        width: 40px;
        height: 40px;
    }
    .gallery-lightbox-arrow {
        width: 42px;
        height: 42px;
    }
}

/* Gallery page proportion refinements */
@media (max-width: 991px) {
    .gallery-hero {
        padding: 1.75rem 0 1.55rem;
    }
    .gallery-section {
        padding: 2rem 0 2.25rem;
    }
    .gallery-filters {
        margin-bottom: .95rem;
    }
    .gallery-panel-wrap {
        max-width: 720px;
        padding: .45rem .35rem;
    }
    .gallery-panel-wrap::before {
        left: -1.8rem;
        right: -1.8rem;
        height: 70%;
    }
    .gallery-photo-grid {
        gap: .42rem;
        padding: .42rem;
    }
    .gallery-photo-frame {
        aspect-ratio: 16 / 10;
    }
    .gallery-moments-section {
        padding: 1.85rem 0 2.2rem;
    }
}

@media (max-width: 640px) {
    .gallery-hero {
        padding: 1.6rem 0 1.35rem;
    }
    .gallery-hero h1 {
        font-size: clamp(1.9rem, 8.5vw, 2.45rem);
    }
    .gallery-hero p:last-child,
    .gallery-heading p:last-child {
        margin-top: .5rem;
        font-size: .94rem;
        line-height: 1.55;
    }
    .gallery-section {
        padding: 1.85rem 0 2rem;
    }
    .gallery-heading {
        margin-bottom: .75rem;
    }
    .gallery-heading h2 {
        font-size: clamp(1.7rem, 8vw, 2.2rem);
    }
    .gallery-filters {
        gap: .34rem;
        margin-bottom: .85rem;
    }
    .gallery-filter {
        min-height: 30px;
        padding: .32rem .62rem;
        font-size: .79rem;
    }
    .gallery-panel-wrap {
        margin-top: .9rem;
        padding: .35rem .28rem;
    }
    .gallery-panel-wrap::before {
        left: -.65rem;
        right: -.65rem;
        height: 82%;
    }
    .gallery-photo-grid {
        gap: .38rem;
        padding: .38rem;
    }
    .gallery-photo-frame {
        aspect-ratio: 16 / 10;
    }
    .gallery-photo-title {
        position: static;
        display: none;
    }
    .gallery-more-action {
        margin-top: .85rem;
    }
    .gallery-more-button {
        min-height: 44px;
        min-width: 150px;
    }
    .gallery-moments-section {
        padding: 1.7rem 0 1.95rem;
    }
    .gallery-moments-section .gallery-heading {
        margin-bottom: .75rem;
    }
    .gallery-moments-strip {
        gap: .68rem;
    }
    .gallery-moment-card p {
        margin-top: .4rem;
    }
}

/* Dedicated Vocational Training gallery grid */
@media (max-width: 991px) {
    .gallery-vocational-section {
        padding: 1.8rem 0 2.05rem;
    }
    .gallery-vocational-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 720px;
        gap: .45rem;
    }
}

@media (max-width: 640px) {
    .gallery-vocational-section {
        padding: 1.65rem 0 1.85rem;
    }
    .gallery-vocational-section .gallery-heading {
        margin-bottom: .72rem;
    }
    .gallery-vocational-grid {
        grid-template-columns: 1fr;
        gap: .38rem;
    }
}

/* Vocational Training yellow panel treatment */
@media (max-width: 991px) {
    .gallery-vocational-panel-wrap {
        max-width: 720px;
        padding: .45rem .35rem;
    }
    .gallery-vocational-panel-wrap::before {
        left: -1.8rem;
        right: -1.8rem;
        height: 70%;
    }
    .gallery-vocational-grid {
        padding: .42rem;
    }
}

@media (max-width: 640px) {
    .gallery-vocational-panel-wrap {
        padding: .35rem .28rem;
    }
    .gallery-vocational-panel-wrap::before {
        left: -.65rem;
        right: -.65rem;
        height: 82%;
    }
    .gallery-vocational-grid {
        padding: .38rem;
    }
}

/* Gallery hero and main gallery reference refinement */
@media (max-width: 991px) {
    .gallery-hero {
        min-height: 230px;
        padding: 2.25rem 0 2.55rem;
    }
    .gallery-hero::before {
        left: -130px;
        width: 300px;
        border-right-width: 4px;
    }
    .gallery-hero::after {
        right: -96px;
        bottom: -104px;
        width: 220px;
        height: 220px;
    }
    .gallery-hero-inner::before {
        left: -112px;
        top: -8px;
        width: 58px;
        height: 58px;
    }
    .gallery-section .gallery-heading p:last-child {
        max-width: 560px;
    }
    .gallery-filters {
        max-width: 690px;
        margin-bottom: 1rem;
    }
    .gallery-panel-wrap {
        max-width: 720px;
        padding: .5rem .42rem;
    }
    .gallery-panel-wrap::before {
        left: -2rem;
        right: -2rem;
        height: 72%;
    }
}

@media (max-width: 640px) {
    .gallery-hero {
        min-height: 215px;
        padding: 1.95rem 0 2.35rem;
    }
    .gallery-hero::before {
        left: -158px;
        top: -52px;
        width: 245px;
        height: calc(100% + 104px);
        opacity: .96;
    }
    .gallery-hero::after {
        right: -118px;
        bottom: -108px;
        width: 190px;
        height: 190px;
        border-width: 3px;
    }
    .gallery-hero-inner::before {
        display: none;
    }
    .gallery-hero-inner::after {
        right: 4px;
        bottom: -26px;
        width: 13px;
        height: 13px;
    }
    .gallery-hero .section-label::before,
    .gallery-hero .section-label::after,
    .gallery-heading .section-label::before,
    .gallery-heading .section-label::after {
        width: 26px;
    }
    .gallery-hero h1 {
        font-size: clamp(2rem, 10vw, 2.75rem);
    }
    .gallery-hero + .gallery-section::before {
        width: 82px;
        height: 4px;
    }
    .gallery-filters {
        justify-content: center;
        gap: .38rem;
        margin: .78rem auto .9rem;
        overflow-x: visible;
    }
    .gallery-filter {
        min-height: 32px;
        padding: .34rem .62rem;
        font-size: .78rem;
    }
    .gallery-panel-wrap {
        padding: .4rem .34rem;
    }
    .gallery-panel-wrap::before {
        left: -.75rem;
        right: -.75rem;
        height: 82%;
    }
    .gallery-photo-grid {
        border-radius: 4px;
        gap: .38rem;
        padding: .38rem;
    }
    .gallery-photo-frame {
        border-radius: 4px;
    }
}

/* Dedicated Income Generating Projects gallery grid */
@media (max-width: 991px) {
    .gallery-igp-section {
        padding: 1.8rem 0 2.05rem;
    }
    .gallery-igp-panel-wrap {
        max-width: 720px;
        padding: .5rem .42rem;
    }
    .gallery-igp-panel-wrap::before {
        left: -2rem;
        right: -2rem;
        height: 72%;
    }
    .gallery-igp-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .45rem;
        padding: .42rem;
    }
}

@media (max-width: 640px) {
    .gallery-igp-section {
        padding: 1.65rem 0 1.85rem;
    }
    .gallery-igp-section .gallery-heading {
        margin-bottom: .72rem;
    }
    .gallery-igp-panel-wrap {
        padding: .4rem .34rem;
    }
    .gallery-igp-panel-wrap::before {
        left: -.75rem;
        right: -.75rem;
        height: 82%;
    }
    .gallery-igp-grid {
        grid-template-columns: 1fr;
        gap: .38rem;
        padding: .38rem;
        border-radius: 4px;
    }
}

/* Programme detail pages */
@media (max-width: 991px) {
    .programme-detail-hero-inner,
    .programme-detail-main {
        grid-template-columns: 1fr;
    }
    .programme-detail-hero figure {
        max-width: 620px;
    }
    .programme-photo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .programme-detail-hero {
        width: calc(100% - 18px);
        margin-top: 10px;
        padding: 1.55rem;
        border-radius: 18px;
    }
    .programme-detail-hero h1 {
        font-size: clamp(2rem, 11vw, 2.8rem);
    }
    .programme-detail-main,
    .programme-photo-section,
    .programme-detail-cta {
        width: calc(100% - 18px);
        margin-top: 18px;
        border-radius: 18px;
    }
    .programme-detail-main,
    .programme-photo-section,
    .programme-detail-cta {
        padding: 1.35rem;
    }
    .programme-photo-grid {
        grid-template-columns: 1fr;
        gap: .5rem;
    }
    .programme-lightbox p {
        width: calc(100% - 2rem);
        text-align: center;
    }
}

/* Approved programme detail layout */
@media (max-width: 1180px) {
    .programme-hero-highlights {
        grid-template-columns: 1fr;
    }
    .programme-detail-content {
        grid-template-columns: 1fr;
    }
    .programme-action-panel .programme-photo-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .programme-detail-hero {
        min-height: 0;
    }
    .programme-detail-hero-inner {
        grid-template-columns: 1fr;
    }
    .programme-hero-highlights {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .programme-action-panel .programme-photo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .programme-hero-highlights,
    .programme-support-list ul,
    .programme-action-panel .programme-photo-grid {
        grid-template-columns: 1fr;
    }
    .programme-hero-highlight {
        grid-template-columns: 38px minmax(0, 1fr);
        padding: .78rem;
    }
    .programme-hero-highlight i {
        width: 38px;
        height: 38px;
    }
    .programme-detail-content {
        width: calc(100% - 18px);
        margin-top: 18px;
        padding: 1.35rem;
        border-radius: 18px;
    }
    .programme-photo-item span {
        display: none;
    }
}

/* Final compact programme detail hero and highlights */
@media (max-width: 991px) {
    .programme-detail-hero {
        padding: 1.7rem 1.45rem 1.85rem;
    }
    .programme-detail-hero figure {
        max-width: 680px;
        aspect-ratio: 16 / 10;
    }
    .programme-hero-highlights {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .programme-hero-highlight {
        grid-template-columns: 30px minmax(0, 1fr);
        padding: 0 .65rem;
    }
    .programme-hero-highlight i {
        width: 30px;
        height: 30px;
        font-size: .92rem;
    }
}

@media (max-width: 700px) {
    .programme-detail-hero {
        padding: 1.35rem;
    }
    .programme-detail-hero h1 {
        font-size: clamp(1.95rem, 9.8vw, 2.75rem);
    }
    .programme-hero-highlights {
        grid-template-columns: 1fr;
        gap: .72rem;
        padding-top: .9rem;
    }
    .programme-hero-highlight,
    .programme-hero-highlight:first-child {
        grid-template-columns: 34px minmax(0, 1fr);
        padding: 0;
    }
    .programme-hero-highlight + .programme-hero-highlight {
        padding-top: .72rem;
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, .18);
    }
    .programme-hero-highlight i {
        width: 34px;
        height: 34px;
    }
}

/* Final programme hero height correction */
@media (min-width: 701px) and (max-width: 991px) {
    .programme-detail-hero-inner {
        grid-template-columns: minmax(0, 1.05fr) minmax(280px, .72fr);
        gap: 1.25rem;
        align-items: center;
    }
    .programme-detail-hero {
        padding: 1.55rem 1.35rem;
    }
    .programme-detail-hero h1 {
        font-size: clamp(2rem, 4.8vw, 3rem);
    }
    .programme-detail-hero-copy > p:not(.work-label) {
        font-size: .96rem;
        line-height: 1.5;
    }
    .programme-detail-hero figure {
        max-width: none;
        aspect-ratio: 4 / 3;
    }
    .programme-hero-highlights {
        grid-template-columns: 1fr;
        gap: .56rem;
        margin-top: .95rem;
        padding-top: .85rem;
    }
    .programme-hero-highlight,
    .programme-hero-highlight:first-child {
        grid-template-columns: 30px minmax(0, 1fr);
        padding: 0;
    }
    .programme-hero-highlight + .programme-hero-highlight {
        padding-top: .56rem;
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, .18);
    }
    .programme-hero-highlight p {
        font-size: .76rem;
        line-height: 1.28;
    }
}

@media (max-width: 700px) {
    .programme-detail-hero {
        padding: 1.15rem;
    }
    .programme-detail-hero-inner {
        gap: 1rem;
    }
    .programme-detail-hero-copy > p:not(.work-label) {
        font-size: .95rem;
        line-height: 1.48;
    }
    .programme-detail-hero figure {
        aspect-ratio: 16 / 8.6;
        border-width: 3px;
        border-radius: 14px;
    }
    .programme-hero-highlights {
        gap: .58rem;
        margin-top: .85rem;
        padding-top: .78rem;
    }
    .programme-hero-highlight + .programme-hero-highlight {
        padding-top: .58rem;
    }
    .programme-hero-highlight h2 {
        font-size: .86rem;
    }
    .programme-hero-highlight p {
        font-size: .76rem;
        line-height: 1.28;
    }
}
/* Final programme mobile compactness */
@media (min-width: 701px) and (max-width: 991px) {
    .programme-detail-hero h1 {
        font-size: clamp(1.88rem, 4.1vw, 2.55rem);
        line-height: 1;
    }
    .programme-detail-hero-copy > p:not(.work-label) {
        font-size: .9rem;
        line-height: 1.42;
    }
    .programme-detail-hero figure {
        aspect-ratio: 16 / 9.4;
    }
    .programme-hero-highlights {
        margin-top: .72rem;
        padding-top: .66rem;
    }
}
@media (max-width: 700px) {
    .programme-detail-hero h1 {
        font-size: clamp(1.72rem, 8.4vw, 2.28rem);
        line-height: 1.02;
    }
    .programme-detail-hero-copy > p:not(.work-label) {
        font-size: .88rem;
        line-height: 1.42;
    }
    .programme-detail-hero figure {
        aspect-ratio: 16 / 7.8;
    }
    .programme-hero-highlights {
        gap: .46rem;
        margin-top: .66rem;
        padding-top: .62rem;
    }
    .programme-hero-highlight + .programme-hero-highlight {
        padding-top: .46rem;
    }
    .programme-hero-highlight h2 {
        font-size: .82rem;
    }
    .programme-hero-highlight p {
        font-size: .72rem;
        line-height: 1.24;
    }
}
/* Final long programme title mobile tuning */
@media (max-width: 700px) {
    .programme-detail-hero {
        padding: 1rem;
    }
    .programme-detail-hero h1 {
        margin-bottom: .5rem;
        font-size: clamp(1.58rem, 7.7vw, 2.08rem);
    }
    .programme-detail-hero-copy > p:not(.work-label) {
        font-size: .85rem;
        line-height: 1.36;
    }
    .programme-detail-hero figure {
        aspect-ratio: 16 / 7.2;
    }
    .programme-hero-highlights {
        margin-top: .54rem;
        padding-top: .52rem;
    }
    .programme-hero-highlight {
        grid-template-columns: 30px minmax(0, 1fr);
        gap: .44rem;
    }
    .programme-hero-highlight i {
        width: 30px;
        height: 30px;
        font-size: .86rem;
    }
}
/* Programme action panel yellow background responsive */
@media (max-width: 700px) {
    .programme-action-panel .programme-photo-grid {
        padding: .58rem;
    }
    .programme-action-panel .programme-photo-grid::before {
        inset: 0 -.42rem;
        border-radius: 10px;
    }
}
/* Our Work compact photo CTA responsive */
@media (max-width: 991px) {
    .work-page-cta-inner {
        grid-template-columns: minmax(0, 52fr) minmax(280px, 48fr);
        min-height: 410px;
    }
    .work-page-cta-copy {
        padding: 2.25rem 1.45rem 2.25rem 0;
    }
    .work-page-cta h2 {
        font-size: clamp(2.38rem, 5vw, 2.75rem);
    }
    .work-page-cta p {
        font-size: .98rem;
        line-height: 1.55;
    }
    .work-page-cta-photo img {
        min-height: 410px;
    }
}
@media (max-width: 768px) {
    .work-page-cta-inner {
        grid-template-columns: 1fr;
        min-height: 0;
        width: min(100% - 1.5rem, 1220px);
    }
    .work-page-cta-copy {
        padding: 2.35rem 0 1.45rem;
        text-align: left;
    }
    .work-page-cta h2 {
        font-size: clamp(2rem, 8.6vw, 2.25rem);
    }
    .work-page-cta p {
        max-width: none;
        margin-top: .9rem;
    }
    .work-page-cta .hero-actions {
        flex-direction: column;
        align-items: stretch;
        margin-top: 1.15rem;
    }
    .work-page-cta .btn {
        width: 100%;
    }
    .work-page-cta-photo {
        min-height: 245px;
        border-left: 0;
        border-top: 4px solid #ffc72c;
        border-radius: 16px 16px 0 0;
        clip-path: none;
    }
    .work-page-cta-photo img {
        min-height: 245px;
        max-height: 300px;
    }
}
@media (max-width: 430px) {
    .work-page-cta-copy {
        padding-top: 2rem;
    }
    .work-page-cta h2 {
        font-size: clamp(2rem, 9.2vw, 2.22rem);
    }
    .work-page-cta-photo,
    .work-page-cta-photo img {
        min-height: 200px;
    }
}
/* Shared compact pre-footer photo CTA responsive */
@media (max-width: 991px) {
    .cta-photo-cta-inner {
        grid-template-columns: minmax(0, 55fr) minmax(270px, 45fr);
        min-height: 300px;
    }
    .cta-photo-cta-copy {
        padding: 1.45rem 1.2rem 1.45rem 0;
    }
    .about-cta.cta-photo-cta h2 {
        font-size: clamp(38px, 5vw, 44px);
    }
    .about-cta.cta-photo-cta p {
        font-size: 15px;
        line-height: 1.55;
    }
    .cta-photo-cta-photo img {
        min-height: 300px;
    }
}
@media (max-width: 768px) {
    .cta-photo-cta-inner {
        grid-template-columns: 1fr;
        width: min(100% - 1.5rem, 1220px);
        min-height: 0;
    }
    .cta-photo-cta-copy {
        padding: 1.55rem 0 1rem;
    }
    .about-cta.cta-photo-cta h2 {
        font-size: clamp(32px, 8.8vw, 36px);
    }
    .about-cta.cta-photo-cta p {
        max-width: none;
        margin-top: .75rem;
    }
    .about-cta.cta-photo-cta .hero-actions {
        flex-direction: column;
        align-items: stretch;
        margin-top: 1rem;
    }
    .about-cta.cta-photo-cta .btn {
        width: 100%;
    }
    .cta-photo-cta-photo {
        min-height: 200px;
        border-left: 0;
        border-top: 4px solid #ffc72c;
        border-radius: 16px 16px 0 0;
        clip-path: none;
    }
    .cta-photo-cta-photo::before {
        display: none;
    }
    .cta-photo-cta-photo img {
        min-height: 200px;
        max-height: 245px;
    }
}
@media (max-width: 430px) {
    .cta-photo-cta-copy {
        padding-top: 1.35rem;
    }
    .cta-photo-cta-photo,
    .cta-photo-cta-photo img {
        min-height: 190px;
    }
}
/* Reference-style curved pre-footer CTA responsive */
@media (max-width: 991px) {
    .about-cta.cta-photo-cta {
        min-height: 400px;
    }
    .cta-photo-cta-inner {
        grid-template-columns: minmax(0, 58%) minmax(0, 42%);
        min-height: 400px;
    }
    .cta-photo-cta-copy {
        padding: 2.4rem 1.6rem 2.4rem clamp(1.6rem, 3.8vw, 2.5rem);
    }
    .about-cta.cta-photo-cta h2 {
        font-size: clamp(38px, 5.2vw, 44px);
        line-height: 1.06;
    }
    .about-cta.cta-photo-cta p {
        font-size: 16px;
        line-height: 1.6;
    }
    .about-cta.cta-photo-cta .btn {
        min-height: 52px;
        padding-inline: 24px;
    }
    .cta-photo-cta-photo {
        right: -70px;
        width: 48vw;
        min-width: 390px;
    }
    .cta-photo-cta-photo img {
        min-height: 400px;
    }
}
@media (max-width: 768px) {
    .about-cta.cta-photo-cta {
        min-height: 0;
    }
    .cta-photo-cta-inner {
        display: grid;
        grid-template-columns: 1fr;
        width: min(100% - 1.5rem, 1220px);
        min-height: 0;
    }
    .cta-photo-cta-copy {
        max-width: none;
        width: 100%;
        padding: 2.25rem 0 1.35rem;
    }
    .cta-photo-cta-copy::before {
        margin-bottom: .95rem;
    }
    .about-cta.cta-photo-cta h2 {
        font-size: clamp(32px, 8.8vw, 36px);
        letter-spacing: -.4px;
    }
    .about-cta.cta-photo-cta p {
        max-width: none;
        margin-top: .9rem;
        font-size: 16px;
        line-height: 1.58;
    }
    .about-cta.cta-photo-cta .hero-actions {
        flex-direction: column;
        align-items: stretch;
        gap: .85rem;
        margin-top: 1.15rem;
    }
    .about-cta.cta-photo-cta .btn {
        width: 100%;
        min-height: 52px;
    }
    .cta-photo-cta-photo {
        position: relative;
        right: auto;
        width: 100%;
        min-width: 0;
        min-height: 250px;
        border-radius: 42% 42% 0 0 / 18% 18% 0 0;
        clip-path: none;
    }
    .cta-photo-cta-photo::before {
        left: 0;
        right: 0;
        top: -4px;
        bottom: auto;
        width: auto;
        height: 5px;
        border-left: 0;
        border-radius: 999px;
        background: #ffc72c;
    }
    .cta-photo-cta-photo::after {
        display: none;
    }
    .cta-photo-cta-photo img {
        min-height: 250px;
        max-height: 310px;
    }
}
@media (max-width: 430px) {
    .cta-photo-cta-copy {
        padding-top: 2rem;
    }
    .about-cta.cta-photo-cta h2 {
        font-size: clamp(31px, 9vw, 35px);
    }
    .cta-photo-cta-photo,
    .cta-photo-cta-photo img {
        min-height: 225px;
    }
}
/* Complete reference pre-footer CTA responsive */
@media (max-width: 991px) {
    .prefooter-cta-blue,
    .complete-prefooter-cta .cta-photo-cta-inner,
    .complete-prefooter-cta .cta-photo-cta-photo img {
        min-height: 400px;
    }
    .complete-prefooter-cta .cta-photo-cta-copy {
        padding: 2.35rem 1.35rem 2.35rem clamp(1.5rem, 3.6vw, 2.4rem);
    }
    .about-cta.complete-prefooter-cta h2 {
        font-size: clamp(38px, 5.2vw, 44px);
        line-height: 1.06;
    }
    .about-cta.complete-prefooter-cta .cta-photo-cta-copy p {
        font-size: 16px;
        line-height: 1.6;
    }
    .about-cta.complete-prefooter-cta .btn {
        min-height: 52px;
        padding-inline: 24px;
    }
    .complete-prefooter-cta .cta-photo-cta-photo {
        right: -70px;
        width: 48vw;
        min-width: 390px;
    }
    .prefooter-values-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 1.15rem;
    }
    .prefooter-value-item {
        padding: .75rem 1rem;
    }
    .prefooter-value-item + .prefooter-value-item {
        border-left: 0;
    }
    .prefooter-value-item:nth-child(even) {
        border-left: 1px solid rgba(7, 85, 181, .12);
    }
    .prefooter-value-item:nth-child(n+3) {
        border-top: 1px solid rgba(7, 85, 181, .12);
    }
}
@media (max-width: 768px) {
    .prefooter-cta-blue,
    .complete-prefooter-cta .cta-photo-cta-inner {
        min-height: 0;
    }
    .complete-prefooter-cta .cta-photo-cta-inner {
        display: grid;
        grid-template-columns: 1fr;
        width: min(100% - 1.5rem, 1220px);
    }
    .complete-prefooter-cta .cta-photo-cta-copy {
        max-width: none;
        width: 100%;
        padding: 2.15rem 0 1.35rem;
    }
    .about-cta.complete-prefooter-cta h2 {
        font-size: clamp(32px, 8.8vw, 36px);
        letter-spacing: -.4px;
    }
    .about-cta.complete-prefooter-cta .cta-photo-cta-copy p {
        max-width: none;
        margin-top: .9rem;
        font-size: 16px;
        line-height: 1.58;
    }
    .about-cta.complete-prefooter-cta .hero-actions {
        flex-direction: column;
        align-items: stretch;
        gap: .85rem;
        margin-top: 1.15rem;
    }
    .about-cta.complete-prefooter-cta .btn {
        width: 100%;
        min-height: 52px;
    }
    .complete-prefooter-cta .cta-photo-cta-photo {
        position: relative;
        right: auto;
        width: 100%;
        min-width: 0;
        min-height: 245px;
        border-radius: 42% 42% 0 0 / 18% 18% 0 0;
        clip-path: none;
    }
    .complete-prefooter-cta .cta-photo-cta-photo::before {
        left: 0;
        right: 0;
        top: -4px;
        bottom: auto;
        width: auto;
        height: 5px;
        border-left: 0;
        border-radius: 999px;
        background: #ffc72c;
    }
    .complete-prefooter-cta .cta-photo-cta-photo::after {
        display: none;
    }
    .complete-prefooter-cta .cta-photo-cta-photo img {
        min-height: 245px;
        max-height: 310px;
    }
    .prefooter-cta-lower {
        padding-bottom: 58px;
    }
    .prefooter-values-panel {
        width: min(92%, 680px);
        margin-top: -18px;
    }
    .prefooter-mission-inner {
        flex-direction: column;
        gap: .75rem;
    }
}
@media (max-width: 560px) {
    .prefooter-values-panel {
        grid-template-columns: 1fr;
        padding: 1rem;
        border-radius: 18px;
    }
    .prefooter-value-item,
    .prefooter-value-item:nth-child(even),
    .prefooter-value-item:nth-child(n+3) {
        border-left: 0;
        border-top: 0;
    }
    .prefooter-value-item + .prefooter-value-item {
        border-top: 1px solid rgba(7, 85, 181, .12);
    }
    .prefooter-value-item {
        grid-template-columns: 48px minmax(0, 1fr);
        padding: .9rem .45rem;
    }
    .prefooter-value-icon {
        width: 48px;
        height: 48px;
        font-size: 1.25rem;
    }
}
@media (max-width: 430px) {
    .complete-prefooter-cta .cta-photo-cta-copy {
        padding-top: 1.9rem;
    }
    .about-cta.complete-prefooter-cta h2 {
        font-size: clamp(31px, 9vw, 35px);
    }
    .complete-prefooter-cta .cta-photo-cta-photo,
    .complete-prefooter-cta .cta-photo-cta-photo img {
        min-height: 220px;
    }
    .prefooter-mission-strip {
        padding: 30px 16px 38px;
    }
}
/* Final pre-footer values cleanup responsive */
@media (max-width: 991px) {
    .complete-prefooter-cta .prefooter-values-panel {
        padding: 24px 22px;
    }
    .complete-prefooter-cta .prefooter-value-item + .prefooter-value-item {
        border-left: 0;
    }
    .complete-prefooter-cta .prefooter-value-item:nth-child(even) {
        border-left: 1px solid rgba(11, 46, 109, .12);
    }
    .complete-prefooter-cta .prefooter-value-item:nth-child(n+3) {
        border-top: 1px solid rgba(11, 46, 109, .12);
        padding-top: 1rem;
    }
}
@media (max-width: 560px) {
    .complete-prefooter-cta .prefooter-cta-lower {
        padding-bottom: 28px;
    }
    .complete-prefooter-cta .prefooter-values-panel {
        width: min(92%, 680px);
        padding: 18px 16px;
    }
    .complete-prefooter-cta .prefooter-value-item,
    .complete-prefooter-cta .prefooter-value-item:nth-child(even),
    .complete-prefooter-cta .prefooter-value-item:nth-child(n+3) {
        border-left: 0;
        border-top: 0;
        padding: .85rem .25rem;
    }
    .complete-prefooter-cta .prefooter-value-item + .prefooter-value-item {
        border-top: 1px solid rgba(11, 46, 109, .12);
    }
    .complete-prefooter-cta .prefooter-cream-transition {
        height: 30px;
    }
}
/* Final photo curve and CTA button spacing responsive */
@media (max-width: 768px) {
    .about-cta.complete-prefooter-cta .hero-actions {
        margin-top: 10px;
        margin-bottom: 34px;
    }
    .complete-prefooter-cta .cta-photo-cta-photo img {
        position: static;
        width: 100%;
        height: 100%;
        min-height: 245px;
        clip-path: none;
    }
}
@media (max-width: 430px) {
    .complete-prefooter-cta .cta-photo-cta-photo img {
        min-height: 220px;
    }
}
/* Completed News article pages responsive */
@media (max-width: 900px) {
    .news-article {
        padding: 42px 34px 48px;
    }
}
@media (max-width: 768px) {
    .news-article-hero h1 {
        font-size: clamp(2.05rem, 8.4vw, 2.65rem);
    }
    .news-article {
        width: calc(100% - 20px);
        margin-bottom: 28px;
        padding: 34px 22px 40px;
        border-radius: 18px;
    }
    .news-page-card__image.has-photo img {
        min-height: 200px;
    }
    .news-article-featured-image {
        margin-bottom: 28px;
        border-radius: 14px;
    }
    .news-article-inline-image {
        margin: 26px 0 30px;
        border-radius: 14px;
    }
    .news-article-body h2 {
        font-size: clamp(1.42rem, 6vw, 1.85rem);
    }
    .news-article-body p {
        font-size: 1rem;
        line-height: 1.72;
    }
}
@media (max-width: 430px) {
    .news-page-card__image.has-photo img {
        min-height: 190px;
    }
    .news-article {
        padding: 30px 18px 36px;
    }
    .news-article-back {
        width: 100%;
    }
}
/* Homepage donors and partners responsive */
@media (max-width: 1100px) {
    .partners-logo-panel {
        max-width: 880px;
        padding-inline: 3rem;
    }
    .partners-logo-panel::before,
    .partners-logo-panel::after {
        width: 42px;
        height: 220px;
    }
    .partners-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        max-width: 760px;
        gap: .85rem;
        padding: 24px;
    }
    .partner-logo-item:nth-child(n) {
        grid-column: span 2;
    }
}
@media (max-width: 768px) {
    .partners-section {
        padding: 2.75rem 0 3.1rem;
    }
    .partners-heading {
        margin-bottom: 1.45rem;
        text-align: center;
    }
    .partners-heading h2 {
        font-size: clamp(2rem, 8vw, 2.65rem);
    }
    .partners-heading .section-label::after {
        margin-left: 0;
    }
    .partners-logo-panel {
        max-width: 560px;
        padding: .2rem 1rem;
    }
    .partners-logo-panel::before,
    .partners-logo-panel::after {
        width: 24px;
        height: 170px;
    }
    .partners-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 500px;
        gap: .72rem;
        padding: 18px;
        border-radius: 18px;
    }
    .partner-logo-item:nth-child(n) {
        grid-column: span 1;
    }
    .partner-logo-box {
        min-height: 126px;
        padding: 18px;
    }
    .partner-logo-box img {
        max-width: 84%;
        max-height: 92px;
    }
    .partner-logo-item:nth-child(5) .partner-logo-box img,
    .partner-logo-item:nth-child(7) .partner-logo-box img {
        max-width: 92%;
    }
}
@media (max-width: 430px) {
    .partners-section::before,
    .partners-section::after,
    .partners-logo-panel::before,
    .partners-logo-panel::after {
        display: none;
    }
    .partners-logo-panel {
        padding-inline: 0;
    }
    .partners-grid {
        gap: .6rem;
        padding: 14px;
        border-radius: 16px;
    }
    .partner-logo-box {
        min-height: 108px;
        padding: 14px;
        border-radius: 12px;
    }
    .partner-logo-box img {
        max-height: 80px;
    }
}
/* Homepage Where We Work redesign responsive */
@media (max-width: 1024px) {
    .where-layout {
        grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
        gap: 1rem;
    }
    .where-map-panel {
        min-height: 430px;
    }
    .where-info-card,
    .where-office-card {
        padding: 1.1rem;
    }
    .where-info-card {
        min-height: 142px;
    }
}

@media (max-width: 991px) {
    .where-layout {
        grid-template-columns: 1fr;
    }
    .where-map-panel {
        min-height: 390px;
    }
    .where-map-panel img {
        max-height: 360px;
    }
}

@media (max-width: 768px) {
    .where-section {
        padding: 2.9rem 0 4.8rem;
    }
    .where-heading {
        margin-bottom: 1.45rem;
    }
    .where-info-grid {
        grid-template-columns: 1fr;
    }
    .where-info-card {
        min-height: 118px;
    }
    .where-office-card {
        align-items: flex-start;
    }
    .where-wave {
        height: 54px;
    }
}

@media (max-width: 430px) {
    .where-heading h2 {
        font-size: clamp(2rem, 10vw, 2.45rem);
    }
    .where-heading > p {
        font-size: .98rem;
    }
    .where-map-panel {
        min-height: 300px;
        padding: .8rem;
        border-radius: 16px;
    }
    .where-map-panel img {
        max-height: 280px;
    }
    .where-info-card,
    .where-office-card {
        gap: .82rem;
        padding: 1rem;
        border-radius: 15px;
    }
    .where-info-icon {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
    }
    .where-info-card p,
    .where-office-card p {
        font-size: 1rem;
    }
}

/* Restored homepage impact/activity/news/get-involved responsive layouts */
@media (max-width: 1024px) {
    .home-impact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .card-grid,
    .cta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .home-impact-grid,
    .card-grid,
    .cta-grid,
    .featured-grid {
        grid-template-columns: 1fr;
    }
    .home-impact-item {
        min-height: 0;
    }
    .activity-photo {
        max-height: none;
    }
    .activity-details {
        grid-template-columns: 1fr;
    }
    .news-image {
        aspect-ratio: 16 / 10;
    }
    .cta-card {
        min-height: 0;
    }
}

@media (max-width: 430px) {
    .home-impact-icon,
    .cta-card i {
        width: 50px;
        height: 50px;
        font-size: 1.45rem;
    }
    .activity-report,
    .news-content,
    .cta-card,
    .home-impact-item {
        padding: 1rem;
    }
}

/* Homepage Get Involved redesign responsive */
@media (max-width: 1024px) {
    .cta-section {
        padding-bottom: 6.75rem;
    }
    .cta-section .cta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 2.4rem;
    }
    .get-involved-column + .get-involved-column {
        border-left: 0;
    }
    .get-involved-column:nth-child(even) {
        border-left: 1px solid rgba(6, 59, 143, .14);
    }
    .get-involved-column:nth-child(3) {
        grid-column: 1 / -1;
        width: min(50%, 420px);
        margin-inline: auto;
        border-left: 0;
    }
    .get-involved-plane {
        top: 48px;
        right: 1.5rem;
        width: 210px;
    }
}

@media (max-width: 768px) {
    .cta-section {
        padding-top: 3.8rem;
        padding-bottom: 6rem;
    }
    .cta-section .section-heading {
        margin-bottom: 1.9rem;
    }
    .cta-section .cta-grid {
        grid-template-columns: 1fr;
        gap: 2.2rem;
    }
    .get-involved-column,
    .get-involved-column:nth-child(even),
    .get-involved-column:nth-child(3) {
        width: 100%;
        max-width: 440px;
        margin-inline: auto;
        padding-inline: 1rem;
        border-left: 0;
    }
    .get-involved-column + .get-involved-column {
        padding-top: 2rem;
        border-top: 1px solid rgba(6, 59, 143, .12);
    }
    .get-involved-media {
        width: min(76%, 245px);
    }
    .get-involved-plane {
        top: 38px;
        right: .8rem;
        width: 150px;
        opacity: .65;
    }
}

@media (max-width: 430px) {
    .cta-section {
        padding-bottom: 5.25rem;
    }
    .cta-section .section-heading h2 {
        font-size: 2rem;
    }
    .get-involved-column,
    .get-involved-column:nth-child(even),
    .get-involved-column:nth-child(3) {
        padding-inline: .25rem;
    }
    .get-involved-number {
        right: .25rem;
        font-size: 48px;
    }
    .get-involved-media {
        width: min(82%, 220px);
    }
    .get-involved-icon {
        width: 62px;
        height: 62px;
        font-size: 1.45rem;
    }
    .get-involved-button {
        width: 100%;
    }
    .get-involved-wave {
        height: 92px;
    }
}

/* Homepage Get Involved compact approved responsive */
@media (max-width: 1024px) {
    .cta-section {
        padding: 42px 0;
    }
    .get-involved-compact {
        grid-template-columns: 1fr;
        gap: 1.8rem;
    }
    .get-involved-copy {
        max-width: 760px;
    }
    .cta-section .cta-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .get-involved-column:nth-child(3) {
        grid-column: auto;
        width: auto;
        margin-inline: 0;
    }
    .get-involved-action:nth-child(even),
    .get-involved-action + .get-involved-action {
        border-left: 1px solid rgba(6, 59, 143, .18);
    }
}

@media (max-width: 768px) {
    .cta-section {
        padding: 36px 0;
    }
    .get-involved-compact {
        gap: 1.6rem;
    }
    .cta-section .get-involved-copy h2 {
        font-size: clamp(2rem, 8vw, 2.4rem);
    }
    .cta-section .cta-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        display: grid;
        grid-template-columns: 58px minmax(0, 1fr);
        column-gap: .95rem;
        align-items: center;
        padding: 1rem 0;
        border-left: 0;
    }
    .get-involved-action + .get-involved-action {
        border-top: 1px solid rgba(6, 59, 143, .14);
        border-left: 0;
    }
    .get-involved-icon {
        grid-row: span 2;
        width: 58px;
        height: 58px;
        margin: 0;
        font-size: 1.45rem;
    }
    .get-involved-action h3 {
        min-height: 0;
        margin: 0 0 .65rem;
    }
    .get-involved-button {
        justify-self: start;
        min-height: 44px;
        padding-inline: 20px;
    }
}

@media (max-width: 430px) {
    .cta-section {
        padding: 32px 0;
    }
    .get-involved-copy {
        padding-left: 1rem;
        border-left-width: 4px;
    }
    .cta-section .get-involved-copy h2 {
        font-size: 1.9rem;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-columns: 52px minmax(0, 1fr);
        column-gap: .85rem;
    }
    .get-involved-icon {
        width: 52px;
        height: 52px;
        font-size: 1.3rem;
    }
    .get-involved-button {
        width: 100%;
        max-width: 260px;
    }
}

/* Homepage Get Involved final compact responsive refinement */
@media (max-width: 1024px) {
    .get-involved-compact {
        grid-template-columns: 1fr;
        gap: 1.6rem;
    }
    .get-involved-copy {
        max-width: 760px;
    }
    .cta-section .cta-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        display: grid;
        grid-template-rows: 84px minmax(44px, auto) 4px 48px;
        min-height: 204px;
        padding: 0 .85rem;
        border-left: 0;
        text-align: center;
    }
    .get-involved-action + .get-involved-action,
    .get-involved-action:nth-child(even) {
        border-left: 1px solid rgba(6, 59, 143, .12);
    }
}

@media (max-width: 768px) {
    .cta-section {
        padding: 34px 0 38px;
    }
    .get-involved-corner {
        top: -92px;
        right: -106px;
        opacity: .7;
    }
    .get-involved-dots {
        display: none;
    }
    .cta-section .cta-grid {
        grid-template-columns: 1fr;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-rows: none;
        grid-template-columns: 64px minmax(0, 1fr);
        column-gap: 1rem;
        justify-items: start;
        align-items: center;
        min-height: 0;
        padding: 1rem 0;
        text-align: left;
        border-left: 0;
    }
    .get-involved-action + .get-involved-action,
    .get-involved-action:nth-child(even) {
        border-left: 0;
        border-top: 1px solid rgba(6, 59, 143, .12);
    }
    .get-involved-icon {
        grid-row: 1 / 4;
        width: 64px;
        height: 64px;
    }
    .get-involved-icon svg {
        width: 32px;
        height: 32px;
    }
    .get-involved-action h3 {
        justify-content: flex-start;
        min-height: 0;
        margin: 0;
        text-align: left;
    }
    .get-involved-rule {
        justify-self: start;
        margin: .5rem 0 .65rem;
    }
    .get-involved-button {
        justify-self: start;
        width: auto;
        min-width: 190px;
        min-height: 44px;
    }
}

@media (max-width: 430px) {
    .cta-section .get-involved-copy h2 {
        font-size: 2rem;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-columns: 56px minmax(0, 1fr);
        column-gap: .85rem;
    }
    .get-involved-icon {
        width: 56px;
        height: 56px;
    }
    .get-involved-icon svg {
        width: 28px;
        height: 28px;
    }
    .get-involved-button {
        width: 100%;
        max-width: 235px;
        min-width: 0;
    }
}

/* Homepage Where We Work compact approved responsive refinement */
@media (max-width: 1024px) {
    .where-section {
        padding: 34px 0 38px;
    }
    .where-layout {
        grid-template-columns: minmax(0, 43%) minmax(0, 57%);
        gap: 20px;
    }
    .where-map-panel {
        min-height: 0;
        height: 340px;
    }
    .where-info-card {
        min-height: 112px;
    }
    .where-info-card,
    .where-office-card {
        padding: 15px 16px;
    }
}

@media (max-width: 860px) {
    .where-layout {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .where-map-panel {
        height: 350px;
    }
    .where-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .where-section {
        padding: 30px 0 34px;
    }
    .where-heading {
        margin-bottom: 22px;
    }
    .where-heading h2 {
        font-size: clamp(2rem, 8vw, 2.45rem);
    }
    .where-map-panel {
        height: 320px;
    }
    .where-wave {
        height: 28px;
    }
}

@media (max-width: 560px) {
    .where-info-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .where-info-card {
        min-height: 0;
    }
}

@media (max-width: 430px) {
    .where-section {
        padding: 28px 0 32px;
    }
    .where-heading > p {
        font-size: .96rem;
        line-height: 1.5;
    }
    .where-map-panel {
        height: 285px;
        padding: 10px;
        border-radius: 15px;
    }
    .where-info-card,
    .where-office-card {
        gap: .75rem;
        padding: 13px 14px;
    }
    .where-info-icon,
    .where-office-icon {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }
    .where-info-card p,
    .where-office-card p {
        font-size: .96rem;
    }
}

/* Homepage About video responsive */
@media (max-width: 1024px) {
    .about-section {
        padding: 3rem 0;
    }
    .about-video-panel {
        max-width: 760px;
        margin-inline: auto;
    }
}

@media (max-width: 430px) {
    .about-section {
        padding: 2.5rem 0;
    }
    .about-video-panel,
    .about-video {
        border-radius: 18px;
    }
    .about-video-panel::after {
        left: 16px;
        right: 16px;
        bottom: -6px;
        height: 6px;
    }
}

/* Homepage About approved blue video panel responsive */
@media (max-width: 1100px) {
    .about-section .split-grid {
        grid-template-columns: minmax(0, 44%) minmax(0, 56%);
        gap: 2rem;
    }
    .about-video-panel {
        padding: 1rem;
    }
    .about-pillar {
        padding-inline: .65rem;
    }
    .about-pillar-icon {
        width: 62px;
        height: 62px;
        font-size: 1.5rem;
    }
}

@media (max-width: 900px) {
    .about-section .split-grid {
        grid-template-columns: 1fr;
    }
    .about-video-panel {
        max-width: 760px;
        margin-inline: auto;
    }
}

@media (max-width: 680px) {
    .about-section {
        padding: 42px 0;
    }
    .about-pillars {
        grid-template-columns: 1fr;
        margin-top: 1rem;
    }
    .about-pillar {
        display: grid;
        grid-template-columns: 58px minmax(0, 1fr);
        column-gap: .9rem;
        align-items: center;
        padding: .9rem 0;
        text-align: left;
    }
    .about-pillar + .about-pillar {
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, .18);
    }
    .about-pillar-icon {
        grid-row: span 2;
        width: 58px;
        height: 58px;
        margin: 0;
    }
    .about-pillar h3 {
        min-height: 0;
        margin: 0 0 .25rem;
    }
}

@media (max-width: 430px) {
    .about-section {
        padding: 36px 0;
    }
    .about-section .section-copy h2 {
        font-size: 2rem;
    }
    .about-video-panel {
        padding: .75rem;
        border-radius: 20px;
    }
    .about-video-frame {
        border-radius: 16px;
    }
    .about-video-panel::after {
        left: 18px;
        right: 18px;
        height: 6px;
        bottom: -5px;
    }
}

/* About page Our Organization approved timeline responsive */
@media (max-width: 900px) {
    .about-page .organization-section {
        padding: 3.5rem 0 4.6rem;
    }
    .about-page .organization-timeline {
        grid-template-columns: 1fr;
        gap: 1.75rem;
        max-width: 620px;
        margin-inline: auto;
        padding-left: 34px;
        text-align: left;
    }
    .about-page .organization-timeline::before {
        top: 4px;
        bottom: 18px;
        left: 44px;
        right: auto;
        width: 3px;
        height: auto;
    }
    .about-page .organization-timeline-item {
        display: grid;
        grid-template-columns: 90px minmax(0, 1fr);
        gap: 1.25rem;
        align-items: start;
        padding: 0;
        text-align: left;
    }
    .about-page .organization-timeline-item::before,
    .about-page .organization-timeline-item::after {
        left: 39px;
        right: auto;
        top: 94px;
    }
    .about-page .organization-timeline-item::before {
        display: none;
    }
    .about-page .organization-timeline-item:last-child::after {
        display: none;
    }
    .about-page .organization-timeline-icon {
        margin: 0;
    }
    .about-page .organization-timeline-copy {
        min-height: 0;
        padding: .15rem 0 0;
    }
    .about-page .organization-timeline-item + .organization-timeline-item .organization-timeline-copy {
        border-left: 0;
    }
    .about-page .organization-timeline-copy p {
        max-width: none;
        margin: 0;
    }
    .about-page .organization-timeline-rule {
        margin-left: 0;
    }
}

@media (max-width: 560px) {
    .about-page .organization-section {
        padding: 3rem 0 4.1rem;
    }
    .about-page .organization-content .who-we-are-title {
        font-size: 2.2rem;
    }
    .about-page .organization-content > p {
        font-size: .98rem;
    }
    .about-page .organization-timeline {
        padding-left: 18px;
    }
    .about-page .organization-timeline::before {
        left: 32px;
    }
    .about-page .organization-timeline-item {
        grid-template-columns: 70px minmax(0, 1fr);
        gap: 1rem;
    }
    .about-page .organization-timeline-icon {
        width: 70px;
        height: 70px;
        font-size: 1.62rem;
    }
    .about-page .organization-timeline-icon::before {
        inset: -6px;
        border-width: 3px;
    }
    .about-page .organization-timeline-item::after {
        left: 27px;
        top: 74px;
    }
}

/* About page Mission & Vision approved connected responsive */
@media (max-width: 1180px) {
    .about-page .mission-vision-section {
        padding: 44px 32px 68px;
    }
    .about-page .mission-vision-connected {
        grid-template-columns: minmax(0, 1fr) 124px minmax(0, 1fr);
    }
    .about-page .mission-vision-panel {
        min-height: 410px;
        padding-top: 44px;
    }
    .about-page .mission-panel {
        padding-right: 64px;
    }
    .about-page .vision-panel {
        padding-left: 64px;
    }
    .about-page .mission-logo-orbit {
        width: 112px;
        height: 112px;
    }
    .about-page .mission-logo-orbit img {
        width: 82px;
        height: 82px;
    }
    .about-page .mission-value-item {
        padding-inline: 14px;
    }
}

@media (max-width: 980px) {
    .about-page .mission-vision-connected {
        grid-template-columns: 1fr;
        gap: 22px;
        max-width: 760px;
        margin-inline: auto;
    }
    .about-page .mission-vision-panel {
        min-height: 0;
        padding: 46px 30px 30px;
        border-radius: 24px;
        clip-path: none;
    }
    .about-page .mission-panel,
    .about-page .vision-panel {
        padding-inline: 30px;
    }
    .about-page .mission-vision-center {
        min-width: 0;
        min-height: 116px;
    }
    .about-page .mission-logo-orbit {
        width: 118px;
        height: 118px;
    }
    .about-page .mission-logo-orbit img {
        width: 86px;
        height: 86px;
    }
    .about-page .mission-chevron {
        top: auto;
        left: 50%;
        right: auto;
        width: 22px;
        height: 22px;
        transform: translateX(-50%) rotate(135deg);
    }
    .about-page .mission-chevron--blue {
        top: 2px;
    }
    .about-page .mission-chevron--gold {
        bottom: 2px;
        color: #EAAA00;
    }
    .about-page .mission-values-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 0;
    }
    .about-page .mission-value-item:nth-child(odd) {
        border-left: 0;
    }
}

@media (max-width: 680px) {
    .about-page .mission-vision-section {
        width: calc(100% - 20px);
        margin-top: 22px;
        padding: 36px 18px 58px;
        border-radius: 18px;
    }
    .about-page .mission-vision-intro h2 {
        font-size: clamp(2.05rem, 9vw, 2.45rem);
    }
    .about-page .mission-vision-label::before,
    .about-page .mission-vision-label::after {
        width: 20px;
    }
    .about-page .mission-vision-panel {
        padding: 42px 20px 24px;
    }
    .about-page .mission-panel,
    .about-page .vision-panel {
        padding-inline: 20px;
    }
    .about-page .mission-vision-floating-icon {
        width: 64px;
        height: 64px;
        top: -24px;
        font-size: 1.55rem;
    }
    .about-page .mission-panel .mission-vision-floating-icon {
        left: 22px;
    }
    .about-page .vision-panel .mission-vision-floating-icon {
        right: 22px;
    }
    .about-page .mission-vision-panel h3 {
        font-size: clamp(1.65rem, 7vw, 2.05rem);
    }
    .about-page .mission-values-strip {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .about-page .mission-value-item,
    .about-page .mission-value-item + .mission-value-item {
        border-left: 0;
        border-top: 1px solid rgba(6, 59, 143, .12);
        padding: 14px 0;
    }
    .about-page .mission-value-item:first-child {
        border-top: 0;
        padding-top: 0;
    }
}

/* Mission & Vision reference correction responsive */
@media (max-width: 1180px) {
    .about-page .mission-vision-connected {
        grid-template-columns: minmax(0, 1fr) 160px minmax(0, 1fr);
        max-width: 1060px;
    }
    .about-page .mission-vision-panel {
        min-height: 380px;
    }
    .about-page .mission-logo-orbit {
        width: 142px;
        height: 142px;
    }
    .about-page .mission-logo-orbit img {
        width: 108px;
        height: 108px;
    }
    .about-page .mission-values-strip {
        max-width: 1060px;
    }
}

@media (max-width: 980px) {
    .about-page .mission-vision-section {
        width: calc(100% - 28px);
        padding: 42px 24px 64px;
    }
    .about-page .mission-vision-connected {
        grid-template-columns: 1fr;
        gap: 24px;
        max-width: 760px;
        margin-top: 42px;
    }
    .about-page .mission-vision-panel,
    .about-page .mission-panel,
    .about-page .vision-panel {
        justify-self: stretch;
        max-width: none;
        min-height: 0;
        padding: 54px 30px 30px;
        border-radius: 26px;
        clip-path: none;
    }
    .about-page .mission-panel .mission-vision-floating-icon {
        left: 24px;
    }
    .about-page .vision-panel .mission-vision-floating-icon {
        right: 24px;
    }
    .about-page .mission-vision-center {
        min-height: 150px;
    }
    .about-page .mission-logo-orbit {
        width: 146px;
        height: 146px;
    }
    .about-page .mission-logo-orbit img {
        width: 110px;
        height: 110px;
    }
    .about-page .mission-values-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 760px;
        gap: 18px 0;
    }
    .about-page .mission-value-item:nth-child(odd) {
        border-left: 0;
    }
}

@media (max-width: 680px) {
    .about-page .mission-vision-section {
        width: calc(100% - 20px);
        padding: 34px 16px 56px;
    }
    .about-page .mission-vision-intro h2 {
        font-size: clamp(2rem, 9vw, 2.45rem);
    }
    .about-page .mission-vision-panel,
    .about-page .mission-panel,
    .about-page .vision-panel {
        padding: 50px 20px 24px;
    }
    .about-page .mission-vision-floating-icon {
        width: 76px;
        height: 76px;
        top: -34px;
        font-size: 1.75rem;
    }
    .about-page .mission-vision-panel h3 {
        font-size: clamp(1.55rem, 7vw, 2rem);
    }
    .about-page .mission-values-strip {
        grid-template-columns: 1fr;
    }
    .about-page .mission-value-item,
    .about-page .mission-value-item + .mission-value-item {
        border-left: 0;
        border-top: 1px solid rgba(6, 59, 143, .12);
        padding: 16px 0;
    }
    .about-page .mission-value-item:first-child {
        border-top: 0;
        padding-top: 0;
    }
}

/* About page compact About Organisation responsive */
@media (max-width: 1050px) {
    .about-page .about-overview {
        padding: 30px 28px 58px;
    }
    .about-page .about-overview-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px 0;
    }
    .about-page .about-overview-row:nth-child(4) {
        border-left: 0;
    }
    .about-page .about-overview-support-text {
        gap: 18px;
    }
}

@media (max-width: 760px) {
    .about-page .about-overview {
        width: calc(100% - 20px);
        padding: 28px 18px 52px;
        border-radius: 18px;
    }
    .about-page .about-overview-copy {
        margin-bottom: 22px;
    }
    .about-page .about-overview-copy h2 {
        font-size: clamp(2rem, 8vw, 2.35rem);
    }
    .about-page .about-overview-glance {
        padding: 18px 14px;
    }
    .about-page .about-overview-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 0;
    }
    .about-page .about-overview-row:nth-child(odd) {
        border-left: 0;
    }
    .about-page .about-overview-row:nth-child(even) {
        border-left: 1px solid rgba(7, 59, 122, .10);
    }
    .about-page .about-overview-support {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 16px 18px;
    }
    .about-page .about-overview-support-icon {
        width: 64px;
        height: 64px;
        border-radius: 16px;
    }
    .about-page .about-overview-support-text {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .about-page .about-overview-support-text p + p {
        padding: 12px 0 0;
        border-left: 0;
        border-top: 1px solid rgba(7, 59, 122, .12);
    }
}

@media (max-width: 430px) {
    .about-page .about-overview {
        padding: 26px 14px 48px;
    }
    .about-page .about-overview-copy h2 {
        font-size: clamp(1.95rem, 9vw, 2.15rem);
    }
    .about-page .about-overview-list {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .about-page .about-overview-row,
    .about-page .about-overview-row:nth-child(even) {
        border-left: 0;
        padding-inline: 6px;
    }
    .about-page .about-overview-icon {
        width: 54px;
        height: 54px;
        margin-bottom: 10px;
    }
}

/* About page Our Values approved open layout responsive */
@media (max-width: 1100px) {
    .about-page .values-section .values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .about-page .value-card:nth-child(n) {
        border-left: 0;
    }
    .about-page .value-card:nth-child(even) {
        border-left: 1px solid rgba(7, 59, 122, .12);
    }
    .about-page .value-card:nth-child(n + 3) {
        border-top: 1px solid rgba(7, 59, 122, .12);
    }
}

@media (max-width: 760px) {
    .about-page .values-section {
        width: calc(100% - 20px);
        padding: 34px 18px 56px;
        border-radius: 18px;
    }
    .about-page .values-heading {
        margin-bottom: 26px;
    }
    .about-page .values-heading h2 {
        font-size: clamp(2rem, 9vw, 2.35rem);
    }
    .about-page .values-section .values-grid {
        grid-template-columns: 1fr;
        border-top: 1px solid rgba(7, 59, 122, .12);
        border-bottom: 1px solid rgba(7, 59, 122, .12);
    }
    .about-page .value-card,
    .about-page .value-card:nth-child(even),
    .about-page .value-card:nth-child(n + 3) {
        border-left: 0;
        border-top: 1px solid rgba(7, 59, 122, .12);
        padding: 20px 0;
    }
    .about-page .value-card:first-child {
        border-top: 0;
    }
    .about-page .values-mission-panel {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .about-page .values-mission-icon {
        min-height: 84px;
    }
    .about-page .values-mission-icon::after {
        margin-top: 46px;
    }
    .about-page .values-mission-panel > div:last-child {
        padding: 20px 22px;
    }
}

@media (max-width: 430px) {
    .about-page .values-section {
        padding: 30px 14px 52px;
    }
    .about-page .value-card {
        grid-template-columns: 64px minmax(0, 1fr);
        column-gap: 14px;
    }
    .about-page .value-card-icon {
        width: 62px;
        height: 62px;
        font-size: 1.55rem;
    }
    .about-page .value-card h3 {
        font-size: 1.15rem;
    }
    .about-page .value-card p {
        font-size: .95rem;
    }
}

/* About page Our History approved timeline responsive */
@media (max-width: 900px) {
    .about-page .history-section {
        width: calc(100% - 24px);
        padding: 36px 24px 34px;
    }
    .about-page .history-content {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    .about-page .history-intro {
        position: relative;
        top: auto;
        text-align: center;
    }
    .about-page .history-label {
        align-items: center;
    }
    .about-page .history-title-rule {
        margin-inline: auto;
    }
    .about-page .history-logo-orbit {
        width: 200px;
        height: 200px;
    }
    .about-page .history-callout {
        grid-template-columns: 120px minmax(0, 1fr);
    }
}

@media (max-width: 560px) {
    .about-page .history-section {
        width: calc(100% - 20px);
        padding: 32px 16px 30px;
        border-radius: 18px;
    }
    .about-page .history-content h2 {
        font-size: clamp(2.05rem, 10vw, 2.45rem);
    }
    .about-page .history-logo-orbit {
        width: 178px;
        height: 178px;
    }
    .about-page .history-timeline {
        gap: 12px;
        padding-left: 0;
    }
    .about-page .history-timeline::before {
        left: 24px;
    }
    .about-page .history-timeline-item {
        grid-template-columns: 50px minmax(0, 1fr);
        gap: 12px;
    }
    .about-page .history-timeline-item::after {
        left: 20px;
        top: 24px;
    }
    .about-page .history-timeline-icon {
        width: 50px;
        height: 50px;
        font-size: 1.18rem;
    }
    .about-page .history-timeline-card {
        padding: 14px 15px;
    }
    .about-page .history-callout {
        grid-template-columns: 1fr;
    }
    .about-page .history-callout-icon {
        min-height: 76px;
    }
    .about-page .history-callout p {
        padding: 18px;
    }
}

/* Final homepage hero responsive overrides; height rules above are intentionally preserved. */
@media (max-width: 1180px) {
    .hero-carousel .hero-grid {
        padding-left: clamp(2.5rem, 6vw, 5rem);
        padding-right: clamp(1.25rem, 28vw, 22rem);
    }

    .hero-carousel .hero-title {
        max-width: 600px;
        font-size: clamp(2.8rem, 6.2vw, 4.8rem);
        line-height: 1;
        text-align: left;
    }

    .hero-carousel::after {
        width: 300px;
        height: 300px;
        right: -118px;
    }

    .hero-curve-logo {
        right: 30px;
        width: 132px;
    }
}

@media (max-width: 991px) {
    .hero-carousel .hero-grid,
    .hero-slide:first-child .hero-grid {
        justify-content: flex-start;
        padding-left: clamp(2rem, 5vw, 3.5rem);
        padding-right: clamp(1.25rem, 22vw, 12rem);
    }

    .hero-carousel .hero-copy {
        max-width: min(560px, calc(100vw - 3rem));
        padding: 0;
        color: #fff;
        text-align: left;
        background: transparent;
        box-shadow: none;
    }

    .hero-carousel .hero-title {
        max-width: 540px;
        font-size: clamp(2.5rem, 7vw, 4.1rem);
        line-height: 1;
        text-align: left;
    }

    .hero-carousel .hero-description {
        max-width: 500px;
        font-size: 1.06rem;
    }

    .hero-carousel::after {
        width: 245px;
        height: 245px;
        right: -112px;
        border-width: 20px;
    }

    .hero-curve-logo {
        right: 20px;
        bottom: auto;
        width: 94px;
    }
}

@media (max-width: 768px) {
    .hero-carousel .hero-slide .hero-photo::after {
        background: linear-gradient(
            90deg,
            rgba(2, 25, 60, 0.94) 0%,
            rgba(3, 39, 84, 0.78) 48%,
            rgba(3, 39, 84, 0.36) 78%,
            rgba(3, 39, 84, 0.16) 100%
        );
    }

    .hero-carousel .hero-grid,
    .hero-slide:first-child .hero-grid {
        padding-left: clamp(1.25rem, 6vw, 2rem);
        padding-right: 1.25rem;
    }

    .hero-carousel .hero-copy {
        max-width: min(440px, calc(100vw - 2.5rem));
        padding: 0;
        background: transparent;
    }

    .hero-kicker {
        gap: .65rem;
        margin-bottom: .75rem;
        font-size: .86rem;
    }

    .hero-kicker::before {
        flex-basis: 34px;
        width: 34px;
    }

    .hero-carousel .hero-title {
        max-width: 420px;
        font-size: clamp(2.15rem, 9vw, 3.25rem);
        line-height: 1.02;
    }

    .hero-carousel .hero-description {
        max-width: 390px;
        margin-top: .95rem;
        font-size: .98rem;
        line-height: 1.5;
    }

    .hero-carousel .hero-actions {
        flex-direction: row;
        align-items: center;
        max-width: none;
        gap: .65rem;
        margin-top: 1.1rem;
    }

    .hero-carousel .hero-actions .btn {
        width: auto;
        min-height: 46px;
        min-width: 138px;
        padding: .72rem .95rem;
        font-size: .9rem;
    }

    .hero-carousel::after,
    .hero-curve-logo {
        display: none;
    }
}

@media (max-width: 430px) {
    .hero-carousel .hero-copy {
        max-width: calc(100vw - 2rem);
        padding: 0;
        background: transparent;
    }

    .hero-carousel .hero-title {
        max-width: 330px;
        font-size: clamp(1.9rem, 9.4vw, 2.55rem);
    }

    .hero-carousel .hero-description {
        max-width: 320px;
        font-size: .92rem;
    }

    .hero-carousel .hero-actions {
        flex-direction: column;
        align-items: stretch;
        max-width: 260px;
    }

    .hero-carousel .hero-actions .btn {
        width: 100%;
        min-height: 44px;
    }
}

/* Homepage hero refinement responsive sizing; existing height rules remain unchanged. */
@media (max-width: 1180px) {
    .hero-carousel .hero-copy {
        max-width: 620px;
    }

    .hero-carousel .hero-title {
        max-width: 620px;
        font-size: clamp(40px, 4.8vw, 56px);
        line-height: 1.05;
        font-weight: 700;
    }
}

@media (max-width: 991px) {
    .hero-carousel .hero-copy {
        max-width: min(540px, calc(100vw - 3rem));
    }

    .hero-carousel .hero-title {
        max-width: 540px;
        font-size: clamp(36px, 6vw, 50px);
        line-height: 1.06;
        font-weight: 700;
    }
}

@media (max-width: 768px) {
    .hero-carousel .hero-slide .hero-photo::after {
        display: none;
    }

    .hero-carousel .hero-slide-first .hero-photo::after {
        display: block;
        background: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.70) 0%,
            rgba(0, 0, 0, 0.54) 42%,
            rgba(0, 0, 0, 0.25) 72%,
            rgba(0, 0, 0, 0.08) 100%
        );
    }

    .hero-carousel .hero-copy {
        max-width: min(440px, calc(100vw - 2.5rem));
    }

    .hero-carousel .hero-title {
        max-width: 420px;
        font-size: clamp(32px, 7.8vw, 42px);
        line-height: 1.08;
    }
}

@media (max-width: 430px) {
    .hero-carousel .hero-title {
        max-width: 340px;
        font-size: clamp(29px, 8.2vw, 35px);
        line-height: 1.08;
    }
}

/* Featured Activity approved card responsive refinements */
@media (max-width: 1100px) {
    .featured-activity-card {
        grid-template-columns: minmax(0, 1fr) minmax(0, .98fr);
        gap: 1.35rem;
    }

    .featured-activity .activity-media {
        min-height: 390px;
    }

    .featured-activity .activity-report h2 {
        font-size: clamp(1.85rem, 3.4vw, 2.55rem);
    }

    .featured-activity .activity-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: .95rem;
        padding: .95rem 0 .85rem;
    }

    .featured-activity .activity-details div,
    .featured-activity .activity-details div:first-child,
    .featured-activity .activity-details div:last-child {
        padding: 0 .85rem;
        border-right: 1px solid rgba(6, 59, 143, .12);
    }

    .featured-activity .activity-details div:nth-child(2n) {
        border-right: 0;
    }

    .featured-activity .activity-details div:nth-child(2n + 1) {
        padding-left: 0;
    }
}

@media (max-width: 820px) {
    .featured-activity {
        padding-block: 2.5rem;
    }

    .featured-activity-card {
        grid-template-columns: 1fr;
        padding: .9rem;
        border-radius: 24px;
    }

    .featured-activity-card::before {
        top: 20px;
        right: 24px;
        width: 54px;
    }

    .featured-activity .activity-media {
        min-height: clamp(270px, 58vw, 390px);
        border-radius: 22px;
    }

    .featured-activity .activity-media img {
        border-radius: 22px;
    }

    .featured-activity .activity-media::before {
        top: -9px;
        left: -9px;
        border-radius: 22px 10px 24px 10px;
    }

    .featured-activity .activity-media::after {
        right: -7px;
        bottom: -7px;
        width: 78px;
        height: 78px;
        border-radius: 20px 20px 22px 8px;
    }

    .featured-activity .activity-report {
        padding: 1.35rem .65rem .65rem;
    }

    .featured-activity .activity-report h2 {
        max-width: 100%;
        font-size: clamp(1.75rem, 6vw, 2.35rem);
    }

    .activity-title-rule {
        margin: .9rem 0 1.1rem;
    }

    .featured-activity .activity-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .75rem;
        padding: 0;
        border-block: 0;
    }

    .featured-activity .activity-details div,
    .featured-activity .activity-details div:first-child,
    .featured-activity .activity-details div:last-child,
    .featured-activity .activity-details div:nth-child(2n + 1) {
        padding: .85rem;
        border: 1px solid rgba(6, 59, 143, .10);
        border-radius: 14px;
        background: #fff;
    }

    .featured-activity .activity-details div:nth-child(4) {
        grid-column: 1 / -1;
    }

    .activity-image-badge {
        grid-template-columns: 36px minmax(0, 1fr);
        max-width: min(280px, calc(100% - 1.4rem));
        padding: .62rem .8rem .62rem .62rem;
        border-radius: 24px;
    }

    .activity-image-badge span {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .activity-image-badge p {
        font-size: .76rem;
    }
}

@media (max-width: 430px) {
    .featured-activity {
        padding-block: 2rem;
    }

    .featured-activity-card {
        width: min(100% - 1rem, 1180px);
        padding: .7rem;
        border-radius: 20px;
    }

    .featured-activity .activity-media {
        min-height: 245px;
    }

    .featured-activity .activity-report {
        padding: 1.15rem .35rem .35rem;
    }

    .activity-label {
        font-size: .66rem;
    }

    .featured-activity .activity-report h2 {
        font-size: clamp(1.55rem, 8vw, 2rem);
    }

    .featured-activity .activity-details {
        gap: .6rem;
    }

    .featured-activity .activity-details div,
    .featured-activity .activity-details div:first-child,
    .featured-activity .activity-details div:last-child,
    .featured-activity .activity-details div:nth-child(2n + 1) {
        padding: .72rem;
    }

    .featured-activity .activity-details dt {
        font-size: .62rem;
    }

    .featured-activity .activity-details dd {
        font-size: .86rem;
    }

    .featured-activity .activity-report > p:not(.activity-label):not(.activity-guests) {
        font-size: .95rem;
    }

    .activity-report-button {
        width: 100%;
    }
}

/* News & Updates newsroom redesign responsive */
@media (max-width: 1100px) {
    .newsroom-hero__inner {
        grid-template-columns: minmax(0, 1fr) minmax(280px, .55fr);
        gap: 28px;
    }
    .newsroom-featured-grid {
        grid-template-columns: minmax(0, 1.2fr) minmax(290px, .8fr);
        gap: 22px;
    }
    .featured-story-card {
        min-height: 480px;
    }
    .newsroom-card-grid,
    .newsroom-digest-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .newsletter-band {
        grid-template-columns: 64px minmax(0, 1fr);
    }
    .newsletter-form {
        grid-column: 1 / -1;
    }
}

@media (max-width: 820px) {
    .newsroom-hero {
        min-height: 280px;
        margin-bottom: 34px;
    }
    .newsroom-hero__inner {
        min-height: 280px;
        display: flex;
    }
    .newsroom-hero__copy {
        max-width: 620px;
        padding: 38px 0;
    }
    .newsroom-hero__media {
        width: 64vw;
        opacity: .58;
    }
    .newsroom-hero h1 {
        font-size: clamp(2.25rem, 7vw, 3.2rem);
    }
    .newsroom-featured,
    .newsroom-latest,
    .newsroom-digest {
        margin-bottom: 40px;
    }
    .newsroom-featured-grid {
        grid-template-columns: 1fr;
    }
    .featured-story-card {
        min-height: 430px;
    }
    .newsroom-side-stack {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .side-story-card {
        grid-template-rows: 170px 1fr;
    }
    .newsroom-heading-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }
    .newsroom-card__image {
        height: 210px;
    }
    .newsletter-band {
        padding: 24px;
        border-radius: 18px;
    }
}

@media (max-width: 640px) {
    .newsroom-hero {
        min-height: 260px;
    }
    .newsroom-hero__inner {
        min-height: 260px;
    }
    .newsroom-hero__copy {
        padding: 32px 0;
    }
    .newsroom-hero__copy > p:last-child {
        font-size: 1rem;
    }
    .newsroom-hero__media {
        width: 88vw;
        opacity: .42;
    }
    .newsroom-section-title h2,
    .newsroom-heading-row h2 {
        font-size: clamp(1.85rem, 8vw, 2.35rem);
    }
    .featured-story-card {
        min-height: 410px;
        border-radius: 16px;
    }
    .featured-story-card__overlay {
        padding: 24px;
    }
    .featured-story-card h3 {
        font-size: clamp(1.55rem, 7vw, 2.15rem);
    }
    .newsroom-side-stack,
    .newsroom-card-grid,
    .newsroom-digest-grid {
        grid-template-columns: 1fr;
    }
    .side-story-card {
        grid-template-rows: 180px 1fr;
    }
    .newsroom-filter-bar {
        margin-right: -16px;
        padding-right: 16px;
    }
    .newsroom-card__image {
        height: 205px;
    }
    .digest-panel {
        padding: 22px;
    }
    .newsletter-band {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .newsletter-form {
        grid-template-columns: 1fr;
    }
    .newsletter-form button {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .newsroom-hero h1 {
        font-size: clamp(2rem, 10vw, 2.55rem);
    }
    .newsroom-kicker {
        font-size: .72rem;
    }
    .featured-story-card__overlay {
        padding: 22px 18px;
    }
    .featured-story-card p:not(.story-meta) {
        font-size: .94rem;
    }
    .story-meta {
        font-size: .72rem;
    }
    .newsroom-card__body,
    .side-story-card__content {
        padding: 20px;
    }
    .community-story {
        grid-template-columns: 68px minmax(0, 1fr);
    }
    .community-story img {
        width: 68px;
        height: 58px;
    }
}

/* Targeted mobile overflow fixes - preserve desktop design */
@media (max-width: 768px) {
    .hero-slide-caption-left .hero-grid,
    .hero-slide-caption-right .hero-grid {
        justify-content: flex-start;
        align-items: center;
        padding-left: clamp(1rem, 5vw, 1.45rem);
        padding-right: clamp(1rem, 5vw, 1.45rem);
    }
    .hero-carousel .hero-slide-caption {
        width: min(100%, 360px);
        max-width: calc(100vw - 2rem);
        padding: .82rem .95rem;
        border-left-width: 3px;
    }
    .hero-carousel .hero-slide-caption .hero-kicker {
        font-size: .68rem;
        letter-spacing: .1em;
    }
    .hero-carousel .hero-slide-caption .hero-title {
        font-size: clamp(1.35rem, 6.8vw, 2rem);
        line-height: 1.12;
    }
    .hero-carousel .hero-slide-caption .hero-description {
        font-size: .88rem;
        line-height: 1.45;
    }

    .cta-section .cta-grid,
    .get-involved-action,
    .get-involved-action h3,
    .get-involved-button {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-columns: 52px minmax(0, 1fr);
        column-gap: .8rem;
        padding: 1rem .25rem;
    }
    .get-involved-icon {
        width: 52px;
        height: 52px;
    }
    .get-involved-icon svg {
        width: 27px;
        height: 27px;
    }
    .get-involved-action h3 {
        overflow-wrap: anywhere;
    }
    .get-involved-rule {
        width: 38px;
        margin: .45rem 0 .55rem;
    }
    .get-involved-button {
        width: 100%;
        min-height: 44px;
        padding: .62rem .78rem;
        justify-content: center;
        white-space: normal;
        line-height: 1.15;
        text-align: center;
    }
    .get-involved-button i {
        flex: 0 0 auto;
    }

    .work-hero {
        width: calc(100% - 1rem);
        min-height: 470px;
        padding: clamp(1.45rem, 7vw, 2.25rem) clamp(1rem, 5vw, 1.55rem);
        border-radius: 18px;
    }
    .work-hero .container,
    .work-hero-inner,
    .work-hero-copy {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }
    .work-hero h1 {
        max-width: 100%;
        font-size: clamp(2rem, 10vw, 3rem);
        line-height: 1.08;
        overflow-wrap: anywhere;
    }
    .work-hero-copy > p:last-of-type {
        max-width: 100%;
        font-size: .98rem;
        line-height: 1.62;
        overflow-wrap: anywhere;
    }
    .work-hero .hero-actions {
        width: 100%;
        max-width: 310px;
        flex-direction: column;
        align-items: stretch;
        gap: .75rem;
    }
    .work-hero .hero-actions .btn {
        width: 100%;
        min-width: 0;
        justify-content: center;
        white-space: normal;
        text-align: center;
    }

    .gallery-hero {
        min-height: 220px;
        padding: 2.2rem 0 2rem;
    }
    .gallery-hero-inner {
        width: min(100% - 1.5rem, 780px);
        max-width: none;
        min-width: 0;
        box-sizing: border-box;
    }
    .gallery-hero h1 {
        max-width: 100%;
        font-size: clamp(2rem, 9vw, 2.75rem);
        line-height: 1.1;
        overflow-wrap: anywhere;
    }
    .gallery-hero p:last-child {
        max-width: 100%;
        font-size: .98rem;
        line-height: 1.58;
        overflow-wrap: anywhere;
    }
    .gallery-hero::before {
        left: -185px;
        top: -52px;
        width: 260px;
        height: calc(100% + 96px);
        opacity: .82;
    }
    .gallery-hero::after {
        right: -115px;
        bottom: -105px;
        width: 190px;
        height: 190px;
    }
    .gallery-hero-inner::before {
        display: none;
    }
    .gallery-hero .section-label::before,
    .gallery-hero .section-label::after {
        width: 22px;
    }

    .footer-contact-list li,
    .footer-contact-list span,
    .footer-contact-list a {
        min-width: 0;
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: normal;
    }
}

@media (max-width: 430px) {
    .hero-carousel .hero-slide-caption {
        width: min(100%, 300px);
        max-width: calc(100vw - 1.5rem);
        padding: .72rem .82rem;
    }
    .hero-carousel .hero-slide-caption .hero-title {
        font-size: clamp(1.22rem, 6.8vw, 1.65rem);
    }
    .hero-carousel .hero-slide-caption .hero-description {
        font-size: .82rem;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-columns: 46px minmax(0, 1fr);
        column-gap: .68rem;
        padding: .95rem 0;
    }
    .get-involved-icon {
        width: 46px;
        height: 46px;
    }
    .get-involved-icon svg {
        width: 24px;
        height: 24px;
    }
    .work-hero {
        width: calc(100% - .75rem);
        padding: 1.35rem .95rem 1.5rem;
    }
    .work-hero h1 {
        font-size: clamp(1.9rem, 9.4vw, 2.45rem);
    }
    .gallery-hero-inner {
        width: min(100% - 1.1rem, 780px);
    }
    .gallery-hero h1 {
        font-size: clamp(1.85rem, 8.4vw, 2.35rem);
    }
    .gallery-hero::before {
        left: -200px;
        width: 250px;
        opacity: .72;
    }
}

@media (max-width: 360px) {
    .hero-carousel .hero-slide-caption {
        width: min(100%, 282px);
    }
    .hero-carousel .hero-slide-caption .hero-title {
        font-size: clamp(1.12rem, 6.5vw, 1.48rem);
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-columns: 42px minmax(0, 1fr);
        column-gap: .58rem;
    }
    .get-involved-icon {
        width: 42px;
        height: 42px;
    }
    .get-involved-button {
        padding-inline: .62rem;
        font-size: .84rem;
    }
    .work-hero h1 {
        font-size: clamp(1.75rem, 9.2vw, 2.15rem);
    }
}

/* Second-pass mobile overflow fixes from measured element scan */
@media (max-width: 768px) {
    .newsroom-filter-bar {
        max-width: 100%;
        margin-right: 0;
        padding-right: 2px;
        box-sizing: border-box;
    }
    .contact-info-item,
    .contact-info-item > div,
    .contact-info-item p,
    .contact-info-item a {
        min-width: 0;
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: normal;
        box-sizing: border-box;
    }
}

@media (max-width: 430px) {
    .get-involved-corner {
        top: -58px;
        right: -96px;
        width: 170px;
        height: 170px;
        opacity: .58;
    }
    .get-involved-corner::after {
        top: 36px;
        right: 36px;
        width: 94px;
        height: 94px;
    }
    .get-involved-action,
    .get-involved-action:nth-child(even) {
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
        row-gap: .58rem;
        padding: 1.05rem .15rem;
    }
    .get-involved-icon {
        grid-row: auto;
    }
    .get-involved-action h3 {
        width: 100%;
        margin-top: .15rem;
        text-align: left;
        justify-content: flex-start;
    }
    .get-involved-rule {
        justify-self: start;
        margin: 0 0 .15rem;
    }
    .get-involved-button {
        justify-self: stretch;
        width: 100%;
        max-width: 100%;
    }
}
