
/* ==================================================
   ALLIED MUSLIM YOUTH UGANDA
   CONSOLIDATED WEBSITE REDESIGN
   Musana-inspired styling
================================================== */

/* 01 — DESIGN SYSTEM */

:root {
    --color-primary: #489350;
    --color-dark: #174F2D;
    --color-background: #F7F3E7;
    --color-text: #174F2D;

    --amyu-green: #489350;
    --amyu-dark: #174F2D;
    --amyu-cream: #F7F3E7;
    --amyu-orange: #F5AE62;
    --amyu-white: #FFFFFF;
    --amyu-muted: #53635B;
    --amyu-font: "AMYU Gotham", "DM Sans", Arial, sans-serif;
    --amyu-section-space: 110px;
}

body {
    font-family: var(--amyu-font);
    color: var(--amyu-dark);
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--amyu-font);
    letter-spacing: -0.025em;
}

a, button {
    -webkit-tap-highlight-color: transparent;
}


/* 02 — HOMEPAGE HERO */

.hero {
    display: block;
    position: relative;
    height: auto;
    min-height: 0;
    overflow: hidden;
    background: var(--amyu-dark);
}

.hero .hero-content {
    width: 100%;
    min-height: 650px;
    padding: 100px max(6%, calc((100% - 1400px) / 2));
    background: var(--amyu-dark);
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.hero .hero-content-inner {
    width: 100%;
    max-width: 1050px;
    margin: 0;
    text-align: left;
}

.hero .hero-eyebrow {
    display: block;
    color: var(--amyu-orange);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.16em;
    margin-bottom: 26px;
}

.hero .hero-content h1 {
    max-width: 1000px;
    color: var(--amyu-orange);
    font-family: var(--amyu-font);
    font-size: clamp(48px, 6.8vw, 100px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.035em;
    margin-bottom: 30px;
}

.hero .hero-content p {
    max-width: 620px;
    color: var(--amyu-white);
    font-family: var(--amyu-font);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.65;
    margin-bottom: 32px;
}

.hero .hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.hero .hero-primary-btn {
    display: inline-flex;
    align-items: center;
    background: var(--amyu-cream);
    color: var(--amyu-dark);
    border-radius: 4px;
    padding: 15px 22px;
    transition: transform .3s ease, background .3s ease;
}

.hero .hero-primary-btn:hover {
    background: var(--amyu-orange);
    transform: translateY(-3px);
}

.hero .hero-secondary-btn {
    display: inline-flex;
    align-items: center;
    transition: transform .3s ease;
}

.hero .hero-secondary-btn:hover {
    transform: translateY(-3px);
}

.hero .hero-bottom-label {
    margin-top: 45px;
    color: #C5DFD8;
}

/* Curved transition */
.hero::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 55px;
    background: var(--amyu-cream);
    clip-path: ellipse(75% 100% at 50% 100%);
    pointer-events: none;
}


/* 03 — HERO ENTRANCE ANIMATION */

@keyframes amyuSmoothEntrance {
    from {
        opacity: 0;
        transform: translateY(45px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: no-preference) {

    .hero .hero-content-inner > * {
        animation: amyuSmoothEntrance 1s
            cubic-bezier(0.22, 1, 0.36, 1) both;
    }

    .hero .hero-eyebrow {
        animation-delay: .15s;
    }

    .hero .hero-content h1 {
        animation-delay: .3s;
    }

    .hero .hero-content-inner > p {
        animation-delay: .5s;
    }

    .hero .hero-buttons {
        animation-delay: .7s;
    }

    .hero .hero-bottom-label {
        animation-delay: .9s;
    }
}


/* 04 — WHAT WE DO */

.approach-section {
    padding: 110px 6% 120px;
    background: var(--amyu-cream);
}

.approach-section .approach-heading {
    max-width: 1150px;
    margin: 0 auto 75px;
    text-align: left;
}

.approach-section .approach-heading > p {
    color: var(--amyu-green);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: .15em;
    margin-bottom: 24px;
}

.approach-section .approach-heading h2 {
    max-width: 950px;
    color: var(--amyu-dark);
    font-family: var(--amyu-font);
    font-size: clamp(42px, 5.5vw, 78px);
    font-weight: 700;
    letter-spacing: -.04em;
    line-height: 1.08;
    margin: 0 0 30px;
}

.approach-section .approach-heading > span {
    display: block;
    max-width: 600px;
    color: var(--amyu-muted);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
}


/* 05 — PROGRAMME CARDS */

.approach-section .approach-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 1400px;
    gap: 20px;
    align-items: stretch;
}

.approach-section .approach-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    min-height: 380px;
    padding: 42px 32px;
    background: #FFFFFF;
    border: 1px solid rgba(7, 59, 57, .12);
    border-radius: 4px;
    box-shadow: none;
    text-align: left;
}

.approach-section .approach-card > span {
    color: var(--amyu-green);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .08em;
    margin-bottom: 42px;
}

.approach-section .approach-card h3 {
    color: var(--amyu-dark);
    font-family: var(--amyu-font);
    font-size: clamp(24px, 2.5vw, 34px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.025em;
    margin: 0 0 20px;
}

.approach-section .approach-card p {
    color: #46534B;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75;
    margin-bottom: 32px;
}

.approach-section .approach-card a {
    display: inline-flex;
    align-items: center;
    margin-top: auto;
    color: var(--amyu-dark);
    font-size: 13px;
    font-weight: 500;
    border-bottom: 1px solid var(--amyu-green);
    padding-bottom: 6px;
    transition: color .25s ease;
}

.approach-section .approach-card a:hover {
    color: var(--amyu-green);
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .approach-section .approach-card {
        transition:
            transform .35s ease,
            box-shadow .35s ease,
            border-color .35s ease;
    }

    .approach-section .approach-card:hover {
        transform: translateY(-8px);
        box-shadow: 0 18px 40px rgba(7, 59, 57, .10);
        border-color: rgba(32, 149, 72, .35);
    }
}


/* 06 — WHAT WE DO SCROLL ANIMATION */

@media (prefers-reduced-motion: no-preference) {

    .approach-section .approach-heading > * {
        opacity: 0;
        transform: translateY(35px);
        transition:
            opacity .9s ease,
            transform .9s cubic-bezier(.22, 1, .36, 1);
    }

    .approach-section.is-visible .approach-heading > * {
        opacity: 1;
        transform: translateY(0);
    }

    .approach-section .approach-heading > p {
        transition-delay: .1s;
    }

    .approach-section .approach-heading > h2 {
        transition-delay: .25s;
    }

    .approach-section .approach-heading > span {
        transition-delay: .4s;
    }
}


/* 07 — ABOUT AMYU */

.about-section {
    padding: 110px 6%;
    background: #FFFFFF;
}

.about-heading {
    max-width: 1000px;
    margin: 0 auto 70px;
}

.about-heading h2 {
    color: var(--amyu-dark);
    font-family: var(--amyu-font);
    font-size: clamp(38px, 5vw, 70px);
    line-height: 1.1;
    letter-spacing: -.04em;
}

.about-section .about-content {
    max-width: 1400px;
    gap: 24px;
}

.about-section .about-mission,
.about-section .about-vision {
    background: var(--amyu-cream);
    border: 0;
    border-radius: 4px;
    padding: 48px;
}

.about-mission h3,
.about-vision h3 {
    color: var(--amyu-dark);
    font-family: var(--amyu-font);
}

.about-values {
    max-width: 1400px;
}


/* 08 — OUR IMPACT */

.impact-section {
    padding: 110px 6%;
    background: var(--amyu-dark);
    color: #FFFFFF;
}

.impact-heading h2 {
    color: var(--amyu-orange);
    font-family: var(--amyu-font);
    font-size: clamp(38px, 5vw, 70px);
    letter-spacing: -.04em;
}

.impact-heading > p {
    color: var(--amyu-orange);
}

.impact-heading > span {
    color: #DFEAE5;
}

.impact-section .impact-grid {
    max-width: 1400px;
    gap: 16px;
}

.impact-section .impact-card {
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 4px;
    padding: 35px 26px;
    text-align: left;
}

.impact-section .impact-card h3 {
    color: var(--amyu-orange);
    font-family: var(--amyu-font);
}

.impact-section .impact-card p {
    color: #FFFFFF;
}

.impact-section .impact-card span {
    color: #C7DCD5;
}


/* 09 — GET INVOLVED */

.get-involved-section {
    padding: 110px 6%;
    background: var(--amyu-cream);
}

.get-involved-heading h2 {
    color: var(--amyu-dark);
    font-family: var(--amyu-font);
    font-size: clamp(38px, 5vw, 70px);
    letter-spacing: -.04em;
}

.get-involved-grid {
    max-width: 1400px;
    margin: auto;
}

.get-involved-section .involved-card {
    border-radius: 4px;
    border-bottom: 3px solid var(--amyu-green);
    padding: 40px 32px;
    background: #FFFFFF;
}

.get-involved-section .involved-card h3 {
    color: var(--amyu-dark);
}


/* 10 — PARTNERSHIPS */

.partners-section {
    padding: 110px 6%;
    background: #FFFFFF;
}

.partners-heading h2 {
    color: var(--amyu-dark);
    font-family: var(--amyu-font);
    font-size: clamp(38px, 5vw, 70px);
    letter-spacing: -.04em;
}

.partners-section .partners-cta {
    max-width: 1400px;
    background: var(--amyu-green);
    border-radius: 4px;
}

.partners-section .partners-cta h3 {
    color: #FFFFFF;
}

.partners-section .partners-cta a {
    background: var(--amyu-cream);
    color: var(--amyu-dark);
}


/* 11 — FOOTER */

.site-footer {
    background: #174F2D;
}

.site-footer .footer-main,
.site-footer .footer-bottom {
    max-width: 1400px;
}

.site-footer a {
    transition: color .25s ease;
}

.site-footer a:hover {
    color: var(--amyu-orange);
}


/* 12 — RESPONSIVE TABLET */

@media (max-width: 900px) {

    .approach-section .approach-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .impact-section .impact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* 13 — RESPONSIVE MOBILE */

@media (max-width: 600px) {

    :root {
        --amyu-section-space: 65px;
    }

    .hero .hero-content {
        min-height: 0;
        padding: 58px 24px 55px;
    }

    .hero .hero-content h1 {
        font-size: clamp(34px, 8.5vw, 46px);
        line-height: 1.07;
        margin-bottom: 22px;
    }

    .hero .hero-content p {
        font-size: 15px;
        line-height: 1.6;
        margin-bottom: 25px;
    }

    .hero .hero-eyebrow {
        font-size: 10px;
        margin-bottom: 18px;
    }

    .hero .hero-bottom-label {
        margin-top: 28px;
    }

    .hero::after {
        height: 28px;
    }

    .approach-section,
    .about-section,
    .impact-section,
    .get-involved-section,
    .partners-section {
        padding: 75px 24px 85px;
    }

    .approach-section .approach-heading {
        margin-bottom: 45px;
    }

    .approach-section .approach-heading h2 {
        font-size: clamp(34px, 8.5vw, 46px);
        margin-bottom: 22px;
    }

    .approach-section .approach-heading > span {
        font-size: 15px;
        line-height: 1.65;
    }

    .approach-section .approach-grid,
    .impact-section .impact-grid,
    .get-involved-section .get-involved-grid {
        grid-template-columns: 1fr;
    }

    .approach-section .approach-card {
        min-height: 0;
        padding: 30px 24px;
    }

    .approach-section .approach-card > span {
        margin-bottom: 26px;
    }

    .approach-section .approach-card h3 {
        font-size: 27px;
    }

    .about-section .about-content {
        grid-template-columns: 1fr;
    }

    .about-section .about-mission,
    .about-section .about-vision {
        padding: 30px 24px;
    }

    .about-heading h2,
    .impact-heading h2,
    .get-involved-heading h2,
    .partners-heading h2 {
        font-size: clamp(32px, 8vw, 44px);
    }

    .impact-section .impact-card {
        padding: 30px 24px;
    }
}


/* 14 — REDUCED MOTION */

@media (prefers-reduced-motion: reduce) {

    html {
        scroll-behavior: auto;
    }

    .hero .hero-content-inner > *,
    .approach-section .approach-heading > * {
        animation: none;
        transition: none;
        opacity: 1;
        transform: none;
    }
}

/* ============================================
   STEP 54 — WASHINGTON-INSPIRED AMYU HERO
   All sections below the hero remain unchanged
============================================ */

/* Floating header over the hero */

.top-bar {
    display: none;
}

.main-header {
    position: absolute;
    top: 24px;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    background: transparent;
    border: 0;
    z-index: 1000;
}

.main-header .header-inner {
    width: 90%;
    max-width: 1400px;
    min-height: 80px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 0;
}

/* Keep the real AMYU logo */

.main-header .logo {
    margin-right: auto;
    padding: 10px 20px 10px 0;
}

.main-header .amyu-official-logo {
    height: 85px;
    width: auto;
    max-width: 220px;
    object-fit: contain;
    filter: drop-shadow(0 2px 5px rgba(0,0,0,.2));
}

/* Green navigation panel */

.main-header .main-nav {
    display: flex;
    align-items: center;
    gap: 0;
    background: #489350;
    padding: 0 16px;
    min-height: 64px;
}

.main-header .main-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 64px;
    padding: 0 17px;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    transition: background .25s ease;
}

.main-header .main-nav a:hover {
    color: #fff;
    background: rgba(0,0,0,.16);
}

.main-header .donate-button {
    min-height: 64px;
    height: 64px;
    border-radius: 0;
    padding: 0 22px;
    background: #167438;
    color: #fff;
    font-size: 13px;
}

.main-header .donate-button:hover {
    background: #105b2b;
}

/* Full-width photographic hero */

.hero {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    min-height: 720px;
    overflow: hidden;
    background-color: #20352d;
    background-image:
        linear-gradient(
            90deg,
            rgba(8,24,23,.83) 0%,
            rgba(8,24,23,.63) 40%,
            rgba(8,24,23,.12) 100%
        ),
        url("assets/images/hero-left.jpg");
    background-position: center, center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* Remove the old curved divider */

.hero::after {
    content: none;
    display: none;
}

/* Photo is now the background */

.hero .hero-media {
    display: none;
}

.hero .hero-content {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 720px;
    width: 100%;
    padding: 170px 7% 100px;
    background: transparent;
}

.hero .hero-content-inner {
    max-width: 920px;
    width: 100%;
    margin: 0;
    text-align: left;
}

.hero .hero-eyebrow {
    color: #C9F2D7;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: .2em;
    margin-bottom: 26px;
}

/* White Washington-style headline */

.hero .hero-content h1 {
    color: #fff;
    max-width: 900px;
    font-family: var(--amyu-font);
    font-size: clamp(48px, 6.5vw, 94px);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -.04em;
    margin-bottom: 26px;
}

.hero .hero-content p {
    max-width: 620px;
    color: #F0F3EE;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
    margin-bottom: 34px;
}

/* Hero action buttons */

.hero .hero-primary-btn {
    background: #489350;
    color: #fff;
    border-radius: 0;
    padding: 16px 25px;
    font-size: 13px;
}

.hero .hero-primary-btn:hover {
    background: #167438;
}

.hero .hero-secondary-btn {
    display: inline-flex;
    border: 1px solid rgba(255,255,255,.8);
    border-radius: 0;
    color: #fff;
    padding: 15px 24px;
}

.hero .hero-bottom-label {
    margin-top: 50px;
    color: #E2E8E1;
}

/* ============================================
   RESPONSIVE HEADER AND HERO
============================================ */

@media (max-width: 900px) {

    .main-header {
        top: 0;
    }

    .main-header .header-inner {
        width: 100%;
        min-height: 85px;
        padding: 8px 5%;
        background: rgba(250, 248, 240, .98);
    }

    .main-header .logo {
        max-width: 60%;
    }

    .main-header .amyu-official-logo {
        height: 80px;
        max-width: 100%;
    }

    /* Preserve the existing mobile menu system */

    .main-header .main-nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        width: 100%;
        min-height: 0;
        padding: 20px 6%;
        background: #fff;
        flex-direction: column;
        align-items: stretch;
        box-shadow: 0 15px 30px rgba(0,0,0,.15);
    }

    .main-header .main-nav.is-open {
        display: flex;
    }

    .main-header .main-nav a {
        min-height: 0;
        padding: 15px 5px;
        color: #174F2D;
        font-size: 16px;
    }

    .main-header .main-nav a:hover {
        color: #489350;
        background: #F2F7F1;
    }

    .main-header .donate-button {
        min-height: 42px;
        height: 42px;
        padding: 0 14px;
        border-radius: 3px;
    }

    .hero {
        min-height: 680px;
        background-position: center, 58% center;
    }

    .hero .hero-content {
        min-height: 680px;
        padding: 170px 7% 80px;
    }

    .hero .hero-content h1 {
        font-size: clamp(42px, 7vw, 70px);
    }
}

@media (max-width: 600px) {

    .main-header .amyu-official-logo {
        height: 75px;
    }

    .hero {
        min-height: 650px;
        background-image:
            linear-gradient(
                180deg,
                rgba(8,24,23,.7),
                rgba(8,24,23,.82)
            ),
            url("assets/images/hero-left.jpg");
        background-position: center, center;
    }

    .hero .hero-content {
        min-height: 650px;
        padding: 145px 24px 65px;
        align-items: center;
    }

    .hero .hero-eyebrow {
        font-size: 10px;
        letter-spacing: .13em;
        margin-bottom: 22px;
    }

    .hero .hero-content h1 {
        font-size: clamp(35px, 8.6vw, 49px);
        line-height: 1.1;
        letter-spacing: -.035em;
    }

    .hero .hero-content p {
        font-size: 15px;
        line-height: 1.65;
    }

    .hero .hero-primary-btn {
        padding: 14px 19px;
    }

    .hero .hero-secondary-btn {
        display: inline-flex;
        padding: 13px 18px;
    }

    .hero .hero-bottom-label {
        margin-top: 34px;
    }
}

/* ============================================
   STEP 55 — FINAL HERO REFINEMENTS
   Washington-style hero + cream transition
============================================ */

/* 1. More compact desktop navigation */

@media (min-width: 901px) {

    .main-header {
        top: 28px;
    }

    .main-header .header-inner {
        min-height: 62px;
    }

    .main-header .main-nav {
        min-height: 58px;
        padding: 0 10px;
    }

    .main-header .main-nav a {
        min-height: 58px;
        padding: 0 14px;
        font-size: 12px;
    }

    .main-header .donate-button {
        min-height: 58px;
        height: 58px;
        padding: 0 20px;
        font-size: 12px;
    }

    .main-header .amyu-official-logo {
        height: 80px;
    }
}

/* 2. Softer photographic overlay */

.hero {
    background-image:
        linear-gradient(
            90deg,
            rgba(8, 24, 23, 0.72) 0%,
            rgba(8, 24, 23, 0.43) 42%,
            rgba(8, 24, 23, 0.08) 100%
        ),
        url("assets/images/hero-left.jpg");
}

/* 3. Refined hero headline */

.hero .hero-content h1 {
    max-width: 800px;
    font-size: clamp(46px, 5.5vw, 80px);
    font-weight: 500;
    line-height: 1.12;
    letter-spacing: -0.035em;
    margin-bottom: 30px;
}

.hero .hero-content p {
    max-width: 580px;
    font-size: 17px;
    line-height: 1.65;
}

/* 4. Restore the cream-colored curve */

.hero::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 48px;
    background: var(--amyu-cream);
    clip-path: ellipse(75% 100% at 50% 100%);
    pointer-events: none;
    z-index: 2;
}

/* 5. Mobile refinements */

@media (max-width: 900px) {

    .hero .hero-content h1 {
        font-size: clamp(38px, 6.5vw, 62px);
    }
}

@media (max-width: 600px) {

    .hero {
        background-image:
            linear-gradient(
                180deg,
                rgba(8, 24, 23, 0.55),
                rgba(8, 24, 23, 0.72)
            ),
            url("assets/images/hero-left.jpg");
    }

    .hero .hero-content h1 {
        font-size: clamp(34px, 8vw, 44px);
        line-height: 1.12;
    }

    .hero .hero-content p {
        font-size: 15px;
    }

    .hero::after {
        height: 26px;
    }
}

/* ==========================================
   STEP 56 — MUSANA-INSPIRED PROGRAMME CARDS
========================================== */

/* Programme grid */

.approach-section .approach-grid {
    gap: 22px;
}

/* Individual cards */

.approach-section .approach-card {
    position: relative;
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid rgba(7, 59, 57, 0.12);
    border-radius: 2px;
    padding: 42px 34px;
    min-height: 400px;

    transition:
        background-color 0.4s ease,
        border-color 0.4s ease,
        box-shadow 0.4s ease,
        transform 0.4s ease;
}

/* Decorative line at top */

.approach-section .approach-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 55px;
    height: 4px;
    background: #489350;

    transition:
        width 0.45s ease,
        background-color 0.45s ease;
}

/* Card numbering */

.approach-section .approach-card > span {
    color: #489350;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 48px;
}

/* Programme title */

.approach-section .approach-card h3 {
    color: #174F2D;
    font-size: clamp(24px, 2.4vw, 33px);
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
}

/* Description */

.approach-section .approach-card p {
    color: #53635B;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 35px;
}

/* Links */

.approach-section .approach-card a {
    color: #174F2D;
    font-weight: 600;
    border-bottom: 1px solid #489350;
    padding-bottom: 7px;
}

/* Smooth color transitions */

.approach-section .approach-card > span,
.approach-section .approach-card h3,
.approach-section .approach-card p,
.approach-section .approach-card a {
    transition:
        color 0.35s ease,
        border-color 0.35s ease;
}

/* Interactive hover effect */

@media (hover: hover) and (prefers-reduced-motion: no-preference) {

    .approach-section .approach-card:hover {
        background: #174F2D;
        border-color: #174F2D;
        transform: translateY(-8px);
        box-shadow: 0 22px 45px rgba(7,59,57,0.16);
    }

    .approach-section .approach-card:hover::before {
        width: 100%;
        background: #F5AE62;
    }

    .approach-section .approach-card:hover > span {
        color: #F5AE62;
    }

    .approach-section .approach-card:hover h3,
    .approach-section .approach-card:hover p,
    .approach-section .approach-card:hover a {
        color: #FFFFFF;
    }

    .approach-section .approach-card:hover a {
        border-color: #F5AE62;
    }
}

/* Tablet */

@media (max-width: 900px) {
    .approach-section .approach-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 600px) {

    .approach-section .approach-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .approach-section .approach-card {
        min-height: 0;
        padding: 35px 25px;
    }

    .approach-section .approach-card > span {
        margin-bottom: 30px;
    }

    .approach-section .approach-card h3 {
        font-size: 26px;
    }
}

/* ==========================================
   STEP 57 — ABOUT AMYU SECTION REDESIGN
========================================== */

.about-section {
    padding: 120px 6%;
    background: #F7F3E7;
}

/* Section heading */

.about-section .about-heading {
    max-width: 1050px;
    margin: 0 auto 75px;
    text-align: left;
}

.about-section .about-heading > p {
    color: #489350;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .16em;
    margin-bottom: 25px;
}

.about-section .about-heading h2 {
    max-width: 950px;
    color: #174F2D;
    font-size: clamp(44px, 5.7vw, 80px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.04em;
    margin-bottom: 28px;
}

.about-section .about-heading > span {
    max-width: 720px;
    color: #53635B;
    font-size: 17px;
    line-height: 1.75;
}

/* Mission and vision */

.about-section .about-content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    max-width: 1400px;
    margin: 0 auto;
}

.about-section .about-mission,
.about-section .about-vision {
    min-height: 340px;
    padding: 55px 45px;
    border: 0;
    border-radius: 2px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.about-section .about-mission {
    background: #174F2D;
}

.about-section .about-vision {
    background: #FFFFFF;
}

.about-section .about-mission > span {
    color: #F5AE62;
}

.about-section .about-vision > span {
    color: #489350;
}

.about-section .about-mission h3,
.about-section .about-vision h3 {
    font-size: clamp(25px, 2.7vw, 38px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.025em;
    margin: 28px 0;
}

.about-section .about-mission h3 {
    color: #FFFFFF;
}

.about-section .about-vision h3 {
    color: #174F2D;
}

.about-section .about-mission p {
    color: #D6E7DF;
}

.about-section .about-vision p {
    color: #53635B;
}

.about-section .about-mission p,
.about-section .about-vision p {
    font-size: 15px;
    line-height: 1.8;
}

/* Core values */

.about-section .about-values {
    max-width: 1400px;
    margin: 90px auto 0;
    text-align: left;
}

.about-section .about-values > p {
    color: #489350;
    font-size: 12px;
    letter-spacing: .16em;
}

.about-section .about-values h3 {
    color: #174F2D;
    font-size: clamp(30px, 3.5vw, 46px);
    letter-spacing: -.03em;
    margin-bottom: 35px;
}

.about-section .values-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.about-section .values-grid span {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 95px;
    padding: 25px;
    background: #FFFFFF;
    color: #174F2D;
    border: 1px solid rgba(7,59,57,.12);
    border-left: 4px solid #489350;
    border-radius: 2px;
    font-size: 15px;
    font-weight: 600;
    text-align: left;
    transition:
        background .35s ease,
        color .35s ease,
        transform .35s ease;
}

@media (hover: hover) {
    .about-section .values-grid span:hover {
        background: #174F2D;
        color: #FFFFFF;
        transform: translateY(-4px);
    }
}

/* Tablet */

@media (max-width: 900px) {
    .about-section .values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 600px) {
    .about-section {
        padding: 80px 24px;
    }

    .about-section .about-heading {
        margin-bottom: 45px;
    }

    .about-section .about-heading h2 {
        font-size: clamp(35px, 8.5vw, 48px);
    }

    .about-section .about-heading > span {
        font-size: 15px;
    }

    .about-section .about-content {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .about-section .about-mission,
    .about-section .about-vision {
        min-height: 0;
        padding: 35px 26px;
    }

    .about-section .about-values {
        margin-top: 65px;
    }

    .about-section .values-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .about-section .values-grid span {
        min-height: 75px;
    }
}

/* ==========================================
   STEP 58 — OUR IMPACT REDESIGN
========================================== */

.impact-section {
    padding: 125px 6%;
    background: #174F2D;
    color: #FFFFFF;
}

/* Section heading */

.impact-section .impact-heading {
    max-width: 1050px;
    margin: 0 auto 80px;
    text-align: center;
}

.impact-section .impact-heading > p {
    color: #F5AE62;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .18em;
    margin-bottom: 25px;
}

.impact-section .impact-heading h2 {
    color: #F5AE62;
    font-family: var(--amyu-font);
    font-size: clamp(44px, 5.6vw, 78px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.04em;
    margin-bottom: 28px;
}

.impact-section .impact-heading > span {
    display: block;
    max-width: 700px;
    margin: 0 auto;
    color: #C7DCD5;
    font-size: 16px;
    line-height: 1.8;
}

/* Four impact cards */

.impact-section .impact-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    max-width: 1400px;
    margin: 0 auto;
    gap: 18px;
}

.impact-section .impact-card {
    min-height: 310px;
    padding: 38px 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 2px;
    text-align: left;

    transition:
        background .4s ease,
        transform .4s ease,
        box-shadow .4s ease;
}

.impact-section .impact-card h3 {
    color: #F5AE62;
    font-size: clamp(38px, 4vw, 60px);
    font-weight: 500;
    margin-bottom: 36px;
    line-height: 1;
}

.impact-section .impact-card p {
    color: #FFFFFF;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 16px;
}

.impact-section .impact-card span {
    color: #C7DCD5;
    font-size: 14px;
    line-height: 1.75;
}

/* Hover */

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .impact-section .impact-card:hover {
        background: rgba(255,255,255,.12);
        transform: translateY(-8px);
        box-shadow: 0 20px 40px rgba(0,0,0,.12);
    }
}

/* Tablet */

@media (max-width: 900px) {
    .impact-section .impact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 600px) {
    .impact-section {
        padding: 85px 24px;
    }

    .impact-section .impact-heading {
        margin-bottom: 45px;
    }

    .impact-section .impact-heading h2 {
        font-size: clamp(36px, 8.5vw, 48px);
    }

    .impact-section .impact-heading > span {
        font-size: 15px;
    }

    .impact-section .impact-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .impact-section .impact-card {
        min-height: 0;
        padding: 32px 26px;
    }

    .impact-section .impact-card h3 {
        font-size: 44px;
        margin-bottom: 28px;
    }

    .impact-section .impact-card p {
        font-size: 18px;
    }
}

/* ==========================================
   STEP 59 — GET INVOLVED AND PARTNERSHIPS
========================================== */

/* GET INVOLVED SECTION */

.get-involved-section {
    padding: 120px 6%;
    background: #F7F3E7;
}

.get-involved-section .get-involved-heading {
    max-width: 1050px;
    margin: 0 auto 70px;
    text-align: left;
}

.get-involved-section .get-involved-heading > p {
    color: #489350;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .16em;
    margin-bottom: 25px;
}

.get-involved-section .get-involved-heading h2 {
    color: #174F2D;
    font-size: clamp(42px, 5.5vw, 76px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.04em;
    margin-bottom: 28px;
}

.get-involved-section .get-involved-heading > span {
    display: block;
    max-width: 720px;
    color: #53635B;
    font-size: 17px;
    line-height: 1.75;
}

/* THREE PARTICIPATION CARDS */

.get-involved-section .get-involved-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 1400px;
    gap: 20px;
    margin: auto;
}

.get-involved-section .involved-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-height: 320px;
    padding: 42px 34px;
    background: #FFFFFF;
    border: 1px solid rgba(7,59,57,.12);
    border-bottom: 4px solid #489350;
    border-radius: 2px;
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        background .35s ease;
}

.get-involved-section .involved-card > span {
    color: #489350;
    font-size: 32px;
    font-weight: 500;
}

.get-involved-section .involved-card h3 {
    color: #174F2D;
    font-size: clamp(25px, 2.6vw, 36px);
    font-weight: 700;
    letter-spacing: -.03em;
}

.get-involved-section .involved-card a {
    color: #174F2D;
    font-size: 14px;
    font-weight: 600;
    border-bottom: 1px solid #489350;
    padding-bottom: 7px;
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .get-involved-section .involved-card:hover {
        transform: translateY(-8px);
        background: #FDFBF6;
        box-shadow: 0 20px 45px rgba(7,59,57,.12);
    }
}

/* PARTNERSHIPS SECTION */

.partners-section {
    padding: 120px 6%;
    background: #FFFFFF;
}

.partners-section .partners-heading {
    max-width: 1050px;
    margin: 0 auto 70px;
    text-align: left;
}

.partners-section .partners-heading > p {
    color: #489350;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .16em;
    margin-bottom: 25px;
}

.partners-section .partners-heading h2 {
    color: #174F2D;
    font-size: clamp(42px, 5.5vw, 76px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.04em;
    margin-bottom: 28px;
}

.partners-section .partners-heading > span {
    display: block;
    max-width: 720px;
    color: #53635B;
    font-size: 17px;
    line-height: 1.75;
}

/* LARGE PARTNERSHIP CALL TO ACTION */

.partners-section .partners-cta {
    max-width: 1400px;
    min-height: 260px;
    margin: auto;
    padding: 55px 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    background: #174F2D;
    border-radius: 2px;
}

.partners-section .partners-cta h3 {
    color: #F5AE62;
    font-size: clamp(26px, 3vw, 40px);
    font-weight: 700;
    letter-spacing: -.03em;
    margin-bottom: 16px;
}

.partners-section .partners-cta p {
    max-width: 690px;
    color: #D6E7DF;
    font-size: 15px;
    line-height: 1.8;
}

.partners-section .partners-cta a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 17px 26px;
    background: #F7F3E7;
    color: #174F2D;
    border-radius: 2px;
    font-size: 13px;
    font-weight: 700;
    transition:
        background .3s ease,
        transform .3s ease;
}

.partners-section .partners-cta a:hover {
    background: #F5AE62;
    color: #174F2D;
    transform: translateY(-3px);
}

/* TABLET */

@media (max-width: 900px) {
    .get-involved-section .get-involved-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .partners-section .partners-cta {
        padding: 40px;
    }
}

/* MOBILE */

@media (max-width: 600px) {
    .get-involved-section,
    .partners-section {
        padding: 80px 24px;
    }

    .get-involved-section .get-involved-heading,
    .partners-section .partners-heading {
        margin-bottom: 45px;
    }

    .get-involved-section .get-involved-heading h2,
    .partners-section .partners-heading h2 {
        font-size: clamp(35px, 8.5vw, 48px);
    }

    .get-involved-section .get-involved-heading > span,
    .partners-section .partners-heading > span {
        font-size: 15px;
    }

    .get-involved-section .get-involved-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .get-involved-section .involved-card {
        min-height: 230px;
        padding: 32px 26px;
    }

    .partners-section .partners-cta {
        min-height: 0;
        padding: 35px 26px;
        flex-direction: column;
        align-items: flex-start;
        gap: 25px;
    }

    .partners-section .partners-cta a {
        width: 100%;
        text-align: center;
    }
}



/* =========================================
   AMYU MULTI-PAGE SYSTEM
   Does not change the homepage design.
========================================= */

.inner-page .main-header {
    position: absolute;
    z-index: 1000;
}

.inner-page .page-banner {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 480px;
    padding: 180px 7% 100px;
    color: #fff;
    background:
        linear-gradient(
            90deg,
            rgba(23,79,45,.94),
            rgba(23,79,45,.73)
        ),
        url("assets/images/hero-left.jpg")
        center / cover no-repeat;
}

.inner-page .page-banner::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 30px;
    background: #F7F3E7;
    clip-path: ellipse(75% 100% at 50% 100%);
    pointer-events: none;
}

.inner-page .page-banner-inner {
    width: 100%;
    max-width: 1150px;
    margin: 0 auto;
}

.inner-page .page-kicker,
.inner-page .resources-kicker {
    color: #F5AE62;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .18em;
    margin-bottom: 22px;
}

.inner-page .page-banner h1 {
    max-width: 1000px;
    color: #fff;
    font-size: clamp(40px, 6vw, 78px);
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -.04em;
    margin-bottom: 24px;
}

.inner-page .page-intro {
    max-width: 650px;
    color: #EDF5EE;
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 28px;
}

.inner-page .page-home-link {
    display: inline-block;
    color: #fff;
    border-bottom: 1px solid #F5AE62;
    padding-bottom: 6px;
    font-size: 13px;
    font-weight: 600;
}

.inner-page .resources-section {
    background: #F7F3E7;
    padding: 120px 7%;
}

.inner-page .resources-inner {
    max-width: 1150px;
    margin: auto;
}

.inner-page .resources-section h2 {
    max-width: 800px;
    color: #174F2D;
    font-size: clamp(36px, 5vw, 70px);
    line-height: 1.1;
    margin-bottom: 25px;
}

.inner-page .resources-section p:not(.resources-kicker) {
    max-width: 700px;
    color: #53635B;
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 32px;
}

.inner-page .resources-button {
    display: inline-flex;
    background: #489350;
    color: #fff;
    padding: 17px 25px;
    font-weight: 600;
}

.inner-page .resources-button:hover {
    background: #174F2D;
}

@media (max-width: 900px) {
    .inner-page .page-banner {
        padding-top: 160px;
    }
}

@media (max-width: 600px) {
    .inner-page .page-banner {
        min-height: 430px;
        padding: 155px 24px 80px;
    }

    .inner-page .page-banner h1 {
        font-size: clamp(35px, 9vw, 48px);
    }

    .inner-page .page-intro {
        font-size: 15px;
    }

    .inner-page .resources-section {
        padding: 80px 24px;
    }
}


/* ==========================================
   ABOUT AMYU NAVIGATION & PAGES
========================================== */

.main-header .about-menu {
    position: relative;
    display: flex;
    align-items: center;
}

.main-header .about-menu-trigger {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 58px;
    padding: 0 14px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.main-header .about-menu-trigger:hover,
.main-header .about-menu-trigger[aria-expanded="true"] {
    background: rgba(0,0,0,.14);
}

.main-header .about-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    width: 295px;
    max-height: 75vh;
    overflow-y: auto;
    padding: 12px;
    background: #F7F3E7;
    box-shadow: 0 18px 35px rgba(0,0,0,.2);
    z-index: 1200;
}

.main-header .about-dropdown[hidden] {
    display: none !important;
}

.main-header .about-dropdown a {
    display: block;
    min-height: auto;
    padding: 14px 16px;
    color: #174F2D;
    font-size: 14px;
    font-weight: 500;
    border-bottom: 1px solid rgba(23,79,45,.12);
}

.main-header .about-dropdown a:hover {
    color: #fff;
    background: #489350;
}

