/* Baraka — expressive, welcoming and built around real community stories. */
:root {
    --peach: #f4bb9d;
    --paper: #f8f6ed;
    --ink: #193e31;
    --muted: #66736b;
    --line: #dce1d5;
    --radius: 24px
}

html {
    scroll-padding-top: 110px
}

body {
    font-family: 'DM Sans', Arial, sans-serif;
    background: var(--paper);
    font-weight: 400;
    -webkit-font-smoothing: antialiased
}

h1,
h2,
h3 {
    font-weight: 800;
    letter-spacing: -.055em
}

h2 {
    line-height: 1.06
}

p {
    line-height: 1.75
}

.container {
    max-width: 1320px;
    padding-left: 40px;
    padding-right: 40px
}

.btn {
    border-radius: 100px;
    min-height: 54px;
    padding: 12px 21px 12px 25px;
    gap: 25px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: -.015em
}

.button-arrow {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background: #ffffff24;
    font-size: 19px;
    font-weight: 400;
    line-height: 1
}

.btn-lime .button-arrow,
.nav-donate .button-arrow {
    background: var(--ink);
    color: var(--lime)
}

.btn-cream,
.btn-outline {
    border-color: #9eaf99
}

.btn-green {
    background: var(--green)
}

.btn-green:hover {
    box-shadow: 0 7px 24px #1b3d3020
}

.eyebrow {
    font-size: 10px;
    letter-spacing: .15em;
    font-weight: 600;
    line-height: 1.7
}

.welcome-dot {
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 50%;
    background: var(--lime);
    flex-shrink: 0
}

.topbar {
    padding: 8px 0;
    background: var(--ink);
    font-size: 10px;
    letter-spacing: .02em
}

.topbar .container>span {
    display: flex;
    gap: 9px;
    align-items: center
}

.topbar a {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #eef1e6
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: #f8f6edf5;
    backdrop-filter: blur(16px);
    border-bottom: 1px solid #e2e5d9;
    transition: box-shadow .2s
}

.site-header.is-scrolled {
    box-shadow: 0 6px 24px #17382c12
}

.navbar {
    min-height: 98px;
    padding-top: 18px;
    padding-bottom: 18px
}

.navbar-brand img {
    width: 216px;
    max-width: 100%;
    height: auto
}

.navbar-collapse {
    gap: 21px
}

.navbar-nav {
    gap: 3px
}

.nav-link {
    font-size: 12px;
    margin: 0;
    padding: 10px 15px !important;
    border: 0;
    border-radius: 30px;
    white-space: nowrap;
    font-weight: 600;
    color: var(--ink);
    transition: background .2s, color .2s;
    line-height: 1.3
}

.nav-link.active,
.navbar-nav .nav-link.active {
    background: #e6ebdd;
    border: 0;
    color: var(--ink)
}

.nav-link:hover,
.nav-link:focus {
    color: var(--ink);
    background: #eceee4
}

.nav-link.dropdown-toggle {
    display: flex;
    align-items: center;
    gap: 7px;
    background: transparent
}

.nav-link.dropdown-toggle.active {
    background: #e6ebdd
}

.dropdown-menu {
    border: 1px solid #e1e5d8;
    border-radius: 20px;
    min-width: 280px;
    padding: 8px;
    box-shadow: 0 18px 50px #17382c16;
    margin-top: 20px !important;
    background: #fffef9
}

.dropdown-item {
    position: relative;
    padding: 17px 45px 17px 17px;
    border-radius: 12px;
    color: var(--ink);
    white-space: normal;
    line-height: 1.4
}

.dropdown-item span {
    display: block;
    font-size: 13px;
    font-weight: 600
}

.dropdown-item small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px
}

.dropdown-item b {
    position: absolute;
    right: 18px;
    top: 22px;
    font-size: 18px;
    font-weight: 400
}

.dropdown-item:hover,
.dropdown-item.active,
.dropdown-item:active {
    background: #edf2e2;
    color: var(--ink)
}

.nav-donate {
    margin-left: 0;
    min-height: 47px;
    padding: 8px 10px 8px 20px;
    gap: 17px;
    background: #d1f452;
    color: var(--ink);
    border-color: #d1f452;
    font-size: 11px;
    color: #14201b;
}

.nav-donate:hover {
    background: #083020;
    color: #ffffff;
    border-color: #083020;
}

.nav-donate .button-arrow {
    width: 29px;
    height: 29px;
    color: white
}

.mobile-nav-note {
    display: none
}

.navbar-toggler {
    border: 1px solid #d7dfce;
    border-radius: 50%;
    padding: 13px;
    width: 46px;
    height: 46px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    box-shadow: none !important
}

.navbar-toggler span {
    display: block;
    height: 1.5px;
    background: var(--ink);
    width: 100%;
    transition: transform .2s, opacity .2s
}

.navbar-toggler[aria-expanded=true] span:nth-child(1) {
    transform: translateY(5.5px) rotate(45deg)
}

.navbar-toggler[aria-expanded=true] span:nth-child(2) {
    opacity: 0
}

.navbar-toggler[aria-expanded=true] span:nth-child(3) {
    transform: translateY(-5.5px) rotate(-45deg)
}

/* Full-width homepage slider */
.modern-slider {
    border-radius: 0 0 34px 34px;
    overflow: hidden
}

.modern-slider .carousel-item {
    height: clamp(640px, 76vh, 820px);
    min-height: 640px
}

.modern-slider .slide-photo {
    object-position: center 44%
}

.modern-slider .slide-shade {
    background: linear-gradient(90deg, rgba(11, 37, 28, .91) 0%, rgba(11, 37, 28, .78) 30%, rgba(11, 37, 28, .18) 75%, rgba(11, 37, 28, .15)), linear-gradient(0deg, rgba(9, 30, 23, .76), transparent 35%)
}

.modern-slider .slide-content {
    padding-top: 50px;
    padding-bottom: 125px;
    justify-content: center
}

.hero-eyebrow {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    border: 1px solid #d8e1c456;
    border-radius: 30px;
    padding: 7px 13px;
    margin-bottom: 24px;
    line-height: 1.3;
    font-size: 9px;
    letter-spacing: .13em;
    color: #eff5e4
}

.modern-slider .slide-content h1 {
    font-size: clamp(64px, 7.5vw, 110px);
    letter-spacing: -.065em;
    line-height: .99;
    max-width: 1020px;
    margin: 0 0 27px;
    font-weight: 800;
    text-wrap: balance
}

.hero-line {
    display: block
}

.modern-slider h1 em {
    font-family: 'DM Serif Display', Georgia, serif;
    display: block;
    color: #ffffff;
    font-weight: 400;
    letter-spacing: -.04em
}

.modern-slider .slide-content>p {
    color: #e0e9da;
    font-size: 15px;
    line-height: 1.85;
    max-width: 450px;
    margin-bottom: 27px
}

.hero-actions {
    display: flex;
    gap: 29px;
    align-items: center;
    flex-wrap: wrap
}

.hero-actions .btn {
    padding-right: 12px;
    gap: 24px
}

.hero-secondary {
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    display: flex;
    gap: 25px;
    align-items: center
}

.hero-secondary span {
    font-size: 24px;
    color: #ffffff;
}

.hero-secondary:hover {
    color: var(--lime)
}

.hero-belong-stamp {
    position: absolute;
    right: max(5%, calc((100vw - 1240px)/2));
    top: 90px;
    z-index: 2;
    transform: rotate(11deg);
    background: var(--lime);
    color: var(--ink);
    border-radius: 50%;
    width: 143px;
    height: 143px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 7px #d6ef8322;
    pointer-events: none
}

.hero-belong-stamp>span:first-child {
    font-size: 7px;
    letter-spacing: .12em;
    font-weight: 600
}

.hero-belong-stamp strong {
    font: italic 26px/.97 'DM Serif Display', Georgia, serif;
    text-align: center;
    letter-spacing: -.03em;
    margin: 9px 0
}

.hero-belong-stamp>span:last-child {
    font-size: 24px;
    line-height: 1
}

.modern-slider .slider-bottom {
    bottom: 29px;
    align-items: center;
    gap: 25px
}

.hero-discover {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    font-size: 10px;
    letter-spacing: .025em;
    color: #eef2e8
}

.hero-discover>span {
    display: flex;
    width: 29px;
    height: 36px;
    align-items: center;
    justify-content: center;
    border: 1px solid #d5dfc967;
    border-radius: 20px;
    font-size: 19px
}

.hero-discover:hover {
    color: var(--lime)
}

.modern-slider .slide-indicators {
    gap: 8px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%)
}

.modern-slider .slide-indicators button {
    background: none;
    height: 31px;
    width: 43px;
    border: 0;
    border-bottom: 1px solid #d5dfc967;
    position: relative;
    color: #d3ddc6;
    transition: border-color .2s
}

.modern-slider .slide-indicators button.active {
    width: 58px;
    color: var(--lime);
    border-bottom: 3px solid var(--lime)
}

.modern-slider .slide-indicators button span {
    font-size: 10px;
    position: absolute;
    left: 0;
    top: 0
}

