
/* ================================================================
   NURU HOMEPAGE ADAPTATION
   Uses Donativo as the design foundation. These rules only support
   Nuru-specific content/sections and avoid changing the template globally.
   ================================================================ */
:root {
    --nuru-primary: #062271;
    --nuru-primary-dark: #04184f;

    --nuru-black: #000000;
    --nuru-ink: #171717;

    --nuru-white: #ffffff;
    --nuru-paper: #f5f6f8;

    --nuru-muted: #667085;
    --nuru-line: rgba(6, 34, 113, 0.14);
}
/* ================================================================
   NURU BRAND COLOURS
   Blue + Black + White derived from the client logo
   ================================================================ */

/* General links */
a {
    transition: color .25s ease;
}

a:hover {
    color: var(--nuru-primary);
}


/* ------------------------------------------------
   HEADER
------------------------------------------------ */

.main-header-style1__top {
    background: var(--nuru-primary);
}

.main-header-style1__top a,
.main-header-style1__top p,
.main-header-style1__top span,
.main-header-style1__top i {
    color: var(--nuru-white);
}

.main-menu__list > li > a {
    color: var(--nuru-ink);
}

.main-menu__list > li:hover > a,
.main-menu__list > li.current > a {
    color: var(--nuru-primary);
}


/* Header CTA */
.header-btn-style1 .btn-one,
.stricky-header .header-btn-style1 .btn-one {
    background: var(--nuru-primary) !important;
}

.header-btn-style1 .btn-one .txt,
.stricky-header .header-btn-style1 .btn-one .txt {
    color: var(--nuru-white) !important;
}

.header-btn-style1 .btn-one:hover,
.stricky-header .header-btn-style1 .btn-one:hover {
    background: var(--nuru-black) !important;
}


/* ------------------------------------------------
   BUTTONS
------------------------------------------------ */

.btn-one {
    background: var(--nuru-primary);
}

.btn-one .txt {
    color: var(--nuru-white);
}

.btn-one:hover {
    background: var(--nuru-black);
}

.btn-one:hover .txt {
    color: var(--nuru-white);
}


/* ------------------------------------------------
   SECTION LABELS / EYEBROWS
------------------------------------------------ */

.sec-title .sub-title h4,
.nuru-kicker {
    color: var(--nuru-primary);
}


/* Decorative oversized template labels */
.sec-title .sub-title .big-title {
    color: rgba(6, 34, 113, .055);
}


/* ------------------------------------------------
   HEADINGS
------------------------------------------------ */

.sec-title h2,
.nuru-heading,
.nuru-focus-item h3,
.nuru-value h3,
.nuru-programme h3 {
    color: var(--nuru-ink);
}


/* ------------------------------------------------
   HERO
------------------------------------------------ */

.banner-style1 .sec-title .sub-title h4 {
    color: var(--nuru-primary);
}

.banner-style1 .sec-title h2 {
    color: var(--nuru-ink);
}

.nuru-hero-note {
    color: var(--nuru-primary);
}


/* ------------------------------------------------
   ABOUT
------------------------------------------------ */

.nuru-about-badge {
    border-bottom: 4px solid var(--nuru-primary);
}


/* ------------------------------------------------
   AREAS OF FOCUS
------------------------------------------------ */

.nuru-focus-number {
    color: var(--nuru-primary);
}

.nuru-focus-item:hover {
    border-color: rgba(6, 34, 113, .22);
}

.nuru-focus-item h3 a:hover,
.nuru-focus-link a {
    color: var(--nuru-primary);
}


/* ------------------------------------------------
   MISSION & VISION
------------------------------------------------ */

.nuru-purpose-content {
    background: var(--nuru-primary);
}

.nuru-purpose-content .nuru-kicker {
    color: rgba(255, 255, 255, .72);
}

.nuru-purpose-content .nuru-heading {
    color: var(--nuru-white);
}


/* ------------------------------------------------
   VALUES / APPROACH
------------------------------------------------ */

.nuru-value {
    border-top-color: var(--nuru-primary);
}


/* ------------------------------------------------
   TEAM
------------------------------------------------ */

.nuru-team-grid .single-team-style1 .title-box h3 a {
    color: var(--nuru-ink);
}

.nuru-team-grid .single-team-style1 .title-box h3 a:hover {
    color: var(--nuru-primary);
}

.nuru-team-grid .single-team-style1 .title-box h5 {
    color: var(--nuru-primary);
}


/* ------------------------------------------------
   PROGRAMMES
------------------------------------------------ */

.nuru-programme__meta {
    color: var(--nuru-primary);
}


/* ------------------------------------------------
   IMPACT
------------------------------------------------ */

.nuru-impact-metric span {
    color: var(--nuru-primary);
}


/* ------------------------------------------------
   PARTNERS / COLLABORATION
------------------------------------------------ */

.nuru-collab-card {
    border-color: rgba(6, 34, 113, .14);
}


/* ------------------------------------------------
   NEWS & STORIES
------------------------------------------------ */

.nuru-news-card__content span {
    color: #dce4ff;
}

.nuru-news-card__content h3 a {
    color: var(--nuru-white);
}

.nuru-news-card__content h3 a:hover {
    color: #dce4ff;
}


/* ------------------------------------------------
   FINAL CTA
------------------------------------------------ */

.nuru-cta {
    background: var(--nuru-primary);
}

.nuru-cta .sec-title h2,
.nuru-cta .sec-title h4,
.nuru-cta p {
    color: var(--nuru-white);
}

.nuru-link-light {
    color: var(--nuru-white);
}


/* ------------------------------------------------
   FOOTER
------------------------------------------------ */

.footer-area {
    background: var(--nuru-black);
}

.footer-area h3,
.footer-area h4,
.footer-area h5 {
    color: var(--nuru-white);
}

.footer-area p,
.footer-area a {
    color: rgba(255, 255, 255, .72);
}

.footer-area a:hover {
    color: #9eb2ff;
}

.footer-social-link a:hover,
.footer-widget-links a:hover {
    color: #9eb2ff;
}


/* ------------------------------------------------
   MOBILE NAVIGATION
------------------------------------------------ */

.mobile-nav__content {
    background: var(--nuru-primary);
}

.mobile-nav__content a,
.mobile-nav__content li,
.mobile-nav__content i {
    color: var(--nuru-white);
}

/* Brand logo: use the client's combined mark + wordmark image.
   Save a tightly cropped transparent version as:
   assets/images/logo.png */
.logo-box-style1 .nuru-main-logo {
    display: block;
    width: 205px;
    height: 76px;
    object-fit: contain;
    object-position: left center;
}
.stricky-header .logo-box-style1 .nuru-main-logo {
    width: 170px;
    height: 58px;
}
.mobile-nav__content .logo-box .nuru-main-logo {
    display: block;
    width: 190px;
    height: auto;
    max-height: 100px;
    object-fit: contain;
}