.about-subpage .about-page-hero {
    position: relative;
    min-height: 540px;
    display: flex;
    align-items: center;
    padding: 170px 7% 110px;
    background-color: #174F2D;
    background-image:
        linear-gradient(90deg,
            rgba(20,52,31,.82),
            rgba(20,52,31,.30)
        ),
        var(--about-photo);
    background-size: cover;
    background-position: center;
    color: #fff;
}

.about-subpage .about-page-hero::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 42px;
    background: #F7F3E7;
    clip-path: ellipse(75% 100% at 50% 100%);
}

.about-page-hero-inner {
    width: 100%;
    max-width: 1250px;
    margin: auto;
}

.about-page-hero-inner span {
    color: #F5AE62;
    font-size: 12px;
    letter-spacing: .18em;
}

.about-page-hero-inner h1 {
    max-width: 950px;
    margin: 28px 0;
    color: #fff;
    font-size: clamp(45px, 6.5vw, 86px);
    line-height: 1.08;
    letter-spacing: -.04em;
}

.about-page-hero-inner p {
    max-width: 650px;
    color: #ECF3EB;
    font-size: 18px;
    line-height: 1.6;
}

.about-detail-section {
    background: #F7F3E7;
    padding: 105px 7%;
}

.about-detail-section:nth-of-type(even) {
    background: #fff;
}

.about-detail-inner {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 55px;
    max-width: 1300px;
    margin: auto;
}

.about-detail-label,
.team-kicker {
    color: #489350;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
}

.about-detail-content h2,
.team-list-section h2 {
    color: #174F2D;
    font-size: clamp(36px, 4.5vw, 64px);
    line-height: 1.15;
    letter-spacing: -.04em;
    margin-bottom: 30px;
}

.about-detail-content p {
    max-width: 760px;
    color: #53635B;
    font-size: 17px;
    line-height: 1.85;
    margin-bottom: 18px;
}

.team-list-section {
    padding: 100px 7%;
    background: #fff;
}

.team-list-inner {
    max-width: 1300px;
    margin: auto;
}

.team-list-inner > p {
    margin-bottom: 18px;
}

.team-profile-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 22px;
    margin-top: 50px;
}

.team-photo-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 300px;
    background: #E4EBDD;
    color: #489350;
    font-size: 26px;
    letter-spacing: .08em;
}

.team-placeholder h3 {
    margin: 18px 0 7px;
    font-size: 20px;
    color: #174F2D;
}

.team-placeholder p {
    color: #53635B;
    font-size: 14px;
}

.photo-about {
    --about-photo: url("assets/images/about-about.jpg");
}
.photo-challenge {
    --about-photo: url("assets/images/about-challenge.jpg");
}
.photo-mission {
    --about-photo: url("assets/images/about-mission.jpg");
}
.photo-work {
    --about-photo: url("assets/images/about-work.jpg");
}
.photo-story {
    --about-photo: url("assets/images/about-story.jpg");
}
.photo-values {
    --about-photo: url("assets/images/about-values.jpg");
}
.photo-team {
    --about-photo: url("assets/images/about-team.jpg");
}

@media (max-width: 900px) {
    .main-header .about-menu {
        display: block;
        width: 100%;
    }

    .main-header .about-menu-trigger {
        width: 100%;
        min-height: 50px;
        justify-content: space-between;
        color: #174F2D;
        padding: 12px 5px;
        font-size: 16px;
    }

    .main-header .about-dropdown {
        position: static;
        width: 100%;
        max-height: 55vh;
        box-shadow: none;
        background: #F7F3E7;
        padding: 8px;
    }

    .main-header .about-dropdown a {
        padding: 12px;
        font-size: 14px;
    }

    .about-detail-inner {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .team-profile-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 600px) {
    .about-subpage .about-page-hero {
        min-height: 480px;
        padding: 145px 24px 85px;
    }

    .about-page-hero-inner h1 {
        font-size: clamp(36px, 9vw, 52px);
    }

    .about-page-hero-inner p {
        font-size: 15px;
    }

    .about-detail-section,
    .team-list-section {
        padding: 70px 24px;
    }

    .about-detail-content p {
        font-size: 15px;
    }

    .team-profile-grid {
        grid-template-columns: 1fr;
    }
}



/* ============================================
   AMYU ABOUT EXPERIENCE UPGRADE
============================================ */

/* SECTION NAVIGATION */

.about-section-nav {
    position: sticky;
    top: 0;
    z-index: 500;
    background: #F7F3E7;
    border-bottom: 1px solid rgba(23,79,45,.14);
}

.about-section-nav-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    max-width: 1400px;
    margin: auto;
    padding: 12px 24px;
}

.about-section-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 45px;
    padding: 10px 15px;
    color: #174F2D;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    border-radius: 3px;
    transition:
        background .25s ease,
        color .25s ease;
}

.about-section-nav a:hover,
.about-section-nav a.is-active {
    color: #FFFFFF;
    background: #489350;
}

.about-subpage .about-detail-section {
    scroll-margin-top: 95px;
}

/* PHOTO-ENHANCED SECTIONS */

.about-subpage .about-detail-section:has(
    .about-detail-visual
) .about-detail-inner {
    display: grid;
    grid-template-columns:
        minmax(120px, .6fr)
        minmax(0, 1.7fr)
        minmax(250px, 1.3fr);
    gap: 35px;
    align-items: center;
}

.about-detail-visual {
    position: relative;
    height: 380px;
    min-width: 0;
    overflow: hidden;
    background: #DDE8DA;
}

.about-detail-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .75s
        cubic-bezier(.22,1,.36,1);
}

.about-detail-visual::after {
    content: "";
    position: absolute;
    inset: 45% 0 0;
    background: linear-gradient(
        transparent,
        rgba(12,41,25,.68)
    );
    pointer-events: none;
}

.about-detail-visual span {
    position: absolute;
    bottom: 22px;
    left: 22px;
    right: 22px;
    z-index: 1;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}

@media (hover: hover) {
    .about-detail-visual:hover img {
        transform: scale(1.06);
    }
}

/* ABOUT SECTION TYPOGRAPHY */

.about-subpage .about-detail-content h2 {
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1.1;
    margin-bottom: 25px;
}

.about-subpage .about-detail-content p {
    line-height: 1.85;
}

.about-subpage .about-detail-label {
    align-self: start;
    padding-top: 13px;
}

/* LEADERSHIP & TEAM */

.about-subpage .team-list-section {
    background: #FFFFFF;
}

.about-subpage .team-list-inner {
    max-width: 1350px;
}

.about-subpage .team-list-section h2 {
    max-width: 800px;
    margin-top: 20px;
    margin-bottom: 25px;
}

.about-subpage .team-profile-grid {
    gap: 25px;
    margin-top: 55px;
}

.about-subpage .team-placeholder {
    background: #F7F3E7;
    overflow: hidden;
    padding-bottom: 25px;
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.about-subpage .team-photo-placeholder {
    height: 340px;
    background:
        linear-gradient(
            145deg,
            #D9E8D1,
            #B8D6AE
        );
    color: #489350;
    font-weight: 700;
}

.about-subpage .team-placeholder h3 {
    margin: 24px 24px 8px;
    color: #174F2D;
}

.about-subpage .team-placeholder p {
    margin: 0 24px;
    color: #53635B;
}

@media (hover: hover) {
    .about-subpage .team-placeholder:hover {
        transform: translateY(-7px);
        box-shadow:
            0 18px 35px
            rgba(23,79,45,.12);
    }
}

/* SCROLL REVEAL */

@media (prefers-reduced-motion: no-preference) {
    .about-subpage.about-enhanced
    .about-detail-section {
        opacity: 0;
        transform: translateY(35px);
        transition:
            opacity .85s ease,
            transform .85s
            cubic-bezier(.22,1,.36,1);
    }

    .about-subpage.about-enhanced
    .about-detail-section.is-in-view {
        opacity: 1;
        transform: translateY(0);
    }
}

/* TABLET */

@media (max-width: 1100px) {
    .about-section-nav-inner {
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: thin;
    }

    .about-subpage .about-detail-section:has(
        .about-detail-visual
    ) .about-detail-inner {
        grid-template-columns:
            minmax(100px, .5fr)
            minmax(0, 1.5fr);
    }

    .about-detail-visual {
        grid-column: 2;
        width: 100%;
        height: 320px;
    }
}

/* MOBILE */

@media (max-width: 700px) {
    .about-section-nav-inner {
        padding: 10px 14px;
        gap: 5px;
    }

    .about-section-nav a {
        min-height: 40px;
        padding: 8px 12px;
        font-size: 12px;
    }

    .about-subpage .about-detail-section:has(
        .about-detail-visual
    ) .about-detail-inner {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .about-detail-visual {
        grid-column: 1;
        height: 300px;
    }

    .about-subpage .about-detail-content h2 {
        font-size: clamp(32px, 8vw, 44px);
    }

    .about-subpage .team-profile-grid {
        grid-template-columns: 1fr;
    }

    .about-subpage .team-photo-placeholder {
        height: 290px;
    }
}


/* AMYU FULL WIDTH PHOTO STORY */

/* Immersive photographic storytelling */

.about-subpage .amyu-photo-story {
    position: relative;
    width: 100%;
    min-height: 650px;
    background-color: #174F2D;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
}

.about-subpage .photo-story-challenge {
    background-image:
        linear-gradient(
            180deg,
            rgba(12,35,20,.05),
            rgba(12,35,20,.78)
        ),
        url("assets/images/story-challenge.jpg");
}

.about-subpage .photo-story-work {
    background-image:
        linear-gradient(
            180deg,
            rgba(12,35,20,.05),
            rgba(12,35,20,.78)
        ),
        url("assets/images/story-work.jpg");
}

.about-subpage .photo-story-team {
    background-image:
        linear-gradient(
            180deg,
            rgba(12,35,20,.05),
            rgba(12,35,20,.78)
        ),
        url("assets/images/story-team.jpg");
}

.about-subpage .amyu-photo-story-overlay {
    width: 100%;
    padding: 100px 7% 85px;
}

.about-subpage .amyu-photo-story-content {
    max-width: 1150px;
    margin: auto;
}

.about-subpage .amyu-photo-story-content span {
    display: block;
    color: #F5AE62;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .2em;
    margin-bottom: 25px;
}

.about-subpage .amyu-photo-story-content h2 {
    max-width: 1050px;
    margin: 0;
    color: #FFFFFF;
    font-size: clamp(40px, 5.7vw, 80px);
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -.04em;
}

/* Small image movement on hover */

@media (hover: hover)
and (prefers-reduced-motion: no-preference) {
    .about-subpage .amyu-photo-story {
        transition: background-size .8s ease;
    }
}

/* Tablet */

@media (max-width: 900px) {
    .about-subpage .amyu-photo-story {
        min-height: 500px;
    }

    .about-subpage .amyu-photo-story-overlay {
        padding: 75px 6%;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .about-subpage .amyu-photo-story {
        min-height: 430px;
    }

    .about-subpage .amyu-photo-story-overlay {
        padding: 60px 24px;
    }

    .about-subpage .amyu-photo-story-content h2 {
        font-size: clamp(34px, 9vw, 48px);
        line-height: 1.13;
    }

    .about-subpage .amyu-photo-story-content span {
        font-size: 10px;
        margin-bottom: 18px;
    }
}



/* ==========================================
   AMYU ABOUT V2 ORGANIZED LAYOUT
   Musana-inspired information architecture
========================================== */

.about-v2 {
    --about-dark: #174F2D;
    --about-green: #489350;
    --about-cream: #F7F3E7;
    color: var(--about-dark);
}

.about-v2-container {
    width: min(100% - 48px, 1060px);
    margin-inline: auto;
}

.about-v2 section {
    scroll-margin-top: 75px;
}

/* Compact photographic hero */

.about-subpage .about-v2 .about-page-hero {
    min-height: 400px;
    padding: 145px 7% 85px;
}

.about-subpage .about-v2 .about-page-hero-inner {
    max-width: 1060px;
}

.about-subpage .about-v2 .about-page-hero h1 {
    font-size: clamp(38px, 5.5vw, 65px);
    font-weight: 600;
    margin: 15px 0;
}

.about-subpage .about-v2 .about-page-hero p {
    font-size: 15px;
}

/* Jump navigation */

.about-v2-jumps {
    background: var(--about-cream);
    padding: 20px 0;
}

.about-v2-jumps strong {
    display: block;
    margin-bottom: 12px;
    font-size: 12px;
}

.about-v2-jump-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.about-v2-jump-links a {
    display: inline-flex;
    padding: 9px 13px;
    border: 1px solid var(--about-green);
    border-radius: 30px;
    color: var(--about-dark);
    font-size: 12px;
    line-height: 1.4;
    transition: background .25s, color .25s;
}

.about-v2-jump-links a:hover,
.about-v2-jump-links a:focus-visible {
    color: white;
    background: var(--about-green);
}

/* Challenge */

.about-v2-challenge {
    padding: 72px 0;
    background: #FFFFFF;
}

.about-v2-challenge-grid {
    display: grid;
    grid-template-columns: 210px 1fr;
    align-items: center;
    gap: 65px;
}

.about-v2-circle-photo {
    width: 195px;
    aspect-ratio: 1;
    border-radius: 50%;
    overflow: hidden;
    background: #DCE7DA;
}

.about-v2-circle-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-v2 h2 {
    font-size: clamp(22px, 2.8vw, 34px);
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: -.025em;
    color: var(--about-dark);
}

.about-v2 h2 strong {
    font-weight: 800;
}

.about-v2-challenge h2 {
    margin-bottom: 22px;
}

.about-v2-challenge p,
.about-v2-story-copy p {
    max-width: 690px;
    color: #43564A;
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 14px;
}

/* Mission statement */

.about-v2-mission {
    background: var(--about-dark);
    padding: 68px 0;
    text-align: center;
}

.about-v2-mission h2,
.about-v2-mission h3 {
    color: #FFFFFF;
    font-size: 22px;
    font-weight: 400;
    margin-bottom: 20px;
}

.about-v2-mission p {
    max-width: 750px;
    margin: 0 auto;
    color: #FFFFFF;
    font-size: clamp(17px, 2.2vw, 23px);
    font-weight: 700;
    line-height: 1.5;
}

.about-v2-mission h3 {
    margin-top: 42px;
    margin-bottom: 12px;
    font-size: 16px;
    letter-spacing: .1em;
}

.about-v2-mission .about-v2-vision {
    font-size: 16px;
    font-weight: 400;
}

/* Work at a glance */

.about-v2-work {
    background: #FFFFFF;
    padding: 85px 0;
}

.about-v2-section-heading {
    max-width: 760px;
    margin: 0 auto 55px;
    text-align: center;
}

.about-v2-section-heading h2 {
    margin-bottom: 18px;
}

.about-v2-section-heading p {
    color: #43564A;
    font-size: 14px;
    line-height: 1.75;
}

.about-v2-work-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 35px;
}

.about-v2-work-grid article {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.about-v2-work-symbol {
    width: 65px;
    height: 65px;
    display: grid;
    place-items: center;
    border: 1px solid var(--about-dark);
    border-radius: 50%;
    color: var(--about-dark);
    font-size: 20px;
    margin-bottom: 25px;
}

.about-v2-work-grid h3 {
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 18px;
}

.about-v2-work-grid p {
    color: #43564A;
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 22px;
}

.about-v2-work-grid a {
    color: var(--about-dark);
    border-top: 2px solid var(--about-green);
    padding-top: 13px;
    margin-top: auto;
    font-size: 12px;
    font-weight: 700;
}

/* Our Story and Our Values */

.about-v2-story-values {
    background: var(--about-cream);
    padding: 85px 0;
}

.about-v2-centered-heading {
    text-align: center;
    margin-bottom: 45px;
}

.about-v2-story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 85px;
    align-items: start;
}

.about-v2-story-copy a,
.about-v2-disclosure-body a {
    display: inline-block;
    color: var(--about-dark);
    font-size: 13px;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 4px;
    margin-top: 10px;
}

.about-v2-values h3 {
    font-size: 18px;
    margin-bottom: 18px;
}

.about-v2 details {
    border-bottom: 1px solid rgba(23,79,45,.55);
}

.about-v2 details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 15px 0;
    cursor: pointer;
    list-style: none;
    color: var(--about-dark);
    font-size: 14px;
    font-weight: 600;
}

.about-v2 details summary::-webkit-details-marker {
    display: none;
}

.about-v2 details summary::after {
    content: "+";
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    background: var(--about-dark);
    color: #FFFFFF;
    font-size: 18px;
    line-height: 1;
}

.about-v2 details[open] summary::after {
    content: "−";
}

.about-v2 details p {
    color: #43564A;
    font-size: 13px;
    line-height: 1.75;
    margin: 0 0 18px;
}

/* Team and partners */

.about-v2-team {
    background: #FFFFFF;
    padding: 85px 0 110px;
}

.about-v2-team-accordions {
    max-width: 950px;
    margin: auto;
}

.about-v2-team-accordions summary {
    font-size: 18px !important;
    font-weight: 700 !important;
}

.about-v2-disclosure-body {
    padding: 15px 0 30px;
}

.about-v2-profile-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 25px;
}