.slider-controls {
    gap: 6px
}

.slider-controls button {
    width: 39px;
    height: 39px;
    border-color: #d5dfc967;
    font-size: 19px
}

.slider-controls #sliderPlay {
    width: 60px;
    min-width: 60px;
    font-size: 9px
}

.values-strip {
    background: var(--paper);
    padding: 26px 0;
    border-bottom: 1px solid var(--line)
}

.values-strip span {
    font-size: 12px;
    font-weight: 600
}

.values-strip b {
    font-size: 24px;
    color: #7e9551
}

.section {
    padding: 85px 0
}

.section-heading h2 {
    font-size: clamp(34px, 3.9vw, 54px)
}

.section-heading>p {
    font-size: 13px;
    max-width: 310px
}

.story-section {
    background: #eef0e4
}

.story-photo>img {
    border-radius: 100px 24px 24px 24px
}

.story-copy h2 em {
    font-family: 'DM Serif Display', Georgia, serif;
    color: #66794c
}

.photo-caption {
    border-radius: 12px;
    font-family: 'DM Serif Display', Georgia, serif;
    font-size: 23px;
    background: #7ce788;
}

.impact-grid {
    padding-top: 35px
}

.impact-grid strong {
    font-size: 48px;
    font-weight: 800
}

.impact-grid p {
    font-size: 11px
}

.schedule-card {
    border-radius: 28px
}

.cta-banner {
    border-radius: 28px;
    padding: 55px
}

.cta-banner h2 {
    font-size: 46px
}

.cta-star {
    color: #35533d
}

.cta-banner .btn {
    min-width: 220px
}

.partner-section {
    padding-top: 65px
}

.partner-section h2 {
    font-size: 27px;
    font-weight: 600;
    letter-spacing: -.04em
}

.partner-logo {
    padding: 18px;
    border-radius: 15px;
    background: #fffdf75c
}

.partner-logos {
    gap: 20px
}

.site-footer {
    border-radius: 30px 30px 0 0
}

.footer-brand {
    font-family: 'DM Sans', sans-serif;
    font-size: 56px
}

.footer-intro {
    font-family: 'DM Serif Display', Georgia, serif;
    font-size: 28px
}

.site-footer .footer-intro {
    color: #ffffff !important
}

.site-footer h2 {
    font-weight: 600
}

.footer-bottom {
    padding: 25px 0
}

/* Individual page introductions */
.editorial-hero {
    padding: 62px 0 0;
    overflow: hidden
}

.editorial-grid {
    display: grid;
    grid-template-columns: 1.25fr 1fr;
    gap: 75px;
    align-items: center;
    min-height: 390px
}

.editorial-copy>.eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 9px;
    letter-spacing: .12em;
    margin-bottom: 23px
}

.editorial-copy>.eyebrow .welcome-dot {
    background: #7a9550
}

.editorial-copy h1 {
    font-size: clamp(46px, 5.6vw, 78px);
    line-height: 1.03;
    letter-spacing: -.065em;
    margin-bottom: 23px;
    text-wrap: balance
}

.editorial-copy h1 em {
    font-family: 'DM Serif Display', Georgia, serif;
    font-weight: 400;
    letter-spacing: -.035em;
    color: #6e8050
}

.editorial-description {
    font-size: 14px;
    max-width: 450px;
    margin-bottom: 26px;
    line-height: 1.9
}

.editorial-copy .btn {
    font-size: 12px;
    min-height: 50px
}

.editorial-footer {
    border-bottom: 1px solid var(--line);
    margin-top: 62px;
    padding: 19px 0;
    display: flex;
    justify-content: space-between;
    color: #6d7b67;
    font-size: 8px;
    letter-spacing: .14em;
    font-weight: 600
}

.editorial-footer>span:last-child {
    display: flex;
    gap: 20px;
    align-items: center
}

.editorial-footer b {
    font-size: 22px;
    line-height: 1;
    font-weight: 400;
    color: #819951
}

.hero-art {
    position: relative;
    height: 350px;
    margin-right: 10px
}

.hero-art>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 110px 25px 25px 25px
}

.hero-art::before {
    content: '';
    position: absolute;
    inset: 16px -13px -14px 17px;
    border: 1px solid #c6cfbb;
    border-radius: 110px 25px 25px 25px;
    z-index: -1
}

.art-note {
    position: absolute;
    bottom: 13px;
    left: -28px;
    background: #095423;
    color: #ffffff;
    padding: 13px 20px;
    border-radius: 9px;
    transform: rotate(-5deg);
    font: italic 21px/1.15 'DM Serif Display', Georgia, serif;
    box-shadow: 0 7px 20px #193e3110;
    max-width: 300px
}

.art-spark {
    position: absolute;
    right: -23px;
    top: -25px;
    color: var(--lime);
    font-size: 90px;
    line-height: 1;
    transform: rotate(9deg)
}

.editorial-hero--donate .hero-art {
    height: 340px
}

.editorial-hero--donate h1 em {
    color: #70412c
}

.editorial-hero--get-involved h1 em {
    color: #70412c
}

.editorial-hero--get-involved .art-note {
    background: var(--lime)
}

.editorial-hero--impacts {
    background: var(--ink);
    color: var(--paper);
    border-radius: 0 0 30px 30px;
    padding-bottom: 0
}

.editorial-hero--impacts .eyebrow,
.editorial-hero--impacts .editorial-description {
    color: #c6d5bd
}

.editorial-hero--impacts h1 em {
    color: var(--peach)
}

.editorial-hero--impacts .btn {
    background: var(--lime);
    border-color: var(--lime);
    color: var(--ink)
}

.editorial-hero--impacts .button-arrow {
    background: var(--ink);
    color: var(--lime)
}

.editorial-hero--impacts .editorial-footer {
    color: #a9bba1;
    border-color: #5a705b
}

.impact-receipt {
    position: relative;
    transform: rotate(3deg);
    margin: 10px 15px;
    background: var(--paper);
    color: var(--ink);
    padding: 30px;
    border-radius: 3px;
    box-shadow: -12px 13px 0 #48624a
}

.impact-receipt::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    right: 0;
    height: 9px;
    background: linear-gradient(135deg, var(--paper) 25%, transparent 25%) -5px 0, linear-gradient(225deg, var(--paper) 25%, transparent 25%) -5px 0;
    background-size: 16px 16px
}

.receipt-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px dashed #c6ceb9;
    padding-bottom: 20px;
    font-size: 9px;
    letter-spacing: .1em;
    font-weight: 600
}

.receipt-heading>span:last-child {
    font-size: 35px;
    line-height: 1
}

.impact-receipt>p {
    font: italic 23px/1.2 'DM Serif Display', Georgia, serif;
    color: #65794c;
    margin: 20px 0
}

.impact-receipt dl {
    margin: 0
}

.impact-receipt dl>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid var(--line);
    padding: 12px 0
}

.impact-receipt dt {
    font-size: 10px;
    font-weight: 400;
    color: var(--muted);
    max-width: 150px
}

.impact-receipt dd {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.05em;
    margin: 0
}

.receipt-footnote {
    font-size: 8px;
    color: #708165;
    display: block;
    margin-top: 23px
}

.paper-stack {
    position: relative;
    width: 310px;
    height: 355px;
    margin: 15px auto 30px
}

.paper-back {
    position: absolute;
    inset: 0;
    background: var(--green);
    border-radius: 8px;
    transform: rotate(-8deg);
    box-shadow: 0 20px 45px #193e3110
}

.paper-front {
    position: relative;
    height: 100%;
    padding: 26px 30px;
    background: var(--peach);
    border: 1px solid #e0a98d;
    border-radius: 8px;
    transform: rotate(5deg);
    overflow: hidden
}

.paper-topline {
    display: flex;
    justify-content: space-between;
    font-size: 23px;
    font-weight: 800;
    letter-spacing: -.05em;
    line-height: 1
}

.paper-topline>span:last-child {
    font-size: 32px;
    font-weight: 400
}

.paper-front>p {
    font-size: 6px;
    letter-spacing: .15em;
    font-weight: 600;
    color: var(--ink);
    margin-top: 7px
}

.paper-front>strong {
    display: block;
    font-size: 39px;
    line-height: 1.08;
    letter-spacing: -.055em;
    margin-top: 34px;
    position: relative;
    z-index: 1
}

.paper-years {
    display: block;
    margin-top: 15px;
    font-size: 10px;
    letter-spacing: .1em
}

.paper-star {
    position: absolute;
    right: -30px;
    bottom: -10px;
    color: #eaa17b;
    font-size: 160px;
    line-height: 1;
    transform: rotate(12deg)
}

.paper-caption {
    position: absolute;
    bottom: 24px;
    left: 30px;
    font-size: 10px;
    border-top: 1px solid #bd8c72;
    padding-top: 12px;
    right: 30px;
    z-index: 1
}