/* Keep the desktop/sticky navigation and support CTA on one line. */
.main-menu__list > li > a,
.header-btn-style1 .btn-one,
.header-btn-style1 .btn-one .txt,
.stricky-header .header-btn-style1 .btn-one,
.stricky-header .header-btn-style1 .btn-one .txt {
    white-space: nowrap;
}
.header-btn-style1 .btn-one,
.stricky-header .header-btn-style1 .btn-one {
    min-width: 168px;
    height: 52px;
    padding-left: 18px;
    padding-right: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.header-btn-style1 .btn-one .txt,
.stricky-header .header-btn-style1 .btn-one .txt {
    line-height: 1;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .main-menu__list > li > a {
        font-size: 14px;
    }
    .header-btn-style1 .btn-one,
    .stricky-header .header-btn-style1 .btn-one {
        min-width: 150px;
        padding-left: 14px;
        padding-right: 14px;
    }
    .logo-box-style1 .nuru-main-logo {
        width: 175px;
    }
}

.nuru-hero-note {
    margin-top: 30px;
    padding-top: 22px;
    border-top: 1px solid rgba(0,0,0,.12);
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    font-weight: 600;
}
.nuru-hero-note span:first-child {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: currentColor;
    opacity: .7;
}

.nuru-section {
    position: relative;
    padding: 120px 0;
}
.nuru-section--soft { background: var(--nuru-paper); }
.nuru-kicker {
    margin-bottom: 14px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.nuru-heading {
    margin: 0;
    max-width: 760px;
    color: var(--nuru-ink);
    font-size: clamp(38px, 4vw, 64px);
    line-height: 1.05;
    letter-spacing: -.035em;
}
.nuru-heading--sm { font-size: clamp(34px, 3.25vw, 52px); }
.nuru-lead {
    max-width: 720px;
    margin-top: 24px;
    color: var(--nuru-muted);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-section-head { margin-bottom: 55px; }
.nuru-section-head--center { text-align: center; }
.nuru-section-head--center .nuru-heading,
.nuru-section-head--center .nuru-lead { margin-left:auto; margin-right:auto; }

/* About */
.nuru-about-copy { padding-left: 45px; }
.nuru-about-copy p {
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.9;
    margin: 22px 0 0;
}
.nuru-about-copy .btns-box { margin-top: 34px; }
.nuru-about-badge {
    position: absolute;
    left: -15px;
    bottom: 34px;
    max-width: 210px;
    padding: 22px 24px;
    background: #fff;
    box-shadow: 0 20px 45px rgba(0,0,0,.10);
}
.nuru-about-badge strong { display:block; font-size:22px; line-height:1.2; }
.nuru-about-badge span { display:block; margin-top:7px; font-size:13px; line-height:1.5; color:var(--nuru-muted); }

/* Focus areas */
.nuru-focus-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid var(--nuru-line);
    border-left: 1px solid var(--nuru-line);
}
.nuru-focus-item {
    min-height: 280px;
    padding: 38px 34px 34px;
    border-right: 1px solid var(--nuru-line);
    border-bottom: 1px solid var(--nuru-line);
    background:#fff;
    transition: transform .25s ease, box-shadow .25s ease;
}
.nuru-focus-item:hover {
    position: relative;
    z-index: 2;
    transform: translateY(-5px);
    box-shadow: 0 22px 55px rgba(0,0,0,.08);
}
.nuru-focus-number {
    margin-bottom: 42px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .12em;
    opacity: .55;
}
.nuru-focus-item h3 { margin:0 0 14px; font-size:25px; line-height:1.2; }
.nuru-focus-item p { margin:0; color:var(--nuru-muted); line-height:1.75; }
.nuru-focus-link { margin-top:35px; }

/* Mission / vision */
.nuru-purpose { overflow:hidden; }
.nuru-purpose-image {
    min-height: 590px;
    height:100%;
    background: url('../images/mission-style1-img-1.jpg') center/cover no-repeat;
}
.nuru-purpose-content {
    height:100%;
    padding: 80px 70px;
    background: var(--nuru-ink);
    color:#fff;
}
.nuru-purpose-content .nuru-kicker,
.nuru-purpose-content .nuru-heading { color:#fff; }
.nuru-purpose-block { margin-top:42px; padding-top:30px; border-top:1px solid rgba(255,255,255,.18); }
.nuru-purpose-block:first-of-type { margin-top:50px; }
.nuru-purpose-block span { font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; opacity:.65; }
.nuru-purpose-block p { margin:12px 0 0; font-size:18px; line-height:1.75; color:rgba(255,255,255,.85); }

/* Values / approach */
.nuru-values { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.nuru-value {
    padding:30px 28px;
    border-top:3px solid var(--nuru-ink);
    background:#fff;
}
.nuru-value h3 { margin:0 0 13px; font-size:22px; }
.nuru-value p { margin:0; color:var(--nuru-muted); line-height:1.7; }

/* Team */
.nuru-team-section {
    background: var(--nuru-paper);
}
.nuru-team-grid {
    margin-top: 10px;
}
.nuru-team-grid .single-team-style1 {
    margin-bottom: 0;
}
.nuru-team-grid .single-team-style1 .img-holder .inner {
    overflow: hidden;
}
.nuru-team-grid .single-team-style1 .img-holder img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
}
.nuru-team-grid .single-team-style1 .title-box {
    padding-top: 20px;
}
.nuru-team-grid .single-team-style1 .title-box h3 {
    margin-bottom: 5px;
    font-size: 22px;
    line-height: 1.25;
}
.nuru-team-grid .single-team-style1 .title-box h5 {
    margin: 0;
    color: var(--nuru-muted);
    font-size: 14px;
    font-weight: 500;
}
.nuru-team-more {
    margin-top: 38px;
    text-align: center;
}

/* Programme priorities */
.nuru-programme-row { margin-top:20px; }
.nuru-programme {
    height:100%;
    padding:34px;
    border:1px solid var(--nuru-line);
    background:#fff;
}
.nuru-programme__meta { margin-bottom:22px; font-size:12px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; opacity:.62; }
.nuru-programme h3 { margin:0 0 14px; font-size:26px; line-height:1.25; }
.nuru-programme p { margin:0; color:var(--nuru-muted); line-height:1.75; }

/* Impact without invented numbers */
.nuru-impact-wrap {
    display:grid;
    grid-template-columns: .9fr 1.1fr;
    gap:80px;
    align-items:start;
}
.nuru-impact-metrics {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-top:1px solid var(--nuru-line);
    border-left:1px solid var(--nuru-line);
}
.nuru-impact-metric {
    min-height:150px;
    padding:28px;
    border-right:1px solid var(--nuru-line);
    border-bottom:1px solid var(--nuru-line);
}
.nuru-impact-metric span { display:block; font-size:12px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; opacity:.55; }
.nuru-impact-metric strong { display:block; margin-top:24px; font-size:19px; line-height:1.3; }

/* Collaboration */
.nuru-collab {
    padding: 80px 0;
    background: var(--nuru-paper);
}
.nuru-collab-card {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    padding:56px 60px;
    background:#fff;
    border:1px solid var(--nuru-line);
}
.nuru-collab-card .copy { max-width:760px; }
.nuru-collab-card p { margin:17px 0 0; color:var(--nuru-muted); font-size:17px; line-height:1.75; }
.nuru-collab-actions { flex:0 0 auto; display:flex; gap:12px; flex-wrap:wrap; }

/* News gateway */
.nuru-news-card {
    position:relative;
    min-height:430px;
    overflow:hidden;
    background:#222;
}
.nuru-news-card img { width:100%; height:430px; object-fit:cover; opacity:.67; transition:transform .4s ease; }
.nuru-news-card:hover img { transform:scale(1.035); }
.nuru-news-card__content {
    position:absolute;
    inset:auto 0 0 0;
    padding:35px;
    color:#fff;
    background:linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,0));
}
.nuru-news-card__content span { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.nuru-news-card__content h3 { margin:10px 0 8px; color:#fff; font-size:27px; }
.nuru-news-card__content p { margin:0; color:rgba(255,255,255,.82); line-height:1.65; }

/* CTA */
.nuru-cta .slogan-content-box .sec-title h2 { max-width:760px; }
.nuru-cta-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:28px; }
.nuru-link-light { color:#fff; text-decoration:underline; text-underline-offset:5px; font-weight:700; padding:14px 4px; }

/* Footer */
.nuru-footer-intro { max-width:370px; }
.nuru-footer-intro p { margin-top:18px; }
.nuru-footer-note { opacity:.72; font-size:13px; margin-top:18px; }

@media (max-width: 1199.98px) {
    .nuru-about-copy { padding-left:0; padding-top:45px; }
    .nuru-focus-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .nuru-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .nuru-purpose-content { padding:60px 45px; }
    .nuru-impact-wrap { gap:45px; }
}
@media (max-width: 767.98px) {
    .nuru-section { padding:80px 0; }
    .nuru-section-head { margin-bottom:38px; }
    .nuru-heading { font-size:38px; }
    .nuru-lead { font-size:16px; line-height:1.7; }
    .nuru-focus-grid,
    .nuru-values,
    .nuru-impact-wrap,
    .nuru-impact-metrics { grid-template-columns:1fr; }
    .nuru-focus-item { min-height:0; padding:30px 26px; }
    .nuru-focus-number { margin-bottom:25px; }
    .nuru-purpose-image { min-height:360px; }
    .nuru-purpose-content { padding:48px 28px; }
    .nuru-collab-card { display:block; padding:38px 28px; }
    .nuru-collab-actions { margin-top:28px; }
    .nuru-news-card, .nuru-news-card img { min-height:360px; height:360px; }
    .nuru-about-badge { left:15px; bottom:15px; }
    .nuru-team-grid .single-team-style1 { margin-bottom: 32px; }
}
/* ==================================================
   NURU BUTTON COLOUR OVERRIDE
   Must stay after the original template CSS
================================================== */

.btn-one,
.header-btn-style1 .btn-one,
.banner-style1__btns-box .btn-one {
    background: #062271 !important;
    background-color: #062271 !important;
    border-color: #062271 !important;
}

/* Donativo button animation/background layers */
.btn-one::before,
.btn-one::after,
.header-btn-style1 .btn-one::before,
.header-btn-style1 .btn-one::after,
.banner-style1__btns-box .btn-one::before,
.banner-style1__btns-box .btn-one::after {
    background: #062271 !important;
    background-color: #062271 !important;
}

.btn-one .txt,
.btn-one .txt i,
.header-btn-style1 .btn-one .txt,
.header-btn-style1 .btn-one .txt i {
    color: #ffffff !important;
}

/* Hover */
.btn-one:hover,
.header-btn-style1 .btn-one:hover,
.banner-style1__btns-box .btn-one:hover {
    background: #000000 !important;
    background-color: #000000 !important;
    border-color: #000000 !important;
}

.btn-one:hover::before,
.btn-one:hover::after,
.header-btn-style1 .btn-one:hover::before,
.header-btn-style1 .btn-one:hover::after {
    background: #000000 !important;
    background-color: #000000 !important;
}
.banner-style1__btns-box {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

/* ================================================================
   NURU HOMEPAGE — REVISED CLIENT-READY VERSION
   Simpler information architecture.
   Flat image paths: assets/images/file-name.ext
   ================================================================ */
.main-menu__list > li > a,
.header-btn-style1 .btn-one,
.header-btn-style1 .btn-one .txt,
.stricky-header .header-btn-style1 .btn-one,
.stricky-header .header-btn-style1 .btn-one .txt { white-space: nowrap; }
.header-btn-style1 .btn-one,
.stricky-header .header-btn-style1 .btn-one { min-width:168px;height:52px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center; }
.banner-style1__btns-box { display:flex;align-items:center;gap:14px;flex-wrap:wrap; }
.nuru-home-section{position:relative;padding:110px 0}.nuru-home-section--soft{background:var(--nuru-paper)}
.nuru-home-head{max-width:790px;margin-bottom:50px}.nuru-home-head--center{margin-left:auto;margin-right:auto;text-align:center}.nuru-home-head--center .nuru-heading,.nuru-home-head--center .nuru-lead{margin-left:auto;margin-right:auto}
.nuru-home-about-copy{padding-left:50px}.nuru-home-about-copy p{margin:20px 0 0;color:var(--nuru-muted);font-size:17px;line-height:1.9}.nuru-home-about-copy .btns-box{margin-top:30px}
.nuru-home-about-media{position:relative;min-height:560px}.nuru-home-about-media .main-image{position:absolute;inset:0 92px 68px 0;width:calc(100% - 92px);height:calc(100% - 68px);object-fit:cover}.nuru-home-about-media .small-image{position:absolute;right:0;bottom:0;width:245px;height:270px;object-fit:cover;border:10px solid #fff}.nuru-home-about-label{position:absolute;left:-18px;top:38px;max-width:195px;padding:20px 22px;background:#fff;border-bottom:4px solid var(--nuru-primary);box-shadow:0 18px 45px rgba(0,0,0,.10)}.nuru-home-about-label strong{display:block;color:var(--nuru-ink);font-size:20px}.nuru-home-about-label span{display:block;margin-top:6px;color:var(--nuru-muted);font-size:12px;line-height:1.55}
.nuru-home-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--nuru-line);border-left:1px solid var(--nuru-line)}.nuru-home-focus{min-height:255px;padding:34px 30px;border-right:1px solid var(--nuru-line);border-bottom:1px solid var(--nuru-line);background:#fff}.nuru-home-focus .number{display:block;margin-bottom:38px;color:var(--nuru-primary);font-size:12px;font-weight:800;letter-spacing:.14em}.nuru-home-focus h3{margin:0 0 12px;color:var(--nuru-ink);font-size:23px;line-height:1.25}.nuru-home-focus p{margin:0;color:var(--nuru-muted);line-height:1.7}
.nuru-home-purpose{overflow:hidden}.nuru-home-purpose__image{min-height:570px;height:100%;background:url('https://nurucommunity.org/wp-content/uploads/2026/09/s1.jpeg') center/cover no-repeat}.nuru-home-purpose__content{height:100%;padding:78px 68px;background:var(--nuru-primary);color:#fff}.nuru-home-purpose__content .nuru-kicker,.nuru-home-purpose__content .nuru-heading{color:#fff}.nuru-home-purpose__item{margin-top:38px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18)}.nuru-home-purpose__item span{display:block;color:rgba(255,255,255,.65);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.nuru-home-purpose__item p{margin:11px 0 0;color:rgba(255,255,255,.85);font-size:18px;line-height:1.75}
.nuru-programmes-grid{margin-top:10px}.nuru-programme-card{height:100%;overflow:hidden;background:#fff;border:1px solid var(--nuru-line)}.nuru-programme-card__image{overflow:hidden}.nuru-programme-card__image img{width:100%;height:275px;object-fit:cover;transition:transform .35s ease}.nuru-programme-card:hover .nuru-programme-card__image img{transform:scale(1.03)}.nuru-programme-card__body{padding:28px 28px 30px}.nuru-programme-card__meta{margin-bottom:14px;color:var(--nuru-primary);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.nuru-programme-card h3{margin:0;color:var(--nuru-ink);font-size:24px;line-height:1.3}.nuru-programme-card p{margin:14px 0 0;color:var(--nuru-muted);line-height:1.72}.nuru-programme-card a{display:inline-flex;margin-top:22px;color:var(--nuru-primary);font-weight:800}
.nuru-impact-section{position:relative;padding:95px 0;background:var(--nuru-ink);overflow:hidden}.nuru-impact-section:after{content:"";position:absolute;right:-100px;top:-120px;width:380px;height:380px;border-radius:50%;border:82px solid rgba(255,255,255,.035)}.nuru-impact-section .nuru-kicker,.nuru-impact-section .nuru-heading{color:#fff}.nuru-impact-section .nuru-lead{color:rgba(255,255,255,.70)}.nuru-impact-stats{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:46px;border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}.nuru-impact-stat{min-height:170px;padding:28px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.nuru-impact-stat .number{display:block;color:#fff;font-size:42px;font-weight:800;line-height:1}.nuru-impact-stat .label{display:block;margin-top:18px;color:rgba(255,255,255,.72);font-size:14px;line-height:1.5}.nuru-impact-actions{margin-top:32px}
.nuru-partner-strip{padding:78px 0;background:var(--nuru-paper)}.nuru-partner-strip__inner{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:50px 54px;background:#fff;border:1px solid var(--nuru-line)}.nuru-partner-strip__copy{max-width:760px}.nuru-partner-strip__copy p{margin:16px 0 0;color:var(--nuru-muted);font-size:17px;line-height:1.75}
.nuru-home-news-grid{margin-top:44px}.nuru-home-news-card{height:100%;overflow:hidden;background:#fff;border:1px solid var(--nuru-line)}.nuru-home-news-card img{width:100%;height:250px;object-fit:cover}.nuru-home-news-card__body{padding:25px 26px 28px}.nuru-home-news-card__meta{margin-bottom:12px;color:var(--nuru-primary);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.nuru-home-news-card h3{margin:0;color:var(--nuru-ink);font-size:22px;line-height:1.35}.nuru-home-news-card p{margin:13px 0 0;color:var(--nuru-muted);line-height:1.7}.nuru-home-news-card a{display:inline-flex;margin-top:20px;color:var(--nuru-primary);font-weight:800}.nuru-home-news-more{margin-top:34px}
.nuru-home-final-cta{padding:90px 0;background:var(--nuru-primary)}.nuru-home-final-cta .nuru-kicker,.nuru-home-final-cta .nuru-heading{color:#fff}.nuru-home-final-cta p{max-width:760px;margin:20px 0 0;color:rgba(255,255,255,.82);font-size:18px;line-height:1.8}.nuru-home-final-cta .btns-box{margin-top:30px}
@media(max-width:1199.98px){.nuru-home-about-copy{padding-left:0;padding-top:42px}.nuru-home-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nuru-impact-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.nuru-partner-strip__inner{display:block}.nuru-partner-strip__inner .btn-one{margin-top:28px}}
@media(max-width:767.98px){.nuru-home-section{padding:78px 0}.nuru-home-about-media{min-height:460px}.nuru-home-about-media .main-image{inset:0 42px 55px 0;width:calc(100% - 42px);height:calc(100% - 55px)}.nuru-home-about-media .small-image{width:175px;height:200px;border-width:7px}.nuru-home-about-label{left:10px;top:18px}.nuru-home-focus-grid,.nuru-impact-stats{grid-template-columns:1fr}.nuru-home-purpose__image{min-height:350px}.nuru-home-purpose__content{padding:48px 28px}.nuru-partner-strip__inner{padding:36px 28px}}


/* Our Partners */
.nuru-partners-section {
    padding: 88px 0;
    background: var(--nuru-paper);
}
.nuru-partners-section .nuru-home-head {
    margin-bottom: 38px;
}
.nuru-partners-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border-top: 1px solid var(--nuru-line);
    border-left: 1px solid var(--nuru-line);
    background: #fff;
}
.nuru-partner-logo {
    min-height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
    border-right: 1px solid var(--nuru-line);
    border-bottom: 1px solid var(--nuru-line);
}
.nuru-partner-logo img {
    display: block;
    max-width: 150px;
    max-height: 72px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: .72;
    transition: filter .25s ease, opacity .25s ease, transform .25s ease;
}
.nuru-partner-logo:hover img {
    filter: grayscale(0%);
    opacity: 1;
    transform: translateY(-2px);
}
@media (max-width: 991.98px) {
    .nuru-partners-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 575.98px) {
    .nuru-partners-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .nuru-partner-logo {
        min-height: 120px;
        padding: 22px;
    }
}


/* ================================================================
   NURU ABOUT PAGE — REVISED
   Inspired by the supplied Donativo About-page variations:
   image collage + floating information card, centered feature row,
   team grid and partner strip.
   ================================================================ */

.nuru-about-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 88px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-about-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    top: -130px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    border: 82px solid rgba(6,34,113,.045);
}
.nuru-about-breadcrumb {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-about-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-about-hero h1 {
    position: relative;
    z-index: 2;
    max-width: 900px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5.5vw, 78px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.nuru-about-hero p {
    position: relative;
    z-index: 2;
    max-width: 780px;
    margin: 26px 0 0;
    color: var(--nuru-muted);
    font-size: 19px;
    line-height: 1.8;
}

/* Who we are — image collage inspired by supplied template */
.nuru-about-intro {
    padding: 120px 0;
}
.nuru-about-intro__media {
    position: relative;
    min-height: 610px;
}
.nuru-about-intro__media .main {
    position: absolute;
    inset: 0 92px 68px 0;
    width: calc(100% - 92px);
    height: calc(100% - 68px);
    object-fit: cover;
}
.nuru-about-intro__media .small {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 250px;
    height: 285px;
    object-fit: cover;
    border: 10px solid #fff;
}
.nuru-about-intro__badge {
    position: absolute;
    left: -20px;
    top: 42px;
    width: 205px;
    padding: 22px 24px;
    background: #fff;
    border-bottom: 4px solid var(--nuru-primary);
    box-shadow: 0 20px 48px rgba(0,0,0,.10);
}
.nuru-about-intro__badge strong {
    display: block;
    color: var(--nuru-primary);
    font-size: 22px;
    line-height: 1.2;
}
.nuru-about-intro__badge span {
    display: block;
    margin-top: 8px;
    color: var(--nuru-muted);
    font-size: 13px;
    line-height: 1.55;
}
.nuru-about-intro__copy {
    padding-left: 52px;
}
.nuru-about-intro__copy p {
    margin: 20px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.9;
}
.nuru-about-points {
    margin: 30px 0 0;
    padding: 0;
    list-style: none;
}
.nuru-about-points li {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-top: 15px;
    color: var(--nuru-ink);
    line-height: 1.65;
}
.nuru-about-points .icon {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: rgba(6,34,113,.08);
    color: var(--nuru-primary);
}

/* Three-principle feature row inspired by template features section */
.nuru-about-principles {
    position: relative;
    padding: 92px 0;
    overflow: hidden;
    background: var(--nuru-paper);
}
.nuru-about-principles::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 28%, rgba(6,34,113,.045) 0 3px, transparent 4px) 0 0/28px 28px;
    opacity: .32;
    pointer-events: none;
}
.nuru-about-principles .container {
    position: relative;
    z-index: 2;
}
.nuru-about-principles-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
}
.nuru-about-principle {
    padding: 24px 42px;
    text-align: center;
    border-right: 1px solid var(--nuru-line);
}
.nuru-about-principle:last-child {
    border-right: 0;
}
.nuru-about-principle__icon {
    width: 74px;
    height: 74px;
    margin: 0 auto 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: var(--nuru-primary);
    color: #fff;
    font-size: 28px;
}
.nuru-about-principle h3 {
    margin: 0 0 12px;
    color: var(--nuru-ink);
    font-size: 23px;
}
.nuru-about-principle p {
    max-width: 360px;
    margin: 0 auto;
    color: var(--nuru-muted);
    line-height: 1.72;
}

/* Mission and vision */
.nuru-about-purpose {
    overflow: hidden;
}
.nuru-about-purpose__image {
    min-height: 560px;
    height: 100%;
    background: url('../images/about-mission.jpg') center/cover no-repeat;
}
.nuru-about-purpose__content {
    min-height: 560px;
    height: 100%;
    padding: 76px 68px;
    background: var(--nuru-primary);
}
.nuru-about-purpose__content .nuru-kicker,
.nuru-about-purpose__content .nuru-heading {
    color: #fff;
}
.nuru-about-purpose__item {
    margin-top: 36px;
    padding-top: 27px;
    border-top: 1px solid rgba(255,255,255,.18);
}
.nuru-about-purpose__item span {
    display: block;
    color: rgba(255,255,255,.65);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.nuru-about-purpose__item p {
    margin: 11px 0 0;
    color: rgba(255,255,255,.85);
    font-size: 18px;
    line-height: 1.75;
}

/* Values */
.nuru-about-values {
    padding: 110px 0;
}
.nuru-about-values-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    border-top: 1px solid var(--nuru-line);
    border-left: 1px solid var(--nuru-line);
}
.nuru-about-value {
    min-height: 235px;
    padding: 32px 30px;
    border-right: 1px solid var(--nuru-line);
    border-bottom: 1px solid var(--nuru-line);
    background: #fff;
}
.nuru-about-value .number {
    display: block;
    margin-bottom: 34px;
    color: var(--nuru-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}
.nuru-about-value h3 {
    margin: 0 0 11px;
    color: var(--nuru-ink);
    font-size: 22px;
}
.nuru-about-value p {
    margin: 0;
    color: var(--nuru-muted);
    line-height: 1.7;
}

/* Team — adapted from supplied template team cards */
.nuru-about-team {
    padding: 110px 0;
    background: var(--nuru-paper);
}
.nuru-about-team-grid {
    margin-top: 44px;
}
.nuru-about-team .single-team-style1 {
    margin-bottom: 0;
}
.nuru-about-team .single-team-style1 .img-holder .inner {
    overflow: hidden;
}
.nuru-about-team .single-team-style1 .img-holder img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
}
.nuru-about-team .single-team-style1 .title-box {
    padding-top: 20px;
}
.nuru-about-team .single-team-style1 .title-box h3 {
    margin: 0 0 5px;
    color: var(--nuru-ink);
    font-size: 21px;
    line-height: 1.25;
}
.nuru-about-team .single-team-style1 .title-box h5 {
    margin: 0;
    color: var(--nuru-primary);
    font-size: 13px;
    font-weight: 600;
}
.nuru-team-bio {
    max-width: 340px;
    margin: 12px auto 0;
    color: var(--nuru-muted);
    font-size: 14px;
    line-height: 1.7;
}
.nuru-team-bio p {
    margin: 0;
}

/* Partners copied as a shared visual system from homepage */
.nuru-about-partners {
    padding: 88px 0;
    background: #fff;
}

/* Final CTA — one action only */
.nuru-about-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-about-cta .nuru-kicker,
.nuru-about-cta .nuru-heading {
    color: #fff;
}
.nuru-about-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-about-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 1199.98px) {
    .nuru-about-intro__copy {
        padding-left: 0;
        padding-top: 45px;
    }
    .nuru-about-values-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}
@media (max-width: 767.98px) {
    .nuru-about-hero {
        padding: 66px 0 70px;
    }
    .nuru-about-hero h1 {
        font-size: 44px;
    }
    .nuru-about-hero p {
        font-size: 17px;
    }
    .nuru-about-intro {
        padding: 80px 0;
    }
    .nuru-about-intro__media {
        min-height: 470px;
    }
    .nuru-about-intro__media .main {
        inset: 0 45px 55px 0;
        width: calc(100% - 45px);
        height: calc(100% - 55px);
    }
    .nuru-about-intro__media .small {
        width: 175px;
        height: 205px;
        border-width: 7px;
    }
    .nuru-about-intro__badge {
        left: 10px;
        top: 20px;
    }
    .nuru-about-principles-grid,
    .nuru-about-values-grid {
        grid-template-columns: 1fr;
    }
    .nuru-about-principle {
        padding: 30px 18px;
        border-right: 0;
        border-bottom: 1px solid var(--nuru-line);
    }
    .nuru-about-principle:last-child {
        border-bottom: 0;
    }
    .nuru-about-purpose__image {
        min-height: 350px;
    }
    .nuru-about-purpose__content {
        min-height: 0;
        padding: 48px 28px;
    }
}


/* ================================================================
   NURU OUR WORK PAGE — REVISED
   Simpler structure, with visual inspiration from supplied template.
   All images use assets/images/file-name.ext
   ================================================================ */

.nuru-work-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 88px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-work-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    top: -120px;
    width: 370px;
    height: 370px;
    border-radius: 50%;
    border: 80px solid rgba(6,34,113,.045);
}
.nuru-work-breadcrumb {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-work-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-work-hero h1 {
    position: relative;
    z-index: 2;
    max-width: 930px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5.5vw, 78px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.nuru-work-hero p {
    position: relative;
    z-index: 2;
    max-width: 790px;
    margin: 26px 0 0;
    color: var(--nuru-muted);
    font-size: 19px;
    line-height: 1.8;
}

/* Intro */
.nuru-work-intro {
    padding: 110px 0;
}
.nuru-work-intro__copy {
    max-width: 760px;
}
.nuru-work-intro__copy p {
    margin: 20px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.9;
}
.nuru-work-intro__image {
    min-height: 470px;
}
.nuru-work-intro__image img {
    width: 100%;
    height: 470px;
    object-fit: cover;
}

/* Focus area composition — inspired by the template's central image + surrounding cards */
.nuru-focus-showcase {
    position: relative;
    padding: 105px 0 115px;
    background: var(--nuru-paper);
    overflow: hidden;
}
.nuru-focus-showcase__stage {
    position: relative;
    min-height: 660px;
    margin-top: 50px;
}
.nuru-focus-showcase__image {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 420px;
    height: 520px;
    transform: translate(-50%, -50%);
    overflow: hidden;
}
.nuru-focus-showcase__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.nuru-focus-card {
    position: absolute;
    width: 340px;
    min-height: 170px;
    padding: 28px 28px 26px;
    background: #fff;
    border: 1px solid var(--nuru-line);
    box-shadow: 0 18px 45px rgba(0,0,0,.06);
}
.nuru-focus-card:nth-child(2) { left: 0; top: 30px; }
.nuru-focus-card:nth-child(3) { left: 0; top: 245px; }
.nuru-focus-card:nth-child(4) { left: 0; top: 460px; }
.nuru-focus-card:nth-child(5) { right: 0; top: 30px; }
.nuru-focus-card:nth-child(6) { right: 0; top: 245px; }
.nuru-focus-card:nth-child(7) { right: 0; top: 460px; }

.nuru-focus-card__top {
    display: flex;
    align-items: center;
    gap: 16px;
}
.nuru-focus-card__number {
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: var(--nuru-primary);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}
.nuru-focus-card h3 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: 20px;
    line-height: 1.3;
}
.nuru-focus-card p {
    margin: 14px 0 0;
    color: var(--nuru-muted);
    font-size: 14px;
    line-height: 1.7;
}

/* Programmes */
.nuru-work-programmes {
    padding: 110px 0;
}
.nuru-work-programme-card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--nuru-line);
}
.nuru-work-programme-card__image {
    overflow: hidden;
}
.nuru-work-programme-card__image img {
    width: 100%;
    height: 285px;
    object-fit: cover;
    transition: transform .35s ease;
}
.nuru-work-programme-card:hover .nuru-work-programme-card__image img {
    transform: scale(1.03);
}
.nuru-work-programme-card__body {
    padding: 28px 28px 30px;
}
.nuru-work-programme-card__meta {
    margin-bottom: 13px;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.nuru-work-programme-card h3 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: 24px;
    line-height: 1.3;
}
.nuru-work-programme-card p {
    margin: 14px 0 0;
    color: var(--nuru-muted);
    line-height: 1.72;
}
.nuru-work-programme-card a {
    display: inline-flex;
    margin-top: 22px;
    color: var(--nuru-primary);
    font-weight: 800;
}
.nuru-work-programme-card a:hover {
    color: var(--nuru-black);
}

/* How we work — three-feature variation */
.nuru-work-method {
    position: relative;
    padding: 95px 0;
    overflow: hidden;
    background: var(--nuru-paper);
}
.nuru-work-method-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    margin-top: 42px;
}
.nuru-work-method-item {
    padding: 24px 42px;
    text-align: center;
    border-right: 1px solid var(--nuru-line);
}
.nuru-work-method-item:last-child {
    border-right: 0;
}
.nuru-work-method-icon {
    width: 74px;
    height: 74px;
    margin: 0 auto 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: var(--nuru-primary);
    color: #fff;
    font-size: 28px;
}
.nuru-work-method-item h3 {
    margin: 0 0 12px;
    color: var(--nuru-ink);
    font-size: 23px;
}
.nuru-work-method-item p {
    max-width: 360px;
    margin: 0 auto;
    color: var(--nuru-muted);
    line-height: 1.72;
}

/* CTA */
.nuru-work-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-work-cta .nuru-kicker,
.nuru-work-cta .nuru-heading {
    color: #fff;
}
.nuru-work-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-work-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 1199.98px) {
    .nuru-focus-showcase__stage {
        display: grid;
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 18px;
        min-height: 0;
    }
    .nuru-focus-showcase__image {
        position: relative;
        left: auto;
        top: auto;
        width: 100%;
        height: 420px;
        transform: none;
        grid-column: 1 / -1;
    }
    .nuru-focus-card {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        width: 100%;
        min-height: 0;
    }
}
@media (max-width: 767.98px) {
    .nuru-work-hero {
        padding: 66px 0 70px;
    }
    .nuru-work-hero h1 {
        font-size: 44px;
    }
    .nuru-work-hero p {
        font-size: 17px;
    }
    .nuru-work-intro,
    .nuru-work-programmes {
        padding: 80px 0;
    }
    .nuru-work-intro__image,
    .nuru-work-intro__image img {
        min-height: 360px;
        height: 360px;
    }
    .nuru-focus-showcase {
        padding: 78px 0;
    }
    .nuru-focus-showcase__stage,
    .nuru-work-method-grid {
        grid-template-columns: 1fr;
    }
    .nuru-work-method-item {
        padding: 30px 18px;
        border-right: 0;
        border-bottom: 1px solid var(--nuru-line);
    }
    .nuru-work-method-item:last-child {
        border-bottom: 0;
    }
}


/* ================================================================
   NURU SINGLE PROGRAMME PAGE
   Simple programme template for WordPress later.
   Structure follows: Problem → What We Do → Who We Serve → Expected Impact.
   ================================================================ */

.nuru-programme-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 88px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-programme-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    top: -120px;
    width: 370px;
    height: 370px;
    border-radius: 50%;
    border: 80px solid rgba(6,34,113,.045);
}
.nuru-programme-breadcrumb {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-programme-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-programme-hero h1 {
    position: relative;
    z-index: 2;
    max-width: 920px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5.5vw, 76px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.nuru-programme-hero p {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 26px 0 0;
    color: var(--nuru-muted);
    font-size: 19px;
    line-height: 1.8;
}

/* Intro */
.nuru-programme-intro {
    padding: 110px 0;
}
.nuru-programme-intro__media {
    position: relative;
    min-height: 540px;
}
.nuru-programme-intro__media img {
    width: 100%;
    height: 540px;
    object-fit: cover;
}
.nuru-programme-intro__label {
    position: absolute;
    left: -18px;
    bottom: 30px;
    max-width: 220px;
    padding: 22px 24px;
    background: #fff;
    border-bottom: 4px solid var(--nuru-primary);
    box-shadow: 0 18px 45px rgba(0,0,0,.10);
}
.nuru-programme-intro__label span {
    display: block;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.nuru-programme-intro__label strong {
    display: block;
    margin-top: 8px;
    color: var(--nuru-ink);
    font-size: 20px;
    line-height: 1.3;
}
.nuru-programme-intro__copy {
    padding-left: 52px;
}
.nuru-programme-intro__copy p {
    margin: 20px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.9;
}

/* Four programme sections */
.nuru-programme-section {
    padding: 100px 0;
}
.nuru-programme-section--soft {
    background: var(--nuru-paper);
}
.nuru-programme-section__copy {
    max-width: 760px;
}
.nuru-programme-section__copy p {
    margin: 20px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.9;
}
.nuru-programme-list {
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}
.nuru-programme-list li {
    position: relative;
    margin-top: 13px;
    padding-left: 24px;
    color: var(--nuru-ink);
    line-height: 1.7;
}
.nuru-programme-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .72em;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--nuru-primary);
}
.nuru-programme-side-image {
    min-height: 430px;
}
.nuru-programme-side-image img {
    width: 100%;
    height: 430px;
    object-fit: cover;
}

/* Expected impact blocks */
.nuru-programme-impact-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    border-top: 1px solid var(--nuru-line);
    border-left: 1px solid var(--nuru-line);
    margin-top: 38px;
}
.nuru-programme-impact-item {
    min-height: 210px;
    padding: 30px 28px;
    border-right: 1px solid var(--nuru-line);
    border-bottom: 1px solid var(--nuru-line);
    background: #fff;
}
.nuru-programme-impact-item .number {
    display: block;
    margin-bottom: 30px;
    color: var(--nuru-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}
.nuru-programme-impact-item h3 {
    margin: 0 0 10px;
    color: var(--nuru-ink);
    font-size: 21px;
}
.nuru-programme-impact-item p {
    margin: 0;
    color: var(--nuru-muted);
    line-height: 1.7;
}

/* Other programmes */
.nuru-other-programmes {
    padding: 105px 0;
    background: var(--nuru-paper);
}
.nuru-other-programme-card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--nuru-line);
}
.nuru-other-programme-card img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}
.nuru-other-programme-card__body {
    padding: 25px 26px 28px;
}
.nuru-other-programme-card__meta {
    margin-bottom: 12px;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.nuru-other-programme-card h3 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: 22px;
    line-height: 1.35;
}
.nuru-other-programme-card p {
    margin: 13px 0 0;
    color: var(--nuru-muted);
    line-height: 1.7;
}
.nuru-other-programme-card a {
    display: inline-flex;
    margin-top: 20px;
    color: var(--nuru-primary);
    font-weight: 800;
}