.about-v2-profile {
    background: var(--about-cream);
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.about-v2-avatar {
    height: 180px;
    display: grid;
    place-items: center;
    background: #D7E4D3;
    color: var(--about-green);
    font-weight: 800;
    letter-spacing: .1em;
    margin-bottom: 10px;
}

.about-v2-profile strong {
    font-size: 14px;
}

.about-v2-profile span {
    font-size: 12px;
    color: #53635B;
}

/* Responsive */

@media (max-width: 800px) {
    .about-v2-challenge-grid {
        grid-template-columns: 170px 1fr;
        gap: 30px;
    }

    .about-v2-circle-photo {
        width: 165px;
    }

    .about-v2-story-grid {
        gap: 35px;
    }

    .about-v2-work-grid {
        gap: 20px;
    }
}

@media (max-width: 600px) {
    .about-v2-container {
        width: min(100% - 40px, 1060px);
    }

    .about-subpage .about-v2 .about-page-hero {
        min-height: 350px;
        padding: 135px 24px 65px;
    }

    .about-v2-challenge,
    .about-v2-work,
    .about-v2-story-values,
    .about-v2-team {
        padding: 65px 0;
    }

    .about-v2-challenge-grid,
    .about-v2-story-grid,
    .about-v2-work-grid {
        grid-template-columns: 1fr;
    }

    .about-v2-circle-photo {
        width: 155px;
        margin: 0 auto;
    }

    .about-v2-work-grid {
        gap: 45px;
    }

    .about-v2-mission {
        padding: 65px 0;
    }

    .about-v2-profile-grid {
        grid-template-columns: 1fr;
    }

    .about-v2-team-accordions summary {
        font-size: 15px !important;
    }
}



/* AMYU STORY PAGE UPDATE */

.about-subpage.photo-story {
    --about-photo:
        url("assets/images/story-hero-new.jpg");
}

.photo-story .about-page-hero {
    background-position: center 42%;
}

.amyu-story-page {
    color: #174F2D;
    background: #FFFFFF;
}

.amyu-story-intro,
.amyu-story-ending {
    max-width: 900px;
    margin: auto;
    padding: 100px 7%;
}

.amyu-story-page h2 {
    color: #174F2D;
    font-size: clamp(34px, 4.5vw, 60px);
    letter-spacing: -.04em;
    line-height: 1.12;
    margin-bottom: 30px;
}

.amyu-story-page p {
    color: #53635B;
    font-size: 16px;
    line-height: 1.85;
    margin-bottom: 20px;
}

.amyu-story-page .story-label {
    color: #489350;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .15em;
    margin-bottom: 22px;
}

.amyu-story-feature {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    padding: 90px max(7%, calc((100% - 1200px)/2));
    background: #F7F3E7;
}

.amyu-story-feature:nth-of-type(4) {
    background: #EAF2E8;
}

.amyu-story-page a {
    display: inline-block;
    margin-top: 16px;
    padding-bottom: 6px;
    color: #174F2D;
    border-bottom: 2px solid #489350;
    font-size: 14px;
    font-weight: 700;
}

.amyu-story-ending {
    text-align: center;
}

.amyu-story-page .story-note {
    font-size: 13px;
    font-style: italic;
}

@media (max-width: 700px) {
    .amyu-story-feature {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 70px 24px;
    }

    .amyu-story-intro,
    .amyu-story-ending {
        padding: 75px 24px;
    }

    .amyu-story-page p {
        font-size: 15px;
    }
}


/* AMYU STORY EDITORIAL REFINEMENT */

/* Unified reading column */

.photo-story .amyu-story-page {
    background: #FFFFFF;
    color: #174F2D;
}

.photo-story .amyu-story-intro,
.photo-story .amyu-story-ending,
.photo-story .amyu-story-feature {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 76px max(
        7%,
        calc((100% - 1100px) / 2)
    );
    text-align: left;
}

/* Use the same left starting line throughout */

.photo-story .amyu-story-feature {
    display: block;
}

.photo-story .amyu-story-feature > div {
    max-width: 760px;
}

.photo-story .amyu-story-intro > *,
.photo-story .amyu-story-ending > * {
    max-width: 760px;
}

/* Consistent section backgrounds */

.photo-story .amyu-story-intro {
    background: #FFFFFF;
}

.photo-story .amyu-story-feature {
    background: #F7F3E7;
}

.photo-story .amyu-story-feature:nth-of-type(4) {
    background: #F7F3E7;
}

.photo-story .amyu-story-ending {
    background: #FFFFFF;
}

/* Labels stay visually connected to headings */

.photo-story .amyu-story-page .story-label {
    display: block;
    width: fit-content;
    color: #489350;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .11em;
    text-transform: uppercase;
    margin: 0 0 12px;
}

/* Balanced heading typography */

.photo-story .amyu-story-page h2 {
    max-width: 760px;
    color: #174F2D;
    font-size: clamp(30px, 3.2vw, 46px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -.025em;
    margin: 0 0 22px;
}

/* Editorial paragraph styling */

.photo-story .amyu-story-page p:not(.story-label) {
    max-width: 760px;
    color: #43564A;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0;
    text-align: left;
    margin: 0 0 18px;
}

/* Links */

.photo-story .amyu-story-page a {
    display: inline-block;
    color: #174F2D;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 6px;
    padding-bottom: 5px;
    border-bottom: 2px solid #489350;
    transition: color .25s ease;
}

.photo-story .amyu-story-page a:hover {
    color: #489350;
}

/* Subtle section dividers */

.photo-story .amyu-story-intro,
.photo-story .amyu-story-feature,
.photo-story .amyu-story-ending {
    border-bottom: 1px solid
        rgba(23,79,45,.10);
}

/* Tablet */

@media (max-width: 900px) {
    .photo-story .amyu-story-intro,
    .photo-story .amyu-story-feature,
    .photo-story .amyu-story-ending {
        padding: 65px 6%;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .photo-story .amyu-story-intro,
    .photo-story .amyu-story-feature,
    .photo-story .amyu-story-ending {
        padding: 52px 24px;
    }

    .photo-story .amyu-story-page h2 {
        font-size: clamp(27px, 7vw, 35px);
        line-height: 1.2;
        letter-spacing: -.02em;
        margin-bottom: 18px;
    }

    .photo-story .amyu-story-page p:not(.story-label) {
        font-size: 14px;
        line-height: 1.75;
    }

    .photo-story .amyu-story-page .story-label {
        font-size: 10px;
        margin-bottom: 12px;
    }
}


/* AMYU STORY FINAL EDITORIAL LAYOUT */

/* Main story grid */

.photo-story .amyu-story-intro,
.photo-story .amyu-story-feature {
    display: grid;
    grid-template-columns:
        minmax(0, 0.85fr)
        minmax(0, 1.15fr);
    align-items: start;
    column-gap: clamp(45px, 6vw, 110px);
    max-width: none;
    padding: 85px max(
        7%,
        calc((100% - 1200px) / 2)
    );
    text-align: left;
}

/* Matching text columns */

.photo-story .story-heading-column,
.photo-story .amyu-story-feature > div:first-child {
    max-width: 440px;
    min-width: 0;
}

.photo-story .story-copy-column,
.photo-story .amyu-story-feature > div:last-child {
    max-width: 630px;
    min-width: 0;
}

/* Labels visually belong to their headings */

.photo-story .amyu-story-page .story-label {
    color: #489350;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .13em;
    margin: 0 0 14px;
}

.photo-story .amyu-story-page h2 {
    color: #174F2D;
    font-size: clamp(29px, 3.1vw, 43px);
    font-weight: 700;
    line-height: 1.17;
    letter-spacing: -.025em;
    margin: 0;
}

/* Comfortable paragraph typography */

.photo-story .amyu-story-page p:not(.story-label) {
    color: #43564A;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.78;
    letter-spacing: .005em;
    margin: 0 0 19px;
}

/* Consistent color hierarchy */

.photo-story .amyu-story-intro {
    background: #FFFFFF;
}

.photo-story .amyu-story-feature {
    background: #F7F3E7;
}

.photo-story .amyu-story-feature:nth-of-type(4) {
    background: #F7F3E7;
}

/* Clear, accessible action buttons */

.photo-story .amyu-story-page a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    width: fit-content;
    margin-top: 12px;
    padding: 13px 24px;
    border: 1px solid #489350;
    border-radius: 4px;
    background: #489350;
    color: #FFFFFF;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    transition:
        background .25s ease,
        border-color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.photo-story .amyu-story-page a:hover {
    background: #174F2D;
    border-color: #174F2D;
    color: #FFFFFF;
    box-shadow: 0 8px 22px rgba(23,79,45,.14);
    transform: translateY(-2px);
}

.photo-story .amyu-story-page a:focus-visible {
    outline: 3px solid #F5AE62;
    outline-offset: 3px;
}

/* Center only the conclusion */

.photo-story .amyu-story-ending {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: none;
    text-align: center;
    padding: 100px 7%;
    background: #FFFFFF;
}

.photo-story .amyu-story-ending
.story-heading-column,
.photo-story .amyu-story-ending
.story-copy-column {
    width: 100%;
    max-width: 760px;
    text-align: center;
}

.photo-story .amyu-story-ending
.story-label,
.photo-story .amyu-story-ending h2,
.photo-story .amyu-story-ending p {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.photo-story .amyu-story-ending h2 {
    margin-bottom: 23px;
}

.photo-story .amyu-story-ending a {
    margin-left: auto;
    margin-right: auto;
}

/* Tablet */

@media (max-width: 900px) {
    .photo-story .amyu-story-intro,
    .photo-story .amyu-story-feature {
        column-gap: 35px;
        padding: 65px 6%;
    }
}

/* Mobile: stack heading above text */

@media (max-width: 700px) {
    .photo-story .amyu-story-intro,
    .photo-story .amyu-story-feature {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 60px 24px;
    }

    .photo-story .amyu-story-page h2 {
        font-size: clamp(28px, 7vw, 37px);
        line-height: 1.2;
    }

    .photo-story .amyu-story-page p:not(.story-label) {
        font-size: 14px;
        line-height: 1.75;
    }

    .photo-story .amyu-story-ending {
        padding: 75px 24px;
    }

    .photo-story .amyu-story-page a {
        min-height: 46px;
        padding: 12px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .photo-story .amyu-story-page a {
        transition: none;
    }
}


/* AMYU PROGRAMMES DESIGN SYSTEM V1 */
.amyu-programme-page .amyu-programmes {
  --ap-dark:#174F2D; --ap-green:#489350;
  --ap-cream:#F7F3E7; --ap-ink:#43564A;
  color:var(--ap-dark); font-family:inherit;
}
.amyu-programmes *, .amyu-programmes *::before,
.amyu-programmes *::after {box-sizing:border-box}
.amyu-programmes .ap-wrap {
  width:min(1120px,calc(100% - 60px)); margin-inline:auto;
}
.amyu-programmes .ap-hero {
  min-height:465px; display:flex; align-items:center;
  padding:155px 0 90px; color:white;
  background:linear-gradient(90deg,rgba(8,43,25,.82),rgba(8,43,25,.32)),
  url("assets/images/hero-left.jpg") center/cover no-repeat, #174F2D;
}
.amyu-programmes .ap-hero .ap-wrap {position:relative;z-index:1}
.amyu-programmes .ap-kicker {
  display:block; color:var(--ap-green); font-size:11px;
  font-weight:800; letter-spacing:.13em;
  line-height:1.5; margin-bottom:17px;
}
.amyu-programmes .ap-hero .ap-kicker,
.amyu-programmes .ap-closing .ap-kicker {color:#F5AE62}
.amyu-programmes .ap-hero h1 {
  color:white; font-size:clamp(40px,5vw,72px);
  line-height:1.09; letter-spacing:-.035em;
  font-weight:700; max-width:850px; margin:0 0 18px;
}
.amyu-programmes .ap-hero p {
  color:white; font-size:clamp(15px,1.5vw,19px);
  line-height:1.7; max-width:660px; margin:0;
}
.amyu-programmes h2 {
  font-size:clamp(30px,3.4vw,48px);
  line-height:1.16; letter-spacing:-.03em;
  font-weight:700; color:var(--ap-dark); margin:0;
}
.amyu-programmes h3 {
  color:var(--ap-dark); line-height:1.4; margin:0;
}
.amyu-programmes p {
  color:var(--ap-ink); font-size:15px;
  line-height:1.8; letter-spacing:0;
  margin:0 0 16px;
}
.amyu-programmes .ap-editorial {
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(35px,6vw,95px); align-items:start;
}
.amyu-programmes .ap-intro,
.amyu-programmes .ap-detail-section {padding:85px 0}
.amyu-programmes .ap-feature {padding:88px 0;background:var(--ap-cream)}
.amyu-programmes .ap-feature:nth-of-type(even) {background:#fff}
.amyu-programmes .ap-feature-grid {
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(35px,6vw,90px);align-items:center;
}
.amyu-programmes .ap-feature.ap-reverse .ap-photo {order:2}
.amyu-programmes .ap-photo {
  aspect-ratio:5/4;overflow:hidden;background:#D9E8D1;
}
.amyu-programmes .ap-photo img,
.amyu-programmes .ap-detail-photo img {
  width:100%;height:100%;object-fit:cover;
  transition:transform .7s ease;display:block;
}
@media(hover:hover) {
  .amyu-programmes .ap-photo:hover img {transform:scale(1.04)}
}
.amyu-programmes .ap-feature-text h2 {margin:0 0 16px}
.amyu-programmes .ap-feature-text h3 {
  font-size:19px;font-weight:600;margin-bottom:15px;
}
.amyu-programmes .ap-feature-text p {max-width:560px}
.amyu-programmes .ap-btn {
  display:inline-flex;justify-content:space-between;
  align-items:center;gap:25px;min-height:49px;
  padding:13px 22px;background:var(--ap-green);
  border:1px solid var(--ap-green);color:white;
  border-radius:4px;font-weight:700;font-size:13px;
  text-decoration:none;line-height:1.4;
  margin-top:14px;transition:.2s ease;
}
.amyu-programmes .ap-btn:hover {
  background:var(--ap-dark);border-color:var(--ap-dark);
  color:white;transform:translateY(-2px);
}
.amyu-programmes .ap-btn:focus-visible {
  outline:3px solid #F5AE62;outline-offset:3px;
}
.amyu-programmes .ap-btn.ap-outline {
  background:transparent;border-color:var(--ap-dark);
  color:var(--ap-dark);
}
.amyu-programmes .ap-btn.ap-outline:hover {
  background:var(--ap-dark);color:white;
}
.amyu-programmes .ap-closing,.amyu-programmes .ap-next {
  text-align:center;padding:90px 0;background:var(--ap-dark);
}
.amyu-programmes .ap-closing h2,.amyu-programmes .ap-next h2 {
  color:#fff;margin-bottom:20px;
}
.amyu-programmes .ap-closing p,.amyu-programmes .ap-next p {
  color:#E3EEE3;margin-inline:auto;max-width:620px;
}
.amyu-programmes .ap-next .ap-kicker {color:#F5AE62}
.amyu-programmes .ap-next .ap-outline {
  color:white;border-color:white;
}
.amyu-programmes .ap-next .ap-outline:hover {
  background:white;color:var(--ap-dark);
}
.amyu-programmes .ap-actions {
  display:flex;align-items:center;justify-content:center;
  gap:14px;flex-wrap:wrap;
}
.amyu-programmes .ap-breadcrumb {padding-top:30px}
.amyu-programmes .ap-breadcrumb a {
  color:var(--ap-dark);font-size:13px;font-weight:700;
  text-decoration:underline;text-underline-offset:5px;
}
.amyu-programmes .ap-detail-section:nth-of-type(even) {
  background:var(--ap-cream);
}
.amyu-programmes .ap-detail-copy {max-width:650px}
.amyu-programmes .ap-list {
  padding-left:20px;margin:22px 0;color:var(--ap-ink);
}
.amyu-programmes .ap-list li {
  font-size:15px;line-height:1.65;margin-bottom:11px;
}
.amyu-programmes .ap-list li::marker {color:var(--ap-green)}
.amyu-programmes .ap-detail-photo {
  margin-top:30px;aspect-ratio:16/10;overflow:hidden;
}
@media(max-width:750px){
  .amyu-programmes .ap-wrap {width:calc(100% - 40px)}
  .amyu-programmes .ap-hero {
    min-height:390px;padding:135px 0 70px;
  }
  .amyu-programmes .ap-editorial,
  .amyu-programmes .ap-feature-grid {
    grid-template-columns:1fr;gap:25px;
  }
  .amyu-programmes .ap-intro,
  .amyu-programmes .ap-detail-section,
  .amyu-programmes .ap-feature {padding:60px 0}
  .amyu-programmes .ap-feature.ap-reverse .ap-photo {order:0}
  .amyu-programmes .ap-closing,
  .amyu-programmes .ap-next {padding:70px 0}
}
@media(prefers-reduced-motion:reduce){
  .amyu-programmes .ap-photo img,.amyu-programmes .ap-btn {
    transition:none;
  }
}

/* AMYU FROSTED GLASS NAVIGATION */

/* AMYU FROSTED GLASS NAVIGATION */

/* Floating glass navigation */
.main-header .nav-links,
.main-header .nav-menu,
.main-header .nav-inner {
    background: rgba(23, 79, 45, 0.42);
    -webkit-backdrop-filter: blur(20px) saturate(150%);
    backdrop-filter: blur(20px) saturate(150%);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 14px;
    box-shadow:
        0 10px 35px rgba(0, 0, 0, 0.14),
        inset 0 1px 0 rgba(255,255,255,0.12);
}

/* Frosted dropdown menus */
.main-header .about-dropdown,
.main-header .programmes-dropdown {
    background: rgba(23,79,45,0.74);
    -webkit-backdrop-filter: blur(24px) saturate(160%);
    backdrop-filter: blur(24px) saturate(160%);
    border: 1px solid rgba(255,255,255,0.22);
    border-radius: 12px;
    box-shadow: 0 18px 45px rgba(0,0,0,.18);
    overflow: hidden;
}

/* Individual navigation tabs */
.main-header .nav-links a,
.main-header .nav-links button,
.main-header .nav-menu a,
.main-header .nav-menu button {
    color: #FFFFFF;
    transition:
        background .25s ease,
        color .25s ease;
}

.main-header .nav-links a:hover,
.main-header .nav-links button:hover,
.main-header .nav-menu a:hover,
.main-header .nav-menu button:hover {
    background: rgba(255,255,255,0.16);
    color: #FFFFFF;
}

/* Smooth rounded link states */
.main-header .about-dropdown a,
.main-header .programmes-dropdown a {
    border-radius: 6px;
    transition: background .2s ease;
}

.main-header .about-dropdown a:hover,
.main-header .programmes-dropdown a:hover {
    background: rgba(255,255,255,0.18);
}

/* Stronger glass effect over hero photographs */
@supports (
    (backdrop-filter: blur(20px)) or
    (-webkit-backdrop-filter: blur(20px))
) {
    .main-header .nav-links,
    .main-header .nav-menu,
    .main-header .nav-inner {
        background: rgba(35,95,57,0.32);
    }
}

/* Keep mobile navigation comfortable */
@media (max-width: 800px) {
    .main-header .nav-links,
    .main-header .nav-menu,
    .main-header .nav-inner {
        border-radius: 12px;
    }
}

/* Motion accessibility */
@media (prefers-reduced-motion: reduce) {
    .main-header a,
    .main-header button {
        transition: none !important;
    }
}


/* AMYU VISUAL POLISH V2 */

/* 1. PREMIUM FROSTED NAVIGATION */

/* Enhance the existing navigation without
   changing its structure or dropdown behavior. */

.main-header .nav-links,
.main-header .nav-inner,
.main-header .nav-menu {
    background: rgba(22, 75, 43, 0.48);
    -webkit-backdrop-filter:
        blur(22px) saturate(155%);
    backdrop-filter:
        blur(22px) saturate(155%);
    border: 1px solid
        rgba(255,255,255,0.22);
    border-radius: 14px;
    box-shadow:
        0 10px 32px rgba(5,32,18,0.16),
        inset 0 1px 0
        rgba(255,255,255,0.15);
}

/* Dropdowns use darker glass for readability */

.main-header .about-dropdown,
.main-header .programmes-dropdown {
    background: rgba(20,65,39,0.90);
    -webkit-backdrop-filter:
        blur(25px) saturate(145%);
    backdrop-filter:
        blur(25px) saturate(145%);
    border: 1px solid
        rgba(255,255,255,0.20);
    border-radius: 12px;
    box-shadow:
        0 18px 45px rgba(5,32,18,0.22);
}

.main-header .about-dropdown a,
.main-header .programmes-dropdown a {
    transition:
        background .25s ease,
        color .25s ease;
}

.main-header .about-dropdown a:hover,
.main-header .programmes-dropdown a:hover {
    background: rgba(255,255,255,0.16);
    color: #FFFFFF;
}

/* 2. PHOTOGRAPHIC HERO GRADIENTS */

/* Programmes overview */

body.amyu-programme-page
.amyu-programmes .ap-hero {
    background-image:
        linear-gradient(
            105deg,
            rgba(9,40,25,0.88) 0%,
            rgba(12,53,31,0.62) 53%,
            rgba(17,69,38,0.14) 100%
        ),
        url("assets/images/amyu-programmes-hero.jpg");
    background-size: cover;
    background-position: center;
}

/* Each individual programme keeps its own photo */

body.amyu-photo-village
.amyu-programmes .ap-hero {
    background-image:
        linear-gradient(
            105deg,
            rgba(9,40,25,.88),
            rgba(17,69,38,.20)
        ),
        url("assets/images/programme-village.jpg");
}

body.amyu-photo-peace
.amyu-programmes .ap-hero {
    background-image:
        linear-gradient(
            105deg,
            rgba(9,40,25,.88),
            rgba(17,69,38,.20)
        ),
        url("assets/images/programme-peace.jpg");
}

body.amyu-photo-humanitarian
.amyu-programmes .ap-hero {
    background-image:
        linear-gradient(
            105deg,
            rgba(9,40,25,.88),
            rgba(17,69,38,.20)
        ),
        url("assets/images/programme-humanitarian.jpg");
}

/* About and Story photographic heroes */

body.about-subpage:has(.about-v2)
.about-page-hero {
    background-image:
        linear-gradient(
            105deg,
            rgba(9,40,25,.85),
            rgba(17,69,38,.18)
        ),
        url("assets/images/amyu-about-hero.jpg");
    background-position: center;
    background-size: cover;
}

body.photo-story .about-page-hero {
    background-image:
        linear-gradient(
            105deg,
            rgba(9,40,25,.85),
            rgba(17,69,38,.18)
        ),
        url("assets/images/amyu-story-hero.jpg");
    background-position: center;
    background-size: cover;
}

/* 3. ELEGANT SECTION GRADIENTS */

.amyu-programmes .ap-feature {
    background:
        linear-gradient(
            125deg,
            #F7F3E7 0%,
            #F1F5ED 100%
        );
}

.amyu-programmes .ap-feature:nth-of-type(even) {
    background:
        linear-gradient(
            125deg,
            #FFFFFF 0%,
            #F7FAF5 100%
        );
}

/* 4. DARK-GREEN GRADIENT CALL TO ACTION */

.amyu-programmes .ap-closing,
.amyu-programmes .ap-next,
.about-v2 .about-v2-mission {
    background:
        linear-gradient(
            120deg,
            #103B26 0%,
            #174F2D 52%,
            #2E7541 100%
        );
}

/* 5. REFINED PHOTO PRESENTATION */

.amyu-programmes .ap-photo,
.amyu-programmes .ap-detail-photo {
    border-radius: 8px;
    overflow: hidden;
    box-shadow:
        0 15px 35px rgba(23,79,45,0.10);
}

/* 6. PREMIUM GRADIENT BUTTONS */

.amyu-programmes .ap-btn:not(.ap-outline),
.photo-story .amyu-story-page a {
    background:
        linear-gradient(
            110deg,
            #489350,
            #2E7841
        );
    border-color: #489350;
    color: #FFFFFF;
}

.amyu-programmes .ap-btn:not(.ap-outline):hover,
.photo-story .amyu-story-page a:hover {
    background:
        linear-gradient(
            110deg,
            #174F2D,
            #286A3C
        );
    border-color: #174F2D;
    color: #FFFFFF;
}

/* 7. KEEP MOBILE NAVIGATION READABLE */

@media (max-width: 800px) {
    .main-header .nav-links,
    .main-header .nav-inner,
    .main-header .nav-menu {
        background: rgba(23,79,45,0.90);
        border-radius: 10px;
    }

    .amyu-programmes .ap-hero {
        background-position: center;
    }
}

/* 8. ACCESSIBILITY */

@media (prefers-reduced-motion: reduce) {
    .amyu-programmes .ap-btn,
    .main-header a,
    .main-header button {
        transition: none;
    }
}


/* AMYU ACTUAL NAVIGATION GLASS FIX */

/* Actual header element on this website */

.main-header {
    background: rgba(21, 75, 43, 0.68) !important;
    -webkit-backdrop-filter:
        blur(22px) saturate(155%);
    backdrop-filter:
        blur(22px) saturate(155%);
    border-bottom: 1px solid
        rgba(255,255,255,0.22);
    box-shadow:
        0 10px 35px rgba(0,0,0,0.12);
}

/* Actual navigation class: main-nav */

.main-header .main-nav {
    background: rgba(255,255,255,0.09);
    -webkit-backdrop-filter:
        blur(18px) saturate(145%);
    backdrop-filter:
        blur(18px) saturate(145%);
    border: 1px solid
        rgba(255,255,255,0.24);
    border-radius: 14px;
    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,0.18),
        0 8px 24px rgba(0,0,0,0.10);
}

/* Subtle frosted hover states */

.main-header .main-nav a:hover,
.main-header .main-nav button:hover {
    background: rgba(255,255,255,0.15);
    border-radius: 8px;
}

/* Preserve visibility of About dropdown */

.main-header .about-dropdown {
    background: rgba(19,65,38,0.94) !important;
    -webkit-backdrop-filter: blur(25px);
    backdrop-filter: blur(25px);
    border: 1px solid
        rgba(255,255,255,0.22);
    box-shadow:
        0 20px 45px rgba(0,0,0,0.20);
}

/* Programmes overview photographic gradient */

body.amyu-photo-overview
.amyu-programmes .ap-hero {
    background:
        linear-gradient(
            110deg,
            rgba(8,39,24,0.91) 0%,
            rgba(16,68,38,0.62) 55%,
            rgba(16,68,38,0.12) 100%
        ),
        url("assets/images/amyu-programmes-hero.jpg")
        center / cover no-repeat !important;
}

/* Individual programme photographs */

body.amyu-photo-village
.amyu-programmes .ap-hero {
    background:
        linear-gradient(
            110deg,
            rgba(8,39,24,0.88),
            rgba(16,68,38,0.15)
        ),
        url("assets/images/programme-village.jpg")
        center / cover no-repeat !important;
}

body.amyu-photo-peace
.amyu-programmes .ap-hero {
    background:
        linear-gradient(
            110deg,
            rgba(8,39,24,0.88),
            rgba(16,68,38,0.15)
        ),
        url("assets/images/programme-peace.jpg")
        center / cover no-repeat !important;
}

body.amyu-photo-humanitarian
.amyu-programmes .ap-hero {
    background:
        linear-gradient(
            110deg,
            rgba(8,39,24,0.88),
            rgba(16,68,38,0.15)
        ),
        url("assets/images/programme-humanitarian.jpg")
        center / cover no-repeat !important;
}

/* Visible gradients on programme sections */

body.amyu-programme-page
.amyu-programmes .ap-feature {
    background:
        linear-gradient(
            125deg,
            #F7F3E7 0%,
            #EDF4E9 100%
        ) !important;
}

body.amyu-programme-page
.amyu-programmes .ap-feature:nth-of-type(even) {
    background:
        linear-gradient(
            125deg,
            #FFFFFF 0%,
            #F3F8F0 100%
        ) !important;
}

/* Strong closing section */

body.amyu-programme-page
.amyu-programmes .ap-closing,
body.amyu-programme-page
.amyu-programmes .ap-next {
    background:
        linear-gradient(
            115deg,
            #103B26 0%,
            #174F2D 55%,
            #317A44 100%
        ) !important;
}

/* Mobile navigation */

@media (max-width: 800px) {
    .main-header {
        background:
            rgba(23,79,45,0.94) !important;
    }

    .main-header .main-nav {
        background:
            rgba(23,79,45,0.90);
        border-radius: 10px;
    }
}

/* Accessible fallbacks */

@supports not (
    (backdrop-filter: blur(1px)) or
    (-webkit-backdrop-filter: blur(1px))
) {
    .main-header {
        background:
            rgba(23,79,45,0.95) !important;
    }
}


/* AMYU GLASS DROPDOWN READABILITY FIX */

/* Keep the existing header and menu positioning */

.main-header .main-nav {
    background: rgba(37, 103, 62, .42);
    border: 1px solid rgba(255,255,255,.34);
    border-radius: 15px;
    -webkit-backdrop-filter: blur(22px) saturate(160%);
    backdrop-filter: blur(22px) saturate(160%);
    box-shadow:
        0 10px 30px rgba(0,0,0,.12),
        inset 0 1px rgba(255,255,255,.15);
}

/* Fix dropdown contrast */

.main-header .about-dropdown {
    background: rgba(18, 61, 38, .96) !important;
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 12px;
    -webkit-backdrop-filter: blur(22px);
    backdrop-filter: blur(22px);
    box-shadow: 0 18px 40px rgba(0,0,0,.22);
}

/* Make every dropdown link readable */

.main-header .about-dropdown a,
.main-header .about-dropdown a:link,
.main-header .about-dropdown a:visited {
    color: #FFFFFF !important;
    opacity: 1 !important;
    text-decoration: none;
}

/* Hover and keyboard focus */

.main-header .about-dropdown a:hover,
.main-header .about-dropdown a:focus-visible {
    color: #FFFFFF !important;
    background: rgba(255,255,255,.17) !important;
}

/* Clear keyboard navigation */

.main-header .about-dropdown a:focus-visible {
    outline: 2px solid #F5AE62;
    outline-offset: -2px;
}

/* Preserve the collapsed dropdown */

.main-header .about-dropdown[hidden] {
    display: none !important;
}


/* AMYU FLOATING GLASS HEADER V2 */

/* Desktop homepage only */

@media (min-width: 801px) {

    body:not(.inner-page) .main-header {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        z-index: 1000 !important;

        background: transparent !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;

        border: 0 !important;
        box-shadow: none !important;
    }

    body:not(.inner-page) .main-header .main-nav {
        background: rgba(23,79,45,.32) !important;

        backdrop-filter: blur(24px) saturate(160%) !important;
        -webkit-backdrop-filter:
            blur(24px) saturate(160%) !important;

        border: 1px solid rgba(255,255,255,.32) !important;
        border-radius: 16px !important;

        box-shadow:
            0 12px 35px rgba(0,0,0,.15),
            inset 0 1px 0 rgba(255,255,255,.18)
            !important;
    }

    body:not(.inner-page) .main-header .about-dropdown {
        background: rgba(18,61,38,.94) !important;
    }

    body:not(.inner-page) .main-header .about-dropdown a {
        color: white !important;
    }

    body:not(.inner-page) .main-header .about-dropdown[hidden] {
        display: none !important;
    }
}

/* Keep mobile navigation unchanged */

@media (max-width: 800px) {
    body:not(.inner-page) .main-header {
        position: relative !important;
    }
}


/* AMYU HOMEPAGE HERO REFINEMENT V1 */

/* Desktop homepage only */

@media (min-width: 1101px) {

    /* Keep the headline within the left side */

    body:not(.inner-page) .hero h1 {
        max-width: 690px !important;
        font-size: clamp(
            52px,
            4.7vw,
            76px
        ) !important;
        line-height: 1.14 !important;
        letter-spacing: -.035em !important;
        text-wrap: balance;
    }

    /* Keep the description below the headline */

    body:not(.inner-page) .hero p {
        max-width: 650px;
    }

    /* Enlarge the logo without affecting navigation */

    body:not(.inner-page)
    .main-header img {
        max-height: 66px;
        width: auto;
    }
}

/* Tablet: preserve comfortable proportions */

@media (min-width: 801px) and (max-width: 1100px) {

    body:not(.inner-page) .hero h1 {
        max-width: 600px !important;
        font-size: clamp(
            45px,
            5vw,
            65px
        ) !important;
        line-height: 1.14 !important;
    }

    body:not(.inner-page)
    .main-header img {
        max-height: 58px;
        width: auto;
    }
}

/* Mobile: preserve existing hero arrangement */

@media (max-width: 800px) {

    body:not(.inner-page) .hero h1 {
        text-wrap: balance;
    }
}


/* AMYU CORRECT SUPPORT GLASS V2 */

@media (min-width: 801px) {

  /* Existing glass navigation */
  .main-header .main-nav {
    border-radius: 15px !important;
  }

  /* Actual Support Our Work link */
  .main-header a.amyu-support-glass {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;

    min-height: 54px !important;
    height: auto !important;
    padding: 13px 22px !important;
    margin-left: 7px !important;

    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.32) !important;

    background: rgba(44,119,62,.64) !important;
    -webkit-backdrop-filter: blur(24px) saturate(160%);
    backdrop-filter: blur(24px) saturate(160%);

    color: #FFFFFF !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;

    box-shadow:
      0 9px 24px rgba(8,42,25,.12),
      inset 0 1px rgba(255,255,255,.16) !important;

    transition:
      background .25s ease,
      transform .25s ease !important;
  }

  .main-header a.amyu-support-glass:hover {
    background: rgba(47,141,71,.85) !important;
    color: #FFFFFF !important;
    transform: translateY(-2px);
  }
}

/* Ensure that News & Resources is not
   accidentally highlighted again. */

.main-header .main-nav > a:last-of-type:not(
  .amyu-support-glass
) {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 8px !important;
  transform: none !important;
}

/* Mobile navigation */

@media (max-width: 800px) {
  .main-header a.amyu-support-glass {
    border-radius: 9px !important;
  }
}

/* Keyboard accessibility */

.main-header a.amyu-support-glass:focus-visible {
  outline: 3px solid #F5AE62 !important;
  outline-offset: 3px;
}


/* AMYU CUSTOM CHEVRON ARROWS */

.amyu-chevron {
    display: inline-block;
    flex: 0 0 auto;
    width: 10px;
    height: 10px;
    border-top: 3px solid currentColor;
    border-right: 3px solid currentColor;
    transform: rotate(45deg);
    vertical-align: middle;
    margin-left: 8px;
    transition: transform .2s ease;
}

.amyu-chevron.is-back {
    transform: rotate(-135deg);
    margin-left: 0;
    margin-right: 8px;
}

a:hover .amyu-chevron:not(.is-back),
button:hover .amyu-chevron:not(.is-back) {
    transform: translateX(3px) rotate(45deg);
}

a:hover .amyu-chevron.is-back,
button:hover .amyu-chevron.is-back {
    transform: translateX(-3px) rotate(-135deg);
}

@media (prefers-reduced-motion: reduce) {
    .amyu-chevron {
        transition: none;
    }
}


/* AMYU ABOUT DROPDOWN CHEVRON V1 */

/* Align About AMYU text and arrow */

.main-header .about-menu-trigger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    gap: 12px;
}

/* Hide any existing CSS-generated arrow */

.main-header .about-menu-trigger::after {
    content: none !important;
    display: none !important;
}

/* Draw a thicker downward chevron */

.main-header .about-menu-trigger::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 9px;

    border-right: 3px solid #FFFFFF;
    border-bottom: 3px solid #FFFFFF;

    transform: rotate(45deg);
    transform-origin: center;

    order: 2;
    flex-shrink: 0;

    margin-top: -5px;

    transition: transform .25s ease;
}

/* Rotate upward when expanded */

.main-header .about-menu-trigger[aria-expanded="true"]::before {
    transform: rotate(225deg);
    margin-top: 4px;
}

/* Preserve white arrow on hover */

.main-header .about-menu-trigger:hover::before {
    border-color: #FFFFFF;
}

/* Respect reduced motion */

@media (prefers-reduced-motion: reduce) {
    .main-header .about-menu-trigger::before {
        transition: none;
    }
}


/* AMYU SINGLE DROPDOWN CHEVRON FIX */

/* Hide the original inline arrow */
.main-header .about-menu-trigger > span[aria-hidden="true"] {
    display: none !important;
}

/* Keep text and arrow close together */
.main-header .about-menu-trigger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

/* Remove other generated arrows */
.main-header .about-menu-trigger::after {
    content: none !important;
    display: none !important;
}

/* Single compact chevron */
.main-header .about-menu-trigger::before {
    content: "" !important;
    display: inline-block !important;

    width: 8px !important;
    height: 8px !important;

    border-right: 2.5px solid #FFFFFF !important;
    border-bottom: 2.5px solid #FFFFFF !important;

    transform: rotate(45deg);
    transform-origin: center;

    order: 2;
    flex-shrink: 0;

    margin: -4px 0 0 0 !important;

    transition:
        transform .25s ease,
        margin .25s ease;
}

/* Rotate upward when dropdown opens */
.main-header .about-menu-trigger[aria-expanded="true"]::before {
    transform: rotate(225deg);
    margin-top: 4px !important;
}

/* Preserve working dropdown visibility */
.main-header .about-dropdown[hidden] {
    display: none !important;
}

@media (prefers-reduced-motion: reduce) {
    .main-header .about-menu-trigger::before {
        transition: none;
    }
}

/* AMYU SMALLER CHEVRONS */

/* Button arrows */
.amyu-chevron {
    width: 7px !important;
    height: 7px !important;
    border-top-width: 2px !important;
    border-right-width: 2px !important;
    margin-left: 5px !important;
}

/* About AMYU dropdown arrow */
.main-header .about-menu-trigger::before {
    width: 6px !important;
    height: 6px !important;
    border-right-width: 2px !important;
    border-bottom-width: 2px !important;
}

/* Reduce space between text and dropdown arrow */
.main-header .about-menu-trigger {
    gap: 6px !important;
}



/* AMYU IMPACT FAINT BACKGROUND IMAGE */

.impact-section {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.impact-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(rgba(16, 92, 39, 0.88), rgba(16, 92, 39, 0.88)),
        url("assets/images/site-photos/EMX_6310.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.38;
    z-index: 0;
    pointer-events: none;
}

.impact-section > * {
    position: relative;
    z-index: 1;
}


/* AMYU UNIFIED ROUNDED CORNERS V1 */

:root {
    --amyu-radius-small: 8px;
    --amyu-radius-button: 10px;
    --amyu-radius-card: 16px;
    --amyu-radius-large: 20px;
}

/* Main navigation and dropdowns */

.main-header .main-nav,
.main-header .about-dropdown,
.main-header .programmes-dropdown {
    border-radius: var(--amyu-radius-card) !important;
}

/* Buttons and actions */

a.amyu-support-glass,
.amyu-programmes .ap-btn,
.photo-story .amyu-story-page a,
.hero a[class*="btn"],
.hero a[class*="button"],
.about-v2-jump-links a {
    border-radius: var(--amyu-radius-button) !important;
}

/* Impact cards */

.impact-section .impact-card,
.impact-section .impact-item,
.impact-section .impact-stat,
.impact-section [class*="impact-card"] {
    border-radius: var(--amyu-radius-card) !important;
    overflow: hidden;
}

/* Programme and image cards */

.amyu-programmes .ap-photo,
.amyu-programmes .ap-detail-photo,
.amyu-programmes .ap-feature-card,
.amyu-programmes .ap-card,
.about-detail-visual,
.about-v2-circle-photo {
    border-radius: var(--amyu-radius-card) !important;
    overflow: hidden;
}

/* Keep the intentional circular About photo circular */

.about-v2-circle-photo {
    border-radius: 50% !important;
}

/* Other site cards and containers */

.programme-card,
.approach-card,
.news-card,
.partner-card,
.team-placeholder,
.team-profile,
.get-involved-card,
.story-card,
.value-card {
    border-radius: var(--amyu-radius-card) !important;
    overflow: hidden;
}

/* Photos inside cards follow rounded clipping */

.programme-card img,
.approach-card img,
.news-card img,
.partner-card img,
.team-placeholder img,
.story-card img {
    border-radius: inherit;
}

/* Header action button */

.main-header a.amyu-support-glass {
    border-radius: var(--amyu-radius-card) !important;
}

/* Mobile: slightly smaller corners */

@media (max-width: 700px) {
    :root {
        --amyu-radius-card: 12px;
        --amyu-radius-large: 16px;
        --amyu-radius-button: 9px;
    }
}


/* AMYU COMPLETE ROUNDED DESIGN START */

:root {
    --amyu-round-card: 16px;
    --amyu-round-photo: 16px;
    --amyu-round-button: 12px;
    --amyu-round-panel: 16px;
}

/* ALL COMMON CARD TYPES */

:is(
    .impact-card,
    .impact-item,
    .impact-stat,
    .programme-card,
    .program-card,
    .approach-card,
    .news-card,
    .partner-card,
    .team-card,
    .team-placeholder,
    .team-profile,
    .about-v2-profile,
    .get-involved-card,
    .story-card,
    .value-card,
    .service-card,
    .feature-card,
    .project-card,
    .resource-card,
    .event-card,
    .stat-card,
    .info-card,
    .ap-card,
    .ap-feature-card,
    .hero-card,
    .pledge-card
) {
    border-radius: var(--amyu-round-card) !important;
    overflow: hidden;
}

/* ALL IMPACT SECTION CARDS */

.impact-section :is(
    article,
    .impact-card,
    .impact-item,
    .impact-stat
) {
    border-radius: var(--amyu-round-card) !important;
    overflow: hidden;
}

/* ALL PROGRAMME BOXES AND PHOTOS */

.amyu-programmes :is(
    .ap-photo,
    .ap-detail-photo,
    .ap-card,
    .ap-feature-card
) {
    border-radius: var(--amyu-round-photo) !important;
    overflow: hidden;
}

/* PHOTOGRAPHS THROUGHOUT THE WEBSITE */

main img:not(
    .about-v2-circle-photo img
) {
    border-radius: var(--amyu-round-photo);
}

/* HEROES USE BACKGROUND PHOTOS,
   SO WE PRESERVE THEIR EXISTING SHAPE */

/* ABOUT AND TEAM PHOTO CONTAINERS */

:is(
    .about-detail-visual,
    .team-photo-placeholder,
    .about-v2-avatar,
    .amyu-story-feature img,
    .photo-card,
    .image-card,
    .image-wrapper,
    .image-container,
    .photo-wrapper
) {
    border-radius: var(--amyu-round-photo) !important;
    overflow: hidden;
}

/* PRESERVE CIRCULAR PHOTOGRAPHS */

.about-v2-circle-photo,
.about-v2-circle-photo img {
    border-radius: 50% !important;
}

/* ALL BUTTON STYLES */

:is(
    .ap-btn,
    .amyu-support-glass,
    .hero a,
    .about-v2-jump-links a,
    .amyu-story-page a,
    .btn,
    .button,
    .cta-button,
    .primary-button,
    .secondary-button,
    .submit-button,
    button[type="submit"]
) {
    border-radius: var(--amyu-round-button) !important;
}

/* BUTTONS WITH CLASS-NAME VARIATIONS */

a[class*="btn-"],
a[class*="-btn"],
a[class*="button-"],
a[class*="-button"],
button[class*="btn"],
button[class*="button"] {
    border-radius: var(--amyu-round-button) !important;
}

/* GLASS NAVIGATION AND DROPDOWNS */

.main-header :is(
    .main-nav,
    .about-dropdown,
    .programmes-dropdown
) {
    border-radius: var(--amyu-round-panel) !important;
}

/* INDIVIDUAL NAVIGATION HOVER AREAS */

.main-header .main-nav a,
.main-header .main-nav button,
.main-header .about-dropdown a {
    border-radius: var(--amyu-round-button);
}

/* FORMS AND INPUTS */

:is(
    input,
    textarea,
    select,
    .form-control,
    .form-field,
    .contact-form,
    .form-card
) {
    border-radius: var(--amyu-round-button);
}

/* ACCORDION PANELS, NOT THE ENTIRE SECTION */

:is(
    .accordion-panel,
    .accordion-content,
    .faq-item,
    .faq-card,
    .disclosure-card
) {
    border-radius: var(--amyu-round-panel);
}

/* VIDEO AND EMBEDDED MEDIA */

main :is(
    video,
    iframe
) {
    border-radius: var(--amyu-round-photo);
}

/* IMAGE TILES AND ARTICLE CARDS */

main :is(
    .gallery-item,
    .gallery-card,
    .article-card,
    .post-card,
    .blog-card,
    .download-card
) {
    border-radius: var(--amyu-round-card) !important;
    overflow: hidden;
}

/* KEEP CARD PHOTOS INSIDE ROUNDED EDGES */

:is(
    .programme-card,
    .news-card,
    .team-card,
    .project-card,
    .gallery-card,
    .article-card
) img {
    border-radius: inherit;
}

/* MOBILE */

@media (max-width: 700px) {
    :root {
        --amyu-round-card: 12px;
        --amyu-round-photo: 12px;
        --amyu-round-button: 10px;
        --amyu-round-panel: 12px;
    }
}

/* AMYU COMPLETE ROUNDED DESIGN END */


/* AMYU FOUNDER AND ANIMATED STATS V1 */

.amyu-founder-page,
.amyu-count-section {
    --amyu-dark:#174F2D;
    --amyu-green:#489350;
    --amyu-cream:#F7F3E7;
}

.founder-wrap {
    width:min(1100px,calc(100% - 48px));
    margin-inline:auto;
}

.founder-grid {
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:clamp(35px,6vw,90px);
    align-items:start;
}

.founder-eyebrow {
    display:block;
    color:#489350;
    font-size:11px;
    font-weight:700;
    letter-spacing:.13em;
    line-height:1.5;
    margin-bottom:16px;
}

.amyu-founder-page h2 {
    color:#174F2D;
    font-size:clamp(29px,3.1vw,44px);
    line-height:1.18;
    letter-spacing:-.025em;
    margin:0 0 25px;
}

.amyu-founder-page p {
    color:#43564A;
    font-size:15px;
    line-height:1.8;
    margin:0 0 18px;
}

.amyu-founder-page .founder-hero {
    padding:170px 0 90px;
    background:
      linear-gradient(115deg,#103B26,#28683C);
}

.amyu-founder-page .founder-hero h1 {
    color:#fff;
    font-size:clamp(43px,6vw,75px);
    line-height:1.12;
    margin:0 0 20px;
}

.amyu-founder-page .founder-hero p {
    color:#EAF3EB;
    max-width:620px;
    font-size:18px;
}

.amyu-founder-page .founder-hero .founder-eyebrow {
    color:#F5AE62;
}

.founder-introduction {
    background:#FFFFFF;
    padding:90px 0;
}

.founder-purpose {
    padding:85px 0;
    background:linear-gradient(125deg,#F7F3E7,#EEF5EC);
}

.founder-portrait-placeholder {
    min-height:350px;
    padding:30px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:18px;
    text-align:center;
    background:linear-gradient(145deg,#D9E8D1,#C4D9BE);
    border-radius:16px;
    margin-bottom:30px;
}

.founder-portrait-placeholder span {
    font-size:55px;
    font-weight:800;
    color:#489350;
}

.founder-portrait-placeholder small {
    color:#43564A;
    font-size:13px;
}

.amyu-founder-page .founder-button {
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding:15px 24px;
    margin-top:15px;
    border-radius:12px;
    background:#489350;
    color:white;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
}

.amyu-founder-page .founder-button:hover {
    background:#174F2D;
    color:white;
}

/* Homepage animated programme figures */

.amyu-count-section {
    padding:90px 0;
    background:linear-gradient(125deg,#F7F3E7,#EEF5EC);
}

.amyu-count-container {
    width:min(1200px,calc(100% - 48px));
    margin-inline:auto;
}

.amyu-count-heading {
    text-align:center;
    margin-bottom:50px;
}

.amyu-count-heading h2 {
    color:#174F2D;
    font-size:clamp(32px,4vw,54px);
    line-height:1.16;
    margin:0 0 16px;
}

.amyu-count-heading p {
    color:#43564A;
    font-size:15px;
}

.amyu-count-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}

.amyu-count-card {
    padding:35px;
    background:#FFFFFF;
    border:1px solid rgba(23,79,45,.12);
    border-radius:16px;
    box-shadow:0 12px 30px rgba(23,79,45,.05);
}

.amyu-count-number {
    display:block;
    color:#489350;
    font-size:clamp(60px,7vw,95px);
    line-height:1;
    margin-bottom:20px;
    font-weight:800;
    font-variant-numeric:tabular-nums;
}

.amyu-count-card h3 {
    color:#174F2D;
    font-size:18px;
    margin-bottom:12px;
}

.amyu-count-card p,
.amyu-count-note {
    color:#53635B;
    font-size:13px;
    line-height:1.7;
}

.amyu-count-note {
    margin-top:25px;
    text-align:center;
}

.main-header .about-dropdown a {
    color:#FFFFFF !important;
    opacity:1 !important;
}

.main-header .about-dropdown[hidden] {
    display:none !important;
}

@media(max-width:700px) {
    .founder-grid,
    .amyu-count-grid {
        grid-template-columns:1fr;
    }

    .founder-introduction,
    .founder-purpose,
    .amyu-count-section {
        padding:65px 0;
    }

    .amyu-founder-page .founder-hero {
        padding:135px 0 65px;
    }

    .founder-portrait-placeholder {
        min-height:270px;
    }

    .amyu-count-card {
        padding:28px;
    }
}


/* AMYU FOUNDER PORTRAIT DESIGN V3 START */

.founder-portrait-design {
  --fp-green:#174F2D;
  --fp-accent:#489350;
  --fp-cream:#F7F3E7;
  color:var(--fp-green);
}

.founder-portrait-design * {
  box-sizing:border-box;
}

.founder-portrait-design .fp-container {
  width:min(1120px,calc(100% - 48px));
  margin:0 auto;
}

/* Portrait-led hero */

.founder-portrait-design .fp-hero {
  padding:28px 4% 35px;
  background:#F7F3E7;
}

.founder-portrait-design .fp-hero-inner {
  width:100%;
  max-width:1400px;
  min-height:650px;
  margin:auto;
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:34px 5% 42px;
  background:
    radial-gradient(
      ellipse at 50% 45%,
      #E5ECE2 0%,
      #F8FAF6 45%,
      #FFFFFF 78%
    );
  border-radius:22px;
  overflow:hidden;
}

.founder-portrait-design .fp-topline {
  display:flex;
  justify-content:space-between;
  gap:15px;
  position:relative;
  z-index:3;
  color:#174F2D;
  font-size:10px;
  font-weight:700;
  letter-spacing:.13em;
}

.founder-portrait-design .fp-person {
  position:absolute;
  inset:35px 23% 0;
  z-index:1;
  display:flex;
  align-items:end;
  justify-content:center;
  overflow:hidden;
  pointer-events:none;
}

.founder-portrait-design .fp-person-photo {
  display:block;
  height:100%;
  width:100%;
  object-fit:contain;
  object-position:center bottom;
  border-radius:0 !important;
  -webkit-mask-image:linear-gradient(
    to bottom,black 75%,transparent 100%
  );
  mask-image:linear-gradient(
    to bottom,black 75%,transparent 100%
  );
}

.founder-portrait-design .fp-missing-photo {
  width:min(100%,370px);
  height:440px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:linear-gradient(
    180deg,#DCE9D9,#C7DAC3
  );
  border-radius:190px 190px 0 0;
  color:#174F2D;
  opacity:.83;
  -webkit-mask-image:linear-gradient(
    black 75%,transparent
  );
  mask-image:linear-gradient(
    black 75%,transparent
  );
}

.founder-portrait-design .fp-person-icon {
  position:relative;
  width:170px;
  height:190px;
  margin-bottom:28px;
}

.founder-portrait-design .fp-person-head {
  position:absolute;
  width:83px;
  height:83px;
  border-radius:50%;
  left:44px;
  top:15px;
  background:#739B74;
}

.founder-portrait-design .fp-person-shoulders {
  position:absolute;
  width:165px;
  height:103px;
  bottom:0;
  left:2px;
  border-radius:85px 85px 10px 10px;
  background:#739B74;
}

.founder-portrait-design .fp-missing-photo > span {
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}

.founder-portrait-design .fp-missing-photo small {
  margin-top:7px;
  font-size:11px;
}

.founder-portrait-design .fp-hero-bottom {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:end;
  gap:30px;
  position:relative;
  z-index:2;
  margin-top:auto;
}

.founder-portrait-design .fp-hero-heading {
  max-width:410px;
}

.founder-portrait-design .fp-overline,
.founder-portrait-design .fp-label {
  display:block;
  color:#489350;
  font-size:11px;
  font-weight:800;
  letter-spacing:.13em;
  line-height:1.5;
  margin-bottom:17px;
}

.founder-portrait-design .fp-dot {
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#489350;
  margin-right:6px;
}

.founder-portrait-design .fp-hero h1 {
  color:#174F2D;
  font-size:clamp(37px,4vw,62px);
  line-height:1.08;
  letter-spacing:-.05em;
  margin:0 0 15px;
  font-weight:750;
}

.founder-portrait-design .fp-hero-heading p {
  color:#43564A;
  font-size:14px;
  line-height:1.65;
  max-width:350px;
  margin:0;
}

.founder-portrait-design .fp-hero-intro {
  max-width:280px;
  margin-left:auto;
}

.founder-portrait-design .fp-hero-intro p {
  color:#43564A;
  font-size:13px;
  line-height:1.7;
  margin:0 0 16px;
}

.founder-portrait-design .fp-hero-index {
  position:absolute;
  bottom:12px;
  right:5%;
  color:#879489;
  font-size:10px;
  letter-spacing:.1em;
}

/* Buttons */

.founder-portrait-design .fp-btn {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  background:#174F2D;
  color:white;
  border:1px solid #174F2D;
  border-radius:12px;
  padding:13px 19px;
  min-height:45px;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  transition:background .2s,transform .2s;
}

.founder-portrait-design .fp-btn:hover {
  background:#489350;
  border-color:#489350;
  color:white;
  transform:translateY(-2px);
}

.founder-portrait-design .fp-arrow {
  width:7px;
  height:7px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  transform:rotate(45deg);
}

.founder-portrait-design .fp-btn:focus-visible {
  outline:3px solid #F5AE62;
  outline-offset:3px;
}

/* Below hero */

.founder-portrait-design .fp-section {
  padding:90px 0;
  background:#FFFFFF;
}

.founder-portrait-design .fp-columns {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:clamp(40px,7vw,105px);
}

.founder-portrait-design .fp-section h2,
.founder-portrait-design .fp-focus-section h2 {
  color:#174F2D;
  font-size:clamp(30px,3.5vw,47px);
  line-height:1.16;
  letter-spacing:-.035em;
  margin:0;
}

.founder-portrait-design .fp-body p {
  color:#43564A;
  font-size:15px;
  line-height:1.8;
  margin:0 0 19px;
}

.founder-portrait-design .fp-education {
  background:linear-gradient(
    120deg,#F7F3E7,#ECF4E9
  );
}

.founder-portrait-design .fp-focus-section {
  background:#F7F3E7;
  padding:85px 0;
}

.founder-portrait-design .fp-focus-heading {
  margin-bottom:40px;
}

.founder-portrait-design .fp-focus-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.founder-portrait-design .fp-focus-card {
  padding:32px;
  background:white;
  border:1px solid rgba(23,79,45,.12);
  border-radius:16px;
}

.founder-portrait-design .fp-focus-card > span {
  display:block;
  color:#489350;
  font-size:36px;
  font-weight:800;
  margin-bottom:35px;
}

.founder-portrait-design .fp-focus-card h3 {
  color:#174F2D;
  font-size:18px;
  margin:0 0 13px;
}

.founder-portrait-design .fp-focus-card p {
  color:#43564A;
  font-size:13px;
  line-height:1.7;
  margin:0;
}

.founder-portrait-design .fp-closing {
  padding:95px 24px;
  text-align:center;
  background:linear-gradient(
    120deg,#103B26,#28683C
  );
}

.founder-portrait-design .fp-closing .fp-label {
  color:#F5AE62;
}

.founder-portrait-design .fp-closing h2 {
  color:#FFFFFF;
  font-size:clamp(38px,5vw,65px);
  line-height:1.1;
  margin:0 0 20px;
}

.founder-portrait-design .fp-closing p {
  color:#E4EDE4;
  font-size:15px;
  margin:0 0 25px;
}

.founder-portrait-design .fp-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}

.founder-portrait-design .fp-closing .fp-btn {
  background:#489350;
  border-color:#489350;
}

.founder-portrait-design .fp-closing .fp-outline {
  background:transparent;
  border-color:rgba(255,255,255,.55);
}

/* Responsive */

@media(max-width:850px) {
  .founder-portrait-design .fp-hero-inner {
    min-height:780px;
  }

  .founder-portrait-design .fp-person {
    inset:80px 15% 230px;
  }

  .founder-portrait-design .fp-hero-bottom {
    grid-template-columns:1fr;
  }

  .founder-portrait-design .fp-hero-heading,
  .founder-portrait-design .fp-hero-intro {
    max-width:560px;
    margin-left:0;
  }

  .founder-portrait-design .fp-columns {
    grid-template-columns:1fr;
    gap:25px;
  }
}

@media(max-width:600px) {
  .founder-portrait-design .fp-hero {
    padding:15px;
  }

  .founder-portrait-design .fp-hero-inner {
    min-height:790px;
    padding:24px;
  }

  .founder-portrait-design .fp-topline {
    flex-direction:column;
    gap:5px;
  }

  .founder-portrait-design .fp-person {
    inset:95px 7% 300px;
  }

  .founder-portrait-design .fp-missing-photo {
    height:320px;
  }

  .founder-portrait-design .fp-hero h1 {
    font-size:38px;
  }

  .founder-portrait-design .fp-section,
  .founder-portrait-design .fp-focus-section {
    padding:65px 0;
  }

  .founder-portrait-design .fp-focus-grid {
    grid-template-columns:1fr;
  }

  .founder-portrait-design .fp-focus-card {
    padding:26px;
  }
}

@media(prefers-reduced-motion:reduce) {
  .founder-portrait-design .fp-btn {
    transition:none;
  }
}

/* AMYU FOUNDER PORTRAIT DESIGN V3 END */


/* AMYU FOUNDER REFINEMENT V4 START */

/* Standalone profile introduction */

.founder-portrait-design .fp-hero-bottom {
    transform: translateY(-28px);
}

.founder-portrait-design .fp-hero-heading h1 {
    font-size: clamp(34px, 3.8vw, 58px);
    line-height: 1.09;
    letter-spacing: -.045em;
}

.founder-portrait-design .fp-hero-intro {
    max-width: 290px;
}

/* Biography: a single, readable text column */

.founder-portrait-design .fp-bio-refined {
    padding: 75px 0;
    background: #FFFFFF;
}

.founder-portrait-design .fp-bio-content {
    width: min(100%, 680px);
    margin-left: 0;
}

.founder-portrait-design .fp-bio-content h2 {
    font-size: clamp(27px, 2.8vw, 37px);
    line-height: 1.18;
    letter-spacing: -.025em;
    margin: 0 0 25px;
}

.founder-portrait-design .fp-bio-content p {
    color: #43564A;
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: .002em;
    margin: 0 0 16px;
}

/* Areas of focus: heading left, accordion right */

.founder-portrait-design .fp-focus-refined {
    background: linear-gradient(
        125deg,
        #F7F3E7 0%,
        #EFF5EA 100%
    );
    padding: 80px 0;
}

.founder-portrait-design .fp-focus-layout {
    display: grid;
    grid-template-columns:
        minmax(0, .85fr)
        minmax(0, 1.15fr);
    align-items: start;
    gap: clamp(40px, 7vw, 110px);
}

.founder-portrait-design .fp-focus-left h2 {
    color: #174F2D;
    font-size: clamp(29px, 3vw, 41px);
    line-height: 1.17;
    letter-spacing: -.025em;
    margin: 0 0 18px;
}

.founder-portrait-design .fp-focus-left p {
    max-width: 320px;
    color: #53635B;
    font-size: 14px;
    line-height: 1.75;
}

/* Native interactive accordions */

.founder-portrait-design .fp-focus-accordion {
    border-top: 1px solid rgba(23,79,45,.4);
}

.founder-portrait-design .fp-focus-accordion details {
    border-bottom: 1px solid rgba(23,79,45,.4);
}

.founder-portrait-design .fp-focus-accordion summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    min-height: 64px;
    padding: 18px 4px;
    cursor: pointer;
    list-style: none;
    color: #174F2D;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
}

.founder-portrait-design
.fp-focus-accordion summary::-webkit-details-marker {
    display: none;
}

.founder-portrait-design
.fp-focus-accordion summary::after {
    content: "+";
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #174F2D;
    color: #FFFFFF;
    font-size: 19px;
    font-weight: 400;
    line-height: 1;
}

.founder-portrait-design
.fp-focus-accordion details[open] summary::after {
    content: "−";
}

.founder-portrait-design
.fp-focus-accordion summary:hover {
    color: #489350;
}

.founder-portrait-design
.fp-focus-accordion summary:focus-visible {
    outline: 2px solid #489350;
    outline-offset: 3px;
}

.founder-portrait-design .fp-focus-answer {
    padding: 0 45px 20px 4px;
}

.founder-portrait-design .fp-focus-answer p {
    color: #43564A;
    font-size: 14px;
    line-height: 1.75;
    margin: 0;
}

/* One final button, no green promotional section */

.founder-portrait-design .fp-profile-link {
    padding: 50px 0 75px;
    background: #FFFFFF;
}

.founder-portrait-design .fp-profile-link .fp-btn {
    border-radius: 12px;
    padding: 14px 23px;
    background: #174F2D;
}

/* Mobile layout */

@media (max-width: 850px) {
    .founder-portrait-design .fp-hero-bottom {
        transform: translateY(-12px);
    }

    .founder-portrait-design .fp-focus-layout {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

@media (max-width: 600px) {
    .founder-portrait-design .fp-bio-refined,
    .founder-portrait-design .fp-focus-refined {
        padding: 55px 0;
    }

    .founder-portrait-design .fp-bio-content h2 {
        font-size: 29px;
    }

    .founder-portrait-design .fp-bio-content p {
        font-size: 14px;
    }

    .founder-portrait-design .fp-focus-accordion summary {
        font-size: 15px;
    }

    .founder-portrait-design .fp-profile-link {
        padding: 40px 0 65px;
    }
}

/* AMYU FOUNDER REFINEMENT V4 END */


/* AMYU FOUNDER COMPACT TWO COLUMN V5 START */

/* Biography and Focus on the same horizontal line */

.founder-portrait-design .fp-info-row {
    width: min(1400px, 92%);
    margin: 0 auto;
    padding: 70px 5% 65px;

    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    gap: clamp(45px, 6vw, 100px);
    align-items: start;
}

/* Remove the separate full-width section backgrounds */

.founder-portrait-design
.fp-info-row .fp-bio-refined,
.founder-portrait-design
.fp-info-row .fp-focus-refined {
    padding: 0 !important;
    margin: 0;
    background: transparent !important;
    border: none;
}

/* Allow content to fill each grid column */

.founder-portrait-design
.fp-info-row .fp-container {
    width: 100%;
    max-width: none;
    margin: 0;
}

/* Biography content aligned left */

.founder-portrait-design .fp-info-row
.fp-bio-content {
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.founder-portrait-design .fp-info-row
.fp-bio-content h2 {
    font-size: clamp(24px, 2.2vw, 31px);
    line-height: 1.2;
    letter-spacing: -.025em;
    margin-bottom: 20px;
}

.founder-portrait-design .fp-info-row
.fp-bio-content p {
    font-size: 13px;
    line-height: 1.72;
    letter-spacing: 0;
    margin-bottom: 14px;
}

/* Focus heading and accordions in right column */

.founder-portrait-design .fp-info-row
.fp-focus-layout {
    display: block;
}

.founder-portrait-design .fp-info-row
.fp-focus-left {
    margin-bottom: 24px;
}

.founder-portrait-design .fp-info-row
.fp-focus-left h2 {
    font-size: clamp(24px, 2.2vw, 31px);
    line-height: 1.2;
    letter-spacing: -.025em;
    margin-bottom: 12px;
}

.founder-portrait-design .fp-info-row
.fp-focus-left p {
    max-width: 100%;
    font-size: 13px;
    line-height: 1.7;
    margin: 0;
}

/* Compact expandable items */

.founder-portrait-design .fp-info-row
.fp-focus-accordion summary {
    min-height: 54px;
    padding: 13px 3px;
    font-size: 14px;
}

.founder-portrait-design .fp-info-row
.fp-focus-accordion summary::after {
    width: 23px;
    height: 23px;
    font-size: 17px;
}

.founder-portrait-design .fp-info-row
.fp-focus-answer p {
    font-size: 13px;
    line-height: 1.7;
}

/* Keep the same background across both columns */

.founder-portrait-design .fp-info-row {
    background: #FFFFFF;
}

/* Center official profile action */

.founder-portrait-design .fp-profile-link {
    padding: 15px 24px 75px;
    text-align: center;
    background: #FFFFFF;
}

.founder-portrait-design
.fp-profile-link .fp-container {
    display: flex;
    justify-content: center;
    align-items: center;
}

.founder-portrait-design
.fp-profile-link .fp-btn {
    justify-content: center;
    gap: 0;
    border-radius: 12px;
    min-height: 48px;
    padding: 14px 28px;
    font-size: 13px;
}

/* Hide any remaining arrow in this one button */

.founder-portrait-design
.fp-profile-link .fp-arrow,
.founder-portrait-design
.fp-profile-link .amyu-chevron {
    display: none !important;
}

/* Tablet and mobile */

@media (max-width: 850px) {
    .founder-portrait-design .fp-info-row {
        width: calc(100% - 40px);
        padding: 55px 0;
        gap: 35px;
    }
}

@media (max-width: 650px) {
    .founder-portrait-design .fp-info-row {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .founder-portrait-design .fp-info-row
    .fp-bio-content h2,
    .founder-portrait-design .fp-info-row
    .fp-focus-left h2 {
        font-size: 27px;
    }

    .founder-portrait-design .fp-profile-link {
        padding-bottom: 60px;
    }
}

/* AMYU FOUNDER COMPACT TWO COLUMN V5 END */


/* AMYU OFFICIAL FOUNDER BIOGRAPHY V6 */

.founder-portrait-design .fp-official-biography {
    background: #FFFFFF;
    padding: 75px 0 40px;
}

.founder-portrait-design .fp-official-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: clamp(45px, 7vw, 110px);
}

.founder-portrait-design .fp-official-grid h2 {
    color: #174F2D;
    font-size: clamp(25px, 2.4vw, 34px);
    line-height: 1.19;
    letter-spacing: -.025em;
    margin: 0 0 22px;
}

.founder-portrait-design .fp-official-grid p {
    color: #43564A;
    font-size: 13px;
    line-height: 1.75;
    letter-spacing: 0;
    margin: 0 0 19px;
}

.founder-portrait-design .fp-official-grid
> div:nth-child(2) {
    padding-top: 37px;
}

.founder-portrait-design .fp-profile-link {
    padding: 15px 24px 75px;
    text-align: center;
    background: #FFFFFF;
}

.founder-portrait-design .fp-profile-link
.fp-container {
    display: flex;
    justify-content: center;
}

.founder-portrait-design .fp-profile-link .fp-btn {
    justify-content: center;
    gap: 0;
}

@media (max-width: 650px) {
    .founder-portrait-design .fp-official-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .founder-portrait-design .fp-official-grid
    > div:nth-child(2) {
        padding-top: 0;
    }

    .founder-portrait-design .fp-official-biography {
        padding: 55px 0 25px;
    }
}


/* AMYU ABOUT TOP REFINEMENT V1 START */

/* DESKTOP: floating navigation over the photograph */

@media (min-width: 801px) {

  body:has(.about-v2) .main-header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1000 !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* Exactly center the glass navigation */
  body:has(.about-v2) .main-header .main-nav {
    position: absolute !important;
    top: 22px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: max-content;
    max-width: calc(100vw - 40px);
    margin: 0 !important;

    background: rgba(23,79,45,.38) !important;
    -webkit-backdrop-filter:
      blur(24px) saturate(160%);
    backdrop-filter:
      blur(24px) saturate(160%);

    border: 1px solid
      rgba(255,255,255,.35) !important;
    border-radius: 16px !important;

    box-shadow:
      0 12px 32px rgba(0,0,0,.14),
      inset 0 1px rgba(255,255,255,.15);
  }
}

/* Remove logo only on About AMYU */

body:has(.about-v2) .main-header img,
body:has(.about-v2) .main-header a:has(img) {
  display: none !important;
}

/* Preserve working dropdown */

body:has(.about-v2)
.main-header .about-dropdown {
  background: rgba(18,61,38,.95) !important;
}

body:has(.about-v2)
.main-header .about-dropdown a {
  color: #FFFFFF !important;
}

body:has(.about-v2)
.main-header .about-dropdown[hidden] {
  display: none !important;
}

/* Hero: centered, slightly smaller typography */

body:has(.about-v2)
.about-v2 .about-page-hero {
  min-height: 460px;
  padding: 150px 24px 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body:has(.about-v2)
.about-v2 .about-page-hero-inner {
  width: min(100%, 920px);
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}

body:has(.about-v2)
.about-v2 .about-page-hero h1 {
  color: #FFFFFF;
  font-size: clamp(34px, 4.2vw, 54px);
  font-weight: 700;
  line-height: 1.13;
  letter-spacing: -.035em;
  margin: 0 auto 15px;
  text-align: center;
}

body:has(.about-v2)
.about-v2 .about-page-hero p {
  max-width: 550px;
  margin: 0 auto;
  text-align: center;
  font-size: 15px;
  line-height: 1.65;
}

/* Six centered section-navigation buttons */

body:has(.about-v2) .about-v2-jumps {
  background: #F7F3E7;
  padding: 24px 0;
}

body:has(.about-v2)
.about-v2-jump-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 11px;
}

body:has(.about-v2)
.about-v2-jump-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 17px;
  border: 1px solid rgba(23,79,45,.4);
  border-radius: 12px !important;
  background: rgba(255,255,255,.65);
  color: #174F2D;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  transition:
    background .2s ease,
    color .2s ease;
}

body:has(.about-v2)
.about-v2-jump-links a:hover,
body:has(.about-v2)
.about-v2-jump-links a:focus-visible {
  background: #174F2D;
  color: white;
}

/* Mission: controlled width and improved spacing */

body:has(.about-v2)
.about-v2-mission {
  padding: 75px 24px;
  text-align: center;
}

body:has(.about-v2)
.about-v2-mission .about-v2-container {
  max-width: 850px;
  margin: 0 auto;
}

body:has(.about-v2)
.about-v2-mission h2 {
  color: #FFFFFF;
  font-size: clamp(24px, 2.8vw, 34px);
  line-height: 1.2;
  letter-spacing: -.02em;
  margin: 0 auto 24px;
}

body:has(.about-v2)
.about-v2-mission p {
  max-width: 760px;
  margin: 0 auto;
  color: #FFFFFF;
  font-size: clamp(16px, 1.8vw, 21px);
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: 0;
  text-align: center;
}

body:has(.about-v2)
.about-v2-mission h3 {
  margin: 35px auto 14px;
  font-size: 15px;
  letter-spacing: .09em;
}

body:has(.about-v2)
.about-v2-mission .about-v2-vision {
  max-width: 680px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}

/* Make the Partners jump land neatly */

body:has(.about-v2) #partners,
body:has(.about-v2) #mission {
  scroll-margin-top: 100px;
}

/* Mobile: preserve the functional mobile menu */

@media (max-width: 800px) {

  body:has(.about-v2) .main-header {
    background: rgba(23,79,45,.91) !important;
  }

  body:has(.about-v2)
  .about-v2 .about-page-hero {
    min-height: 370px;
    padding: 125px 22px 65px;
  }

  body:has(.about-v2)
  .about-v2 .about-page-hero h1 {
    font-size: clamp(32px, 7vw, 43px);
  }

  body:has(.about-v2) .about-v2-jumps {
    padding: 18px 0;
  }

  body:has(.about-v2)
  .about-v2-jump-links {
    gap: 8px;
  }

  body:has(.about-v2)
  .about-v2-jump-links a {
    padding: 9px 13px;
    min-height: 40px;
  }

  body:has(.about-v2)
  .about-v2-mission {
    padding: 58px 22px;
  }
}

/* AMYU ABOUT TOP REFINEMENT V1 END */


/* AMYU ABOUT ACCORDIONS AND MORPH V2 START */

/* Hide support CTA only on this page */
body:has(.about-v2) .main-header
a.amyu-support-glass {
    display: none !important;
}

/* Challenge: softly faded photograph */

.about-v2 .about-v2-challenge {
    background:
      linear-gradient(
        90deg,
        #FFFFFF 0%,
        rgba(255,255,255,.97) 35%,
        rgba(255,255,255,.78) 65%,
        rgba(255,255,255,.50) 100%
      ),
      url("assets/images/amyu-about-photo.jpg")
      center right / cover no-repeat,
      #FFFFFF;
    padding: 85px 0;
}

.about-v2 .about-v2-challenge-grid {
    display: block;
}

.about-v2 .about-v2-challenge-grid > div {
    max-width: 640px;
}

.about-v2 .about-v2-challenge h2 {
    font-size: clamp(26px, 3vw, 38px);
    margin-bottom: 20px;
}

.about-v2 .about-v2-challenge p {
    font-size: 14px;
    line-height: 1.8;
}

/* Mission and Vision: equal-size expandable panels */

.about-v2 .about-v2-mission {
    background: linear-gradient(
        120deg,
        #103B26 0%,
        #174F2D 55%,
        #286A3C 100%
    );
    padding: 72px 0;
}

.about-v2 .amyu-mission-intro {
    text-align: center;
    margin-bottom: 24px;
}

.about-v2 .amyu-mission-intro span {
    color: #F5AE62;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .16em;
}

.about-v2 .amyu-purpose-list {
    max-width: 800px;
    margin: auto;
    text-align: left;
    border-top: 1px solid rgba(255,255,255,.35);
}

.about-v2 .amyu-purpose-list details {
    border-bottom: 1px solid rgba(255,255,255,.35);
}

.about-v2 .amyu-purpose-list summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 24px 4px;
    color: #FFFFFF;
    font-size: clamp(21px, 2.4vw, 30px);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.02em;
    list-style: none;
    cursor: pointer;
}

.about-v2 .amyu-purpose-list summary::-webkit-details-marker {
    display: none;
}

.about-v2 .amyu-purpose-list summary::after {
    content: "+";
    display: grid;
    place-items: center;
    width: 29px;
    height: 29px;
    flex-shrink: 0;
    border: 1px solid rgba(255,255,255,.7);
    border-radius: 50%;
    color: #FFFFFF;
    font-size: 23px;
    font-weight: 400;
    line-height: 1;
}

.about-v2 .amyu-purpose-list details[open] summary::after {
    content: "×";
}

.about-v2 .amyu-purpose-content {
    padding: 0 45px 26px 4px;
}

.about-v2 .amyu-purpose-list
.amyu-purpose-content p {
    color: #ECF4EB;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75;
    text-align: left;
    margin: 0;
    max-width: 750px;
}

/* Work at a Glance: compact accordions */

.about-v2 .about-v2-work {
    padding: 78px 0;
    background: linear-gradient(
        120deg,
        #FFFFFF,
        #F6FAF3
    );
}

.about-v2 .about-v2-work
.about-v2-section-heading {
    margin-bottom: 35px;
}

.about-v2 .amyu-work-accordion {
    max-width: 920px;
    margin: 0 auto;
    border-top: 1px solid rgba(23,79,45,.32);
}

.about-v2 .amyu-work-accordion details {
    border-bottom: 1px solid rgba(23,79,45,.32);
}

.about-v2 .amyu-work-accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    min-height: 72px;
    padding: 20px 8px;
    list-style: none;
    cursor: pointer;
    color: #174F2D;
    font-size: clamp(16px, 2vw, 21px);
    font-weight: 700;
    line-height: 1.35;
}

.about-v2 .amyu-work-accordion summary::-webkit-details-marker {
    display: none;
}

.about-v2 .amyu-work-accordion summary::after {
    content: "+";
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background: #174F2D;
    color: #FFFFFF;
    font-size: 21px;
    font-weight: 400;
}

.about-v2 .amyu-work-accordion details[open] summary::after {
    content: "×";
}

.about-v2 .amyu-work-answer {
    padding: 0 45px 22px 8px;
}

.about-v2 .amyu-work-answer p {
    max-width: 750px;
    margin: 0;
    color: #43564A;
    font-size: 14px;
    line-height: 1.8;
}

/* Keyboard accessibility */

.about-v2 .amyu-purpose-list summary:focus-visible,
.about-v2 .amyu-work-accordion summary:focus-visible {
    outline: 3px solid #F5AE62;
    outline-offset: 3px;
    border-radius: 5px;
}

/* Subtle morph-style cross-page transition.
   Supported browsers use same-origin View Transitions. */

@view-transition {
    navigation: auto;
}

@keyframes amyu-page-out {
    to {
        opacity: 0;
        transform: scale(.985);
        filter: blur(3px);
    }
}

@keyframes amyu-page-in {
    from {
        opacity: 0;
        transform: scale(1.015);
        filter: blur(3px);
    }
    to {
        opacity: 1;
        transform: scale(1);
        filter: blur(0);
    }
}

::view-transition-old(root) {
    animation: 220ms ease-in both amyu-page-out;
}

::view-transition-new(root) {
    animation: 320ms ease-out both amyu-page-in;
}

@media (prefers-reduced-motion: reduce) {
    ::view-transition-old(root),
    ::view-transition-new(root) {
        animation: none;
    }
}

/* Mobile */

@media (max-width: 700px) {
    .about-v2 .about-v2-challenge {
        padding: 60px 0;
        background:
          linear-gradient(
            90deg,
            rgba(255,255,255,.96),
            rgba(255,255,255,.83)
          ),
          url("assets/images/amyu-about-photo.jpg")
          center / cover no-repeat;
    }

    .about-v2 .about-v2-mission,
    .about-v2 .about-v2-work {
        padding: 58px 0;
    }

    .about-v2 .amyu-purpose-list summary {
        font-size: 21px;
        padding: 20px 2px;
    }

    .about-v2 .amyu-work-accordion summary {
        min-height: 62px;
        font-size: 16px;
    }
}

/* AMYU ABOUT ACCORDIONS AND MORPH V2 END */


/* AMYU ABOUT STORY COMPACT V7 START */

/* ======================================
   ABOUT: CHALLENGE DIRECTLY ON HERO
====================================== */

body:has(.about-v2)
.about-v2 .about-page-hero {
    min-height: 680px !important;
    padding: 150px 24px 90px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
      linear-gradient(
        90deg,
        rgba(8,39,24,.88) 0%,
        rgba(8,39,24,.74) 48%,
        rgba(8,39,24,.46) 100%
      ),
      url("assets/images/amyu-about-hero.jpg")
      center / cover no-repeat !important;
    border-radius: 0 !important;
    clip-path: none !important;
}

body:has(.about-v2)
.about-v2 .about-page-hero::after {
    display: none !important;
}

body:has(.about-v2)
.about-v2 .about-page-hero-inner {
    max-width: 1050px;
    width: 100%;
    margin: auto;
    text-align: center;
}

body:has(.about-v2)
.about-v2 .about-page-hero h1 {
    font-size: clamp(35px,4vw,54px) !important;
    margin: 0 auto 10px;
}

body:has(.about-v2)
.about-v2 .about-page-hero p {
    margin-left: auto;
    margin-right: auto;
}

body:has(.about-v2) .amyu-hero-challenge {
    max-width: 760px;
    margin: 46px auto 0;
    color: #FFFFFF;
    scroll-margin-top: 100px;
}

body:has(.about-v2) .amyu-hero-challenge h2 {
    color: #FFFFFF;
    font-size: clamp(25px,2.8vw,36px);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 18px;
}

body:has(.about-v2)
.amyu-hero-challenge-copy p {
    max-width: 730px;
    color: rgba(255,255,255,.94);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
    text-align: center;
    margin: 0 auto 13px;
}

/* Mission label removed; retain original accordions */

body:has(.about-v2) .amyu-purpose-list {
    margin-top: 0;
}

/* ======================================
   OUR STORY: COMPACT EDITORIAL DESIGN
====================================== */

.amyu-story-rebuild {
    --as-dark: #174F2D;
    --as-green: #489350;
    --as-cream: #F7F3E7;
    color: var(--as-dark);
    background: #FFFFFF;
}

.amyu-story-rebuild * {
    box-sizing: border-box;
}

.amyu-story-rebuild .as-wrap {
    width: min(1060px,calc(100% - 48px));
    margin: 0 auto;
}

.amyu-story-rebuild .as-label,
.amyu-story-rebuild .as-heading-group small {
    display: block;
    color: #489350;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .13em;
    line-height: 1.5;
    margin-bottom: 12px;
}

.amyu-story-rebuild p {
    color: #43564A;
    font-size: 14px;
    line-height: 1.8;
    margin: 0 0 16px;
    letter-spacing: 0;
}

/* Compact photographic introduction */

.amyu-story-rebuild .as-hero {
    padding: 105px 0 65px;
    min-height: 310px;
    display: flex;
    align-items: end;
    background:
      linear-gradient(
        105deg,
        rgba(9,43,27,.88),
        rgba(9,43,27,.36)
      ),
      url("assets/images/amyu-story-hero.jpg")
      center / cover no-repeat,
      #174F2D;
}

.amyu-story-rebuild .as-hero .as-label {
    color: #F5AE62;
}

.amyu-story-rebuild .as-hero h1 {
    color: #FFFFFF;
    font-size: clamp(39px,5vw,66px);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.1;
    margin: 0;
}

/* Expandable information */

.amyu-story-rebuild .as-introduction {
    padding: 55px 0;
}

.amyu-story-rebuild .as-accordions {
    border-top: 1px solid rgba(23,79,45,.3);
}

.amyu-story-rebuild .as-accordions details {
    border-bottom: 1px solid rgba(23,79,45,.3);
}

.amyu-story-rebuild .as-accordions summary {
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    padding: 24px 4px;
    cursor: pointer;
}

.amyu-story-rebuild
.as-accordions summary::-webkit-details-marker {
    display: none;
}

.amyu-story-rebuild
.as-accordions summary::after {
    content: "+";
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    background: #174F2D;
    border-radius: 50%;
    color: white;
    font-size: 22px;
    line-height: 1;
}

.amyu-story-rebuild
.as-accordions details[open] summary::after {
    content: "×";
}

.amyu-story-rebuild .as-heading-group {
    display: block;
    max-width: 850px;
}

.amyu-story-rebuild .as-heading-group h2 {
    color: #174F2D;
    font-size: clamp(24px,3vw,39px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.025em;
    margin: 0;
}

.amyu-story-rebuild .as-answer {
    max-width: 790px;
    padding: 0 38px 23px 4px;
}

/* Humanitarian and Peacebuilding */

.amyu-story-rebuild .as-programme {
    padding: 67px 0;
    background: #F7F3E7;
}

.amyu-story-rebuild .as-peace {
    background: linear-gradient(
        120deg,#FFFFFF,#F2F7EF
    );
}

.amyu-story-rebuild .as-programme-grid {
    display: grid;
    grid-template-columns:
        minmax(0,.85fr) minmax(0,1.15fr);
    gap: clamp(35px,6vw,90px);
    align-items: start;
}

.amyu-story-rebuild .as-programme h2 {
    color: #174F2D;
    font-size: clamp(27px,3vw,41px);
    line-height: 1.18;
    font-weight: 700;
    letter-spacing: -.025em;
    margin: 0;
}

.amyu-story-rebuild .as-programme-copy {
    max-width: 600px;
}

.amyu-story-rebuild .as-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
}

/* Programme links and final button */

.amyu-story-rebuild .as-actions a,
.amyu-story-rebuild .as-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 12px 22px;
    color: #FFFFFF;
    background: linear-gradient(
        120deg,#489350,#2D7842
    );
    border: 1px solid #489350;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
    transition:
        background .2s ease,
        transform .2s ease;
}

.amyu-story-rebuild .as-actions a:hover,
.amyu-story-rebuild .as-button:hover {
    background: #174F2D;
    border-color: #174F2D;
    color: #FFFFFF;
    transform: translateY(-2px);
}

/* Final journey: one large centered statement */

.amyu-story-rebuild .as-journey {
    text-align: center;
    padding: 82px 0 88px;
    background: #FFFFFF;
}

.amyu-story-rebuild .as-journey h2 {
    color: #174F2D;
    font-size: clamp(36px,5vw,64px);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -.04em;
    margin: 0 auto 24px;
}

.amyu-story-rebuild .as-journey-copy {
    max-width: 750px;
    margin: 0 auto;
}

.amyu-story-rebuild .as-journey-copy p {
    text-align: center;
}

.amyu-story-rebuild .as-journey-action {
    margin-top: 23px;
}

/* Accessible focus states */

.amyu-story-rebuild summary:focus-visible,
.amyu-story-rebuild a:focus-visible {
    outline: 3px solid #F5AE62;
    outline-offset: 4px;
}

/* Responsive */

@media (max-width: 700px) {
    body:has(.about-v2)
    .about-v2 .about-page-hero {
        min-height: 720px !important;
        padding: 135px 20px 55px !important;
    }

    body:has(.about-v2) .amyu-hero-challenge {
        margin-top: 30px;
    }

    body:has(.about-v2)
    .amyu-hero-challenge-copy p {
        font-size: 13px;
    }

    .amyu-story-rebuild .as-hero {
        min-height: 260px;
        padding: 75px 0 48px;
    }

    .amyu-story-rebuild .as-programme-grid {
        grid-template-columns: 1fr;
        gap: 23px;
    }

    .amyu-story-rebuild .as-programme {
        padding: 50px 0;
    }

    .amyu-story-rebuild .as-introduction {
        padding: 38px 0;
    }

    .amyu-story-rebuild .as-journey {
        padding: 65px 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .amyu-story-rebuild .as-actions a,
    .amyu-story-rebuild .as-button {
        transition: none;
    }
}

/* AMYU ABOUT STORY COMPACT V7 END */


/* AMYU ABOUT CREAM TITLE V8 START */

/* Photo hero contains the Challenge heading and copy */

body:has(.about-v2)
.about-v2 .about-page-hero {
    min-height: 560px !important;
    padding: 150px 24px 85px !important;
    background:
        linear-gradient(
            105deg,
            rgba(7,38,22,.88) 0%,
            rgba(7,38,22,.66) 55%,
            rgba(7,38,22,.40) 100%
        ),
        url("assets/images/amyu-about-hero.jpg")
        center / cover no-repeat !important;
}

body:has(.about-v2)
.amyu-hero-challenge {
    margin: 0 auto !important;
    max-width: 800px;
}

body:has(.about-v2)
.amyu-hero-challenge h2 {
    color: #FFFFFF !important;
    text-transform: none !important;
    font-size: clamp(30px, 3.3vw, 44px);
    line-height: 1.16;
    text-align: center;
    margin: 0 auto 20px;
}

body:has(.about-v2)
.amyu-hero-challenge-copy p {
    color: #FFFFFF !important;
    max-width: 740px;
    font-size: 14px;
    line-height: 1.8;
    text-align: center;
}

/* Centered title on the cream background */

body:has(.about-v2)
.amyu-about-cream-title {
    background: #F7F3E7;
    text-align: center;
    padding: 55px 20px 30px;
}

body:has(.about-v2)
.amyu-about-cream-title h1 {
    margin: 0;
    color: #174F2D;
    font-size: clamp(33px, 4vw, 49px);
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -.035em;
    text-transform: none;
}

/* Blend title smoothly with section buttons */

body:has(.about-v2)
.about-v2-jumps {
    background: #F7F3E7 !important;
    padding-top: 13px !important;
    padding-bottom: 35px !important;
}

/* Hide old hero subtitle if produced by a pseudo-element */

body:has(.about-v2)
.about-page-hero .hero-subtitle {
    display: none !important;
}

/* Mobile */

@media(max-width:700px) {
    body:has(.about-v2)
    .about-v2 .about-page-hero {
        min-height: 510px !important;
        padding: 120px 20px 60px !important;
    }

    body:has(.about-v2)
    .amyu-about-cream-title {
        padding: 42px 18px 24px;
    }

    body:has(.about-v2)
    .amyu-hero-challenge h2 {
        font-size: 33px;
    }
}

/* AMYU ABOUT CREAM TITLE V8 END */


/* AMYU ABOUT FULL PHOTO V9 START */

/* One continuous photographic hero */

body:has(.about-v2)
.about-v2 .about-page-hero {
    min-height: 900px !important;
    height: auto !important;
    padding: 145px 24px 75px !important;
    display: block !important;

    background:
      linear-gradient(
        180deg,
        rgba(7,35,21,.78) 0%,
        rgba(7,35,21,.68) 42%,
        rgba(7,35,21,.87) 100%
      ),
      url("assets/images/amyu-about-hero.jpg")
      center / cover no-repeat !important;

    border-radius: 0 !important;
    clip-path: none !important;
}

body:has(.about-v2)
.about-v2 .about-page-hero::before,
body:has(.about-v2)
.about-v2 .about-page-hero::after {
    display: none !important;
}

body:has(.about-v2)
.about-v2 .about-page-hero-inner {
    width: min(100%, 1080px);
    max-width: 1080px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

/* About AMYU restored at top */

body:has(.about-v2)
.about-v2 .amyu-hero-about-title {
    color: #FFFFFF !important;
    font-size: clamp(36px, 4.2vw, 54px) !important;
    line-height: 1.12;
    font-weight: 750;
    letter-spacing: -.035em;
    text-align: center;
    margin: 0 auto 38px !important;
}

/* Our Challenge remains white */

body:has(.about-v2)
.about-v2 .amyu-hero-challenge {
    width: 100%;
    max-width: 780px;
    margin: 0 auto 32px !important;
}

body:has(.about-v2)
.about-v2 .amyu-hero-challenge h2 {
    color: #FFFFFF !important;
    font-size: clamp(27px, 3vw, 39px);
    text-transform: none !important;
    margin-bottom: 17px;
}

body:has(.about-v2)
.about-v2 .amyu-hero-challenge-copy p {
    color: #F5F7F1 !important;
    font-size: 14px;
    line-height: 1.8;
    text-align: center;
}

/* Remove the cream background around jump buttons */

body:has(.about-v2)
.amyu-hero-buttons {
    width: 100%;
    margin: 13px auto 45px;
}

body:has(.about-v2)
.amyu-hero-buttons .about-v2-jumps,
body:has(.about-v2)
.amyu-hero-buttons .about-v2-container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body:has(.about-v2)
.amyu-hero-buttons .about-v2-jumps {
    padding: 0 !important;
}

body:has(.about-v2)
.amyu-hero-buttons .about-v2-jump-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

body:has(.about-v2)
.amyu-hero-buttons .about-v2-jump-links a {
    color: #FFFFFF !important;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 12px !important;
    backdrop-filter: blur(10px);
    min-height: 42px;
    padding: 10px 18px;
}

body:has(.about-v2)
.amyu-hero-buttons .about-v2-jump-links a:hover {
    color: #174F2D !important;
    background: #FFFFFF !important;
}

/* Mission and Vision directly on the photo */

body:has(.about-v2)
.about-page-hero .about-v2-mission {
    width: 100%;
    max-width: 900px;
    min-height: 0 !important;
    margin: 0 auto;
    padding: 0 !important;

    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
}

body:has(.about-v2)
.about-page-hero .about-v2-mission
.about-v2-container {
    width: 100%;
    max-width: 900px;
    padding: 0 !important;
    background: transparent !important;
}

body:has(.about-v2)
.about-page-hero .amyu-purpose-list {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    text-align: left;
    border-top: 1px solid rgba(255,255,255,.48);
}

body:has(.about-v2)
.about-page-hero .amyu-purpose-list details {
    background: transparent !important;
    border-bottom: 1px solid rgba(255,255,255,.48);
    border-radius: 0 !important;
}

body:has(.about-v2)
.about-page-hero .amyu-purpose-list summary,
body:has(.about-v2)
.about-page-hero .amyu-purpose-list summary span {
    color: #FFFFFF !important;
    font-size: clamp(22px, 2.4vw, 30px) !important;
    text-align: left !important;
}

body:has(.about-v2)
.about-page-hero .amyu-purpose-content p {
    color: #FFFFFF !important;
    font-size: 14px !important;
    line-height: 1.75;
    text-align: left !important;
    margin: 0;
}

/* Our Story and Our Values: matching headings */

body:has(.about-v2)
.about-v2-story h2,
body:has(.about-v2)
.about-v2-values h2,
body:has(.about-v2)
#story h2,
body:has(.about-v2)
#values h2 {
    color: #174F2D;
    font-size: clamp(29px, 3vw, 41px) !important;
    font-weight: 750;
    letter-spacing: -.03em;
    line-height: 1.17;
    margin-top: 0 !important;
    text-transform: none;
}

/* Align story heading to the top of its text */

body:has(.about-v2)
.about-v2-story-grid,
body:has(.about-v2)
.about-v2-story .about-v2-grid {
    align-items: start !important;
}

body:has(.about-v2)
.about-v2-story-grid > :first-child,
body:has(.about-v2)
.about-v2-story .about-v2-grid > :first-child {
    align-self: start !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Mobile layout */

@media (max-width: 700px) {
    body:has(.about-v2)
    .about-v2 .about-page-hero {
        min-height: 0 !important;
        padding: 120px 20px 55px !important;
    }

    body:has(.about-v2)
    .about-v2 .amyu-hero-about-title {
        font-size: 38px !important;
        margin-bottom: 28px !important;
    }

    body:has(.about-v2)
    .amyu-hero-buttons {
        margin-bottom: 36px;
    }

    body:has(.about-v2)
    .about-page-hero .amyu-purpose-list summary,
    body:has(.about-v2)
    .about-page-hero .amyu-purpose-list summary span {
        font-size: 21px !important;
    }
}

/* AMYU ABOUT FULL PHOTO V9 END */


/* AMYU STANDALONE FOUNDER NAV */

.main-header .main-nav > a {
    white-space: nowrap;
}

.main-header .main-nav > a[href="founder.html"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.main-header .main-nav > a[href="founder.html"]:hover {
    opacity: .85;
}


/* AMYU GLOBAL MORPH V1 START */

/* Shared animation settings */

:root {
  --amyu-morph-speed: 420ms;
  --amyu-morph-ease:
    cubic-bezier(.22, 1, .36, 1);

  interpolate-size: allow-keywords;
}

html {
  scroll-behavior: smooth;
}

/* Page-to-page morph */

@view-transition {
  navigation: auto;
}

@keyframes amyu-global-page-out {
  to {
    opacity: 0;
    filter: blur(5px);
    transform: scale(.97);
  }
}

@keyframes amyu-global-page-in {
  from {
    opacity: 0;
    filter: blur(5px);
    transform: scale(1.025);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}

::view-transition-old(root) {
  animation:
    260ms ease-in both amyu-global-page-out;
}

::view-transition-new(root) {
  animation:
    430ms var(--amyu-morph-ease)
    both amyu-global-page-in;
}

/* Morph accordion content on expansion/collapse.
   Modern Chrome supports ::details-content. */

details {
  interpolate-size: allow-keywords;
}

details::details-content {
  block-size: 0;
  overflow: clip;
  opacity: 0;

  transition:
    block-size var(--amyu-morph-speed)
      var(--amyu-morph-ease),
    opacity 320ms ease,
    content-visibility
      var(--amyu-morph-speed)
      allow-discrete;
}

details[open]::details-content {
  block-size: auto;
  opacity: 1;
}

/* Morph plus icon to close icon */

.about-v2 details summary::after,
.amyu-story-rebuild details summary::after,
.founder-portrait-design details summary::after {
  transition:
    transform var(--amyu-morph-speed)
      var(--amyu-morph-ease),
    background-color 300ms ease,
    border-color 300ms ease,
    color 300ms ease;
}

.about-v2 details[open] summary::after,
.amyu-story-rebuild details[open] summary::after,
.founder-portrait-design details[open]
summary::after {
  transform: rotate(90deg) scale(1.06);
}

/* Shared hover morph on buttons */

a[class*="btn"],
a[class*="button"],
a[class*="cta"],
button:not(.about-menu-trigger),
.amyu-support-glass,
.about-v2-jump-links a,
.fp-btn,
.as-button {
  transition:
    transform 350ms var(--amyu-morph-ease),
    background-color 350ms ease,
    border-color 350ms ease,
    box-shadow 350ms ease,
    opacity 350ms ease;
}

@media (hover: hover) {
  a[class*="btn"]:hover,
  a[class*="button"]:hover,
  a[class*="cta"]:hover,
  .amyu-support-glass:hover,
  .about-v2-jump-links a:hover,
  .fp-btn:hover,
  .as-button:hover {
    transform: translateY(-3px) scale(1.025);
  }
}

/* Morph programme and impact cards */

.impact-card,
.fp-focus-card,
.about-v2-work article,
.programme-card {
  transition:
    transform 500ms var(--amyu-morph-ease),
    box-shadow 500ms var(--amyu-morph-ease),
    background-color 350ms ease;
}

@media (hover: hover) {
  .impact-card:hover,
  .fp-focus-card:hover,
  .about-v2-work article:hover,
  .programme-card:hover {
    transform: translateY(-5px) scale(1.012);
    box-shadow: 0 18px 36px
      rgba(23,79,45,.12);
  }
}

/* Smooth photos, where they are interactive */

a img,
.programme-card img {
  transition:
    transform 550ms var(--amyu-morph-ease),
    filter 550ms ease;
}

@media (hover: hover) {
  a:hover img,
  .programme-card:hover img {
    transform: scale(1.025);
  }
}

/* Navigation links */

.main-header .main-nav a {
  transition:
    color 300ms ease,
    opacity 300ms ease,
    background-color 300ms ease,
    transform 350ms var(--amyu-morph-ease);
}

/* Keep animation respectful of accessibility settings */

@media (prefers-reduced-motion: reduce) {
  :root {
    scroll-behavior: auto;
  }

  html {
    scroll-behavior: auto;
  }

  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation: none !important;
  }

  details::details-content,
  a[class*="btn"],
  a[class*="button"],
  a[class*="cta"],
  button,
  .impact-card,
  .fp-focus-card,
  .programme-card,
  a img,
  .main-header .main-nav a {
    transition: none !important;
    animation: none !important;
  }
}

/* AMYU GLOBAL MORPH V1 END */


/* AMYU ICON-ONLY BACK BUTTON V2 */

.amyu-page-back {
    position: absolute !important;
    top: 105px;
    left: clamp(18px, 4vw, 65px);
    z-index: 1100;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;
    padding: 0 !important;

    color: #FFFFFF;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-decoration: none;

    transition:
      transform 350ms cubic-bezier(.22,1,.36,1),
      opacity 300ms ease;
}

.amyu-page-back svg {
    width: 26px;
    height: 26px;
    display: block;
}

.amyu-page-back:hover {
    opacity: .8;
    transform: translateX(-5px);
}

/* Dark icon on light founder page */

body:has(.founder-portrait-design)
.amyu-page-back {
    color: #174F2D;
    top: 45px;
}

/* Mobile */

@media(max-width:800px) {
    .amyu-page-back {
        top: 90px;
        left: 15px;
    }

    body:has(.founder-portrait-design)
    .amyu-page-back {
        top: 25px;
    }
}

.amyu-page-back:focus-visible {
    outline: 2px solid #F5AE62;
    outline-offset: 4px;
}

@media(prefers-reduced-motion:reduce) {
    .amyu-page-back {
        transition: none;
    }
}


/* AMYU BACK ICON NAV ALIGNMENT V3 */

/* Align icon vertically with floating navigation */

.amyu-page-back {
    top: 23px !important;
    left: clamp(20px, 4vw, 65px) !important;
    width: 48px;
    height: 48px;
    z-index: 1200;
}

/* Keep icon centered in its invisible hit area */

.amyu-page-back svg {
    width: 27px;
    height: 27px;
}

/* Founder page, which has no navigation */

body:has(.founder-portrait-design)
.amyu-page-back {
    top: 23px !important;
}

/* Mobile navigation alignment */

@media(max-width:800px) {
    .amyu-page-back {
        top: 16px !important;
        left: 15px !important;
        width: 42px;
        height: 42px;
    }
}


/* AMYU BACK ICON CONTENT ALIGNMENT V4 */

/* Match the centered content's left edge */

@media (min-width: 801px) {
    .amyu-page-back {
        left: max(
            24px,
            calc((100vw - 1080px) / 2)
        ) !important;

        top: 23px !important;
    }
}

@media (max-width: 800px) {
    .amyu-page-back {
        left: 24px !important;
        top: 16px !important;
    }
}


/* AMYU FOUNDER MINIMAL ALIGNMENT V7 START */

/* Remove the white rectangular profile panel */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero {
    background: #F7F3E7 !important;
    padding: 75px 0 45px !important;
    border-radius: 0 !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-inner {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 55px 0 35px !important;

    background: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Founder name aligned with biography column */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-bottom {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateY(-25px);
    grid-template-columns: 1fr 1fr;
    gap: clamp(45px, 7vw, 110px);
    align-items: end;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-heading {
    width: 100%;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-heading h1 {
    margin: 0 !important;
    text-align: left !important;
    font-size: clamp(36px, 4vw, 59px);
    line-height: 1.08;
    letter-spacing: -.045em;
}

/* Remove any remaining old introductory tagline */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-heading > p {
    display: none !important;
}

/* Keep portrait floating without the white panel */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-person {
    z-index: 1;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-person-photo {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Align biography with founder name */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-official-biography
.fp-container {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Align the transparent back icon with both */

body:has(.founder-portrait-design)
.amyu-page-back {
    position: absolute !important;
    top: 23px !important;
    left: max(
        24px,
        calc((100vw - 1120px) / 2)
    ) !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #174F2D !important;
}

/* Maintain the existing two-column biography */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-official-grid {
    grid-template-columns: 1fr 1fr;
    gap: clamp(45px, 7vw, 110px);
}

/* Responsive layout */

@media (max-width: 850px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero {
        padding-top: 50px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-bottom {
        grid-template-columns: 1fr;
        transform: translateY(-12px);
        gap: 20px;
    }
}

@media (max-width: 650px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-inner {
        min-height: 710px;
        padding-top: 35px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-heading h1 {
        font-size: 38px;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-official-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    body:has(.founder-portrait-design)
    .amyu-page-back {
        top: 16px !important;
        left: 24px !important;
    }
}

/* AMYU FOUNDER MINIMAL ALIGNMENT V7 END */


/* AMYU ABOUT STORY VALUES ALIGNMENT V10 START */

/* Hide any remaining section-navigation buttons,
   without affecting the main navigation bar. */

body:has(.about-v2) .amyu-hero-buttons,
body:has(.about-v2) .about-v2-jumps {
    display: none !important;
}

/* Our Story: heading above text, same left edge */

body:has(.about-v2)
.about-v2-story .about-v2-story-grid,
body:has(.about-v2)
.about-v2-story-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
}

body:has(.about-v2)
.about-v2-story-grid > * {
    width: 100% !important;
    max-width: 800px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
}

body:has(.about-v2)
.about-v2-story h2,
body:has(.about-v2)
#story h2 {
    font-size: clamp(32px, 3.6vw, 48px) !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    letter-spacing: -.035em !important;
    text-align: left !important;
    margin: 0 0 12px !important;
}

/* Our Values: exactly the same heading scale */

body:has(.about-v2)
.about-v2-values h2,
body:has(.about-v2)
#values h2 {
    font-size: clamp(32px, 3.6vw, 48px) !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    letter-spacing: -.035em !important;
}

/* Keep body content compact and readable */

body:has(.about-v2)
.about-v2-story p,
body:has(.about-v2)
#story p {
    max-width: 800px;
    font-size: 14px;
    line-height: 1.8;
}

/* Responsive */

@media (max-width: 700px) {
    body:has(.about-v2)
    .about-v2-story h2,
    body:has(.about-v2)
    #story h2,
    body:has(.about-v2)
    .about-v2-values h2,
    body:has(.about-v2)
    #values h2 {
        font-size: 33px !important;
    }
}

/* AMYU ABOUT STORY VALUES ALIGNMENT V10 END */


/* AMYU STORY VALUES HORIZONTAL V11 */

/* Restore horizontal layout for Story content */

body:has(.about-v2)
.about-v2-story .about-v2-story-grid,
body:has(.about-v2)
.about-v2-story-grid {
    display: grid !important;
    grid-template-columns:
        minmax(0, .8fr)
        minmax(0, 1.2fr) !important;
    gap: clamp(25px, 4vw, 65px) !important;
    align-items: start !important;
}

/* Remove forced full widths from previous styling */

body:has(.about-v2)
.about-v2-story-grid > * {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

/* Match heading sizes and fit the available space */

body:has(.about-v2)
.about-v2-story h2,
body:has(.about-v2)
#story h2,
body:has(.about-v2)
.about-v2-values h2,
body:has(.about-v2)
#values h2 {
    font-size: clamp(28px, 3vw, 40px) !important;
    line-height: 1.15 !important;
    letter-spacing: -.03em !important;
    margin-top: 0 !important;
}

/* Keep text from overflowing its column */

body:has(.about-v2)
.about-v2-story-grid p {
    max-width: 100%;
    font-size: 14px;
    line-height: 1.75;
}

/* Stack only on narrow screens */

@media(max-width:700px) {
    body:has(.about-v2)
    .about-v2-story-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    body:has(.about-v2)
    .about-v2-story h2,
    body:has(.about-v2)
    #story h2,
    body:has(.about-v2)
    .about-v2-values h2,
    body:has(.about-v2)
    #values h2 {
        font-size: 32px !important;
    }
}


/* AMYU STORY VALUES PERFECT ALIGNMENT V12 START */

/* Both columns begin at the exact same height */

body:has(.about-v2)
.about-v2-story-grid {
    display: grid !important;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr) !important;
    align-items: start !important;
    gap: clamp(45px, 6vw, 100px) !important;
}

/* Remove any inherited vertical offsets */

body:has(.about-v2)
.about-v2-story-grid > * {
    margin-top: 0 !important;
    padding-top: 0 !important;
    align-self: start !important;
}

/* Story and Values headings: identical typography */

body:has(.about-v2)
.about-v2-story-grid h2,
body:has(.about-v2)
.about-v2-story-grid h3,
body:has(.about-v2)
#story h2,
body:has(.about-v2)
#values h2 {
    font-size: clamp(29px, 3vw, 40px) !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    letter-spacing: -.03em !important;
    text-transform: none !important;
    margin: 0 0 25px !important;
    padding: 0 !important;
    color: #174F2D !important;
}

/* Match paragraph and accordion starting positions */

body:has(.about-v2)
.about-v2-story-grid p:first-of-type {
    margin-top: 0 !important;
}

body:has(.about-v2)
.about-v2-story-grid .about-v2-accordion,
body:has(.about-v2)
.about-v2-story-grid details:first-of-type {
    margin-top: 0 !important;
}

/* Keep body copy readable */

body:has(.about-v2)
.about-v2-story-grid p {
    font-size: 14px;
    line-height: 1.8;
}

/* Make sure the story link stays removed */

body:has(.about-v2)
.about-v2-story-grid a[href="story.html"] {
    display: none !important;
}

/* Mobile: stack the columns */

@media(max-width:700px) {
    body:has(.about-v2)
    .about-v2-story-grid {
        grid-template-columns: 1fr !important;
        gap: 42px !important;
    }

    body:has(.about-v2)
    .about-v2-story-grid h2,
    body:has(.about-v2)
    .about-v2-story-grid h3 {
        font-size: 32px !important;
    }
}

/* AMYU STORY VALUES PERFECT ALIGNMENT V12 END */


/* AMYU STORY VALUES TOP ALIGNMENT V13 */

/* Equal columns starting from the exact same top line */

body:has(.about-v2) .about-v2-story-grid {
    display: grid !important;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 65px !important;
}

/* Reset vertical spacing on both columns */

body:has(.about-v2) .about-v2-story-grid > * {
    align-self: start !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: none !important;
}

/* Make both headings line up precisely */

body:has(.about-v2) .about-v2-story-grid h2,
body:has(.about-v2) .about-v2-story-grid h3 {
    margin-top: 0 !important;
    padding-top: 0 !important;
    line-height: 1.15 !important;
    font-size: 40px !important;
    font-weight: 750 !important;
    text-transform: none !important;
}

/* Remove inherited top spacing from values area */

body:has(.about-v2) .about-v2-values,
body:has(.about-v2) #values,
body:has(.about-v2) .about-v2-story-grid
.about-v2-accordion {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Mobile */

@media(max-width:700px) {
    body:has(.about-v2) .about-v2-story-grid {
        grid-template-columns: 1fr !important;
        gap: 35px !important;
    }

    body:has(.about-v2) .about-v2-story-grid h2,
    body:has(.about-v2) .about-v2-story-grid h3 {
        font-size: 32px !important;
    }
}


/* AMYU VALUES PRECISE TOP ALIGNMENT V14 */

/* Keep both columns in the same row */

@media (min-width: 701px) {

    body:has(.about-v2) .about-v2-story-grid {
        display: grid !important;
        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr) !important;
        align-items: start !important;
        column-gap: 65px !important;
    }

    /* Bring the entire Values column up */
    body:has(.about-v2)
    .about-v2-story-grid > :nth-child(2) {
        position: relative !important;
        top: -100px !important;
    }

    /* Keep both headings the same size */
    body:has(.about-v2)
    .about-v2-story-grid h2,
    body:has(.about-v2)
    .about-v2-story-grid h3 {
        font-size: 40px !important;
        line-height: 1.15 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}

/* Keep normal stacking on phones */

@media (max-width: 700px) {
    body:has(.about-v2)
    .about-v2-story-grid > :nth-child(2) {
        position: static !important;
        top: auto !important;
        transform: none !important;
    }
}


/* AMYU STORY VALUES EXACT ALIGNMENT V15 */

@media (min-width: 701px) {

    body:has(.about-v2)
    .about-v2-story-grid {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 65px !important;
        align-items: start !important;
    }

    /* Align both columns at their top edges */

    body:has(.about-v2)
    .about-v2-story-grid > * {
        align-self: start !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* Correct the inherited offset on Values */

    body:has(.about-v2)
    .about-v2-story-grid > :nth-child(2) {
        position: relative !important;
        top: -100px !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* Identical headings */

    body:has(.about-v2)
    .about-v2-story-grid h2,
    body:has(.about-v2)
    .about-v2-story-grid h3 {
        font-size: 40px !important;
        font-weight: 750 !important;
        line-height: 1.15 !important;
        letter-spacing: -.03em !important;
        text-transform: uppercase !important;
        margin: 0 0 25px !important;
        padding: 0 !important;
    }
}

@media(max-width:700px) {
    body:has(.about-v2)
    .about-v2-story-grid {
        grid-template-columns: 1fr !important;
        gap: 35px !important;
    }

    body:has(.about-v2)
    .about-v2-story-grid > :nth-child(2) {
        position: static !important;
        top: auto !important;
        transform: none !important;
    }

    body:has(.about-v2)
    .about-v2-story-grid h2,
    body:has(.about-v2)
    .about-v2-story-grid h3 {
        font-size: 32px !important;
        text-transform: uppercase !important;
    }
}



/* AMYU SEVEN-MEMBER TEAM CAROUSEL V1 */

.about-v2 .amyu-team-carousel {
  width: 100%;
  margin-top: 20px;
  padding: 30px 0 12px;
  color: #174F2D;
}

.about-v2 .amyu-team-carousel-top {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 26px;
}

.about-v2 .amyu-team-eyebrow {
  color: #489350;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
}

.about-v2 .amyu-team-carousel h3 {
  color: #174F2D;
  font-size: clamp(25px, 3vw, 38px);
  line-height: 1.2;
  letter-spacing: -.035em;
  margin: 8px 0 0;
}

.about-v2 .amyu-team-controls {
  display: flex;
  gap: 9px;
  flex-shrink: 0;
}

.about-v2 .amyu-team-controls button {
  display: grid;
  place-items: center;
  width: 41px;
  height: 41px;
  border: 1px solid rgba(23,79,45,.35);
  border-radius: 50%;
  background: #FFFFFF;
  color: #174F2D;
  cursor: pointer;
  transition:
    transform 350ms cubic-bezier(.22,1,.36,1),
    background 350ms ease,
    color 350ms ease;
}

.about-v2 .amyu-team-controls button:hover:not(:disabled) {
  background: #174F2D;
  color: white;
  transform: scale(1.09);
}

.about-v2 .amyu-team-controls button:disabled {
  opacity: .3;
  cursor: default;
}

.about-v2 .amyu-team-controls svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.about-v2 .amyu-team-track {
  display: flex;
  gap: 17px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
  padding: 2px 0 12px;
}

.about-v2 .amyu-team-track::-webkit-scrollbar {
  display: none;
}

.about-v2 .amyu-team-card {
  flex: 0 0 calc((100% - 34px) / 3);
  min-width: 0;
  scroll-snap-align: start;
  border-radius: 17px;
  overflow: hidden;
  background: #DDE7D9;
  transition:
    transform 450ms cubic-bezier(.22,1,.36,1),
    box-shadow 450ms ease;
}

.about-v2 .amyu-team-card:hover {
  transform: translateY(-4px) scale(1.01);
  box-shadow: 0 18px 32px rgba(23,79,45,.12);
}

.about-v2 .amyu-team-image {
  aspect-ratio: 3 / 4;
  position: relative;
  overflow: hidden;
  border-radius: 17px;
}

.about-v2 .amyu-team-image > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 17px;
}

.about-v2 .amyu-team-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(
    145deg,#DFEBDD,#B9CFB7
  );
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  color: #648E6B;
}

.about-v2 .amyu-team-placeholder svg {
  width: 44%;
  max-width: 140px;
  fill: currentColor;
}

.about-v2 .amyu-team-placeholder small {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
}

.about-v2 .amyu-team-info {
  position: absolute;
  bottom: 12px;
  left: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px;
  background: rgba(255,255,255,.93);
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 12px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.about-v2 .amyu-team-info strong {
  color: #174F2D;
  font-size: 15px;
}

.about-v2 .amyu-team-info span {
  color: #58665C;
  font-size: 11px;
}

.about-v2 .amyu-team-carousel-status {
  color: #607667;
  font-size: 12px;
  text-align: center;
  margin: 7px 0 0;
}

@media(max-width:800px) {
  .about-v2 .amyu-team-card {
    flex-basis: calc((100% - 17px) / 2);
  }
}

@media(max-width:560px) {
  .about-v2 .amyu-team-card {
    flex-basis: 82%;
  }

  .about-v2 .amyu-team-carousel-top {
    align-items: center;
  }

  .about-v2 .amyu-team-carousel h3 {
    font-size: 24px;
  }
}

@media(prefers-reduced-motion:reduce) {
  .about-v2 .amyu-team-track {
    scroll-behavior: auto;
  }

  .about-v2 .amyu-team-card,
  .about-v2 .amyu-team-controls button {
    transition: none;
  }
}


/* AMYU MUSANA-INSPIRED FOOTER V1 START */

footer.amyu-reference-footer {
  display: block !important;
  width: 100%;
  padding: 80px 0 25px !important;
  background: #003B3C !important;
  background-image: none !important;
  color: #F7F5EC !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: inherit;
}

footer.amyu-reference-footer * {
  box-sizing: border-box;
}

footer.amyu-reference-footer .amyu-footer-inner {
  width: min(1400px, calc(100% - 80px));
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns:
    minmax(0, 1.5fr)
    repeat(3, minmax(0, 1fr));
  gap: clamp(35px, 4vw, 65px);
  align-items: start;
}

/* Left column */

footer.amyu-reference-footer .amyu-footer-contact {
  min-width: 0;
  padding-right: clamp(20px, 3vw, 55px);
  border-right: 1px solid
    rgba(255,255,255,.26);
}

footer.amyu-reference-footer .amyu-footer-brand {
  display: inline-block;
  margin-bottom: 29px;
  text-decoration: none;
}

footer.amyu-reference-footer .amyu-footer-logo {
  display: block;
  width: 190px;
  max-width: 100%;
  max-height: 100px;
  object-fit: contain;
  object-position: left center;
  border-radius: 0 !important;
}

footer.amyu-reference-footer .amyu-footer-wordmark {
  display: block;
  color: #FFFFFF;
  font-size: 40px;
  line-height: 1;
  font-weight: 800;
}

footer.amyu-reference-footer address {
  color: #F7F5EC;
  font-style: normal;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.65;
  margin: 0 0 22px;
}

footer.amyu-reference-footer .amyu-footer-contact-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 16px 0;
  color: #F7F5EC;
  font-size: 17px;
  line-height: 1.5;
}

footer.amyu-reference-footer
.amyu-footer-contact-label {
  flex-shrink: 0;
}

footer.amyu-reference-footer
.amyu-footer-contact-row > div {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

/* Three link columns */

footer.amyu-reference-footer
.amyu-footer-column {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

footer.amyu-reference-footer
.amyu-footer-column h2 {
  color: #FFFFFF !important;
  font-size: clamp(18px, 1.8vw, 23px) !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-transform: none !important;
}

footer.amyu-reference-footer .amyu-footer-rule {
  width: 100%;
  height: 1px;
  margin: 0 0 6px;
  background: rgba(255,255,255,.25);
}

footer.amyu-reference-footer a {
  color: #F7F5EC !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none;
  transition:
    color 300ms ease,
    opacity 300ms ease,
    transform 300ms cubic-bezier(.22,1,.36,1);
}

footer.amyu-reference-footer
.amyu-footer-column a {
  display: inline-block;
  width: fit-content;
}

footer.amyu-reference-footer a:hover {
  color: #F5AE62 !important;
  transform: translateX(3px);
}

footer.amyu-reference-footer a:focus-visible {
  outline: 2px solid #F5AE62;
  outline-offset: 5px;
}

/* Copyright */

footer.amyu-reference-footer .amyu-footer-bottom {
  width: min(1400px, calc(100% - 80px));
  max-width: 1400px;
  margin: 68px auto 0;
  padding-top: 20px;
  text-align: center;
}

footer.amyu-reference-footer .amyu-footer-bottom p {
  color: #F7F5EC !important;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
  margin: 0 !important;
}

/* Tablet */

@media(max-width:1100px) {
  footer.amyu-reference-footer .amyu-footer-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 45px;
  }

  footer.amyu-reference-footer .amyu-footer-contact {
    border-right: none;
    padding-right: 0;
  }
}

/* Phone */

@media(max-width:620px) {
  footer.amyu-reference-footer {
    padding: 55px 0 25px !important;
  }

  footer.amyu-reference-footer .amyu-footer-inner {
    width: calc(100% - 40px);
    grid-template-columns: 1fr;
    gap: 37px;
  }

  footer.amyu-reference-footer
  .amyu-footer-contact {
    padding-bottom: 30px;
    border-bottom: 1px solid
      rgba(255,255,255,.25);
  }

  footer.amyu-reference-footer
  .amyu-footer-column {
    gap: 13px;
  }

  footer.amyu-reference-footer
  .amyu-footer-bottom {
    width: calc(100% - 40px);
    margin-top: 48px;
  }

  footer.amyu-reference-footer address,
  footer.amyu-reference-footer a,
  footer.amyu-reference-footer
  .amyu-footer-contact-row {
    font-size: 15px;
  }
}

@media(prefers-reduced-motion:reduce) {
  footer.amyu-reference-footer a {
    transition: none;
  }
}

/* AMYU MUSANA-INSPIRED FOOTER V1 END */


/* AMYU FOUNDER LARGE PORTRAIT V8 START */

/* Full-width minimalist founder hero */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero {
    position: relative;
    min-height: 760px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #F7F3E7 !important;
    isolation: isolate;
    overflow: hidden !important;
}

/* Use one shared aligned content width */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-inner {
    width: min(1120px,calc(100% - 48px)) !important;
    max-width: 1120px !important;
    min-height: 760px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    position: relative !important;
    display: block !important;
    background: transparent !important;
    overflow: visible !important;
}

/* Dramatically enlarge the portrait */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-person {
    position: absolute !important;
    top: 10px !important;
    bottom: 0 !important;
    left: 34% !important;
    right: -23% !important;
    width: auto !important;
    height: auto !important;
    inset: 10px -23% 0 34% !important;
    overflow: visible !important;
    display: flex !important;
    justify-content: center;
    align-items: flex-end;
    z-index: 1 !important;
    pointer-events: none;
}

/* Large portrait, face always kept in frame */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-person-photo {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    border-radius: 0 !important;
    filter: none !important;
    -webkit-mask-image:
      linear-gradient(
        to bottom,
        black 72%,
        transparent 100%
      );
    mask-image:
      linear-gradient(
        to bottom,
        black 72%,
        transparent 100%
      );
}

/* Founder heading on the left */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-bottom {
    position: absolute !important;
    top: 180px !important;
    bottom: auto !important;
    left: 0 !important;
    right: auto !important;
    width: 46% !important;
    margin: 0 !important;
    display: block !important;
    transform: none !important;
    z-index: 3 !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-heading {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-heading h1 {
    color: #174F2D !important;
    font-size: clamp(39px,4.1vw,64px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.045em !important;
    text-align: left !important;
    margin: 0 0 28px !important;
    position: relative;
    z-index: 3;
}

/* Intro text directly below name */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-description {
    max-width: 460px;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-description p {
    display: block !important;
    color: #53665A !important;
    font-size: 17px !important;
    line-height: 1.8 !important;
    text-align: left !important;
    margin: 0 !important;
}

/* Back icon shares left edge */

body:has(.founder-portrait-design)
.amyu-page-back {
    top: 25px !important;
    left: max(
        24px,
        calc((100vw - 1120px)/2)
    ) !important;
    color: #174F2D !important;
    z-index: 20 !important;
}

/* Preserve content flow beneath hero */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-official-biography {
    position: relative;
    z-index: 2;
    background: #FFFFFF;
}

/* Tablet */

@media(max-width:900px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        inset: 55px -30% 0 30% !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-bottom {
        width: 55% !important;
        top: 155px !important;
    }
}

/* Mobile */

@media(max-width:650px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero,
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-inner {
        min-height: 790px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        inset: 245px -24% 0 8% !important;
        opacity: .94;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-bottom {
        width: 100% !important;
        top: 100px !important;
        left: 0 !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-heading h1 {
        font-size: 39px !important;
        margin-bottom: 17px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-description {
        max-width: 330px;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-description p {
        font-size: 14px !important;
        line-height: 1.7 !important;
    }

    body:has(.founder-portrait-design)
    .amyu-page-back {
        top: 14px !important;
        left: 24px !important;
    }
}

/* AMYU FOUNDER LARGE PORTRAIT V8 END */


/* AMYU FOUNDER EXTRA LARGE PORTRAIT V9 START */

/* Hero becomes a frame for the oversized portrait */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero {
    height: 820px !important;
    min-height: 820px !important;
    overflow: hidden !important;
    position: relative !important;
    background: #F7F3E7 !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-inner {
    height: 820px !important;
    min-height: 820px !important;
    overflow: visible !important;
}

/* Position the enormous image behind the text */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-person {
    position: absolute !important;

    inset: auto !important;

    width: 1050px !important;
    height: 1050px !important;

    top: -105px !important;
    right: -260px !important;
    bottom: auto !important;
    left: auto !important;

    max-width: none !important;
    max-height: none !important;

    display: block !important;
    overflow: visible !important;
    z-index: 1 !important;
    pointer-events: none;
}

/* Fill the entire portrait region */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-person-photo {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;
    max-height: none !important;

    object-fit: contain !important;
    object-position: center top !important;

    transform: scale(1.22) !important;
    transform-origin: center top !important;

    border-radius: 0 !important;
    box-shadow: none !important;

    -webkit-mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 67%,
        transparent 94%
    ) !important;

    mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 67%,
        transparent 94%
    ) !important;
}

/* Text remains visible above the photograph */

body:has(.founder-portrait-design)
.founder-portrait-design .fp-hero-bottom {
    top: 195px !important;
    width: 45% !important;
    z-index: 5 !important;
    transform: none !important;
}

/* Tablet */

@media (max-width: 1000px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        width: 850px !important;
        height: 850px !important;
        top: 5px !important;
        right: -250px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-bottom {
        top: 180px !important;
        width: 52% !important;
    }
}

/* Mobile */

@media (max-width: 650px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero,
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-inner {
        height: 820px !important;
        min-height: 820px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        width: 680px !important;
        height: 680px !important;

        top: 240px !important;
        right: -185px !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person-photo {
        transform: scale(1.12) !important;
    }

    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-hero-bottom {
        top: 105px !important;
        width: 100% !important;
        z-index: 5 !important;
    }
}

/* AMYU FOUNDER EXTRA LARGE PORTRAIT V9 END */


/* AMYU FOUNDER PORTRAIT HEAD POSITION V10 */

/* Move the enlarged portrait down to reveal the head */

@media (min-width: 1001px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        top: 45px !important;
    }
}

/* Tablet */

@media (min-width: 651px) and (max-width: 1000px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        top: 95px !important;
    }
}

/* Phone */

@media (max-width: 650px) {
    body:has(.founder-portrait-design)
    .founder-portrait-design .fp-person {
        top: 285px !important;
    }
}


/* AMYU COMPACT HOMEPAGE V1 START */

body:not(.inner-page) .hc-container {
  width:min(1120px,calc(100% - 48px));
  margin:auto;
}

.hc-approach,
.hc-values-section,
.hc-statistics {
  padding:65px 0 !important;
  background:#F7F3E7;
}

.hc-intro {
  max-width:650px;
  margin:0 0 30px;
  text-align:left;
}

.hc-intro h2 {
  font-size:clamp(25px,2.7vw,36px) !important;
  line-height:1.17 !important;
  letter-spacing:-.03em;
  text-align:left !important;
  margin:0 0 14px !important;
}

.hc-intro p {
  max-width:600px;
  font-size:14px !important;
  line-height:1.75;
  text-align:left !important;
  margin:0 !important;
}

/* One large project at a time */

.hc-project-stage {
  position:relative;
  height:clamp(320px,40vw,475px);
  overflow:hidden;
  border-radius:19px;
  background:#174F2D;
  isolation:isolate;
}

.hc-project {
  position:absolute;
  inset:0;
  display:flex;
  align-items:flex-end;
  opacity:0;
  visibility:hidden;
  transform:scale(1.055);
  filter:blur(8px);
  pointer-events:none;
  background:
    linear-gradient(110deg,#1A5534,#245F43);
  transition:
    opacity 750ms ease,
    transform 900ms cubic-bezier(.22,1,.36,1),
    filter 750ms ease,
    visibility 750ms;
}

.hc-project[style] {
  background-image:
    linear-gradient(
      90deg,
      rgba(9,39,24,.91),
      rgba(9,39,24,.40)
    ),
    var(--project-photo);
  background-position:center;
  background-size:cover;
}

.hc-project.is-active {
  opacity:1;
  visibility:visible;
  filter:blur(0);
  transform:scale(1);
  pointer-events:auto;
  z-index:2;
}

.hc-project-copy {
  width:min(670px,100%);
  padding:clamp(25px,5vw,55px);
  position:relative;
  z-index:2;
}

.hc-project-type {
  color:#F5AE62;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
}

.hc-project h3 {
  color:#FFFFFF !important;
  font-size:clamp(32px,4.5vw,59px) !important;
  line-height:1.1;
  margin:12px 0 16px;
}

.hc-project p {
  color:#FFFFFF !important;
  font-size:15px !important;
  line-height:1.7;
  max-width:480px;
}

.hc-project a {
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-top:18px;
  padding:10px 17px;
  border-radius:11px;
  background:#FFFFFF;
  color:#174F2D !important;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}

.hc-project-controls {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  margin:16px 0;
}

.hc-project-controls button {
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  border:1px solid #174F2D;
  border-radius:50%;
  background:transparent;
  color:#174F2D;
  font-size:27px;
  cursor:pointer;
}

.hc-project-count {
  min-width:50px;
  text-align:center;
  color:#174F2D;
  font-size:12px;
}

.hc-programmes-link {
  display:flex;
  justify-content:center;
  margin-top:18px;
}

.hc-small-button,
.hc-involvement-actions .hc-small-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  min-height:42px;
  border-radius:11px;
  background:#489350;
  color:#FFFFFF !important;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  transition:
    transform 300ms ease,
    background 300ms ease;
}

.hc-small-button:hover {
  background:#174F2D;
  transform:translateY(-2px);
}

/* Core values without cards */

.hc-values-section {
  background:#FFFFFF;
}

.hc-values-section h2,
.hc-statistics h2 {
  color:#174F2D;
  font-size:clamp(27px,3vw,39px) !important;
  margin:0 0 28px;
  text-align:left;
}

.hc-values-list {
  list-style:none;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 50px;
  padding:0;
  margin:0;
}

.hc-values-list li {
  padding:15px 0;
  color:#174F2D;
  border-bottom:1px solid rgba(23,79,45,.25);
  font-size:17px;
  font-weight:650;
}

/* Animated metrics, no boxes */

.hc-statistics {
  background:#F7F3E7;
}

.hc-stat-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px;
}

.hc-stat {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  padding:10px 0;
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
}

.hc-stat-number {
  color:#174F2D;
  font-size:clamp(60px,8vw,110px);
  font-weight:800;
  line-height:1;
  font-variant-numeric:tabular-nums;
}

.hc-stat-label {
  color:#43564A;
  font-size:13px;
}

/* Compact impact accordions */

.hc-impact-section {
  padding:65px 0 !important;
}

.hc-impact-section h2 {
  max-width:700px;
  margin:0 0 30px !important;
  font-size:clamp(29px,3.3vw,44px) !important;
  line-height:1.16;
}

.hc-impact-list {
  border-top:1px solid rgba(255,255,255,.45);
}

.hc-impact-list details {
  border-bottom:1px solid rgba(255,255,255,.45);
}

.hc-impact-list summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:19px 3px;
  color:white;
  font-size:clamp(16px,2vw,21px);
  font-weight:700;
  cursor:pointer;
  list-style:none;
}

.hc-impact-list summary::-webkit-details-marker {
  display:none;
}

.hc-impact-list summary::after {
  content:"+";
  display:grid;
  place-items:center;
  flex-shrink:0;
  width:29px;
  height:29px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:50%;
  font-size:22px;
  font-weight:400;
}

.hc-impact-list details[open] summary::after {
  content:"×";
}

.hc-impact-answer {
  padding:0 45px 17px 3px;
}

.hc-impact-answer p {
  color:#ECF4EB;
  font-size:14px;
  line-height:1.7;
}

/* Smaller involvement actions */

.hc-get-involved {
  padding:65px 24px !important;
  text-align:center;
}

.hc-involvement-actions {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

@media(max-width:700px) {
  .hc-values-list {
    grid-template-columns:1fr;
  }

  .hc-stat-grid {
    gap:12px;
  }

  .hc-stat-number {
    font-size:50px;
  }

  .hc-stat-label {
    font-size:11px;
  }

  .hc-project-stage {
    min-height:380px;
  }

  .hc-project-copy {
    padding:25px;
  }
}

@media(prefers-reduced-motion:reduce) {
  .hc-project {
    transition:none;
    filter:none;
    transform:none;
  }

  .hc-small-button {
    transition:none;
  }
}

/* AMYU COMPACT HOMEPAGE V1 END */


/* AMYU HOMEPAGE REFINEMENT V2 START */

/* PROJECT SHOWCASE — PHOTO FADES INTO CREAM */

body .hc-approach {
    background: #F7F3E7 !important;
}

body .hc-project-stage {
    position: relative !important;
    height: clamp(380px, 43vw, 510px) !important;
    background: #F7F3E7 !important;
    border-radius: 20px 20px 0 0 !important;
    isolation: isolate;
}

/* Add a cream gradient at the bottom of the photo
   without changing or cropping the source image. */

body .hc-project-stage::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 32%;
    z-index: 4;
    pointer-events: none;
    background: linear-gradient(
        to bottom,
        rgba(247,243,231,0) 0%,
        rgba(247,243,231,.4) 43%,
        rgba(247,243,231,.93) 83%,
        #F7F3E7 100%
    );
}

body .hc-project {
    border-radius: 20px 20px 0 0 !important;
}

/* Remove any remaining project eyebrow labels */

body .hc-project .hc-project-type {
    display: none !important;
}

/* Uppercase project names, pushed upward */

body .hc-project-copy {
    padding:
        35px
        clamp(25px, 5vw, 60px)
        125px !important;
    width: min(800px, 100%);
    z-index: 5 !important;
}

body .hc-project h3 {
    color: #FFFFFF !important;
    font-size: clamp(30px, 4.2vw, 55px) !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: -.025em;
    text-transform: uppercase !important;
    margin: 0 0 16px !important;
}

body .hc-project p {
    color: #FFFFFF !important;
    max-width: 510px;
    font-size: 14px !important;
    line-height: 1.7;
}

/* Keep Explore Project above the photo fade */

body .hc-project a {
    position: relative;
    z-index: 5;
    margin-top: 18px;
}

/* Perfectly centered controls */

body .hc-project-controls {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 20px !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
    text-align: center;
}

body .hc-project-controls button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 42px;
    width: 42px !important;
    height: 42px !important;
    padding: 0 0 3px !important;
    line-height: 1 !important;
    font-size: 29px !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #174F2D !important;
}

body .hc-project-controls button:hover {
    background: #174F2D !important;
    color: #FFFFFF !important;
    transform: scale(1.08);
}

body .hc-project-count {
    display: inline-block;
    flex: 0 0 60px;
    width: 60px;
    text-align: center !important;
    font-size: 13px !important;
    font-variant-numeric: tabular-nums;
}

/* Explore All Programmes stays below the arrows */

body .hc-programmes-link {
    margin-top: 8px !important;
}

/* IMPACT — CENTERED HEADING AND STATIC LIST */

body .hc-impact-section {
    padding: 60px 0 !important;
}

body .hc-impact-section h2 {
    max-width: 850px !important;
    margin: 0 auto 30px !important;
    text-align: center !important;
    font-size: clamp(27px, 3vw, 39px) !important;
    line-height: 1.18 !important;
    letter-spacing: -.025em;
}

body .hc-impact-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    max-width: 780px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-top: 1px solid rgba(255,255,255,.4);
}

body .hc-impact-item {
    width: 100%;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(255,255,255,.4);
    background: transparent !important;
    color: #FFFFFF !important;
    font-size: clamp(16px, 1.9vw, 20px);
    font-weight: 650;
    line-height: 1.5;
    text-align: center !important;
}

/* GET INVOLVED — SMALLER TITLE */

body .hc-get-involved {
    padding: 55px 24px !important;
}

body .hc-get-involved h1,
body .hc-get-involved h2,
body .hc-get-involved h3 {
    font-size: clamp(27px, 3.1vw, 42px) !important;
    line-height: 1.15 !important;
    letter-spacing: -.03em;
    text-align: center !important;
    margin: 0 auto 16px !important;
}

/* Hide the small Get Involved label if
   it remains in the current page markup. */

body .hc-get-involved .section-label,
body .hc-get-involved .eyebrow {
    display: none !important;
}

body .hc-get-involved p {
    max-width: 650px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    font-size: 14px !important;
    line-height: 1.7;
}

body .hc-involvement-actions {
    gap: 10px !important;
    margin-top: 22px !important;
}

/* PHONE */

@media(max-width:700px) {
    body .hc-project-stage {
        height: 450px !important;
    }

    body .hc-project-copy {
        padding: 25px 24px 105px !important;
    }

    body .hc-project h3 {
        font-size: 32px !important;
    }

    body .hc-project-stage::after {
        height: 28%;
    }

    body .hc-impact-section {
        padding: 48px 0 !important;
    }

    body .hc-impact-item {
        padding: 16px 10px;
        font-size: 16px;
    }

    body .hc-get-involved h1,
    body .hc-get-involved h2,
    body .hc-get-involved h3 {
        font-size: 29px !important;
    }
}

/* AMYU HOMEPAGE REFINEMENT V2 END */


/* AMYU HOMEPAGE CLEANUP V3 START */

/* AMYU at a Glance — compact and centered */

body .hc-statistics {
    padding: 48px 0 54px !important;
    background: #F7F3E7 !important;
    text-align: center !important;
}

body .hc-statistics h2 {
    font-size: clamp(18px, 1.7vw, 22px) !important;
    font-weight: 750 !important;
    letter-spacing: -.02em !important;
    line-height: 1.3 !important;
    margin: 0 auto 25px !important;
    text-align: center !important;
    max-width: 100% !important;
}

body .hc-stat-grid {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 25px !important;
    max-width: 800px !important;
    margin: 0 auto !important;
    align-items: start;
}

body .hc-stat {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start;
    flex-direction: column !important;
    gap: 9px !important;
    padding: 0 !important;
    text-align: center !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

body .hc-stat-number {
    display: block;
    color: #174F2D !important;
    font-size: clamp(36px, 4.2vw, 55px) !important;
    line-height: 1.05 !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums;
    text-align: center !important;
    transition: filter .2s ease;
}

body .hc-stat-label {
    display: block;
    color: #43564A !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    text-align: center !important;
    max-width: 170px;
}

/* Be Part of the Change — photographic background */

body .hc-get-involved {
    position: relative !important;
    isolation: isolate;
    width: 100%;
    padding: 95px 24px !important;

    background-image:
      linear-gradient(
        115deg,
        rgba(8,43,24,.84),
        rgba(8,43,24,.65)
      ),
      url("assets/images/site-photos/EMX_6310.jpg") !important;

    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;

    color: #FFFFFF !important;
    text-align: center !important;
    border-radius: 0 !important;
    overflow: hidden;
}

/* Remove any old overlays from the former section */

body .hc-get-involved::before,
body .hc-get-involved::after {
    display: none !important;
}

body .hc-get-involved > * {
    position: relative;
    z-index: 2;
}

body .hc-get-involved h1,
body .hc-get-involved h2,
body .hc-get-involved h3 {
    color: #FFFFFF !important;
    font-size: clamp(27px, 3vw, 40px) !important;
    line-height: 1.17 !important;
    max-width: 850px;
    margin: 0 auto 17px !important;
    text-align: center !important;
}

body .hc-get-involved p {
    color: #FFFFFF !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
    max-width: 630px !important;
    margin: 0 auto 20px !important;
    text-align: center !important;
}

body .hc-get-involved .hc-involvement-actions {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-top: 25px !important;
}

body .hc-get-involved .hc-small-button {
    background: rgba(255,255,255,.94) !important;
    color: #174F2D !important;
    border: 1px solid rgba(255,255,255,.8);
    border-radius: 12px !important;
    padding: 11px 20px !important;
    font-size: 12px !important;
    min-height: 43px;
    backdrop-filter: blur(10px);
}

body .hc-get-involved .hc-small-button:hover {
    background: #489350 !important;
    color: #FFFFFF !important;
    border-color: #489350;
    transform: translateY(-3px) scale(1.025);
}

/* Phones */

@media(max-width:700px) {
    body .hc-statistics {
        padding: 38px 0 44px !important;
    }

    body .hc-stat-grid {
        gap: 10px !important;
    }

    body .hc-stat-number {
        font-size: 38px !important;
    }

    body .hc-stat-label {
        font-size: 10px !important;
    }

    body .hc-get-involved {
        padding: 75px 20px !important;
        background-position: center !important;
    }

    body .hc-get-involved h1,
    body .hc-get-involved h2,
    body .hc-get-involved h3 {
        font-size: 30px !important;
    }
}

@media(prefers-reduced-motion:reduce) {
    body .hc-stat-number {
        transition: none;
    }
}

/* AMYU HOMEPAGE CLEANUP V3 END */


/* AMYU GET INVOLVED CLEAN V4 START */

body .hc-get-involved {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 430px !important;
    padding: 85px 24px !important;
    text-align: center !important;
    background-size: cover !important;
    background-position: center !important;
}

body .hc-clean-involvement {
    width: min(850px, 100%) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 5 !important;
    text-align: center !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

body .hc-clean-involvement h2 {
    color: #FFFFFF !important;
    font-size: clamp(28px, 3vw, 42px) !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    margin: 0 auto 17px !important;
    text-align: center !important;
}

body .hc-clean-involvement p {
    color: #FFFFFF !important;
    opacity: 1 !important;
    max-width: 650px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
    margin: 0 auto 30px !important;
    text-align: center !important;
}

body .hc-clean-involvement
.hc-involvement-actions {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin: 0 auto !important;
}

body .hc-clean-involvement
.hc-involvement-actions a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 110px;
    padding: 12px 20px !important;
    background: #FFFFFF !important;
    color: #174F2D !important;
    border-radius: 11px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}

body .hc-clean-involvement
.hc-involvement-actions a:hover {
    background: #489350 !important;
    color: #FFFFFF !important;
    transform: translateY(-3px);
}

@media (max-width: 650px) {
    body .hc-get-involved {
        min-height: 390px !important;
        padding: 65px 20px !important;
    }

    body .hc-clean-involvement h2 {
        font-size: 29px !important;
    }

    body .hc-clean-involvement p {
        font-size: 14px !important;
    }
}

/* AMYU GET INVOLVED CLEAN V4 END */


/* AMYU HOMEPAGE CENTER ALIGNMENT V5 START */

/* HERO — CENTER THE CONTENT, NOT THE LOGO */

body:has(.hc-approach) .hero-content,
body:has(.hc-approach) .hero-copy,
body:has(.hc-approach) .hero-text,
body:has(.hc-approach) .hero-inner {
    text-align: center !important;
}

/* Main headline */

body:has(.hc-approach) .hc-centered-hero-title,
body:has(.hc-approach) .hero h1,
body:has(.hc-approach) .hero-section h1 {
    font-size: clamp(38px, 5vw, 72px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.045em !important;

    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;

    max-width: 1000px !important;

    transform: translateY(35px);
}

/* Center hero buttons */

body:has(.hc-approach) .hero-actions,
body:has(.hc-approach) .hero-buttons,
body:has(.hc-approach) .hero-cta,
body:has(.hc-approach) .hero .btn-group {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Move CTA downward with the heading */

body:has(.hc-approach) .hero-actions,
body:has(.hc-approach) .hero-buttons,
body:has(.hc-approach) .hero-cta {
    transform: translateY(35px);
}

/* Center the tagline */

body:has(.hc-approach) .hero-tagline,
body:has(.hc-approach) .hero-subtitle,
body:has(.hc-approach) .hero-kicker,
body:has(.hc-approach) .hero-eyebrow {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* WHAT WE DO — INTRODUCTION */

body .hc-intro {
    width: 100% !important;
    max-width: 850px !important;

    margin: 0 auto 35px !important;
    text-align: center !important;
}

body .hc-intro h2 {
    max-width: 850px !important;
    margin: 0 auto 15px !important;

    font-size: clamp(26px, 3vw, 40px) !important;
    line-height: 1.17 !important;
    letter-spacing: -.025em !important;

    text-transform: uppercase !important;
    text-align: center !important;
}

body .hc-intro p {
    max-width: 620px !important;
    margin: 0 auto !important;

    font-size: 14px !important;
    line-height: 1.75 !important;

    text-align: center !important;
}

/* PROJECT CAROUSEL — CENTER TEXT */

body .hc-project {
    justify-content: center !important;
    align-items: flex-end !important;
}

body .hc-project-copy {
    width: min(850px,100%) !important;
    margin: 0 auto !important;

    padding:
      35px
      clamp(25px, 5vw, 60px)
      125px !important;

    text-align: center !important;
}

body .hc-project h3 {
    max-width: 780px !important;
    margin: 0 auto 15px !important;
    text-align: center !important;
}

body .hc-project p {
    max-width: 570px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

body .hc-project a {
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
}

/* Keep carousel controls and Explore All Programs centered */

body .hc-project-controls,
body .hc-programmes-link {
    justify-content: center !important;
    text-align: center !important;
}

/* Mobile */

@media(max-width:700px) {
    body:has(.hc-approach) .hc-centered-hero-title,
    body:has(.hc-approach) .hero h1,
    body:has(.hc-approach) .hero-section h1 {
        font-size: clamp(33px, 8vw, 48px) !important;
        transform: translateY(20px);
    }

    body:has(.hc-approach) .hero-actions,
    body:has(.hc-approach) .hero-buttons {
        transform: translateY(20px);
    }

    body .hc-intro h2 {
        font-size: 26px !important;
    }

    body .hc-project-copy {
        padding: 25px 22px 110px !important;
    }

    body .hc-project h3 {
        font-size: 29px !important;
    }
}

@media(prefers-reduced-motion:reduce) {
    body .hc-project {
        transition: none !important;
    }
}

/* AMYU HOMEPAGE CENTER ALIGNMENT V5 END */


/* AMYU HOMEPAGE REFINEMENTS V6 START */

/* HERO: return heading and button to the left. */

body:has(.hc-approach) .hc-hero-left-wrap-v6 {
    text-align: left !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
}

body:has(.hc-approach) .hc-hero-left-title-v6 {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 850px !important;
    transform: translateY(35px) !important;
}

body:has(.hc-approach) .hc-hero-left-actions-v6 {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    width: 100% !important;
}

body:has(.hc-approach) .hc-hero-left-cta-v6 {
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* WHAT WE DO: smaller, single-line desktop text. */

body .hc-intro {
    max-width: 1120px !important;
    width: 100% !important;
    margin: 0 auto 35px !important;
    text-align: center !important;
}

body .hc-intro h2 {
    font-size: clamp(18px, 2vw, 25px) !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    max-width: none !important;
    margin: 0 auto 13px !important;
}

body .hc-intro p {
    font-size: clamp(12px, 1.15vw, 14px) !important;
    line-height: 1.6 !important;
    white-space: nowrap !important;
    max-width: none !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto !important;
}

/* PROJECTS: hide only the individual project CTA. */

body .hc-project-copy > a {
    display: none !important;
}

/* PARTNERS: compact single-logo carousel. */

body .hc-partners-v6 {
    padding: 55px 24px 65px !important;
    background: #F7F3E7 !important;
    text-align: center !important;
}

body .hc-partners-v6 .hc-container {
    max-width: 1120px;
    margin: 0 auto;
}

body .hc-partners-v6 h2 {
    font-size: clamp(19px, 2vw, 26px) !important;
    color: #174F2D !important;
    font-weight: 800 !important;
    text-align: center !important;
    margin: 0 auto 25px !important;
}

body .hc-partner-carousel {
    position: relative;
    width: min(440px, 100%);
    height: 145px;
    margin: 0 auto;
    overflow: hidden;
}

body .hc-partner-slide {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    transform: translateX(24px) scale(.96);
    filter: blur(5px);

    transition:
        opacity .65s ease,
        transform .65s ease,
        filter .65s ease,
        visibility .65s;
}

body .hc-partner-slide.is-active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) scale(1);
    filter: blur(0);
}

body .hc-partner-slide img {
    width: auto;
    max-width: 85%;
    max-height: 120px;
    object-fit: contain;
}

body .hc-partner-placeholder {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    color: #758378;
    font-size: 13px;
    text-align: center;
}

/* Allow natural wrapping on smaller screens. */

@media(max-width: 800px) {
    body .hc-intro h2,
    body .hc-intro p {
        white-space: normal !important;
    }

    body .hc-intro h2 {
        font-size: 21px !important;
    }

    body .hc-intro p {
        font-size: 13px !important;
    }

    body:has(.hc-approach)
    .hc-hero-left-title-v6 {
        transform: translateY(20px) !important;
    }

    body .hc-partners-v6 {
        padding: 40px 18px 50px !important;
    }

    body .hc-partner-carousel {
        height: 120px;
    }
}

@media(prefers-reduced-motion:reduce) {
    body .hc-partner-slide {
        transition: none !important;
        filter: none !important;
        transform: none !important;
    }
}

/* AMYU HOMEPAGE REFINEMENTS V6 END */


/* AMYU HOMEPAGE FINAL ALIGNMENT V7 START */

/* HERO — OVERRIDE PREVIOUS CENTER ALIGNMENT */

body:has(.hc-approach) .amyu-left-hero-wrap-v7 {
    text-align: left !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
}

body:has(.hc-approach) .amyu-left-hero-title-v7 {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    max-width: 850px !important;
    width: 100% !important;
    font-size: clamp(38px, 5vw, 72px) !important;
    line-height: 1.08 !important;
    transform: translateY(35px) !important;
}

body:has(.hc-approach) .amyu-left-hero-actions-v7 {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    width: 100% !important;
}

body:has(.hc-approach) .amyu-left-hero-button-v7 {
    margin-left: 0 !important;
    margin-right: auto !important;
    align-self: flex-start !important;
}

/* PROJECT CAROUSEL — STRONGER CREAM FADE */

body .hc-project-stage {
    background: #F7F3E7 !important;
    border-radius: 20px 20px 0 0 !important;
}

/* Gradually blend the photo into cream over
   almost the lower half of the showcase. */

body .hc-project-stage::after {
    content: "" !important;
    position: absolute !important;
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 48% !important;
    background: linear-gradient(
        to bottom,
        rgba(247,243,231,0) 0%,
        rgba(247,243,231,.08) 16%,
        rgba(247,243,231,.38) 46%,
        rgba(247,243,231,.76) 74%,
        #F7F3E7 100%
    ) !important;
    z-index: 4 !important;
    pointer-events: none !important;
}

body .hc-project-copy {
    position: relative !important;
    z-index: 6 !important;
    padding-bottom: 145px !important;
}

/* Smaller project heading — single line on desktop */

body .hc-project h3 {
    font-size: clamp(20px, 2.5vw, 33px) !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: -.018em !important;
    white-space: nowrap !important;
    max-width: none !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto 15px !important;
}

/* Keep descriptions centered and readable. */

body .hc-project p {
    font-size: 14px !important;
    line-height: 1.6 !important;
    text-align: center !important;
    max-width: 600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Make controls blend naturally into the cream */

body .hc-project-controls {
    background: #F7F3E7 !important;
    position: relative !important;
    z-index: 7 !important;
    margin-top: 0 !important;
}

/* Responsive layout */

@media (max-width: 900px) {
    body .hc-project h3 {
        font-size: clamp(18px, 3vw, 27px) !important;
    }
}

@media (max-width: 650px) {
    body:has(.hc-approach) .amyu-left-hero-title-v7 {
        font-size: clamp(33px, 8vw, 48px) !important;
        transform: translateY(20px) !important;
    }

    body .hc-project h3 {
        font-size: clamp(20px, 5.6vw, 28px) !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
    }

    body .hc-project-copy {
        padding-bottom: 115px !important;
    }

    body .hc-project-stage::after {
        height: 40% !important;
    }
}

/* AMYU HOMEPAGE FINAL ALIGNMENT V7 END */


/* AMYU HERO LEFT FIX V8 START */

/*
  Position the heading at the same horizontal
  coordinate as the description and CTA.

  This overrides the original centered hero
  typography without affecting the navbar.
*/

body:has(.hc-approach)
h1.amyu-hero-true-left-v8,
body:has(.hc-approach)
h2.amyu-hero-true-left-v8,
body:has(.hc-approach)
h3.amyu-hero-true-left-v8 {
    display: block !important;

    width: min(850px,100%) !important;
    max-width: 850px !important;

    margin-left: 0 !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    text-align: left !important;

    align-self: flex-start !important;
    justify-self: start !important;

    position: relative !important;
    left: 0 !important;
    right: auto !important;

    transform: translateY(35px) !important;
    translate: 0 0 !important;
}

body:has(.hc-approach)
.amyu-hero-true-left-v8 * {
    text-align: left !important;
}

/* Override centered heading wrappers only. */

body:has(.hc-approach)
.amyu-hero-left-wrap-v7:has(
    .amyu-hero-true-left-v8
) {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
}

/* Keep CTA on the same left edge. */

body:has(.hc-approach)
.amyu-left-hero-actions-v7 {
    justify-content: flex-start !important;
    text-align: left !important;
}

/* Responsive title alignment. */

@media(max-width:700px) {
    body:has(.hc-approach)
    .amyu-hero-true-left-v8 {
        width: 100% !important;
        font-size: clamp(
            33px, 8vw, 48px
        ) !important;
        transform: translateY(20px) !important;
    }
}

/* AMYU HERO LEFT FIX V8 END */


/* AMYU NEW OFFICIAL LOGO V1 */

/* Full horizontal organization logo */

header a img[src*="amyu-logo.png"],
nav a img[src*="amyu-logo.png"],
.site-header img[src*="amyu-logo.png"] {
    width: 165px !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 65px !important;
    object-fit: contain !important;
}

/* Footer version */

footer img[src*="amyu-logo.png"],
.site-footer img[src*="amyu-logo.png"] {
    width: 210px !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Mobile navigation */

@media(max-width:700px) {
    header a img[src*="amyu-logo.png"],
    nav a img[src*="amyu-logo.png"],
    .site-header img[src*="amyu-logo.png"] {
        width: 125px !important;
        height: auto !important;
    }
}


/* AMYU FLOATING NAVBAR POSITION V1 START */

/* Move the full floating header down together.
   Keeps logo, menu and support button aligned. */

body > header,
body > .site-header,
body > .amyu-header {
    top: 25px !important;
}

/* Preserve existing navigation bar styling. */

body > header .nav-container,
body > header .navbar,
body > header nav {
    border-radius: inherit;
}

/* Give smaller screens a little less spacing. */

@media(max-width:700px) {
    body > header,
    body > .site-header,
    body > .amyu-header {
        top: 17px !important;
    }
}

/* AMYU FLOATING NAVBAR POSITION V1 END */


/* AMYU FLOATING HEADER OFFSET V2 START */

/* Move the real logo + menu + CTA container,
   keeping all three aligned. */

body .amyu-floating-header-offset-v2 {
    transform: translateY(30px) !important;
}

/* Mobile */

@media(max-width:700px) {
    body .amyu-floating-header-offset-v2 {
        transform: translateY(20px) !important;
    }
}

/* AMYU FLOATING HEADER OFFSET V2 END */


/* AMYU PROGRAMMES EDITORIAL V2 START */

/* Keep page background consistent with cream theme */
body:has(.amyu-programmes) {
  background:#F7F3E7;
}

/* Simple back arrow instead of navbar logo */
body:has(.amyu-programmes)
header[data-programmes-header] {
  padding-top:18px !important;
}

body:has(.amyu-programmes)
header[data-programmes-header] .ap-back-icon {
  display:block;
  color:#174F2D;
  width:28px;
  height:28px;
}

body:has(.amyu-programmes)
header[data-programmes-header] img[src*="amyu-logo"] {
  display:none !important;
}

/* Introduction */
.ap-intro-v2 {
  background:#F7F3E7 !important;
  padding:155px 24px 85px !important;
  text-align:left !important;
}

.ap-intro-inner-v2 {
  max-width:1120px;
  margin:0 auto;
  text-align:left;
}

.ap-intro-v2 h1 {
  font-size:clamp(24px,2.8vw,39px) !important;
  line-height:1.13 !important;
  letter-spacing:-.03em;
  text-align:left !important;
  white-space:nowrap;
  color:#174F2D !important;
  margin:0 0 23px !important;
}

.ap-intro-v2 p {
  font-size:clamp(14px,1.3vw,17px) !important;
  line-height:1.8 !important;
  color:#52645A !important;
  max-width:770px !important;
  margin:0 !important;
  text-align:left !important;
}

/* Full-width editorial programme panels */
.ap-feature-v2 {
  display:flex !important;
  align-items:center;
  position:relative;
  min-height:540px;
  padding:75px 24px !important;
  margin:0 !important;
  isolation:isolate;
  overflow:hidden;
  background:#F7F3E7 !important;
}

/* Photograph occupies the opposite side, fading
   naturally into the cream background. */
.ap-feature-v2::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background-image:
    linear-gradient(
      90deg,
      #F7F3E7 6%,
      rgba(247,243,231,.98) 35%,
      rgba(247,243,231,.7) 53%,
      rgba(247,243,231,.15) 80%
    ),
    linear-gradient(
      0deg,
      #F7F3E7,
      transparent 32%,
      transparent 74%,
      #F7F3E7
    ),
    var(--ap-photo,none);
  background-position:center,center,right center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:1;
}

.ap-feature-reverse-v2::before {
  background-image:
    linear-gradient(
      270deg,
      #F7F3E7 6%,
      rgba(247,243,231,.98) 35%,
      rgba(247,243,231,.7) 53%,
      rgba(247,243,231,.15) 80%
    ),
    linear-gradient(
      0deg,
      #F7F3E7,
      transparent 32%,
      transparent 74%,
      #F7F3E7
    ),
    var(--ap-photo,none);
  background-position:center,center,left center;
}

.ap-feature-inner-v2 {
  width:min(1120px,100%);
  margin:0 auto;
  display:flex;
  justify-content:flex-start;
}

.ap-feature-reverse-v2 .ap-feature-inner-v2 {
  justify-content:flex-end;
}

.ap-feature-copy-v2 {
  width:min(540px,100%);
  position:relative;
  z-index:2;
}

.ap-feature-category-v2 {
  display:block;
  font-size:11px;
  color:#548D5D;
  font-weight:800;
  letter-spacing:.13em;
  margin-bottom:16px;
}

.ap-feature-copy-v2 h2 {
  font-size:clamp(30px,3.7vw,51px) !important;
  letter-spacing:-.04em;
  line-height:1.12;
  margin:0 0 24px !important;
  color:#174F2D !important;
}

/* Animated accordion */
.ap-description-v2 {
  border-top:1px solid rgba(23,79,45,.28);
  border-bottom:1px solid rgba(23,79,45,.28);
  padding:0;
}

.ap-description-v2 summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  cursor:pointer;
  list-style:none;
  padding:18px 0;
  color:#425B4B;
  font-size:15px;
  line-height:1.6;
  font-weight:500;
}

.ap-description-v2 summary::-webkit-details-marker {
  display:none;
}

.ap-description-icon-v2 {
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border:1px solid #5E8067;
  border-radius:50%;
  transition:transform .35s ease;
}

.ap-description-icon-v2::before {
  content:"+";
  font-size:20px;
  line-height:1;
}

.ap-description-v2[open] .ap-description-icon-v2 {
  transform:rotate(135deg);
}

.ap-description-body-v2 {
  padding:0 40px 20px 0;
  animation:apReveal .45s ease both;
}

.ap-description-body-v2 p {
  color:#53685A !important;
  font-size:14px;
  line-height:1.75;
}

@keyframes apReveal {
  from {opacity:0;transform:translateY(-7px);filter:blur(3px)}
  to {opacity:1;transform:translateY(0);filter:blur(0)}
}

.ap-explore-v2 {
  display:inline-flex;
  gap:12px;
  align-items:center;
  text-decoration:none;
  padding:12px 20px;
  margin-top:25px;
  border-radius:11px;
  color:white !important;
  background:#43934F;
  font-size:13px;
  font-weight:700;
  transition:transform .3s ease,background .3s ease;
}

.ap-explore-v2:hover {
  background:#174F2D;
  transform:translateY(-3px);
}

/* Closing section Get Involved button */
body:has(.amyu-programmes)
.ap-closing a {
  display:inline-flex;
  padding:12px 22px;
  background:#43934F;
  border-radius:11px;
  color:#fff !important;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}

/* Mobile and tablet */
@media(max-width:850px) {
  .ap-intro-v2 {
    padding:125px 24px 55px !important;
  }

  .ap-intro-v2 h1 {
    white-space:normal;
  }

  .ap-feature-v2 {
    min-height:480px;
    padding:65px 24px !important;
  }

  .ap-feature-v2::before,
  .ap-feature-reverse-v2::before {
    opacity:.45;
    background-position:center;
  }

  .ap-feature-copy-v2 {
    width:min(580px,100%);
  }
}

@media(max-width:600px) {
  .ap-feature-v2 {
    min-height:420px;
    padding:55px 22px !important;
  }

  .ap-feature-copy-v2 h2 {
    font-size:32px !important;
  }

  .ap-intro-v2 h1 {
    font-size:28px !important;
  }
}

@media(prefers-reduced-motion:reduce) {
  .ap-description-body-v2 {
    animation:none;
  }
}

/* AMYU PROGRAMMES EDITORIAL V2 END */


/* AMYU PROGRAMMES BUTTON / TOP CLEANUP */

/* Remove the green top shape / strip on the programmes page */
.ap-hero,
.ap-hero::before,
.ap-hero::after {
    background: transparent !important;
    box-shadow: none !important;
}

body .amyu-programmes .ap-hero {
    min-height: 0 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body .amyu-programmes .ap-hero * {
    position: relative;
    z-index: 2;
}

/* Make Explore Programme button behave like the Get Involved button */
body .amyu-programmes .amyu-cta-shared,
body .amyu-programmes .ap-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 54px !important;
    padding: 0 26px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(29, 92, 48, 0.22) !important;
    background: rgba(35, 128, 61, 0.96) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    transition:
        transform 260ms cubic-bezier(.2,.8,.2,1),
        box-shadow 260ms cubic-bezier(.2,.8,.2,1),
        background 260ms cubic-bezier(.2,.8,.2,1),
        filter 260ms cubic-bezier(.2,.8,.2,1) !important;
    box-shadow: 0 10px 28px rgba(19, 76, 39, 0.18) !important;
    will-change: transform, box-shadow, filter !important;
}

body .amyu-programmes .amyu-cta-shared:hover,
body .amyu-programmes .ap-link:hover {
    transform: translateY(-2px) scale(1.02) !important;
    background: #1f8b45 !important;
    box-shadow: 0 16px 34px rgba(19, 76, 39, 0.24) !important;
    filter: saturate(1.05) !important;
}

body .amyu-programmes .amyu-cta-shared:active,
body .amyu-programmes .ap-link:active {
    transform: translateY(0) scale(0.985) !important;
}

body .amyu-programmes .amyu-cta-shared::after,
body .amyu-programmes .ap-link::after {
    content: "↗";
    display: inline-block;
    font-size: 0.95em;
    line-height: 1;
    transition: transform 260ms cubic-bezier(.2,.8,.2,1) !important;
}

body .amyu-programmes .amyu-cta-shared:hover::after,
body .amyu-programmes .ap-link:hover::after {
    transform: translateX(3px) translateY(-1px);
}

/* Clean spacing after removing the top shape */
body .amyu-programmes .ap-intro {
    padding-top: 56px !important;
}

@media (max-width: 700px) {
    body .amyu-programmes .ap-intro {
        padding-top: 34px !important;
    }

    body .amyu-programmes .amyu-cta-shared,
    body .amyu-programmes .ap-link {
        min-height: 50px !important;
        padding: 0 22px !important;
    }
}

/* AMYU PROGRAMMES BUTTON / TOP CLEANUP END */


/* AMYU PROGRAMMES TOP BAR AND BUTTON FIX V3 START */

/* Remove the full-width green header strip.
   Keep the navigation links and back arrow. */

body:has(.amyu-programmes) header.main-header {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
}

body:has(.amyu-programmes) header.main-header::before,
body:has(.amyu-programmes) header.main-header::after {
    display: none !important;
    content: none !important;
}

body:has(.amyu-programmes) header.main-header
.header-inner,
body:has(.amyu-programmes) header.main-header
.header-container,
body:has(.amyu-programmes) header.main-header
.nav-container {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Make the existing Explore Programme buttons
   pill-shaped with a smooth hover effect. */

body .amyu-programmes a.ap-explore-v2 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 13px !important;

    padding: 14px 27px !important;
    min-height: 50px !important;

    width: fit-content !important;
    border-radius: 999px !important;

    background: linear-gradient(
        180deg,
        #4AA45C 0%,
        #23763A 100%
    ) !important;

    color: #FFFFFF !important;
    border: 1px solid rgba(255,255,255,.18) !important;

    box-shadow:
        0 9px 22px rgba(22,80,43,.2),
        inset 0 1px 0 rgba(255,255,255,.2) !important;

    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;

    transition:
        transform .35s cubic-bezier(.22,1,.36,1),
        box-shadow .35s ease,
        background .35s ease,
        filter .35s ease !important;
}

body .amyu-programmes a.ap-explore-v2:hover {
    transform: translateY(-4px) scale(1.045) !important;

    background: linear-gradient(
        180deg,
        #348B49 0%,
        #145B2A 100%
    ) !important;

    box-shadow:
        0 17px 32px rgba(22,80,43,.3),
        inset 0 1px 0 rgba(255,255,255,.2) !important;

    filter: saturate(1.1) !important;
}

body .amyu-programmes a.ap-explore-v2:active {
    transform: translateY(0) scale(.98) !important;
}

body .amyu-programmes a.ap-explore-v2 span {
    display: inline-block;
    transition: transform .35s ease !important;
}

body .amyu-programmes a.ap-explore-v2:hover span {
    transform: translate(4px,-3px) !important;
}

@media (prefers-reduced-motion:reduce) {
    body .amyu-programmes a.ap-explore-v2,
    body .amyu-programmes a.ap-explore-v2 span {
        transition: none !important;
    }
}

/* AMYU PROGRAMMES TOP BAR AND BUTTON FIX V3 END */


/* AMYU PROGRAMMES HEADER BLUR FIX V4 START */

/* Remove the blurred full-width header surface. */

body:has(.amyu-programmes) .main-header {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;

    filter: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* Remove decorative header overlays. */

body:has(.amyu-programmes) .main-header::before,
body:has(.amyu-programmes) .main-header::after {
    content: none !important;
    display: none !important;
}

/* Keep the page background uniformly cream. */

body:has(.amyu-programmes) {
    background-color: #F7F3E7 !important;
}

/* Do not modify the programme photograph gradients,
   content, buttons, or accordion animations. */

/* AMYU PROGRAMMES HEADER BLUR FIX V4 END */


/* AMYU PROGRAMMES BACK ARROW V5 START */

/* Visible icon, aligned with floating navbar */

body:has(.amyu-programmes)
.amyu-programme-back-v5 {
    position: fixed !important;

    top: 37px !important;
    left: max(
        35px,
        calc((100vw - 1370px)/2)
    ) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 42px !important;
    height: 42px !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;

    color: #174F2D !important;
    text-decoration: none !important;

    opacity: 1 !important;
    visibility: visible !important;
    z-index: 99999 !important;

    transition:
        transform .3s ease,
        color .3s ease !important;
}

body:has(.amyu-programmes)
.amyu-programme-back-v5:hover {
    transform: translateX(-5px);
    color: #43934F !important;
}

body:has(.amyu-programmes)
.amyu-programme-back-v5 svg {
    width: 28px !important;
    height: 28px !important;
    display: block !important;
    stroke: currentColor !important;
}

/* Mobile */

@media(max-width:700px) {
    body:has(.amyu-programmes)
    .amyu-programme-back-v5 {
        top: 26px !important;
        left: 18px !important;
    }
}

/* AMYU PROGRAMMES BACK ARROW V5 END */


/* AMYU PROGRAMMES FLOATING NAV V7 START */

/* Hide the old menu on this page only,
   avoiding duplicate navigation links. */

body:has(.amyu-programmes)
header.main-header nav.main-nav,
body:has(.amyu-programmes)
.ap-restored-support-v6 {
    display: none !important;
}

/* Independent floating navigation */

body .amyu-programmes-floating-nav-v7 {
    position: fixed !important;
    top: 30px !important;
    right: 4% !important;
    left: auto !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;

    width: auto !important;
    height: auto !important;

    z-index: 99998 !important;
    visibility: visible !important;
    opacity: 1 !important;

    background: transparent !important;
    transform: none !important;
}

/* Frosted green glass menu */

body .amyu-programmes-menu-v7 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(14px, 1.7vw, 30px) !important;

    padding: 20px 27px !important;
    min-height: 67px !important;

    border: 1px solid rgba(255,255,255,.25) !important;
    border-radius: 19px !important;

    background: rgba(24,82,67,.55) !important;

    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;

    box-shadow:
        0 12px 35px rgba(0,0,0,.10) !important;
}

/* Menu links */

body .amyu-programmes-menu-v7 a {
    display: inline-flex !important;
    align-items: center !important;

    color: #FFFFFF !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    transition: opacity .25s ease !important;
}

body .amyu-programmes-menu-v7 a:hover {
    opacity: .75 !important;
}

/* Support Our Work button */

body .amyu-programmes-support-v7 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 20px !important;

    padding: 20px 25px !important;
    min-height: 67px !important;

    border-radius: 19px !important;
    background: #509468 !important;

    color: #FFFFFF !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    transition:
        background .3s ease,
        transform .3s ease !important;
}

body .amyu-programmes-support-v7:hover {
    background: #347C50 !important;
    transform: translateY(-3px) !important;
}

body .amyu-programmes-support-v7 span {
    font-size: 24px;
    line-height: 1;
}

/* Preserve the existing back arrow */

body:has(.amyu-programmes)
.amyu-programme-back-v5 {
    display: flex !important;
    top: 41px !important;
    z-index: 99999 !important;
}

/* Reserve vertical room for the floating bar */

body .amyu-programmes .ap-intro-v2 {
    padding-top: 170px !important;
}

/* Tablet and phone */

@media (max-width: 1100px) {
    body .amyu-programmes-floating-nav-v7 {
        right: 15px !important;
        max-width: calc(100% - 80px) !important;
    }

    body .amyu-programmes-menu-v7 {
        gap: 13px !important;
        padding: 15px !important;
        min-height: 55px !important;
        overflow-x: auto;
    }

    body .amyu-programmes-menu-v7 a {
        font-size: 11px !important;
    }

    body .amyu-programmes-support-v7 {
        padding: 15px !important;
        min-height: 55px !important;
        font-size: 11px !important;
    }
}

@media (max-width: 700px) {
    body .amyu-programmes-floating-nav-v7 {
        top: 23px !important;
        right: 12px !important;
        max-width: calc(100% - 75px) !important;
    }

    body .amyu-programmes-menu-v7 {
        justify-content: flex-start !important;
        max-width: 52vw !important;
        overflow-x: auto !important;
    }

    body .amyu-programmes-support-v7 {
        padding: 12px !important;
        white-space: normal !important;
    }

    body .amyu-programmes .ap-intro-v2 {
        padding-top: 135px !important;
    }
}

/* AMYU PROGRAMMES FLOATING NAV V7 END */


/* AMYU SITEWIDE FLOATING NAV V1 START */

/* Keep existing headers visible as visitors scroll. */

body > header.main-header,
body > header.site-header,
body > header.amyu-header {
    position: fixed !important;
    top: 30px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9000 !important;
}

/* Preserve the dedicated floating bar on
   the Programmes page. */

body .amyu-programmes-floating-nav-v7 {
    position: fixed !important;
    top: 30px !important;
    z-index: 9998 !important;
}

/* Keep the back arrow accessible. */

body .amyu-programme-back-v5,
body .amyu-page-back {
    position: fixed !important;
    z-index: 9999 !important;
}

/* Add shadow only to floating menu surfaces. */

body nav.main-nav,
body .amyu-programmes-menu-v7 {
    box-shadow:
        0 12px 32px rgba(12,48,30,.12);
}

/* Smaller screens */

@media(max-width:700px) {
    body > header.main-header,
    body > header.site-header,
    body > header.amyu-header {
        top: 18px !important;
    }

    body .amyu-programmes-floating-nav-v7 {
        top: 18px !important;
    }
}

/* AMYU SITEWIDE FLOATING NAV V1 END */


/* AMYU FOUNDER GLASS BIOGRAPHY V1 START */

/* Ensure the biography can appear above the portrait. */

body:has(.founder-portrait-design)
.fp-hero-bottom {
    overflow: visible !important;
    z-index: 30 !important;
}

body:has(.founder-portrait-design)
.fp-hero-heading,
body:has(.founder-portrait-design)
.fp-hero-description {
    position: relative !important;
    overflow: visible !important;
}

body:has(.founder-portrait-design)
.fp-hero-description {
    z-index: 31 !important;
}

/* Small interactive control beneath intro. */

body:has(.founder-portrait-design)
.fp-biography-drop-v1 {
    display: block !important;
    position: relative !important;
    margin-top: 25px !important;
    width: min(280px, 100%) !important;
    border: none !important;
    z-index: 40 !important;
}

body:has(.founder-portrait-design)
.fp-biography-drop-v1 > summary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 25px !important;

    padding: 13px 17px !important;
    border: 1px solid rgba(23,79,45,.25) !important;
    border-radius: 12px !important;

    background: rgba(255,255,255,.33) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;

    color: #174F2D !important;
    font-size: 13px !important;
    font-weight: 750 !important;

    cursor: pointer !important;
    list-style: none !important;

    transition:
        background .35s ease,
        border-color .35s ease,
        transform .35s ease !important;
}

body:has(.founder-portrait-design)
.fp-biography-drop-v1 > summary::-webkit-details-marker {
    display: none !important;
}

body:has(.founder-portrait-design)
.fp-biography-drop-v1 > summary:hover {
    background: rgba(255,255,255,.60) !important;
    border-color: rgba(23,79,45,.55) !important;
    transform: translateY(-2px);
}

/* Animated plus-to-X. */

.fp-biography-toggle-v1 {
    position: relative;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.fp-biography-toggle-v1::before,
.fp-biography-toggle-v1::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    background: #174F2D;
    transform: translate(-50%,-50%);
    border-radius: 2px;
}

.fp-biography-toggle-v1::before {
    width: 14px;
    height: 2px;
}

.fp-biography-toggle-v1::after {
    width: 2px;
    height: 14px;
    transition: transform .35s ease;
}

.fp-biography-drop-v1[open]
.fp-biography-toggle-v1::after {
    transform:
        translate(-50%,-50%)
        rotate(90deg);
}

/* Expanding frosted-glass rectangle.
   It deliberately extends over the photograph. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1 {
    position: absolute !important;
    left: 0 !important;
    top: calc(100% + 12px) !important;

    width: min(650px, calc(100vw - 48px)) !important;
    max-height: min(420px, 52vh) !important;

    overflow-y: auto !important;
    overscroll-behavior: contain;

    padding: 0 !important;

    border: 1px solid
      rgba(255,255,255,.65) !important;
    border-radius: 20px !important;

    background:
      linear-gradient(
        130deg,
        rgba(255,255,255,.78),
        rgba(247,243,231,.67)
      ) !important;

    backdrop-filter:
      blur(24px) saturate(1.25) !important;
    -webkit-backdrop-filter:
      blur(24px) saturate(1.25) !important;

    box-shadow:
      0 22px 65px rgba(25,58,38,.17),
      inset 0 1px 0 rgba(255,255,255,.65) !important;

    transform-origin: top left;
    animation:
      fpGlassMorph .55s
      cubic-bezier(.18,.85,.24,1)
      both !important;

    z-index: 100 !important;
}

/* Text inside glass panel. */

.fp-biography-glass-inner-v1 {
    padding: clamp(22px,3vw,35px);
}

.fp-biography-glass-inner-v1 h2 {
    color: #174F2D !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    margin: 0 0 18px !important;
}

body:has(.founder-portrait-design)
.fp-biography-glass-inner-v1 p {
    color: #344D3D !important;
    font-size: 14px !important;
    line-height: 1.85 !important;
    text-align: left !important;
    margin: 0 0 15px !important;
    max-width: none !important;
}

@keyframes fpGlassMorph {
    0% {
        opacity: 0;
        transform:
          translateY(-12px)
          scale(.88,.65);
        filter: blur(12px);
    }

    65% {
        opacity: 1;
        filter: blur(1px);
    }

    100% {
        opacity: 1;
        transform:
          translateY(0)
          scale(1);
        filter: blur(0);
    }
}

/* Mobile layout. */

@media(max-width:700px) {
    body:has(.founder-portrait-design)
    .fp-biography-drop-v1 {
        margin-top: 18px !important;
    }

    body:has(.founder-portrait-design)
    .fp-biography-glass-v1 {
        left: 0 !important;
        width: calc(100vw - 48px) !important;
        max-height: 310px !important;
        border-radius: 15px !important;
    }

    .fp-biography-glass-inner-v1 {
        padding: 20px;
    }
}

@media(prefers-reduced-motion:reduce) {
    body:has(.founder-portrait-design)
    .fp-biography-glass-v1 {
        animation: none !important;
    }
}

/* AMYU FOUNDER GLASS BIOGRAPHY V1 END */


/* AMYU FOUNDER GLASS VISIBILITY V2 START */

/* Keep the original portrait and hero layout. */

body:has(.founder-portrait-design)
.fp-hero-bottom:has(.fp-biography-drop-v1[open]) {
    z-index: 999 !important;
}

/* The biography floats above the page rather
   than extending into the clipped hero area. */

body:has(.founder-portrait-design)
.fp-biography-drop-v1[open]
.fp-biography-glass-v1 {
    position: fixed !important;

    top: 17vh !important;
    left: max(24px, calc((100vw - 1120px)/2)) !important;

    width: min(680px, calc(100vw - 48px)) !important;
    max-height: 70vh !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    z-index: 999999 !important;

    border-radius: 22px !important;

    background: linear-gradient(
        135deg,
        rgba(255,255,255,.85),
        rgba(247,243,231,.77)
    ) !important;

    backdrop-filter: blur(26px) saturate(1.2) !important;
    -webkit-backdrop-filter:
        blur(26px) saturate(1.2) !important;

    box-shadow:
        0 25px 75px rgba(16,55,35,.22),
        inset 0 1px 0 rgba(255,255,255,.7) !important;

    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

/* Hide the scrollbar in Safari and Chrome,
   but keep wheel/trackpad scrolling enabled. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Keep the text neatly spaced. */

body:has(.founder-portrait-design)
.fp-biography-glass-inner-v1 {
    padding: 32px !important;
}

/* On phones, center the biography panel. */

@media(max-width:700px) {
    body:has(.founder-portrait-design)
    .fp-biography-drop-v1[open]
    .fp-biography-glass-v1 {
        top: 16vh !important;
        left: 16px !important;
        width: calc(100vw - 32px) !important;
        max-height: 70vh !important;
        border-radius: 17px !important;
    }

    body:has(.founder-portrait-design)
    .fp-biography-glass-inner-v1 {
        padding: 23px !important;
    }
}

/* AMYU FOUNDER GLASS VISIBILITY V2 END */


/* AMYU FOUNDER FINAL POLISH V3 START */

/* Make the whole Founder page one cream surface. */

html:has(.founder-portrait-design),
body:has(.founder-portrait-design),
body:has(.founder-portrait-design) main {
    background: #F7F3E7 !important;
}

/* Remove the separate white section below. */

body:has(.founder-portrait-design)
.founder-portrait-design {
    min-height: 100vh !important;
    background: #F7F3E7 !important;
}

body:has(.founder-portrait-design)
.fp-hero {
    min-height: 100vh !important;
    height: 100vh !important;
    background: #F7F3E7 !important;
}

body:has(.founder-portrait-design)
.fp-hero-inner {
    min-height: 100vh !important;
    height: 100vh !important;
}

/* Remove empty lower sections and white surfaces. */

body:has(.founder-portrait-design)
.fp-official-biography,
body:has(.founder-portrait-design)
.fp-official-link {
    display: none !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design > section:not(.fp-hero) {
    background: #F7F3E7 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Keep portrait filling the hero. */

body:has(.founder-portrait-design)
.fp-person {
    bottom: 0 !important;
}

/* Glass panel exit morph. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1.fp-glass-closing-v3 {
    animation:
        fpGlassCloseV3 .38s
        cubic-bezier(.55,0,.9,.45)
        forwards !important;
    pointer-events: none;
}

@keyframes fpGlassCloseV3 {
    from {
        opacity: 1;
        transform: scale(1) translateY(0);
        filter: blur(0);
    }

    to {
        opacity: 0;
        transform: scale(.86,.72) translateY(-12px);
        filter: blur(10px);
    }
}

/* Hide scrollbars without affecting scroll. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1 {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

body:has(.founder-portrait-design)
.fp-biography-glass-v1::-webkit-scrollbar {
    display: none !important;
}

@media(max-width:700px) {
    body:has(.founder-portrait-design)
    .fp-hero,
    body:has(.founder-portrait-design)
    .fp-hero-inner {
        min-height: 100svh !important;
        height: 100svh !important;
    }
}

@media(prefers-reduced-motion:reduce) {
    body:has(.founder-portrait-design)
    .fp-biography-glass-v1.fp-glass-closing-v3 {
        animation: none !important;
    }
}

/* AMYU FOUNDER FINAL POLISH V3 END */


/* AMYU FOUNDER FULL BLEED V4 START */

/* One continuous cream background */

body:has(.founder-portrait-design),
body:has(.founder-portrait-design)
.founder-portrait-design,
body:has(.founder-portrait-design)
.fp-hero,
body:has(.founder-portrait-design)
.fp-hero-inner {
    background: #F7F3E7 !important;
}

/* Make the portrait extend to the bottom,
   without reducing its width. */

@media (min-width: 1001px) {

  body:has(.founder-portrait-design)
  .fp-person {
      top: 65px !important;
      bottom: -90px !important;
      right: -260px !important;
      left: auto !important;

      width: 1050px !important;
      height: auto !important;
      max-width: none !important;

      z-index: 1 !important;
  }

  body:has(.founder-portrait-design)
  .fp-person-photo {
      width: 100% !important;
      height: 100% !important;

      object-fit: contain !important;
      object-position: center bottom !important;

      transform: scale(1.1) !important;
      transform-origin: center bottom !important;

      -webkit-mask-image: none !important;
      mask-image: none !important;
  }
}

/* Smooth fade into the same cream background
   at the bottom of the hero. */

body:has(.founder-portrait-design)
.fp-hero::after {
    content: "" !important;

    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;

    height: 27% !important;

    background: linear-gradient(
        to bottom,
        rgba(247,243,231,0) 0%,
        rgba(247,243,231,.15) 30%,
        rgba(247,243,231,.65) 72%,
        #F7F3E7 100%
    ) !important;

    pointer-events: none !important;
    z-index: 2 !important;
}

/* Keep founder text and glass panel above fade. */

body:has(.founder-portrait-design)
.fp-hero-bottom {
    z-index: 30 !important;
}

/* Replace conflicting CSS animations with
   the single coordinated JavaScript animation. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1,
body:has(.founder-portrait-design)
.fp-biography-glass-v1.fp-glass-closing-v3 {
    animation: none !important;
    transition: none !important;
    scrollbar-width: none !important;
}

/* Remove visible scrollbar. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1::-webkit-scrollbar {
    display: none !important;
}

/* Better glass rendering during the morph. */

body:has(.founder-portrait-design)
.fp-biography-glass-v1 {
    will-change: transform, opacity, filter;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

/* Tablet and phone: preserve face placement
   and extend the portrait downwards. */

@media (max-width: 1000px) {
    body:has(.founder-portrait-design)
    .fp-person {
        bottom: -45px !important;
    }
}

@media (max-width: 650px) {
    body:has(.founder-portrait-design)
    .fp-hero::after {
        height: 22% !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body:has(.founder-portrait-design)
    .fp-biography-glass-v1 {
        will-change: auto;
    }
}

/* AMYU FOUNDER FULL BLEED V4 END */


/* AMYU FOUNDER FULL HEIGHT PHOTO V5 START */

/* Full-height founder page */

body:has(.founder-portrait-design)
.fp-hero,
body:has(.founder-portrait-design)
.fp-hero-inner {
    height: 100vh !important;
    min-height: 100vh !important;
}

/* Portrait fills down to bottom of viewport */

@media(min-width:1001px) {
    body:has(.founder-portrait-design)
    .fp-person {
        position: absolute !important;
        top: 35px !important;
        bottom: 0 !important;
        right: -260px !important;
        left: auto !important;

        width: 1050px !important;
        height: calc(100vh - 35px) !important;
        max-width: none !important;

        display: flex !important;
        align-items: flex-end !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;

        object-fit: cover !important;
        object-position: center 10% !important;

        transform: none !important;

        -webkit-mask-image: linear-gradient(
            to bottom,
            #000 0%,
            #000 90%,
            transparent 100%
        ) !important;

        mask-image: linear-gradient(
            to bottom,
            #000 0%,
            #000 90%,
            transparent 100%
        ) !important;
    }
}

/* Remove the earlier large bottom fade overlay */

body:has(.founder-portrait-design)
.fp-hero::after {
    display: none !important;
    content: none !important;
}

/* Keep continuous cream background */

body:has(.founder-portrait-design),
body:has(.founder-portrait-design)
.founder-portrait-design,
body:has(.founder-portrait-design)
.fp-hero {
    background: #F7F3E7 !important;
}

/* Tablet */

@media(min-width:651px) and (max-width:1000px) {
    body:has(.founder-portrait-design)
    .fp-person {
        bottom: 0 !important;
        height: calc(100vh - 80px) !important;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        height: 100% !important;
        object-fit: cover !important;
        object-position: center top !important;
    }
}

/* Mobile */

@media(max-width:650px) {
    body:has(.founder-portrait-design)
    .fp-hero,
    body:has(.founder-portrait-design)
    .fp-hero-inner {
        height: 100svh !important;
        min-height: 100svh !important;
    }

    body:has(.founder-portrait-design)
    .fp-person {
        bottom: 0 !important;
        height: calc(100svh - 245px) !important;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        object-fit: cover !important;
        object-position: center top !important;
        height: 100% !important;
        transform: none !important;
    }
}

/* AMYU FOUNDER FULL HEIGHT PHOTO V5 END */


/* AMYU FOUNDER PORTRAIT AND GLASS V6 START */

/* Continuous full-height cream background */

body:has(.founder-portrait-design),
body:has(.founder-portrait-design)
.founder-portrait-design,
body:has(.founder-portrait-design)
.fp-hero,
body:has(.founder-portrait-design)
.fp-hero-inner {
    background-color: #F7F3E7 !important;
}

body:has(.founder-portrait-design) .fp-hero,
body:has(.founder-portrait-design) .fp-hero-inner {
    min-height: 100svh !important;
    height: 100svh !important;
}

/* Fill the bottom of the page by scaling the
   existing portrait from its upper edge. */

@media (min-width: 1001px) {
    body:has(.founder-portrait-design) .fp-person {
        position: absolute !important;
        inset: auto !important;
        top: 65px !important;
        right: -260px !important;
        bottom: 0 !important;
        left: auto !important;
        width: 1050px !important;
        height: calc(100svh - 65px) !important;
        max-width: none !important;
        max-height: none !important;
        overflow: visible !important;
        z-index: 1 !important;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: contain !important;
        object-position: center top !important;

        /* Keep his face near its current position
           while extending the body to the bottom. */
        transform: scale(1.20) !important;
        transform-origin: center top !important;

        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
}

/* No large cream overlay hiding the lower body */

body:has(.founder-portrait-design) .fp-hero::after {
    content: none !important;
    display: none !important;
}

/* Glass panel: one transition, no competing animations */

body:has(.founder-portrait-design)
.fp-biography-glass-v1,
body:has(.founder-portrait-design)
.fp-biography-glass-v1.fp-glass-closing-v3 {
    animation: none !important;
    opacity: 0 !important;
    transform: translateY(-10px) scale(.96) !important;
    transform-origin: top left !important;
    filter: none !important;
    pointer-events: none !important;

    transition:
        opacity 340ms ease,
        transform 340ms cubic-bezier(.22,1,.36,1)
        !important;

    scrollbar-width: none !important;
}

body:has(.founder-portrait-design)
.fp-biography-drop-v1.fp-bio-visible-v5
.fp-biography-glass-v1 {
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
    pointer-events: auto !important;
}

body:has(.founder-portrait-design)
.fp-biography-glass-v1::-webkit-scrollbar {
    display: none !important;
}

/* Keep the glass panel above the portrait */

body:has(.founder-portrait-design) .fp-hero-bottom {
    z-index: 100 !important;
}

/* Responsive portrait */

@media (min-width: 651px) and (max-width: 1000px) {
    body:has(.founder-portrait-design) .fp-person {
        bottom: 0 !important;
        overflow: visible !important;
    }
    body:has(.founder-portrait-design)
    .fp-person-photo {
        transform: scale(1.12) !important;
        transform-origin: center top !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
}

@media (max-width: 650px) {
    body:has(.founder-portrait-design) .fp-person {
        bottom: 0 !important;
        overflow: visible !important;
    }
    body:has(.founder-portrait-design)
    .fp-person-photo {
        transform: scale(1.08) !important;
        transform-origin: center top !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body:has(.founder-portrait-design)
    .fp-biography-glass-v1 {
        transition: none !important;
    }
}

/* AMYU FOUNDER PORTRAIT AND GLASS V6 END */


/* AMYU FOUNDER PORTRAIT BOTTOM FIX V7 START */

/* Full-screen cream founder page */

body:has(.founder-portrait-design) {
    margin: 0 !important;
    background: #F7F3E7 !important;
}

body:has(.founder-portrait-design)
.founder-portrait-design,
body:has(.founder-portrait-design)
.fp-hero,
body:has(.founder-portrait-design)
.fp-hero-inner {
    height: 100svh !important;
    min-height: 100svh !important;
    background: #F7F3E7 !important;
}

/* Let the photo extend beyond its old container */

body:has(.founder-portrait-design)
.fp-hero-inner {
    position: relative !important;
    overflow: visible !important;
}

/* Enlarged portrait, anchored near the top */

@media (min-width: 1001px) {

    body:has(.founder-portrait-design)
    .fp-person {
        position: absolute !important;

        inset: auto !important;
        top: 50px !important;
        right: -250px !important;
        left: auto !important;
        bottom: auto !important;

        width: 1050px !important;
        height: calc(100svh + 170px) !important;

        max-width: none !important;
        max-height: none !important;

        display: block !important;
        overflow: visible !important;
        z-index: 1 !important;
        pointer-events: none;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        bottom: auto !important;
        left: auto !important;

        display: block !important;
        width: 100% !important;
        height: 100% !important;

        max-width: none !important;
        max-height: none !important;

        object-fit: contain !important;
        object-position: center top !important;

        transform: scale(1.22) !important;
        transform-origin: center top !important;

        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
}

/* Crop excess photograph at the screen bottom,
   rather than above it */

body:has(.founder-portrait-design)
.fp-hero {
    position: relative !important;
    overflow: hidden !important;
}

/* Keep the old large fade overlays disabled */

body:has(.founder-portrait-design)
.fp-hero::after {
    display: none !important;
    content: none !important;
}

/* Founder name and biography stay above portrait */

body:has(.founder-portrait-design)
.fp-hero-bottom {
    position: absolute !important;
    z-index: 30 !important;
}

/* Tablet */

@media (min-width: 651px) and (max-width: 1000px) {

    body:has(.founder-portrait-design)
    .fp-person {
        bottom: auto !important;
        height: calc(100svh + 130px) !important;
        overflow: visible !important;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        height: 100% !important;
        transform: scale(1.18) !important;
        transform-origin: center top !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
}

/* Mobile */

@media (max-width: 650px) {

    body:has(.founder-portrait-design)
    .fp-person {
        bottom: auto !important;
        height: calc(100svh - 170px) !important;
        overflow: visible !important;
    }

    body:has(.founder-portrait-design)
    .fp-person-photo {
        height: 100% !important;
        transform: scale(1.17) !important;
        transform-origin: center top !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
}

/* AMYU FOUNDER PORTRAIT BOTTOM FIX V7 END */


/* AMYU PARTNERS SLIDING V3 START */

body .hc-partners-sliding-v3 {
    padding: 38px 24px 42px !important;
    background: #F7F3E7 !important;
    overflow: hidden;
}

body .hc-partners-sliding-v3 .hc-container {
    max-width: 1300px !important;
    margin: 0 auto !important;
}

body .hc-partners-sliding-v3 h2 {
    font-size: clamp(19px,2vw,26px) !important;
    margin: 0 auto 34px !important;
    text-align: center !important;
}

/* Horizontal sliding row */

body .hc-partners-viewport-v3 {
    width: 100%;
    overflow: hidden;
}

body .hc-partners-track-v3 {
    display: flex;
    align-items: center;
    gap: 24px;
    height: 145px;
    will-change: transform;
}

body .hc-partner-logo-v3 {
    flex: 0 0 calc(
        (100% - (var(--hc-partners-visible,6) - 1) * 24px)
        / var(--hc-partners-visible,6)
    );
    height: 125px;

    display: flex;
    align-items: center;
    justify-content: center;
}

body .hc-partner-logo-v3 img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 85% !important;
    max-height: 85px !important;
    object-fit: contain !important;

    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Navigation arrows — bottom right */

body .hc-partners-controls-v3 {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 14px;
}

body .hc-partners-controls-v3 button {
    width: 43px;
    height: 43px;
    border: 1px solid #9AABA0;
    border-radius: 50%;
    background: transparent;
    color: #174F2D;
    font-size: 23px;
    cursor: pointer;

    display: grid;
    place-items: center;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}

body .hc-partners-controls-v3 button:hover {
    background: #174F2D;
    color: white;
    transform: translateY(-2px);
}

@media(max-width:1000px) {
    body .hc-partner-logo-v3 img {
        max-height: 75px !important;
    }
}

@media(max-width:600px) {
    body .hc-partners-sliding-v3 {
        padding: 32px 18px 40px !important;
    }

    body .hc-partners-track-v3 {
        height: 110px;
    }

    body .hc-partner-logo-v3 {
        height: 100px;
    }

    body .hc-partner-logo-v3 img {
        max-height: 65px !important;
    }
}

@media(prefers-reduced-motion:reduce) {
    body .hc-partners-track-v3 {
        transition: none !important;
    }
}

/* AMYU PARTNERS SLIDING V3 END */


/* AMYU PROGRAMMES SCROLL NAV V8 START */

/* The Programmes navigation travels with the page,
   rather than staying fixed while scrolling. */

body:has(main.amyu-programmes)
.amyu-programmes-floating-nav-v7 {
    position: absolute !important;
    top: 30px !important;
    right: 4% !important;
    z-index: 9000 !important;
}

body:has(main.amyu-programmes)
header.main-header {
    position: absolute !important;
    top: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body:has(main.amyu-programmes)
.amyu-programme-back-v5 {
    position: absolute !important;
    top: 41px !important;
}

@media (max-width: 700px) {
    body:has(main.amyu-programmes)
    .amyu-programmes-floating-nav-v7 {
        top: 23px !important;
        right: 12px !important;
    }

    body:has(main.amyu-programmes)
    .amyu-programme-back-v5 {
        top: 26px !important;
    }
}

/* AMYU PROGRAMMES SCROLL NAV V8 END */


/* AMYU PROGRAMMES PHOTO HERO V9 START */

body:has(.amyu-programmes) .ap-intro-v2 {
    position: relative !important;
    isolation: isolate;

    display: flex !important;
    align-items: center !important;

    min-height: 560px !important;
    padding: 150px 24px 100px !important;

    overflow: hidden !important;

    background-image:
        linear-gradient(
            100deg,
            rgba(8,53,31,.94) 0%,
            rgba(15,75,43,.83) 40%,
            rgba(17,80,44,.48) 100%
        ),
        url("assets/images/programme-village.jpg") !important;

    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

/* Fade the photograph smoothly into cream */

body:has(.amyu-programmes) .ap-intro-v2::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 25%;

    background: linear-gradient(
        to bottom,
        rgba(247,243,231,0),
        #F7F3E7
    );

    pointer-events: none;
    z-index: 1;
}

body:has(.amyu-programmes)
.ap-intro-inner-v2 {
    position: relative;
    z-index: 2;
    width: min(1120px,100%);
    margin: 0 auto;
}

body:has(.amyu-programmes)
.ap-intro-v2 h1 {
    color: #FFFFFF !important;
    font-size: clamp(27px,3vw,42px) !important;
    white-space: normal !important;
    line-height: 1.15 !important;
    max-width: 1050px !important;
    margin: 0 0 23px !important;
    text-align: left !important;
}

body:has(.amyu-programmes)
.ap-intro-v2 p {
    color: #F3F7F0 !important;
    max-width: 750px !important;
    font-size: clamp(14px,1.4vw,17px) !important;
    line-height: 1.85 !important;
    margin: 0 !important;
    text-align: left !important;
}

@media(max-width:700px) {
    body:has(.amyu-programmes)
    .ap-intro-v2 {
        min-height: 480px !important;
        padding: 140px 24px 95px !important;
    }

    body:has(.amyu-programmes)
    .ap-intro-v2 h1 {
        font-size: 29px !important;
    }
}

/* AMYU PROGRAMMES PHOTO HERO V9 END */


/* AMYU PROJECT DETAIL V10 START */

body:has(.amyu-project-detail-v10) {
    background: #F7F3E7 !important;
}

.amyu-project-detail-v10 {
    background: #F7F3E7;
    color: #174F2D;
}

.pd-container {
    width: min(1100px, calc(100% - 48px));
    margin: 0 auto;
}

.pd-introduction {
    padding: 110px 0 65px;
    background: #F7F3E7;
}

.pd-overline {
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .14em;
    color: #568660;
}

.pd-introduction h1 {
    font-size: clamp(38px, 5vw, 70px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.045em;
    color: #174F2D !important;
    margin: 18px 0 20px !important;
}

.pd-summary {
    max-width: 700px;
    font-size: 16px;
    line-height: 1.8;
    color: #52665A;
}

.pd-details {
    padding: 20px 0 75px;
}

.pd-accordion-list {
    border-top: 1px solid rgba(23,79,45,.25);
}

.pd-accordion {
    border-bottom: 1px solid rgba(23,79,45,.25);
}

.pd-accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 26px 3px;
    cursor: pointer;
    list-style: none;
    font-size: clamp(21px, 2.5vw, 30px);
    font-weight: 700;
    color: #174F2D;
}

.pd-accordion summary::-webkit-details-marker {
    display: none;
}

.pd-plus {
    position: relative;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border: 1px solid #668675;
    border-radius: 50%;
    transition: transform .35s ease;
}

.pd-plus::before,
.pd-plus::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #174F2D;
    transform: translate(-50%,-50%);
}

.pd-plus::before {
    width: 12px;
    height: 2px;
}

.pd-plus::after {
    width: 2px;
    height: 12px;
}

.pd-accordion[open] .pd-plus {
    transform: rotate(45deg);
}

.pd-accordion-content {
    max-width: 790px;
    padding: 0 50px 25px 3px;
    animation: pd-reveal .4s ease both;
}

.pd-accordion-content p {
    color: #506455 !important;
    font-size: 15px !important;
    line-height: 1.85 !important;
    margin: 0 0 14px !important;
}

@keyframes pd-reveal {
    from {
        opacity: 0;
        transform: translateY(-7px);
        filter: blur(3px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

/* Project photograph carousel */

.pd-gallery-section {
    padding: 40px 0 85px;
    background: #F7F3E7;
}

.pd-gallery-section h2 {
    font-size: clamp(25px,3vw,40px) !important;
    margin: 0 0 28px !important;
    color: #174F2D !important;
}

.pd-gallery-viewport {
    width: 100%;
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
}

.pd-gallery-viewport::-webkit-scrollbar {
    display: none;
}

.pd-gallery-track {
    display: flex;
    gap: 18px;
    width: max-content;
    min-width: 100%;
}

.pd-photo {
    flex: 0 0 auto;
    width: clamp(220px, 29vw, 350px);
    height: 260px;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 14px;
    background: #DCE7D8;
    cursor: zoom-in;
    scroll-snap-align: start;
}

.pd-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.pd-photo:hover img {
    transform: scale(1.06);
}

.pd-gallery-empty {
    padding: 70px 24px;
    width: 100%;
    text-align: center;
    border: 1px dashed #A8B8A8;
    border-radius: 15px;
    color: #687B6C;
    font-size: 14px;
}

.pd-gallery-controls {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
}

.pd-gallery-controls button {
    display: grid;
    place-items: center;
    width: 43px;
    height: 43px;
    border: 1px solid #829C88;
    border-radius: 50%;
    color: #174F2D;
    background: transparent;
    font-size: 23px;
    cursor: pointer;
}

.pd-gallery-controls button:hover:not(:disabled) {
    background: #174F2D;
    color: white;
}

.pd-gallery-controls button:disabled {
    opacity: .35;
    cursor: default;
}

/* Fullscreen photo viewer */

.pd-lightbox {
    position: fixed;
    inset: 0;
    padding: 45px;
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    max-height: 100vh;
    border: 0;
    background: #101C15;
    overflow: hidden;
}

.pd-lightbox::backdrop {
    background: rgba(0,0,0,.9);
}

.pd-lightbox[open] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.pd-lightbox img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.pd-lightbox-close {
    position: absolute;
    top: 18px;
    right: 22px;
    z-index: 2;
    width: 42px;
    height: 42px;
    border: 0;
    background: rgba(255,255,255,.15);
    color: white;
    border-radius: 50%;
    font-size: 30px;
    cursor: pointer;
}

@media(max-width:700px) {
    .pd-introduction {
        padding: 80px 0 45px;
    }
    .pd-details {
        padding-bottom: 45px;
    }
    .pd-photo {
        width: 78vw;
        height: 230px;
    }
    .pd-lightbox {
        padding: 18px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .pd-accordion-content {
        animation: none;
    }
    .pd-photo img {
        transition: none;
    }
}

/* AMYU PROJECT DETAIL V10 END */


/* AMYU PROJECT REFINEMENTS V11 START */

/* Back button */

body:has(.amyu-project-detail-v10)
.pd-back-wrap-v11 {
    margin-bottom: 35px;
}

body:has(.amyu-project-detail-v10)
.pd-back-v11 {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 11px 18px;
    border: 1px solid rgba(23,79,45,.28);
    border-radius: 50px;
    background: rgba(255,255,255,.55);
    color: #174F2D !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 600;
    transition:
        background .25s ease,
        transform .25s ease;
}

body:has(.amyu-project-detail-v10)
.pd-back-v11:hover {
    background: #E2EBDC;
    transform: translateX(-3px);
}

body:has(.amyu-project-detail-v10)
.pd-back-v11 span:first-child {
    font-size: 19px;
}

/* Reduce project-page typography by 20% */

body:has(.amyu-project-detail-v10)
.pd-introduction h1 {
    font-size: clamp(30px,4vw,56px) !important;
}

body:has(.amyu-project-detail-v10)
.pd-summary {
    font-size: 12.8px !important;
}

body:has(.amyu-project-detail-v10)
.pd-accordion summary {
    font-size: clamp(17px,2vw,24px) !important;
}

body:has(.amyu-project-detail-v10)
.pd-accordion-content p {
    font-size: 12px !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-section h2 {
    font-size: clamp(20px,2.4vw,32px) !important;
}

/* Slightly tighter spacing */

body:has(.amyu-project-detail-v10)
.pd-introduction {
    padding-top: 65px !important;
    padding-bottom: 45px !important;
}

body:has(.amyu-project-detail-v10)
.pd-accordion summary {
    padding-top: 21px !important;
    padding-bottom: 21px !important;
}

@media(max-width:700px) {
    body:has(.amyu-project-detail-v10)
    .pd-introduction {
        padding-top: 35px !important;
    }
}

/* AMYU PROJECT REFINEMENTS V11 END */


/* AMYU PROJECT GALLERY ARROWS V12 START */

body:has(.amyu-project-detail-v10)
.pd-gallery-controls {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    margin-top: 24px !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button {
    display: grid !important;
    place-items: center !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 1px solid #839B88 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #174F2D !important;
    font-family: Arial, sans-serif !important;
    font-size: 23px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    cursor: pointer;
    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button:hover:not(:disabled) {
    background: #174F2D !important;
    color: #FFFFFF !important;
    transform: translateY(-2px);
}

body:has(.amyu-project-detail-v10)
.pd-photo {
    border-radius: 10px !important;
}

/* AMYU PROJECT GALLERY ARROWS V12 END */


/* AMYU VILLAGE VIDEO V14 */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v14 {
    position: relative !important;
    width: 100% !important;
    height: 650px !important;
    overflow: hidden !important;
    background: #174F2D !important;
    isolation: isolate;
}

body:has(.amyu-project-detail-v10)
.pd-video-bg-v14 {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    z-index: 0 !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-shade-v14 {
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(
            90deg,
            rgba(8,51,29,.25),
            rgba(8,51,29,.05),
            rgba(8,51,29,.25)
        );
    pointer-events: none;
    z-index: 1;
}

@media(max-width:700px) {
    body:has(.amyu-project-detail-v10)
    .pd-video-hero-v14 {
        height: 480px !important;
    }
}


/* AMYU VIDEO BACKGROUND V15 */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 {
    position: relative !important;
    isolation: isolate;
    min-height: 100svh !important;
    width: 100% !important;
    overflow: hidden !important;
    background: #103B27 !important;
    display: flex !important;
    align-items: center !important;
}

/* Full-screen moving video behind all text */

body:has(.amyu-project-detail-v10)
.pd-video-bg-v15 {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    z-index: -2 !important;
    display: block !important;
}

/* Green overlay ensures text stays readable */

body:has(.amyu-project-detail-v10)
.pd-video-shade-v15 {
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    pointer-events: none !important;
    background:
        linear-gradient(
            110deg,
            rgba(5,40,25,.83) 0%,
            rgba(8,55,34,.62) 55%,
            rgba(5,40,25,.48) 100%
        ) !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-content-v15 {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    padding: 65px 0 !important;
}

/* Make original sections transparent */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-introduction,
body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-details {
    background: transparent !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-introduction {
    padding-top: 25px !important;
    padding-bottom: 35px !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-details {
    padding-top: 10px !important;
    padding-bottom: 25px !important;
}

/* White headings and text */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 h1,
body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-summary,
body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-accordion summary,
body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-accordion-content p {
    color: #FFFFFF !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-summary {
    color: rgba(255,255,255,.86) !important;
}

/* Dropdown dividers */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-accordion-list,
body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-accordion {
    border-color: rgba(255,255,255,.4) !important;
}

/* Plus icons */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-plus {
    border-color: rgba(255,255,255,.75) !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-plus::before,
body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-plus::after {
    background: #FFFFFF !important;
}

/* Back button */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-back-v11 {
    color: #FFFFFF !important;
    background: rgba(255,255,255,.12) !important;
    border-color: rgba(255,255,255,.5) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-back-v11:hover {
    background: rgba(255,255,255,.25) !important;
}

/* Photo gallery remains on cream */

body:has(.amyu-project-detail-v10)
.pd-gallery-section {
    background: #F7F3E7 !important;
}

@media(max-width:700px) {
    body:has(.amyu-project-detail-v10)
    .pd-video-hero-v15 {
        min-height: 100svh !important;
    }

    body:has(.amyu-project-detail-v10)
    .pd-video-content-v15 {
        padding: 45px 0 !important;
    }
}

/* END AMYU VIDEO BACKGROUND V15 */


/* AMYU VILLAGE HERO REFINEMENT V16 */

/* Move the introduction and dropdowns upward */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 {
    align-items: flex-start !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-content-v15 {
    padding-top: 45px !important;
    padding-bottom: 95px !important;
    transform: translateY(-35px);
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-introduction {
    padding-top: 12px !important;
    padding-bottom: 22px !important;
}

/* Smooth transition between video and gallery */

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 170px;
    z-index: 3;
    pointer-events: none;

    background: linear-gradient(
        to bottom,
        rgba(247,249,246,0) 0%,
        rgba(247,249,246,.36) 48%,
        #F7F9F6 100%
    );
}

/* White gradient, not a solid block */

body:has(.amyu-project-detail-v10)
.pd-gallery-section {
    position: relative !important;
    background: linear-gradient(
        180deg,
        #F7F9F6 0%,
        #FFFFFF 42%,
        #FCFDFB 75%,
        #F5F8F4 100%
    ) !important;
    padding-top: 55px !important;
    padding-bottom: 95px !important;
}

/* Improve gallery heading contrast */

body:has(.amyu-project-detail-v10)
.pd-gallery-section h2 {
    color: #174F2D !important;
}

@media(max-width:700px) {
    body:has(.amyu-project-detail-v10)
    .pd-video-content-v15 {
        transform: translateY(-15px);
        padding-top: 35px !important;
        padding-bottom: 80px !important;
    }

    body:has(.amyu-project-detail-v10)
    .pd-video-hero-v15::after {
        height: 110px;
    }

    body:has(.amyu-project-detail-v10)
    .pd-gallery-section {
        padding-top: 35px !important;
    }
}


/* AMYU SOFT VIDEO GRADIENT V17 START */

/* Allow the video hero to fit the content instead
   of leaving an empty full-screen area. */

body:has(.pd-video-hero-v15)
.pd-video-hero-v15 {
    min-height: 0 !important;
    height: auto !important;
    display: block !important;
    padding: 0 !important;
}

/* Position the content naturally with less spacing. */

body:has(.pd-video-hero-v15)
.pd-video-content-v15 {
    transform: none !important;
    padding: 38px 0 75px !important;
}

body:has(.pd-video-hero-v15)
.pd-video-hero-v15 .pd-introduction {
    padding: 12px 0 25px !important;
}

body:has(.pd-video-hero-v15)
.pd-video-hero-v15 .pd-details {
    padding: 5px 0 20px !important;
}

/* Light, semi-transparent fade over the video. */

body:has(.pd-video-hero-v15)
.pd-video-hero-v15::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    height: 115px !important;
    z-index: 3 !important;
    pointer-events: none !important;

    background: linear-gradient(
        to bottom,
        rgba(250,252,249,0) 0%,
        rgba(250,252,249,.05) 25%,
        rgba(250,252,249,.12) 50%,
        rgba(250,252,249,.35) 78%,
        rgba(250,252,249,.65) 100%
    ) !important;
}

/* Transparent, subtle white gallery background. */

body:has(.pd-video-hero-v15)
.pd-gallery-section {
    background: linear-gradient(
        180deg,
        rgba(250,252,249,.65) 0%,
        rgba(250,252,249,.82) 25%,
        rgba(255,255,255,.94) 65%,
        #FAFCF9 100%
    ) !important;

    padding-top: 32px !important;
    padding-bottom: 75px !important;
}

/* Mobile refinements */

@media(max-width:700px) {
    body:has(.pd-video-hero-v15)
    .pd-video-content-v15 {
        padding: 24px 0 65px !important;
    }

    body:has(.pd-video-hero-v15)
    .pd-video-hero-v15::after {
        height: 85px !important;
    }

    body:has(.pd-video-hero-v15)
    .pd-gallery-section {
        padding-top: 25px !important;
    }
}

/* AMYU SOFT VIDEO GRADIENT V17 END */


/* AMYU MATCHED PARTNER ARROWS V19 */

body:has(.amyu-project-detail-v10)
.pd-gallery-controls {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 14px !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button {
    display: grid !important;
    place-items: center !important;
    width: 43px !important;
    height: 43px !important;
    min-width: 43px !important;
    padding: 0 !important;

    border: 1px solid #9AABA0 !important;
    border-radius: 50% !important;

    background: transparent !important;
    color: #174F2D !important;
    box-shadow: none !important;

    cursor: pointer !important;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button span {
    display: block !important;
    font-family: Arial, sans-serif !important;
    font-size: 23px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    color: inherit !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button:hover:not(:disabled) {
    background: #174F2D !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button:focus-visible {
    outline: 2px solid #174F2D !important;
    outline-offset: 4px !important;
}

/* END AMYU MATCHED PARTNER ARROWS V19 */


/* AMYU GREEN CHEVRON ARROWS V20 */

body:has(.amyu-project-detail-v10)
.pd-gallery-controls {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
    margin-top: 18px !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 65px !important;
    height: 48px !important;
    min-width: 65px !important;
    padding: 0 !important;

    border: 1px solid rgba(255,255,255,.4) !important;
    border-radius: 25px !important;

    background: #619978 !important;
    color: #FFFFFF !important;
    box-shadow: none !important;
    cursor: pointer !important;

    transition:
        background .25s ease,
        transform .25s ease !important;
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button:hover:not(:disabled) {
    background: #174F2D !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
}

body:has(.amyu-project-detail-v10)
.pd-chevron-v20 {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    flex-shrink: 0 !important;
    color: #FFFFFF !important;
}

body:has(.amyu-project-detail-v10)
.pd-chevron-left-v20 {
    transform: rotate(180deg);
}

body:has(.amyu-project-detail-v10)
.pd-gallery-controls button:focus-visible {
    outline: 2px solid #174F2D !important;
    outline-offset: 3px !important;
}

/* AMYU GREEN CHEVRON ARROWS V20 END */


/* AMYU MATCHED BACK BUTTON V21 */

body:has(.amyu-project-detail-v10)
.pd-back-v11 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;

    min-height: 48px !important;
    padding: 0 20px !important;

    background: #619978 !important;
    color: #FFFFFF !important;

    border: 1px solid rgba(255,255,255,.4) !important;
    border-radius: 25px !important;

    font-size: 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;

    box-shadow: none !important;
    transition:
        background .25s ease,
        transform .25s ease !important;
}

body:has(.amyu-project-detail-v10)
.pd-back-v11:hover {
    background: #174F2D !important;
    color: #FFFFFF !important;
    transform: translateX(-3px) !important;
}

body:has(.amyu-project-detail-v10)
.pd-back-chevron-v21 {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    flex-shrink: 0 !important;
    color: #FFFFFF !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-back-v11 {
    background: #619978 !important;
    color: #FFFFFF !important;
    border-color: rgba(255,255,255,.4) !important;
}

body:has(.amyu-project-detail-v10)
.pd-video-hero-v15 .pd-back-v11:hover {
    background: #174F2D !important;
}

body:has(.amyu-project-detail-v10)
.pd-back-v11 span {
    color: inherit !important;
    font-size: 12px !important;
}

/* AMYU MATCHED BACK BUTTON V21 END */


/* AMYU FAITH IN PEACE HERO V22 */

body:has(.pd-faith-hero-v22)
.pd-faith-hero-v22 {
    position: relative !important;
    isolation: isolate;
    min-height: 0 !important;
    height: auto !important;
    display: block !important;
    background:
        linear-gradient(
            110deg,
            rgba(5,40,25,.38),
            rgba(8,55,34,.12)
        ),
        url("assets/images/programme-peace.jpg")
        center / cover no-repeat !important;
}

body:has(.pd-faith-hero-v22)
.pd-faith-hero-v22 .pd-video-shade-v15 {
    z-index: -1 !important;
}

body:has(.pd-faith-hero-v22)
.pd-faith-hero-v22 .pd-video-content-v15 {
    transform: none !important;
    padding: 38px 0 75px !important;
}

body:has(.pd-faith-hero-v22)
.pd-faith-hero-v22 .pd-introduction {
    background: transparent !important;
    padding: 12px 0 25px !important;
}

body:has(.pd-faith-hero-v22)
.pd-faith-hero-v22 .pd-details {
    background: transparent !important;
    padding: 5px 0 20px !important;
}

body:has(.pd-faith-hero-v22)
.pd-faith-hero-v22::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 115px;
    pointer-events: none;
    background: linear-gradient(
        to bottom,
        rgba(250,252,249,0),
        rgba(250,252,249,.12) 50%,
        rgba(250,252,249,.65)
    );
}

body:has(.pd-faith-hero-v22)
.pd-gallery-section {
    background: linear-gradient(
        180deg,
        #FAFCF9,
        #FFFFFF 65%,
        #FAFCF9
    ) !important;
    padding-top: 32px !important;
}

/* AMYU FAITH IN PEACE HERO V22 END */


/* AMYU SIX PROGRAMME HEROES V23 START */

/* Same approved layout as Village of Hope,
   using a photographic background. */

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 {
    position: relative !important;
    isolation: isolate !important;
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    background-color: #103B27 !important;
    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-video-content-v15 {
    position: relative !important;
    z-index: 2 !important;
    transform: none !important;
    padding: 38px 0 75px !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-introduction {
    background: transparent !important;
    padding: 12px 0 25px !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-details {
    background: transparent !important;
    padding: 5px 0 20px !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-video-shade-v15 {
    z-index: -1 !important;
}

/* Gentle fade below Long-Term Impact. */

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 115px !important;
    z-index: 3 !important;
    pointer-events: none !important;
    background: linear-gradient(
        to bottom,
        rgba(250,252,249,0) 0%,
        rgba(250,252,249,.05) 25%,
        rgba(250,252,249,.12) 50%,
        rgba(250,252,249,.35) 78%,
        rgba(250,252,249,.65) 100%
    ) !important;
}

/* White text and dropdown controls. */

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 h1,
body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-summary,
body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-accordion summary,
body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-accordion-content p {
    color: #FFFFFF !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-accordion-list,
body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-accordion {
    border-color: rgba(255,255,255,.4) !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-plus {
    border-color: rgba(255,255,255,.75) !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-plus::before,
body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-plus::after {
    background: #FFFFFF !important;
}

/* Green back button, matching Village of Hope. */

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-back-v11 {
    background: #619978 !important;
    color: #FFFFFF !important;
    border-color: rgba(255,255,255,.4) !important;
}

body:has(.pd-photo-hero-v23)
.pd-photo-hero-v23 .pd-back-v11:hover {
    background: #174F2D !important;
}

/* Separate, softly graduated photo gallery. */

body:has(.pd-photo-hero-v23)
.pd-gallery-section {
    background: linear-gradient(
        180deg,
        rgba(250,252,249,.85),
        #FFFFFF 65%,
        #FAFCF9
    ) !important;
    padding-top: 32px !important;
    padding-bottom: 75px !important;
}

@media (max-width: 700px) {
    body:has(.pd-photo-hero-v23)
    .pd-photo-hero-v23 .pd-video-content-v15 {
        padding: 24px 0 65px !important;
    }

    body:has(.pd-photo-hero-v23)
    .pd-photo-hero-v23::after {
        height: 85px !important;
    }
}

body:has(.pd-photo-hero-v23-1)
.pd-photo-hero-v23-1 {
    background-image:
      linear-gradient(
        110deg,
        rgba(5,40,25,.60) 0%,
        rgba(8,55,34,.45) 55%,
        rgba(5,40,25,.35) 100%
      ),
      url("assets/images/programme-humanitarian.jpg") !important;
}


body:has(.pd-photo-hero-v23-2)
.pd-photo-hero-v23-2 {
    background-image:
      linear-gradient(
        110deg,
        rgba(5,40,25,.60) 0%,
        rgba(8,55,34,.45) 55%,
        rgba(5,40,25,.35) 100%
      ),
      url("assets/images/programme-village.jpg") !important;
}


body:has(.pd-photo-hero-v23-3)
.pd-photo-hero-v23-3 {
    background-image:
      linear-gradient(
        110deg,
        rgba(5,40,25,.60) 0%,
        rgba(8,55,34,.45) 55%,
        rgba(5,40,25,.35) 100%
      ),
      url("assets/images/programme-village.jpg") !important;
}


body:has(.pd-photo-hero-v23-4)
.pd-photo-hero-v23-4 {
    background-image:
      linear-gradient(
        110deg,
        rgba(5,40,25,.60) 0%,
        rgba(8,55,34,.45) 55%,
        rgba(5,40,25,.35) 100%
      ),
      url("assets/images/programme-humanitarian.jpg") !important;
}


body:has(.pd-photo-hero-v23-5)
.pd-photo-hero-v23-5 {
    background-image:
      linear-gradient(
        110deg,
        rgba(5,40,25,.60) 0%,
        rgba(8,55,34,.45) 55%,
        rgba(5,40,25,.35) 100%
      ),
      url("assets/images/programme-humanitarian.jpg") !important;
}


body:has(.pd-photo-hero-v23-6)
.pd-photo-hero-v23-6 {
    background-image:
      linear-gradient(
        110deg,
        rgba(5,40,25,.60) 0%,
        rgba(8,55,34,.45) 55%,
        rgba(5,40,25,.35) 100%
      ),
      url("assets/images/programme-humanitarian.jpg") !important;
}


/* AMYU SIX PROGRAMME HEROES V23 END */


/* AMYU PROGRAMME CATEGORIES V24 START */

.amyu-category-heading-v24 {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 65px max(30px, calc((100% - 1150px)/2));
    background: #F7F3E7;
    scroll-margin-top: 30px;
}

.amyu-category-number-v24 {
    display: grid;
    place-items: center;
    width: 65px;
    height: 65px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #174F2D;
    color: white;
    font-size: 19px;
    font-weight: 700;
}

.amyu-category-heading-v24 p {
    margin: 0 0 8px !important;
    font-size: 11px !important;
    letter-spacing: .16em;
    font-weight: 700;
    color: #62856E;
}

.amyu-category-heading-v24 h2 {
    margin: 0 !important;
    font-size: clamp(30px, 4vw, 52px) !important;
    line-height: 1.1 !important;
    color: #174F2D !important;
}

.amyu-mediation-card-v24 {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 390px;
    padding: 70px max(30px, calc((100% - 1150px)/2));
    background:
      radial-gradient(
        circle at 85% 25%,
        rgba(164,205,167,.38),
        transparent 45%
      ),
      linear-gradient(
        115deg,
        #E7F0E2,
        #F7F3E7 75%
      );
}

.amyu-mediation-inner-v24 {
    max-width: 700px;
}

.amyu-mediation-card-v24 h2 {
    margin: 0 0 15px !important;
    color: #174F2D !important;
    font-size: clamp(35px, 4.5vw, 62px) !important;
}

.amyu-mediation-card-v24 p {
    margin: 0 0 25px !important;
    color: #55705D !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
}

.amyu-mediation-status-v24 {
    display: inline-block;
    padding: 12px 20px;
    border-radius: 50px;
    border: 1px solid rgba(23,79,45,.25);
    color: #174F2D;
    font-size: 12px;
    font-weight: 600;
}

@media (max-width:700px) {
    .amyu-category-heading-v24 {
        padding: 45px 24px;
        gap: 16px;
    }
    .amyu-category-number-v24 {
        width: 48px;
        height: 48px;
        font-size: 15px;
    }
    .amyu-mediation-card-v24 {
        min-height: 300px;
        padding: 50px 24px;
    }
}

/* AMYU PROGRAMME CATEGORIES V24 END */


/* AMYU FLAGSHIP PROJECTS V42 START */

/* Hide the former eight-project switching carousel.
   Its original markup remains available in the backup. */

body .hc-approach .hc-project-showcase {
    display: none !important;
}

/* Two strong photographic project cards. */

body .hc-approach .amyu-flagship-grid-v42 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    max-width: 1400px;
    margin: 45px auto 35px;
}

body .hc-approach .amyu-flagship-card-v42 {
    position: relative !important;
    isolation: isolate;

    display: flex !important;
    flex-direction: column;
    justify-content: flex-end;

    min-height: 570px;
    padding: 40px;
    overflow: hidden;

    border-radius: 20px;
    background: #174F2D;

    text-decoration: none !important;
    color: #FFFFFF !important;

    box-shadow: 0 20px 55px rgba(15,52,30,.12);

    transition:
        transform .5s cubic-bezier(.22,1,.36,1),
        box-shadow .5s ease;
}

/* Full-size background photograph. */

body .hc-approach .amyu-flagship-card-v42::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;

    background-image: var(--flagship-image);
    background-position: center;
    background-size: cover;

    transition: transform .9s cubic-bezier(.22,1,.36,1);
}

/* AMYU green photographic gradient. */

body .hc-approach .amyu-flagship-card-v42::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;

    background: linear-gradient(
        to top,
        rgba(6,43,25,.96) 0%,
        rgba(11,65,37,.68) 38%,
        rgba(9,54,31,.12) 100%
    );

    transition: opacity .4s ease;
}

body .hc-approach .amyu-flagship-content-v42 {
    position: relative;
    z-index: 2;
    text-align: left !important;

    transform: translateY(0);
    transition: transform .45s ease;
}

body .hc-approach .amyu-flagship-label-v42 {
    display: inline-block;
    margin-bottom: 16px;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: .16em;
    color: rgba(255,255,255,.82);
}

body .hc-approach .amyu-flagship-card-v42 h3 {
    margin: 0 0 16px !important;

    font-size: clamp(32px,3.5vw,53px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.04em;

    color: #FFFFFF !important;
    text-transform: none !important;
    text-align: left !important;
}

body .hc-approach .amyu-flagship-card-v42 p {
    max-width: 440px;
    margin: 0 0 27px !important;

    font-size: 15px !important;
    line-height: 1.7 !important;
    color: rgba(255,255,255,.90) !important;
    text-align: left !important;
}

/* Glass-style Explore Project button. */

body .hc-approach .amyu-flagship-action-v42 {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    min-height: 49px;
    padding: 11px 15px 11px 22px;

    border: 1px solid rgba(255,255,255,.45);
    border-radius: 30px;

    background: rgba(97,153,120,.75);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    color: #FFFFFF;
    font-size: 13px;
    font-weight: 700;

    transition: background .35s ease;
}

body .hc-approach .amyu-flagship-action-v42 svg {
    display: block;
    width: 20px;
    height: 20px;
}

/* Interactive animations. */

body .hc-approach .amyu-flagship-card-v42:hover {
    transform: translateY(-9px);
    box-shadow: 0 32px 65px rgba(10,49,27,.23);
}

body .hc-approach .amyu-flagship-card-v42:hover::before {
    transform: scale(1.09);
}

body .hc-approach .amyu-flagship-card-v42:hover
.amyu-flagship-content-v42 {
    transform: translateY(-5px);
}

body .hc-approach .amyu-flagship-card-v42:hover
.amyu-flagship-action-v42 {
    background: #619978;
}

body .hc-approach .amyu-flagship-card-v42:focus-visible {
    outline: 3px solid #619978;
    outline-offset: 5px;
}

/* Tablet and mobile. */

@media(max-width:850px) {
    body .hc-approach .amyu-flagship-grid-v42 {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    body .hc-approach .amyu-flagship-card-v42 {
        min-height: 450px;
        padding: 30px;
    }
}

@media(max-width:500px) {
    body .hc-approach .amyu-flagship-card-v42 {
        min-height: 430px;
        padding: 26px;
        border-radius: 15px;
    }

    body .hc-approach .amyu-flagship-card-v42 h3 {
        font-size: 35px !important;
    }
}

@media(prefers-reduced-motion:reduce) {
    body .hc-approach .amyu-flagship-card-v42,
    body .hc-approach .amyu-flagship-card-v42::before,
    body .hc-approach .amyu-flagship-content-v42 {
        transition: none !important;
    }
}

/* AMYU FLAGSHIP PROJECTS V42 END */


/* AMYU WIDER FLAGSHIP CARDS V43 */

/* Allow the flagship showcase to extend beyond
   the original narrow homepage container. */

@media (min-width: 851px) {

    body .hc-approach .amyu-flagship-grid-v42 {
        width: calc(100vw - 80px) !important;
        max-width: 1700px !important;

        margin-left: 50% !important;
        margin-right: 0 !important;

        transform: translateX(-50%) !important;

        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 24px !important;
    }

    body .hc-approach .amyu-flagship-card-v42 {
        min-height: 620px !important;
        padding: 48px !important;
    }
}

/* Keep comfortable margins on smaller screens. */

@media (max-width: 850px) {

    body .hc-approach .amyu-flagship-grid-v42 {
        width: calc(100vw - 36px) !important;
        max-width: none !important;

        margin-left: 50% !important;
        margin-right: 0 !important;

        transform: translateX(-50%) !important;

        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }
}

/* AMYU WIDER FLAGSHIP CARDS V43 END */


/* AMYU BALANCED FLAGSHIP WIDTH V44 */

@media(min-width:851px) {
    body .hc-approach .amyu-flagship-grid-v42 {
        width: min(1450px, calc(100vw - 120px)) !important;
        max-width: 1450px !important;
        margin-left: 50% !important;
        transform: translateX(-50%) !important;
        gap: 24px !important;
    }
}

/* AMYU BALANCED FLAGSHIP WIDTH V44 END */


/* AMYU FLAGSHIP SPOTLIGHT V46 START */

@media(min-width:851px) {

  body .hc-approach .amyu-flagship-grid-v42 {
    display: flex !important;
    align-items: stretch !important;
    gap: 20px !important;
    overflow: visible !important;
  }

  body .hc-approach .amyu-flagship-card-v42 {
    box-sizing: border-box !important;

    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    min-height: 620px !important;

    transform: none !important;

    transition:
      flex-grow 1s cubic-bezier(.22,1,.36,1),
      filter 1s ease,
      box-shadow .5s ease !important;
  }

  /* Featured card expands smoothly. */

  body .hc-approach
  .amyu-flagship-card-v42.amyu-spotlight-active-v46 {
    flex-grow: 1.8 !important;
    filter: blur(0) brightness(1) !important;
    box-shadow:
      0 25px 60px rgba(10,49,27,.22) !important;
  }

  /* Neighbor becomes smaller and gently blurred. */

  body .hc-approach
  .amyu-flagship-card-v42.amyu-spotlight-side-v46 {
    flex-grow: 1 !important;
    filter: blur(2px) brightness(.78) !important;
  }

  body .hc-approach
  .amyu-flagship-card-v42::before {
    transition:
      transform 1.1s cubic-bezier(.22,1,.36,1)
      !important;
  }

  body .hc-approach
  .amyu-flagship-card-v42.amyu-spotlight-active-v46::before {
    transform: scale(1.06) !important;
  }

  body .hc-approach
  .amyu-flagship-card-v42.amyu-spotlight-side-v46::before {
    transform: scale(1) !important;
  }

  /* Make labels readable even on the smaller card. */

  body .hc-approach
  .amyu-flagship-card-v42 h3 {
    font-size: clamp(28px,3vw,48px) !important;
  }
}

/* On mobile, keep both cards fully readable. */

@media(max-width:850px) {
  body .hc-approach .amyu-flagship-card-v42 {
    filter: none !important;
  }
}

@media(prefers-reduced-motion:reduce) {
  body .hc-approach .amyu-flagship-card-v42,
  body .hc-approach .amyu-flagship-card-v42::before {
    transition: none !important;
  }
}

/* AMYU FLAGSHIP SPOTLIGHT V46 END */


/* AMYU COMPACT FOOTER V49 START */

body .amyu-footer-v49 {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: auto !important;

    background: #063C32 !important;
    color: #FFFFFF !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;

    text-align: left !important;
}

body .amyu-footer-v49 *,
body .amyu-footer-v49 *::before,
body .amyu-footer-v49 *::after {
    box-sizing: border-box;
}

body .amyu-footer-v49 .amyu-footer-inner-v49 {
    display: grid !important;
    grid-template-columns: 1.5fr 1fr 1fr 1fr !important;
    gap: 54px !important;
    align-items: start !important;

    width: min(1400px, calc(100% - 96px)) !important;
    max-width: 1400px !important;

    margin: 0 auto !important;
    padding: 65px 0 55px !important;
}

/* Brand and contact */

body .amyu-footer-v49 .amyu-footer-brand-v49 {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0 !important;

    min-width: 0;
    padding: 0 35px 0 0 !important;
    border-right: 1px solid rgba(255,255,255,.20);
}

body .amyu-footer-v49 .amyu-footer-brand-v49 img {
    display: block !important;
    width: 195px !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 0 27px !important;
    object-fit: contain !important;
    object-position: left center !important;
    border: 0 !important;
}

body .amyu-footer-v49 .amyu-footer-contact-v49 {
    display: flex !important;
    flex-direction: column !important;
    gap: 13px !important;
    margin-bottom: 20px !important;
}

body .amyu-footer-v49 a {
    color: rgba(255,255,255,.88) !important;
    text-decoration: none !important;
    transition: color .25s ease !important;
}

body .amyu-footer-v49 a:hover {
    color: #B6DBBF !important;
}

body .amyu-footer-v49 .amyu-footer-contact-v49 a,
body .amyu-footer-v49 .amyu-footer-site-v49 {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

/* Compact link columns */

body .amyu-footer-v49 .amyu-footer-column-v49 {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 15px !important;

    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body .amyu-footer-v49 .amyu-footer-column-v49 h2 {
    display: block !important;
    width: 100% !important;
    margin: 0 0 4px !important;
    padding: 0 0 15px !important;

    border-bottom: 1px solid rgba(255,255,255,.23) !important;

    color: #FFFFFF !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: left !important;
}

body .amyu-footer-v49 .amyu-footer-column-v49 a {
    display: block !important;
    width: fit-content !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;

    color: rgba(255,255,255,.84) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

body .amyu-footer-v49 .amyu-footer-column-v49 a:hover {
    color: #B6DBBF !important;
}

/* Copyright */

body .amyu-footer-v49 .amyu-footer-bottom-v49 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 20px 29px !important;

    color: rgba(255,255,255,.80) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: .02em !important;
    line-height: 1.6 !important;
    text-align: center !important;
}

/* Tablet */

@media(max-width:1000px) {
    body .amyu-footer-v49 .amyu-footer-inner-v49 {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
        gap: 38px !important;
        width: calc(100% - 60px) !important;
    }

    body .amyu-footer-v49 .amyu-footer-brand-v49 {
        border-right: none !important;
    }
}

/* Mobile */

@media(max-width:600px) {
    body .amyu-footer-v49 .amyu-footer-inner-v49 {
        grid-template-columns: 1fr 1fr !important;
        gap: 34px 22px !important;
        width: calc(100% - 40px) !important;
        padding: 45px 0 35px !important;
    }

    body .amyu-footer-v49 .amyu-footer-brand-v49 {
        grid-column: 1 / -1 !important;
        padding: 0 !important;
    }

    body .amyu-footer-v49 .amyu-footer-brand-v49 img {
        width: 175px !important;
    }

    body .amyu-footer-v49 .amyu-footer-column-v49 h2 {
        font-size: 15px !important;
    }

    body .amyu-footer-v49 .amyu-footer-column-v49 a {
        font-size: 13px !important;
    }

    body .amyu-footer-v49 .amyu-footer-bottom-v49 {
        font-size: 11px !important;
        padding: 20px !important;
    }
}

/* AMYU COMPACT FOOTER V49 END */


/* AMYU FOOTER SOCIAL V50 START */

body .amyu-footer-v49 .amyu-footer-location-v50 {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 23px 0 22px !important;
    color: rgba(255,255,255,.85) !important;
    font-size: 13px !important;
    line-height: 1.7 !important;
}

body .amyu-footer-v49 .amyu-footer-location-v50 svg {
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    fill: none !important;
    stroke: #A7D4B0 !important;
    stroke-width: 1.8 !important;
    margin-top: 2px !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 11px !important;
    margin: 0 0 20px !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a {
    display: grid !important;
    place-items: center !important;
    width: 39px !important;
    height: 39px !important;
    flex-shrink: 0 !important;
    border-radius: 50% !important;
    background: #619978 !important;
    color: white !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    text-decoration: none !important;
    transition:
        background .25s ease,
        transform .25s ease !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a:hover {
    background: #86B899 !important;
    transform: translateY(-3px) !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a svg {
    display: block !important;
    width: 19px !important;
    height: 19px !important;
    fill: currentColor !important;
    color: white !important;
}

body .amyu-footer-v49
.amyu-footer-social-v50 .amyu-social-outline-v50 {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
}

body .amyu-footer-v49
.amyu-footer-social-v50 .amyu-social-outline-v50 circle:last-child {
    fill: currentColor !important;
    stroke: none !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a:focus-visible {
    outline: 2px solid white !important;
    outline-offset: 4px !important;
}

/* AMYU FOOTER SOCIAL V50 END */


/* AMYU FOOTER CONTACT ORDER V51 START */

/* Address first, without location icon */

body .amyu-footer-v49 .amyu-footer-location-v50 {
    display: block !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    color: rgba(255,255,255,.86) !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

body .amyu-footer-v49 .amyu-footer-location-v50 svg {
    display: none !important;
}

/* Telephone numbers second */

body .amyu-footer-v49 .amyu-footer-contact-v49 {
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
    margin: 0 0 15px !important;
}

/* Email third */

body .amyu-footer-v49 .amyu-footer-email-v51 {
    display: inline-block !important;
    width: fit-content !important;
    margin: 0 0 23px !important;
    color: rgba(255,255,255,.88) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    text-decoration: none !important;
}

body .amyu-footer-v49 .amyu-footer-email-v51:hover {
    color: #B6DBBF !important;
}

/* Smaller social media icons at the bottom */

body .amyu-footer-v49 .amyu-footer-social-v50 {
    display: flex !important;
    gap: 9px !important;
    margin: 0 !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 50% !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a svg {
    width: 16px !important;
    height: 16px !important;
}

/* AMYU FOOTER CONTACT ORDER V51 END */


/* AMYU SMALLER FOOTER V52 START */

/* Make the entire footer shorter and more compact. */

body .amyu-footer-v49 .amyu-footer-inner-v49 {
    width: min(1200px, calc(100% - 80px)) !important;
    max-width: 1200px !important;
    grid-template-columns: 1.45fr 1fr 1.15fr .85fr !important;
    gap: 28px !important;
    padding-top: 32px !important;
    padding-bottom: 22px !important;
}

/* Smaller logo and contact area. */

body .amyu-footer-v49 .amyu-footer-brand-v49 {
    padding-right: 20px !important;
}

body .amyu-footer-v49 .amyu-footer-brand-v49 img {
    width: 145px !important;
    max-width: 145px !important;
    margin-bottom: 13px !important;
}

body .amyu-footer-v49 .amyu-footer-location-v50 {
    font-size: 12px !important;
    line-height: 1.45 !important;
    margin-bottom: 10px !important;
}

body .amyu-footer-v49 .amyu-footer-contact-v49 {
    gap: 3px !important;
    margin-bottom: 9px !important;
}

body .amyu-footer-v49 .amyu-footer-contact-v49 a {
    font-size: 12px !important;
    line-height: 1.45 !important;
}

body .amyu-footer-v49 .amyu-footer-email-v51 {
    font-size: 12px !important;
    margin-bottom: 13px !important;
}

/* Compact social icons. */

body .amyu-footer-v49 .amyu-footer-social-v50 {
    gap: 8px !important;
    margin-bottom: 0 !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
}

body .amyu-footer-v49 .amyu-footer-social-v50 a svg {
    width: 15px !important;
    height: 15px !important;
}

/* Reduce heading and link spacing. */

body .amyu-footer-v49 .amyu-footer-column-v49 {
    gap: 9px !important;
}

body .amyu-footer-v49 .amyu-footer-column-v49 h2 {
    font-size: 14px !important;
    margin-bottom: 2px !important;
    padding-bottom: 9px !important;
}

body .amyu-footer-v49 .amyu-footer-column-v49 a {
    font-size: 12px !important;
    line-height: 1.45 !important;
}

/* Smaller copyright area. */

body .amyu-footer-v49 .amyu-footer-bottom-v49 {
    font-size: 11px !important;
    padding: 12px 18px 16px !important;
    line-height: 1.4 !important;
}

/* Tablet */

@media(max-width:1000px) {
    body .amyu-footer-v49 .amyu-footer-inner-v49 {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
        gap: 24px !important;
        width: calc(100% - 48px) !important;
    }
}

/* Mobile */

@media(max-width:600px) {
    body .amyu-footer-v49 .amyu-footer-inner-v49 {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
        gap: 22px 15px !important;
        width: calc(100% - 36px) !important;
        padding-top: 28px !important;
        padding-bottom: 18px !important;
    }

    body .amyu-footer-v49 .amyu-footer-brand-v49 {
        grid-column: 1 / -1 !important;
        padding-right: 0 !important;
    }

    body .amyu-footer-v49 .amyu-footer-brand-v49 img {
        width: 135px !important;
    }

    body .amyu-footer-v49 .amyu-footer-column-v49 h2 {
        font-size: 13px !important;
    }

    body .amyu-footer-v49 .amyu-footer-column-v49 a {
        font-size: 12px !important;
    }
}

/* AMYU SMALLER FOOTER V52 END */