.hello-card {
    background: #91ee96;
    padding: 38px;
    border-radius: 100px 28px 28px 28px;
    position: relative;
    overflow: hidden;
    min-height: 340px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.hello-topline {
    font-size: 7px;
    letter-spacing: .12em;
    font-weight: 600;
    color: #725540
}

.hello-card>strong {
    font: italic 108px/.95 'DM Serif Display', Georgia, serif;
    letter-spacing: -.045em;
    margin: 20px 0 10px
}

.hello-card>strong>span {
    color: #fff1d4
}

.hello-card>p {
    font-size: 12px;
    color: #685c48
}

.hello-card>a {
    font-size: 17px;
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    text-decoration: none;
    font-weight: 600;
    max-width: 240px;
    border-top: 1px solid #c99475;
    padding-top: 17px
}

.hello-spark {
    position: absolute;
    font-size: 140px;
    line-height: 1;
    right: -23px;
    bottom: -25px;
    color: #e6a07d;
    transform: rotate(-10deg)
}

/* Programme discovery */
.directory-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 30px
}

.directory-heading h2 {
    font-size: 38px;
    margin: 0
}

.directory-heading .eyebrow {
    margin-bottom: 12px
}

.directory-heading>p {
    font-size: 12px;
    margin: 0 0 4px;
    max-width: 270px
}

.programme-toolbar {
    display: flex;
    gap: 25px;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px
}

.programme-toolbar .filters {
    margin: 0;
    gap: 7px;
    flex-shrink: 0
}

.filter-btn {
    border-radius: 30px;
    border-color: #d9dfd0;
    background: #eeeee4;
    padding: 10px 18px;
    font-size: 10px;
    min-height: 39px;
    font-weight: 600;
    transition: all .2s
}

.filter-btn.selected {
    background: var(--green);
    border-color: var(--green)
}

.programme-search {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 15px;
    border: 1px solid #d5decc;
    border-radius: 40px;
    min-width: 250px;
    max-width: 350px;
    flex: 1;
    background: #fffdf7
}

.programme-search>span:not(.visually-hidden) {
    font-size: 23px;
    color: #849579;
    line-height: 1
}

.programme-search input {
    border: 0;
    background: transparent;
    outline: none;
    font-size: 10px;
    min-width: 0;
    width: 100%;
    color: var(--ink)
}

.programme-search:focus-within {
    outline: 2px solid #a4b88a;
    outline-offset: 2px
}

.programme-card {
    border: 1px solid #e1e5d6;
    border-radius: 21px;
    box-shadow: none;
    background: #fffef9
}

.programme-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px #183d3010;
    border-color: #c9d5b7
}

.card-photo {
    height: auto;
    aspect-ratio: 16/9;
    background: #e9eddc;
    overflow: hidden;
    border-radius: 20px 20px 0 0
}

.card-photo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.card-photo .pill {
    top: 12px;
    left: 12px;
    background: #f8f6edf2;
    font-size: 8px;
    box-shadow: 0 2px 8px #183d3010;
    letter-spacing: .06em
}

.card-copy {
    padding: 25px
}

.card-copy h3 {
    font-size: 24px;
    line-height: 1.1;
    min-height: 53px;
    margin-bottom: 12px
}

.card-copy p {
    font-size: 12px;
    min-height: 65px;
    color: #727b6a;
    line-height: 1.85
}

.card-link {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: center;
    border-top: 1px solid var(--line);
    padding-top: 17px;
    margin-top: 20px;
    color: var(--ink);
    font-size: 10px;
    font-weight: 600
}

.card-arrow {
    width: 33px;
    height: 33px;
    border: 1px solid #cbd5bf;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
    font-weight: 400;
    transition: background .2s
}

.programme-card:hover .card-arrow {
    background: var(--lime);
    border-color: var(--lime)
}

.directory-help {
    margin-top: 45px;
    border: 1px solid #d7deca;
    border-radius: 21px;
    padding: 28px 32px;
    display: flex;
    gap: 25px;
    align-items: center;
    background: #eff1e4
}

.directory-help>span {
    font-size: 52px;
    color: #88a05c;
    line-height: 1
}

.directory-help>div {
    flex: 1
}

.directory-help h3 {
    font-size: 23px;
    margin-bottom: 6px
}

.directory-help p {
    font-size: 12px;
    margin-bottom: 0
}

.directory-help .btn {
    font-size: 11px;
    min-height: 47px
}

.programme-empty {
    text-align: center;
    padding: 45px 25px;
    border: 1px dashed #cbd4bc;
    border-radius: 22px
}

.programme-empty>span {
    font-size: 45px;
    color: #8ca45c
}

.programme-empty p {
    font-size: 13px
}

/* Impact figures and accounts */
.page-impacts .impact-container {
    max-width: 1320px;
    padding-left: 40px;
    padding-right: 40px
}

.page-impacts .impact-section {
    background: none;
    padding: 65px 0 10px
}

.page-impacts .section-heading {
    margin-bottom: 30px
}

.page-impacts .section-heading h2 {
    font-size: 39px
}

.impact-stat {
    padding: 27px 25px;
    border: 0;
    background: #e8eddd;
    border-radius: 22px;
    min-height: 235px
}

.impact-stat:nth-child(2) {
    background: var(--peach)
}

.impact-stat:nth-child(3) {
    background: #e3e5f0
}

.impact-stat:nth-child(4) {
    background: var(--lime)
}

.impact-stat .number {
    font-size: 43px;
    letter-spacing: -.06em;
    margin-bottom: 25px;
    font-weight: 800
}

.impact-stat .label {
    font-size: 12px;
    margin-bottom: 9px
}

.impact-stat .note {
    font-size: 10px;
    color: #4f614b;
    line-height: 1.8
}

.year-grid {
    gap: 22px
}

.year-card {
    border: 1px solid #dde4d1;
    border-radius: 22px;
    padding: 28px;
    box-shadow: none;
    position: relative
}

.year-card:nth-child(2) {
    background: #eef0e5
}

.year-card.featured {
    background: #e7edda;
    border-color: #bdcfaa
}

.year-card h3 {
    font-size: 28px;
    line-height: 1.15;
    max-width: 180px
}

.year-card-header {
    display: block
}

.year-badge {
    font-size: 8px;
    letter-spacing: .05em;
    padding: 6px 11px;
    margin: 6px 0 20px;
    background: #e4eacb
}

.year-card.featured .year-badge {
    background: var(--green);
    color: white
}

.year-card p,
.impact-list {
    font-size: 11px;
    line-height: 1.85
}

.year-finance {
    gap: 8px
}

.finance-box {
    border-radius: 9px;
    background: #f7f8f0;
    padding: 13px
}

.finance-box strong {
    font-size: 23px
}

.finance-box span {
    font-size: 8px;
    margin-bottom: 4px;
    color: #718061
}

.impact-list li {
    margin-bottom: 8px
}

.finance-table-wrap {
    border: 1px solid #dde4d1;
    border-radius: 20px
}

.finance-table {
    font-size: 11px;
    line-height: 1.8;
    background: #fffef8
}

.finance-table th {
    font-size: 9px;
    font-weight: 600;
    padding: 20px 18px;
    white-space: nowrap
}

.finance-table td {
    padding: 22px 18px;
    vertical-align: top
}

.finance-table td:first-child {
    max-width: 160px
}

.finance-table tr:last-child td {
    border-bottom: 0
}

.page-impacts .programme-panel {
    padding: 40px !important;
    border-radius: 24px;
    background: #eceee1
}

.page-impacts .programme-panel .programme-card h2 {
    font-size: 39px;
    line-height: 1.1;
    margin-bottom: 22px
}

.page-impacts .programme-panel .programme-card p {
    font-size: 13px;
    line-height: 1.9;
    max-width: 400px
}

.page-impacts .programme-list {
    counter-reset: programme
}

.page-impacts .programme-list .programme-item {
    border-top: 1px solid #cbd6be;
    padding: 16px 0 16px 34px;
    position: relative;
    font-size: 11px
}

.page-impacts .programme-list .programme-item::before {
    counter-increment: programme;
    content: counter(programme, decimal-leading-zero);
    position: absolute;
    left: 0;
    top: 18px;
    color: #83976d;
    font-size: 9px
}

.page-impacts .programme-list .programme-item strong {
    font-size: 12px
}

.reports-card {
    border-radius: 25px;
    padding: 40px;
    gap: 40px
}

.reports-card h2 {
    font-size: 39px
}

.reports-card p {
    font-size: 12px;
    margin: 15px 0 0
}

.report-link {
    border-bottom: 1px solid #b4c49b;
    text-decoration: none;
    padding-bottom: 6px;
    font-size: 12px
}

.source-note {
    line-height: 1.8;
    font-size: 10px;
    max-width: 1200px
}

.page-impacts .source-note {
    padding-top: 30px;
    padding-bottom: 65px
}

/* Report library */
.report-download {
    padding: 0;
    overflow: hidden;
    border: 1px solid #dfe4d3;
    border-radius: 22px;
    background: #fffef9;
    transition: transform .2s, box-shadow .2s
}

.report-download:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px #183d3010
}

.report-cover {
    height: 225px;
    background: #e3e9d6;
    width: 100%;
    position: relative;
    overflow: hidden;
    padding: 24px 28px
}

