/* AUTO-GENERATED — do not edit directly.
 * Edit files in src/blocks-css/ then run: pnpm --filter @wilderness/blocks generate-css
 */

/*
 * Wilderness CMS — Shared Master Blocks Stylesheet
 *
 * Inject once per page (public web) or per preview iframe (admin).
 * Each block is scoped to .block-{id} — no style leakage between blocks.
 * Uses CSS custom properties from the WI design system (defined in :root by the page).
 */

@font-face {
  font-family: 'Sora';
  src: url('/fonts/sora-latin-ext.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Sora';
  src: url('/fonts/sora-latin.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Lato';
  src: url('/fonts/lato-400-latin-ext.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Lato';
  src: url('/fonts/lato-400-latin.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Lato';
  src: url('/fonts/lato-700-latin-ext.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Lato';
  src: url('/fonts/lato-700-latin.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --font-heading: 'Sora', sans-serif;
  --font-body: 'Lato', sans-serif;
}

/* ── Accessibility helpers ────────────────────────────────────── */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ── Responsive visibility ────────────────────────────────────── */
@media (max-width: 767px) {
  .block-hidden-mobile { display: none !important; }
}
@media (min-width: 1024px) {
  .block-hidden-desktop { display: none !important; }
}

/* ── Global rich text element defaults ───────────────────────── */
.lexkit-list-nested-item {
  list-style-type: none;
}

.lexkit-list-nested-item > ul {
  list-style-type: circle;
}

.lexkit-list-nested-item > ol {
  list-style-type: lower-alpha;
}

strong, b {
  font-weight: 700;
  color: var(--color-forest-green, #004432);
}

a:not([class]),
a.lexkit-link {
  font-weight: 700;
  text-decoration: underline;
  color: var(--color-moss-green, #13735F);
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  text-decoration: none;
  color: var(--color-moss-green, #13735F);
}

[id] {
  scroll-margin-top: var(--nav-height, 0px);
}

sub, sup {
  font-size: 0.7em !important;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub { bottom: -0.25em; }
sup { top: -0.4em; }
/* ── 8-Step Process (block-8-step-v1) ────────────────────────────── */

.block-8-step-v1 {
  background-color: var(--color-light-grey);
  hyphens: manual;
  -webkit-hyphens: manual;
}

.dark .block-8-step-v1 {
  background-color: var(--color-bg-dark);
}

.block-8-step-v1 .step-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

/* ── Header — left aligned ── */

.block-8-step-v1 .step-header {
  margin-bottom: 20px;
}

.block-8-step-v1 .step-headline {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 32px;
  line-height: 1.15;
  color: var(--color-forest-green);
  margin: 0 0 12px;
}

.dark .block-8-step-v1 .step-headline {
  color: var(--color-accent-dark);
}

.block-8-step-v1 .step-subheadline {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: clamp(16px, calc(1vw + 12px), var(--text-h5));
  line-height: var(--text-h5--line-height);
  color: var(--color-black);
  margin: 0;
}

.dark .block-8-step-v1 .step-subheadline {
  color: var(--color-text-secondary-dark);
}

/* ── Carousel ── */

.block-8-step-v1 .step-carousel {
  width: 100vw;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.block-8-step-v1 .step-track {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  list-style: none;
  /* padding-left aligns first card with headline on any viewport width */
  padding: 24px max(24px, calc(50vw - 696px)) 24px;
  scroll-padding-left: max(24px, calc(50vw - 696px));
  margin: 0;
}

.block-8-step-v1 .step-track::-webkit-scrollbar {
  display: none;
}

/* ── Card ── */

.block-8-step-v1 .step-card {
  position: relative;
  flex: 0 0 260px;
  min-height: 380px;
  border-radius: 28px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background-color: var(--color-white);
  scroll-snap-align: start;
  transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.block-8-step-v1 .step-card:hover {
  transform: scale(1.03);
  z-index: 1;
}

.dark .block-8-step-v1 .step-card {
  background-color: var(--color-surface-dark);
}

/* Backdrop overlay — only visible in image mode */
.block-8-step-v1 .step-backdrop {
  display: none;
  position: absolute;
  inset: 0;
  background: linear-gradient(170deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.78) 100%);
  z-index: 1;
}

/* Card content */
.block-8-step-v1 .step-content {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 24px;
}

/* Step number */
.block-8-step-v1 .step-number {
  display: block;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 19px;
  line-height: 1.3;
  color: var(--color-moss-green);
  margin: 0;
  padding-bottom: 16px;
  letter-spacing: -0.02em;
}

.dark .block-8-step-v1 .step-card:not([data-bg="color"]):not([data-bg="image"]) .step-number {
  color: var(--color-accent-dark);
}

/* Step name */
.block-8-step-v1 .step-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 19px;
  line-height: 1.3;
  color: var(--color-black);
  margin: 0 0 10px;
}

.dark .block-8-step-v1 .step-card:not([data-bg="color"]):not([data-bg="image"]) .step-name {
  color: var(--color-text-dark);
}

/* Step description */
.block-8-step-v1 .step-desc {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-60);
  margin: 0;
}

.dark .block-8-step-v1 .step-card:not([data-bg="color"]):not([data-bg="image"]) .step-desc {
  color: var(--color-text-secondary-dark);
}

.block-8-step-v1 .step-desc p { margin: 0 0 8px; }
.block-8-step-v1 .step-desc p:last-child { margin-bottom: 0; }

/* ── Nav buttons ── */

.block-8-step-v1 .step-nav {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 20px;
}

.block-8-step-v1 .step-progress {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  height: 40px;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
  padding: 0 14px;
  overflow: hidden;
}

.block-8-step-v1 .step-progress-fill {
  flex: 1;
  height: 4px;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.15);
  min-width: 0;
}

.dark .block-8-step-v1 .step-progress {
  background: rgba(255, 255, 255, 0.1);
}

.dark .block-8-step-v1 .step-progress-fill {
  background: rgba(255, 255, 255, 0.2);
}

.block-8-step-v1 .step-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 0.15s, opacity 0.15s;
  flex-shrink: 0;
}

.block-8-step-v1 .step-btn:hover:not(:disabled) {
  background: rgba(0, 0, 0, 0.12);
}

.block-8-step-v1 .step-btn:disabled {
  opacity: 0.4;
  cursor: default;
}

.dark .block-8-step-v1 .step-btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.6);
}

.dark .block-8-step-v1 .step-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
}

.block-8-step-v1 .step-btn:focus-visible {
  outline: 2px solid var(--color-moss-green);
  outline-offset: 2px;
}
.dark .block-8-step-v1 .step-btn:focus-visible {
  outline-color: var(--color-accent-dark);
}

/* ── Card entrance animations ── */

.block-8-step-v1 .step-card.step-hidden {
  opacity: 0;
}

@keyframes step-in-fwd {
  from { opacity: 0; transform: translateX(72px); }
  to   { opacity: 1; transform: none; }
}
@keyframes step-in-bwd {
  from { opacity: 0; transform: translateX(-72px); }
  to   { opacity: 1; transform: none; }
}

.block-8-step-v1 .step-card.step-in-fwd {
  animation: step-in-fwd 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
  transition: none;
}
.block-8-step-v1 .step-card.step-in-bwd {
  animation: step-in-bwd 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .block-8-step-v1 .step-card { transition: none; }
  .block-8-step-v1 .step-card.step-hidden { opacity: 1; }
  .block-8-step-v1 .step-card.step-in-fwd,
  .block-8-step-v1 .step-card.step-in-bwd { animation: none; }
}

/* ── Image mode ── */

.block-8-step-v1 .step-card[data-bg="image"]::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: var(--card-img);
  background-size: cover;
  background-position: center;
  z-index: 0;
}

.block-8-step-v1 .step-card[data-bg="image"] .step-backdrop {
  display: block;
}

.block-8-step-v1 .step-card[data-bg="image"] .step-number,
.block-8-step-v1 .step-card[data-bg="image"] .step-name,
.block-8-step-v1 .step-card[data-bg="image"] .step-desc {
  color: var(--color-white);
}

/* ── Color mode ── */

/* Dark bg → white text */
.block-8-step-v1 .step-card[data-bg="color"][data-color="forest-green"] { background-color: var(--color-forest-green); }
.block-8-step-v1 .step-card[data-bg="color"][data-color="moss-green"]   { background-color: var(--color-moss-green); }
.block-8-step-v1 .step-card[data-bg="color"][data-color="dark-red"]     { background-color: var(--color-dark-red); }

.block-8-step-v1 .step-card[data-bg="color"][data-color="forest-green"] .step-number,
.block-8-step-v1 .step-card[data-bg="color"][data-color="forest-green"] .step-name,
.block-8-step-v1 .step-card[data-bg="color"][data-color="forest-green"] .step-desc,
.block-8-step-v1 .step-card[data-bg="color"][data-color="moss-green"] .step-number,
.block-8-step-v1 .step-card[data-bg="color"][data-color="moss-green"] .step-name,
.block-8-step-v1 .step-card[data-bg="color"][data-color="moss-green"] .step-desc,
.block-8-step-v1 .step-card[data-bg="color"][data-color="dark-red"] .step-number,
.block-8-step-v1 .step-card[data-bg="color"][data-color="dark-red"] .step-name,
.block-8-step-v1 .step-card[data-bg="color"][data-color="dark-red"] .step-desc {
  color: var(--color-white);
}

/* ── Responsive ── */

@media (min-width: 768px) {
  .block-8-step-v1 .step-inner { padding: 64px 48px; }
  .block-8-step-v1 .step-header { margin-bottom: 40px; }
  .block-8-step-v1 .step-headline { font-size: 40px; }
  .block-8-step-v1 .step-progress { flex: none; width: 176px; }
  .block-8-step-v1 .step-card  { flex: 0 0 300px; min-height: 400px; }
  /* 696 becomes 720-48=672 for tablet inner padding */
  .block-8-step-v1 .step-track {
    padding: 24px max(48px, calc(50vw - 672px)) 24px;
    scroll-padding-left: max(48px, calc(50vw - 672px));
  }
}

@media (min-width: 1024px) {
  .block-8-step-v1 .step-inner { padding: 64px 80px; }
  .block-8-step-v1 .step-headline { font-size: 46px; }
  .block-8-step-v1 .step-number,
  .block-8-step-v1 .step-name { font-size: 20px; }
  .block-8-step-v1 .step-card  { flex: 0 0 360px; min-height: 420px; }
  /* 696 becomes 720-80=640 for desktop inner padding */
  .block-8-step-v1 .step-track {
    padding: 24px max(80px, calc(50vw - 640px)) 24px;
    scroll-padding-left: max(80px, calc(50vw - 640px));
  }
}
/* ── All Stories (block-all-stories-v1) ──────────────────── */

.block-all-stories-v1 { background: var(--color-light-grey, #F7F7F7); }
.dark .block-all-stories-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-all-stories-v1 .as-search-bar {
  background: var(--color-moss-green, #13735F);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.block-all-stories-v1 .as-search-inner {
  max-width: 1440px; margin: 0 auto; padding: 0 24px;
  height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 10px;
}

.block-all-stories-v1 .as-search-title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px; font-weight: 700; line-height: 1;
  color: rgba(255, 255, 255, 0.9);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.block-all-stories-v1 .as-search-toggle {
  display: inline-flex; align-items: center; gap: 6px;
  background: none; border: none; padding: 0 4px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px; cursor: pointer; transition: color 0.15s;
}
.block-all-stories-v1 .as-search-toggle:hover { color: var(--color-white, #FFFFFF); }

.block-all-stories-v1 .as-mega-panel {
  overflow: hidden; height: 0; opacity: 0; pointer-events: none;
  transition: height 0.32s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.22s ease;
  background: var(--color-moss-green, #13735F);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.block-all-stories-v1 .as-mega-panel.is-open { opacity: 1; pointer-events: auto; }

.block-all-stories-v1 .as-mega-content {
  max-width: 860px; margin: 0 auto; padding: 16px 24px 20px;
  display: flex; flex-direction: column; gap: 14px;
}

.block-all-stories-v1 .as-mega-row {
  display: flex; align-items: center; gap: 10px; width: 100%;
  max-width: 640px; margin: 0 auto;
}

.block-all-stories-v1 .as-mega-icon { color: rgba(255, 255, 255, 0.7); flex-shrink: 0; }

.block-all-stories-v1 .as-mega-input {
  background: none; border: none; outline: none; flex: 1;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
}
.block-all-stories-v1 .as-mega-input::placeholder { color: rgba(255, 255, 255, 0.55); }

.block-all-stories-v1 .as-mega-close {
  background: none; border: none; color: rgba(255, 255, 255, 0.7);
  cursor: pointer; padding: 4px; flex-shrink: 0; transition: color 0.15s;
}
.block-all-stories-v1 .as-mega-close:hover { color: var(--color-white, #FFFFFF); }

.block-all-stories-v1 .as-mega-categories {
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px;
}

.block-all-stories-v1 .as-mega-cat {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 22px; padding: 5px 14px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  cursor: pointer; transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.block-all-stories-v1 .as-mega-cat:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.4);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v1 .as-mega-cat.is-active {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}

.block-all-stories-v1 .as-mega-filters {
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 8px;
}

.block-all-stories-v1 .as-filter-drop {
  position: relative;
}
.block-all-stories-v1 .as-filter-btn {
  display: flex; align-items: center; gap: 6px;
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.25); border-radius: 8px;
  padding: 6px 10px 6px 12px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.8125rem; font-weight: 600;
  cursor: pointer; outline: none; white-space: nowrap;
  transition: background-color 0.15s, border-color 0.15s;
}
.block-all-stories-v1 .as-filter-btn:hover,
.block-all-stories-v1 .as-filter-drop.is-open .as-filter-btn {
  background-color: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.4);
}
.block-all-stories-v1 .as-filter-drop.has-value .as-filter-btn {
  background-color: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.55);
}
.block-all-stories-v1 .as-filter-chev {
  flex-shrink: 0; transition: transform 0.15s ease;
}
.block-all-stories-v1 .as-filter-drop.is-open .as-filter-chev {
  transform: rotate(180deg);
}
.block-all-stories-v1 .as-filter-list {
  display: none; position: absolute; top: calc(100% + 6px); left: 0;
  min-width: 140px; max-height: 240px; overflow-y: auto;
  background: var(--color-forest-green, #004432);
  border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 8px;
  padding: 4px 0; margin: 0; list-style: none;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  z-index: 100;
}
.block-all-stories-v1 .as-filter-drop.is-open .as-filter-list {
  display: block;
}
.block-all-stories-v1 .as-filter-list li {
  padding: 7px 14px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.8125rem; font-weight: 500;
  cursor: pointer; white-space: nowrap;
  transition: background-color 0.1s;
}
.block-all-stories-v1 .as-filter-list li:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v1 .as-filter-list li.is-active {
  color: var(--color-white, #FFFFFF); font-weight: 700;
  background-color: rgba(255, 255, 255, 0.15);
}

.block-all-stories-v1 .as-inner { max-width: 860px; margin: 0 auto; padding: 64px 24px; }
.block-all-stories-v1 .as-header { margin-bottom: 24px; }

.block-all-stories-v1 .as-title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}
.block-all-stories-v1 .as-title p { margin: 0; }
.dark .block-all-stories-v1 .as-title { color: var(--color-accent-dark, #47b27a); }

.block-all-stories-v1 .as-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6; color: var(--color-grey-80, #4D4D4D); margin: 16px 0 0;
}
.block-all-stories-v1 .as-desc p { margin: 0; }
.dark .block-all-stories-v1 .as-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-all-stories-v1 .as-no-results {
  font-family: var(--font-body, 'Lato', sans-serif);
  color: var(--color-grey-60, #737373); font-size: 16px;
  padding: 40px 0; text-align: center; display: none;
}
.dark .block-all-stories-v1 .as-no-results { color: rgba(255,255,255,0.4); }
.block-all-stories-v1 .as-no-results.is-visible { display: block; }

.block-all-stories-v1 .as-list { list-style: none; padding: 0; margin: 0; }
.block-all-stories-v1 .as-list li + li { border-top: 1px solid var(--color-grey-20, #DCDCDC); }
.dark .block-all-stories-v1 .as-list li + li { border-color: rgba(255,255,255,0.1); }

.block-all-stories-v1 .as-card {
  display: flex; flex-direction: row; align-items: flex-start; gap: 24px;
  padding: 24px 0; text-decoration: none; color: inherit; cursor: pointer;
}

.block-all-stories-v1 .as-card-img-wrap {
  flex-shrink: 0; width: 280px; aspect-ratio: 16 / 9;
  border-radius: 16px; overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-all-stories-v1 .as-card-img-wrap { background: rgba(255,255,255,0.06); }
.block-all-stories-v1 .as-card-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.45s ease;
}
.block-all-stories-v1 .as-card:hover .as-card-img { transform: scale(1.05); }

.block-all-stories-v1 .as-card-body {
  flex: 1; align-self: stretch; display: flex; flex-direction: column; gap: 6px; min-width: 0;
}

.block-all-stories-v1 .as-card-category {
  display: none; align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.08em; line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px; padding: 4px 10px;
}
.block-all-stories-v1 .as-card-category:not(:empty) { display: inline-block; }
.dark .block-all-stories-v1 .as-card-category {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}

.block-all-stories-v1 .as-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700; line-height: 1.3;
  color: var(--color-black, #333333); margin: 0;
  transition: color 0.2s ease;
}
.dark .block-all-stories-v1 .as-card-title { color: var(--color-text-dark, #f0f4f2); }
.block-all-stories-v1 .as-card:hover .as-card-title { color: var(--color-forest-green, #004432); }
.dark .block-all-stories-v1 .as-card:hover .as-card-title { color: var(--color-accent-dark, #47B27A); }

.block-all-stories-v1 .as-card-seo {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 0;
}
.dark .block-all-stories-v1 .as-card-seo { color: var(--color-text-secondary-dark, rgba(255,255,255,0.62)); }

.block-all-stories-v1 .as-card-date {
  display: block; margin-top: auto;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px; line-height: 1.4; color: var(--color-grey-60, #737373);
}
.dark .block-all-stories-v1 .as-card-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-all-stories-v1 .as-footer { margin-top: 48px; text-align: center; }
.block-all-stories-v1 .as-footer.is-hidden { display: none; }

.block-all-stories-v1 .as-load-more {
  display: inline-flex; align-items: center; gap: 10px;
  padding: .85rem 1.5rem; border-radius: 4rem;
  background-color: var(--color-white, #FFFFFF);
  border: 1px solid var(--color-moss-green, #13735F);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1.125rem; font-weight: 600; line-height: 1em;
  cursor: pointer; transition: .16s ease-in-out all;
}
.block-all-stories-v1 .as-load-more:hover,
.block-all-stories-v1 .as-load-more:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  border-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v1 .as-load-more:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F); outline-offset: 4px;
}
.dark .block-all-stories-v1 .as-load-more {
  background-color: transparent;
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-accent-dark, #47B27A);
}
.dark .block-all-stories-v1 .as-load-more:hover,
.dark .block-all-stories-v1 .as-load-more:focus-visible {
  background-color: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}

.block-all-stories-v1.as-animate .as-header { opacity: 0; transition: opacity 0.7s ease; }
.block-all-stories-v1.as-animate .as-header.as-visible { opacity: 1; }
.block-all-stories-v1.as-animate .as-card { opacity: 0; transform: translateX(-8px); transition: opacity 0.5s ease, transform 0.5s ease; }
.block-all-stories-v1.as-animate .as-card.as-visible { opacity: 1; transform: translateX(0); }
@media (prefers-reduced-motion: reduce) {
  .block-all-stories-v1.as-animate .as-header,
  .block-all-stories-v1.as-animate .as-card { opacity: 1 !important; transform: none !important; transition: none !important; }
}

@media (min-width: 768px) {
  .block-all-stories-v1 .as-search-inner { padding: 0 48px; }
  .block-all-stories-v1 .as-mega-content { padding: 16px 48px 20px; }
  .block-all-stories-v1 .as-title { font-size: 40px; }
}

@media (min-width: 1024px) {
  .block-all-stories-v1 .as-search-inner { padding: 0 80px; }
  .block-all-stories-v1 .as-mega-content { padding: 16px 80px 20px; }
  .block-all-stories-v1 .as-header { margin-bottom: 40px; }
  .block-all-stories-v1 .as-title { font-size: 46px; }
}

@media (max-width: 767px) {
  .block-all-stories-v1 .as-inner { padding: 48px 24px; }
  .block-all-stories-v1 .as-card { flex-direction: column; gap: 12px; }
  .block-all-stories-v1 .as-card-img-wrap { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 16px; }
  .block-all-stories-v1 .as-mega-categories,
  .block-all-stories-v1 .as-mega-filters { gap: 6px; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-all-stories-v1 .as-card-img-wrap { width: 280px; }
}
/* Bullet Points (block-bullet-points-v1) */

.block-bullet-points-v1 {
  --bullet-points-v1-bg: var(--color-white, #ffffff);
  background: var(--bullet-points-v1-bg);
  color: var(--color-black, #333333);
}

.block-bullet-points-v1[data-background-color="#FFFFFF"] {
  --bullet-points-v1-bg: var(--color-white, #ffffff);
}

.block-bullet-points-v1[data-background-color="#F7F7F7"] {
  --bullet-points-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-bullet-points-v1 {
  --bullet-points-v1-bg: var(--color-bg-dark, #0f1a14);
  background: var(--bullet-points-v1-bg) !important;
  color: var(--color-text-dark, #f0f4f2);
}

.block-bullet-points-v1 .bullet-points-v1__inner {
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-bullet-points-v1 .bullet-points-v1__content {
  display: flex;
  min-width: 0;
  margin-bottom: 40px;
  align-items: flex-start;
}

.block-bullet-points-v1 .bullet-points-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.dark .block-bullet-points-v1 .bullet-points-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-bullet-points-v1 .bullet-points-v1__headline p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-bullet-points-v1 .bullet-points-v1__list-column {
  display: flex;
  min-width: 0;
  align-items: flex-start;
}

.block-bullet-points-v1 .bullet-points-v1__list {
  display: flex;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  flex-direction: column;
  gap: 24px;
  list-style: none;
}

.block-bullet-points-v1 .bullet-points-v1__item {
  display: flex;
  min-width: 0;
  margin: 0;
  align-items: flex-start;
  gap: 16px;
}

.block-bullet-points-v1 .bullet-points-v1__marker {
  display: block;
  width: 16px;
  height: 16px;
  margin-top: 0.4em;
  flex: 0 0 16px;
  border-radius: 50%;
  background: var(--color-moss-green, #13735f);
}

.dark .block-bullet-points-v1 .bullet-points-v1__marker {
  background: var(--color-accent-dark, #47b27a);
}

.block-bullet-points-v1 .bullet-points-v1__body {
  min-width: 0;
  flex: 1 1 auto;
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.dark .block-bullet-points-v1 .bullet-points-v1__body {
  color: var(--color-text-dark, #f0f4f2);
}

.block-bullet-points-v1 .bullet-points-v1__body p,
.block-bullet-points-v1 .bullet-points-v1__body ul,
.block-bullet-points-v1 .bullet-points-v1__body ol,
.block-bullet-points-v1 .bullet-points-v1__body blockquote {
  margin: 0 0 16px;
}

.block-bullet-points-v1 .bullet-points-v1__body ul,
.block-bullet-points-v1 .bullet-points-v1__body ol {
  padding-left: 1.4em;
}

.block-bullet-points-v1 .bullet-points-v1__body li {
  margin-bottom: 8px;
}

.block-bullet-points-v1 .bullet-points-v1__body > :first-child {
  margin-top: 0;
}

.block-bullet-points-v1 .bullet-points-v1__body > :last-child,
.block-bullet-points-v1 .bullet-points-v1__body li:last-child {
  margin-bottom: 0;
}

.block-bullet-points-v1 .bullet-points-v1__body strong,
.block-bullet-points-v1 .bullet-points-v1__body b {
  color: inherit;
  font-weight: 700;
}

.block-bullet-points-v1 .bullet-points-v1__body a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.block-bullet-points-v1 .bullet-points-v1__body a:hover {
  text-decoration: none;
}

.block-bullet-points-v1 .bullet-points-v1__body a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.dark .block-bullet-points-v1 .bullet-points-v1__body a {
  color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-bullet-points-v1 .bullet-points-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-bullet-points-v1 .bullet-points-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 80px;
    align-items: stretch;
    gap: 0 32px;
  }

  .block-bullet-points-v1 .bullet-points-v1__content {
    grid-column: 1 / 5;
    margin-bottom: 0;
    padding: 64px 0;
  }

  .block-bullet-points-v1 .bullet-points-v1__list-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}
/* Card Timeline CTA (block-card-timeline-cta-v1) */

.block-card-timeline-cta-v1 {
  --card-timeline-cta-v1-bg: var(--color-light-grey, #f7f7f7);
  --card-timeline-cta-v1-slide-width: calc(100vw - 96px);
  --card-timeline-cta-v1-track-gap: 24px;
  --card-timeline-cta-v1-track-gutter: 24px;
  overflow: hidden;
  background: var(--card-timeline-cta-v1-bg);
  color: var(--color-black, #333333);
}

.block-card-timeline-cta-v1[data-background-color='#FFFFFF'] {
  --card-timeline-cta-v1-bg: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v1[data-background-color='#F7F7F7'] {
  --card-timeline-cta-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-card-timeline-cta-v1 {
  --card-timeline-cta-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__header {
  max-width: 760px;
  margin-bottom: 40px;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__headline p,
.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__description {
  margin-top: 24px;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__description p {
  margin: 0 0 12px;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__description p:last-child {
  margin-bottom: 0;
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__carousel {
  width: 100vw;
  min-width: 0;
  margin-left: calc(50% - 50vw);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__track {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: var(--card-timeline-cta-v1-track-gap);
  width: 100%;
  margin: 0;
  padding: 0 0 0 var(--card-timeline-cta-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-padding-inline-start: var(--card-timeline-cta-v1-track-gutter);
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
  list-style: none;
  box-sizing: border-box;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__track::after {
  content: '';
  flex: 0 0 max(
    0px,
    calc(100% - var(--card-timeline-cta-v1-slide-width) - var(--card-timeline-cta-v1-track-gap))
  );
}

.block-card-timeline-cta-v1.ctl-single-card .card-timeline-cta-v1__track {
  overflow-x: hidden;
}

.block-card-timeline-cta-v1.ctl-single-card .card-timeline-cta-v1__track::after {
  display: none;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__track::-webkit-scrollbar {
  display: none;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item {
  --card-timeline-cta-v1-card-bg: var(--color-moss-green, #13735f);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
  display: flex;
  flex: 0 0 var(--card-timeline-cta-v1-slide-width);
  min-width: 0;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='forest-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-forest-green, #004432);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='mint-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-mint-green, #47b27a);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='red'] {
  --card-timeline-cta-v1-card-bg: var(--color-red, #e52322);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='light-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-light-green, #8acbc1);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='corn-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-corn-green, #94c24a);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='yellow-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='moss-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-moss-green, #13735f);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__item[data-card-color='dark-red'] {
  --card-timeline-cta-v1-card-bg: var(--color-dark-red, #861135);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  padding: 24px;
  border-radius: 16px;
  background: var(--card-timeline-cta-v1-card-bg);
  color: var(--card-timeline-cta-v1-card-copy);
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__title {
  margin: 0;
  color: inherit;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.25;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__title p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__body {
  margin-top: 16px;
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__body p {
  margin: 0 0 12px;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__body p:last-child {
  margin-bottom: 0;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__body a,
.block-card-timeline-cta-v1 .card-timeline-cta-v1__body strong,
.block-card-timeline-cta-v1 .card-timeline-cta-v1__body b {
  color: inherit;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__body a {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__nav {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 24px;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__nav[hidden] {
  display: none;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__progress {
  display: flex;
  height: 40px;
  min-width: 0;
  flex: 1;
  align-items: center;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__progress-fill {
  position: relative;
  height: 4px;
  min-width: 0;
  flex: 1;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--ctl-progress, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__button {
  display: flex;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.52);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__button:hover:not(:disabled) {
  background: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.78);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__button:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__button:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__button {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__button:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__button:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__footer {
  margin-top: 32px;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:hover,
.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:hover,
.dark .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:hover .card-timeline-cta-v1__cta-icon,
.block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:focus-visible .card-timeline-cta-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-card-timeline-cta-v1 {
    --card-timeline-cta-v1-slide-width: calc((100vw - 128px) / 2);
    --card-timeline-cta-v1-track-gap: 32px;
    --card-timeline-cta-v1-track-gutter: 48px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__inner {
    padding: 64px 48px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__headline {
    font-size: 40px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__card {
    padding: 32px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__title {
    font-size: 24px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__progress {
    width: 220px;
    flex: none;
  }
}

@media (min-width: 1024px) {
  .block-card-timeline-cta-v1 {
    --card-timeline-cta-v1-slide-width: min(405.3333px, calc((100vw - 224px) / 3));
    --card-timeline-cta-v1-track-gutter: max(80px, calc(50vw - 640px));
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__inner {
    padding: 64px 80px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__card {
    padding: 48px;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__headline {
    font-size: 46px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-card-timeline-cta-v1 .card-timeline-cta-v1__progress-fill::after,
  .block-card-timeline-cta-v1 .card-timeline-cta-v1__button,
  .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta,
  .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta-icon {
    transition: none !important;
  }

  .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:hover .card-timeline-cta-v1__cta-icon,
  .block-card-timeline-cta-v1 .card-timeline-cta-v1__cta:focus-visible .card-timeline-cta-v1__cta-icon {
    transform: none !important;
  }
}
/* Center CTA (block-center-cta-v1) */

.block-center-cta-v1 {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-mint-green, #47b27a);
  --center-cta-v1-foreground: var(--color-white, #ffffff);
  --center-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --center-cta-v1-focus: var(--color-white, #ffffff);
  --center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--center-cta-v1-bg);
  color: var(--center-cta-v1-foreground);
}

.block-center-cta-v1,
.block-center-cta-v1[data-preset="forest-mint"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-center-cta-v1[data-preset="forest-light"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-center-cta-v1[data-preset="forest-yellow"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-center-cta-v1[data-preset="forest-blue"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-center-cta-v1[data-preset="moss-mint"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735f);
  --center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-center-cta-v1[data-preset="moss-blue"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735f);
  --center-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-center-cta-v1[data-preset="moss-red"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735f);
  --center-cta-v1-illu: var(--color-red, #e52322);
}

.block-center-cta-v1[data-preset="darkred-mint"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
  --center-cta-v1-illu: var(--color-mint-green, #47b27a);
  --center-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="darkred-corn"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
  --center-cta-v1-illu: var(--color-corn-green, #94c24a);
  --center-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="darkred-blue"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
  --center-cta-v1-illu: var(--color-blue, #477ec0);
  --center-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="mint-yellow"] { --center-cta-v1-bg: var(--color-mint-green, #47B27A); --center-cta-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-center-cta-v1[data-preset="mint-light"] { --center-cta-v1-bg: var(--color-mint-green, #47B27A); --center-cta-v1-illu: var(--color-light-green, #8ACBC1); }
.block-center-cta-v1[data-preset="mint-corn"] { --center-cta-v1-bg: var(--color-mint-green, #47B27A); --center-cta-v1-illu: var(--color-corn-green, #94C24A); }
.block-center-cta-v1[data-preset="light-mint"] { --center-cta-v1-bg: var(--color-light-green, #8ACBC1); --center-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-center-cta-v1[data-preset="light-blue"] { --center-cta-v1-bg: var(--color-light-green, #8ACBC1); --center-cta-v1-illu: var(--color-blue, #477EC0); }
.block-center-cta-v1[data-preset="light-red"] { --center-cta-v1-bg: var(--color-light-green, #8ACBC1); --center-cta-v1-illu: var(--color-red, #E52322); }
.block-center-cta-v1[data-preset="yellow-mint"] { --center-cta-v1-bg: var(--color-yellow-green, #E6CE00); --center-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-center-cta-v1[data-preset="yellow-blue"] { --center-cta-v1-bg: var(--color-yellow-green, #E6CE00); --center-cta-v1-illu: var(--color-blue, #477EC0); }
.block-center-cta-v1[data-preset="corn-mint"] { --center-cta-v1-bg: var(--color-corn-green, #94C24A); --center-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-center-cta-v1[data-preset="corn-red"] { --center-cta-v1-bg: var(--color-corn-green, #94C24A); --center-cta-v1-illu: var(--color-red, #E52322); }

.block-center-cta-v1[data-preset="mint-yellow"],
.block-center-cta-v1[data-preset="mint-light"],
.block-center-cta-v1[data-preset="mint-corn"],
.block-center-cta-v1[data-preset="light-mint"],
.block-center-cta-v1[data-preset="light-blue"],
.block-center-cta-v1[data-preset="light-red"],
.block-center-cta-v1[data-preset="yellow-mint"],
.block-center-cta-v1[data-preset="yellow-blue"],
.block-center-cta-v1[data-preset="corn-mint"],
.block-center-cta-v1[data-preset="corn-red"] {
  --center-cta-v1-foreground: var(--color-black, #333333);
  --center-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --center-cta-v1-focus: var(--color-black, #333333);
  --center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-center-cta-v1 .center-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--center-cta-v1-illu);
  pointer-events: none;
}

.block-center-cta-v1 .center-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 280%;
  overflow: visible;
  opacity: 0.2;
  fill: currentColor;
  shape-rendering: geometricPrecision;
  transform-origin: center center;
  transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-center-cta-v1:hover .center-cta-v1__illustration-svg,
.block-center-cta-v1:focus-within .center-cta-v1__illustration-svg {
  transform: scale(1.25);
}

.block-center-cta-v1 .center-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  max-width: 1440px;
  min-height: 400px;
  margin: 0 auto;
  padding: 64px 24px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  box-sizing: border-box;
  text-align: center;
}

.block-center-cta-v1 .center-cta-v1__heading {
  width: 100%;
  max-width: 900px;
  margin: 0;
  color: var(--center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-center-cta-v1 .center-cta-v1__heading p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-center-cta-v1 .center-cta-v1__heading strong,
.block-center-cta-v1 .center-cta-v1__heading b,
.block-center-cta-v1 .center-cta-v1__heading a {
  color: var(--center-cta-v1-foreground);
}

.block-center-cta-v1 .center-cta-v1__heading a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-center-cta-v1 .center-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--center-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-center-cta-v1 .center-cta-v1__button:hover,
.block-center-cta-v1 .center-cta-v1__button:focus-visible,
.block-center-cta-v1 .center-cta-v1__button:focus {
  border-color: var(--center-cta-v1-foreground);
  background-color: var(--center-cta-v1-foreground);
  color: var(--center-cta-v1-foreground-inverse);
}

.block-center-cta-v1 .center-cta-v1__button:focus-visible,
.block-center-cta-v1 .center-cta-v1__button:focus {
  outline: 3px solid var(--center-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--center-cta-v1-focus-shadow);
}

.block-center-cta-v1 .center-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-center-cta-v1 .center-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-center-cta-v1 .center-cta-v1__button:hover .center-cta-v1__button-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-center-cta-v1 .center-cta-v1__illustration-svg {
    height: 640%;
  }

  .block-center-cta-v1 .center-cta-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-center-cta-v1 .center-cta-v1__inner {
    padding: 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-center-cta-v1 .center-cta-v1__illustration-svg {
    transform: none !important;
    transition: none;
  }

  .block-center-cta-v1 .center-cta-v1__button,
  .block-center-cta-v1 .center-cta-v1__button-icon {
    transition: none;
  }
}
/* ── Center Picture (block-center-picture-v1) ───────────────────── */

.block-center-picture-v1 {
  --center-picture-v1-bg: var(--color-white, #FFFFFF);
  --center-picture-v1-padding-top: 64px;
  --center-picture-v1-padding-bottom: 64px;
  background: var(--center-picture-v1-bg);
}

.block-center-picture-v1[data-background-color="#FFFFFF"] {
  --center-picture-v1-bg: var(--color-white, #FFFFFF);
}

.block-center-picture-v1[data-background-color="#F7F7F7"] {
  --center-picture-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-center-picture-v1 {
  --center-picture-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-center-picture-v1[data-padding-top="true"] {
  --center-picture-v1-padding-top: 64px;
}

.block-center-picture-v1[data-padding-top="false"] {
  --center-picture-v1-padding-top: 0px;
}

.block-center-picture-v1[data-padding-bottom="true"] {
  --center-picture-v1-padding-bottom: 64px;
}

.block-center-picture-v1[data-padding-bottom="false"] {
  --center-picture-v1-padding-bottom: 0px;
}

/* Outer: max 1440px centered with responsive padding */
.block-center-picture-v1 .cp-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--center-picture-v1-padding-top) 24px var(--center-picture-v1-padding-bottom);
}

/* Inner: full width, centered (picture spans full padded area) */
.block-center-picture-v1 .cp-inner {
  margin: 0 auto;
}

/* ── Picture wrap ── */

.block-center-picture-v1 .cp-img-wrap {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-center-picture-v1 .cp-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}
.block-center-picture-v1.cp-has-lightbox .cp-img-wrap { cursor: zoom-in; }

/* Blurred background shown only for portrait pictures */
.block-center-picture-v1 .cp-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}
.block-center-picture-v1 .cp-img-wrap.cp-portrait .cp-bg { display: block; }

.block-center-picture-v1 .cp-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.block-center-picture-v1 .cp-img-wrap.cp-portrait .cp-img { object-fit: contain; }

/* ── Placeholder ── */

.block-center-picture-v1 .cp-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-center-picture-v1 .cp-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

/* ── Zoom button — hidden unless lightbox is enabled ── */

.block-center-picture-v1 .cp-zoom-btn {
  display: none;
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: zoom-in;
  opacity: 0;
  transition: opacity 0.15s ease, background-color 0.15s ease;
}
.block-center-picture-v1.cp-has-lightbox .cp-zoom-btn { display: flex; }
.block-center-picture-v1 .cp-img-wrap:hover .cp-zoom-btn,
.block-center-picture-v1 .cp-img-wrap:focus-within .cp-zoom-btn { opacity: 1; }
@media (max-width: 767px) {
  .block-center-picture-v1.cp-has-lightbox .cp-zoom-btn { opacity: 1; }
}
.block-center-picture-v1 .cp-zoom-btn:hover { background: rgba(0, 0, 0, 0.65); }
.block-center-picture-v1 .cp-zoom-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  opacity: 1;
}

/* ── Lightbox — hidden by default, shown via JS class ── */

.block-center-picture-v1 .cp-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.block-center-picture-v1 .cp-lightbox.cp-lb-open { display: flex; }

.block-center-picture-v1 .cp-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: cp-lb-in 0.2s ease;
}
@keyframes cp-lb-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.block-center-picture-v1 .cp-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: 92vh;
  animation: cp-lb-up 0.2s ease;
}
@keyframes cp-lb-up {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.block-center-picture-v1 .cp-lb-img {
  display: block;
  max-width: 100%;
  max-height: 92vh;
  border-radius: 8px;
  object-fit: contain;
}

.block-center-picture-v1 .cp-lb-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.block-center-picture-v1 .cp-lb-close:hover { background: rgba(255, 255, 255, 0.22); }
.block-center-picture-v1 .cp-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

/* ── Caption ── */

.block-center-picture-v1 .cp-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-center-picture-v1 .cp-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-center-picture-v1 .cp-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-center-picture-v1 .cp-caption a { color: var(--color-accent-dark); }
.block-center-picture-v1 .cp-caption a:hover { text-decoration: none; }

@media (min-width: 768px) {
  .block-center-picture-v1 .cp-outer { padding-left: 48px; padding-right: 48px; }
}

@media (min-width: 1024px) {
  .block-center-picture-v1 .cp-outer {
    padding: var(--center-picture-v1-padding-top) 80px var(--center-picture-v1-padding-bottom);
  }
}
/* ── Center Video (block-center-video-v1) ───────────────────── */

.block-center-video-v1 {
  --center-video-v1-bg: var(--color-white, #FFFFFF);
  --center-video-v1-padding-top: 64px;
  --center-video-v1-padding-bottom: 64px;
  background: var(--center-video-v1-bg);
}

.block-center-video-v1[data-background-color="#FFFFFF"] {
  --center-video-v1-bg: var(--color-white, #FFFFFF);
}

.block-center-video-v1[data-background-color="#F7F7F7"] {
  --center-video-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-center-video-v1 {
  --center-video-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-center-video-v1[data-padding-top="true"] {
  --center-video-v1-padding-top: 64px;
}

.block-center-video-v1[data-padding-top="false"] {
  --center-video-v1-padding-top: 0px;
}

.block-center-video-v1[data-padding-bottom="true"] {
  --center-video-v1-padding-bottom: 64px;
}

.block-center-video-v1[data-padding-bottom="false"] {
  --center-video-v1-padding-bottom: 0px;
}

.block-center-video-v1 .cv-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--center-video-v1-padding-top) 24px var(--center-video-v1-padding-bottom);
}

.block-center-video-v1 .sv-inner {
  margin: 0 auto;
}

/* The figure has no inner padding, so keep the cinema button 8px inside the frame. */
.block-center-video-v1 .sv-lights-btn {
  top: 8px;
  right: 8px;
}

@media (min-width: 768px) {
  .block-center-video-v1 .cv-outer {
    padding-left: 48px;
    padding-right: 48px;
  }
}

@media (min-width: 1024px) {
  .block-center-video-v1 .cv-outer {
    padding: var(--center-video-v1-padding-top) 80px var(--center-video-v1-padding-bottom);
  }
}
/* Contact Card (block-contact-card-v1) */

.block-contact-card-v1 {
  --contact-card-v1-bg: var(--color-light-grey, #f7f7f7);
  --contact-card-v1-text: var(--color-black, #333333);
  --contact-card-v1-green: var(--color-forest-green, #004432);
  --contact-card-v1-link: var(--color-moss-green, #13735f);
  --contact-card-v1-muted: var(--color-grey-80, #4d4d4d);
  --contact-card-v1-panel: #f2f2f2;
  --contact-card-v1-divider: rgba(0, 68, 50, 0.14);
  --contact-card-v1-icon-bg: rgba(0, 68, 50, 0.08);
  --contact-card-v1-avatar-ring: var(--color-white, #ffffff);
  --contact-card-v1-avatar-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
  --contact-card-v1-panel-radius: 8px;
  --contact-card-v1-spine-width: 10px;
  --contact-card-v1-spine-highlight: rgba(255, 255, 255, 0.22);
  --contact-card-v1-spine-stripe: rgba(255, 255, 255, 0.12);
  --contact-card-v1-spine-shadow: rgba(0, 0, 0, 0.16);
  background: var(--contact-card-v1-bg);
  color: var(--contact-card-v1-text);
}

.block-contact-card-v1[data-background-color="#FFFFFF"] {
  --contact-card-v1-bg: var(--color-white, #ffffff);
}

.block-contact-card-v1[data-background-color="#F7F7F7"] {
  --contact-card-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-contact-card-v1 {
  --contact-card-v1-bg: var(--color-bg-dark, #0f1a14);
  --contact-card-v1-text: var(--color-text-dark, #f0f4f2);
  --contact-card-v1-green: var(--color-accent-dark, #47b27a);
  --contact-card-v1-link: var(--color-accent-dark, #47b27a);
  --contact-card-v1-muted: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.64));
  --contact-card-v1-panel: rgba(255, 255, 255, 0.06);
  --contact-card-v1-divider: rgba(255, 255, 255, 0.16);
  --contact-card-v1-icon-bg: rgba(71, 178, 122, 0.16);
  --contact-card-v1-avatar-ring: rgba(255, 255, 255, 0.16);
  --contact-card-v1-avatar-shadow: 0 12px 24px rgba(0, 0, 0, 0.28);
  --contact-card-v1-spine-highlight: rgba(255, 255, 255, 0.16);
  --contact-card-v1-spine-stripe: rgba(255, 255, 255, 0.1);
  --contact-card-v1-spine-shadow: rgba(0, 0, 0, 0.34);
}

.block-contact-card-v1 .contact-card-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-contact-card-v1 .contact-card-v1__header {
  position: relative;
  margin-bottom: 0;
  overflow: hidden;
  padding: 24px 24px 0 36px;
  border-radius: var(--contact-card-v1-panel-radius) var(--contact-card-v1-panel-radius) 0 0;
  background: var(--contact-card-v1-panel);
}

.block-contact-card-v1 .contact-card-v1__header::before,
.block-contact-card-v1 .contact-card-v1__card::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: var(--contact-card-v1-spine-width);
  background:
    linear-gradient(90deg, var(--contact-card-v1-spine-highlight), transparent 38%, var(--contact-card-v1-spine-shadow)),
    repeating-linear-gradient(135deg, transparent 0 9px, var(--contact-card-v1-spine-stripe) 9px 11px),
    linear-gradient(180deg, var(--contact-card-v1-green), var(--contact-card-v1-link));
  box-shadow: inset -1px 0 0 var(--contact-card-v1-spine-shadow);
  pointer-events: none;
}

.block-contact-card-v1 .contact-card-v1__header::before {
  border-top-left-radius: var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__headline {
  margin: 0;
  color: var(--contact-card-v1-green);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
}

.block-contact-card-v1 .contact-card-v1__card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
  min-width: 0;
  overflow: hidden;
  padding: 28px 24px 24px 36px;
  border-radius: 0 0 var(--contact-card-v1-panel-radius) var(--contact-card-v1-panel-radius);
  background: var(--contact-card-v1-panel);
}

.block-contact-card-v1 .contact-card-v1__card::before {
  border-bottom-left-radius: var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__card:first-child {
  padding-block: 24px;
  border-radius: var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__card:first-child::before {
  border-radius: var(--contact-card-v1-panel-radius) 0 0 var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__media {
  width: 120px;
  height: 120px;
  box-sizing: border-box;
  overflow: hidden;
  border: 4px solid var(--contact-card-v1-avatar-ring);
  border-radius: 999px;
  background: var(--color-grey-20, #dcdcdc);
  box-shadow: var(--contact-card-v1-avatar-shadow);
}

.block-contact-card-v1 .contact-card-v1__image,
.block-contact-card-v1 .contact-card-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-contact-card-v1 .contact-card-v1__image {
  object-fit: cover;
  object-position: center;
}

.block-contact-card-v1 .contact-card-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.14)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-contact-card-v1 .contact-card-v1__media,
.dark .block-contact-card-v1 .contact-card-v1__placeholder {
  background: rgba(255, 255, 255, 0.08);
}

.block-contact-card-v1 .contact-card-v1__body {
  min-width: 0;
}

.block-contact-card-v1 .contact-card-v1__name {
  margin: 0;
  color: var(--contact-card-v1-green);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.3;
}

.block-contact-card-v1 .contact-card-v1__position {
  margin-top: 14px;
  color: var(--contact-card-v1-text);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
}

.block-contact-card-v1 .contact-card-v1__position p,
.block-contact-card-v1 .contact-card-v1__description p {
  margin: 0;
}

.block-contact-card-v1 .contact-card-v1__links {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  max-width: 34em;
  margin-top: 24px;
}

.block-contact-card-v1 .contact-card-v1__contact-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  color: var(--contact-card-v1-link);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-contact-card-v1 .contact-card-v1__contact-link:hover,
.block-contact-card-v1 .contact-card-v1__contact-link:focus-visible,
.block-contact-card-v1 .contact-card-v1__cta:hover,
.block-contact-card-v1 .contact-card-v1__cta:focus-visible {
  color: var(--contact-card-v1-green);
}

.block-contact-card-v1 .contact-card-v1__contact-link:focus-visible,
.block-contact-card-v1 .contact-card-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.dark .block-contact-card-v1 .contact-card-v1__contact-link:hover,
.dark .block-contact-card-v1 .contact-card-v1__contact-link:focus-visible,
.dark .block-contact-card-v1 .contact-card-v1__cta:hover,
.dark .block-contact-card-v1 .contact-card-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-contact-card-v1 .contact-card-v1__contact-icon {
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  padding: 6px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--contact-card-v1-icon-bg);
}

.block-contact-card-v1 .contact-card-v1__contact-link span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.block-contact-card-v1 .contact-card-v1__description {
  max-width: 34em;
  margin-top: 40px;
  color: var(--contact-card-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.62;
}

.block-contact-card-v1 .contact-card-v1__cta-row {
  width: 100%;
  max-width: 34em;
  margin-top: 28px;
}

.block-contact-card-v1 .contact-card-v1__cta-row--after-description {
  padding-top: 20px;
  border-top: 1px solid var(--contact-card-v1-divider);
}

.block-contact-card-v1 .contact-card-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--contact-card-v1-link);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-contact-card-v1 .contact-card-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-contact-card-v1 .contact-card-v1__cta:hover .contact-card-v1__cta-icon,
.block-contact-card-v1 .contact-card-v1__cta:focus-visible .contact-card-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-contact-card-v1 .contact-card-v1__inner {
    padding: 64px 48px;
  }

  .block-contact-card-v1 .contact-card-v1__card {
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 32px;
    align-items: start;
    padding: 32px 32px 32px;
  }

  .block-contact-card-v1 .contact-card-v1__card:first-child {
    padding-block: 32px;
  }

  .block-contact-card-v1 .contact-card-v1__header {
    padding: 32px 32px 0;
  }

}

@media (min-width: 1024px) {
  .block-contact-card-v1 .contact-card-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 0;
    padding: 64px 80px;
  }

  .block-contact-card-v1 .contact-card-v1__header {
    grid-column: 5 / -1;
    margin-bottom: 0;
  }

  .block-contact-card-v1 .contact-card-v1__card {
    grid-column: 5 / -1;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 36px;
    padding: 36px 40px 40px;
  }

  .block-contact-card-v1 .contact-card-v1__card:first-child {
    padding-block: 40px;
  }

  .block-contact-card-v1 .contact-card-v1__header {
    padding: 40px 40px 0;
  }

  .block-contact-card-v1 .contact-card-v1__media {
    margin-top: 4px;
  }

  .block-contact-card-v1 .contact-card-v1__position {
    margin-top: 16px;
  }

  .block-contact-card-v1 .contact-card-v1__contact-icon {
    width: 30px;
    height: 30px;
  }

  .block-contact-card-v1 .contact-card-v1__description {
    margin-top: 48px;
    line-height: 1.55;
  }

  .block-contact-card-v1 .contact-card-v1__cta-row {
    margin-top: 36px;
  }

  .block-contact-card-v1 .contact-card-v1__cta-row--after-description {
    padding-top: 24px;
  }
}

@media (max-width: 767px) {
  .block-contact-card-v1 .contact-card-v1__body {
    text-align: left;
  }

  .block-contact-card-v1 .contact-card-v1__links {
    align-items: start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-contact-card-v1 .contact-card-v1__contact-link,
  .block-contact-card-v1 .contact-card-v1__cta,
  .block-contact-card-v1 .contact-card-v1__cta-icon {
    transition: none !important;
  }

  .block-contact-card-v1 .contact-card-v1__cta:hover .contact-card-v1__cta-icon,
  .block-contact-card-v1 .contact-card-v1__cta:focus-visible .contact-card-v1__cta-icon {
    transform: none !important;
  }
}
/* ── Cost Breakdown (block-cost-breakdown-v1) ─────────────────────────────── */

.block-cost-breakdown-v1 {
  background: var(--color-light-grey, #F7F7F7);
  color: var(--color-forest-green, #004432);
}

.block-cost-breakdown-v1 .cb-inner {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px clamp(16px, 4vw, 64px);
}

/* ── Header ── */

.block-cost-breakdown-v1 .cb-header {
  margin-bottom: clamp(32px, 5vw, 56px);
  text-align: center;
}

.block-cost-breakdown-v1 .cb-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(22px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
  margin: 0 0 10px;
}

.block-cost-breakdown-v1 .cb-subtitle {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(13px, 1.3vw, 18px);
  font-weight: 600;
  color: var(--color-grey-80, #4D4D4D);
  margin: 0 0 14px;
}

.block-cost-breakdown-v1 .cb-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.65;
  color: var(--color-grey-80, #4D4D4D);
  max-width: 72ch;
  margin-left: auto;
  margin-right: auto;
}

.block-cost-breakdown-v1 .cb-desc p { margin: 0; }

/* ── Chart section ── */

.block-cost-breakdown-v1 .cb-chart-section {
  display: flex;
  gap: clamp(28px, 5vw, 64px);
  align-items: center;
}

/* ── Illustration ── */

.block-cost-breakdown-v1 .cb-illus-wrap {
  flex-shrink: 0;
  width: clamp(220px, 36vw, 440px);
  position: relative;
}

.block-cost-breakdown-v1 .cb-illus { width: 100%; line-height: 0; position: relative; }

.block-cost-breakdown-v1 .cb-illus svg:not(.cb-pie),
.block-cost-breakdown-v1 .cb-illus img {
  width: 100%; height: auto; display: block;
  transition: opacity 0.9s ease, filter 0.9s ease;
}


@keyframes cb-slice-draw {
  to { stroke-dashoffset: 0; }
}

.block-cost-breakdown-v1 .cb-pie {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
}

.block-cost-breakdown-v1 .cb-slice {
  transform-box: view-box;
  transform-origin: 100px 100px;
  opacity: 0;
  transition: opacity 0.25s ease, transform 0.3s cubic-bezier(0.34, 1.2, 0.64, 1), filter 0.2s ease;
}

.block-cost-breakdown-v1 .cb-slice.is-drawn {
  opacity: 1;
}

.block-cost-breakdown-v1 .cb-slice.is-active {
  transform: scale(1.04);
  filter: drop-shadow(0 0 5px currentColor);
}

.block-cost-breakdown-v1 .cb-pie:has(.cb-slice.is-active) .cb-slice:not(.is-active) {
  opacity: 0.25;
}

.block-cost-breakdown-v1 .cb-rate {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  display: flex;
  pointer-events: none;
  text-align: center;
  align-items: center;
  justify-content: center;
  font-size: clamp(26px, 3.5vw, 48px);
}

.block-cost-breakdown-v1 .cb-rate-label {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1em;
  font-weight: 700;
  color: var(--color-moss-green, #13735F);
  white-space: nowrap;
  line-height: 1.3;
  position: relative;
  z-index: 2;
}

.block-cost-breakdown-v1 .cb-rate-leaf {
  position: absolute;
  width: 3em;
  height: auto;
  z-index: 0;
  opacity: 0.12;
  pointer-events: none;
  transform: rotate(-45deg) scale(1.5);
}

/* ── Cards ── */

.block-cost-breakdown-v1 .cb-cards {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.5vw, 18px);
}

.block-cost-breakdown-v1 .cb-group-card {
  background: var(--color-light-grey, #F7F7F7);
  border-radius: 16px;
  padding: clamp(16px, 2vw, 24px);
}

.block-cost-breakdown-v1 .cb-col-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(11px, 0.85vw, 12px);
  font-weight: 700;
  color: var(--color-forest-green, #004432);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0 0 clamp(10px, 1.2vw, 14px);
}

.block-cost-breakdown-v1 .cb-item-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(8px, 1vw, 12px);
}

.block-cost-breakdown-v1 .cb-item {
  position: relative;
  background: color-mix(in srgb, var(--item-color) 12%, #FFFFFF);
  border-radius: 22px;
  padding: clamp(12px, 1.5vw, 16px);
  border-top: 3px solid var(--item-color);
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: transform 0.25s cubic-bezier(0.34, 1.2, 0.64, 1);
}

.block-cost-breakdown-v1 .cb-item:hover {
  transform: scale(1.03);
}

.block-cost-breakdown-v1 .cb-item:focus-visible {
  outline: 2px solid var(--color-forest-green, #004432);
  outline-offset: 2px;
}

@keyframes cb-spin-360 {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

.block-cost-breakdown-v1 .cb-item-icon {
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--color-forest-green, #004432);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  transition: transform 0.45s cubic-bezier(0.34, 1.2, 0.64, 1);
}

.block-cost-breakdown-v1 .cb-item-icon.cb-spinning {
  animation: cb-spin-360 0.7s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.block-cost-breakdown-v1 .cb-item:hover .cb-item-icon:not(.cb-spinning) {
  transform: rotate(180deg);
}

.block-cost-breakdown-v1 .cb-item-amount {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 700;
  color: var(--color-forest-green, #004432);
  line-height: 1;
}

.block-cost-breakdown-v1 .cb-item-name {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(14px, 1.2vw, 16px);
  font-weight: 600;
  color: var(--color-forest-green, #004432);
  margin-top: 4px;
}

.cb-tooltip {
  position: fixed;
  z-index: 9999;
  background: var(--color-white, #FFFFFF);
  color: var(--color-forest-green, #004432);
  border-radius: 22px;
  padding: 16px 20px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(14px, 1.2vw, 16px);
  line-height: 1.5;
  max-width: 220px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1), 0 1px 4px rgba(0, 0, 0, 0.06);
  pointer-events: none;
  opacity: 0;
  transform: translateY(0);
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.34, 1.2, 0.64, 1);
}

/* ── Mobile ── */

@media (max-width: 640px) {
  .block-cost-breakdown-v1 .cb-chart-section { flex-direction: column; align-items: stretch; }
  .block-cost-breakdown-v1 .cb-illus-wrap { width: clamp(180px, 60vw, 300px); margin: 0 auto; }
  .block-cost-breakdown-v1 .cb-item-grid { grid-template-columns: 1fr; }
}

/* ── Mobile item panel ── */

.block-cost-breakdown-v1 .cb-backdrop {
  position: fixed; inset: 0; z-index: 999;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0; pointer-events: none;
  transition: opacity 0.3s ease;
}

.block-cost-breakdown-v1 .cb-backdrop.is-active {
  opacity: 1; pointer-events: auto;
}

.block-cost-breakdown-v1 .cb-panel {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 1000;
  display: flex; flex-direction: column; max-height: 88vh;
  background: var(--color-white, #FFFFFF);
  border-radius: 28px 28px 0 0; overflow: hidden;
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.12);
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0, 0.15, 1);
}

.block-cost-breakdown-v1 .cb-panel.is-active { transform: translateY(0); }

.block-cost-breakdown-v1 .cb-panel-handle {
  flex-shrink: 0; display: flex; justify-content: center; padding: 14px 0 4px;
}

.block-cost-breakdown-v1 .cb-panel-handle::before {
  content: ''; width: 36px; height: 4px;
  border-radius: 2px; background: var(--color-grey-20, #DCDCDC);
}

.block-cost-breakdown-v1 .cb-panel-scroll {
  flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; min-height: 0;
}

.block-cost-breakdown-v1 .cb-panel-inner { padding: 8px 24px 16px; }

.block-cost-breakdown-v1 .cb-panel-viz {
  display: flex; justify-content: center; margin-bottom: 24px;
}

.block-cost-breakdown-v1 .cb-panel-illus-wrap {
  position: relative; width: clamp(160px, 56vw, 220px);
}

.block-cost-breakdown-v1 .cb-panel-illus-wrap .cb-illus {
  width: 100%; line-height: 0; position: relative;
}

.block-cost-breakdown-v1 .cb-panel-illus-wrap .cb-illus svg:not(.cb-pie),
.block-cost-breakdown-v1 .cb-panel-illus-wrap .cb-illus img {
  width: 100%; height: auto; display: block;
}

.block-cost-breakdown-v1 .cb-panel-illus-wrap .cb-rate {
  font-size: clamp(14px, 5vw, 20px);
}

.block-cost-breakdown-v1 .cb-panel-detail { text-align: left; }

.block-cost-breakdown-v1 .cb-panel-color-pill {
  display: inline-block; width: 28px; height: 6px;
  border-radius: 3px; margin-bottom: 10px;
}

.block-cost-breakdown-v1 .cb-panel-amount {
  display: block;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 6.5vw, 32px);
  font-weight: 700; line-height: 1.2; margin-bottom: 6px;
  color: var(--color-forest-green, #004432);
}

.block-cost-breakdown-v1 .cb-panel-item-label {
  display: block;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(14px, 3.5vw, 16px);
  font-weight: 600; color: var(--color-grey-80, #4D4D4D); margin-bottom: 10px;
}

.block-cost-breakdown-v1 .cb-panel-item-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.65; color: var(--color-grey-60, #737373);
}

.block-cost-breakdown-v1 .cb-panel-footer {
  flex-shrink: 0;
  padding: 12px 24px max(28px, env(safe-area-inset-bottom, 28px));
  display: flex; justify-content: center;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.block-cost-breakdown-v1 .cb-panel-close {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--color-light-grey, #F7F7F7);
  border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  color: var(--color-grey-80, #4D4D4D);
  transition: background 0.15s ease;
}

.block-cost-breakdown-v1 .cb-panel-close:hover { background: var(--color-grey-20, #DCDCDC); }
/* ── Divider (block-divider-v1) ─────────────────────────────── */

.block-divider-v1 .dv-inner {
  display: flex;
  padding: 0;
}

.block-divider-v1 .dv-line {
  border: none;
  border-top: 1px solid;
  margin: 0;
  height: 0;
  flex: 1;
}

.block-divider-v1[data-color="grey"]  .dv-line { border-color: var(--color-grey-20, #DCDCDC); }
.block-divider-v1[data-color="white"] .dv-line { border-color: var(--color-white, #FFFFFF); }


.dark .block-divider-v1[data-color="grey"]  .dv-line { border-color: rgba(255, 255, 255, 0.25); }
.dark .block-divider-v1[data-color="white"] .dv-line { border-color: var(--color-white, #FFFFFF); }
/* Donation CTA Carousel (block-donation-cta-carousel-v1) */

.block-donation-cta-carousel-v1 {
  --donation-cta-carousel-v1-bg: var(--color-white, #ffffff);
  --donation-cta-carousel-v1-slide-width: calc(100vw - 48px);
  --donation-cta-carousel-v1-track-gap: 24px;
  --donation-cta-carousel-v1-track-gutter: 24px;
  overflow: hidden;
  padding: 64px 0;
  background: var(--donation-cta-carousel-v1-bg);
  color: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1[data-background-color='#FFFFFF'] {
  --donation-cta-carousel-v1-bg: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1[data-background-color='#F7F7F7'] {
  --donation-cta-carousel-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-donation-cta-carousel-v1 {
  --donation-cta-carousel-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__header {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
  box-sizing: border-box;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__block-headline {
  max-width: 760px;
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__block-headline p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__block-headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__carousel {
  width: 100vw;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--donation-cta-carousel-v1-track-gap);
  margin: 0;
  padding: 16px 0 16px var(--donation-cta-carousel-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--donation-cta-carousel-v1-track-gutter) - var(--donation-cta-carousel-v1-track-gap)));
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__track::-webkit-scrollbar {
  display: none;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide {
  --donation-cta-carousel-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
  display: flex;
  flex: 0 0 var(--donation-cta-carousel-v1-slide-width);
  min-width: 0;
  scroll-snap-align: center;
  transform-origin: center center;
}

.block-donation-cta-carousel-v1.dcc-js-ready .donation-cta-carousel-v1__slide {
  will-change: transform;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='forest-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-forest-green, #004432);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='mint-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-mint-green, #47b27a);
  --donation-cta-carousel-v1-card-copy: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='red'] {
  --donation-cta-carousel-v1-card-bg: var(--color-red, #e52322);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='light-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-light-green, #8acbc1);
  --donation-cta-carousel-v1-card-copy: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='corn-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-corn-green, #94c24a);
  --donation-cta-carousel-v1-card-copy: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='moss-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='dark-red'] {
  --donation-cta-carousel-v1-card-bg: var(--color-dark-red, #861135);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: 32px;
  overflow: hidden;
  padding: 32px;
  border-radius: 16px;
  background: var(--donation-cta-carousel-v1-card-bg);
  color: var(--donation-cta-carousel-v1-card-copy);
  box-sizing: border-box;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card--text-only .donation-cta-carousel-v1__copy {
  flex: 1;
  justify-content: center;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline {
  margin: 0;
  color: inherit;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline p,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body {
  max-width: 72ch;
  margin-top: 24px;
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body p {
  margin: 0 0 12px;
  color: inherit;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body p:last-child {
  margin-bottom: 0;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline strong,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline b,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline a,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body strong,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body b,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body a {
  color: inherit;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline a,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 32px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:hover,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible {
  border-color: transparent;
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible {
  outline: 3px solid var(--color-white, #ffffff);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px var(--color-forest-green, #004432);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='moss-green'] .donation-cta-carousel-v1__cta:hover:not(:focus-visible),
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='forest-green'] .donation-cta-carousel-v1__cta:hover:not(:focus-visible) {
  border-color: var(--color-white, #ffffff);
  box-shadow: inset 0 0 0 1px var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:hover .donation-cta-carousel-v1__cta-icon,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible .donation-cta-carousel-v1__cta-icon {
  transform: translateX(3px);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__media {
  display: flex;
  width: 100%;
  height: 180px;
  min-width: 0;
  align-items: center;
  justify-content: center;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__illustration {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__nav {
  display: flex;
  width: var(--donation-cta-carousel-v1-slide-width);
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 16px auto 0;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__nav[hidden] {
  display: none;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress {
  display: flex;
  height: 40px;
  min-width: 0;
  flex: 1;
  align-items: center;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill {
  position: relative;
  height: 4px;
  min-width: 0;
  flex: 1;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--dcc-progress, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button {
  display: flex;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.52);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:hover:not(:disabled) {
  background: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.78);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-donation-cta-carousel-v1 {
    --donation-cta-carousel-v1-slide-width: calc(100vw - 96px);
    --donation-cta-carousel-v1-track-gap: 32px;
    --donation-cta-carousel-v1-track-gutter: 48px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
    padding: 64px 48px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__header {
    padding-right: 48px;
    padding-left: 48px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__media {
    height: 240px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress {
    width: 220px;
    flex: none;
  }
}

@media (min-width: 1024px) {
  .block-donation-cta-carousel-v1 {
    --donation-cta-carousel-v1-slide-width: min(842.6667px, calc(66.6667vw - 117.3333px));
    --donation-cta-carousel-v1-track-gutter: calc((100vw - var(--donation-cta-carousel-v1-slide-width)) / 2);
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
    padding: 64px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__header {
    padding-right: 80px;
    padding-left: 80px;
  }
}

@media (min-width: 1280px) {
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    gap: 32px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__copy {
    grid-column: 1 / span 6;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card--text-only .donation-cta-carousel-v1__copy {
    grid-column: 1 / -1;
    max-width: 72ch;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__media {
    grid-column: 7 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta-icon,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill::after,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button {
    transition: none !important;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:hover .donation-cta-carousel-v1__cta-icon,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible .donation-cta-carousel-v1__cta-icon {
    transform: none !important;
  }
}
/* Donation Picture CTA (block-donation-picture-cta-v1) */

.block-donation-picture-cta-v1 {
  --donation-picture-cta-v1-bg: var(--color-white, #ffffff);
  background: var(--donation-picture-cta-v1-bg);
  color: var(--color-forest-green, #004432);
}

.block-donation-picture-cta-v1[data-background-color='#FFFFFF'] {
  --donation-picture-cta-v1-bg: var(--color-white, #ffffff);
}

.block-donation-picture-cta-v1[data-background-color='#F7F7F7'] {
  --donation-picture-cta-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-donation-picture-cta-v1 {
  --donation-picture-cta-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__inner {
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__content {
  display: flex;
  min-width: 0;
  min-height: 400px;
  padding: 64px 24px;
  align-items: center;
  box-sizing: border-box;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__copy {
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__headline {
  margin: 0 0 24px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__headline p,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta-label p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description {
  margin: 0 0 32px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__description {
  color: var(--color-text-dark, #f0f4f2);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description p {
  margin: 0 0 16px;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description p:last-child {
  margin-bottom: 0;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description ul,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__description ol {
  margin: 0 0 16px;
  padding-left: 1.4em;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description li {
  margin-bottom: 8px;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description strong,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__description b {
  color: inherit;
  font-weight: 700;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description a:hover {
  text-decoration: none;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__description a {
  color: var(--color-accent-dark, #47b27a);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta {
  display: inline-flex;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 24px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  overflow-wrap: anywhere;
  box-sizing: border-box;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:hover,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:hover .donation-picture-cta-v1__cta-icon,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible .donation-picture-cta-v1__cta-icon {
  transform: translateX(3px);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  padding: 0 24px 64px;
  align-items: center;
  box-sizing: border-box;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__media {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__image,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__image {
  object-fit: contain;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__placeholder {
  background: transparent;
}

@media (min-width: 768px) {
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__content {
    padding: 64px 48px;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__media {
    aspect-ratio: 16 / 9;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 80px;
    align-items: stretch;
    gap: 0 32px;
    box-sizing: border-box;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta,
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta-icon {
    transition: none !important;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:hover .donation-picture-cta-v1__cta-icon,
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible .donation-picture-cta-v1__cta-icon {
    transform: none !important;
  }
}
/* Donation Redeem (block-donation-redeem-v1) */

.block-donation-redeem-v1 {
  --donation-redeem-v1-section-bg: var(--color-white, #ffffff);
  background: var(--donation-redeem-v1-section-bg);
}

.block-donation-redeem-v1[data-background-color="#FFFFFF"] {
  --donation-redeem-v1-section-bg: var(--color-white, #ffffff);
}

.block-donation-redeem-v1[data-background-color="#F7F7F7"] {
  --donation-redeem-v1-section-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-donation-redeem-v1 {
  --donation-redeem-v1-section-bg: var(--color-bg-dark, #0f1a14);
}

.block-donation-redeem-v1 .donation-redeem-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 40px 24px;
}

.block-donation-redeem-v1 .donation-redeem-v1__card {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
  --donation-redeem-v1-card-foreground: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground-inverse: var(--donation-redeem-v1-card-bg);
  position: relative;
  max-width: 960px;
  margin: 0 auto;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  padding: 32px 24px 48px;
  border-radius: 16px;
  background: var(--donation-redeem-v1-card-bg);
  color: var(--donation-redeem-v1-card-foreground);
}

.block-donation-redeem-v1 .donation-redeem-v1__card,
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="forest-mint"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="forest-light"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-light-green, #8acbc1);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="forest-yellow"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-yellow-green, #e6ce00);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="forest-blue"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-blue, #477ec0);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="moss-mint"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="moss-blue"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-illu: var(--color-blue, #477ec0);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="moss-red"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-illu: var(--color-red, #e52322);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="darkred-mint"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="darkred-corn"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-illu: var(--color-corn-green, #94c24a);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="darkred-blue"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-illu: var(--color-blue, #477ec0);
}

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="mint-yellow"] { --donation-redeem-v1-card-bg: var(--color-mint-green, #47B27A); --donation-redeem-v1-card-illu: var(--color-yellow-green, #E6CE00); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="mint-light"] { --donation-redeem-v1-card-bg: var(--color-mint-green, #47B27A); --donation-redeem-v1-card-illu: var(--color-light-green, #8ACBC1); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="mint-corn"] { --donation-redeem-v1-card-bg: var(--color-mint-green, #47B27A); --donation-redeem-v1-card-illu: var(--color-corn-green, #94C24A); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="light-mint"] { --donation-redeem-v1-card-bg: var(--color-light-green, #8ACBC1); --donation-redeem-v1-card-illu: var(--color-mint-green, #47B27A); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="light-blue"] { --donation-redeem-v1-card-bg: var(--color-light-green, #8ACBC1); --donation-redeem-v1-card-illu: var(--color-blue, #477EC0); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="light-red"] { --donation-redeem-v1-card-bg: var(--color-light-green, #8ACBC1); --donation-redeem-v1-card-illu: var(--color-red, #E52322); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="yellow-mint"] { --donation-redeem-v1-card-bg: var(--color-yellow-green, #E6CE00); --donation-redeem-v1-card-illu: var(--color-mint-green, #47B27A); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="yellow-blue"] { --donation-redeem-v1-card-bg: var(--color-yellow-green, #E6CE00); --donation-redeem-v1-card-illu: var(--color-blue, #477EC0); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="corn-mint"] { --donation-redeem-v1-card-bg: var(--color-corn-green, #94C24A); --donation-redeem-v1-card-illu: var(--color-mint-green, #47B27A); }
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="corn-red"] { --donation-redeem-v1-card-bg: var(--color-corn-green, #94C24A); --donation-redeem-v1-card-illu: var(--color-red, #E52322); }

.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="mint-yellow"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="mint-light"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="mint-corn"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="light-mint"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="light-blue"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="light-red"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="yellow-mint"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="yellow-blue"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="corn-mint"],
.block-donation-redeem-v1 .donation-redeem-v1__card[data-preset="corn-red"] {
  --donation-redeem-v1-card-foreground: var(--color-black, #333333);
  --donation-redeem-v1-card-foreground-inverse: var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__card-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  color: var(--donation-redeem-v1-card-illu);
}

.block-donation-redeem-v1 .donation-redeem-v1__card-bg-svg {
  position: absolute;
  top: -310%;
  left: 4%;
  width: auto;
  height: 653%;
  transform: rotate(57.787deg);
  opacity: 0.2;
  fill: currentColor;
}

.block-donation-redeem-v1 .donation-redeem-v1__content {
  position: relative;
  z-index: 1;
}

.block-donation-redeem-v1 .donation-redeem-v1__headline {
  margin: 0;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
}

.block-donation-redeem-v1 .donation-redeem-v1__description p {
  margin: 0;
}

.block-donation-redeem-v1 .donation-redeem-v1__description p + p {
  margin-top: 12px;
}

.block-donation-redeem-v1 .donation-redeem-v1__description {
  margin-top: 16px;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.block-donation-redeem-v1 .donation-redeem-v1__headline a,
.block-donation-redeem-v1 .donation-redeem-v1__description a,
.block-donation-redeem-v1 .donation-redeem-v1__headline strong,
.block-donation-redeem-v1 .donation-redeem-v1__description strong,
.block-donation-redeem-v1 .donation-redeem-v1__headline b,
.block-donation-redeem-v1 .donation-redeem-v1__description b {
  color: inherit;
}

.block-donation-redeem-v1 .donation-redeem-v1__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
  gap: 32px;
  margin-top: 32px;
}

.block-donation-redeem-v1 .donation-redeem-v1__field {
  min-width: 0;
}

.block-donation-redeem-v1 .donation-redeem-v1__label {
  display: block;
  margin: 0;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  text-transform: uppercase;
}

.block-donation-redeem-v1 .donation-redeem-v1__hint,
.block-donation-redeem-v1 .donation-redeem-v1__error {
  margin: 4px 0 8px;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.block-donation-redeem-v1 .donation-redeem-v1__error {
  margin: 8px 0 0;
  padding-left: 8px;
  border-left: 3px solid currentColor;
  font-weight: 700;
}

.block-donation-redeem-v1 .donation-redeem-v1__error:empty {
  display: none;
}

.block-donation-redeem-v1 .donation-redeem-v1__input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  height: auto;
  box-sizing: border-box;
  padding: 12px 16px;
  border: 1px solid var(--color-grey-40, #ababab);
  border-radius: 16px;
  background: var(--color-white, #ffffff);
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.block-donation-redeem-v1 .donation-redeem-v1__input::placeholder {
  color: var(--color-grey-60, #737373);
  opacity: 1;
}

.block-donation-redeem-v1 .donation-redeem-v1__input:focus-visible {
  outline: none;
  border-color: var(--color-black, #333333);
  box-shadow:
    0 0 0 3px var(--color-black, #333333),
    0 0 0 6px var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__input[aria-invalid="true"] {
  border-color: #9f1239;
  box-shadow: inset 0 0 0 1px #9f1239;
}

.block-donation-redeem-v1 .donation-redeem-v1__input[aria-invalid="true"]:focus-visible {
  border-color: var(--color-black, #333333);
  box-shadow:
    0 0 0 3px var(--color-black, #333333),
    0 0 0 6px var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: end;
  justify-self: start;
  gap: 10px;
  width: fit-content;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 24px;
  border: 1px solid var(--donation-redeem-v1-card-foreground);
  border-radius: 999px;
  background: transparent;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease;
}

.block-donation-redeem-v1 .donation-redeem-v1__submit:hover {
  background: var(--donation-redeem-v1-card-foreground);
  color: var(--donation-redeem-v1-card-foreground-inverse);
}

.block-donation-redeem-v1 .donation-redeem-v1__submit:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 3px var(--color-black, #333333),
    0 0 0 6px var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__submit-icon {
  flex: 0 0 auto;
  transition: transform 0.18s ease;
}

.block-donation-redeem-v1 .donation-redeem-v1__submit:hover .donation-redeem-v1__submit-icon {
  transform: translateX(3px);
}

@media (prefers-reduced-motion: reduce) {
  .block-donation-redeem-v1 .donation-redeem-v1__submit,
  .block-donation-redeem-v1 .donation-redeem-v1__submit-icon {
    transition: none;
  }
}

@media (min-width: 768px) {
  .block-donation-redeem-v1 .donation-redeem-v1__inner {
    padding: 64px 48px;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__card {
    padding: 40px;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__form {
    grid-template-columns: minmax(0, 256px) minmax(0, 1fr) auto;
    column-gap: 32px;
    row-gap: 0;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__field {
    grid-column: 1;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__submit {
    grid-column: 3;
    justify-self: end;
  }
}

@media (min-width: 1024px) {
  .block-donation-redeem-v1 .donation-redeem-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    padding: 64px 80px;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__card {
    grid-column: 5 / -1;
    max-width: none;
    margin: 0;
    padding: 48px;
  }
}
/* Double Center CTA (block-double-center-cta-v1) */

.block-double-center-cta-v1 {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
}

.block-double-center-cta-v1 .double-center-cta-v1__grid {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.block-double-center-cta-v1 .double-center-cta-v1__card {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
  --double-center-cta-v1-foreground: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --double-center-cta-v1-focus: var(--color-white, #ffffff);
  --double-center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  display: flex;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--double-center-cta-v1-bg);
  color: var(--double-center-cta-v1-foreground);
}

.block-double-center-cta-v1 .double-center-cta-v1__card,
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="forest-mint"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="forest-light"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="forest-yellow"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="forest-blue"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="moss-mint"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="moss-blue"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="moss-red"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-illu: var(--color-red, #e52322);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="darkred-mint"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
  --double-center-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="darkred-corn"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-illu: var(--color-corn-green, #94c24a);
  --double-center-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="darkred-blue"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-illu: var(--color-blue, #477ec0);
  --double-center-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="mint-yellow"] { --double-center-cta-v1-bg: var(--color-mint-green, #47B27A); --double-center-cta-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="mint-light"] { --double-center-cta-v1-bg: var(--color-mint-green, #47B27A); --double-center-cta-v1-illu: var(--color-light-green, #8ACBC1); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="mint-corn"] { --double-center-cta-v1-bg: var(--color-mint-green, #47B27A); --double-center-cta-v1-illu: var(--color-corn-green, #94C24A); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="light-mint"] { --double-center-cta-v1-bg: var(--color-light-green, #8ACBC1); --double-center-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="light-blue"] { --double-center-cta-v1-bg: var(--color-light-green, #8ACBC1); --double-center-cta-v1-illu: var(--color-blue, #477EC0); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="light-red"] { --double-center-cta-v1-bg: var(--color-light-green, #8ACBC1); --double-center-cta-v1-illu: var(--color-red, #E52322); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="yellow-mint"] { --double-center-cta-v1-bg: var(--color-yellow-green, #E6CE00); --double-center-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="yellow-blue"] { --double-center-cta-v1-bg: var(--color-yellow-green, #E6CE00); --double-center-cta-v1-illu: var(--color-blue, #477EC0); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="corn-mint"] { --double-center-cta-v1-bg: var(--color-corn-green, #94C24A); --double-center-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="corn-red"] { --double-center-cta-v1-bg: var(--color-corn-green, #94C24A); --double-center-cta-v1-illu: var(--color-red, #E52322); }

.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="mint-yellow"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="mint-light"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="mint-corn"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="light-mint"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="light-blue"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="light-red"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="yellow-mint"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="yellow-blue"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="corn-mint"],
.block-double-center-cta-v1 .double-center-cta-v1__card[data-preset="corn-red"] {
  --double-center-cta-v1-foreground: var(--color-black, #333333);
  --double-center-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-black, #333333);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-double-center-cta-v1 .double-center-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--double-center-cta-v1-illu);
  pointer-events: none;
}

.block-double-center-cta-v1 .double-center-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 560%;
  overflow: visible;
  opacity: 0.2;
  fill: currentColor;
  shape-rendering: geometricPrecision;
  transform-origin: center center;
  transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-double-center-cta-v1 .double-center-cta-v1__illustration--right .double-center-cta-v1__illustration-svg {
  position: relative;
  left: -120px;
  top: 200px;
}

.block-double-center-cta-v1 .double-center-cta-v1__card:hover .double-center-cta-v1__illustration-svg,
.block-double-center-cta-v1 .double-center-cta-v1__card:focus-within .double-center-cta-v1__illustration-svg {
  transform: scale(1.25);
}

.block-double-center-cta-v1 .double-center-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1 1 auto;
  width: 100%;
  max-width: 720px;
  min-height: 400px;
  margin: 0 auto;
  padding: 64px 24px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  box-sizing: border-box;
  text-align: center;
}

.block-double-center-cta-v1 .double-center-cta-v1__heading {
  width: 100%;
  max-width: 560px;
  margin: 0;
  color: var(--double-center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-double-center-cta-v1 .double-center-cta-v1__heading p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-double-center-cta-v1 .double-center-cta-v1__heading strong,
.block-double-center-cta-v1 .double-center-cta-v1__heading b,
.block-double-center-cta-v1 .double-center-cta-v1__heading a {
  color: var(--double-center-cta-v1-foreground);
}

.block-double-center-cta-v1 .double-center-cta-v1__heading a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-double-center-cta-v1 .double-center-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--double-center-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--double-center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-double-center-cta-v1 .double-center-cta-v1__button:hover,
.block-double-center-cta-v1 .double-center-cta-v1__button:focus-visible,
.block-double-center-cta-v1 .double-center-cta-v1__button:focus {
  border-color: var(--double-center-cta-v1-foreground);
  background-color: var(--double-center-cta-v1-foreground);
  color: var(--double-center-cta-v1-foreground-inverse);
}

.block-double-center-cta-v1 .double-center-cta-v1__button:focus-visible,
.block-double-center-cta-v1 .double-center-cta-v1__button:focus {
  outline: 3px solid var(--double-center-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--double-center-cta-v1-focus-shadow);
}

.block-double-center-cta-v1 .double-center-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-double-center-cta-v1 .double-center-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-double-center-cta-v1 .double-center-cta-v1__button:hover .double-center-cta-v1__button-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-double-center-cta-v1 .double-center-cta-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-double-center-cta-v1 .double-center-cta-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .block-double-center-cta-v1 .double-center-cta-v1__inner {
    padding: 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-double-center-cta-v1 .double-center-cta-v1__illustration-svg {
    transform: none !important;
    transition: none;
  }

  .block-double-center-cta-v1 .double-center-cta-v1__button,
  .block-double-center-cta-v1 .double-center-cta-v1__button-icon {
    transition: none;
  }
}
/* Download List (block-download-list-v1) */

.block-download-list-v1 {
  --download-list-v1-bg: var(--color-white, #ffffff);
  --download-list-v1-divider: var(--color-mint-green, #47b27a);
  --download-list-v1-focus: var(--color-forest-green, #004432);
  background: var(--download-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-download-list-v1[data-background-color="#FFFFFF"] {
  --download-list-v1-bg: var(--color-white, #ffffff);
}

.block-download-list-v1[data-background-color="#F7F7F7"] {
  --download-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-download-list-v1 {
  --download-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --download-list-v1-divider: var(--color-accent-dark, #47b27a);
  --download-list-v1-focus: var(--color-accent-dark, #47b27a);
  color: var(--color-text-dark, #f0f4f2);
}

.block-download-list-v1 .download-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-download-list-v1 .download-list-v1__headline {
  margin: 0 0 32px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-download-list-v1 .download-list-v1__headline p {
  margin: 0;
  font: inherit;
  color: inherit;
}

.dark .block-download-list-v1 .download-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-download-list-v1 .download-list-v1__list {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--download-list-v1-divider);
}

.block-download-list-v1 .download-list-v1__item {
  margin: 0;
  border-bottom: 1px solid var(--download-list-v1-divider);
}

.block-download-list-v1 .download-list-v1__link {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) 32px;
  align-items: center;
  gap: 16px;
  min-height: 96px;
  padding: 20px 0;
  color: inherit;
  text-decoration: none;
}

.block-download-list-v1 .download-list-v1__link:focus-visible {
  outline: 2px solid var(--download-list-v1-focus);
  outline-offset: 4px;
}

.block-download-list-v1 .download-list-v1__type {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  min-height: 52px;
  padding: 8px 4px;
  overflow: hidden;
  border-radius: 8px;
  background: color-mix(in srgb, var(--color-mint-green, #47b27a) 16%, transparent);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--color-forest-green, #004432);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dark .block-download-list-v1 .download-list-v1__type {
  color: var(--color-accent-dark, #47b27a);
}

.block-download-list-v1 .download-list-v1__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 8px;
}

.block-download-list-v1 .download-list-v1__name {
  overflow-wrap: anywhere;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(18px, calc(0.75vw + 15px), 24px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--color-forest-green, #004432);
}

.dark .block-download-list-v1 .download-list-v1__name {
  color: var(--color-text-dark, #f0f4f2);
}

.block-download-list-v1 .download-list-v1__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-grey-80, #4d4d4d);
}

.block-download-list-v1 .download-list-v1__meta span + span::before {
  content: '·';
  margin-right: 8px;
}

.dark .block-download-list-v1 .download-list-v1__meta {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-download-list-v1 .download-list-v1__download-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: var(--color-forest-green, #004432);
  transition: transform 180ms ease;
}

.block-download-list-v1 .download-list-v1__download-icon svg {
  width: 24px;
  height: 24px;
}

.block-download-list-v1 .download-list-v1__link:hover .download-list-v1__download-icon,
.block-download-list-v1 .download-list-v1__link:focus-visible .download-list-v1__download-icon {
  transform: translateY(4px);
}

.dark .block-download-list-v1 .download-list-v1__download-icon {
  color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-download-list-v1 .download-list-v1__inner {
    padding: 64px 48px;
  }

  .block-download-list-v1 .download-list-v1__link {
    grid-template-columns: 64px minmax(0, 1fr) 40px;
    gap: 24px;
    min-height: 112px;
    padding: 24px 0;
  }

  .block-download-list-v1 .download-list-v1__type {
    width: 64px;
    min-height: 64px;
    font-size: 12px;
  }
}

@media (min-width: 1024px) {
  .block-download-list-v1 .download-list-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    row-gap: 32px;
    padding: 64px 80px;
  }

  .block-download-list-v1 .download-list-v1__headline {
    grid-column: 1 / -1;
    margin-bottom: 0;
  }

  .block-download-list-v1 .download-list-v1__list {
    grid-column: 5 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-download-list-v1 .download-list-v1__download-icon {
    transition: none;
  }

  .block-download-list-v1 .download-list-v1__link:hover .download-list-v1__download-icon,
  .block-download-list-v1 .download-list-v1__link:focus-visible .download-list-v1__download-icon {
    transform: none;
  }
}
/* -- FAQ Browser (block-faq-browser-v1) ------------------------------------- */
.block-faq-browser-v1 {
  background: var(--color-white, #FFFFFF);
  color: var(--color-black, #333333);
}

.dark .block-faq-browser-v1 {
  background: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-faq-browser-v1 .fb-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-faq-browser-v1 .fb-category-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.block-faq-browser-v1 .fb-category-card {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 268px;
  padding: 24px;
  border: 1px solid rgba(0, 68, 50, 0.08);
  border-radius: 28px;
  box-sizing: border-box;
  background: var(--color-white, #FFFFFF);
  color: inherit;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  opacity: 0;
  transform: translateY(18px);
  animation: fb-slide-up 0.7s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(var(--fb-i, 0) * 70ms);
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.32s ease;
  will-change: transform, opacity;
}

.block-faq-browser-v1 .fb-category-card:hover,
.block-faq-browser-v1 .fb-category-card:focus-visible {
  transform: translateY(-4px) scale(1.018);
  box-shadow: 0 24px 60px rgba(20, 24, 22, 0.12);
  outline: 0;
}

.block-faq-browser-v1 .fb-category-card:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

.dark .block-faq-browser-v1 .fb-category-card {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.06);
}

.dark .block-faq-browser-v1 .fb-category-card:hover,
.dark .block-faq-browser-v1 .fb-category-card:focus-visible {
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.34);
}

.block-faq-browser-v1 .fb-category-illu-wrap {
  display: block;
  width: 64px;
  height: 64px;
  overflow: hidden;
}

.block-faq-browser-v1 .fb-category-illu {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-white, #FFFFFF);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 28px;
  font-weight: 700;
}

.dark .block-faq-browser-v1 .fb-category-illu {
  background: rgba(255, 255, 255, 0.08);
}

.block-faq-browser-v1 .fb-category-illu img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.block-faq-browser-v1 .fb-category-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.block-faq-browser-v1 .fb-category-name,
.block-faq-browser-v1 .fb-panel h2,
.block-faq-browser-v1 .fb-result-group h2 {
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 22px;
  line-height: 1.18;
  font-weight: 700;
}

.block-faq-browser-v1 .fb-category-name p,
.block-faq-browser-v1 .fb-panel h2 p,
.block-faq-browser-v1 .fb-result-group h2 p {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
}

.block-faq-browser-v1 .fb-category-name {
  margin: 0;
}

.block-faq-browser-v1 .fb-category-desc,
.block-faq-browser-v1 .fb-panel-desc {
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 18px;
  line-height: 1.55;
  color: var(--color-grey-80, #4D4D4D);
}

.dark .block-faq-browser-v1 .fb-category-desc,
.dark .block-faq-browser-v1 .fb-panel-desc {
  color: rgba(255, 255, 255, 0.66);
}

.block-faq-browser-v1 .fb-category-desc p,
.block-faq-browser-v1 .fb-panel-desc p {
  margin: 0;
}

.block-faq-browser-v1 .fb-layout {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: 48px;
  align-items: start;
}

.block-faq-browser-v1 .fb-nav {
  position: sticky;
  top: calc(var(--nav-height, 0px) + 24px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.block-faq-browser-v1 .fb-nav-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.block-faq-browser-v1 .fb-nav-indicator {
  position: absolute;
  z-index: 0;
  inset-inline: 0;
  top: 0;
  height: 0;
  border: 1px solid rgba(19, 115, 95, 0.28);
  border-radius: 8px;
  background: rgba(19, 115, 95, 0.08);
  pointer-events: none;
  transform: translateY(0);
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), height 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-faq-browser-v1 .fb-nav-item,
.block-faq-browser-v1 .fb-back,
.block-faq-browser-v1 .fb-beacon-btn {
  font-family: var(--font-body, Lato, sans-serif);
  cursor: pointer;
}

.block-faq-browser-v1 .fb-faq-row,
.block-faq-browser-v1 .fb-related-item {
  cursor: pointer;
}

.block-faq-browser-v1 .fb-nav-item {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 16px;
  text-align: left;
}

.block-faq-browser-v1 .fb-nav-item span {
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: inherit;
  line-height: 1.2;
}

.block-faq-browser-v1 .fb-nav-item span p {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

.block-faq-browser-v1 .fb-nav-item.is-active,
.block-faq-browser-v1 .fb-nav-item:hover,
.block-faq-browser-v1 .fb-nav-item:focus-visible {
  outline: 0;
}

.block-faq-browser-v1 .fb-nav-item:hover,
.block-faq-browser-v1 .fb-nav-item:focus-visible {
  color: var(--color-moss-green, #13735F);
}

.block-faq-browser-v1 .fb-nav-item:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 2px;
}

.block-faq-browser-v1 .fb-nav-item small {
  color: var(--color-grey-60, #737373);
}

.block-faq-browser-v1 .fb-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--color-moss-green, #13735F);
  font-size: 16px;
  font-weight: 700;
  transition: color 0.18s ease, transform 0.18s ease;
}

.block-faq-browser-v1 .fb-back-categories {
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 16px;
}

.block-faq-browser-v1 .fb-back-categories span {
  font-family: var(--font-heading, Sora, sans-serif);
}

.block-faq-browser-v1 .fb-back-icon {
  flex: 0 0 auto;
}

.block-faq-browser-v1 .fb-back-categories:hover,
.block-faq-browser-v1 .fb-back-categories:focus-visible {
  transform: translateX(-4px);
  outline: 0;
}

.block-faq-browser-v1 .fb-back-categories:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  border-radius: 3px;
}

.block-faq-browser-v1 .fb-panel {
  min-width: 0;
}

.block-faq-browser-v1 .fb-panel-head {
  margin-bottom: 32px;
}

.block-faq-browser-v1 .fb-kicker {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 22px;
  padding: 6px 13px;
  border: 1px solid rgba(19, 115, 95, 0.18);
  border-radius: 8px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-moss-green, #13735F);
  background: rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(8px) saturate(1.3);
  -webkit-backdrop-filter: blur(8px) saturate(1.3);
}

.dark .block-faq-browser-v1 .fb-kicker {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.08);
}

.block-faq-browser-v1 .fb-kicker p {
  margin: 0;
}

.block-faq-browser-v1 .fb-panel h2,
.block-faq-browser-v1 .fb-result-group h2 {
  margin: 0 0 16px;
  font-size: 40px;
}

.block-faq-browser-v1 .fb-faq-list,
.block-faq-browser-v1 .fb-related-list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid var(--color-grey-20, #DCDCDC);
}

.dark .block-faq-browser-v1 .fb-faq-list,
.dark .block-faq-browser-v1 .fb-related-list {
  border-color: rgba(255, 255, 255, 0.12);
}

.block-faq-browser-v1 .fb-faq-row,
.block-faq-browser-v1 .fb-related-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 22px 0;
  border: 0;
  border-bottom: 1px solid var(--color-grey-20, #DCDCDC);
  background: transparent;
  color: inherit;
  text-align: left;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 22px;
  font-weight: 600;
  line-height: 1.35;
  opacity: 0;
  transform: translateY(14px);
  animation: fb-slide-up 0.56s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(var(--fb-i, 0) * 45ms);
  transition: color 0.18s ease;
}

.block-faq-browser-v1 .fb-faq-row *,
.block-faq-browser-v1 .fb-related-item * {
  font-family: inherit;
}

.dark .block-faq-browser-v1 .fb-faq-row,
.dark .block-faq-browser-v1 .fb-related-item {
  border-color: rgba(255, 255, 255, 0.12);
}

.block-faq-browser-v1 .fb-faq-row:hover,
.block-faq-browser-v1 .fb-faq-row:focus-visible,
.block-faq-browser-v1 .fb-related-item:hover,
.block-faq-browser-v1 .fb-related-item:focus-visible {
  color: var(--color-moss-green, #13735F);
  outline: 0;
}

.block-faq-browser-v1 .fb-faq-row:focus-visible,
.block-faq-browser-v1 .fb-related-item:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: -2px;
}

.block-faq-browser-v1 .fb-detail h2 {
  max-width: 820px;
  margin-top: 0;
  font-family: Sora, var(--font-heading, sans-serif);
  color: var(--color-forest-green, #004432);
}

.block-faq-browser-v1 .fb-detail h2 * {
  font-family: inherit;
}

.dark .block-faq-browser-v1 .fb-detail h2 {
  color: var(--color-mint-green, #47B27A);
}

.block-faq-browser-v1 .fb-answer {
  max-width: 820px;
  margin-top: 32px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: var(--text-body, 18px);
  line-height: 1.7;
}

.block-faq-browser-v1 .fb-answer img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

.block-faq-browser-v1 .fb-related {
  max-width: 820px;
  margin-top: 56px;
}

.block-faq-browser-v1 .fb-related h3 {
  margin: 0 0 18px;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 28px;
}

.block-faq-browser-v1 .fb-related-item {
  font-size: 18px;
}

.block-faq-browser-v1 .fb-search-results {
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 900px;
}

.block-faq-browser-v1 .fb-search-empty,
.block-faq-browser-v1 .fb-empty {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px;
  border-radius: 8px;
  background: var(--color-light-grey, #F7F7F7);
  font-family: var(--font-body, Lato, sans-serif);
  text-align: center;
}

.block-faq-browser-v1 .fb-empty {}

.dark .block-faq-browser-v1 .fb-search-empty,
.dark .block-faq-browser-v1 .fb-empty {
  background: rgba(255, 255, 255, 0.06);
}

.block-faq-browser-v1 .fb-search-empty h2 {
  margin: 0 0 12px;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 34px;
}

.block-faq-browser-v1 .fb-beacon-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 24px;
  margin-right: 18px;
  padding: 0.85rem 1.5rem;
  border: 1px solid var(--color-moss-green, #13735F);
  border-radius: 4rem;
  background: transparent;
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, Sora, sans-serif);
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1em;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.block-faq-browser-v1 .fb-beacon-btn:hover,
.block-faq-browser-v1 .fb-beacon-btn:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
  border-color: var(--color-moss-green, #13735F);
  outline: 0;
}

.block-faq-browser-v1 .fb-beacon-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

@keyframes fb-slide-up {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fb-detail-in {
  from { opacity: 0; transform: translateY(-10px); }
  to   { opacity: 1; transform: translateY(0); }
}

.block-faq-browser-v1 .fb-detail .fb-kicker {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.block-faq-browser-v1 .fb-detail h2 {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) 0.07s both;
}

.block-faq-browser-v1 .fb-answer {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) 0.14s both;
}

.block-faq-browser-v1 .fb-related {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) 0.21s both;
}

@media (min-width: 768px) {
  .block-faq-browser-v1 .fb-inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-faq-browser-v1 .fb-inner {
    padding: 64px 80px;
  }
}

@media (max-width: 980px) {
  .block-faq-browser-v1 .fb-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .block-faq-browser-v1 .fb-inner {
    padding: 48px 24px;
  }

  .block-faq-browser-v1 .fb-category-grid,
  .block-faq-browser-v1 .fb-layout {
    grid-template-columns: 1fr;
  }

  .block-faq-browser-v1 .fb-category-card {
    min-height: 0;
  }

  .block-faq-browser-v1 .fb-category-name {
    font-size: 20px;
  }

  .block-faq-browser-v1 .fb-nav {
    position: static;
  }

  .block-faq-browser-v1 .fb-nav-list {
    display: none;
  }

  .block-faq-browser-v1 .fb-panel h2,
  .block-faq-browser-v1 .fb-result-group h2 {
    font-size: 32px;
  }

  .block-faq-browser-v1 .fb-faq-row {
    font-size: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-faq-browser-v1 .fb-category-card,
  .block-faq-browser-v1 .fb-faq-row,
  .block-faq-browser-v1 .fb-related-item,
  .block-faq-browser-v1 .fb-nav-indicator,
  .block-faq-browser-v1 .fb-detail .fb-kicker,
  .block-faq-browser-v1 .fb-detail h2,
  .block-faq-browser-v1 .fb-answer,
  .block-faq-browser-v1 .fb-related {
    opacity: 1;
    transform: none;
    animation: none;
    transition: none;
  }

  .block-faq-browser-v1 .fb-category-card:hover,
  .block-faq-browser-v1 .fb-category-card:focus-visible,
  .block-faq-browser-v1 .fb-category-card:focus-visible {
    transform: none;
  }
}
/* -- FAQ Header (block-faq-header-v1) -------------------------------------- */
.block-faq-header-v1 {
  position: relative;
  background:
    radial-gradient(circle at 50% 0%, rgba(71, 178, 122, 0.13), transparent 34rem),
    var(--color-light-grey, #F7F7F7);
  color: var(--color-black, #333333);
  overflow: hidden;
}

.dark .block-faq-header-v1 {
  background:
    radial-gradient(circle at 50% 0%, rgba(71, 178, 122, 0.16), transparent 34rem),
    var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

/* Tree ring background */
.block-faq-header-v1 .fh-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.block-faq-header-v1 .fh-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 720px;
  height: 720px;
  margin-left: -360px;
  margin-top: -360px;
  border-radius: 22% 78% 65% 35% / 60% 40% 75% 25%;
  border: 1.5px solid rgba(71, 178, 122, 0.5);
  animation: fh-ring-expand 9s linear infinite;
}

.dark .block-faq-header-v1 .fh-ring {
  border-color: rgba(71, 178, 122, 0.3);
}

/* Same shape, different phase → rings khớp nhau như thiết diện thân cây thực */
.block-faq-header-v1 .fh-ring:nth-child(1) { animation-delay:     0s; }
.block-faq-header-v1 .fh-ring:nth-child(2) { animation-delay: -1.125s; }
.block-faq-header-v1 .fh-ring:nth-child(3) { animation-delay:  -2.25s; }
.block-faq-header-v1 .fh-ring:nth-child(4) { animation-delay: -3.375s; }
.block-faq-header-v1 .fh-ring:nth-child(5) { animation-delay:   -4.5s; }
.block-faq-header-v1 .fh-ring:nth-child(6) { animation-delay: -5.625s; }
.block-faq-header-v1 .fh-ring:nth-child(7) { animation-delay:  -6.75s; }
.block-faq-header-v1 .fh-ring:nth-child(8) { animation-delay: -7.875s; }

@keyframes fh-ring-expand {
  0%   { transform: scale(0.06); opacity: 0; }
  8%   { opacity: 0.52; }
  82%  { opacity: 0.38; }
  100% { transform: scale(1);    opacity: 0; }
}

.block-faq-header-v1 .fh-inner {
  position: relative;
  z-index: 1;
  width: min(100%, 900px);
  margin: 0 auto;
  padding: clamp(72px, 12vw, 140px) 24px clamp(56px, 8vw, 96px);
  text-align: center;
}

.block-faq-header-v1 .fh-eyebrow,
.block-faq-header-v1 .fh-greeting,
.block-faq-header-v1 .fh-title,
.block-faq-header-v1 .fh-intro,
.block-faq-header-v1 .fh-search-form,
.block-faq-header-v1 .fh-suggested {
  opacity: 0;
  transform: translateY(14px);
  animation: fh-rise 0.72s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.block-faq-header-v1 .fh-eyebrow { animation-delay: 0.02s; }
.block-faq-header-v1 .fh-greeting { animation-delay: 0.08s; }
.block-faq-header-v1 .fh-title { animation-delay: 0.14s; }
.block-faq-header-v1 .fh-intro { animation-delay: 0.2s; }
.block-faq-header-v1 .fh-search-form { animation-delay: 0.28s; }
.block-faq-header-v1 .fh-suggested { animation-delay: 0.36s; }

@keyframes fh-rise {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.block-faq-header-v1 .fh-eyebrow {
  display: inline-flex;
  margin: 0 0 22px;
  padding: 6px 13px;
  border: 1px solid rgba(19, 115, 95, 0.18);
  border-radius: 8px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-moss-green, #13735F);
  background: rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(8px) saturate(1.3);
  -webkit-backdrop-filter: blur(8px) saturate(1.3);
}

.dark .block-faq-header-v1 .fh-eyebrow {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.08);
}

.block-faq-header-v1 .fh-greeting {
  margin: 0;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 750;
  line-height: 1.04;
  letter-spacing: 0;
}

.block-faq-header-v1 .fh-title {
  max-width: 680px;
  margin: 14px auto 0;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--color-grey-80, #4D4D4D);
}

.block-faq-header-v1 .fh-intro {
  max-width: 640px;
  margin: 12px auto 0;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: clamp(16px, 1.8vw, 19px);
  line-height: 1.65;
  color: var(--color-grey-60, #737373);
}

.dark .block-faq-header-v1 .fh-title,
.dark .block-faq-header-v1 .fh-intro {
  color: rgba(255, 255, 255, 0.82);
}

.block-faq-header-v1 .fh-title p,
.block-faq-header-v1 .fh-greeting p,
.block-faq-header-v1 .fh-eyebrow p,
.block-faq-header-v1 .fh-intro p {
  margin: 0;
}

.block-faq-header-v1 .fh-search-form {
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(100%, 640px);
  margin: 38px auto 0;
  padding: 16px 18px;
  border: 1px solid rgba(0, 68, 50, 0.12);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 24px 70px rgba(0, 68, 50, 0.11);
  backdrop-filter: blur(18px) saturate(1.2);
  -webkit-backdrop-filter: blur(18px) saturate(1.2);
}

.dark .block-faq-header-v1 .fh-search-form {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.07);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22);
}

.block-faq-header-v1 .fh-search-form:focus-within {
  border-color: rgba(19, 115, 95, 0.38);
  box-shadow: 0 28px 80px rgba(0, 68, 50, 0.15);
}

.dark .block-faq-header-v1 .fh-search-form:focus-within {
  border-color: rgba(71, 178, 122, 0.42);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.28);
}

.block-faq-header-v1 .fh-search-icon {
  flex: 0 0 auto;
  color: rgba(0, 68, 50, 0.5);
}

.dark .block-faq-header-v1 .fh-search-icon {
  color: rgba(255, 255, 255, 0.45);
}

.block-faq-header-v1 .fh-search-input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: clamp(18px, 2vw, 22px);
  color: inherit;
}

.block-faq-header-v1 .fh-search-input::placeholder {
  color: rgba(77, 77, 77, 0.52);
}

.dark .block-faq-header-v1 .fh-search-input::placeholder {
  color: rgba(255, 255, 255, 0.55);
}

.block-faq-header-v1 .fh-search-button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  color: var(--color-white, #FFFFFF);
  background: var(--color-forest-green, #004432);
  cursor: pointer;
  transition: background 0.16s ease, transform 0.16s ease;
}

.block-faq-header-v1 .fh-search-button:hover,
.block-faq-header-v1 .fh-search-button:focus-visible {
  background: var(--color-moss-green, #13735F);
  transform: translateY(-1px);
}

.block-faq-header-v1 .fh-suggested {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  width: min(100%, 640px);
  margin: 18px auto 0;
}

.block-faq-header-v1 .fh-suggested:empty {
  display: none;
}

.block-faq-header-v1 .fh-suggested-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 22px;
  padding: 8px 14px;
  color: rgba(0, 68, 50, 0.88);
  background: rgba(255, 255, 255, 0.58);
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.4;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.block-faq-header-v1 .fh-suggested-chip:hover,
.block-faq-header-v1 .fh-suggested-chip:focus,
.block-faq-header-v1 .fh-suggested-chip:focus-visible {
  border-color: rgba(0, 68, 50, 0.26);
  color: var(--color-forest-green, #004432);
  background: rgba(255, 255, 255, 0.86);
  transform: translateY(-1px);
}

.dark .block-faq-header-v1 .fh-suggested-chip {
  border-color: rgba(255, 255, 255, 0.16);
  color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.07);
}

.dark .block-faq-header-v1 .fh-suggested-chip:hover,
.dark .block-faq-header-v1 .fh-suggested-chip:focus,
.dark .block-faq-header-v1 .fh-suggested-chip:focus-visible {
  color: var(--color-white, #FFFFFF);
  background: rgba(255, 255, 255, 0.13);
}

@media (max-width: 767px) {
  .block-faq-header-v1 .fh-inner {
    padding: 64px 18px 48px;
  }

  .block-faq-header-v1 .fh-search-form {
    margin-top: 30px;
    padding: 13px 14px;
    border-radius: 24px;
  }

  .block-faq-header-v1 .fh-search-button {
    width: 38px;
    height: 38px;
  }

  .block-faq-header-v1 .fh-suggested {
    justify-content: center;
  }
}

/* ── Collapse when searching ──────────────────────────────── */
.block-faq-header-v1 .fh-eyebrow,
.block-faq-header-v1 .fh-greeting,
.block-faq-header-v1 .fh-title,
.block-faq-header-v1 .fh-intro,
.block-faq-header-v1 .fh-suggested {
  max-height: 500px;
  overflow: hidden;
  transition: opacity 0.25s ease, max-height 0.32s cubic-bezier(0.4, 0, 0.2, 1), margin 0.32s ease;
}

.block-faq-header-v1 .fh-inner {
  transition: padding 0.32s ease;
}

.block-faq-header-v1.is-searching .fh-eyebrow,
.block-faq-header-v1.is-searching .fh-greeting,
.block-faq-header-v1.is-searching .fh-title,
.block-faq-header-v1.is-searching .fh-intro,
.block-faq-header-v1.is-searching .fh-suggested {
  animation: none;
  opacity: 0;
  max-height: 0;
  margin: 0;
  padding: 0;
}

.block-faq-header-v1.is-searching .fh-inner {
  padding: 40px 24px 40px;
}

.block-faq-header-v1.is-searching .fh-search-form {
  margin: 0 auto;
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .block-faq-header-v1 .fh-ring {
    animation: none;
    opacity: 0;
  }

  .block-faq-header-v1 .fh-eyebrow,
  .block-faq-header-v1 .fh-greeting,
  .block-faq-header-v1 .fh-title,
  .block-faq-header-v1 .fh-intro,
  .block-faq-header-v1 .fh-search-form,
  .block-faq-header-v1 .fh-suggested {
    opacity: 1;
    transform: none;
    animation: none;
    transition: none;
  }

  .block-faq-header-v1 .fh-inner,
  .block-faq-header-v1 .fh-search-form {
    transition: none;
  }
}
/* FAQs (block-faqs-v1) */

.block-faqs-v1 {
  --faqs-v1-bg: var(--color-white, #ffffff);
  --faqs-v1-divider: var(--color-mint-green, #47b27a);
  background: var(--faqs-v1-bg);
  color: var(--color-black, #333333);
}

.block-faqs-v1[data-background-color="#FFFFFF"] {
  --faqs-v1-bg: var(--color-white, #ffffff);
}

.block-faqs-v1[data-background-color="#F7F7F7"] {
  --faqs-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-faqs-v1 {
  --faqs-v1-bg: var(--color-bg-dark, #0f1a14);
  --faqs-v1-divider: var(--color-accent-dark, #47b27a);
  color: var(--color-text-dark, #f0f4f2);
}

.block-faqs-v1 .faqs-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-faqs-v1 .faqs-v1__header {
  margin-bottom: 32px;
}

.block-faqs-v1 .faqs-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.dark .block-faqs-v1 .faqs-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-faqs-v1 .faqs-v1__list {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--faqs-v1-divider);
}

.block-faqs-v1 .faqs-v1__list-item {
  margin: 0;
  border-bottom: 1px solid var(--faqs-v1-divider);
}

.block-faqs-v1 .faqs-v1__summary {
  display: block;
  padding: 32px 0;
  list-style: none;
  color: var(--color-forest-green, #004432);
  cursor: pointer;
}

.block-faqs-v1 .faqs-v1__summary::-webkit-details-marker {
  display: none;
}

.block-faqs-v1 .faqs-v1__summary::marker {
  content: "";
}

.block-faqs-v1 .faqs-v1__summary:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.dark .block-faqs-v1 .faqs-v1__summary {
  color: var(--color-accent-dark, #47b27a);
}

.block-faqs-v1 .faqs-v1__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 0;
  min-width: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.35;
}

.block-faqs-v1 .faqs-v1__question-text {
  min-width: 0;
}

.block-faqs-v1 .faqs-v1__question p {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}

.block-faqs-v1 .faqs-v1__icon {
  position: relative;
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 1px solid currentColor;
  border-radius: 999px;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.block-faqs-v1 .faqs-v1__summary:hover .faqs-v1__icon,
.block-faqs-v1 .faqs-v1__summary:focus-visible .faqs-v1__icon {
  transform: rotate(360deg);
}

.block-faqs-v1 .faqs-v1__icon::before,
.block-faqs-v1 .faqs-v1__icon::after {
  content: "";
  position: absolute;
  inset: 50% auto auto 50%;
  width: 12px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform 0.18s ease, opacity 0.18s ease;
}

.block-faqs-v1 .faqs-v1__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.block-faqs-v1 .faqs-v1__item[open] .faqs-v1__icon::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(0deg);
}

.block-faqs-v1 .faqs-v1__answer-wrap {
  overflow: hidden;
}

.block-faqs-v1 .faqs-v1__item.is-animating .faqs-v1__answer-wrap {
  will-change: height;
}

.block-faqs-v1 .faqs-v1__answer {
  padding: 0 52px 32px 0;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  line-height: 1.7;
  color: var(--color-black, #333333);
}

.dark .block-faqs-v1 .faqs-v1__answer {
  color: var(--color-text-dark, #f0f4f2);
}

.block-faqs-v1 .faqs-v1__answer p {
  margin: 0 0 16px;
}

.block-faqs-v1 .faqs-v1__answer p:last-child {
  margin-bottom: 0;
}

.block-faqs-v1 .faqs-v1__answer a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.dark .block-faqs-v1 .faqs-v1__answer a {
  color: var(--color-accent-dark, #47b27a);
}

.block-faqs-v1 .faqs-v1__answer a:hover {
  text-decoration: none;
}

.block-faqs-v1 .faqs-v1__answer strong {
  font-weight: 700;
}

.block-faqs-v1 .faqs-v1__answer ul,
.block-faqs-v1 .faqs-v1__answer ol {
  margin: 0 0 16px;
  padding-left: 1.4em;
}

.block-faqs-v1 .faqs-v1__answer li {
  margin-bottom: 8px;
}

.block-faqs-v1 .faqs-v1__answer img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

@media (min-width: 768px) {
  .block-faqs-v1 .faqs-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-faqs-v1 .faqs-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    row-gap: 32px;
    padding: 64px 80px;
  }

  .block-faqs-v1 .faqs-v1__header {
    grid-column: 1 / -1;
    margin-bottom: 0;
  }

  .block-faqs-v1 .faqs-v1__list {
    grid-column: 5 / -1;
  }
}

@media (max-width: 767px) {
  .block-faqs-v1 .faqs-v1__question {
    gap: 16px;
  }

  .block-faqs-v1 .faqs-v1__summary {
    padding: 24px 0;
  }

  .block-faqs-v1 .faqs-v1__answer {
    padding: 0 0 32px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-faqs-v1 .faqs-v1__icon,
  .block-faqs-v1 .faqs-v1__icon::before,
  .block-faqs-v1 .faqs-v1__icon::after {
    transition: none !important;
  }

  .block-faqs-v1 .faqs-v1__summary:hover .faqs-v1__icon,
  .block-faqs-v1 .faqs-v1__summary:focus-visible .faqs-v1__icon {
    transform: none !important;
  }
}
/* Forest Impact Converter (block-forest-impact-converter-v1) */

.block-forest-impact-converter-v1 {
  --forest-impact-converter-v1-section-bg: var(--color-yellow-green, #e6ce00);
  --forest-impact-converter-v1-panel-bg: var(--color-white, #ffffff);
  --forest-impact-converter-v1-foreground: var(--color-black, #333333);
  --forest-impact-converter-v1-muted: var(--color-grey-60, #737373);
  --forest-impact-converter-v1-border: var(--color-grey-40, #ababab);
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: var(--forest-impact-converter-v1-section-bg);
  color: var(--forest-impact-converter-v1-foreground);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__decoration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: var(--color-light-green, #8acbc1);
  pointer-events: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__decoration-svg {
  width: min(945.615px, 127.05vw);
  max-width: none;
  height: auto;
  flex: 0 0 auto;
  opacity: 0.2;
  fill: currentColor;
  transform: rotate(-45deg);
  transform-origin: center;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__inner {
  position: relative;
  z-index: 1;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__copy {
  max-width: 860px;
  margin-bottom: 40px;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__headline {
  margin: 0;
  color: var(--forest-impact-converter-v1-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__body {
  max-width: 720px;
  margin-top: 16px;
  color: var(--forest-impact-converter-v1-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__body p {
  margin: 0;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__body p + p {
  margin-top: 12px;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__headline a,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__headline strong,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__headline b,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__body a,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__body strong,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__body b {
  color: inherit;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 32px;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__visual {
  min-width: 0;
  order: 1;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__media {
  position: relative;
  width: 100%;
  aspect-ratio: 1273 / 387;
  overflow: hidden;
  isolation: isolate;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__canvas {
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__canvas[hidden] {
  display: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__media.is-rive-ready .forest-impact-converter-v1__canvas {
  opacity: 1;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__area-slider {
  --forest-impact-converter-v1-slider-progress: 0%;
  position: relative;
  width: 100%;
  height: 36px;
  margin-top: 12px;
  outline: 0;
  cursor: pointer;
  touch-action: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__slider-track {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  height: 8px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--color-white, #ffffff) 72%, transparent);
  transform: translateY(-50%);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__slider-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--forest-impact-converter-v1-slider-progress);
  border-radius: inherit;
  background: var(--color-forest-green, #004432);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__slider-thumb {
  position: absolute;
  top: 50%;
  left: var(--forest-impact-converter-v1-slider-progress);
  width: 24px;
  height: 24px;
  border: 4px solid var(--color-forest-green, #004432);
  border-radius: 50%;
  background: var(--color-white, #ffffff);
  box-shadow: 0 2px 8px rgb(0 68 50 / 0.22);
  transform: translate(-50%, -50%);
  transition: box-shadow 0.18s ease, transform 0.18s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__area-slider:hover .forest-impact-converter-v1__slider-thumb {
  transform: translate(-50%, -50%) scale(1.08);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__area-slider:focus-visible .forest-impact-converter-v1__slider-thumb {
  box-shadow:
    0 0 0 3px var(--color-yellow-green, #e6ce00),
    0 0 0 6px var(--color-forest-green, #004432);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__panel {
  order: 2;
  padding: 24px;
  border-radius: 24px;
  background: var(--forest-impact-converter-v1-panel-bg);
  color: var(--forest-impact-converter-v1-foreground);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__field {
  min-width: 0;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__label {
  display: block;
  margin: 0 0 8px;
  color: var(--forest-impact-converter-v1-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__label p {
  margin: 0;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__input-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 48px;
  overflow: hidden;
  border: 1px solid var(--forest-impact-converter-v1-border);
  border-radius: 16px;
  background: var(--color-white, #ffffff);
  color: var(--color-black, #333333);
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__input-shell:focus-within {
  border-color: var(--color-forest-green, #004432);
  box-shadow:
    0 0 0 2px var(--color-forest-green, #004432),
    0 0 0 3px var(--forest-impact-converter-v1-panel-bg);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__field.is-invalid .forest-impact-converter-v1__input-shell {
  border-color: #9f1239;
  box-shadow: inset 0 0 0 1px #9f1239;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__field.is-invalid .forest-impact-converter-v1__input-shell:focus-within {
  border-color: #9f1239;
  box-shadow:
    0 0 0 2px #9f1239,
    0 0 0 3px var(--forest-impact-converter-v1-panel-bg);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 8px 12px 16px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__unit {
  padding: 0 16px 0 8px;
  color: var(--color-grey-70, #5f5f5f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  user-select: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__unit sup,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__unit sub,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__rate sup {
  position: relative;
  font-size: 0.68em;
  line-height: 0;
  vertical-align: baseline;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__unit sup,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__rate sup {
  top: -0.48em;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__unit sub {
  bottom: -0.18em;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-options {
  --forest-impact-converter-v1-currency-pill-x: 0px;
  --forest-impact-converter-v1-currency-pill-width: 0px;
  position: relative;
  display: flex;
  gap: 4px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 4px;
  border-radius: 14px;
  background: var(--color-light-grey, #f7f7f7);
  isolation: isolate;
  scrollbar-width: none;
  scroll-behavior: smooth;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-options::-webkit-scrollbar {
  display: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-pill {
  position: absolute;
  z-index: 0;
  top: 4px;
  bottom: 4px;
  left: 0;
  width: var(--forest-impact-converter-v1-currency-pill-width);
  border-radius: 10px;
  background: var(--color-forest-green, #004432);
  box-shadow: 0 2px 8px rgb(0 68 50 / 0.18);
  opacity: 0;
  pointer-events: none;
  transform: translateX(var(--forest-impact-converter-v1-currency-pill-x));
  transition:
    transform 0.42s cubic-bezier(0.22, 1.3, 0.36, 1),
    width 0.42s cubic-bezier(0.22, 1.3, 0.36, 1),
    opacity 0.12s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-options.is-ready .forest-impact-converter-v1__currency-pill {
  opacity: 1;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-options.is-positioning .forest-impact-converter-v1__currency-pill {
  transition: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option {
  position: relative;
  z-index: 1;
  flex: 1 0 72px;
  min-width: 0;
  cursor: pointer;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option[data-visible='false'],
.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option[hidden] {
  display: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option > span {
  display: flex;
  min-height: 40px;
  padding: 8px 6px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: transparent;
  color: var(--color-grey-70, #5f5f5f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  transition: color 0.24s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option:hover > span {
  color: var(--color-forest-green, #004432);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option input:checked + span {
  color: var(--color-white, #ffffff);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__currency-option input:focus-visible + span {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 2px;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__rate {
  display: block;
  min-height: 20px;
  margin-top: 8px;
  color: var(--forest-impact-converter-v1-muted);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__error {
  min-height: 0;
  margin: 8px 0 0;
  padding-left: 8px;
  border-left: 3px solid #9f1239;
  color: #9f1239;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__error:empty {
  display: none;
}

.dark .block-forest-impact-converter-v1 .forest-impact-converter-v1__error {
  color: #ff9fb2;
  border-left-color: #ff9fb2;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__message {
  display: none;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta {
  display: inline-flex;
  min-height: 48px;
  max-width: 100%;
  margin-top: 32px;
  padding: 12px 24px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  overflow-wrap: anywhere;
  box-sizing: border-box;
  transition: background-color 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta:hover,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.dark .block-forest-impact-converter-v1 .forest-impact-converter-v1__cta:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta[aria-disabled='true'] {
  pointer-events: none;
  opacity: 0.5;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta:hover .forest-impact-converter-v1__cta-icon,
.block-forest-impact-converter-v1 .forest-impact-converter-v1__cta:focus-visible .forest-impact-converter-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-forest-impact-converter-v1 .forest-impact-converter-v1__inner {
    padding-right: 48px;
    padding-left: 48px;
  }

  .block-forest-impact-converter-v1 .forest-impact-converter-v1__panel {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-forest-impact-converter-v1 .forest-impact-converter-v1__inner {
    padding-right: 80px;
    padding-left: 80px;
  }

  .block-forest-impact-converter-v1 .forest-impact-converter-v1__copy {
    margin-bottom: 48px;
  }

  .block-forest-impact-converter-v1 .forest-impact-converter-v1__layout {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 32px;
  }

  .block-forest-impact-converter-v1 .forest-impact-converter-v1__visual {
    grid-column: 1 / 8;
    order: 1;
  }

  .block-forest-impact-converter-v1 .forest-impact-converter-v1__panel {
    grid-column: 8 / -1;
    order: 2;
  }
}

@media (min-width: 1440px) {
  .block-forest-impact-converter-v1 .forest-impact-converter-v1__inner {
    padding-right: 64px;
    padding-left: 64px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-forest-impact-converter-v1 *,
  .block-forest-impact-converter-v1 *::before,
  .block-forest-impact-converter-v1 *::after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
/* -- Help CTA (block-help-cta-v1) ------------------------------------------ */
.block-help-cta-v1 {
  background: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}

.block-help-cta-v1.hc-no-beacon {
  display: none;
}

.block-help-cta-v1 .hc-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 72px 24px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 32px;
  align-items: center;
}

.block-help-cta-v1 .hc-title {
  margin: 0;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 42px;
  line-height: 1.1;
}

.block-help-cta-v1 .hc-title p,
.block-help-cta-v1 .hc-body p {
  margin: 0;
}

.block-help-cta-v1 .hc-body {
  max-width: 620px;
  margin-top: 16px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.78);
}

.block-help-cta-v1 .hc-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 24px;
  border: 0;
  border-radius: 999px;
  background: var(--color-white, #FFFFFF);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
}

.block-help-cta-v1 .hc-button:hover,
.block-help-cta-v1 .hc-button:focus-visible {
  background: var(--color-mint-green, #47B27A);
  color: var(--color-white, #FFFFFF);
  outline: 0;
}

@media (max-width: 767px) {
  .block-help-cta-v1 .hc-inner {
    grid-template-columns: 1fr;
    padding: 56px 20px;
  }

  .block-help-cta-v1 .hc-title {
    font-size: 34px;
  }
}
/* ── Hero Picture (block-hero-picture-v1) ─────────────────────── */

.block-hero-picture-v1 {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  min-height: 100svh;
  margin-top: calc(-1 * var(--nav-height, 0px));
}

.block-hero-picture-v1 .hero-picture-v1__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
  background-color: var(--color-forest-green);
}

.block-hero-picture-v1 .hero-picture-v1__picture,
.block-hero-picture-v1 .hero-picture-v1__placeholder {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.block-hero-picture-v1 .hero-picture-v1__picture {
  display: block;
}

.block-hero-picture-v1 .hero-picture-v1__picture--mobile {
  display: none;
}

.block-hero-picture-v1 .hero-picture-v1__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.block-hero-picture-v1 .hero-picture-v1__placeholder {
  background-color: var(--color-forest-green);
}

.block-hero-picture-v1 .hero-picture-v1__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, transparent 15%, rgba(0, 0, 0, 0.88) 100%);
  pointer-events: none;
}

.block-hero-picture-v1 .hero-picture-v1__content {
  position: relative;
  z-index: 3;
  width: 100%;
  min-width: 0;
  padding: 64px 24px 128px;
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.55) 64px,
    rgba(0, 0, 0, 0.55) 100%
  );
  text-align: center;
}

.block-hero-picture-v1 .hero-picture-v1__title {
  margin: 0 0 16px;
  color: var(--color-white);
  font-family: var(--font-heading);
  font-size: clamp(40px, calc(3.5vw + 22px), var(--text-h1));
  font-weight: 700;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

.block-hero-picture-v1 .hero-picture-v1__title p,
.block-hero-picture-v1 .hero-picture-v1__title > * {
  margin: 0;
}

.block-hero-picture-v1 .hero-picture-v1__subtitle {
  margin: 0 0 32px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-heading);
  font-size: clamp(20px, calc(1.2vw + 16px), var(--text-h4));
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.block-hero-picture-v1 .hero-picture-v1__subtitle p,
.block-hero-picture-v1 .hero-picture-v1__subtitle > * {
  margin: 0;
}

.block-hero-picture-v1 .hero-picture-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
  min-height: 48px;
  height: auto;
  padding: 12px 24px;
  border-radius: 9999px;
  background-color: var(--color-yellow-green);
  color: var(--color-forest-green);
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  overflow-wrap: anywhere;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-hero-picture-v1 .hero-picture-v1__button:hover,
.block-hero-picture-v1 .hero-picture-v1__button:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
}

.block-hero-picture-v1 .hero-picture-v1__button:focus-visible {
  outline: 3px solid var(--color-white, #fff);
  outline-offset: 2px;
  box-shadow: 0 0 0 8px var(--color-forest-green, #004432);
}

.block-hero-picture-v1 .hero-picture-v1__button p,
.block-hero-picture-v1 .hero-picture-v1__button > * {
  display: inline;
  margin: 0;
}

.block-hero-picture-v1 .hero-picture-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-hero-picture-v1 .hero-picture-v1__button:hover .hero-picture-v1__button-icon,
.block-hero-picture-v1 .hero-picture-v1__button:focus-visible .hero-picture-v1__button-icon {
  transform: translateX(3px);
}

.block-hero-picture-v1 .hero-picture-v1__illustration {
  position: absolute;
  top: calc(100% - 116px);
  left: 50%;
  z-index: 10;
  overflow: visible;
  transform: translateX(-50%);
  pointer-events: none;
}

.block-hero-picture-v1 .hero-picture-v1__illustration-svg {
  display: block;
  overflow: visible;
}

.block-hero-picture-v1 .hero-picture-v1__illustration-path {
  fill: none;
  stroke: var(--color-mint-green);
  stroke-linecap: round;
  stroke-linejoin: round;
}

.block-hero-picture-v1 .hero-picture-v1__vine-stem {
  stroke-width: 4;
}

@media (max-width: 767px) {
  .block-hero-picture-v1 .hero-picture-v1__picture--desktop {
    display: none;
  }

  .block-hero-picture-v1 .hero-picture-v1__picture--mobile {
    display: block;
  }
}

@media (min-width: 768px) {
  .block-hero-picture-v1 .hero-picture-v1__content {
    padding: 80px 48px 128px;
  }
}

@media (min-width: 1024px) {
  .block-hero-picture-v1 .hero-picture-v1__content {
    padding: 96px 80px 128px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-hero-picture-v1 .hero-picture-v1__button,
  .block-hero-picture-v1 .hero-picture-v1__button-icon {
    transition: none;
  }

  .block-hero-picture-v1 .hero-picture-v1__button:hover .hero-picture-v1__button-icon,
  .block-hero-picture-v1 .hero-picture-v1__button:focus-visible .hero-picture-v1__button-icon {
    transform: none;
  }
}
/* ── Hero Video (block-hero-video-v1) ──────────────────────────── */

.block-hero-video-v1 {
  position: relative;
  width: 100%;
  min-height: 100svh;
  margin-top: calc(-1 * var(--nav-height, 0px));
}

/* Clip wrapper — contains video + overlay so vine can escape below */
.block-hero-video-v1 .hero-video-clip {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
}

.block-hero-video-v1 .hero-bg-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  pointer-events: none;
}

.block-hero-video-v1 .hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 15%, rgba(0, 0, 0, 0.88) 100%);
  z-index: 1;
  pointer-events: none;
}

/* Content */
.block-hero-video-v1 .hero-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  padding: 64px 24px 128px;
  text-align: center;
}

.block-hero-video-v1 .hero-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(40px, calc(3.5vw + 22px), var(--text-h1));
  line-height: 1.05;
  color: var(--color-white);
  margin: 0 0 16px;
}

.block-hero-video-v1 .hero-title p,
.block-hero-video-v1 .hero-title > * { margin: 0; }

.block-hero-video-v1 .hero-subtitle {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(20px, calc(1.2vw + 16px), var(--text-h4));
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.85);
  margin: 0 0 32px;
}

.block-hero-video-v1 .hero-subtitle p,
.block-hero-video-v1 .hero-subtitle > * { margin: 0; }

.block-hero-video-v1 .hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 48px;
  padding: 0 24px;
  border-radius: 9999px;
  background-color: var(--color-yellow-green);
  color: var(--color-forest-green);
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 16px;
  line-height: 1em;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-hero-video-v1 .hero-btn:hover,
.block-hero-video-v1 .hero-btn:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
}

.block-hero-video-v1 .hero-btn:focus-visible {
  outline: 3px solid #47B27A;
  outline-offset: 4px;
}

.block-hero-video-v1 .hero-btn p,
.block-hero-video-v1 .hero-btn > * { margin: 0; display: inline; }

.block-hero-video-v1 .hero-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-hero-video-v1 .hero-btn:hover .hero-btn-icon,
.block-hero-video-v1 .hero-btn:focus-visible .hero-btn-icon {
  transform: translateX(3px);
}

/* Play area */
.block-hero-video-v1 .hero-play-area {
  position: absolute;
  bottom: 24px;
  right: 24px;
  z-index: 5;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.block-hero-video-v1 .hero-play-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.15);
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  color: var(--color-white);
  cursor: pointer;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: background-color 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
}

.block-hero-video-v1 .hero-play-btn:hover {
  background-color: rgba(255, 255, 255, 0.28);
  border-color: var(--color-white);
  transform: scale(1.07);
}

.block-hero-video-v1 .hero-play-btn:focus-visible {
  outline: 3px solid #47B27A;
  outline-offset: 4px;
}

/* Info / privacy notice */
.block-hero-video-v1 .hero-info-wrap {
  position: relative;
}

.block-hero-video-v1 .hero-info-btn {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.block-hero-video-v1 .hero-info-btn:hover,
.block-hero-video-v1 .hero-info-btn:focus-visible {
  border-color: rgba(255, 255, 255, 0.9);
  color: var(--color-white);
}

.block-hero-video-v1 .hero-info-tooltip {
  position: absolute;
  bottom: calc(100% + 10px);
  right: 0;
  width: 220px;
  background: rgba(0, 0, 0, 0.82);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: rgba(255, 255, 255, 0.88);
  font-family: var(--font-body);
  font-size: 12px;
  line-height: 1.5;
  padding: 10px 12px;
  border-radius: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.block-hero-video-v1 .hero-info-wrap:hover .hero-info-tooltip,
.block-hero-video-v1 .hero-info-btn:focus-visible ~ .hero-info-tooltip,
.block-hero-video-v1 .hero-info-tooltip.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* Vine illustration — starts below button, grows downward on scroll */
/* top = section_height - (padding-bottom 128px - gap 12px) = 100% - 116px */
.block-hero-video-v1 .hero-illu {
  position: absolute;
  top: calc(100% - 116px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  pointer-events: none;
  overflow: visible;
}

.block-hero-video-v1 .hero-illu-svg {
  display: block;
  overflow: visible;
}

.block-hero-video-v1 .hero-illu-path {
  stroke: var(--color-mint-green);
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.block-hero-video-v1 .vine-stem   { stroke-width: 4; }
.block-hero-video-v1 .vine-branch { stroke-width: 3; }
.block-hero-video-v1 .vine-sub    { stroke-width: 2.5; }

/* Lightbox */
.block-hero-video-v1 .hero-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9990;
  display: flex;
  align-items: center;
  justify-content: center;
}

.block-hero-video-v1 .hero-lightbox[hidden] {
  display: none;
}

.block-hero-video-v1 .hero-lightbox-backdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(2, 10, 4, 0.93);
  cursor: pointer;
  animation: hero-vid-lb-in 0.2s ease;
}

@keyframes hero-vid-lb-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.block-hero-video-v1 .hero-lightbox-content {
  position: relative;
  z-index: 1;
  width: 96vw;
  max-width: 1440px;
  animation: hero-vid-lb-up 0.2s ease;
}

@keyframes hero-vid-lb-up {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.block-hero-video-v1 .hero-lightbox-frame {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.block-hero-video-v1 .hero-lightbox-iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 6px;
}

.block-hero-video-v1 .hero-lightbox-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: var(--color-white);
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.block-hero-video-v1 .hero-lightbox-close:hover {
  background-color: rgba(255, 255, 255, 0.22);
}

.block-hero-video-v1 .hero-lightbox-close:focus-visible {
  outline: 3px solid #47B27A;
  outline-offset: 4px;
}

.block-hero-video-v1 .hero-lightbox-hint {
  text-align: center;
  color: rgba(255, 255, 255, 0.38);
  font-family: var(--font-body);
  font-size: clamp(0.9375rem, 2vw, 1.125rem);
  margin: 14px 0 0;
  letter-spacing: 0.03em;
  pointer-events: none;
  user-select: none;
}

/* Forest atmosphere */
.block-hero-video-v1 .hero-lb-forest {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.block-hero-video-v1 .hero-lb-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes lb-fly-glow {
  0%, 100% { opacity: 0.08; box-shadow: 0 0 3px 1px rgba(160, 240, 100, 0.2); }
  50%       { opacity: 0.85; box-shadow: 0 0 7px 3px rgba(190, 255, 130, 0.65); }
}
@keyframes lb-fly-float {
  0%   { transform: translate(0, 0); }
  33%  { transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5)); }
  66%  { transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy)); }
  100% { transform: translate(0, 0); }
}
.block-hero-video-v1 .hero-lb-fly {
  position: absolute;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    lb-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    lb-fly-float var(--fly-float, 5s) ease-in-out infinite;
}

/* Tablet */
@media (min-width: 768px) {
  .block-hero-video-v1 .hero-content {
    padding: 80px 48px 128px;
  }


}

/* Desktop */
@media (min-width: 1024px) {
  .block-hero-video-v1 .hero-content {
    padding: 96px 80px 128px;
  }


}

/* ── Falling leaves (spawned by JS when progress bar reaches 100%) ── */

@keyframes wi-leaf-fall {
  0%   { transform: translateY(-30px) translateX(0) rotate(0deg); opacity: 0; }
  8%   { opacity: 0.85; }
  92%  { opacity: 0.7; }
  100% { transform: translateY(100vh) translateX(var(--leaf-drift, 40px)) rotate(480deg); opacity: 0; }
}

.wi-leaf {
  position: fixed;
  top: 0;
  width: 10px;
  height: 16px;
  border-radius: 80% 0 80% 0;
  pointer-events: none;
  z-index: 9999;
  animation: wi-leaf-fall linear both;
  --leaf-drift: 40px;
}
/* Icon Text Grid (block-icon-text-grid-v1) */

.block-icon-text-grid-v1 {
  --icon-text-grid-v1-bg: var(--color-white, #ffffff);
  background: var(--icon-text-grid-v1-bg);
  color: var(--color-black, #333333);
}

.block-icon-text-grid-v1[data-background-color="#FFFFFF"] {
  --icon-text-grid-v1-bg: var(--color-white, #ffffff);
}

.block-icon-text-grid-v1[data-background-color="#F7F7F7"] {
  --icon-text-grid-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-icon-text-grid-v1 {
  --icon-text-grid-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-icon-text-grid-v1 .icon-text-grid-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__headline {
  margin: 0 0 40px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-icon-text-grid-v1 .icon-text-grid-v1__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__item {
  min-width: 0;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__media {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 160px;
  margin-bottom: 24px;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__illustration {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__illustration-placeholder {
  display: block;
  width: 160px;
  height: 160px;
  border-radius: 8px;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__illustration-placeholder {
  background: var(--color-surface-dark, #1a2920);
}

.block-icon-text-grid-v1 .icon-text-grid-v1__title {
  margin: 0 0 8px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.block-icon-text-grid-v1 .icon-text-grid-v1__description {
  max-width: 66ch;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.6));
}

.block-icon-text-grid-v1 .icon-text-grid-v1__description p {
  margin: 0;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__description p + p {
  margin-top: 16px;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__cta:hover,
.block-icon-text-grid-v1 .icon-text-grid-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-icon-text-grid-v1 .icon-text-grid-v1__cta:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 4px;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-icon-text-grid-v1 .icon-text-grid-v1__cta:hover .icon-text-grid-v1__cta-icon,
.block-icon-text-grid-v1 .icon-text-grid-v1__cta:focus-visible .icon-text-grid-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__cta:hover,
.dark .block-icon-text-grid-v1 .icon-text-grid-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-icon-text-grid-v1 .icon-text-grid-v1__cta:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-icon-text-grid-v1 .icon-text-grid-v1__inner {
    padding: 64px 48px;
  }

  .block-icon-text-grid-v1 .icon-text-grid-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
  }
}

@media (min-width: 1024px) {
  .block-icon-text-grid-v1 .icon-text-grid-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    padding: 64px 80px;
  }

  .block-icon-text-grid-v1 .icon-text-grid-v1__headline {
    grid-column: 1 / 5;
    align-self: start;
    margin-bottom: 0;
  }

  .block-icon-text-grid-v1 .icon-text-grid-v1__grid {
    grid-column: 5 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-icon-text-grid-v1 .icon-text-grid-v1__cta,
  .block-icon-text-grid-v1 .icon-text-grid-v1__cta-icon {
    transition: none !important;
  }

  .block-icon-text-grid-v1 .icon-text-grid-v1__cta:hover .icon-text-grid-v1__cta-icon,
  .block-icon-text-grid-v1 .icon-text-grid-v1__cta:focus-visible .icon-text-grid-v1__cta-icon {
    transform: none !important;
  }
}
/* ── Illustrated Page Header (block-illustrated-page-header-v1) ── */

.block-illustrated-page-header-v1 {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-illu: var(--color-mint-green, #47B27A);
  --illustrated-page-header-v1-foreground: var(--color-white, #FFFFFF);
  --illustrated-page-header-v1-focus: var(--color-white, #FFFFFF);
  --illustrated-page-header-v1-breadcrumb-color: rgba(255, 255, 255, 0.86);
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: var(--illustrated-page-header-v1-bg);
  color: var(--illustrated-page-header-v1-foreground);
}

/* Decorative illustration — exact Simple CTA geometry. */
.block-illustrated-page-header-v1 .illustrated-page-header-v1__illustration {
  position: absolute;
  inset: 0;
  overflow: hidden;
  color: var(--illustrated-page-header-v1-illu);
  pointer-events: none;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__illustration-svg {
  position: absolute;
  top: max(-310%, -1240px);
  left: 50%;
  width: auto;
  height: min(653%, 2612px);
  transform: translateX(-50%) rotate(57.787deg);
  opacity: 0.2;
  fill: currentColor;
}

/* Presets — shared with Simple CTA V1. */
.block-illustrated-page-header-v1,
.block-illustrated-page-header-v1[data-preset="forest-mint"] {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-illu: var(--color-mint-green, #47B27A);
}

.block-illustrated-page-header-v1[data-preset="forest-light"] { --illustrated-page-header-v1-illu: var(--color-light-green, #8ACBC1); }
.block-illustrated-page-header-v1[data-preset="forest-yellow"] { --illustrated-page-header-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-illustrated-page-header-v1[data-preset="forest-blue"] { --illustrated-page-header-v1-illu: var(--color-blue, #477EC0); }
.block-illustrated-page-header-v1[data-preset="moss-mint"] { --illustrated-page-header-v1-bg: var(--color-moss-green, #13735F); }
.block-illustrated-page-header-v1[data-preset="moss-blue"] { --illustrated-page-header-v1-bg: var(--color-moss-green, #13735F); --illustrated-page-header-v1-illu: var(--color-blue, #477EC0); }
.block-illustrated-page-header-v1[data-preset="moss-red"] { --illustrated-page-header-v1-bg: var(--color-moss-green, #13735F); --illustrated-page-header-v1-illu: var(--color-red, #E52322); }
.block-illustrated-page-header-v1[data-preset="darkred-mint"] { --illustrated-page-header-v1-bg: var(--color-dark-red, #861135); }
.block-illustrated-page-header-v1[data-preset="darkred-corn"] { --illustrated-page-header-v1-bg: var(--color-dark-red, #861135); --illustrated-page-header-v1-illu: var(--color-corn-green, #94C24A); }
.block-illustrated-page-header-v1[data-preset="darkred-blue"] { --illustrated-page-header-v1-bg: var(--color-dark-red, #861135); --illustrated-page-header-v1-illu: var(--color-blue, #477EC0); }

.block-illustrated-page-header-v1[data-preset="mint-yellow"] { --illustrated-page-header-v1-bg: var(--color-mint-green, #47B27A); --illustrated-page-header-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-illustrated-page-header-v1[data-preset="mint-light"] { --illustrated-page-header-v1-bg: var(--color-mint-green, #47B27A); --illustrated-page-header-v1-illu: var(--color-light-green, #8ACBC1); }
.block-illustrated-page-header-v1[data-preset="mint-corn"] { --illustrated-page-header-v1-bg: var(--color-mint-green, #47B27A); --illustrated-page-header-v1-illu: var(--color-corn-green, #94C24A); }
.block-illustrated-page-header-v1[data-preset="light-mint"] { --illustrated-page-header-v1-bg: var(--color-light-green, #8ACBC1); --illustrated-page-header-v1-illu: var(--color-mint-green, #47B27A); }
.block-illustrated-page-header-v1[data-preset="light-blue"] { --illustrated-page-header-v1-bg: var(--color-light-green, #8ACBC1); --illustrated-page-header-v1-illu: var(--color-blue, #477EC0); }
.block-illustrated-page-header-v1[data-preset="light-red"] { --illustrated-page-header-v1-bg: var(--color-light-green, #8ACBC1); --illustrated-page-header-v1-illu: var(--color-red, #E52322); }
.block-illustrated-page-header-v1[data-preset="yellow-mint"] { --illustrated-page-header-v1-bg: var(--color-yellow-green, #E6CE00); --illustrated-page-header-v1-illu: var(--color-mint-green, #47B27A); }
.block-illustrated-page-header-v1[data-preset="yellow-blue"] { --illustrated-page-header-v1-bg: var(--color-yellow-green, #E6CE00); --illustrated-page-header-v1-illu: var(--color-blue, #477EC0); }
.block-illustrated-page-header-v1[data-preset="corn-mint"] { --illustrated-page-header-v1-bg: var(--color-corn-green, #94C24A); --illustrated-page-header-v1-illu: var(--color-mint-green, #47B27A); }
.block-illustrated-page-header-v1[data-preset="corn-red"] { --illustrated-page-header-v1-bg: var(--color-corn-green, #94C24A); --illustrated-page-header-v1-illu: var(--color-red, #E52322); }

.block-illustrated-page-header-v1[data-preset="mint-yellow"],
.block-illustrated-page-header-v1[data-preset="mint-light"],
.block-illustrated-page-header-v1[data-preset="mint-corn"],
.block-illustrated-page-header-v1[data-preset="light-mint"],
.block-illustrated-page-header-v1[data-preset="light-blue"],
.block-illustrated-page-header-v1[data-preset="light-red"],
.block-illustrated-page-header-v1[data-preset="yellow-mint"],
.block-illustrated-page-header-v1[data-preset="yellow-blue"],
.block-illustrated-page-header-v1[data-preset="corn-mint"],
.block-illustrated-page-header-v1[data-preset="corn-red"] {
  --illustrated-page-header-v1-foreground: var(--color-black, #333333);
  --illustrated-page-header-v1-focus: var(--color-black, #333333);
  --illustrated-page-header-v1-breadcrumb-color: rgba(51, 51, 51, 0.86);
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb {
  width: 100%;
  margin: 0 0 64px;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-item {
  display: flex;
  align-items: center;
  flex-shrink: 1;
  gap: 6px;
  min-width: 0;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
  text-decoration: none;
  transition: opacity 0.15s ease;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home svg {
  display: block;
  width: auto;
  height: 14px;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-separator {
  display: block;
  flex-shrink: 0;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link,
.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  max-width: min(320px, 60vw);
  overflow: hidden;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link {
  position: relative;
  text-decoration: none;
  transition: opacity 0.15s ease;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home:hover,
.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link:hover {
  color: var(--illustrated-page-header-v1-foreground);
  opacity: 1;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home:focus-visible,
.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link:focus-visible {
  outline: 2px solid var(--illustrated-page-header-v1-focus);
  outline-offset: 3px;
  border-radius: 2px;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline {
  width: 100%;
  margin: 0;
  color: var(--illustrated-page-header-v1-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(36px, calc(3vw + 20px), 60px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline {
  width: 100%;
  margin-top: 16px;
  color: var(--illustrated-page-header-v1-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: pretty;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline > *,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline > * {
  margin: 0;
  color: inherit;
  font: inherit;
  line-height: inherit;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline > * + *,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline > * + * {
  margin-top: 8px;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline a,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline a,
.block-illustrated-page-header-v1 strong,
.block-illustrated-page-header-v1 b {
  color: var(--illustrated-page-header-v1-foreground);
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline a,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline a {
  font-weight: inherit;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .block-illustrated-page-header-v1 .illustrated-page-header-v1__inner {
    padding: 64px 48px;
  }

  .block-illustrated-page-header-v1 .page-header-v1__breadcrumb {
    margin-bottom: 128px;
  }
}

@media (min-width: 1024px) {
  .block-illustrated-page-header-v1 .illustrated-page-header-v1__inner {
    padding-right: 80px;
    padding-left: 80px;
  }
}
/* ── Impact Statistics (block-impact-stats-v1) ──────────────────── */

.block-impact-stats-v1 {
  --impact-stats-v1-bg: var(--color-light-grey, #f7f7f7);
  background: var(--impact-stats-v1-bg);
  container-type: inline-size;
}

.block-impact-stats-v1[data-background-color="#FFFFFF"] {
  --impact-stats-v1-bg: var(--color-white, #ffffff);
}

.block-impact-stats-v1[data-background-color="#F7F7F7"] {
  --impact-stats-v1-bg: var(--color-light-grey, #f7f7f7);
}

.block-impact-stats-v1 .stats-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
}

/* ── Headline ── */

.block-impact-stats-v1 .stats-headline,
.block-impact-stats-v1 .stats-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
  text-align: center;
  margin: 0 0 48px;
}

/* ── Stat grid ── */

.block-impact-stats-v1 .stats-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  text-align: center;
}

.block-impact-stats-v1 .stat-number {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: 1.1;
  color: var(--color-moss-green);
  margin: 0 0 8px;
  min-width: 0;
  overflow-wrap: break-word;
}

.block-impact-stats-v1 .stat-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
  margin: 0 0 16px;
}

.block-impact-stats-v1 .stat-description {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}

.block-impact-stats-v1 .stats-headline p,
.block-impact-stats-v1 .stats-title p,
.block-impact-stats-v1 .stat-title p,
.block-impact-stats-v1 .stat-description p {
  margin: 0;
}

/* ── Footer ── */

.block-impact-stats-v1 .stats-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
}

.block-impact-stats-v1 .stats-footer:not(:has(*)) {
  display: none;
}

.block-impact-stats-v1 .progressbar-wrap {
  width: 100%;
}

.block-impact-stats-v1 .progressbar {
  background-color: var(--color-white);
  border-radius: 63px;
  height: 48px;
  overflow: hidden;
}

.block-impact-stats-v1 .progressbar-fill {
  background-color: var(--color-forest-green);
  border-radius: 47px;
  height: 100%;
  transition: width 0.6s ease;
  min-width: 0;
}

@keyframes wi-shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}

@keyframes wi-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(116, 198, 157, 0.7); }
  70%  { box-shadow: 0 0 0 18px rgba(116, 198, 157, 0); }
  100% { box-shadow: 0 0 0 0 rgba(116, 198, 157, 0); }
}

.block-impact-stats-v1 .progressbar-fill.is-complete {
  background: linear-gradient(
    90deg,
    var(--color-forest-green) 0%,
    var(--color-forest-green) 30%,
    var(--color-mint-green) 50%,
    var(--color-forest-green) 70%,
    var(--color-forest-green) 100%
  );
  background-size: 200% 100%;
  animation: wi-shimmer 1.6s ease-in-out 0.8s 1 forwards;
}

.block-impact-stats-v1 .progressbar.is-complete {
  box-shadow: 0 0 0 2px var(--color-mint-green);
  animation: wi-pulse 2s ease-out 0s infinite;
}

/* Button */

.block-impact-stats-v1 .stats-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0.85rem 1.5rem;
  background-color: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  border: 1px solid transparent;
  border-radius: 4rem;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 16px;
  line-height: 1em;
  text-decoration: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: 0.16s ease-in-out all;
}

.block-impact-stats-v1 .stats-btn:hover,
.block-impact-stats-v1 .stats-btn:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
  border-color: var(--color-moss-green);
}

.block-impact-stats-v1 .stats-btn:focus-visible {
  outline: 3px solid var(--color-moss-green);
  outline-offset: 4px;
}

.block-impact-stats-v1 .stats-btn:focus:not(:focus-visible) {
  outline: none;
}

.block-impact-stats-v1 .stats-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-impact-stats-v1 .stats-btn:hover .stats-btn-icon {
  transform: translateX(3px);
}

/* Centered button when no progress bar */
.block-impact-stats-v1 .stats-footer.center-btn,
.block-impact-stats-v1 .stats-footer:not(:has(.progressbar-wrap)) {
  justify-content: center;
}

/* Tablet */
@media (min-width: 768px) {
  .block-impact-stats-v1 .stats-inner {
    padding: 64px 48px;
  }

  .block-impact-stats-v1 .stats-grid {
    gap: 32px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-impact-stats-v1 .stats-inner {
    padding: 64px 80px;
  }

  .block-impact-stats-v1 .stats-footer {
    flex-direction: row;
    align-items: center;
    gap: 32px;
  }

  .block-impact-stats-v1 .progressbar-wrap {
    flex: 1;
  }

  .block-impact-stats-v1 .stats-footer.center-btn,
  .block-impact-stats-v1 .stats-footer:not(:has(.progressbar-wrap)) {
    justify-content: center;
  }
}

/* Container queries — grid columns based on block width, not screen width */
@container (min-width: 540px) {
  .block-impact-stats-v1 .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@container (min-width: 760px) {
  .block-impact-stats-v1 .stats-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* Info Box (block-info-box-v1) */

.block-info-box-v1 {
  --info-box-v1-section-bg: var(--color-white, #ffffff);
  --info-box-v1-card-bg: var(--color-forest-green, #004432);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
  background: var(--info-box-v1-section-bg);
}

.block-info-box-v1[data-background-color='#FFFFFF'] {
  --info-box-v1-section-bg: var(--color-white, #ffffff);
}

.block-info-box-v1[data-background-color='#F7F7F7'] {
  --info-box-v1-section-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-info-box-v1 {
  --info-box-v1-section-bg: var(--color-bg-dark, #0f1a14);
  background: var(--info-box-v1-section-bg) !important;
}

.block-info-box-v1[data-card-color='forest-green'] {
  --info-box-v1-card-bg: var(--color-forest-green, #004432);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1[data-card-color='mint-green'] {
  --info-box-v1-card-bg: var(--color-mint-green, #47b27a);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='red'] {
  --info-box-v1-card-bg: var(--color-red, #e52322);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1[data-card-color='light-green'] {
  --info-box-v1-card-bg: var(--color-light-green, #8acbc1);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='corn-green'] {
  --info-box-v1-card-bg: var(--color-corn-green, #94c24a);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='yellow-green'] {
  --info-box-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='moss-green'] {
  --info-box-v1-card-bg: var(--color-moss-green, #13735f);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1[data-card-color='dark-red'] {
  --info-box-v1-card-bg: var(--color-dark-red, #861135);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1 .info-box-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-info-box-v1 .info-box-v1__card {
  min-width: 0;
  padding: 24px;
  border-radius: 16px;
  background: var(--info-box-v1-card-bg);
  color: var(--info-box-v1-card-copy);
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.block-info-box-v1 .info-box-v1__icon {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 0 24px;
  color: inherit;
  flex: 0 0 auto;
}

.block-info-box-v1 .info-box-v1__icon-disc {
  fill: currentColor;
  stroke: none;
}

.block-info-box-v1 .info-box-v1__icon-mark {
  fill: var(--info-box-v1-card-bg);
  stroke: none;
}

.block-info-box-v1 .info-box-v1__body {
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.block-info-box-v1 .info-box-v1__body :where(p, ul, ol) {
  margin: 0 0 16px;
}

.block-info-box-v1 .info-box-v1__body > :last-child {
  margin-bottom: 0;
}

.block-info-box-v1 .info-box-v1__body :where(ul, ol) {
  padding-left: 1.4em;
}

.block-info-box-v1 .info-box-v1__body li + li {
  margin-top: 8px;
}

.block-info-box-v1 .info-box-v1__body li > p {
  margin: 0;
}

.block-info-box-v1 .info-box-v1__body :where(a, strong, b, em, i, u, sub, sup) {
  color: inherit;
}

.block-info-box-v1 .info-box-v1__body a {
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.block-info-box-v1 .info-box-v1__body a:hover {
  text-decoration-thickness: 2px;
}

.block-info-box-v1 .info-box-v1__body a:focus-visible {
  border-radius: 2px;
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

@media (min-width: 768px) {
  .block-info-box-v1 .info-box-v1__inner {
    padding: 64px 48px;
  }

  .block-info-box-v1 .info-box-v1__card {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-info-box-v1 .info-box-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    padding: 64px 80px;
  }

  .block-info-box-v1 .info-box-v1__card {
    grid-column: 5 / -1;
    padding: 48px;
  }
}
/* ── Instagram Feed (block-instagram-feed-v1) ────────────────── */

.block-instagram-feed-v1 {
  background: var(--color-white);
  padding: 64px 0;
}
.dark .block-instagram-feed-v1 {
  background: var(--color-bg-dark);
}

.block-instagram-feed-v1 .ig-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: 64px;
  align-items: center;
}

/* ── Header ── */

.block-instagram-feed-v1 .ig-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  gap: 16px;
}

.block-instagram-feed-v1 .ig-headline {
  font-family: var(--font-heading);
  font-size: clamp(28px, 4vw, 46px);
  line-height: var(--text-h3--line-height);
  font-weight: 700;
  color: var(--color-forest-green);
  margin: 0;
}
.dark .block-instagram-feed-v1 .ig-headline {
  color: var(--color-accent-dark);
}

.block-instagram-feed-v1 .ig-brand {
  background: linear-gradient(45deg, #feda75 0%, #fa7e1e 20%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.dark .block-instagram-feed-v1 .ig-brand {
  background: linear-gradient(45deg, #feda75 0%, #fa7e1e 20%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.block-instagram-feed-v1 .ig-description {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: var(--text-body--line-height);
  color: var(--color-black);
  max-width: 520px;
  margin: 0;
}
.dark .block-instagram-feed-v1 .ig-description {
  color: var(--color-text-secondary-dark);
}

/* ── CTA row ── */

.block-instagram-feed-v1 .ig-cta {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: 8px;
}

.block-instagram-feed-v1 .ig-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 48px;
  padding: 0 1.5rem;
  background: var(--color-white);
  color: var(--color-moss-green);
  border: 1px solid var(--color-moss-green);
  border-radius: 4rem;
  font-family: var(--font-heading);
  font-size: clamp(0.875rem, 1.5vw, 1.125rem);
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.block-instagram-feed-v1 .ig-btn:hover {
  background: var(--color-moss-green);
  color: var(--color-white);
  border-color: var(--color-moss-green);
}
.dark .block-instagram-feed-v1 .ig-btn {
  background: transparent;
  color: var(--color-accent-dark);
  border-color: var(--color-accent-dark);
}
.dark .block-instagram-feed-v1 .ig-btn:hover {
  background: var(--color-accent-dark);
  color: #0f1a14;
  border-color: var(--color-accent-dark);
}

.block-instagram-feed-v1 .ig-btn-logo {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.block-instagram-feed-v1 .ig-followers {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-heading);
  font-size: clamp(14px, 1.5vw, 16px);
  font-weight: 700;
  color: var(--color-grey-60);
}
.dark .block-instagram-feed-v1 .ig-followers {
  color: var(--color-text-secondary-dark);
}

/* ── Post grid ── */

.block-instagram-feed-v1 .ig-grid {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.block-instagram-feed-v1 .ig-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.block-instagram-feed-v1 .ig-col-mid {
  margin-top: 64px;
}

/* ── Post card ── */

.block-instagram-feed-v1 .ig-post {
  position: relative;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  border-radius: 8px;
  display: block;
  background: var(--color-grey-20);
}
.dark .block-instagram-feed-v1 .ig-post {
  background: var(--color-surface-dark);
}

.block-instagram-feed-v1 .ig-post-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.block-instagram-feed-v1 .ig-post-img[src=""] {
  display: none;
}
.block-instagram-feed-v1 .ig-post:hover .ig-post-img {
  transform: scale(1.05);
}

.block-instagram-feed-v1 .ig-post-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 68, 50, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}
.block-instagram-feed-v1 .ig-post:hover .ig-post-overlay {
  background: rgba(0, 68, 50, 0.65);
}

.block-instagram-feed-v1 .ig-post-icon {
  opacity: 0;
  color: #fff;
  width: 32px;
  height: 32px;
  transition: opacity 0.3s ease;
}
.block-instagram-feed-v1 .ig-post:hover .ig-post-icon {
  opacity: 1;
}

/* ── Scroll animation ── */

@keyframes ig-post-in {
  from { opacity: 0; transform: translateY(48px); }
  to   { opacity: 1; transform: translateY(0); }
}

.block-instagram-feed-v1.ig-js .ig-post {
  opacity: 0;
  transform: translateY(48px);
}

.block-instagram-feed-v1.ig-js .ig-post.ig-visible {
  animation: ig-post-in 1.1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@media (prefers-reduced-motion: reduce) {
  .block-instagram-feed-v1.ig-js .ig-post,
  .block-instagram-feed-v1.ig-js .ig-post.ig-visible {
    opacity: 1;
    transform: none;
    animation: none;
  }
}

/* ── Responsive ── */

@media (min-width: 768px) {
  .block-instagram-feed-v1 .ig-inner {
    padding: 0 48px;
  }
}

@media (min-width: 1024px) {
  .block-instagram-feed-v1 .ig-inner {
    padding: 0 80px;
  }
}

@media (max-width: 767px) {
  .block-instagram-feed-v1 {
    padding: 64px 0;
  }
  .block-instagram-feed-v1 .ig-inner {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 0 16px;
  }
  .block-instagram-feed-v1 .ig-header {
    align-items: center;
    text-align: center;
  }
  .block-instagram-feed-v1 .ig-cta {
    justify-content: center;
  }
  .block-instagram-feed-v1 .ig-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
  }
  .block-instagram-feed-v1 .ig-col,
  .block-instagram-feed-v1 .ig-col-mid {
    display: contents;
  }
  .block-instagram-feed-v1 .ig-post-icon {
    width: 24px;
    height: 24px;
  }
}
/* ── Latest News (block-latest-news-v1) ──────────────────── */

.block-latest-news-v1 { background: var(--color-light-grey, #F7F7F7); }
.dark .block-latest-news-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-latest-news-v1 .ln-inner {
  max-width: 960px; margin: 0 auto; padding: 64px 24px;
}

/* Header */
.block-latest-news-v1 .ln-header { margin-bottom: 48px; }

.block-latest-news-v1 .ln-title {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700; line-height: 1.15;
  color: var(--color-forest-green, #004432); margin: 0 0 16px;
}
.dark .block-latest-news-v1 .ln-title { color: var(--color-accent-dark, #47b27a); }

.block-latest-news-v1 .ln-title-bird {
  height: 0.85em; width: auto; flex-shrink: 0; fill: currentColor; transform: translateY(-2px);
}

/* Scroll animations */
.block-latest-news-v1.ln-animate .ln-header { opacity: 0; transition: opacity 0.7s ease; }
.block-latest-news-v1.ln-animate .ln-header.ln-visible { opacity: 1; }
.block-latest-news-v1.ln-animate .ln-card { opacity: 0; transform: translateY(24px); transition: opacity 0.6s ease, transform 0.6s ease; }
.block-latest-news-v1.ln-animate .ln-card.ln-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  .block-latest-news-v1.ln-animate .ln-header,
  .block-latest-news-v1.ln-animate .ln-card { opacity: 1 !important; transform: none !important; transition: none !important; }
}

.block-latest-news-v1 .ln-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6; color: var(--color-grey-80, #4D4D4D); margin: 0; text-align: center;
}
.block-latest-news-v1 .ln-desc p { margin: 0; }
.dark .block-latest-news-v1 .ln-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

/* Grid */
.block-latest-news-v1 .ln-grid { display: flex; flex-direction: column; gap: 24px; }

/* Cards shared */
.block-latest-news-v1 .ln-card {
  display: flex; text-decoration: none; color: inherit;
  border-radius: 16px; overflow: hidden;
  background: var(--color-white, #FFFFFF);
  transition: transform 0.2s ease, box-shadow 0.2s ease; cursor: pointer;
}
.dark .block-latest-news-v1 .ln-card { background: var(--color-surface-dark, #1a2920); }
.block-latest-news-v1 .ln-card:hover {
  transform: translateY(-3px); box-shadow: 0 12px 40px rgba(0, 68, 50, 0.12);
}
.dark .block-latest-news-v1 .ln-card:hover { box-shadow: 0 12px 40px rgba(0,0,0,0.35); }
.block-latest-news-v1 .ln-card:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432); outline-offset: 3px;
}
.dark .block-latest-news-v1 .ln-card:focus-visible { outline-color: var(--color-mint-green, #78c5a0); }

/* Image wrap */
.block-latest-news-v1 .ln-card-img-wrap {
  overflow: hidden; position: relative; background: var(--color-grey-20, #DCDCDC);
}
.dark .block-latest-news-v1 .ln-card-img-wrap { background: rgba(255,255,255,0.06); }
.block-latest-news-v1 .ln-card-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.45s ease;
}
.block-latest-news-v1 .ln-card:hover .ln-card-img { transform: scale(1.05); }

/* Hero card */
.block-latest-news-v1 .ln-card--hero { flex-direction: row; }
.block-latest-news-v1 .ln-card--hero .ln-card-img-wrap { width: 55%; flex-shrink: 0; aspect-ratio: 16 / 9; }
.block-latest-news-v1 .ln-card--hero .ln-card-body {
  flex: 1; padding: 40px 48px;
  display: flex; flex-direction: column; justify-content: space-between; gap: 12px;
}
.block-latest-news-v1 .ln-card--hero .ln-card-date {
  margin-top: auto;
}

/* Sub-grid */
.block-latest-news-v1 .ln-sub-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px;
}
.block-latest-news-v1 .ln-card--sub { flex-direction: column; }
.block-latest-news-v1 .ln-card--sub .ln-card-img-wrap {
  width: 100%; aspect-ratio: 16 / 9; flex-shrink: 0;
}
.block-latest-news-v1 .ln-card--sub .ln-card-body {
  flex: 1; padding: 24px 28px 28px; display: flex; flex-direction: column; gap: 8px;
}
.block-latest-news-v1 .ln-card--sub .ln-card-date { margin-top: auto; }

/* Card content */
.block-latest-news-v1 .ln-card-category {
  display: none; align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.08em; line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  border-radius: 8px; padding: 4px 10px;
}
.block-latest-news-v1 .ln-card-category:not(:empty) { display: inline-block; }
.dark .block-latest-news-v1 .ln-card-category {
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
}

.block-latest-news-v1 .ln-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700; color: var(--color-black, #333333); margin: 0; line-height: 1.3;
}
.dark .block-latest-news-v1 .ln-card-title { color: var(--color-text-dark, #f0f4f2); }

.block-latest-news-v1 .ln-card-seo {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 0;
}
.dark .block-latest-news-v1 .ln-card-seo { color: var(--color-text-secondary-dark, rgba(255,255,255,0.62)); }

.block-latest-news-v1 .ln-card-date {
  display: block;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px; color: var(--color-grey-60, #737373);
}
.dark .block-latest-news-v1 .ln-card-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

/* Mobile */
@media (max-width: 767px) {
  .block-latest-news-v1 .ln-inner { padding: 48px 24px; }
  .block-latest-news-v1 .ln-card--hero { flex-direction: column; min-height: auto; }
  .block-latest-news-v1 .ln-card--hero .ln-card-img-wrap { width: 100%; aspect-ratio: 16 / 9; }
  .block-latest-news-v1 .ln-card--hero .ln-card-body { padding: 24px 20px 28px; }
  .block-latest-news-v1 .ln-sub-grid { grid-template-columns: 1fr; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-latest-news-v1 .ln-title { font-size: 40px; }
  .block-latest-news-v1 .ln-card--hero .ln-card-body { padding: 32px 36px; }
}

@media (min-width: 1024px) {
  .block-latest-news-v1 .ln-title { font-size: 46px; }
}
/* Latest Story Card List (block-latest-story-card-list-v1) */

.block-latest-story-card-list-v1 {
  --latest-story-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
  --latest-story-card-list-v1-card-bg: var(--color-white, #ffffff);
  background: var(--latest-story-card-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-latest-story-card-list-v1[data-background-color="#FFFFFF"] {
  --latest-story-card-list-v1-bg: var(--color-white, #ffffff);
}

.block-latest-story-card-list-v1[data-background-color="#F7F7F7"] {
  --latest-story-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-latest-story-card-list-v1 {
  --latest-story-card-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --latest-story-card-list-v1-card-bg: var(--color-surface-dark, #1a2920);
  color: var(--color-text-dark, #f0f4f2);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__header {
  margin-bottom: 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__headline p {
  margin: 0;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__item {
  min-width: 0;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: 16px;
  background: var(--latest-story-card-list-v1-card-bg);
  box-shadow: 0 1px 2px rgba(0, 68, 50, 0.08);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__card {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.24);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:focus-visible,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__image,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:hover .latest-story-card-list-v1__image,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:focus-visible .latest-story-card-list-v1__image {
  transform: scale(1.04);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title p,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__description p,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta p {
  margin: 0;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:hover,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:hover,
.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__date {
  color: var(--color-grey-60, #737373);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__category {
  display: inline-block;
  align-self: flex-start;
  padding: 4px 10px;
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px;
  background: rgba(0, 68, 50, 0.07);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__date {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__category {
  border-color: rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.85);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__description {
  display: -webkit-box;
  margin-top: 12px;
  overflow: hidden;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__footer {
  padding: 0 24px 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover .latest-story-card-list-v1__cta-icon,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible .latest-story-card-list-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover,
.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

@media (min-width: 768px) {
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__inner {
    padding: 64px 48px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
    font-size: 40px;
  }
}

@media (min-width: 1024px) {
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__inner {
    padding: 64px 80px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__header {
    margin-bottom: 40px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 28px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item {
    grid-column: span 2;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(2),
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(2) ~ .latest-story-card-list-v1__item {
    grid-column: span 3;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
    font-size: 46px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__title {
    font-size: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__image,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta-icon {
    transition: none !important;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:hover .latest-story-card-list-v1__image,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:focus-visible .latest-story-card-list-v1__image,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover .latest-story-card-list-v1__cta-icon,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible .latest-story-card-list-v1__cta-icon {
    transform: none !important;
  }
}
.block-logoed-text-v1 {
  background-color: var(--color-light-grey, #F7F7F7);
}
.dark .block-logoed-text-v1 {
  background-color: var(--color-surface-dark, #1a2920);
}
.block-logoed-text-v1 .lt-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.block-logoed-text-v1 .lt-logo-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 160px;
  padding: 24px;
  border-radius: 12px;
  background-color: var(--color-white, #FFFFFF);
  margin: 0;
  flex-shrink: 0;
}
.dark .block-logoed-text-v1 .lt-logo-box {
  background-color: var(--color-bg-dark, #0f1a14);
}
.block-logoed-text-v1 .lt-logo {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.block-logoed-text-v1 .lt-logo-placeholder {
  width: 100%;
  height: 100%;
  background-color: var(--color-grey-20, #DCDCDC);
  border-radius: 8px;
}
.block-logoed-text-v1 .lt-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 400;
  font-size: 18px;
  line-height: var(--text-body--line-height, 1.6);
  color: var(--color-black, #333333);
}
.dark .block-logoed-text-v1 .lt-body {
  color: var(--color-text-dark, #f0f4f2);
}
.block-logoed-text-v1 .lt-body p { margin: 0 0 16px; }
.block-logoed-text-v1 .lt-body p:last-child { margin-bottom: 0; }
.block-logoed-text-v1 .lt-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-logoed-text-v1 .lt-body a { color: var(--color-accent-dark, #47B27A); }
.block-logoed-text-v1 .lt-body a:hover { text-decoration: none; }
.block-logoed-text-v1 .lt-body a:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 2px;
  border-radius: 2px;
}
.dark .block-logoed-text-v1 .lt-body a:focus-visible {
  outline-color: var(--color-accent-dark, #47B27A);
}
.block-logoed-text-v1 .lt-body strong { font-weight: 700; }
.block-logoed-text-v1 .lt-body ul,
.block-logoed-text-v1 .lt-body ol { padding-left: 1.4em; margin: 0 0 16px; }
.block-logoed-text-v1 .lt-body li { margin-bottom: 8px; }
@media (min-width: 768px) {
  .block-logoed-text-v1 .lt-inner { padding: 64px 48px; }
}
@media (min-width: 1024px) {
  .block-logoed-text-v1 .lt-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    align-items: center;
  }
  .block-logoed-text-v1 .lt-logo,
  .block-logoed-text-v1 .lt-logo-placeholder {
    grid-column: 1 / 4;
    width: 100%;
    height: 180px;
  }
  .block-logoed-text-v1 .lt-body {
    grid-column: 5 / -1;
  }
}
/* ── Manual Statistics (block-manual-stats-v1) ──────────────────── */

.block-manual-stats-v1 {
  --manual-stats-v1-bg: var(--color-light-grey, #f7f7f7);
  background: var(--manual-stats-v1-bg);
  container-type: inline-size;
}

.block-manual-stats-v1[data-background-color="#FFFFFF"] {
  --manual-stats-v1-bg: var(--color-white, #ffffff);
}

.block-manual-stats-v1[data-background-color="#F7F7F7"] {
  --manual-stats-v1-bg: var(--color-light-grey, #f7f7f7);
}

.block-manual-stats-v1 .stats-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
}

/* ── Headline ── */

.block-manual-stats-v1 .stats-headline,
.block-manual-stats-v1 .stats-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
  text-align: center;
  margin: 0 0 48px;
}

/* ── Stat grid ── */

.block-manual-stats-v1 .stats-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  text-align: center;
}

.block-manual-stats-v1 .stat-number {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: 1.1;
  color: var(--color-moss-green);
  margin: 0 0 8px;
  min-width: 0;
  overflow-wrap: break-word;
}

.block-manual-stats-v1 .stat-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
  margin: 0 0 16px;
}

.block-manual-stats-v1 .stat-description {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}

.block-manual-stats-v1 .stats-headline p,
.block-manual-stats-v1 .stats-title p,
.block-manual-stats-v1 .stat-title p,
.block-manual-stats-v1 .stat-description p {
  margin: 0;
}

/* ── Footer ── */

.block-manual-stats-v1 .stats-footer {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

/* Button */

.block-manual-stats-v1 .stats-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0.85rem 1.5rem;
  background-color: var(--color-white);
  color: var(--color-moss-green);
  border: 1px solid var(--color-moss-green);
  border-radius: 4rem;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: clamp(0.875rem, 1.5vw, 1.125rem);
  line-height: 1em;
  text-decoration: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: 0.16s ease-in-out all;
}

.block-manual-stats-v1 .stats-btn:hover,
.block-manual-stats-v1 .stats-btn:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
  border-color: var(--color-moss-green);
}

.block-manual-stats-v1 .stats-btn:focus-visible {
  outline: 3px solid var(--color-moss-green);
  outline-offset: 4px;
}

.block-manual-stats-v1 .stats-btn:focus:not(:focus-visible) {
  outline: none;
}

.block-manual-stats-v1 .stats-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-manual-stats-v1 .stats-btn:hover .stats-btn-icon {
  transform: translateX(3px);
}

/* Tablet */
@media (min-width: 768px) {
  .block-manual-stats-v1 .stats-inner {
    padding: 64px 48px;
  }

  .block-manual-stats-v1 .stats-grid {
    gap: 32px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-manual-stats-v1 .stats-inner {
    padding: 64px 80px;
  }
}

/* Container queries — grid columns based on block width, not screen width */
@container (min-width: 540px) {
  .block-manual-stats-v1 .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@container (min-width: 760px) {
  .block-manual-stats-v1 .stats-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* ── More Stories (block-more-stories-v1) ──────────────────── */

.block-more-stories-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-more-stories-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-more-stories-v1 .ms-inner {
  max-width: 860px; margin: 0 auto; padding: 64px 24px;
}

.block-more-stories-v1 .ms-title {
  margin: 0 0 24px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}
.block-more-stories-v1 .ms-title p { margin: 0; }
.dark .block-more-stories-v1 .ms-title { color: var(--color-accent-dark, #47b27a); }

.block-more-stories-v1 .ms-list { list-style: none; padding: 0; margin: 0; }
.block-more-stories-v1 .ms-list li + li { border-top: 1px solid var(--color-grey-20, #DCDCDC); }
.dark .block-more-stories-v1 .ms-list li + li { border-color: rgba(255,255,255,0.1); }

.block-more-stories-v1 .ms-card {
  display: flex; flex-direction: row; align-items: flex-start; gap: 24px;
  padding: 24px 0; text-decoration: none; color: inherit; cursor: pointer;
}

.block-more-stories-v1 .ms-card-img-wrap {
  flex-shrink: 0; width: 280px; aspect-ratio: 16 / 9;
  border-radius: 16px; overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-more-stories-v1 .ms-card-img-wrap { background: rgba(255,255,255,0.06); }
.block-more-stories-v1 .ms-card-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.45s ease;
}
.block-more-stories-v1 .ms-card:hover .ms-card-img { transform: scale(1.05); }

.block-more-stories-v1 .ms-card-body {
  flex: 1; align-self: stretch; display: flex; flex-direction: column; gap: 6px; min-width: 0;
}

.block-more-stories-v1 .ms-card-category {
  display: none; align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.08em; line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px; padding: 4px 10px;
}
.block-more-stories-v1 .ms-card-category:not(:empty) { display: inline-block; }
.dark .block-more-stories-v1 .ms-card-category {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}

.block-more-stories-v1 .ms-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700; line-height: 1.3;
  color: var(--color-black, #333333); margin: 0;
  transition: color 0.2s ease;
}
.dark .block-more-stories-v1 .ms-card-title { color: var(--color-text-dark, #f0f4f2); }
.block-more-stories-v1 .ms-card:hover .ms-card-title { color: var(--color-forest-green, #004432); }
.dark .block-more-stories-v1 .ms-card:hover .ms-card-title { color: var(--color-accent-dark, #47B27A); }

.block-more-stories-v1 .ms-card-seo {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 0;
}
.dark .block-more-stories-v1 .ms-card-seo { color: var(--color-text-secondary-dark, rgba(255,255,255,0.62)); }

.block-more-stories-v1 .ms-card-date {
  display: block; margin-top: auto;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px; line-height: 1.4; color: var(--color-grey-60, #737373);
}
.dark .block-more-stories-v1 .ms-card-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-more-stories-v1 .ms-footer { margin-top: 48px; text-align: center; }

.block-more-stories-v1 .ms-view-all {
  display: inline-flex; align-items: center; gap: 10px;
  padding: .85rem 1.5rem; border-radius: 4rem;
  background-color: var(--color-white, #FFFFFF);
  border: 1px solid var(--color-moss-green, #13735F);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1.125rem; font-weight: 600; line-height: 1em;
  text-decoration: none; cursor: pointer;
  transition: .16s ease-in-out all;
}
.block-more-stories-v1 .ms-view-all:hover,
.block-more-stories-v1 .ms-view-all:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  border-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
}
.block-more-stories-v1 .ms-view-all:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F); outline-offset: 4px;
}
.dark .block-more-stories-v1 .ms-view-all {
  background-color: transparent;
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-accent-dark, #47B27A);
}
.dark .block-more-stories-v1 .ms-view-all:hover,
.dark .block-more-stories-v1 .ms-view-all:focus-visible {
  background-color: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}


.block-more-stories-v1.ms-animate .ms-title { opacity: 0; transition: opacity 0.7s ease; }
.block-more-stories-v1.ms-animate .ms-title.ms-visible { opacity: 1; }
.block-more-stories-v1.ms-animate .ms-card {
  opacity: 0; transform: translateX(-8px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.block-more-stories-v1.ms-animate .ms-card.ms-visible { opacity: 1; transform: translateX(0); }
@media (prefers-reduced-motion: reduce) {
  .block-more-stories-v1.ms-animate .ms-title,
  .block-more-stories-v1.ms-animate .ms-card { opacity: 1 !important; transform: none !important; transition: none !important; }
}

@media (max-width: 767px) {
  .block-more-stories-v1 .ms-inner { padding: 48px 24px; }
  .block-more-stories-v1 .ms-card { flex-direction: column; gap: 12px; }
  .block-more-stories-v1 .ms-card-img-wrap { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 16px; }
}

@media (min-width: 768px) {
  .block-more-stories-v1 .ms-title { font-size: 40px; }
}

@media (min-width: 1024px) {
  .block-more-stories-v1 .ms-title {
    margin-bottom: 40px;
    font-size: 46px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-more-stories-v1 .ms-card-img-wrap { width: 280px; }
}
/* Multiple Card Donation CTA (block-multiple-card-donation-cta-v1) */

.block-multiple-card-donation-cta-v1 {
  --multiple-card-donation-cta-v1-solid-bg: var(--color-light-grey, #f7f7f7);
  --multiple-card-donation-cta-v1-card-bg: var(--color-white, #ffffff);
  --multiple-card-donation-cta-v1-card-shadow: 0 12px 32px rgba(0, 34, 24, 0.16);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--color-forest-green, #004432);
  color: var(--color-white, #ffffff);
}

.block-multiple-card-donation-cta-v1[data-background-color='#FFFFFF'] {
  --multiple-card-donation-cta-v1-solid-bg: var(--color-white, #ffffff);
}

.block-multiple-card-donation-cta-v1[data-background-color='#F7F7F7'] {
  --multiple-card-donation-cta-v1-solid-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-multiple-card-donation-cta-v1 {
  --multiple-card-donation-cta-v1-solid-bg: var(--color-bg-dark, #0f1a14);
  --multiple-card-donation-cta-v1-card-bg: var(--color-surface-dark, #1a2920);
  --multiple-card-donation-cta-v1-card-shadow: 0 14px 36px rgba(0, 0, 0, 0.34);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__media,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__media {
  z-index: -3;
  background: var(--color-forest-green, #004432);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__overlay {
  z-index: -2;
  background: rgba(0, 0, 0, 0.24);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__picture,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__image,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__image {
  object-fit: cover;
  object-position: center;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.2), rgba(0, 68, 50, 0.72)),
    var(--color-forest-green, #004432);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__inner {
  position: relative;
  z-index: 0;
  max-width: 1440px;
  margin: 0 auto;
  padding: 80px 24px;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__header {
  max-width: 1120px;
  margin: 0 0 48px;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__eyebrow {
  margin: 0 0 12px;
  color: var(--color-white, #ffffff);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-shadow:
    0 1px 3px rgba(0, 0, 0, 0.72),
    1px 0 1px rgba(0, 0, 0, 0.42),
    -1px 0 1px rgba(0, 0, 0, 0.42);
  overflow-wrap: anywhere;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__headline {
  margin: 0;
  color: var(--color-white, #ffffff);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  text-shadow:
    0 2px 5px rgba(0, 0, 0, 0.72),
    1px 0 1px rgba(0, 0, 0, 0.46),
    -1px 0 1px rgba(0, 0, 0, 0.46);
  overflow-wrap: anywhere;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__eyebrow p,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__headline p,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__card-title p,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__item {
  min-width: 0;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__card {
  display: flex;
  width: 100%;
  height: 100%;
  min-width: 0;
  padding: 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  border: 0;
  border-radius: 16px;
  background: var(--multiple-card-donation-cta-v1-card-bg);
  box-shadow: var(--multiple-card-donation-cta-v1-card-shadow);
  box-sizing: border-box;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__card-title {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(22px, calc(0.4vw + 20px), 24px);
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.dark .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__card-title {
  color: var(--color-accent-dark, #47b27a);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta {
  display: inline-flex;
  min-height: 48px;
  max-width: 100%;
  margin-top: auto;
  padding: 0 24px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  overflow-wrap: anywhere;
  box-sizing: border-box;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:hover,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.dark .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta-label {
  min-width: 0;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:hover .multiple-card-donation-cta-v1__cta-icon,
.block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:focus-visible .multiple-card-donation-cta-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__inner {
    padding: 80px 48px;
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__card {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__inner {
    padding: 96px 80px 64px;
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 32px;
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__grid::before {
    position: absolute;
    top: 66.667%;
    right: auto;
    bottom: -64px;
    left: 50%;
    z-index: -1;
    width: 100vw;
    background: var(--multiple-card-donation-cta-v1-solid-bg);
    transform: translateX(-50%);
    pointer-events: none;
    content: '';
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__item {
    grid-column: span 2;
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__item:first-child:nth-last-child(2),
  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__item:first-child:nth-last-child(2) ~ .multiple-card-donation-cta-v1__item {
    grid-column: span 3;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta,
  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta-icon {
    transition: none !important;
  }

  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:hover .multiple-card-donation-cta-v1__cta-icon,
  .block-multiple-card-donation-cta-v1 .multiple-card-donation-cta-v1__cta:focus-visible .multiple-card-donation-cta-v1__cta-icon {
    transform: none !important;
  }
}
/* Newsletter Subscribe (block-newsletter-subscribe-v1) */

.block-newsletter-subscribe-v1 {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
  --newsletter-subscribe-v1-surface: rgba(255, 255, 255, 0.08);
  --newsletter-subscribe-v1-surface-hover: rgba(255, 255, 255, 0.12);
  --newsletter-subscribe-v1-text: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-muted: rgba(255, 255, 255, 0.9);
  --newsletter-subscribe-v1-soft: rgba(255, 255, 255, 0.18);
  --newsletter-subscribe-v1-line: rgba(255, 255, 255, 0.44);
  --newsletter-subscribe-v1-link: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-accent: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-error: #ffe5e5;
  --newsletter-subscribe-v1-input-border: rgba(255, 255, 255, 0.2);
  --newsletter-subscribe-v1-input-text: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-input-placeholder: rgba(255, 255, 255, 0.35);
  --newsletter-subscribe-v1-button-border: rgba(255, 255, 255, 0.4);
  --newsletter-subscribe-v1-button-border-hover: rgba(255, 255, 255, 0.7);
  position: relative;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  max-width: 100%;
  background-color: var(--newsletter-subscribe-v1-bg);
  color: var(--newsletter-subscribe-v1-text);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  clip-path: inset(0);
  color: var(--newsletter-subscribe-v1-illu);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__bg-svg {
  position: absolute;
  height: 653%;
  width: auto;
  top: -310%;
  left: 4%;
  transform: rotate(57.787deg);
  opacity: 0.2;
  fill: currentColor;
}

.block-newsletter-subscribe-v1,
.block-newsletter-subscribe-v1[data-preset="forest-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="forest-light"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-light-green, #8acbc1);
}

.block-newsletter-subscribe-v1[data-preset="forest-yellow"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-newsletter-subscribe-v1[data-preset="forest-blue"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-blue, #477ec0);
}

.block-newsletter-subscribe-v1[data-preset="moss-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="moss-blue"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
  --newsletter-subscribe-v1-illu: var(--color-blue, #477ec0);
}

.block-newsletter-subscribe-v1[data-preset="moss-red"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
  --newsletter-subscribe-v1-illu: var(--color-red, #e52322);
}

.block-newsletter-subscribe-v1[data-preset="darkred-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="darkred-corn"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-illu: var(--color-corn-green, #94c24a);
}

.block-newsletter-subscribe-v1[data-preset="darkred-blue"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-illu: var(--color-blue, #477ec0);
}

.block-newsletter-subscribe-v1[data-preset="mint-yellow"] { --newsletter-subscribe-v1-bg: var(--color-mint-green, #47B27A); --newsletter-subscribe-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-newsletter-subscribe-v1[data-preset="mint-light"] { --newsletter-subscribe-v1-bg: var(--color-mint-green, #47B27A); --newsletter-subscribe-v1-illu: var(--color-light-green, #8ACBC1); }
.block-newsletter-subscribe-v1[data-preset="mint-corn"] { --newsletter-subscribe-v1-bg: var(--color-mint-green, #47B27A); --newsletter-subscribe-v1-illu: var(--color-corn-green, #94C24A); }
.block-newsletter-subscribe-v1[data-preset="light-mint"] { --newsletter-subscribe-v1-bg: var(--color-light-green, #8ACBC1); --newsletter-subscribe-v1-illu: var(--color-mint-green, #47B27A); }
.block-newsletter-subscribe-v1[data-preset="light-blue"] { --newsletter-subscribe-v1-bg: var(--color-light-green, #8ACBC1); --newsletter-subscribe-v1-illu: var(--color-blue, #477EC0); }
.block-newsletter-subscribe-v1[data-preset="light-red"] { --newsletter-subscribe-v1-bg: var(--color-light-green, #8ACBC1); --newsletter-subscribe-v1-illu: var(--color-red, #E52322); }
.block-newsletter-subscribe-v1[data-preset="yellow-mint"] { --newsletter-subscribe-v1-bg: var(--color-yellow-green, #E6CE00); --newsletter-subscribe-v1-illu: var(--color-mint-green, #47B27A); }
.block-newsletter-subscribe-v1[data-preset="yellow-blue"] { --newsletter-subscribe-v1-bg: var(--color-yellow-green, #E6CE00); --newsletter-subscribe-v1-illu: var(--color-blue, #477EC0); }
.block-newsletter-subscribe-v1[data-preset="corn-mint"] { --newsletter-subscribe-v1-bg: var(--color-corn-green, #94C24A); --newsletter-subscribe-v1-illu: var(--color-mint-green, #47B27A); }
.block-newsletter-subscribe-v1[data-preset="corn-red"] { --newsletter-subscribe-v1-bg: var(--color-corn-green, #94C24A); --newsletter-subscribe-v1-illu: var(--color-red, #E52322); }

.block-newsletter-subscribe-v1[data-preset="mint-yellow"],
.block-newsletter-subscribe-v1[data-preset="mint-light"],
.block-newsletter-subscribe-v1[data-preset="mint-corn"],
.block-newsletter-subscribe-v1[data-preset="light-mint"],
.block-newsletter-subscribe-v1[data-preset="light-blue"],
.block-newsletter-subscribe-v1[data-preset="light-red"],
.block-newsletter-subscribe-v1[data-preset="yellow-mint"],
.block-newsletter-subscribe-v1[data-preset="yellow-blue"],
.block-newsletter-subscribe-v1[data-preset="corn-mint"],
.block-newsletter-subscribe-v1[data-preset="corn-red"] {
  --newsletter-subscribe-v1-surface: rgba(51, 51, 51, 0.08);
  --newsletter-subscribe-v1-surface-hover: rgba(51, 51, 51, 0.12);
  --newsletter-subscribe-v1-text: var(--color-black, #333333);
  --newsletter-subscribe-v1-muted: rgba(51, 51, 51, 0.9);
  --newsletter-subscribe-v1-soft: rgba(51, 51, 51, 0.18);
  --newsletter-subscribe-v1-line: rgba(51, 51, 51, 0.44);
  --newsletter-subscribe-v1-link: var(--color-black, #333333);
  --newsletter-subscribe-v1-accent: var(--color-black, #333333);
  --newsletter-subscribe-v1-error: var(--color-black, #333333);
  --newsletter-subscribe-v1-input-border: rgba(51, 51, 51, 0.2);
  --newsletter-subscribe-v1-input-text: var(--color-black, #333333);
  --newsletter-subscribe-v1-input-placeholder: rgba(51, 51, 51, 0.6);
  --newsletter-subscribe-v1-button-border: rgba(51, 51, 51, 0.4);
  --newsletter-subscribe-v1-button-border-hover: rgba(51, 51, 51, 0.7);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 36px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__copy {
  position: relative;
  max-width: 800px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__headline {
  margin: 0;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 34px;
  font-weight: 700;
  line-height: 1.12;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description {
  max-width: 720px;
  margin-top: 22px;
  color: var(--newsletter-subscribe-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message p {
  margin: 0;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description p + p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent p + p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message p + p {
  margin-top: 12px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description strong,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description b,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent strong,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent b,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message strong,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message b {
  color: inherit;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__panel {
  position: relative;
  padding-top: 30px;
  border-top: 1px solid var(--newsletter-subscribe-v1-line);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__hp,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__error-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__field {
  min-width: 0;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__label {
  display: block;
  margin-bottom: 8px;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input {
  display: block;
  width: 100%;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--newsletter-subscribe-v1-input-border);
  border-radius: 8px;
  background: var(--newsletter-subscribe-v1-surface);
  color: var(--newsletter-subscribe-v1-input-text);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  transition: border-color 0.15s, background 0.15s;
  box-sizing: border-box;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input::placeholder {
  color: var(--newsletter-subscribe-v1-input-placeholder);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input:focus {
  outline: none;
  border-color: var(--newsletter-subscribe-v1-accent);
  background: var(--newsletter-subscribe-v1-surface-hover);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input[aria-invalid="true"],
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input.newsletter-subscribe-v1__input--invalid {
  border-color: var(--newsletter-subscribe-v1-error);
  box-shadow: 0 0 0 4px rgba(255, 180, 180, 0.18);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent {
  color: var(--newsletter-subscribe-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent a,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message a {
  color: var(--newsletter-subscribe-v1-link);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent a:focus-visible,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message a:focus-visible {
  outline: 2px solid var(--newsletter-subscribe-v1-accent);
  outline-offset: 4px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__error {
  min-height: 20px;
  margin: -8px 0 -4px;
  color: var(--newsletter-subscribe-v1-error);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit {
  width: 100%;
  height: 40px;
  padding: 0 clamp(12px, 1.5vw, 18px);
  border: 1px solid var(--newsletter-subscribe-v1-button-border);
  border-radius: 8px;
  background: transparent;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(13px, 0.9vw, 14px);
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
  letter-spacing: 0.01em;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit p {
  margin: 0;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit:hover {
  border-color: var(--newsletter-subscribe-v1-button-border-hover);
  background: var(--newsletter-subscribe-v1-surface);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit:focus-visible {
  outline: 2px solid var(--newsletter-subscribe-v1-accent);
  outline-offset: 2px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit.is-loading .newsletter-subscribe-v1__submit-label {
  opacity: 0.72;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  align-items: start;
  padding-top: 4px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success[hidden] {
  display: none;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid var(--newsletter-subscribe-v1-line);
  border-radius: 8px;
  background: var(--newsletter-subscribe-v1-surface);
  color: var(--newsletter-subscribe-v1-text);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-title {
  margin: 0;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message {
  margin-top: 8px;
  color: var(--newsletter-subscribe-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.6;
}

@media (min-width: 768px) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
    padding: 72px 48px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__headline {
    font-size: 42px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description {
    font-size: 18px;
  }
}

@media (min-width: 1024px) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
    grid-template-columns: minmax(0, 1fr) 1px minmax(300px, 420px);
    column-gap: 28px;
    row-gap: 56px;
    align-items: center;
    padding: 88px 80px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner::before {
    content: "";
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    width: 1px;
    background: var(--newsletter-subscribe-v1-line);
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__copy {
    grid-column: 1;
    grid-row: 1;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__headline {
    font-size: 50px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__panel {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    width: 100%;
    max-width: 420px;
    padding-top: 0;
    padding-left: 0;
    border-top: 0;
    border-left: 0;
  }
}

@media (min-width: 1280px) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
    column-gap: 36px;
    row-gap: 72px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__panel {
    max-width: 400px;
  }
}
/* ── not-found-v1 ──────────────────────────────────────────────── */
.block-not-found-v1 {
  position: relative;
  width: 100%;
  height: calc(100svh - var(--nav-height, 0px));
  min-height: 600px;
  overflow: hidden;
  background: #040e08;
}

/* ── Background image + dim ────────────────────────────────────── */
.nf-bg-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
  pointer-events: none;
}

.nf-dim {
  position: absolute;
  inset: 0;
  background: rgba(4, 14, 8, 0.45);
  z-index: 1;
  pointer-events: none;
}

/* ── Fog canvas ────────────────────────────────────────────────── */
.nf-fog-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  pointer-events: none;
}

/* ── Trail SVG overlay ─────────────────────────────────────────── */
.nf-trail-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 6;
  pointer-events: none;
}

.nf-trail-seg {
  fill: none;
  stroke: #ffffff;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0;
  filter: drop-shadow(0 0 3px rgba(255, 255, 255, 0.5));
}

/* ── Waypoints ─────────────────────────────────────────────────── */
.nf-point {
  position: absolute;
  z-index: 7;
  transform: translate(-50%, -100%);
}

.nf-point--start,
.nf-point--dest {
  transform: translate(-50%, -50%);
}

.nf-point--q,
.nf-point--dest {
  opacity: 0;
  transition: opacity 0.7s ease;
}

.nf-point--q.nf-point--revealed,
.nf-point--dest.nf-point--revealed {
  opacity: 1;
}

/* Start / destination icons */
.nf-point-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  border: 2px solid rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: border-color 0.3s, box-shadow 0.3s;
}

/* Animal pin */
.nf-pin-circle {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 2.5px solid rgba(255, 255, 255, 0.6);
  overflow: hidden;
  background: rgba(0, 18, 8, 0.7);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
  transition: width 0.25s cubic-bezier(.34,1.56,.64,1),
              height 0.25s cubic-bezier(.34,1.56,.64,1),
              border-color 0.3s,
              box-shadow 0.3s;
  cursor: pointer;
}

.nf-pin-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.nf-pin-circle:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.9);
  outline-offset: 3px;
}

/* Revealed — grey until ring draws */
.nf-point--q.nf-point--revealed .nf-pin-circle {
  filter: grayscale(1);
  border-color: transparent;
  box-shadow: none;
  transition: width 0.25s cubic-bezier(.34,1.56,.64,1),
              height 0.25s cubic-bezier(.34,1.56,.64,1),
              filter 0.5s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

/* Colored — after ring finishes */
.nf-point--q.nf-point--colored .nf-pin-circle {
  filter: grayscale(0);
  border-color: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}

.nf-point--q.nf-point--colored:hover .nf-pin-circle {
  width: 80px;
  height: 80px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.5);
}

/* Dest point — grey until ring draws */
.nf-point--dest.nf-point--revealed .nf-point-icon {
  filter: grayscale(1);
  border-color: transparent;
  box-shadow: none;
  transition: filter 0.5s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.nf-point--dest.nf-point--colored .nf-point-icon {
  filter: grayscale(0);
  border-color: #fff;
  box-shadow: 0 0 16px rgba(255, 255, 255, 0.35);
}

/* SVG ring */
.nf-pin-ring {
  position: absolute;
  top: 0;
  left: 0;
  width: 48px;
  height: 48px;
  pointer-events: none;
  overflow: visible;
}

.nf-point--dest .nf-pin-ring {
  width: 40px;
  height: 40px;
}

.nf-pin-ring-path {
  fill: none;
  stroke: #fff;
  stroke-width: 2.5;
  stroke-linecap: round;
  opacity: 0;
}

.nf-point--colored .nf-pin-ring-path {
  opacity: 0;
  transition: opacity 0.4s ease;
}

/* Active pin pulse */
.nf-point--active .nf-pin-circle,
.nf-point--active .nf-point-icon {
  animation: nf-pin-pulse 1.6s ease-out infinite;
}

@keyframes nf-pin-pulse {
  0%   { box-shadow: 0 0 0 0   rgba(255, 255, 255, 0.7); }
  70%  { box-shadow: 0 0 0 14px rgba(255, 255, 255, 0);   }
  100% { box-shadow: 0 0 0 0   rgba(255, 255, 255, 0);   }
}

.nf-point--revealed:hover .nf-pin-tail {
  border-top-color: #94C24A;
}


/* ── UI overlay ────────────────────────────────────────────────── */
.nf-panel--intro {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  width: calc(100% - 56px);
  max-width: 440px;
  box-sizing: border-box;
  text-align: center;
  opacity: 1;
  transition: opacity 0.35s ease;
}

.nf-panel--intro.nf-fade-out {
  opacity: 0;
  pointer-events: none;
}

.nf-ui {
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: calc(100% - 56px);
  max-width: 400px;
  box-sizing: border-box;
}

.nf-panel {
  background: rgba(2, 14, 6, 0.82);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 16px;
  padding: clamp(18px, 3.5vw, 26px);
}

/* ── Intro panel ───────────────────────────────────────────────── */
.nf-code {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(56px, 9vw, 96px);
  font-weight: 700;
  line-height: 1;
  margin: 0 0 0.4rem;
  background: linear-gradient(135deg, #47B27A 0%, #94C24A 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -3px;
}

.nf-intro-title {
  color: #fff;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(16px, 2vw, 22px);
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 0.45rem;
}

.nf-intro-title p { margin: 0; }

.nf-intro-sub {
  color: rgba(255, 255, 255, 0.82);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(13px, 1.3vw, 15px);
  line-height: 1.65;
  margin-bottom: 1.2rem;
}

.nf-intro-sub p { margin: 0 0 0.35em; }
.nf-intro-sub p:last-child { margin-bottom: 0; }

/* ── CTA row ───────────────────────────────────────────────────── */
.nf-cta-row {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

@media (max-width: 640px) {
  .nf-cta-row {
    flex-wrap: nowrap;
    width: 100vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 16px;
    justify-content: flex-start;
    padding-left: 16px;
    padding-bottom: 2px;
  }

  .nf-cta-row::after {
    content: '';
    display: block;
    min-width: 16px;
    flex-shrink: 0;
  }

  .nf-cta-row::-webkit-scrollbar { display: none; }
  .nf-cta-row .nf-btn { flex-shrink: 0; scroll-snap-align: start; }
}

/* ── Buttons ───────────────────────────────────────────────────── */
.nf-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0.85rem 1.5rem;
  border: 1px solid var(--color-white, #fff);
  border-radius: 4rem;
  background: transparent;
  color: var(--color-white, #fff);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(0.9rem, 2.5vw, 1.125rem);
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.16s ease-in-out, color 0.16s ease-in-out;
}

.nf-btn:hover,
.nf-btn:focus-visible {
  background: var(--color-white, #fff);
  color: var(--color-forest-green, #004432);
}

/* ── Quiz panel ────────────────────────────────────────────────── */
.nf-panel--quiz {
  animation: nf-panel-in 0.35s ease;
}

@keyframes nf-panel-in {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

.nf-progress {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 1rem;
}

.nf-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(71, 178, 122, 0.2);
  transition: background 0.3s, transform 0.3s;
  flex-shrink: 0;
}

.nf-dot--done   { background: #47B27A; }
.nf-dot--active { background: #94C24A; animation: nf-dot-pulse 1.6s ease-in-out infinite; }

@keyframes nf-dot-pulse {
  0%, 100% { transform: scale(1); }
  50%       { transform: scale(1.4); }
}

.nf-question-text {
  color: #fff;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(14px, 1.6vw, 16px);
  font-weight: 600;
  line-height: 1.45;
  margin: 0 0 0.9rem;
}

.nf-options {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.nf-opt {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 13px;
  background: rgba(71, 178, 122, 0.05);
  border: 1px solid rgba(71, 178, 122, 0.12);
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
  text-align: left;
  width: 100%;
}

@media (hover: hover) {
  .nf-opt:not(:disabled):hover {
    background: rgba(71, 178, 122, 0.12);
    border-color: rgba(71, 178, 122, 0.3);
  }
}

.nf-opt:disabled { cursor: default; }

.nf-opt-key {
  color: #47B27A;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 11px;
  font-weight: 700;
  width: 14px;
  flex-shrink: 0;
}

.nf-opt-label {
  color: rgba(255, 255, 255, 0.82);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 13px;
  line-height: 1.4;
}

.nf-opt--correct {
  background: rgba(71, 178, 122, 0.18) !important;
  border-color: #47B27A !important;
}

.nf-opt--wrong {
  background: rgba(220, 38, 38, 0.1) !important;
  border-color: rgba(220, 38, 38, 0.35) !important;
  animation: nf-shake 0.45s ease-in-out;
}

@keyframes nf-shake {
  0%, 100% { transform: translateX(0);   }
  20%       { transform: translateX(-5px); }
  40%       { transform: translateX(5px);  }
  60%       { transform: translateX(-3px); }
  80%       { transform: translateX(3px);  }
}

/* ── Success backdrop + panel ───────────────────────────────────── */
.block-not-found-v1::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50%;
  background: linear-gradient(to bottom, transparent, rgba(4, 14, 8, 0.92));
  z-index: 9;
  pointer-events: none;
  opacity: 0;
  transition: opacity 1s ease;
}

.block-not-found-v1.nf--success::after {
  opacity: 1;
}

.nf-panel--success {
  position: absolute;
  bottom: 52px;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 11;
  width: calc(100% - 56px);
  text-align: center;
  opacity: 0;
  transition: opacity 0.7s ease;
}

.nf-panel--success.nf--visible { opacity: 1; }

.nf-success-title {
  color: #fff;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(16px, 2vw, 22px);
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 1.2rem;
}

.nf-success-title p { margin: 0; }


/* ── Pin tooltip (desktop) ─────────────────────────────────────── */
.nf-tooltip {
  position: absolute;
  z-index: 20;
  background: rgba(2, 14, 6, 0.92);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(71, 178, 122, 0.2);
  border-radius: 10px;
  padding: 10px 13px;
  width: 240px;
  pointer-events: none;
  animation: nf-tooltip-in 0.18s ease;
}

@keyframes nf-tooltip-in {
  from { opacity: 0; transform: translateY(5px); }
  to   { opacity: 1; transform: translateY(0); }
}

.nf-tooltip-desc {
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.55;
  margin: 0;
}

/* ── Animal modal (mobile) ──────────────────────────────────────── */
.nf-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.28s ease;
}

.nf-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.nf-modal {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 101;
  background: rgba(2, 14, 6, 0.96);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-top: 1px solid rgba(71, 178, 122, 0.18);
  border-radius: 20px 20px 0 0;
  padding: 8px 20px 40px;
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0.72, 0, 1);
}

.nf-modal.is-active { transform: translateY(0); }

.nf-modal-handle {
  width: 36px;
  height: 4px;
  background: rgba(255, 255, 255, 0.18);
  border-radius: 2px;
  margin: 0 auto 20px;
}

.nf-modal-img {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 2.5px solid rgba(255, 255, 255, 0.6);
  object-fit: cover;
  display: block;
  margin: 0 auto 16px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
}

.nf-modal-desc {
  color: rgba(255, 255, 255, 0.82);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.65;
  margin: 0;
  text-align: left;
}

/* ── Mobile ────────────────────────────────────────────────────── */
@media (max-width: 640px) {
  .block-not-found-v1.nf--success::after {
    background: linear-gradient(to bottom, transparent, rgba(4, 14, 8, 0.98));
    height: 60%;
  }

  .nf-ui {
    left: 16px;
    right: 16px;
    bottom: 16px;
    max-width: none;
    width: auto;
    transform: none;
  }

  .nf-panel--intro {
    top: 50%;
  }
}
/* Page Card List (block-page-card-list-v1) */

.block-page-card-list-v1 {
  --page-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
  --page-card-list-v1-card-bg: var(--color-white, #ffffff);
  background: var(--page-card-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-page-card-list-v1[data-background-color="#FFFFFF"] {
  --page-card-list-v1-bg: var(--color-white, #ffffff);
}

.block-page-card-list-v1[data-background-color="#F7F7F7"] {
  --page-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-page-card-list-v1 {
  --page-card-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --page-card-list-v1-card-bg: var(--color-surface-dark, #1a2920);
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-card-list-v1 .page-card-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-page-card-list-v1 .page-card-list-v1__header {
  margin-bottom: 24px;
}

.block-page-card-list-v1 .page-card-list-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-page-card-list-v1 .page-card-list-v1__headline p {
  margin: 0;
}

.dark .block-page-card-list-v1 .page-card-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-card-list-v1 .page-card-list-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-page-card-list-v1 .page-card-list-v1__item {
  min-width: 0;
}

.block-page-card-list-v1 .page-card-list-v1__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: 16px;
  background: var(--page-card-list-v1-card-bg);
  box-shadow: 0 1px 2px rgba(0, 68, 50, 0.08);
}

.dark .block-page-card-list-v1 .page-card-list-v1__card {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.24);
}

.block-page-card-list-v1 .page-card-list-v1__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.block-page-card-list-v1 .page-card-list-v1__title-link:focus-visible,
.block-page-card-list-v1 .page-card-list-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-card-list-v1 .page-card-list-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-page-card-list-v1 .page-card-list-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-page-card-list-v1 .page-card-list-v1__image,
.block-page-card-list-v1 .page-card-list-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-card-list-v1 .page-card-list-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-page-card-list-v1 .page-card-list-v1__media-link:hover .page-card-list-v1__image,
.block-page-card-list-v1 .page-card-list-v1__media-link:focus-visible .page-card-list-v1__image {
  transform: scale(1.04);
}

.block-page-card-list-v1 .page-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-page-card-list-v1 .page-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-page-card-list-v1 .page-card-list-v1__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
}

.block-page-card-list-v1 .page-card-list-v1__title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.block-page-card-list-v1 .page-card-list-v1__title p,
.block-page-card-list-v1 .page-card-list-v1__description p,
.block-page-card-list-v1 .page-card-list-v1__cta p {
  margin: 0;
}

.block-page-card-list-v1 .page-card-list-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-card-list-v1 .page-card-list-v1__title-link:hover,
.block-page-card-list-v1 .page-card-list-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-page-card-list-v1 .page-card-list-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-card-list-v1 .page-card-list-v1__title-link:hover,
.dark .block-page-card-list-v1 .page-card-list-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-card-list-v1 .page-card-list-v1__description {
  display: -webkit-box;
  margin-top: 12px;
  overflow: hidden;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
}

.dark .block-page-card-list-v1 .page-card-list-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.block-page-card-list-v1 .page-card-list-v1__footer {
  padding: 0 24px 24px;
}

.block-page-card-list-v1 .page-card-list-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-card-list-v1 .page-card-list-v1__cta:hover,
.block-page-card-list-v1 .page-card-list-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-page-card-list-v1 .page-card-list-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-page-card-list-v1 .page-card-list-v1__cta:hover .page-card-list-v1__cta-icon,
.block-page-card-list-v1 .page-card-list-v1__cta:focus-visible .page-card-list-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-page-card-list-v1 .page-card-list-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-card-list-v1 .page-card-list-v1__cta:hover,
.dark .block-page-card-list-v1 .page-card-list-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

@media (min-width: 768px) {
  .block-page-card-list-v1 .page-card-list-v1__inner {
    padding: 64px 48px;
  }

  .block-page-card-list-v1 .page-card-list-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
  }

  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-page-card-list-v1 .page-card-list-v1__headline {
    font-size: 40px;
  }
}

@media (min-width: 1024px) {
  .block-page-card-list-v1 .page-card-list-v1__inner {
    padding: 64px 80px;
  }

  .block-page-card-list-v1 .page-card-list-v1__header {
    margin-bottom: 40px;
  }

  .block-page-card-list-v1 .page-card-list-v1__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 28px;
  }

  .block-page-card-list-v1 .page-card-list-v1__item {
    grid-column: span 2;
  }

  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(2),
  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(2) ~ .page-card-list-v1__item {
    grid-column: span 3;
  }

  .block-page-card-list-v1 .page-card-list-v1__headline {
    font-size: 46px;
  }

  .block-page-card-list-v1 .page-card-list-v1__title {
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-page-card-list-v1 .page-card-list-v1__image,
  .block-page-card-list-v1 .page-card-list-v1__title-link,
  .block-page-card-list-v1 .page-card-list-v1__cta,
  .block-page-card-list-v1 .page-card-list-v1__cta-icon {
    transition: none !important;
  }

  .block-page-card-list-v1 .page-card-list-v1__media-link:hover .page-card-list-v1__image,
  .block-page-card-list-v1 .page-card-list-v1__media-link:focus-visible .page-card-list-v1__image,
  .block-page-card-list-v1 .page-card-list-v1__cta:hover .page-card-list-v1__cta-icon,
  .block-page-card-list-v1 .page-card-list-v1__cta:focus-visible .page-card-list-v1__cta-icon {
    transform: none !important;
  }
}
/* Page Carousel (block-page-carousel-v1) */

.block-page-carousel-v1 {
  --page-carousel-v1-bg: var(--color-white, #ffffff);
  --page-carousel-v1-slide-width: calc(100vw - 48px);
  --page-carousel-v1-track-gap: 24px;
  --page-carousel-v1-track-gutter: 24px;
  background: var(--page-carousel-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
  padding: 64px 0;
}

.block-page-carousel-v1[data-background-color="#FFFFFF"] {
  --page-carousel-v1-bg: var(--color-white, #ffffff);
}

.block-page-carousel-v1[data-background-color="#F7F7F7"] {
  --page-carousel-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-page-carousel-v1 {
  --page-carousel-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-carousel-v1 .page-carousel-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
}

.block-page-carousel-v1 .page-carousel-v1__header {
  display: grid;
  gap: 24px;
}

.block-page-carousel-v1 .page-carousel-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-page-carousel-v1 .page-carousel-v1__headline p,
.block-page-carousel-v1 .page-carousel-v1__intro p,
.block-page-carousel-v1 .page-carousel-v1__title p,
.block-page-carousel-v1 .page-carousel-v1__description p,
.block-page-carousel-v1 .page-carousel-v1__cta p {
  margin: 0;
}

.dark .block-page-carousel-v1 .page-carousel-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-carousel-v1 .page-carousel-v1__intro {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.block-page-carousel-v1 .page-carousel-v1__intro p + p {
  margin-top: 12px;
}

.dark .block-page-carousel-v1 .page-carousel-v1__intro {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-page-carousel-v1 .page-carousel-v1__carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-page-carousel-v1 .page-carousel-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--page-carousel-v1-track-gap);
  margin: 0;
  padding: 16px 0 0 var(--page-carousel-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-page-carousel-v1 .page-carousel-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--page-carousel-v1-track-gutter) - var(--page-carousel-v1-track-gap)));
}

.block-page-carousel-v1 .page-carousel-v1__track::-webkit-scrollbar {
  display: none;
}

.block-page-carousel-v1 .page-carousel-v1__slide {
  flex: 0 0 var(--page-carousel-v1-slide-width);
  min-width: 0;
  scroll-snap-align: center;
  transform-origin: center center;
}

.block-page-carousel-v1.pc-js-ready .page-carousel-v1__slide {
  will-change: transform;
}

.block-page-carousel-v1 .page-carousel-v1__media-link,
.block-page-carousel-v1 .page-carousel-v1__media {
  display: block;
  color: inherit;
  text-decoration: none;
  border-radius: 8px;
}

.block-page-carousel-v1 .page-carousel-v1__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-page-carousel-v1 .page-carousel-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-page-carousel-v1 .page-carousel-v1__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  -webkit-backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.block-page-carousel-v1.pc-js-ready .page-carousel-v1__slide:not(.pc-active) .page-carousel-v1__media::after {
  opacity: 1;
}

.block-page-carousel-v1 .page-carousel-v1__image,
.block-page-carousel-v1 .page-carousel-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-carousel-v1 .page-carousel-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-page-carousel-v1 .page-carousel-v1__media-link:hover .page-carousel-v1__image,
.block-page-carousel-v1 .page-carousel-v1__media-link:focus-visible .page-carousel-v1__image {
  transform: scale(1.025);
}

.block-page-carousel-v1 .page-carousel-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-page-carousel-v1 .page-carousel-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-page-carousel-v1 .page-carousel-v1__content {
  max-width: 760px;
  margin-top: 24px;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.block-page-carousel-v1.pc-js-ready .page-carousel-v1__slide:not(.pc-active) .page-carousel-v1__content {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
}

.block-page-carousel-v1 .page-carousel-v1__title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.22;
  color: var(--color-forest-green, #004432);
}

.dark .block-page-carousel-v1 .page-carousel-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-carousel-v1 .page-carousel-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-carousel-v1 .page-carousel-v1__title-link:hover,
.block-page-carousel-v1 .page-carousel-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-page-carousel-v1 .page-carousel-v1__title-link:hover,
.dark .block-page-carousel-v1 .page-carousel-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-carousel-v1 .page-carousel-v1__description {
  display: -webkit-box;
  max-width: 72ch;
  margin-top: 14px;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.dark .block-page-carousel-v1 .page-carousel-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-page-carousel-v1 .page-carousel-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-carousel-v1 .page-carousel-v1__cta:hover,
.block-page-carousel-v1 .page-carousel-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.dark .block-page-carousel-v1 .page-carousel-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-carousel-v1 .page-carousel-v1__cta:hover,
.dark .block-page-carousel-v1 .page-carousel-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-carousel-v1 .page-carousel-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-page-carousel-v1 .page-carousel-v1__cta:hover .page-carousel-v1__cta-icon,
.block-page-carousel-v1 .page-carousel-v1__cta:focus-visible .page-carousel-v1__cta-icon {
  transform: translateX(3px);
}

.block-page-carousel-v1 .page-carousel-v1__title-link:focus-visible,
.block-page-carousel-v1 .page-carousel-v1__cta:focus-visible,
.block-page-carousel-v1 .page-carousel-v1__media-link:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-carousel-v1 .page-carousel-v1__nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: var(--page-carousel-v1-slide-width);
  margin: 20px auto 0;
}

.block-page-carousel-v1 .page-carousel-v1__progress {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  height: 40px;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-page-carousel-v1 .page-carousel-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-page-carousel-v1 .page-carousel-v1__progress-fill {
  position: relative;
  flex: 1;
  min-width: 0;
  height: 4px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-page-carousel-v1 .page-carousel-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-page-carousel-v1 .page-carousel-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--pc-p, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-page-carousel-v1 .page-carousel-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-page-carousel-v1 .page-carousel-v1__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.52);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-page-carousel-v1 .page-carousel-v1__btn:hover:not(:disabled) {
  background: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.78);
}

.block-page-carousel-v1 .page-carousel-v1__btn:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-page-carousel-v1 .page-carousel-v1__btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-page-carousel-v1 .page-carousel-v1__btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-page-carousel-v1 .page-carousel-v1__btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-page-carousel-v1 .page-carousel-v1__btn:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-page-carousel-v1 {
    --page-carousel-v1-slide-width: calc(100vw - 96px);
    --page-carousel-v1-track-gap: 32px;
    --page-carousel-v1-track-gutter: 48px;
  }

  .block-page-carousel-v1 .page-carousel-v1__inner {
    padding: 0 48px 32px;
  }

  .block-page-carousel-v1 .page-carousel-v1__content {
    margin-top: 28px;
  }

  .block-page-carousel-v1 .page-carousel-v1__progress {
    flex: none;
    width: 220px;
  }
}

@media (min-width: 1024px) {
  .block-page-carousel-v1 {
    --page-carousel-v1-slide-width: min(960px, calc(100vw - 160px));
    --page-carousel-v1-track-gutter: max(80px, calc(50vw - 480px));
  }

  .block-page-carousel-v1 .page-carousel-v1__inner {
    padding: 0 80px 32px;
  }

  .block-page-carousel-v1 .page-carousel-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-page-carousel-v1 .page-carousel-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-page-carousel-v1 .page-carousel-v1__intro {
    grid-column: 7 / span 6;
  }

}

@media (prefers-reduced-motion: reduce) {
  .block-page-carousel-v1 .page-carousel-v1__media::after,
  .block-page-carousel-v1 .page-carousel-v1__image,
  .block-page-carousel-v1 .page-carousel-v1__content,
  .block-page-carousel-v1 .page-carousel-v1__cta,
  .block-page-carousel-v1 .page-carousel-v1__cta-icon,
  .block-page-carousel-v1 .page-carousel-v1__title-link,
  .block-page-carousel-v1 .page-carousel-v1__progress-fill::after,
  .block-page-carousel-v1 .page-carousel-v1__btn {
    transition: none !important;
  }

  .block-page-carousel-v1 .page-carousel-v1__media-link:hover .page-carousel-v1__image,
  .block-page-carousel-v1 .page-carousel-v1__media-link:focus-visible .page-carousel-v1__image,
  .block-page-carousel-v1 .page-carousel-v1__cta:hover .page-carousel-v1__cta-icon,
  .block-page-carousel-v1 .page-carousel-v1__cta:focus-visible .page-carousel-v1__cta-icon {
    transform: none !important;
  }
}
/* ── Page Header (block-page-header-v1) ───────────────────────── */

.block-page-header-v1 {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100%;
  min-height: calc(
    100svh
    - var(--nav-height, 60px)
    - var(--wi-info-banner-offset, 0px)
  );
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}

.block-page-header-v1 .page-header-v1__media {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}

.block-page-header-v1 .page-header-v1__picture,
.block-page-header-v1 .page-header-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-header-v1 .page-header-v1__picture {
  overflow: hidden;
}

.block-page-header-v1 .page-header-v1__picture--mobile {
  display: none;
}

.block-page-header-v1 .page-header-v1__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.block-page-header-v1 .page-header-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), transparent 55%),
    var(--color-grey-20, #DCDCDC);
}

.block-page-header-v1 .page-header-v1__text-panel {
  width: 100%;
  background: var(--page-header-v1-panel-bg, var(--color-white, #FFFFFF));
  color: var(--color-forest-green, #004432);
}

.block-page-header-v1[data-background-color="#FFFFFF"] .page-header-v1__text-panel {
  --page-header-v1-panel-bg: var(--color-white, #FFFFFF);
}

.block-page-header-v1[data-background-color="#F7F7F7"] .page-header-v1__text-panel {
  --page-header-v1-panel-bg: var(--color-light-grey, #F7F7F7);
}

.block-page-header-v1 .page-header-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 32px 24px;
}

.block-page-header-v1 .page-header-v1__breadcrumb {
  width: 100%;
  margin: 0 0 32px;
  color: var(--color-forest-green, #004432);
}

.block-page-header-v1 .page-header-v1__breadcrumb-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.block-page-header-v1 .page-header-v1__breadcrumb-item {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex-shrink: 1;
}

.block-page-header-v1 .page-header-v1__breadcrumb-home {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--color-forest-green, #004432);
  text-decoration: none;
  transition: color 0.15s ease;
}

.block-page-header-v1 .page-header-v1__breadcrumb-home svg {
  display: block;
  width: auto;
  height: 14px;
}

.block-page-header-v1 .page-header-v1__breadcrumb-separator {
  display: block;
  flex-shrink: 0;
  color: var(--color-grey-60, #737373);
}

.block-page-header-v1 .page-header-v1__breadcrumb-link,
.block-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  max-width: min(320px, 60vw);
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.block-page-header-v1 .page-header-v1__breadcrumb-link {
  position: relative;
  color: var(--color-forest-green, #004432);
  text-decoration: none;
  transition: color 0.15s ease;
}

.block-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  color: var(--color-grey-80, #4D4D4D);
}

.block-page-header-v1 .page-header-v1__breadcrumb-home:hover,
.block-page-header-v1 .page-header-v1__breadcrumb-link:hover {
  color: var(--color-moss-green, #13735F);
}

.block-page-header-v1 .page-header-v1__breadcrumb-home:focus-visible,
.block-page-header-v1 .page-header-v1__breadcrumb-link:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  border-radius: 2px;
}

.block-page-header-v1 .page-header-v1__headline {
  width: 100%;
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(36px, calc(3vw + 20px), 60px);
  font-weight: 700;
  line-height: 1.05;
  color: var(--color-forest-green, #004432);
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
}

.block-page-header-v1 .page-header-v1__headline > *,
.block-page-header-v1 .page-header-v1__subheadline > * {
  margin: 0;
  font: inherit;
  color: inherit;
  line-height: inherit;
}

.block-page-header-v1 .page-header-v1__headline > * + *,
.block-page-header-v1 .page-header-v1__subheadline > * + * {
  margin-top: 8px;
}

.block-page-header-v1 .page-header-v1__subheadline {
  width: 100%;
  margin-top: 16px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-forest-green, #004432);
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
}

.dark .block-page-header-v1 {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-page-header-v1 .page-header-v1__media,
.dark .block-page-header-v1 .page-header-v1__placeholder {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-page-header-v1[data-background-color="#FFFFFF"] .page-header-v1__text-panel {
  background: var(--color-bg-dark, #0f1a14);
}

.dark .block-page-header-v1[data-background-color="#F7F7F7"] .page-header-v1__text-panel {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-page-header-v1 .page-header-v1__headline,
.dark .block-page-header-v1 .page-header-v1__subheadline {
  color: var(--color-accent-dark, #47B27A);
}

.dark .block-page-header-v1 .page-header-v1__breadcrumb-home,
.dark .block-page-header-v1 .page-header-v1__breadcrumb-link {
  color: var(--color-accent-dark, #47B27A);
}

.dark .block-page-header-v1 .page-header-v1__breadcrumb-separator,
.dark .block-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

@media (max-width: 767px) {
  .block-page-header-v1 .page-header-v1__picture--desktop {
    display: none;
  }

  .block-page-header-v1 .page-header-v1__picture--mobile {
    display: block;
  }
}

@media (min-width: 768px) {
  .block-page-header-v1 .page-header-v1__inner {
    padding: 40px 48px;
  }

  .block-page-header-v1 .page-header-v1__breadcrumb {
    margin-bottom: 40px;
  }
}

@media (min-width: 1024px) {
  .block-page-header-v1 .page-header-v1__inner {
    padding-right: 80px;
    padding-left: 80px;
  }
}

@supports (height: 100dvh) {
  .block-page-header-v1 {
    min-height: calc(
      100dvh
      - var(--nav-height, 60px)
      - var(--wi-info-banner-offset, 0px)
    );
  }
}
/* Page Overview (block-page-overview-v1) */

.block-page-overview-v1 {
  --page-overview-v1-bg: var(--color-white, #ffffff);
  background: var(--page-overview-v1-bg);
  color: var(--color-black, #333333);
}

.block-page-overview-v1[data-background-color="#FFFFFF"] {
  --page-overview-v1-bg: var(--color-white, #ffffff);
}

.block-page-overview-v1[data-background-color="#F7F7F7"] {
  --page-overview-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-page-overview-v1 {
  --page-overview-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-overview-v1 .page-overview-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-page-overview-v1 .page-overview-v1__header {
  margin-bottom: 32px;
}

.block-page-overview-v1 .page-overview-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.dark .block-page-overview-v1 .page-overview-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-overview-v1 .page-overview-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-page-overview-v1 .page-overview-v1__item {
  min-width: 0;
}

.block-page-overview-v1 .page-overview-v1__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
  border-radius: 8px;
}

.block-page-overview-v1 .page-overview-v1__media-link:focus-visible,
.block-page-overview-v1 .page-overview-v1__title-link:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-overview-v1 .page-overview-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-page-overview-v1 .page-overview-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-page-overview-v1 .page-overview-v1__image,
.block-page-overview-v1 .page-overview-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-overview-v1 .page-overview-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-page-overview-v1 .page-overview-v1__media-link:hover .page-overview-v1__image,
.block-page-overview-v1 .page-overview-v1__media-link:focus-visible .page-overview-v1__image {
  transform: scale(1.03);
}

.block-page-overview-v1 .page-overview-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-page-overview-v1 .page-overview-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-page-overview-v1 .page-overview-v1__title {
  margin: 16px 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.block-page-overview-v1 .page-overview-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-overview-v1 .page-overview-v1__title-link:hover,
.block-page-overview-v1 .page-overview-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-page-overview-v1 .page-overview-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-overview-v1 .page-overview-v1__title-link:hover,
.dark .block-page-overview-v1 .page-overview-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-overview-v1 .page-overview-v1__title p,
.block-page-overview-v1 .page-overview-v1__description p {
  margin: 0;
}

.block-page-overview-v1 .page-overview-v1__description {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.dark .block-page-overview-v1 .page-overview-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.6));
}

.block-page-overview-v1 .page-overview-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-overview-v1 .page-overview-v1__cta:hover,
.block-page-overview-v1 .page-overview-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-page-overview-v1 .page-overview-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-overview-v1 .page-overview-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-page-overview-v1 .page-overview-v1__cta:hover .page-overview-v1__cta-icon,
.block-page-overview-v1 .page-overview-v1__cta:focus-visible .page-overview-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-page-overview-v1 .page-overview-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-overview-v1 .page-overview-v1__cta:hover,
.dark .block-page-overview-v1 .page-overview-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

@media (min-width: 768px) {
  .block-page-overview-v1 .page-overview-v1__inner {
    padding: 64px 48px;
  }

  .block-page-overview-v1 .page-overview-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
  }
}

@media (min-width: 1024px) {
  .block-page-overview-v1 .page-overview-v1__inner {
    padding: 64px 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-page-overview-v1 .page-overview-v1__image,
  .block-page-overview-v1 .page-overview-v1__cta,
  .block-page-overview-v1 .page-overview-v1__cta-icon,
  .block-page-overview-v1 .page-overview-v1__title-link {
    transition: none !important;
  }

  .block-page-overview-v1 .page-overview-v1__media-link:hover .page-overview-v1__image,
  .block-page-overview-v1 .page-overview-v1__media-link:focus-visible .page-overview-v1__image,
  .block-page-overview-v1 .page-overview-v1__cta:hover .page-overview-v1__cta-icon,
  .block-page-overview-v1 .page-overview-v1__cta:focus-visible .page-overview-v1__cta-icon {
    transform: none !important;
  }
}
/* ── Partner Logos (block-partner-logos-v1) ─────────────────────── */

.block-partner-logos-v1 {
  background-color: var(--color-light-grey);
  overflow-x: clip;
}

.dark .block-partner-logos-v1 {
  background-color: var(--color-bg-dark);
}

.block-partner-logos-v1 .cl-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-partner-logos-v1 .cl-cat-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 23px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green);
  margin: 0 0 32px;
}

.block-partner-logos-v1 .cl-cat-name p,
.block-partner-logos-v1 .cl-cat-name > * {
  margin: 0;
  font: inherit;
  line-height: inherit;
  color: inherit;
}

.dark .block-partner-logos-v1 .cl-cat-name {
  color: var(--color-accent-dark);
}

.block-partner-logos-v1 .cl-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-text-secondary);
  margin: -16px 0 32px;
}

.dark .block-partner-logos-v1 .cl-desc {
  color: var(--color-text-secondary-dark);
}

.block-partner-logos-v1 .cl-desc p { margin: 0 0 12px; }
.block-partner-logos-v1 .cl-desc p:last-child { margin-bottom: 0; }

/* Logo grid */
.block-partner-logos-v1 .cl-grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* Logo item — small mobile: 2 cols */
.block-partner-logos-v1 .cl-item {
  flex: 0 0 calc(50% - 6px);
}

/* Mobile 480px+: 3 cols */
@media (min-width: 480px) {
  .block-partner-logos-v1 .cl-item { flex: 0 0 calc(33.333% - 8px); }
}

/* Logo figure */
.block-partner-logos-v1 .cl-figure {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  border-radius: 12px;
  background-color: var(--color-white);
  transition: transform 0.15s ease;
  margin: 0;
  height: 80px;
  cursor: pointer;
  touch-action: manipulation;
}

.dark .block-partner-logos-v1 .cl-figure {
  background-color: var(--color-surface-dark);
}

.block-partner-logos-v1 .cl-figure:hover {
  transform: scale(1.05);
}

.block-partner-logos-v1 .cl-figure:active {
  transform: scale(0.97);
  transition-duration: 0.08s;
}


/* Logo image */
.block-partner-logos-v1 .cl-logo {
  max-width: 100%;
  max-height: 48px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Tooltip — visible on hover, hidden from screen readers */
.block-partner-logos-v1 .cl-tooltip {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.82);
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: clamp(11px, 1vw, 13px);
  line-height: 1.4;
  padding: 5px 10px;
  border-radius: 6px;
  white-space: nowrap;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 10;
}

.block-partner-logos-v1 .cl-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: rgba(0, 0, 0, 0.82);
}

.block-partner-logos-v1 .cl-figure:hover .cl-tooltip,
.block-partner-logos-v1 .cl-figure:focus-within .cl-tooltip,
.block-partner-logos-v1 .cl-figure.is-open .cl-tooltip {
  opacity: 1;
}

/* Tablet — 4 cols */
@media (min-width: 768px) {
  .block-partner-logos-v1 .cl-inner { padding: 64px 48px; }
  .block-partner-logos-v1 .cl-item { flex: 0 0 calc(25% - 9px); }
}

/* Desktop — 6 cols */
@media (min-width: 1024px) {
  .block-partner-logos-v1 .cl-inner { padding: 64px 80px; }
  .block-partner-logos-v1 .cl-item { flex: 0 0 calc(16.666% - 10px); }
}

/* ── Detail panel ── */
.block-partner-logos-v1 .cl-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.block-partner-logos-v1 .cl-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.block-partner-logos-v1 .cl-panel {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  max-height: 86vh;
  background: var(--color-light-grey);
  border-radius: 28px 28px 0 0;
  overflow: hidden;
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.12);
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0, 0.15, 1);
}

.dark .block-partner-logos-v1 .cl-panel {
  background: var(--color-bg-dark);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.5);
}

.block-partner-logos-v1 .cl-panel.is-active {
  transform: translateY(0);
}

.block-partner-logos-v1 .cl-panel-scroll {
  flex: 1 1 auto;
  overflow-y: auto;
  overscroll-behavior: contain;
  min-height: 0;
}

.block-partner-logos-v1 .cl-panel-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 8px 24px 32px;
}

@media (min-width: 768px) {
  .block-partner-logos-v1 .cl-panel-inner { padding: 48px 48px 36px; }
}

@media (min-width: 1024px) {
  .block-partner-logos-v1 .cl-panel-inner { padding: 56px 80px 40px; }
}

.block-partner-logos-v1 .cl-panel-cat {
  display: block;
  font-family: var(--font-body);
  font-size: clamp(11px, 1vw, 12px);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-moss-green);
  margin-bottom: 8px;
}

.dark .block-partner-logos-v1 .cl-panel-cat {
  color: var(--color-accent-dark);
}

.block-partner-logos-v1 .cl-panel-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 16px;
  background: var(--color-white);
  margin-bottom: 20px;
  width: 100%;
  box-sizing: border-box;
  border-radius: 16px;
}

/* Mobile: logo-wrap flush to panel edges (no gap) */
@media (max-width: 639px) {
  .block-partner-logos-v1 .cl-panel-logo-wrap {
    margin-top: -8px;
    margin-left: -24px;
    margin-right: -24px;
    width: calc(100% + 48px);
    border-radius: 0;
  }
}

.dark .block-partner-logos-v1 .cl-panel-logo-wrap {
  background: var(--color-surface-dark);
}

.block-partner-logos-v1 .cl-panel-logo {
  max-width: 100%;
  max-height: 80px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.block-partner-logos-v1 .cl-panel-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 22px), 46px);
  line-height: 1.2;
  color: var(--color-forest-green);
  margin: 0 0 8px;
}

.dark .block-partner-logos-v1 .cl-panel-name {
  color: var(--color-text-dark);
}

.block-partner-logos-v1 .cl-panel-facts {
  font-family: var(--font-body);
  font-size: clamp(14px, calc(0.3vw + 13px), 16px);
  line-height: 1.65;
  color: var(--color-text-body);
  margin-bottom: 24px;
}

.dark .block-partner-logos-v1 .cl-panel-facts {
  color: var(--color-text-dark);
}

.block-partner-logos-v1 .cl-panel-facts p { margin: 0 0 10px; }
.block-partner-logos-v1 .cl-panel-facts p:last-child { margin-bottom: 0; }

.block-partner-logos-v1 .cl-panel-divider {
  border: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin: 0 0 28px;
}

.dark .block-partner-logos-v1 .cl-panel-divider {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-partner-logos-v1 .cl-panel-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-text-secondary);
}

.dark .block-partner-logos-v1 .cl-panel-desc {
  color: var(--color-text-secondary-dark);
}

.block-partner-logos-v1 .cl-panel-desc p { margin: 0 0 12px; }
.block-partner-logos-v1 .cl-panel-desc p:last-child { margin-bottom: 0; }

/* Desktop — name full-width on top, logo-col+facts side by side below; mobile: logoCol → cat (eyebrow) → name → facts */
@media (min-width: 640px) {
  .block-partner-logos-v1 .cl-panel-inner {
    display: grid;
    grid-template-columns: 160px 1fr;
    grid-template-areas:
      "cat   cat"
      "name  name"
      "logo  facts"
      "div   div"
      "desc  desc";
    column-gap: 40px;
  }
  .block-partner-logos-v1 .cl-panel-cat      { grid-area: cat; }
  .block-partner-logos-v1 .cl-panel-logo-wrap { grid-area: logo; margin-bottom: 0; align-self: center; }
  .block-partner-logos-v1 .cl-panel-logo     { max-height: 120px; }
  .block-partner-logos-v1 .cl-panel-name     { grid-area: name; align-self: start; margin-bottom: 20px; }
  .block-partner-logos-v1 .cl-panel-facts    { grid-area: facts; align-self: center; margin-bottom: 0; }
  .block-partner-logos-v1 .cl-panel-divider  { grid-area: div; margin-top: 24px; }
  .block-partner-logos-v1 .cl-panel-desc     { grid-area: desc; }
}

.block-partner-logos-v1 .cl-panel-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1rem;
  color: var(--color-moss-green);
  text-decoration: none;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: color 0.15s ease;
}

.block-partner-logos-v1 .cl-panel-link:hover { color: var(--color-forest-green); }

.dark .block-partner-logos-v1 .cl-panel-link { color: var(--color-accent-dark); }

.block-partner-logos-v1 .cl-link-chevron {
  display: inline-flex;
  transition: transform 0.15s ease;
}

.block-partner-logos-v1 .cl-panel-link:hover .cl-link-chevron { transform: translateX(3px); }

.block-partner-logos-v1 .cl-panel-footer {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 14px 24px calc(20px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.dark .block-partner-logos-v1 .cl-panel-footer {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-partner-logos-v1 .cl-panel-close {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.08);
  border: none;
  color: var(--color-forest-green);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}

.dark .block-partner-logos-v1 .cl-panel-close {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-text-dark);
}

.block-partner-logos-v1 .cl-panel-close:hover {
  background: rgba(0, 0, 0, 0.15);
  transform: scale(1.08);
}
/* ── Partner Stats (block-partner-stats-v1) ──────────── */

.block-partner-stats-v1 {
  background-color: var(--color-white, #fff);
}

.block-partner-stats-v1 .cs-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

/* ── Intro ── */

.block-partner-stats-v1 .cs-intro {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-bottom: 48px;
}


.block-partner-stats-v1 .cs-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(28px, calc(2.5vw + 20px), var(--text-h3));
  line-height: var(--text-h3--line-height);
  color: var(--color-forest-green);
  margin: 0;
}

.block-partner-stats-v1 .cs-title p,
.block-partner-stats-v1 .cs-title > * { margin: 0; }

.block-partner-stats-v1 .cs-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: var(--text-body--line-height);
  color: var(--color-black);
  margin: 0;
}

.block-partner-stats-v1 .cs-desc p { margin: 0 0 12px; }
.block-partner-stats-v1 .cs-desc p:last-child { margin-bottom: 0; }

/* ── Stats grid ── */

.block-partner-stats-v1 .cs-grid {
  display: grid;
  grid-template-columns: 1fr;
  background-color: var(--color-grey-20);
  border-top: 1px solid var(--color-grey-20);
  border-bottom: 1px solid var(--color-grey-20);
  gap: 1px;
}

.block-partner-stats-v1 .cs-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 32px 0;
  background-color: var(--color-white, #fff);
}


/* ── Number column ── */

.block-partner-stats-v1 .cs-card-stat {
  display: block;
}

.block-partner-stats-v1 .cs-number {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: 1.1;
  letter-spacing: -2px;
  color: var(--color-moss-green);
}

/* ── Info column ── */

.block-partner-stats-v1 .cs-card-info {
  display: contents;
}

.block-partner-stats-v1 .cs-cat-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(20px, calc(1.2vw + 16px), var(--text-h4));
  line-height: 1.25;
  color: var(--color-forest-green);
  margin: 0 0 12px;
}

.block-partner-stats-v1 .cs-cat-name p,
.block-partner-stats-v1 .cs-cat-name > * { margin: 0; }

.block-partner-stats-v1 .cs-cat-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: var(--text-body--line-height);
  color: var(--color-black);
  margin: 0 0 20px;
}

/* ── Dark mode ── */

.dark .block-partner-stats-v1 {
  background-color: var(--color-bg-dark, #0f1a14);
}

.dark .block-partner-stats-v1 .cs-card {
  background-color: var(--color-bg-dark, #0f1a14);
}

.dark .block-partner-stats-v1 .cs-grid {
  background-color: rgba(255, 255, 255, 0.08);
}

.dark .block-partner-stats-v1 .cs-title { color: var(--color-text-dark, #f0f4f2); }
.dark .block-partner-stats-v1 .cs-desc { color: var(--color-text-dark, #f0f4f2); }
.dark .block-partner-stats-v1 .cs-number { color: var(--color-accent-dark, #47B27A); }
.dark .block-partner-stats-v1 .cs-cat-name { color: var(--color-text-dark, #f0f4f2); }
.dark .block-partner-stats-v1 .cs-cat-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

/* ── Tablet (768px) ── */

@media (min-width: 768px) {
  .block-partner-stats-v1 .cs-inner { padding: 64px 48px; }

  .block-partner-stats-v1 .cs-intro {
    flex-direction: row;
    align-items: flex-start;
    gap: 48px;
  }

  .block-partner-stats-v1 .cs-intro-left { flex: 0 0 45%; }
  .block-partner-stats-v1 .cs-intro-right { flex: 1; padding-top: 12px; }

  .block-partner-stats-v1 .cs-card {
    padding: 32px 0;
  }
}

/* ── Desktop (1024px) ── */

@media (min-width: 1024px) {
  .block-partner-stats-v1 .cs-inner { padding: 64px 80px; }

  .block-partner-stats-v1 .cs-intro {
    gap: 80px;
    padding-bottom: 64px;
  }

  .block-partner-stats-v1 .cs-intro-left { flex: 0 0 45%; }

  .block-partner-stats-v1 .cs-grid {
    grid-template-columns: 1fr 1fr;
    background-color: transparent;
    gap: 0;
    border-bottom: none;
  }

  .block-partner-stats-v1 .cs-card {
    padding: 32px 48px;
    border-bottom: 1px solid var(--color-grey-20);
  }

  /* vertical divider — all left-col cards */
  .block-partner-stats-v1 .cs-card:nth-child(2n+1) {
    border-right: 1px solid var(--color-grey-20);
  }
}

@media (min-width: 1024px) {
  .dark .block-partner-stats-v1 .cs-grid { background-color: transparent; }

  .dark .block-partner-stats-v1 .cs-card {
    border-bottom-color: rgba(255, 255, 255, 0.08);
  }

  .dark .block-partner-stats-v1 .cs-card:nth-child(2n+1) {
    border-right-color: rgba(255, 255, 255, 0.08);
  }
}
/* Picture CTA (block-picture-cta-v1) */

.block-picture-cta-v1 {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-mint-green, #47b27a);
  --picture-cta-v1-foreground: var(--color-white, #ffffff);
  --picture-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --picture-cta-v1-focus: var(--color-white, #ffffff);
  --picture-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--picture-cta-v1-bg);
  color: var(--picture-cta-v1-foreground);
}

.block-picture-cta-v1,
.block-picture-cta-v1[data-preset="forest-mint"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-picture-cta-v1[data-preset="forest-light"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-picture-cta-v1[data-preset="forest-yellow"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-picture-cta-v1[data-preset="forest-blue"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-picture-cta-v1[data-preset="moss-mint"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735f);
  --picture-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-picture-cta-v1[data-preset="moss-blue"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735f);
  --picture-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-picture-cta-v1[data-preset="moss-red"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735f);
  --picture-cta-v1-illu: var(--color-red, #e52322);
}

.block-picture-cta-v1[data-preset="darkred-mint"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
  --picture-cta-v1-illu: var(--color-mint-green, #47b27a);
  --picture-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-picture-cta-v1[data-preset="darkred-corn"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
  --picture-cta-v1-illu: var(--color-corn-green, #94c24a);
  --picture-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-picture-cta-v1[data-preset="darkred-blue"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
  --picture-cta-v1-illu: var(--color-blue, #477ec0);
  --picture-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-picture-cta-v1[data-preset="mint-yellow"] { --picture-cta-v1-bg: var(--color-mint-green, #47B27A); --picture-cta-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-picture-cta-v1[data-preset="mint-light"] { --picture-cta-v1-bg: var(--color-mint-green, #47B27A); --picture-cta-v1-illu: var(--color-light-green, #8ACBC1); }
.block-picture-cta-v1[data-preset="mint-corn"] { --picture-cta-v1-bg: var(--color-mint-green, #47B27A); --picture-cta-v1-illu: var(--color-corn-green, #94C24A); }
.block-picture-cta-v1[data-preset="light-mint"] { --picture-cta-v1-bg: var(--color-light-green, #8ACBC1); --picture-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-picture-cta-v1[data-preset="light-blue"] { --picture-cta-v1-bg: var(--color-light-green, #8ACBC1); --picture-cta-v1-illu: var(--color-blue, #477EC0); }
.block-picture-cta-v1[data-preset="light-red"] { --picture-cta-v1-bg: var(--color-light-green, #8ACBC1); --picture-cta-v1-illu: var(--color-red, #E52322); }
.block-picture-cta-v1[data-preset="yellow-mint"] { --picture-cta-v1-bg: var(--color-yellow-green, #E6CE00); --picture-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-picture-cta-v1[data-preset="yellow-blue"] { --picture-cta-v1-bg: var(--color-yellow-green, #E6CE00); --picture-cta-v1-illu: var(--color-blue, #477EC0); }
.block-picture-cta-v1[data-preset="corn-mint"] { --picture-cta-v1-bg: var(--color-corn-green, #94C24A); --picture-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-picture-cta-v1[data-preset="corn-red"] { --picture-cta-v1-bg: var(--color-corn-green, #94C24A); --picture-cta-v1-illu: var(--color-red, #E52322); }

.block-picture-cta-v1[data-preset="mint-yellow"],
.block-picture-cta-v1[data-preset="mint-light"],
.block-picture-cta-v1[data-preset="mint-corn"],
.block-picture-cta-v1[data-preset="light-mint"],
.block-picture-cta-v1[data-preset="light-blue"],
.block-picture-cta-v1[data-preset="light-red"],
.block-picture-cta-v1[data-preset="yellow-mint"],
.block-picture-cta-v1[data-preset="yellow-blue"],
.block-picture-cta-v1[data-preset="corn-mint"],
.block-picture-cta-v1[data-preset="corn-red"] {
  --picture-cta-v1-foreground: var(--color-black, #333333);
  --picture-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --picture-cta-v1-focus: var(--color-black, #333333);
  --picture-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-picture-cta-v1 .picture-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-picture-cta-v1 .picture-cta-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  overflow: hidden;
  overflow: clip;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-picture-cta-v1 .picture-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--picture-cta-v1-illu);
  pointer-events: none;
}

.block-picture-cta-v1 .picture-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity: 0.2;
  fill: currentColor;
  shape-rendering: geometricPrecision;
}

.block-picture-cta-v1 .picture-cta-v1__copy {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-picture-cta-v1 .picture-cta-v1__heading {
  margin: 0 0 24px;
  color: var(--picture-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-picture-cta-v1 .picture-cta-v1__heading p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-picture-cta-v1 .picture-cta-v1__body {
  margin: 0 0 32px;
  color: var(--picture-cta-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-picture-cta-v1 .picture-cta-v1__body p {
  margin: 0 0 12px;
}

.block-picture-cta-v1 .picture-cta-v1__body p:last-child {
  margin-bottom: 0;
}

.block-picture-cta-v1 .picture-cta-v1__heading strong,
.block-picture-cta-v1 .picture-cta-v1__heading b,
.block-picture-cta-v1 .picture-cta-v1__heading a,
.block-picture-cta-v1 .picture-cta-v1__body strong,
.block-picture-cta-v1 .picture-cta-v1__body b,
.block-picture-cta-v1 .picture-cta-v1__body a {
  color: var(--picture-cta-v1-foreground);
}

.block-picture-cta-v1 .picture-cta-v1__heading a,
.block-picture-cta-v1 .picture-cta-v1__body a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-picture-cta-v1 .picture-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--picture-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--picture-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-picture-cta-v1 .picture-cta-v1__button:hover,
.block-picture-cta-v1 .picture-cta-v1__button:focus-visible,
.block-picture-cta-v1 .picture-cta-v1__button:focus {
  border-color: var(--picture-cta-v1-foreground);
  background-color: var(--picture-cta-v1-foreground);
  color: var(--picture-cta-v1-foreground-inverse);
}

.block-picture-cta-v1 .picture-cta-v1__button:focus-visible,
.block-picture-cta-v1 .picture-cta-v1__button:focus {
  outline: 3px solid var(--picture-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--picture-cta-v1-focus-shadow);
}

.block-picture-cta-v1 .picture-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-picture-cta-v1 .picture-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-picture-cta-v1 .picture-cta-v1__button:hover .picture-cta-v1__button-icon {
  transform: translateX(3px);
}

.block-picture-cta-v1 .picture-cta-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-picture-cta-v1 .picture-cta-v1__media {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.block-picture-cta-v1 .picture-cta-v1__image,
.block-picture-cta-v1 .picture-cta-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-picture-cta-v1 .picture-cta-v1__image {
  object-fit: contain;
}

.block-picture-cta-v1 .picture-cta-v1__placeholder {
  background: transparent;
}

@media (min-width: 768px) {
  .block-picture-cta-v1 .picture-cta-v1__content {
    padding: 64px 48px;
  }

  .block-picture-cta-v1 .picture-cta-v1__media {
    aspect-ratio: 16 / 9;
  }

  .block-picture-cta-v1 .picture-cta-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-picture-cta-v1 .picture-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-picture-cta-v1 .picture-cta-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-picture-cta-v1 .picture-cta-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
    box-sizing: border-box;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-picture-cta-v1 .picture-cta-v1__button,
  .block-picture-cta-v1 .picture-cta-v1__button-icon {
    transition: none;
  }
}
/* Portrait Picture Gallery (block-portrait-picture-gallery-v1) */

.block-portrait-picture-gallery-v1 {
  --portrait-picture-gallery-v1-bg: var(--color-white, #ffffff);
  --portrait-picture-gallery-v1-card-width: min(76vw, 320px);
  --portrait-picture-gallery-v1-card-width: min(76vw, 45.333svh, 320px);
  --portrait-picture-gallery-v1-gap: 12px;
  --portrait-picture-gallery-v1-track-gutter: max(24px, calc((100vw - var(--portrait-picture-gallery-v1-card-width)) / 2));
  background: var(--portrait-picture-gallery-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
  padding: 64px 0;
}

.block-portrait-picture-gallery-v1[data-background-color="#FFFFFF"] {
  --portrait-picture-gallery-v1-bg: var(--color-white, #ffffff);
}

.block-portrait-picture-gallery-v1[data-background-color="#F7F7F7"] {
  --portrait-picture-gallery-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-portrait-picture-gallery-v1 {
  --portrait-picture-gallery-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__header {
  display: grid;
  gap: 24px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline p,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro p,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption p {
  margin: 0;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro p + p {
  margin-top: 12px;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--portrait-picture-gallery-v1-gap);
  margin: 0;
  padding: 16px 0 8px var(--portrait-picture-gallery-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--portrait-picture-gallery-v1-track-gutter) - var(--portrait-picture-gallery-v1-gap)));
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__track::-webkit-scrollbar {
  display: none;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__slide {
  position: relative;
  flex: 0 0 var(--portrait-picture-gallery-v1-card-width);
  width: var(--portrait-picture-gallery-v1-card-width);
  min-width: 0;
  scroll-snap-align: center;
  perspective: 1100px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  border-radius: 8px;
  background: var(--color-grey-20, #dcdcdc);
  backface-visibility: hidden;
  transform: translateZ(0);
  transform-style: preserve-3d;
  box-shadow: 0 18px 48px rgba(0, 68, 50, 0.12);
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide.ppg-near .portrait-picture-gallery-v1__media {
  will-change: transform;
}

.block-portrait-picture-gallery-v1.ppg-static-cover-flow .portrait-picture-gallery-v1__slide.ppg-near .portrait-picture-gallery-v1__media {
  will-change: auto;
  transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.26);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide:not(.ppg-active) .portrait-picture-gallery-v1__media::after {
  opacity: 1;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__image,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background {
  z-index: 0;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
  pointer-events: none;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__image {
  z-index: 1;
  object-fit: contain;
  object-position: center;
  filter: none;
  transition: filter 0.25s ease;
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide.ppg-near:not(.ppg-active) .portrait-picture-gallery-v1__image {
  filter: blur(10px) brightness(0.62) saturate(0.85);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__placeholder {
  position: relative;
  background:
    linear-gradient(155deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.14)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__placeholder {
  background:
    linear-gradient(155deg, rgba(71, 178, 122, 0.14), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
  width: 100%;
  margin-top: 18px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption p + p {
  margin-top: 12px;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide:not(.ppg-active) .portrait-picture-gallery-v1__caption {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: var(--portrait-picture-gallery-v1-card-width);
  margin: 20px auto 0;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  height: 40px;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress-fill {
  position: relative;
  flex: 1;
  min-width: 0;
  height: 4px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--ppg-p, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.52);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:hover:not(:disabled):not([aria-disabled="true"]) {
  background: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.78);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:disabled,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn[aria-disabled="true"] {
  opacity: 0.4;
  cursor: default;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:hover:not(:disabled):not([aria-disabled="true"]) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-portrait-picture-gallery-v1 {
    --portrait-picture-gallery-v1-card-width: min(52vw, 400px);
    --portrait-picture-gallery-v1-card-width: min(52vw, 45.333svh, 400px);
    --portrait-picture-gallery-v1-gap: 24px;
    --portrait-picture-gallery-v1-track-gutter: max(48px, calc((100vw - var(--portrait-picture-gallery-v1-card-width)) / 2));
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__inner {
    padding: 0 48px 32px;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
    margin-top: 22px;
  }
}

@media (max-width: 767px), (pointer: coarse) {
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
    box-shadow: 0 10px 24px rgba(0, 68, 50, 0.1);
  }

  .dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background {
    filter: blur(18px) brightness(0.6);
  }
}

@media (min-width: 1024px) {
  .block-portrait-picture-gallery-v1 {
    --portrait-picture-gallery-v1-card-width: min(34vw, 48vh, 440px);
    --portrait-picture-gallery-v1-gap: 32px;
    --portrait-picture-gallery-v1-track-gutter: max(80px, calc((100vw - var(--portrait-picture-gallery-v1-card-width)) / 2));
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__inner {
    padding: 0 80px 32px;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro {
    grid-column: 7 / span 6;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
    margin-top: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
    transform: none !important;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media::after,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__image,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__progress-fill::after,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn {
    transition: none !important;
  }
}
/* Quote CTA (block-quote-cta-v1) */

.block-quote-cta-v1 {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-mint-green, #47b27a);
  --quote-cta-v1-foreground: var(--color-white, #ffffff);
  --quote-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --quote-cta-v1-line: rgba(255, 255, 255, 0.56);
  --quote-cta-v1-focus: var(--color-white, #ffffff);
  --quote-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  display: flex;
  align-items: center;
  min-height: 400px;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  background-color: var(--quote-cta-v1-bg);
  color: var(--quote-cta-v1-foreground);
}

.block-quote-cta-v1 .quote-cta-v1__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  clip-path: inset(0);
  color: var(--quote-cta-v1-illu);
  pointer-events: none;
}

.block-quote-cta-v1 .quote-cta-v1__bg-svg {
  position: absolute;
  top: -310%;
  left: 4%;
  width: auto;
  height: 653%;
  transform: rotate(57.787deg);
  opacity: 0.2;
  fill: currentColor;
}

.block-quote-cta-v1,
.block-quote-cta-v1[data-preset="forest-mint"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-quote-cta-v1[data-preset="forest-light"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-quote-cta-v1[data-preset="forest-yellow"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-quote-cta-v1[data-preset="forest-blue"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-quote-cta-v1[data-preset="moss-mint"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735f);
  --quote-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-quote-cta-v1[data-preset="moss-blue"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735f);
  --quote-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-quote-cta-v1[data-preset="moss-red"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735f);
  --quote-cta-v1-illu: var(--color-red, #e52322);
}

.block-quote-cta-v1[data-preset="darkred-mint"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-illu: var(--color-mint-green, #47b27a);
  --quote-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-quote-cta-v1[data-preset="darkred-corn"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-illu: var(--color-corn-green, #94c24a);
  --quote-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-quote-cta-v1[data-preset="darkred-blue"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-illu: var(--color-blue, #477ec0);
  --quote-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-quote-cta-v1[data-preset="mint-yellow"] { --quote-cta-v1-bg: var(--color-mint-green, #47B27A); --quote-cta-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-quote-cta-v1[data-preset="mint-light"] { --quote-cta-v1-bg: var(--color-mint-green, #47B27A); --quote-cta-v1-illu: var(--color-light-green, #8ACBC1); }
.block-quote-cta-v1[data-preset="mint-corn"] { --quote-cta-v1-bg: var(--color-mint-green, #47B27A); --quote-cta-v1-illu: var(--color-corn-green, #94C24A); }
.block-quote-cta-v1[data-preset="light-mint"] { --quote-cta-v1-bg: var(--color-light-green, #8ACBC1); --quote-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-quote-cta-v1[data-preset="light-blue"] { --quote-cta-v1-bg: var(--color-light-green, #8ACBC1); --quote-cta-v1-illu: var(--color-blue, #477EC0); }
.block-quote-cta-v1[data-preset="light-red"] { --quote-cta-v1-bg: var(--color-light-green, #8ACBC1); --quote-cta-v1-illu: var(--color-red, #E52322); }
.block-quote-cta-v1[data-preset="yellow-mint"] { --quote-cta-v1-bg: var(--color-yellow-green, #E6CE00); --quote-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-quote-cta-v1[data-preset="yellow-blue"] { --quote-cta-v1-bg: var(--color-yellow-green, #E6CE00); --quote-cta-v1-illu: var(--color-blue, #477EC0); }
.block-quote-cta-v1[data-preset="corn-mint"] { --quote-cta-v1-bg: var(--color-corn-green, #94C24A); --quote-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-quote-cta-v1[data-preset="corn-red"] { --quote-cta-v1-bg: var(--color-corn-green, #94C24A); --quote-cta-v1-illu: var(--color-red, #E52322); }

.block-quote-cta-v1[data-preset="mint-yellow"],
.block-quote-cta-v1[data-preset="mint-light"],
.block-quote-cta-v1[data-preset="mint-corn"],
.block-quote-cta-v1[data-preset="light-mint"],
.block-quote-cta-v1[data-preset="light-blue"],
.block-quote-cta-v1[data-preset="light-red"],
.block-quote-cta-v1[data-preset="yellow-mint"],
.block-quote-cta-v1[data-preset="yellow-blue"],
.block-quote-cta-v1[data-preset="corn-mint"],
.block-quote-cta-v1[data-preset="corn-red"] {
  --quote-cta-v1-foreground: var(--color-black, #333333);
  --quote-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --quote-cta-v1-line: rgba(51, 51, 51, 0.56);
  --quote-cta-v1-focus: var(--color-black, #333333);
  --quote-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-quote-cta-v1 .quote-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  gap: 40px;
  box-sizing: border-box;
}

.block-quote-cta-v1 .quote-cta-v1__quote-group {
  min-width: 0;
  margin: 0;
  padding-left: 24px;
  border-left: 1px solid var(--quote-cta-v1-line);
  box-sizing: border-box;
}

.block-quote-cta-v1 .quote-cta-v1__mark {
  display: block;
  width: 56px;
  max-width: 36vw;
  height: auto;
  margin: 0 0 24px;
  color: var(--quote-cta-v1-foreground);
}

.block-quote-cta-v1 .quote-cta-v1__quote {
  margin: 0;
  color: var(--quote-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-quote-cta-v1 .quote-cta-v1__quote p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-quote-cta-v1 .quote-cta-v1__quote p + p {
  margin-top: 16px;
}

.block-quote-cta-v1 .quote-cta-v1__quote strong,
.block-quote-cta-v1 .quote-cta-v1__quote b,
.block-quote-cta-v1 .quote-cta-v1__quote a {
  color: var(--quote-cta-v1-foreground);
}

.block-quote-cta-v1 .quote-cta-v1__quote a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-quote-cta-v1 .quote-cta-v1__action {
  min-width: 0;
}

.block-quote-cta-v1 .quote-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--quote-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--quote-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-quote-cta-v1 .quote-cta-v1__button:hover,
.block-quote-cta-v1 .quote-cta-v1__button:focus-visible,
.block-quote-cta-v1 .quote-cta-v1__button:focus {
  border-color: var(--quote-cta-v1-foreground);
  background-color: var(--quote-cta-v1-foreground);
  color: var(--quote-cta-v1-foreground-inverse);
}

.block-quote-cta-v1 .quote-cta-v1__button:focus-visible,
.block-quote-cta-v1 .quote-cta-v1__button:focus {
  outline: 3px solid var(--quote-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--quote-cta-v1-focus-shadow);
}

.block-quote-cta-v1 .quote-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-quote-cta-v1 .quote-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-quote-cta-v1 .quote-cta-v1__button:hover .quote-cta-v1__button-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-quote-cta-v1 .quote-cta-v1__inner {
    padding: 64px 48px;
  }

  .block-quote-cta-v1 .quote-cta-v1__quote-group {
    padding-left: 48px;
  }

  .block-quote-cta-v1 .quote-cta-v1__mark {
    width: 72px;
  }
}

@media (min-width: 1024px) {
  .block-quote-cta-v1 .quote-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    padding: 80px;
    gap: 0 32px;
  }

  .block-quote-cta-v1 .quote-cta-v1__quote-group {
    grid-column: 1 / 8;
  }

  .block-quote-cta-v1 .quote-cta-v1__action {
    grid-column: 9 / -1;
    justify-self: end;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-quote-cta-v1 .quote-cta-v1__button,
  .block-quote-cta-v1 .quote-cta-v1__button-icon {
    transition: none;
  }
}
/* Recent Donations Train (block-recent-donations-v1) */

.block-recent-donations-v1 {
  --recent-donations-v1-bg: var(--color-light-grey, #f7f7f7);
  --recent-donations-v1-card-bg: var(--color-white, #ffffff);
  --recent-donations-v1-border: rgba(0, 68, 50, 0.14);
  --recent-donations-v1-muted: #666666;
  --recent-donations-v1-duration: 180s;
  --recent-donations-v1-duration-alt: 202s;
  --recent-donations-v1-delay-alt: -85s;
  --recent-donations-v1-gap: 48px;
  overflow-x: clip;
  overflow-y: visible;
  background: var(--recent-donations-v1-bg);
  color: var(--color-black, #333333);
}

.block-recent-donations-v1[data-background-color="#FFFFFF"] {
  --recent-donations-v1-bg: var(--color-white, #ffffff);
}

.block-recent-donations-v1[data-background-color="#F7F7F7"] {
  --recent-donations-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-recent-donations-v1 {
  --recent-donations-v1-bg: var(--color-bg-dark, #0f1a14);
  --recent-donations-v1-card-bg: var(--color-white, #ffffff);
  --recent-donations-v1-border: rgba(255, 255, 255, 0.14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-recent-donations-v1 .recent-donations-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-recent-donations-v1 .recent-donations-v1__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  margin-bottom: 28px;
}

.block-recent-donations-v1 .recent-donations-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  font-weight: 700;
  line-height: var(--text-h3--line-height, 1.15);
}

.block-recent-donations-v1 .recent-donations-v1__headline p,
.block-recent-donations-v1 .recent-donations-v1__cta p {
  margin: 0;
}

.dark .block-recent-donations-v1 .recent-donations-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-recent-donations-v1 .recent-donations-v1__count {
  display: none;
  align-items: baseline;
  gap: 6px;
  margin: 8px 0 0;
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.45;
}

.block-recent-donations-v1 .recent-donations-v1__count[data-has-count="true"] {
  display: flex;
}

.block-recent-donations-v1 .recent-donations-v1__count-number {
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.dark .block-recent-donations-v1 .recent-donations-v1__count {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.56));
}

.dark .block-recent-donations-v1 .recent-donations-v1__count-number {
  color: inherit;
}

.block-recent-donations-v1 .recent-donations-v1__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-recent-donations-v1 .recent-donations-v1__cta:hover,
.block-recent-donations-v1 .recent-donations-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  border-color: transparent;
  color: var(--color-white, #ffffff);
}

.block-recent-donations-v1 .recent-donations-v1__cta:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-recent-donations-v1 .recent-donations-v1__cta-icon {
  flex-shrink: 0;
  width: 9px;
  height: 14px;
  transition: transform 0.2s ease;
}

.block-recent-donations-v1 .recent-donations-v1__cta:hover .recent-donations-v1__cta-icon,
.block-recent-donations-v1 .recent-donations-v1__cta:focus-visible .recent-donations-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-recent-donations-v1 .recent-donations-v1__cta {
  background: var(--color-yellow-green, #e6ce00);
  border-color: transparent;
  color: var(--color-forest-green, #004432);
}

.dark .block-recent-donations-v1 .recent-donations-v1__cta:hover,
.dark .block-recent-donations-v1 .recent-donations-v1__cta:focus-visible {
  background: var(--color-accent-dark, #47b27a);
  border-color: transparent;
  color: var(--color-bg-dark, #0f1a14);
}

.block-recent-donations-v1 .recent-donations-v1__rail {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  min-height: 286px;
  padding: 2px 0;
  overflow-x: clip;
  overflow-y: visible;
  overflow-clip-margin-block: 16px;
}

.block-recent-donations-v1 .recent-donations-v1__rail::before,
.block-recent-donations-v1 .recent-donations-v1__rail::after {
  display: none;
}

.block-recent-donations-v1 .recent-donations-v1__empty {
  margin: 0;
  padding: 28px;
  border: 1px dashed var(--recent-donations-v1-border);
  border-radius: 8px;
  color: var(--color-grey-60, #737373);
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}

.block-recent-donations-v1 .recent-donations-v1__empty[hidden],
.block-recent-donations-v1 .recent-donations-v1__train[hidden] {
  display: none;
}

.dark .block-recent-donations-v1 .recent-donations-v1__empty {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.block-recent-donations-v1 .recent-donations-v1__train {
  position: relative;
  overflow-x: clip;
  overflow-y: visible;
  overflow-clip-margin-block: 16px;
  padding: 0;
}

.block-recent-donations-v1 .recent-donations-v1__train:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-recent-donations-v1 .recent-donations-v1__track {
  display: flex;
  width: max-content;
  animation: recent-donations-v1-marquee var(--recent-donations-v1-duration) linear infinite;
  will-change: transform;
}

.block-recent-donations-v1 .recent-donations-v1__track[data-rd-lane="2"] {
  display: none;
}

.block-recent-donations-v1 .recent-donations-v1__group {
  display: flex;
  flex: 0 0 auto;
  gap: var(--recent-donations-v1-gap);
  padding-right: var(--recent-donations-v1-gap);
}

.block-recent-donations-v1 .recent-donations-v1__car {
  display: grid;
  grid-template-rows: auto auto auto;
  align-items: stretch;
  width: clamp(248px, 20vw, 304px);
  overflow: hidden;
  border: 0;
  border-radius: 16px;
  background: var(--recent-donations-v1-card-bg);
  box-shadow: 0 2px 8px rgba(0, 68, 50, 0.12);
}

.dark .block-recent-donations-v1 .recent-donations-v1__car {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.26);
}

.block-recent-donations-v1 .recent-donations-v1__animal {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: rgba(0, 68, 50, 0.08);
}

.block-recent-donations-v1 .recent-donations-v1__animal-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dark .block-recent-donations-v1 .recent-donations-v1__animal {
  background: rgba(255, 255, 255, 0.08);
}

.block-recent-donations-v1 .recent-donations-v1__amount {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  gap: 6px;
  min-width: 0;
  min-height: 0;
  padding: 8px 20px 22px;
  border-radius: 0;
  background: transparent;
  color: var(--color-forest-green, #004432);
}

.block-recent-donations-v1 .recent-donations-v1__amount-value {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}

.block-recent-donations-v1 .recent-donations-v1__amount-unit {
  margin-top: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
}

.block-recent-donations-v1 .recent-donations-v1__amount-unit sup {
  position: relative;
  top: -0.35em;
  margin-left: 1px;
  font-size: 0.62em;
  line-height: 0;
}

.dark .block-recent-donations-v1 .recent-donations-v1__amount {
  color: var(--color-forest-green, #004432);
}

.block-recent-donations-v1 .recent-donations-v1__car-body {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 7px;
  padding: 20px 20px 0;
}

.block-recent-donations-v1 .recent-donations-v1__donor {
  overflow: hidden;
  margin: 0;
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.block-recent-donations-v1 .recent-donations-v1__date {
  display: inline-flex;
  align-items: baseline;
  margin-top: 0;
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: nowrap;
}

.block-recent-donations-v1 .recent-donations-v1__date::before {
  content: '|';
  margin-right: 8px;
}

.dark .block-recent-donations-v1 .recent-donations-v1__donor {
  color: var(--color-grey-60, #737373);
}

.dark .block-recent-donations-v1 .recent-donations-v1__date {
  color: var(--color-grey-60, #737373);
}

@keyframes recent-donations-v1-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(var(--recent-donations-v1-loop-offset, -50%), 0, 0);
  }
}

@media (max-width: 767px) {
  .block-recent-donations-v1 .recent-donations-v1__header {
    grid-template-columns: 1fr;
    gap: 18px;
    align-items: start;
    margin-bottom: 24px;
  }

  .block-recent-donations-v1 .recent-donations-v1__rail {
    min-height: 0;
    padding: 0;
  }

  .block-recent-donations-v1 .recent-donations-v1__cta {
    justify-self: start;
    width: fit-content;
    max-width: 100%;
  }

  .block-recent-donations-v1 .recent-donations-v1__car {
    grid-template-rows: auto auto auto;
    width: min(72vw, 260px);
  }

  .block-recent-donations-v1 .recent-donations-v1__animal {
    width: 100%;
  }

  .block-recent-donations-v1 .recent-donations-v1__amount {
    padding: 7px 16px 18px;
  }

  .block-recent-donations-v1 .recent-donations-v1__amount-value {
    font-size: 25px;
  }

  .block-recent-donations-v1 .recent-donations-v1__amount-unit {
    font-size: 17px;
  }

  .block-recent-donations-v1 .recent-donations-v1__car-body {
    gap: 5px;
    padding: 16px 16px 0;
  }

  .block-recent-donations-v1 .recent-donations-v1__donor {
    font-size: 12px;
  }

  .block-recent-donations-v1 .recent-donations-v1__date {
    font-size: 12px;
  }

  .block-recent-donations-v1 .recent-donations-v1__date::before {
    margin-right: 6px;
  }
}

@media (min-width: 768px) {
  .block-recent-donations-v1 .recent-donations-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-recent-donations-v1 .recent-donations-v1__inner {
    padding: 64px 80px;
  }

  .block-recent-donations-v1 .recent-donations-v1__track[data-rd-lane="2"] {
    display: flex;
    margin-top: 48px;
    animation-duration: var(--recent-donations-v1-duration-alt);
    animation-delay: var(--recent-donations-v1-delay-alt);
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-recent-donations-v1 .recent-donations-v1__train {
    overflow: visible;
  }

  .block-recent-donations-v1 .recent-donations-v1__track {
    width: auto;
    animation: none;
  }

  .block-recent-donations-v1 .recent-donations-v1__track[data-rd-lane="2"],
  .block-recent-donations-v1 .recent-donations-v1__group[data-rd-clone] {
    display: none;
  }

  .block-recent-donations-v1 .recent-donations-v1__group {
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    padding-right: 0;
  }
}
/* Region List (block-region-list-v1) */

.block-region-list-v1 {
  --region-list-v1-bg: var(--color-light-grey, #f7f7f7);
  --region-list-v1-card-bg: var(--color-white, #ffffff);
  --region-list-v1-muted: var(--color-grey-80, #4d4d4d);
  background: var(--region-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-region-list-v1[data-background-color="#FFFFFF"] {
  --region-list-v1-bg: var(--color-white, #ffffff);
}

.block-region-list-v1[data-background-color="#F7F7F7"] {
  --region-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-region-list-v1 {
  --region-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --region-list-v1-card-bg: var(--color-surface-dark, #1a2920);
  --region-list-v1-muted: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
  color: var(--color-text-dark, #f0f4f2);
}

.block-region-list-v1 .region-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-region-list-v1 .region-list-v1__header {
  display: grid;
  gap: 12px;
  margin-bottom: 32px;
}

.block-region-list-v1 .region-list-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  font-weight: 700;
  line-height: var(--text-h3--line-height, 1.1);
}

.block-region-list-v1 .region-list-v1__headline p,
.block-region-list-v1 .region-list-v1__cta p {
  margin: 0;
}

.dark .block-region-list-v1 .region-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-region-list-v1 .region-list-v1__count {
  display: none;
  margin: 0;
  color: var(--region-list-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
}

.block-region-list-v1 .region-list-v1__count[data-has-count="true"] {
  display: flex;
  gap: 6px;
}

.block-region-list-v1 .region-list-v1__count-number {
  color: inherit;
  font-weight: 700;
}

.block-region-list-v1 .region-list-v1__empty {
  margin: 0;
  padding: 24px;
  border: 1px dashed var(--color-grey-20, #dcdcdc);
  border-radius: 8px;
  color: var(--region-list-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
}

.dark .block-region-list-v1 .region-list-v1__empty {
  border-color: rgba(255, 255, 255, 0.16);
}

.block-region-list-v1 .region-list-v1__empty[hidden],
.block-region-list-v1 .region-list-v1__list[hidden] {
  display: none;
}

.block-region-list-v1 .region-list-v1__list {
  display: grid;
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-region-list-v1 .region-list-v1__item {
  min-width: 0;
}

.block-region-list-v1 .region-list-v1__card {
  overflow: hidden;
  border-radius: 16px;
  background: var(--region-list-v1-card-bg);
  box-shadow: 0 2px 8px rgba(0, 68, 50, 0.1);
}

.dark .block-region-list-v1 .region-list-v1__card {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
}

.block-region-list-v1 .region-list-v1__hero {
  position: relative;
  min-height: 400px;
  overflow: hidden;
  background: var(--color-forest-green, #004432);
  isolation: isolate;
}

.block-region-list-v1 .region-list-v1__picture,
.block-region-list-v1 .region-list-v1__image,
.block-region-list-v1 .region-list-v1__image-placeholder,
.block-region-list-v1 .region-list-v1__overlay {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-region-list-v1 .region-list-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s ease;
}

.block-region-list-v1 .region-list-v1__card:hover .region-list-v1__image {
  transform: scale(1.02);
}

.block-region-list-v1 .region-list-v1__image-placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.32), rgba(0, 68, 50, 0.9)),
    var(--color-forest-green, #004432);
}

.block-region-list-v1 .region-list-v1__overlay {
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 28, 21, 0.64) 0%, rgba(0, 35, 26, 0.35) 42%, rgba(0, 28, 21, 0.82) 100%);
}

.block-region-list-v1 .region-list-v1__hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: 400px;
  flex-direction: column;
  justify-content: space-between;
  padding: 40px;
  color: var(--color-white, #ffffff);
}

.block-region-list-v1 .region-list-v1__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.block-region-list-v1 .region-list-v1__meta p {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  font-family: var(--font-body, 'Lato', sans-serif);
}

.block-region-list-v1 .region-list-v1__meta p:last-child {
  text-align: right;
}

.block-region-list-v1 .region-list-v1__meta strong {
  color: inherit;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.block-region-list-v1 .region-list-v1__meta span {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.block-region-list-v1 .region-list-v1__meta span sub {
  font-size: 0.7em;
  line-height: 0;
  vertical-align: sub;
}

.block-region-list-v1 .region-list-v1__impact {
  margin-top: 64px;
}

.block-region-list-v1 .region-list-v1__name {
  margin: 0;
  color: var(--color-white, #ffffff);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.3;
}

.block-region-list-v1 .region-list-v1__editorial {
  padding: 32px 40px 36px;
  background: var(--color-white, #ffffff);
  color: var(--color-black, #333333);
}

.block-region-list-v1 .region-list-v1__description {
  display: -webkit-box;
  width: 100%;
  overflow: hidden;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}

.block-region-list-v1 .region-list-v1__description > :first-child {
  margin-top: 0;
}

.block-region-list-v1 .region-list-v1__description > :last-child {
  margin-bottom: 0;
}

.block-region-list-v1 .region-list-v1__progress {
  position: relative;
  box-sizing: border-box;
  height: 16px;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 999px;
  background: var(--color-forest-green, #004432);
}

.block-region-list-v1 .region-list-v1__progress-fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--color-mint-green, #47b27a);
  transition: width 0.6s ease;
}

.block-region-list-v1 .region-list-v1__areas {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 16px;
}

.block-region-list-v1 .region-list-v1__areas p {
  margin: 0;
  color: var(--color-white, #ffffff);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}

.block-region-list-v1 .region-list-v1__areas p:last-child {
  text-align: right;
}

.block-region-list-v1 .region-list-v1__areas strong {
  color: inherit;
}

.block-region-list-v1 .region-list-v1__areas p:first-child,
.block-region-list-v1 .region-list-v1__areas p:first-child strong {
  color: var(--color-light-green, #8acbc1);
}

.block-region-list-v1 .region-list-v1__cta {
  display: flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  align-self: flex-start;
  gap: 12px;
  margin-top: 24px;
  margin-left: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}

.block-region-list-v1 .region-list-v1__cta:hover,
.block-region-list-v1 .region-list-v1__cta:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.block-region-list-v1 .region-list-v1__cta:first-child {
  margin-top: 0;
}

.block-region-list-v1 .region-list-v1__cta:focus-visible {
  border-radius: 4px;
  outline: 2px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.block-region-list-v1 .region-list-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex: 0 0 auto;
  transition: transform 0.18s ease;
}

.block-region-list-v1 .region-list-v1__cta:hover .region-list-v1__cta-icon,
.block-region-list-v1 .region-list-v1__cta:focus-visible .region-list-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-region-list-v1 .region-list-v1__inner {
    padding: 80px 48px;
  }
}

@media (min-width: 1024px) {
  .block-region-list-v1 .region-list-v1__inner {
    padding: 80px;
  }
}

@media (max-width: 767px) {
  .block-region-list-v1 .region-list-v1__hero,
  .block-region-list-v1 .region-list-v1__hero-content {
    min-height: 440px;
  }

  .block-region-list-v1 .region-list-v1__hero-content {
    padding: 32px 24px;
  }

  .block-region-list-v1 .region-list-v1__meta {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .block-region-list-v1 .region-list-v1__meta p:last-child {
    text-align: left;
  }

  .block-region-list-v1 .region-list-v1__impact {
    margin-top: 48px;
  }

  .block-region-list-v1 .region-list-v1__name {
    font-size: 24px;
  }

  .block-region-list-v1 .region-list-v1__editorial {
    padding: 24px;
  }

}

@media (prefers-reduced-motion: reduce) {
  .block-region-list-v1 .region-list-v1__image,
  .block-region-list-v1 .region-list-v1__progress-fill,
  .block-region-list-v1 .region-list-v1__cta-icon {
    transition: none;
  }

  .block-region-list-v1 .region-list-v1__card:hover .region-list-v1__image,
  .block-region-list-v1 .region-list-v1__cta:hover .region-list-v1__cta-icon,
  .block-region-list-v1 .region-list-v1__cta:focus-visible .region-list-v1__cta-icon {
    transform: none;
  }
}
/* ── Right Picture (block-right-picture-v1) ───────────────────── */

.block-right-picture-v1 {
  --right-picture-v1-bg: var(--color-white, #FFFFFF);
  --right-picture-v1-padding-top: 64px;
  --right-picture-v1-padding-bottom: 64px;
  background: var(--right-picture-v1-bg);
}

.block-right-picture-v1[data-background-color="#FFFFFF"] {
  --right-picture-v1-bg: var(--color-white, #FFFFFF);
}

.block-right-picture-v1[data-background-color="#F7F7F7"] {
  --right-picture-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-right-picture-v1 {
  --right-picture-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-right-picture-v1[data-padding-top="true"] {
  --right-picture-v1-padding-top: 64px;
}

.block-right-picture-v1[data-padding-top="false"] {
  --right-picture-v1-padding-top: 0px;
}

.block-right-picture-v1[data-padding-bottom="true"] {
  --right-picture-v1-padding-bottom: 64px;
}

.block-right-picture-v1[data-padding-bottom="false"] {
  --right-picture-v1-padding-bottom: 0px;
}

/* Outer mirrors global block responsive padding for right-edge alignment */
.block-right-picture-v1 .rp-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--right-picture-v1-padding-top) 24px var(--right-picture-v1-padding-bottom);
}

.block-right-picture-v1 .rp-inner {
  margin: 0;
}

/* ── Picture wrap ── */

.block-right-picture-v1 .rp-img-wrap {
  position: relative;
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-right-picture-v1 .rp-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}
.block-right-picture-v1.rp-has-lightbox .rp-img-wrap { cursor: zoom-in; }

/* Blurred background shown only for portrait pictures */
.block-right-picture-v1 .rp-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}
.block-right-picture-v1 .rp-img-wrap.rp-portrait .rp-bg { display: block; }

.block-right-picture-v1 .rp-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.block-right-picture-v1 .rp-img-wrap.rp-portrait .rp-img { object-fit: contain; }

/* ── Placeholder ── */

.block-right-picture-v1 .rp-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-right-picture-v1 .rp-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

/* ── Zoom button — hidden unless lightbox is enabled ── */

.block-right-picture-v1 .rp-zoom-btn {
  display: none;
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: zoom-in;
  opacity: 0;
  transition: opacity 0.15s ease, background-color 0.15s ease;
}
.block-right-picture-v1.rp-has-lightbox .rp-zoom-btn { display: flex; }
.block-right-picture-v1 .rp-img-wrap:hover .rp-zoom-btn,
.block-right-picture-v1 .rp-img-wrap:focus-within .rp-zoom-btn { opacity: 1; }
@media (max-width: 767px) {
  .block-right-picture-v1.rp-has-lightbox .rp-zoom-btn { opacity: 1; }
}
.block-right-picture-v1 .rp-zoom-btn:hover { background: rgba(0, 0, 0, 0.65); }
.block-right-picture-v1 .rp-zoom-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  opacity: 1;
}

/* ── Lightbox — hidden by default, shown via JS class ── */

.block-right-picture-v1 .rp-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.block-right-picture-v1 .rp-lightbox.rp-lb-open { display: flex; }

.block-right-picture-v1 .rp-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: rp-lb-in 0.2s ease;
}
@keyframes rp-lb-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.block-right-picture-v1 .rp-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: 92vh;
  animation: rp-lb-up 0.2s ease;
}
@keyframes rp-lb-up {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.block-right-picture-v1 .rp-lb-img {
  display: block;
  max-width: 100%;
  max-height: 92vh;
  border-radius: 8px;
  object-fit: contain;
}

.block-right-picture-v1 .rp-lb-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.block-right-picture-v1 .rp-lb-close:hover { background: rgba(255, 255, 255, 0.22); }
.block-right-picture-v1 .rp-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

/* ── Caption ── */

.block-right-picture-v1 .rp-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-right-picture-v1 .rp-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-right-picture-v1 .rp-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-right-picture-v1 .rp-caption a { color: var(--color-accent-dark); }
.block-right-picture-v1 .rp-caption a:hover { text-decoration: none; }

@media (min-width: 768px) {
  .block-right-picture-v1 .rp-outer { padding-left: 48px; padding-right: 48px; }
}

@media (min-width: 1024px) {
  .block-right-picture-v1 .rp-outer {
    padding: var(--right-picture-v1-padding-top) 80px var(--right-picture-v1-padding-bottom);
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
  }

  .block-right-picture-v1 .rp-inner {
    grid-column: 5 / -1;
  }
}
/* ── Right Video (block-right-video-v1) ─────────────────────── */

.block-right-video-v1 {
  --right-video-v1-bg: var(--color-white, #FFFFFF);
  --right-video-v1-padding-top: 64px;
  --right-video-v1-padding-bottom: 64px;
  background: var(--right-video-v1-bg);
}

.block-right-video-v1[data-background-color="#FFFFFF"] {
  --right-video-v1-bg: var(--color-white, #FFFFFF);
}

.block-right-video-v1[data-background-color="#F7F7F7"] {
  --right-video-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-right-video-v1 {
  --right-video-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-right-video-v1[data-padding-top="true"] {
  --right-video-v1-padding-top: 64px;
}

.block-right-video-v1[data-padding-top="false"] {
  --right-video-v1-padding-top: 0px;
}

.block-right-video-v1[data-padding-bottom="true"] {
  --right-video-v1-padding-bottom: 64px;
}

.block-right-video-v1[data-padding-bottom="false"] {
  --right-video-v1-padding-bottom: 0px;
}

.block-right-video-v1 .rv-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--right-video-v1-padding-top) 24px var(--right-video-v1-padding-bottom);
}

.block-right-video-v1 .sv-inner {
  margin: 0;
}

/* The figure has no inner padding, so keep the cinema button 8px inside the frame. */
.block-right-video-v1 .sv-lights-btn {
  top: 8px;
  right: 8px;
}

@media (min-width: 768px) {
  .block-right-video-v1 .rv-outer {
    padding-left: 48px;
    padding-right: 48px;
  }
}

@media (min-width: 1024px) {
  .block-right-video-v1 .rv-outer {
    padding: var(--right-video-v1-padding-top) 80px var(--right-video-v1-padding-bottom);
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
  }

  .block-right-video-v1 .sv-inner {
    grid-column: 5 / -1;
  }
}
/* Sample Certificate CTA (block-sample-certificate-cta-v1) */

.block-sample-certificate-cta-v1 {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a);
  --sample-certificate-cta-v1-foreground: var(--color-white, #ffffff);
  --sample-certificate-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-focus: var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  background-color: var(--sample-certificate-cta-v1-bg);
  color: var(--sample-certificate-cta-v1-foreground);
}

.block-sample-certificate-cta-v1,
.block-sample-certificate-cta-v1[data-preset="forest-mint"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-sample-certificate-cta-v1[data-preset="forest-light"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-sample-certificate-cta-v1[data-preset="forest-yellow"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-sample-certificate-cta-v1[data-preset="forest-blue"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-sample-certificate-cta-v1[data-preset="moss-mint"] {
  --sample-certificate-cta-v1-bg: var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-sample-certificate-cta-v1[data-preset="moss-blue"] {
  --sample-certificate-cta-v1-bg: var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-illu: var(--color-blue, #477ec0);
}

.block-sample-certificate-cta-v1[data-preset="moss-red"] {
  --sample-certificate-cta-v1-bg: var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-illu: var(--color-red, #e52322);
}

.block-sample-certificate-cta-v1[data-preset="darkred-mint"] {
  --sample-certificate-cta-v1-bg: var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a);
  --sample-certificate-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-sample-certificate-cta-v1[data-preset="darkred-corn"] {
  --sample-certificate-cta-v1-bg: var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-illu: var(--color-corn-green, #94c24a);
  --sample-certificate-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-sample-certificate-cta-v1[data-preset="darkred-blue"] {
  --sample-certificate-cta-v1-bg: var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-illu: var(--color-blue, #477ec0);
  --sample-certificate-cta-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-sample-certificate-cta-v1[data-preset="mint-yellow"] { --sample-certificate-cta-v1-bg: var(--color-mint-green, #47b27a); --sample-certificate-cta-v1-illu: var(--color-yellow-green, #e6ce00); }
.block-sample-certificate-cta-v1[data-preset="mint-light"] { --sample-certificate-cta-v1-bg: var(--color-mint-green, #47b27a); --sample-certificate-cta-v1-illu: var(--color-light-green, #8acbc1); }
.block-sample-certificate-cta-v1[data-preset="mint-corn"] { --sample-certificate-cta-v1-bg: var(--color-mint-green, #47b27a); --sample-certificate-cta-v1-illu: var(--color-corn-green, #94c24a); }
.block-sample-certificate-cta-v1[data-preset="light-mint"] { --sample-certificate-cta-v1-bg: var(--color-light-green, #8acbc1); --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a); }
.block-sample-certificate-cta-v1[data-preset="light-blue"] { --sample-certificate-cta-v1-bg: var(--color-light-green, #8acbc1); --sample-certificate-cta-v1-illu: var(--color-blue, #477ec0); }
.block-sample-certificate-cta-v1[data-preset="light-red"] { --sample-certificate-cta-v1-bg: var(--color-light-green, #8acbc1); --sample-certificate-cta-v1-illu: var(--color-red, #e52322); }
.block-sample-certificate-cta-v1[data-preset="yellow-mint"] { --sample-certificate-cta-v1-bg: var(--color-yellow-green, #e6ce00); --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a); }
.block-sample-certificate-cta-v1[data-preset="yellow-blue"] { --sample-certificate-cta-v1-bg: var(--color-yellow-green, #e6ce00); --sample-certificate-cta-v1-illu: var(--color-blue, #477ec0); }
.block-sample-certificate-cta-v1[data-preset="corn-mint"] { --sample-certificate-cta-v1-bg: var(--color-corn-green, #94c24a); --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a); }
.block-sample-certificate-cta-v1[data-preset="corn-red"] { --sample-certificate-cta-v1-bg: var(--color-corn-green, #94c24a); --sample-certificate-cta-v1-illu: var(--color-red, #e52322); }

.block-sample-certificate-cta-v1[data-preset="mint-yellow"],
.block-sample-certificate-cta-v1[data-preset="mint-light"],
.block-sample-certificate-cta-v1[data-preset="mint-corn"],
.block-sample-certificate-cta-v1[data-preset="light-mint"],
.block-sample-certificate-cta-v1[data-preset="light-blue"],
.block-sample-certificate-cta-v1[data-preset="light-red"],
.block-sample-certificate-cta-v1[data-preset="yellow-mint"],
.block-sample-certificate-cta-v1[data-preset="yellow-blue"],
.block-sample-certificate-cta-v1[data-preset="corn-mint"],
.block-sample-certificate-cta-v1[data-preset="corn-red"] {
  --sample-certificate-cta-v1-foreground: var(--color-black, #333333);
  --sample-certificate-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus: var(--color-black, #333333);
  --sample-certificate-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--sample-certificate-cta-v1-illu);
  pointer-events: none;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity: 0.2;
  fill: currentColor;
  transform: translate(20%, 20%);
  shape-rendering: geometricPrecision;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__copy {
  position: relative;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__heading {
  margin: 0 0 24px;
  color: var(--sample-certificate-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body {
  margin: 0;
  color: var(--sample-certificate-cta-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__heading p,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body p {
  margin: 0;
  color: inherit;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body p + p {
  margin-top: 12px;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body ul,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body ol {
  margin: 12px 0 0;
  padding-left: 1.25em;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__heading :is(strong, b, a),
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body :is(strong, b, a) {
  color: var(--sample-certificate-cta-v1-foreground);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__heading a,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__body a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  margin-top: 32px;
  padding: 12px 24px;
  border: 1px solid var(--sample-certificate-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--sample-certificate-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:hover,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:focus-visible,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:focus {
  border-color: var(--sample-certificate-cta-v1-foreground);
  background-color: var(--sample-certificate-cta-v1-foreground);
  color: var(--sample-certificate-cta-v1-foreground-inverse);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:focus-visible,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:focus {
  outline: 3px solid var(--sample-certificate-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--sample-certificate-cta-v1-focus-shadow);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:hover .sample-certificate-cta-v1__button-icon {
  transform: translateX(3px);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__media-column {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__figure {
  display: flex;
  width: 100%;
  min-width: 0;
  margin: 0;
  flex-direction: column;
  align-items: center;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-shell {
  position: relative;
  width: min(calc(100vw - 48px), 380px);
  max-width: 100%;
  aspect-ratio: 210 / 297;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-shell.sample-certificate-cta-v1__certificate-shell--intrinsic {
  aspect-ratio: auto;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet {
  position: absolute;
  inset: 6px;
  display: block;
  padding: 10px;
  overflow: hidden;
  border: 1px solid rgba(51, 51, 51, 0.12);
  border-radius: 3px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.16);
  pointer-events: none;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--rear {
  z-index: 0;
  transform: translate(-14px, 14px) rotate(-1.7deg);
  transform-origin: 44% 88%;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--front {
  z-index: 1;
  transform: translate(-6px, 9px) rotate(-0.55deg);
  transform-origin: 58% 94%;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-media {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 2px;
  background: rgba(51, 51, 51, 0.08);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: blur(10px);
  opacity: 0.62;
  transform: scale(1.08);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--rear .sample-certificate-cta-v1__backing-image {
  filter: blur(12px);
  opacity: 0.48;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__placeholder {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(51, 51, 51, 0.16);
  border-radius: 3px;
  box-sizing: border-box;
  background: var(--color-white, #ffffff);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.24), 0 5px 14px rgba(0, 0, 0, 0.16);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger {
  appearance: none;
  padding: 10px;
  color: var(--color-white, #ffffff);
  cursor: zoom-in;
  transform: rotate(5deg);
  transform-origin: center center;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-shell--intrinsic .sample-certificate-cta-v1__certificate-trigger {
  height: auto;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger:hover {
  box-shadow: 0 34px 78px rgba(0, 0, 0, 0.28), 0 7px 18px rgba(0, 0, 0, 0.18);
  transform: translateY(-4px) rotate(5deg);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger:focus-visible {
  outline: 3px solid var(--sample-certificate-cta-v1-focus);
  outline-offset: 5px;
  box-shadow: 0 0 0 7px var(--sample-certificate-cta-v1-focus-shadow), 0 28px 70px rgba(0, 0, 0, 0.24);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger:focus:not(:focus-visible) {
  outline: none;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__image {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  object-fit: contain;
  object-position: center;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-shell--intrinsic .sample-certificate-cta-v1__image {
  height: auto;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__zoom-icon {
  position: absolute;
  right: 18px;
  bottom: 18px;
  display: flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.64);
  color: var(--color-white, #ffffff);
  transition: background-color 0.16s ease, transform 0.16s ease;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger:hover .sample-certificate-cta-v1__zoom-icon {
  background: rgba(0, 0, 0, 0.78);
  transform: scale(1.04);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-style: dashed;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 20px 52px rgba(0, 0, 0, 0.18);
  color: rgba(51, 51, 51, 0.42);
}

/* Fullscreen certificate viewer */

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox {
  position: fixed;
  inset: 0;
  z-index: 9990;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 64px 20px 20px;
  box-sizing: border-box;
  overscroll-behavior: contain;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox.sample-certificate-cta-v1__lightbox--open {
  display: flex;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: sample-certificate-cta-v1-lightbox-fade 0.2s ease;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-content {
  position: relative;
  z-index: 1;
  display: flex;
  max-width: calc(100vw - 40px);
  max-height: calc(100vh - 84px);
  align-items: center;
  justify-content: center;
  animation: sample-certificate-cta-v1-lightbox-rise 0.2s ease;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-image {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: calc(100vh - 84px);
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 3px;
  box-sizing: border-box;
  background: var(--color-white, #ffffff);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.42);
  object-fit: contain;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-close {
  position: absolute;
  top: -48px;
  right: 0;
  display: flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-white, #ffffff);
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-close:hover {
  background: rgba(255, 255, 255, 0.22);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-close:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

@keyframes sample-certificate-cta-v1-lightbox-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes sample-certificate-cta-v1-lightbox-rise {
  from { opacity: 0; transform: scale(0.97); }
  to { opacity: 1; transform: scale(1); }
}

@media (min-width: 768px) {
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__content {
    padding: 64px 48px;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__media-column {
    padding: 0 48px 64px;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-shell {
    width: min(56vw, 430px);
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--rear {
    transform: translate(-20px, 16px) rotate(-2deg);
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--front {
    transform: translate(-9px, 10px) rotate(-0.7deg);
  }
}

@media (min-width: 1024px) {
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__content {
    grid-column: 1 / 5;
    min-height: 0;
    padding: 80px 0;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-shell {
    width: clamp(330px, 35vw, 460px);
    transform: translateX(4%) rotate(-0.35deg);
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--rear {
    transform: translate(-26px, 18px) rotate(-2.2deg);
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__backing-sheet--front {
    transform: translate(-11px, 11px) rotate(-0.8deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button,
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button-icon,
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger,
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__zoom-icon,
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-close {
    transition: none;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger:hover {
    transform: rotate(5deg);
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__certificate-trigger:hover .sample-certificate-cta-v1__zoom-icon {
    transform: none;
  }

  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-backdrop,
  .block-sample-certificate-cta-v1 .sample-certificate-cta-v1__lightbox-content {
    animation: none;
  }
}
/* ── Simple CTA (block-simple-cta-v1) ─────────────────────── */

.block-simple-cta-v1 {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-mint-green, #47B27A);
  --simple-cta-v1-foreground: var(--color-white, #FFFFFF);
  --simple-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --simple-cta-v1-focus: var(--color-mint-green, #47B27A);
  --simple-cta-v1-focus-shadow: rgba(71, 178, 122, 0.4);
  position: relative;
  background-color: var(--simple-cta-v1-bg);
  overflow: hidden;
  min-height: 400px;
  display: flex;
  align-items: center;
}

/* Decorative illustration */
.block-simple-cta-v1 .cta-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  color: var(--simple-cta-v1-illu);
}

.block-simple-cta-v1 .cta-bg-svg {
  position: absolute;
  height: 653%;
  width: auto;
  top: -310%;
  left: 50%;
  transform: translateX(-50%) rotate(57.787deg);
  opacity: 0.2;
  fill: currentColor;
}

/* ── Presets ──────────────────────────────────────────────── */
/* Default = forest-mint (no data-preset or explicit value) */
.block-simple-cta-v1,
.block-simple-cta-v1[data-preset="forest-mint"] {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-simple-cta-v1[data-preset="forest-light"] { --simple-cta-v1-illu: var(--color-light-green, #8ACBC1); }
.block-simple-cta-v1[data-preset="forest-yellow"] { --simple-cta-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-simple-cta-v1[data-preset="forest-blue"] { --simple-cta-v1-illu: var(--color-blue, #477EC0); }
.block-simple-cta-v1[data-preset="moss-mint"] { --simple-cta-v1-bg: var(--color-moss-green, #13735F); }
.block-simple-cta-v1[data-preset="moss-blue"] { --simple-cta-v1-bg: var(--color-moss-green, #13735F); --simple-cta-v1-illu: var(--color-blue, #477EC0); }
.block-simple-cta-v1[data-preset="moss-red"] { --simple-cta-v1-bg: var(--color-moss-green, #13735F); --simple-cta-v1-illu: var(--color-red, #E52322); }
.block-simple-cta-v1[data-preset="darkred-mint"] { --simple-cta-v1-bg: var(--color-dark-red, #861135); --simple-cta-v1-foreground-inverse: var(--color-dark-red, #861135); }
.block-simple-cta-v1[data-preset="darkred-corn"] { --simple-cta-v1-bg: var(--color-dark-red, #861135); --simple-cta-v1-illu: var(--color-corn-green, #94C24A); --simple-cta-v1-foreground-inverse: var(--color-dark-red, #861135); }
.block-simple-cta-v1[data-preset="darkred-blue"] { --simple-cta-v1-bg: var(--color-dark-red, #861135); --simple-cta-v1-illu: var(--color-blue, #477EC0); --simple-cta-v1-foreground-inverse: var(--color-dark-red, #861135); }

.block-simple-cta-v1[data-preset="mint-yellow"] { --simple-cta-v1-bg: var(--color-mint-green, #47B27A); --simple-cta-v1-illu: var(--color-yellow-green, #E6CE00); }
.block-simple-cta-v1[data-preset="mint-light"] { --simple-cta-v1-bg: var(--color-mint-green, #47B27A); --simple-cta-v1-illu: var(--color-light-green, #8ACBC1); }
.block-simple-cta-v1[data-preset="mint-corn"] { --simple-cta-v1-bg: var(--color-mint-green, #47B27A); --simple-cta-v1-illu: var(--color-corn-green, #94C24A); }
.block-simple-cta-v1[data-preset="light-mint"] { --simple-cta-v1-bg: var(--color-light-green, #8ACBC1); --simple-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-simple-cta-v1[data-preset="light-blue"] { --simple-cta-v1-bg: var(--color-light-green, #8ACBC1); --simple-cta-v1-illu: var(--color-blue, #477EC0); }
.block-simple-cta-v1[data-preset="light-red"] { --simple-cta-v1-bg: var(--color-light-green, #8ACBC1); --simple-cta-v1-illu: var(--color-red, #E52322); }
.block-simple-cta-v1[data-preset="yellow-mint"] { --simple-cta-v1-bg: var(--color-yellow-green, #E6CE00); --simple-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-simple-cta-v1[data-preset="yellow-blue"] { --simple-cta-v1-bg: var(--color-yellow-green, #E6CE00); --simple-cta-v1-illu: var(--color-blue, #477EC0); }
.block-simple-cta-v1[data-preset="corn-mint"] { --simple-cta-v1-bg: var(--color-corn-green, #94C24A); --simple-cta-v1-illu: var(--color-mint-green, #47B27A); }
.block-simple-cta-v1[data-preset="corn-red"] { --simple-cta-v1-bg: var(--color-corn-green, #94C24A); --simple-cta-v1-illu: var(--color-red, #E52322); }

.block-simple-cta-v1[data-preset="mint-yellow"],
.block-simple-cta-v1[data-preset="mint-light"],
.block-simple-cta-v1[data-preset="mint-corn"],
.block-simple-cta-v1[data-preset="light-mint"],
.block-simple-cta-v1[data-preset="light-blue"],
.block-simple-cta-v1[data-preset="light-red"],
.block-simple-cta-v1[data-preset="yellow-mint"],
.block-simple-cta-v1[data-preset="yellow-blue"],
.block-simple-cta-v1[data-preset="corn-mint"],
.block-simple-cta-v1[data-preset="corn-red"] {
  --simple-cta-v1-foreground: var(--color-black, #333333);
  --simple-cta-v1-foreground-inverse: var(--color-white, #FFFFFF);
  --simple-cta-v1-focus: var(--color-black, #333333);
  --simple-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Inner layout */
.block-simple-cta-v1 .cta-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/* Keep inline content on the preset-owned accessible foreground. */
.block-simple-cta-v1 strong,
.block-simple-cta-v1 b,
.block-simple-cta-v1 a:not([class]) {
  color: var(--simple-cta-v1-foreground);
}

/* Richtext links use class .lexkit-link — not matched by a:not([class]), so override separately */
.block-simple-cta-v1 .cta-body a,
.block-simple-cta-v1 .cta-heading a {
  color: var(--simple-cta-v1-foreground);
  text-decoration: underline;
  font-weight: inherit;
}

.block-simple-cta-v1 .cta-body p {
  margin: 0 0 12px;
}
.block-simple-cta-v1 .cta-body p:last-child {
  margin-bottom: 0;
}

/* Heading */
.block-simple-cta-v1 .cta-heading {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.1;
  color: var(--simple-cta-v1-foreground);
  margin: 0;
  overflow-wrap: anywhere;
}

/* Body text */
.block-simple-cta-v1 .cta-body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  color: var(--simple-cta-v1-foreground);
  margin: 0 0 24px;
  overflow-wrap: anywhere;
}

/* CTA button */
.block-simple-cta-v1 .cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 24px;
  border: 1px solid var(--simple-cta-v1-foreground);
  border-radius: 4rem;
  color: var(--simple-cta-v1-foreground);
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1em;
  text-decoration: none;
  transition: 0.16s ease-in-out all;
}

.block-simple-cta-v1 .cta-btn:hover,
.block-simple-cta-v1 .cta-btn:focus-visible,
.block-simple-cta-v1 .cta-btn:focus {
  background-color: var(--simple-cta-v1-foreground);
  color: var(--simple-cta-v1-foreground-inverse);
  border-color: var(--simple-cta-v1-foreground);
}

.block-simple-cta-v1 .cta-btn:focus-visible,
.block-simple-cta-v1 .cta-btn:focus {
  outline: 3px solid var(--simple-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--simple-cta-v1-focus-shadow);
}

.block-simple-cta-v1 .cta-btn:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-simple-cta-v1 .cta-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-simple-cta-v1 .cta-btn:hover .cta-btn-icon {
  transform: translateX(3px);
}

/* Tablet */
@media (min-width: 768px) {
  .block-simple-cta-v1 .cta-inner {
    padding: 64px 48px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-simple-cta-v1 .cta-inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    padding: 80px;
    gap: 0 32px;
  }
  .block-simple-cta-v1 .cta-left {
    grid-column: 1 / 6;
    min-width: 0;
    align-self: flex-start;
  }
  .block-simple-cta-v1 .cta-right {
    grid-column: 7 / -1;
    min-width: 0;
  }
}
/* Single Card Donation CTA (block-single-card-donation-cta-v1) */

.block-single-card-donation-cta-v1 {
  --single-card-donation-cta-v1-bg: var(--color-white, #ffffff);
  --single-card-donation-cta-v1-card-bg: var(--color-light-grey, #f7f7f7);
  background: var(--single-card-donation-cta-v1-bg);
  color: var(--color-black, #333333);
}

.block-single-card-donation-cta-v1[data-background-color='#FFFFFF'] {
  --single-card-donation-cta-v1-bg: var(--color-white, #ffffff);
  --single-card-donation-cta-v1-card-bg: var(--color-light-grey, #f7f7f7);
}

.block-single-card-donation-cta-v1[data-background-color='#F7F7F7'] {
  --single-card-donation-cta-v1-bg: var(--color-light-grey, #f7f7f7);
  --single-card-donation-cta-v1-card-bg: var(--color-white, #ffffff);
}

.dark .block-single-card-donation-cta-v1 {
  --single-card-donation-cta-v1-bg: var(--color-bg-dark, #0f1a14);
  --single-card-donation-cta-v1-card-bg: var(--color-surface-dark, #1a2920);
  color: var(--color-text-dark, #f0f4f2);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__inner {
  display: flex;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 48px;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__copy {
  width: 100%;
  min-width: 0;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__headline p,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card-title p,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body {
  margin-top: 32px;
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body {
  color: var(--color-text-dark, #f0f4f2);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body p {
  margin: 0 0 16px;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body p:last-child {
  margin-bottom: 0;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body ul,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body ol {
  margin: 0 0 16px;
  padding-left: 1.4em;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body li {
  margin-bottom: 8px;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body strong,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body b {
  font-weight: 700;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body a {
  color: var(--color-moss-green, #13735f);
  font-weight: 600;
  text-decoration: underline;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body a:hover {
  text-decoration: none;
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__body a {
  color: var(--color-accent-dark, #47b27a);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card {
  display: flex;
  width: 100%;
  max-width: 360px;
  min-width: 0;
  overflow: hidden;
  flex-direction: column;
  border: 0;
  border-radius: 16px;
  background: var(--single-card-donation-cta-v1-card-bg);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__image,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__image {
  object-fit: cover;
  object-position: center;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.14)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card-content {
  display: flex;
  padding: 24px;
  flex-direction: column;
  align-items: flex-start;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card-title {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card-title {
  color: var(--color-accent-dark, #47b27a);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta {
  display: inline-flex;
  min-height: 48px;
  margin-top: 24px;
  padding: 0 24px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:hover,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.dark .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:hover .single-card-donation-cta-v1__cta-icon,
.block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:focus-visible .single-card-donation-cta-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__inner {
    padding: 64px 48px;
  }

  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card-content {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 64px 80px;
    align-items: start;
    column-gap: 32px;
  }

  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__copy {
    grid-column: 5 / -1;
    grid-row: 1;
    align-self: center;
  }

  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__card {
    grid-column: 1 / 5;
    grid-row: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta,
  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta-icon {
    transition: none !important;
  }

  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:hover .single-card-donation-cta-v1__cta-icon,
  .block-single-card-donation-cta-v1 .single-card-donation-cta-v1__cta:focus-visible .single-card-donation-cta-v1__cta-icon {
    transform: none !important;
  }
}
/* ── Social Sharing v1 ────────────────────────────────────────── */
.block-social-sharing-v1 {
  background: var(--color-white, #FFFFFF);
}
.dark .block-social-sharing-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-social-sharing-v1 .ss-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 40px 24px;
}

.block-social-sharing-v1 .ss-row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 24px 0;
  border-top: 1px solid var(--color-grey-20, #DCDCDC);
  border-bottom: 1px solid var(--color-grey-20, #DCDCDC);
}
.dark .block-social-sharing-v1 .ss-row {
  border-color: rgba(255, 255, 255, 0.1);
}

.block-social-sharing-v1 .ss-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 700;
  color: var(--color-black, #333333);
  margin: 0;
}
.dark .block-social-sharing-v1 .ss-title {
  color: var(--color-text-dark, #f0f4f2);
}

.block-social-sharing-v1 .ss-buttons {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.block-social-sharing-v1 .ss-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--color-moss-green, #13735F);
  background: var(--color-white, #FFFFFF);
  color: var(--color-moss-green, #13735F);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  outline: none;
}
.block-social-sharing-v1 .ss-btn:hover,
.block-social-sharing-v1 .ss-btn:focus-visible {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}
.block-social-sharing-v1 .ss-btn:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 2px;
}
.dark .block-social-sharing-v1 .ss-btn {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.5);
}
.dark .block-social-sharing-v1 .ss-btn:hover,
.dark .block-social-sharing-v1 .ss-btn:focus-visible {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}
.block-social-sharing-v1 .ss-copy-btn.ss-copied {
  background: var(--color-mint-green, #47B27A);
  border-color: var(--color-mint-green, #47B27A);
  color: var(--color-forest-green, #004432);
}
.dark .block-social-sharing-v1 .ss-copy-btn.ss-copied {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}

@media (max-width: 767px) {
  .block-social-sharing-v1 .ss-inner {
    padding: 24px 24px;
  }
}
/* Standard Picture Gallery (block-standard-picture-gallery-v1) */

.block-standard-picture-gallery-v1 {
  --standard-picture-gallery-v1-bg: var(--color-white, #ffffff);
  --standard-picture-gallery-v1-slide-width: calc(100vw - 48px);
  --standard-picture-gallery-v1-track-gap: 24px;
  --standard-picture-gallery-v1-track-gutter: 24px;
  background: var(--standard-picture-gallery-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
  padding: 64px 0;
}

.block-standard-picture-gallery-v1[data-background-color="#FFFFFF"] {
  --standard-picture-gallery-v1-bg: var(--color-white, #ffffff);
}

.block-standard-picture-gallery-v1[data-background-color="#F7F7F7"] {
  --standard-picture-gallery-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-standard-picture-gallery-v1 {
  --standard-picture-gallery-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__header {
  display: grid;
  gap: 24px;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline p,
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro p,
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption p {
  margin: 0;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro p + p {
  margin-top: 12px;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--standard-picture-gallery-v1-track-gap);
  margin: 0;
  padding: 16px 0 0 var(--standard-picture-gallery-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--standard-picture-gallery-v1-track-gutter) - var(--standard-picture-gallery-v1-track-gap)));
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__track::-webkit-scrollbar {
  display: none;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__slide {
  flex: 0 0 var(--standard-picture-gallery-v1-slide-width);
  min-width: 0;
  scroll-snap-align: center;
  transform-origin: center center;
}

.block-standard-picture-gallery-v1.spg-js-ready .standard-picture-gallery-v1__slide {
  will-change: transform;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  -webkit-backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.block-standard-picture-gallery-v1.spg-js-ready .standard-picture-gallery-v1__slide:not(.spg-active) .standard-picture-gallery-v1__media::after {
  opacity: 1;
}

/* Blurred background shown only for portrait pictures */
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__background {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media.spg-portrait .standard-picture-gallery-v1__background {
  display: block;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__image,
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__image {
  position: relative;
  z-index: 1;
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media.spg-portrait .standard-picture-gallery-v1__image {
  object-fit: contain;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption {
  max-width: 760px;
  margin-top: 24px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption p + p {
  margin-top: 12px;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-standard-picture-gallery-v1.spg-js-ready .standard-picture-gallery-v1__slide:not(.spg-active) .standard-picture-gallery-v1__caption {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: var(--standard-picture-gallery-v1-slide-width);
  margin: 20px auto 0;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  height: 40px;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress-fill {
  position: relative;
  flex: 1;
  min-width: 0;
  height: 4px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--spg-p, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.52);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:hover:not(:disabled) {
  background: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.78);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-standard-picture-gallery-v1 {
    --standard-picture-gallery-v1-slide-width: calc(100vw - 96px);
    --standard-picture-gallery-v1-track-gap: 32px;
    --standard-picture-gallery-v1-track-gutter: 48px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__inner {
    padding: 0 48px 32px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption {
    margin-top: 28px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress {
    flex: none;
    width: 220px;
  }
}

@media (min-width: 1024px) {
  .block-standard-picture-gallery-v1 {
    --standard-picture-gallery-v1-slide-width: min(960px, calc(100vw - 160px));
    --standard-picture-gallery-v1-track-gutter: max(80px, calc(50vw - 480px));
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__inner {
    padding: 0 80px 32px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro {
    grid-column: 7 / span 6;
  }

}

@media (prefers-reduced-motion: reduce) {
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media::after,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__background,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__image,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__progress-fill::after,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn {
    transition: none !important;
  }
}
/* Standard Picture (block-standard-picture-v1) */

.block-standard-picture-v1 {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
  --standard-picture-v1-foreground: var(--color-white, #ffffff);
  --standard-picture-v1-foreground-inverse: var(--color-forest-green, #004432);
  --standard-picture-v1-focus: var(--color-white, #ffffff);
  --standard-picture-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--standard-picture-v1-bg);
  color: var(--standard-picture-v1-foreground);
}

.block-standard-picture-v1,
.block-standard-picture-v1[data-preset="forest-mint"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-picture-v1[data-preset="forest-light"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-light-green, #8acbc1);
}

.block-standard-picture-v1[data-preset="forest-yellow"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-standard-picture-v1[data-preset="forest-blue"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-blue, #477ec0);
}

.block-standard-picture-v1[data-preset="moss-mint"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-picture-v1[data-preset="moss-blue"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: var(--color-blue, #477ec0);
}

.block-standard-picture-v1[data-preset="moss-red"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: var(--color-red, #e52322);
}

.block-standard-picture-v1[data-preset="darkred-mint"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
  --standard-picture-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-standard-picture-v1[data-preset="darkred-corn"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: var(--color-corn-green, #94c24a);
  --standard-picture-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-standard-picture-v1[data-preset="darkred-blue"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: var(--color-blue, #477ec0);
  --standard-picture-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-standard-picture-v1[data-preset="mint-yellow"] { --standard-picture-v1-bg: var(--color-mint-green, #47b27a); --standard-picture-v1-illu: var(--color-yellow-green, #e6ce00); }
.block-standard-picture-v1[data-preset="mint-light"] { --standard-picture-v1-bg: var(--color-mint-green, #47b27a); --standard-picture-v1-illu: var(--color-light-green, #8acbc1); }
.block-standard-picture-v1[data-preset="mint-corn"] { --standard-picture-v1-bg: var(--color-mint-green, #47b27a); --standard-picture-v1-illu: var(--color-corn-green, #94c24a); }
.block-standard-picture-v1[data-preset="light-mint"] { --standard-picture-v1-bg: var(--color-light-green, #8acbc1); --standard-picture-v1-illu: var(--color-mint-green, #47b27a); }
.block-standard-picture-v1[data-preset="light-blue"] { --standard-picture-v1-bg: var(--color-light-green, #8acbc1); --standard-picture-v1-illu: var(--color-blue, #477ec0); }
.block-standard-picture-v1[data-preset="light-red"] { --standard-picture-v1-bg: var(--color-light-green, #8acbc1); --standard-picture-v1-illu: var(--color-red, #e52322); }
.block-standard-picture-v1[data-preset="yellow-mint"] { --standard-picture-v1-bg: var(--color-yellow-green, #e6ce00); --standard-picture-v1-illu: var(--color-mint-green, #47b27a); }
.block-standard-picture-v1[data-preset="yellow-blue"] { --standard-picture-v1-bg: var(--color-yellow-green, #e6ce00); --standard-picture-v1-illu: var(--color-blue, #477ec0); }
.block-standard-picture-v1[data-preset="corn-mint"] { --standard-picture-v1-bg: var(--color-corn-green, #94c24a); --standard-picture-v1-illu: var(--color-mint-green, #47b27a); }
.block-standard-picture-v1[data-preset="corn-red"] { --standard-picture-v1-bg: var(--color-corn-green, #94c24a); --standard-picture-v1-illu: var(--color-red, #e52322); }

.block-standard-picture-v1[data-preset="mint-yellow"],
.block-standard-picture-v1[data-preset="mint-light"],
.block-standard-picture-v1[data-preset="mint-corn"],
.block-standard-picture-v1[data-preset="light-mint"],
.block-standard-picture-v1[data-preset="light-blue"],
.block-standard-picture-v1[data-preset="light-red"],
.block-standard-picture-v1[data-preset="yellow-mint"],
.block-standard-picture-v1[data-preset="yellow-blue"],
.block-standard-picture-v1[data-preset="corn-mint"],
.block-standard-picture-v1[data-preset="corn-red"] {
  --standard-picture-v1-foreground: var(--color-black, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-black, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-standard-picture-v1 .standard-picture-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--standard-picture-v1-illu);
  pointer-events: none;
}

.block-standard-picture-v1 .standard-picture-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity: 0.2;
  fill: currentColor;
  transform: translate(20%, 20%);
  shape-rendering: geometricPrecision;
}

.block-standard-picture-v1 .standard-picture-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-standard-picture-v1 .standard-picture-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-standard-picture-v1 .standard-picture-v1__copy {
  position: relative;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-standard-picture-v1 .standard-picture-v1__heading {
  margin: 0 0 16px;
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-standard-picture-v1 .standard-picture-v1__subheadline {
  margin: 0 0 24px;
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.block-standard-picture-v1 .standard-picture-v1__divider {
  width: 100%;
  height: 1px;
  margin: 0 0 24px;
  background: currentColor;
  color: var(--standard-picture-v1-foreground);
  opacity: 0.4;
}

.block-standard-picture-v1 .standard-picture-v1__body,
.block-standard-picture-v1 .standard-picture-v1__caption {
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-standard-picture-v1 .standard-picture-v1__body {
  margin: 0;
}

.block-standard-picture-v1 .standard-picture-v1__heading p,
.block-standard-picture-v1 .standard-picture-v1__subheadline p,
.block-standard-picture-v1 .standard-picture-v1__body p,
.block-standard-picture-v1 .standard-picture-v1__caption p {
  margin: 0;
  color: inherit;
}

.block-standard-picture-v1 .standard-picture-v1__body p + p,
.block-standard-picture-v1 .standard-picture-v1__caption p + p {
  margin-top: 12px;
}

.block-standard-picture-v1 .standard-picture-v1__body ul,
.block-standard-picture-v1 .standard-picture-v1__body ol,
.block-standard-picture-v1 .standard-picture-v1__caption ul,
.block-standard-picture-v1 .standard-picture-v1__caption ol {
  margin: 12px 0 0;
  padding-left: 1.25em;
}

.block-standard-picture-v1 .standard-picture-v1__heading :is(strong, b, a),
.block-standard-picture-v1 .standard-picture-v1__subheadline :is(strong, b, a),
.block-standard-picture-v1 .standard-picture-v1__body :is(strong, b, a),
.block-standard-picture-v1 .standard-picture-v1__caption :is(strong, b, a) {
  color: var(--standard-picture-v1-foreground);
}

.block-standard-picture-v1 .standard-picture-v1__heading a,
.block-standard-picture-v1 .standard-picture-v1__subheadline a,
.block-standard-picture-v1 .standard-picture-v1__body a,
.block-standard-picture-v1 .standard-picture-v1__caption a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-standard-picture-v1 .standard-picture-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  margin-top: 32px;
  padding: 12px 24px;
  border: 1px solid var(--standard-picture-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-standard-picture-v1 .standard-picture-v1__button:hover,
.block-standard-picture-v1 .standard-picture-v1__button:focus-visible,
.block-standard-picture-v1 .standard-picture-v1__button:focus {
  border-color: var(--standard-picture-v1-foreground);
  background-color: var(--standard-picture-v1-foreground);
  color: var(--standard-picture-v1-foreground-inverse);
}

.block-standard-picture-v1 .standard-picture-v1__button:focus-visible,
.block-standard-picture-v1 .standard-picture-v1__button:focus {
  outline: 3px solid var(--standard-picture-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--standard-picture-v1-focus-shadow);
}

.block-standard-picture-v1 .standard-picture-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-standard-picture-v1 .standard-picture-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-standard-picture-v1 .standard-picture-v1__button:hover .standard-picture-v1__button-icon {
  transform: translateX(3px);
}

.block-standard-picture-v1 .standard-picture-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-standard-picture-v1 .standard-picture-v1__figure {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.block-standard-picture-v1 .standard-picture-v1__media,
.block-standard-picture-v1 .standard-picture-v1__placeholder {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.12);
}

.block-standard-picture-v1 .standard-picture-v1__media-background,
.block-standard-picture-v1 .standard-picture-v1__image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-standard-picture-v1 .standard-picture-v1__media-background {
  display: none;
  z-index: 0;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}

.block-standard-picture-v1 .standard-picture-v1__media.standard-picture-v1__media--portrait .standard-picture-v1__media-background {
  display: block;
}

.block-standard-picture-v1 .standard-picture-v1__image {
  z-index: 1;
  object-fit: cover;
  object-position: center;
}

.block-standard-picture-v1 .standard-picture-v1__media.standard-picture-v1__media--portrait .standard-picture-v1__image {
  object-fit: contain;
}

.block-standard-picture-v1 .standard-picture-v1__caption {
  margin-top: 12px;
}

@media (min-width: 768px) {
  .block-standard-picture-v1 .standard-picture-v1__content {
    padding: 64px 48px;
  }

  .block-standard-picture-v1 .standard-picture-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-standard-picture-v1 .standard-picture-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-standard-picture-v1 .standard-picture-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-standard-picture-v1 .standard-picture-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-standard-picture-v1 .standard-picture-v1__button,
  .block-standard-picture-v1 .standard-picture-v1__button-icon {
    transition: none;
  }
}
/* Standard Video (block-standard-video-v1) */

.block-standard-video-v1 {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-mint-green, #47b27a);
  --standard-video-v1-foreground: var(--color-white, #ffffff);
  --standard-video-v1-foreground-inverse: var(--color-forest-green, #004432);
  --standard-video-v1-focus: var(--color-white, #ffffff);
  --standard-video-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--standard-video-v1-bg);
  color: var(--standard-video-v1-foreground);
}

.block-standard-video-v1,
.block-standard-video-v1[data-preset="forest-mint"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-video-v1[data-preset="forest-light"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-light-green, #8acbc1);
}

.block-standard-video-v1[data-preset="forest-yellow"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-standard-video-v1[data-preset="forest-blue"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-blue, #477ec0);
}

.block-standard-video-v1[data-preset="moss-mint"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735f);
  --standard-video-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-video-v1[data-preset="moss-blue"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735f);
  --standard-video-v1-illu: var(--color-blue, #477ec0);
}

.block-standard-video-v1[data-preset="moss-red"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735f);
  --standard-video-v1-illu: var(--color-red, #e52322);
}

.block-standard-video-v1[data-preset="darkred-mint"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
  --standard-video-v1-illu: var(--color-mint-green, #47b27a);
  --standard-video-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-standard-video-v1[data-preset="darkred-corn"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
  --standard-video-v1-illu: var(--color-corn-green, #94c24a);
  --standard-video-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-standard-video-v1[data-preset="darkred-blue"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
  --standard-video-v1-illu: var(--color-blue, #477ec0);
  --standard-video-v1-foreground-inverse: var(--color-dark-red, #861135);
}

.block-standard-video-v1[data-preset="mint-yellow"] { --standard-video-v1-bg: var(--color-mint-green, #47b27a); --standard-video-v1-illu: var(--color-yellow-green, #e6ce00); }
.block-standard-video-v1[data-preset="mint-light"] { --standard-video-v1-bg: var(--color-mint-green, #47b27a); --standard-video-v1-illu: var(--color-light-green, #8acbc1); }
.block-standard-video-v1[data-preset="mint-corn"] { --standard-video-v1-bg: var(--color-mint-green, #47b27a); --standard-video-v1-illu: var(--color-corn-green, #94c24a); }
.block-standard-video-v1[data-preset="light-mint"] { --standard-video-v1-bg: var(--color-light-green, #8acbc1); --standard-video-v1-illu: var(--color-mint-green, #47b27a); }
.block-standard-video-v1[data-preset="light-blue"] { --standard-video-v1-bg: var(--color-light-green, #8acbc1); --standard-video-v1-illu: var(--color-blue, #477ec0); }
.block-standard-video-v1[data-preset="light-red"] { --standard-video-v1-bg: var(--color-light-green, #8acbc1); --standard-video-v1-illu: var(--color-red, #e52322); }
.block-standard-video-v1[data-preset="yellow-mint"] { --standard-video-v1-bg: var(--color-yellow-green, #e6ce00); --standard-video-v1-illu: var(--color-mint-green, #47b27a); }
.block-standard-video-v1[data-preset="yellow-blue"] { --standard-video-v1-bg: var(--color-yellow-green, #e6ce00); --standard-video-v1-illu: var(--color-blue, #477ec0); }
.block-standard-video-v1[data-preset="corn-mint"] { --standard-video-v1-bg: var(--color-corn-green, #94c24a); --standard-video-v1-illu: var(--color-mint-green, #47b27a); }
.block-standard-video-v1[data-preset="corn-red"] { --standard-video-v1-bg: var(--color-corn-green, #94c24a); --standard-video-v1-illu: var(--color-red, #e52322); }

.block-standard-video-v1[data-preset="mint-yellow"],
.block-standard-video-v1[data-preset="mint-light"],
.block-standard-video-v1[data-preset="mint-corn"],
.block-standard-video-v1[data-preset="light-mint"],
.block-standard-video-v1[data-preset="light-blue"],
.block-standard-video-v1[data-preset="light-red"],
.block-standard-video-v1[data-preset="yellow-mint"],
.block-standard-video-v1[data-preset="yellow-blue"],
.block-standard-video-v1[data-preset="corn-mint"],
.block-standard-video-v1[data-preset="corn-red"] {
  --standard-video-v1-foreground: var(--color-black, #333333);
  --standard-video-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-video-v1-focus: var(--color-black, #333333);
  --standard-video-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-standard-video-v1 .standard-video-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--standard-video-v1-illu);
  pointer-events: none;
}

.block-standard-video-v1 .standard-video-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity: 0.2;
  fill: currentColor;
  transform: translate(20%, 20%);
  shape-rendering: geometricPrecision;
}

.block-standard-video-v1 .standard-video-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-standard-video-v1 .standard-video-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-standard-video-v1 .standard-video-v1__copy {
  position: relative;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-standard-video-v1 .standard-video-v1__heading {
  margin: 0 0 16px;
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-standard-video-v1 .standard-video-v1__subheadline {
  margin: 0 0 24px;
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.block-standard-video-v1 .standard-video-v1__divider {
  width: 100%;
  height: 1px;
  margin: 0 0 24px;
  background: currentColor;
  color: var(--standard-video-v1-foreground);
  opacity: 0.4;
}

.block-standard-video-v1 .standard-video-v1__body,
.block-standard-video-v1[data-video-player="v1"] .standard-video-v1__caption {
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-standard-video-v1 .standard-video-v1__body {
  margin: 0;
}

.block-standard-video-v1 .standard-video-v1__heading p,
.block-standard-video-v1 .standard-video-v1__subheadline p,
.block-standard-video-v1 .standard-video-v1__body p,
.block-standard-video-v1 .standard-video-v1__caption p {
  margin: 0;
  color: inherit;
}

.block-standard-video-v1 .standard-video-v1__body p + p,
.block-standard-video-v1 .standard-video-v1__caption p + p {
  margin-top: 12px;
}

.block-standard-video-v1 .standard-video-v1__body ul,
.block-standard-video-v1 .standard-video-v1__body ol,
.block-standard-video-v1 .standard-video-v1__caption ul,
.block-standard-video-v1 .standard-video-v1__caption ol {
  margin: 12px 0 0;
  padding-left: 1.25em;
}

.block-standard-video-v1 .standard-video-v1__heading :is(strong, b, a),
.block-standard-video-v1 .standard-video-v1__subheadline :is(strong, b, a),
.block-standard-video-v1 .standard-video-v1__body :is(strong, b, a),
.block-standard-video-v1 .standard-video-v1__caption :is(strong, b, a) {
  color: var(--standard-video-v1-foreground);
}

.block-standard-video-v1 .standard-video-v1__heading a,
.block-standard-video-v1 .standard-video-v1__subheadline a,
.block-standard-video-v1 .standard-video-v1__body a,
.block-standard-video-v1[data-video-player="v1"] .standard-video-v1__caption a {
  color: var(--standard-video-v1-foreground);
  font-weight: inherit;
  text-decoration: underline;
}

.block-standard-video-v1 .standard-video-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  margin-top: 32px;
  padding: 12px 24px;
  border: 1px solid var(--standard-video-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-standard-video-v1 .standard-video-v1__button:hover,
.block-standard-video-v1 .standard-video-v1__button:focus-visible,
.block-standard-video-v1 .standard-video-v1__button:focus {
  border-color: var(--standard-video-v1-foreground);
  background-color: var(--standard-video-v1-foreground);
  color: var(--standard-video-v1-foreground-inverse);
}

.block-standard-video-v1 .standard-video-v1__button:focus-visible,
.block-standard-video-v1 .standard-video-v1__button:focus {
  outline: 3px solid var(--standard-video-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--standard-video-v1-focus-shadow);
}

.block-standard-video-v1 .standard-video-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-standard-video-v1 .standard-video-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-standard-video-v1 .standard-video-v1__button:hover .standard-video-v1__button-icon {
  transform: translateX(3px);
}

.block-standard-video-v1 .standard-video-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-standard-video-v1 .standard-video-v1__figure {
  position: relative;
  width: 100%;
  min-width: 0;
  margin: 0;
}

.block-standard-video-v1 .sv-lights-btn {
  top: 8px;
  right: 8px;
}

.block-standard-video-v1[data-video-player="v1"] .standard-video-v1__caption {
  margin: 12px 0 0;
}

.block-standard-video-v1[data-video-player="v1"] .sv-consent-text {
  color: var(--color-white, #ffffff);
}

.block-standard-video-v1[data-video-player="v1"] .sv-revoke-btn {
  color: var(--standard-video-v1-foreground);
  opacity: 0.7;
}

.block-standard-video-v1[data-video-player="v1"] .sv-revoke-btn:hover {
  color: var(--standard-video-v1-foreground);
  opacity: 1;
}

.block-standard-video-v1[data-video-player="v1"] .sv-revoke-btn:focus-visible {
  outline-color: var(--standard-video-v1-focus);
}

/* Let the shared player escape the decorative stacking context in cinema mode. */
.block-standard-video-v1[data-lights="on"] {
  isolation: auto;
}

.block-standard-video-v1[data-lights="on"] .standard-video-v1__inner {
  z-index: auto;
}

@media (min-width: 768px) {
  .block-standard-video-v1 .standard-video-v1__content {
    padding: 64px 48px;
  }

  .block-standard-video-v1 .standard-video-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-standard-video-v1 .standard-video-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-standard-video-v1 .standard-video-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-standard-video-v1 .standard-video-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-standard-video-v1 .standard-video-v1__button,
  .block-standard-video-v1 .standard-video-v1__button-icon {
    transition: none;
  }
}
/* ─── Wilderness Stories Header (stories-header-v1) ──────────────────────── */

.block-stories-header-v1 {
  background: #000000;
  position: relative;
  overflow-x: clip;
  max-width: 100%;
}
.dark .block-stories-header-v1 {
  background: #000000;
  position: relative;
  overflow-x: clip;
  max-width: 100%;
}

.block-stories-header-v1 .sh-sticky-nav {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: color-mix(in srgb, var(--color-moss-green, #13735F) 60%, transparent);
  backdrop-filter: blur(24px) saturate(1.5);
  -webkit-backdrop-filter: blur(24px) saturate(1.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.block-stories-header-v1 .sh-sticky-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
  height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.block-stories-header-v1 .sh-sticky-logo {
  height: 16px;
  width: auto;
  flex-shrink: 0;
  display: block;
}

.block-stories-header-v1 .sh-sticky-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  flex: 1;
}

.block-stories-header-v1 .sh-search-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: none;
  padding: 0 4px;
  color: rgba(255, 255, 255, 0.65);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  cursor: pointer;
  transition: color 0.15s;
  flex-shrink: 0;
}
.block-stories-header-v1 .sh-search-toggle:hover {
  color: rgba(255, 255, 255, 0.95);
}
.block-stories-header-v1 .sh-search-toggle-label {
  display: inline;
}

.block-stories-header-v1 .sh-mega-panel {
  overflow: hidden;
  height: 0;
  opacity: 0;
  pointer-events: none;
  transition: height 0.32s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.22s ease;
}
.block-stories-header-v1 .sh-mega-panel.is-open {
  opacity: 1;
  pointer-events: auto;
}
.block-stories-header-v1 .sh-mega-content {
  max-width: 1440px;
  margin: 0 auto;
  padding: 16px 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.block-stories-header-v1 .sh-mega-row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
}

.block-stories-header-v1 .sh-mega-icon {
  color: rgba(255, 255, 255, 0.45);
  flex-shrink: 0;
}
.block-stories-header-v1 .sh-mega-input {
  background: none;
  border: none;
  outline: none;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  width: 100%;
}
.block-stories-header-v1 .sh-mega-input::placeholder {
  color: rgba(255, 255, 255, 0.4);
}
.block-stories-header-v1 .sh-mega-close {
  background: none;
  border: none;
  color: rgba(255, 255, 255, 0.45);
  cursor: pointer;
  padding: 4px;
  flex-shrink: 0;
  transition: color 0.15s;
}
.block-stories-header-v1 .sh-mega-close:hover {
  color: rgba(255, 255, 255, 0.9);
}
.block-stories-header-v1 .sh-mega-categories {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px;
  max-width: 640px;
  margin: 14px auto 0;
}
.block-stories-header-v1 .sh-mega-cat {
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 22px;
  padding: 5px 14px;
  color: rgba(255, 255, 255, 0.7);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.block-stories-header-v1 .sh-mega-cat:hover,
.block-stories-header-v1 .sh-mega-cat.is-active {
  background: rgba(255, 255, 255, 0.15);
  color: var(--color-white, #FFFFFF);
}

.block-stories-header-v1 .sh-inner {
  max-width: none;
  margin: 0;
  padding: 0;
}

.block-stories-header-v1 .sh-text {
  margin-bottom: 48px;
}

.block-stories-header-v1 .sh-heading {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--color-white, #FFFFFF);
  font-size: clamp(1.5rem, 3vw, 2rem);
}

.block-stories-header-v1 .sh-logo {
  height: 1em;
  width: auto;
  flex-shrink: 0;
  display: block;
}

.block-stories-header-v1 .sh-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1em;
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  line-height: 1.05;
  margin: 0;
}
.dark .block-stories-header-v1 .sh-title {
  color: var(--color-white, #FFFFFF);
}

.block-stories-header-v1 .sh-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.6;
  max-width: 680px;
}
.dark .block-stories-header-v1 .sh-desc {
  color: rgba(255, 255, 255, 0.6);
}

.block-stories-header-v1 .sh-card {
  display: block;
  position: relative;
  background: none;
}

.block-stories-header-v1 .sh-card-img-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.block-stories-header-v1 .sh-card-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  pointer-events: none;
  z-index: 1;
}
.block-stories-header-v1 .sh-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
  transition: opacity 1.4s ease, transform 0.4s ease;
}
.block-stories-header-v1 .sh-card-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.block-stories-header-v1.is-visible .sh-card-img {
  opacity: 1;
}
.block-stories-header-v1 .sh-card:hover .sh-card-img {
  transform: scale(1.04);
}
.block-stories-header-v1 .sh-card-title-link {
  text-decoration: none;
  color: inherit;
  display: block;
}
.block-stories-header-v1 .sh-card-title-link:hover .sh-card-title {
  opacity: 0.82;
}
.block-stories-header-v1 .sh-card-title-link:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.5);
  outline-offset: 4px;
  border-radius: 2px;
}

.block-stories-header-v1 .sh-card-read-more {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1rem;
  color: var(--color-white, #FFFFFF);
  text-decoration: none;
  transition: color 0.2s;
  cursor: pointer;
}
.block-stories-header-v1 .sh-card-read-more:hover {
  color: rgba(255, 255, 255, 0.5);
}
.block-stories-header-v1 .sh-card-read-more svg {
  transition: transform 0.2s;
  flex-shrink: 0;
}
.block-stories-header-v1 .sh-card-read-more:hover svg {
  transform: translateX(3px);
}
.block-stories-header-v1 .sh-card-read-more:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.4);
  outline-offset: 2px;
  border-radius: 2px;
}

.block-stories-header-v1 .sh-card-body {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  padding: 80px 0 32px;
  background: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.42) 38%, rgba(0,0,0,0.7) 68%);
  opacity: 0;
  transition: opacity 0.9s ease 0.6s;
}
.block-stories-header-v1.is-visible .sh-card-body {
  opacity: 1;
}
.block-stories-header-v1 .sh-card-body-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.block-stories-header-v1 .sh-card-category {
  display: none;
  align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 8px;
  padding: 4px 10px;
  line-height: 1.4;
}
.block-stories-header-v1 .sh-card-category:not(:empty) {
  display: inline-block;
}

.block-stories-header-v1 .sh-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.25rem, 2.5vw, 2rem);
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  line-height: 1.2;
  margin: 0;
}

.block-stories-header-v1 .sh-card-date {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.6);
}

/* Title row — full-width gradient at top of hero */
.block-stories-header-v1 .sh-card-top {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.55) 0%, transparent 100%);
  pointer-events: none;
}

.block-stories-header-v1 .sh-card-top-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 24px 24px 100px;
}

.block-stories-header-v1 .sh-card-heading {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.25rem, 2.2vw, 2rem);
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  line-height: 1;
  letter-spacing: -0.01em;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

@media (min-width: 768px) {
  .block-stories-header-v1 .sh-sticky-inner { padding: 0 48px; }
  .block-stories-header-v1 .sh-mega-content { padding: 16px 48px 20px; }
  .block-stories-header-v1 .sh-card-body { padding: 100px 0 40px; }
  .block-stories-header-v1 .sh-card-body-inner { padding: 0 48px; }
  .block-stories-header-v1 .sh-card-top-inner { padding: 32px 48px 120px; }
}

@media (min-width: 1024px) {
  .block-stories-header-v1 .sh-sticky-inner { padding: 0 80px; }
  .block-stories-header-v1 .sh-mega-content { padding: 16px 80px 20px; }
  .block-stories-header-v1 .sh-card-body { padding: 120px 0 48px; }
  .block-stories-header-v1 .sh-card-body-inner { padding: 0 80px; }
  .block-stories-header-v1 .sh-card-top-inner { padding: 40px 80px 140px; }
}
/* ── Story Gallery (block-story-gallery-v1) ─────────────────── */

.block-story-gallery-v1 {
  --sg-slide-width: calc(100vw - 48px);
  --sg-track-gap: 16px;
  --sg-track-gutter: 24px;
  background: var(--color-white, #FFFFFF);
}
.dark .block-story-gallery-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-gallery-v1 .sg-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

/* ── Carousel ── */

.block-story-gallery-v1 .sg-carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-story-gallery-v1 .sg-track {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--sg-track-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  overscroll-behavior-x: none;
  touch-action: auto;
  padding: 16px 0 16px var(--sg-track-gutter);
  margin: 0;
}
.block-story-gallery-v1 .sg-track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--sg-track-gutter) - var(--sg-track-gap)));
}
.block-story-gallery-v1 .sg-track::-webkit-scrollbar { display: none; }

.block-story-gallery-v1 .sg-slide {
  flex: 0 0 var(--sg-slide-width);
  scroll-snap-align: center;
  margin: 0;
}
.block-story-gallery-v1.sg-js-ready .sg-slide {
  transform-origin: center center;
  will-change: transform;
}

@media (min-width: 860px) {
  .block-story-gallery-v1 {
    --sg-slide-width: 812px;
    --sg-track-gap: 32px;
    --sg-track-gutter: max(24px, calc(50vw - 406px));
  }
}

/* ── Image ── */

.block-story-gallery-v1 .sg-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-story-gallery-v1 .sg-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}
.block-story-gallery-v1 .sg-img-wrap.sg-can-lightbox { cursor: zoom-in; }

.block-story-gallery-v1 .sg-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}
.block-story-gallery-v1 .sg-img-wrap.sg-portrait .sg-bg { display: block; }

.block-story-gallery-v1 .sg-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.block-story-gallery-v1 .sg-img-wrap.sg-portrait .sg-img { object-fit: contain; }

/* ── Inactive slide dim overlay ── */

.block-story-gallery-v1 .sg-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  -webkit-backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
/* overlay fades in on non-active slides only after JS is ready */
.block-story-gallery-v1.sg-js-ready .sg-slide:not(.sg-active) .sg-img-wrap::after { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .block-story-gallery-v1 .sg-img-wrap::after { transition: none; }
}

/* ── Lightbox ── */

.block-story-gallery-v1 .sg-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  align-items: center;
  justify-content: center;
  padding: 64px 16px 24px;
}
.block-story-gallery-v1 .sg-lightbox.sg-lb-open { display: flex; }

.block-story-gallery-v1 .sg-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: sg-lb-in 0.2s ease;
}
@keyframes sg-lb-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.block-story-gallery-v1 .sg-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: calc(100vh - 88px);
  animation: sg-lb-up 0.2s ease;
}
@keyframes sg-lb-up {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.block-story-gallery-v1 .sg-lb-img {
  display: block;
  max-width: 100%;
  max-height: calc(100vh - 88px);
  border-radius: 8px;
  object-fit: contain;
}

.block-story-gallery-v1 .sg-lb-close {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: pointer;
  touch-action: manipulation;
  transition: background-color 0.15s ease, opacity 0.15s ease;
}
@media (hover: hover) and (pointer: fine) {
  .block-story-gallery-v1 .sg-lb-close:hover { background: rgba(255, 255, 255, 0.22); }
}
.block-story-gallery-v1 .sg-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

.block-story-gallery-v1 .sg-lb-close {
  position: absolute;
  top: calc(16px + env(safe-area-inset-top, 0px));
  right: calc(16px + env(safe-area-inset-right, 0px));
  z-index: 3;
  width: 44px;
  height: 44px;
}

.block-story-gallery-v1 .sg-lb-nav { display: none; }

/* ── Caption ── */

.block-story-gallery-v1 .sg-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-story-gallery-v1 .sg-desc {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-story-gallery-v1 .sg-desc p { margin: 0 0 6px; }
.block-story-gallery-v1 .sg-desc p:last-child { margin-bottom: 0; }
.block-story-gallery-v1 .sg-desc a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-story-gallery-v1 .sg-desc a { color: var(--color-accent-dark); }
.block-story-gallery-v1 .sg-desc a:hover { text-decoration: none; }

/* ── Navigation (same style as 8-step) ── */

.block-story-gallery-v1 .sg-nav {
  position: relative;
  z-index: 10;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 20px;
  touch-action: auto;
}

.block-story-gallery-v1 .sg-progress {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  height: 40px;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
  padding: 0 14px;
  overflow: hidden;
}
.dark .block-story-gallery-v1 .sg-progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-story-gallery-v1 .sg-progress-fill {
  flex: 1;
  height: 4px;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
  min-width: 0;
  position: relative;
  overflow: hidden;
}
.dark .block-story-gallery-v1 .sg-progress-fill {
  background: rgba(255, 255, 255, 0.18);
}
.block-story-gallery-v1 .sg-progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, rgb(45, 106, 79));
  transform-origin: left center;
  transform: scaleX(var(--sg-p, 0));
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.dark .block-story-gallery-v1 .sg-progress-fill::after {
  background: var(--color-accent-dark, #47B27A);
}
@media (prefers-reduced-motion: reduce) {
  .block-story-gallery-v1 .sg-progress-fill::after { transition: none; }
}

.block-story-gallery-v1 .sg-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: rgba(0, 0, 0, 0.07);
  color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s, opacity 0.15s;
  flex-shrink: 0;
}
.block-story-gallery-v1 .sg-btn:hover:not(:disabled) { background: rgba(0, 0, 0, 0.12); }
.block-story-gallery-v1 .sg-btn:disabled { opacity: 0.4; cursor: default; }
.dark .block-story-gallery-v1 .sg-btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.6);
}
.dark .block-story-gallery-v1 .sg-btn:hover:not(:disabled) { background: rgba(255, 255, 255, 0.16); }
.block-story-gallery-v1 .sg-btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 2px;
}
.dark .block-story-gallery-v1 .sg-btn:focus-visible {
  outline-color: var(--color-accent-dark, #47B27A);
}

@media (min-width: 768px) {
  .block-story-gallery-v1 .sg-progress { flex: none; width: 176px; }
}
/* ── Story Header v1 ─────────────────────────────────────────── */
.block-story-header-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-header-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-header-v1 .sh-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 32px 24px;
}

.block-story-header-v1 .sh-eyebrow {
  display: none;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px;
  padding: 4px 10px;
  margin: 0 0 12px;
}
.block-story-header-v1 .sh-eyebrow:not(:empty) { display: inline-block; }
.dark .block-story-header-v1 .sh-eyebrow {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}

.block-story-header-v1 .sh-date {
  display: block;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(13px, 1.2vw, 15px);
  color: var(--color-grey-60, #737373);
  margin: 0 0 20px;
  line-height: 1.4;
}
.block-story-header-v1 .sh-date:empty { display: none; }
.dark .block-story-header-v1 .sh-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-story-header-v1 .sh-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(28px, 4vw, 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-black, #333333);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}
.dark .block-story-header-v1 .sh-title { color: var(--color-text-dark, #f0f4f2); }

.block-story-header-v1 .sh-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 0 0 32px;
}
.dark .block-story-header-v1 .sh-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-story-header-v1 .sh-share {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 24px;
  border-top: 1px solid var(--color-grey-20, #DCDCDC);
  flex-wrap: wrap;
}
.dark .block-story-header-v1 .sh-share { border-color: rgba(255,255,255,0.1); }

.block-story-header-v1 .sh-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--color-moss-green, #13735F);
  background: var(--color-white, #FFFFFF);
  color: var(--color-moss-green, #13735F);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  outline: none;
}
.block-story-header-v1 .sh-share-btn:hover,
.block-story-header-v1 .sh-share-btn:focus-visible {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}
.block-story-header-v1 .sh-share-btn:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 2px;
}
.dark .block-story-header-v1 .sh-share-btn {
  background: transparent;
  border-color: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.5);
}
.dark .block-story-header-v1 .sh-share-btn:hover,
.dark .block-story-header-v1 .sh-share-btn:focus-visible {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}
.block-story-header-v1 .sh-copy-btn.sh-copied {
  background: var(--color-mint-green, #47B27A);
  border-color: var(--color-mint-green, #47B27A);
  color: var(--color-forest-green, #004432);
}
.dark .block-story-header-v1 .sh-copy-btn.sh-copied {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}

@media (max-width: 767px) {
  .block-story-header-v1 .sh-inner { padding: 32px 16px; }
}
/* ── Story Image (block-story-image-v1) ───────────────────── */

.block-story-image-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-image-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-image-v1 .si-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

/* ── Image wrap ── */

.block-story-image-v1 .si-img-wrap {
  position: relative;
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-story-image-v1 .si-img-wrap { background: rgba(255, 255, 255, 0.08); }
.block-story-image-v1.si-has-lightbox .si-img-wrap { cursor: zoom-in; }

/* Blurred background shown only for portrait pictures */
.block-story-image-v1 .si-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}
.block-story-image-v1 .si-img-wrap.si-portrait .si-bg { display: block; }

.block-story-image-v1 .si-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.block-story-image-v1 .si-img-wrap.si-portrait .si-img { object-fit: contain; }

/* ── Placeholder ── */

.block-story-image-v1 .si-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-story-image-v1 .si-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

/* ── Zoom button — hidden unless lightbox is enabled ── */

.block-story-image-v1 .si-zoom-btn {
  display: none;
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: zoom-in;
  opacity: 0;
  transition: opacity 0.15s ease, background-color 0.15s ease;
}
.block-story-image-v1.si-has-lightbox .si-zoom-btn { display: flex; }
.block-story-image-v1 .si-img-wrap:hover .si-zoom-btn,
.block-story-image-v1 .si-img-wrap:focus-within .si-zoom-btn { opacity: 1; }
@media (max-width: 767px) {
  .block-story-image-v1.si-has-lightbox .si-zoom-btn { opacity: 1; }
}
.block-story-image-v1 .si-zoom-btn:hover { background: rgba(0, 0, 0, 0.65); }
.block-story-image-v1 .si-zoom-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  opacity: 1;
}

/* ── Lightbox — hidden by default, shown via JS class ── */

.block-story-image-v1 .si-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.block-story-image-v1 .si-lightbox.si-lb-open { display: flex; }

.block-story-image-v1 .si-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: si-lb-in 0.2s ease;
}
@keyframes si-lb-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.block-story-image-v1 .si-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: 92vh;
  animation: si-lb-up 0.2s ease;
}
@keyframes si-lb-up {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.block-story-image-v1 .si-lb-img {
  display: block;
  max-width: 100%;
  max-height: 92vh;
  border-radius: 8px;
  object-fit: contain;
}

.block-story-image-v1 .si-lb-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.block-story-image-v1 .si-lb-close:hover { background: rgba(255, 255, 255, 0.22); }
.block-story-image-v1 .si-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

/* ── Caption ── */

.block-story-image-v1 .si-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-story-image-v1 .si-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-story-image-v1 .si-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-story-image-v1 .si-caption a { color: var(--color-accent-dark); }
.block-story-image-v1 .si-caption a:hover { text-decoration: none; }

@media (max-width: 767px) {
  .block-story-image-v1 .si-inner { padding: 16px 24px; }
}
/* Story Info (block-story-info-v1) */

.block-story-info-v1 {
  --story-info-v1-card-bg: var(--color-forest-green, #004432);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
  background: var(--color-white, #ffffff);
}

.dark .block-story-info-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-story-info-v1[data-card-color='forest-green'] {
  --story-info-v1-card-bg: var(--color-forest-green, #004432);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1[data-card-color='mint-green'] {
  --story-info-v1-card-bg: var(--color-mint-green, #47b27a);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='red'] {
  --story-info-v1-card-bg: var(--color-red, #e52322);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1[data-card-color='light-green'] {
  --story-info-v1-card-bg: var(--color-light-green, #8acbc1);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='corn-green'] {
  --story-info-v1-card-bg: var(--color-corn-green, #94c24a);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='yellow-green'] {
  --story-info-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='moss-green'] {
  --story-info-v1-card-bg: var(--color-moss-green, #13735f);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1[data-card-color='dark-red'] {
  --story-info-v1-card-bg: var(--color-dark-red, #861135);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1 .story-info-v1__inner {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
  box-sizing: border-box;
}

.block-story-info-v1 .story-info-v1__card {
  min-width: 0;
  width: 100%;
  padding: 24px;
  border-radius: 16px;
  background: var(--story-info-v1-card-bg);
  color: var(--story-info-v1-card-copy);
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.block-story-info-v1 .story-info-v1__icon {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 0 24px;
  color: inherit;
  flex: 0 0 auto;
}

.block-story-info-v1 .story-info-v1__icon-disc {
  fill: currentColor;
  stroke: none;
}

.block-story-info-v1 .story-info-v1__icon-mark {
  fill: var(--story-info-v1-card-bg);
  stroke: none;
}

.block-story-info-v1 .story-info-v1__body {
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.block-story-info-v1 .story-info-v1__body :where(p, ul, ol) {
  margin: 0 0 16px;
}

.block-story-info-v1 .story-info-v1__body > :last-child {
  margin-bottom: 0;
}

.block-story-info-v1 .story-info-v1__body :where(ul, ol) {
  padding-left: 1.4em;
}

.block-story-info-v1 .story-info-v1__body li + li {
  margin-top: 8px;
}

.block-story-info-v1 .story-info-v1__body li > p {
  margin: 0;
}

.block-story-info-v1 .story-info-v1__body :where(a, strong, b, em, i, u, sub, sup) {
  color: inherit;
}

.block-story-info-v1 .story-info-v1__body a {
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.block-story-info-v1 .story-info-v1__body a:hover {
  text-decoration-thickness: 2px;
}

.block-story-info-v1 .story-info-v1__body a:focus-visible {
  border-radius: 2px;
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

@media (max-width: 767px) {
  .block-story-info-v1 .story-info-v1__inner {
    padding: 16px;
  }
}

@media (min-width: 768px) {
  .block-story-info-v1 .story-info-v1__card {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-story-info-v1 .story-info-v1__card {
    padding: 48px;
  }
}
/* ── Story Titled Text (block-story-titled-text-v1) ──────────── */

.block-story-titled-text-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-titled-text-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-titled-text-v1 .stt-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

.block-story-titled-text-v1 .stt-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-black, #333333);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}
.dark .block-story-titled-text-v1 .stt-title { color: var(--color-text-dark, #f0f4f2); }

.block-story-titled-text-v1 .stt-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.75;
  color: var(--color-black, #333333);
}
.dark .block-story-titled-text-v1 .stt-body { color: var(--color-text-dark, #f0f4f2); }
.block-story-titled-text-v1 .stt-body p { margin: 0 0 16px; }
.block-story-titled-text-v1 .stt-body p:last-child { margin-bottom: 0; }
.block-story-titled-text-v1 .stt-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-story-titled-text-v1 .stt-body a { color: var(--color-accent-dark); }
.block-story-titled-text-v1 .stt-body a:hover { text-decoration: none; }

@media (max-width: 767px) {
  .block-story-titled-text-v1 .stt-inner { padding: 16px; }
}
/* ── Story Video (block-story-video-v1) ────────────────────── */

.block-story-video-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-video-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-video-v1 .sv-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-yt-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-yt-wrap {
  background: rgba(255, 255, 255, 0.08);
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-video-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  background: var(--color-grey-20, #DCDCDC);
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-video-wrap {
  background: rgba(255, 255, 255, 0.08);
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  object-fit: cover;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

:is(.block-story-video-v1, [data-video-player="v1"]):not([data-src="true"]) .sv-yt-container { display: none; }
:is(.block-story-video-v1, [data-video-player="v1"])[data-src="true"] .sv-video-wrap,
:is(.block-story-video-v1, [data-video-player="v1"])[data-src="true"] .sv-placeholder { display: none; }

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-yt-container {
  position: relative;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-gate {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  background: var(--color-forest-green, #004432);
  background-size: cover;
  background-position: center;
  text-align: center;
  isolation: isolate;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-gate::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  z-index: 0;
  pointer-events: none;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-text {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(12px, 1.2vw, 14px);
  line-height: 1.55;
  color: var(--color-white);
  max-width: 480px;
  margin: 0;
  position: relative;
  z-index: 1;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-btn {
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 22px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  background: transparent;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  z-index: 1;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-btn:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: var(--color-white, #FFFFFF);
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-btn:focus-visible {
  outline: 3px solid var(--color-mint-green, #47B27A);
  outline-offset: 4px;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-consent-icon {
  flex-shrink: 0;
}


:is(.block-story-video-v1, [data-video-player="v1"]) .sv-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-caption a { color: var(--color-accent-dark); }
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-caption a:hover { text-decoration: none; }

/* Revoke YouTube consent */
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-revoke-wrap {
  padding: 6px 0 0;
  text-align: right;
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-revoke-btn {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(10px, 1.1vw, 11px);
  color: var(--color-grey-60, #666666);
  background: none;
  border: none;
  padding: 2px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-revoke-btn {
  color: rgba(255, 255, 255, 0.3);
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-revoke-btn:hover {
  color: var(--color-forest-green, #004432);
}
.dark :is(.block-story-video-v1, [data-video-player="v1"]) .sv-revoke-btn:hover {
  color: rgba(255, 255, 255, 0.65);
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-revoke-btn:focus-visible {
  outline: 2px solid #47b27a;
  outline-offset: 2px;
  border-radius: 2px;
}

/* Lights-out button */
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-inner {
  position: relative;
}

:is(.block-story-video-v1, [data-video-player="v1"]) .sv-lights-btn {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.42);
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.block-story-video-v1 .sv-lights-btn {
  top: 24px;
  right: 32px;
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-lights-btn:hover {
  background: rgba(0, 0, 0, 0.65);
  color: var(--color-white);
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-lights-btn:focus-visible {
  outline: 3px solid #47b27a;
  outline-offset: 3px;
}
/* Cinema mode: video player punches through overlay, button floats above */
:is(.block-story-video-v1, [data-video-player="v1"])[data-lights="on"] .sv-yt-container,
:is(.block-story-video-v1, [data-video-player="v1"])[data-lights="on"] .sv-video-wrap {
  position: relative;
  z-index: 9992;
  border-radius: 8px;
  overflow: hidden;
}
:is(.block-story-video-v1, [data-video-player="v1"])[data-lights="on"] .sv-lights-btn {
  z-index: 9993;
  background: rgba(2, 10, 4, 0.85);
  color: #c6f080;
  border-color: rgba(198, 240, 128, 0.3);
}
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-lights-btn .sv-lb-off { display: block; }
:is(.block-story-video-v1, [data-video-player="v1"]) .sv-lights-btn .sv-lb-on  { display: none; }
:is(.block-story-video-v1, [data-video-player="v1"])[data-lights="on"] .sv-lights-btn .sv-lb-off { display: none; }
:is(.block-story-video-v1, [data-video-player="v1"])[data-lights="on"] .sv-lights-btn .sv-lb-on  { display: block; }

/* Overlay injected into body by JS */
.sv-lights-overlay {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(2, 10, 4, 0.92);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.sv-lights-forest {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}

.sv-lights-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes sv-fly-glow {
  0%, 100% { opacity: 0.15; box-shadow: 0 0 4px 2px rgba(160, 240, 100, 0.25); }
  50%       { opacity: 0.9;  box-shadow: 0 0 8px 4px rgba(190, 255, 130, 0.7); }
}
@keyframes sv-fly-float {
  0%   { transform: translate(0, 0); }
  33%  { transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5)); }
  66%  { transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy)); }
  100% { transform: translate(0, 0); }
}
.sv-lights-fly {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    sv-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    sv-fly-float var(--fly-float, 5s) ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .sv-lights-overlay { transition: none; }
  .sv-lights-fly { animation: none; opacity: 0.5; }
}

@media (max-width: 767px) {
  .block-story-video-v1 .sv-inner { padding: 16px; }
}
/* ── Table of Contents (block-table-of-contents-v1) ────────────── */

.block-table-of-contents-v1 {
  --wi-toc-left-offset: max(24px, env(safe-area-inset-left, 0px));
  --wi-toc-right-gap: max(24px, env(safe-area-inset-right, 0px));
  position: fixed;
  bottom: max(24px, env(safe-area-inset-bottom, 0px));
  left: var(--wi-toc-left-offset);
  z-index: 100;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  /* Reset <section> defaults so it doesn't affect page flow */
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  /* Panel retains physical size when hidden — block passthrough so it doesn't eat mobile taps */
  pointer-events: none;
}

.block-table-of-contents-v1 .wi-toc-panel {
  background: var(--color-white);
  border: 1px solid var(--color-grey-20);
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  padding: 16px;
  width: 280px;
  max-width: calc(100vw - var(--wi-toc-left-offset) - var(--wi-toc-right-gap));
  max-height: 60vh;
  overflow-y: auto;
  opacity: 0;
  transform: translateY(10px) scale(0.97);
  pointer-events: none;
  visibility: hidden;
  /* visibility delays: instant on open, waits for fade-out on close */
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
}

@media (max-width: 767px) {
  .block-table-of-contents-v1 {
    --wi-toc-left-offset: max(16px, env(safe-area-inset-left, 0px));
    --wi-toc-right-gap: max(16px, env(safe-area-inset-right, 0px));
    bottom: max(16px, env(safe-area-inset-bottom, 0px));
  }
}

.block-table-of-contents-v1 .wi-toc-panel.is-open {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
  visibility: visible;
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0s;
}

@media (prefers-reduced-motion: reduce) {
  .block-table-of-contents-v1 .wi-toc-panel {
    transition: none;
  }
}

.block-table-of-contents-v1 .wi-toc-title {
  font-family: var(--font-heading);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--color-grey-60);
  margin: 0 0 12px 0;
}

.block-table-of-contents-v1 .wi-toc-title p {
  margin: 0;
  display: inline;
}

.block-table-of-contents-v1 .wi-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.block-table-of-contents-v1 .wi-toc-item { line-height: 1.4; }
.block-table-of-contents-v1 .wi-toc-h3 { padding-left: 12px; }
.block-table-of-contents-v1 .wi-toc-h4 { padding-left: 24px; }

.block-table-of-contents-v1 .wi-toc-link {
  font-family: var(--font-body);
  font-size: clamp(14px, 1vw, 15px);
  color: var(--color-grey-80);
  text-decoration: none;
  display: block;
  padding: 4px 8px;
  border-left: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
  cursor: pointer;
}

.block-table-of-contents-v1 .wi-toc-link:hover {
  color: var(--color-moss-green);
  background: var(--color-light-grey);
  border-radius: 0 6px 6px 0;
}

.block-table-of-contents-v1 .wi-toc-link.is-active {
  color: var(--color-forest-green);
  border-left-color: var(--color-mint-green);
  font-weight: 700;
}

.block-table-of-contents-v1 .wi-toc-link:focus-visible {
  outline: 2px solid var(--color-mint-green);
  outline-offset: 2px;
  border-radius: 0 4px 4px 0;
}

.block-table-of-contents-v1 .wi-toc-btn {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--color-forest-green);
  color: var(--color-white);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 12px rgba(0, 68, 50, 0.25);
  outline: 2px solid var(--color-light-green);
  outline-offset: 2px;
  transition: background 0.15s;
  flex-shrink: 0;
  pointer-events: auto;
}

.block-table-of-contents-v1 .wi-toc-btn:hover { background: var(--color-moss-green); }
.block-table-of-contents-v1 .wi-toc-btn:focus-visible {
  outline-width: 3px;
  outline-offset: 3px;
}

.dark .block-table-of-contents-v1 .wi-toc-panel {
  background: var(--color-surface-dark);
  border-color: rgba(255, 255, 255, 0.1);
}

.dark .block-table-of-contents-v1 .wi-toc-title { color: var(--color-text-secondary-dark); }
.dark .block-table-of-contents-v1 .wi-toc-link { color: var(--color-text-secondary-dark); }
.dark .block-table-of-contents-v1 .wi-toc-link:hover { color: var(--color-accent-dark); background: rgba(255,255,255,0.05); }
.dark .block-table-of-contents-v1 .wi-toc-link.is-active { color: var(--color-text-dark); border-left-color: var(--color-mint-green); }
/* Team (block-team-v1) */

.block-team-v1 {
  --team-v1-bg: var(--color-white, #ffffff);
  background: var(--team-v1-bg);
  color: var(--color-black, #333333);
}

.block-team-v1[data-background-color="#FFFFFF"] {
  --team-v1-bg: var(--color-white, #ffffff);
}

.block-team-v1[data-background-color="#F7F7F7"] {
  --team-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-team-v1 {
  --team-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-team-v1 .team-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-team-v1 .team-v1__header {
  display: grid;
  gap: 24px;
  margin-bottom: 32px;
}

.block-team-v1 .team-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  line-height: var(--text-h3--line-height, 1.15);
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__clamp-wrap {
  position: relative;
  min-width: 0;
}

.block-team-v1 .team-v1__description {
  display: -webkit-box;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
}

.dark .block-team-v1 .team-v1__description {
  color: var(--color-text-dark, #f0f4f2);
}

.block-team-v1 .team-v1__description p,
.block-team-v1 .team-v1__bio p {
  margin: 0 0 16px;
}

.block-team-v1 .team-v1__description p:last-child,
.block-team-v1 .team-v1__bio p:last-child {
  margin-bottom: 0;
}

.block-team-v1 .team-v1__read-more {
  display: inline-flex;
  margin-top: 10px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.block-team-v1 .team-v1__read-more:hover,
.block-team-v1 .team-v1__read-more:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-team-v1 .team-v1__read-more:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-team-v1 .team-v1__read-more {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-team-v1 .team-v1__read-more:hover,
.dark .block-team-v1 .team-v1__read-more:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-team-v1 .team-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-team-v1 .team-v1__member {
  min-width: 0;
}

.block-team-v1 .team-v1__avatar-link {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

.block-team-v1 .team-v1__avatar,
.block-team-v1 .team-v1__avatar-placeholder {
  display: block;
  width: 144px;
  height: 144px;
  border-radius: 50%;
}

.block-team-v1 .team-v1__avatar {
  object-fit: cover;
  object-position: center;
  background: var(--color-grey-20, #dcdcdc);
}

.block-team-v1 .team-v1__avatar-placeholder {
  background: var(--color-light-grey, #f7f7f7);
  border: 1px solid var(--color-grey-20, #dcdcdc);
}

.dark .block-team-v1 .team-v1__avatar,
.dark .block-team-v1 .team-v1__avatar-placeholder {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.12);
}

.block-team-v1 .team-v1__name {
  margin: 24px 0 8px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__name {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__position {
  margin: 0 0 16px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__position {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__bio {
  display: -webkit-box;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
}

.dark .block-team-v1 .team-v1__bio {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-team-v1 .team-v1__sheet-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.block-team-v1 .team-v1__sheet-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.block-team-v1 .team-v1__sheet {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  max-height: 86vh;
  overflow: hidden;
  border-radius: 28px 28px 0 0;
  background: var(--color-light-grey, #f7f7f7);
  color: var(--color-black, #333333);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.12);
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0, 0.15, 1);
}

.block-team-v1 .team-v1__sheet.is-active {
  transform: translateY(0);
}

.block-team-v1 .team-v1__sheet.team-v1__sheet--dragging {
  transition: none;
}

.dark .block-team-v1 .team-v1__sheet {
  background: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.5);
}

.block-team-v1 .team-v1__sheet-handle {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px 0 6px;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: grab;
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
}

.block-team-v1 .team-v1__sheet-handle:active {
  cursor: grabbing;
}

.block-team-v1 .team-v1__sheet-handle:focus-visible {
  outline: none;
}

.block-team-v1 .team-v1__sheet-handle-bar {
  display: block;
  width: 44px;
  height: 5px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.24);
}

.block-team-v1 .team-v1__sheet-handle:focus-visible .team-v1__sheet-handle-bar {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-team-v1 .team-v1__sheet-handle-bar {
  background: rgba(255, 255, 255, 0.28);
}

.block-team-v1 .team-v1__sheet-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.block-team-v1 .team-v1__sheet-inner {
  display: grid;
  gap: 24px;
  max-width: 1040px;
  margin: 0 auto;
  padding: 20px 24px 32px;
}

.block-team-v1 .team-v1__sheet--text-only .team-v1__sheet-inner {
  max-width: 840px;
}

.block-team-v1 .team-v1__sheet-main {
  min-width: 0;
}

.block-team-v1 .team-v1__sheet-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  overflow: hidden;
  border-radius: 50%;
  background: var(--color-white, #ffffff);
}

.dark .block-team-v1 .team-v1__sheet-media {
  background: rgba(255, 255, 255, 0.08);
}

.block-team-v1 .team-v1__sheet-avatar,
.block-team-v1 .team-v1__sheet-avatar-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.block-team-v1 .team-v1__sheet-avatar {
  object-fit: cover;
  object-position: center;
}

.block-team-v1 .team-v1__sheet-avatar-placeholder {
  border: 1px solid var(--color-grey-20, #dcdcdc);
  background: var(--color-white, #ffffff);
}

.dark .block-team-v1 .team-v1__sheet-avatar-placeholder {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
}

.block-team-v1 .team-v1__sheet-name {
  margin: 0 0 10px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 22px), 46px);
  line-height: 1.2;
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__sheet-name {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__sheet-position {
  margin: 0 0 24px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-forest-green, #004432);
}

.block-team-v1 .team-v1__sheet-position p {
  margin: 0 0 8px;
}

.block-team-v1 .team-v1__sheet-position p:last-child {
  margin-bottom: 0;
}

.dark .block-team-v1 .team-v1__sheet-position {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__sheet-bio {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-grey-80, #4d4d4d);
}

.block-team-v1 .team-v1__sheet-bio p {
  margin: 0 0 16px;
}

.block-team-v1 .team-v1__sheet-bio p:last-child {
  margin-bottom: 0;
}

.dark .block-team-v1 .team-v1__sheet-bio {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-team-v1 .team-v1__sheet-footer {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  padding: 14px 24px calc(20px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.dark .block-team-v1 .team-v1__sheet-footer {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-team-v1 .team-v1__sheet-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.08);
  color: var(--color-forest-green, #004432);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}

.block-team-v1 .team-v1__sheet-close:hover,
.block-team-v1 .team-v1__sheet-close:focus-visible {
  background: rgba(0, 0, 0, 0.15);
  transform: scale(1.08);
}

.block-team-v1 .team-v1__sheet-close:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-team-v1 .team-v1__sheet-close {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-team-v1 .team-v1__sheet-close:hover,
.dark .block-team-v1 .team-v1__sheet-close:focus-visible {
  background: rgba(255, 255, 255, 0.16);
}

.block-team-v1 .team-v1__cta-row {
  display: flex;
  justify-content: flex-start;
  margin-top: 32px;
}

.block-team-v1 .team-v1__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 24px;
  border: 1px solid var(--color-moss-green, #13735f);
  border-radius: 999px;
  background: transparent;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-team-v1 .team-v1__cta:hover,
.block-team-v1 .team-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  border-color: transparent;
  color: var(--color-white, #ffffff);
}

.block-team-v1 .team-v1__cta:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-team-v1 .team-v1__cta-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-team-v1 .team-v1__cta:hover .team-v1__cta-icon,
.block-team-v1 .team-v1__cta:focus-visible .team-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-team-v1 .team-v1__cta {
  background: transparent;
  border-color: var(--color-accent-dark, #47b27a);
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-team-v1 .team-v1__cta:hover,
.dark .block-team-v1 .team-v1__cta:focus-visible {
  background: var(--color-accent-dark, #47b27a);
  border-color: transparent;
  color: var(--color-bg-dark, #0f1a14);
}

@media (min-width: 768px) {
  .block-team-v1 .team-v1__inner {
    padding: 64px 48px;
  }

  .block-team-v1 .team-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
  }

  .block-team-v1 .team-v1__avatar,
  .block-team-v1 .team-v1__avatar-placeholder {
    width: 168px;
    height: 168px;
  }

  .block-team-v1 .team-v1__sheet-handle {
    display: none;
  }

  .block-team-v1 .team-v1__sheet-inner {
    grid-template-columns: 96px minmax(0, 1fr);
    grid-template-areas:
      "media name"
      "media position"
      "bio bio";
    column-gap: 24px;
    row-gap: 4px;
    padding: 48px 48px 36px;
  }

  .block-team-v1 .team-v1__sheet-main {
    display: contents;
  }

  .block-team-v1 .team-v1__sheet--text-only .team-v1__sheet-inner {
    display: block;
  }

  .block-team-v1 .team-v1__sheet--text-only .team-v1__sheet-main {
    display: block;
  }

  .block-team-v1 .team-v1__sheet-media {
    grid-area: media;
    width: 96px;
    height: 96px;
  }

  .block-team-v1 .team-v1__sheet-name {
    grid-area: name;
    align-self: end;
    margin-bottom: 4px;
  }

  .block-team-v1 .team-v1__sheet-position {
    grid-area: position;
    align-self: start;
    margin-bottom: 0;
  }

  .block-team-v1 .team-v1__sheet-bio {
    grid-area: bio;
    margin-top: 20px;
  }

  .block-team-v1 .team-v1__cta-row {
    margin-top: 64px;
  }
}

@media (min-width: 1024px) {
  .block-team-v1 .team-v1__inner {
    padding: 64px 80px;
  }

  .block-team-v1 .team-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    margin-bottom: 48px;
  }

  .block-team-v1 .team-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-team-v1 .team-v1__description-wrap {
    grid-column: 7 / span 6;
  }

  .block-team-v1 .team-v1__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .block-team-v1 .team-v1__sheet-inner {
    padding: 56px 80px 40px;
  }

  .block-team-v1 .team-v1__cta-row {
    justify-content: flex-end;
  }

  .block-team-v1 .team-v1__cta {
    font-size: 18px;
  }
}
/* ── Text (block-text-v1) ──────────────────────────────────────── */

.block-text-v1 {
  background-color: var(--color-white);
}

.dark .block-text-v1 {
  background-color: var(--color-bg-dark);
}

.block-text-v1 .text-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-text-v1 .text-content {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: clamp(16px, calc(0.5vw + 14.4px), var(--text-body));
  line-height: var(--text-body--line-height);
  color: var(--color-black);
}

.dark .block-text-v1 .text-content {
  color: var(--color-text-dark);
}

.block-text-v1 .text-content p {
  margin: 0 0 16px;
}

.block-text-v1 .text-content p:last-child {
  margin-bottom: 0;
}

.block-text-v1 .text-content a {
  color: var(--color-moss-green);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-text-v1 .text-content a {
  color: var(--color-accent-dark);
}

.block-text-v1 .text-content a:hover {
  text-decoration: none;
}

.block-text-v1 .text-content strong {
  font-weight: 700;
}

.block-text-v1 .text-content ul,
.block-text-v1 .text-content ol {
  padding-left: 1.4em;
  margin: 0 0 16px;
}

.block-text-v1 .text-content li {
  margin-bottom: 8px;
}

/* Tablet */
@media (min-width: 768px) {
  .block-text-v1 .text-inner {
    padding: 64px 48px;
  }
}

/* Desktop — body skips first 4 of 12 cols (mirrors titled-text body) */
@media (min-width: 1024px) {
  .block-text-v1 .text-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
  }

  .block-text-v1 .text-content {
    grid-column: 5 / -1;
  }
}
/* Timeline (block-timeline-v1) */

.block-timeline-v1 {
  --timeline-v1-bg: var(--color-white, #ffffff);
  --timeline-v1-progress: var(--color-moss-green, #13735f);
  background: var(--timeline-v1-bg);
  color: var(--color-black, #333333);
}

.block-timeline-v1[data-background-color="#FFFFFF"] {
  --timeline-v1-bg: var(--color-white, #ffffff);
}

.block-timeline-v1[data-background-color="#F7F7F7"] {
  --timeline-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-timeline-v1 {
  --timeline-v1-bg: var(--color-bg-dark, #0f1a14);
  background: var(--timeline-v1-bg) !important;
  color: var(--color-text-dark, #f0f4f2);
}

.block-timeline-v1 .timeline-v1__inner {
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-timeline-v1 .timeline-v1__content {
  display: flex;
  min-width: 0;
  margin-bottom: 40px;
  align-items: flex-start;
}

.block-timeline-v1 .timeline-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.dark .block-timeline-v1 .timeline-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-timeline-v1 .timeline-v1__headline p,
.block-timeline-v1 .timeline-v1__title p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-timeline-v1 .timeline-v1__list-column {
  display: flex;
  min-width: 0;
  align-items: flex-start;
}

.block-timeline-v1 .timeline-v1__list {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  counter-reset: timeline-v1-step;
  list-style: none;
}

.block-timeline-v1 .timeline-v1__item {
  position: relative;
  display: grid;
  min-width: 0;
  margin: 0;
  padding: 0 0 40px;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  column-gap: 20px;
  counter-increment: timeline-v1-step;
}

.block-timeline-v1 .timeline-v1__item:last-child {
  padding-bottom: 0;
}

.block-timeline-v1 .timeline-v1__item:not(:last-child)::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: 48px;
  bottom: 0;
  left: 23px;
  width: 2px;
  opacity: 0;
  background: var(--timeline-v1-progress);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 800ms linear;
}

.block-timeline-v1 .timeline-v1__item.is-line-drawing:not(:last-child)::after {
  opacity: 1;
  transform: scaleY(1);
}

.block-timeline-v1 .timeline-v1__marker {
  position: relative;
  z-index: 1;
  display: block;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
}

.block-timeline-v1 .timeline-v1__marker-core {
  position: absolute;
  z-index: 1;
  top: 4px;
  left: 4px;
  display: flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 2px solid var(--timeline-v1-progress);
  border-radius: 50%;
  background: var(--color-white, #ffffff);
  color: var(--timeline-v1-progress);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  transition: background-color 300ms ease, color 300ms ease;
}

.block-timeline-v1 .timeline-v1__marker-core::before {
  content: counter(timeline-v1-step);
}

.block-timeline-v1 .timeline-v1__marker-ring {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 48px;
  height: 48px;
  opacity: 0;
  overflow: visible;
  pointer-events: none;
  transform: rotate(-90deg);
}

.block-timeline-v1 .timeline-v1__marker-ring-circle {
  fill: none;
  stroke: var(--timeline-v1-progress);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 100 100;
  stroke-dashoffset: 100;
  transition: stroke-dashoffset 700ms ease-in-out;
}

.block-timeline-v1 .timeline-v1__item.is-ring-drawing .timeline-v1__marker-ring,
.block-timeline-v1 .timeline-v1__item.is-active .timeline-v1__marker-ring {
  opacity: 1;
}

.block-timeline-v1 .timeline-v1__item.is-ring-drawing .timeline-v1__marker-ring-circle,
.block-timeline-v1 .timeline-v1__item.is-active .timeline-v1__marker-ring-circle {
  stroke-dashoffset: 0;
}

.block-timeline-v1 .timeline-v1__item.is-active .timeline-v1__marker-core {
  background: var(--timeline-v1-progress);
  color: var(--color-white, #ffffff);
}

.block-timeline-v1 .timeline-v1__item-content {
  min-width: 0;
  padding-top: 8px;
}

.block-timeline-v1 .timeline-v1__title {
  margin: 0;
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(22px, calc(0.5vw + 20px), 26px);
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.dark .block-timeline-v1 .timeline-v1__title {
  color: var(--color-text-dark, #f0f4f2);
}

.block-timeline-v1 .timeline-v1__body {
  min-width: 0;
  margin-top: 10px;
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-timeline-v1 .timeline-v1__body.is-visually-empty,
.block-timeline-v1 .timeline-v1__body:empty,
.block-timeline-v1 .timeline-v1__body:has(> p:only-child:empty) {
  display: none;
  margin-top: 0;
}

.dark .block-timeline-v1 .timeline-v1__body {
  color: var(--color-text-dark, #f0f4f2);
}

.block-timeline-v1 .timeline-v1__body p,
.block-timeline-v1 .timeline-v1__body ul,
.block-timeline-v1 .timeline-v1__body ol,
.block-timeline-v1 .timeline-v1__body blockquote {
  margin: 0 0 16px;
}

.block-timeline-v1 .timeline-v1__body ul,
.block-timeline-v1 .timeline-v1__body ol {
  padding-left: 1.4em;
}

.block-timeline-v1 .timeline-v1__body li {
  margin-bottom: 8px;
}

.block-timeline-v1 .timeline-v1__body > :first-child {
  margin-top: 0;
}

.block-timeline-v1 .timeline-v1__body > :last-child,
.block-timeline-v1 .timeline-v1__body li:last-child {
  margin-bottom: 0;
}

.block-timeline-v1 .timeline-v1__body strong,
.block-timeline-v1 .timeline-v1__body b {
  color: inherit;
  font-weight: 700;
}

.block-timeline-v1 .timeline-v1__body a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.block-timeline-v1 .timeline-v1__body a:hover {
  text-decoration: none;
}

.block-timeline-v1 .timeline-v1__body a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.dark .block-timeline-v1 .timeline-v1__body a {
  color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-timeline-v1 .timeline-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-timeline-v1 .timeline-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 80px;
    align-items: stretch;
    gap: 0 32px;
  }

  .block-timeline-v1 .timeline-v1__content {
    grid-column: 1 / 5;
    margin-bottom: 0;
    padding: 64px 0;
  }

  .block-timeline-v1 .timeline-v1__list-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-timeline-v1 .timeline-v1__marker-ring-circle,
  .block-timeline-v1 .timeline-v1__marker-core,
  .block-timeline-v1 .timeline-v1__item:not(:last-child)::after {
    transition: none;
  }
}
/* ── Title (block-title-v1) ────────────────────────────────────── */

.block-title-v1 {
  background-color: var(--color-white);
}

.dark .block-title-v1 {
  background-color: var(--color-bg-dark);
}

.block-title-v1 .title-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-title-v1 .title-inner.title-align-left  { text-align: left; }
.block-title-v1 .title-inner.title-align-center { text-align: center; }
.block-title-v1 .title-inner.title-align-right  { text-align: right; }

.block-title-v1 .title-text {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: var(--text-h3--line-height);
  color: var(--color-forest-green);
  margin: 0;
}

.dark .block-title-v1 .title-text {
  color: var(--color-accent-dark);
}

/* Tablet */
@media (min-width: 768px) {
  .block-title-v1 .title-inner {
    padding: 64px 48px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-title-v1 .title-inner {
    padding: 64px 80px;
  }
}
/* ── Titled Text (block-titled-text-v1) ────────────────────────── */

.block-titled-text-v1 {
  background-color: var(--color-white);
}

.dark .block-titled-text-v1 {
  background-color: var(--color-bg-dark);
}

.block-titled-text-v1 .titled-text-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-titled-text-v1 .titled-text-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: var(--text-h3--line-height);
  color: var(--color-forest-green);
  margin: 0 0 24px;
}

.dark .block-titled-text-v1 .titled-text-title {
  color: var(--color-accent-dark);
}

.block-titled-text-v1 .titled-text-body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  color: var(--color-black);
}

.dark .block-titled-text-v1 .titled-text-body {
  color: var(--color-text-dark);
}

.block-titled-text-v1 .titled-text-body p {
  margin: 0 0 16px;
}

.block-titled-text-v1 .titled-text-body p:last-child {
  margin-bottom: 0;
}

.block-titled-text-v1 .titled-text-body a {
  color: var(--color-moss-green);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-titled-text-v1 .titled-text-body a {
  color: var(--color-accent-dark);
}

.block-titled-text-v1 .titled-text-body a:hover {
  text-decoration: none;
}

.block-titled-text-v1 .titled-text-body strong {
  font-weight: 700;
}

.block-titled-text-v1 .titled-text-body ul,
.block-titled-text-v1 .titled-text-body ol {
  padding-left: 1.4em;
  margin: 0 0 16px;
}

.block-titled-text-v1 .titled-text-body li {
  margin-bottom: 8px;
}

/* Tablet */
@media (min-width: 768px) {
  .block-titled-text-v1 .titled-text-inner {
    padding: 64px 48px;
  }
}

/* Desktop — title full-width, body skips first 4 of 12 cols */
@media (min-width: 1024px) {
  .block-titled-text-v1 .titled-text-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    row-gap: 32px;
  }

  .block-titled-text-v1 .titled-text-title {
    grid-column: 1 / -1;
    margin-bottom: 0;
  }

  .block-titled-text-v1 .titled-text-body {
    grid-column: 5 / -1;
  }
}


/* all-stories-v1 */
/* ── All Stories (block-all-stories-v1) ──────────────────── */

.block-all-stories-v1 { background: var(--color-light-grey, #F7F7F7); }
.dark .block-all-stories-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-all-stories-v1 .as-search-bar {
  background: var(--color-moss-green, #13735F);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.block-all-stories-v1 .as-search-inner {
  max-width: 1440px; margin: 0 auto; padding: 0 24px;
  height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 10px;
}

.block-all-stories-v1 .as-search-title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px; font-weight: 700; line-height: 1;
  color: rgba(255, 255, 255, 0.9);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.block-all-stories-v1 .as-search-toggle {
  display: inline-flex; align-items: center; gap: 6px;
  background: none; border: none; padding: 0 4px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px; cursor: pointer; transition: color 0.15s;
}
.block-all-stories-v1 .as-search-toggle:hover { color: var(--color-white, #FFFFFF); }

.block-all-stories-v1 .as-mega-panel {
  overflow: hidden; height: 0; opacity: 0; pointer-events: none;
  transition: height 0.32s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.22s ease;
  background: var(--color-moss-green, #13735F);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.block-all-stories-v1 .as-mega-panel.is-open { opacity: 1; pointer-events: auto; }

.block-all-stories-v1 .as-mega-content {
  max-width: 860px; margin: 0 auto; padding: 16px 24px 20px;
  display: flex; flex-direction: column; gap: 14px;
}

.block-all-stories-v1 .as-mega-row {
  display: flex; align-items: center; gap: 10px; width: 100%;
  max-width: 640px; margin: 0 auto;
}

.block-all-stories-v1 .as-mega-icon { color: rgba(255, 255, 255, 0.7); flex-shrink: 0; }

.block-all-stories-v1 .as-mega-input {
  background: none; border: none; outline: none; flex: 1;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
}
.block-all-stories-v1 .as-mega-input::placeholder { color: rgba(255, 255, 255, 0.55); }

.block-all-stories-v1 .as-mega-close {
  background: none; border: none; color: rgba(255, 255, 255, 0.7);
  cursor: pointer; padding: 4px; flex-shrink: 0; transition: color 0.15s;
}
.block-all-stories-v1 .as-mega-close:hover { color: var(--color-white, #FFFFFF); }

.block-all-stories-v1 .as-mega-categories {
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px;
}

.block-all-stories-v1 .as-mega-cat {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 22px; padding: 5px 14px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  cursor: pointer; transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.block-all-stories-v1 .as-mega-cat:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.4);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v1 .as-mega-cat.is-active {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}

.block-all-stories-v1 .as-mega-filters {
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 8px;
}

.block-all-stories-v1 .as-filter-drop {
  position: relative;
}
.block-all-stories-v1 .as-filter-btn {
  display: flex; align-items: center; gap: 6px;
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.25); border-radius: 8px;
  padding: 6px 10px 6px 12px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.8125rem; font-weight: 600;
  cursor: pointer; outline: none; white-space: nowrap;
  transition: background-color 0.15s, border-color 0.15s;
}
.block-all-stories-v1 .as-filter-btn:hover,
.block-all-stories-v1 .as-filter-drop.is-open .as-filter-btn {
  background-color: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.4);
}
.block-all-stories-v1 .as-filter-drop.has-value .as-filter-btn {
  background-color: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.55);
}
.block-all-stories-v1 .as-filter-chev {
  flex-shrink: 0; transition: transform 0.15s ease;
}
.block-all-stories-v1 .as-filter-drop.is-open .as-filter-chev {
  transform: rotate(180deg);
}
.block-all-stories-v1 .as-filter-list {
  display: none; position: absolute; top: calc(100% + 6px); left: 0;
  min-width: 140px; max-height: 240px; overflow-y: auto;
  background: var(--color-forest-green, #004432);
  border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 8px;
  padding: 4px 0; margin: 0; list-style: none;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  z-index: 100;
}
.block-all-stories-v1 .as-filter-drop.is-open .as-filter-list {
  display: block;
}
.block-all-stories-v1 .as-filter-list li {
  padding: 7px 14px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.8125rem; font-weight: 500;
  cursor: pointer; white-space: nowrap;
  transition: background-color 0.1s;
}
.block-all-stories-v1 .as-filter-list li:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v1 .as-filter-list li.is-active {
  color: var(--color-white, #FFFFFF); font-weight: 700;
  background-color: rgba(255, 255, 255, 0.15);
}

.block-all-stories-v1 .as-inner { max-width: 860px; margin: 0 auto; padding: 64px 24px; }
.block-all-stories-v1 .as-header { margin-bottom: 24px; }

.block-all-stories-v1 .as-title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}
.block-all-stories-v1 .as-title p { margin: 0; }
.dark .block-all-stories-v1 .as-title { color: var(--color-accent-dark, #47b27a); }

.block-all-stories-v1 .as-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6; color: var(--color-grey-80, #4D4D4D); margin: 16px 0 0;
}
.block-all-stories-v1 .as-desc p { margin: 0; }
.dark .block-all-stories-v1 .as-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-all-stories-v1 .as-no-results {
  font-family: var(--font-body, 'Lato', sans-serif);
  color: var(--color-grey-80, #4d4d4d); font-size: 16px;
  padding: 40px 0; text-align: center; display: none;
}
.dark .block-all-stories-v1 .as-no-results { color: rgba(255,255,255,0.4); }
.block-all-stories-v1 .as-no-results.is-visible { display: block; }

.block-all-stories-v1 .as-list { list-style: none; padding: 0; margin: 0; }
.block-all-stories-v1 .as-list li + li { border-top: 1px solid var(--color-grey-20, #DCDCDC); }
.dark .block-all-stories-v1 .as-list li + li { border-color: rgba(255,255,255,0.1); }

.block-all-stories-v1 .as-card {
  display: flex; flex-direction: row; align-items: flex-start; gap: 24px;
  padding: 24px 0; text-decoration: none; color: inherit; cursor: pointer;
}

.block-all-stories-v1 .as-card-img-wrap {
  flex-shrink: 0; width: 280px; aspect-ratio: 16 / 9;
  border-radius: 16px; overflow: hidden;
  background: transparent;
}
.dark .block-all-stories-v1 .as-card-img-wrap { background: rgba(255,255,255,0.06); }
.block-all-stories-v1 .as-card-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.45s ease;
}
.block-all-stories-v1 .as-card:hover .as-card-img { transform: scale(1.05); }

.block-all-stories-v1 .as-card-body {
  flex: 1; align-self: stretch; display: flex; flex-direction: column; gap: 6px; min-width: 0;
}

.block-all-stories-v1 .as-card-category {
  display: none; align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.08em; line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px; padding: 4px 10px;
}
.block-all-stories-v1 .as-card-category:not(:empty) { display: inline-block; }
.dark .block-all-stories-v1 .as-card-category {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}

.block-all-stories-v1 .as-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700; line-height: 1.3;
  color: var(--color-black, #333333); margin: 0;
  transition: color 0.2s ease;
}
.dark .block-all-stories-v1 .as-card-title { color: var(--color-text-dark, #f0f4f2); }
.block-all-stories-v1 .as-card:hover .as-card-title { color: var(--color-forest-green, #004432); }
.dark .block-all-stories-v1 .as-card:hover .as-card-title { color: var(--color-accent-dark, #47B27A); }

.block-all-stories-v1 .as-card-seo {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}
.dark .block-all-stories-v1 .as-card-seo { color: var(--color-text-secondary-dark, rgba(255,255,255,0.62)); }

.block-all-stories-v1 .as-card-date {
  display: block; margin-top: auto;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px; line-height: 1.4; color: var(--color-grey-80, #4d4d4d);
}
.dark .block-all-stories-v1 .as-card-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-all-stories-v1 .as-footer { margin-top: 48px; text-align: center; }
.block-all-stories-v1 .as-footer.is-hidden { display: none; }

.block-all-stories-v1 .as-load-more {
  display: inline-flex; align-items: center; gap: 10px;
  padding: .85rem 1.5rem; border-radius: 4rem;
  background-color: var(--color-white, #FFFFFF);
  border: 1px solid var(--color-moss-green, #13735F);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1.125rem; font-weight: 600; line-height: 1em;
  cursor: pointer; transition: .16s ease-in-out all;
}
.block-all-stories-v1 .as-load-more:hover,
.block-all-stories-v1 .as-load-more:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  border-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v1 .as-load-more:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F); outline-offset: 4px;
}
.dark .block-all-stories-v1 .as-load-more {
  background-color: transparent;
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-accent-dark, #47B27A);
}
.dark .block-all-stories-v1 .as-load-more:hover,
.dark .block-all-stories-v1 .as-load-more:focus-visible {
  background-color: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}

.block-all-stories-v1.as-animate .as-header { opacity: 0; transition: opacity 0.7s ease; }
.block-all-stories-v1.as-animate .as-header.as-visible { opacity: 1; }
.block-all-stories-v1.as-animate .as-card { opacity: 0; transform: translateX(-8px); transition: opacity 0.5s ease, transform 0.5s ease; }
.block-all-stories-v1.as-animate .as-card.as-visible { opacity: 1; transform: translateX(0); }
@media (prefers-reduced-motion: reduce) {
  .block-all-stories-v1.as-animate .as-header,
  .block-all-stories-v1.as-animate .as-card { opacity: 1 !important; transform: none !important; transition: none !important; }
}

@media (min-width: 768px) {
  .block-all-stories-v1 .as-search-inner { padding: 0 48px; }
  .block-all-stories-v1 .as-mega-content { padding: 16px 48px 20px; }
  .block-all-stories-v1 .as-title { font-size: 40px; }
}

@media (min-width: 1024px) {
  .block-all-stories-v1 .as-search-inner { padding: 0 80px; }
  .block-all-stories-v1 .as-mega-content { padding: 16px 80px 20px; }
  .block-all-stories-v1 .as-header { margin-bottom: 40px; }
  .block-all-stories-v1 .as-title { font-size: 46px; }
}

@media (max-width: 767px) {
  .block-all-stories-v1 .as-inner { padding: 48px 24px; }
  .block-all-stories-v1 .as-card { flex-direction: column; gap: 12px; }
  .block-all-stories-v1 .as-card-img-wrap { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 16px; }
  .block-all-stories-v1 .as-mega-categories,
  .block-all-stories-v1 .as-mega-filters { gap: 6px; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-all-stories-v1 .as-card-img-wrap { width: 280px; }
}


/* all-stories-v2 */
/* All Stories V2 — search, featured stories and paged archive. */
.block-all-stories-v2 { background: var(--color-light-grey, #f7f7f7); color: var(--color-black, #333); }
.block-all-stories-v2 [hidden] { display: none !important; }
.block-all-stories-v2 button { cursor: pointer; }
.block-all-stories-v2 :is(button, input, select, a):focus-visible { outline: 3px solid var(--color-forest-green, #004432); outline-offset: 4px; }
/* Search controls match All Stories V1; panel motion is managed by the V2 runtime. */
.block-all-stories-v2 .as2-search {
  background: var(--color-moss-green, #13735F);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.block-all-stories-v2 .as2-search-inner {
  max-width: 1440px; margin: 0 auto; padding: 0 24px;
  height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 10px;
}

.block-all-stories-v2 .as2-search-title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px; font-weight: 700; line-height: 1;
  color: rgba(255, 255, 255, 0.9);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.block-all-stories-v2 .as2-search-actions { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.block-all-stories-v2 .as2-reset-filters {
  background: none; border: 0; padding: 6px 4px;
  color: rgba(255, 255, 255, 0.85);
  font: 600 .8125rem var(--font-body, 'Lato', sans-serif);
  text-decoration: underline; text-underline-offset: 3px;
  white-space: nowrap; transition: color .15s;
}
.block-all-stories-v2 .as2-reset-filters:hover { color: var(--color-white, #FFFFFF); }
@media (max-width: 479px) {
  .block-all-stories-v2 .as2-search-inner { height: auto; min-height: 48px; padding-block: 8px; flex-wrap: wrap; }
  .block-all-stories-v2 .as2-search-title { flex-shrink: 0; max-width: 100%; }
  .block-all-stories-v2 .as2-search-actions { margin-left: auto; }
  .block-all-stories-v2 .as2-reset-filters:not([hidden]) + .as2-search-toggle { min-width: 32px; min-height: 32px; justify-content: center; }
  .block-all-stories-v2 .as2-reset-filters:not([hidden]) + .as2-search-toggle .as2-toggle-open > span { display: none; }
}

.block-all-stories-v2 .as2-search-toggle {
  display: inline-flex; align-items: center; gap: 6px;
  background: none; border: none; padding: 0 4px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px; cursor: pointer; transition: color 0.15s;
}
.block-all-stories-v2 .as2-search-toggle:hover { color: var(--color-white, #FFFFFF); }
.block-all-stories-v2 .as2-toggle-open,
.block-all-stories-v2 .as2-toggle-close { display: inline-flex; align-items: center; gap: 6px; }
.block-all-stories-v2 .as2-search-toggle svg { flex-shrink: 0; }

.block-all-stories-v2 .as2-panel {
  box-sizing: border-box;
  background: var(--color-moss-green, #13735F);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.block-all-stories-v2 .as2-panel.is-animating { overflow: hidden; will-change: height, opacity; }

.block-all-stories-v2 .as2-panel-inner {
  max-width: 860px; margin: 0 auto; padding: 16px 24px 20px;
  display: flex; flex-direction: column; gap: 14px;
}

.block-all-stories-v2 .as2-input-row {
  display: flex; align-items: center; gap: 10px; width: 100%;
  max-width: 640px; margin: 0 auto;
}

.block-all-stories-v2 .as2-input-icon { color: rgba(255, 255, 255, 0.7); flex-shrink: 0; }

.block-all-stories-v2 .as2-input {
  background: none; border: none; outline: none; flex: 1; min-width: 0;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
}
.block-all-stories-v2 .as2-input::placeholder { color: rgba(255, 255, 255, 0.55); }
.block-all-stories-v2 .as2-input::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; display: none; }

.block-all-stories-v2 .as2-clear-query {
  display: inline-flex; align-items: center; justify-content: center;
  background: none; border: none; color: rgba(255, 255, 255, 0.7);
  cursor: pointer; padding: 4px; flex-shrink: 0; transition: color 0.15s;
}
.block-all-stories-v2 .as2-clear-query:hover { color: var(--color-white, #FFFFFF); }

.block-all-stories-v2 .as2-categories {
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px;
}

.block-all-stories-v2 .as2-category-filter {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 22px; padding: 5px 14px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  cursor: pointer; transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.block-all-stories-v2 .as2-category-filter:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.4);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v2 .as2-category-filter[aria-pressed='true'] {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}

.block-all-stories-v2 .as2-filters {
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 8px;
}

.block-all-stories-v2 .as2-filter-drop {
  position: relative;
}
.block-all-stories-v2 .as2-filter-btn {
  display: flex; align-items: center; gap: 6px;
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.25); border-radius: 8px;
  padding: 6px 10px 6px 12px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.8125rem; font-weight: 600;
  cursor: pointer; outline: none; white-space: nowrap;
  transition: background-color 0.15s, border-color 0.15s;
}
.block-all-stories-v2 .as2-filter-btn:hover,
.block-all-stories-v2 .as2-filter-drop.is-open .as2-filter-btn {
  background-color: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.4);
}
.block-all-stories-v2 .as2-filter-drop.has-value .as2-filter-btn {
  background-color: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.55);
}
.block-all-stories-v2 .as2-filter-chev {
  flex-shrink: 0; transition: transform 0.15s ease;
}
.block-all-stories-v2 .as2-filter-drop.is-open .as2-filter-chev {
  transform: rotate(180deg);
}
.block-all-stories-v2 .as2-filter-list {
  display: none; position: absolute; top: calc(100% + 6px); left: 0;
  min-width: 140px; max-height: 240px; overflow-y: auto;
  background: var(--color-forest-green, #004432);
  border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 8px;
  padding: 4px 0; margin: 0; list-style: none;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  z-index: 100;
}
.block-all-stories-v2 .as2-filter-drop.is-open .as2-filter-list {
  display: block;
}
.block-all-stories-v2 .as2-filter-list li {
  padding: 7px 14px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.8125rem; font-weight: 500;
  cursor: pointer; white-space: nowrap;
  transition: background-color 0.1s;
}
.block-all-stories-v2 .as2-filter-list li:hover,
.block-all-stories-v2 .as2-filter-list li:focus-visible {
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v2 .as2-filter-list li.is-active {
  color: var(--color-white, #FFFFFF); font-weight: 700;
  background-color: rgba(255, 255, 255, 0.15);
}

.block-all-stories-v2 .as2-input:focus, .block-all-stories-v2 .as2-input:focus-visible { outline: none; box-shadow: none; }
.block-all-stories-v2 .as2-search :focus-visible { outline-color: #fff; }
.block-all-stories-v2 .as2-filter-list li:focus-visible { outline: none; }
.block-all-stories-v2 .as2-clear { background: none; border: 0; color: rgba(255,255,255,.85); padding: 6px 10px; text-decoration: underline; font: 600 .8125rem var(--font-body, 'Lato', sans-serif); }
.block-all-stories-v2 :is(.as2-category, .as2-category-filter) :is(strong, b) { color: inherit; }
.block-all-stories-v2 .as2-latest, .block-all-stories-v2 .as2-archive { max-width: 960px; margin: auto; padding: 64px 24px; }
.block-all-stories-v2 .as2-latest:not([hidden]) + .as2-archive { padding-top: 0; }
.block-all-stories-v2 .as2-latest-header { text-align: center; margin-bottom: 48px; }
.block-all-stories-v2 .as2-latest-title, .block-all-stories-v2 .as2-title, .block-all-stories-v2 .as2-results-title { font: 700 32px/1.15 var(--font-heading, 'Sora', sans-serif); color: var(--color-forest-green, #004432); margin: 0 0 16px; }
.block-all-stories-v2 .as2-latest-title { display: flex; align-items: center; justify-content: center; gap: 8px; }
.block-all-stories-v2 .as2-title-bird { height: .85em; width: auto; flex-shrink: 0; fill: currentColor; }
.block-all-stories-v2 :is(.as2-latest-title, .as2-title, .as2-desc, .as2-latest-desc) p { margin: 0; }
.block-all-stories-v2 .as2-desc, .block-all-stories-v2 .as2-latest-desc { font: 400 18px/1.6 var(--font-body, 'Lato', sans-serif); color: var(--color-grey-80, #4d4d4d); }
.block-all-stories-v2 .as2-header { margin-bottom: 32px; }
.block-all-stories-v2 .as2-latest-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; margin: 0; }
.block-all-stories-v2 .as2-item { min-width: 0; }
.block-all-stories-v2 .as2-item--hero { grid-column: 1 / -1; }
.block-all-stories-v2 .as2-list { list-style: none; padding: 0; margin: 0; }
.block-all-stories-v2 .as2-card { display: flex; color: inherit; text-decoration: none; }
.block-all-stories-v2 .as2-card--hero, .block-all-stories-v2 .as2-card--sub { border-radius: 16px; background: var(--color-white, #fff); overflow: hidden; height: 100%; transition: transform .2s ease, box-shadow .2s ease; }
.block-all-stories-v2 .as2-card--hero:hover, .block-all-stories-v2 .as2-card--sub:hover { transform: translateY(-3px); box-shadow: 0 12px 40px rgba(0,68,50,.12); }
.block-all-stories-v2 .as2-card-image { overflow: hidden; background: transparent; }
.block-all-stories-v2 .as2-card-image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .45s ease; }
.block-all-stories-v2 .as2-card:hover .as2-card-image img { transform: scale(1.05); }
.block-all-stories-v2 .as2-card--hero .as2-card-image { width: 55%; flex-shrink: 0; aspect-ratio: 16 / 9; }
.block-all-stories-v2 .as2-card-body { display: flex; flex: 1; min-width: 0; flex-direction: column; gap: 8px; }
.block-all-stories-v2 .as2-card--hero .as2-card-body { padding: 40px 32px; gap: 12px; }
.block-all-stories-v2 .as2-card--sub { flex-direction: column; }
.block-all-stories-v2 .as2-card--sub .as2-card-image { width: 100%; aspect-ratio: 16 / 9; }
.block-all-stories-v2 .as2-card--sub .as2-card-body { padding: 24px 32px 32px; }
.block-all-stories-v2 .as2-category { align-self: flex-start; font: 700 .68rem/1.4 var(--font-body, 'Lato', sans-serif); text-transform: uppercase; letter-spacing: .08em; color: var(--color-forest-green, #004432); background: rgba(0,68,50,.07); border: 1px solid rgba(0,68,50,.15); border-radius: 8px; padding: 4px 12px; }
.block-all-stories-v2 .as2-card-title { font: 700 24px/1.3 var(--font-heading, 'Sora', sans-serif); margin: 0; overflow-wrap: anywhere; }
.block-all-stories-v2 .as2-card-desc { font: 400 18px/1.6 var(--font-body, 'Lato', sans-serif); margin: 0; overflow-wrap: anywhere; }
.block-all-stories-v2 .as2-card-date { font: 400 18px/1.6 var(--font-body, 'Lato', sans-serif); color: var(--color-grey-60, #737373); margin-top: auto; }
.block-all-stories-v2 .as2-list .as2-item + .as2-item { border-top: 1px solid var(--color-grey-20, #dcdcdc); }
.block-all-stories-v2 .as2-card--row { gap: 24px; padding: 24px 0; }
.block-all-stories-v2 .as2-card--row .as2-card-image { width: 280px; aspect-ratio: 16 / 9; border-radius: 16px; flex-shrink: 0; align-self: flex-start; }
.block-all-stories-v2 .as2-card--row:hover .as2-card-title { color: var(--color-forest-green, #004432); }
.block-all-stories-v2 .as2-footer { margin-top: 48px; text-align: center; }
.block-all-stories-v2 .as2-load-more {
  display: inline-flex; align-items: center; gap: 10px;
  padding: .85rem 1.5rem; border-radius: 4rem;
  background-color: var(--color-white, #FFFFFF);
  border: 1px solid var(--color-moss-green, #13735F);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1.125rem; font-weight: 600; line-height: 1em;
  cursor: pointer; transition: .16s ease-in-out all;
}
.block-all-stories-v2 .as2-load-more:hover,
.block-all-stories-v2 .as2-load-more:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  border-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
}
.block-all-stories-v2 .as2-load-more:focus-visible,
.dark .block-all-stories-v2 .as2-load-more:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F); outline-offset: 4px;
}
.dark .block-all-stories-v2 .as2-load-more {
  background-color: transparent;
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-accent-dark, #47B27A);
}
.dark .block-all-stories-v2 .as2-load-more:hover,
.dark .block-all-stories-v2 .as2-load-more:focus-visible {
  background-color: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}
.block-all-stories-v2 .as2-empty, .block-all-stories-v2 .as2-error { font: 400 18px/1.6 var(--font-body, 'Lato', sans-serif); color: var(--color-grey-60, #737373); text-align: center; padding: 24px; margin: 0; }
.block-all-stories-v2 .as2-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.dark .block-all-stories-v2 { background: var(--color-bg-dark, #0f1a14); color: var(--color-text-dark, #f0f4f2); }
.dark .block-all-stories-v2 :is(.as2-latest-title, .as2-title, .as2-results-title) { color: var(--color-accent-dark, #47b27a); }
.dark .block-all-stories-v2 :is(.as2-card--hero, .as2-card--sub) { background: var(--color-surface-dark, #1a2920); }
.dark .block-all-stories-v2 :is(.as2-desc, .as2-latest-desc, .as2-card-desc, .as2-card-date, .as2-empty, .as2-error) { color: rgba(255,255,255,.65); }
.dark .block-all-stories-v2 .as2-category { color: rgba(255,255,255,.85); background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.2); }
.dark .block-all-stories-v2 .as2-list .as2-item + .as2-item { border-color: rgba(255,255,255,.1); }
.dark .block-all-stories-v2 .as2-card--row:hover .as2-card-title { color: var(--color-accent-dark, #47b27a); }
.dark .block-all-stories-v2 :is(button, input, select, a):focus-visible { outline-color: var(--color-mint-green, #47b27a); }
/* V1 entrance timing; animate item wrappers so card hover transforms stay independent. */
.block-all-stories-v2 .as2-reveal { opacity: 0; }
.block-all-stories-v2 .as2-item.as2-reveal { transform: translateX(-8px); }
.block-all-stories-v2 .as2-reveal.as2-visible { opacity: 1; transition: opacity .7s ease; }
.block-all-stories-v2 .as2-item.as2-reveal.as2-visible { transform: translateX(0); transition: opacity .5s ease, transform .5s ease; }
.block-all-stories-v2 .as2-reveal:focus-within { opacity: 1; transform: none; transition: none; }
@media (min-width: 768px) {
  .block-all-stories-v2 .as2-search-inner { padding: 0 48px; }
  .block-all-stories-v2 .as2-panel-inner { padding: 16px 48px 20px; }
  .block-all-stories-v2 :is(.as2-latest-title, .as2-title, .as2-results-title) { font-size: 40px; }
}
@media (min-width: 1024px) {
  .block-all-stories-v2 .as2-search-inner { padding: 0 80px; }
  .block-all-stories-v2 .as2-panel-inner { padding: 16px 80px 20px; }
  .block-all-stories-v2 :is(.as2-latest-title, .as2-title, .as2-results-title) { font-size: 46px; }
}
@media (max-width: 767px) {
  .block-all-stories-v2 .as2-latest, .block-all-stories-v2 .as2-archive { padding: 48px 24px; }
  .block-all-stories-v2 .as2-latest-grid { grid-template-columns: minmax(0, 1fr); }
  .block-all-stories-v2 .as2-card--hero, .block-all-stories-v2 .as2-card--row { flex-direction: column; }
  .block-all-stories-v2 .as2-card--hero .as2-card-image, .block-all-stories-v2 .as2-card--row .as2-card-image { width: 100%; }
  .block-all-stories-v2 .as2-card--hero .as2-card-body { padding: 24px; }
  .block-all-stories-v2 .as2-card--row { gap: 16px; }
  .block-all-stories-v2 .as2-categories, .block-all-stories-v2 .as2-filters { gap: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .block-all-stories-v2 .as2-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  .block-all-stories-v2 .as2-card, .block-all-stories-v2 .as2-card-image img { transition: none; transform: none !important; }
}

/* All Stories V2 — hero thumbnail 16:9, text below */
.block-all-stories-v2 .as2-card--hero {
  width: 100%;
  flex-direction: column;
}

.block-all-stories-v2 .as2-card--hero .as2-card-image {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  flex: 0 0 auto;
  overflow: hidden;
}

.block-all-stories-v2 .as2-card--hero .as2-card-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.block-all-stories-v2 .as2-card--hero .as2-card-body {
  flex: 0 0 auto;
  justify-content: flex-start;
}


/* card-timeline-cta-v1 */
/* Card Timeline CTA (block-card-timeline-cta-v1) */

.block-card-timeline-cta-v2 {
  --card-timeline-cta-v1-bg: var(--color-light-grey, #f7f7f7);
  --card-timeline-cta-v1-slide-width: calc(100vw - 96px);
  --card-timeline-cta-v1-track-gap: 24px;
  --card-timeline-cta-v1-track-gutter: 24px;
  --card-timeline-cta-v1-end-gutter: var(--card-timeline-cta-v1-track-gutter);
  overflow: hidden;
  background: var(--card-timeline-cta-v1-bg);
  color: var(--color-black, #333333);
}

.block-card-timeline-cta-v2[data-background-color='#FFFFFF'] {
  --card-timeline-cta-v1-bg: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v2[data-background-color='#F7F7F7'] {
  --card-timeline-cta-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-card-timeline-cta-v2 {
  --card-timeline-cta-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-card-timeline-cta-v2
  .card-timeline-cta-v1__track:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: -3px;
}

.dark
  .block-card-timeline-cta-v2
  .card-timeline-cta-v1__track:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__header {
  max-width: 760px;
  margin-bottom: 40px;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__headline p,
.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__description {
  margin-top: 24px;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__description p {
  margin: 0 0 12px;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__description p:last-child {
  margin-bottom: 0;
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__carousel {
  width: 100vw;
  min-width: 0;
  margin-left: calc(50% - 50vw);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__track {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: var(--card-timeline-cta-v1-track-gap);
  width: 100%;
  margin: 0;
  padding: 0 0 0 var(--card-timeline-cta-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-padding-inline-start: var(--card-timeline-cta-v1-track-gutter);
  scroll-padding-inline-end: var(--card-timeline-cta-v1-end-gutter);
  scroll-behavior: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
  list-style: none;
  box-sizing: border-box;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__track::after {
  content: '';
  flex: 0 0 max(
    0px,
    calc(var(--card-timeline-cta-v1-end-gutter) - var(--card-timeline-cta-v1-track-gap))
  );
}

.block-card-timeline-cta-v2.ctl-single-card .card-timeline-cta-v1__track {
  overflow-x: hidden;
}

.block-card-timeline-cta-v2.ctl-single-card .card-timeline-cta-v1__track::after {
  display: none;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__track::-webkit-scrollbar {
  display: none;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item {
  --card-timeline-cta-v1-card-bg: var(--color-moss-green, #13735f);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
  display: flex;
  flex: 0 0 var(--card-timeline-cta-v1-slide-width);
  min-width: 0;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='forest-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-forest-green, #004432);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='mint-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-mint-green, #47b27a);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='red'] {
  --card-timeline-cta-v1-card-bg: var(--color-red, #e52322);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='light-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-light-green, #8acbc1);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='corn-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-corn-green, #94c24a);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='yellow-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --card-timeline-cta-v1-card-copy: var(--color-black, #333333);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='moss-green'] {
  --card-timeline-cta-v1-card-bg: var(--color-moss-green, #13735f);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__item[data-card-color='dark-red'] {
  --card-timeline-cta-v1-card-bg: var(--color-dark-red, #861135);
  --card-timeline-cta-v1-card-copy: var(--color-white, #ffffff);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  padding: 24px;
  border-radius: 16px;
  background: var(--card-timeline-cta-v1-card-bg);
  color: var(--card-timeline-cta-v1-card-copy);
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__title {
  margin: 0;
  color: inherit;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.25;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__title p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__body {
  margin-top: 16px;
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__body p {
  margin: 0 0 12px;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__body p:last-child {
  margin-bottom: 0;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__body a,
.block-card-timeline-cta-v2 .card-timeline-cta-v1__body strong,
.block-card-timeline-cta-v2 .card-timeline-cta-v1__body b {
  color: inherit;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__body a {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__nav {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 24px;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__nav[hidden] {
  display: none;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__progress {
  display: flex;
  height: 40px;
  min-width: 0;
  flex: 1;
  align-items: center;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__progress-fill {
  position: relative;
  height: 4px;
  min-width: 0;
  flex: 1;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--ctl-progress, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__button {
  display: flex;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  padding: 0;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 68, 50, 1);
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__button:hover:not(:disabled) {
  background: rgba(19, 115, 95, 1);
  color: rgba(255, 255, 255, 1);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__button:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__button:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__button {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__button:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__button:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__footer {
  margin-top: 32px;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:hover,
.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:hover,
.dark .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:hover .card-timeline-cta-v1__cta-icon,
.block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:focus-visible .card-timeline-cta-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-card-timeline-cta-v2 {
    --card-timeline-cta-v1-slide-width: calc((100vw - 128px) / 2);
    --card-timeline-cta-v1-track-gap: 32px;
    --card-timeline-cta-v1-track-gutter: 48px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__inner {
    padding: 64px 48px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__headline {
    font-size: 40px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__card {
    padding: 32px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__title {
    font-size: 24px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__progress {
    width: 220px;
    flex: none;
  }
}

@media (min-width: 1024px) {
  .block-card-timeline-cta-v2 {
    --card-timeline-cta-v1-slide-width: min(405.3333px, calc((100vw - 224px) / 3));
    --card-timeline-cta-v1-track-gutter: max(80px, calc(50vw - 640px));
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__inner {
    padding: 64px 80px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__card {
    padding: 48px;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__headline {
    font-size: 46px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-card-timeline-cta-v2 .card-timeline-cta-v1__progress-fill::after,
  .block-card-timeline-cta-v2 .card-timeline-cta-v1__button,
  .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta,
  .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta-icon {
    transition: none !important;
  }

  .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:hover .card-timeline-cta-v1__cta-icon,
  .block-card-timeline-cta-v2 .card-timeline-cta-v1__cta:focus-visible .card-timeline-cta-v1__cta-icon {
    transform: none !important;
  }
}

.block-card-timeline-cta-v2 .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}


/* center-cta-v1 */
/* Center CTA (block-center-cta-v1) */

/* Solid presets: hide decorative illustration */
.block-center-cta-v1[data-preset^="solid-"] .center-cta-v1__illustration {
  display: none;
}

/* White */
.block-center-cta-v1[data-preset="solid-white"] {
  --center-cta-v1-bg: var(--color-white, #ffffff);
  --center-cta-v1-foreground: var(--color-forest-green, #004432);
  --center-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --center-cta-v1-focus: var(--color-forest-green, #004432);
  --center-cta-v1-focus-shadow: rgba(0, 68, 50, 0.32);
}

/* Dark solid backgrounds */
.block-center-cta-v1[data-preset="solid-mossgreen"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735f);
}

.block-center-cta-v1[data-preset="solid-red"] {
  --center-cta-v1-bg: var(--color-red, #e52322);
}

.block-center-cta-v1[data-preset="solid-darkred"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="solid-mossgreen"],
.block-center-cta-v1[data-preset="solid-red"],
.block-center-cta-v1[data-preset="solid-darkred"] {
  --center-cta-v1-foreground: var(--color-white, #ffffff);
  --center-cta-v1-foreground-inverse: var(--center-cta-v1-bg);
  --center-cta-v1-focus: var(--color-white, #ffffff);
  --center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Light solid backgrounds */
.block-center-cta-v1[data-preset="solid-mint"] {
  --center-cta-v1-bg: var(--color-mint-green, #47b27a);
}

.block-center-cta-v1[data-preset="solid-lightgreen"] {
  --center-cta-v1-bg: var(--color-light-green, #8acbc1);
}

.block-center-cta-v1[data-preset="solid-yellow"] {
  --center-cta-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-center-cta-v1[data-preset="solid-corngreen"] {
  --center-cta-v1-bg: var(--color-corn-green, #94c24a);
}

.block-center-cta-v1[data-preset="solid-mint"],
.block-center-cta-v1[data-preset="solid-lightgreen"],
.block-center-cta-v1[data-preset="solid-yellow"],
.block-center-cta-v1[data-preset="solid-corngreen"] {
  --center-cta-v1-foreground: var(--color-black, #333333);
  --center-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --center-cta-v1-focus: var(--color-black, #333333);
  --center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-center-cta-v1 {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-mint-green, #47b27a);
  --center-cta-v1-foreground: var(--color-white, #ffffff);
  --center-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --center-cta-v1-focus: var(--color-white, #ffffff);
  --center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--center-cta-v1-bg);
  color: var(--center-cta-v1-foreground);
}

/* ── Illustrated Styles: light foreground ───────────────── */

.block-center-cta-v1[data-preset="forest-red"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-red, #E52322);
}

.block-center-cta-v1[data-preset="forest-moss"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-center-cta-v1[data-preset="forest-darkred"] {
  --center-cta-v1-bg: var(--color-forest-green, #004432);
  --center-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="red-forest"] {
  --center-cta-v1-bg: var(--color-red, #E52322);
  --center-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-center-cta-v1[data-preset="red-moss"] {
  --center-cta-v1-bg: var(--color-red, #E52322);
  --center-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-center-cta-v1[data-preset="red-darkred"] {
  --center-cta-v1-bg: var(--color-red, #E52322);
  --center-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="moss-forest"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735F);
  --center-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-center-cta-v1[data-preset="moss-red"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735F);
  --center-cta-v1-illu: var(--color-red, #E52322);
}

.block-center-cta-v1[data-preset="moss-darkred"] {
  --center-cta-v1-bg: var(--color-moss-green, #13735F);
  --center-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-center-cta-v1[data-preset="darkred-forest"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
  --center-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-center-cta-v1[data-preset="darkred-red"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
  --center-cta-v1-illu: var(--color-red, #E52322);
}

.block-center-cta-v1[data-preset="darkred-moss"] {
  --center-cta-v1-bg: var(--color-dark-red, #861135);
  --center-cta-v1-illu: var(--color-moss-green, #13735F);
}

/* ── Illustrated Styles: dark foreground ────────────────── */

.block-center-cta-v1[data-preset="mint-yellow"] {
  --center-cta-v1-bg: var(--color-mint-green, #47B27A);
  --center-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-center-cta-v1[data-preset="mint-light"] {
  --center-cta-v1-bg: var(--color-mint-green, #47B27A);
  --center-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-center-cta-v1[data-preset="mint-corn"] {
  --center-cta-v1-bg: var(--color-mint-green, #47B27A);
  --center-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-center-cta-v1[data-preset="yellow-mint"] {
  --center-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --center-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-center-cta-v1[data-preset="yellow-light"] {
  --center-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --center-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-center-cta-v1[data-preset="yellow-corn"] {
  --center-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --center-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-center-cta-v1[data-preset="light-mint"] {
  --center-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --center-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-center-cta-v1[data-preset="light-yellow"] {
  --center-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --center-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-center-cta-v1[data-preset="light-corn"] {
  --center-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --center-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-center-cta-v1[data-preset="corn-mint"] {
  --center-cta-v1-bg: var(--color-corn-green, #94C24A);
  --center-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-center-cta-v1[data-preset="corn-yellow"] {
  --center-cta-v1-bg: var(--color-corn-green, #94C24A);
  --center-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-center-cta-v1[data-preset="corn-light"] {
  --center-cta-v1-bg: var(--color-corn-green, #94C24A);
  --center-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

/* ── Illustrated Styles: dark foreground treatment ──────── */

.block-center-cta-v1[data-preset="mint-yellow"],
.block-center-cta-v1[data-preset="mint-light"],
.block-center-cta-v1[data-preset="mint-corn"],
.block-center-cta-v1[data-preset="yellow-mint"],
.block-center-cta-v1[data-preset="yellow-light"],
.block-center-cta-v1[data-preset="yellow-corn"],
.block-center-cta-v1[data-preset="light-mint"],
.block-center-cta-v1[data-preset="light-yellow"],
.block-center-cta-v1[data-preset="light-corn"],
.block-center-cta-v1[data-preset="corn-mint"],
.block-center-cta-v1[data-preset="corn-yellow"],
.block-center-cta-v1[data-preset="corn-light"] {
  --center-cta-v1-foreground: var(--color-black, #333333);
  --center-cta-v1-foreground-inverse: var(--color-white, #FFFFFF);
  --center-cta-v1-focus: var(--color-black, #333333);
  --center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-center-cta-v1 .center-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--center-cta-v1-illu);
  pointer-events: none;
}

.block-center-cta-v1 .center-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 280%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  shape-rendering: geometricPrecision;
  transform-origin: center center;
  transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-center-cta-v1:hover .center-cta-v1__illustration-svg,
.block-center-cta-v1:focus-within .center-cta-v1__illustration-svg {
  transform: scale(1.25);
}

.block-center-cta-v1 .center-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  max-width: 1440px;
  min-height: 400px;
  margin: 0 auto;
  padding: 64px 24px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  box-sizing: border-box;
  text-align: center;
}

.block-center-cta-v1 .center-cta-v1__heading {
  width: 100%;
  max-width: 900px;
  margin: 0;
  color: var(--center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-center-cta-v1 .center-cta-v1__heading p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-center-cta-v1 .center-cta-v1__heading strong,
.block-center-cta-v1 .center-cta-v1__heading b,
.block-center-cta-v1 .center-cta-v1__heading a {
  color: var(--center-cta-v1-foreground);
}

.block-center-cta-v1 .center-cta-v1__heading a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-center-cta-v1 .center-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--center-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-center-cta-v1 .center-cta-v1__button:hover,
.block-center-cta-v1 .center-cta-v1__button:focus-visible,
.block-center-cta-v1 .center-cta-v1__button:focus {
  border-color: var(--center-cta-v1-foreground);
  background-color: var(--center-cta-v1-foreground);
  color: var(--center-cta-v1-foreground-inverse);
}

.block-center-cta-v1 .center-cta-v1__button:focus-visible,
.block-center-cta-v1 .center-cta-v1__button:focus {
  outline: 3px solid var(--center-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--center-cta-v1-focus-shadow);
}

.block-center-cta-v1 .center-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-center-cta-v1 .center-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-center-cta-v1 .center-cta-v1__button:hover .center-cta-v1__button-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-center-cta-v1 .center-cta-v1__illustration-svg {
    height: 640%;
  }

  .block-center-cta-v1 .center-cta-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-center-cta-v1 .center-cta-v1__inner {
    padding: 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-center-cta-v1 .center-cta-v1__illustration-svg {
    transform: none !important;
    transition: none;
  }

  .block-center-cta-v1 .center-cta-v1__button,
  .block-center-cta-v1 .center-cta-v1__button-icon {
    transition: none;
  }
}


/* center-picture-v1 */
/* ── Center Picture (block-center-picture-v1) ───────────────────── */

.block-center-picture-v1 {
  --center-picture-v1-bg: var(--color-white, #FFFFFF);
  --center-picture-v1-padding-top: 64px;
  --center-picture-v1-padding-bottom: 64px;
  background: var(--center-picture-v1-bg);
}

.block-center-picture-v1[data-background-color="#FFFFFF"] {
  --center-picture-v1-bg: var(--color-white, #FFFFFF);
}

.block-center-picture-v1[data-background-color="#F7F7F7"] {
  --center-picture-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-center-picture-v1 {
  --center-picture-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-center-picture-v1[data-padding-top="true"] {
  --center-picture-v1-padding-top: 64px;
}

.block-center-picture-v1[data-padding-top="false"] {
  --center-picture-v1-padding-top: 0px;
}

.block-center-picture-v1[data-padding-bottom="true"] {
  --center-picture-v1-padding-bottom: 64px;
}

.block-center-picture-v1[data-padding-bottom="false"] {
  --center-picture-v1-padding-bottom: 0px;
}

/* Outer: max 1440px centered with responsive padding */
.block-center-picture-v1 .cp-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--center-picture-v1-padding-top) 24px var(--center-picture-v1-padding-bottom);
}

/* Inner: full width, centered (picture spans full padded area) */
.block-center-picture-v1 .cp-inner {
  margin: 0 auto;
}

/* ── Picture wrap ── */

.block-center-picture-v1 .cp-img-wrap {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background: transparent;
}
.dark .block-center-picture-v1 .cp-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}
.block-center-picture-v1.cp-has-lightbox .cp-img-wrap { cursor: zoom-in; }

/* Blurred background shown only for portrait pictures */
.block-center-picture-v1 .cp-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}
.block-center-picture-v1 .cp-img-wrap.cp-portrait .cp-bg { display: block; }

.block-center-picture-v1 .cp-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.block-center-picture-v1 .cp-img-wrap.cp-portrait .cp-img { object-fit: contain; }

/* ── Placeholder ── */

.block-center-picture-v1 .cp-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-center-picture-v1 .cp-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

/* ── Zoom button — hidden unless lightbox is enabled ── */

.block-center-picture-v1 .cp-zoom-btn {
  display: none;
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: zoom-in;
  opacity: 0;
  transition: opacity 0.15s ease, background-color 0.15s ease;
}
.block-center-picture-v1.cp-has-lightbox .cp-zoom-btn { display: flex; }
.block-center-picture-v1 .cp-img-wrap:hover .cp-zoom-btn,
.block-center-picture-v1 .cp-img-wrap:focus-within .cp-zoom-btn { opacity: 1; }
@media (max-width: 767px) {
  .block-center-picture-v1.cp-has-lightbox .cp-zoom-btn { opacity: 1; }
}
.block-center-picture-v1 .cp-zoom-btn:hover { background: rgba(0, 0, 0, 0.65); }
.block-center-picture-v1 .cp-zoom-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  opacity: 1;
}

/* ── Lightbox — hidden by default, shown via JS class ── */

.block-center-picture-v1 .cp-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.block-center-picture-v1 .cp-lightbox.cp-lb-open { display: flex; }

.block-center-picture-v1 .cp-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: cp-lb-in 0.2s ease;
}
@keyframes cp-lb-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.block-center-picture-v1 .cp-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: 92vh;
  animation: cp-lb-up 0.2s ease;
}
@keyframes cp-lb-up {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.block-center-picture-v1 .cp-lb-img {
  display: block;
  max-width: 100%;
  max-height: 92vh;
  border-radius: 8px;
  object-fit: contain;
}

.block-center-picture-v1 .cp-lb-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.block-center-picture-v1 .cp-lb-close:hover { background: rgba(255, 255, 255, 0.22); }
.block-center-picture-v1 .cp-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

/* ── Caption ── */

.block-center-picture-v1 .cp-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-center-picture-v1 .cp-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-center-picture-v1 .cp-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-center-picture-v1 .cp-caption a { color: var(--color-accent-dark); }
.block-center-picture-v1 .cp-caption a:hover { text-decoration: none; }

@media (min-width: 768px) {
  .block-center-picture-v1 .cp-outer { padding-left: 48px; padding-right: 48px; }
}

@media (min-width: 1024px) {
  .block-center-picture-v1 .cp-outer {
    padding: var(--center-picture-v1-padding-top) 80px var(--center-picture-v1-padding-bottom);
  }
}


/* center-video-v1 */
/* center-video-v1: complete independent CSS for block-center-video-v1 */
.block-center-video-v1 .sv-yt-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-center-video-v1 .sv-yt-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-center-video-v1 .sv-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}

.block-center-video-v1 .sv-video-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-center-video-v1 .sv-video-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-center-video-v1 .sv-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  object-fit: cover;
}

.block-center-video-v1 .sv-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-center-video-v1 .sv-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

.block-center-video-v1:not([data-src="true"]) .sv-yt-container { display: none; }
.block-center-video-v1[data-src="true"] .sv-video-wrap,
.block-center-video-v1[data-src="true"] .sv-placeholder { display: none; }

.block-center-video-v1 .sv-yt-container {
  position: relative;
}

.block-center-video-v1 .sv-consent-gate {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  background: var(--color-forest-green, #004432);
  background-size: cover;
  background-position: center;
  text-align: center;
  isolation: isolate;
}

.block-center-video-v1 .sv-consent-gate::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  z-index: 0;
  pointer-events: none;
}

.block-center-video-v1 .sv-consent-text {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(12px, 1.2vw, 14px);
  line-height: 1.55;
  color: var(--color-white);
  max-width: 480px;
  margin: 0;
  position: relative;
  z-index: 1;
}

.block-center-video-v1 .sv-consent-btn {
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 22px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  background: transparent;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  z-index: 1;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.block-center-video-v1 .sv-consent-btn:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: var(--color-white, #FFFFFF);
}

.block-center-video-v1 .sv-consent-btn:focus-visible {
  outline: 3px solid var(--color-mint-green, #47B27A);
  outline-offset: 4px;
}

.block-center-video-v1 .sv-consent-icon {
  flex-shrink: 0;
}


.block-center-video-v1 .sv-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-center-video-v1 .sv-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-center-video-v1 .sv-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-center-video-v1 .sv-caption a { color: var(--color-accent-dark); }
.block-center-video-v1 .sv-caption a:hover { text-decoration: none; }

/* Revoke YouTube consent */
.block-center-video-v1 .sv-revoke-wrap {
  padding: 6px 0 0;
  text-align: right;
}
.block-center-video-v1 .sv-revoke-btn {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(10px, 1.1vw, 11px);
  color: var(--color-grey-60, #666666);
  background: none;
  border: none;
  padding: 2px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}
.dark .block-center-video-v1 .sv-revoke-btn {
  color: rgba(255, 255, 255, 0.3);
}
.block-center-video-v1 .sv-revoke-btn:hover {
  color: var(--color-forest-green, #004432);
}
.dark .block-center-video-v1 .sv-revoke-btn:hover {
  color: rgba(255, 255, 255, 0.65);
}
.block-center-video-v1 .sv-revoke-btn:focus-visible {
  outline: 2px solid #47b27a;
  outline-offset: 2px;
  border-radius: 2px;
}

/* Lights-out button */
.block-center-video-v1 .sv-inner {
  position: relative;
}

.block-center-video-v1 .sv-lights-btn {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.42);
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.block-center-video-v1 .sv-lights-btn:hover {
  background: rgba(0, 0, 0, 0.65);
  color: var(--color-white);
}
.block-center-video-v1 .sv-lights-btn:focus-visible {
  outline: 3px solid #47b27a;
  outline-offset: 3px;
}
/* Cinema mode: video player punches through overlay, button floats above */
.block-center-video-v1[data-lights="on"] .sv-yt-container,
.block-center-video-v1[data-lights="on"] .sv-video-wrap {
  position: relative;
  z-index: 9992;
  border-radius: 8px;
  overflow: hidden;
}
.block-center-video-v1[data-lights="on"] .sv-lights-btn {
  z-index: 9993;
  background: rgba(2, 10, 4, 0.85);
  color: #c6f080;
  border-color: rgba(198, 240, 128, 0.3);
}
.block-center-video-v1 .sv-lights-btn .sv-lb-off { display: block; }
.block-center-video-v1 .sv-lights-btn .sv-lb-on  { display: none; }
.block-center-video-v1[data-lights="on"] .sv-lights-btn .sv-lb-off { display: none; }
.block-center-video-v1[data-lights="on"] .sv-lights-btn .sv-lb-on  { display: block; }

/* Overlay injected into body by JS */
.center-video-v1-lights-overlay {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(2, 10, 4, 0.92);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.center-video-v1-lights-forest {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}

.center-video-v1-lights-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes center-video-v1-fly-glow {
  0%, 100% { opacity: 0.15; box-shadow: 0 0 4px 2px rgba(160, 240, 100, 0.25); }
  50%       { opacity: 0.9;  box-shadow: 0 0 8px 4px rgba(190, 255, 130, 0.7); }
}
@keyframes center-video-v1-fly-float {
  0%   { transform: translate(0, 0); }
  33%  { transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5)); }
  66%  { transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy)); }
  100% { transform: translate(0, 0); }
}
.center-video-v1-lights-fly {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    center-video-v1-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    center-video-v1-fly-float var(--fly-float, 5s) ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .center-video-v1-lights-overlay { transition: none; }
  .center-video-v1-lights-fly { animation: none; opacity: 0.5; }
}


/* Block layout and overrides */
/* ── Center Video (block-center-video-v1) ───────────────────── */

.block-center-video-v1 {
  --center-video-v1-bg: var(--color-white, #FFFFFF);
  --center-video-v1-padding-top: 64px;
  --center-video-v1-padding-bottom: 64px;
  background: var(--center-video-v1-bg);
}

.block-center-video-v1[data-background-color="#FFFFFF"] {
  --center-video-v1-bg: var(--color-white, #FFFFFF);
}

.block-center-video-v1[data-background-color="#F7F7F7"] {
  --center-video-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-center-video-v1 {
  --center-video-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-center-video-v1[data-padding-top="true"] {
  --center-video-v1-padding-top: 64px;
}

.block-center-video-v1[data-padding-top="false"] {
  --center-video-v1-padding-top: 0px;
}

.block-center-video-v1[data-padding-bottom="true"] {
  --center-video-v1-padding-bottom: 64px;
}

.block-center-video-v1[data-padding-bottom="false"] {
  --center-video-v1-padding-bottom: 0px;
}

.block-center-video-v1 .cv-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--center-video-v1-padding-top) 24px var(--center-video-v1-padding-bottom);
}

.block-center-video-v1 .sv-inner {
  margin: 0 auto;
}

/* The figure has no inner padding, so keep the cinema button 8px inside the frame. */
.block-center-video-v1 .sv-lights-btn {
  top: 8px;
  right: 8px;
}

@media (min-width: 768px) {
  .block-center-video-v1 .cv-outer {
    padding-left: 48px;
    padding-right: 48px;
  }
}

@media (min-width: 1024px) {
  .block-center-video-v1 .cv-outer {
    padding: var(--center-video-v1-padding-top) 80px var(--center-video-v1-padding-bottom);
  }
}


/* contact-card-v1 */
/* Contact Card (block-contact-card-v1) */

.block-contact-card-v1 {
  --contact-card-v1-bg: var(--color-light-grey, #f7f7f7);
  --contact-card-v1-text: var(--color-black, #333333);
  --contact-card-v1-green: var(--color-forest-green, #004432);
  --contact-card-v1-link: var(--color-moss-green, #13735f);
  --contact-card-v1-muted: var(--color-grey-80, #4d4d4d);
  --contact-card-v1-panel: #f2f2f2;
  --contact-card-v1-divider: rgba(0, 68, 50, 0.14);
  --contact-card-v1-icon-bg: rgba(0, 68, 50, 0.08);
  --contact-card-v1-avatar-ring: var(--color-white, #ffffff);
  --contact-card-v1-avatar-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
  --contact-card-v1-panel-radius: 8px;
  --contact-card-v1-spine-width: 10px;
  --contact-card-v1-spine-highlight: rgba(255, 255, 255, 0.22);
  --contact-card-v1-spine-stripe: rgba(255, 255, 255, 0.12);
  --contact-card-v1-spine-shadow: rgba(0, 0, 0, 0.16);
  background: var(--contact-card-v1-bg);
  color: var(--contact-card-v1-text);
}

.block-contact-card-v1[data-background-color="#FFFFFF"] {
  --contact-card-v1-bg: var(--color-white, #ffffff);
}

.block-contact-card-v1[data-background-color="#F7F7F7"] {
  --contact-card-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-contact-card-v1 {
  --contact-card-v1-bg: var(--color-bg-dark, #0f1a14);
  --contact-card-v1-text: var(--color-text-dark, #f0f4f2);
  --contact-card-v1-green: var(--color-accent-dark, #47b27a);
  --contact-card-v1-link: var(--color-accent-dark, #47b27a);
  --contact-card-v1-muted: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.64));
  --contact-card-v1-panel: rgba(255, 255, 255, 0.06);
  --contact-card-v1-divider: rgba(255, 255, 255, 0.16);
  --contact-card-v1-icon-bg: rgba(71, 178, 122, 0.16);
  --contact-card-v1-avatar-ring: rgba(255, 255, 255, 0.16);
  --contact-card-v1-avatar-shadow: 0 12px 24px rgba(0, 0, 0, 0.28);
  --contact-card-v1-spine-highlight: rgba(255, 255, 255, 0.16);
  --contact-card-v1-spine-stripe: rgba(255, 255, 255, 0.1);
  --contact-card-v1-spine-shadow: rgba(0, 0, 0, 0.34);
}

.block-contact-card-v1 .contact-card-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-contact-card-v1 .contact-card-v1__header {
  position: relative;
  margin-bottom: 0;
  overflow: hidden;
  padding: 24px 24px 0 36px;
  border-radius: var(--contact-card-v1-panel-radius) var(--contact-card-v1-panel-radius) 0 0;
  background: var(--contact-card-v1-panel);
}

.block-contact-card-v1 .contact-card-v1__header::before,
.block-contact-card-v1 .contact-card-v1__card::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: var(--contact-card-v1-spine-width);
  background:
    linear-gradient(90deg, var(--contact-card-v1-spine-highlight), transparent 38%, var(--contact-card-v1-spine-shadow)),
    repeating-linear-gradient(135deg, transparent 0 9px, var(--contact-card-v1-spine-stripe) 9px 11px),
    linear-gradient(180deg, var(--contact-card-v1-green), var(--contact-card-v1-link));
  box-shadow: inset -1px 0 0 var(--contact-card-v1-spine-shadow);
  pointer-events: none;
}

.block-contact-card-v1 .contact-card-v1__header::before {
  border-top-left-radius: var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__headline {
  margin: 0;
  color: var(--contact-card-v1-green);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
}

.block-contact-card-v1 .contact-card-v1__card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
  min-width: 0;
  overflow: hidden;
  padding: 28px 24px 24px 36px;
  border-radius: 0 0 var(--contact-card-v1-panel-radius) var(--contact-card-v1-panel-radius);
  background: var(--contact-card-v1-panel);
}

.block-contact-card-v1 .contact-card-v1__card::before {
  border-bottom-left-radius: var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__card:first-child {
  padding-block: 24px;
  border-radius: var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__card:first-child::before {
  border-radius: var(--contact-card-v1-panel-radius) 0 0 var(--contact-card-v1-panel-radius);
}

.block-contact-card-v1 .contact-card-v1__media {
  width: 120px;
  height: 120px;
  box-sizing: border-box;
  overflow: hidden;
  border: 4px solid var(--contact-card-v1-avatar-ring);
  border-radius: 999px;
  background: var(--color-grey-20, #dcdcdc);
  box-shadow: var(--contact-card-v1-avatar-shadow);
}

.block-contact-card-v1 .contact-card-v1__image,
.block-contact-card-v1 .contact-card-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-contact-card-v1 .contact-card-v1__image {
  object-fit: cover;
  object-position: center;
}

.block-contact-card-v1 .contact-card-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.14)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-contact-card-v1 .contact-card-v1__media,
.dark .block-contact-card-v1 .contact-card-v1__placeholder {
  background: rgba(255, 255, 255, 0.08);
}

.block-contact-card-v1 .contact-card-v1__body {
  min-width: 0;
}

.block-contact-card-v1 .contact-card-v1__name {
  margin: 0;
  color: var(--contact-card-v1-green);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.3;
}

.block-contact-card-v1 .contact-card-v1__position {
  margin-top: 14px;
  color: var(--contact-card-v1-text);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
}

.block-contact-card-v1 .contact-card-v1__position p,
.block-contact-card-v1 .contact-card-v1__description p {
  margin: 0;
}

.block-contact-card-v1 .contact-card-v1__links {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  max-width: 34em;
  margin-top: 24px;
}

.block-contact-card-v1 .contact-card-v1__contact-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  color: var(--contact-card-v1-link);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-contact-card-v1 .contact-card-v1__contact-link:hover,
.block-contact-card-v1 .contact-card-v1__contact-link:focus-visible,
.block-contact-card-v1 .contact-card-v1__cta:hover,
.block-contact-card-v1 .contact-card-v1__cta:focus-visible {
  color: var(--contact-card-v1-green);
}

.block-contact-card-v1 .contact-card-v1__contact-link:focus-visible,
.block-contact-card-v1 .contact-card-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.dark .block-contact-card-v1 .contact-card-v1__contact-link:hover,
.dark .block-contact-card-v1 .contact-card-v1__contact-link:focus-visible,
.dark .block-contact-card-v1 .contact-card-v1__cta:hover,
.dark .block-contact-card-v1 .contact-card-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-contact-card-v1 .contact-card-v1__contact-icon {
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  padding: 6px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--contact-card-v1-icon-bg);
}

.block-contact-card-v1 .contact-card-v1__contact-link span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.block-contact-card-v1 .contact-card-v1__description {
  max-width: 34em;
  margin-top: 40px;
  color: var(--contact-card-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.62;
}

.block-contact-card-v1 .contact-card-v1__cta-row {
  width: 100%;
  max-width: 34em;
  margin-top: 28px;
}

.block-contact-card-v1 .contact-card-v1__cta-row--after-description {
  padding-top: 20px;
  border-top: 1px solid var(--contact-card-v1-divider);
}

.block-contact-card-v1 .contact-card-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--contact-card-v1-link);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-contact-card-v1 .contact-card-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-contact-card-v1 .contact-card-v1__cta:hover .contact-card-v1__cta-icon,
.block-contact-card-v1 .contact-card-v1__cta:focus-visible .contact-card-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-contact-card-v1 .contact-card-v1__inner {
    padding: 64px 48px;
  }

  .block-contact-card-v1 .contact-card-v1__card {
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 32px;
    align-items: start;
    padding: 32px 32px 32px;
  }

  .block-contact-card-v1 .contact-card-v1__card:first-child {
    padding-block: 32px;
  }

  .block-contact-card-v1 .contact-card-v1__header {
    padding: 32px 32px 0;
  }

}

@media (min-width: 1024px) {
  .block-contact-card-v1 .contact-card-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 0;
    padding: 64px 80px;
  }

  .block-contact-card-v1 .contact-card-v1__header {
    grid-column: 5 / -1;
    margin-bottom: 0;
  }

  .block-contact-card-v1 .contact-card-v1__card {
    grid-column: 5 / -1;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 36px;
    padding: 36px 40px 40px;
  }

  .block-contact-card-v1 .contact-card-v1__card:first-child {
    padding-block: 40px;
  }

  .block-contact-card-v1 .contact-card-v1__header {
    padding: 40px 40px 0;
  }

  .block-contact-card-v1 .contact-card-v1__media {
    margin-top: 4px;
  }

  .block-contact-card-v1 .contact-card-v1__position {
    margin-top: 16px;
  }

  .block-contact-card-v1 .contact-card-v1__contact-icon {
    width: 30px;
    height: 30px;
  }

  .block-contact-card-v1 .contact-card-v1__description {
    margin-top: 48px;
    line-height: 1.55;
  }

  .block-contact-card-v1 .contact-card-v1__cta-row {
    margin-top: 36px;
  }

  .block-contact-card-v1 .contact-card-v1__cta-row--after-description {
    padding-top: 24px;
  }
}

@media (max-width: 767px) {
  .block-contact-card-v1 .contact-card-v1__body {
    text-align: left;
  }

  .block-contact-card-v1 .contact-card-v1__links {
    align-items: start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-contact-card-v1 .contact-card-v1__contact-link,
  .block-contact-card-v1 .contact-card-v1__cta,
  .block-contact-card-v1 .contact-card-v1__cta-icon {
    transition: none !important;
  }

  .block-contact-card-v1 .contact-card-v1__cta:hover .contact-card-v1__cta-icon,
  .block-contact-card-v1 .contact-card-v1__cta:focus-visible .contact-card-v1__cta-icon {
    transform: none !important;
  }
}


/* divider-v1 */
/* ── Divider (block-divider-v1) ─────────────────────────────── */

.block-divider-v1 .dv-inner {
  display: flex;
  padding: 0;
}

.block-divider-v1 .dv-line {
  border: none;
  border-top: 1px solid;
  margin: 0;
  height: 0;
  flex: 1;
}

.block-divider-v1[data-color="grey"]  .dv-line { border-color: var(--color-grey-20, #DCDCDC); }
.block-divider-v1[data-color="white"] .dv-line { border-color: var(--color-white, #FFFFFF); }


.dark .block-divider-v1[data-color="grey"]  .dv-line { border-color: rgba(255, 255, 255, 0.25); }
.dark .block-divider-v1[data-color="white"] .dv-line { border-color: var(--color-white, #FFFFFF); }


/* donation-cta-carousel-v1 */
/* Donation CTA Carousel (block-donation-cta-carousel-v1) */

.block-donation-cta-carousel-v1 {
  --donation-cta-carousel-v1-bg: var(--color-white, #ffffff);
  --donation-cta-carousel-v1-slide-width: calc(100vw - 48px);
  --donation-cta-carousel-v1-track-gap: 24px;
  --donation-cta-carousel-v1-track-gutter: 24px;
  overflow: hidden;
  padding: 64px 0;
  background: var(--donation-cta-carousel-v1-bg);
  color: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1[data-background-color='#FFFFFF'] {
  --donation-cta-carousel-v1-bg: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1[data-background-color='#F7F7F7'] {
  --donation-cta-carousel-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-donation-cta-carousel-v1 {
  --donation-cta-carousel-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__header {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
  box-sizing: border-box;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__block-headline {
  max-width: 760px;
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__block-headline p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__block-headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__carousel {
  width: 100vw;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--donation-cta-carousel-v1-track-gap);
  margin: 0;
  padding: 16px 0 16px var(--donation-cta-carousel-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--donation-cta-carousel-v1-track-gutter) - var(--donation-cta-carousel-v1-track-gap)));
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__track::-webkit-scrollbar {
  display: none;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide {
  --donation-cta-carousel-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
  display: flex;
  flex: 0 0 var(--donation-cta-carousel-v1-slide-width);
  min-width: 0;
  scroll-snap-align: center;
  transform-origin: center center;
}

.block-donation-cta-carousel-v1.dcc-js-ready .donation-cta-carousel-v1__slide {
  will-change: transform;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='forest-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-forest-green, #004432);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='mint-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-mint-green, #47b27a);
  --donation-cta-carousel-v1-card-copy: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='red'] {
  --donation-cta-carousel-v1-card-bg: var(--color-red, #e52322);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='light-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-light-green, #8acbc1);
  --donation-cta-carousel-v1-card-copy: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='corn-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-corn-green, #94c24a);
  --donation-cta-carousel-v1-card-copy: var(--color-black, #333333);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='moss-green'] {
  --donation-cta-carousel-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='dark-red'] {
  --donation-cta-carousel-v1-card-bg: var(--color-dark-red, #861135);
  --donation-cta-carousel-v1-card-copy: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: 32px;
  overflow: hidden;
  padding: 32px;
  border-radius: 16px;
  background: var(--donation-cta-carousel-v1-card-bg);
  color: var(--donation-cta-carousel-v1-card-copy);
  box-sizing: border-box;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card--text-only .donation-cta-carousel-v1__copy {
  flex: 1;
  justify-content: center;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline {
  margin: 0;
  color: inherit;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline p,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body {
  max-width: 72ch;
  margin-top: 24px;
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body p {
  margin: 0 0 12px;
  color: inherit;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body p:last-child {
  margin-bottom: 0;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline strong,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline b,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline a,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body strong,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body b,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body a {
  color: inherit;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__headline a,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__body a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 32px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:hover,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible {
  border-color: transparent;
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible {
  outline: 3px solid var(--color-white, #ffffff);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px var(--color-forest-green, #004432);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='moss-green'] .donation-cta-carousel-v1__cta:hover:not(:focus-visible),
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide[data-card-color='forest-green'] .donation-cta-carousel-v1__cta:hover:not(:focus-visible) {
  border-color: var(--color-white, #ffffff);
  box-shadow: inset 0 0 0 1px var(--color-white, #ffffff);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:hover .donation-cta-carousel-v1__cta-icon,
.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible .donation-cta-carousel-v1__cta-icon {
  transform: translateX(3px);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__media {
  display: flex;
  width: 100%;
  height: 180px;
  min-width: 0;
  align-items: center;
  justify-content: center;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__illustration {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__nav {
  display: flex;
  width: var(--donation-cta-carousel-v1-slide-width);
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 16px auto 0;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__nav[hidden] {
  display: none;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress {
  display: flex;
  height: 40px;
  min-width: 0;
  flex: 1;
  align-items: center;
  padding: 0 14px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.07);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress {
  background: rgba(255, 255, 255, 0.1);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill {
  position: relative;
  height: 4px;
  min-width: 0;
  flex: 1;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(0, 0, 0, 0.12);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill {
  background: rgba(255, 255, 255, 0.18);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-moss-green, #13735f);
  transform: scaleX(var(--dcc-progress, 0));
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill::after {
  background: var(--color-accent-dark, #47b27a);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button {
  display: flex;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 68, 50, 1);
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:hover:not(:disabled) {
  background: rgba(19, 115, 95, 1);
  color: rgba(255, 255, 255, 1);
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-donation-cta-carousel-v1 {
    --donation-cta-carousel-v1-slide-width: calc(100vw - 96px);
    --donation-cta-carousel-v1-track-gap: 32px;
    --donation-cta-carousel-v1-track-gutter: 48px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
    padding: 64px 48px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__header {
    padding-right: 48px;
    padding-left: 48px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__media {
    height: 240px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress {
    width: 220px;
    flex: none;
  }
}

@media (min-width: 1024px) {
  .block-donation-cta-carousel-v1 {
    --donation-cta-carousel-v1-slide-width: min(842.6667px, calc(66.6667vw - 117.3333px));
    --donation-cta-carousel-v1-track-gutter: calc((100vw - var(--donation-cta-carousel-v1-slide-width)) / 2);
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
    padding: 64px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__header {
    padding-right: 80px;
    padding-left: 80px;
  }
}

@media (min-width: 1280px) {
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    gap: 32px;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__copy {
    grid-column: 1 / span 6;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__card--text-only .donation-cta-carousel-v1__copy {
    grid-column: 1 / -1;
    max-width: 72ch;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__media {
    grid-column: 7 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta-icon,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__progress-fill::after,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__button {
    transition: none !important;
  }

  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__slide,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:hover .donation-cta-carousel-v1__cta-icon,
  .block-donation-cta-carousel-v1 .donation-cta-carousel-v1__cta:focus-visible .donation-cta-carousel-v1__cta-icon {
    transform: none !important;
  }
}


/* donation-picture-cta-v1 */
/* Donation Picture CTA (block-donation-picture-cta-v1) */

.block-donation-picture-cta-v1 {
  --donation-picture-cta-v1-bg: var(--color-white, #ffffff);
  background: var(--donation-picture-cta-v1-bg);
  color: var(--color-forest-green, #004432);
}

.block-donation-picture-cta-v1[data-background-color='#FFFFFF'] {
  --donation-picture-cta-v1-bg: var(--color-white, #ffffff);
}

.block-donation-picture-cta-v1[data-background-color='#F7F7F7'] {
  --donation-picture-cta-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-donation-picture-cta-v1 {
  --donation-picture-cta-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__inner {
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__content {
  display: flex;
  min-width: 0;
  min-height: 400px;
  padding: 64px 24px;
  align-items: center;
  box-sizing: border-box;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__copy {
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__headline {
  margin: 0 0 24px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__headline p,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta-label p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description {
  margin: 0 0 32px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__description {
  color: var(--color-text-dark, #f0f4f2);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description p {
  margin: 0 0 16px;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description p:last-child {
  margin-bottom: 0;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description ul,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__description ol {
  margin: 0 0 16px;
  padding-left: 1.4em;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description li {
  margin-bottom: 8px;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description strong,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__description b {
  color: inherit;
  font-weight: 700;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description a:hover {
  text-decoration: none;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__description a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__description a {
  color: var(--color-accent-dark, #47b27a);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta {
  display: inline-flex;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 24px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  overflow-wrap: anywhere;
  box-sizing: border-box;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:hover,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.dark .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta-icon {
  width: 9px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:hover .donation-picture-cta-v1__cta-icon,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible .donation-picture-cta-v1__cta-icon {
  transform: translateX(3px);
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  padding: 0 24px 64px;
  align-items: center;
  box-sizing: border-box;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__media {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__image,
.block-donation-picture-cta-v1 .donation-picture-cta-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__image {
  object-fit: contain;
}

.block-donation-picture-cta-v1 .donation-picture-cta-v1__placeholder {
  background: transparent;
}

@media (min-width: 768px) {
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__content {
    padding: 64px 48px;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__media {
    aspect-ratio: 16 / 9;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 80px;
    align-items: stretch;
    gap: 0 32px;
    box-sizing: border-box;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta,
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta-icon {
    transition: none !important;
  }

  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:hover .donation-picture-cta-v1__cta-icon,
  .block-donation-picture-cta-v1 .donation-picture-cta-v1__cta:focus-visible .donation-picture-cta-v1__cta-icon {
    transform: none !important;
  }
}


/* donation-redeem-v1 */
/* Donation Redeem (block-donation-redeem-v1) */

/* ── Solid presets: brand background without illustration ── */

/* Dark backgrounds — white foreground */
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-forestgreen"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-foreground: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground-inverse:
    var(--donation-redeem-v1-card-bg);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-mossgreen"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-foreground: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground-inverse:
    var(--donation-redeem-v1-card-bg);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-darkred"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-foreground: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground-inverse:
    var(--donation-redeem-v1-card-bg);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-red"] {
  --donation-redeem-v1-card-bg: var(--color-red, #e52322);
  --donation-redeem-v1-card-foreground: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground-inverse:
    var(--donation-redeem-v1-card-bg);
}

/* Bright backgrounds — brand-black foreground */
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-mint"] {
  --donation-redeem-v1-card-bg: var(--color-mint-green, #47b27a);
  --donation-redeem-v1-card-foreground: var(--color-black, #333333);
  --donation-redeem-v1-card-foreground-inverse:
    var(--color-white, #ffffff);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-lightgreen"] {
  --donation-redeem-v1-card-bg: var(--color-light-green, #8acbc1);
  --donation-redeem-v1-card-foreground: var(--color-black, #333333);
  --donation-redeem-v1-card-foreground-inverse:
    var(--color-white, #ffffff);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-yellow"] {
  --donation-redeem-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --donation-redeem-v1-card-foreground: var(--color-black, #333333);
  --donation-redeem-v1-card-foreground-inverse:
    var(--color-white, #ffffff);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-corngreen"] {
  --donation-redeem-v1-card-bg: var(--color-corn-green, #94c24a);
  --donation-redeem-v1-card-foreground: var(--color-black, #333333);
  --donation-redeem-v1-card-foreground-inverse:
    var(--color-white, #ffffff);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-white"] {
  --donation-redeem-v1-card-bg: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-foreground-inverse:
  var(--color-white, #ffffff);
}

/* Solid presets never render the decorative SVG */
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset^="solid-"]
  .donation-redeem-v1__card-bg {
  display: none;
}

/* To make solid white card visible */
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="solid-white"] {
  box-shadow: inset 0 0 0 1px rgba(0, 68, 50, 0.16);
}

.block-donation-redeem-v1 {
  --donation-redeem-v1-section-bg: var(--color-white, #ffffff);
  background: var(--donation-redeem-v1-section-bg);
}

.block-donation-redeem-v1[data-background-color="#FFFFFF"] {
  --donation-redeem-v1-section-bg: var(--color-white, #ffffff);
}

.block-donation-redeem-v1[data-background-color="#F7F7F7"] {
  --donation-redeem-v1-section-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-donation-redeem-v1 {
  --donation-redeem-v1-section-bg: var(--color-bg-dark, #0f1a14);
}

.block-donation-redeem-v1 .donation-redeem-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 40px 24px;
}

.block-donation-redeem-v1 .donation-redeem-v1__card {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-foreground: var(--color-white, #ffffff);
  --donation-redeem-v1-card-foreground-inverse: var(--donation-redeem-v1-card-bg);
  position: relative;
  max-width: 960px;
  margin: 0 auto;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  padding: 32px 24px 48px;
  border-radius: 16px;
  background: var(--donation-redeem-v1-card-bg);
  color: var(--donation-redeem-v1-card-foreground);
}

/* Illustrated presets — white foreground */

.block-donation-redeem-v1 .donation-redeem-v1__card,
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="forest-red"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-red, #e52322);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="forest-moss"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-moss-green, #13735f);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="forest-darkred"] {
  --donation-redeem-v1-card-bg: var(--color-forest-green, #004432);
  --donation-redeem-v1-card-illu: var(--color-dark-red, #861135);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="red-forest"] {
  --donation-redeem-v1-card-bg: var(--color-red, #e52322);
  --donation-redeem-v1-card-illu: var(--color-forest-green, #004432);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="red-moss"] {
  --donation-redeem-v1-card-bg: var(--color-red, #e52322);
  --donation-redeem-v1-card-illu: var(--color-moss-green, #13735f);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="red-darkred"] {
  --donation-redeem-v1-card-bg: var(--color-red, #e52322);
  --donation-redeem-v1-card-illu: var(--color-dark-red, #861135);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="moss-forest"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-illu: var(--color-forest-green, #004432);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="moss-red"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-illu: var(--color-red, #e52322);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="moss-darkred"] {
  --donation-redeem-v1-card-bg: var(--color-moss-green, #13735f);
  --donation-redeem-v1-card-illu: var(--color-dark-red, #861135);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="darkred-forest"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-illu: var(--color-forest-green, #004432);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="darkred-red"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-illu: var(--color-red, #e52322);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="darkred-moss"] {
  --donation-redeem-v1-card-bg: var(--color-dark-red, #861135);
  --donation-redeem-v1-card-illu: var(--color-moss-green, #13735f);
}

/* Illustrated presets — dark foreground */

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="mint-yellow"] {
  --donation-redeem-v1-card-bg: var(--color-mint-green, #47b27a);
  --donation-redeem-v1-card-illu: var(--color-yellow-green, #e6ce00);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="mint-light"] {
  --donation-redeem-v1-card-bg: var(--color-mint-green, #47b27a);
  --donation-redeem-v1-card-illu: var(--color-light-green, #8acbc1);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="mint-corn"] {
  --donation-redeem-v1-card-bg: var(--color-mint-green, #47b27a);
  --donation-redeem-v1-card-illu: var(--color-corn-green, #94c24a);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="yellow-mint"] {
  --donation-redeem-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="yellow-light"] {
  --donation-redeem-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --donation-redeem-v1-card-illu: var(--color-light-green, #8acbc1);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="yellow-corn"] {
  --donation-redeem-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --donation-redeem-v1-card-illu: var(--color-corn-green, #94c24a);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="light-mint"] {
  --donation-redeem-v1-card-bg: var(--color-light-green, #8acbc1);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="light-yellow"] {
  --donation-redeem-v1-card-bg: var(--color-light-green, #8acbc1);
  --donation-redeem-v1-card-illu: var(--color-yellow-green, #e6ce00);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="light-corn"] {
  --donation-redeem-v1-card-bg: var(--color-light-green, #8acbc1);
  --donation-redeem-v1-card-illu: var(--color-corn-green, #94c24a);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="corn-mint"] {
  --donation-redeem-v1-card-bg: var(--color-corn-green, #94c24a);
  --donation-redeem-v1-card-illu: var(--color-mint-green, #47b27a);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="corn-yellow"] {
  --donation-redeem-v1-card-bg: var(--color-corn-green, #94c24a);
  --donation-redeem-v1-card-illu: var(--color-yellow-green, #e6ce00);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="corn-light"] {
  --donation-redeem-v1-card-bg: var(--color-corn-green, #94c24a);
  --donation-redeem-v1-card-illu: var(--color-light-green, #8acbc1);
}

.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="mint-yellow"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="mint-light"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="mint-corn"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="yellow-mint"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="yellow-light"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="yellow-corn"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="light-mint"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="light-yellow"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="light-corn"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="corn-mint"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="corn-yellow"],
.block-donation-redeem-v1
  .donation-redeem-v1__card[data-preset="corn-light"] {
  --donation-redeem-v1-card-foreground: var(--color-black, #333333);
  --donation-redeem-v1-card-foreground-inverse: var(
    --color-white,
    #ffffff
  );
}

.block-donation-redeem-v1 .donation-redeem-v1__card-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  color: var(--donation-redeem-v1-card-illu);
}

.block-donation-redeem-v1 .donation-redeem-v1__card-bg-svg {
  position: absolute;
  top: -310%;
  left: 4%;
  width: auto;
  height: 653%;
  transform: rotate(57.787deg);
  opacity: 1;
  fill: currentColor;
}

.block-donation-redeem-v1 .donation-redeem-v1__content {
  position: relative;
  z-index: 1;
}

.block-donation-redeem-v1 .donation-redeem-v1__headline {
  margin: 0;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
}

.block-donation-redeem-v1 .donation-redeem-v1__description p {
  margin: 0;
}

.block-donation-redeem-v1 .donation-redeem-v1__description p + p {
  margin-top: 12px;
}

.block-donation-redeem-v1 .donation-redeem-v1__description {
  margin-top: 16px;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.block-donation-redeem-v1 .donation-redeem-v1__headline a,
.block-donation-redeem-v1 .donation-redeem-v1__description a,
.block-donation-redeem-v1 .donation-redeem-v1__headline strong,
.block-donation-redeem-v1 .donation-redeem-v1__description strong,
.block-donation-redeem-v1 .donation-redeem-v1__headline b,
.block-donation-redeem-v1 .donation-redeem-v1__description b {
  color: inherit;
}

.block-donation-redeem-v1 .donation-redeem-v1__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
  gap: 32px;
  margin-top: 32px;
}

.block-donation-redeem-v1 .donation-redeem-v1__field {
  min-width: 0;
}

.block-donation-redeem-v1 .donation-redeem-v1__label {
  display: block;
  margin: 0;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  text-transform: uppercase;
}

.block-donation-redeem-v1 .donation-redeem-v1__hint,
.block-donation-redeem-v1 .donation-redeem-v1__error {
  margin: 4px 0 8px;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.block-donation-redeem-v1 .donation-redeem-v1__error {
  margin: 8px 0 0;
  padding-left: 8px;
  border-left: 3px solid currentColor;
  font-weight: 700;
}

.block-donation-redeem-v1 .donation-redeem-v1__error:empty {
  display: none;
}

.block-donation-redeem-v1 .donation-redeem-v1__input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  height: auto;
  box-sizing: border-box;
  padding: 12px 16px;
  border: 1px solid var(--color-grey-40, #ababab);
  border-radius: 16px;
  background: var(--color-white, #ffffff);
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.block-donation-redeem-v1 .donation-redeem-v1__input::placeholder {
  color: var(--color-grey-60, #737373);
  opacity: 1;
}

.block-donation-redeem-v1 .donation-redeem-v1__input:focus-visible {
  outline: none;
  border-color: var(--color-black, #333333);
  box-shadow:
    0 0 0 3px var(--color-black, #333333),
    0 0 0 6px var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__input[aria-invalid="true"] {
  border-color: #9f1239;
  box-shadow: inset 0 0 0 1px #9f1239;
}

.block-donation-redeem-v1 .donation-redeem-v1__input[aria-invalid="true"]:focus-visible {
  border-color: var(--color-black, #333333);
  box-shadow:
    0 0 0 3px var(--color-black, #333333),
    0 0 0 6px var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: end;
  justify-self: start;
  gap: 10px;
  width: fit-content;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 24px;
  border: 1px solid var(--donation-redeem-v1-card-foreground);
  border-radius: 999px;
  background: transparent;
  color: var(--donation-redeem-v1-card-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease;
}

.block-donation-redeem-v1 .donation-redeem-v1__submit:hover {
  background: var(--donation-redeem-v1-card-foreground);
  color: var(--donation-redeem-v1-card-foreground-inverse);
}

.block-donation-redeem-v1 .donation-redeem-v1__submit:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 3px var(--color-black, #333333),
    0 0 0 6px var(--color-white, #ffffff);
}

.block-donation-redeem-v1 .donation-redeem-v1__submit-icon {
  flex: 0 0 auto;
  transition: transform 0.18s ease;
}

.block-donation-redeem-v1 .donation-redeem-v1__submit:hover .donation-redeem-v1__submit-icon {
  transform: translateX(3px);
}

@media (prefers-reduced-motion: reduce) {
  .block-donation-redeem-v1 .donation-redeem-v1__submit,
  .block-donation-redeem-v1 .donation-redeem-v1__submit-icon {
    transition: none;
  }
}

@media (min-width: 768px) {
  .block-donation-redeem-v1 .donation-redeem-v1__inner {
    padding: 64px 48px;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__card {
    padding: 40px;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__form {
    grid-template-columns: minmax(0, 256px) minmax(0, 1fr) auto;
    column-gap: 32px;
    row-gap: 0;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__field {
    grid-column: 1;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__submit {
    grid-column: 3;
    justify-self: end;
  }
}

@media (min-width: 1024px) {
  .block-donation-redeem-v1 .donation-redeem-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    padding: 64px 80px;
  }

  .block-donation-redeem-v1 .donation-redeem-v1__card {
    grid-column: 5 / -1;
    max-width: none;
    margin: 0;
    padding: 48px;
  }
}


/* double-center-cta-v1 */
/* Double Center CTA (block-double-center-cta-v1) */

/* ── Solid presets: brand background without illustration ── */

/* Dark backgrounds — white foreground */
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-forestgreen"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-foreground: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground-inverse:
    var(--double-center-cta-v1-bg);
  --double-center-cta-v1-focus: var(--color-white, #ffffff);
  --double-center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-mossgreen"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-foreground: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground-inverse:
    var(--double-center-cta-v1-bg);
  --double-center-cta-v1-focus: var(--color-white, #ffffff);
  --double-center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-darkred"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-foreground: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground-inverse:
    var(--double-center-cta-v1-bg);
  --double-center-cta-v1-focus: var(--color-white, #ffffff);
  --double-center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-red"] {
  --double-center-cta-v1-bg: var(--color-red, #e52322);
  --double-center-cta-v1-foreground: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground-inverse:
    var(--double-center-cta-v1-bg);
  --double-center-cta-v1-focus: var(--color-white, #ffffff);
  --double-center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Bright backgrounds — brand-black foreground */
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-mint"] {
  --double-center-cta-v1-bg: var(--color-mint-green, #47b27a);
  --double-center-cta-v1-foreground: var(--color-black, #333333);
  --double-center-cta-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-black, #333333);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-lightgreen"] {
  --double-center-cta-v1-bg: var(--color-light-green, #8acbc1);
  --double-center-cta-v1-foreground: var(--color-black, #333333);
  --double-center-cta-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-black, #333333);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-yellow"] {
  --double-center-cta-v1-bg: var(--color-yellow-green, #e6ce00);
  --double-center-cta-v1-foreground: var(--color-black, #333333);
  --double-center-cta-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-black, #333333);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-corngreen"] {
  --double-center-cta-v1-bg: var(--color-corn-green, #94c24a);
  --double-center-cta-v1-foreground: var(--color-black, #333333);
  --double-center-cta-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-black, #333333);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="solid-white"] {
  --double-center-cta-v1-bg: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground: var(--color-forest-green, #004432);
  --double-center-cta-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-forest-green, #004432);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Solid presets never render either card's decorative leaf */
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset^="solid-"]
  .double-center-cta-v1__illustration {
  display: none;
}

.block-double-center-cta-v1 {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
}

.block-double-center-cta-v1 .double-center-cta-v1__grid {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.block-double-center-cta-v1 .double-center-cta-v1__card {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-moss-green, #13735f);
  --double-center-cta-v1-foreground: var(--color-white, #ffffff);
  --double-center-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --double-center-cta-v1-focus: var(--color-white, #ffffff);
  --double-center-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  display: flex;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--double-center-cta-v1-bg);
  color: var(--double-center-cta-v1-foreground);
}

/* Illustrated presets — white foreground */

.block-double-center-cta-v1 .double-center-cta-v1__card,
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="forest-red"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-red, #e52322);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="forest-moss"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-moss-green, #13735f);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="forest-darkred"] {
  --double-center-cta-v1-bg: var(--color-forest-green, #004432);
  --double-center-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="red-forest"] {
  --double-center-cta-v1-bg: var(--color-red, #e52322);
  --double-center-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="red-moss"] {
  --double-center-cta-v1-bg: var(--color-red, #e52322);
  --double-center-cta-v1-illu: var(--color-moss-green, #13735f);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="red-darkred"] {
  --double-center-cta-v1-bg: var(--color-red, #e52322);
  --double-center-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="moss-forest"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="moss-red"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-illu: var(--color-red, #e52322);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="moss-darkred"] {
  --double-center-cta-v1-bg: var(--color-moss-green, #13735f);
  --double-center-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="darkred-forest"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="darkred-red"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-illu: var(--color-red, #e52322);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="darkred-moss"] {
  --double-center-cta-v1-bg: var(--color-dark-red, #861135);
  --double-center-cta-v1-illu: var(--color-moss-green, #13735f);
}

/* Illustrated presets — dark foreground */

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="mint-yellow"] {
  --double-center-cta-v1-bg: var(--color-mint-green, #47b27a);
  --double-center-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="mint-light"] {
  --double-center-cta-v1-bg: var(--color-mint-green, #47b27a);
  --double-center-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="mint-corn"] {
  --double-center-cta-v1-bg: var(--color-mint-green, #47b27a);
  --double-center-cta-v1-illu: var(--color-corn-green, #94c24a);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="yellow-mint"] {
  --double-center-cta-v1-bg: var(--color-yellow-green, #e6ce00);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="yellow-light"] {
  --double-center-cta-v1-bg: var(--color-yellow-green, #e6ce00);
  --double-center-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="yellow-corn"] {
  --double-center-cta-v1-bg: var(--color-yellow-green, #e6ce00);
  --double-center-cta-v1-illu: var(--color-corn-green, #94c24a);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="light-mint"] {
  --double-center-cta-v1-bg: var(--color-light-green, #8acbc1);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="light-yellow"] {
  --double-center-cta-v1-bg: var(--color-light-green, #8acbc1);
  --double-center-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="light-corn"] {
  --double-center-cta-v1-bg: var(--color-light-green, #8acbc1);
  --double-center-cta-v1-illu: var(--color-corn-green, #94c24a);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="corn-mint"] {
  --double-center-cta-v1-bg: var(--color-corn-green, #94c24a);
  --double-center-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="corn-yellow"] {
  --double-center-cta-v1-bg: var(--color-corn-green, #94c24a);
  --double-center-cta-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="corn-light"] {
  --double-center-cta-v1-bg: var(--color-corn-green, #94c24a);
  --double-center-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="mint-yellow"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="mint-light"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="mint-corn"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="yellow-mint"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="yellow-light"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="yellow-corn"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="light-mint"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="light-yellow"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="light-corn"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="corn-mint"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="corn-yellow"],
.block-double-center-cta-v1
  .double-center-cta-v1__card[data-preset="corn-light"] {
  --double-center-cta-v1-foreground: var(--color-black, #333333);
  --double-center-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --double-center-cta-v1-focus: var(--color-black, #333333);
  --double-center-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-double-center-cta-v1 .double-center-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--double-center-cta-v1-illu);
  pointer-events: none;
}

.block-double-center-cta-v1 .double-center-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 560%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  shape-rendering: geometricPrecision;
  transform-origin: center center;
  transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-double-center-cta-v1 .double-center-cta-v1__illustration--right .double-center-cta-v1__illustration-svg {
  position: relative;
  left: -120px;
  top: 200px;
}

.block-double-center-cta-v1 .double-center-cta-v1__card:hover .double-center-cta-v1__illustration-svg,
.block-double-center-cta-v1 .double-center-cta-v1__card:focus-within .double-center-cta-v1__illustration-svg {
  transform: scale(1.25);
}

.block-double-center-cta-v1 .double-center-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1 1 auto;
  width: 100%;
  max-width: 720px;
  min-height: 400px;
  margin: 0 auto;
  padding: 64px 24px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  box-sizing: border-box;
  text-align: center;
}

.block-double-center-cta-v1 .double-center-cta-v1__heading {
  width: 100%;
  max-width: 560px;
  margin: 0;
  color: var(--double-center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-double-center-cta-v1 .double-center-cta-v1__heading p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-double-center-cta-v1 .double-center-cta-v1__heading strong,
.block-double-center-cta-v1 .double-center-cta-v1__heading b,
.block-double-center-cta-v1 .double-center-cta-v1__heading a {
  color: var(--double-center-cta-v1-foreground);
}

.block-double-center-cta-v1 .double-center-cta-v1__heading a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-double-center-cta-v1 .double-center-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--double-center-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--double-center-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-double-center-cta-v1 .double-center-cta-v1__button:hover,
.block-double-center-cta-v1 .double-center-cta-v1__button:focus-visible,
.block-double-center-cta-v1 .double-center-cta-v1__button:focus {
  border-color: var(--double-center-cta-v1-foreground);
  background-color: var(--double-center-cta-v1-foreground);
  color: var(--double-center-cta-v1-foreground-inverse);
}

.block-double-center-cta-v1 .double-center-cta-v1__button:focus-visible,
.block-double-center-cta-v1 .double-center-cta-v1__button:focus {
  outline: 3px solid var(--double-center-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--double-center-cta-v1-focus-shadow);
}

.block-double-center-cta-v1 .double-center-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-double-center-cta-v1 .double-center-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-double-center-cta-v1 .double-center-cta-v1__button:hover .double-center-cta-v1__button-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-double-center-cta-v1 .double-center-cta-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-double-center-cta-v1 .double-center-cta-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .block-double-center-cta-v1 .double-center-cta-v1__inner {
    padding: 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-double-center-cta-v1 .double-center-cta-v1__illustration-svg {
    transform: none !important;
    transition: none;
  }

  .block-double-center-cta-v1 .double-center-cta-v1__button,
  .block-double-center-cta-v1 .double-center-cta-v1__button-icon {
    transition: none;
  }
}


/* fancy-quote-list-v1 */
/* Fancy Quote List (block-fancy-quote-list-v1) */

.block-fancy-quote-list-v1 {
  --fql-bg: var(--color-white, #ffffff);
  --fql-illustration: var(--color-forest-green, #004432);
  background: var(--fql-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
}

.block-fancy-quote-list-v1[data-background-color='#FFFFFF'] {
  --fql-bg: var(--color-white, #ffffff);
}

.block-fancy-quote-list-v1[data-background-color='#F7F7F7'] {
  --fql-bg: var(--color-light-grey, #f7f7f7);
}

.block-fancy-quote-list-v1[data-illustration-color='#004432'] {
  --fql-illustration: var(--color-forest-green, #004432);
}

.block-fancy-quote-list-v1[data-illustration-color='#13735F'] {
  --fql-illustration: var(--color-moss-green, #13735f);
}

.block-fancy-quote-list-v1[data-illustration-color='#47B27A'] {
  --fql-illustration: var(--color-mint-green, #47b27a);
}

.block-fancy-quote-list-v1[data-illustration-color='#8ACBC1'] {
  --fql-illustration: var(--color-light-green, #8acbc1);
}

.block-fancy-quote-list-v1[data-illustration-color='#94C24A'] {
  --fql-illustration: var(--color-corn-green, #94c24a);
}

.block-fancy-quote-list-v1[data-illustration-color='#E6CE00'] {
  --fql-illustration: var(--color-yellow-green, #e6ce00);
}

.block-fancy-quote-list-v1[data-illustration-color='#477EC0'] {
  --fql-illustration: var(--color-blue, #477ec0);
}

.block-fancy-quote-list-v1[data-illustration-color='#E52322'] {
  --fql-illustration: var(--color-red, #e52322);
}

.block-fancy-quote-list-v1[data-illustration-color='#861135'] {
  --fql-illustration: var(--color-dark-red, #861135);
}

.dark .block-fancy-quote-list-v1 {
  --fql-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__outer {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 16px;
  box-sizing: border-box;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__header {
  margin: 0 0 48px;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__headline {
  max-width: 900px;
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  overflow-wrap: anywhere;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__headline p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__roller,
.block-fancy-quote-list-v1 .fancy-quote-list-v1__viewport,
.block-fancy-quote-list-v1 .fancy-quote-list-v1__track {
  min-width: 0;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator {
  display: none;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__viewport {
  position: relative;
  outline: none;
  touch-action: auto;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__track {
  display: grid;
  gap: 64px;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__slide {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 16px;
  align-items: center;
  min-width: 0;
  margin: 0;
  padding-top: 64px;
  border-top: 1px solid color-mix(in srgb, var(--color-forest-green, #004432) 22%, transparent);
  box-sizing: border-box;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__slide:first-child {
  padding-top: 0;
  border-top: 0;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__content,
.block-fancy-quote-list-v1 .fancy-quote-list-v1__owner,
.block-fancy-quote-list-v1 .fancy-quote-list-v1__media {
  grid-column: 1 / -1;
  min-width: 0;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__content {
  grid-row: 1;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__owner {
  grid-row: 2;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__media {
  grid-row: 3;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__mark {
  display: block;
  width: 56px;
  height: auto;
  max-width: 30vw;
  margin: 0 0 24px;
  color: var(--color-accent, #47b27a);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__quote {
  margin: 0;
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__quote p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__quote {
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__owner {
  display: block;
  margin-top: 24px;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__owner-name {
  display: block;
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__owner-name {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__owner-position {
  display: block;
  margin: 4px 0 0;
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__owner-position p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__owner-position {
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__media {
  position: relative;
  justify-self: center;
  width: min(224px, 100%);
  aspect-ratio: 1;
  margin-top: 32px;
  isolation: isolate;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__illustration {
  position: absolute;
  z-index: 0;
  top: 57%;
  left: 38%;
  width: 94%;
  height: 94%;
  color: var(--fql-illustration);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__illustration[data-show-illustration='false'],
.block-fancy-quote-list-v1 .fancy-quote-list-v1__illustration[data-show-illustration='0'],
.block-fancy-quote-list-v1 .fancy-quote-list-v1__illustration[data-show-illustration='off'],
.block-fancy-quote-list-v1 .fancy-quote-list-v1__illustration[data-show-illustration='no'],
.block-fancy-quote-list-v1 .fancy-quote-list-v1__illustration[data-show-illustration=''] {
  display: none;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__avatar {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  display: block;
  width: 86%;
  height: 86%;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  transform: translate(-50%, -50%);
}

/* JS enhancement: one fixed-height, masked slide with a vertical indicator. */
.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__roller {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px;
  column-gap: 16px;
  align-items: stretch;
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__indicator {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__indicator[hidden],
.block-fancy-quote-list-v1.fql-single .fancy-quote-list-v1__indicator {
  display: none;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button {
  display: flex;
  width: 32px;
  height: 28px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: color-mix(in srgb, var(--color-forest-green, #004432) 58%, transparent);
  cursor: pointer;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-line {
  display: block;
  width: 12px;
  height: 3px;
  border-radius: 999px;
  background: currentColor;
  transition: width 0.28s ease, color 0.28s ease, transform 0.28s ease;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button:hover {
  color: color-mix(in srgb, var(--color-forest-green, #004432) 68%, transparent);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button[aria-current='true'] {
  color: var(--color-forest-green, #004432);
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button[aria-current='true'] .fancy-quote-list-v1__indicator-line {
  width: 28px;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: -2px;
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button {
  color: color-mix(in srgb, var(--color-accent-dark, #47b27a) 58%, transparent);
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button:hover {
  color: color-mix(in srgb, var(--color-accent-dark, #47b27a) 72%, transparent);
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button[aria-current='true'] {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__viewport {
  grid-column: 1;
  grid-row: 1;
  height: var(--fql-viewport-height, auto);
  overflow: hidden;
  perspective: 1200px;
  transition: height 0.24s ease;
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__viewport:focus-visible {
  border-radius: 8px;
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: 8px;
}

.dark .block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__viewport:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__track {
  position: relative;
  display: block;
  height: 100%;
  transform-style: preserve-3d;
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__slide {
  position: absolute;
  inset: 0 0 auto;
  width: 100%;
  min-height: 0;
  padding-top: 0;
  border-top: 0;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 42%, -70px) rotateX(-12deg);
  transform-origin: center top;
  transition:
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.42s ease;
  will-change: transform, opacity;
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__slide.fql-before {
  transform: translate3d(0, -42%, -70px) rotateX(12deg);
  transform-origin: center bottom;
}

.block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__slide.fql-active {
  z-index: 2;
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

.block-fancy-quote-list-v1.fql-initializing .fancy-quote-list-v1__slide,
.block-fancy-quote-list-v1.fql-reduced-motion .fancy-quote-list-v1__slide {
  transition: none;
}

@media (min-width: 768px) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__outer {
    padding-right: 48px;
    padding-left: 48px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__slide {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__content,
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__owner {
    grid-column: 1 / span 8;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__content {
    grid-row: 1;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__owner {
    grid-row: 2;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__media {
    grid-column: 9 / -1;
    grid-row: 1 / span 2;
    justify-self: end;
    width: min(288px, 100%);
    margin-top: 0;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__slide:not(:has(.fancy-quote-list-v1__media)) .fancy-quote-list-v1__content,
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__slide:not(:has(.fancy-quote-list-v1__media)) .fancy-quote-list-v1__owner {
    grid-column: 1 / -1;
    max-width: 900px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__mark {
    width: 72px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__avatar {
    left: auto;
    right: 0;
    width: min(296px, 86%);
    height: min(296px, 86%);
    transform: translateY(-50%);
  }

  .block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__roller {
    grid-template-columns: minmax(0, 1fr) 32px;
    column-gap: 32px;
  }
}

@media (min-width: 1024px) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__outer {
    padding-right: 80px;
    padding-left: 80px;
  }
}

@media (max-width: 767px) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-line {
    width: 8px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button[aria-current='true'] .fancy-quote-list-v1__indicator-line {
    width: 20px;
  }
}

@media (max-width: 420px) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__header {
    margin-bottom: 40px;
  }

  .block-fancy-quote-list-v1.fql-js-ready .fancy-quote-list-v1__roller {
    grid-template-columns: minmax(0, 1fr) 28px;
    column-gap: 8px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-button {
    width: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__viewport,
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__slide,
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__indicator-line {
    scroll-behavior: auto;
    transition: none;
  }
}

/* A quiet glimpse of the next quote. The active quote keeps its full height. */
.block-fancy-quote-list-v1.fql-peek-ready {
  --fql-peek-height: 48px;
  --fql-peek-gap: 32px;
}

.block-fancy-quote-list-v1.fql-js-ready.fql-peek-ready .fancy-quote-list-v1__viewport {
  height: calc(var(--fql-viewport-height, 0px) + var(--fql-peek-gap) + var(--fql-peek-height));
}

.block-fancy-quote-list-v1.fql-js-ready.fql-peek-ready .fancy-quote-list-v1__track {
  height: var(--fql-viewport-height, auto);
}

.block-fancy-quote-list-v1.fql-js-ready.fql-peek-ready .fancy-quote-list-v1__indicator {
  box-sizing: border-box;
  padding-bottom: calc(var(--fql-peek-gap) + var(--fql-peek-height));
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__peek {
  position: absolute;
  top: calc(var(--fql-viewport-height, 0px) + var(--fql-peek-gap));
  inset-inline: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 16px;
  height: var(--fql-peek-height);
  overflow: hidden;
  pointer-events: none;
  opacity: 0.45;
  transform: translateY(0);
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 10%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 10%, transparent 100%);
  transition: opacity 180ms ease, transform 320ms ease;
}

.block-fancy-quote-list-v1 .fancy-quote-list-v1__peek-quote {
  grid-column: 1 / -1;
  min-width: 0;
  margin: 0;
}

.block-fancy-quote-list-v1.fql-animating .fancy-quote-list-v1__peek,
.block-fancy-quote-list-v1 .fancy-quote-list-v1__peek.fql-peek-empty {
  opacity: 0;
  transform: translateY(8px);
}

@media (min-width: 768px) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__peek {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__peek[data-has-media='true'] .fancy-quote-list-v1__peek-quote {
    grid-column: 1 / span 8;
  }

  .block-fancy-quote-list-v1 .fancy-quote-list-v1__peek[data-has-media='false'] .fancy-quote-list-v1__peek-quote {
    max-width: 900px;
  }
}

.block-fancy-quote-list-v1.fql-reduced-motion .fancy-quote-list-v1__peek {
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .block-fancy-quote-list-v1 .fancy-quote-list-v1__peek {
    transition: none;
  }
}


/* fancy-quote-v1 */

/* Fancy Quote (block-fancy-quote-v1) */
.block-fancy-quote-v1 {
  --fancy-quote-v1-bg: var(--color-white, #ffffff);
  background: var(--fancy-quote-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
}

.block-fancy-quote-v1[data-background-color="#FFFFFF"] {
  --fancy-quote-v1-bg: var(--color-white, #ffffff);
}

.block-fancy-quote-v1[data-background-color="#F7F7F7"] {
  --fancy-quote-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-fancy-quote-v1 {
  --fancy-quote-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-quote-v1 .fancy-quote-v1__outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 16px;
  box-sizing: border-box;
}

.block-fancy-quote-v1 .fancy-quote-v1__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 16px;
  row-gap: 32px;
  align-items: center;
  margin: 0;
  position: relative;
}

.block-fancy-quote-v1 .fancy-quote-v1__grid::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 1px;
  background: var(--color-forest-green, #004432);
}

.dark .block-fancy-quote-v1 .fancy-quote-v1__grid::before {
  background: var(--color-accent-dark, #47b27a);
}

.block-fancy-quote-v1 .fancy-quote-v1__content {
  grid-column: 1 / -1;
  min-width: 0;
  margin: 0;
  padding-left: 32px;
  box-sizing: border-box;
}


.block-fancy-quote-v1 .fancy-quote-v1__mark {
  display: block;
  width: 72px;
  height: auto;
  max-width: 36vw;
  margin: 0 0 24px;
  color: var(--color-accent, #47b27a);
}

.block-fancy-quote-v1 .fancy-quote-v1__quote {
  margin: 0;
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  color: var(--color-black, #333333);
}

.dark .block-fancy-quote-v1 .fancy-quote-v1__quote {
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-quote-v1 .fancy-quote-v1__quote p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.block-fancy-quote-v1 .fancy-quote-v1__owner {
  display: block;
  margin-top: 24px;
  min-width: 0;
}

.block-fancy-quote-v1 .fancy-quote-v1__owner[data-show-owner="false"],
.block-fancy-quote-v1 .fancy-quote-v1__owner[data-show-owner="0"],
.block-fancy-quote-v1 .fancy-quote-v1__owner[data-show-owner="off"],
.block-fancy-quote-v1 .fancy-quote-v1__owner[data-show-owner="no"],
.block-fancy-quote-v1 .fancy-quote-v1__owner[data-show-owner=""],
.block-fancy-quote-v1 .fancy-quote-v1__media[data-show-owner="false"],
.block-fancy-quote-v1 .fancy-quote-v1__media[data-show-owner="0"],
.block-fancy-quote-v1 .fancy-quote-v1__media[data-show-owner="off"],
.block-fancy-quote-v1 .fancy-quote-v1__media[data-show-owner="no"],
.block-fancy-quote-v1 .fancy-quote-v1__media[data-show-owner=""] {
  display: none;
}

.block-fancy-quote-v1 .fancy-quote-v1__owner-name {
  display: block;
  margin: 0;
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  color: var(--color-forest-green, #004432);
  overflow-wrap: anywhere;
}

.dark .block-fancy-quote-v1 .fancy-quote-v1__owner-name {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-quote-v1 .fancy-quote-v1__owner-position {
  display: block;
  margin: 4px 0 0;
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-black, #333333);
  overflow-wrap: anywhere;
}

.dark .block-fancy-quote-v1 .fancy-quote-v1__owner-position {
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-quote-v1 .fancy-quote-v1__owner-position p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.block-fancy-quote-v1 .fancy-quote-v1__media {
  position: relative;
  grid-column: 1 / -1;
  justify-self: center;
  width: min(224px, 100%);
  aspect-ratio: 1;
  color: var(--color-forest-green, #004432);
  isolation: isolate;
}

.dark .block-fancy-quote-v1 .fancy-quote-v1__media {
  color: var(--color-forest-green, #004432);
}

.block-fancy-quote-v1 .fancy-quote-v1__illustration[show-illustration="false"],
.block-fancy-quote-v1 .fancy-quote-v1__illustration[show-illustration="0"],
.block-fancy-quote-v1 .fancy-quote-v1__illustration[show-illustration="off"],
.block-fancy-quote-v1 .fancy-quote-v1__illustration[show-illustration="no"] {
  display: none;
}

.block-fancy-quote-v1 .fancy-quote-v1__illustration {
  position: absolute;
  z-index: 0;
  top: 57%;
  left: 38%;
  width: 94%;
  height: 94%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.block-fancy-quote-v1 .fancy-quote-v1__avatar {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 86%;
  height: 86%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
}

@media (min-width: 768px) {
  .block-fancy-quote-v1 .fancy-quote-v1__outer {
    padding: 64px 48px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__content {
    grid-column: span 8;
    padding-left: 64px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__grid:not(:has(.fancy-quote-v1__media)) .fancy-quote-v1__content {
    grid-column: 1 / -1;
    max-width: 900px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__media {
    grid-column: span 4;
    justify-self: end;
    width: min(288px, 100%);
  }

  .block-fancy-quote-v1 .fancy-quote-v1__avatar {
    left: auto;
    right: 0;
    width: min(296px, 86%);
    height: min(296px, 86%);
    transform: translateY(-50%);
  }
}

@media (min-width: 1024px) {
  .block-fancy-quote-v1 .fancy-quote-v1__outer {
    padding: 64px 80px;
  }
}

@media (max-width: 767px) {
  .block-fancy-quote-v1 .fancy-quote-v1__outer {
    padding-left: 16px;
    padding-right: 16px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__illustration {
    top: 57%;
    left: 38%;
    width: 94%;
    height: 94%;
    transform: translate(-50%, -50%);
  }

  .block-fancy-quote-v1 .fancy-quote-v1__avatar {
    top: 50%;
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 420px) {
  .block-fancy-quote-v1 .fancy-quote-v1__content {
    padding-left: 24px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__mark {
    width: 56px;
  }

  .block-fancy-quote-v1 .fancy-quote-v1__media {
    width: min(224px, 100%);
  }
}


/* fancy-team-v1 */
/* Fancy Team (block-fancy-team-v1) */

.block-fancy-team-v1 {
  --fancy-team-v1-bg: var(--color-white, #ffffff);
  background: var(--fancy-team-v1-bg);
  color: var(--color-black, #333333);
}

.block-fancy-team-v1[data-background-color="#FFFFFF"] {
  --fancy-team-v1-bg: var(--color-white, #ffffff);
}

.block-fancy-team-v1[data-background-color="#F7F7F7"] {
  --fancy-team-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-fancy-team-v1 {
  --fancy-team-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-team-v1 .fancy-team-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-fancy-team-v1 .fancy-team-v1__header {
  display: grid;
  gap: 24px;
  margin-bottom: 32px;
}

.block-fancy-team-v1 .fancy-team-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  line-height: var(--text-h3--line-height, 1.15);
  color: var(--color-forest-green, #004432);
}

.dark .block-fancy-team-v1 .fancy-team-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-team-v1 .fancy-team-v1__clamp-wrap {
  position: relative;
  min-width: 0;
}

.block-fancy-team-v1 .fancy-team-v1__description {
  display: -webkit-box;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
}

.dark .block-fancy-team-v1 .fancy-team-v1__description {
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-team-v1 .fancy-team-v1__description p,
.block-fancy-team-v1 .fancy-team-v1__bio p {
  margin: 0 0 16px;
}

.block-fancy-team-v1 .fancy-team-v1__description p:last-child,
.block-fancy-team-v1 .fancy-team-v1__bio p:last-child {
  margin-bottom: 0;
}

.block-fancy-team-v1 .fancy-team-v1__read-more {
  display: inline-flex;
  margin-top: 10px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.block-fancy-team-v1 .fancy-team-v1__read-more:hover,
.block-fancy-team-v1 .fancy-team-v1__read-more:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-fancy-team-v1 .fancy-team-v1__read-more:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-fancy-team-v1 .fancy-team-v1__read-more {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-fancy-team-v1 .fancy-team-v1__read-more:hover,
.dark .block-fancy-team-v1 .fancy-team-v1__read-more:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-fancy-team-v1 .fancy-team-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-fancy-team-v1 .fancy-team-v1__member {
  min-width: 0;
}

.block-fancy-team-v1 .fancy-team-v1__avatar-link {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

.block-fancy-team-v1 .fancy-team-v1__avatar,
.block-fancy-team-v1 .fancy-team-v1__avatar-placeholder {
  display: block;
  width: 144px;
  height: 144px;
  border-radius: 50%;
}

.block-fancy-team-v1 .fancy-team-v1__avatar {
  object-fit: cover;
  object-position: center;
  background: var(--color-grey-20, #dcdcdc);
}

.block-fancy-team-v1 .fancy-team-v1__avatar-placeholder {
  background: var(--color-light-grey, #f7f7f7);
  border: 1px solid var(--color-grey-20, #dcdcdc);
}

.dark .block-fancy-team-v1 .fancy-team-v1__avatar,
.dark .block-fancy-team-v1 .fancy-team-v1__avatar-placeholder {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.12);
}

.block-fancy-team-v1 .fancy-team-v1__name {
  margin: 24px 0 8px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.dark .block-fancy-team-v1 .fancy-team-v1__name {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-team-v1 .fancy-team-v1__position {
  margin: 0 0 16px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-forest-green, #004432);
}

.dark .block-fancy-team-v1 .fancy-team-v1__position {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-team-v1 .fancy-team-v1__bio {
  display: -webkit-box;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
}

.dark .block-fancy-team-v1 .fancy-team-v1__bio {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-fancy-team-v1 .fancy-team-v1__sheet-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.block-fancy-team-v1 .fancy-team-v1__sheet {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  max-height: 86vh;
  overflow: hidden;
  border-radius: 28px 28px 0 0;
  background: var(--color-light-grey, #f7f7f7);
  color: var(--color-black, #333333);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.12);
  transform: translateY(100%);
  visibility: hidden;
  pointer-events: none;
  transition: transform 0.35s cubic-bezier(0.32, 0, 0.15, 1), visibility 0s linear 0.35s;
}

.block-fancy-team-v1 .fancy-team-v1__sheet.is-active {
  transform: translateY(0);
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

.block-fancy-team-v1 .fancy-team-v1__sheet.fancy-team-v1__sheet--dragging {
  transition: none;
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet {
  background: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.5);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-handle {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px 0 6px;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: grab;
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-handle:active {
  cursor: grabbing;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-handle:focus-visible {
  outline: none;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-handle-bar {
  display: block;
  width: 44px;
  height: 5px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.24);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-handle:focus-visible .fancy-team-v1__sheet-handle-bar {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-handle-bar {
  background: rgba(255, 255, 255, 0.28);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-inner {
  display: grid;
  gap: 24px;
  max-width: 1040px;
  margin: 0 auto;
  padding: 20px 24px 32px;
}

.block-fancy-team-v1 .fancy-team-v1__sheet--text-only .fancy-team-v1__sheet-inner {
  max-width: 840px;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-main {
  min-width: 0;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  overflow: hidden;
  border-radius: 50%;
  background: var(--color-white, #ffffff);
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-media {
  background: rgba(255, 255, 255, 0.08);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-avatar,
.block-fancy-team-v1 .fancy-team-v1__sheet-avatar-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-avatar {
  object-fit: cover;
  object-position: center;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-avatar-placeholder {
  border: 1px solid var(--color-grey-20, #dcdcdc);
  background: var(--color-white, #ffffff);
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-avatar-placeholder {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-name {
  margin: 0 0 10px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 22px), 46px);
  line-height: 1.2;
  color: var(--color-forest-green, #004432);
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-name {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-position {
  margin: 0 0 24px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-forest-green, #004432);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-position p {
  margin: 0 0 8px;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-position p:last-child {
  margin-bottom: 0;
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-position {
  color: var(--color-accent-dark, #47b27a);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-bio {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-grey-80, #4d4d4d);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-bio p {
  margin: 0 0 16px;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-bio p:last-child {
  margin-bottom: 0;
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-bio {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-fancy-team-v1 .fancy-team-v1__sheet-footer {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  padding: 14px 24px calc(20px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-footer {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.08);
  color: var(--color-forest-green, #004432);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}

.block-fancy-team-v1 .fancy-team-v1__sheet-close:hover,
.block-fancy-team-v1 .fancy-team-v1__sheet-close:focus-visible {
  background: rgba(0, 0, 0, 0.15);
  transform: scale(1.08);
}

.block-fancy-team-v1 .fancy-team-v1__sheet-close:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-close {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-fancy-team-v1 .fancy-team-v1__sheet-close:hover,
.dark .block-fancy-team-v1 .fancy-team-v1__sheet-close:focus-visible {
  background: rgba(255, 255, 255, 0.16);
}

.block-fancy-team-v1 .fancy-team-v1__cta-row {
  display: flex;
  justify-content: flex-start;
  margin-top: 32px;
}

.block-fancy-team-v1 .fancy-team-v1__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 24px;
  border: 1px solid var(--color-moss-green, #13735f);
  border-radius: 999px;
  background: transparent;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-fancy-team-v1 .fancy-team-v1__cta:hover,
.block-fancy-team-v1 .fancy-team-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  border-color: transparent;
  color: var(--color-white, #ffffff);
}

.block-fancy-team-v1 .fancy-team-v1__cta:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-fancy-team-v1 .fancy-team-v1__cta-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-fancy-team-v1 .fancy-team-v1__cta:hover .fancy-team-v1__cta-icon,
.block-fancy-team-v1 .fancy-team-v1__cta:focus-visible .fancy-team-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-fancy-team-v1 .fancy-team-v1__cta {
  background: transparent;
  border-color: var(--color-accent-dark, #47b27a);
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-fancy-team-v1 .fancy-team-v1__cta:hover,
.dark .block-fancy-team-v1 .fancy-team-v1__cta:focus-visible {
  background: var(--color-accent-dark, #47b27a);
  border-color: transparent;
  color: var(--color-bg-dark, #0f1a14);
}

@media (min-width: 768px) {
  .block-fancy-team-v1 .fancy-team-v1__inner {
    padding: 64px 48px;
  }

  .block-fancy-team-v1 .fancy-team-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
  }

  .block-fancy-team-v1 .fancy-team-v1__avatar,
  .block-fancy-team-v1 .fancy-team-v1__avatar-placeholder {
    width: 168px;
    height: 168px;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-handle {
    display: none;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-inner {
    grid-template-columns: 96px minmax(0, 1fr);
    grid-template-areas:
      "media name"
      "media position"
      "bio bio";
    column-gap: 24px;
    row-gap: 4px;
    padding: 48px 48px 36px;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-main {
    display: contents;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet--text-only .fancy-team-v1__sheet-inner {
    display: block;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet--text-only .fancy-team-v1__sheet-main {
    display: block;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-media {
    grid-area: media;
    width: 96px;
    height: 96px;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-name {
    grid-area: name;
    align-self: end;
    margin-bottom: 4px;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-position {
    grid-area: position;
    align-self: start;
    margin-bottom: 0;
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-bio {
    grid-area: bio;
    margin-top: 20px;
  }

  .block-fancy-team-v1 .fancy-team-v1__cta-row {
    margin-top: 64px;
  }
}

@media (min-width: 1024px) {
  .block-fancy-team-v1 .fancy-team-v1__inner {
    padding: 64px 80px;
  }

  .block-fancy-team-v1 .fancy-team-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    margin-bottom: 48px;
  }

  .block-fancy-team-v1 .fancy-team-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-fancy-team-v1 .fancy-team-v1__description-wrap {
    grid-column: 7 / span 6;
  }

  .block-fancy-team-v1 .fancy-team-v1__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .block-fancy-team-v1 .fancy-team-v1__sheet-inner {
    padding: 56px 80px 40px;
  }

  .block-fancy-team-v1 .fancy-team-v1__cta-row {
    justify-content: flex-end;
  }

  .block-fancy-team-v1 .fancy-team-v1__cta {
    font-size: 18px;
  }
}

/* Portrait masks are block-local, stemless adaptations of the leaf library. */
.block-fancy-team-v1 { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.015%20C.55%20.015%20.575%20.145%20.63%20.15%20C.66%20.16%20.72%20.09%20.765%20.115%20C.81%20.14%20.765%20.255%20.80%20.29%20C.835%20.325%20.94%20.26%20.97%20.315%20C.99%20.37%20.89%20.405%20.895%20.455%20C.90%20.49%20.994%20.49%20.995%20.55%20C1%20.61%20.90%20.625%20.885%20.67%20C.875%20.70%20.94%20.73%20.915%20.78%20C.88%20.87%20.73%20.975%20.5%20.99%20C.27%20.975%20.12%20.87%20.085%20.78%20C.06%20.73%20.125%20.70%20.115%20.67%20C.10%20.625%200%20.61%20.005%20.55%20C.006%20.49%20.10%20.49%20.105%20.455%20C.11%20.405%20.01%20.37%20.03%20.315%20C.06%20.26%20.165%20.325%20.20%20.29%20C.235%20.255%20.19%20.14%20.235%20.115%20C.28%20.09%20.34%20.16%20.37%20.15%20C.425%20.145%20.45%20.015%20.5%20.015Z%22%2F%3E%3C%2Fsvg%3E"); }
.block-fancy-team-v1 [data-portrait-shape="leaf-2"] { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.015%20C.54%20.015%20.555%20.13%20.6%20.15%20C.63%20.17%20.68%20.10%20.705%20.135%20C.73%20.17%20.685%20.29%20.73%20.31%20C.77%20.33%20.85%20.22%20.89%20.255%20C.925%20.285%20.835%20.40%20.86%20.435%20C.89%20.47%20.975%20.435%20.988%20.48%20C1%20.52%20.915%20.6%20.85%20.65%20C.83%20.67%20.885%20.74%20.86%20.76%20C.83%20.78%20.69%20.745%20.65%20.81%20C.61%20.875%20.56%20.975%20.5%20.985%20C.44%20.975%20.39%20.875%20.35%20.81%20C.31%20.745%20.17%20.78%20.14%20.76%20C.115%20.74%20.17%20.67%20.15%20.65%20C.085%20.6%200%20.52%20.012%20.48%20C.025%20.435%20.11%20.47%20.14%20.435%20C.165%20.40%20.075%20.285%20.11%20.255%20C.15%20.22%20.23%20.33%20.27%20.31%20C.315%20.29%20.27%20.17%20.295%20.135%20C.32%20.10%20.37%20.17%20.4%20.15%20C.445%20.13%20.46%20.015%20.5%20.015Z%22%2F%3E%3C%2Fsvg%3E"); }
.block-fancy-team-v1 [data-portrait-shape="leaf-6"] { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.02%20Q.52%20.02%20.58%20.12%20Q.60%20.15%20.65%20.115%20Q.68%20.095%20.70%20.17%20L.74%20.25%20Q.80%20.19%20.82%20.25%20L.85%20.35%20Q.92%20.30%20.93%20.38%20L.945%20.47%20Q1%20.47%20.98%20.54%20L.965%20.62%20Q1%20.63%20.97%20.71%20C.91%20.89%20.75%20.98%20.5%20.98%20C.25%20.98%20.09%20.89%20.03%20.71%20Q0%20.63%20.035%20.62%20L.02%20.54%20Q0%20.47%20.055%20.47%20L.07%20.38%20Q.08%20.30%20.15%20.35%20L.18%20.25%20Q.20%20.19%20.26%20.25%20L.30%20.17%20Q.32%20.095%20.35%20.115%20Q.40%20.15%20.42%20.12%20Q.48%20.02%20.5%20.02Z%22%2F%3E%3C%2Fsvg%3E"); }
.block-fancy-team-v1 [data-portrait-shape="leaf-7"] { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.015%20C.56%20.015%20.58%20.10%20.62%20.10%20C.70%20.08%20.71%20.15%20.74%20.18%20C.82%20.18%20.81%20.27%20.845%20.295%20C.92%20.29%20.89%20.40%20.92%20.425%20C.98%20.44%20.94%20.51%20.935%20.54%20C.985%20.59%20.925%20.65%20.91%20.68%20C.95%20.73%20.87%20.79%20.84%20.81%20C.82%20.89%20.66%20.99%20.5%20.99%20C.34%20.99%20.18%20.89%20.16%20.81%20C.13%20.79%20.05%20.73%20.09%20.68%20C.075%20.65%20.015%20.59%20.065%20.54%20C.06%20.51%20.02%20.44%20.08%20.425%20C.11%20.40%20.08%20.29%20.155%20.295%20C.19%20.27%20.18%20.18%20.26%20.18%20C.29%20.15%20.30%20.08%20.38%20.10%20C.42%20.10%20.44%20.015%20.5%20.015Z%22%2F%3E%3C%2Fsvg%3E"); }
.block-fancy-team-v1 [data-portrait-shape="leaf-11"] { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.015%20C.55%20.015%20.575%20.145%20.63%20.15%20C.66%20.16%20.72%20.09%20.765%20.115%20C.81%20.14%20.765%20.255%20.80%20.29%20C.835%20.325%20.94%20.26%20.97%20.315%20C.99%20.37%20.89%20.405%20.895%20.455%20C.90%20.49%20.994%20.49%20.995%20.55%20C1%20.61%20.90%20.625%20.885%20.67%20C.875%20.70%20.94%20.73%20.915%20.78%20C.88%20.87%20.73%20.975%20.5%20.99%20C.27%20.975%20.12%20.87%20.085%20.78%20C.06%20.73%20.125%20.70%20.115%20.67%20C.10%20.625%200%20.61%20.005%20.55%20C.006%20.49%20.10%20.49%20.105%20.455%20C.11%20.405%20.01%20.37%20.03%20.315%20C.06%20.26%20.165%20.325%20.20%20.29%20C.235%20.255%20.19%20.14%20.235%20.115%20C.28%20.09%20.34%20.16%20.37%20.15%20C.425%20.145%20.45%20.015%20.5%20.015Z%22%2F%3E%3C%2Fsvg%3E"); }
.block-fancy-team-v1 [data-portrait-shape="leaf-12"] { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.02%20C.55%20.02%20.61%20.11%20.68%20.15%20C.90%20.30%20.985%20.39%20.975%20.55%20C.96%20.77%20.795%20.985%20.5%20.985%20C.205%20.985%20.04%20.77%20.025%20.55%20C.015%20.39%20.10%20.30%20.32%20.15%20C.39%20.11%20.45%20.02%20.5%20.02Z%22%2F%3E%3C%2Fsvg%3E"); }
.block-fancy-team-v1 [data-portrait-shape="leaf-13"] { --fancy-team-v1-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3Cpath%20d%3D%22M.5%20.015%20C.54%20.015%20.66%20.16%20.78%20.32%20C.90%20.48%20.98%20.64%20.925%20.79%20C.88%20.92%20.72%20.99%20.5%20.99%20C.28%20.99%20.12%20.92%20.075%20.79%20C.02%20.64%20.10%20.48%20.22%20.32%20C.34%20.16%20.46%20.015%20.5%20.015Z%22%2F%3E%3C%2Fsvg%3E"); }

.block-fancy-team-v1 [data-portrait-shape="circle"] { --fancy-team-v1-mask: radial-gradient(circle closest-side, #000 99.5%, transparent 100%); }
.block-fancy-team-v1 .fancy-team-v1__sheet-media { background: transparent; overflow: visible; border-radius: 0; }
.block-fancy-team-v1 .fancy-team-v1__sheet-avatar-placeholder[hidden] { display: none; }
@supports ((mask-image: linear-gradient(black, black)) or (-webkit-mask-image: linear-gradient(black, black))) {
  .block-fancy-team-v1 .fancy-team-v1__avatar,
  .block-fancy-team-v1 .fancy-team-v1__avatar-placeholder,
  .block-fancy-team-v1 .fancy-team-v1__sheet-avatar,
  .block-fancy-team-v1 .fancy-team-v1__sheet-avatar-placeholder {
    border: 0;
    border-radius: 0;
    -webkit-mask-image: var(--fancy-team-v1-mask);
    mask-image: var(--fancy-team-v1-mask);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
  }
}
.block-fancy-team-v1 .fancy-team-v1__avatar-placeholder,
.block-fancy-team-v1 .fancy-team-v1__sheet-avatar-placeholder { background-color: var(--color-grey-20, #dcdcdc); }
.block-fancy-team-v1 .fancy-team-v1__profile-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  margin-top: 18px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
  overflow-wrap: anywhere;
}
.block-fancy-team-v1 .fancy-team-v1__profile-cta p { margin: 0; }
.block-fancy-team-v1 .fancy-team-v1__profile-cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}
.block-fancy-team-v1 .fancy-team-v1__profile-cta:hover,
.block-fancy-team-v1 .fancy-team-v1__profile-cta:focus-visible { color: var(--color-forest-green, #004432); }
.block-fancy-team-v1 .fancy-team-v1__profile-cta:hover .fancy-team-v1__profile-cta-icon,
.block-fancy-team-v1 .fancy-team-v1__profile-cta:focus-visible .fancy-team-v1__profile-cta-icon { transform: translateX(3px); }
.block-fancy-team-v1 .fancy-team-v1__profile-cta:focus-visible,
.block-fancy-team-v1 .fancy-team-v1__avatar-link:focus-visible { outline: 2px solid var(--color-mint-green, #47b27a); outline-offset: 4px; }
.dark .block-fancy-team-v1 .fancy-team-v1__profile-cta { color: var(--color-accent-dark, #47b27a); }
.dark .block-fancy-team-v1 .fancy-team-v1__profile-cta:hover,
.dark .block-fancy-team-v1 .fancy-team-v1__profile-cta:focus-visible { color: var(--color-text-dark, #f0f4f2); }
.dark .block-fancy-team-v1 .fancy-team-v1__bio,
.dark .block-fancy-team-v1 .fancy-team-v1__sheet-bio { color: var(--color-text-dark, #f0f4f2); }
.block-fancy-team-v1 .fancy-team-v1__sheet-profile { grid-column: 1 / -1; }
.block-fancy-team-v1 .fancy-team-v1__sheet-profile[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) {
  .block-fancy-team-v1 .fancy-team-v1__sheet,
  .block-fancy-team-v1 .fancy-team-v1__sheet-backdrop,
  .block-fancy-team-v1 .fancy-team-v1__sheet-close,
  .block-fancy-team-v1 .fancy-team-v1__profile-cta,
  .block-fancy-team-v1 .fancy-team-v1__profile-cta-icon,
  .block-fancy-team-v1 .fancy-team-v1__cta,
  .block-fancy-team-v1 .fancy-team-v1__cta-icon { transition: none; }
  .block-fancy-team-v1 .fancy-team-v1__profile-cta:hover .fancy-team-v1__profile-cta-icon,
  .block-fancy-team-v1 .fancy-team-v1__profile-cta:focus-visible .fancy-team-v1__profile-cta-icon { transform: none; }
}


/* faq-browser-v1 */
/* -- FAQ Browser (block-faq-browser-v1) ------------------------------------- */
.block-faq-browser-v1 {
  background: var(--color-white, #FFFFFF);
  color: var(--color-black, #333333);
}

.dark .block-faq-browser-v1 {
  background: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-faq-browser-v1 .fb-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-faq-browser-v1 .fb-category-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.block-faq-browser-v1 .fb-category-card {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 268px;
  padding: 24px;
  border: 1px solid rgba(0, 68, 50, 0.08);
  border-radius: 28px;
  box-sizing: border-box;
  background: var(--color-white, #FFFFFF);
  color: inherit;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  opacity: 0;
  transform: translateY(18px);
  animation: fb-slide-up 0.7s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(var(--fb-i, 0) * 70ms);
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.32s ease;
  will-change: transform, opacity;
}

.block-faq-browser-v1 .fb-category-card:hover,
.block-faq-browser-v1 .fb-category-card:focus-visible {
  transform: translateY(-4px) scale(1.018);
  box-shadow: 0 24px 60px rgba(20, 24, 22, 0.12);
  outline: 0;
}

.block-faq-browser-v1 .fb-category-card:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

.dark .block-faq-browser-v1 .fb-category-card {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.06);
}

.dark .block-faq-browser-v1 .fb-category-card:hover,
.dark .block-faq-browser-v1 .fb-category-card:focus-visible {
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.34);
}

.block-faq-browser-v1 .fb-category-illu-wrap {
  display: block;
  width: 64px;
  height: 64px;
  overflow: hidden;
}

.block-faq-browser-v1 .fb-category-illu {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-white, #FFFFFF);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 28px;
  font-weight: 700;
}

.dark .block-faq-browser-v1 .fb-category-illu {
  background: rgba(255, 255, 255, 0.08);
}

.block-faq-browser-v1 .fb-category-illu img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.block-faq-browser-v1 .fb-category-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.block-faq-browser-v1 .fb-category-name,
.block-faq-browser-v1 .fb-panel h2,
.block-faq-browser-v1 .fb-result-group h2 {
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 22px;
  line-height: 1.18;
  font-weight: 700;
}

.block-faq-browser-v1 .fb-category-name p,
.block-faq-browser-v1 .fb-panel h2 p,
.block-faq-browser-v1 .fb-result-group h2 p {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
}

.block-faq-browser-v1 .fb-category-name {
  margin: 0;
}

.block-faq-browser-v1 .fb-category-desc,
.block-faq-browser-v1 .fb-panel-desc {
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 18px;
  line-height: 1.55;
  color: var(--color-grey-80, #4D4D4D);
}

.dark .block-faq-browser-v1 .fb-category-desc,
.dark .block-faq-browser-v1 .fb-panel-desc {
  color: rgba(255, 255, 255, 0.66);
}

.block-faq-browser-v1 .fb-category-desc p,
.block-faq-browser-v1 .fb-panel-desc p {
  margin: 0;
}

.block-faq-browser-v1 .fb-layout {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: 48px;
  align-items: start;
}

.block-faq-browser-v1 .fb-nav {
  position: sticky;
  top: calc(var(--nav-height, 0px) + 24px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.block-faq-browser-v1 .fb-nav-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.block-faq-browser-v1 .fb-nav-indicator {
  position: absolute;
  z-index: 0;
  inset-inline: 0;
  top: 0;
  height: 0;
  border: 1px solid rgba(19, 115, 95, 0.28);
  border-radius: 8px;
  background: rgba(19, 115, 95, 0.08);
  pointer-events: none;
  transform: translateY(0);
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), height 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-faq-browser-v1 .fb-nav-item,
.block-faq-browser-v1 .fb-back,
.block-faq-browser-v1 .fb-beacon-btn {
  font-family: var(--font-body, Lato, sans-serif);
  cursor: pointer;
}

.block-faq-browser-v1 .fb-faq-row,
.block-faq-browser-v1 .fb-related-item {
  cursor: pointer;
}

.block-faq-browser-v1 .fb-nav-item {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 16px;
  text-align: left;
}

.block-faq-browser-v1 .fb-nav-item span {
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: inherit;
  line-height: 1.2;
}

.block-faq-browser-v1 .fb-nav-item span p {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

.block-faq-browser-v1 .fb-nav-item.is-active,
.block-faq-browser-v1 .fb-nav-item:hover,
.block-faq-browser-v1 .fb-nav-item:focus-visible {
  outline: 0;
}

.block-faq-browser-v1 .fb-nav-item:hover,
.block-faq-browser-v1 .fb-nav-item:focus-visible {
  color: var(--color-moss-green, #13735F);
}

.block-faq-browser-v1 .fb-nav-item:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 2px;
}

.block-faq-browser-v1 .fb-nav-item small {
  color: var(--color-grey-60, #737373);
}

.block-faq-browser-v1 .fb-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--color-moss-green, #13735F);
  font-size: 16px;
  font-weight: 700;
  transition: color 0.18s ease, transform 0.18s ease;
}

.block-faq-browser-v1 .fb-back-categories {
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 16px;
}

.block-faq-browser-v1 .fb-back-categories span {
  font-family: var(--font-heading, Sora, sans-serif);
}

.block-faq-browser-v1 .fb-back-icon {
  flex: 0 0 auto;
}

.block-faq-browser-v1 .fb-back-categories:hover,
.block-faq-browser-v1 .fb-back-categories:focus-visible {
  transform: translateX(-4px);
  outline: 0;
}

.block-faq-browser-v1 .fb-back-categories:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  border-radius: 3px;
}

.block-faq-browser-v1 .fb-panel {
  min-width: 0;
}

.block-faq-browser-v1 .fb-panel-head {
  margin-bottom: 32px;
}

.block-faq-browser-v1 .fb-kicker {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 22px;
  padding: 6px 13px;
  border: 1px solid rgba(19, 115, 95, 0.18);
  border-radius: 8px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-moss-green, #13735F);
  background: rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(8px) saturate(1.3);
  -webkit-backdrop-filter: blur(8px) saturate(1.3);
}

.dark .block-faq-browser-v1 .fb-kicker {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.08);
}

.block-faq-browser-v1 .fb-kicker p {
  margin: 0;
}

.block-faq-browser-v1 .fb-panel h2,
.block-faq-browser-v1 .fb-result-group h2 {
  margin: 0 0 16px;
  font-size: 40px;
}

.block-faq-browser-v1 .fb-faq-list,
.block-faq-browser-v1 .fb-related-list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid var(--color-grey-20, #DCDCDC);
}

.dark .block-faq-browser-v1 .fb-faq-list,
.dark .block-faq-browser-v1 .fb-related-list {
  border-color: rgba(255, 255, 255, 0.12);
}

.block-faq-browser-v1 .fb-faq-row,
.block-faq-browser-v1 .fb-related-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 22px 0;
  border: 0;
  border-bottom: 1px solid var(--color-grey-20, #DCDCDC);
  background: transparent;
  color: inherit;
  text-align: left;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 22px;
  font-weight: 600;
  line-height: 1.35;
  opacity: 0;
  transform: translateY(14px);
  animation: fb-slide-up 0.56s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(var(--fb-i, 0) * 45ms);
  transition: color 0.18s ease;
}

.block-faq-browser-v1 .fb-faq-row *,
.block-faq-browser-v1 .fb-related-item * {
  font-family: inherit;
}

.dark .block-faq-browser-v1 .fb-faq-row,
.dark .block-faq-browser-v1 .fb-related-item {
  border-color: rgba(255, 255, 255, 0.12);
}

.block-faq-browser-v1 .fb-faq-row:hover,
.block-faq-browser-v1 .fb-faq-row:focus-visible,
.block-faq-browser-v1 .fb-related-item:hover,
.block-faq-browser-v1 .fb-related-item:focus-visible {
  color: var(--color-moss-green, #13735F);
  outline: 0;
}

.block-faq-browser-v1 .fb-faq-row:focus-visible,
.block-faq-browser-v1 .fb-related-item:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: -2px;
}

.block-faq-browser-v1 .fb-detail h2 {
  max-width: 820px;
  margin-top: 0;
  font-family: Sora, var(--font-heading, sans-serif);
  color: var(--color-forest-green, #004432);
}

.block-faq-browser-v1 .fb-detail h2 * {
  font-family: inherit;
}

.dark .block-faq-browser-v1 .fb-detail h2 {
  color: var(--color-mint-green, #47B27A);
}

.block-faq-browser-v1 .fb-answer {
  max-width: 820px;
  margin-top: 32px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: var(--text-body, 18px);
  line-height: 1.7;
}

.block-faq-browser-v1 .fb-answer img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

.block-faq-browser-v1 .fb-related {
  max-width: 820px;
  margin-top: 56px;
}

.block-faq-browser-v1 .fb-related h3 {
  margin: 0 0 18px;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 28px;
}

.block-faq-browser-v1 .fb-related-item {
  font-size: 18px;
}

.block-faq-browser-v1 .fb-search-results {
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 900px;
}

.block-faq-browser-v1 .fb-search-empty,
.block-faq-browser-v1 .fb-empty {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px;
  border-radius: 8px;
  background: var(--color-light-grey, #F7F7F7);
  font-family: var(--font-body, Lato, sans-serif);
  text-align: center;
}

.block-faq-browser-v1 .fb-empty {}

.dark .block-faq-browser-v1 .fb-search-empty,
.dark .block-faq-browser-v1 .fb-empty {
  background: rgba(255, 255, 255, 0.06);
}

.block-faq-browser-v1 .fb-search-empty h2 {
  margin: 0 0 12px;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 34px;
}

.block-faq-browser-v1 .fb-beacon-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 24px;
  margin-right: 18px;
  padding: 0.85rem 1.5rem;
  border: 1px solid var(--color-moss-green, #13735F);
  border-radius: 4rem;
  background: transparent;
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, Sora, sans-serif);
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1em;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.block-faq-browser-v1 .fb-beacon-btn:hover,
.block-faq-browser-v1 .fb-beacon-btn:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
  border-color: var(--color-moss-green, #13735F);
  outline: 0;
}

.block-faq-browser-v1 .fb-beacon-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F);
  outline-offset: 4px;
}

@keyframes fb-slide-up {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fb-detail-in {
  from { opacity: 0; transform: translateY(-10px); }
  to   { opacity: 1; transform: translateY(0); }
}

.block-faq-browser-v1 .fb-detail .fb-kicker {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.block-faq-browser-v1 .fb-detail h2 {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) 0.07s both;
}

.block-faq-browser-v1 .fb-answer {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) 0.14s both;
}

.block-faq-browser-v1 .fb-related {
  animation: fb-detail-in 0.38s cubic-bezier(0.22, 1, 0.36, 1) 0.21s both;
}

@media (min-width: 768px) {
  .block-faq-browser-v1 .fb-inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-faq-browser-v1 .fb-inner {
    padding: 64px 80px;
  }
}

@media (max-width: 980px) {
  .block-faq-browser-v1 .fb-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .block-faq-browser-v1 .fb-inner {
    padding: 48px 24px;
  }

  .block-faq-browser-v1 .fb-category-grid,
  .block-faq-browser-v1 .fb-layout {
    grid-template-columns: 1fr;
  }

  .block-faq-browser-v1 .fb-category-card {
    min-height: 0;
  }

  .block-faq-browser-v1 .fb-category-name {
    font-size: 20px;
  }

  .block-faq-browser-v1 .fb-nav {
    position: static;
  }

  .block-faq-browser-v1 .fb-nav-list {
    display: none;
  }

  .block-faq-browser-v1 .fb-panel h2,
  .block-faq-browser-v1 .fb-result-group h2 {
    font-size: 32px;
  }

  .block-faq-browser-v1 .fb-faq-row {
    font-size: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-faq-browser-v1 .fb-category-card,
  .block-faq-browser-v1 .fb-faq-row,
  .block-faq-browser-v1 .fb-related-item,
  .block-faq-browser-v1 .fb-nav-indicator,
  .block-faq-browser-v1 .fb-detail .fb-kicker,
  .block-faq-browser-v1 .fb-detail h2,
  .block-faq-browser-v1 .fb-answer,
  .block-faq-browser-v1 .fb-related {
    opacity: 1;
    transform: none;
    animation: none;
    transition: none;
  }

  .block-faq-browser-v1 .fb-category-card:hover,
  .block-faq-browser-v1 .fb-category-card:focus-visible,
  .block-faq-browser-v1 .fb-category-card:focus-visible {
    transform: none;
  }
}


/* faq-header-v1 */
/* -- FAQ Header (block-faq-header-v1) -------------------------------------- */
.block-faq-header-v1 {
  position: relative;
  background:
    radial-gradient(circle at 50% 0%, rgba(71, 178, 122, 0.13), transparent 34rem),
    var(--color-light-grey, #F7F7F7);
  color: var(--color-black, #333333);
  overflow: hidden;
}

.dark .block-faq-header-v1 {
  background:
    radial-gradient(circle at 50% 0%, rgba(71, 178, 122, 0.16), transparent 34rem),
    var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

/* Tree ring background */
.block-faq-header-v1 .fh-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.block-faq-header-v1 .fh-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 720px;
  height: 720px;
  margin-left: -360px;
  margin-top: -360px;
  border-radius: 22% 78% 65% 35% / 60% 40% 75% 25%;
  border: 1.5px solid rgba(71, 178, 122, 0.5);
  animation: fh-ring-expand 9s linear infinite;
}

.dark .block-faq-header-v1 .fh-ring {
  border-color: rgba(71, 178, 122, 0.3);
}

/* Same shape, different phase → rings khớp nhau như thiết diện thân cây thực */
.block-faq-header-v1 .fh-ring:nth-child(1) { animation-delay:     0s; }
.block-faq-header-v1 .fh-ring:nth-child(2) { animation-delay: -1.125s; }
.block-faq-header-v1 .fh-ring:nth-child(3) { animation-delay:  -2.25s; }
.block-faq-header-v1 .fh-ring:nth-child(4) { animation-delay: -3.375s; }
.block-faq-header-v1 .fh-ring:nth-child(5) { animation-delay:   -4.5s; }
.block-faq-header-v1 .fh-ring:nth-child(6) { animation-delay: -5.625s; }
.block-faq-header-v1 .fh-ring:nth-child(7) { animation-delay:  -6.75s; }
.block-faq-header-v1 .fh-ring:nth-child(8) { animation-delay: -7.875s; }

@keyframes fh-ring-expand {
  0%   { transform: scale(0.06); opacity: 0; }
  8%   { opacity: 0.52; }
  82%  { opacity: 0.38; }
  100% { transform: scale(1);    opacity: 0; }
}

.block-faq-header-v1 .fh-inner {
  position: relative;
  z-index: 1;
  width: min(100%, 900px);
  margin: 0 auto;
  padding: clamp(72px, 12vw, 140px) 24px clamp(56px, 8vw, 96px);
  text-align: center;
}

.block-faq-header-v1 .fh-eyebrow,
.block-faq-header-v1 .fh-greeting,
.block-faq-header-v1 .fh-title,
.block-faq-header-v1 .fh-intro,
.block-faq-header-v1 .fh-search-form,
.block-faq-header-v1 .fh-suggested {
  opacity: 0;
  transform: translateY(14px);
  animation: fh-rise 0.72s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.block-faq-header-v1 .fh-eyebrow { animation-delay: 0.02s; }
.block-faq-header-v1 .fh-greeting { animation-delay: 0.08s; }
.block-faq-header-v1 .fh-title { animation-delay: 0.14s; }
.block-faq-header-v1 .fh-intro { animation-delay: 0.2s; }
.block-faq-header-v1 .fh-search-form { animation-delay: 0.28s; }
.block-faq-header-v1 .fh-suggested { animation-delay: 0.36s; }

@keyframes fh-rise {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.block-faq-header-v1 .fh-eyebrow {
  display: inline-flex;
  margin: 0 0 22px;
  padding: 6px 13px;
  border: 1px solid rgba(19, 115, 95, 0.18);
  border-radius: 8px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-moss-green, #13735F);
  background: rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(8px) saturate(1.3);
  -webkit-backdrop-filter: blur(8px) saturate(1.3);
}

.dark .block-faq-header-v1 .fh-eyebrow {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.08);
}

.block-faq-header-v1 .fh-greeting {
  margin: 0;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 750;
  line-height: 1.04;
  letter-spacing: 0;
}

.block-faq-header-v1 .fh-title {
  max-width: 680px;
  margin: 14px auto 0;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--color-grey-80, #4D4D4D);
}

.block-faq-header-v1 .fh-intro {
  max-width: 640px;
  margin: 12px auto 0;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: clamp(16px, 1.8vw, 19px);
  line-height: 1.65;
  color: var(--color-grey-60, #737373);
}

.dark .block-faq-header-v1 .fh-title,
.dark .block-faq-header-v1 .fh-intro {
  color: rgba(255, 255, 255, 0.82);
}

.block-faq-header-v1 .fh-title p,
.block-faq-header-v1 .fh-greeting p,
.block-faq-header-v1 .fh-eyebrow p,
.block-faq-header-v1 .fh-intro p {
  margin: 0;
}

.block-faq-header-v1 .fh-search-form {
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(100%, 640px);
  margin: 38px auto 0;
  padding: 16px 18px;
  border: 1px solid rgba(0, 68, 50, 0.12);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 24px 70px rgba(0, 68, 50, 0.11);
  backdrop-filter: blur(18px) saturate(1.2);
  -webkit-backdrop-filter: blur(18px) saturate(1.2);
}

.dark .block-faq-header-v1 .fh-search-form {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.07);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22);
}

.block-faq-header-v1 .fh-search-form:focus-within {
  border-color: rgba(19, 115, 95, 0.38);
  box-shadow: 0 28px 80px rgba(0, 68, 50, 0.15);
}

.dark .block-faq-header-v1 .fh-search-form:focus-within {
  border-color: rgba(71, 178, 122, 0.42);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.28);
}

.block-faq-header-v1 .fh-search-icon {
  flex: 0 0 auto;
  color: rgba(0, 68, 50, 0.5);
}

.dark .block-faq-header-v1 .fh-search-icon {
  color: rgba(255, 255, 255, 0.45);
}

.block-faq-header-v1 .fh-search-input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: clamp(18px, 2vw, 22px);
  color: inherit;
}

.block-faq-header-v1 .fh-search-input::placeholder {
  color: rgba(77, 77, 77, 0.52);
}

.dark .block-faq-header-v1 .fh-search-input::placeholder {
  color: rgba(255, 255, 255, 0.55);
}

.block-faq-header-v1 .fh-search-button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  color: var(--color-white, #FFFFFF);
  background: var(--color-forest-green, #004432);
  cursor: pointer;
  transition: background 0.16s ease, transform 0.16s ease;
}

.block-faq-header-v1 .fh-search-button:hover,
.block-faq-header-v1 .fh-search-button:focus-visible {
  background: var(--color-moss-green, #13735F);
  transform: translateY(-1px);
}

.block-faq-header-v1 .fh-suggested {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  width: min(100%, 640px);
  margin: 18px auto 0;
}

.block-faq-header-v1 .fh-suggested:empty {
  display: none;
}

.block-faq-header-v1 .fh-suggested-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 22px;
  padding: 8px 14px;
  color: rgba(0, 68, 50, 0.88);
  background: rgba(255, 255, 255, 0.58);
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.4;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.block-faq-header-v1 .fh-suggested-chip:hover,
.block-faq-header-v1 .fh-suggested-chip:focus,
.block-faq-header-v1 .fh-suggested-chip:focus-visible {
  border-color: rgba(0, 68, 50, 0.26);
  color: var(--color-forest-green, #004432);
  background: rgba(255, 255, 255, 0.86);
  transform: translateY(-1px);
}

.dark .block-faq-header-v1 .fh-suggested-chip {
  border-color: rgba(255, 255, 255, 0.16);
  color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.07);
}

.dark .block-faq-header-v1 .fh-suggested-chip:hover,
.dark .block-faq-header-v1 .fh-suggested-chip:focus,
.dark .block-faq-header-v1 .fh-suggested-chip:focus-visible {
  color: var(--color-white, #FFFFFF);
  background: rgba(255, 255, 255, 0.13);
}

@media (max-width: 767px) {
  .block-faq-header-v1 .fh-inner {
    padding: 64px 18px 48px;
  }

  .block-faq-header-v1 .fh-search-form {
    margin-top: 30px;
    padding: 13px 14px;
    border-radius: 24px;
  }

  .block-faq-header-v1 .fh-search-button {
    width: 38px;
    height: 38px;
  }

  .block-faq-header-v1 .fh-suggested {
    justify-content: center;
  }
}

/* ── Collapse when searching ──────────────────────────────── */
.block-faq-header-v1 .fh-eyebrow,
.block-faq-header-v1 .fh-greeting,
.block-faq-header-v1 .fh-title,
.block-faq-header-v1 .fh-intro,
.block-faq-header-v1 .fh-suggested {
  max-height: 500px;
  overflow: hidden;
  transition: opacity 0.25s ease, max-height 0.32s cubic-bezier(0.4, 0, 0.2, 1), margin 0.32s ease;
}

.block-faq-header-v1 .fh-inner {
  transition: padding 0.32s ease;
}

.block-faq-header-v1.is-searching .fh-eyebrow,
.block-faq-header-v1.is-searching .fh-greeting,
.block-faq-header-v1.is-searching .fh-title,
.block-faq-header-v1.is-searching .fh-intro,
.block-faq-header-v1.is-searching .fh-suggested {
  animation: none;
  opacity: 0;
  max-height: 0;
  margin: 0;
  padding: 0;
}

.block-faq-header-v1.is-searching .fh-inner {
  padding: 40px 24px 40px;
}

.block-faq-header-v1.is-searching .fh-search-form {
  margin: 0 auto;
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .block-faq-header-v1 .fh-ring {
    animation: none;
    opacity: 0;
  }

  .block-faq-header-v1 .fh-eyebrow,
  .block-faq-header-v1 .fh-greeting,
  .block-faq-header-v1 .fh-title,
  .block-faq-header-v1 .fh-intro,
  .block-faq-header-v1 .fh-search-form,
  .block-faq-header-v1 .fh-suggested {
    opacity: 1;
    transform: none;
    animation: none;
    transition: none;
  }

  .block-faq-header-v1 .fh-inner,
  .block-faq-header-v1 .fh-search-form {
    transition: none;
  }
}


/* featured-partners-v1 */
/* Featured Partners — presets from the user-supplied schema, 2026-09-23. */
.block-featured-partners-v1 {
  --featured-partners-v1-bg: var(--color-forest-green, #004432);
  --featured-partners-v1-illu: var(--color-moss-green, #13735F);
  --featured-partners-v1-foreground: var(--color-white, #FFFFFF);
  --featured-partners-v1-focus: var(--color-white, #FFFFFF);
  --featured-partners-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--featured-partners-v1-bg);
  color: var(--featured-partners-v1-foreground);
}

.block-featured-partners-v1[data-preset="forest-moss"] {
  --featured-partners-v1-bg: var(--color-forest-green, #004432);
  --featured-partners-v1-illu: var(--color-moss-green, #13735F);
}

.block-featured-partners-v1[data-preset="forest-red"] {
  --featured-partners-v1-bg: var(--color-forest-green, #004432);
  --featured-partners-v1-illu: var(--color-red, #E52322);
}

.block-featured-partners-v1[data-preset="forest-darkred"] {
  --featured-partners-v1-bg: var(--color-forest-green, #004432);
  --featured-partners-v1-illu: var(--color-dark-red, #861135);
}

.block-featured-partners-v1[data-preset="red-forest"] {
  --featured-partners-v1-bg: var(--color-red, #E52322);
  --featured-partners-v1-illu: var(--color-forest-green, #004432);
}

.block-featured-partners-v1[data-preset="red-moss"] {
  --featured-partners-v1-bg: var(--color-red, #E52322);
  --featured-partners-v1-illu: var(--color-moss-green, #13735F);
}

.block-featured-partners-v1[data-preset="red-darkred"] {
  --featured-partners-v1-bg: var(--color-red, #E52322);
  --featured-partners-v1-illu: var(--color-dark-red, #861135);
}

.block-featured-partners-v1[data-preset="moss-forest"] {
  --featured-partners-v1-bg: var(--color-moss-green, #13735F);
  --featured-partners-v1-illu: var(--color-forest-green, #004432);
}

.block-featured-partners-v1[data-preset="moss-red"] {
  --featured-partners-v1-bg: var(--color-moss-green, #13735F);
  --featured-partners-v1-illu: var(--color-red, #E52322);
}

.block-featured-partners-v1[data-preset="moss-darkred"] {
  --featured-partners-v1-bg: var(--color-moss-green, #13735F);
  --featured-partners-v1-illu: var(--color-dark-red, #861135);
}

.block-featured-partners-v1[data-preset="darkred-forest"] {
  --featured-partners-v1-bg: var(--color-dark-red, #861135);
  --featured-partners-v1-illu: var(--color-forest-green, #004432);
}

.block-featured-partners-v1[data-preset="darkred-red"] {
  --featured-partners-v1-bg: var(--color-dark-red, #861135);
  --featured-partners-v1-illu: var(--color-red, #E52322);
}

.block-featured-partners-v1[data-preset="darkred-moss"] {
  --featured-partners-v1-bg: var(--color-dark-red, #861135);
  --featured-partners-v1-illu: var(--color-moss-green, #13735F);
}

.block-featured-partners-v1[data-preset="mint-yellow"] {
  --featured-partners-v1-bg: var(--color-mint-green, #47B27A);
  --featured-partners-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-featured-partners-v1[data-preset="mint-light"] {
  --featured-partners-v1-bg: var(--color-mint-green, #47B27A);
  --featured-partners-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-featured-partners-v1[data-preset="mint-corn"] {
  --featured-partners-v1-bg: var(--color-mint-green, #47B27A);
  --featured-partners-v1-illu: var(--color-corn-green, #94C24A);
}

.block-featured-partners-v1[data-preset="yellow-mint"] {
  --featured-partners-v1-bg: var(--color-yellow-green, #E6CE00);
  --featured-partners-v1-illu: var(--color-mint-green, #47B27A);
}

.block-featured-partners-v1[data-preset="yellow-light"] {
  --featured-partners-v1-bg: var(--color-yellow-green, #E6CE00);
  --featured-partners-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-featured-partners-v1[data-preset="yellow-corn"] {
  --featured-partners-v1-bg: var(--color-yellow-green, #E6CE00);
  --featured-partners-v1-illu: var(--color-corn-green, #94C24A);
}

.block-featured-partners-v1[data-preset="light-mint"] {
  --featured-partners-v1-bg: var(--color-light-green, #8ACBC1);
  --featured-partners-v1-illu: var(--color-mint-green, #47B27A);
}

.block-featured-partners-v1[data-preset="light-yellow"] {
  --featured-partners-v1-bg: var(--color-light-green, #8ACBC1);
  --featured-partners-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-featured-partners-v1[data-preset="light-corn"] {
  --featured-partners-v1-bg: var(--color-light-green, #8ACBC1);
  --featured-partners-v1-illu: var(--color-corn-green, #94C24A);
}

.block-featured-partners-v1[data-preset="corn-mint"] {
  --featured-partners-v1-bg: var(--color-corn-green, #94C24A);
  --featured-partners-v1-illu: var(--color-mint-green, #47B27A);
}

.block-featured-partners-v1[data-preset="corn-yellow"] {
  --featured-partners-v1-bg: var(--color-corn-green, #94C24A);
  --featured-partners-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-featured-partners-v1[data-preset="corn-light"] {
  --featured-partners-v1-bg: var(--color-corn-green, #94C24A);
  --featured-partners-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-featured-partners-v1[data-preset="solid-white"] {
  --featured-partners-v1-bg: var(--color-white, #FFFFFF);
  --featured-partners-v1-illu: var(--color-white, #FFFFFF);
}

.block-featured-partners-v1[data-preset="solid-mossgreen"] {
  --featured-partners-v1-bg: var(--color-moss-green, #13735F);
  --featured-partners-v1-illu: var(--color-moss-green, #13735F);
}

.block-featured-partners-v1[data-preset="solid-red"] {
  --featured-partners-v1-bg: var(--color-red, #E52322);
  --featured-partners-v1-illu: var(--color-red, #E52322);
}

.block-featured-partners-v1[data-preset="solid-darkred"] {
  --featured-partners-v1-bg: var(--color-dark-red, #861135);
  --featured-partners-v1-illu: var(--color-dark-red, #861135);
}

.block-featured-partners-v1[data-preset="solid-mint"] {
  --featured-partners-v1-bg: var(--color-mint-green, #47B27A);
  --featured-partners-v1-illu: var(--color-mint-green, #47B27A);
}

.block-featured-partners-v1[data-preset="solid-lightgreen"] {
  --featured-partners-v1-bg: var(--color-light-green, #8ACBC1);
  --featured-partners-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-featured-partners-v1[data-preset="solid-yellow"] {
  --featured-partners-v1-bg: var(--color-yellow-green, #E6CE00);
  --featured-partners-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-featured-partners-v1[data-preset="solid-corngreen"] {
  --featured-partners-v1-bg: var(--color-corn-green, #94C24A);
  --featured-partners-v1-illu: var(--color-corn-green, #94C24A);
}

.block-featured-partners-v1[data-preset="mint-yellow"],
.block-featured-partners-v1[data-preset="mint-light"],
.block-featured-partners-v1[data-preset="mint-corn"],
.block-featured-partners-v1[data-preset="yellow-mint"],
.block-featured-partners-v1[data-preset="yellow-light"],
.block-featured-partners-v1[data-preset="yellow-corn"],
.block-featured-partners-v1[data-preset="light-mint"],
.block-featured-partners-v1[data-preset="light-yellow"],
.block-featured-partners-v1[data-preset="light-corn"],
.block-featured-partners-v1[data-preset="corn-mint"],
.block-featured-partners-v1[data-preset="corn-yellow"],
.block-featured-partners-v1[data-preset="corn-light"],
.block-featured-partners-v1[data-preset="solid-white"],
.block-featured-partners-v1[data-preset="solid-mint"],
.block-featured-partners-v1[data-preset="solid-lightgreen"],
.block-featured-partners-v1[data-preset="solid-yellow"],
.block-featured-partners-v1[data-preset="solid-corngreen"] {
  --featured-partners-v1-foreground: var(--color-black, #333333);
  --featured-partners-v1-focus: var(--color-black, #333333);
  --featured-partners-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-featured-partners-v1[data-preset="solid-white"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-mossgreen"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-red"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-darkred"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-mint"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-lightgreen"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-yellow"] .featured-partners-v1__illustration,
.block-featured-partners-v1[data-preset="solid-corngreen"] .featured-partners-v1__illustration {
  display: none;
}

.block-featured-partners-v1 .featured-partners-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--featured-partners-v1-illu);
  pointer-events: none;
}

.block-featured-partners-v1 .featured-partners-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 280%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  shape-rendering: geometricPrecision;
  transform-origin: center center;
  transform: none;
  transition: none;
}

/* Override the legacy shared stylesheet while this change stays local-only. */
.block-featured-partners-v1:hover .featured-partners-v1__illustration-svg,
.block-featured-partners-v1:focus-within .featured-partners-v1__illustration-svg {
  transform: none;
}

/* Content and centered logo rows */
.block-featured-partners-v1 .fp-inner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}
.block-featured-partners-v1 .fp-title {
  width: 100%;
  max-width: 900px;
  margin: 0 auto 32px;
  text-align: center;
  color: var(--featured-partners-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}
.block-featured-partners-v1 .fp-title p {
  margin: 0;
  font: inherit;
  color: inherit;
}
.block-featured-partners-v1 .fp-title :is(strong, b, a) {
  color: inherit;
}
.block-featured-partners-v1 .fp-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  list-style: none;
  padding: 0;
  width: 100%;
  max-width: 504px;
  margin: 0 auto;
}
.block-featured-partners-v1 .fp-item {
  flex: 0 0 calc((100% - 24px) / 2);
  min-width: 0;
}
.block-featured-partners-v1 .fp-tile {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  border-radius: 12px;
  background-color: var(--color-white);
  transition: transform 0.15s ease;
  margin: 0;
  height: 112px;
  cursor: default;
  touch-action: manipulation;
  box-sizing: border-box;
  border: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}
.dark .block-featured-partners-v1 .fp-tile {
  background-color: var(--color-surface-dark);
}
.block-featured-partners-v1 .fp-tile:hover,
.block-featured-partners-v1 .fp-tile:focus-within {
  transform: scale(1.05);
  z-index: 2;
}
.block-featured-partners-v1 .fp-link {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 0;
  height: calc(100% + 32px);
  margin: -16px;
  padding: 16px;
  box-sizing: border-box;
  border-radius: inherit;
  text-decoration: none;
  touch-action: manipulation;
}
.block-featured-partners-v1 .fp-tile:active {
  transform: scale(0.97);
  transition-duration: 0.08s;
}
/* Neutralize the old shared hover outline; keyboard focus remains explicit below. */
.block-featured-partners-v1 .fp-link:hover {
  box-shadow: none;
}
.block-featured-partners-v1 .fp-link:focus-visible {
  outline: 3px solid var(--featured-partners-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--featured-partners-v1-focus-shadow);
}
.block-featured-partners-v1 .fp-logo {
  max-width: 100%;
  max-height: 80px;
  width: auto;
  height: 80px;
  object-fit: contain;
  display: block;
}
/* An unfinished external URL shows its logo without a focusable empty link. */
.block-featured-partners-v1 .fp-link + .fp-fallback,
.block-featured-partners-v1 .fp-link[href=""] {
  display: none;
}
.block-featured-partners-v1 .fp-link[href=""] + .fp-fallback {
  display: block;
}
.block-featured-partners-v1 .fp-placeholder {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  background: var(--color-light-grey, #f7f7f7);
}
.block-featured-partners-v1 .fp-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* Tooltip — visible on hover, hidden from screen readers */
.block-featured-partners-v1 .fp-tooltip {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.82);
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: clamp(11px, 1vw, 13px);
  line-height: 1.4;
  padding: 5px 10px;
  border-radius: 6px;
  white-space: nowrap;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 10;
}

.block-featured-partners-v1 .fp-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: rgba(0, 0, 0, 0.82);
}

.block-featured-partners-v1 .fp-tile:hover .fp-tooltip,
.block-featured-partners-v1 .fp-tile:focus-within .fp-tooltip {
  opacity: 1;
}

@media (min-width: 768px) {
  .block-featured-partners-v1 .fp-inner { padding: 64px 48px; }
  .block-featured-partners-v1 .featured-partners-v1__illustration-svg { height: 640%; }
}
@media (min-width: 1024px) {
  .block-featured-partners-v1 .fp-inner { padding: 64px 80px; }
  .block-featured-partners-v1 .fp-grid { max-width: 1032px; }
  .block-featured-partners-v1 .fp-item { flex-basis: calc((100% - 72px) / 4); }
  .block-featured-partners-v1 .fp-tile { height: 80px; }
  .block-featured-partners-v1 .fp-logo { max-height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .block-featured-partners-v1 .fp-tooltip { transition: none; }
  .block-featured-partners-v1 .featured-partners-v1__illustration-svg,
  .block-featured-partners-v1 .fp-tile {
    transform: none !important;
    transition: none;
  }
}


/* h3-titled-text-v1 */
.block-h3-titled-text-v1 {
  background-color: var(--color-white);
}

.block-h3-titled-text-v1 .h3tt-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-h3-titled-text-v1 .h3tt-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.2;
  color: var(--color-forest-green);
  margin: 0 0 24px;
}

.block-h3-titled-text-v1 .h3tt-body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  color: var(--color-black);
}

.block-h3-titled-text-v1 .h3tt-body p {
  margin: 0 0 16px;
}

.block-h3-titled-text-v1 .h3tt-body p:last-child {
  margin-bottom: 0;
}

.block-h3-titled-text-v1 .h3tt-body a {
  color: var(--color-moss-green);
  font-weight: 600;
  text-decoration: underline;
}

.block-h3-titled-text-v1 .h3tt-body a:hover {
  text-decoration: none;
}

.block-h3-titled-text-v1 .h3tt-body strong {
  font-weight: 700;
}

.block-h3-titled-text-v1 .h3tt-body ul,
.block-h3-titled-text-v1 .h3tt-body ol {
  padding-left: 1.4em;
  margin: 0 0 16px;
}

.block-h3-titled-text-v1 .h3tt-body li {
  margin-bottom: 8px;
}

/* Dark mode */
.dark .block-h3-titled-text-v1 {
  background-color: var(--color-bg-dark);
}

.dark .block-h3-titled-text-v1 .h3tt-title {
  color: var(--color-accent-dark);
}

.dark .block-h3-titled-text-v1 .h3tt-body {
  color: var(--color-text-dark);
}

.dark .block-h3-titled-text-v1 .h3tt-body a {
  color: var(--color-accent-dark);
}

/* Tablet */
@media (min-width: 768px) {
  .block-h3-titled-text-v1 .h3tt-inner {
    padding: 64px 48px;
  }
}

/* Desktop: title and body both start at column 5 */
@media (min-width: 1024px) {
  .block-h3-titled-text-v1 .h3tt-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    row-gap: 32px;
  }

  .block-h3-titled-text-v1 .h3tt-title {
    grid-column: 5 / -1;
    margin-bottom: 0;
  }

  .block-h3-titled-text-v1 .h3tt-body {
    grid-column: 5 / -1;
  }
}

/* help-cta-v1 */
/* -- Help CTA (block-help-cta-v1) ------------------------------------------ */
.block-help-cta-v1 {
  background: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}

.block-help-cta-v1.hc-no-beacon {
  display: none;
}

.block-help-cta-v1 .hc-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 72px 24px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 32px;
  align-items: center;
}

.block-help-cta-v1 .hc-title {
  margin: 0;
  font-family: var(--font-heading, Sora, sans-serif);
  font-size: 42px;
  line-height: 1.1;
}

.block-help-cta-v1 .hc-title p,
.block-help-cta-v1 .hc-body p {
  margin: 0;
}

.block-help-cta-v1 .hc-body {
  max-width: 620px;
  margin-top: 16px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.78);
}

.block-help-cta-v1 .hc-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 24px;
  border: 0;
  border-radius: 999px;
  background: var(--color-white, #FFFFFF);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
}

.block-help-cta-v1 .hc-button:hover,
.block-help-cta-v1 .hc-button:focus-visible {
  background: var(--color-mint-green, #47B27A);
  color: var(--color-white, #FFFFFF);
  outline: 0;
}

@media (max-width: 767px) {
  .block-help-cta-v1 .hc-inner {
    grid-template-columns: 1fr;
    padding: 56px 20px;
  }

  .block-help-cta-v1 .hc-title {
    font-size: 34px;
  }
}


/* hero-picture-v1 */
/* ── Hero Picture (block-hero-picture-v1) ─────────────────────── */

.block-hero-picture-v1 {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  min-height: 100svh;
  margin-top: calc(-1 * var(--nav-height, 0px));
}

.block-hero-picture-v1 .hero-picture-v1__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  background-color: var(--color-forest-green);
}

.block-hero-picture-v1 .hero-picture-v1__picture,
.block-hero-picture-v1 .hero-picture-v1__placeholder {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.block-hero-picture-v1 .hero-picture-v1__picture {
  display: block;
}

.block-hero-picture-v1 .hero-picture-v1__picture--mobile {
  display: none;
}

.block-hero-picture-v1 .hero-picture-v1__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.block-hero-picture-v1 .hero-picture-v1__placeholder {
  background-color: var(--color-forest-green);
}

/* Exact same overlay as Hero Video */
/* .block-hero-picture-v1 .hero-picture-v1__overlay {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, transparent 15%, rgba(0, 0, 0, 0.88) 100%);
  pointer-events: none;
} */

.block-hero-picture-v1 .hero-picture-v1__content {
  background: none !important;
}

.block-hero-picture-v1 .hero-picture-v1__content::before {
  content: none !important;
}

.block-hero-picture-v1 .hero-picture-v1__overlay {
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 39.14%,
    rgba(0, 0, 0, 0.6) 95.56%
  ) !important;
}

.block-hero-picture-v1 .hero-picture-v1__title {
  max-width: 1200px;
  margin: 0 auto 16px;
  text-align: center;
  color: var(--color-white);
  font-family: var(--font-heading);
  font-size: clamp(40px, calc(3.5vw + 22px), var(--text-h1));
  font-weight: 700;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

.block-hero-picture-v1 .hero-picture-v1__title p,
.block-hero-picture-v1 .hero-picture-v1__title > * {
  margin: 0;
}

.block-hero-picture-v1 .hero-picture-v1__subtitle {
  max-width: 1200px;
  margin: 0 auto 16px;
  text-align: center;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-heading);
  font-size: clamp(20px, calc(1.2vw + 16px), var(--text-h4));
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.block-hero-picture-v1 .hero-picture-v1__subtitle p,
.block-hero-picture-v1 .hero-picture-v1__subtitle > * {
  margin: 0;
}

.block-hero-picture-v1 .hero-picture-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
  min-height: 48px;
  height: auto;
  padding: 12px 24px;
  border-radius: 9999px;
  background-color: var(--color-yellow-green);
  color: var(--color-forest-green);
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  overflow-wrap: anywhere;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.block-hero-picture-v1 .hero-picture-v1__button:hover,
.block-hero-picture-v1 .hero-picture-v1__button:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
}

.block-hero-picture-v1 .hero-picture-v1__button:focus-visible {
  outline: 3px solid var(--color-white, #fff);
  outline-offset: 2px;
  box-shadow: 0 0 0 8px var(--color-forest-green, #004432);
}

.block-hero-picture-v1 .hero-picture-v1__button p,
.block-hero-picture-v1 .hero-picture-v1__button > * {
  display: inline;
  margin: 0;
}

.block-hero-picture-v1 .hero-picture-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-hero-picture-v1
  .hero-picture-v1__button:hover
  .hero-picture-v1__button-icon,
.block-hero-picture-v1
  .hero-picture-v1__button:focus-visible
  .hero-picture-v1__button-icon {
  transform: translateX(3px);
}

.block-hero-picture-v1 .hero-picture-v1__illustration {
  position: absolute;
  top: calc(100% - 116px);
  left: 50%;
  z-index: 10;
  overflow: visible;
  transform: translateX(-50%);
  pointer-events: none;
}

.block-hero-picture-v1 .hero-picture-v1__illustration-svg {
  display: block;
  overflow: visible;
}

.block-hero-picture-v1 .hero-picture-v1__illustration-path {
  fill: none;
  stroke: var(--color-mint-green);
  stroke-linecap: round;
  stroke-linejoin: round;
}

.block-hero-picture-v1 .hero-picture-v1__vine-stem {
  stroke-width: 4;
}

.block-hero-picture-v1[data-backdrop="false"]
  .hero-picture-v1__overlay {
  display: none !important;
}

@media (max-width: 767px) {
  .block-hero-picture-v1 .hero-picture-v1__picture--desktop {
    display: none;
  }

  .block-hero-picture-v1 .hero-picture-v1__picture--mobile {
    display: block;
  }
}

@media (min-width: 768px) {
  .block-hero-picture-v1 .hero-picture-v1__content {
    padding: 80px 48px 128px;
  }
}

@media (min-width: 1024px) {
  .block-hero-picture-v1 .hero-picture-v1__content {
    padding: 96px 80px 128px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-hero-picture-v1 .hero-picture-v1__button,
  .block-hero-picture-v1 .hero-picture-v1__button-icon {
    transition: none;
  }

  .block-hero-picture-v1
    .hero-picture-v1__button:hover
    .hero-picture-v1__button-icon,
  .block-hero-picture-v1
    .hero-picture-v1__button:focus-visible
    .hero-picture-v1__button-icon {
    transform: none;
  }
}

.block-hero-picture-v1 .hero-picture-v1__media,
.block-hero-picture-v1 .hero-picture-v1__placeholder {
  background: linear-gradient(145deg, #101917, #202925);
}

.block-hero-picture-v1 .hero-picture-v1__image.wi-picture-pending {
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .block-hero-picture-v1 .hero-picture-v1__image {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* hero-video-v1 */
/* ── Hero Video (block-hero-video-v1) ──────────────────────────── */

.block-hero-video-v1 {
  position: relative;
  width: 100%;
  min-height: 100svh;
  margin-top: calc(-1 * var(--nav-height, 0px));
}

/* Clip wrapper — contains video + overlay so vine can escape below */
.block-hero-video-v1 .hero-video-clip {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
}

.block-hero-video-v1 .hero-bg-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  pointer-events: none;
}

.block-hero-video-v1 .hero-overlay {
  display: none;
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(0, 0, 0, 0) 39.14%,
      rgba(0, 0, 0, 0.6) 95.56%) !important;
  z-index: 1;
  pointer-events: none;
}

/* Content */
.block-hero-video-v1 .hero-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  padding: 64px 24px 128px;
  background: linear-gradient(180deg, transparent 15%, rgba(0, 0, 0, 0.88) 100%);
  text-align: center;
}

.block-hero-video-v1 .hero-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(40px, calc(3.5vw + 22px), var(--text-h1));
  line-height: 1.05;
  color: var(--color-white);
  max-width: 1200px;
  margin: 0 auto 16px;
  text-align: center;
}

.block-hero-video-v1 .hero-title p,
.block-hero-video-v1 .hero-title>* {
  margin: 0;
}

.block-hero-video-v1 .hero-subtitle {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(20px, calc(1.2vw + 16px), var(--text-h4));
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.85);
  max-width: 1200px;
  margin: 0 auto 32px;
  text-align: center;
}

.block-hero-video-v1 .hero-subtitle p,
.block-hero-video-v1 .hero-subtitle>* {
  margin: 0;
}

.block-hero-video-v1 .hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 48px;
  padding: 0 24px;
  border-radius: 9999px;
  background-color: var(--color-yellow-green);
  color: var(--color-forest-green);
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 16px;
  line-height: 1em;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.block-hero-video-v1 .hero-btn:hover,
.block-hero-video-v1 .hero-btn:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
}

.block-hero-video-v1 .hero-btn:focus-visible {
  outline: 3px solid #47B27A;
  outline-offset: 4px;
}

.block-hero-video-v1 .hero-btn p,
.block-hero-video-v1 .hero-btn>* {
  margin: 0;
  display: inline;
}

.block-hero-video-v1 .hero-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-hero-video-v1 .hero-btn:hover .hero-btn-icon,
.block-hero-video-v1 .hero-btn:focus-visible .hero-btn-icon {
  transform: translateX(3px);
}

/* Play area */
.block-hero-video-v1 .hero-play-area {
  position: absolute;
  bottom: 24px;
  right: 24px;
  z-index: 5;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.block-hero-video-v1 .hero-play-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.15);
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  color: var(--color-white);
  cursor: pointer;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: background-color 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
}

.block-hero-video-v1 .hero-play-btn:hover {
  background-color: rgba(255, 255, 255, 0.28);
  border-color: var(--color-white);
  transform: scale(1.07);
}

.block-hero-video-v1 .hero-play-btn:focus-visible {
  outline: 3px solid #47B27A;
  outline-offset: 4px;
}

/* Info / privacy notice */
.block-hero-video-v1 .hero-info-wrap {
  position: relative;
}

.block-hero-video-v1 .hero-info-btn {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.block-hero-video-v1 .hero-info-btn:hover,
.block-hero-video-v1 .hero-info-btn:focus-visible {
  border-color: rgba(255, 255, 255, 0.9);
  color: var(--color-white);
}

.block-hero-video-v1 .hero-info-tooltip {
  position: absolute;
  bottom: calc(100% + 10px);
  right: 0;
  width: 220px;
  background: rgba(0, 0, 0, 0.82);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: rgba(255, 255, 255, 0.88);
  font-family: var(--font-body);
  font-size: 12px;
  line-height: 1.5;
  padding: 10px 12px;
  border-radius: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.block-hero-video-v1 .hero-info-wrap:hover .hero-info-tooltip,
.block-hero-video-v1 .hero-info-btn:focus-visible~.hero-info-tooltip,
.block-hero-video-v1 .hero-info-tooltip.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* Vine illustration — starts below button, grows downward on scroll */
/* top = section_height - (padding-bottom 128px - gap 12px) = 100% - 116px */
.block-hero-video-v1 .hero-illu {
  position: absolute;
  top: calc(100% - 116px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  pointer-events: none;
  overflow: visible;
}

.block-hero-video-v1 .hero-illu-svg {
  display: block;
  overflow: visible;
}

.block-hero-video-v1 .hero-illu-path {
  stroke: var(--color-mint-green);
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.block-hero-video-v1 .vine-stem {
  stroke-width: 4;
}

.block-hero-video-v1 .vine-branch {
  stroke-width: 3;
}

.block-hero-video-v1 .vine-sub {
  stroke-width: 2.5;
}

/* Lightbox */
.block-hero-video-v1 .hero-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9990;
  display: flex;
  align-items: center;
  justify-content: center;
}

.block-hero-video-v1 .hero-lightbox[hidden] {
  display: none;
}

.block-hero-video-v1 .hero-lightbox-backdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(2, 10, 4, 0.93);
  cursor: pointer;
  animation: hero-vid-lb-in 0.2s ease;
}

@keyframes hero-vid-lb-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.block-hero-video-v1 .hero-lightbox-content {
  position: relative;
  z-index: 1;
  width: 96vw;
  max-width: 1440px;
  animation: hero-vid-lb-up 0.2s ease;
}

@keyframes hero-vid-lb-up {
  from {
    opacity: 0;
    transform: scale(0.96);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.block-hero-video-v1 .hero-lightbox-frame {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.block-hero-video-v1 .hero-lightbox-iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 6px;
}

.block-hero-video-v1 .hero-lightbox-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: var(--color-white);
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.block-hero-video-v1 .hero-lightbox-close:hover {
  background-color: rgba(255, 255, 255, 0.22);
}

.block-hero-video-v1 .hero-lightbox-close:focus-visible {
  outline: 3px solid #47B27A;
  outline-offset: 4px;
}

.block-hero-video-v1 .hero-lightbox-hint {
  text-align: center;
  color: rgba(255, 255, 255, 0.38);
  font-family: var(--font-body);
  font-size: clamp(0.9375rem, 2vw, 1.125rem);
  margin: 14px 0 0;
  letter-spacing: 0.03em;
  pointer-events: none;
  user-select: none;
}

/* Forest atmosphere */
.block-hero-video-v1 .hero-lb-forest {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.block-hero-video-v1 .hero-lb-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes lb-fly-glow {

  0%,
  100% {
    opacity: 0.08;
    box-shadow: 0 0 3px 1px rgba(160, 240, 100, 0.2);
  }

  50% {
    opacity: 0.85;
    box-shadow: 0 0 7px 3px rgba(190, 255, 130, 0.65);
  }
}

@keyframes lb-fly-float {
  0% {
    transform: translate(0, 0);
  }

  33% {
    transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5));
  }

  66% {
    transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy));
  }

  100% {
    transform: translate(0, 0);
  }
}

.block-hero-video-v1 .hero-lb-fly {
  position: absolute;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    lb-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    lb-fly-float var(--fly-float, 5s) ease-in-out infinite;
}

/* Tablet */
@media (min-width: 768px) {
  .block-hero-video-v1 .hero-content {
    padding: 80px 48px 128px;
  }


}

/* Desktop */
@media (min-width: 1024px) {
  .block-hero-video-v1 .hero-content {
    padding: 96px 80px 128px;
  }


}

/* ── Falling leaves (spawned by JS when progress bar reaches 100%) ── */

@keyframes wi-leaf-fall {
  0% {
    transform: translateY(-30px) translateX(0) rotate(0deg);
    opacity: 0;
  }

  8% {
    opacity: 0.85;
  }

  92% {
    opacity: 0.7;
  }

  100% {
    transform: translateY(100vh) translateX(var(--leaf-drift, 40px)) rotate(480deg);
    opacity: 0;
  }
}

.wi-leaf {
  position: fixed;
  top: 0;
  width: 10px;
  height: 16px;
  border-radius: 80% 0 80% 0;
  pointer-events: none;
  z-index: 9999;
  animation: wi-leaf-fall linear both;
  --leaf-drift: 40px;
}

/* illustrated-page-header-v1 */
/* ── Illustrated Page Header (block-illustrated-page-header-v1) ── */

/* ==========================================================================
   SOLID PRESETS — NO ILLUSTRATION
   ========================================================================== */

/* Dark solid backgrounds */

.block-illustrated-page-header-v1[data-preset="solid-forestgreen"] {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-foreground: var(--color-white, #ffffff);
  --illustrated-page-header-v1-focus: var(--color-white, #ffffff);
  --illustrated-page-header-v1-breadcrumb-color: rgba(255, 255, 255, 0.86);
}

.block-illustrated-page-header-v1[data-preset="solid-mossgreen"] {
  --illustrated-page-header-v1-bg: var(--color-moss-green, #13735f);
  --illustrated-page-header-v1-foreground: var(--color-white, #ffffff);
  --illustrated-page-header-v1-focus: var(--color-white, #ffffff);
  --illustrated-page-header-v1-breadcrumb-color: rgba(255, 255, 255, 0.86);
}

.block-illustrated-page-header-v1[data-preset="solid-darkred"] {
  --illustrated-page-header-v1-bg: var(--color-dark-red, #861135);
  --illustrated-page-header-v1-foreground: var(--color-white, #ffffff);
  --illustrated-page-header-v1-focus: var(--color-white, #ffffff);
  --illustrated-page-header-v1-breadcrumb-color: rgba(255, 255, 255, 0.86);
}

.block-illustrated-page-header-v1[data-preset="solid-red"] {
  --illustrated-page-header-v1-bg: var(--color-red, #e52322);
  --illustrated-page-header-v1-foreground: var(--color-white, #ffffff);
  --illustrated-page-header-v1-focus: var(--color-white, #ffffff);

  /* Red 100%. */
  --illustrated-page-header-v1-breadcrumb-color: var(
    --color-white,
    #ffffff
  );
}

/* Bright solid backgrounds */

.block-illustrated-page-header-v1[data-preset="solid-mint"] {
  --illustrated-page-header-v1-bg: var(--color-mint-green, #47b27a);
}

.block-illustrated-page-header-v1[data-preset="solid-lightgreen"] {
  --illustrated-page-header-v1-bg: var(--color-light-green, #8acbc1);
}

.block-illustrated-page-header-v1[data-preset="solid-yellow"] {
  --illustrated-page-header-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-illustrated-page-header-v1[data-preset="solid-corngreen"] {
  --illustrated-page-header-v1-bg: var(--color-corn-green, #94c24a);
}

.block-illustrated-page-header-v1[data-preset="solid-white"] {
  --illustrated-page-header-v1-bg: var(--color-white, #ffffff);
}

.block-illustrated-page-header-v1:is(
  [data-preset="solid-mint"],
  [data-preset="solid-lightgreen"],
  [data-preset="solid-yellow"],
  [data-preset="solid-corngreen"]) {
  --illustrated-page-header-v1-foreground: var(--color-black, #333333);
  --illustrated-page-header-v1-focus: var(--color-black, #333333);
  --illustrated-page-header-v1-breadcrumb-color: rgba(51, 51, 51, 0.86);
}

.block-illustrated-page-header-v1:is(
  [data-preset="solid-white"]
) {
  --illustrated-page-header-v1-foreground: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-focus: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-breadcrumb-color: rgba(51, 51, 51, 0.86);
}

/* Remove the decorative illustration from every solid preset. */

.block-illustrated-page-header-v1[data-preset^="solid-"]
  .illustrated-page-header-v1__illustration {
  display: none;
}

.block-illustrated-page-header-v1 {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-illu: var(--color-moss-green, #13735F);
  --illustrated-page-header-v1-foreground: var(--color-white, #FFFFFF);
  --illustrated-page-header-v1-focus: var(--color-white, #FFFFFF);
  --illustrated-page-header-v1-breadcrumb-color: rgba(255, 255, 255, 0.86);
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: var(--illustrated-page-header-v1-bg);
  color: var(--illustrated-page-header-v1-foreground);
}

/* Decorative illustration — exact Simple CTA geometry. */
.block-illustrated-page-header-v1 .illustrated-page-header-v1__illustration {
  position: absolute;
  inset: 0;
  overflow: hidden;
  color: var(--illustrated-page-header-v1-illu);
  pointer-events: none;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__illustration-svg {
  position: absolute;
  top: max(-310%, -1240px);
  left: 50%;
  width: auto;
  height: min(653%, 2612px);
  transform: translateX(-50%) rotate(57.787deg);
  opacity: 1;
  fill: currentColor;
}

/* Illustrated presets — white foreground */

.block-illustrated-page-header-v1,
.block-illustrated-page-header-v1[data-preset="forest-red"] {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-illu: var(--color-red, #e52322);
}

.block-illustrated-page-header-v1[data-preset="forest-moss"] {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-illu: var(--color-moss-green, #13735f);
}

.block-illustrated-page-header-v1[data-preset="forest-darkred"] {
  --illustrated-page-header-v1-bg: var(--color-forest-green, #004432);
  --illustrated-page-header-v1-illu: var(--color-dark-red, #861135);
}

.block-illustrated-page-header-v1[data-preset="red-forest"] {
  --illustrated-page-header-v1-bg: var(--color-red, #e52322);
  --illustrated-page-header-v1-illu: var(--color-forest-green, #004432);
}

.block-illustrated-page-header-v1[data-preset="red-moss"] {
  --illustrated-page-header-v1-bg: var(--color-red, #e52322);
  --illustrated-page-header-v1-illu: var(--color-moss-green, #13735f);
}

.block-illustrated-page-header-v1[data-preset="red-darkred"] {
  --illustrated-page-header-v1-bg: var(--color-red, #e52322);
  --illustrated-page-header-v1-illu: var(--color-dark-red, #861135);
}

.block-illustrated-page-header-v1[data-preset="moss-forest"] {
  --illustrated-page-header-v1-bg: var(--color-moss-green, #13735f);
  --illustrated-page-header-v1-illu: var(--color-forest-green, #004432);
}

.block-illustrated-page-header-v1[data-preset="moss-red"] {
  --illustrated-page-header-v1-bg: var(--color-moss-green, #13735f);
  --illustrated-page-header-v1-illu: var(--color-red, #e52322);
}

.block-illustrated-page-header-v1[data-preset="moss-darkred"] {
  --illustrated-page-header-v1-bg: var(--color-moss-green, #13735f);
  --illustrated-page-header-v1-illu: var(--color-dark-red, #861135);
}

.block-illustrated-page-header-v1[data-preset="darkred-forest"] {
  --illustrated-page-header-v1-bg: var(--color-dark-red, #861135);
  --illustrated-page-header-v1-illu: var(--color-forest-green, #004432);
}

.block-illustrated-page-header-v1[data-preset="darkred-red"] {
  --illustrated-page-header-v1-bg: var(--color-dark-red, #861135);
  --illustrated-page-header-v1-illu: var(--color-red, #e52322);
}

.block-illustrated-page-header-v1[data-preset="darkred-moss"] {
  --illustrated-page-header-v1-bg: var(--color-dark-red, #861135);
  --illustrated-page-header-v1-illu: var(--color-moss-green, #13735f);
}

/* Illustrated presets — dark foreground */

.block-illustrated-page-header-v1[data-preset="mint-yellow"] {
  --illustrated-page-header-v1-bg: var(--color-mint-green, #47b27a);
  --illustrated-page-header-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-illustrated-page-header-v1[data-preset="mint-light"] {
  --illustrated-page-header-v1-bg: var(--color-mint-green, #47b27a);
  --illustrated-page-header-v1-illu: var(--color-light-green, #8acbc1);
}

.block-illustrated-page-header-v1[data-preset="mint-corn"] {
  --illustrated-page-header-v1-bg: var(--color-mint-green, #47b27a);
  --illustrated-page-header-v1-illu: var(--color-corn-green, #94c24a);
}

.block-illustrated-page-header-v1[data-preset="yellow-mint"] {
  --illustrated-page-header-v1-bg: var(--color-yellow-green, #e6ce00);
  --illustrated-page-header-v1-illu: var(--color-mint-green, #47b27a);
}

.block-illustrated-page-header-v1[data-preset="yellow-light"] {
  --illustrated-page-header-v1-bg: var(--color-yellow-green, #e6ce00);
  --illustrated-page-header-v1-illu: var(--color-light-green, #8acbc1);
}

.block-illustrated-page-header-v1[data-preset="yellow-corn"] {
  --illustrated-page-header-v1-bg: var(--color-yellow-green, #e6ce00);
  --illustrated-page-header-v1-illu: var(--color-corn-green, #94c24a);
}

.block-illustrated-page-header-v1[data-preset="light-mint"] {
  --illustrated-page-header-v1-bg: var(--color-light-green, #8acbc1);
  --illustrated-page-header-v1-illu: var(--color-mint-green, #47b27a);
}

.block-illustrated-page-header-v1[data-preset="light-yellow"] {
  --illustrated-page-header-v1-bg: var(--color-light-green, #8acbc1);
  --illustrated-page-header-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-illustrated-page-header-v1[data-preset="light-corn"] {
  --illustrated-page-header-v1-bg: var(--color-light-green, #8acbc1);
  --illustrated-page-header-v1-illu: var(--color-corn-green, #94c24a);
}

.block-illustrated-page-header-v1[data-preset="corn-mint"] {
  --illustrated-page-header-v1-bg: var(--color-corn-green, #94c24a);
  --illustrated-page-header-v1-illu: var(--color-mint-green, #47b27a);
}

.block-illustrated-page-header-v1[data-preset="corn-yellow"] {
  --illustrated-page-header-v1-bg: var(--color-corn-green, #94c24a);
  --illustrated-page-header-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-illustrated-page-header-v1[data-preset="corn-light"] {
  --illustrated-page-header-v1-bg: var(--color-corn-green, #94c24a);
  --illustrated-page-header-v1-illu: var(--color-light-green, #8acbc1);
}

.block-illustrated-page-header-v1[data-preset="mint-yellow"],
.block-illustrated-page-header-v1[data-preset="mint-light"],
.block-illustrated-page-header-v1[data-preset="mint-corn"],
.block-illustrated-page-header-v1[data-preset="yellow-mint"],
.block-illustrated-page-header-v1[data-preset="yellow-light"],
.block-illustrated-page-header-v1[data-preset="yellow-corn"],
.block-illustrated-page-header-v1[data-preset="light-mint"],
.block-illustrated-page-header-v1[data-preset="light-yellow"],
.block-illustrated-page-header-v1[data-preset="light-corn"],
.block-illustrated-page-header-v1[data-preset="corn-mint"],
.block-illustrated-page-header-v1[data-preset="corn-yellow"],
.block-illustrated-page-header-v1[data-preset="corn-light"] {
  --illustrated-page-header-v1-foreground: var(--color-black, #333333);
  --illustrated-page-header-v1-focus: var(--color-black, #333333);
  --illustrated-page-header-v1-breadcrumb-color: rgba(51, 51, 51, 0.86);
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb {
  width: 100%;
  margin: 0 0 64px;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-item {
  display: flex;
  align-items: center;
  flex-shrink: 1;
  gap: 6px;
  min-width: 0;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
  text-decoration: none;
  transition: opacity 0.15s ease;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home svg {
  display: block;
  width: auto;
  height: 14px;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-separator {
  display: block;
  flex-shrink: 0;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link,
.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  max-width: min(320px, 60vw);
  overflow: hidden;
  color: var(--illustrated-page-header-v1-breadcrumb-color);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link {
  position: relative;
  text-decoration: none;
  transition: opacity 0.15s ease;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home:hover,
.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link:hover {
  color: var(--illustrated-page-header-v1-foreground);
  opacity: 1;
}

.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-home:focus-visible,
.block-illustrated-page-header-v1 .page-header-v1__breadcrumb-link:focus-visible {
  outline: 2px solid var(--illustrated-page-header-v1-focus);
  outline-offset: 3px;
  border-radius: 2px;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline {
  width: 100%;
  margin: 0;
  color: var(--illustrated-page-header-v1-foreground);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(36px, calc(3vw + 20px), 60px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline {
  width: 100%;
  margin-top: 16px;
  color: var(--illustrated-page-header-v1-foreground);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: pretty;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline > *,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline > * {
  margin: 0;
  color: inherit;
  font: inherit;
  line-height: inherit;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline > * + *,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline > * + * {
  margin-top: 8px;
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline a,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline a,
.block-illustrated-page-header-v1 strong,
.block-illustrated-page-header-v1 b {
  color: var(--illustrated-page-header-v1-foreground);
}

.block-illustrated-page-header-v1 .illustrated-page-header-v1__headline a,
.block-illustrated-page-header-v1 .illustrated-page-header-v1__subheadline a {
  font-weight: inherit;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .block-illustrated-page-header-v1 .illustrated-page-header-v1__inner {
    padding: 64px 48px;
  }

  .block-illustrated-page-header-v1 .page-header-v1__breadcrumb {
    margin-bottom: 128px;
  }
}

@media (min-width: 1024px) {
  .block-illustrated-page-header-v1 .illustrated-page-header-v1__inner {
    padding-right: 80px;
    padding-left: 80px;
  }
}


/* impact-stats-v1 */
/* ── Impact Statistics (block-impact-stats-v1) ──────────────────── */
/* Disable legacy falling-leaf effect */
.wi-leaf {
  display: none !important;
  animation: none !important;
}
.block-impact-stats-v1 {
  --impact-stats-v1-bg: var(--color-light-grey, #f7f7f7);
  background: var(--impact-stats-v1-bg);
  container-type: inline-size;
}

.block-impact-stats-v1[data-background-color="#FFFFFF"] {
  --impact-stats-v1-bg: var(--color-white, #ffffff);
}

.block-impact-stats-v1[data-background-color="#F7F7F7"] {
  --impact-stats-v1-bg: var(--color-light-grey, #f7f7f7);
}

.block-impact-stats-v1 .stats-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
}

/* ── Headline ── */

.block-impact-stats-v1 .stats-headline,
.block-impact-stats-v1 .stats-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
  text-align: center;
  margin: 0 0 48px;
}

/* ── Stat grid ── */

.block-impact-stats-v1 .stats-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  text-align: center;
}

.block-impact-stats-v1 .stat-number {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: 1.1;
  color: var(--color-moss-green);
  margin: 0 0 8px;
  min-width: 0;
  overflow-wrap: break-word;
}

.block-impact-stats-v1 .stat-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
  margin: 0 0 16px;
}

.block-impact-stats-v1 .stat-description {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}

.block-impact-stats-v1 .stats-headline p,
.block-impact-stats-v1 .stats-title p,
.block-impact-stats-v1 .stat-title p,
.block-impact-stats-v1 .stat-description p {
  margin: 0;
}

/* ── Footer ── */

.block-impact-stats-v1 .stats-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
}

.block-impact-stats-v1 .stats-footer:not(:has(*)) {
  display: none;
}

.block-impact-stats-v1 .progressbar-wrap {
  width: 100%;
}

.block-impact-stats-v1 .progressbar {
  background-color: var(--color-white);
  border-radius: 63px;
  height: 48px;
  overflow: hidden;
}

.block-impact-stats-v1 .progressbar-fill {
  background-color: var(--color-forest-green);
  border-radius: 47px;
  height: 100%;
  transition: width 0.6s ease;
  min-width: 0;
}

@keyframes wi-shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}

@keyframes wi-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(116, 198, 157, 0.7); }
  70%  { box-shadow: 0 0 0 18px rgba(116, 198, 157, 0); }
  100% { box-shadow: 0 0 0 0 rgba(116, 198, 157, 0); }
}

.block-impact-stats-v1 .progressbar-fill.is-complete {
  background: linear-gradient(
    90deg,
    var(--color-forest-green) 0%,
    var(--color-forest-green) 30%,
    var(--color-mint-green) 50%,
    var(--color-forest-green) 70%,
    var(--color-forest-green) 100%
  );
  background-size: 200% 100%;
  animation: wi-shimmer 1.6s ease-in-out 0.8s 1 forwards;
}

.block-impact-stats-v1 .progressbar.is-complete {
  box-shadow: 0 0 0 2px var(--color-mint-green);
  animation: wi-pulse 2s ease-out 0s infinite;
}

/* Button */

.block-impact-stats-v1 .stats-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0.85rem 1.5rem;
  background-color: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  border: 1px solid transparent;
  border-radius: 4rem;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 16px;
  line-height: 1em;
  text-decoration: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: 0.16s ease-in-out all;
}

.block-impact-stats-v1 .stats-btn:hover,
.block-impact-stats-v1 .stats-btn:focus-visible {
  background-color: var(--color-moss-green);
  color: var(--color-white);
  border-color: var(--color-moss-green);
}

.block-impact-stats-v1 .stats-btn:focus-visible {
  outline: 3px solid var(--color-moss-green);
  outline-offset: 4px;
}

.block-impact-stats-v1 .stats-btn:focus:not(:focus-visible) {
  outline: none;
}

.block-impact-stats-v1 .stats-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-impact-stats-v1 .stats-btn:hover .stats-btn-icon {
  transform: translateX(3px);
}

/* Centered button when no progress bar */
.block-impact-stats-v1 .stats-footer.center-btn,
.block-impact-stats-v1 .stats-footer:not(:has(.progressbar-wrap)) {
  justify-content: center;
}

/* Tablet */
@media (min-width: 768px) {
  .block-impact-stats-v1 .stats-inner {
    padding: 64px 48px;
  }

  .block-impact-stats-v1 .stats-grid {
    gap: 32px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-impact-stats-v1 .stats-inner {
    padding: 64px 80px;
  }

  .block-impact-stats-v1 .stats-footer {
    flex-direction: row;
    align-items: center;
    gap: 32px;
  }

  .block-impact-stats-v1 .progressbar-wrap {
    flex: 1;
  }

  .block-impact-stats-v1 .stats-footer.center-btn,
  .block-impact-stats-v1 .stats-footer:not(:has(.progressbar-wrap)) {
    justify-content: center;
  }
}

/* Container queries — grid columns based on block width, not screen width */
@container (min-width: 540px) {
  .block-impact-stats-v1 .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@container (min-width: 760px) {
  .block-impact-stats-v1 .stats-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}


/* info-box-v1 */
/* Info Box (block-info-box-v1) */

.block-info-box-v1 {
  --info-box-v1-section-bg: var(--color-white, #ffffff);
  --info-box-v1-card-bg: var(--color-forest-green, #004432);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
  background: var(--info-box-v1-section-bg);
}

.block-info-box-v1[data-background-color='#FFFFFF'] {
  --info-box-v1-section-bg: var(--color-white, #ffffff);
}

.block-info-box-v1[data-background-color='#F7F7F7'] {
  --info-box-v1-section-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-info-box-v1 {
  --info-box-v1-section-bg: var(--color-bg-dark, #0f1a14);
  background: var(--info-box-v1-section-bg) !important;
}

.block-info-box-v1[data-card-color='forest-green'] {
  --info-box-v1-card-bg: var(--color-forest-green, #004432);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1[data-card-color='mint-green'] {
  --info-box-v1-card-bg: var(--color-mint-green, #47b27a);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='red'] {
  --info-box-v1-card-bg: var(--color-red, #e52322);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1[data-card-color='light-green'] {
  --info-box-v1-card-bg: var(--color-light-green, #8acbc1);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='corn-green'] {
  --info-box-v1-card-bg: var(--color-corn-green, #94c24a);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='yellow-green'] {
  --info-box-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --info-box-v1-card-copy: var(--color-black, #333333);
}

.block-info-box-v1[data-card-color='moss-green'] {
  --info-box-v1-card-bg: var(--color-moss-green, #13735f);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1[data-card-color='dark-red'] {
  --info-box-v1-card-bg: var(--color-dark-red, #861135);
  --info-box-v1-card-copy: var(--color-white, #ffffff);
}

.block-info-box-v1 .info-box-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-info-box-v1 .info-box-v1__card {
  min-width: 0;
  padding: 24px;
  border-radius: 16px;
  background: var(--info-box-v1-card-bg);
  color: var(--info-box-v1-card-copy);
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.block-info-box-v1 .info-box-v1__icon {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 0 24px;
  color: inherit;
  flex: 0 0 auto;
}

.block-info-box-v1 .info-box-v1__icon-disc {
  fill: currentColor;
  stroke: none;
}

.block-info-box-v1 .info-box-v1__icon-mark {
  fill: var(--info-box-v1-card-bg);
  stroke: none;
}

.block-info-box-v1 .info-box-v1__body {
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.block-info-box-v1 .info-box-v1__body :where(p, ul, ol) {
  margin: 0 0 16px;
}

.block-info-box-v1 .info-box-v1__body > :last-child {
  margin-bottom: 0;
}

.block-info-box-v1 .info-box-v1__body :where(ul, ol) {
  padding-left: 1.4em;
}

.block-info-box-v1 .info-box-v1__body li + li {
  margin-top: 8px;
}

.block-info-box-v1 .info-box-v1__body li > p {
  margin: 0;
}

.block-info-box-v1 .info-box-v1__body :where(a, strong, b, em, i, u, sub, sup) {
  color: inherit;
}

.block-info-box-v1 .info-box-v1__body a {
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.block-info-box-v1 .info-box-v1__body a:hover {
  text-decoration-thickness: 2px;
}

.block-info-box-v1 .info-box-v1__body a:focus-visible {
  border-radius: 2px;
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

@media (min-width: 768px) {
  .block-info-box-v1 .info-box-v1__inner {
    padding: 64px 48px;
  }

  .block-info-box-v1 .info-box-v1__card {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-info-box-v1 .info-box-v1__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    padding: 64px 80px;
  }

  .block-info-box-v1 .info-box-v1__card {
    grid-column: 5 / -1;
    padding: 48px;
  }
}


/* latest-news-v1 */
/* ── Latest News (block-latest-news-v1) ──────────────────── */

.block-latest-news-v1 { background: var(--color-light-grey, #F7F7F7); }
.dark .block-latest-news-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-latest-news-v1 .ln-inner {
  max-width: 960px; margin: 0 auto; padding: 64px 24px;
}

/* Header */
.block-latest-news-v1 .ln-header { margin-bottom: 48px; }

.block-latest-news-v1 .ln-title {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700; line-height: 1.15;
  color: var(--color-forest-green, #004432); margin: 0 0 16px;
}
.dark .block-latest-news-v1 .ln-title { color: var(--color-accent-dark, #47b27a); }

.block-latest-news-v1 .ln-title-bird {
  height: 0.85em; width: auto; flex-shrink: 0; fill: currentColor; transform: translateY(-2px);
}

/* Scroll animations */
.block-latest-news-v1.ln-animate .ln-header { opacity: 0; transition: opacity 0.7s ease; }
.block-latest-news-v1.ln-animate .ln-header.ln-visible { opacity: 1; }
.block-latest-news-v1.ln-animate .ln-card { opacity: 0; transform: translateY(24px); transition: opacity 0.6s ease, transform 0.6s ease; }
.block-latest-news-v1.ln-animate .ln-card.ln-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  .block-latest-news-v1.ln-animate .ln-header,
  .block-latest-news-v1.ln-animate .ln-card { opacity: 1 !important; transform: none !important; transition: none !important; }
}

.block-latest-news-v1 .ln-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6; color: var(--color-grey-80, #4D4D4D); margin: 0; text-align: center;
}
.block-latest-news-v1 .ln-desc p { margin: 0; }
.dark .block-latest-news-v1 .ln-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

/* Grid */
.block-latest-news-v1 .ln-grid { display: flex; flex-direction: column; gap: 24px; }

/* Cards shared */
.block-latest-news-v1 .ln-card {
  display: flex; text-decoration: none; color: inherit;
  border-radius: 16px; overflow: hidden;
  background: var(--color-white, #FFFFFF);
  transition: transform 0.2s ease, box-shadow 0.2s ease; cursor: pointer;
}
.dark .block-latest-news-v1 .ln-card { background: var(--color-surface-dark, #1a2920); }
.block-latest-news-v1 .ln-card:hover {
  transform: translateY(-3px); box-shadow: 0 12px 40px rgba(0, 68, 50, 0.12);
}
.dark .block-latest-news-v1 .ln-card:hover { box-shadow: 0 12px 40px rgba(0,0,0,0.35); }
.block-latest-news-v1 .ln-card:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432); outline-offset: 3px;
}
.dark .block-latest-news-v1 .ln-card:focus-visible { outline-color: var(--color-mint-green, #78c5a0); }

/* Image wrap */
.block-latest-news-v1 .ln-card-img-wrap {
  overflow: hidden; position: relative; background: transparent;
}
.dark .block-latest-news-v1 .ln-card-img-wrap { background: rgba(255,255,255,0.06); }
.block-latest-news-v1 .ln-card-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.45s ease;
}
.block-latest-news-v1 .ln-card:hover .ln-card-img { transform: scale(1.05); }

/* Hero card */
.block-latest-news-v1 .ln-card--hero { flex-direction: row; }
.block-latest-news-v1 .ln-card--hero .ln-card-img-wrap { width: 55%; flex-shrink: 0; aspect-ratio: 16 / 9; }
.block-latest-news-v1 .ln-card--hero .ln-card-body {
  flex: 1; padding: 40px 48px;
  display: flex; flex-direction: column; justify-content: space-between; gap: 12px;
}
.block-latest-news-v1 .ln-card--hero .ln-card-date {
  margin-top: auto;
}

/* Sub-grid */
.block-latest-news-v1 .ln-sub-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px;
}
.block-latest-news-v1 .ln-card--sub { flex-direction: column; }
.block-latest-news-v1 .ln-card--sub .ln-card-img-wrap {
  width: 100%; aspect-ratio: 16 / 9; flex-shrink: 0;
}
.block-latest-news-v1 .ln-card--sub .ln-card-body {
  flex: 1; padding: 24px 28px 28px; display: flex; flex-direction: column; gap: 8px;
}
.block-latest-news-v1 .ln-card--sub .ln-card-date { margin-top: auto; }

/* Card content */
.block-latest-news-v1 .ln-card-category {
  display: none; align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.08em; line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  border-radius: 8px; padding: 4px 10px;
}
.block-latest-news-v1 .ln-card-category:not(:empty) { display: inline-block; }
.dark .block-latest-news-v1 .ln-card-category {
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
}

.block-latest-news-v1 .ln-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700; color: var(--color-black, #333333); margin: 0; line-height: 1.3;
}
.dark .block-latest-news-v1 .ln-card-title { color: var(--color-text-dark, #f0f4f2); }

.block-latest-news-v1 .ln-card-seo {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}
.dark .block-latest-news-v1 .ln-card-seo { color: var(--color-text-secondary-dark, rgba(255,255,255,0.62)); }

.block-latest-news-v1 .ln-card-date {
  display: block;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px; color: var(--color-grey-80, #4D4D4D);
}
.dark .block-latest-news-v1 .ln-card-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

/* Mobile */
@media (max-width: 767px) {
  .block-latest-news-v1 .ln-inner { padding: 48px 24px; }
  .block-latest-news-v1 .ln-card--hero { flex-direction: column; min-height: auto; }
  .block-latest-news-v1 .ln-card--hero .ln-card-img-wrap { width: 100%; aspect-ratio: 16 / 9; }
  .block-latest-news-v1 .ln-card--hero .ln-card-body { padding: 24px 20px 28px; }
  .block-latest-news-v1 .ln-sub-grid { grid-template-columns: 1fr; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-latest-news-v1 .ln-title { font-size: 40px; }
  .block-latest-news-v1 .ln-card--hero .ln-card-body { padding: 32px 36px; }
}

@media (min-width: 1024px) {
  .block-latest-news-v1 .ln-title { font-size: 46px; }
}

/* Latest Stories — repair desktop card layout */

.block-latest-news-v1 .ln-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Support DOM cũ: hero + .ln-sub-grid */
.block-latest-news-v1 .ln-grid > .ln-card--hero,
.block-latest-news-v1 .ln-grid > .ln-sub-grid {
  grid-column: 1 / -1;
}

.block-latest-news-v1 .ln-sub-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

/* Support DOM mới nếu prod đã đổi sang ul/li */
.block-latest-news-v1 .ln-card-item--hero {
  grid-column: 1 / -1;
}

.block-latest-news-v1 .ln-card-item,
.block-latest-news-v1 .ln-card,
.block-latest-news-v1 .ln-card-body {
  min-width: 0;
}

.block-latest-news-v1 .ln-card {
  height: 100%;
}

/* Hero phải chiếm nguyên hàng */
.block-latest-news-v1 .ln-card--hero {
  width: 100%;
  flex-direction: row;
}

.block-latest-news-v1 .ln-card--hero .ln-card-img-wrap {
  width: 55%;
  flex: 0 0 55%;
}

.block-latest-news-v1 .ln-card--hero .ln-card-body {
  flex: 1 1 45%;
  min-width: 0;
  padding: 40px 48px;
}

/* Meta description chỉ là teaser, đừng xổ nguyên bài */
.block-latest-news-v1 .ln-card-seo {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

@media (max-width: 767px) {
  .block-latest-news-v1 .ln-grid,
  .block-latest-news-v1 .ln-sub-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .block-latest-news-v1 .ln-grid > *,
  .block-latest-news-v1 .ln-card-item--hero {
    grid-column: auto;
  }

  .block-latest-news-v1 .ln-card--hero {
    flex-direction: column;
  }

  .block-latest-news-v1 .ln-card--hero .ln-card-img-wrap {
    width: 100%;
    flex-basis: auto;
    aspect-ratio: 16 / 9;
  }

  .block-latest-news-v1 .ln-card--hero .ln-card-body {
    padding: 24px 20px 28px;
  }
}
/* Latest Stories — ảnh card đầu full-width 16:9, chữ bên dưới */
.block-latest-news-v1 .ln-card--hero {
  width: 100%;
  flex-direction: column;
}

.block-latest-news-v1 .ln-card--hero .ln-card-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  flex: 0 0 auto;
  overflow: hidden;
}

.block-latest-news-v1 .ln-card--hero .ln-card-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.block-latest-news-v1 .ln-card--hero .ln-card-body {
  flex: 0 0 auto;
  justify-content: flex-start;
}

/* latest-story-card-list-v1 */
/* Latest Story Card List (block-latest-story-card-list-v1) */

.block-latest-story-card-list-v1 {
  --latest-story-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
  --latest-story-card-list-v1-card-bg: var(--color-white, #ffffff);
  background: var(--latest-story-card-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-latest-story-card-list-v1[data-background-color="#FFFFFF"] {
  --latest-story-card-list-v1-bg: var(--color-white, #ffffff);
}

.block-latest-story-card-list-v1[data-background-color="#F7F7F7"] {
  --latest-story-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-latest-story-card-list-v1 {
  --latest-story-card-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --latest-story-card-list-v1-card-bg: var(--color-surface-dark, #1a2920);
  color: var(--color-text-dark, #f0f4f2);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__header {
  margin-bottom: 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__headline p {
  margin: 0;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__item {
  min-width: 0;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: 16px;
  background: var(--latest-story-card-list-v1-card-bg);
  box-shadow: 0 1px 2px rgba(0, 68, 50, 0.08);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__card {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.24);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:focus-visible,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: transparent;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__image,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:hover .latest-story-card-list-v1__image,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:focus-visible .latest-story-card-list-v1__image {
  transform: scale(1.04);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title p,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__description p,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta p {
  margin: 0;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:hover,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:hover,
.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__date {
  color: var(--color-grey-60, #737373);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__category {
  display: inline-block;
  align-self: flex-start;
  padding: 4px 10px;
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px;
  background: rgba(0, 68, 50, 0.07);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__date {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__category {
  border-color: rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.85);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__description {
  display: -webkit-box;
  margin-top: 12px;
  overflow: hidden;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__footer {
  padding: 0 24px 24px;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover .latest-story-card-list-v1__cta-icon,
.block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible .latest-story-card-list-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover,
.dark .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

@media (min-width: 768px) {
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__inner {
    padding: 64px 48px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
    font-size: 40px;
  }
}

@media (min-width: 1024px) {
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__inner {
    padding: 64px 80px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__header {
    margin-bottom: 40px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 28px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item {
    grid-column: span 2;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(2),
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__item:first-child:nth-last-child(2) ~ .latest-story-card-list-v1__item {
    grid-column: span 3;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__headline {
    font-size: 46px;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__title {
    font-size: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__image,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__title-link,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta-icon {
    transition: none !important;
  }

  .block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:hover .latest-story-card-list-v1__image,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__media-link:focus-visible .latest-story-card-list-v1__image,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:hover .latest-story-card-list-v1__cta-icon,
  .block-latest-story-card-list-v1 .latest-story-card-list-v1__cta:focus-visible .latest-story-card-list-v1__cta-icon {
    transform: none !important;
  }
}


/* logoed-text-v1 */
.block-logoed-text-v1 {
  --logoed-text-v1-bg: var(--color-light-grey, #F7F7F7);
  background-color: var(--logoed-text-v1-bg);
}

.block-logoed-text-v1[data-background-color="#FFFFFF"] {
  --logoed-text-v1-bg: var(--color-white, #FFFFFF);
}

.block-logoed-text-v1[data-background-color="#F7F7F7"] {
  --logoed-text-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-logoed-text-v1 {
  --logoed-text-v1-bg: var(--color-surface-dark, #1a2920);
}
.block-logoed-text-v1 .lt-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.block-logoed-text-v1 .lt-logo-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 160px;
  padding: 24px;
  border-radius: 12px;
  background-color: var(--color-white, #FFFFFF);
  margin: 0;
  flex-shrink: 0;
}
.dark .block-logoed-text-v1 .lt-logo-box {
  background-color: var(--color-bg-dark, #0f1a14);
}
.block-logoed-text-v1 .lt-logo {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.block-logoed-text-v1 .lt-logo-placeholder {
  width: 100%;
  height: 100%;
  background-color: transparent;
  border-radius: 8px;
}
.block-logoed-text-v1 .lt-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 400;
  font-size: 18px;
  line-height: var(--text-body--line-height, 1.6);
  color: var(--color-black, #333333);
}
.dark .block-logoed-text-v1 .lt-body {
  color: var(--color-text-dark, #f0f4f2);
}
.block-logoed-text-v1 .lt-body p { margin: 0 0 16px; }
.block-logoed-text-v1 .lt-body p:last-child { margin-bottom: 0; }
.block-logoed-text-v1 .lt-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-logoed-text-v1 .lt-body a { color: var(--color-accent-dark, #47B27A); }
.block-logoed-text-v1 .lt-body a:hover { text-decoration: none; }
.block-logoed-text-v1 .lt-body a:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 2px;
  border-radius: 2px;
}
.dark .block-logoed-text-v1 .lt-body a:focus-visible {
  outline-color: var(--color-accent-dark, #47B27A);
}
.block-logoed-text-v1 .lt-body strong { font-weight: 700; }
.block-logoed-text-v1 .lt-body ul,
.block-logoed-text-v1 .lt-body ol { padding-left: 1.4em; margin: 0 0 16px; }
.block-logoed-text-v1 .lt-body li { margin-bottom: 8px; }
@media (min-width: 768px) {
  .block-logoed-text-v1 .lt-inner { padding: 64px 48px; }
}
@media (min-width: 1024px) {
  .block-logoed-text-v1 .lt-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    align-items: center;
  }
  .block-logoed-text-v1 .lt-logo,
  .block-logoed-text-v1 .lt-logo-placeholder {
    grid-column: 1 / 4;
    width: 100%;
    height: 180px;
  }
  .block-logoed-text-v1 .lt-body {
    grid-column: 5 / -1;
  }
}


/* manual-stats-v1 */
/* Manual Statistics */

.block-manual-stats-v1 {
  --manual-stats-v1-bg: var(--color-light-grey, #f7f7f7);
  background: var(--manual-stats-v1-bg);
  container-type: inline-size;
}

.block-manual-stats-v1[data-background-color="#FFFFFF"] {
  --manual-stats-v1-bg: var(--color-white, #ffffff);
}

.block-manual-stats-v1[data-background-color="#F7F7F7"] {
  --manual-stats-v1-bg: var(--color-light-grey, #f7f7f7);
}

.block-manual-stats-v1 .stats-inner {
  position: relative;
  isolation: isolate;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
}

.block-manual-stats-v1 .stats-inner > :not(.stats-confetti) {
  position: relative;
  z-index: 1;
}

/* Headline */

.block-manual-stats-v1 .stats-headline,
.block-manual-stats-v1 .stats-title {
  font-family: var(--font-heading, "Sora", sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
  text-align: center;
  margin: 0 0 48px;
}

/* Statistics */

.block-manual-stats-v1 .stats-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  text-align: center;
}

.block-manual-stats-v1 .stat-number {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: 1.1;
  color: var(--color-forest-green, #004432);
  margin: 0 0 8px;
  min-width: 0;
  overflow-wrap: break-word;
}

.block-manual-stats-v1 .stat-title {
  font-family: var(--font-heading, "Sora", sans-serif);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
  margin: 0 0 16px;
}

.block-manual-stats-v1 .stat-description {
  font-family: var(--font-body, "Lato", sans-serif);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}

.block-manual-stats-v1 .stats-headline p,
.block-manual-stats-v1 .stats-title p,
.block-manual-stats-v1 .stat-title p,
.block-manual-stats-v1 .stat-description p {
  margin: 0;
}

/* Footer */

.block-manual-stats-v1 .stats-footer {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

/* Button */

.block-manual-stats-v1 .stats-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
  padding: 0.85rem 1.5rem;
  flex: 0 1 auto;

  background-color: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  border: 1px solid transparent;
  border-radius: 4rem;

  font-family: var(--font-heading, "Sora", sans-serif);
  font-weight: 600;
  font-size: 16px;
  line-height: 1em;

  text-decoration: none;
  cursor: pointer;

  transition:
    background-color 0.16s ease-in-out,
    color 0.16s ease-in-out,
    border-color 0.16s ease-in-out;
}

.block-manual-stats-v1 .stats-btn:hover,
.block-manual-stats-v1 .stats-btn:focus-visible {
  background-color: var(--color-forest-green, #004432);
  color: var(--color-white, #ffffff);
  border-color: var(--color-forest-green, #004432);
}

.block-manual-stats-v1 .stats-btn:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.block-manual-stats-v1 .stats-btn:focus:not(:focus-visible) {
  outline: none;
}

.block-manual-stats-v1 .stats-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-manual-stats-v1 .stats-btn:hover .stats-btn-icon {
  transform: translateX(3px);
}

/* Static confetti */

.block-manual-stats-v1 .stats-confetti {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
}

.block-manual-stats-v1 .stats-confetti-piece {
  position: absolute;
  display: block;
  border-radius: 2px;
  pointer-events: none;
  animation: none;
  transition: none;
}

/* Tablet */

@media (min-width: 768px) {
  .block-manual-stats-v1 .stats-inner {
    padding: 64px 48px;
  }

  .block-manual-stats-v1 .stats-grid {
    gap: 32px;
  }
}

/* Desktop */

@media (min-width: 1024px) {
  .block-manual-stats-v1 .stats-inner {
    padding: 64px 80px;
  }
}

/* Columns follow the block width */

@container (min-width: 540px) {
  .block-manual-stats-v1 .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@container (min-width: 760px) {
  .block-manual-stats-v1 .stats-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* map-embed-v1 */
/* Map Embed: consent gate and iframe share a stable frame. */
.block-map-embed-v1 { width:100%; box-sizing:border-box; padding:64px 16px; color:var(--color-forest-green,#004432); background:var(--color-white,#fff); font-family:var(--font-lato,Lato,sans-serif); }
.block-map-embed-v1 * { box-sizing:border-box; }
.block-map-embed-v1 [hidden] { display:none !important; }
.block-map-embed-v1 .map-embed-v1__inner { max-width:1440px; margin:auto; }
.block-map-embed-v1 .map-embed-v1__toolbar { min-height:112px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 24px; padding-bottom:16px; }
.block-map-embed-v1 .map-embed-v1__frame { height:420px; height:min(420px,60svh); min-height:0; border-radius:8px; overflow:hidden; background:var(--color-light-grey,#f7f7f7); }
.block-map-embed-v1 .map-embed-v1__gate { height:100%; overflow:auto; display:flex; flex-direction:column; align-items:center; justify-content:safe center; padding:24px; gap:24px; touch-action:pan-y; }
.block-map-embed-v1 .map-embed-v1__note { max-width:640px; margin:0; text-align:center; font-size:18px; line-height:1.6; }
/* Utility controls: deliberately separate from branded page CTAs. */
.block-map-embed-v1 :is(.map-embed-v1__activate,.map-embed-v1__deactivate,.map-embed-v1__open) {
 display:inline-flex; align-items:center; justify-content:center; gap:8px;
 max-width:100%; min-height:48px; padding:12px 16px;
 font:600 14px/1.5 'Sora',sans-serif; letter-spacing:-.02em;
 color:#27272a; background:#fff; border:1px solid #d4d4d8; border-radius:12px;
 box-shadow:0 1px 2px #18181b08,0 2px 4px #18181b04;
 text-decoration:none; text-align:center; cursor:pointer;
 transition:background-color .15s,border-color .15s,box-shadow .15s;
}
.block-map-embed-v1 :is(.map-embed-v1__activate,.map-embed-v1__deactivate,.map-embed-v1__open) > span { color:inherit; opacity:1; }
.block-map-embed-v1 .map-embed-v1__activate { padding:12px 24px; }
.block-map-embed-v1 .map-embed-v1__control-icon { width:18px; height:18px; flex-shrink:0; color:#71717a; }
.block-map-embed-v1 :is(button,a):focus-visible { outline:2px solid #52525b; outline-offset:4px; }
@media (hover:hover) {
 .block-map-embed-v1 :is(.map-embed-v1__activate,.map-embed-v1__deactivate,.map-embed-v1__open):hover {
  color:#18181b; background:#e4e4e7; border-color:#a1a1aa; opacity:1; box-shadow:0 2px 4px #18181b0d,0 4px 8px #18181b05;
 }
}
.block-map-embed-v1 :is(.map-embed-v1__activate,.map-embed-v1__deactivate,.map-embed-v1__open):active { background:#f4f4f5; box-shadow:inset 0 1px 2px #18181b0d; }
.dark .block-map-embed-v1 :is(.map-embed-v1__activate,.map-embed-v1__deactivate,.map-embed-v1__open) { color:#f4f4f5; background:#27272a; border-color:#52525b; }
.dark .block-map-embed-v1 .map-embed-v1__control-icon { color:#a1a1aa; }
.dark .block-map-embed-v1 :is(button,a):focus-visible { outline-color:#d4d4d8; }
@media (hover:hover) {
 .dark .block-map-embed-v1 :is(.map-embed-v1__activate,.map-embed-v1__deactivate,.map-embed-v1__open):hover { color:#fafafa; background:#3f3f46; border-color:#71717a; opacity:1; }
}
@media (prefers-reduced-motion:reduce) {
 .block-map-embed-v1 :is(button,a) { transition:none !important; }
}
.block-map-embed-v1 button:disabled { cursor:not-allowed; opacity:.6; }
.block-map-embed-v1 iframe { display:block; width:100%; height:100%; border:0; }
.block-map-embed-v1 .map-embed-v1__hint { font-size:16px; line-height:1.6; margin:16px 0 0; }
.block-map-embed-v1 .map-embed-v1__error { margin:0; font-size:18px; line-height:1.6; }
.dark .block-map-embed-v1 { background:var(--color-bg-dark,#0f1a14); color:var(--color-text-dark,#f0f4f2); }
.dark .block-map-embed-v1 .map-embed-v1__frame { background:var(--color-surface-dark,#1a2920); }
.block-map-embed-v1 .map-embed-v1__hint[hidden] { display:block !important; visibility:hidden; }
@media (min-width:768px) {
 .block-map-embed-v1 .map-embed-v1__toolbar { min-height:64px; }
 .block-map-embed-v1 { padding:64px 32px; }
 .block-map-embed-v1[data-width="full"] { padding-left:0; padding-right:0; }
 .block-map-embed-v1[data-width="full"] .map-embed-v1__inner { max-width:none; }
 .block-map-embed-v1[data-width="full"] .map-embed-v1__toolbar, .block-map-embed-v1[data-width="full"] .map-embed-v1__hint { padding-left:32px; padding-right:32px; }
 .block-map-embed-v1 .map-embed-v1__frame { height:560px; }
 .block-map-embed-v1[data-height="compact"] .map-embed-v1__frame { height:400px; }
 .block-map-embed-v1[data-height="large"] .map-embed-v1__frame { height:720px; }
 .block-map-embed-v1 .map-embed-v1__hint, .block-map-embed-v1 .map-embed-v1__hint[hidden] { display:none !important; }
}

.block-map-embed-v1[data-width="full"] .map-embed-v1__frame { border-radius:0; }

/* Hidden controls must not reserve an empty row above the consent gate. */
.block-map-embed-v1:not([data-map-state="active"]) .map-embed-v1__toolbar { display:none; }


/* more-stories-v1 */
/* ── More Stories (block-more-stories-v1) ──────────────────── */

.block-more-stories-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-more-stories-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-more-stories-v1 .ms-inner {
  max-width: 860px; margin: 0 auto; padding: 64px 24px;
}

.block-more-stories-v1 .ms-title {
  margin: 0 0 24px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}
.block-more-stories-v1 .ms-title p { margin: 0; }
.dark .block-more-stories-v1 .ms-title { color: var(--color-accent-dark, #47b27a); }

.block-more-stories-v1 .ms-list { list-style: none; padding: 0; margin: 0; }
.block-more-stories-v1 .ms-list li + li { border-top: 1px solid var(--color-grey-20, #DCDCDC); }
.dark .block-more-stories-v1 .ms-list li + li { border-color: rgba(255,255,255,0.1); }

.block-more-stories-v1 .ms-card {
  display: flex; flex-direction: row; align-items: flex-start; gap: 24px;
  padding: 24px 0; text-decoration: none; color: inherit; cursor: pointer;
}

.block-more-stories-v1 .ms-card-img-wrap {
  flex-shrink: 0; width: 280px; aspect-ratio: 16 / 9;
  border-radius: 16px; overflow: hidden;
  background: transparent;
}
.dark .block-more-stories-v1 .ms-card-img-wrap { background: rgba(255,255,255,0.06); }
.block-more-stories-v1 .ms-card-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.45s ease;
}
.block-more-stories-v1 .ms-card:hover .ms-card-img { transform: scale(1.05); }

.block-more-stories-v1 .ms-card-body {
  flex: 1; align-self: stretch; display: flex; flex-direction: column; gap: 6px; min-width: 0;
}

.block-more-stories-v1 .ms-card-category {
  display: none; align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.08em; line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px; padding: 4px 10px;
}
.block-more-stories-v1 .ms-card-category:not(:empty) { display: inline-block; }
.dark .block-more-stories-v1 .ms-card-category {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}

.block-more-stories-v1 .ms-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700; line-height: 1.3;
  color: var(--color-black, #333333); margin: 0;
  transition: color 0.2s ease;
}
.dark .block-more-stories-v1 .ms-card-title { color: var(--color-text-dark, #f0f4f2); }
.block-more-stories-v1 .ms-card:hover .ms-card-title { color: var(--color-forest-green, #004432); }
.dark .block-more-stories-v1 .ms-card:hover .ms-card-title { color: var(--color-accent-dark, #47B27A); }

.block-more-stories-v1 .ms-card-seo {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  margin: 0;
}
.dark .block-more-stories-v1 .ms-card-seo { color: var(--color-text-secondary-dark, rgba(255,255,255,0.62)); }

.block-more-stories-v1 .ms-card-date {
  display: block; margin-top: auto;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px; line-height: 1.4; color: var(--color-grey-80, #4D4D4D);
}
.dark .block-more-stories-v1 .ms-card-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-more-stories-v1 .ms-footer { margin-top: 48px; text-align: center; }

.block-more-stories-v1 .ms-view-all {
  display: inline-flex; align-items: center; gap: 10px;
  padding: .85rem 1.5rem; border-radius: 4rem;
  background-color: var(--color-white, #FFFFFF);
  border: 1px solid var(--color-moss-green, #13735F);
  color: var(--color-moss-green, #13735F);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1.125rem; font-weight: 600; line-height: 1em;
  text-decoration: none; cursor: pointer;
  transition: .16s ease-in-out all;
}
.block-more-stories-v1 .ms-view-all:hover,
.block-more-stories-v1 .ms-view-all:focus-visible {
  background-color: var(--color-moss-green, #13735F);
  border-color: var(--color-moss-green, #13735F);
  color: var(--color-white, #FFFFFF);
}
.block-more-stories-v1 .ms-view-all:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735F); outline-offset: 4px;
}
.dark .block-more-stories-v1 .ms-view-all {
  background-color: transparent;
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-accent-dark, #47B27A);
}
.dark .block-more-stories-v1 .ms-view-all:hover,
.dark .block-more-stories-v1 .ms-view-all:focus-visible {
  background-color: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}


.block-more-stories-v1.ms-animate .ms-title { opacity: 0; transition: opacity 0.7s ease; }
.block-more-stories-v1.ms-animate .ms-title.ms-visible { opacity: 1; }
.block-more-stories-v1.ms-animate .ms-card {
  opacity: 0; transform: translateX(-8px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.block-more-stories-v1.ms-animate .ms-card.ms-visible { opacity: 1; transform: translateX(0); }
@media (prefers-reduced-motion: reduce) {
  .block-more-stories-v1.ms-animate .ms-title,
  .block-more-stories-v1.ms-animate .ms-card { opacity: 1 !important; transform: none !important; transition: none !important; }
}

@media (max-width: 767px) {
  .block-more-stories-v1 .ms-inner { padding: 48px 24px; }
  .block-more-stories-v1 .ms-card { flex-direction: column; gap: 12px; }
  .block-more-stories-v1 .ms-card-img-wrap { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 16px; }
}

@media (min-width: 768px) {
  .block-more-stories-v1 .ms-title { font-size: 40px; }
}

@media (min-width: 1024px) {
  .block-more-stories-v1 .ms-title {
    margin-bottom: 40px;
    font-size: 46px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-more-stories-v1 .ms-card-img-wrap { width: 280px; }
}


/* multiple-card-donation-cta-v1 */
.block-multiple-card-donation-cta-v1[data-background-color='#13735F'] {
  --multiple-card-donation-cta-v1-solid-bg:
    var(--color-moss-green, #13735f);
}

/* newsletter-subscribe-v1 */
/* Newsletter Subscribe (block-newsletter-subscribe-v1) */

.block-newsletter-subscribe-v1 {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-red, #e52322);
  --newsletter-subscribe-v1-surface: rgba(0, 0, 0, 0.08);
  --newsletter-subscribe-v1-surface-hover: rgba(0, 0, 0, 0.14);
  --newsletter-subscribe-v1-text: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-muted: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-soft: rgba(255, 255, 255, 0.18);
  --newsletter-subscribe-v1-line: rgba(255, 255, 255, 0.44);
  --newsletter-subscribe-v1-link: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-accent: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-error: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-error-ring: rgba(255, 255, 255, 0.18);
  --newsletter-subscribe-v1-input-border: rgba(255, 255, 255, 0.44);
  --newsletter-subscribe-v1-input-text: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-input-placeholder: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-button-border: rgba(255, 255, 255, 0.5);
  --newsletter-subscribe-v1-button-border-hover: var(
    --color-white,
    #ffffff
  );
  position: relative;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  max-width: 100%;
  background-color: var(--newsletter-subscribe-v1-bg);
  color: var(--newsletter-subscribe-v1-text);
}

/* Illustrated presets: dark backgrounds */

.block-newsletter-subscribe-v1,
.block-newsletter-subscribe-v1[data-preset="forest-red"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-red, #e52322);
}

.block-newsletter-subscribe-v1[data-preset="forest-moss"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-moss-green, #13735f);
}

.block-newsletter-subscribe-v1[data-preset="forest-darkred"] {
  --newsletter-subscribe-v1-bg: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-illu: var(--color-dark-red, #861135);
}

.block-newsletter-subscribe-v1[data-preset="red-forest"] {
  --newsletter-subscribe-v1-bg: var(--color-red, #e52322);
  --newsletter-subscribe-v1-illu: var(--color-forest-green, #004432);
}

.block-newsletter-subscribe-v1[data-preset="red-moss"] {
  --newsletter-subscribe-v1-bg: var(--color-red, #e52322);
  --newsletter-subscribe-v1-illu: var(--color-moss-green, #13735f);
}

.block-newsletter-subscribe-v1[data-preset="red-darkred"] {
  --newsletter-subscribe-v1-bg: var(--color-red, #e52322);
  --newsletter-subscribe-v1-illu: var(--color-dark-red, #861135);
}

.block-newsletter-subscribe-v1[data-preset="moss-forest"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
  --newsletter-subscribe-v1-illu: var(--color-forest-green, #004432);
}

.block-newsletter-subscribe-v1[data-preset="moss-red"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
  --newsletter-subscribe-v1-illu: var(--color-red, #e52322);
}

.block-newsletter-subscribe-v1[data-preset="moss-darkred"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
  --newsletter-subscribe-v1-illu: var(--color-dark-red, #861135);
}

.block-newsletter-subscribe-v1[data-preset="darkred-forest"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-illu: var(--color-forest-green, #004432);
}

.block-newsletter-subscribe-v1[data-preset="darkred-red"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-illu: var(--color-red, #e52322);
}

.block-newsletter-subscribe-v1[data-preset="darkred-moss"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-illu: var(--color-moss-green, #13735f);
}

/* Illustrated presets: light backgrounds */

.block-newsletter-subscribe-v1[data-preset="mint-yellow"] {
  --newsletter-subscribe-v1-bg: var(--color-mint-green, #47b27a);
  --newsletter-subscribe-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-newsletter-subscribe-v1[data-preset="mint-light"] {
  --newsletter-subscribe-v1-bg: var(--color-mint-green, #47b27a);
  --newsletter-subscribe-v1-illu: var(--color-light-green, #8acbc1);
}

.block-newsletter-subscribe-v1[data-preset="mint-corn"] {
  --newsletter-subscribe-v1-bg: var(--color-mint-green, #47b27a);
  --newsletter-subscribe-v1-illu: var(--color-corn-green, #94c24a);
}

.block-newsletter-subscribe-v1[data-preset="yellow-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-yellow-green, #e6ce00);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="yellow-light"] {
  --newsletter-subscribe-v1-bg: var(--color-yellow-green, #e6ce00);
  --newsletter-subscribe-v1-illu: var(--color-light-green, #8acbc1);
}

.block-newsletter-subscribe-v1[data-preset="yellow-corn"] {
  --newsletter-subscribe-v1-bg: var(--color-yellow-green, #e6ce00);
  --newsletter-subscribe-v1-illu: var(--color-corn-green, #94c24a);
}

.block-newsletter-subscribe-v1[data-preset="light-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-light-green, #8acbc1);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="light-yellow"] {
  --newsletter-subscribe-v1-bg: var(--color-light-green, #8acbc1);
  --newsletter-subscribe-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-newsletter-subscribe-v1[data-preset="light-corn"] {
  --newsletter-subscribe-v1-bg: var(--color-light-green, #8acbc1);
  --newsletter-subscribe-v1-illu: var(--color-corn-green, #94c24a);
}

.block-newsletter-subscribe-v1[data-preset="corn-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-corn-green, #94c24a);
  --newsletter-subscribe-v1-illu: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="corn-yellow"] {
  --newsletter-subscribe-v1-bg: var(--color-corn-green, #94c24a);
  --newsletter-subscribe-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-newsletter-subscribe-v1[data-preset="corn-light"] {
  --newsletter-subscribe-v1-bg: var(--color-corn-green, #94c24a);
  --newsletter-subscribe-v1-illu: var(--color-light-green, #8acbc1);
}

/* Dark foreground for light Illustrated presets */

.block-newsletter-subscribe-v1[data-preset="mint-yellow"],
.block-newsletter-subscribe-v1[data-preset="mint-light"],
.block-newsletter-subscribe-v1[data-preset="mint-corn"],
.block-newsletter-subscribe-v1[data-preset="yellow-mint"],
.block-newsletter-subscribe-v1[data-preset="yellow-light"],
.block-newsletter-subscribe-v1[data-preset="yellow-corn"],
.block-newsletter-subscribe-v1[data-preset="light-mint"],
.block-newsletter-subscribe-v1[data-preset="light-yellow"],
.block-newsletter-subscribe-v1[data-preset="light-corn"],
.block-newsletter-subscribe-v1[data-preset="corn-mint"],
.block-newsletter-subscribe-v1[data-preset="corn-yellow"],
.block-newsletter-subscribe-v1[data-preset="corn-light"] {
  --newsletter-subscribe-v1-surface: rgba(255, 255, 255, 0.16);
  --newsletter-subscribe-v1-surface-hover: rgba(255, 255, 255, 0.24);
  --newsletter-subscribe-v1-text: var(--color-black, #333333);
  --newsletter-subscribe-v1-muted: var(--color-black, #333333);
  --newsletter-subscribe-v1-soft: rgba(51, 51, 51, 0.18);
  --newsletter-subscribe-v1-line: rgba(51, 51, 51, 0.44);
  --newsletter-subscribe-v1-link: var(--color-black, #333333);
  --newsletter-subscribe-v1-accent: var(--color-black, #333333);
  --newsletter-subscribe-v1-error: var(--color-black, #333333);
  --newsletter-subscribe-v1-error-ring: rgba(51, 51, 51, 0.16);
  --newsletter-subscribe-v1-input-border: rgba(51, 51, 51, 0.44);
  --newsletter-subscribe-v1-input-text: var(--color-black, #333333);
  --newsletter-subscribe-v1-input-placeholder: var(--color-black, #333333);
  --newsletter-subscribe-v1-button-border: rgba(51, 51, 51, 0.5);
  --newsletter-subscribe-v1-button-border-hover: var(
    --color-black,
    #333333
  );
}

/* Solid presets */

.block-newsletter-subscribe-v1[data-preset="solid-white"] {
  --newsletter-subscribe-v1-bg: var(--color-white, #ffffff);
  --newsletter-subscribe-v1-surface: rgba(0, 68, 50, 0.06);
  --newsletter-subscribe-v1-surface-hover: rgba(0, 68, 50, 0.1);
  --newsletter-subscribe-v1-text: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-muted: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-soft: rgba(0, 68, 50, 0.14);
  --newsletter-subscribe-v1-line: rgba(0, 68, 50, 0.44);
  --newsletter-subscribe-v1-link: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-accent: var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-error: var(--color-dark-red, #861135);
  --newsletter-subscribe-v1-error-ring: rgba(134, 17, 53, 0.18);
  --newsletter-subscribe-v1-input-border: rgba(0, 68, 50, 0.44);
  --newsletter-subscribe-v1-input-text:
    var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-input-placeholder:
    var(--color-forest-green, #004432);
  --newsletter-subscribe-v1-button-border: rgba(0, 68, 50, 0.5);
  --newsletter-subscribe-v1-button-border-hover:
    var(--color-forest-green, #004432);
}

.block-newsletter-subscribe-v1[data-preset="solid-mossgreen"] {
  --newsletter-subscribe-v1-bg: var(--color-moss-green, #13735f);
}

.block-newsletter-subscribe-v1[data-preset="solid-red"] {
  --newsletter-subscribe-v1-bg: var(--color-red, #e52322);
}

.block-newsletter-subscribe-v1[data-preset="solid-darkred"] {
  --newsletter-subscribe-v1-bg: var(--color-dark-red, #861135);
}

.block-newsletter-subscribe-v1[data-preset="solid-mint"] {
  --newsletter-subscribe-v1-bg: var(--color-mint-green, #47b27a);
}

.block-newsletter-subscribe-v1[data-preset="solid-lightgreen"] {
  --newsletter-subscribe-v1-bg: var(--color-light-green, #8acbc1);
}

.block-newsletter-subscribe-v1[data-preset="solid-yellow"] {
  --newsletter-subscribe-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-newsletter-subscribe-v1[data-preset="solid-corngreen"] {
  --newsletter-subscribe-v1-bg: var(--color-corn-green, #94c24a);
}

.block-newsletter-subscribe-v1[data-preset="solid-mint"],
.block-newsletter-subscribe-v1[data-preset="solid-lightgreen"],
.block-newsletter-subscribe-v1[data-preset="solid-yellow"],
.block-newsletter-subscribe-v1[data-preset="solid-corngreen"] {
  --newsletter-subscribe-v1-surface: rgba(255, 255, 255, 0.16);
  --newsletter-subscribe-v1-surface-hover: rgba(255, 255, 255, 0.24);
  --newsletter-subscribe-v1-text: var(--color-black, #333333);
  --newsletter-subscribe-v1-muted: var(--color-black, #333333);
  --newsletter-subscribe-v1-soft: rgba(51, 51, 51, 0.18);
  --newsletter-subscribe-v1-line: rgba(51, 51, 51, 0.44);
  --newsletter-subscribe-v1-link: var(--color-black, #333333);
  --newsletter-subscribe-v1-accent: var(--color-black, #333333);
  --newsletter-subscribe-v1-error: var(--color-black, #333333);
  --newsletter-subscribe-v1-error-ring: rgba(51, 51, 51, 0.16);
  --newsletter-subscribe-v1-input-border: rgba(51, 51, 51, 0.44);
  --newsletter-subscribe-v1-input-text: var(--color-black, #333333);
  --newsletter-subscribe-v1-input-placeholder: var(--color-black, #333333);
  --newsletter-subscribe-v1-button-border: rgba(51, 51, 51, 0.5);
  --newsletter-subscribe-v1-button-border-hover:
    var(--color-black, #333333);
}

.block-newsletter-subscribe-v1[data-preset^="solid-"]
  .newsletter-subscribe-v1__bg {
  display: none;
}

/* Decorative illustration */

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  clip-path: inset(0);
  color: var(--newsletter-subscribe-v1-illu);
  pointer-events: none;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__bg-svg {
  position: absolute;
  top: -310%;
  left: 50%;
  width: auto;
  height: 653%;
  opacity: 1;
  fill: currentColor;
  transform: translateX(-50%) rotate(57.787deg);
}

/* Layout */

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 36px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__copy {
  position: relative;
  max-width: 800px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__headline {
  margin: 0;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 34px;
  font-weight: 700;
  line-height: 1.12;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description {
  max-width: 720px;
  margin-top: 22px;
  color: var(--newsletter-subscribe-v1-muted);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message p {
  margin: 0;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description p + p,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent p + p,
.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__success-message
  p + p {
  margin-top: 12px;
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__description
  strong,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description b,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent strong,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent b,
.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__success-message
  strong,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message b {
  color: inherit;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__panel {
  position: relative;
  padding-top: 30px;
  border-top: 1px solid var(--newsletter-subscribe-v1-line);
}

/* Form */

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__hp,
.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__error-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__field {
  min-width: 0;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__label {
  display: block;
  margin-bottom: 8px;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input {
  display: block;
  width: 100%;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--newsletter-subscribe-v1-input-border);
  border-radius: 8px;
  box-sizing: border-box;
  background: var(--newsletter-subscribe-v1-surface);
  color: var(--newsletter-subscribe-v1-input-text);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 16px;
  transition:
    border-color 0.15s,
    background 0.15s;
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__input::placeholder {
  color: var(--newsletter-subscribe-v1-input-placeholder);
  opacity: 1;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input:focus {
  outline: none;
  border-color: var(--newsletter-subscribe-v1-accent);
  background: var(--newsletter-subscribe-v1-surface-hover);
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__input[aria-invalid="true"],
.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__input.newsletter-subscribe-v1__input--invalid {
  border-color: var(--newsletter-subscribe-v1-error);
  box-shadow: 0 0 0 4px var(--newsletter-subscribe-v1-error-ring);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent {
  color: var(--newsletter-subscribe-v1-muted);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__consent a,
.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__success-message
  a {
  color: var(--newsletter-subscribe-v1-link);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__consent
  a:focus-visible,
.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__success-message
  a:focus-visible {
  outline: 2px solid var(--newsletter-subscribe-v1-accent);
  outline-offset: 4px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__error {
  min-height: 20px;
  margin: -8px 0 -4px;
  color: var(--newsletter-subscribe-v1-error);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit {
  width: 100%;
  height: 40px;
  padding: 0 clamp(12px, 1.5vw, 18px);
  border: 1px solid var(--newsletter-subscribe-v1-button-border);
  border-radius: 8px;
  background: transparent;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(13px, 0.9vw, 14px);
  font-weight: 700;
  letter-spacing: 0.01em;
  white-space: nowrap;
  cursor: pointer;
  transition:
    border-color 0.15s,
    background 0.15s,
    color 0.15s;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit p {
  margin: 0;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit:hover {
  border-color: var(--newsletter-subscribe-v1-button-border-hover);
  background: var(--newsletter-subscribe-v1-surface-hover);
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__submit:focus-visible {
  outline: 2px solid var(--newsletter-subscribe-v1-accent);
  outline-offset: 2px;
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__submit[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.block-newsletter-subscribe-v1
  .newsletter-subscribe-v1__submit.is-loading
  .newsletter-subscribe-v1__submit-label {
  opacity: 0.72;
}

/* Success state */

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  align-items: start;
  padding-top: 4px;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success[hidden] {
  display: none;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-icon {
  display: flex;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--newsletter-subscribe-v1-line);
  border-radius: 8px;
  background: var(--newsletter-subscribe-v1-surface);
  color: var(--newsletter-subscribe-v1-text);
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-title {
  margin: 0;
  color: var(--newsletter-subscribe-v1-text);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
}

.block-newsletter-subscribe-v1 .newsletter-subscribe-v1__success-message {
  margin-top: 8px;
  color: var(--newsletter-subscribe-v1-muted);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.6;
}

/* Responsive layout */

@media (min-width: 768px) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
    padding: 72px 48px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__headline {
    font-size: 42px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__description {
    font-size: 18px;
  }
}

@media (min-width: 1024px) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
    grid-template-columns: minmax(0, 1fr) 1px minmax(300px, 420px);
    column-gap: 28px;
    row-gap: 56px;
    align-items: center;
    padding: 88px 80px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner::before {
    content: "";
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    width: 1px;
    background: var(--newsletter-subscribe-v1-line);
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__copy {
    grid-column: 1;
    grid-row: 1;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__headline {
    font-size: 50px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__panel {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    width: 100%;
    max-width: 420px;
    padding-top: 0;
    padding-left: 0;
    border-top: 0;
    border-left: 0;
  }
}

@media (min-width: 1280px) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__inner {
    column-gap: 36px;
    row-gap: 72px;
  }

  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__panel {
    max-width: 400px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__input,
  .block-newsletter-subscribe-v1 .newsletter-subscribe-v1__submit {
    transition: none;
  }
}

/* page-card-list-v1 */
/* Page Card List (block-page-card-list-v1) */

.block-page-card-list-v1 {
  --page-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
  --page-card-list-v1-card-bg: var(--color-white, #ffffff);
  background: var(--page-card-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-page-card-list-v1[data-background-color="#FFFFFF"] {
  --page-card-list-v1-bg: var(--color-white, #ffffff);
}

.block-page-card-list-v1[data-background-color="#F7F7F7"] {
  --page-card-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-page-card-list-v1 {
  --page-card-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --page-card-list-v1-card-bg: var(--color-surface-dark, #1a2920);
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-card-list-v1 .page-card-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-page-card-list-v1 .page-card-list-v1__header {
  margin-bottom: 24px;
}

.block-page-card-list-v1 .page-card-list-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-page-card-list-v1 .page-card-list-v1__headline p {
  margin: 0;
}

.dark .block-page-card-list-v1 .page-card-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-card-list-v1 .page-card-list-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-page-card-list-v1 .page-card-list-v1__item {
  min-width: 0;
}

.block-page-card-list-v1 .page-card-list-v1__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: 16px;
  background: var(--page-card-list-v1-card-bg);
  box-shadow: 0 1px 2px rgba(0, 68, 50, 0.08);
}

.dark .block-page-card-list-v1 .page-card-list-v1__card {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.24);
}

.block-page-card-list-v1 .page-card-list-v1__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.block-page-card-list-v1 .page-card-list-v1__title-link:focus-visible,
.block-page-card-list-v1 .page-card-list-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-card-list-v1 .page-card-list-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: transparent;
}

.dark .block-page-card-list-v1 .page-card-list-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-page-card-list-v1 .page-card-list-v1__image,
.block-page-card-list-v1 .page-card-list-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-card-list-v1 .page-card-list-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-page-card-list-v1 .page-card-list-v1__media-link:hover .page-card-list-v1__image,
.block-page-card-list-v1 .page-card-list-v1__media-link:focus-visible .page-card-list-v1__image {
  transform: scale(1.04);
}

.block-page-card-list-v1 .page-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-page-card-list-v1 .page-card-list-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-page-card-list-v1 .page-card-list-v1__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
}

.block-page-card-list-v1 .page-card-list-v1__title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.block-page-card-list-v1 .page-card-list-v1__title p,
.block-page-card-list-v1 .page-card-list-v1__description p,
.block-page-card-list-v1 .page-card-list-v1__cta p {
  margin: 0;
}

.block-page-card-list-v1 .page-card-list-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-card-list-v1 .page-card-list-v1__title-link:hover,
.block-page-card-list-v1 .page-card-list-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-page-card-list-v1 .page-card-list-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-card-list-v1 .page-card-list-v1__title-link:hover,
.dark .block-page-card-list-v1 .page-card-list-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-card-list-v1 .page-card-list-v1__description {
  display: -webkit-box;
  margin-top: 12px;
  overflow: hidden;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
}

.dark .block-page-card-list-v1 .page-card-list-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.block-page-card-list-v1 .page-card-list-v1__footer {
  padding: 0 24px 24px;
}

.block-page-card-list-v1 .page-card-list-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-card-list-v1 .page-card-list-v1__cta:hover,
.block-page-card-list-v1 .page-card-list-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-page-card-list-v1 .page-card-list-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-page-card-list-v1 .page-card-list-v1__cta:hover .page-card-list-v1__cta-icon,
.block-page-card-list-v1 .page-card-list-v1__cta:focus-visible .page-card-list-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-page-card-list-v1 .page-card-list-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-card-list-v1 .page-card-list-v1__cta:hover,
.dark .block-page-card-list-v1 .page-card-list-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

@media (min-width: 768px) {
  .block-page-card-list-v1 .page-card-list-v1__inner {
    padding: 64px 48px;
  }

  .block-page-card-list-v1 .page-card-list-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
  }

  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-page-card-list-v1 .page-card-list-v1__headline {
    font-size: 40px;
  }
}

@media (min-width: 1024px) {
  .block-page-card-list-v1 .page-card-list-v1__inner {
    padding: 64px 80px;
  }

  .block-page-card-list-v1 .page-card-list-v1__header {
    margin-bottom: 40px;
  }

  .block-page-card-list-v1 .page-card-list-v1__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 28px;
  }

  .block-page-card-list-v1 .page-card-list-v1__item {
    grid-column: span 2;
  }

  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(1) {
    grid-column: 1 / -1;
  }

  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(2),
  .block-page-card-list-v1 .page-card-list-v1__item:first-child:nth-last-child(2) ~ .page-card-list-v1__item {
    grid-column: span 3;
  }

  .block-page-card-list-v1 .page-card-list-v1__headline {
    font-size: 46px;
  }

  .block-page-card-list-v1 .page-card-list-v1__title {
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-page-card-list-v1 .page-card-list-v1__image,
  .block-page-card-list-v1 .page-card-list-v1__title-link,
  .block-page-card-list-v1 .page-card-list-v1__cta,
  .block-page-card-list-v1 .page-card-list-v1__cta-icon {
    transition: none !important;
  }

  .block-page-card-list-v1 .page-card-list-v1__media-link:hover .page-card-list-v1__image,
  .block-page-card-list-v1 .page-card-list-v1__media-link:focus-visible .page-card-list-v1__image,
  .block-page-card-list-v1 .page-card-list-v1__cta:hover .page-card-list-v1__cta-icon,
  .block-page-card-list-v1 .page-card-list-v1__cta:focus-visible .page-card-list-v1__cta-icon {
    transform: none !important;
  }
}


/* page-carousel-v1 */
/* Page Carousel (block-page-carousel-v1) */

.block-page-carousel-v1 {
  --page-carousel-v1-bg: var(--color-white, #ffffff);
  --page-carousel-v1-slide-width: calc(100vw - 48px);
  --page-carousel-v1-track-gap: 24px;
  --page-carousel-v1-track-gutter: 24px;
  background: var(--page-carousel-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
  padding: 64px 0;
}

.block-page-carousel-v1[data-background-color="#FFFFFF"] {
  --page-carousel-v1-bg: var(--color-white, #ffffff);
}

.block-page-carousel-v1[data-background-color="#F7F7F7"] {
  --page-carousel-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-page-carousel-v1 {
  --page-carousel-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-carousel-v1 .page-carousel-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
}

.block-page-carousel-v1 .page-carousel-v1__header {
  display: grid;
  gap: 24px;
}

.block-page-carousel-v1 .page-carousel-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-page-carousel-v1 .page-carousel-v1__headline p,
.block-page-carousel-v1 .page-carousel-v1__intro p,
.block-page-carousel-v1 .page-carousel-v1__title p,
.block-page-carousel-v1 .page-carousel-v1__description p,
.block-page-carousel-v1 .page-carousel-v1__cta p {
  margin: 0;
}

.dark .block-page-carousel-v1 .page-carousel-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-carousel-v1 .page-carousel-v1__intro {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.block-page-carousel-v1 .page-carousel-v1__intro p + p {
  margin-top: 12px;
}

.dark .block-page-carousel-v1 .page-carousel-v1__intro {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-page-carousel-v1 .page-carousel-v1__carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-page-carousel-v1 .page-carousel-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--page-carousel-v1-track-gap);
  margin: 0;
  padding: 16px 0 0 var(--page-carousel-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-page-carousel-v1 .page-carousel-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--page-carousel-v1-track-gutter) - var(--page-carousel-v1-track-gap)));
}

.block-page-carousel-v1 .page-carousel-v1__track::-webkit-scrollbar {
  display: none;
}

.block-page-carousel-v1 .page-carousel-v1__slide {
  flex: 0 0 var(--page-carousel-v1-slide-width);
  min-width: 0;
  scroll-snap-align: center;
  transform-origin: center center;
}

.block-page-carousel-v1.pc-js-ready .page-carousel-v1__slide {
  will-change: transform;
}

.block-page-carousel-v1 .page-carousel-v1__media-link,
.block-page-carousel-v1 .page-carousel-v1__media {
  display: block;
  color: inherit;
  text-decoration: none;
  border-radius: 8px;
}

.block-page-carousel-v1 .page-carousel-v1__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: transparent;
}

.dark .block-page-carousel-v1 .page-carousel-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-page-carousel-v1 .page-carousel-v1__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  -webkit-backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.block-page-carousel-v1.pc-js-ready .page-carousel-v1__slide:not(.pc-active) .page-carousel-v1__media::after {
  opacity: 1;
}

.block-page-carousel-v1 .page-carousel-v1__image,
.block-page-carousel-v1 .page-carousel-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-carousel-v1 .page-carousel-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-page-carousel-v1 .page-carousel-v1__media-link:hover .page-carousel-v1__image,
.block-page-carousel-v1 .page-carousel-v1__media-link:focus-visible .page-carousel-v1__image {
  transform: scale(1.025);
}

.block-page-carousel-v1 .page-carousel-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-page-carousel-v1 .page-carousel-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-page-carousel-v1 .page-carousel-v1__content {
  max-width: 760px;
  margin-top: 24px;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.block-page-carousel-v1.pc-js-ready .page-carousel-v1__slide:not(.pc-active) .page-carousel-v1__content {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
}

.block-page-carousel-v1 .page-carousel-v1__title {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.22;
  color: var(--color-forest-green, #004432);
}

.dark .block-page-carousel-v1 .page-carousel-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-carousel-v1 .page-carousel-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-carousel-v1 .page-carousel-v1__title-link:hover,
.block-page-carousel-v1 .page-carousel-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-page-carousel-v1 .page-carousel-v1__title-link:hover,
.dark .block-page-carousel-v1 .page-carousel-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-carousel-v1 .page-carousel-v1__description {
  display: -webkit-box;
  max-width: 72ch;
  margin-top: 14px;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.dark .block-page-carousel-v1 .page-carousel-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-page-carousel-v1 .page-carousel-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-carousel-v1 .page-carousel-v1__cta:hover,
.block-page-carousel-v1 .page-carousel-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.dark .block-page-carousel-v1 .page-carousel-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-carousel-v1 .page-carousel-v1__cta:hover,
.dark .block-page-carousel-v1 .page-carousel-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-carousel-v1 .page-carousel-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-page-carousel-v1 .page-carousel-v1__cta:hover .page-carousel-v1__cta-icon,
.block-page-carousel-v1 .page-carousel-v1__cta:focus-visible .page-carousel-v1__cta-icon {
  transform: translateX(3px);
}

.block-page-carousel-v1 .page-carousel-v1__title-link:focus-visible,
.block-page-carousel-v1 .page-carousel-v1__cta:focus-visible,
.block-page-carousel-v1 .page-carousel-v1__media-link:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-carousel-v1 .page-carousel-v1__nav {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: var(--page-carousel-v1-slide-width);
  margin: 20px auto 0;
}

.block-page-carousel-v1 .page-carousel-v1__dots {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
  margin-right: 8px;
}

.block-page-carousel-v1 .page-carousel-v1__dot {
  position: relative;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--color-grey-40, #ABABAB);
}

.block-page-carousel-v1 .page-carousel-v1__dot::before {
  content: '';
  position: absolute;
  inset: -4px;
  border: 1.5px solid var(--color-forest-green, #004432);
  border-radius: inherit;
  opacity: 0;
  transform: scale(0.6);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), opacity 400ms ease;
}

.block-page-carousel-v1 .page-carousel-v1__dot.is-active::before {
  opacity: 1;
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1), ease;
}

.block-page-carousel-v1 .page-carousel-v1__dot::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-forest-green, #004432);
  transform: scale(0);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.block-page-carousel-v1 .page-carousel-v1__dot.is-active::after {
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
}

@media (prefers-reduced-motion: reduce) {
  .block-page-carousel-v1 .page-carousel-v1__dot::before,
  .block-page-carousel-v1 .page-carousel-v1__dot::after { transition: none; }
}

.block-page-carousel-v1 .page-carousel-v1__status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.block-page-carousel-v1 .page-carousel-v1__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 68, 50, 1);
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-page-carousel-v1 .page-carousel-v1__btn:hover:not(:disabled) {
 background: rgba(19, 115, 95, 1);
  color: rgba(255, 255, 255, 1);
}

.block-page-carousel-v1 .page-carousel-v1__btn:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-page-carousel-v1 .page-carousel-v1__btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-page-carousel-v1 .page-carousel-v1__btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 1);
}

.dark .block-page-carousel-v1 .page-carousel-v1__btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 1);
  color: rgba(255, 255, 255, 1);
}

.dark .block-page-carousel-v1 .page-carousel-v1__btn:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-page-carousel-v1 {
    --page-carousel-v1-slide-width: calc(100vw - 96px);
    --page-carousel-v1-track-gap: 32px;
    --page-carousel-v1-track-gutter: 48px;
  }

  .block-page-carousel-v1 .page-carousel-v1__inner {
    padding: 0 48px 32px;
  }

  .block-page-carousel-v1 .page-carousel-v1__content {
    margin-top: 28px;
  }

}

@media (min-width: 1024px) {
  .block-page-carousel-v1 {
    --page-carousel-v1-slide-width: min(960px, calc(100vw - 160px));
    --page-carousel-v1-track-gutter: max(80px, calc(50vw - 480px));
  }

  .block-page-carousel-v1 .page-carousel-v1__inner {
    padding: 0 80px 32px;
  }

  .block-page-carousel-v1 .page-carousel-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-page-carousel-v1 .page-carousel-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-page-carousel-v1 .page-carousel-v1__intro {
    grid-column: 7 / span 6;
  }

}

@media (prefers-reduced-motion: reduce) {
  .block-page-carousel-v1 .page-carousel-v1__media::after,
  .block-page-carousel-v1 .page-carousel-v1__image,
  .block-page-carousel-v1 .page-carousel-v1__content,
  .block-page-carousel-v1 .page-carousel-v1__cta,
  .block-page-carousel-v1 .page-carousel-v1__cta-icon,
  .block-page-carousel-v1 .page-carousel-v1__title-link,
  .block-page-carousel-v1 .page-carousel-v1__btn {
    transition: none !important;
  }

  .block-page-carousel-v1 .page-carousel-v1__media-link:hover .page-carousel-v1__image,
  .block-page-carousel-v1 .page-carousel-v1__media-link:focus-visible .page-carousel-v1__image,
  .block-page-carousel-v1 .page-carousel-v1__cta:hover .page-carousel-v1__cta-icon,
  .block-page-carousel-v1 .page-carousel-v1__cta:focus-visible .page-carousel-v1__cta-icon {
    transform: none !important;
  }
}

/* page-header-v1 */
/* ── Page Header (block-page-header-v1) ───────────────────────── */

.block-page-header-v1 {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100%;
  min-height: calc(
    100svh
    - var(--nav-height, 60px)
    - var(--wi-info-banner-offset, 0px)
  );
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}

.block-page-header-v1 .page-header-v1__media {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}

.block-page-header-v1 .page-header-v1__picture,
.block-page-header-v1 .page-header-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-header-v1 .page-header-v1__picture {
  overflow: hidden;
}

.block-page-header-v1 .page-header-v1__picture--mobile {
  display: none;
}

.block-page-header-v1 .page-header-v1__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.block-page-header-v1 .page-header-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), transparent 55%),
    var(--color-grey-20, #DCDCDC);
}

.block-page-header-v1 .page-header-v1__text-panel {
  width: 100%;
  background: var(--page-header-v1-panel-bg, var(--color-white, #FFFFFF));
  color: var(--color-forest-green, #004432);
}

.block-page-header-v1[data-background-color="#FFFFFF"] .page-header-v1__text-panel {
  --page-header-v1-panel-bg: var(--color-white, #FFFFFF);
}

.block-page-header-v1[data-background-color="#F7F7F7"] .page-header-v1__text-panel {
  --page-header-v1-panel-bg: var(--color-light-grey, #F7F7F7);
}

.block-page-header-v1 .page-header-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 32px 24px;
}

.block-page-header-v1 .page-header-v1__breadcrumb {
  width: 100%;
  margin: 0 0 32px;
  color: var(--color-forest-green, #004432);
}

.block-page-header-v1 .page-header-v1__breadcrumb-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.block-page-header-v1 .page-header-v1__breadcrumb-item {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex-shrink: 1;
}

.block-page-header-v1 .page-header-v1__breadcrumb-home {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--color-forest-green, #004432);
  text-decoration: none;
  transition: color 0.15s ease;
}

.block-page-header-v1 .page-header-v1__breadcrumb-home svg {
  display: block;
  width: auto;
  height: 14px;
}

.block-page-header-v1 .page-header-v1__breadcrumb-separator {
  display: block;
  flex-shrink: 0;
  color: var(--color-grey-60, #737373);
}

.block-page-header-v1 .page-header-v1__breadcrumb-link,
.block-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  max-width: min(320px, 60vw);
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.block-page-header-v1 .page-header-v1__breadcrumb-link {
  position: relative;
  color: var(--color-forest-green, #004432);
  text-decoration: none;
  transition: color 0.15s ease;
}

.block-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  color: var(--color-grey-80, #4D4D4D);
}

.block-page-header-v1 .page-header-v1__breadcrumb-home:hover,
.block-page-header-v1 .page-header-v1__breadcrumb-link:hover {
  color: var(--color-moss-green, #13735F);
}

.block-page-header-v1 .page-header-v1__breadcrumb-home:focus-visible,
.block-page-header-v1 .page-header-v1__breadcrumb-link:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 3px;
  border-radius: 2px;
}

.block-page-header-v1 .page-header-v1__headline {
  width: 100%;
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(36px, calc(3vw + 20px), 60px);
  font-weight: 700;
  line-height: 1.05;
  color: var(--color-forest-green, #004432);
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
}

.block-page-header-v1 .page-header-v1__headline > *,
.block-page-header-v1 .page-header-v1__subheadline > * {
  margin: 0;
  font: inherit;
  color: inherit;
  line-height: inherit;
}

.block-page-header-v1 .page-header-v1__headline > * + *,
.block-page-header-v1 .page-header-v1__subheadline > * + * {
  margin-top: 8px;
}

.block-page-header-v1 .page-header-v1__subheadline {
  width: 100%;
  margin-top: 16px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-forest-green, #004432);
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
}

.dark .block-page-header-v1 {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-page-header-v1 .page-header-v1__media,
.dark .block-page-header-v1 .page-header-v1__placeholder {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-page-header-v1[data-background-color="#FFFFFF"] .page-header-v1__text-panel {
  background: var(--color-bg-dark, #0f1a14);
}

.dark .block-page-header-v1[data-background-color="#F7F7F7"] .page-header-v1__text-panel {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-page-header-v1 .page-header-v1__headline,
.dark .block-page-header-v1 .page-header-v1__subheadline {
  color: var(--color-accent-dark, #47B27A);
}

.dark .block-page-header-v1 .page-header-v1__breadcrumb-home,
.dark .block-page-header-v1 .page-header-v1__breadcrumb-link {
  color: var(--color-accent-dark, #47B27A);
}

.dark .block-page-header-v1 .page-header-v1__breadcrumb-separator,
.dark .block-page-header-v1 .page-header-v1__breadcrumb-item--current span[aria-current] {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

@media (max-width: 767px) {
  .block-page-header-v1 .page-header-v1__picture--desktop {
    display: none;
  }

  .block-page-header-v1 .page-header-v1__picture--mobile {
    display: block;
  }
}

@media (min-width: 768px) {
  .block-page-header-v1 .page-header-v1__inner {
    padding: 40px 48px;
  }

  .block-page-header-v1 .page-header-v1__breadcrumb {
    margin-bottom: 40px;
  }
}

@media (min-width: 1024px) {
  .block-page-header-v1 .page-header-v1__inner {
    padding-right: 80px;
    padding-left: 80px;
  }
}

@supports (height: 100dvh) {
  .block-page-header-v1 {
    min-height: calc(
      100dvh
      - var(--nav-height, 60px)
      - var(--wi-info-banner-offset, 0px)
    );
  }
}

.block-page-header-v1 .page-header-v1__media,
.block-page-header-v1 .page-header-v1__placeholder {
  background: linear-gradient(145deg, #e7e9e8, #d5dad7);
}

.block-page-header-v1 .page-header-v1__image.wi-picture-pending {
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .block-page-header-v1 .page-header-v1__image {
    opacity: 1 !important;
    transform: none !important;
  }
}


/* page-overview-v1 */
/* Page Overview (block-page-overview-v1) */

.block-page-overview-v1 {
  --page-overview-v1-bg: var(--color-white, #ffffff);
  background: var(--page-overview-v1-bg);
  color: var(--color-black, #333333);
}

.block-page-overview-v1[data-background-color="#FFFFFF"] {
  --page-overview-v1-bg: var(--color-white, #ffffff);
}

.block-page-overview-v1[data-background-color="#F7F7F7"] {
  --page-overview-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-page-overview-v1 {
  --page-overview-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-overview-v1 .page-overview-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-page-overview-v1 .page-overview-v1__header {
  margin-bottom: 32px;
}

.block-page-overview-v1 .page-overview-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.dark .block-page-overview-v1 .page-overview-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-page-overview-v1 .page-overview-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-page-overview-v1 .page-overview-v1__item {
  min-width: 0;
}

.block-page-overview-v1 .page-overview-v1__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
  border-radius: 8px;
}

.block-page-overview-v1 .page-overview-v1__media-link:focus-visible,
.block-page-overview-v1 .page-overview-v1__title-link:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-overview-v1 .page-overview-v1__media {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.dark .block-page-overview-v1 .page-overview-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-page-overview-v1 .page-overview-v1__image,
.block-page-overview-v1 .page-overview-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-page-overview-v1 .page-overview-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-page-overview-v1 .page-overview-v1__media-link:hover .page-overview-v1__image,
.block-page-overview-v1 .page-overview-v1__media-link:focus-visible .page-overview-v1__image {
  transform: scale(1.03);
}

.block-page-overview-v1 .page-overview-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-page-overview-v1 .page-overview-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-page-overview-v1 .page-overview-v1__title {
  margin: 16px 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.block-page-overview-v1 .page-overview-v1__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-overview-v1 .page-overview-v1__title-link:hover,
.block-page-overview-v1 .page-overview-v1__title-link:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.dark .block-page-overview-v1 .page-overview-v1__title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-overview-v1 .page-overview-v1__title-link:hover,
.dark .block-page-overview-v1 .page-overview-v1__title-link:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-page-overview-v1 .page-overview-v1__title p,
.block-page-overview-v1 .page-overview-v1__description p {
  margin: 0;
}

.block-page-overview-v1 .page-overview-v1__description {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.dark .block-page-overview-v1 .page-overview-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.6));
}

.block-page-overview-v1 .page-overview-v1__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.18s ease;
}

.block-page-overview-v1 .page-overview-v1__cta:hover,
.block-page-overview-v1 .page-overview-v1__cta:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-page-overview-v1 .page-overview-v1__cta:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-page-overview-v1 .page-overview-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.block-page-overview-v1 .page-overview-v1__cta:hover .page-overview-v1__cta-icon,
.block-page-overview-v1 .page-overview-v1__cta:focus-visible .page-overview-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-page-overview-v1 .page-overview-v1__cta {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-page-overview-v1 .page-overview-v1__cta:hover,
.dark .block-page-overview-v1 .page-overview-v1__cta:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

@media (min-width: 768px) {
  .block-page-overview-v1 .page-overview-v1__inner {
    padding: 64px 48px;
  }

  .block-page-overview-v1 .page-overview-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
  }
}

@media (min-width: 1024px) {
  .block-page-overview-v1 .page-overview-v1__inner {
    padding: 64px 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-page-overview-v1 .page-overview-v1__image,
  .block-page-overview-v1 .page-overview-v1__cta,
  .block-page-overview-v1 .page-overview-v1__cta-icon,
  .block-page-overview-v1 .page-overview-v1__title-link {
    transition: none !important;
  }

  .block-page-overview-v1 .page-overview-v1__media-link:hover .page-overview-v1__image,
  .block-page-overview-v1 .page-overview-v1__media-link:focus-visible .page-overview-v1__image,
  .block-page-overview-v1 .page-overview-v1__cta:hover .page-overview-v1__cta-icon,
  .block-page-overview-v1 .page-overview-v1__cta:focus-visible .page-overview-v1__cta-icon {
    transform: none !important;
  }
}


/* partner-logos-v1 */
/* ── Partner Logos (block-partner-logos-v1) ─────────────────────── */

.block-partner-logos-v1 {
  background-color: var(--color-light-grey);
  overflow-x: clip;
}

.dark .block-partner-logos-v1 {
  background-color: var(--color-bg-dark);
}

.block-partner-logos-v1 .cl-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-partner-logos-v1 .cl-cat-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 23px), 46px);
  line-height: 1.15;
  color: var(--color-forest-green);
  margin: 0 0 32px;
}

.block-partner-logos-v1 .cl-cat-name p,
.block-partner-logos-v1 .cl-cat-name > * {
  margin: 0;
  font: inherit;
  line-height: inherit;
  color: inherit;
}

.dark .block-partner-logos-v1 .cl-cat-name {
  color: var(--color-accent-dark);
}

.block-partner-logos-v1 .cl-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-text-secondary);
  margin: -16px 0 32px;
}

.dark .block-partner-logos-v1 .cl-desc {
  color: var(--color-text-secondary-dark);
}

.block-partner-logos-v1 .cl-desc p { margin: 0 0 12px; }
.block-partner-logos-v1 .cl-desc p:last-child { margin-bottom: 0; }

/* Logo grid */
.block-partner-logos-v1 .cl-grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* Logo item — small mobile: 2 cols */
.block-partner-logos-v1 .cl-item {
  flex: 0 0 calc(50% - 6px);
}

/* Mobile 480px+: 3 cols */
@media (min-width: 480px) {
  .block-partner-logos-v1 .cl-item { flex: 0 0 calc(33.333% - 8px); }
}

/* Logo figure */
.block-partner-logos-v1 .cl-figure {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  border-radius: 12px;
  background-color: var(--color-white);
  transition: transform 0.15s ease;
  margin: 0;
  height: 80px;
  cursor: pointer;
  touch-action: manipulation;
}

.dark .block-partner-logos-v1 .cl-figure {
  background-color: var(--color-surface-dark);
}

.block-partner-logos-v1 .cl-figure:hover {
  transform: scale(1.05);
}

.block-partner-logos-v1 .cl-figure:active {
  transform: scale(0.97);
  transition-duration: 0.08s;
}


/* Logo image */
.block-partner-logos-v1 .cl-logo {
  max-width: 100%;
  max-height: 48px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Tooltip — visible on hover, hidden from screen readers */
.block-partner-logos-v1 .cl-tooltip {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.82);
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: clamp(11px, 1vw, 13px);
  line-height: 1.4;
  padding: 5px 10px;
  border-radius: 6px;
  white-space: nowrap;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 10;
}

.block-partner-logos-v1 .cl-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: rgba(0, 0, 0, 0.82);
}

.block-partner-logos-v1 .cl-figure:hover .cl-tooltip,
.block-partner-logos-v1 .cl-figure:focus-within .cl-tooltip,
.block-partner-logos-v1 .cl-figure.is-open .cl-tooltip {
  opacity: 1;
}

/* Tablet — 4 cols */
@media (min-width: 768px) {
  .block-partner-logos-v1 .cl-inner { padding: 64px 48px; }
  .block-partner-logos-v1 .cl-item { flex: 0 0 calc(25% - 9px); }
}

/* Desktop — 6 cols */
@media (min-width: 1024px) {
  .block-partner-logos-v1 .cl-inner { padding: 64px 80px; }
  .block-partner-logos-v1 .cl-item { flex: 0 0 calc(16.666% - 10px); }
}

/* ── Detail panel ── */
.block-partner-logos-v1 .cl-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.block-partner-logos-v1 .cl-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.block-partner-logos-v1 .cl-panel {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  max-height: 86vh;
  background: var(--color-light-grey);
  border-radius: 28px 28px 0 0;
  overflow: hidden;
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.12);
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0, 0.15, 1);
}

.dark .block-partner-logos-v1 .cl-panel {
  background: var(--color-bg-dark);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.5);
}

.block-partner-logos-v1 .cl-panel.is-active {
  transform: translateY(0);
}

.block-partner-logos-v1 .cl-panel-scroll {
  flex: 1 1 auto;
  overflow-y: auto;
  overscroll-behavior: contain;
  min-height: 0;
}

.block-partner-logos-v1 .cl-panel-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 8px 24px 32px;
}

@media (min-width: 768px) {
  .block-partner-logos-v1 .cl-panel-inner { padding: 48px 48px 36px; }
}

@media (min-width: 1024px) {
  .block-partner-logos-v1 .cl-panel-inner { padding: 56px 80px 40px; }
}

.block-partner-logos-v1 .cl-panel-cat {
  display: block;
  font-family: var(--font-body);
  font-size: clamp(11px, 1vw, 12px);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-moss-green);
  margin-bottom: 8px;
}

.dark .block-partner-logos-v1 .cl-panel-cat {
  color: var(--color-accent-dark);
}

.block-partner-logos-v1 .cl-panel-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 16px;
  background: var(--color-white);
  margin-bottom: 20px;
  width: 100%;
  box-sizing: border-box;
  border-radius: 16px;
}

/* Mobile: logo-wrap flush to panel edges (no gap) */
@media (max-width: 639px) {
  .block-partner-logos-v1 .cl-panel-logo-wrap {
    margin-top: -8px;
    margin-left: -24px;
    margin-right: -24px;
    width: calc(100% + 48px);
    border-radius: 0;
  }
}

.dark .block-partner-logos-v1 .cl-panel-logo-wrap {
  background: var(--color-surface-dark);
}

.block-partner-logos-v1 .cl-panel-logo {
  max-width: 100%;
  max-height: 80px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.block-partner-logos-v1 .cl-panel-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 22px), 46px);
  line-height: 1.2;
  color: var(--color-forest-green);
  margin: 0 0 8px;
}

.dark .block-partner-logos-v1 .cl-panel-name {
  color: var(--color-text-dark);
}

.block-partner-logos-v1 .cl-panel-facts {
  font-family: var(--font-body);
  font-size: clamp(14px, calc(0.3vw + 13px), 16px);
  line-height: 1.65;
  color: var(--color-text-body);
  margin-bottom: 24px;
}

.dark .block-partner-logos-v1 .cl-panel-facts {
  color: var(--color-text-dark);
}

.block-partner-logos-v1 .cl-panel-facts p { margin: 0 0 10px; }
.block-partner-logos-v1 .cl-panel-facts p:last-child { margin-bottom: 0; }

.block-partner-logos-v1 .cl-panel-divider {
  border: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin: 0 0 28px;
}

.dark .block-partner-logos-v1 .cl-panel-divider {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-partner-logos-v1 .cl-panel-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-text-secondary);
}

.dark .block-partner-logos-v1 .cl-panel-desc {
  color: var(--color-text-secondary-dark);
}

.block-partner-logos-v1 .cl-panel-desc p { margin: 0 0 12px; }
.block-partner-logos-v1 .cl-panel-desc p:last-child { margin-bottom: 0; }

/* Desktop — name full-width on top, logo-col+facts side by side below; mobile: logoCol → cat (eyebrow) → name → facts */
@media (min-width: 640px) {
  .block-partner-logos-v1 .cl-panel-inner {
    display: grid;
    grid-template-columns: 160px 1fr;
    grid-template-areas:
      "cat   cat"
      "name  name"
      "logo  facts"
      "div   div"
      "desc  desc";
    column-gap: 40px;
  }
  .block-partner-logos-v1 .cl-panel-cat      { grid-area: cat; }
  .block-partner-logos-v1 .cl-panel-logo-wrap { grid-area: logo; margin-bottom: 0; align-self: center; }
  .block-partner-logos-v1 .cl-panel-logo     { max-height: 120px; }
  .block-partner-logos-v1 .cl-panel-name     { grid-area: name; align-self: start; margin-bottom: 20px; }
  .block-partner-logos-v1 .cl-panel-facts    { grid-area: facts; align-self: center; margin-bottom: 0; }
  .block-partner-logos-v1 .cl-panel-divider  { grid-area: div; margin-top: 24px; }
  .block-partner-logos-v1 .cl-panel-desc     { grid-area: desc; }
}

.block-partner-logos-v1 .cl-panel-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1rem;
  color: var(--color-moss-green);
  text-decoration: none;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: color 0.15s ease;
}

.block-partner-logos-v1 .cl-panel-link:hover { color: var(--color-forest-green); }

.dark .block-partner-logos-v1 .cl-panel-link { color: var(--color-accent-dark); }

.block-partner-logos-v1 .cl-link-chevron {
  display: inline-flex;
  transition: transform 0.15s ease;
}

.block-partner-logos-v1 .cl-panel-link:hover .cl-link-chevron { transform: translateX(3px); }

.block-partner-logos-v1 .cl-panel-footer {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 14px 24px calc(20px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.dark .block-partner-logos-v1 .cl-panel-footer {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-partner-logos-v1 .cl-panel-close {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.08);
  border: none;
  color: var(--color-forest-green);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}

.dark .block-partner-logos-v1 .cl-panel-close {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-text-dark);
}

.block-partner-logos-v1 .cl-panel-close:hover {
  background: rgba(0, 0, 0, 0.15);
  transform: scale(1.08);
}


/* partner-stats-v1 */
/* ── Partner Stats (block-partner-stats-v1) ──────────── */

.block-partner-stats-v1 {
  background-color: var(--color-white, #fff);
}

.block-partner-stats-v1 .cs-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

/* ── Intro ── */

.block-partner-stats-v1 .cs-intro {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-bottom: 48px;
}


.block-partner-stats-v1 .cs-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(28px, calc(2.5vw + 20px), var(--text-h3));
  line-height: var(--text-h3--line-height);
  color: var(--color-forest-green);
  margin: 0;
}

.block-partner-stats-v1 .cs-title p,
.block-partner-stats-v1 .cs-title > * { margin: 0; }

.block-partner-stats-v1 .cs-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: var(--text-body--line-height);
  color: var(--color-black);
  margin: 0;
}

.block-partner-stats-v1 .cs-desc p { margin: 0 0 12px; }
.block-partner-stats-v1 .cs-desc p:last-child { margin-bottom: 0; }

/* ── Stats grid ── */

.block-partner-stats-v1 .cs-grid {
  display: grid;
  grid-template-columns: 1fr;
  background-color: var(--color-grey-20);
  border-top: 1px solid var(--color-grey-20);
  border-bottom: 1px solid var(--color-grey-20);
  gap: 1px;
}

.block-partner-stats-v1 .cs-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 32px 0;
  background-color: var(--color-white, #fff);
}


/* ── Number column ── */

.block-partner-stats-v1 .cs-card-stat {
  display: block;
}

.block-partner-stats-v1 .cs-number {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: 1.1;
  letter-spacing: -2px;
  color: var(--color-moss-green);
}

/* ── Info column ── */

.block-partner-stats-v1 .cs-card-info {
  display: contents;
}

.block-partner-stats-v1 .cs-cat-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(20px, calc(1.2vw + 16px), var(--text-h4));
  line-height: 1.25;
  color: var(--color-forest-green);
  margin: 0 0 12px;
}

.block-partner-stats-v1 .cs-cat-name p,
.block-partner-stats-v1 .cs-cat-name > * { margin: 0; }

.block-partner-stats-v1 .cs-cat-desc {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: var(--text-body--line-height);
  color: var(--color-black);
  margin: 0 0 20px;
}

/* ── Dark mode ── */

.dark .block-partner-stats-v1 {
  background-color: var(--color-bg-dark, #0f1a14);
}

.dark .block-partner-stats-v1 .cs-card {
  background-color: var(--color-bg-dark, #0f1a14);
}

.dark .block-partner-stats-v1 .cs-grid {
  background-color: rgba(255, 255, 255, 0.08);
}

.dark .block-partner-stats-v1 .cs-title { color: var(--color-text-dark, #f0f4f2); }
.dark .block-partner-stats-v1 .cs-desc { color: var(--color-text-dark, #f0f4f2); }
.dark .block-partner-stats-v1 .cs-number { color: var(--color-accent-dark, #47B27A); }
.dark .block-partner-stats-v1 .cs-cat-name { color: var(--color-text-dark, #f0f4f2); }
.dark .block-partner-stats-v1 .cs-cat-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

/* ── Tablet (768px) ── */

@media (min-width: 768px) {
  .block-partner-stats-v1 .cs-inner { padding: 64px 48px; }

  .block-partner-stats-v1 .cs-intro {
    flex-direction: row;
    align-items: flex-start;
    gap: 48px;
  }

  .block-partner-stats-v1 .cs-intro-left { flex: 0 0 45%; }
  .block-partner-stats-v1 .cs-intro-right { flex: 1; padding-top: 12px; }

  .block-partner-stats-v1 .cs-card {
    padding: 32px 0;
  }
}

/* ── Desktop (1024px) ── */

@media (min-width: 1024px) {
  .block-partner-stats-v1 .cs-inner { padding: 64px 80px; }

  .block-partner-stats-v1 .cs-intro {
    gap: 80px;
    padding-bottom: 64px;
  }

  .block-partner-stats-v1 .cs-intro-left { flex: 0 0 45%; }

  .block-partner-stats-v1 .cs-grid {
    grid-template-columns: 1fr 1fr;
    background-color: transparent;
    gap: 0;
    border-bottom: none;
  }

  .block-partner-stats-v1 .cs-card {
    padding: 32px 48px;
    border-bottom: 1px solid var(--color-grey-20);
  }

  /* vertical divider — all left-col cards */
  .block-partner-stats-v1 .cs-card:nth-child(2n+1) {
    border-right: 1px solid var(--color-grey-20);
  }
}

@media (min-width: 1024px) {
  .dark .block-partner-stats-v1 .cs-grid { background-color: transparent; }

  .dark .block-partner-stats-v1 .cs-card {
    border-bottom-color: rgba(255, 255, 255, 0.08);
  }

  .dark .block-partner-stats-v1 .cs-card:nth-child(2n+1) {
    border-right-color: rgba(255, 255, 255, 0.08);
  }
}


/* picture-cta-v1 */
/* Picture CTA (block-picture-cta-v1) */

/* Solid presets: hide decorative illustration */
.block-picture-cta-v1[data-preset^="solid-"] .picture-cta-v1__illustration {
  display: none;
}

/* White */
.block-picture-cta-v1[data-preset="solid-white"] {
  --picture-cta-v1-bg: var(--color-white, #ffffff);
  --picture-cta-v1-foreground: var(--color-forest-green, #004432);
  --picture-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --picture-cta-v1-focus: var(--color-forest-green, #004432);
  --picture-cta-v1-focus-shadow: rgba(0, 68, 50, 0.32);
}

/* Light Grey */
.block-picture-cta-v1[data-preset="solid-lightgrey"] {
  --picture-cta-v1-bg: var(--color-light-grey, #f7f7f7);
  --picture-cta-v1-foreground: var(--color-black, #333333);
  --picture-cta-v1-foreground-inverse: var(--color-light-grey, #f7f7f7);
  --picture-cta-v1-focus: var(--color-black, #333333);
  --picture-cta-v1-focus-shadow: rgba(0, 68, 50, 0.32);
}

/* Dark solid backgrounds */
.block-picture-cta-v1[data-preset="solid-mossgreen"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735f);
}

.block-picture-cta-v1[data-preset="solid-red"] {
  --picture-cta-v1-bg: var(--color-red, #e52322);
}

.block-picture-cta-v1[data-preset="solid-darkred"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
}


.block-picture-cta-v1[data-preset="solid-forestgreen"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
}

.block-picture-cta-v1[data-preset="solid-mossgreen"],
.block-picture-cta-v1[data-preset="solid-red"],
.block-picture-cta-v1[data-preset="solid-darkred"]
.block-picture-cta-v1[data-preset="solid-forestgreen"] {
  --picture-cta-v1-foreground: var(--color-white, #ffffff);
  --picture-cta-v1-foreground-inverse: var(--picture-cta-v1-bg);
  --picture-cta-v1-focus: var(--color-white, #ffffff);
  --picture-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Light solid backgrounds */
.block-picture-cta-v1[data-preset="solid-mint"] {
  --picture-cta-v1-bg: var(--color-mint-green, #47b27a);
}

.block-picture-cta-v1[data-preset="solid-lightgreen"] {
  --picture-cta-v1-bg: var(--color-light-green, #8acbc1);
}

.block-picture-cta-v1[data-preset="solid-yellow"] {
  --picture-cta-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-picture-cta-v1[data-preset="solid-corngreen"] {
  --picture-cta-v1-bg: var(--color-corn-green, #94c24a);
}

.block-picture-cta-v1[data-preset="solid-mint"],
.block-picture-cta-v1[data-preset="solid-lightgreen"],
.block-picture-cta-v1[data-preset="solid-yellow"],
.block-picture-cta-v1[data-preset="solid-corngreen"] {
  --picture-cta-v1-foreground: var(--color-black, #333333);
  --picture-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --picture-cta-v1-focus: var(--color-black, #333333);
  --picture-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-picture-cta-v1 {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-moss-green, #13735F);
  --picture-cta-v1-foreground: var(--color-white, #ffffff);
  --picture-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --picture-cta-v1-focus: var(--color-white, #ffffff);
  --picture-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--picture-cta-v1-bg);
  color: var(--picture-cta-v1-foreground);
}

/* ── Illustrated Styles: light foreground ───────────────── */

.block-picture-cta-v1[data-preset="forest-red"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-red, #E52322);
}

.block-picture-cta-v1[data-preset="forest-moss"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-picture-cta-v1[data-preset="forest-darkred"] {
  --picture-cta-v1-bg: var(--color-forest-green, #004432);
  --picture-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-picture-cta-v1[data-preset="red-forest"] {
  --picture-cta-v1-bg: var(--color-red, #E52322);
  --picture-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-picture-cta-v1[data-preset="red-moss"] {
  --picture-cta-v1-bg: var(--color-red, #E52322);
  --picture-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-picture-cta-v1[data-preset="red-darkred"] {
  --picture-cta-v1-bg: var(--color-red, #E52322);
  --picture-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-picture-cta-v1[data-preset="moss-forest"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735F);
  --picture-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-picture-cta-v1[data-preset="moss-red"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735F);
  --picture-cta-v1-illu: var(--color-red, #E52322);
}

.block-picture-cta-v1[data-preset="moss-darkred"] {
  --picture-cta-v1-bg: var(--color-moss-green, #13735F);
  --picture-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-picture-cta-v1[data-preset="darkred-forest"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
  --picture-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-picture-cta-v1[data-preset="darkred-red"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
  --picture-cta-v1-illu: var(--color-red, #E52322);
}

.block-picture-cta-v1[data-preset="darkred-moss"] {
  --picture-cta-v1-bg: var(--color-dark-red, #861135);
  --picture-cta-v1-illu: var(--color-moss-green, #13735F);
}

/* ── Illustrated Styles: dark foreground ────────────────── */

.block-picture-cta-v1[data-preset="mint-yellow"] {
  --picture-cta-v1-bg: var(--color-mint-green, #47B27A);
  --picture-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-picture-cta-v1[data-preset="mint-light"] {
  --picture-cta-v1-bg: var(--color-mint-green, #47B27A);
  --picture-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-picture-cta-v1[data-preset="mint-corn"] {
  --picture-cta-v1-bg: var(--color-mint-green, #47B27A);
  --picture-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-picture-cta-v1[data-preset="yellow-mint"] {
  --picture-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --picture-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-picture-cta-v1[data-preset="yellow-light"] {
  --picture-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --picture-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-picture-cta-v1[data-preset="yellow-corn"] {
  --picture-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --picture-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-picture-cta-v1[data-preset="light-mint"] {
  --picture-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --picture-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-picture-cta-v1[data-preset="light-yellow"] {
  --picture-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --picture-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-picture-cta-v1[data-preset="light-corn"] {
  --picture-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --picture-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-picture-cta-v1[data-preset="corn-mint"] {
  --picture-cta-v1-bg: var(--color-corn-green, #94C24A);
  --picture-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-picture-cta-v1[data-preset="corn-yellow"] {
  --picture-cta-v1-bg: var(--color-corn-green, #94C24A);
  --picture-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-picture-cta-v1[data-preset="corn-light"] {
  --picture-cta-v1-bg: var(--color-corn-green, #94C24A);
  --picture-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

/* ── Illustrated Styles: dark foreground treatment ──────── */

.block-picture-cta-v1[data-preset="mint-yellow"],
.block-picture-cta-v1[data-preset="mint-light"],
.block-picture-cta-v1[data-preset="mint-corn"],
.block-picture-cta-v1[data-preset="yellow-mint"],
.block-picture-cta-v1[data-preset="yellow-light"],
.block-picture-cta-v1[data-preset="yellow-corn"],
.block-picture-cta-v1[data-preset="light-mint"],
.block-picture-cta-v1[data-preset="light-yellow"],
.block-picture-cta-v1[data-preset="light-corn"],
.block-picture-cta-v1[data-preset="corn-mint"],
.block-picture-cta-v1[data-preset="corn-yellow"],
.block-picture-cta-v1[data-preset="corn-light"] {
  --picture-cta-v1-foreground: var(--color-black, #333333);
  --picture-cta-v1-foreground-inverse: var(--color-white, #FFFFFF);
  --picture-cta-v1-focus: var(--color-black, #333333);
  --picture-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-picture-cta-v1 .picture-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-picture-cta-v1 .picture-cta-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  overflow: hidden;
  overflow: clip;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-picture-cta-v1 .picture-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--picture-cta-v1-illu);
  pointer-events: none;
}

.block-picture-cta-v1 .picture-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 1040%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  shape-rendering: geometricPrecision;
}

.block-picture-cta-v1 .picture-cta-v1__copy {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-picture-cta-v1 .picture-cta-v1__heading {
  margin: 0 0 24px;
  color: var(--picture-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-picture-cta-v1 .picture-cta-v1__heading p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-picture-cta-v1 .picture-cta-v1__body {
  margin: 0 0 32px;
  color: var(--picture-cta-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-picture-cta-v1 .picture-cta-v1__body p {
  margin: 0 0 12px;
}

.block-picture-cta-v1 .picture-cta-v1__body p:last-child {
  margin-bottom: 0;
}

.block-picture-cta-v1 .picture-cta-v1__heading strong,
.block-picture-cta-v1 .picture-cta-v1__heading b,
.block-picture-cta-v1 .picture-cta-v1__heading a,
.block-picture-cta-v1 .picture-cta-v1__body strong,
.block-picture-cta-v1 .picture-cta-v1__body b,
.block-picture-cta-v1 .picture-cta-v1__body a {
  color: var(--picture-cta-v1-foreground);
}

.block-picture-cta-v1 .picture-cta-v1__heading a,
.block-picture-cta-v1 .picture-cta-v1__body a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-picture-cta-v1 .picture-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--picture-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--picture-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-picture-cta-v1 .picture-cta-v1__button:hover,
.block-picture-cta-v1 .picture-cta-v1__button:focus-visible,
.block-picture-cta-v1 .picture-cta-v1__button:focus {
  border-color: var(--picture-cta-v1-foreground);
  background-color: var(--picture-cta-v1-foreground);
  color: var(--picture-cta-v1-foreground-inverse);
}

.block-picture-cta-v1 .picture-cta-v1__button:focus-visible,
.block-picture-cta-v1 .picture-cta-v1__button:focus {
  outline: 3px solid var(--picture-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--picture-cta-v1-focus-shadow);
}

.block-picture-cta-v1 .picture-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-picture-cta-v1 .picture-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-picture-cta-v1 .picture-cta-v1__button:hover .picture-cta-v1__button-icon {
  transform: translateX(3px);
}

.block-picture-cta-v1 .picture-cta-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-picture-cta-v1 .picture-cta-v1__media {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

/* Toggle of or N/A state */
.block-picture-cta-v1 .picture-cta-v1__image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.block-picture-cta-v1 .picture-cta-v1__placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: transparent;
}

/* Toggle on */
.block-picture-cta-v1[data-original-ratio="true"]
.picture-cta-v1__media {
  aspect-ratio: auto;
}

.block-picture-cta-v1[data-original-ratio="true"]
.picture-cta-v1__image {
  position: static;
  height: auto;
  object-fit: contain;
}

@media (min-width: 768px) {
  .block-picture-cta-v1 .picture-cta-v1__content {
    padding: 64px 48px;
  }

  .block-picture-cta-v1 .picture-cta-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-picture-cta-v1 .picture-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-picture-cta-v1 .picture-cta-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-picture-cta-v1 .picture-cta-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
    box-sizing: border-box;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-picture-cta-v1 .picture-cta-v1__button,
  .block-picture-cta-v1 .picture-cta-v1__button-icon {
    transition: none;
  }
}


/* portrait-picture-gallery-v1 */
/* Portrait Picture Gallery (block-portrait-picture-gallery-v1) */

.block-portrait-picture-gallery-v1 {
  --portrait-picture-gallery-v1-bg: var(--color-white, #ffffff);
  --portrait-picture-gallery-v1-card-width: min(76vw, 320px);
  --portrait-picture-gallery-v1-card-width: min(76vw, 45.333svh, 320px);
  --portrait-picture-gallery-v1-gap: 12px;
  --portrait-picture-gallery-v1-track-gutter: max(24px, calc((100vw - var(--portrait-picture-gallery-v1-card-width)) / 2));
  background: var(--portrait-picture-gallery-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
  padding: 64px 0;
}

.block-portrait-picture-gallery-v1[data-background-color="#FFFFFF"] {
  --portrait-picture-gallery-v1-bg: var(--color-white, #ffffff);
}

.block-portrait-picture-gallery-v1[data-background-color="#F7F7F7"] {
  --portrait-picture-gallery-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-portrait-picture-gallery-v1 {
  --portrait-picture-gallery-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__header {
  display: grid;
  gap: 24px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline p,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro p,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption p {
  margin: 0;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro p + p {
  margin-top: 12px;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--portrait-picture-gallery-v1-gap);
  margin: 0;
  padding: 16px 0 8px var(--portrait-picture-gallery-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--portrait-picture-gallery-v1-track-gutter) - var(--portrait-picture-gallery-v1-gap)));
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__track::-webkit-scrollbar {
  display: none;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__slide {
  position: relative;
  flex: 0 0 var(--portrait-picture-gallery-v1-card-width);
  width: var(--portrait-picture-gallery-v1-card-width);
  min-width: 0;
  scroll-snap-align: center;
  perspective: 1100px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
  backface-visibility: hidden;
  transform: translateZ(0);
  transform-style: preserve-3d;
  box-shadow: 0 18px 48px rgba(0, 68, 50, 0.12);
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide.ppg-near .portrait-picture-gallery-v1__media {
  will-change: transform;
}

.block-portrait-picture-gallery-v1.ppg-static-cover-flow .portrait-picture-gallery-v1__slide.ppg-near .portrait-picture-gallery-v1__media {
  will-change: auto;
  transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.26);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide:not(.ppg-active) .portrait-picture-gallery-v1__media::after {
  opacity: 1;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__image,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background {
  z-index: 0;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
  pointer-events: none;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__image {
  z-index: 1;
  object-fit: contain;
  object-position: center;
  filter: none;
  transition: filter 0.25s ease;
}

.block-portrait-picture-gallery-v1
  .portrait-picture-gallery-v1__track:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: -3px;
}

.dark
  .block-portrait-picture-gallery-v1
  .portrait-picture-gallery-v1__track:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide.ppg-near:not(.ppg-active) .portrait-picture-gallery-v1__image {
  filter: blur(10px) brightness(0.62) saturate(0.85);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__placeholder {
  position: relative;
  background:
    linear-gradient(155deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.14)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__placeholder {
  background:
    linear-gradient(155deg, rgba(71, 178, 122, 0.14), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
  width: 100%;
  margin-top: 18px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption p + p {
  margin-top: 12px;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-portrait-picture-gallery-v1.ppg-js-ready .portrait-picture-gallery-v1__slide:not(.ppg-active) .portrait-picture-gallery-v1__caption {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__nav {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: var(--portrait-picture-gallery-v1-card-width);
  margin: 20px auto 0;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dots {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
  margin-right: 8px;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot {
  position: relative;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--color-grey-40, #ABABAB);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot::before {
  content: '';
  position: absolute;
  inset: -4px;
  border: 1.5px solid var(--color-forest-green, #004432);
  border-radius: inherit;
  opacity: 0;
  transform: scale(0.6);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), opacity 400ms ease;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot.is-active::before {
  opacity: 1;
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1), ease;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-forest-green, #004432);
  transform: scale(0);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot.is-active::after {
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
}

@media (prefers-reduced-motion: reduce) {
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot::before,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__dot::after { transition: none; }
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 68, 50, 1);
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:hover:not(:disabled):not([aria-disabled="true"]) {
  background: rgba(19, 115, 95, 1);
  color: rgba(255, 255, 255, 1);
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:disabled,
.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn[aria-disabled="true"] {
  opacity: 0.4;
  cursor: default;
}

.block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:hover:not(:disabled):not([aria-disabled="true"]) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-portrait-picture-gallery-v1 {
    --portrait-picture-gallery-v1-card-width: min(52vw, 400px);
    --portrait-picture-gallery-v1-card-width: min(52vw, 45.333svh, 400px);
    --portrait-picture-gallery-v1-gap: 24px;
    --portrait-picture-gallery-v1-track-gutter: max(48px, calc((100vw - var(--portrait-picture-gallery-v1-card-width)) / 2));
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__inner {
    padding: 0 48px 32px;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
    margin-top: 22px;
  }
}

@media (max-width: 767px), (pointer: coarse) {
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
    box-shadow: 0 10px 24px rgba(0, 68, 50, 0.1);
  }

  .dark .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background {
    filter: blur(18px) brightness(0.6);
  }
}

@media (min-width: 1024px) {
  .block-portrait-picture-gallery-v1 {
    --portrait-picture-gallery-v1-card-width: min(34vw, 48vh, 440px);
    --portrait-picture-gallery-v1-gap: 32px;
    --portrait-picture-gallery-v1-track-gutter: max(80px, calc((100vw - var(--portrait-picture-gallery-v1-card-width)) / 2));
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__inner {
    padding: 0 80px 32px;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__intro {
    grid-column: 7 / span 6;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption {
    margin-top: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media {
    transform: none !important;
  }

  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__media::after,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__background,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__image,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__caption,
  .block-portrait-picture-gallery-v1 .portrait-picture-gallery-v1__btn {
    transition: none !important;
  }
}

/* quote-block-v1 */
/* Quote (block-quote-v1) */
.block-quote-v1 {
  --quote-v1-bg: var(--color-white, #ffffff);
  background: var(--quote-v1-bg);
  color: var(--color-black, #333333);
}

.block-quote-v1[data-background-color="#FFFFFF"] {
  --quote-v1-bg: var(--color-white, #ffffff);
}

.block-quote-v1[data-background-color="#F7F7F7"] {
  --quote-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-quote-v1 {
  --quote-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-quote-v1 .quote-v1__outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 16px;
}

.block-quote-v1 .quote-v1__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 16px;
  row-gap: 0;
  margin: 0;
}

.block-quote-v1 .quote-v1__content {
  grid-column: 1 / -1;
  min-width: 0;
  border-left: 1px solid var(--color-forest-green, #004432);
  padding-left: 32px;
  box-sizing: border-box;
  margin: 0;
}

.dark .block-quote-v1 .quote-v1__content {
  border-left-color: var(--color-accent-dark, #47b27a);
}

.block-quote-v1 .quote-v1__spacer {
  display: none;
}

.block-quote-v1 .quote-v1__quote {
  margin: 0;
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  color: var(--color-black, #333333);
}

.dark .block-quote-v1 .quote-v1__quote {
  color: var(--color-text-dark, #f0f4f2);
}

.block-quote-v1 .quote-v1__quote p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.block-quote-v1 .quote-v1__owner {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  justify-content: flex-start;
  gap: 16px;
  margin-top: 24px;
  min-width: 0;
}

.block-quote-v1 .quote-v1__owner[data-show-owner="false"],
.block-quote-v1 .quote-v1__owner[data-show-owner="0"],
.block-quote-v1 .quote-v1__owner[data-show-owner="off"],
.block-quote-v1 .quote-v1__owner[data-show-owner="no"],
.block-quote-v1 .quote-v1__owner[data-show-owner=""] {
  display: none;
}

.block-quote-v1 .quote-v1__avatar {
  width: 88px;
  height: 88px;
  flex: 0 0 auto;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
}

.block-quote-v1 .quote-v1__owner-copy {
  min-width: 0;
}

.block-quote-v1 .quote-v1__owner-name {
  display: block;
  margin: 0;
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  color: var(--color-forest-green, #004432);
  overflow-wrap: anywhere;
}

.dark .block-quote-v1 .quote-v1__owner-name {
  color: var(--color-accent-dark, #47b27a);
}

.block-quote-v1 .quote-v1__owner-position {
  margin: 0;
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-black, #333333);
  overflow-wrap: anywhere;
}

.dark .block-quote-v1 .quote-v1__owner-position {
  color: var(--color-text-dark, #f0f4f2);
}

.block-quote-v1 .quote-v1__owner-position p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

@media (min-width: 768px) {
  .block-quote-v1 .quote-v1__outer {
    padding: 64px 48px;
  }

  .block-quote-v1 .quote-v1__grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-quote-v1 .quote-v1__content {
    grid-column: span 8;
    padding-left: 64px;
  }

  .block-quote-v1 .quote-v1__spacer {
    display: block;
    grid-column: span 4;
  }

  .block-quote-v1 .quote-v1__owner {
    gap: 24px;
  }

  .block-quote-v1 .quote-v1__owner[data-show-owner="false"],
.block-quote-v1 .quote-v1__owner[data-show-owner="0"],
.block-quote-v1 .quote-v1__owner[data-show-owner="off"],
.block-quote-v1 .quote-v1__owner[data-show-owner="no"],
.block-quote-v1 .quote-v1__owner[data-show-owner=""] {
  display: none;
}

.block-quote-v1 .quote-v1__avatar {
    width: 112px;
    height: 112px;
  }
}

@media (min-width: 1024px) {
  .block-quote-v1 .quote-v1__outer {
    padding: 64px 80px;
  }
}

@media (max-width: 767px) {
  .block-quote-v1 .quote-v1__outer {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 420px) {
  .block-quote-v1 .quote-v1__content {
    padding-left: 24px;
  }

  .block-quote-v1 .quote-v1__owner {
    align-items: center;
  }
}

/* quote-cta-v1 */
/* Quote CTA (block-quote-cta-v1) */
/* ── Solid presets: brand background without illustration ── */

/* Dark backgrounds — white foreground */
.block-quote-cta-v1[data-preset="solid-forestgreen"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-foreground: var(--color-white, #ffffff);
  --quote-cta-v1-foreground-inverse: var(--quote-cta-v1-bg);
  --quote-cta-v1-line: rgba(255, 255, 255, 0.56);
  --quote-cta-v1-focus: var(--color-white, #ffffff);
  --quote-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

.block-quote-cta-v1[data-preset="solid-mossgreen"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735f);
  --quote-cta-v1-foreground: var(--color-white, #ffffff);
  --quote-cta-v1-foreground-inverse: var(--quote-cta-v1-bg);
  --quote-cta-v1-line: rgba(255, 255, 255, 0.56);
  --quote-cta-v1-focus: var(--color-white, #ffffff);
  --quote-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

.block-quote-cta-v1[data-preset="solid-darkred"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-foreground: var(--color-white, #ffffff);
  --quote-cta-v1-foreground-inverse: var(--quote-cta-v1-bg);
  --quote-cta-v1-line: rgba(255, 255, 255, 0.56);
  --quote-cta-v1-focus: var(--color-white, #ffffff);
  --quote-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

.block-quote-cta-v1[data-preset="solid-red"] {
  --quote-cta-v1-bg: var(--color-red, #e52322);
  --quote-cta-v1-foreground: var(--color-white, #ffffff);
  --quote-cta-v1-foreground-inverse: var(--quote-cta-v1-bg);
  --quote-cta-v1-line: rgba(255, 255, 255, 0.56);
  --quote-cta-v1-focus: var(--color-white, #ffffff);
  --quote-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Bright backgrounds — brand-black foreground */
.block-quote-cta-v1[data-preset="solid-mint"] {
  --quote-cta-v1-bg: var(--color-mint-green, #47b27a);
}

.block-quote-cta-v1[data-preset="solid-lightgreen"] {
  --quote-cta-v1-bg: var(--color-light-green, #8acbc1);
}

.block-quote-cta-v1[data-preset="solid-yellow"] {
  --quote-cta-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-quote-cta-v1[data-preset="solid-corngreen"] {
  --quote-cta-v1-bg: var(--color-corn-green, #94c24a);
}

.block-quote-cta-v1[data-preset="solid-white"] {
  --quote-cta-v1-bg: var(--color-white, #ffffff);
}

/* Shared foreground, quote rule, button and focus treatment */
.block-quote-cta-v1[data-preset="solid-mint"],
.block-quote-cta-v1[data-preset="solid-lightgreen"],
.block-quote-cta-v1[data-preset="solid-yellow"],
.block-quote-cta-v1[data-preset="solid-corngreen"] {
  --quote-cta-v1-foreground: var(--color-black, #333333);
  --quote-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --quote-cta-v1-line: rgba(51, 51, 51, 0.56);
  --quote-cta-v1-focus: var(--color-black, #333333);
  --quote-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-quote-cta-v1[data-preset="solid-white"] {
  --quote-cta-v1-foreground: var(--color-forest-green, #004432);
  --quote-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --quote-cta-v1-line: rgba(51, 51, 51, 0.56);
  --quote-cta-v1-focus: var(--color-forest-green, #004432);
  --quote-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Solid presets hide only the plant background.
   The quote-mark SVG remains visible. */
.block-quote-cta-v1[data-preset^="solid-"]
  .quote-cta-v1__bg {
  display: none;
}

.block-quote-cta-v1 {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-moss-green, #13735F);
  --quote-cta-v1-foreground: var(--color-white, #ffffff);
  --quote-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --quote-cta-v1-line: rgba(255, 255, 255, 0.56);
  --quote-cta-v1-focus: var(--color-white, #ffffff);
  --quote-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  display: flex;
  align-items: center;
  min-height: 400px;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  background-color: var(--quote-cta-v1-bg);
  color: var(--quote-cta-v1-foreground);
}

.block-quote-cta-v1 .quote-cta-v1__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  overflow: clip;
  contain: paint;
  clip-path: inset(0);
  color: var(--quote-cta-v1-illu);
  pointer-events: none;
}

.block-quote-cta-v1 .quote-cta-v1__bg-svg {
  position: absolute;
  top: -310%;
  left: 50%;
  width: auto;
  height: 653%;
  transform: translateX(-50%) rotate(57.787deg);
  opacity: 1;
  fill: currentColor;
}

/* ── Illustrated Styles: light foreground ───────────────── */

.block-quote-cta-v1[data-preset="forest-red"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-red, #E52322);
}

.block-quote-cta-v1[data-preset="forest-moss"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-quote-cta-v1[data-preset="forest-darkred"] {
  --quote-cta-v1-bg: var(--color-forest-green, #004432);
  --quote-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-quote-cta-v1[data-preset="red-forest"] {
  --quote-cta-v1-bg: var(--color-red, #E52322);
  --quote-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-quote-cta-v1[data-preset="red-moss"] {
  --quote-cta-v1-bg: var(--color-red, #E52322);
  --quote-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-quote-cta-v1[data-preset="red-darkred"] {
  --quote-cta-v1-bg: var(--color-red, #E52322);
  --quote-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-quote-cta-v1[data-preset="moss-forest"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735F);
  --quote-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-quote-cta-v1[data-preset="moss-red"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735F);
  --quote-cta-v1-illu: var(--color-red, #E52322);
}

.block-quote-cta-v1[data-preset="moss-darkred"] {
  --quote-cta-v1-bg: var(--color-moss-green, #13735F);
  --quote-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-quote-cta-v1[data-preset="darkred-forest"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-quote-cta-v1[data-preset="darkred-red"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-illu: var(--color-red, #E52322);
}

.block-quote-cta-v1[data-preset="darkred-moss"] {
  --quote-cta-v1-bg: var(--color-dark-red, #861135);
  --quote-cta-v1-illu: var(--color-moss-green, #13735F);
}

/* ── Illustrated Styles: dark foreground ────────────────── */

.block-quote-cta-v1[data-preset="mint-yellow"] {
  --quote-cta-v1-bg: var(--color-mint-green, #47B27A);
  --quote-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-quote-cta-v1[data-preset="mint-light"] {
  --quote-cta-v1-bg: var(--color-mint-green, #47B27A);
  --quote-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-quote-cta-v1[data-preset="mint-corn"] {
  --quote-cta-v1-bg: var(--color-mint-green, #47B27A);
  --quote-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-quote-cta-v1[data-preset="yellow-mint"] {
  --quote-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --quote-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-quote-cta-v1[data-preset="yellow-light"] {
  --quote-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --quote-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-quote-cta-v1[data-preset="yellow-corn"] {
  --quote-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --quote-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-quote-cta-v1[data-preset="light-mint"] {
  --quote-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --quote-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-quote-cta-v1[data-preset="light-yellow"] {
  --quote-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --quote-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-quote-cta-v1[data-preset="light-corn"] {
  --quote-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --quote-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-quote-cta-v1[data-preset="corn-mint"] {
  --quote-cta-v1-bg: var(--color-corn-green, #94C24A);
  --quote-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-quote-cta-v1[data-preset="corn-yellow"] {
  --quote-cta-v1-bg: var(--color-corn-green, #94C24A);
  --quote-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-quote-cta-v1[data-preset="corn-light"] {
  --quote-cta-v1-bg: var(--color-corn-green, #94C24A);
  --quote-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

/* ── Dark foreground treatment ───────────────────────────── */

.block-quote-cta-v1[data-preset="mint-yellow"],
.block-quote-cta-v1[data-preset="mint-light"],
.block-quote-cta-v1[data-preset="mint-corn"],
.block-quote-cta-v1[data-preset="yellow-mint"],
.block-quote-cta-v1[data-preset="yellow-light"],
.block-quote-cta-v1[data-preset="yellow-corn"],
.block-quote-cta-v1[data-preset="light-mint"],
.block-quote-cta-v1[data-preset="light-yellow"],
.block-quote-cta-v1[data-preset="light-corn"],
.block-quote-cta-v1[data-preset="corn-mint"],
.block-quote-cta-v1[data-preset="corn-yellow"],
.block-quote-cta-v1[data-preset="corn-light"],
.block-quote-cta-v1[data-preset="solid-mint"],
.block-quote-cta-v1[data-preset="solid-light"],
.block-quote-cta-v1[data-preset="solid-yellow"],
.block-quote-cta-v1[data-preset="solid-corn"] {
  --quote-cta-v1-foreground: var(--color-black, #333333);
  --quote-cta-v1-foreground-inverse: var(--color-white, #FFFFFF);
  --quote-cta-v1-line: rgba(51, 51, 51, 0.56);
  --quote-cta-v1-focus: var(--color-black, #333333);
  --quote-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-quote-cta-v1 .quote-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  gap: 40px;
  box-sizing: border-box;
}

.block-quote-cta-v1 .quote-cta-v1__quote-group {
  min-width: 0;
  margin: 0;
  padding-left: 24px;
  border-left: 1px solid var(--quote-cta-v1-line);
  box-sizing: border-box;
}

.block-quote-cta-v1 .quote-cta-v1__mark {
  display: block;
  width: 56px;
  max-width: 36vw;
  height: auto;
  margin: 0 0 24px;
  color: var(--quote-cta-v1-foreground);
}

.block-quote-cta-v1 .quote-cta-v1__quote {
  margin: 0;
  color: var(--quote-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-quote-cta-v1 .quote-cta-v1__quote p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-quote-cta-v1 .quote-cta-v1__quote p + p {
  margin-top: 16px;
}

.block-quote-cta-v1 .quote-cta-v1__quote strong,
.block-quote-cta-v1 .quote-cta-v1__quote b,
.block-quote-cta-v1 .quote-cta-v1__quote a {
  color: var(--quote-cta-v1-foreground);
}

.block-quote-cta-v1 .quote-cta-v1__quote a {
  font-weight: inherit;
  text-decoration: underline;
}

.block-quote-cta-v1 .quote-cta-v1__action {
  min-width: 0;
}

.block-quote-cta-v1 .quote-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--quote-cta-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--quote-cta-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-quote-cta-v1 .quote-cta-v1__button:hover,
.block-quote-cta-v1 .quote-cta-v1__button:focus-visible,
.block-quote-cta-v1 .quote-cta-v1__button:focus {
  border-color: var(--quote-cta-v1-foreground);
  background-color: var(--quote-cta-v1-foreground);
  color: var(--quote-cta-v1-foreground-inverse);
}

.block-quote-cta-v1 .quote-cta-v1__button:focus-visible,
.block-quote-cta-v1 .quote-cta-v1__button:focus {
  outline: 3px solid var(--quote-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--quote-cta-v1-focus-shadow);
}

.block-quote-cta-v1 .quote-cta-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-quote-cta-v1 .quote-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-quote-cta-v1 .quote-cta-v1__button:hover .quote-cta-v1__button-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) {
  .block-quote-cta-v1 .quote-cta-v1__inner {
    padding: 64px 48px;
  }

  .block-quote-cta-v1 .quote-cta-v1__quote-group {
    padding-left: 48px;
  }

  .block-quote-cta-v1 .quote-cta-v1__mark {
    width: 72px;
  }
}

@media (min-width: 1024px) {
  .block-quote-cta-v1 .quote-cta-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    padding: 80px;
    gap: 0 32px;
  }

  .block-quote-cta-v1 .quote-cta-v1__quote-group {
    grid-column: 1 / 8;
  }

  .block-quote-cta-v1 .quote-cta-v1__action {
    grid-column: 9 / -1;
    justify-self: end;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-quote-cta-v1 .quote-cta-v1__button,
  .block-quote-cta-v1 .quote-cta-v1__button-icon {
    transition: none;
  }
}

/* Expand the quote across the full desktop rail when CTA is hidden */
@media (min-width: 1024px) {
  .block-quote-cta-v1
    .quote-cta-v1__inner:not(:has(.quote-cta-v1__button))
    .quote-cta-v1__quote-group {
    grid-column: 1 / -1;
  }
}


/* recent-donations-v1 */
/* Recent Donations Train (block-recent-donations-v1) */

.block-recent-donations-v1 {
  --recent-donations-v1-bg: var(--color-light-grey, #f7f7f7);
  --recent-donations-v1-card-bg: var(--color-white, #ffffff);
  --recent-donations-v1-border: rgba(0, 68, 50, 0.14);
  --recent-donations-v1-muted: #666666;
  --recent-donations-v1-duration: 180s;
  --recent-donations-v1-duration-alt: 202s;
  --recent-donations-v1-delay-alt: -85s;
  --recent-donations-v1-gap: 48px;
  overflow-x: clip;
  overflow-y: visible;
  background: var(--recent-donations-v1-bg);
  color: var(--color-black, #333333);
}

.block-recent-donations-v1[data-background-color="#FFFFFF"] {
  --recent-donations-v1-bg: var(--color-white, #ffffff);
}

.block-recent-donations-v1[data-background-color="#F7F7F7"] {
  --recent-donations-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-recent-donations-v1 {
  --recent-donations-v1-bg: var(--color-bg-dark, #0f1a14);
  --recent-donations-v1-card-bg: var(--color-white, #ffffff);
  --recent-donations-v1-border: rgba(255, 255, 255, 0.14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-recent-donations-v1 .recent-donations-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-recent-donations-v1 .recent-donations-v1__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  margin-bottom: 28px;
}

.block-recent-donations-v1 .recent-donations-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  font-weight: 700;
  line-height: var(--text-h3--line-height, 1.15);
}

.block-recent-donations-v1 .recent-donations-v1__headline p,
.block-recent-donations-v1 .recent-donations-v1__cta p {
  margin: 0;
}

.dark .block-recent-donations-v1 .recent-donations-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-recent-donations-v1 .recent-donations-v1__count {
  display: none;
  align-items: baseline;
  gap: 6px;
  margin: 8px 0 0;
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.45;
}

.block-recent-donations-v1 .recent-donations-v1__count[data-has-count="true"] {
  display: flex;
}

.block-recent-donations-v1 .recent-donations-v1__count-number {
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.dark .block-recent-donations-v1 .recent-donations-v1__count {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.56));
}

.dark .block-recent-donations-v1 .recent-donations-v1__count-number {
  color: inherit;
}

.block-recent-donations-v1 .recent-donations-v1__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-recent-donations-v1 .recent-donations-v1__cta:hover,
.block-recent-donations-v1 .recent-donations-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  border-color: transparent;
  color: var(--color-white, #ffffff);
}

.block-recent-donations-v1 .recent-donations-v1__cta:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-recent-donations-v1 .recent-donations-v1__cta-icon {
  flex-shrink: 0;
  width: 9px;
  height: 14px;
  transition: transform 0.2s ease;
}

.block-recent-donations-v1 .recent-donations-v1__cta:hover .recent-donations-v1__cta-icon,
.block-recent-donations-v1 .recent-donations-v1__cta:focus-visible .recent-donations-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-recent-donations-v1 .recent-donations-v1__cta {
  background: var(--color-yellow-green, #e6ce00);
  border-color: transparent;
  color: var(--color-forest-green, #004432);
}

.dark .block-recent-donations-v1 .recent-donations-v1__cta:hover,
.dark .block-recent-donations-v1 .recent-donations-v1__cta:focus-visible {
  background: var(--color-accent-dark, #47b27a);
  border-color: transparent;
  color: var(--color-bg-dark, #0f1a14);
}

.block-recent-donations-v1 .recent-donations-v1__rail {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  min-height: 286px;
  padding: 2px 0;
  overflow-x: clip;
  overflow-y: visible;
  overflow-clip-margin-block: 16px;
}

.block-recent-donations-v1 .recent-donations-v1__rail::before,
.block-recent-donations-v1 .recent-donations-v1__rail::after {
  display: none;
}

.block-recent-donations-v1 .recent-donations-v1__empty {
  margin: 0;
  padding: 28px;
  border: 1px dashed var(--recent-donations-v1-border);
  border-radius: 8px;
  color: var(--color-grey-60, #737373);
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}

.block-recent-donations-v1 .recent-donations-v1__empty[hidden],
.block-recent-donations-v1 .recent-donations-v1__train[hidden] {
  display: none;
}

.dark .block-recent-donations-v1 .recent-donations-v1__empty {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
}

.block-recent-donations-v1 .recent-donations-v1__train {
  position: relative;
  overflow-x: clip;
  overflow-y: visible;
  overflow-clip-margin-block: 16px;
  padding: 0;
}

.block-recent-donations-v1 .recent-donations-v1__train:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-recent-donations-v1 .recent-donations-v1__track {
  display: flex;
  width: max-content;
  animation: recent-donations-v1-marquee var(--recent-donations-v1-duration) linear infinite;
  will-change: transform;
}

.block-recent-donations-v1 .recent-donations-v1__track[data-rd-lane="2"] {
  display: none;
}

.block-recent-donations-v1 .recent-donations-v1__group {
  display: flex;
  flex: 0 0 auto;
  gap: var(--recent-donations-v1-gap);
  padding-right: var(--recent-donations-v1-gap);
}

.block-recent-donations-v1 .recent-donations-v1__car {
  display: grid;
  grid-template-rows: auto auto auto;
  align-items: stretch;
  width: clamp(248px, 20vw, 304px);
  overflow: hidden;
  border: 0;
  border-radius: 16px;
  background: var(--recent-donations-v1-card-bg);
  box-shadow: 0 2px 8px rgba(0, 68, 50, 0.12);
}

.dark .block-recent-donations-v1 .recent-donations-v1__car {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.26);
}

.block-recent-donations-v1 .recent-donations-v1__animal {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: rgba(0, 68, 50, 0.08);
}

.block-recent-donations-v1 .recent-donations-v1__animal-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dark .block-recent-donations-v1 .recent-donations-v1__animal {
  background: rgba(255, 255, 255, 0.08);
}

.block-recent-donations-v1 .recent-donations-v1__amount {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  gap: 6px;
  min-width: 0;
  min-height: 0;
  padding: 8px 20px 22px;
  border-radius: 0;
  background: transparent;
  color: var(--color-forest-green, #004432);
}

.block-recent-donations-v1 .recent-donations-v1__amount-value {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}

.block-recent-donations-v1 .recent-donations-v1__amount-unit {
  margin-top: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
}

.block-recent-donations-v1 .recent-donations-v1__amount-unit sup {
  position: relative;
  top: -0.35em;
  margin-left: 1px;
  font-size: 0.62em;
  line-height: 0;
}

.dark .block-recent-donations-v1 .recent-donations-v1__amount {
  color: var(--color-forest-green, #004432);
}

.block-recent-donations-v1 .recent-donations-v1__car-body {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 7px;
  padding: 20px 20px 0;
}

.block-recent-donations-v1 .recent-donations-v1__donor {
  overflow: hidden;
  margin: 0;
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.block-recent-donations-v1 .recent-donations-v1__date {
  display: inline-flex;
  align-items: baseline;
  margin-top: 0;
  color: var(--recent-donations-v1-muted);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: nowrap;
}

.block-recent-donations-v1 .recent-donations-v1__date::before {
  content: '|';
  margin-right: 8px;
}

.dark .block-recent-donations-v1 .recent-donations-v1__donor {
  color: var(--color-grey-60, #737373);
}

.dark .block-recent-donations-v1 .recent-donations-v1__date {
  color: var(--color-grey-60, #737373);
}

@keyframes recent-donations-v1-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(var(--recent-donations-v1-loop-offset, -50%), 0, 0);
  }
}

@media (max-width: 767px) {
  .block-recent-donations-v1 .recent-donations-v1__header {
    grid-template-columns: 1fr;
    gap: 18px;
    align-items: start;
    margin-bottom: 24px;
  }

  .block-recent-donations-v1 .recent-donations-v1__rail {
    min-height: 0;
    padding: 0;
  }

  .block-recent-donations-v1 .recent-donations-v1__cta {
    justify-self: start;
    width: fit-content;
    max-width: 100%;
  }

  .block-recent-donations-v1 .recent-donations-v1__car {
    grid-template-rows: auto auto auto;
    width: min(72vw, 260px);
  }

  .block-recent-donations-v1 .recent-donations-v1__animal {
    width: 100%;
  }

  .block-recent-donations-v1 .recent-donations-v1__amount {
    padding: 7px 16px 18px;
  }

  .block-recent-donations-v1 .recent-donations-v1__amount-value {
    font-size: 25px;
  }

  .block-recent-donations-v1 .recent-donations-v1__amount-unit {
    font-size: 17px;
  }

  .block-recent-donations-v1 .recent-donations-v1__car-body {
    gap: 5px;
    padding: 16px 16px 0;
  }

  .block-recent-donations-v1 .recent-donations-v1__donor {
    font-size: 12px;
  }

  .block-recent-donations-v1 .recent-donations-v1__date {
    font-size: 12px;
  }

  .block-recent-donations-v1 .recent-donations-v1__date::before {
    margin-right: 6px;
  }
}

@media (min-width: 768px) {
  .block-recent-donations-v1 .recent-donations-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-recent-donations-v1 .recent-donations-v1__inner {
    padding: 64px 80px;
  }

  .block-recent-donations-v1 .recent-donations-v1__track[data-rd-lane="2"] {
    display: flex;
    margin-top: 48px;
    animation-duration: var(--recent-donations-v1-duration-alt);
    animation-delay: var(--recent-donations-v1-delay-alt);
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-recent-donations-v1 .recent-donations-v1__train {
    overflow: visible;
  }

  .block-recent-donations-v1 .recent-donations-v1__track {
    width: auto;
    animation: none;
  }

  .block-recent-donations-v1 .recent-donations-v1__track[data-rd-lane="2"],
  .block-recent-donations-v1 .recent-donations-v1__group[data-rd-clone] {
    display: none;
  }

  .block-recent-donations-v1 .recent-donations-v1__group {
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    padding-right: 0;
  }
}


/* recent-donations-v2 */
/* Recent Donations text wall (block-recent-donations-v2) */

.block-recent-donations-v2 {
  --recent-donations-v2-bg: var(--color-light-grey, #f7f7f7);
  --recent-donations-v2-muted: #5f6562;
  --recent-donations-v2-gap: 44px;
  overflow-x: clip;
  overflow-y: visible;
  background: var(--recent-donations-v2-bg);
  color: var(--color-black, #333333);
}

.block-recent-donations-v2[data-background-color="#FFFFFF"] {
  --recent-donations-v2-bg: var(--color-white, #ffffff);
}

.block-recent-donations-v2[data-background-color="#F7F7F7"] {
  --recent-donations-v2-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-recent-donations-v2 {
  --recent-donations-v2-bg: var(--color-bg-dark, #0f1a14);
  --recent-donations-v2-muted: var(
    --color-text-secondary-dark,
    rgba(255, 255, 255, 0.68)
  );
  color: var(--color-text-dark, #f0f4f2);
}

.block-recent-donations-v2 .recent-donations-v2__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-recent-donations-v2 .recent-donations-v2__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  margin-bottom: 32px;
}

.block-recent-donations-v2 .recent-donations-v2__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(
    32px,
    calc(3.56vw + 18.65px),
    var(--text-h3, 46px)
  );
  font-weight: 700;
  line-height: var(--text-h3--line-height, 1.15);
}

.block-recent-donations-v2 .recent-donations-v2__headline p,
.block-recent-donations-v2 .recent-donations-v2__cta p {
  margin: 0;
}

.dark .block-recent-donations-v2 .recent-donations-v2__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-recent-donations-v2 .recent-donations-v2__count {
  display: none;
  align-items: baseline;
  gap: 6px;
  margin: 8px 0 0;
  color: var(--recent-donations-v2-muted);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  line-height: 1.45;
}

.block-recent-donations-v2
  .recent-donations-v2__count[data-has-count="true"] {
  display: flex;
}

.block-recent-donations-v2 .recent-donations-v2__count-number {
  color: inherit;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.block-recent-donations-v2 .recent-donations-v2__cta {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.block-recent-donations-v2 .recent-donations-v2__cta:hover,
.block-recent-donations-v2 .recent-donations-v2__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

.block-recent-donations-v2 .recent-donations-v2__cta:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-recent-donations-v2 .recent-donations-v2__cta-icon {
  flex: 0 0 auto;
  width: 9px;
  height: 14px;
  transition: transform 0.2s ease;
}

.block-recent-donations-v2
  .recent-donations-v2__cta:hover
  .recent-donations-v2__cta-icon,
.block-recent-donations-v2
  .recent-donations-v2__cta:focus-visible
  .recent-donations-v2__cta-icon {
  transform: translateX(3px);
}

.dark .block-recent-donations-v2 .recent-donations-v2__cta {
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
}

.dark .block-recent-donations-v2 .recent-donations-v2__cta:hover,
.dark .block-recent-donations-v2 .recent-donations-v2__cta:focus-visible {
  background: var(--color-accent-dark, #47b27a);
  color: var(--color-bg-dark, #0f1a14);
}

.block-recent-donations-v2 .recent-donations-v2__field {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  overflow-x: clip;
  overflow-y: visible;
  overflow-clip-margin-block: 12px;
}

.block-recent-donations-v2 .recent-donations-v2__empty {
  max-width: calc(1440px - 160px);
  margin: 0 auto;
  padding: 28px;
  border: 1px dashed rgba(0, 68, 50, 0.2);
  border-radius: 8px;
  color: var(--recent-donations-v2-muted);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}

.block-recent-donations-v2 .recent-donations-v2__empty[hidden],
.block-recent-donations-v2 .recent-donations-v2__marquee[hidden] {
  display: none;
}

.dark .block-recent-donations-v2 .recent-donations-v2__empty {
  border-color: rgba(255, 255, 255, 0.2);
}

.block-recent-donations-v2 .recent-donations-v2__marquee {
  display: grid;
  gap: 8px;
  overflow-x: clip;
  overflow-y: visible;
  overflow-clip-margin-block: 12px;
}

.block-recent-donations-v2 .recent-donations-v2__lane {
  min-height: 36px;
  overflow: hidden;
}

.block-recent-donations-v2 .recent-donations-v2__track {
  display: flex;
  width: max-content;
  min-width: 100%;
  align-items: center;
  animation: recent-donations-v2-marquee
    var(--recent-donations-v2-duration, 120s) linear infinite;
  animation-delay: var(--recent-donations-v2-delay, 0s);
  will-change: transform;
}

.block-recent-donations-v2
  .recent-donations-v2__lane[data-direction="reverse"]
  .recent-donations-v2__track {
  animation-direction: reverse;
}

.block-recent-donations-v2 .recent-donations-v2__group {
  display: flex;
  flex: 0 0 auto;
  min-width: max-content;
  align-items: center;
  gap: var(--recent-donations-v2-gap);
  padding-right: var(--recent-donations-v2-gap);
}

.block-recent-donations-v2 .recent-donations-v2__item {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: baseline;
  gap: 10px;
  color: var(--recent-donations-v2-muted);
  white-space: nowrap;
}

.block-recent-donations-v2 .recent-donations-v2__donor {
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.35;
}

.block-recent-donations-v2 .recent-donations-v2__separator {
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.block-recent-donations-v2 .recent-donations-v2__amount,
.block-recent-donations-v2 .recent-donations-v2__time {
  color: var(--recent-donations-v2-muted);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4;
}

.block-recent-donations-v2 .recent-donations-v2__amount {
  font-variant-numeric: tabular-nums;
}

.block-recent-donations-v2 .recent-donations-v2__unit {
  white-space: nowrap;
}

.block-recent-donations-v2 .recent-donations-v2__time {
  text-decoration: none;
}

.dark .block-recent-donations-v2 .recent-donations-v2__donor {
  color: var(--color-accent-dark, #47b27a);
}

@keyframes recent-donations-v2-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(
      var(--recent-donations-v2-loop-offset, -50%),
      0,
      0
    );
  }
}

@media (max-width: 767px) {
  .block-recent-donations-v2 {
    --recent-donations-v2-gap: 32px;
  }

  .block-recent-donations-v2 .recent-donations-v2__header {
    grid-template-columns: 1fr;
    gap: 18px;
    align-items: start;
    margin-bottom: 28px;
  }

  .block-recent-donations-v2 .recent-donations-v2__cta {
    width: fit-content;
    max-width: 100%;
    justify-self: start;
  }

  .block-recent-donations-v2 .recent-donations-v2__marquee {
    gap: 6px;
  }

  .block-recent-donations-v2 .recent-donations-v2__lane {
    min-height: 30px;
  }

  .block-recent-donations-v2 .recent-donations-v2__item {
    gap: 8px;
  }

  .block-recent-donations-v2 .recent-donations-v2__donor {
    font-size: 17px;
  }

  .block-recent-donations-v2 .recent-donations-v2__separator {
    font-size: 14px;
  }

  .block-recent-donations-v2 .recent-donations-v2__amount,
  .block-recent-donations-v2 .recent-donations-v2__time {
    font-size: 16px;
  }

  .block-recent-donations-v2 .recent-donations-v2__empty {
    margin: 0 24px;
  }
}

@media (min-width: 768px) {
  .block-recent-donations-v2 .recent-donations-v2__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-recent-donations-v2 .recent-donations-v2__inner {
    padding: 80px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-recent-donations-v2 .recent-donations-v2__field {
    left: auto;
    width: auto;
    margin-left: 0;
    overflow: visible;
  }

  .block-recent-donations-v2 .recent-donations-v2__marquee {
    gap: 18px;
    overflow: visible;
  }

  .block-recent-donations-v2 .recent-donations-v2__lane {
    min-height: 0;
    overflow: visible;
  }

  .block-recent-donations-v2 .recent-donations-v2__track {
    width: auto;
    min-width: 0;
    animation: none;
    transform: none;
  }

  .block-recent-donations-v2 .recent-donations-v2__group {
    width: 100%;
    min-width: 0;
    flex-wrap: wrap;
    gap: 12px 28px;
    padding-right: 0;
  }

  .block-recent-donations-v2
    .recent-donations-v2__group[data-rd2-clone],
  .block-recent-donations-v2 [data-rd2-visual-only] {
    display: none;
  }
}

/* region-list-v1 */
/* Region List (block-region-list-v1) */

.block-region-list-v1 {
  --region-list-v1-bg: var(--color-light-grey, #f7f7f7);
  --region-list-v1-card-bg: var(--color-white, #ffffff);
  --region-list-v1-muted: var(--color-grey-80, #4d4d4d);
  background: var(--region-list-v1-bg);
  color: var(--color-black, #333333);
}

.block-region-list-v1[data-background-color="#FFFFFF"] {
  --region-list-v1-bg: var(--color-white, #ffffff);
}

.block-region-list-v1[data-background-color="#F7F7F7"] {
  --region-list-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-region-list-v1 {
  --region-list-v1-bg: var(--color-bg-dark, #0f1a14);
  --region-list-v1-card-bg: var(--color-surface-dark, #1a2920);
  --region-list-v1-muted: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.62));
  color: var(--color-text-dark, #f0f4f2);
}

.block-region-list-v1 .region-list-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-region-list-v1 .region-list-v1__header {
  display: grid;
  gap: 12px;
  margin-bottom: 32px;
}

.block-region-list-v1 .region-list-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  font-weight: 700;
  line-height: var(--text-h3--line-height, 1.1);
}

.block-region-list-v1 .region-list-v1__headline p,
.block-region-list-v1 .region-list-v1__cta p {
  margin: 0;
}

.dark .block-region-list-v1 .region-list-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-region-list-v1 .region-list-v1__count {
  display: none;
  margin: 0;
  color: var(--region-list-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
}

.block-region-list-v1 .region-list-v1__count[data-has-count="true"] {
  display: flex;
  gap: 6px;
}

.block-region-list-v1 .region-list-v1__count-number {
  color: inherit;
  font-weight: 700;
}

.block-region-list-v1 .region-list-v1__empty {
  margin: 0;
  padding: 24px;
  border: 1px dashed var(--color-grey-20, #dcdcdc);
  border-radius: 8px;
  color: var(--region-list-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
}

.dark .block-region-list-v1 .region-list-v1__empty {
  border-color: rgba(255, 255, 255, 0.16);
}

.block-region-list-v1 .region-list-v1__empty[hidden],
.block-region-list-v1 .region-list-v1__list[hidden] {
  display: none;
}

.block-region-list-v1 .region-list-v1__list {
  display: grid;
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-region-list-v1 .region-list-v1__item {
  min-width: 0;
}

.block-region-list-v1 .region-list-v1__card {
  overflow: hidden;
  border-radius: 16px;
  background: var(--region-list-v1-card-bg);
  box-shadow: 0 2px 8px rgba(0, 68, 50, 0.1);
}

.dark .block-region-list-v1 .region-list-v1__card {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
}

.block-region-list-v1 .region-list-v1__hero {
  position: relative;
  min-height: 400px;
  overflow: hidden;
  background: var(--color-forest-green, #004432);
  isolation: isolate;
}

.block-region-list-v1 .region-list-v1__picture,
.block-region-list-v1 .region-list-v1__image,
.block-region-list-v1 .region-list-v1__image-placeholder,
.block-region-list-v1 .region-list-v1__overlay {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-region-list-v1 .region-list-v1__image {
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s ease;
}

.block-region-list-v1 .region-list-v1__card:hover .region-list-v1__image {
  transform: scale(1.02);
}

.block-region-list-v1 .region-list-v1__image-placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.32), rgba(0, 68, 50, 0.9)),
    var(--color-forest-green, #004432);
}

.block-region-list-v1 .region-list-v1__overlay {
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 28, 21, 0.64) 0%, rgba(0, 35, 26, 0.35) 42%, rgba(0, 28, 21, 0.82) 100%);
}

.block-region-list-v1 .region-list-v1__hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: 400px;
  flex-direction: column;
  justify-content: space-between;
  padding: 40px;
  color: var(--color-white, #ffffff);
}

.block-region-list-v1 .region-list-v1__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.block-region-list-v1 .region-list-v1__meta p {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  font-family: var(--font-body, 'Lato', sans-serif);
}

.block-region-list-v1 .region-list-v1__meta p:last-child {
  text-align: right;
}

.block-region-list-v1 .region-list-v1__meta strong {
  color: inherit;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.block-region-list-v1 .region-list-v1__meta span {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.block-region-list-v1 .region-list-v1__meta span sub {
  font-size: 0.7em;
  line-height: 0;
  vertical-align: sub;
}

.block-region-list-v1 .region-list-v1__impact {
  margin-top: 64px;
}

.block-region-list-v1 .region-list-v1__name {
  margin: 0;
  color: var(--color-white, #ffffff);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.3;
}

.block-region-list-v1 .region-list-v1__editorial {
  padding: 32px 40px 36px;
  background: var(--color-white, #ffffff);
  color: var(--color-black, #333333);
}

.block-region-list-v1 .region-list-v1__description {
  display: -webkit-box;
  width: 100%;
  overflow: hidden;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}

.block-region-list-v1 .region-list-v1__description > :first-child {
  margin-top: 0;
}

.block-region-list-v1 .region-list-v1__description > :last-child {
  margin-bottom: 0;
}

.block-region-list-v1 .region-list-v1__progress {
  position: relative;
  box-sizing: border-box;
  height: 16px;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 999px;
  background: var(--color-forest-green, #004432);
}

.block-region-list-v1 .region-list-v1__progress-fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--color-mint-green, #47b27a);
  transition: width 0.6s ease;
}

.block-region-list-v1 .region-list-v1__areas {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 16px;
}

.block-region-list-v1 .region-list-v1__areas p {
  margin: 0;
  color: var(--color-white, #ffffff);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}

.block-region-list-v1 .region-list-v1__areas p:last-child {
  text-align: right;
}

.block-region-list-v1 .region-list-v1__areas strong {
  color: inherit;
}

.block-region-list-v1 .region-list-v1__areas p:first-child,
.block-region-list-v1 .region-list-v1__areas p:first-child strong {
  color: var(--color-light-green, #8acbc1);
}

.block-region-list-v1 .region-list-v1__cta {
  display: flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  align-self: flex-start;
  gap: 12px;
  margin-top: 24px;
  margin-left: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}

.block-region-list-v1 .region-list-v1__cta:hover,
.block-region-list-v1 .region-list-v1__cta:focus-visible {
  color: var(--color-moss-green, #13735f);
}

.block-region-list-v1 .region-list-v1__cta:first-child {
  margin-top: 0;
}

.block-region-list-v1 .region-list-v1__cta:focus-visible {
  border-radius: 4px;
  outline: 2px solid var(--color-forest-green, #004432);
  outline-offset: 4px;
}

.block-region-list-v1 .region-list-v1__cta-icon {
  width: 7px;
  height: 11px;
  flex: 0 0 auto;
  transition: transform 0.18s ease;
}

.block-region-list-v1 .region-list-v1__cta:hover .region-list-v1__cta-icon,
.block-region-list-v1 .region-list-v1__cta:focus-visible .region-list-v1__cta-icon {
  transform: translateX(3px);
}

@media (min-width: 768px) and (max-width: 1023px) {
  .block-region-list-v1 .region-list-v1__inner {
    padding: 80px 48px;
  }
}

@media (min-width: 1024px) {
  .block-region-list-v1 .region-list-v1__inner {
    padding: 80px;
  }
}

@media (max-width: 767px) {
  .block-region-list-v1 .region-list-v1__hero,
  .block-region-list-v1 .region-list-v1__hero-content {
    min-height: 440px;
  }

  .block-region-list-v1 .region-list-v1__hero-content {
    padding: 32px 24px;
  }

  .block-region-list-v1 .region-list-v1__meta {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .block-region-list-v1 .region-list-v1__meta p:last-child {
    text-align: left;
  }

  .block-region-list-v1 .region-list-v1__impact {
    margin-top: 48px;
  }

  .block-region-list-v1 .region-list-v1__name {
    font-size: 24px;
  }

  .block-region-list-v1 .region-list-v1__editorial {
    padding: 24px;
  }

}

@media (prefers-reduced-motion: reduce) {
  .block-region-list-v1 .region-list-v1__image,
  .block-region-list-v1 .region-list-v1__progress-fill,
  .block-region-list-v1 .region-list-v1__cta-icon {
    transition: none;
  }

  .block-region-list-v1 .region-list-v1__card:hover .region-list-v1__image,
  .block-region-list-v1 .region-list-v1__cta:hover .region-list-v1__cta-icon,
  .block-region-list-v1 .region-list-v1__cta:focus-visible .region-list-v1__cta-icon {
    transform: none;
  }
}


/* right-picture-v1 */
/* ── Right Picture (block-right-picture-v1) ───────────────────── */

.block-right-picture-v1 {
  --right-picture-v1-bg: var(--color-white, #ffffff);
  --right-picture-v1-padding-top: 64px;
  --right-picture-v1-padding-bottom: 64px;

  background: var(--right-picture-v1-bg);
}

.block-right-picture-v1[data-background-color="#FFFFFF"] {
  --right-picture-v1-bg: var(--color-white, #ffffff);
}

.block-right-picture-v1[data-background-color="#F7F7F7"] {
  --right-picture-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-right-picture-v1 {
  --right-picture-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-right-picture-v1[data-padding-top="true"] {
  --right-picture-v1-padding-top: 64px;
}

.block-right-picture-v1[data-padding-top="false"] {
  --right-picture-v1-padding-top: 0px;
}

.block-right-picture-v1[data-padding-bottom="true"] {
  --right-picture-v1-padding-bottom: 64px;
}

.block-right-picture-v1[data-padding-bottom="false"] {
  --right-picture-v1-padding-bottom: 0px;
}

/* ── Outer layout ── */

.block-right-picture-v1 .rp-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding:
    var(--right-picture-v1-padding-top)
    24px
    var(--right-picture-v1-padding-bottom);
}

.block-right-picture-v1 .rp-inner {
  margin: 0;
}

/* ── Picture wrapper ── */

.block-right-picture-v1 .rp-img-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.dark .block-right-picture-v1 .rp-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-right-picture-v1.rp-has-lightbox .rp-img-wrap {
  cursor: zoom-in;
}

/* ── Blurred portrait background ── */

.block-right-picture-v1 .rp-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}

.block-right-picture-v1 .rp-img-wrap.rp-portrait .rp-bg {
  display: block;
}

/* ── Default landscape mode: 16:9 ── */

.block-right-picture-v1 .rp-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.block-right-picture-v1 .rp-img-wrap.rp-portrait .rp-img {
  object-fit: contain;
}

/* Original ratio toggle */
.block-right-picture-v1[data-original-ratio="true"] .rp-img-wrap {
  height: auto !important;
  aspect-ratio: auto !important;
  background: transparent !important;
}

.block-right-picture-v1[data-original-ratio="true"] .rp-bg,
.block-right-picture-v1[data-original-ratio="true"]
  .rp-img-wrap.rp-portrait
  .rp-bg {
  display: none !important;
}

.block-right-picture-v1[data-original-ratio="true"] .rp-img,
.block-right-picture-v1[data-original-ratio="true"]
  .rp-img-wrap.rp-portrait
  .rp-img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}

/* ── Placeholder ── */

.block-right-picture-v1 .rp-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-right-picture-v1 .rp-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

/* ── Zoom button ── */

.block-right-picture-v1 .rp-zoom-btn {
  display: none;
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  color: #ffffff;
  cursor: zoom-in;
  opacity: 0;
  transition:
    opacity 0.15s ease,
    background-color 0.15s ease;
}

.block-right-picture-v1.rp-has-lightbox .rp-zoom-btn {
  display: flex;
}

.block-right-picture-v1 .rp-img-wrap:hover .rp-zoom-btn,
.block-right-picture-v1 .rp-img-wrap:focus-within .rp-zoom-btn {
  opacity: 1;
}

.block-right-picture-v1 .rp-zoom-btn:hover {
  background: rgba(0, 0, 0, 0.65);
}

.block-right-picture-v1 .rp-zoom-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: 3px;
  opacity: 1;
}

/* ── Lightbox ── */

.block-right-picture-v1 .rp-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  padding: 16px;
  align-items: center;
  justify-content: center;
}

.block-right-picture-v1 .rp-lightbox.rp-lb-open {
  display: flex;
}

.block-right-picture-v1 .rp-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: rp-lb-in 0.2s ease;
}

@keyframes rp-lb-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.block-right-picture-v1 .rp-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: 92vh;
  animation: rp-lb-up 0.2s ease;
}

@keyframes rp-lb-up {
  from {
    opacity: 0;
    transform: scale(0.96);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.block-right-picture-v1 .rp-lb-img {
  display: block;
  max-width: 100%;
  max-height: 92vh;
  border-radius: 8px;
  object-fit: contain;
}

.block-right-picture-v1 .rp-lb-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.block-right-picture-v1 .rp-lb-close:hover {
  background: rgba(255, 255, 255, 0.22);
}

.block-right-picture-v1 .rp-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: 4px;
}

/* ── Caption ── */

.block-right-picture-v1 .rp-caption {
  margin: 12px 0 0;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  line-height: 1.6;
}

.dark .block-right-picture-v1 .rp-caption {
  color: var(
    --color-text-secondary-dark,
    rgba(255, 255, 255, 0.5)
  );
}

.block-right-picture-v1 .rp-caption a {
  color: var(--color-moss-green, #13735f);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-right-picture-v1 .rp-caption a {
  color: var(--color-accent-dark);
}

.block-right-picture-v1 .rp-caption a:hover {
  text-decoration: none;
}

/* ── Responsive layout ── */

@media (max-width: 767px) {
  .block-right-picture-v1.rp-has-lightbox .rp-zoom-btn {
    opacity: 1;
  }
}

@media (min-width: 768px) {
  .block-right-picture-v1 .rp-outer {
    padding-right: 48px;
    padding-left: 48px;
  }
}

@media (min-width: 1024px) {
  .block-right-picture-v1 .rp-outer {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    padding:
      var(--right-picture-v1-padding-top)
      80px
      var(--right-picture-v1-padding-bottom);
  }

  .block-right-picture-v1 .rp-inner {
    grid-column: 5 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-right-picture-v1 .rp-zoom-btn,
  .block-right-picture-v1 .rp-lb-backdrop,
  .block-right-picture-v1 .rp-lb-content,
  .block-right-picture-v1 .rp-lb-close {
    transition: none;
    animation: none;
  }
}

/* right-video-v1 */
/* right-video-v1: complete independent CSS for block-right-video-v1 */
.block-right-video-v1 .sv-yt-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-right-video-v1 .sv-yt-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-right-video-v1 .sv-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}

.block-right-video-v1 .sv-video-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-right-video-v1 .sv-video-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-right-video-v1 .sv-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  object-fit: cover;
}

.block-right-video-v1 .sv-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-right-video-v1 .sv-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

.block-right-video-v1:not([data-src="true"]) .sv-yt-container { display: none; }
.block-right-video-v1[data-src="true"] .sv-video-wrap,
.block-right-video-v1[data-src="true"] .sv-placeholder { display: none; }

.block-right-video-v1 .sv-yt-container {
  position: relative;
}

.block-right-video-v1 .sv-consent-gate {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  background: var(--color-forest-green, #004432);
  background-size: cover;
  background-position: center;
  text-align: center;
  isolation: isolate;
}

.block-right-video-v1 .sv-consent-gate::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  z-index: 0;
  pointer-events: none;
}

.block-right-video-v1 .sv-consent-text {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(12px, 1.2vw, 14px);
  line-height: 1.55;
  color: var(--color-white);
  max-width: 480px;
  margin: 0;
  position: relative;
  z-index: 1;
}

.block-right-video-v1 .sv-consent-btn {
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 22px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  background: transparent;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  z-index: 1;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.block-right-video-v1 .sv-consent-btn:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: var(--color-white, #FFFFFF);
}

.block-right-video-v1 .sv-consent-btn:focus-visible {
  outline: 3px solid var(--color-mint-green, #47B27A);
  outline-offset: 4px;
}

.block-right-video-v1 .sv-consent-icon {
  flex-shrink: 0;
}


.block-right-video-v1 .sv-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-right-video-v1 .sv-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-right-video-v1 .sv-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-right-video-v1 .sv-caption a { color: var(--color-accent-dark); }
.block-right-video-v1 .sv-caption a:hover { text-decoration: none; }

/* Revoke YouTube consent */
.block-right-video-v1 .sv-revoke-wrap {
  padding: 6px 0 0;
  text-align: right;
}
.block-right-video-v1 .sv-revoke-btn {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(10px, 1.1vw, 11px);
  color: var(--color-grey-60, #666666);
  background: none;
  border: none;
  padding: 2px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}
.dark .block-right-video-v1 .sv-revoke-btn {
  color: rgba(255, 255, 255, 0.3);
}
.block-right-video-v1 .sv-revoke-btn:hover {
  color: var(--color-forest-green, #004432);
}
.dark .block-right-video-v1 .sv-revoke-btn:hover {
  color: rgba(255, 255, 255, 0.65);
}
.block-right-video-v1 .sv-revoke-btn:focus-visible {
  outline: 2px solid #47b27a;
  outline-offset: 2px;
  border-radius: 2px;
}

/* Lights-out button */
.block-right-video-v1 .sv-inner {
  position: relative;
}

.block-right-video-v1 .sv-lights-btn {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.42);
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.block-right-video-v1 .sv-lights-btn:hover {
  background: rgba(0, 0, 0, 0.65);
  color: var(--color-white);
}
.block-right-video-v1 .sv-lights-btn:focus-visible {
  outline: 3px solid #47b27a;
  outline-offset: 3px;
}
/* Cinema mode: video player punches through overlay, button floats above */
.block-right-video-v1[data-lights="on"] .sv-yt-container,
.block-right-video-v1[data-lights="on"] .sv-video-wrap {
  position: relative;
  z-index: 9992;
  border-radius: 8px;
  overflow: hidden;
}
.block-right-video-v1[data-lights="on"] .sv-lights-btn {
  z-index: 9993;
  background: rgba(2, 10, 4, 0.85);
  color: #c6f080;
  border-color: rgba(198, 240, 128, 0.3);
}
.block-right-video-v1 .sv-lights-btn .sv-lb-off { display: block; }
.block-right-video-v1 .sv-lights-btn .sv-lb-on  { display: none; }
.block-right-video-v1[data-lights="on"] .sv-lights-btn .sv-lb-off { display: none; }
.block-right-video-v1[data-lights="on"] .sv-lights-btn .sv-lb-on  { display: block; }

/* Overlay injected into body by JS */
.right-video-v1-lights-overlay {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(2, 10, 4, 0.92);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.right-video-v1-lights-forest {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}

.right-video-v1-lights-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes right-video-v1-fly-glow {
  0%, 100% { opacity: 0.15; box-shadow: 0 0 4px 2px rgba(160, 240, 100, 0.25); }
  50%       { opacity: 0.9;  box-shadow: 0 0 8px 4px rgba(190, 255, 130, 0.7); }
}
@keyframes right-video-v1-fly-float {
  0%   { transform: translate(0, 0); }
  33%  { transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5)); }
  66%  { transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy)); }
  100% { transform: translate(0, 0); }
}
.right-video-v1-lights-fly {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    right-video-v1-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    right-video-v1-fly-float var(--fly-float, 5s) ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .right-video-v1-lights-overlay { transition: none; }
  .right-video-v1-lights-fly { animation: none; opacity: 0.5; }
}


/* Block layout and overrides */
/* ── Right Video (block-right-video-v1) ─────────────────────── */

.block-right-video-v1 {
  --right-video-v1-bg: var(--color-white, #FFFFFF);
  --right-video-v1-padding-top: 64px;
  --right-video-v1-padding-bottom: 64px;
  background: var(--right-video-v1-bg);
}

.block-right-video-v1[data-background-color="#FFFFFF"] {
  --right-video-v1-bg: var(--color-white, #FFFFFF);
}

.block-right-video-v1[data-background-color="#F7F7F7"] {
  --right-video-v1-bg: var(--color-light-grey, #F7F7F7);
}

.dark .block-right-video-v1 {
  --right-video-v1-bg: var(--color-bg-dark, #0f1a14);
}

.block-right-video-v1[data-padding-top="true"] {
  --right-video-v1-padding-top: 64px;
}

.block-right-video-v1[data-padding-top="false"] {
  --right-video-v1-padding-top: 0px;
}

.block-right-video-v1[data-padding-bottom="true"] {
  --right-video-v1-padding-bottom: 64px;
}

.block-right-video-v1[data-padding-bottom="false"] {
  --right-video-v1-padding-bottom: 0px;
}

.block-right-video-v1 .rv-outer {
  max-width: 1440px;
  margin: 0 auto;
  padding: var(--right-video-v1-padding-top) 24px var(--right-video-v1-padding-bottom);
}

.block-right-video-v1 .sv-inner {
  margin: 0;
}

/* The figure has no inner padding, so keep the cinema button 8px inside the frame. */
.block-right-video-v1 .sv-lights-btn {
  top: 8px;
  right: 8px;
}

@media (min-width: 768px) {
  .block-right-video-v1 .rv-outer {
    padding-left: 48px;
    padding-right: 48px;
  }
}

@media (min-width: 1024px) {
  .block-right-video-v1 .rv-outer {
    padding: var(--right-video-v1-padding-top) 80px var(--right-video-v1-padding-bottom);
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
  }

  .block-right-video-v1 .sv-inner {
    grid-column: 5 / -1;
  }
}


/* sample-certificate-cta-v1 */
/* ── Solid presets: brand background without illustration ── */

/* Dark backgrounds — white foreground */
.block-sample-certificate-cta-v1[data-preset="solid-forestgreen"] {
  --sample-certificate-cta-v1-bg:
    var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-foreground:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-foreground-inverse:
    var(--sample-certificate-cta-v1-bg);
  --sample-certificate-cta-v1-focus:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus-shadow:
    rgba(255, 255, 255, 0.32);
}

.block-sample-certificate-cta-v1[data-preset="solid-mossgreen"] {
  --sample-certificate-cta-v1-bg:
    var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-foreground:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-foreground-inverse:
    var(--sample-certificate-cta-v1-bg);
  --sample-certificate-cta-v1-focus:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus-shadow:
    rgba(255, 255, 255, 0.32);
}

.block-sample-certificate-cta-v1[data-preset="solid-darkred"] {
  --sample-certificate-cta-v1-bg:
    var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-foreground:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-foreground-inverse:
    var(--sample-certificate-cta-v1-bg);
  --sample-certificate-cta-v1-focus:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus-shadow:
    rgba(255, 255, 255, 0.32);
}

.block-sample-certificate-cta-v1[data-preset="solid-red"] {
  --sample-certificate-cta-v1-bg:
    var(--color-red, #e52322);
  --sample-certificate-cta-v1-foreground:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-foreground-inverse:
    var(--sample-certificate-cta-v1-bg);
  --sample-certificate-cta-v1-focus:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus-shadow:
    rgba(255, 255, 255, 0.32);
}

/* Bright backgrounds */
.block-sample-certificate-cta-v1[data-preset="solid-mint"] {
  --sample-certificate-cta-v1-bg:
    var(--color-mint-green, #47b27a);
}

.block-sample-certificate-cta-v1[data-preset="solid-lightgreen"] {
  --sample-certificate-cta-v1-bg:
    var(--color-light-green, #8acbc1);
}

.block-sample-certificate-cta-v1[data-preset="solid-corngreen"] {
  --sample-certificate-cta-v1-bg:
    var(--color-corn-green, #94c24a);
}

.block-sample-certificate-cta-v1[data-preset="solid-white"] {
  --sample-certificate-cta-v1-bg:
    var(--color-white, #ffffff);
}

/* Shared text, CTA and certificate-focus treatment */
.block-sample-certificate-cta-v1[data-preset="solid-mint"],
.block-sample-certificate-cta-v1[data-preset="solid-lightgreen"],
.block-sample-certificate-cta-v1[data-preset="solid-corngreen"],
.block-sample-certificate-cta-v1[data-preset="solid-white"] {
  --sample-certificate-cta-v1-foreground:
    var(--color-black, #333333);
  --sample-certificate-cta-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus:
    var(--color-black, #333333);
  --sample-certificate-cta-v1-focus-shadow:
    rgba(51, 51, 51, 0.32);
}

/* Hide only the preset illustration.
   Certificate paper and its decorative backing sheets remain visible. */
.block-sample-certificate-cta-v1[data-preset^="solid-"]
  .sample-certificate-cta-v1__illustration {
  display: none;
}

/* Sample Certificate CTA (block-sample-certificate-cta-v1) */

.block-sample-certificate-cta-v1 {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--moss-green, #13735f);
  --sample-certificate-cta-v1-foreground: var(--color-white, #ffffff);
  --sample-certificate-cta-v1-foreground-inverse:
    var(--sample-certificate-cta-v1-bg);
  --sample-certificate-cta-v1-focus: var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  background-color: var(--sample-certificate-cta-v1-bg);
  color: var(--sample-certificate-cta-v1-foreground);
}

/* Illustrated presets: dark backgrounds */

.block-sample-certificate-cta-v1,
.block-sample-certificate-cta-v1[data-preset="forest-red"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-red, #e52322);
}

.block-sample-certificate-cta-v1[data-preset="forest-moss"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-moss-green, #13735f);
}

.block-sample-certificate-cta-v1[data-preset="forest-darkred"] {
  --sample-certificate-cta-v1-bg: var(--color-forest-green, #004432);
  --sample-certificate-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-sample-certificate-cta-v1[data-preset="red-forest"] {
  --sample-certificate-cta-v1-bg: var(--color-red, #e52322);
  --sample-certificate-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-sample-certificate-cta-v1[data-preset="red-moss"] {
  --sample-certificate-cta-v1-bg: var(--color-red, #e52322);
  --sample-certificate-cta-v1-illu: var(--color-moss-green, #13735f);
}

.block-sample-certificate-cta-v1[data-preset="red-darkred"] {
  --sample-certificate-cta-v1-bg: var(--color-red, #e52322);
  --sample-certificate-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-sample-certificate-cta-v1[data-preset="moss-forest"] {
  --sample-certificate-cta-v1-bg: var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-sample-certificate-cta-v1[data-preset="moss-red"] {
  --sample-certificate-cta-v1-bg: var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-illu: var(--color-red, #e52322);
}

.block-sample-certificate-cta-v1[data-preset="moss-darkred"] {
  --sample-certificate-cta-v1-bg: var(--color-moss-green, #13735f);
  --sample-certificate-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-sample-certificate-cta-v1[data-preset="darkred-forest"] {
  --sample-certificate-cta-v1-bg: var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-sample-certificate-cta-v1[data-preset="darkred-red"] {
  --sample-certificate-cta-v1-bg: var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-illu: var(--color-red, #e52322);
}

.block-sample-certificate-cta-v1[data-preset="darkred-moss"] {
  --sample-certificate-cta-v1-bg: var(--color-dark-red, #861135);
  --sample-certificate-cta-v1-illu: var(--color-moss-green, #13735f);
}

/* Illustrated presets: light backgrounds */

.block-sample-certificate-cta-v1[data-preset="mint-light"] {
  --sample-certificate-cta-v1-bg: var(--color-mint-green, #47b27a);
  --sample-certificate-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-sample-certificate-cta-v1[data-preset="mint-corn"] {
  --sample-certificate-cta-v1-bg: var(--color-mint-green, #47b27a);
  --sample-certificate-cta-v1-illu: var(--color-corn-green, #94c24a);
}

.block-sample-certificate-cta-v1[data-preset="light-mint"] {
  --sample-certificate-cta-v1-bg: var(--color-light-green, #8acbc1);
  --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-sample-certificate-cta-v1[data-preset="light-corn"] {
  --sample-certificate-cta-v1-bg: var(--color-light-green, #8acbc1);
  --sample-certificate-cta-v1-illu: var(--color-corn-green, #94c24a);
}

.block-sample-certificate-cta-v1[data-preset="corn-mint"] {
  --sample-certificate-cta-v1-bg: var(--color-corn-green, #94c24a);
  --sample-certificate-cta-v1-illu: var(--color-mint-green, #47b27a);
}

.block-sample-certificate-cta-v1[data-preset="corn-light"] {
  --sample-certificate-cta-v1-bg: var(--color-corn-green, #94c24a);
  --sample-certificate-cta-v1-illu: var(--color-light-green, #8acbc1);
}

.block-sample-certificate-cta-v1[data-preset="mint-light"],
.block-sample-certificate-cta-v1[data-preset="mint-corn"],
.block-sample-certificate-cta-v1[data-preset="light-mint"],
.block-sample-certificate-cta-v1[data-preset="light-corn"],
.block-sample-certificate-cta-v1[data-preset="corn-mint"],
.block-sample-certificate-cta-v1[data-preset="corn-light"] {
  --sample-certificate-cta-v1-foreground: var(--color-black, #333333);
  --sample-certificate-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --sample-certificate-cta-v1-focus: var(--color-black, #333333);
  --sample-certificate-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  transform: translate(20%, 20%);
  shape-rendering: geometricPrecision;
}

/* Yellow CTA colors; keep the existing base button layout and focus ring. */
.block-sample-certificate-cta-v1 {
  --sample-certificate-cta-v1-button-hover-bg:
    var(--color-moss-green, #13735f);
}

/* Moss in the background or illustration uses forest on interaction. */
.block-sample-certificate-cta-v1[data-preset="forest-moss"],
.block-sample-certificate-cta-v1[data-preset="red-moss"],
.block-sample-certificate-cta-v1[data-preset="moss-forest"],
.block-sample-certificate-cta-v1[data-preset="moss-red"],
.block-sample-certificate-cta-v1[data-preset="moss-darkred"],
.block-sample-certificate-cta-v1[data-preset="darkred-moss"],
.block-sample-certificate-cta-v1[data-preset="solid-mossgreen"] {
  --sample-certificate-cta-v1-button-hover-bg:
    var(--color-forest-green, #004432);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button {
  background-color: var(--color-yellow-green, #e6ce00);
  border-color: transparent;
  color: var(--color-forest-green, #004432);
}

.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:hover,
.block-sample-certificate-cta-v1 .sample-certificate-cta-v1__button:focus-visible {
  background-color: var(--sample-certificate-cta-v1-button-hover-bg);
  border-color: transparent;
  color: var(--color-white, #ffffff);
}


/* share-image-maker-v1 */
.block-share-image-maker-v1 {
  --share-image-maker-v1-section-bg: var(--color-light-grey, #f7f7f7);
  --share-image-maker-v1-surface: var(--color-white, #ffffff);
  --share-image-maker-v1-control-border: var(--color-grey-80, #525252);
  --share-image-maker-v1-muted: var(--color-grey-80, #525252);
  --share-image-maker-v1-selected: var(--color-moss-green, #13735f);
  background: var(--share-image-maker-v1-section-bg);
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
}

.block-share-image-maker-v1[data-background-color="#FFFFFF"] {
  --share-image-maker-v1-section-bg: var(--color-white, #ffffff);
}

.block-share-image-maker-v1[data-background-color="#F7F7F7"] {
  --share-image-maker-v1-section-bg: var(--color-light-grey, #f7f7f7);
}

.block-share-image-maker-v1 *,
.block-share-image-maker-v1 *::before,
.block-share-image-maker-v1 *::after {
  box-sizing: border-box;
}

.block-share-image-maker-v1 .share-image-maker-v1__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-share-image-maker-v1 .share-image-maker-v1__header {
  display: grid;
  gap: 20px;
}

.block-share-image-maker-v1 .share-image-maker-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.block-share-image-maker-v1 .share-image-maker-v1__headline p {
  margin: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__description {
  max-width: 720px;
  color: var(--color-grey-80, #525252);
  font-size: 18px;
  line-height: 1.55;
}

.block-share-image-maker-v1 .share-image-maker-v1__description > :first-child {
  margin-top: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__description > :last-child {
  margin-bottom: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__app {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
  margin-top: 36px;
}

.block-share-image-maker-v1 .share-image-maker-v1__controls {
  display: grid;
  gap: 32px;
}

.block-share-image-maker-v1 .share-image-maker-v1__group {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__legend {
  width: 100%;
  margin: 0 0 12px;
  padding: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.block-share-image-maker-v1 .share-image-maker-v1__format-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.block-share-image-maker-v1 .share-image-maker-v1__format-option,
.block-share-image-maker-v1 .share-image-maker-v1__tile-option,
.block-share-image-maker-v1 .share-image-maker-v1__message-option {
  min-width: 0;
  cursor: pointer;
}

.block-share-image-maker-v1 .share-image-maker-v1__format-option > span {
  display: flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border: 1px solid var(--share-image-maker-v1-control-border);
  border-radius: 16px;
  background: var(--share-image-maker-v1-surface);
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__format-option input:checked + span {
  border-color: var(--share-image-maker-v1-selected);
  background: var(--share-image-maker-v1-selected);
  color: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__format-option input:focus-visible + span,
.block-share-image-maker-v1 .share-image-maker-v1__tile-option input:focus-visible + .share-image-maker-v1__tile,
.block-share-image-maker-v1 .share-image-maker-v1__message-option input:focus-visible + .share-image-maker-v1__message-content {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 3px;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-dropdown {
  position: relative;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-trigger {
  display: grid;
  width: 100%;
  min-height: 52px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border: 2px solid var(--color-white, #ffffff);
  border-radius: 16px;
  background: var(--share-image-maker-v1-selected);
  color: var(--color-white, #ffffff);
  cursor: pointer;
  font: inherit;
  text-align: left;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-current-media {
  display: none !important;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-trigger:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 3px;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-current-name {
  min-width: 0;
  overflow-wrap: anywhere;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-change {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 4px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  opacity: 0.75;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-change svg {
  width: 16px;
  height: 16px;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-menu {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 40px 0 0;
  background: rgba(0, 35, 26, 0.16);
  -webkit-backdrop-filter: blur(18px) saturate(0.86);
  backdrop-filter: blur(18px) saturate(0.86);
  isolation: isolate;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-backdrop {
  position: absolute;
  z-index: 0;
  inset: -32px;
  width: auto;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.block-share-image-maker-v1 .share-image-maker-v1__background-menu[hidden] {
  display: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-panel {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(100%, 680px);
  max-height: min(88dvh, 760px);
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 0;
  border-radius: 24px 24px 0 0;
  background: var(--color-white, #ffffff);
  box-shadow: 0 -18px 56px rgba(0, 35, 26, 0.22);
  animation: share-image-maker-v1-picker-up 180ms ease-out both;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-header {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(51, 51, 51, 0.18);
  background: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-title {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-close {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--color-light-grey, #f7f7f7);
  color: var(--color-black, #333333);
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-close:hover {
  background: var(--color-grey-20, #dcdcdc);
  color: var(--color-forest-green, #004432);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-close svg {
  width: 22px;
  height: 22px;
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 16px;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__app[data-format="portrait"] .share-image-maker-v1__tile-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.block-share-image-maker-v1 .share-image-maker-v1__tile {
  position: relative;
  display: grid;
  height: 100%;
  overflow: hidden;
  border: 0;
  border-radius: 16px;
  background: var(--color-light-grey, #f7f7f7);
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__tile::after {
  content: '';
  position: absolute;
  top: 10px;
  right: 10px;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 2px solid var(--color-white, #ffffff);
  border-radius: 50%;
  background-color: var(--share-image-maker-v1-selected);
  background-image: none;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 17px;
  color: var(--color-white, #ffffff);
  opacity: 0;
  transform: scale(0.8);
  transition: opacity 160ms ease, transform 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-media {
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  margin: 6px 6px 0;
  border-radius: 10px;
  background: var(--color-light-grey, #f7f7f7);
}

.block-share-image-maker-v1 .share-image-maker-v1__app[data-format="portrait"] .share-image-maker-v1__tile-media {
  aspect-ratio: 9 / 16;
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-name {
  display: block;
  overflow-wrap: anywhere;
  padding: 10px 12px 12px;
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  transition: color 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile {
  border: 2px solid var(--share-image-maker-v1-selected);
  background: var(--share-image-maker-v1-selected);
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile .share-image-maker-v1__tile-name {
  color: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12 4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  opacity: 1;
  transform: scale(1);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-actions {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 20px max(16px, env(safe-area-inset-bottom));
  border-top: 1px solid rgba(51, 51, 51, 0.18);
  background: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-cancel,
.block-share-image-maker-v1 .share-image-maker-v1__picker-apply {
  min-height: 48px;
  padding: 10px 22px;
  border: 2px solid var(--color-forest-green, #004432);
  border-radius: 999px;
  font: 700 16px/1.25 var(--font-heading, 'Sora', sans-serif);
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-cancel {
  background: transparent;
  color: var(--color-forest-green, #004432);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-apply {
  background: var(--color-forest-green, #004432);
  color: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-apply:hover:not(:disabled) {
  border-color: var(--color-moss-green, #13735f);
  background: var(--color-moss-green, #13735f);
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-apply:disabled {
  border-color: var(--color-grey-40, #b7b7b7);
  background: var(--color-grey-40, #b7b7b7);
  cursor: not-allowed;
}

.block-share-image-maker-v1 .share-image-maker-v1__picker-close:focus-visible,
.block-share-image-maker-v1 .share-image-maker-v1__picker-cancel:focus-visible,
.block-share-image-maker-v1 .share-image-maker-v1__picker-apply:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 3px;
}

body.share-image-maker-v1-picker-open {
  overflow: hidden;
}

@keyframes share-image-maker-v1-picker-up {
  from {
    opacity: 0;
    transform: translateY(24px);
  }

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

.block-share-image-maker-v1 .share-image-maker-v1__message-options {
  display: grid;
  gap: 10px;
}

.block-share-image-maker-v1 [data-message-panel] {
  transition: opacity 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__app.is-background-dropdown-open [data-message-panel] {
  pointer-events: none;
  user-select: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content {
  display: block;
  padding: 16px;
  border: 1px solid var(--share-image-maker-v1-control-border);
  border-radius: 14px;
  background: var(--share-image-maker-v1-surface);
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  overflow-wrap: anywhere;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-option input:checked + .share-image-maker-v1__message-content {
  border-width: 2px;
  border-color: var(--share-image-maker-v1-selected);
  background: var(--share-image-maker-v1-selected);
  color: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content > :first-child {
  margin-top: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content > :last-child {
  margin-bottom: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content p,
.block-share-image-maker-v1 .share-image-maker-v1__message-content ul,
.block-share-image-maker-v1 .share-image-maker-v1__message-content ol,
.block-share-image-maker-v1 .share-image-maker-v1__message-content blockquote {
  margin: 0 0 12px;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content ul,
.block-share-image-maker-v1 .share-image-maker-v1__message-content ol {
  padding-left: 24px;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.block-share-image-maker-v1 .share-image-maker-v1__message-content blockquote {
  padding-left: 14px;
  border-left: 3px solid var(--share-image-maker-v1-selected);
}

.block-share-image-maker-v1 .share-image-maker-v1__preview-panel {
  min-width: 0;
  overflow-anchor: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__canvas-shell {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 16px;
  background: var(--color-bg-dark, #0f1a14);
  box-shadow: 0 14px 34px rgba(0, 68, 50, 0.16);
}

.block-share-image-maker-v1 .share-image-maker-v1__canvas {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  background: var(--color-surface-dark, #1a2920);
}

.block-share-image-maker-v1 .share-image-maker-v1__canvas-blur {
  display: none;
  pointer-events: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__link-overlay {
  position: absolute;
  z-index: 3;
  display: block;
  border-radius: 4px;
  background: transparent;
  color: transparent;
  cursor: pointer;
  text-decoration: none;
  transform-origin: center;
  transition: outline-color 160ms ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__link-overlay[hidden] {
  display: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__link-overlay:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 4px;
  box-shadow: 0 0 0 7px rgba(0, 68, 50, 0.72);
}

.block-share-image-maker-v1 .share-image-maker-v1__link-overlay:focus:not(:focus-visible) {
  outline: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__status {
  min-height: 24px;
  margin: 12px 0 0;
  color: var(--share-image-maker-v1-muted);
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}

.block-share-image-maker-v1 .share-image-maker-v1__status:empty {
  min-height: 0;
  margin-top: 0;
}

.block-share-image-maker-v1 .share-image-maker-v1__status[data-state="error"] {
  color: var(--color-dark-red, #861135);
  font-weight: 700;
}

.block-share-image-maker-v1 .share-image-maker-v1__download {
  display: inline-flex;
  width: fit-content;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 16px auto 0;
  padding: 12px 24px;
  border: 1px solid var(--color-forest-green, #004432);
  border-radius: 4rem;
  background: transparent;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1em;
  cursor: pointer;
  text-decoration: none;
  transition: 0.16s ease-in-out all;
}

.block-share-image-maker-v1 .share-image-maker-v1__download svg {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  transition: transform 0.2s ease;
}

.block-share-image-maker-v1 .share-image-maker-v1__download:hover:not([aria-disabled="true"]),
.block-share-image-maker-v1 .share-image-maker-v1__download:focus-visible:not([aria-disabled="true"]) {
  border-color: var(--color-forest-green, #004432);
  background: var(--color-forest-green, #004432);
  color: var(--color-white, #ffffff);
}

.block-share-image-maker-v1 .share-image-maker-v1__download:hover:not([aria-disabled="true"]) svg {
  transform: translateY(3px);
}

.block-share-image-maker-v1 .share-image-maker-v1__download:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px rgba(71, 178, 122, 0.4);
}

.block-share-image-maker-v1 .share-image-maker-v1__download:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-share-image-maker-v1 .share-image-maker-v1__download[aria-disabled="true"] {
  border-color: var(--color-grey-40, #b7b7b7);
  background: transparent;
  color: var(--color-grey-60, #737373);
  cursor: not-allowed;
  opacity: 0.8;
}

.block-share-image-maker-v1 .share-image-maker-v1__noscript {
  margin: 0;
  padding: 16px;
  border-radius: 8px;
  background: rgba(134, 17, 53, 0.1);
  color: var(--color-dark-red, #861135);
  font-weight: 700;
}

.dark .block-share-image-maker-v1 {
  --share-image-maker-v1-section-bg: var(--color-bg-dark, #0f1a14);
  --share-image-maker-v1-surface: var(--color-surface-dark, #1a2920);
  --share-image-maker-v1-control-border: rgba(255, 255, 255, 0.62);
  --share-image-maker-v1-muted: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.68));
  --share-image-maker-v1-selected: var(--color-accent-dark, #47b27a);
  background: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__format-option > span,
.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-name,
.dark .block-share-image-maker-v1 .share-image-maker-v1__message-content {
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__legend {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__description {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.68));
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-media {
  background-color: rgba(255, 255, 255, 0.08);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__tile {
  background: var(--color-surface-dark, #1a2920);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__background-menu {
  background: rgba(15, 26, 20, 0.28);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-panel,
.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-header,
.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-grid,
.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-actions {
  background: var(--color-surface-dark, #1a2920);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-header,
.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-actions {
  border-color: rgba(255, 255, 255, 0.2);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-title {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-close {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-close:hover {
  background: rgba(255, 255, 255, 0.18);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-cancel {
  border-color: var(--color-accent-dark, #47b27a);
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-apply {
  border-color: var(--color-accent-dark, #47b27a);
  background: var(--color-accent-dark, #47b27a);
  color: var(--color-bg-dark, #0f1a14);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-apply:hover:not(:disabled) {
  border-color: var(--color-white, #ffffff);
  background: var(--color-white, #ffffff);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__picker-apply:disabled {
  border-color: rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.2);
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.68));
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__format-option input:checked + span,
.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile,
.dark .block-share-image-maker-v1 .share-image-maker-v1__message-option input:checked + .share-image-maker-v1__message-content {
  border-color: var(--share-image-maker-v1-selected);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__format-option input:checked + span {
  background: var(--share-image-maker-v1-selected);
  color: var(--color-bg-dark, #0f1a14);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__background-trigger {
  border-color: var(--color-white, #ffffff);
  background: var(--share-image-maker-v1-selected);
  color: var(--color-bg-dark, #0f1a14);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile,
.dark .block-share-image-maker-v1 .share-image-maker-v1__message-option input:checked + .share-image-maker-v1__message-content {
  background: var(--share-image-maker-v1-selected);
  color: var(--color-bg-dark, #0f1a14);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile .share-image-maker-v1__tile-name {
  color: var(--color-bg-dark, #0f1a14);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-option input:checked + .share-image-maker-v1__tile::after {
  border-color: var(--color-bg-dark, #0f1a14);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12 4 4 8-9' fill='none' stroke='%230f1a14' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__format-option input:focus-visible + span,
.dark .block-share-image-maker-v1 .share-image-maker-v1__background-trigger:focus-visible,
.dark .block-share-image-maker-v1 .share-image-maker-v1__tile-option input:focus-visible + .share-image-maker-v1__tile,
.dark .block-share-image-maker-v1 .share-image-maker-v1__message-option input:focus-visible + .share-image-maker-v1__message-content,
.dark .block-share-image-maker-v1 .share-image-maker-v1__download:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__download {
  border-color: var(--color-accent-dark, #47b27a);
  background: transparent;
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__download:hover:not([aria-disabled="true"]),
.dark .block-share-image-maker-v1 .share-image-maker-v1__download:focus-visible:not([aria-disabled="true"]) {
  border-color: var(--color-accent-dark, #47b27a);
  background: var(--color-accent-dark, #47b27a);
  color: var(--color-bg-dark, #0f1a14);
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__download[aria-disabled="true"] {
  border-color: rgba(255, 255, 255, 0.2);
  background: transparent;
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.68));
}

.dark .block-share-image-maker-v1 .share-image-maker-v1__status[data-state="error"],
.dark .block-share-image-maker-v1 .share-image-maker-v1__noscript {
  color: #ffb4c7;
}

@media (min-width: 768px) {
  .block-share-image-maker-v1 .share-image-maker-v1__inner {
    padding-right: 48px;
    padding-left: 48px;
  }
}

@media (max-width: 1023px) {
  .block-share-image-maker-v1 .share-image-maker-v1__preview-panel {
    text-align: center;
  }
}

@media (min-width: 1024px) {
  .block-share-image-maker-v1 .share-image-maker-v1__inner {
    padding-right: 80px;
    padding-left: 80px;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__app {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    align-items: start;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__controls {
    grid-column: 1 / 5;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__preview-panel {
    position: sticky;
    top: 24px;
    grid-column: 5 / -1;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__background-menu {
    display: block;
    padding: 0;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__picker-panel {
    position: absolute;
    top: var(--share-image-maker-v1-picker-top, 24px);
    left: var(--share-image-maker-v1-picker-left, 40vw);
    width: min(620px, calc(100vw - var(--share-image-maker-v1-picker-left, 40vw) - 24px));
    max-height: min(760px, calc(100dvh - var(--share-image-maker-v1-picker-top, 24px) - 24px));
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(0, 35, 26, 0.28);
    animation-name: share-image-maker-v1-picker-in;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__canvas-shell {
    aspect-ratio: 16 / 9;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__app[data-preview-format="portrait"] .share-image-maker-v1__canvas {
    width: auto;
    max-width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__app[data-preview-format="portrait"] .share-image-maker-v1__canvas-blur {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(24px);
    transform: scale(1.1);
  }
}

@keyframes share-image-maker-v1-picker-in {
  from {
    opacity: 0;
    transform: translateX(20px);
  }

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

@media (max-width: 420px) {
  .block-share-image-maker-v1 .share-image-maker-v1__format-options {
    gap: 8px;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__format-option > span {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 15px;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__tile-grid {
    gap: 8px;
    padding: 10px;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__picker-header {
    padding: 14px 16px;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__picker-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-right: 16px;
    padding-left: 16px;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__picker-cancel,
  .block-share-image-maker-v1 .share-image-maker-v1__picker-apply {
    width: 100%;
    padding-right: 12px;
    padding-left: 12px;
  }
}

@media (hover: hover) {
  .block-share-image-maker-v1 .share-image-maker-v1__format-option:hover > span,
  .block-share-image-maker-v1 .share-image-maker-v1__tile-option:hover .share-image-maker-v1__tile,
  .block-share-image-maker-v1 .share-image-maker-v1__message-option:hover .share-image-maker-v1__message-content {
    border-color: var(--color-moss-green, #13735f);
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-share-image-maker-v1 .share-image-maker-v1__format-option > span,
  .block-share-image-maker-v1 .share-image-maker-v1__background-trigger,
  .block-share-image-maker-v1 .share-image-maker-v1__picker-panel,
  .block-share-image-maker-v1 .share-image-maker-v1__tile,
  .block-share-image-maker-v1 [data-message-panel],
  .block-share-image-maker-v1 .share-image-maker-v1__tile::after,
  .block-share-image-maker-v1 .share-image-maker-v1__message-content,
  .block-share-image-maker-v1 .share-image-maker-v1__download {
    transition: none;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__download:hover:not([aria-disabled="true"]) {
    transform: none;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__download svg {
    transition: none;
  }

  .block-share-image-maker-v1 .share-image-maker-v1__download:hover:not([aria-disabled="true"]) svg {
    transform: none;
  }
}


/* simple-cta-v1 */
/* ── Simple CTA (block-simple-cta-v1) ─────────────────────── */


/* Solid presets: hide decorative illustration */
.block-simple-cta-v1[data-preset^="solid-"] .cta-bg {
  display: none;
}

/* White */
.block-simple-cta-v1[data-preset="solid-white"] {
  --simple-cta-v1-bg: var(--color-white, #ffffff);
  --simple-cta-v1-foreground: var(--color-forest-green, #004432);
  --simple-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --simple-cta-v1-focus: var(--color-forest-green, #004432);
  --simple-cta-v1-focus-shadow: rgba(0, 68, 50, 0.32);
}

/* Dark solid backgrounds */
.block-simple-cta-v1[data-preset="solid-mossgreen"] {
  --simple-cta-v1-bg: var(--color-moss-green, #13735f);
}

.block-simple-cta-v1[data-preset="solid-red"] {
  --simple-cta-v1-bg: var(--color-red, #e52322);
}

.block-simple-cta-v1[data-preset="solid-darkred"] {
  --simple-cta-v1-bg: var(--color-dark-red, #861135);
}

.block-simple-cta-v1[data-preset="solid-mossgreen"],
.block-simple-cta-v1[data-preset="solid-red"],
.block-simple-cta-v1[data-preset="solid-darkred"] {
  --simple-cta-v1-foreground: var(--color-white, #ffffff);
  --simple-cta-v1-foreground-inverse: var(--simple-cta-v1-bg);
  --simple-cta-v1-focus: var(--color-white, #ffffff);
  --simple-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Light solid backgrounds */
.block-simple-cta-v1[data-preset="solid-mint"] {
  --simple-cta-v1-bg: var(--color-mint-green, #47b27a);
}

.block-simple-cta-v1[data-preset="solid-lightgreen"] {
  --simple-cta-v1-bg: var(--color-light-green, #8acbc1);
}

.block-simple-cta-v1[data-preset="solid-yellow"] {
  --simple-cta-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-simple-cta-v1[data-preset="solid-corngreen"] {
  --simple-cta-v1-bg: var(--color-corn-green, #94c24a);
}

.block-simple-cta-v1[data-preset="solid-mint"],
.block-simple-cta-v1[data-preset="solid-lightgreen"],
.block-simple-cta-v1[data-preset="solid-yellow"],
.block-simple-cta-v1[data-preset="solid-corngreen"] {
  --simple-cta-v1-foreground: var(--color-black, #333333);
  --simple-cta-v1-foreground-inverse: var(--color-white, #ffffff);
  --simple-cta-v1-focus: var(--color-black, #333333);
  --simple-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-simple-cta-v1 {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-mint-green, #47B27A);
  --simple-cta-v1-foreground: var(--color-white, #FFFFFF);
  --simple-cta-v1-foreground-inverse: var(--color-forest-green, #004432);
  --simple-cta-v1-focus: var(--color-mint-green, #47B27A);
  --simple-cta-v1-focus-shadow: rgba(71, 178, 122, 0.4);
  position: relative;
  background-color: var(--simple-cta-v1-bg);
  overflow: hidden;
  min-height: 400px;
  display: flex;
  align-items: center;
}

/* Decorative illustration */
.block-simple-cta-v1 .cta-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  color: var(--simple-cta-v1-illu);
}

.block-simple-cta-v1 .cta-bg-svg {
  position: absolute;
  height: 653%;
  width: auto;
  top: -310%;
  left: 50%;
  transform: translateX(-50%) rotate(57.787deg);
  opacity: 1;
  fill: currentColor;
}

/* ── Full-opacity presets ─────────────────────────────────── */

/* Default = forest-red */
.block-simple-cta-v1 {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-moss-green, #13735F);
  --simple-cta-v1-foreground: var(--color-white, #FFFFFF);
  --simple-cta-v1-foreground-inverse: var(--simple-cta-v1-bg);
  --simple-cta-v1-focus: var(--color-white, #FFFFFF);
  --simple-cta-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Light foreground presets */

.block-simple-cta-v1[data-preset="forest-red"] {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-red, #E52322);
}

.block-simple-cta-v1[data-preset="forest-moss"] {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-simple-cta-v1[data-preset="forest-darkred"] {
  --simple-cta-v1-bg: var(--color-forest-green, #004432);
  --simple-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-simple-cta-v1[data-preset="red-forest"] {
  --simple-cta-v1-bg: var(--color-red, #E52322);
  --simple-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-simple-cta-v1[data-preset="red-moss"] {
  --simple-cta-v1-bg: var(--color-red, #E52322);
  --simple-cta-v1-illu: var(--color-moss-green, #13735F);
}

.block-simple-cta-v1[data-preset="red-darkred"] {
  --simple-cta-v1-bg: var(--color-red, #E52322);
  --simple-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-simple-cta-v1[data-preset="moss-forest"] {
  --simple-cta-v1-bg: var(--color-moss-green, #13735F);
  --simple-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-simple-cta-v1[data-preset="moss-red"] {
  --simple-cta-v1-bg: var(--color-moss-green, #13735F);
  --simple-cta-v1-illu: var(--color-red, #E52322);
}

.block-simple-cta-v1[data-preset="moss-darkred"] {
  --simple-cta-v1-bg: var(--color-moss-green, #13735F);
  --simple-cta-v1-illu: var(--color-dark-red, #861135);
}

.block-simple-cta-v1[data-preset="darkred-forest"] {
  --simple-cta-v1-bg: var(--color-dark-red, #861135);
  --simple-cta-v1-illu: var(--color-forest-green, #004432);
}

.block-simple-cta-v1[data-preset="darkred-red"] {
  --simple-cta-v1-bg: var(--color-dark-red, #861135);
  --simple-cta-v1-illu: var(--color-red, #E52322);
}

.block-simple-cta-v1[data-preset="darkred-moss"] {
  --simple-cta-v1-bg: var(--color-dark-red, #861135);
  --simple-cta-v1-illu: var(--color-moss-green, #13735F);
}

/* Dark foreground presets */

.block-simple-cta-v1[data-preset="mint-yellow"] {
  --simple-cta-v1-bg: var(--color-mint-green, #47B27A);
  --simple-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-simple-cta-v1[data-preset="mint-light"] {
  --simple-cta-v1-bg: var(--color-mint-green, #47B27A);
  --simple-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-simple-cta-v1[data-preset="mint-corn"] {
  --simple-cta-v1-bg: var(--color-mint-green, #47B27A);
  --simple-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-simple-cta-v1[data-preset="yellow-mint"] {
  --simple-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --simple-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-simple-cta-v1[data-preset="yellow-light"] {
  --simple-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --simple-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-simple-cta-v1[data-preset="yellow-corn"] {
  --simple-cta-v1-bg: var(--color-yellow-green, #E6CE00);
  --simple-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-simple-cta-v1[data-preset="light-mint"] {
  --simple-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --simple-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-simple-cta-v1[data-preset="light-yellow"] {
  --simple-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --simple-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-simple-cta-v1[data-preset="light-corn"] {
  --simple-cta-v1-bg: var(--color-light-green, #8ACBC1);
  --simple-cta-v1-illu: var(--color-corn-green, #94C24A);
}

.block-simple-cta-v1[data-preset="corn-mint"] {
  --simple-cta-v1-bg: var(--color-corn-green, #94C24A);
  --simple-cta-v1-illu: var(--color-mint-green, #47B27A);
}

.block-simple-cta-v1[data-preset="corn-yellow"] {
  --simple-cta-v1-bg: var(--color-corn-green, #94C24A);
  --simple-cta-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-simple-cta-v1[data-preset="corn-light"] {
  --simple-cta-v1-bg: var(--color-corn-green, #94C24A);
  --simple-cta-v1-illu: var(--color-light-green, #8ACBC1);
}

/* Preset-owned dark foreground */

.block-simple-cta-v1[data-preset="mint-yellow"],
.block-simple-cta-v1[data-preset="mint-light"],
.block-simple-cta-v1[data-preset="mint-corn"],
.block-simple-cta-v1[data-preset="yellow-mint"],
.block-simple-cta-v1[data-preset="yellow-light"],
.block-simple-cta-v1[data-preset="yellow-corn"],
.block-simple-cta-v1[data-preset="light-mint"],
.block-simple-cta-v1[data-preset="light-yellow"],
.block-simple-cta-v1[data-preset="light-corn"],
.block-simple-cta-v1[data-preset="corn-mint"],
.block-simple-cta-v1[data-preset="corn-yellow"],
.block-simple-cta-v1[data-preset="corn-light"] {
  --simple-cta-v1-foreground: var(--color-black, #333333);
  --simple-cta-v1-foreground-inverse: var(--color-white, #FFFFFF);
  --simple-cta-v1-focus: var(--color-black, #333333);
  --simple-cta-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Inner layout */
.block-simple-cta-v1 .cta-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/* Keep inline content on the preset-owned accessible foreground. */
.block-simple-cta-v1 strong,
.block-simple-cta-v1 b,
.block-simple-cta-v1 a:not([class]) {
  color: var(--simple-cta-v1-foreground);
}

/* Richtext links use class .lexkit-link — not matched by a:not([class]), so override separately */
.block-simple-cta-v1 .cta-body a,
.block-simple-cta-v1 .cta-heading a {
  color: var(--simple-cta-v1-foreground);
  text-decoration: underline;
  font-weight: inherit;
}

.block-simple-cta-v1 .cta-body p {
  margin: 0 0 12px;
}
.block-simple-cta-v1 .cta-body p:last-child {
  margin-bottom: 0;
}

/* Heading */
.block-simple-cta-v1 .cta-heading {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  line-height: 1.1;
  color: var(--simple-cta-v1-foreground);
  margin: 0;
  overflow-wrap: anywhere;
}

/* Body text */
.block-simple-cta-v1 .cta-body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  color: var(--simple-cta-v1-foreground);
  margin: 0 0 24px;
  overflow-wrap: anywhere;
}

/* CTA button */
.block-simple-cta-v1 .cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 24px;
  border: 1px solid var(--simple-cta-v1-foreground);
  border-radius: 4rem;
  color: var(--simple-cta-v1-foreground);
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1em;
  text-decoration: none;
  transition: 0.16s ease-in-out all;
}

.block-simple-cta-v1 .cta-btn:hover,
.block-simple-cta-v1 .cta-btn:focus-visible,
.block-simple-cta-v1 .cta-btn:focus {
  background-color: var(--simple-cta-v1-foreground);
  color: var(--simple-cta-v1-foreground-inverse);
  border-color: var(--simple-cta-v1-foreground);
}

.block-simple-cta-v1 .cta-btn:focus-visible,
.block-simple-cta-v1 .cta-btn:focus {
  outline: 3px solid var(--simple-cta-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--simple-cta-v1-focus-shadow);
}

.block-simple-cta-v1 .cta-btn:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-simple-cta-v1 .cta-btn-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-simple-cta-v1 .cta-btn:hover .cta-btn-icon {
  transform: translateX(3px);
}

/* Tablet */
@media (min-width: 768px) {
  .block-simple-cta-v1 .cta-inner {
    padding: 64px 48px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-simple-cta-v1 .cta-inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: center;
    padding: 80px;
    gap: 0 32px;
  }
  .block-simple-cta-v1 .cta-left {
    grid-column: 1 / 6;
    min-width: 0;
    align-self: flex-start;
  }
  .block-simple-cta-v1 .cta-right {
    grid-column: 7 / -1;
    min-width: 0;
  }
}


/* social-sharing-v1 */
/* ── Social Sharing v1 ────────────────────────────────────────── */
.block-social-sharing-v1 {
  background: var(--color-white, #FFFFFF);
}
.dark .block-social-sharing-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-social-sharing-v1 .ss-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 40px 24px;
}

.block-social-sharing-v1 .ss-row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 24px 0;
  border-top: 1px solid var(--color-grey-20, #DCDCDC);
  border-bottom: 1px solid var(--color-grey-20, #DCDCDC);
}
.dark .block-social-sharing-v1 .ss-row {
  border-color: rgba(255, 255, 255, 0.1);
}

.block-social-sharing-v1 .ss-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 700;
  color: var(--color-black, #333333);
  margin: 0;
}
.dark .block-social-sharing-v1 .ss-title {
  color: var(--color-text-dark, #f0f4f2);
}

.block-social-sharing-v1 .ss-buttons {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.block-social-sharing-v1 .ss-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--color-moss-green, #13735F);
  background: var(--color-white, #FFFFFF);
  color: var(--color-moss-green, #13735F);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  outline: none;
}
.block-social-sharing-v1 .ss-btn:hover,
.block-social-sharing-v1 .ss-btn:focus-visible {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}
.block-social-sharing-v1 .ss-btn:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 2px;
}
.dark .block-social-sharing-v1 .ss-btn {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.5);
}
.dark .block-social-sharing-v1 .ss-btn:hover,
.dark .block-social-sharing-v1 .ss-btn:focus-visible {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}
.block-social-sharing-v1 .ss-copy-btn.ss-copied {
  background: var(--color-mint-green, #47B27A);
  border-color: var(--color-mint-green, #47B27A);
  color: var(--color-forest-green, #004432);
}
.dark .block-social-sharing-v1 .ss-copy-btn.ss-copied {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}

@media (max-width: 767px) {
  .block-social-sharing-v1 .ss-inner {
    padding: 24px 24px;
  }
}

/* spacer-v1 */
.block-spacer-v1 {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 32px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  flex-shrink: 0;
  background: var(--color-white, #FFFFFF);
}

.block-spacer-v1[data-height="8"] { height: 8px; }
.block-spacer-v1[data-height="16"] { height: 16px; }
.block-spacer-v1[data-height="24"] { height: 24px; }
.block-spacer-v1[data-height="32"] { height: 32px; }
.block-spacer-v1[data-height="64"] { height: 64px; }

.block-spacer-v1[data-background-color="#F7F7F7"] {
  background: var(--color-light-grey, #F7F7F7);
}

.dark .block-spacer-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.dark .block-spacer-v1[data-background-color="#F7F7F7"] {
  background: var(--color-surface-dark, #1a2920);
}

/* standard-donation-cta-v1 */
/* Standard Donation CTA */
.block-standard-donation-cta-v1 {
  --sdc-bg: var(--color-forest-green, #004432);
  --sdc-illu: var(--color-moss-green, #13735f);
  --sdc-foreground: var(--color-white, #ffffff);
  --sdc-hover-bg: var(--color-moss-green, #13735f);

  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--sdc-bg);
  color: var(--sdc-foreground);
}

/* Illustrated presets */
.block-standard-donation-cta-v1[data-preset="forest-moss"] {
  --sdc-bg: var(--color-forest-green, #004432);
  --sdc-illu: var(--color-moss-green, #13735f);
}

.block-standard-donation-cta-v1[data-preset="forest-red"] {
  --sdc-bg: var(--color-forest-green, #004432);
  --sdc-illu: var(--color-red, #e52322);
}

.block-standard-donation-cta-v1[data-preset="forest-darkred"] {
  --sdc-bg: var(--color-forest-green, #004432);
  --sdc-illu: var(--color-dark-red, #861135);
}

.block-standard-donation-cta-v1[data-preset="moss-forest"] {
  --sdc-bg: var(--color-moss-green, #13735f);
  --sdc-illu: var(--color-forest-green, #004432);
  --sdc-hover-bg: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="moss-red"] {
  --sdc-bg: var(--color-moss-green, #13735f);
  --sdc-illu: var(--color-red, #e52322);
  --sdc-hover-bg: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="moss-darkred"] {
  --sdc-bg: var(--color-moss-green, #13735f);
  --sdc-illu: var(--color-dark-red, #861135);
  --sdc-hover-bg: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="red-forest"] {
  --sdc-bg: var(--color-red, #e52322);
  --sdc-illu: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="red-moss"] {
  --sdc-bg: var(--color-red, #e52322);
  --sdc-illu: var(--color-moss-green, #13735f);
}

.block-standard-donation-cta-v1[data-preset="red-darkred"] {
  --sdc-bg: var(--color-red, #e52322);
  --sdc-illu: var(--color-dark-red, #861135);
}

.block-standard-donation-cta-v1[data-preset="darkred-forest"] {
  --sdc-bg: var(--color-dark-red, #861135);
  --sdc-illu: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="darkred-moss"] {
  --sdc-bg: var(--color-dark-red, #861135);
  --sdc-illu: var(--color-moss-green, #13735f);
}

.block-standard-donation-cta-v1[data-preset="darkred-red"] {
  --sdc-bg: var(--color-dark-red, #861135);
  --sdc-illu: var(--color-red, #e52322);
}

.block-standard-donation-cta-v1[data-preset="mint-light"] {
  --sdc-bg: var(--color-mint-green, #47b27a);
  --sdc-illu: var(--color-light-green, #8acbc1);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="mint-corn"] {
  --sdc-bg: var(--color-mint-green, #47b27a);
  --sdc-illu: var(--color-corn-green, #94c24a);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="light-mint"] {
  --sdc-bg: var(--color-light-green, #8acbc1);
  --sdc-illu: var(--color-mint-green, #47b27a);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="light-corn"] {
  --sdc-bg: var(--color-light-green, #8acbc1);
  --sdc-illu: var(--color-corn-green, #94c24a);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="corn-mint"] {
  --sdc-bg: var(--color-corn-green, #94c24a);
  --sdc-illu: var(--color-mint-green, #47b27a);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="corn-light"] {
  --sdc-bg: var(--color-corn-green, #94c24a);
  --sdc-illu: var(--color-light-green, #8acbc1);
  --sdc-foreground: var(--color-black, #333333);
}

/* Solid presets */
.block-standard-donation-cta-v1[data-preset="solid-white"] {
  --sdc-bg: var(--color-white, #ffffff);
  --sdc-foreground: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="solid-light-grey"] {
  --sdc-bg: var(--color-light-grey, #f7f7f7);
  --sdc-foreground: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="solid-forest"] {
  --sdc-bg: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="solid-moss"] {
  --sdc-bg: var(--color-moss-green, #13735f);
  --sdc-hover-bg: var(--color-forest-green, #004432);
}

.block-standard-donation-cta-v1[data-preset="solid-mint"] {
  --sdc-bg: var(--color-mint-green, #47b27a);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="solid-light"] {
  --sdc-bg: var(--color-light-green, #8acbc1);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="solid-corn"] {
  --sdc-bg: var(--color-corn-green, #94c24a);
  --sdc-foreground: var(--color-black, #333333);
}

.block-standard-donation-cta-v1[data-preset="solid-red"] {
  --sdc-bg: var(--color-red, #e52322);
}

.block-standard-donation-cta-v1[data-preset="solid-darkred"] {
  --sdc-bg: var(--color-dark-red, #861135);
}

/* Illustration */
.block-standard-donation-cta-v1 .standard-donation-cta-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--sdc-illu);
  pointer-events: none;
}

.block-standard-donation-cta-v1[data-preset^="solid-"] .standard-donation-cta-v1__illustration {
  display: none;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 280%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  shape-rendering: geometricPrecision;
  transform-origin: center center;
  transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.block-standard-donation-cta-v1:hover .standard-donation-cta-v1__illustration-svg,
.block-standard-donation-cta-v1:focus-within .standard-donation-cta-v1__illustration-svg {
  transform: scale(1.25);
}

/* Centered content */
.block-standard-donation-cta-v1 .standard-donation-cta-v1__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  width: 100%;
  max-width: 1440px;
  min-height: 400px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
  text-align: center;
}

/* Headline */
.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading {
  width: 100%;
  max-width: 900px;
  margin: 0;
  color: var(--sdc-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading p,
.block-standard-donation-cta-v1 .standard-donation-cta-v1__button-label p {
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading strong,
.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading b,
.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading a {
  color: inherit;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading a {
  font-weight: inherit;
  text-decoration: underline;
}

/* Optional centered body */
.block-standard-donation-cta-v1 .standard-donation-cta-v1__body {
  width: 100%;
  max-width: 760px;
  margin: 0;
  color: var(--sdc-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
  overflow-wrap: anywhere;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body p {
  margin: 0;
  color: inherit;
  font: inherit;
  text-align: inherit;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body > * + * {
  margin-top: 12px;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body :is(ul, ol) {
  padding: 0;
  list-style-position: inside;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body ul {
  list-style-type: disc;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body ol {
  list-style-type: decimal;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body :is(strong, b, em, i, li, a) {
  color: inherit;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__body a {
  font-weight: inherit;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

/* Yellow donation button */
.block-standard-donation-cta-v1 .standard-donation-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  max-width: 100%;
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid transparent;
  border-radius: 4rem;
  box-sizing: border-box;
  background-color: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__button-label {
  min-width: 0;
  color: inherit;
  overflow-wrap: anywhere;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__button:hover,
.block-standard-donation-cta-v1 .standard-donation-cta-v1__button:focus-visible {
  border-color: transparent;
  background-color: var(--sdc-hover-bg);
  color: var(--color-white, #ffffff);
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__button:focus-visible,
.block-standard-donation-cta-v1 .standard-donation-cta-v1__heading a:focus-visible {
  outline: 3px solid var(--sdc-foreground);
  outline-offset: 4px;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-standard-donation-cta-v1 .standard-donation-cta-v1__button:hover .standard-donation-cta-v1__button-icon,
.block-standard-donation-cta-v1 .standard-donation-cta-v1__button:focus-visible .standard-donation-cta-v1__button-icon {
  transform: translateX(3px);
}

.block-standard-donation-cta-v1[data-preset*="moss"] .standard-donation-cta-v1__button:hover,
.block-standard-donation-cta-v1[data-preset*="moss"] .standard-donation-cta-v1__button:focus-visible {
  background-color: var(--color-white, #ffffff);
  color: var(--color-forest-green, #004432);
  border-color: transparent;
}

/* Screen-reader text */
.block-standard-donation-cta-v1 .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* Tablet */
@media (min-width: 768px) {
  .block-standard-donation-cta-v1 .standard-donation-cta-v1__illustration-svg {
    height: 640%;
  }

  .block-standard-donation-cta-v1 .standard-donation-cta-v1__inner {
    padding: 64px 48px;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .block-standard-donation-cta-v1 .standard-donation-cta-v1__inner {
    padding: 80px;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .block-standard-donation-cta-v1 .standard-donation-cta-v1__illustration-svg {
    transform: none !important;
    transition: none;
  }

  .block-standard-donation-cta-v1 .standard-donation-cta-v1__button,
  .block-standard-donation-cta-v1 .standard-donation-cta-v1__button-icon {
    transition: none;
  }

  .block-standard-donation-cta-v1 .standard-donation-cta-v1__button .standard-donation-cta-v1__button-icon {
    transform: none;
  }
}

/* standard-picture-gallery-v1 */
/* Standard Picture Gallery (block-standard-picture-gallery-v1) */

.block-standard-picture-gallery-v1 {
  --standard-picture-gallery-v1-bg: var(--color-white, #ffffff);
  --standard-picture-gallery-v1-slide-width: calc(100vw - 48px);
  --standard-picture-gallery-v1-track-gap: 24px;
  --standard-picture-gallery-v1-track-gutter: 24px;
  background: var(--standard-picture-gallery-v1-bg);
  color: var(--color-black, #333333);
  overflow: hidden;
  padding: 64px 0;
}

.block-standard-picture-gallery-v1[data-background-color="#FFFFFF"] {
  --standard-picture-gallery-v1-bg: var(--color-white, #ffffff);
}

.block-standard-picture-gallery-v1[data-background-color="#F7F7F7"] {
  --standard-picture-gallery-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-standard-picture-gallery-v1 {
  --standard-picture-gallery-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px 32px;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__header {
  display: grid;
  gap: 24px;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-forest-green, #004432);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline p,
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro p,
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption p {
  margin: 0;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro {
  max-width: 66ch;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro p + p {
  margin-top: 12px;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__track {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--standard-picture-gallery-v1-track-gap);
  margin: 0;
  padding: 16px 0 0 var(--standard-picture-gallery-v1-track-gutter);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: auto;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--standard-picture-gallery-v1-track-gutter) - var(--standard-picture-gallery-v1-track-gap)));
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__track::-webkit-scrollbar {
  display: none;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__slide {
  flex: 0 0 var(--standard-picture-gallery-v1-slide-width);
  min-width: 0;
  scroll-snap-align: center;
  transform-origin: center center;
}

.block-standard-picture-gallery-v1.spg-js-ready .standard-picture-gallery-v1__slide {
  will-change: transform;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media {
  background: rgba(255, 255, 255, 0.08);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  -webkit-backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.block-standard-picture-gallery-v1.spg-js-ready .standard-picture-gallery-v1__slide:not(.spg-active) .standard-picture-gallery-v1__media::after {
  opacity: 1;
}

/* Blurred background shown only for portrait pictures */
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__background {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media.spg-portrait .standard-picture-gallery-v1__background {
  display: block;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__image,
.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__image {
  position: relative;
  z-index: 1;
  object-fit: cover;
  object-position: center;
  transition: transform 0.45s ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media.spg-portrait .standard-picture-gallery-v1__image {
  object-fit: contain;
}

.block-standard-picture-gallery-v1
  .standard-picture-gallery-v1__track:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: -3px;
}

.dark
  .block-standard-picture-gallery-v1
  .standard-picture-gallery-v1__track:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.12)),
    var(--color-light-grey, #f7f7f7);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(71, 178, 122, 0.12), rgba(255, 255, 255, 0.04)),
    rgba(255, 255, 255, 0.08);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption {
  max-width: 760px;
  margin-top: 24px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption p + p {
  margin-top: 12px;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.7));
}

.block-standard-picture-gallery-v1.spg-js-ready .standard-picture-gallery-v1__slide:not(.spg-active) .standard-picture-gallery-v1__caption {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__nav {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: var(--standard-picture-gallery-v1-slide-width);
  margin: 20px auto 0;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dots {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
  margin-right: 8px;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot {
  position: relative;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--color-grey-40, #ABABAB);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot::before {
  content: '';
  position: absolute;
  inset: -4px;
  border: 1.5px solid var(--color-forest-green, #004432);
  border-radius: inherit;
  opacity: 0;
  transform: scale(0.6);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), opacity 400ms ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot.is-active::before {
  opacity: 1;
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1), ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-forest-green, #004432);
  transform: scale(0);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot.is-active::after {
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
}

@media (prefers-reduced-motion: reduce) {
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot::before,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__dot::after { transition: none; }
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 68, 50, 1);
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:hover:not(:disabled) {
  background: rgba(19, 115, 95, 1);
  color: rgba(255, 255, 255, 1);
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:disabled {
  opacity: 0.4;
  cursor: default;
}

.block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735f);
  outline-offset: 2px;
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.64);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-standard-picture-gallery-v1 {
    --standard-picture-gallery-v1-slide-width: calc(100vw - 96px);
    --standard-picture-gallery-v1-track-gap: 32px;
    --standard-picture-gallery-v1-track-gutter: 48px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__inner {
    padding: 0 48px 32px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption {
    margin-top: 28px;
  }

}

@media (min-width: 1024px) {
  .block-standard-picture-gallery-v1 {
    --standard-picture-gallery-v1-slide-width: min(960px, calc(100vw - 160px));
    --standard-picture-gallery-v1-track-gutter: max(80px, calc(50vw - 480px));
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__inner {
    padding: 0 80px 32px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__intro {
    grid-column: 7 / span 6;
  }

}

@media (prefers-reduced-motion: reduce) {
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__media::after,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__background,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__image,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__caption,
  .block-standard-picture-gallery-v1 .standard-picture-gallery-v1__btn {
    transition: none !important;
  }
}

/* standard-picture-v1 */
/* Standard Picture (block-standard-picture-v1) */
/* =========================================================
   SOLID COLOR PRESETS
   ========================================================= */

/* Solid White */
.block-standard-picture-v1[data-preset="solid-white"] {
  --standard-picture-v1-bg: var(--color-white, #ffffff)!important;
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-forest-green, #004432);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-forest-green, #004432);
  --standard-picture-v1-focus-shadow: rgba(0, 68, 50, 0.28);
}

/* Solid Moss Green */
.block-standard-picture-v1[data-preset="solid-mossgreen"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-white, #ffffff);
  --standard-picture-v1-foreground-inverse: var(--color-moss-green, #13735f);
  --standard-picture-v1-focus: var(--color-white, #ffffff);
  --standard-picture-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Solid Light Grey */
.block-standard-picture-v1[data-preset="solid-lightgrey"] {
  --standard-picture-v1-bg: var(--color-light-grey, #f7f7f7);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-black, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-light-grey, #f7f7f7);
  --standard-picture-v1-focus: var(--color-forest-green, #004432);
  --standard-picture-v1-focus-shadow: rgba(0, 68, 50, 0.28);
}

/* Solid Forest Green */
.block-standard-picture-v1[data-preset="solid-forestgreen"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-white, #ffffff);
  --standard-picture-v1-foreground-inverse: var(--color-forest-green, #004432);
  --standard-picture-v1-focus: var(--color-white, #ffffff);
  --standard-picture-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Solid Red */
.block-standard-picture-v1[data-preset="solid-red"] {
  --standard-picture-v1-bg: var(--color-red, #e52322);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-white, #ffffff);
  --standard-picture-v1-foreground-inverse: var(--color-red, #e52322);
  --standard-picture-v1-focus: var(--color-white, #ffffff);
  --standard-picture-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Solid Dark Red */
.block-standard-picture-v1[data-preset="solid-darkred"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-white, #ffffff);
  --standard-picture-v1-foreground-inverse: var(--color-dark-red, #861135);
  --standard-picture-v1-focus: var(--color-white, #ffffff);
  --standard-picture-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Solid Mint */
.block-standard-picture-v1[data-preset="solid-mint"] {
  --standard-picture-v1-bg: var(--color-mint, #47b27a);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-dark-grey, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-dark-grey, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Solid Light Green */
.block-standard-picture-v1[data-preset="solid-lightgreen"] {
  --standard-picture-v1-bg: var(--color-light-green, #8acbc1);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-dark-grey, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-dark-grey, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Solid Yellow */
.block-standard-picture-v1[data-preset="solid-yellow"] {
  --standard-picture-v1-bg: var(--color-yellow, #e6ce00);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-dark-grey, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-dark-grey, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Solid Corn Green */
.block-standard-picture-v1[data-preset="solid-corngreen"] {
  --standard-picture-v1-bg: var(--color-corn-green, #94c24a);
  --standard-picture-v1-illu: transparent;
  --standard-picture-v1-foreground: var(--color-dark-grey, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-dark-grey, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* Solid presets without illustration */
.block-standard-picture-v1[data-preset="solid-white"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-mossgreen"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-red"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-darkred"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-mint"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-lightgreen"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-yellow"]
  .standard-picture-v1__illustration,
.block-standard-picture-v1[data-preset="solid-corngreen"]
  .standard-picture-v1__illustration {
  display: none;
}

/* Shared copy, divider, caption, CTA, revoke and focus treatment */
.block-standard-picture-v1[data-preset="solid-mint"],
.block-standard-picture-v1[data-preset="solid-lightgreen"],
.block-standard-picture-v1[data-preset="solid-yellow"],
.block-standard-picture-v1[data-preset="solid-corngreen"] {
  --standard-picture-v1-foreground: var(--color-black, #333333);
  --standard-picture-v1-foreground-inverse:
    var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-black, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}



.block-standard-picture-v1 {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-moss-green, #13735f);
  --standard-picture-v1-foreground: var(--color-white, #ffffff);
  --standard-picture-v1-foreground-inverse:
    var(--color-forest-green, #004432);
  --standard-picture-v1-focus: var(--color-white, #ffffff);
  --standard-picture-v1-focus-shadow: rgba(255, 255, 255, 0.32);

  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--standard-picture-v1-bg);
  color: var(--standard-picture-v1-foreground);
}
/* Illustrated presets: dark backgrounds */

.block-standard-picture-v1,
.block-standard-picture-v1[data-preset="forest-red"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-red, #e52322);
}

.block-standard-picture-v1[data-preset="forest-moss"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-moss-green, #13735f);
}

.block-standard-picture-v1[data-preset="forest-darkred"] {
  --standard-picture-v1-bg: var(--color-forest-green, #004432);
  --standard-picture-v1-illu: var(--color-dark-red, #861135);
}

.block-standard-picture-v1[data-preset="red-forest"] {
  --standard-picture-v1-bg: var(--color-red, #e52322);
  --standard-picture-v1-illu: var(--color-forest-green, #004432);
}

.block-standard-picture-v1[data-preset="red-moss"] {
  --standard-picture-v1-bg: var(--color-red, #e52322);
  --standard-picture-v1-illu: var(--color-moss-green, #13735f);
}

.block-standard-picture-v1[data-preset="red-darkred"] {
  --standard-picture-v1-bg: var(--color-red, #e52322);
  --standard-picture-v1-illu: var(--color-dark-red, #861135);
}

.block-standard-picture-v1[data-preset="moss-forest"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: var(--color-forest-green, #004432);
}

.block-standard-picture-v1[data-preset="moss-red"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: var(--color-red, #e52322);
}

.block-standard-picture-v1[data-preset="moss-darkred"] {
  --standard-picture-v1-bg: var(--color-moss-green, #13735f);
  --standard-picture-v1-illu: var(--color-dark-red, #861135);
}

.block-standard-picture-v1[data-preset="darkred-forest"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: var(--color-forest-green, #004432);
}

.block-standard-picture-v1[data-preset="darkred-red"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: var(--color-red, #e52322);
}

.block-standard-picture-v1[data-preset="darkred-moss"] {
  --standard-picture-v1-bg: var(--color-dark-red, #861135);
  --standard-picture-v1-illu: var(--color-moss-green, #13735f);
}

/* Illustrated presets: light backgrounds */

.block-standard-picture-v1[data-preset="mint-yellow"] {
  --standard-picture-v1-bg: var(--color-mint-green, #47b27a);
  --standard-picture-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-standard-picture-v1[data-preset="mint-light"] {
  --standard-picture-v1-bg: var(--color-mint-green, #47b27a);
  --standard-picture-v1-illu: var(--color-light-green, #8acbc1);
}

.block-standard-picture-v1[data-preset="mint-corn"] {
  --standard-picture-v1-bg: var(--color-mint-green, #47b27a);
  --standard-picture-v1-illu: var(--color-corn-green, #94c24a);
}

.block-standard-picture-v1[data-preset="yellow-mint"] {
  --standard-picture-v1-bg: var(--color-yellow-green, #e6ce00);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-picture-v1[data-preset="yellow-light"] {
  --standard-picture-v1-bg: var(--color-yellow-green, #e6ce00);
  --standard-picture-v1-illu: var(--color-light-green, #8acbc1);
}

.block-standard-picture-v1[data-preset="yellow-corn"] {
  --standard-picture-v1-bg: var(--color-yellow-green, #e6ce00);
  --standard-picture-v1-illu: var(--color-corn-green, #94c24a);
}

.block-standard-picture-v1[data-preset="light-mint"] {
  --standard-picture-v1-bg: var(--color-light-green, #8acbc1);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-picture-v1[data-preset="light-yellow"] {
  --standard-picture-v1-bg: var(--color-light-green, #8acbc1);
  --standard-picture-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-standard-picture-v1[data-preset="light-corn"] {
  --standard-picture-v1-bg: var(--color-light-green, #8acbc1);
  --standard-picture-v1-illu: var(--color-corn-green, #94c24a);
}

.block-standard-picture-v1[data-preset="corn-mint"] {
  --standard-picture-v1-bg: var(--color-corn-green, #94c24a);
  --standard-picture-v1-illu: var(--color-mint-green, #47b27a);
}

.block-standard-picture-v1[data-preset="corn-yellow"] {
  --standard-picture-v1-bg: var(--color-corn-green, #94c24a);
  --standard-picture-v1-illu: var(--color-yellow-green, #e6ce00);
}

.block-standard-picture-v1[data-preset="corn-light"] {
  --standard-picture-v1-bg: var(--color-corn-green, #94c24a);
  --standard-picture-v1-illu: var(--color-light-green, #8acbc1);
}

.block-standard-picture-v1[data-preset="mint-yellow"],
.block-standard-picture-v1[data-preset="mint-light"],
.block-standard-picture-v1[data-preset="mint-corn"],
.block-standard-picture-v1[data-preset="yellow-mint"],
.block-standard-picture-v1[data-preset="yellow-light"],
.block-standard-picture-v1[data-preset="yellow-corn"],
.block-standard-picture-v1[data-preset="light-mint"],
.block-standard-picture-v1[data-preset="light-yellow"],
.block-standard-picture-v1[data-preset="light-corn"],
.block-standard-picture-v1[data-preset="corn-mint"],
.block-standard-picture-v1[data-preset="corn-yellow"],
.block-standard-picture-v1[data-preset="corn-light"] {
  --standard-picture-v1-foreground: var(--color-black, #333333);
  --standard-picture-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-picture-v1-focus: var(--color-black, #333333);
  --standard-picture-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* ── Illustration ── */

.block-standard-picture-v1 .standard-picture-v1__illustration {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--standard-picture-v1-illu);
  pointer-events: none;
}

.block-standard-picture-v1 .standard-picture-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity: 1;
  fill: currentColor;
  transform: translate(20%, 20%);
  shape-rendering: geometricPrecision;
}

/* ── Layout ── */

.block-standard-picture-v1 .standard-picture-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-standard-picture-v1 .standard-picture-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-standard-picture-v1 .standard-picture-v1__copy {
  position: relative;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

/* ── Copy ── */

.block-standard-picture-v1 .standard-picture-v1__heading {
  margin: 0 0 16px;
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-standard-picture-v1 .standard-picture-v1__subheadline {
  margin: 0 0 24px;
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.block-standard-picture-v1 .standard-picture-v1__divider {
  width: 100%;
  height: 1px;
  margin: 0 0 24px;
  background: currentColor;
  color: var(--standard-picture-v1-foreground);
  opacity: 0.4;
}

.block-standard-picture-v1 .standard-picture-v1__body,
.block-standard-picture-v1 .standard-picture-v1__caption {
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-standard-picture-v1 .standard-picture-v1__body {
  margin: 0;
}

.block-standard-picture-v1 .standard-picture-v1__heading p,
.block-standard-picture-v1 .standard-picture-v1__subheadline p,
.block-standard-picture-v1 .standard-picture-v1__body p,
.block-standard-picture-v1 .standard-picture-v1__caption p {
  margin: 0;
  color: inherit;
}

.block-standard-picture-v1 .standard-picture-v1__body p + p,
.block-standard-picture-v1 .standard-picture-v1__caption p + p {
  margin-top: 12px;
}

.block-standard-picture-v1 .standard-picture-v1__body ul,
.block-standard-picture-v1 .standard-picture-v1__body ol,
.block-standard-picture-v1 .standard-picture-v1__caption ul,
.block-standard-picture-v1 .standard-picture-v1__caption ol {
  margin: 12px 0 0;
  padding-left: 1.25em;
}

.block-standard-picture-v1
  .standard-picture-v1__heading
  :is(strong, b, a),
.block-standard-picture-v1
  .standard-picture-v1__subheadline
  :is(strong, b, a),
.block-standard-picture-v1
  .standard-picture-v1__body
  :is(strong, b, a),
.block-standard-picture-v1
  .standard-picture-v1__caption
  :is(strong, b, a) {
  color: var(--standard-picture-v1-foreground);
}

.block-standard-picture-v1 .standard-picture-v1__heading a,
.block-standard-picture-v1 .standard-picture-v1__subheadline a,
.block-standard-picture-v1 .standard-picture-v1__body a,
.block-standard-picture-v1 .standard-picture-v1__caption a {
  font-weight: inherit;
  text-decoration: underline;
}

/* ── CTA ── */

.block-standard-picture-v1 .standard-picture-v1__button {
  display: inline-flex;
  min-height: 48px;
  margin-top: 32px;
  padding: 12px 24px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid var(--standard-picture-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--standard-picture-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition:
    background-color 0.16s ease-in-out,
    border-color 0.16s ease-in-out,
    color 0.16s ease-in-out;
}

.block-standard-picture-v1 .standard-picture-v1__button:hover,
.block-standard-picture-v1 .standard-picture-v1__button:focus-visible,
.block-standard-picture-v1 .standard-picture-v1__button:focus {
  border-color: var(--standard-picture-v1-foreground);
  background-color: var(--standard-picture-v1-foreground);
  color: var(--standard-picture-v1-foreground-inverse);
}

.block-standard-picture-v1 .standard-picture-v1__button:focus-visible,
.block-standard-picture-v1 .standard-picture-v1__button:focus {
  outline: 3px solid var(--standard-picture-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--standard-picture-v1-focus-shadow);
}

.block-standard-picture-v1
  .standard-picture-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-standard-picture-v1 .standard-picture-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-standard-picture-v1
  .standard-picture-v1__button:hover
  .standard-picture-v1__button-icon {
  transform: translateX(3px);
}

/* ── Media column ── */

.block-standard-picture-v1 .standard-picture-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-standard-picture-v1 .standard-picture-v1__figure {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.block-standard-picture-v1 .standard-picture-v1__media,
.block-standard-picture-v1 .standard-picture-v1__placeholder {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.block-standard-picture-v1 .standard-picture-v1__media-background,
.block-standard-picture-v1 .standard-picture-v1__image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-standard-picture-v1 .standard-picture-v1__media-background {
  display: none;
  z-index: 0;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}

.block-standard-picture-v1
  .standard-picture-v1__media.standard-picture-v1__media--portrait
  .standard-picture-v1__media-background {
  display: block;
}

.block-standard-picture-v1 .standard-picture-v1__image {
  z-index: 1;
  object-fit: cover;
  object-position: center;
}

.block-standard-picture-v1
  .standard-picture-v1__media.standard-picture-v1__media--portrait
  .standard-picture-v1__image {
  object-fit: contain;
}

/* ── Original picture ratio ── */

.block-standard-picture-v1[data-original-ratio="true"]
  .standard-picture-v1__media {
  height: auto;
  aspect-ratio: auto;
  background: transparent;
}

.block-standard-picture-v1[data-original-ratio="true"]
  .standard-picture-v1__media-background,
.block-standard-picture-v1[data-original-ratio="true"]
  .standard-picture-v1__media.standard-picture-v1__media--portrait
  .standard-picture-v1__media-background {
  display: none;
}

.block-standard-picture-v1[data-original-ratio="true"]
  .standard-picture-v1__image,
.block-standard-picture-v1[data-original-ratio="true"]
  .standard-picture-v1__media.standard-picture-v1__media--portrait
  .standard-picture-v1__image {
  position: relative;
  inset: auto;
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
}

/* ── Caption ── */

.block-standard-picture-v1 .standard-picture-v1__caption {
  margin-top: 12px;
}

/* ── Responsive ── */

@media (min-width: 768px) {
  .block-standard-picture-v1 .standard-picture-v1__content {
    padding: 64px 48px;
  }

  .block-standard-picture-v1 .standard-picture-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-standard-picture-v1 .standard-picture-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-standard-picture-v1 .standard-picture-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-standard-picture-v1 .standard-picture-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-standard-picture-v1 .standard-picture-v1__button,
  .block-standard-picture-v1 .standard-picture-v1__button-icon {
    transition: none;
  }
}

/* standard-video-v1 */
/* standard-video-v1: complete independent CSS for block-standard-video-v1 */
.block-standard-video-v1 .sv-yt-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-standard-video-v1 .sv-yt-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-standard-video-v1 .sv-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}

.block-standard-video-v1 .sv-video-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-standard-video-v1 .sv-video-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-standard-video-v1 .sv-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  object-fit: cover;
}

.block-standard-video-v1 .sv-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark .block-standard-video-v1 .sv-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

.block-standard-video-v1:not([data-src="true"]) .sv-yt-container { display: none; }
.block-standard-video-v1[data-src="true"] .sv-video-wrap,
.block-standard-video-v1[data-src="true"] .sv-placeholder { display: none; }

.block-standard-video-v1 .sv-yt-container {
  position: relative;
}

.block-standard-video-v1 .sv-consent-gate {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  background: var(--color-forest-green, #004432);
  background-size: cover;
  background-position: center;
  text-align: center;
  isolation: isolate;
}

.block-standard-video-v1 .sv-consent-gate::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  z-index: 0;
  pointer-events: none;
}

.block-standard-video-v1 .sv-consent-text {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(12px, 1.2vw, 14px);
  line-height: 1.55;
  color: var(--color-white);
  max-width: 480px;
  margin: 0;
  position: relative;
  z-index: 1;
}

.block-standard-video-v1 .sv-consent-btn {
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 22px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  background: transparent;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  z-index: 1;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.block-standard-video-v1 .sv-consent-btn:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: var(--color-white, #FFFFFF);
}

.block-standard-video-v1 .sv-consent-btn:focus-visible {
  outline: 3px solid var(--color-mint-green, #47B27A);
  outline-offset: 4px;
}

.block-standard-video-v1 .sv-consent-icon {
  flex-shrink: 0;
}


.block-standard-video-v1 .sv-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-standard-video-v1 .sv-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-standard-video-v1 .sv-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-standard-video-v1 .sv-caption a { color: var(--color-accent-dark); }
.block-standard-video-v1 .sv-caption a:hover { text-decoration: none; }

/* Revoke YouTube consent */
.block-standard-video-v1 .sv-revoke-wrap {
  padding: 6px 0 0;
  text-align: right;
}
.block-standard-video-v1 .sv-revoke-btn {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(10px, 1.1vw, 11px);
  color: var(--color-grey-60, #666666);
  background: none;
  border: none;
  padding: 2px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}
.dark .block-standard-video-v1 .sv-revoke-btn {
  color: rgba(255, 255, 255, 0.3);
}
.block-standard-video-v1 .sv-revoke-btn:hover {
  color: var(--color-forest-green, #004432);
}
.dark .block-standard-video-v1 .sv-revoke-btn:hover {
  color: rgba(255, 255, 255, 0.65);
}
.block-standard-video-v1 .sv-revoke-btn:focus-visible {
  outline: 2px solid #47b27a;
  outline-offset: 2px;
  border-radius: 2px;
}

/* Lights-out button */
.block-standard-video-v1 .sv-inner {
  position: relative;
}

.block-standard-video-v1 .sv-lights-btn {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.42);
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.block-standard-video-v1 .sv-lights-btn:hover {
  background: rgba(0, 0, 0, 0.65);
  color: var(--color-white);
}
.block-standard-video-v1 .sv-lights-btn:focus-visible {
  outline: 3px solid #47b27a;
  outline-offset: 3px;
}
/* Cinema mode: video player punches through overlay, button floats above */
.block-standard-video-v1[data-lights="on"] .sv-yt-container,
.block-standard-video-v1[data-lights="on"] .sv-video-wrap {
  position: relative;
  z-index: 9992;
  border-radius: 8px;
  overflow: hidden;
}
.block-standard-video-v1[data-lights="on"] .sv-lights-btn {
  z-index: 9993;
  background: rgba(2, 10, 4, 0.85);
  color: #c6f080;
  border-color: rgba(198, 240, 128, 0.3);
}
.block-standard-video-v1 .sv-lights-btn .sv-lb-off { display: block; }
.block-standard-video-v1 .sv-lights-btn .sv-lb-on  { display: none; }
.block-standard-video-v1[data-lights="on"] .sv-lights-btn .sv-lb-off { display: none; }
.block-standard-video-v1[data-lights="on"] .sv-lights-btn .sv-lb-on  { display: block; }

/* Overlay injected into body by JS */
.standard-video-v1-lights-overlay {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(2, 10, 4, 0.92);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.standard-video-v1-lights-forest {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}

.standard-video-v1-lights-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes standard-video-v1-fly-glow {
  0%, 100% { opacity: 0.15; box-shadow: 0 0 4px 2px rgba(160, 240, 100, 0.25); }
  50%       { opacity: 0.9;  box-shadow: 0 0 8px 4px rgba(190, 255, 130, 0.7); }
}
@keyframes standard-video-v1-fly-float {
  0%   { transform: translate(0, 0); }
  33%  { transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5)); }
  66%  { transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy)); }
  100% { transform: translate(0, 0); }
}
.standard-video-v1-lights-fly {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    standard-video-v1-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    standard-video-v1-fly-float var(--fly-float, 5s) ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .standard-video-v1-lights-overlay { transition: none; }
  .standard-video-v1-lights-fly { animation: none; opacity: 0.5; }
}


/* Block layout and overrides */
/* Standard Video (block-standard-video-v1) */

.block-standard-video-v1 {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-moss-green, #13735f);
  --standard-video-v1-foreground: var(--color-white, #ffffff);
  --standard-video-v1-foreground-inverse: var(--color-forest-green, #004432);
  --standard-video-v1-focus: var(--color-white, #ffffff);
  --standard-video-v1-focus-shadow: rgba(255, 255, 255, 0.32);
  position: relative;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background-color: var(--standard-video-v1-bg);
  color: var(--standard-video-v1-foreground);
}

/* Solid presets: hide decorative illustration */
.block-standard-video-v1[data-preset^="solid-"] .standard-video-v1__illustration {
  display: none;
}

/* White */
.block-standard-video-v1[data-preset="solid-white"] {
  --standard-video-v1-bg: var(--color-white, #ffffff);
  --standard-video-v1-foreground: var(--color-forest-green, #004432);
  --standard-video-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-video-v1-focus: var(--color-forest-green, #004432);
  --standard-video-v1-focus-shadow: rgba(0, 68, 50, 0.32);
}

/* Light Grey */
.block-standard-video-v1[data-preset="solid-lightgrey"] {
  --standard-video-v1-bg: var(--color-light-grey, #f7f7f7);
  --standard-video-v1-foreground: var(--color-black, #333333);
  --standard-video-v1-foreground-inverse: var(--color-light-grey, #f7f7f7);
  --standard-video-v1-focus: var(--color-black, #333333);
  --standard-video-v1-focus-shadow: rgba(0, 68, 50, 0.32);
}

/* Dark solid backgrounds */
.block-standard-video-v1[data-preset="solid-mossgreen"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735f);
}

.block-standard-video-v1[data-preset="solid-red"] {
  --standard-video-v1-bg: var(--color-red, #e52322);
}

.block-standard-video-v1[data-preset="solid-darkred"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
}


.block-standard-video-v1[data-preset="solid-forestgreen"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
}

.block-standard-video-v1[data-preset="solid-mossgreen"],
.block-standard-video-v1[data-preset="solid-red"],
.block-standard-video-v1[data-preset="solid-darkred"],
.block-standard-video-v1[data-preset="solid-forestgreen"] {
  --standard-video-v1-foreground: var(--color-white, #ffffff);
  --standard-video-v1-foreground-inverse: var(--standard-video-v1-bg);
  --standard-video-v1-focus: var(--color-white, #ffffff);
  --standard-video-v1-focus-shadow: rgba(255, 255, 255, 0.32);
}

/* Light solid backgrounds */
.block-standard-video-v1[data-preset="solid-mint"] {
  --standard-video-v1-bg: var(--color-mint-green, #47b27a);
}

.block-standard-video-v1[data-preset="solid-lightgreen"] {
  --standard-video-v1-bg: var(--color-light-green, #8acbc1);
}

.block-standard-video-v1[data-preset="solid-yellow"] {
  --standard-video-v1-bg: var(--color-yellow-green, #e6ce00);
}

.block-standard-video-v1[data-preset="solid-corngreen"] {
  --standard-video-v1-bg: var(--color-corn-green, #94c24a);
}

.block-standard-video-v1[data-preset="solid-mint"],
.block-standard-video-v1[data-preset="solid-lightgreen"],
.block-standard-video-v1[data-preset="solid-yellow"],
.block-standard-video-v1[data-preset="solid-corngreen"] {
  --standard-video-v1-foreground: var(--color-black, #333333);
  --standard-video-v1-foreground-inverse: var(--color-white, #ffffff);
  --standard-video-v1-focus: var(--color-black, #333333);
  --standard-video-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

/* ── Illustrated Styles: light foreground ───────────────── */

.block-standard-video-v1[data-preset="forest-red"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-red, #E52322);
}

.block-standard-video-v1[data-preset="forest-moss"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-moss-green, #13735F);
}

.block-standard-video-v1[data-preset="forest-darkred"] {
  --standard-video-v1-bg: var(--color-forest-green, #004432);
  --standard-video-v1-illu: var(--color-dark-red, #861135);
}

.block-standard-video-v1[data-preset="red-forest"] {
  --standard-video-v1-bg: var(--color-red, #E52322);
  --standard-video-v1-illu: var(--color-forest-green, #004432);
}

.block-standard-video-v1[data-preset="red-moss"] {
  --standard-video-v1-bg: var(--color-red, #E52322);
  --standard-video-v1-illu: var(--color-moss-green, #13735F);
}

.block-standard-video-v1[data-preset="red-darkred"] {
  --standard-video-v1-bg: var(--color-red, #E52322);
  --standard-video-v1-illu: var(--color-dark-red, #861135);
}

.block-standard-video-v1[data-preset="moss-forest"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735F);
  --standard-video-v1-illu: var(--color-forest-green, #004432);
}

.block-standard-video-v1[data-preset="moss-red"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735F);
  --standard-video-v1-illu: var(--color-red, #E52322);
}

.block-standard-video-v1[data-preset="moss-darkred"] {
  --standard-video-v1-bg: var(--color-moss-green, #13735F);
  --standard-video-v1-illu: var(--color-dark-red, #861135);
}

.block-standard-video-v1[data-preset="darkred-forest"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
  --standard-video-v1-illu: var(--color-forest-green, #004432);
}

.block-standard-video-v1[data-preset="darkred-red"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
  --standard-video-v1-illu: var(--color-red, #E52322);
}

.block-standard-video-v1[data-preset="darkred-moss"] {
  --standard-video-v1-bg: var(--color-dark-red, #861135);
  --standard-video-v1-illu: var(--color-moss-green, #13735F);
}

/* ── Illustrated Styles: dark foreground ────────────────── */

.block-standard-video-v1[data-preset="mint-yellow"] {
  --standard-video-v1-bg: var(--color-mint-green, #47B27A);
  --standard-video-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-standard-video-v1[data-preset="mint-light"] {
  --standard-video-v1-bg: var(--color-mint-green, #47B27A);
  --standard-video-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-standard-video-v1[data-preset="mint-corn"] {
  --standard-video-v1-bg: var(--color-mint-green, #47B27A);
  --standard-video-v1-illu: var(--color-corn-green, #94C24A);
}

.block-standard-video-v1[data-preset="yellow-mint"] {
  --standard-video-v1-bg: var(--color-yellow-green, #E6CE00);
  --standard-video-v1-illu: var(--color-mint-green, #47B27A);
}

.block-standard-video-v1[data-preset="yellow-light"] {
  --standard-video-v1-bg: var(--color-yellow-green, #E6CE00);
  --standard-video-v1-illu: var(--color-light-green, #8ACBC1);
}

.block-standard-video-v1[data-preset="yellow-corn"] {
  --standard-video-v1-bg: var(--color-yellow-green, #E6CE00);
  --standard-video-v1-illu: var(--color-corn-green, #94C24A);
}

.block-standard-video-v1[data-preset="light-mint"] {
  --standard-video-v1-bg: var(--color-light-green, #8ACBC1);
  --standard-video-v1-illu: var(--color-mint-green, #47B27A);
}

.block-standard-video-v1[data-preset="light-yellow"] {
  --standard-video-v1-bg: var(--color-light-green, #8ACBC1);
  --standard-video-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-standard-video-v1[data-preset="light-corn"] {
  --standard-video-v1-bg: var(--color-light-green, #8ACBC1);
  --standard-video-v1-illu: var(--color-corn-green, #94C24A);
}

.block-standard-video-v1[data-preset="corn-mint"] {
  --standard-video-v1-bg: var(--color-corn-green, #94C24A);
  --standard-video-v1-illu: var(--color-mint-green, #47B27A);
}

.block-standard-video-v1[data-preset="corn-yellow"] {
  --standard-video-v1-bg: var(--color-corn-green, #94C24A);
  --standard-video-v1-illu: var(--color-yellow-green, #E6CE00);
}

.block-standard-video-v1[data-preset="corn-light"] {
  --standard-video-v1-bg: var(--color-corn-green, #94C24A);
  --standard-video-v1-illu: var(--color-light-green, #8ACBC1);
}

/* ── Illustrated Styles: dark foreground treatment ──────── */

.block-standard-video-v1[data-preset="mint-yellow"],
.block-standard-video-v1[data-preset="mint-light"],
.block-standard-video-v1[data-preset="mint-corn"],
.block-standard-video-v1[data-preset="yellow-mint"],
.block-standard-video-v1[data-preset="yellow-light"],
.block-standard-video-v1[data-preset="yellow-corn"],
.block-standard-video-v1[data-preset="light-mint"],
.block-standard-video-v1[data-preset="light-yellow"],
.block-standard-video-v1[data-preset="light-corn"],
.block-standard-video-v1[data-preset="corn-mint"],
.block-standard-video-v1[data-preset="corn-yellow"],
.block-standard-video-v1[data-preset="corn-light"] {
  --standard-video-v1-foreground: var(--color-black, #333333);
  --standard-video-v1-foreground-inverse: var(--color-white, #FFFFFF);
  --standard-video-v1-focus: var(--color-black, #333333);
  --standard-video-v1-focus-shadow: rgba(51, 51, 51, 0.32);
}

.block-standard-video-v1 .standard-video-v1__illustration {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow: clip;
  color: var(--standard-video-v1-illu);
  pointer-events: none;
}

.block-standard-video-v1 .standard-video-v1__illustration-svg {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: 640%;
  overflow: visible;
  opacity:1;
  fill: currentColor;
  transform: translate(20%, 20%);
  shape-rendering: geometricPrecision;
}

.block-standard-video-v1 .standard-video-v1__inner {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-standard-video-v1 .standard-video-v1__content {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 400px;
  align-items: center;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-standard-video-v1 .standard-video-v1__copy {
  position: relative;
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-standard-video-v1 .standard-video-v1__heading {
  margin: 0 0 16px;
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.block-standard-video-v1 .standard-video-v1__subheadline {
  margin: 0 0 24px;
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.block-standard-video-v1 .standard-video-v1__divider {
  width: 100%;
  height: 1px;
  margin: 0 0 24px;
  background: currentColor;
  color: var(--standard-video-v1-foreground);
  opacity: 0.4;
}

.block-standard-video-v1 .standard-video-v1__body,
.block-standard-video-v1[data-video-player="v2"] .standard-video-v1__caption {
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-standard-video-v1 .standard-video-v1__body {
  margin: 0;
}

.block-standard-video-v1 .standard-video-v1__heading p,
.block-standard-video-v1 .standard-video-v1__subheadline p,
.block-standard-video-v1 .standard-video-v1__body p,
.block-standard-video-v1 .standard-video-v1__caption p {
  margin: 0;
  color: inherit;
}

.block-standard-video-v1 .standard-video-v1__body p + p,
.block-standard-video-v1 .standard-video-v1__caption p + p {
  margin-top: 12px;
}

.block-standard-video-v1 .standard-video-v1__body ul,
.block-standard-video-v1 .standard-video-v1__body ol,
.block-standard-video-v1 .standard-video-v1__caption ul,
.block-standard-video-v1 .standard-video-v1__caption ol {
  margin: 12px 0 0;
  padding-left: 1.25em;
}

.block-standard-video-v1 .standard-video-v1__heading :is(strong, b, a),
.block-standard-video-v1 .standard-video-v1__subheadline :is(strong, b, a),
.block-standard-video-v1 .standard-video-v1__body :is(strong, b, a),
.block-standard-video-v1 .standard-video-v1__caption :is(strong, b, a) {
  color: var(--standard-video-v1-foreground);
}

.block-standard-video-v1 .standard-video-v1__heading a,
.block-standard-video-v1 .standard-video-v1__subheadline a,
.block-standard-video-v1 .standard-video-v1__body a,
.block-standard-video-v1[data-video-player="v2"] .standard-video-v1__caption a {
  color: var(--standard-video-v1-foreground);
  font-weight: inherit;
  text-decoration: underline;
}

.block-standard-video-v1 .standard-video-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  margin-top: 32px;
  padding: 12px 24px;
  border: 1px solid var(--standard-video-v1-foreground);
  border-radius: 4rem;
  box-sizing: border-box;
  color: var(--standard-video-v1-foreground);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.16s ease-in-out, border-color 0.16s ease-in-out, color 0.16s ease-in-out;
}

.block-standard-video-v1 .standard-video-v1__button:hover,
.block-standard-video-v1 .standard-video-v1__button:focus-visible,
.block-standard-video-v1 .standard-video-v1__button:focus {
  border-color: var(--standard-video-v1-foreground);
  background-color: var(--standard-video-v1-foreground);
  color: var(--standard-video-v1-foreground-inverse);
}

.block-standard-video-v1 .standard-video-v1__button:focus-visible,
.block-standard-video-v1 .standard-video-v1__button:focus {
  outline: 3px solid var(--standard-video-v1-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 6px var(--standard-video-v1-focus-shadow);
}

.block-standard-video-v1 .standard-video-v1__button:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

.block-standard-video-v1 .standard-video-v1__button-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-standard-video-v1 .standard-video-v1__button:hover .standard-video-v1__button-icon {
  transform: translateX(3px);
}

.block-standard-video-v1 .standard-video-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding: 0 24px 64px;
  box-sizing: border-box;
}

.block-standard-video-v1 .standard-video-v1__figure {
  position: relative;
  width: 100%;
  min-width: 0;
  margin: 0;
}

.block-standard-video-v1 .sv-lights-btn {
  top: 8px;
  right: 8px;
}

.block-standard-video-v1[data-video-player="v2"] .standard-video-v1__caption {
  margin: 12px 0 0;
}

.block-standard-video-v1[data-video-player="v2"] .sv-consent-text {
  color: var(--color-white, #ffffff);
}

.block-standard-video-v1[data-video-player="v2"] .sv-revoke-btn {
  color: var(--standard-video-v1-foreground);
  opacity: 0.7;
}

.block-standard-video-v1[data-video-player="v2"] .sv-revoke-btn:hover {
  color: var(--standard-video-v1-foreground);
  opacity: 1;
}

.block-standard-video-v1[data-video-player="v2"] .sv-revoke-btn:focus-visible {
  outline-color: var(--standard-video-v1-focus);
}

/* Let the shared player escape the decorative stacking context in cinema mode. */
.block-standard-video-v1[data-lights="on"] {
  isolation: auto;
}

.block-standard-video-v1[data-lights="on"] .standard-video-v1__inner {
  z-index: auto;
}

@media (min-width: 768px) {
  .block-standard-video-v1 .standard-video-v1__content {
    padding: 64px 48px;
  }

  .block-standard-video-v1 .standard-video-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-standard-video-v1 .standard-video-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: stretch;
    gap: 0 32px;
    padding: 0 80px;
    box-sizing: border-box;
  }

  .block-standard-video-v1 .standard-video-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-standard-video-v1 .standard-video-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-standard-video-v1 .standard-video-v1__button,
  .block-standard-video-v1 .standard-video-v1__button-icon {
    transition: none;
  }
}


/* stories-header-v1 */
/* ─── Wilderness Stories Header (stories-header-v1) ──────────────────────── */

.block-stories-header-v1 {
  background: #000000;
  position: relative;
  overflow-x: clip;
  max-width: 100%;
}
.dark .block-stories-header-v1 {
  background: #000000;
  position: relative;
  overflow-x: clip;
  max-width: 100%;
}

.block-stories-header-v1 .sh-sticky-nav {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: color-mix(in srgb, var(--color-moss-green, #13735F) 60%, transparent);
  backdrop-filter: blur(24px) saturate(1.5);
  -webkit-backdrop-filter: blur(24px) saturate(1.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.block-stories-header-v1 .sh-sticky-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
  height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.block-stories-header-v1 .sh-sticky-logo {
  height: 16px;
  width: auto;
  flex-shrink: 0;
  display: block;
}

.block-stories-header-v1 .sh-sticky-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  flex: 1;
}

.block-stories-header-v1 .sh-search-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: none;
  padding: 0 4px;
  color: rgba(255, 255, 255, 0.65);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  cursor: pointer;
  transition: color 0.15s;
  flex-shrink: 0;
}
.block-stories-header-v1 .sh-search-toggle:hover {
  color: rgba(255, 255, 255, 0.95);
}
.block-stories-header-v1 .sh-search-toggle-label {
  display: inline;
}

.block-stories-header-v1 .sh-mega-panel {
  overflow: hidden;
  height: 0;
  opacity: 0;
  pointer-events: none;
  transition: height 0.32s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.22s ease;
}
.block-stories-header-v1 .sh-mega-panel.is-open {
  opacity: 1;
  pointer-events: auto;
}
.block-stories-header-v1 .sh-mega-content {
  max-width: 1440px;
  margin: 0 auto;
  padding: 16px 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.block-stories-header-v1 .sh-mega-row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
}

.block-stories-header-v1 .sh-mega-icon {
  color: rgba(255, 255, 255, 0.45);
  flex-shrink: 0;
}
.block-stories-header-v1 .sh-mega-input {
  background: none;
  border: none;
  outline: none;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  width: 100%;
}
.block-stories-header-v1 .sh-mega-input::placeholder {
  color: rgba(255, 255, 255, 0.4);
}
.block-stories-header-v1 .sh-mega-close {
  background: none;
  border: none;
  color: rgba(255, 255, 255, 0.45);
  cursor: pointer;
  padding: 4px;
  flex-shrink: 0;
  transition: color 0.15s;
}
.block-stories-header-v1 .sh-mega-close:hover {
  color: rgba(255, 255, 255, 0.9);
}
.block-stories-header-v1 .sh-mega-categories {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px;
  max-width: 640px;
  margin: 14px auto 0;
}
.block-stories-header-v1 .sh-mega-cat {
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 22px;
  padding: 5px 14px;
  color: rgba(255, 255, 255, 0.7);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.block-stories-header-v1 .sh-mega-cat:hover,
.block-stories-header-v1 .sh-mega-cat.is-active {
  background: rgba(255, 255, 255, 0.15);
  color: var(--color-white, #FFFFFF);
}

.block-stories-header-v1 .sh-inner {
  max-width: none;
  margin: 0;
  padding: 0;
}

.block-stories-header-v1 .sh-text {
  margin-bottom: 48px;
}

.block-stories-header-v1 .sh-heading {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--color-white, #FFFFFF);
  font-size: clamp(1.5rem, 3vw, 2rem);
}

.block-stories-header-v1 .sh-logo {
  height: 1em;
  width: auto;
  flex-shrink: 0;
  display: block;
}

.block-stories-header-v1 .sh-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1em;
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  line-height: 1.05;
  margin: 0;
}
.dark .block-stories-header-v1 .sh-title {
  color: var(--color-white, #FFFFFF);
}

.block-stories-header-v1 .sh-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.6;
  max-width: 680px;
}
.dark .block-stories-header-v1 .sh-desc {
  color: rgba(255, 255, 255, 0.6);
}

.block-stories-header-v1 .sh-card {
  display: block;
  position: relative;
  background: none;
}

.block-stories-header-v1 .sh-card-img-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.block-stories-header-v1 .sh-card-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  pointer-events: none;
  z-index: 1;
}
.block-stories-header-v1 .sh-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
  transition: opacity 1.4s ease, transform 0.4s ease;
}
.block-stories-header-v1 .sh-card-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.block-stories-header-v1.is-visible .sh-card-img {
  opacity: 1;
}
.block-stories-header-v1 .sh-card:hover .sh-card-img {
  transform: scale(1.04);
}
.block-stories-header-v1 .sh-card-title-link {
  text-decoration: none;
  color: inherit;
  display: block;
}
.block-stories-header-v1 .sh-card-title-link:hover .sh-card-title {
  opacity: 0.82;
}
.block-stories-header-v1 .sh-card-title-link:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.5);
  outline-offset: 4px;
  border-radius: 2px;
}

.block-stories-header-v1 .sh-card-read-more {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 1rem;
  color: var(--color-white, #FFFFFF);
  text-decoration: none;
  transition: color 0.2s;
  cursor: pointer;
}
.block-stories-header-v1 .sh-card-read-more:hover {
  color: rgba(255, 255, 255, 0.5);
}
.block-stories-header-v1 .sh-card-read-more svg {
  transition: transform 0.2s;
  flex-shrink: 0;
}
.block-stories-header-v1 .sh-card-read-more:hover svg {
  transform: translateX(3px);
}
.block-stories-header-v1 .sh-card-read-more:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.4);
  outline-offset: 2px;
  border-radius: 2px;
}

.block-stories-header-v1 .sh-card-body {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  padding: 80px 0 32px;
  background: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.42) 38%, rgba(0,0,0,0.7) 68%);
  opacity: 0;
  transition: opacity 0.9s ease 0.6s;
}
.block-stories-header-v1.is-visible .sh-card-body {
  opacity: 1;
}
.block-stories-header-v1 .sh-card-body-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.block-stories-header-v1 .sh-card-category {
  display: none;
  align-self: flex-start;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 8px;
  padding: 4px 10px;
  line-height: 1.4;
}
.block-stories-header-v1 .sh-card-category:not(:empty) {
  display: inline-block;
}

.block-stories-header-v1 .sh-card-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.25rem, 2.5vw, 2rem);
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  line-height: 1.2;
  margin: 0;
}

.block-stories-header-v1 .sh-card-date {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.6);
}

/* Title row — full-width gradient at top of hero */
.block-stories-header-v1 .sh-card-top {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.55) 0%, transparent 100%);
  pointer-events: none;
}

.block-stories-header-v1 .sh-card-top-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 24px 24px 100px;
}

.block-stories-header-v1 .sh-card-heading {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(1.25rem, 2.2vw, 2rem);
  font-weight: 700;
  color: var(--color-white, #FFFFFF);
  line-height: 1;
  letter-spacing: -0.01em;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

@media (min-width: 768px) {
  .block-stories-header-v1 .sh-sticky-inner { padding: 0 48px; }
  .block-stories-header-v1 .sh-mega-content { padding: 16px 48px 20px; }
  .block-stories-header-v1 .sh-card-body { padding: 100px 0 40px; }
  .block-stories-header-v1 .sh-card-body-inner { padding: 0 48px; }
  .block-stories-header-v1 .sh-card-top-inner { padding: 32px 48px 120px; }
}

@media (min-width: 1024px) {
  .block-stories-header-v1 .sh-sticky-inner { padding: 0 80px; }
  .block-stories-header-v1 .sh-mega-content { padding: 16px 80px 20px; }
  .block-stories-header-v1 .sh-card-body { padding: 120px 0 48px; }
  .block-stories-header-v1 .sh-card-body-inner { padding: 0 80px; }
  .block-stories-header-v1 .sh-card-top-inner { padding: 40px 80px 140px; }
}


/* story-author-v1 */
/* ── Story Author (block-story-author-v1) ───────────────────── */

.block-story-author-v1 {
  --story-author-v1-copy: var(--color-black, #333333);
  --story-author-v1-muted: var(--color-grey-80, #4d4d4d);
  --story-author-v1-link: var(--color-moss-green, #13735f);
  --story-author-v1-line: rgba(0, 68, 50, 0.2);
  --story-author-v1-avatar-bg: var(--color-grey-20, #dcdcdc);
  background: var(--color-white, #ffffff);
  color: var(--story-author-v1-copy);
}

.dark .block-story-author-v1 {
  --story-author-v1-copy: var(--color-text-dark, #f0f4f2);
  --story-author-v1-muted: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.64));
  --story-author-v1-link: var(--color-accent-dark, #47b27a);
  --story-author-v1-line: rgba(255, 255, 255, 0.2);
  --story-author-v1-avatar-bg: rgba(255, 255, 255, 0.08);
  background: var(--color-bg-dark, #0f1a14);
}

.block-story-author-v1 .story-author-v1__inner {
  width: 100%;
  max-width: 860px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 24px 24px;
}

.block-story-author-v1 .story-author-v1__headline {
  margin: 0 0 24px;
  color: var(--story-author-v1-copy);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
}

.block-story-author-v1 .story-author-v1__author {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  min-width: 0;
  padding-top: 24px;
  border-top: 1px solid var(--story-author-v1-line);
}

.block-story-author-v1 .story-author-v1__media {
  width: 96px;
  height: 96px;
  overflow: hidden;
  border-radius: 50%;
  background: var(--story-author-v1-avatar-bg);
}

.block-story-author-v1 .story-author-v1__avatar,
.block-story-author-v1 .story-author-v1__placeholder {
  display: block;
  width: 100%;
  height: 100%;
}

.block-story-author-v1 .story-author-v1__avatar {
  object-fit: cover;
  object-position: center;
}

.block-story-author-v1 .story-author-v1__placeholder {
  background:
    linear-gradient(135deg, rgba(0, 68, 50, 0.08), rgba(71, 178, 122, 0.16)),
    var(--story-author-v1-avatar-bg);
}

.block-story-author-v1 .story-author-v1__content {
  min-width: 0;
}

.block-story-author-v1 .story-author-v1__name {
  margin: 0;
  color: var(--story-author-v1-copy);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.block-story-author-v1 .story-author-v1__position {
  margin-top: 6px;
  color: var(--story-author-v1-muted);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}

.block-story-author-v1 .story-author-v1__position p,
.block-story-author-v1 .story-author-v1__description p {
  margin: 0;
}

.block-story-author-v1 .story-author-v1__contact-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  margin-top: 16px;
}

.block-story-author-v1 .story-author-v1__contact-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: var(--story-author-v1-link);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.block-story-author-v1 .story-author-v1__contact-link span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.block-story-author-v1 .story-author-v1__contact-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}

.block-story-author-v1 .story-author-v1__contact-link:hover {
  text-decoration-color: transparent;
}

.block-story-author-v1 .story-author-v1__contact-link:focus-visible {
  border-radius: 2px;
  outline: 3px solid var(--story-author-v1-link);
  outline-offset: 3px;
}

.block-story-author-v1 .story-author-v1__description {
  margin-top: 24px;
  color: var(--story-author-v1-copy);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.75;
  overflow-wrap: anywhere;
}

.block-story-author-v1 .story-author-v1__description > * + * {
  margin-top: 16px;
}

.block-story-author-v1 .story-author-v1__description ul,
.block-story-author-v1 .story-author-v1__description ol {
  padding-left: 1.4em;
}

.block-story-author-v1 .story-author-v1__description a {
  color: var(--story-author-v1-link);
  font-weight: 600;
  text-decoration: underline;
}

.block-story-author-v1 .story-author-v1__description a:hover {
  text-decoration: none;
}

.block-story-author-v1 .story-author-v1__description a:focus-visible {
  border-radius: 2px;
  outline: 3px solid var(--story-author-v1-link);
  outline-offset: 3px;
}

@media (max-width: 767px) {
  .block-story-author-v1 .story-author-v1__inner {
    padding: 24px;
  }
}

@media (min-width: 768px) {
  .block-story-author-v1 .story-author-v1__author {
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 32px;
    padding-top: 32px;
  }

  .block-story-author-v1 .story-author-v1__media {
    width: 112px;
    height: 112px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-story-author-v1 .story-author-v1__contact-link {
    transition: none;
  }
}

.block-story-author-v1 .story-author-v1__description[data-empty="true"] {
  display: none;
}

.block-story-author-v1[data-has-description="false"] .story-author-v1__inner {
  padding-bottom: 8px;
}

@media (min-width: 768px) {
  .block-story-author-v1[data-has-description="false"] .story-author-v1__author {
    align-items: center;
  }
}

.block-story-author-v1[data-has-description="false"] .story-author-v1__inner {
  padding-bottom: 32px;
}

/* story-cta-v1 */
/* Story CTA: full-width background, no vertical spacing. */
.block-story-cta-v1 {
  --story-cta-v1-bg: var(--color-white, #ffffff);

  margin: 0;
  padding: 0;
  background: var(--story-cta-v1-bg);
}

.block-story-cta-v1[data-background-color="#FFFFFF"] {
  --story-cta-v1-bg: var(--color-white, #ffffff);
}

.block-story-cta-v1[data-background-color="#F7F7F7"] {
  --story-cta-v1-bg: var(--color-light-grey, #f7f7f7);
}

/* Same content viewport as the other Story Exclusive blocks. */
.block-story-cta-v1 .story-cta-v1__inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

.block-story-cta-v1[data-alignment="center"]
  .story-cta-v1__inner {
  justify-content: center;
}

.block-story-cta-v1[data-alignment="right"]
  .story-cta-v1__inner {
  justify-content: flex-end;
}

/* Standard: black outline, transparent background. */
.block-story-cta-v1 .story-cta-v1__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  min-width: 0;
  min-height: 48px;
  max-width: 100%;
  margin: 0;
  padding: 12px 24px;
  border: 1px solid var(--color-black, #333333);
  border-radius: 999px;
  background: transparent;
  color: var(--color-black, #333333);
  font-family: var(--font-heading, "Sora", sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color 0.16s ease,
    border-color 0.16s ease,
    color 0.16s ease;
}

.block-story-cta-v1 .story-cta-v1__label {
  min-width: 0;
  overflow-wrap: anywhere;
}

.block-story-cta-v1 .story-cta-v1__chevron {
  display: block;
  flex-shrink: 0;
  width: 9px;
  height: 14px;
}

.block-story-cta-v1 .story-cta-v1__button:hover {
  background: var(--color-black, #333333);
  color: var(--color-white, #ffffff);
}

/* Donation: brand yellow. */
.block-story-cta-v1[data-button-style="donation"]
  .story-cta-v1__button {
  border-color: var(--color-yellow-green, #e6ce00);
  background: var(--color-yellow-green, #e6ce00);
  color: var(--color-forest-green, #004432);
}

.block-story-cta-v1[data-button-style="donation"]
  .story-cta-v1__button:hover {
  border-color: var(--color-moss-green, #13735f);
  background: var(--color-moss-green, #13735f);
  color: var(--color-white, #ffffff);
}

/* Keyboard focus. */
.block-story-cta-v1 .story-cta-v1__button:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: 4px;
}

/* Mobile: preserve Story horizontal inset, zero vertical padding. */
@media (max-width: 767px) {
  .block-story-cta-v1 .story-cta-v1__inner {
    padding: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-story-cta-v1 .story-cta-v1__button {
    transition: none;
  }
}

/* story-gallery-v1 */
/* ── Story Gallery (block-story-gallery-v1) ─────────────────── */

.block-story-gallery-v1 {
  --sg-slide-width: calc(100vw - 48px);
  --sg-track-gap: 16px;
  --sg-track-gutter: 24px;
  background: var(--color-white, #FFFFFF);
}
.dark .block-story-gallery-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-gallery-v1 .sg-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 16px;
}

/* ── Carousel ── */

.block-story-gallery-v1 .sg-carousel {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.block-story-gallery-v1 .sg-track {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--sg-track-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  overscroll-behavior-x: none;
  touch-action: auto;
  padding: 16px 0 16px var(--sg-track-gutter);
  margin: 0;
}
.block-story-gallery-v1 .sg-track::after {
  content: '';
  flex: 0 0 max(0px, calc(var(--sg-track-gutter) - var(--sg-track-gap)));
}
.block-story-gallery-v1 .sg-track::-webkit-scrollbar { display: none; }

.block-story-gallery-v1 .sg-slide {
  flex: 0 0 var(--sg-slide-width);
  scroll-snap-align: center;
  margin: 0;
}
.block-story-gallery-v1.sg-js-ready .sg-slide {
  transform-origin: center center;
  will-change: transform;
}

@media (min-width: 860px) {
  .block-story-gallery-v1 {
    --sg-slide-width: 812px;
    --sg-track-gap: 32px;
    --sg-track-gutter: max(16px, calc(50vw - 406px));
  }
}

/* ── Image ── */

.block-story-gallery-v1 .sg-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: transparent;
}
.dark .block-story-gallery-v1 .sg-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-story-gallery-v1 .sg-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}
.block-story-gallery-v1 .sg-img-wrap.sg-portrait .sg-bg { display: block; }

.block-story-gallery-v1 .sg-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.block-story-gallery-v1 .sg-img-wrap.sg-portrait .sg-img { object-fit: contain; }

/* ── Inactive slide dim overlay ── */

.block-story-gallery-v1 .sg-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: rgba(2, 10, 4, 0.52);
  -webkit-backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  backdrop-filter: blur(14px) brightness(0.62) saturate(0.85);
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
/* overlay fades in on non-active slides only after JS is ready */
.block-story-gallery-v1.sg-js-ready .sg-slide:not(.sg-active) .sg-img-wrap::after { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .block-story-gallery-v1 .sg-img-wrap::after { transition: none; }
}

/* ── Caption ── */

.block-story-gallery-v1 .sg-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark .block-story-gallery-v1 .sg-desc {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
.block-story-gallery-v1 .sg-desc p { margin: 0 0 6px; }
.block-story-gallery-v1 .sg-desc p:last-child { margin-bottom: 0; }
.block-story-gallery-v1 .sg-desc a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-story-gallery-v1 .sg-desc a { color: var(--color-accent-dark); }
.block-story-gallery-v1 .sg-desc a:hover { text-decoration: none; }

/* ── Navigation (same style as 8-step) ── */

.block-story-gallery-v1 .sg-nav {
  position: relative;
  z-index: 10;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 20px;
  touch-action: auto;
}

.block-story-gallery-v1 .sg-dots {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
  margin-right: 8px;
}

.block-story-gallery-v1 .sg-dot {
  position: relative;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--color-grey-40, #ABABAB);
}

.block-story-gallery-v1 .sg-dot::before {
  content: '';
  position: absolute;
  inset: -4px;
  border: 1.5px solid var(--color-forest-green, #004432);
  border-radius: inherit;
  opacity: 0;
  transform: scale(0.6);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), opacity 400ms ease;
}

.block-story-gallery-v1 .sg-dot.is-active::before {
  opacity: 1;
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1), ease;
}

.block-story-gallery-v1 .sg-dot::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--color-forest-green, #004432);
  transform: scale(0);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.block-story-gallery-v1 .sg-dot.is-active::after {
  transform: scale(1);
  transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
}

@media (prefers-reduced-motion: reduce) {
  .block-story-gallery-v1 .sg-dot::before,
  .block-story-gallery-v1 .sg-dot::after { transition: none; }
}

.block-story-gallery-v1 .sg-status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.block-story-gallery-v1 .sg-track:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: -3px;
}

.dark .block-story-gallery-v1 .sg-track:focus-visible {
  outline-color: var(--color-accent-dark, #47b27a);
}
.block-story-gallery-v1 .sg-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: rgba(0, 68, 50, 0.9);
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.15s, opacity 0.15s;
  flex-shrink: 0;
}
.block-story-gallery-v1 .sg-btn:hover:not(:disabled) { background: rgba(19, 115, 95, 1); }
.block-story-gallery-v1 .sg-btn:disabled { opacity: 0.4; cursor: default; }
.dark .block-story-gallery-v1 .sg-btn {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.6);
}
.dark .block-story-gallery-v1 .sg-btn:hover:not(:disabled) { background: rgba(255, 255, 255, 0.16); }
.block-story-gallery-v1 .sg-btn:focus-visible {
  outline: 2px solid var(--color-moss-green, #13735F);
  outline-offset: 2px;
}
.dark .block-story-gallery-v1 .sg-btn:focus-visible {
  outline-color: var(--color-accent-dark, #47B27A);
}

.block-story-gallery-v1.sg-js-ready .sg-slide:not(.sg-active) .sg-desc {
  visibility: hidden;
  pointer-events: none;
}

/* story-header-v1 */
/* ── Story Header v1 ─────────────────────────────────────────── */
.block-story-header-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-header-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-header-v1 .sh-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 32px 24px;
}

.block-story-header-v1 .sh-eyebrow {
  display: none;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: var(--color-forest-green, #004432);
  background: rgba(0, 68, 50, 0.07);
  border: 1px solid rgba(0, 68, 50, 0.15);
  border-radius: 8px;
  padding: 4px 10px;
  margin: 0 0 12px;
}
.block-story-header-v1 .sh-eyebrow:not(:empty) { display: inline-block; }
.dark .block-story-header-v1 .sh-eyebrow {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}

.block-story-header-v1 .sh-date {
  display: block;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(13px, 1.2vw, 15px);
  color: var(--color-grey-60, #737373);
  margin: 0 0 20px;
  line-height: 1.4;
}
.block-story-header-v1 .sh-date:empty { display: none; }
.dark .block-story-header-v1 .sh-date { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-story-header-v1 .sh-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(28px, 4vw, 46px);
  font-weight: 700;
  line-height: 1.15;
  color: var(--color-black, #333333);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}
.dark .block-story-header-v1 .sh-title { color: var(--color-text-dark, #f0f4f2); }

.block-story-header-v1 .sh-desc {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 0 0 32px;
}
.dark .block-story-header-v1 .sh-desc { color: var(--color-text-secondary-dark, rgba(255,255,255,0.5)); }

.block-story-header-v1 .sh-share {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 24px;
  border-top: 1px solid var(--color-grey-20, #DCDCDC);
  flex-wrap: wrap;
}
.dark .block-story-header-v1 .sh-share { border-color: rgba(255,255,255,0.1); }

.block-story-header-v1 .sh-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--color-moss-green, #13735F);
  background: var(--color-white, #FFFFFF);
  color: var(--color-moss-green, #13735F);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  outline: none;
}
.block-story-header-v1 .sh-share-btn:hover,
.block-story-header-v1 .sh-share-btn:focus-visible {
  background: var(--color-forest-green, #004432);
  border-color: var(--color-forest-green, #004432);
  color: var(--color-white, #FFFFFF);
}
.block-story-header-v1 .sh-share-btn:focus-visible {
  outline: 3px solid var(--color-forest-green, #004432);
  outline-offset: 2px;
}
.dark .block-story-header-v1 .sh-share-btn {
  background: transparent;
  border-color: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.5);
}
.dark .block-story-header-v1 .sh-share-btn:hover,
.dark .block-story-header-v1 .sh-share-btn:focus-visible {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}
.block-story-header-v1 .sh-copy-btn.sh-copied {
  background: var(--color-mint-green, #47B27A);
  border-color: var(--color-mint-green, #47B27A);
  color: var(--color-forest-green, #004432);
}
.dark .block-story-header-v1 .sh-copy-btn.sh-copied {
  background: var(--color-accent-dark, #47B27A);
  border-color: var(--color-accent-dark, #47B27A);
  color: var(--color-bg-dark, #0f1a14);
}

@media (max-width: 767px) {
  .block-story-header-v1 .sh-inner { padding: 32px 16px; }
}


/* story-image-v1 */
/* ── Story Image (block-story-image-v1) ───────────────────── */

.block-story-image-v1 {
  background: var(--color-white, #ffffff);
}

.dark .block-story-image-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-story-image-v1 .si-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

/* ── Image wrapper ────────────────────────────────────────── */

.block-story-image-v1 .si-img-wrap {
  position: relative;
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  background: transparent;
}

.dark .block-story-image-v1 .si-img-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.block-story-image-v1.si-has-lightbox .si-img-wrap {
  cursor: zoom-in;
}

/* ── Blurred portrait background ──────────────────────────── */

.block-story-image-v1 .si-bg {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(24px) brightness(0.6);
  transform: scale(1.12);
}

.block-story-image-v1
  .si-img-wrap.si-portrait
  .si-bg {
  display: block;
}

/* ── Default Landscape 16:9 picture ───────────────────────── */

.block-story-image-v1 .si-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.block-story-image-v1
  .si-img-wrap.si-portrait
  .si-img {
  object-fit: contain;
}

/* ── Original picture ratio ───────────────────────────────── */

.block-story-image-v1[data-original-ratio="true"]
  .si-img-wrap {
  height: auto;
  aspect-ratio: auto;
  background: transparent;
}

.dark
  .block-story-image-v1[data-original-ratio="true"]
  .si-img-wrap {
  background: transparent;
}

/*
 * Explicitly override the portrait selector too.
 * This prevents portrait detection from restoring the blurred background.
 */
.block-story-image-v1[data-original-ratio="true"]
  .si-bg,
.block-story-image-v1[data-original-ratio="true"]
  .si-img-wrap.si-portrait
  .si-bg {
  display: none;
}

.block-story-image-v1[data-original-ratio="true"]
  .si-img,
.block-story-image-v1[data-original-ratio="true"]
  .si-img-wrap.si-portrait
  .si-img {
  position: relative;
  inset: auto;
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
}

/* ── Missing-picture placeholder ──────────────────────────── */

/*
 * The placeholder remains 16:9 in both modes because there is no
 * source-picture ratio before an image is selected.
 */
.block-story-image-v1 .si-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #dcdcdc);
}

.dark .block-story-image-v1 .si-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

/* ── Zoom button ──────────────────────────────────────────── */

.block-story-image-v1 .si-zoom-btn {
  display: none;
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  color: #ffffff;
  cursor: zoom-in;
  opacity: 0;
  transition:
    opacity 0.15s ease,
    background-color 0.15s ease;
}

.block-story-image-v1.si-has-lightbox
  .si-zoom-btn {
  display: flex;
}

.block-story-image-v1
  .si-img-wrap:hover
  .si-zoom-btn,
.block-story-image-v1
  .si-img-wrap:focus-within
  .si-zoom-btn {
  opacity: 1;
}

.block-story-image-v1
  .si-zoom-btn:hover {
  background: rgba(0, 0, 0, 0.65);
}

.block-story-image-v1
  .si-zoom-btn:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: 3px;
  opacity: 1;
}

/* ── Lightbox ─────────────────────────────────────────────── */

.block-story-image-v1 .si-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9990;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.block-story-image-v1
  .si-lightbox.si-lb-open {
  display: flex;
}

.block-story-image-v1 .si-lb-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 10, 4, 0.92);
  cursor: zoom-out;
  animation: si-lb-in 0.2s ease;
}

@keyframes si-lb-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.block-story-image-v1 .si-lb-content {
  position: relative;
  z-index: 1;
  max-width: min(96vw, 1200px);
  max-height: 92vh;
  animation: si-lb-up 0.2s ease;
}

@keyframes si-lb-up {
  from {
    opacity: 0;
    transform: scale(0.96);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.block-story-image-v1 .si-lb-img {
  display: block;
  max-width: 100%;
  max-height: 92vh;
  border-radius: 8px;
  object-fit: contain;
}

.block-story-image-v1 .si-lb-close {
  position: absolute;
  top: -44px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.block-story-image-v1
  .si-lb-close:hover {
  background: rgba(255, 255, 255, 0.22);
}

.block-story-image-v1
  .si-lb-close:focus-visible {
  outline: 3px solid var(--color-moss-green, #13735f);
  outline-offset: 4px;
}

/* ── Caption ──────────────────────────────────────────────── */

.block-story-image-v1 .si-caption {
  margin: 12px 0 0;
  color: var(--color-grey-80, #4d4d4d);
  font-family: var(--font-body, "Lato", sans-serif);
  font-size: 18px;
  line-height: 1.6;
}

.dark .block-story-image-v1 .si-caption {
  color: var(
    --color-text-secondary-dark,
    rgba(255, 255, 255, 0.5)
  );
}

.block-story-image-v1 .si-caption a {
  color: var(--color-moss-green, #13735f);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-story-image-v1 .si-caption a {
  color: var(--color-accent-dark);
}

.block-story-image-v1
  .si-caption
  a:hover {
  text-decoration: none;
}

/* ── Responsive ───────────────────────────────────────────── */

@media (max-width: 767px) {
  .block-story-image-v1 .si-inner {
    padding: 16px 24px;
  }

  .block-story-image-v1.si-has-lightbox
    .si-zoom-btn {
    opacity: 1;
  }
}

/* story-info-v1 */
/* Story Info (block-story-info-v1) */

.block-story-info-v1 {
  --story-info-v1-card-bg: var(--color-forest-green, #004432);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
  background: var(--color-white, #ffffff);
}

.dark .block-story-info-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-story-info-v1[data-card-color='forest-green'] {
  --story-info-v1-card-bg: var(--color-forest-green, #004432);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1[data-card-color='mint-green'] {
  --story-info-v1-card-bg: var(--color-mint-green, #47b27a);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='red'] {
  --story-info-v1-card-bg: var(--color-red, #e52322);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1[data-card-color='light-green'] {
  --story-info-v1-card-bg: var(--color-light-green, #8acbc1);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='corn-green'] {
  --story-info-v1-card-bg: var(--color-corn-green, #94c24a);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='yellow-green'] {
  --story-info-v1-card-bg: var(--color-yellow-green, #e6ce00);
  --story-info-v1-card-copy: var(--color-black, #333333);
}

.block-story-info-v1[data-card-color='moss-green'] {
  --story-info-v1-card-bg: var(--color-moss-green, #13735f);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1[data-card-color='dark-red'] {
  --story-info-v1-card-bg: var(--color-dark-red, #861135);
  --story-info-v1-card-copy: var(--color-white, #ffffff);
}

.block-story-info-v1 .story-info-v1__inner {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
  box-sizing: border-box;
}

.block-story-info-v1 .story-info-v1__card {
  min-width: 0;
  width: 100%;
  padding: 24px;
  border-radius: 16px;
  background: var(--story-info-v1-card-bg);
  color: var(--story-info-v1-card-copy);
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.block-story-info-v1 .story-info-v1__icon {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 0 24px;
  color: inherit;
  flex: 0 0 auto;
}

.block-story-info-v1 .story-info-v1__icon-disc {
  fill: currentColor;
  stroke: none;
}

.block-story-info-v1 .story-info-v1__icon-mark {
  fill: var(--story-info-v1-card-bg);
  stroke: none;
}

.block-story-info-v1 .story-info-v1__body {
  color: inherit;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.block-story-info-v1 .story-info-v1__body :where(p, ul, ol) {
  margin: 0 0 16px;
}

.block-story-info-v1 .story-info-v1__body > :last-child {
  margin-bottom: 0;
}

.block-story-info-v1 .story-info-v1__body :where(ul, ol) {
  padding-left: 1.4em;
}

.block-story-info-v1 .story-info-v1__body li + li {
  margin-top: 8px;
}

.block-story-info-v1 .story-info-v1__body li > p {
  margin: 0;
}

.block-story-info-v1 .story-info-v1__body :where(a, strong, b, em, i, u, sub, sup) {
  color: inherit;
}

.block-story-info-v1 .story-info-v1__body a {
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.block-story-info-v1 .story-info-v1__body a:hover {
  text-decoration-thickness: 2px;
}

.block-story-info-v1 .story-info-v1__body a:focus-visible {
  border-radius: 2px;
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

@media (max-width: 767px) {
  .block-story-info-v1 .story-info-v1__inner {
    padding: 16px;
  }
}

@media (min-width: 768px) {
  .block-story-info-v1 .story-info-v1__card {
    padding: 32px;
  }
}

@media (min-width: 1024px) {
  .block-story-info-v1 .story-info-v1__card {
    padding: 48px;
  }
}


/* story-references-v1 */
/* ── Story References (block-story-references-v1) ──────────── */

.block-story-references-v1 {
  background: var(--color-white, #FFFFFF);
}

.block-story-references-v1[data-background-color="#F7F7F7"] {
  background: var(--color-light-grey, #F7F7F7);
}

.dark .block-story-references-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-story-references-v1 .sr-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

.block-story-references-v1 .sr-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-black, #333333);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}

.dark .block-story-references-v1 .sr-title {
  color: var(--color-text-dark, #f0f4f2);
}

.block-story-references-v1 .sr-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 12px;
  line-height: 1.75;
  color: var(--color-black, #333333);
}

.dark .block-story-references-v1 .sr-body {
  color: var(--color-text-dark, #f0f4f2);
}

.block-story-references-v1 .sr-body p {
  margin: 0 0 16px;
}

.block-story-references-v1 .sr-body p:last-child {
  margin-bottom: 0;
}

.block-story-references-v1 .sr-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-story-references-v1 .sr-body a {
  color: var(--color-accent-dark);
}

.block-story-references-v1 .sr-body a:hover {
  text-decoration: none;
}

@media (max-width: 767px) {
  .block-story-references-v1 .sr-inner {
    padding: 16px;
  }
}

/* story-subtitled-text-v1 */
/* ── Story Subtitled Text (block-story-subtitled-text-v1) ────── */

.block-story-subtitled-text-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-subtitled-text-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-subtitled-text-v1 .sstt-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

.block-story-subtitled-text-v1 .sstt-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(20px, calc(1.25vw + 16px), 24px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-black, #333333);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}
.dark .block-story-subtitled-text-v1 .sstt-title { color: var(--color-text-dark, #f0f4f2); }

.block-story-subtitled-text-v1 .sstt-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.75;
  color: var(--color-black, #333333);
}
.dark .block-story-subtitled-text-v1 .sstt-body { color: var(--color-text-dark, #f0f4f2); }
.block-story-subtitled-text-v1 .sstt-body p { margin: 0 0 16px; }
.block-story-subtitled-text-v1 .sstt-body p:last-child { margin-bottom: 0; }
.block-story-subtitled-text-v1 .sstt-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-story-subtitled-text-v1 .sstt-body a { color: var(--color-accent-dark); }
.block-story-subtitled-text-v1 .sstt-body a:hover { text-decoration: none; }

@media (max-width: 767px) {
  .block-story-subtitled-text-v1 .sstt-inner { padding: 16px; }
}


/* story-text-only-v1 */
/* ── Story Text Only (block-story-text-only-v1) ─────────────── */

.block-story-text-only-v1 {
  background: var(--color-white, #FFFFFF);
}

.block-story-text-only-v1[data-background-color="#F7F7F7"] {
  background: var(--color-light-grey, #F7F7F7);
}

.dark .block-story-text-only-v1 {
  background: var(--color-bg-dark, #0f1a14);
}

.block-story-text-only-v1 .sto-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

.block-story-text-only-v1 .sto-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.75;
  color: var(--color-black, #333333);
}

.dark .block-story-text-only-v1 .sto-body {
  color: var(--color-text-dark, #f0f4f2);
}

.block-story-text-only-v1 .sto-body p {
  margin: 0 0 16px;
}

.block-story-text-only-v1 .sto-body p:last-child {
  margin-bottom: 0;
}

.block-story-text-only-v1 .sto-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-story-text-only-v1 .sto-body a {
  color: var(--color-accent-dark);
}

.block-story-text-only-v1 .sto-body a:hover {
  text-decoration: none;
}

@media (max-width: 767px) {
  .block-story-text-only-v1 .sto-inner {
    padding: 16px;
  }
}

/* story-titled-text-v1 */
/* ── Story Titled Text (block-story-titled-text-v1) ──────────── */

.block-story-titled-text-v1 { background: var(--color-white, #FFFFFF); }
.dark .block-story-titled-text-v1 { background: var(--color-bg-dark, #0f1a14); }

.block-story-titled-text-v1 .stt-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

.block-story-titled-text-v1 .stt-title {
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-black, #333333);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}
.dark .block-story-titled-text-v1 .stt-title { color: var(--color-text-dark, #f0f4f2); }

.block-story-titled-text-v1 .stt-body {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.75;
  color: var(--color-black, #333333);
}
.dark .block-story-titled-text-v1 .stt-body { color: var(--color-text-dark, #f0f4f2); }
.block-story-titled-text-v1 .stt-body p { margin: 0 0 16px; }
.block-story-titled-text-v1 .stt-body p:last-child { margin-bottom: 0; }
.block-story-titled-text-v1 .stt-body a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark .block-story-titled-text-v1 .stt-body a { color: var(--color-accent-dark); }
.block-story-titled-text-v1 .stt-body a:hover { text-decoration: none; }

@media (max-width: 767px) {
  .block-story-titled-text-v1 .stt-inner { padding: 16px; }
}


/* story-video-v1 */
/* ── Story Video (block-story-video-v1) ────────────────────── */

.block-story-video-v2 { background: var(--color-white, #FFFFFF); }
.dark .block-story-video-v2 { background: var(--color-bg-dark, #0f1a14); }

.block-story-video-v2 .sv-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 16px 24px;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-yt-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-grey-20, #DCDCDC);
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-yt-wrap {
  background: rgba(255, 255, 255, 0.08);
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-video-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  background: var(--color-grey-20, #DCDCDC);
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-video-wrap {
  background: rgba(255, 255, 255, 0.08);
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  object-fit: cover;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  background: var(--color-grey-20, #DCDCDC);
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-placeholder {
  background: rgba(255, 255, 255, 0.08);
}

:is(.block-story-video-v2, [data-video-player="v2"]):not([data-src="true"]) .sv-yt-container { display: none; }
:is(.block-story-video-v2, [data-video-player="v2"])[data-src="true"] .sv-video-wrap,
:is(.block-story-video-v2, [data-video-player="v2"])[data-src="true"] .sv-placeholder { display: none; }

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-yt-container {
  position: relative;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-gate {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  background: var(--color-forest-green, #004432);
  background-size: cover;
  background-position: center;
  text-align: center;
  isolation: isolate;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-gate::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  z-index: 0;
  pointer-events: none;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-text {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(12px, 1.2vw, 14px);
  line-height: 1.55;
  color: var(--color-white);
  max-width: 480px;
  margin: 0;
  position: relative;
  z-index: 1;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-btn {
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 22px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  background: transparent;
  color: var(--color-white, #FFFFFF);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  z-index: 1;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-btn:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: var(--color-white, #FFFFFF);
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-btn:focus-visible {
  outline: 3px solid var(--color-mint-green, #47B27A);
  outline-offset: 4px;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-consent-icon {
  flex-shrink: 0;
}


:is(.block-story-video-v2, [data-video-player="v2"]) .sv-caption {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4D4D4D);
  margin: 12px 0 0;
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-caption {
  color: var(--color-text-secondary-dark, rgba(255,255,255,0.5));
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-caption a {
  color: var(--color-moss-green, #13735F);
  font-weight: 600;
  text-decoration: underline;
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-caption a { color: var(--color-accent-dark); }
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-caption a:hover { text-decoration: none; }

/* Revoke YouTube consent */
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-revoke-wrap {
  padding: 6px 0 0;
  text-align: right;
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-revoke-btn {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: clamp(10px, 1.1vw, 11px);
  color: var(--color-grey-60, #666666);
  background: none;
  border: none;
  padding: 2px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-revoke-btn {
  color: rgba(255, 255, 255, 0.3);
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-revoke-btn:hover {
  color: var(--color-forest-green, #004432);
}
.dark :is(.block-story-video-v2, [data-video-player="v2"]) .sv-revoke-btn:hover {
  color: rgba(255, 255, 255, 0.65);
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-revoke-btn:focus-visible {
  outline: 2px solid #47b27a;
  outline-offset: 2px;
  border-radius: 2px;
}

/* Lights-out button */
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-inner {
  position: relative;
}

:is(.block-story-video-v2, [data-video-player="v2"]) .sv-lights-btn {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.42);
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.block-story-video-v2 .sv-lights-btn {
  top: 24px;
  right: 32px;
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-lights-btn:hover {
  background: rgba(0, 0, 0, 0.65);
  color: var(--color-white);
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-lights-btn:focus-visible {
  outline: 3px solid #47b27a;
  outline-offset: 3px;
}
/* Cinema mode: video player punches through overlay, button floats above */
:is(.block-story-video-v2, [data-video-player="v2"])[data-lights="on"] .sv-yt-container,
:is(.block-story-video-v2, [data-video-player="v2"])[data-lights="on"] .sv-video-wrap {
  position: relative;
  z-index: 9992;
  border-radius: 8px;
  overflow: hidden;
}
:is(.block-story-video-v2, [data-video-player="v2"])[data-lights="on"] .sv-lights-btn {
  z-index: 9993;
  background: rgba(2, 10, 4, 0.85);
  color: #c6f080;
  border-color: rgba(198, 240, 128, 0.3);
}
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-lights-btn .sv-lb-off { display: block; }
:is(.block-story-video-v2, [data-video-player="v2"]) .sv-lights-btn .sv-lb-on  { display: none; }
:is(.block-story-video-v2, [data-video-player="v2"])[data-lights="on"] .sv-lights-btn .sv-lb-off { display: none; }
:is(.block-story-video-v2, [data-video-player="v2"])[data-lights="on"] .sv-lights-btn .sv-lb-on  { display: block; }

/* Overlay injected into body by JS */
.sv-lights-overlay {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(2, 10, 4, 0.92);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.sv-lights-forest {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}

.sv-lights-canopy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(160px, 24vh, 270px);
  display: block;
}

@keyframes sv-fly-glow {
  0%, 100% { opacity: 0.15; box-shadow: 0 0 4px 2px rgba(160, 240, 100, 0.25); }
  50%       { opacity: 0.9;  box-shadow: 0 0 8px 4px rgba(190, 255, 130, 0.7); }
}
@keyframes sv-fly-float {
  0%   { transform: translate(0, 0); }
  33%  { transform: translate(var(--fly-dx), calc(var(--fly-dy) * 0.5)); }
  66%  { transform: translate(calc(var(--fly-dx) * -0.3), var(--fly-dy)); }
  100% { transform: translate(0, 0); }
}
.sv-lights-fly {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #c6f080;
  pointer-events: none;
  animation:
    sv-fly-glow var(--fly-glow, 2s) ease-in-out infinite,
    sv-fly-float var(--fly-float, 5s) ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .sv-lights-overlay { transition: none; }
  .sv-lights-fly { animation: none; opacity: 0.5; }
}

@media (max-width: 767px) {
  .block-story-video-v2 .sv-inner { padding: 16px; }
}


/* table-of-contents-v1 */
/* ── Table of Contents (block-table-of-contents-v1) ────────────── */

.block-table-of-contents-v1 {
  --wi-toc-left-offset: max(24px, env(safe-area-inset-left, 0px));
  --wi-toc-right-gap: max(24px, env(safe-area-inset-right, 0px));
  position: fixed;
  bottom: max(24px, env(safe-area-inset-bottom, 0px));
  left: var(--wi-toc-left-offset);
  z-index: 100;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  /* Reset <section> defaults so it doesn't affect page flow */
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  /* Panel retains physical size when hidden — block passthrough so it doesn't eat mobile taps */
  pointer-events: none;
}

.block-table-of-contents-v1 .wi-toc-panel {
  background: var(--color-white);
  border: 1px solid var(--color-grey-20);
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  padding: 16px;
  width: 280px;
  max-width: calc(100vw - var(--wi-toc-left-offset) - var(--wi-toc-right-gap));
  max-height: 60vh;
  overflow-y: auto;
  opacity: 0;
  transform: translateY(10px) scale(0.97);
  pointer-events: none;
  visibility: hidden;
  /* visibility delays: instant on open, waits for fade-out on close */
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
}

@media (max-width: 767px) {
  .block-table-of-contents-v1 {
    --wi-toc-left-offset: max(16px, env(safe-area-inset-left, 0px));
    --wi-toc-right-gap: max(16px, env(safe-area-inset-right, 0px));
    bottom: max(16px, env(safe-area-inset-bottom, 0px));
  }
}

.block-table-of-contents-v1 .wi-toc-panel.is-open {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
  visibility: visible;
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0s;
}

@media (prefers-reduced-motion: reduce) {
  .block-table-of-contents-v1 .wi-toc-panel {
    transition: none;
  }
}

.block-table-of-contents-v1 .wi-toc-title {
  font-family: var(--font-heading);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--color-grey-60);
  margin: 0 0 12px 0;
}

.block-table-of-contents-v1 .wi-toc-title p {
  margin: 0;
  display: inline;
}

.block-table-of-contents-v1 .wi-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.block-table-of-contents-v1 .wi-toc-item { line-height: 1.4; }
.block-table-of-contents-v1 .wi-toc-h3 { padding-left: 12px; }
.block-table-of-contents-v1 .wi-toc-h4 { padding-left: 24px; }

.block-table-of-contents-v1 .wi-toc-link {
  font-family: var(--font-body);
  font-size: clamp(14px, 1vw, 15px);
  color: var(--color-grey-80);
  text-decoration: none;
  display: block;
  padding: 4px 8px;
  border-left: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
  cursor: pointer;
}

.block-table-of-contents-v1 .wi-toc-link:hover {
  color: var(--color-moss-green);
  background: var(--color-light-grey);
  border-radius: 0 6px 6px 0;
}

.block-table-of-contents-v1 .wi-toc-link.is-active {
  color: var(--color-forest-green);
  border-left-color: var(--color-mint-green);
  font-weight: 700;
}

.block-table-of-contents-v1 .wi-toc-link:focus-visible {
  outline: 2px solid var(--color-mint-green);
  outline-offset: 2px;
  border-radius: 0 4px 4px 0;
}

.block-table-of-contents-v1 .wi-toc-btn {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--color-forest-green);
  color: var(--color-white);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 12px rgba(0, 68, 50, 0.25);
  outline: 2px solid var(--color-light-green);
  outline-offset: 2px;
  transition: background 0.15s;
  flex-shrink: 0;
  pointer-events: auto;
}

.block-table-of-contents-v1 .wi-toc-btn:hover { background: var(--color-moss-green); }
.block-table-of-contents-v1 .wi-toc-btn:focus-visible {
  outline-width: 3px;
  outline-offset: 3px;
}

.dark .block-table-of-contents-v1 .wi-toc-panel {
  background: var(--color-surface-dark);
  border-color: rgba(255, 255, 255, 0.1);
}

.dark .block-table-of-contents-v1 .wi-toc-title { color: var(--color-text-secondary-dark); }
.dark .block-table-of-contents-v1 .wi-toc-link { color: var(--color-text-secondary-dark); }
.dark .block-table-of-contents-v1 .wi-toc-link:hover { color: var(--color-accent-dark); background: rgba(255,255,255,0.05); }
.dark .block-table-of-contents-v1 .wi-toc-link.is-active { color: var(--color-text-dark); border-left-color: var(--color-mint-green); }


/* team-v1 */
/* Team (block-team-v1) */

.block-team-v1 {
  --team-v1-bg: var(--color-white, #ffffff);
  background: var(--team-v1-bg);
  color: var(--color-black, #333333);
}

.block-team-v1[data-background-color="#FFFFFF"] {
  --team-v1-bg: var(--color-white, #ffffff);
}

.block-team-v1[data-background-color="#F7F7F7"] {
  --team-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-team-v1 {
  --team-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-team-v1 .team-v1__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-team-v1 .team-v1__header {
  display: grid;
  gap: 24px;
  margin-bottom: 32px;
}

.block-team-v1 .team-v1__headline {
  margin: 0;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3, 46px));
  line-height: var(--text-h3--line-height, 1.15);
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__clamp-wrap {
  position: relative;
  min-width: 0;
}

.block-team-v1 .team-v1__description {
  display: -webkit-box;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-black, #333333);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
}

.dark .block-team-v1 .team-v1__description {
  color: var(--color-text-dark, #f0f4f2);
}

.block-team-v1 .team-v1__description p,
.block-team-v1 .team-v1__bio p {
  margin: 0 0 16px;
}

.block-team-v1 .team-v1__description p:last-child,
.block-team-v1 .team-v1__bio p:last-child {
  margin-bottom: 0;
}

.block-team-v1 .team-v1__read-more {
  display: inline-flex;
  margin-top: 10px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.block-team-v1 .team-v1__read-more:hover,
.block-team-v1 .team-v1__read-more:focus-visible {
  color: var(--color-forest-green, #004432);
}

.block-team-v1 .team-v1__read-more:focus-visible {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-team-v1 .team-v1__read-more {
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-team-v1 .team-v1__read-more:hover,
.dark .block-team-v1 .team-v1__read-more:focus-visible {
  color: var(--color-text-dark, #f0f4f2);
}

.block-team-v1 .team-v1__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.block-team-v1 .team-v1__member {
  min-width: 0;
}

.block-team-v1 .team-v1__avatar-link {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

.block-team-v1 .team-v1__avatar,
.block-team-v1 .team-v1__avatar-placeholder {
  display: block;
  width: 144px;
  height: 144px;
  border-radius: 50%;
}

.block-team-v1 .team-v1__avatar {
  object-fit: cover;
  object-position: center;
  background: var(--color-grey-20, #dcdcdc);
}

.block-team-v1 .team-v1__avatar-placeholder {
  background: var(--color-light-grey, #f7f7f7);
  border: 1px solid var(--color-grey-20, #dcdcdc);
}

.dark .block-team-v1 .team-v1__avatar,
.dark .block-team-v1 .team-v1__avatar-placeholder {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.12);
}

.block-team-v1 .team-v1__name {
  margin: 24px 0 8px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.3;
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__name {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__position {
  margin: 0 0 16px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__position {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__bio {
  display: -webkit-box;
  overflow: hidden;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-grey-80, #4d4d4d);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
}

.dark .block-team-v1 .team-v1__bio {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-team-v1 .team-v1__sheet-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.block-team-v1 .team-v1__sheet-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.block-team-v1 .team-v1__sheet {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  max-height: 86vh;
  overflow: hidden;
  border-radius: 28px 28px 0 0;
  background: var(--color-light-grey, #f7f7f7);
  color: var(--color-black, #333333);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.12);
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0, 0.15, 1);
}

.block-team-v1 .team-v1__sheet.is-active {
  transform: translateY(0);
}

.block-team-v1 .team-v1__sheet.team-v1__sheet--dragging {
  transition: none;
}

.dark .block-team-v1 .team-v1__sheet {
  background: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.5);
}

.block-team-v1 .team-v1__sheet-handle {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px 0 6px;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: grab;
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
}

.block-team-v1 .team-v1__sheet-handle:active {
  cursor: grabbing;
}

.block-team-v1 .team-v1__sheet-handle:focus-visible {
  outline: none;
}

.block-team-v1 .team-v1__sheet-handle-bar {
  display: block;
  width: 44px;
  height: 5px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.24);
}

.block-team-v1 .team-v1__sheet-handle:focus-visible .team-v1__sheet-handle-bar {
  outline: 2px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-team-v1 .team-v1__sheet-handle-bar {
  background: rgba(255, 255, 255, 0.28);
}

.block-team-v1 .team-v1__sheet-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.block-team-v1 .team-v1__sheet-inner {
  display: grid;
  gap: 24px;
  max-width: 1040px;
  margin: 0 auto;
  padding: 20px 24px 32px;
}

.block-team-v1 .team-v1__sheet--text-only .team-v1__sheet-inner {
  max-width: 840px;
}

.block-team-v1 .team-v1__sheet-main {
  min-width: 0;
}

.block-team-v1 .team-v1__sheet-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  overflow: hidden;
  border-radius: 50%;
  background: var(--color-white, #ffffff);
}

.dark .block-team-v1 .team-v1__sheet-media {
  background: rgba(255, 255, 255, 0.08);
}

.block-team-v1 .team-v1__sheet-avatar,
.block-team-v1 .team-v1__sheet-avatar-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.block-team-v1 .team-v1__sheet-avatar {
  object-fit: cover;
  object-position: center;
}

.block-team-v1 .team-v1__sheet-avatar-placeholder {
  border: 1px solid var(--color-grey-20, #dcdcdc);
  background: var(--color-white, #ffffff);
}

.dark .block-team-v1 .team-v1__sheet-avatar-placeholder {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
}

.block-team-v1 .team-v1__sheet-name {
  margin: 0 0 10px;
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-weight: 700;
  font-size: clamp(28px, calc(1.6vw + 22px), 46px);
  line-height: 1.2;
  color: var(--color-forest-green, #004432);
}

.dark .block-team-v1 .team-v1__sheet-name {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__sheet-position {
  margin: 0 0 24px;
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-forest-green, #004432);
}

.block-team-v1 .team-v1__sheet-position p {
  margin: 0 0 8px;
}

.block-team-v1 .team-v1__sheet-position p:last-child {
  margin-bottom: 0;
}

.dark .block-team-v1 .team-v1__sheet-position {
  color: var(--color-accent-dark, #47b27a);
}

.block-team-v1 .team-v1__sheet-bio {
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-grey-80, #4d4d4d);
}

.block-team-v1 .team-v1__sheet-bio p {
  margin: 0 0 16px;
}

.block-team-v1 .team-v1__sheet-bio p:last-child {
  margin-bottom: 0;
}

.dark .block-team-v1 .team-v1__sheet-bio {
  color: var(--color-text-secondary-dark, rgba(255, 255, 255, 0.5));
}

.block-team-v1 .team-v1__sheet-footer {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  padding: 14px 24px calc(20px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.dark .block-team-v1 .team-v1__sheet-footer {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.block-team-v1 .team-v1__sheet-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.08);
  color: var(--color-forest-green, #004432);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}

.block-team-v1 .team-v1__sheet-close:hover,
.block-team-v1 .team-v1__sheet-close:focus-visible {
  background: rgba(0, 0, 0, 0.15);
  transform: scale(1.08);
}

.block-team-v1 .team-v1__sheet-close:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 3px;
}

.dark .block-team-v1 .team-v1__sheet-close {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-text-dark, #f0f4f2);
}

.dark .block-team-v1 .team-v1__sheet-close:hover,
.dark .block-team-v1 .team-v1__sheet-close:focus-visible {
  background: rgba(255, 255, 255, 0.16);
}

.block-team-v1 .team-v1__cta-row {
  display: flex;
  justify-content: flex-start;
  margin-top: 32px;
}

.block-team-v1 .team-v1__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 24px;
  border: 1px solid var(--color-moss-green, #13735f);
  border-radius: 999px;
  background: transparent;
  color: var(--color-moss-green, #13735f);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.block-team-v1 .team-v1__cta:hover,
.block-team-v1 .team-v1__cta:focus-visible {
  background: var(--color-moss-green, #13735f);
  border-color: transparent;
  color: var(--color-white, #ffffff);
}

.block-team-v1 .team-v1__cta:focus-visible {
  outline: 3px solid var(--color-mint-green, #47b27a);
  outline-offset: 4px;
}

.block-team-v1 .team-v1__cta-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.block-team-v1 .team-v1__cta:hover .team-v1__cta-icon,
.block-team-v1 .team-v1__cta:focus-visible .team-v1__cta-icon {
  transform: translateX(3px);
}

.dark .block-team-v1 .team-v1__cta {
  background: transparent;
  border-color: var(--color-accent-dark, #47b27a);
  color: var(--color-accent-dark, #47b27a);
}

.dark .block-team-v1 .team-v1__cta:hover,
.dark .block-team-v1 .team-v1__cta:focus-visible {
  background: var(--color-accent-dark, #47b27a);
  border-color: transparent;
  color: var(--color-bg-dark, #0f1a14);
}

@media (min-width: 768px) {
  .block-team-v1 .team-v1__inner {
    padding: 64px 48px;
  }

  .block-team-v1 .team-v1__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
  }

  .block-team-v1 .team-v1__avatar,
  .block-team-v1 .team-v1__avatar-placeholder {
    width: 168px;
    height: 168px;
  }

  .block-team-v1 .team-v1__sheet-handle {
    display: none;
  }

  .block-team-v1 .team-v1__sheet-inner {
    grid-template-columns: 96px minmax(0, 1fr);
    grid-template-areas:
      "media name"
      "media position"
      "bio bio";
    column-gap: 24px;
    row-gap: 4px;
    padding: 48px 48px 36px;
  }

  .block-team-v1 .team-v1__sheet-main {
    display: contents;
  }

  .block-team-v1 .team-v1__sheet--text-only .team-v1__sheet-inner {
    display: block;
  }

  .block-team-v1 .team-v1__sheet--text-only .team-v1__sheet-main {
    display: block;
  }

  .block-team-v1 .team-v1__sheet-media {
    grid-area: media;
    width: 96px;
    height: 96px;
  }

  .block-team-v1 .team-v1__sheet-name {
    grid-area: name;
    align-self: end;
    margin-bottom: 4px;
  }

  .block-team-v1 .team-v1__sheet-position {
    grid-area: position;
    align-self: start;
    margin-bottom: 0;
  }

  .block-team-v1 .team-v1__sheet-bio {
    grid-area: bio;
    margin-top: 20px;
  }

  .block-team-v1 .team-v1__cta-row {
    margin-top: 64px;
  }
}

@media (min-width: 1024px) {
  .block-team-v1 .team-v1__inner {
    padding: 64px 80px;
  }

  .block-team-v1 .team-v1__header {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 32px;
    margin-bottom: 48px;
  }

  .block-team-v1 .team-v1__headline {
    grid-column: 1 / span 6;
  }

  .block-team-v1 .team-v1__description-wrap {
    grid-column: 7 / span 6;
  }

  .block-team-v1 .team-v1__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .block-team-v1 .team-v1__sheet-inner {
    padding: 56px 80px 40px;
  }

  .block-team-v1 .team-v1__cta-row {
    justify-content: flex-end;
  }

  .block-team-v1 .team-v1__cta {
    font-size: 18px;
  }
}


/* text-v1 */
/* ── Text (block-text-v1) ──────────────────────────────────────── */

.block-text-v1 {
  background-color: var(--color-white);
}

.dark .block-text-v1 {
  background-color: var(--color-bg-dark);
}

.block-text-v1 .text-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-text-v1 .text-content {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: clamp(16px, calc(0.5vw + 14.4px), var(--text-body));
  line-height: var(--text-body--line-height);
  color: var(--color-black);
}

.dark .block-text-v1 .text-content {
  color: var(--color-text-dark);
}

.block-text-v1 .text-content p {
  margin: 0 0 16px;
}

.block-text-v1 .text-content p:last-child {
  margin-bottom: 0;
}

.block-text-v1 .text-content a {
  color: var(--color-moss-green);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-text-v1 .text-content a {
  color: var(--color-accent-dark);
}

.block-text-v1 .text-content a:hover {
  text-decoration: none;
}

.block-text-v1 .text-content strong {
  font-weight: 700;
}

.block-text-v1 .text-content ul,
.block-text-v1 .text-content ol {
  padding-left: 1.4em;
  margin: 0 0 16px;
}

.block-text-v1 .text-content li {
  margin-bottom: 8px;
}

/* Tablet */
@media (min-width: 768px) {
  .block-text-v1 .text-inner {
    padding: 64px 48px;
  }
}

/* Desktop — body skips first 4 of 12 cols (mirrors titled-text body) */
@media (min-width: 1024px) {
  .block-text-v1 .text-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
  }

  .block-text-v1 .text-content {
    grid-column: 5 / -1;
  }
}


/* timeline-v1 */
/* Timeline (block-timeline-v1) */

.block-timeline-v1 {
  --timeline-v1-bg: var(--color-white, #ffffff);
  --timeline-v1-progress: var(--color-moss-green, #13735f);
  background: var(--timeline-v1-bg);
  color: var(--color-black, #333333);
}

.block-timeline-v1[data-background-color="#FFFFFF"] {
  --timeline-v1-bg: var(--color-white, #ffffff);
}

.block-timeline-v1[data-background-color="#F7F7F7"] {
  --timeline-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-timeline-v1 {
  --timeline-v1-bg: var(--color-bg-dark, #0f1a14);
  background: var(--timeline-v1-bg) !important;
  color: var(--color-text-dark, #f0f4f2);
}

.block-timeline-v1 .timeline-v1__inner {
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
  box-sizing: border-box;
}

.block-timeline-v1 .timeline-v1__content {
  display: flex;
  min-width: 0;
  margin-bottom: 40px;
  align-items: flex-start;
}

.block-timeline-v1 .timeline-v1__headline {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.dark .block-timeline-v1 .timeline-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-timeline-v1 .timeline-v1__headline p,
.block-timeline-v1 .timeline-v1__title p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-timeline-v1 .timeline-v1__list-column {
  display: flex;
  min-width: 0;
  align-items: flex-start;
}

.block-timeline-v1 .timeline-v1__list {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  counter-reset: timeline-v1-step;
  list-style: none;
}

.block-timeline-v1 .timeline-v1__item {
  position: relative;
  display: grid;
  min-width: 0;
  margin: 0;
  padding: 0 0 40px;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  column-gap: 20px;
  counter-increment: timeline-v1-step;
}

.block-timeline-v1 .timeline-v1__item:last-child {
  padding-bottom: 0;
}

.block-timeline-v1 .timeline-v1__item:not(:last-child)::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: 48px;
  bottom: 0;
  left: 23px;
  width: 2px;
  opacity: 0;
  background: var(--timeline-v1-progress);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 800ms linear;
}

.block-timeline-v1 .timeline-v1__item.is-line-drawing:not(:last-child)::after {
  opacity: 1;
  transform: scaleY(1);
}

.block-timeline-v1 .timeline-v1__marker {
  position: relative;
  z-index: 1;
  display: block;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
}

.block-timeline-v1 .timeline-v1__marker-core {
  position: absolute;
  z-index: 1;
  top: 4px;
  left: 4px;
  display: flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 2px solid var(--timeline-v1-progress);
  border-radius: 50%;
  background: var(--color-white, #ffffff);
  color: var(--timeline-v1-progress);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  transition: background-color 300ms ease, color 300ms ease;
}

.block-timeline-v1 .timeline-v1__marker-core::before {
  content: counter(timeline-v1-step);
}

.block-timeline-v1 .timeline-v1__marker-ring {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 48px;
  height: 48px;
  opacity: 0;
  overflow: visible;
  pointer-events: none;
  transform: rotate(-90deg);
}

.block-timeline-v1 .timeline-v1__marker-ring-circle {
  fill: none;
  stroke: var(--timeline-v1-progress);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 100 100;
  stroke-dashoffset: 100;
  transition: stroke-dashoffset 700ms ease-in-out;
}

.block-timeline-v1 .timeline-v1__item.is-ring-drawing .timeline-v1__marker-ring,
.block-timeline-v1 .timeline-v1__item.is-active .timeline-v1__marker-ring {
  opacity: 1;
}

.block-timeline-v1 .timeline-v1__item.is-ring-drawing .timeline-v1__marker-ring-circle,
.block-timeline-v1 .timeline-v1__item.is-active .timeline-v1__marker-ring-circle {
  stroke-dashoffset: 0;
}

.block-timeline-v1 .timeline-v1__item.is-active .timeline-v1__marker-core {
  background: var(--timeline-v1-progress);
  color: var(--color-white, #ffffff);
}

.block-timeline-v1 .timeline-v1__item-content {
  min-width: 0;
  padding-top: 8px;
}

.block-timeline-v1 .timeline-v1__title {
  margin: 0;
  color: var(--color-black, #333333);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(22px, calc(0.5vw + 20px), 26px);
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.dark .block-timeline-v1 .timeline-v1__title {
  color: var(--color-text-dark, #f0f4f2);
}

.block-timeline-v1 .timeline-v1__body {
  min-width: 0;
  margin-top: 10px;
  color: var(--color-black, #333333);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.block-timeline-v1 .timeline-v1__body.is-visually-empty,
.block-timeline-v1 .timeline-v1__body:empty,
.block-timeline-v1 .timeline-v1__body:has(> p:only-child:empty) {
  display: none;
  margin-top: 0;
}

.dark .block-timeline-v1 .timeline-v1__body {
  color: var(--color-text-dark, #f0f4f2);
}

.block-timeline-v1 .timeline-v1__body p,
.block-timeline-v1 .timeline-v1__body ul,
.block-timeline-v1 .timeline-v1__body ol,
.block-timeline-v1 .timeline-v1__body blockquote {
  margin: 0 0 16px;
}

.block-timeline-v1 .timeline-v1__body ul,
.block-timeline-v1 .timeline-v1__body ol {
  padding-left: 1.4em;
}

.block-timeline-v1 .timeline-v1__body li {
  margin-bottom: 8px;
}

.block-timeline-v1 .timeline-v1__body > :first-child {
  margin-top: 0;
}

.block-timeline-v1 .timeline-v1__body > :last-child,
.block-timeline-v1 .timeline-v1__body li:last-child {
  margin-bottom: 0;
}

.block-timeline-v1 .timeline-v1__body strong,
.block-timeline-v1 .timeline-v1__body b {
  color: inherit;
  font-weight: 700;
}

.block-timeline-v1 .timeline-v1__body a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.block-timeline-v1 .timeline-v1__body a:hover {
  text-decoration: none;
}

.block-timeline-v1 .timeline-v1__body a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.dark .block-timeline-v1 .timeline-v1__body a {
  color: var(--color-accent-dark, #47b27a);
}

@media (min-width: 768px) {
  .block-timeline-v1 .timeline-v1__inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-timeline-v1 .timeline-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 80px;
    align-items: stretch;
    gap: 0 32px;
  }

  .block-timeline-v1 .timeline-v1__content {
    grid-column: 1 / 5;
    margin-bottom: 0;
    padding: 64px 0;
  }

  .block-timeline-v1 .timeline-v1__list-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .block-timeline-v1 .timeline-v1__marker-ring-circle,
  .block-timeline-v1 .timeline-v1__marker-core,
  .block-timeline-v1 .timeline-v1__item:not(:last-child)::after {
    transition: none;
  }
}


/* titled-text-v1 */
/* ── Titled Text (block-titled-text-v1) ────────────────────────── */

.block-titled-text-v1 {
  --titled-text-v1-bg: var(--color-white, #ffffff);
  background-color: var(--titled-text-v1-bg);
}

.block-titled-text-v1[data-background-color="#FFFFFF"] {
  --titled-text-v1-bg: var(--color-white, #ffffff);
}

.block-titled-text-v1[data-background-color="#F7F7F7"] {
  --titled-text-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-titled-text-v1 {
  --titled-text-v1-bg: var(--color-bg-dark, #0f1a14);
  background-color: var(--titled-text-v1-bg) !important;
}

.block-titled-text-v1 .titled-text-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;
}

.block-titled-text-v1 .titled-text-title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  line-height: var(--text-h3--line-height);
  color: var(--color-forest-green);
  margin: 0 0 24px;
}

.dark .block-titled-text-v1 .titled-text-title {
  color: var(--color-accent-dark);
}

.block-titled-text-v1 .titled-text-body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  color: var(--color-black);
}

.dark .block-titled-text-v1 .titled-text-body {
  color: var(--color-text-dark);
}

.block-titled-text-v1 .titled-text-body p {
  margin: 0 0 16px;
}

.block-titled-text-v1 .titled-text-body p:last-child {
  margin-bottom: 0;
}

.block-titled-text-v1 .titled-text-body a {
  color: var(--color-moss-green);
  font-weight: 600;
  text-decoration: underline;
}

.dark .block-titled-text-v1 .titled-text-body a {
  color: var(--color-accent-dark);
}

.block-titled-text-v1 .titled-text-body a:hover {
  text-decoration: none;
}

.block-titled-text-v1 .titled-text-body strong {
  font-weight: 700;
}

.block-titled-text-v1 .titled-text-body ul,
.block-titled-text-v1 .titled-text-body ol {
  padding-left: 1.4em;
  margin: 0 0 16px;
}

.block-titled-text-v1 .titled-text-body li {
  margin-bottom: 8px;
}

/* Tablet */
@media (min-width: 768px) {
  .block-titled-text-v1 .titled-text-inner {
    padding: 64px 48px;
  }
}

/* Desktop — title full-width, body skips first 4 of 12 cols */
@media (min-width: 1024px) {
  .block-titled-text-v1 .titled-text-inner {
    padding: 64px 80px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 32px;
    row-gap: 32px;
  }

  .block-titled-text-v1 .titled-text-title {
    grid-column: 1 / -1;
    margin-bottom: 0;
  }

  .block-titled-text-v1 .titled-text-body {
    grid-column: 5 / -1;
  }
}


/* title-v1 */
.block-title-v1 {
  --title-v1-bg: var(--color-white, #ffffff);
  background-color: var(--title-v1-bg);
}

.block-title-v1[data-background-color="#FFFFFF"] {
  --title-v1-bg: var(--color-white, #ffffff);
}

.block-title-v1[data-background-color="#F7F7F7"] {
  --title-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-title-v1 {
  --title-v1-bg: var(--color-bg-dark, #0f1a14);
  background-color: var(--title-v1-bg) !important;
}

.block-title-v1 .title-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 64px 24px;

  /* left fallback */
  text-align: var(--title-alignment, left);
}

.block-title-v1 .title-text {
  margin: 0;
  color: var(--color-forest-green);
  font-family: var(--font-heading);
  font-size: clamp(32px, calc(3.56vw + 18.65px), var(--text-h3));
  font-weight: 700;
  line-height: var(--text-h3--line-height);
  text-align: inherit;
}

.dark .block-title-v1 .title-text {
  color: var(--color-accent-dark);
}

@media (min-width: 768px) {
  .block-title-v1 .title-inner {
    padding: 64px 48px;
  }
}

@media (min-width: 1024px) {
  .block-title-v1 .title-inner {
    padding: 64px 80px;
  }
}

/* white-background-picture-v1 */
/* White Background Picture (block-white-background-picture-v1) */

.block-white-background-picture-v1 {
  --white-background-picture-v1-bg: var(--color-white, #ffffff);
  background: var(--white-background-picture-v1-bg);
  color: var(--color-forest-green, #004432);
}

.block-white-background-picture-v1[data-background-color='#FFFFFF'] {
  --white-background-picture-v1-bg: var(--color-white, #ffffff);
}

.block-white-background-picture-v1[data-background-color='#F7F7F7'] {
  --white-background-picture-v1-bg: var(--color-light-grey, #f7f7f7);
}

.dark .block-white-background-picture-v1 {
  --white-background-picture-v1-bg: var(--color-bg-dark, #0f1a14);
  color: var(--color-text-dark, #f0f4f2);
}

.block-white-background-picture-v1
  .white-background-picture-v1__inner {
  display: grid;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.block-white-background-picture-v1
  .white-background-picture-v1__content {
  display: flex;
  min-width: 0;
  min-height: 400px;
  padding: 64px 24px;
  align-items: center;
  box-sizing: border-box;
}

.block-white-background-picture-v1
  .white-background-picture-v1__copy {
  width: 100%;
  max-width: 560px;
  min-width: 0;
}

.block-white-background-picture-v1
  .white-background-picture-v1__headline {
  margin: 0 0 24px;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-heading, 'Sora', sans-serif);
  font-size: clamp(32px, calc(2vw + 22px), 46px);
  font-weight: 700;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.dark
  .block-white-background-picture-v1
  .white-background-picture-v1__headline {
  color: var(--color-accent-dark, #47b27a);
}

.block-white-background-picture-v1
  .white-background-picture-v1__headline p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description {
  margin: 0;
  color: var(--color-forest-green, #004432);
  font-family: var(--font-body, 'Lato', sans-serif);
  font-size: var(--text-body, 18px);
  font-weight: 400;
  line-height: var(--text-body--line-height, 1.6);
  overflow-wrap: anywhere;
}

.dark
  .block-white-background-picture-v1
  .white-background-picture-v1__description {
  color: var(--color-text-dark, #f0f4f2);
}

.block-white-background-picture-v1
  .white-background-picture-v1__description p {
  margin: 0 0 16px;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description p:last-child {
  margin-bottom: 0;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description ul,
.block-white-background-picture-v1
  .white-background-picture-v1__description ol {
  margin: 0 0 16px;
  padding-left: 1.4em;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description li {
  margin-bottom: 8px;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description strong,
.block-white-background-picture-v1
  .white-background-picture-v1__description b {
  color: inherit;
  font-weight: 700;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description a {
  color: var(--color-moss-green, #13735f);
  font-weight: 700;
  text-decoration: underline;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description a:hover {
  text-decoration: none;
}

.block-white-background-picture-v1
  .white-background-picture-v1__description a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.dark
  .block-white-background-picture-v1
  .white-background-picture-v1__description a {
  color: var(--color-accent-dark, #47b27a);
}

.block-white-background-picture-v1
  .white-background-picture-v1__media-column {
  display: flex;
  width: 100%;
  min-width: 0;
  padding: 0 24px 64px;
  align-items: center;
  box-sizing: border-box;
}

.block-white-background-picture-v1
  .white-background-picture-v1__media {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 8px;
  background: transparent;
}

.block-white-background-picture-v1
  .white-background-picture-v1__image,
.block-white-background-picture-v1
  .white-background-picture-v1__placeholder {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.block-white-background-picture-v1
  .white-background-picture-v1__image {
  object-fit: contain;
}

.block-white-background-picture-v1
  .white-background-picture-v1__placeholder {
  background: transparent;
}

@media (min-width: 768px) {
  .block-white-background-picture-v1
    .white-background-picture-v1__content {
    padding: 64px 48px;
  }

  .block-white-background-picture-v1
    .white-background-picture-v1__media {
    aspect-ratio: 16 / 9;
  }

  .block-white-background-picture-v1
    .white-background-picture-v1__media-column {
    padding: 0 48px 64px;
  }
}

@media (min-width: 1024px) {
  .block-white-background-picture-v1
    .white-background-picture-v1__inner {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 80px;
    align-items: stretch;
    gap: 0 32px;
    box-sizing: border-box;
  }

  .block-white-background-picture-v1
    .white-background-picture-v1__content {
    grid-column: 1 / 5;
    padding: 80px 0;
  }

  .block-white-background-picture-v1
    .white-background-picture-v1__media-column {
    grid-column: 5 / -1;
    padding: 64px 0;
  }
}