/* CTA */
.nuru-programme-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-programme-cta .nuru-kicker,
.nuru-programme-cta .nuru-heading {
    color: #fff;
}
.nuru-programme-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-programme-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 1199.98px) {
    .nuru-programme-intro__copy {
        padding-left: 0;
        padding-top: 45px;
    }
}
@media (max-width: 767.98px) {
    .nuru-programme-hero {
        padding: 66px 0 70px;
    }
    .nuru-programme-hero h1 {
        font-size: 44px;
    }
    .nuru-programme-hero p {
        font-size: 17px;
    }
    .nuru-programme-intro,
    .nuru-programme-section,
    .nuru-other-programmes {
        padding: 78px 0;
    }
    .nuru-programme-intro__media,
    .nuru-programme-intro__media img,
    .nuru-programme-side-image,
    .nuru-programme-side-image img {
        min-height: 350px;
        height: 350px;
    }
    .nuru-programme-intro__label {
        left: 12px;
        bottom: 15px;
    }
    .nuru-programme-impact-grid {
        grid-template-columns: 1fr;
    }
}


/* ================================================================
   NURU OUR IMPACT PAGE
   Built for dynamic WordPress impact categories + entries later.
   No invented statistics in the static prototype.
   ================================================================ */

.nuru-impact-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 88px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-impact-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    top: -120px;
    width: 370px;
    height: 370px;
    border-radius: 50%;
    border: 80px solid rgba(6,34,113,.045);
}
.nuru-impact-breadcrumb {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-impact-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-impact-hero h1 {
    position: relative;
    z-index: 2;
    max-width: 930px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5.5vw, 78px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.nuru-impact-hero p {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 26px 0 0;
    color: var(--nuru-muted);
    font-size: 19px;
    line-height: 1.8;
}

/* Summary counters - inspired by template fact counter section */
.nuru-impact-summary {
    position: relative;
    padding: 95px 0;
    overflow: hidden;
    background: var(--nuru-ink);
}
.nuru-impact-summary::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(255,255,255,.035) 0 3px, transparent 4px) 0 0/30px 30px;
    opacity: .45;
}
.nuru-impact-summary .container {
    position: relative;
    z-index: 2;
}
.nuru-impact-summary .nuru-kicker,
.nuru-impact-summary .nuru-heading {
    color: #fff;
}
.nuru-impact-summary .nuru-lead {
    color: rgba(255,255,255,.70);
}
.nuru-impact-summary-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    margin-top: 44px;
    border-top: 1px solid rgba(255,255,255,.16);
    border-left: 1px solid rgba(255,255,255,.16);
}
.nuru-impact-summary-item {
    min-height: 170px;
    padding: 30px 28px;
    border-right: 1px solid rgba(255,255,255,.16);
    border-bottom: 1px solid rgba(255,255,255,.16);
}
.nuru-impact-summary-item strong {
    display: block;
    color: #fff;
    font-size: 44px;
    line-height: 1;
}
.nuru-impact-summary-item span {
    display: block;
    margin-top: 16px;
    color: rgba(255,255,255,.74);
    font-size: 14px;
    line-height: 1.5;
}

