/* No-JS fallbacks for mobile header row folder submenus only.
   Full-screen menu uses body.header--menu-open + assets/js/mobile-nav.js */

/* Donate placeholder: visible dark text, centered in the main column */
#sections .s2f-donate-section .section-background {
  background-color: #fff !important;
}

#sections .s2f-donate-section .content-wrapper {
  display: block !important;
  width: 100% !important;
  min-height: min(70vh, 640px);
}

#sections .s2f-donate-section .content {
  width: 100% !important;
  display: block !important;
}

.s2f-donate-copy {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--sqs-site-max-width, 1500px);
  margin: 0;
  padding: 3rem var(--sqs-site-gutter, 4vw) 4rem;
  text-align: left;
  color: #1a1a1a !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.s2f-donate-copy h1,
.s2f-donate-copy p {
  color: #1a1a1a !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.s2f-donate-copy h1 {
  margin: 0 0 1.25rem;
  font-size: clamp(2rem, 5vw, 3rem);
  line-height: 1.15;
}

.s2f-donate-copy p {
  margin: 0 0 1rem;
  line-height: 1.6;
}

body.tweak-global-animations-animation-type-flex #page .s2f-donate-section,
body.tweak-global-animations-animation-type-flex #page .s2f-donate-section *,
body.tweak-global-animations-animation-type-flex #page .s2f-donate-copy,
body.tweak-global-animations-animation-type-flex #page .s2f-donate-copy * {
  opacity: 1 !important;
  transform: none !important;
}

/* Main content: snappier block entrances. Header/footer: 0.4s (see below). */
:root {
  --tweak-global-animations-animation-duration: 0.2s;
  --tweak-global-animations-animation-delay: 0s;
  --s2f-header-footer-animation-duration: 0.4s;
}

body.tweak-global-animations-animation-type-flex #page *,
body.tweak-global-animations-animation-type-flex #page *::before,
body.tweak-global-animations-animation-type-flex #page *::after {
  transition-duration: 0.2s !important;
  transition-delay: 0s !important;
  animation-duration: 0.2s !important;
  animation-delay: 0s !important;
}

/* Header + footer (incl. full-screen menu open/close and folder slides) */
#header,
#header *,
#header *::before,
#header *::after,
.header-menu,
.header-menu *,
.header-menu *::before,
.header-menu *::after,
#footer-sections,
#footer-sections *,
#footer-sections *::before,
#footer-sections *::after,
body.tweak-global-animations-animation-type-flex #footer-sections *,
body.tweak-global-animations-animation-type-flex #footer-sections *::before,
body.tweak-global-animations-animation-type-flex #footer-sections *::after {
  transition-duration: var(--s2f-header-footer-animation-duration) !important;
  transition-delay: 0s !important;
  animation-duration: var(--s2f-header-footer-animation-duration) !important;
  animation-delay: 0s !important;
}

@media (max-width: 1023px) {
  /*
   * Folder flyouts in the *mobile* header row only. Do not target
   * .header-display-desktop — that would keep every submenu open on desktop.
   */
  .header-display-mobile .header-nav-folder-content {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    display: block !important;
  }

  .header-display-mobile .header-nav-folder-title {
    pointer-events: none;
  }

  /* Full-screen overlay: begin below logo / burger / cart row */
  body.header--menu-open .header-menu {
    top: var(--header-menu-top-offset, 5.5rem);
    bottom: 0;
  }

  /* Squarespace JS used to set data-folder="root" on the top panel; without it the list sits off-screen */
  .header-menu-nav {
    position: relative;
    z-index: 1;
  }

  body.header--menu-open .header-menu-nav-list > .header-menu-nav-folder {
    transform: translateX(0) !important;
  }

  body.header--menu-open .header-menu .header-menu-nav-list {
    transform: translateY(0) !important;
  }

  body.header--menu-open .header-menu .header-menu-nav a:not(.btn) {
    color: var(--menuOverlayNavigationLinkColor, hsla(0, 0%, 0%, 1));
  }

  /*
   * Folder rows: label + chevron as one centered group (arrow follows the text).
   */
  .header-menu a[data-folder-id] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    gap: 0.45em;
    text-align: center;
  }

  .header-menu a[data-folder-id] .header-menu-nav-item-content {
    flex: 0 1 auto;
    justify-content: center;
    text-align: center;
  }

  .header-menu a[data-folder-id]::after {
    content: "";
    flex-shrink: 0;
    width: 0.4em;
    height: 0.4em;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    opacity: 0.85;
  }

  .header-menu .header-menu-controls-control[data-action="back"] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
  }

  .header-menu .header-menu-controls-control[data-action="back"]::before {
    content: "";
    flex-shrink: 0;
    width: 0.4em;
    height: 0.4em;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    opacity: 0.85;
  }
}

/*
 * Footer: prettified HTML + white-space:pre-wrap turns indentation into extra line
 * breaks, so link lists look like a broken vertical "array". Reset text flow and
 * use a simple grid on small screens instead of absolute fluid-engine placement.
 */
#footer-sections .sqs-html-content p {
  white-space: normal !important;
}

#footer-sections .sqs-html-content p a {
  display: inline;
}

#footer-sections .sqs-html-content br {
  display: block;
  margin-top: 0.35em;
}

@media (max-width: 767px) {
  #footer-sections .fe-630540001682da3a60b05e44 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
    grid-auto-rows: auto;
    gap: 1.75rem 1.25rem;
    row-gap: 1.75rem;
    overflow: visible;
  }

  #footer-sections .fe-630540001682da3a60b05e44 > .fe-block {
    grid-area: auto !important;
    position: relative !important;
    min-width: 0;
  }

  /* Full-width rows: logo/address, newsletter, social */
  #footer-sections .fe-block-32d2642ce3f71fefcf69,
  #footer-sections .fe-block-yui_3_17_2_1_1661956466098_175943,
  #footer-sections .fe-block-yui_3_17_2_1_1664199384350_683130 {
    grid-column: 1 / -1;
  }
}