.report-library-section .col-md-6:nth-child(2) .report-cover {
    background: #f1c4ad
}

.report-library-section .col-md-6:nth-child(3) .report-cover {
    background: #dfe1ee
}

.report-year {
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: 76px;
    letter-spacing: -.065em;
    font-weight: 800;
    color: var(--ink);
    line-height: 1;
    position: absolute;
    left: 25px;
    top: 68px;
    z-index: 1
}

.report-document-icon {
    position: absolute;
    right: 27px;
    top: 21px;
    font-size: 24px;
    color: #62764c
}

.report-cover-label {
    position: absolute;
    left: 28px;
    top: 25px;
    font-size: 7px;
    letter-spacing: .1em;
    line-height: 1.5;
    font-weight: 600
}

.report-cover-star {
    position: absolute;
    font-size: 150px;
    line-height: 1;
    color: #b3c096;
    right: -24px;
    bottom: -33px;
    transform: rotate(-8deg);
    opacity: .65
}

.report-library-section .col-md-6:nth-child(2) .report-cover-star {
    color: #df9f7e
}

.report-library-section .col-md-6:nth-child(3) .report-cover-star {
    color: #b4b5d4
}

.report-download>.eyebrow {
    padding: 25px 25px 0;
    margin: 0;
    font-size: 8px;
    letter-spacing: .09em
}

.report-download>h2 {
    font-size: 27px;
    padding: 0 25px;
    margin: 17px 0 16px;
    line-height: 1.12;
    min-height: 60px
}

.report-download>p:not(.eyebrow) {
    padding: 0 25px;
    font-size: 12px;
    line-height: 1.85;
    margin-bottom: 25px;
    flex: 1
}

.report-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin: 0 25px 25px;
    padding-top: 17px;
    border-top: 1px solid var(--line);
    align-self: stretch
}

.report-actions .text-link {
    border: 0;
    font-size: 10px;
    gap: 15px
}

.report-download-button {
    border: 1px solid #cbd6bd;
    border-radius: 50%;
    height: 43px;
    width: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    text-decoration: none;
    position: relative
}

.report-download-button span {
    font-size: 6px;
    position: absolute;
    bottom: 4px;
    font-weight: 600
}

.report-download-button:hover {
    background: var(--lime);
    color: var(--ink)
}

.page-reports .info-box {
    padding: 40px;
    border-radius: 25px;
    background: var(--ink);
    color: var(--paper)
}

.page-reports .info-box h2 {
    font-size: 37px
}

.page-reports .info-box p {
    color: #b8c9ae;
    font-size: 13px;
    max-width: 700px
}

.page-reports .info-box .text-link {
    color: var(--lime);
    border-color: #859e6a;
    font-size: 12px;
    margin-top: 10px
}

/* Ways to get involved */
.involvement-section .involve-card {
    padding: 30px;
    border: 0;
    border-radius: 25px;
    background: #f1c4ad;
    position: relative;
    min-height: 350px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: transform .2s
}

.involvement-section .involve-card:hover {
    transform: translateY(-6px)
}

.involvement-section .col-md-4:nth-child(2) .involve-card {
    background: #dce8c7
}

.involvement-section .col-md-4:nth-child(3) .involve-card {
    background: #e2e2f0
}

.involve-card .large-number {
    font-family: 'DM Sans', sans-serif;
    color: var(--ink);
    font-size: 13px;
    border: 1px solid #b58a70;
    border-radius: 50%;
    width: 41px;
    height: 41px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600
}

.involvement-section .col-md-4:nth-child(2) .large-number {
    border-color: #9bae7b
}

.involvement-section .col-md-4:nth-child(3) .large-number {
    border-color: #a4a4c6
}

.involve-card h2 {
    font-size: 33px;
    margin: 28px 0 17px;
    line-height: 1.05
}

.involve-card p {
    font-size: 12px;
    line-height: 1.85;
    min-height: 0;
    color: #4f604c;
    margin-bottom: 28px
}

.involve-card .text-link {
    font-size: 10px;
    margin-top: auto;
    padding: 12px 0 0;
    border-top: 1px solid #bda18a;
    border-bottom: 0;
    width: 100%;
    justify-content: space-between
}

.involvement-photo {
    position: relative;
    margin-top: 45px;
    border-radius: 26px;
    overflow: hidden;
    height: 420px
}

.involvement-photo .wide-photo {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center 42%;
    border-radius: 0
}

.involvement-photo::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #193e31df, transparent 85%)
}

.involvement-photo>div {
    position: absolute;
    bottom: 40px;
    left: 40px;
    color: white;
    z-index: 1
}

.involvement-photo .eyebrow {
    color: var(--lime);
    font-size: 9px
}

.involvement-photo h2 {
    font-size: 49px;
    line-height: 1.05;
    margin-bottom: 0
}

/* Contact and embedded location map */
.contact-conversation .contact-detail {
    background: #fffef9;
    border: 1px solid #e0e4d4;
    border-radius: 18px;
    padding: 26px 26px 26px 73px;
    margin-bottom: 15px;
    position: relative
}

.contact-icon {
    position: absolute;
    left: 23px;
    top: 26px;
    border-radius: 50%;
    background: #e8eddb;
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 19px;
    line-height: 1;
    color: #60774c
}

.contact-detail h2 {
    font-size: 23px;
    margin-bottom: 10px
}

.contact-detail p,
.contact-detail a {
    font-size: 12px;
    line-height: 1.85
}

.contact-detail p {
    margin-bottom: 10px
}

.contact-detail a {
    word-break: break-word
}

.contact-conversation .info-box {
    margin-top: 25px;
    background: #efe9da;
    border-radius: 18px;
    padding: 25px
}

.contact-conversation .info-box p {
    font-size: 12px;
    line-height: 1.85
}

.contact-form {
    background: #e9eddf;
    border: 1px solid #d9e1cc;
    border-radius: 25px;
    padding: 38px 40px
}

.contact-form .eyebrow {
    font-size: 9px;
    margin-bottom: 15px
}

.contact-form h2 {
    font-size: 43px;
    line-height: 1.02;
    margin-bottom: 20px
}

.contact-form>p:not(.eyebrow) {
    font-size: 11px;
    margin-bottom: 28px
}

.contact-form label {
    font-size: 10px;
    margin-bottom: 9px;
    font-weight: 600
}

.form-control,
.form-select {
    border: 1px solid #cfd9c1;
    background: #fffef8;
    border-radius: 10px;
    padding: 13px 15px;
    font-size: 12px;
    color: var(--ink)
}

.form-control:focus,
.form-select:focus {
    border-color: #8ea86a;
    box-shadow: 0 0 0 3px #8ea86a1a;
    background: #fffef8
}

.contact-form textarea {
    min-height: 160px
}

.contact-form .btn {
    font-size: 11px;
    min-height: 49px
}

.map-section {
    padding-top: 0;
    padding-bottom: 70px
}

.map-layout {
    display: grid;
    grid-template-columns: .83fr 1.3fr;
    border-radius: 26px;
    overflow: hidden;
    border: 1px solid #dce2d0;
    background: var(--ink)
}

.map-information {
    padding: 40px;
    color: var(--paper)
}

.map-information>.eyebrow {
    color: var(--lime);
    font-size: 8px;
    letter-spacing: .11em;
    margin-bottom: 20px
}

.map-information h2 {
    font-size: 43px;
    line-height: 1.04
}

.map-information>p:not(.eyebrow) {
    color: #bdcfb1;
    font-size: 12px;
    line-height: 1.85;
    margin-top: 20px
}

.map-tabs {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    margin: 25px 0
}

.map-tabs button {
    display: flex;
    gap: 17px;
    align-items: center;
    border: 1px solid #68805c;
    border-radius: 30px;
    background: none;
    color: #deead4;
    font-size: 9px;
    padding: 10px 15px;
    font-weight: 600
}

.map-tabs button span {
    font-size: 16px;
    line-height: 1
}

.map-tabs button.selected {
    background: var(--lime);
    color: var(--ink);
    border-color: var(--lime)
}

.map-address {
    display: flex;
    gap: 13px;
    align-items: flex-start;
    margin: 25px 0 15px
}

.map-address>span {
    font-size: 27px;
    line-height: 1.3;
    color: var(--peach)
}

.map-address p {
    font-size: 13px;
    line-height: 1.85;
    margin: 0;
    color: #eff5e7
}

.map-directions {
    font-size: 11px;
    color: var(--lime);
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #5d7551;
    padding: 10px 0 15px
}

.map-directions span {
    font-size: 25px;
    line-height: 1
}

.map-information>.map-small-print {
    font-size: 9px !important;
    line-height: 1.85 !important;
    color: #9fb592 !important;
    margin-top: 22px !important
}

.map-panel {
    min-height: 510px;
    position: relative;
    background: #e6e9de;
    display: flex;
    flex-direction: column
}

.map-panel iframe {
    border: 0;
    width: 100%;
    height: 100%;
    min-height: 470px;
    flex: 1;
    filter: saturate(.65);
    display: block
}