/* Impact category blocks */
.nuru-impact-records {
    padding: 110px 0;
}
.nuru-impact-category + .nuru-impact-category {
    margin-top: 72px;
}
.nuru-impact-category__head {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 30px;
    align-items: end;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--nuru-line);
}
.nuru-impact-category__head h2 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(30px,3vw,44px);
    line-height: 1.15;
    letter-spacing: -.025em;
}
.nuru-impact-category__head p {
    max-width: 640px;
    margin: 14px 0 0;
    color: var(--nuru-muted);
    line-height: 1.75;
}
.nuru-impact-category__total {
    text-align: right;
}
.nuru-impact-category__total strong {
    display: block;
    color: var(--nuru-primary);
    font-size: 38px;
    line-height: 1;
}
.nuru-impact-category__total span {
    display: block;
    margin-top: 8px;
    color: var(--nuru-muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
}

.nuru-impact-entry-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    margin-top: 26px;
}
.nuru-impact-entry {
    padding: 28px 30px;
    border: 1px solid var(--nuru-line);
    background: #fff;
}
.nuru-impact-entry__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 15px;
    margin-bottom: 13px;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .1em;
}
.nuru-impact-entry h3 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: 22px;
    line-height: 1.35;
}
.nuru-impact-entry p {
    margin: 12px 0 0;
    color: var(--nuru-muted);
    line-height: 1.72;
}
.nuru-impact-entry__number {
    display: inline-flex;
    margin-top: 20px;
    align-items: baseline;
    gap: 8px;
}
.nuru-impact-entry__number strong {
    color: var(--nuru-primary);
    font-size: 28px;
}
.nuru-impact-entry__number span {
    color: var(--nuru-muted);
    font-size: 13px;
}

