/* Namespaced layout for new internal-page EAA blocks. Homepage clone classes stay untouched. */
:root {
  --eaa-red: #d32737;
  --v2-highlight-red: #d32737;
}

html body,
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body p,
html body a,
html body button,
html body input,
html body select,
html body textarea {
  font-family: "greycliff-cf", "Helvetica Neue", Arial, sans-serif;
}

body header {
  background-color: var(--eaa-red) !important;
  border-bottom: 1px solid #fff;
  height: 85px !important;
  min-height: 85px;
}

body header .overlay {
  background: transparent !important;
}

body header .header-logo img.png-version {
  display: none !important;
}

body header .header-logo img.svg-version {
  left: 28px !important;
  top: 50% !important;
  transform: translateY(-50%);
  width: 170px !important;
  height: auto !important;
  max-height: 52px;
}

body header .main-nav .nav-list .nav-element > a,
body header .searchbox-anchor,
body header .hamburger {
  color: #fff !important;
}

@media (min-width: 80.0625rem) {
  body header ul.nav-list {
    top: 50%;
    right: 240px;
    margin-bottom: 0;
    transform: translateY(-50%);
  }

  body header .searchbox-inner-wrapper {
    top: 50%;
    transform: translateY(-50%);
  }
}

body header .donate-cta {
  position: static;
  width: max-content;
}