.map-caption {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #f4f5e9;
    padding: 15px;
    font-size: 9px;
    letter-spacing: .02em;
    color: #5b7050
}

.map-caption .welcome-dot {
    background: #7d9b55
}

/* Donation component: clear steps, generous spacing, visible payment state. */
.donation-section {
    padding-top: 65px;
    padding-bottom: 70px
}

.donation-section .row {
    --bs-gutter-x: 4.5rem
}

.donation-panel {
    padding: 34px;
    border-radius: 26px;
    box-shadow: 0 8px 30px #183d3005;
    border: 1px solid #dbe3ce;
    background: #fffefa
}

.donation-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    border-bottom: 1px solid #e2e7d8;
    padding-bottom: 22px;
    margin-bottom: 25px;
    font-size: 8px;
    letter-spacing: .06em;
    color: #7a896b
}

.giving-heart {
    font-size: 27px;
    color: #697f4e;
    line-height: 1
}

.donation-panel>.eyebrow {
    font-size: 9px;
    margin-bottom: 12px
}

.donation-panel h2 {
    font-size: 40px;
    line-height: 1.02;
    margin-bottom: 20px
}

.donation-panel>p:not(.eyebrow) {
    font-size: 12px;
    line-height: 1.85;
    margin-bottom: 30px
}

.donation-panel legend {
    font-size: 11px;
    font-weight: 600;
    margin-bottom: 13px;
    line-height: 1.6;
    display: flex;
    gap: 8px;
    align-items: center;
    float: none;
    width: auto
}

.form-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #edf1e2;
    border-radius: 50%;
    font-size: 8px;
    min-width: 21px;
    height: 21px;
    line-height: 1;
    font-weight: 600;
    margin-right: 5px;
    color: #6f8553
}

.donation-panel label {
    font-size: 11px;
    line-height: 1.7
}

.donation-amounts {
    gap: 8px;
    margin: 10px 0 0
}

.donation-amounts button {
    border-radius: 12px;
    background: #f5f5ea;
    border: 1px solid #dce2d0;
    font-size: 19px;
    font-weight: 600;
    padding: 17px 10px;
    line-height: 1.2;
    transition: background .2s, border-color .2s
}

.donation-amounts button[data-amount=other] {
    font-size: 12px
}

.donation-amounts button:hover {
    background: #ecefdc
}

.donation-amounts button.selected {
    background: var(--lime);
    color: var(--ink);
    border-color: #9eb977;
    box-shadow: inset 0 0 0 1px #9eb977
}

.donation-frequency {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px
}

.donation-frequency label {
    border: 1px solid #d8e0cc;
    border-radius: 10px;
    padding: 12px;
    display: flex;
    gap: 9px;
    align-items: center;
    background: #f6f7ec;
    font-size: 11px;
    font-weight: 400
}

.donation-frequency label:has(input:checked) {
    background: #ebf0dc;
    border-color: #9bb479;
    font-weight: 600
}

.donation-frequency input {
    accent-color: var(--green);
    margin: 0
}

.donation-panel [data-custom-wrap] {
    padding-top: 18px
}

.donation-panel [data-custom-wrap] label {
    display: block;
    margin-bottom: 8px
}

.donation-panel .form-select {
    font-size: 11px;
    min-height: 47px
}

.donation-summary {
    border: 0;
    background: var(--ink);
    color: #e6eddd;
    border-radius: 15px;
    margin: 25px 0 22px;
    padding: 20px;
    font-size: 11px;
    align-items: center
}

.donation-summary strong {
    font-size: 31px;
    font-weight: 800;
    letter-spacing: -.045em;
    color: var(--lime)
}

.donation-panel [data-donation-form]>.small {
    font-size: 9px !important;
    line-height: 1.85;
    text-align: center;
    color: #859175;
    border-top: 1px solid var(--line);
    padding-top: 18px
}

.donation-panel [data-one-time]>.small {
    font-size: 9px !important;
    color: #896b24;
    background: #f9f0d2;
    padding: 8px 12px;
    border-radius: 8px;
    text-align: center
}

.donation-panel [data-one-time] [data-loading] {
    font-size: 10px
}

.donation-story-column>.detail-image {
    height: 330px;
    max-height: none;
    object-fit: cover;
    border-radius: 100px 24px 24px 24px;
    margin-bottom: 30px !important
}

.donation-story-column>h2 {
    font-size: 49px;
    line-height: 1.06;
    max-width: 420px
}

.donation-story-column>p {
    font-size: 13px;
    line-height: 1.9;
    max-width: 430px;
    margin: 20px 0
}

.giving-list {
    margin-top: 30px
}

.giving-list>div {
    padding: 20px 0;
    gap: 20px
}

.giving-list span {
    font-family: 'DM Sans', sans-serif;
    font-size: 9px;
    font-weight: 600;
    width: 31px;
    height: 31px;
    border-radius: 50%;
    border: 1px solid #c5d1b6;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #718857;
    flex-shrink: 0
}

.giving-list p {
    font-size: 12px;
    font-weight: 600
}

.payment-note p {
    font-size: 12px
}

.page-index .donation-section {
    background: #eef0e3;
    border-radius: 30px;
    margin: 30px 0
}

.page-index .donation-story-column>.detail-image {
    height: 350px
}

.page-index .cta-banner {
    margin-top: 40px
}

.page-title {
    font-size: clamp(38px, 5vw, 62px)
}

.detail-image {
    border-radius: 24px
}

.info-box {
    border-radius: 20px
}

@media(min-width:1200px) {
    .navbar-toggler {
        display: none
    }

    .donation-panel {
        position: sticky;
        top: 116px
    }
}

@media(min-width:1500px) {
    .modern-slider .slide-content h1 {
        font-size: 116px
    }

    .hero-belong-stamp {
        right: calc((100vw - 1240px)/2 + 18px)
    }

    .container {
        max-width: 1320px
    }
}

@media(max-width:1199px) {
    .navbar {
        min-height: 90px
    }

    .navbar-collapse {
        position: absolute;
        top: calc(100% - 5px);
        left: 20px;
        right: 20px;
        border: 1px solid #d8e0ca;
        border-radius: 22px;
        background: #fffdf6;
        box-shadow: 0 20px 40px #183d3020;
        max-height: calc(100svh - 150px);
        overflow-y: auto;
        padding: 14px 22px
    }

    .navbar-collapse:not(.show):not(.collapsing) {
        display: none
    }

    .navbar-nav {
        padding-top: 8px;
        gap: 4px
    }

    .nav-link {
        font-size: 15px;
        margin: 0;
        display: block;
        padding: 13px 17px !important
    }

    .nav-link.dropdown-toggle {
        width: 100%;
        justify-content: space-between
    }

    .dropdown-menu {
        position: static !important;
        box-shadow: none;
        background: #f1f3e8;
        margin: 8px 0 !important;
        min-width: 0;
        border: 0;
        padding: 5px
    }

    .dropdown-item {
        padding-top: 13px;
        padding-bottom: 13px
    }

    .nav-donate {
        margin: 17px 0 5px;
        width: 100%;
        font-size: 12px;
        justify-content: space-between;
        padding-left: 20px;
        min-height: 49px;
    }


    .mobile-nav-note {
        display: block;
        font-size: 9px;
        color: #7b896d;
        border-top: 1px solid #dbe3d1;
        padding: 20px 0 10px;
        margin-top: 20px;
        line-height: 1.8
    }

    .mobile-nav-note a {
        display: block;
        color: var(--ink);
        font-size: 11px;
        margin-top: 5px;
        text-decoration: none
    }

    .modern-slider .slide-content h1 {
        font-size: 86px;
        max-width: 850px
    }

    .hero-belong-stamp {
        right: 45px;
        top: 55px;
        width: 115px;
        height: 115px
    }

    .hero-belong-stamp strong {
        font-size: 22px
    }

    .hero-belong-stamp>span:first-child {
        font-size: 6px
    }

    .hero-belong-stamp>span:last-child {
        font-size: 18px
    }

    .editorial-grid {
        gap: 45px;
        grid-template-columns: 1.2fr 1fr
    }

    .editorial-copy h1 {
        font-size: 61px
    }

    .hero-art {
        height: 320px
    }

    .art-note {
        font-size: 18px;
        left: -15px;
        max-width: 240px
    }

    .programme-toolbar {
        flex-wrap: wrap
    }

    .programme-search {
        max-width: none;
        min-width: 250px
    }

    .directory-heading h2 {
        font-size: 34px
    }

    .impact-stats-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .impact-stat .number {
        font-size: 46px
    }

    .impact-stat {
        min-height: 220px
    }

    .year-grid {
        grid-template-columns: repeat(3, 1fr)
    }

    .year-finance {
        grid-template-columns: 1fr 1fr
    }

    .year-card {
        padding: 20px
    }

    .year-card h3 {
        font-size: 24px
    }

    .year-card p,
    .impact-list {
        font-size: 10px
    }

    .finance-box strong {
        font-size: 20px
    }

    .map-information {
        padding: 30px
    }

    .map-information h2 {
        font-size: 36px
    }

    .map-panel {
        min-height: 490px
    }

    .donation-section .row {
        --bs-gutter-x: 3rem
    }

    .donation-panel {
        padding: 27px
    }

    .donation-story-column>h2 {
        font-size: 43px
    }

    .contact-form {
        padding: 30px
    }

    .involve-card h2 {
        font-size: 29px
    }
}