/* Admin model note */
.nuru-impact-model {
    padding: 92px 0;
    background: var(--nuru-paper);
}
.nuru-impact-model__box {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 55px;
    align-items: center;
}
.nuru-impact-model__copy p {
    margin: 19px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.8;
}
.nuru-impact-model__steps {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    border-top: 1px solid var(--nuru-line);
    border-left: 1px solid var(--nuru-line);
}
.nuru-impact-model__step {
    min-height: 170px;
    padding: 26px;
    background: #fff;
    border-right: 1px solid var(--nuru-line);
    border-bottom: 1px solid var(--nuru-line);
}
.nuru-impact-model__step span {
    display: block;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.nuru-impact-model__step strong {
    display: block;
    margin-top: 13px;
    color: var(--nuru-ink);
    font-size: 18px;
    line-height: 1.45;
}
.nuru-impact-model__step p {
    margin: 10px 0 0;
    color: var(--nuru-muted);
    font-size: 14px;
    line-height: 1.65;
}

/* CTA */
.nuru-impact-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-impact-cta .nuru-kicker,
.nuru-impact-cta .nuru-heading {
    color: #fff;
}
.nuru-impact-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-impact-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 991.98px) {
    .nuru-impact-summary-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .nuru-impact-model__box {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 767.98px) {
    .nuru-impact-hero {
        padding: 66px 0 70px;
    }
    .nuru-impact-hero h1 {
        font-size: 44px;
    }
    .nuru-impact-summary,
    .nuru-impact-records,
    .nuru-impact-model {
        padding: 78px 0;
    }
    .nuru-impact-summary-grid,
    .nuru-impact-entry-grid,
    .nuru-impact-model__steps {
        grid-template-columns: 1fr;
    }
    .nuru-impact-category__head {
        grid-template-columns: 1fr;
    }
    .nuru-impact-category__total {
        text-align: left;
    }
}


/* ================================================================
   NURU NEWS & STORIES ARCHIVE — SIMPLIFIED
   Page structure: heading + subtext → dynamic post grid → partner CTA.
   ================================================================ */

.nuru-news-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 76px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-news-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    top: -120px;
    width: 370px;
    height: 370px;
    border-radius: 50%;
    border: 80px solid rgba(6,34,113,.045);
}
.nuru-news-breadcrumb {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-news-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-news-hero h1 {
    position: relative;
    z-index: 2;
    max-width: 880px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5.5vw, 76px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.nuru-news-hero p {
    position: relative;
    z-index: 2;
    max-width: 760px;
    margin: 24px 0 0;
    color: var(--nuru-muted);
    font-size: 18px;
    line-height: 1.8;
}

.nuru-news-listing {
    padding: 105px 0 115px;
}
.nuru-news-grid {
    margin-top: 0;
}
.nuru-news-card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--nuru-line);
    transition: transform .25s ease, box-shadow .25s ease;
}
.nuru-news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 48px rgba(0,0,0,.07);
}
.nuru-news-card__image {
    overflow: hidden;
}
.nuru-news-card__image img {
    width: 100%;
    height: 285px;
    object-fit: cover;
    transition: transform .35s ease;
}
.nuru-news-card:hover .nuru-news-card__image img {
    transform: scale(1.03);
}
.nuru-news-card__body {
    padding: 27px 28px 30px;
}
.nuru-news-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-bottom: 13px;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.nuru-news-card h2 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: 24px;
    line-height: 1.32;
}
.nuru-news-card p {
    margin: 14px 0 0;
    color: var(--nuru-muted);
    line-height: 1.72;
}
.nuru-news-card a {
    display: inline-flex;
    margin-top: 21px;
    color: var(--nuru-primary);
    font-weight: 800;
}
.nuru-news-card a:hover {
    color: var(--nuru-black);
}