body header .donate-cta a {
  background-color: transparent !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  column-gap: 10px;
  height: 60px;
  padding: 10px 25px !important;
  border: 1px solid #fff;
  color: #fff !important;
  font-family: greycliff-cf, "Gotham-Book", Arial, sans-serif !important;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 10px !important;
  text-decoration: none;
  text-transform: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

body header .donate-cta a:focus,
body header .donate-cta a:hover {
  background: #fff !important;
  color: var(--eaa-red) !important;
}

body header .donate-cta .text {
  display: inline-block;
}

@media (max-width: 80rem) {
  body header {
    border-bottom: 1px solid #fff;
  }

  body header .header-logo img.svg-version {
    left: 24px !important;
    top: 50% !important;
    width: 170px !important;
  }

  body header .searchbox-wrapper {
    height: 100%;
    position: absolute !important;
    right: 82px !important;
    top: 0 !important;
  }

  body header .searchbox-inner-wrapper {
    right: 0 !important;
    top: calc(50% + 5px) !important;
    transform: translateY(-50%) !important;
  }

  body header .searchbox-anchor {
    align-items: center;
    display: flex !important;
    height: 46px;
    justify-content: center;
    width: 46px;
  }

  body header .searchbox-anchor img.normal,
  body header .searchbox-anchor img.close {
    height: 29px !important;
    width: 29px !important;
  }

  body header nav .hamburger {
    align-items: center;
    display: flex !important;
    height: 52px !important;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 52px !important;
  }

  body header nav .hamburger.is-active + ul.nav-list {
    background-color: var(--v2-highlight-red) !important;
    direction: ltr;
    display: block !important;
    left: 0 !important;
    min-height: 470px;
    opacity: 1 !important;
    padding: 118px 24px 28px !important;
    right: 0 !important;
    text-align: left;
    top: 0 !important;
    transform: none !important;
    visibility: visible !important;
    width: 100% !important;
  }

  body header nav .hamburger.is-active + ul.nav-list > li {
    display: block;
    margin: 0 0 18px !important;
    padding: 0 !important;
    text-align: left;
  }

  body header nav .hamburger.is-active + ul.nav-list > li > a {
    display: inline-flex;
    justify-content: flex-start;
    line-height: 1.2 !important;
    min-height: 34px;
    padding: 0 !important;
    text-align: left !important;
  }

  body header nav .hamburger.is-active + ul.nav-list > li:hover {
    background: #fff;
  }

  body header nav .hamburger.is-active + ul.nav-list > li:hover > a {
    color: var(--v2-highlight-red) !important;
  }

  body header .donate-cta a {
    padding: 10px 25px !important;
  }

  body header nav .hamburger.is-active + ul.nav-list .donate-cta a {
    justify-content: center;
    min-width: 165px;
  }

  body section.main-banner .block-quote,
  body section.main-banner .slide-content,
  body section .filter-header-wrapper .banner-caption {
    direction: ltr;
    text-align: left;
  }
}

@media (max-width: 640px) {
  body header .header-logo img.svg-version {
    left: 22px !important;
    max-width: calc(100vw - 170px);
  }

  body header .searchbox-wrapper {
    right: 74px !important;
  }

  body header nav .hamburger {
    right: 14px !important;
  }

  body header nav .hamburger.is-active + ul.nav-list {
    min-height: 500px;
    padding-left: 46px !important;
  }

  body section.where-we-work.stat-section {
    height: auto !important;
    min-height: 0;
    overflow: visible !important;
    padding: 56px 0 48px;
  }

  body section.where-we-work .section-inner {
    padding-left: 22px !important;
    padding-right: 22px !important;
    position: relative;
  }

  body section.where-we-work .section-content {
    overflow: visible !important;
    position: relative;
  }

  body section.where-we-work .our-work-menu {
    display: block !important;
    margin-top: 24px;
    position: relative !important;
    top: auto !important;
    width: 100% !important;
  }

  body section.where-we-work .our-work-menu .grid-cell.program {
    aspect-ratio: 1 / .98;
    display: block !important;
    float: none !important;
    height: auto !important;
    left: auto !important;
    margin: 0 auto !important;
    max-width: 344px;
    min-height: 0 !important;
    position: relative !important;
    top: auto !important;
    transform: none !important;
    width: 100% !important;
  }

  body section.where-we-work .our-work-menu .grid-cell.program + .grid-cell.program {
    margin-top: 0 !important;
  }

  body section.where-we-work .our-work-menu .grid-cell.program .cell-inner {
    align-items: center;
    aspect-ratio: 1 / .98;
    display: flex !important;
    height: 100% !important;
    justify-content: center;
    min-height: 0 !important;
    padding: 0 18px;
  }

  body section.where-we-work .our-work-menu .grid-cell.program p {
    margin: 0;
    max-width: 100%;
    text-align: center;
    white-space: normal;
  }
}

.eaa-block {
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 1470px;
  padding: 72px 32px;
}

.eaa-block * {
  box-sizing: border-box;
}

.eaa-block__eyebrow {
  color: #b3955a;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
  margin: 0 0 12px;
  text-transform: uppercase;
}

.eaa-block h1,
.eaa-block h2,
.eaa-block h3 {
  color: #584849;
  letter-spacing: 0;
  margin: 0 0 18px;
}

.eaa-block p {
  margin: 0 0 16px;
}

/* Localised EAA article bodies. The source uses alternating text/image rows
   and several gallery layouts; these rules preserve that editorial structure
   while keeping every imported Media Library image responsive. */
.eaci-standard-page__innerblocks .eaa-rich-content {
  color: #4f494a;
  max-width: none;
  padding: 0 32px 40px;
}

.eaci-standard-page__innerblocks .eaa-rich-content > p,
.eaci-standard-page__innerblocks .eaa-rich-content > h2,
.eaci-standard-page__innerblocks .eaa-rich-content > h3,
.eaci-standard-page__innerblocks .eaa-rich-content > ul,
.eaci-standard-page__innerblocks .eaa-rich-content > ol {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
}

.eaa-rich-content img {
  display: block;
  height: auto;
  max-width: 100%;
}

.eaa-rich-content .eaa-content-row {
  display: flow-root;
  isolation: isolate;
  margin: clamp(2rem, 4vw, 4rem) auto;
  max-width: 68rem;
  overflow: hidden;
  position: relative;
}

.eaa-rich-content .eaa-content-row > *,
.eaa-rich-content .eaa-local-text-image > * {
  position: relative;
  z-index: 1;
}

.eaa-rich-content .eaa-content-row > .eaa-content-media {
  float: left;
  margin: 0 clamp(1.5rem, 3vw, 3.5rem) 1.25rem 0;
  width: min(42%, 28rem);
}

.eaa-rich-content .eaa-content-row--image-right > .eaa-content-media {
  float: right;
  margin-left: clamp(1.5rem, 3vw, 3.5rem);
  margin-right: 0;
}

.eaa-rich-content .eaa-content-media img,
.eaa-rich-content .eaa-local-text-image figure img {
  width: 100%;
}

.eaa-rich-content .eaa-local-text-image {
  align-items: start;
  display: grid;
  gap: clamp(1.5rem, 3vw, 3.5rem);
  grid-template-columns: minmax(0, 1.1fr) minmax(17rem, .9fr);
  isolation: isolate;
  margin: clamp(2rem, 4vw, 4rem) auto;
  max-width: 68rem;
  overflow: hidden;
  position: relative;
}

.eaa-rich-content .eaa-local-text-image figure {
  grid-column: 2;
  margin: 0;
}

.eaa-rich-content .eaa-local-text-image__body {
  grid-column: 1;
  grid-row: 1;
}

.eaa-rich-content .eaa-local-text-image[data-source-layout*="right-text"] figure {
  grid-column: 1;
}

.eaa-rich-content .eaa-local-text-image[data-source-layout*="right-text"] .eaa-local-text-image__body {
  grid-column: 2;
}

.eaa-rich-content .eaa-local-text-image[data-source-layout*="background"] .eaa-local-text-image__body {
  background: rgba(255, 255, 255, .7);
  border-top: 4px solid #d32737;
  padding: clamp(1.25rem, 2.5vw, 2.25rem);
}

.eaa-rich-content .eaa-local-gallery {
  display: grid;
  gap: clamp(1rem, 2vw, 1.75rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: clamp(2rem, 4vw, 4rem) auto;
  max-width: 68rem;
}

.eaa-rich-content .eaa-local-gallery[data-source-layout="single-image-layout"] {
  grid-template-columns: minmax(0, 1fr);
  max-width: 56rem;
}

.eaa-rich-content .eaa-local-gallery figure {
  background: #fff;
  margin: 0;
  overflow: hidden;
}

.eaa-rich-content .eaa-local-gallery img {
  aspect-ratio: 3 / 2;
  object-fit: cover;
  width: 100%;
}

.eaa-rich-content .eaa-local-gallery figcaption {
  color: #696365;
  font-size: .82rem;
  line-height: 1.4;
  padding: .75rem .9rem .9rem;
}

@media (max-width: 48rem) {
  .eaci-standard-page__innerblocks .eaa-rich-content {
    padding: 0 20px 28px;
  }

  .eaa-rich-content .eaa-content-row,
  .eaa-rich-content .eaa-local-text-image {
    margin: 2rem auto;
  }

  .eaa-rich-content .eaa-local-text-image {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .eaa-rich-content .eaa-content-row > .eaa-content-media,
  .eaa-rich-content .eaa-content-row--image-right > .eaa-content-media,
  .eaa-rich-content .eaa-local-text-image figure {
    float: none;
    margin: 0 0 1rem;
    order: 0;
    width: 100%;
  }

  .eaa-rich-content .eaa-content-row > p,
  .eaa-rich-content .eaa-local-text-image__body {
    order: 1;
    width: 100%;
  }

  .eaa-rich-content .eaa-local-gallery {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* EAA editorial related-content system. The source template uses a wide
   five-card canvas beneath the narrow 53rem article column. */
.eaa-related-content {
  box-sizing: border-box;
  max-width: none;
}

.eaci-standard-page__article--detail .eaa-related-content {
  margin: 4rem 0 0 50%;
  padding: 0 0 2rem;
  transform: translateX(-50%);
  width: min(calc(100vw - 5.5rem), 90rem);
}

.eaa-related-content .related-content-block > .content-title {
  color: #2d2b2c !important;
  font-size: clamp(1.65rem, 2.5vw, 2rem) !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  margin: 0 0 3rem !important;
  text-transform: uppercase !important;
}

.eaa-related-content__grid {
  align-items: start;
  display: grid;
  gap: 1.875rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.eaa-related-content__item {
  --eaa-related-accent: #6f4e37;
  background: #fff;
  border: 1px solid var(--eaa-related-accent);
  box-sizing: border-box;
  min-width: 0;
  overflow: hidden;
}

.eaa-related-content__item--eaa-news { --eaa-related-accent: #d32737; }
.eaa-related-content__item--eaa-focus { --eaa-related-accent: #6f4e37; }
.eaa-related-content__item--eaa-story { --eaa-related-accent: #7a426f; }
.eaa-related-content__item--eaa-event { --eaa-related-accent: #f0a019; }
.eaa-related-content__item--eaa-resource { --eaa-related-accent: #5b9eb4; }
.eaa-related-content__item--eaa-project { --eaa-related-accent: #307b49; }
.eaa-related-content__item--post { --eaa-related-accent: #584849; }

.eaa-related-content__type {
  background: var(--eaa-related-accent);
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .02em;
  padding: .65rem .85rem;
  text-transform: uppercase;
}

.eaa-related-content__image {
  display: block;
  overflow: hidden;
}

.eaa-related-content__image img {
  aspect-ratio: 5 / 4;
  display: block;
  height: auto;
  margin: 0 !important;
  object-fit: cover;
  transition: transform 1.2s ease;
  width: 100%;
}

.eaa-related-content__image:hover img,
.eaa-related-content__image:focus img {
  transform: scale(1.05);
}

.eaa-related-content__body {
  padding: 1.35rem;
}

.eaa-related-content__body time {
  color: #777;
  display: block;
  font-size: .68rem;
  margin: 0 0 1rem;
  padding-left: 1.15rem;
  position: relative;
  text-transform: uppercase;
}

.eaa-related-content__body time::before {
  border: 1px solid var(--eaa-related-accent);
  content: '';
  height: .68rem;
  left: 0;
  position: absolute;
  top: .08rem;
  width: .68rem;
}

.eaa-related-content__body h3 {
  color: #222 !important;
  font-size: clamp(1.05rem, 1.35vw, 1.35rem) !important;
  line-height: 1.25 !important;
  margin: 0 0 1rem !important;
  padding: 0 0 1rem;
  position: relative;
  text-transform: none !important;
}

.eaa-related-content__body h3::after {
  background: var(--eaa-related-accent);
  bottom: 0;
  content: '';
  height: 3px;
  left: 0;
  position: absolute;
  width: 3.125rem;
}

.eaa-related-content__body h3 a {
  color: #222 !important;
  text-decoration: none !important;
}

.eaa-related-content__body h3 a:hover,
.eaa-related-content__body h3 a:focus-visible {
  color: var(--eaa-related-accent) !important;
  text-decoration: underline !important;
}

.eaa-related-content__body p {
  color: #555;
  display: -webkit-box;
  font-size: .95rem !important;
  line-height: 1.55 !important;
  margin: 0 !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

@media (max-width: 73rem) {
  .eaa-related-content__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 48rem) {
  .eaci-standard-page__article--detail .eaa-related-content {
    margin-top: 3rem;
    width: calc(100vw - 2.5rem);
  }

  .eaa-related-content .related-content-block > .content-title {
    margin-bottom: 2rem !important;
  }

  .eaa-related-content__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.eaa-inside-hero {
  background: #584849;
  color: #fff;
  max-width: none;
  min-height: 380px;
  overflow: hidden;
  position: relative;
}

.eaa-inside-hero__inner {
  align-items: center;
  display: grid;
  gap: 36px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 42%);
  margin: 0 auto;
  max-width: 1470px;
  min-height: 380px;
}

.eaa-inside-hero h1,
.eaa-inside-hero .eaa-block__eyebrow {
  color: #fff;
}

.eaa-inside-hero__media img,
.eaa-content-image__media img,
.eaa-card img,
.eaa-partner-logo-grid img {
  display: block;
  height: auto;
  max-width: 100%;
}

.eaa-inside-hero__media img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
}

.eaa-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}

.eaa-breadcrumbs a,
.eaa-breadcrumbs span {
  color: inherit;
  font-size: 13px;
}

.eaa-content-image {
  align-items: center;
  display: grid;
  gap: 40px;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 42%);
}

.eaa-content-image.is-image-left .eaa-content-image__media {
  order: -1;
}

.eaa-grid {
  display: grid;
  gap: 24px;
}

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

.eaa-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.eaa-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.eaa-card,
.eaa-fact,
.eaa-accordion__item,
.eaa-timeline__item {
  border: 1px solid rgba(88, 72, 73, 0.16);
  border-radius: 6px;
  padding: 24px;
}

.eaa-card__image {
  margin: -24px -24px 20px;
}

.eaa-card__image img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
}

.eaa-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-bottom: 24px;
}

.eaa-filter-bar a {
  border: 1px solid rgba(88, 72, 73, 0.22);
  border-radius: 999px;
  color: #584849;
  padding: 8px 14px;
  text-decoration: none;
}

.eaa-filter-bar a.is-active {
  background: #b3955a;
  border-color: #b3955a;
  color: #fff;
}

.eaa-stat__number {
  color: #b3955a;
  display: block;
  font-size: 40px;
  line-height: 1;
}

.eaa-accordion__item + .eaa-accordion__item,
.eaa-timeline__item + .eaa-timeline__item {
  margin-top: 14px;
}

.eaa-accordion summary {
  color: #584849;
  cursor: pointer;
  font-weight: 700;
}

.eaa-partner-logo-grid .eaa-card {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 150px;
}

@media (max-width: 800px) {
  .eaa-block {
    padding: 48px 20px;
  }

  .eaa-inside-hero__inner,
  .eaa-content-image,
  .eaa-grid--2,
  .eaa-grid--3,
  .eaa-grid--4 {
    grid-template-columns: 1fr;
  }

  .eaa-content-image.is-image-left .eaa-content-image__media {
    order: 0;
  }
}