@media(max-width:991px) {
    .container {
        padding-left: 28px;
        padding-right: 28px
    }

    .modern-slider .slide-content h1 {
        font-size: 76px;
        max-width: 730px
    }

    .modern-slider .carousel-item {
        height: 650px;
        min-height: 650px
    }

    .hero-belong-stamp {
        top: 55px;
        right: 28px
    }

    .modern-slider .slide-shade {
        background: linear-gradient(90deg, #0b251ce0, #0b251c80), linear-gradient(0deg, #0b251cbf, transparent 50%)
    }

    .modern-slider .slide-content {
        padding-bottom: 120px;
        padding-top: 50px
    }

    .modern-slider .slide-content>p {
        max-width: 420px;
        font-size: 14px
    }

    .editorial-copy h1 {
        font-size: 52px
    }

    .editorial-grid {
        gap: 30px;
        min-height: 350px
    }

    .editorial-description {
        font-size: 12px
    }

    .hero-art {
        height: 290px
    }

    .editorial-hero {
        padding-top: 45px
    }

    .editorial-copy>.eyebrow {
        font-size: 8px
    }

    .editorial-footer {
        margin-top: 45px
    }

    .impact-receipt {
        padding: 22px;
        margin: 10px 10px
    }

    .impact-receipt dd {
        font-size: 25px
    }

    .impact-receipt dt {
        font-size: 9px
    }

    .impact-receipt>p {
        font-size: 20px
    }

    .receipt-heading {
        font-size: 7px
    }

    .paper-stack {
        width: 260px;
        height: 310px
    }

    .paper-front {
        padding: 23px
    }

    .paper-front>strong {
        font-size: 34px
    }

    .paper-front>p {
        font-size: 5px
    }

    .paper-topline {
        font-size: 20px
    }

    .paper-caption {
        left: 23px;
        right: 23px
    }

    .hello-card {
        padding: 26px;
        min-height: 295px;
        border-top-left-radius: 75px
    }

    .hello-card>strong {
        font-size: 90px
    }

    .hello-card>p {
        font-size: 11px
    }

    .hello-card>a {
        font-size: 14px
    }

    .hello-topline {
        font-size: 6px
    }

    .programme-search {
        max-width: 350px
    }

    .programme-toolbar {
        gap: 20px
    }

    .programme-toolbar .filters {
        flex-wrap: wrap;
        flex-shrink: 1
    }

    .filter-btn {
        font-size: 10px;
        padding: 9px 15px
    }

    .directory-heading>p {
        max-width: 220px;
        font-size: 11px
    }

    .page-impacts .impact-container {
        padding-left: 28px;
        padding-right: 28px
    }

    .year-grid {
        grid-template-columns: 1fr
    }

    .year-card {
        padding: 28px;
        display: grid;
        grid-template-columns: 1fr 1.2fr;
        gap: 15px 35px
    }

    .year-card-header {
        grid-column: 1
    }

    .year-card h3 {
        max-width: none;
        font-size: 28px
    }

    .year-card>p {
        grid-column: 1;
        font-size: 12px
    }

    .year-finance {
        grid-column: 2;
        grid-row: 1/3;
        align-self: start;
        grid-template-columns: 1fr 1fr;
        margin: 0
    }

    .impact-list {
        grid-column: 1/-1;
        font-size: 12px;
        margin-bottom: 0;
        columns: 2;
        column-gap: 40px
    }

    .finance-box {
        padding: 18px
    }

    .finance-box strong {
        font-size: 28px
    }

    .finance-box span {
        font-size: 10px
    }

    .page-impacts .programme-panel {
        grid-template-columns: 1fr;
        padding: 30px !important;
        gap: 25px
    }

    .page-impacts .programme-panel .programme-card {
        transform: none;
        box-shadow: none
    }

    .page-impacts .programme-panel .programme-card p {
        max-width: none
    }

    .map-layout {
        grid-template-columns: .9fr 1.2fr
    }

    .map-information {
        padding: 28px
    }

    .map-tabs {
        gap: 8px
    }

    .map-tabs button {
        font-size: 8px;
        padding: 10px 12px;
        gap: 10px
    }

    .map-information h2 {
        font-size: 32px
    }

    .map-information>.eyebrow {
        font-size: 7px
    }

    .contact-conversation .contact-detail {
        padding-top: 23px;
        padding-bottom: 23px
    }

    .donation-story-column {
        margin-top: 18px
    }

    .donation-story-column>.detail-image {
        height: 400px
    }

    .donation-story-column>h2 {
        font-size: 48px
    }

    .donation-story-column>p {
        max-width: 100%
    }

    .contact-form {
        padding: 35px
    }

    .involvement-section .involve-card {
        padding: 23px;
        min-height: 360px
    }

    .involve-card h2 {
        font-size: 27px
    }

    .involve-card p {
        font-size: 11px
    }

    .involve-card .text-link {
        font-size: 9px
    }

    .involvement-photo {
        height: 350px
    }

    .involvement-photo h2 {
        font-size: 44px
    }

    .directory-help {
        gap: 20px;
        padding: 25px
    }

    .directory-help h3 {
        font-size: 20px
    }

    .directory-help p {
        font-size: 10px
    }

    .directory-help .btn {
        font-size: 10px
    }

    .report-cover {
        height: 200px
    }

    .report-year {
        font-size: 68px
    }

    .report-cover-label {
        font-size: 6px
    }

    .report-download>h2 {
        font-size: 25px
    }

    .cta-banner h2 {
        font-size: 38px
    }

    .section {
        padding: 65px 0
    }
}

@media(max-width:767px) {
    .editorial-grid {
        grid-template-columns: 1fr;
        gap: 35px
    }

    .editorial-copy h1 {
        font-size: 60px;
        max-width: 580px
    }

    .editorial-description {
        font-size: 14px;
        max-width: 500px
    }

    .editorial-copy>.eyebrow {
        font-size: 8px
    }

    .editorial-visual {
        max-width: 100%;
        width: 100%;
        padding: 0 10px 0 12px
    }

    .hero-art {
        height: 320px;
        margin-right: 4px
    }

    .hero-art>img {
        border-radius: 90px 22px 22px 22px
    }

    .art-note {
        left: -12px;
        bottom: 16px;
        font-size: 20px;
        max-width: 320px
    }

    .art-spark {
        font-size: 75px;
        right: -17px;
        top: -17px
    }

    .editorial-footer {
        margin-top: 38px;
        padding: 17px 0;
        font-size: 7px
    }

    .editorial-hero--impacts .editorial-grid {
        gap: 33px
    }

    .impact-receipt {
        max-width: 420px;
        margin: 10px auto 25px;
        padding: 28px;
        transform: rotate(2deg)
    }

    .impact-receipt dd {
        font-size: 31px
    }

    .impact-receipt dt {
        font-size: 10px
    }

    .impact-receipt>p {
        font-size: 24px
    }

    .receipt-heading {
        font-size: 9px
    }

    .paper-stack {
        width: 290px;
        height: 320px;
        margin-top: 0;
        margin-bottom: 15px
    }

    .paper-front>strong {
        font-size: 39px
    }

    .paper-front>p {
        font-size: 6px
    }

    .paper-caption {
        left: 23px;
        right: 23px;
        font-size: 10px
    }

    .paper-front>strong {
        margin-top: 22px
    }

    .hello-card {
        min-height: 270px;
        padding: 30px;
        border-radius: 80px 24px 24px 24px
    }

    .hello-card>strong {
        font-size: 100px;
        margin-top: 16px
    }

    .hello-card>a {
        max-width: 320px
    }

    .hello-topline {
        font-size: 7px
    }

    .editorial-hero--donate .hero-art {
        height: 290px
    }

    .directory-heading {
        display: block;
        margin-bottom: 25px
    }

    .directory-heading h2 {
        font-size: 35px
    }

    .directory-heading>p {
        margin-top: 15px;
        max-width: none
    }

    .programme-toolbar {
        display: block;
        padding-bottom: 25px
    }

    .programme-toolbar .filters {
        margin-bottom: 18px;
        gap: 7px
    }

    .filter-btn {
        font-size: 10px;
        padding: 9px 16px;
        min-height: 37px
    }

    .programme-search {
        max-width: none;
        min-width: 0;
        padding: 11px 15px
    }

    .programme-search input {
        font-size: 11px
    }

    .programme-directory-section {
        padding-top: 45px
    }

    .programme-card .card-copy h3 {
        min-height: 0;
        font-size: 26px
    }

    .card-copy p {
        min-height: 0;
        font-size: 13px
    }

    .card-photo .pill {
        font-size: 9px
    }

    .card-link {
        font-size: 11px
    }

    .directory-help {
        flex-wrap: wrap;
        gap: 17px
    }

    .directory-help>span {
        font-size: 42px
    }

    .directory-help>div {
        flex: 1
    }

    .directory-help .btn {
        width: 100%;
        font-size: 11px;
        margin-top: 5px
    }

    .directory-help p {
        font-size: 11px
    }

    .directory-help h3 {
        font-size: 22px
    }

    .impact-stats-grid {
        gap: 13px
    }

    .impact-stat {
        padding: 23px 20px;
        min-height: 230px;
        border-radius: 19px
    }

    .impact-stat .number {
        font-size: 36px;
        margin-bottom: 20px
    }

    .impact-stat .label {
        font-size: 11px
    }

    .impact-stat .note {
        font-size: 10px
    }

    .page-impacts .section-heading h2 {
        font-size: 35px
    }

    .page-impacts .impact-section {
        padding-top: 45px
    }

    .year-card {
        display: block;
        padding: 27px
    }

    .year-card h3 {
        font-size: 28px
    }

    .year-card>p {
        font-size: 12px
    }

    .year-finance {
        margin: 24px 0;
        gap: 10px
    }

    .impact-list {
        columns: 1;
        font-size: 12px
    }

    .finance-box {
        padding: 16px
    }

    .page-impacts .programme-panel .programme-card h2 {
        font-size: 35px
    }

    .reports-card {
        padding: 28px;
        display: block
    }

    .reports-card h2 {
        font-size: 35px
    }

    .reports-card p {
        font-size: 12px
    }

    .reports-links {
        margin-top: 23px
    }

    .source-note {
        font-size: 9px
    }

    .report-cover {
        height: 230px
    }

    .report-year {
        font-size: 83px
    }

    .report-cover-label {
        font-size: 7px
    }

    .report-cover-star {
        font-size: 175px
    }

    .report-download>h2 {
        font-size: 30px;
        min-height: 0
    }

    .report-download>p:not(.eyebrow) {
        font-size: 13px
    }

    .report-actions {
        margin-top: 5px
    }

    .page-reports .info-box {
        padding: 30px
    }

    .page-reports .info-box h2 {
        font-size: 34px
    }

    .involvement-section .involve-card {
        min-height: 300px;
        padding: 28px
    }

    .involve-card h2 {
        font-size: 35px
    }

    .involve-card p {
        font-size: 13px
    }

    .involve-card .text-link {
        font-size: 11px;
        padding-top: 18px
    }

    .involvement-photo {
        height: 350px;
        margin-top: 30px
    }

    .involvement-photo>div {
        bottom: 30px;
        left: 28px
    }

    .involvement-photo h2 {
        font-size: 39px
    }

    .map-layout {
        grid-template-columns: 1fr
    }

    .map-information {
        padding: 32px
    }

    .map-information h2 {
        font-size: 43px
    }

    .map-information>.eyebrow {
        font-size: 8px
    }

    .map-information>p:not(.eyebrow) {
        max-width: 370px
    }

    .map-tabs button {
        font-size: 10px;
        padding: 11px 17px;
        gap: 22px
    }

    .map-address p {
        font-size: 13px
    }

    .map-information>.map-small-print {
        font-size: 10px !important
    }

    .map-panel {
        min-height: 380px
    }

    .map-panel iframe {
        height: 350px;
        min-height: 350px
    }

    .contact-form {
        padding: 30px
    }

    .contact-form h2 {
        font-size: 45px
    }

    .contact-conversation .contact-detail {
        padding-left: 75px
    }

    .contact-detail h2 {
        font-size: 25px
    }

    .contact-detail p,
    .contact-detail a {
        font-size: 13px
    }

    .contact-form label {
        font-size: 11px
    }

    .contact-form .form-control {
        font-size: 13px
    }

    .donation-panel {
        padding: 29px
    }

    .donation-panel h2 {
        font-size: 40px
    }

    .donation-amounts button {
        font-size: 22px
    }

    .donation-panel>p:not(.eyebrow) {
        font-size: 13px
    }

    .donation-panel legend,
    .donation-panel label {
        font-size: 12px
    }

    .donation-summary strong {
        font-size: 33px
    }

    .donation-story-column>.detail-image {
        height: 340px
    }

    .donation-story-column>h2 {
        font-size: 44px
    }

    .donation-section .row {
        --bs-gutter-x: 1.5rem
    }

    .giving-list p {
        font-size: 12px
    }

    .page-index .donation-section {
        border-radius: 24px
    }

    .partner-logos {
        grid-template-columns: repeat(2, 1fr)
    }

    .partner-logo {
        padding: 15px
    }

    .partner-logo img {
        height: 55px;
        width: 120px
    }

    .cta-banner {
        padding: 32px
    }

    .cta-banner h2 {
        font-size: 37px
    }

    .hero-discover {
        font-size: 9px
    }

    .hero-discover>span {
        width: 25px;
        height: 32px
    }

    .modern-slider .slide-indicators {
        display: none
    }
}

@media(max-width:575px) {
    .container {
        padding-left: 22px;
        padding-right: 22px
    }

    .navbar {
        min-height: 84px;
        padding-top: 14px;
        padding-bottom: 14px
    }

    .navbar-brand img {
        width: 205px
    }

    .topbar .container>span {
        display: none
    }

    .topbar {
        font-size: 9px;
        padding: 7px 0
    }

    .navbar-collapse {
        left: 14px;
        right: 14px;
        padding: 12px 16px
    }

    .nav-link {
        font-size: 15px
    }

    .modern-slider {
        border-radius: 0 0 25px 25px
    }

    .modern-slider .carousel-item {
        height: 660px;
        min-height: 660px
    }

    .modern-slider .slide-content {
        padding-top: 105px;
        padding-bottom: 100px;
        justify-content: center
    }

    .modern-slider .slide-content h1 {
        font-size: clamp(47px, 10.8vw, 64px);
        line-height: 1.04;
        margin-bottom: 23px;
        max-width: 100%
    }

    .hero-eyebrow {
        font-size: 7px;
        letter-spacing: .1em;
        padding: 7px 10px;
        gap: 7px;
        max-width: calc(100% - 5px);
        margin-bottom: 23px
    }

    .modern-slider .slide-content>p {
        font-size: 13px;
        max-width: 360px;
        line-height: 1.9;
        margin-bottom: 25px
    }

    .hero-actions {
        gap: 22px
    }

    .hero-actions .btn {
        font-size: 11px;
        gap: 18px;
        min-height: 50px;
        padding-left: 20px
    }

    .hero-secondary {
        font-size: 10px;
        gap: 16px
    }

    .hero-secondary span {
        font-size: 21px
    }

    .hero-belong-stamp {
        top: 24px;
        right: 24px;
        width: 85px;
        height: 85px;
        box-shadow: 0 0 0 5px #d6ef8322;
        transform: rotate(10deg)
    }

    .hero-belong-stamp strong {
        font-size: 18px;
        margin: 5px 0
    }

    .hero-belong-stamp>span:first-child {
        font-size: 4.5px
    }

    .hero-belong-stamp>span:last-child {
        font-size: 14px
    }

    .modern-slider .slider-bottom {
        bottom: 23px;
        gap: 10px
    }

    .hero-discover {
        font-size: 8px;
        gap: 8px
    }

    .hero-discover>span {
        font-size: 16px
    }

    .slider-controls button {
        width: 33px;
        min-width: 33px;
        height: 33px;
        font-size: 16px
    }

    .slider-controls #sliderPlay {
        min-width: 51px;
        width: 51px;
        font-size: 8px
    }

    .values-strip {
        padding: 22px 0
    }

    .values-strip span {
        font-size: 10px
    }

    .values-strip .container {
        row-gap: 12px
    }

    .section {
        padding: 55px 0
    }

    .section-heading h2 {
        font-size: 36px
    }

    .section-heading>p {
        font-size: 12px
    }

    .editorial-hero {
        padding-top: 36px
    }

    .editorial-copy h1 {
        font-size: 48px;
        line-height: 1.05;
        margin-bottom: 20px;
        max-width: 470px
    }

    .editorial-copy>.eyebrow {
        font-size: 7px;
        letter-spacing: .1em;
        margin-bottom: 20px;
        gap: 8px
    }

    .editorial-description {
        font-size: 13px;
        line-height: 1.9;
        margin-bottom: 25px;
        max-width: 420px
    }

    .editorial-copy .btn {
        font-size: 11px;
        min-height: 48px
    }

    .editorial-visual {
        padding-left: 5px;
        padding-right: 10px
    }

    .hero-art {
        height: 280px
    }

    .art-note {
        font-size: 19px;
        left: -5px;
        padding: 12px 17px;
        max-width: 300px
    }

    .art-spark {
        font-size: 68px;
        right: -20px;
        top: -18px
    }

    .editorial-footer {
        font-size: 6.5px;
        letter-spacing: .1em;
        margin-top: 36px
    }

    .editorial-footer>span:last-child {
        gap: 15px
    }

    .editorial-footer b {
        font-size: 19px
    }

    .hello-card {
        min-height: 265px;
        padding: 30px;
        border-top-left-radius: 75px
    }

    .hello-card>strong {
        font-size: 95px
    }

    .hello-card>a {
        font-size: 16px
    }

    .editorial-hero--donate .hero-art {
        height: 260px
    }

    .directory-heading h2 {
        font-size: 32px
    }

    .directory-heading>p {
        font-size: 11px
    }

    .programme-directory-section,
    .report-library-section,
    .involvement-section,
    .contact-conversation {
        padding-top: 43px
    }

    .programme-toolbar .filters {
        gap: 6px
    }

    .filter-btn {
        padding: 8px 13px;
        font-size: 9px;
        min-height: 35px
    }

    .card-copy {
        padding: 25px
    }

    .directory-help {
        padding: 23px;
        margin-top: 30px
    }

    .directory-help>span {
        font-size: 35px
    }

    .directory-help h3 {
        font-size: 21px
    }

    .impact-receipt {
        padding: 25px;
        max-width: 350px
    }

    .receipt-heading {
        font-size: 8px
    }

    .impact-receipt>p {
        font-size: 22px
    }

    .impact-receipt dt {
        font-size: 9px;
        max-width: 135px
    }

    .impact-receipt dd {
        font-size: 28px
    }

    .impact-stat {
        min-height: 225px;
        padding: 22px 18px
    }

    .impact-stat .number {
        font-size: 31px
    }

    .impact-stat .note {
        font-size: 9px
    }

    .impact-stat .label {
        font-size: 11px
    }

    .page-impacts .impact-container {
        padding-left: 22px;
        padding-right: 22px
    }

    .page-impacts .section-heading h2 {
        font-size: 32px
    }

    .page-impacts .programme-panel {
        border-radius: 0;
        padding: 30px 22px !important
    }

    .page-impacts .programme-panel .programme-card {
        padding: 0
    }

    .page-impacts .programme-panel .programme-card h2 {
        font-size: 34px
    }

    .page-impacts .programme-panel .programme-card p {
        font-size: 12px
    }

    .reports-card h2 {
        font-size: 32px
    }

    .paper-stack {
        width: 265px;
        height: 310px;
        margin-top: 5px
    }

    .paper-front>strong {
        font-size: 36px
    }

    .paper-years {
        font-size: 9px
    }

    .report-cover {
        height: 220px
    }

    .report-year {
        font-size: 77px
    }

    .report-download>h2 {
        font-size: 28px
    }

    .involvement-photo h2 {
        font-size: 36px
    }

    .involvement-photo {
        height: 330px
    }

    .involvement-photo .eyebrow {
        font-size: 8px
    }

    .contact-form {
        padding: 29px 25px
    }

    .contact-form h2 {
        font-size: 43px
    }

    .contact-detail h2 {
        font-size: 24px
    }

    .contact-detail p,
    .contact-detail a {
        font-size: 12px
    }

    .contact-conversation .contact-detail {
        padding-left: 70px
    }

    .contact-icon {
        left: 21px;
        width: 29px;
        height: 29px;
        font-size: 17px
    }

    .map-information {
        padding: 30px 25px
    }

    .map-information h2 {
        font-size: 39px
    }

    .map-tabs button {
        font-size: 9px;
        padding: 10px 15px;
        gap: 20px
    }

    .map-panel iframe {
        min-height: 330px;
        height: 330px
    }

    .map-panel {
        min-height: 370px
    }

    .map-caption {
        font-size: 8px;
        padding: 14px
    }

    .map-section {
        padding-top: 0;
        padding-bottom: 45px
    }

    .donation-section {
        padding-top: 43px;
        padding-bottom: 45px
    }

    .donation-panel {
        padding: 27px 23px
    }

    .donation-topline {
        font-size: 6.5px
    }

    .donation-panel h2 {
        font-size: 37px
    }

    .donation-panel>.eyebrow {
        font-size: 8px
    }

    .donation-panel>p:not(.eyebrow) {
        font-size: 12px
    }

    .donation-panel legend,
    .donation-panel label {
        font-size: 11px
    }

    .donation-amounts button {
        padding: 17px 9px;
        font-size: 21px
    }

    .donation-amounts button[data-amount=other] {
        font-size: 11px
    }

    .donation-frequency label {
        font-size: 11px;
        padding: 12px 10px
    }

    .donation-panel .form-select {
        font-size: 10px
    }

    .donation-summary {
        padding: 18px;
        margin-top: 22px
    }

    .donation-summary strong {
        font-size: 31px
    }

    .donation-story-column>.detail-image {
        height: 285px
    }

    .donation-story-column>h2 {
        font-size: 40px
    }

    .page-index .donation-story-column>.detail-image {
        height: 285px
    }

    .giving-list p {
        font-size: 11px
    }

    .story-photo>img {
        height: 320px;
        border-top-left-radius: 85px
    }

    .photo-caption {
        font-size: 20px;
        padding: 12px 15px
    }

    .story-copy h2 {
        font-size: 36px
    }

    .story-copy p {
        font-size: 13px
    }

    .impact-grid strong {
        font-size: 36px
    }

    .impact-grid p {
        font-size: 10px
    }

    .schedule-card {
        border-radius: 23px;
        padding: 28px
    }

    .cta-banner {
        border-radius: 23px;
        padding: 30px
    }

    .cta-banner h2 {
        font-size: 35px
    }

    .cta-banner .btn {
        min-width: 0;
        font-size: 11px;
        min-height: 49px
    }

    .partner-section h2 {
        font-size: 25px
    }

    .partner-logos {
        gap: 10px
    }

    .partner-logo {
        padding: 13px
    }

    .site-footer {
        padding-top: 45px
    }

    .footer-brand {
        font-size: 51px
    }

    .footer-intro {
        font-size: 26px
    }

    .footer-bottom {
        font-size: 9px
    }

    .site-footer h2 {
        font-size: 11px
    }

    .site-footer .col-6 a {
        font-size: 11px
    }

    .report-library-section {
        padding-top: 45px
    }
}