.nuru-news-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 48px;
}
.nuru-news-pagination a,
.nuru-news-pagination span {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--nuru-line);
    background: #fff;
    color: var(--nuru-ink);
    font-weight: 700;
}
.nuru-news-pagination .current,
.nuru-news-pagination a:hover {
    background: var(--nuru-primary);
    border-color: var(--nuru-primary);
    color: #fff;
}

.nuru-news-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-news-cta .nuru-kicker,
.nuru-news-cta .nuru-heading {
    color: #fff;
}
.nuru-news-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-news-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 767.98px) {
    .nuru-news-hero {
        padding: 66px 0 68px;
    }
    .nuru-news-hero h1 {
        font-size: 44px;
    }
    .nuru-news-listing {
        padding: 78px 0 85px;
    }
    .nuru-news-card__image img {
        height: 240px;
    }
}


/* ================================================================
   NURU SINGLE NEWS / STORY — SIMPLIFIED
   Page structure: title/meta → cover image → article → related posts → partner CTA.
   ================================================================ */

.nuru-story-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 74px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-story-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-story-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-story-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    margin-bottom: 18px;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.nuru-story-hero h1 {
    max-width: 950px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(44px, 5.4vw, 74px);
    line-height: 1.03;
    letter-spacing: -.04em;
}
.nuru-story-hero p {
    max-width: 800px;
    margin: 24px 0 0;
    color: var(--nuru-muted);
    font-size: 18px;
    line-height: 1.8;
}

.nuru-story-cover {
    padding: 0 0 90px;
    background: var(--nuru-paper);
}
.nuru-story-cover img {
    width: 100%;
    height: 620px;
    object-fit: cover;
}

.nuru-story-article-wrap {
    padding: 95px 0 105px;
}
.nuru-story-article {
    max-width: 820px;
    margin: 0 auto;
}
.nuru-story-article p {
    margin: 0 0 24px;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.95;
}
.nuru-story-article h2 {
    margin: 48px 0 20px;
    color: var(--nuru-ink);
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.2;
    letter-spacing: -.02em;
}
.nuru-story-article h3 {
    margin: 34px 0 16px;
    color: var(--nuru-ink);
    font-size: 24px;
    line-height: 1.3;
}
.nuru-story-article blockquote {
    margin: 38px 0;
    padding: 28px 30px;
    border-left: 4px solid var(--nuru-primary);
    background: var(--nuru-paper);
    color: var(--nuru-ink);
    font-size: 20px;
    line-height: 1.7;
    font-weight: 600;
}
.nuru-story-inline-image {
    margin: 38px 0;
}
.nuru-story-inline-image img {
    width: 100%;
    height: 430px;
    object-fit: cover;
}
.nuru-story-inline-image figcaption {
    margin-top: 10px;
    color: var(--nuru-muted);
    font-size: 13px;
    line-height: 1.6;
}

.nuru-story-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    margin-top: 52px;
    padding-top: 28px;
    border-top: 1px solid var(--nuru-line);
}
.nuru-story-back {
    color: var(--nuru-primary);
    font-weight: 800;
}
.nuru-story-share {
    display: flex;
    gap: 8px;
}
.nuru-story-share a {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--nuru-line);
    color: var(--nuru-primary);
}
.nuru-story-share a:hover {
    background: var(--nuru-primary);
    border-color: var(--nuru-primary);
    color: #fff;
}

/* Related posts */
.nuru-related-news {
    padding: 100px 0;
    background: var(--nuru-paper);
}
.nuru-related-news-grid {
    margin-top: 42px;
}
.nuru-related-news-card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--nuru-line);
}
.nuru-related-news-card img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}
.nuru-related-news-card__body {
    padding: 24px 25px 27px;
}
.nuru-related-news-card__meta {
    margin-bottom: 11px;
    color: var(--nuru-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.nuru-related-news-card h3 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: 21px;
    line-height: 1.35;
}
.nuru-related-news-card a {
    display: inline-flex;
    margin-top: 18px;
    color: var(--nuru-primary);
    font-weight: 800;
}

/* CTA */
.nuru-story-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-story-cta .nuru-kicker,
.nuru-story-cta .nuru-heading {
    color: #fff;
}
.nuru-story-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-story-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 767.98px) {
    .nuru-story-hero {
        padding: 66px 0 64px;
    }
    .nuru-story-hero h1 {
        font-size: 42px;
    }
    .nuru-story-cover {
        padding-bottom: 65px;
    }
    .nuru-story-cover img {
        height: 350px;
    }
    .nuru-story-article-wrap,
    .nuru-related-news {
        padding: 75px 0;
    }
    .nuru-story-inline-image img {
        height: 280px;
    }
    .nuru-story-bottom {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* ================================================================
   NURU GET INVOLVED — REVISED
   Simple structure: intro → ways to get involved → enquiry form.
   ================================================================ */

.nuru-involved-hero {
    position: relative;
    overflow: hidden;
    padding: 82px 0 78px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}
.nuru-involved-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    top: -120px;
    width: 370px;
    height: 370px;
    border-radius: 50%;
    border: 80px solid rgba(6,34,113,.045);
}
.nuru-involved-breadcrumb {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--nuru-muted);
    font-size: 14px;
}
.nuru-involved-breadcrumb a {
    color: var(--nuru-primary);
    font-weight: 700;
}
.nuru-involved-hero h1 {
    position: relative;
    z-index: 2;
    max-width: 900px;
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5.5vw, 76px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.nuru-involved-hero p {
    position: relative;
    z-index: 2;
    max-width: 780px;
    margin: 24px 0 0;
    color: var(--nuru-muted);
    font-size: 18px;
    line-height: 1.8;
}

/* Intro */
.nuru-involved-intro {
    padding: 110px 0;
}
.nuru-involved-intro__image {
    min-height: 500px;
}
.nuru-involved-intro__image img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}
.nuru-involved-intro__copy {
    padding-left: 50px;
}
.nuru-involved-intro__copy p {
    margin: 20px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.9;
}

/* Ways */
.nuru-involved-ways {
    padding: 100px 0;
    background: var(--nuru-paper);
}
.nuru-involved-ways-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    border-top: 1px solid var(--nuru-line);
    border-left: 1px solid var(--nuru-line);
    margin-top: 42px;
}
.nuru-involved-way {
    min-height: 290px;
    padding: 34px 30px;
    background: #fff;
    border-right: 1px solid var(--nuru-line);
    border-bottom: 1px solid var(--nuru-line);
}
.nuru-involved-way .number {
    display: block;
    margin-bottom: 42px;
    color: var(--nuru-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
}
.nuru-involved-way h3 {
    margin: 0 0 12px;
    color: var(--nuru-ink);
    font-size: 24px;
}
.nuru-involved-way p {
    margin: 0;
    color: var(--nuru-muted);
    line-height: 1.72;
}
.nuru-involved-way a {
    display: inline-flex;
    margin-top: 20px;
    color: var(--nuru-primary);
    font-weight: 800;
}

/* Partnership image strip */
.nuru-involved-collab {
    overflow: hidden;
}
.nuru-involved-collab__image {
    min-height: 520px;
    height: 100%;
    background: url('../images/get-involved-partner.jpg') center/cover no-repeat;
}
.nuru-involved-collab__content {
    min-height: 520px;
    height: 100%;
    padding: 72px 66px;
    background: var(--nuru-primary);
}
.nuru-involved-collab__content .nuru-kicker,
.nuru-involved-collab__content .nuru-heading {
    color: #fff;
}
.nuru-involved-collab__content p {
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 17px;
    line-height: 1.8;
}
.nuru-involved-collab__list {
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}
.nuru-involved-collab__list li {
    position: relative;
    margin-top: 12px;
    padding-left: 24px;
    color: rgba(255,255,255,.90);
    line-height: 1.65;
}
.nuru-involved-collab__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .7em;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #fff;
}