@media(max-width:380px) {
    .modern-slider .carousel-item {
        height: 690px;
        min-height: 690px
    }

    .modern-slider .slide-content h1 {
        font-size: 45px
    }

    .hero-actions {
        gap: 17px
    }

    .hero-actions .btn {
        font-size: 10px;
        padding-left: 17px;
        gap: 15px
    }

    .hero-secondary {
        font-size: 9px;
        gap: 10px
    }

    .editorial-copy h1 {
        font-size: 43px
    }

    .hero-eyebrow {
        font-size: 6px
    }

    .hero-discover {
        font-size: 7px
    }

    .impact-stat .number {
        font-size: 27px
    }

    .impact-stat .note {
        font-size: 9px
    }

    .impact-stat {
        padding: 20px 15px
    }

    .map-tabs {
        gap: 6px
    }

    .map-tabs button {
        font-size: 8px;
        padding: 10px 13px
    }

    .donation-panel {
        padding: 25px 20px
    }

    .donation-panel legend,
    .donation-panel label {
        font-size: 10px
    }

    .hello-card>strong {
        font-size: 90px
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    *,
    *::before,
    *::after {
        transition: none !important;
        animation: none !important
    }
}

/* Comfortable reading sizes alongside expressive display type. */
@media(min-width:992px) {
    .nav-link {
        font-size: 13px
    }

    .editorial-description {
        font-size: 16px
    }

    .modern-slider .slide-content>p {
        font-size: 16px
    }

    .card-copy p {
        font-size: 14px
    }

    .report-download>p:not(.eyebrow) {
        font-size: 14px
    }

    .year-card p,
    .impact-list {
        font-size: 12px
    }

    .impact-stat .note {
        font-size: 11px
    }

    .contact-detail p,
    .contact-detail a {
        font-size: 14px
    }

    .contact-form label {
        font-size: 12px
    }

    .contact-form .form-control {
        font-size: 14px
    }

    .map-information>p:not(.eyebrow) {
        font-size: 14px
    }

    .map-address p {
        font-size: 14px
    }

    .donation-panel>p:not(.eyebrow) {
        font-size: 14px
    }

    .donation-panel legend,
    .donation-panel label {
        font-size: 12px
    }

    .donation-story-column>p {
        font-size: 15px
    }

    .involve-card p {
        font-size: 14px
    }

    .directory-heading>p {
        font-size: 13px
    }
}

.programme-card {
    display: flex;
    flex-direction: column
}

.card-copy {
    display: flex;
    flex-direction: column;
    flex: 1
}

.card-copy p {
    flex: 1
}

.card-link {
    margin-top: auto
}

.map-tabs button {
    min-height: 42px
}

@media(max-width:575px) {
    .editorial-description {
        font-size: 14px
    }

    .contact-detail p,
    .contact-detail a {
        font-size: 13px
    }

    .involve-card p {
        font-size: 14px
    }

    .report-download>p:not(.eyebrow) {
        font-size: 14px
    }
}

@media(max-width:575px) {
    .container>.row.g-5 {
        --bs-gutter-x: 2rem
    }
}