/* Form */
.nuru-involved-form-section {
    padding: 110px 0;
}
.nuru-involved-form-layout {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 65px;
    align-items: start;
}
.nuru-involved-form-copy p {
    margin: 20px 0 0;
    color: var(--nuru-muted);
    font-size: 17px;
    line-height: 1.8;
}
.nuru-involved-form {
    padding: 36px;
    border: 1px solid var(--nuru-line);
    background: #fff;
}
.nuru-involved-form .form-group {
    margin-bottom: 18px;
}
.nuru-involved-form label {
    display: block;
    margin-bottom: 8px;
    color: var(--nuru-ink);
    font-size: 13px;
    font-weight: 700;
}
.nuru-involved-form input,
.nuru-involved-form select,
.nuru-involved-form textarea {
    width: 100%;
    min-height: 52px;
    padding: 12px 15px;
    border: 1px solid var(--nuru-line);
    background: #fff;
    color: var(--nuru-ink);
    font-family: inherit;
    font-size: 15px;
}
.nuru-involved-form textarea {
    min-height: 150px;
    resize: vertical;
}
.nuru-involved-form input:focus,
.nuru-involved-form select:focus,
.nuru-involved-form textarea:focus {
    outline: none;
    border-color: var(--nuru-primary);
}

/* Final CTA */
.nuru-involved-cta {
    padding: 90px 0;
    background: var(--nuru-primary);
}
.nuru-involved-cta .nuru-kicker,
.nuru-involved-cta .nuru-heading {
    color: #fff;
}
.nuru-involved-cta p {
    max-width: 780px;
    margin: 20px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.8;
}
.nuru-involved-cta .btns-box {
    margin-top: 30px;
}

@media (max-width: 1199.98px) {
    .nuru-involved-intro__copy {
        padding-left: 0;
        padding-top: 42px;
    }
    .nuru-involved-form-layout {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 767.98px) {
    .nuru-involved-hero {
        padding: 66px 0 68px;
    }
    .nuru-involved-hero h1 {
        font-size: 44px;
    }
    .nuru-involved-intro,
    .nuru-involved-ways,
    .nuru-involved-form-section {
        padding: 78px 0;
    }
    .nuru-involved-intro__image,
    .nuru-involved-intro__image img,
    .nuru-involved-collab__image {
        min-height: 350px;
        height: 350px;
    }
    .nuru-involved-collab__content {
        min-height: 0;
        padding: 48px 28px;
    }
    .nuru-involved-ways-grid {
        grid-template-columns: 1fr;
    }
    .nuru-involved-form {
        padding: 28px 22px;
    }
}


/* ================================================================
   NURU CONTACT PAGE — SIMPLE
   Heading → Form → Footer
   ================================================================ */

.nuru-contact-page {
    padding: 92px 0 110px;
    background: var(--nuru-paper);
    border-top: 1px solid var(--nuru-line);
}

.nuru-contact-head {
    max-width: 760px;
    margin: 0 auto 48px;
    text-align: center;
}

.nuru-contact-head h1 {
    margin: 0;
    color: var(--nuru-ink);
    font-size: clamp(46px, 5vw, 72px);
    line-height: 1.04;
    letter-spacing: -.04em;
}

.nuru-contact-head p {
    margin: 22px auto 0;
    max-width: 680px;
    color: var(--nuru-muted);
    font-size: 18px;
    line-height: 1.8;
}

.nuru-contact-form-wrap {
    max-width: 860px;
    margin: 0 auto;
    padding: 38px;
    background: #fff;
    border: 1px solid var(--nuru-line);
}

.nuru-contact-form .form-group {
    margin-bottom: 18px;
}

.nuru-contact-form label {
    display: block;
    margin-bottom: 8px;
    color: var(--nuru-ink);
    font-size: 13px;
    font-weight: 700;
}

.nuru-contact-form input,
.nuru-contact-form select,
.nuru-contact-form textarea {
    width: 100%;
    min-height: 52px;
    padding: 12px 15px;
    border: 1px solid var(--nuru-line);
    background: #fff;
    color: var(--nuru-ink);
    font-family: inherit;
    font-size: 15px;
}

.nuru-contact-form textarea {
    min-height: 160px;
    resize: vertical;
}

.nuru-contact-form input:focus,
.nuru-contact-form select:focus,
.nuru-contact-form textarea:focus {
    outline: none;
    border-color: var(--nuru-primary);
}

.nuru-contact-form .row {
    --bs-gutter-x: 18px;
}

.nuru-contact-form .btn-one {
    margin-top: 6px;
}

@media (max-width: 767.98px) {
    .nuru-contact-page {
        padding: 72px 0 82px;
    }
    .nuru-contact-head h1 {
        font-size: 44px;
    }
    .nuru-contact-form-wrap {
        padding: 28px 22px;
    }
}



/* ================================================================
   NURU CUSTOM HERO SLIDER
   Vanilla JS — no Swiper dependency.
   Inspired by the Donativo slider composition, but built independently.
   ================================================================ */

.nuru-hero-slider {
    position: relative;
    overflow: hidden;
    background: #111;
}

.nuru-hero-slider__track {
    position: relative;
    min-height: 650px;
}

.nuru-hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease, visibility .8s ease;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.nuru-hero-slide.is-active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

.nuru-hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.52);
    z-index: 1;
}

.nuru-hero-slide__content {
    position: relative;
    z-index: 2;
    min-height: 650px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 90px 80px;
    text-align: center;
}

.nuru-hero-slide__inner {
    max-width: 980px;
    margin: 0 auto;
}

.nuru-hero-slide__eyebrow {
    display: inline-block;
    position: relative;
    margin-bottom: 24px;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.nuru-hero-slide__eyebrow::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -7px;
    height: 4px;
    background: var(--nuru-primary);
}

.nuru-hero-slide h1,
.nuru-hero-slide h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(48px, 5.6vw, 78px);
    line-height: 1.04;
    letter-spacing: -.045em;
    font-weight: 700;
}

.nuru-hero-slide p {
    max-width: 760px;
    margin: 24px auto 0;
    color: rgba(255,255,255,.90);
    font-size: 18px;
    line-height: 1.75;
}

.nuru-hero-slide__actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 34px;
}

.nuru-hero-slide__actions .btn-one {
    min-width: 180px;
}

.nuru-hero-slide__actions .btn-one.alt {
    background: #000 !important;
    background-color: #000 !important;
    border-color: #000 !important;
}

.nuru-hero-slide__actions .btn-one.alt::before,
.nuru-hero-slide__actions .btn-one.alt::after {
    background: #000 !important;
    background-color: #000 !important;
}

.nuru-hero-slider__nav {
    position: absolute;
    z-index: 5;
    right: 32px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.nuru-hero-slider__nav button {
    width: 52px;
    height: 52px;
    border: 0;
    border-radius: 8px;
    background: rgba(255,255,255,.22);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    cursor: pointer;
    backdrop-filter: blur(4px);
    transition: background .2s ease;
}

.nuru-hero-slider__nav button:hover,
.nuru-hero-slider__nav button:focus-visible {
    background: var(--nuru-primary);
    outline: none;
}

.nuru-hero-slider__dots {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: 24px;
    transform: translateX(-50%);
    display: flex;
    gap: 9px;
}

.nuru-hero-slider__dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 1px solid rgba(255,255,255,.85);
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
}

.nuru-hero-slider__dot.is-active {
    background: #fff;
}

@media (max-width: 991.98px) {
    .nuru-hero-slider__track,
    .nuru-hero-slide__content {
        min-height: 590px;
    }

    .nuru-hero-slide__content {
        padding-left: 70px;
        padding-right: 70px;
    }

    .nuru-hero-slider__nav {
        right: 18px;
    }
}

@media (max-width: 767.98px) {
    .nuru-hero-slider__track,
    .nuru-hero-slide__content {
        min-height: 560px;
    }

    .nuru-hero-slide__content {
        padding: 72px 28px 90px;
    }

    .nuru-hero-slide h1,
    .nuru-hero-slide h2 {
        font-size: 42px;
    }

    .nuru-hero-slide p {
        font-size: 16px;
    }

    .nuru-hero-slider__nav {
        right: 12px;
    }

    .nuru-hero-slider__nav button {
        width: 44px;
        height: 44px;
        font-size: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nuru-hero-slide {
        transition: none;
    }
}

