




































:root {
  font-family: "Noto Serif TC", "Songti TC", "STSong", serif;
  color: #d9be9b;
  background: #010607;
  font-synthesis: none;
  font-weight: 400;
  --gold: #d9bc94;
  --muted: #999287;
  --red: #a31c13;
  --line: rgba(194, 151, 98, 0.27);
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 32px;
}
body {
  margin: 0;
  min-width: 360px;
  -webkit-font-smoothing: antialiased;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
button {
  font: inherit;
  color: inherit;
  cursor: pointer;
}
a {
  color: inherit;
  text-decoration: none;
}
button {
  border: 0;
  background: none;
}
button:focus-visible,
a:focus-visible {
  outline: 2px solid #e4bc7e;
  outline-offset: 5px;
}
button svg,
a svg {
  flex: none;
}
button {
  padding: 0;
}
h1,
h2,
h3,
p {
  margin: 0;
}
button,
a {
  touch-action: manipulation;
}
::selection {
  background: #994031;
  color: #f6ddba;
}
.website {
  container-type: inline-size;
  max-width: 1600px;
  margin: 24px 20px 0;
  border: 1px solid #665540;
  border-bottom: 0;
  border-radius: 17px 17px 0 0;
  overflow: hidden;
  position: relative;
  background: #040e14;
}
.dark-panel {
  height: 65.625cqw;
  min-height: 800px;
  position: relative;
  background: #030d12;
}
.art-stage {
  position: absolute;
  inset: 0 0 auto;
  height: 50.4cqw;
  overflow: hidden;
  pointer-events: none;
}

.gold-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
}
.brand-emblem {
  position: absolute;
  left: 44.815%;
  top: 3.835cqw;
  width: 39.027%;
  aspect-ratio: 350/330;
  z-index: 2;
}
.ring,
.official-water {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.ring-gold {
  transform: translate(-3px, -2px);
  opacity: 0.66;
  filter: drop-shadow(0 0 5px rgba(215, 156, 78, 0.26));
}
.ring-ink {
  filter: drop-shadow(1px 4px 5px #0009);
}

.red-house {
  position: absolute;
  left: 35.501%;
  top: 48.464%;
  width: 38.065%;
  height: 26.347%;
  object-fit: fill;
  filter: saturate(1.35) brightness(1.15);
  z-index: 2;
}
.official-water {
  z-index: 4;
  filter: brightness(1.23) drop-shadow(0 2px 3px #0008);
}
.header {
  position: relative;
  z-index: 8;
  height: 7.1cqw;
}
.logo-plaque {
  position: absolute;
  top: -1px;
  left: 2.98cqw;
  width: 15.625cqw;
  height: 5.966cqw;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #d8c7aa url("brand/asset-ba347f455e.png") center/100px 150px;
  border: 1px solid #9f886a;
  border-top: 0;
  border-radius: 0 0 22px 22px;
  box-shadow: 0 2px 13px #0004;
}
.logo-plaque img {
  width: 78%;
  height: auto;
  mix-blend-mode: multiply;
}
.navigation {
  position: absolute;
  left: 34.95%;
  top: 2.12cqw;
  display: flex;
  align-items: center;
  gap: 3.89cqw;
  white-space: nowrap;
}
.navigation a,
.navigation button {
  position: relative;
  font-size: 1.066cqw;
  letter-spacing: 0.09em;
  line-height: 2.15;
  transition: color 0.2s;
}
.navigation a:hover,
.navigation button:hover {
  color: #ffdfaf;
}
.navigation .active:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: #c29962;
  bottom: -5px;
  left: 0;
}
.action {
  height: 3.48cqw;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5cqw;
  padding: 0 2.2cqw;
  border-radius: 4px;
  border: 1px solid #866c4b;
  font-size: 1.03cqw;
  letter-spacing: 0.09em;
  transition:
    background 0.22s,
    box-shadow 0.22s,
    transform 0.22s;
}
.action:hover {
  transform: translateY(-2px);
}
.primary {
  background: #971c13;
  box-shadow: inset 0 1px 0 #ef806733;
  border-color: #b43827;
  color: #eed5b5;
}
.primary:hover {
  background: #ae2419;
  box-shadow:
    0 6px 25px #971c1333,
    inset 0 1px 0 #ef80674d;
}
.secondary {
  background: #081016b3;
  border-color: #847257b3;
}
.secondary:hover {
  background: #b6915322;
  border-color: #c4a06b;
}
.header-donate {
  position: absolute;
  right: 3.9cqw;
  top: 1.85cqw;
  width: 9.59cqw;
  height: 2.98cqw;
  min-height: 0;
  padding: 0 1.42cqw;
  font-size: 1.03cqw;
}
.header-donate svg {
  width: 1.32cqw;
}
.menu-toggle {
  display: none;
}
.hero-copy {
  position: absolute;
  z-index: 5;
  top: 11.49cqw;
  left: 11.15cqw;
}
.hero-copy h1 {
  font-size: 3.87cqw;
  font-weight: 500;
  line-height: 1.28;
  letter-spacing: 0.12em;
  color: #e1c4a1;
  text-shadow: 0 2px 20px #0005;
}
.hero-copy h1 span {
  color: #b12016;
}
.hero-intro {
  font-size: 1.06cqw;
  line-height: 1.82;
  letter-spacing: 0.075em;
  margin-top: 1.23cqw;
  color: #cfb697;
  font-weight: 500;
}
.feature-list {
  display: flex;
  margin-top: 2.31cqw;
  margin-left: -0.55cqw;
  width: 30.25cqw;
}
.feature {
  position: relative;
  width: 25%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.19cqw;
  transition: color 0.2s;
}
.feature:not(:last-child):after {
  content: "";
  height: 4.5cqw;
  position: absolute;
  right: 0;
  top: 0.6cqw;
  border-right: 1px solid var(--line);
}
.feature > svg {
  width: 2.53cqw;
  height: 2.53cqw;
  color: #c79250;
  margin-bottom: 0.2cqw;
}
.feature > span {
  font-size: 0.92cqw;
  letter-spacing: 0.06em;
}
.feature small {
  font-size: 0.75cqw;
  letter-spacing: 0.03em;
  color: #aaa297;
}
.feature:hover {
  color: #f5d9ad;
}
.hero-actions {
  display: flex;
  gap: 1.34cqw;
  margin-top: 2.63cqw;
  margin-left: -0.43cqw;
}
.hero-actions .primary {
  width: 11.9cqw;
}
.hero-actions .secondary {
  width: 11.18cqw;
  padding: 0 2.8cqw;
}
.scroll-explore {
  position: absolute;
  z-index: 5;
  right: 3.5cqw;
  top: 8.1cqw;
  width: 4.5cqw;
  text-align: center;
  color: #b9956b;
  font:
    11px/1.23 Georgia,
    serif;
  letter-spacing: 0.07em;
}
.scroll-line {
  height: 6.48cqw;
  width: 1px;
  background: #bfa07b44;
  display: block;
  margin: 0 auto 1.2cqw;
  position: relative;
}
.scroll-line:before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 5px;
  height: 5px;
  background: #b59675;
  border-radius: 50%;
}
.vertical-motto {
  position: absolute;
  z-index: 5;
  right: 3.83cqw;
  top: 31.3cqw;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1cqw;
}
.vertical-motto > span {
  writing-mode: vertical-rl;
  font-size: 0.99cqw;
  letter-spacing: 0.22em;
  line-height: 1.8;
  color: #bda180;
}
.vertical-motto img {
  width: 2.28cqw;
  height: 2.28cqw;
  opacity: 0.87;
}
.social-links {
  position: absolute;
  left: 3.34cqw;
  top: 40cqw;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 0.68cqw;
}
.social-links button {
  height: 1.52cqw;
  width: 1.52cqw;
  color: #b59876;
  transition:
    color 0.2s,
    transform 0.2s;
}
.social-links svg {
  width: 100%;
  height: 100%;
}
.social-links button:hover {
  color: #f6d5a3;
  transform: translateX(2px);
}
.motion-toggle {
  position: absolute;
  right: 5.37cqw;
  bottom: 16.95cqw;
  z-index: 6;
  border: 1px solid #af865b44;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #b19a7f;
  background: #09111599;
  opacity: 0.55;
  transition: opacity 0.2s;
}
.motion-toggle:hover {
  opacity: 1;
}
.information-grid {
  position: absolute;
  z-index: 7;
  top: 49.38cqw;
  left: 3.34cqw;
  right: 3.76cqw;
  display: grid;
  grid-template-columns: 1.065fr 1fr 1fr 1fr;
  gap: 1.14cqw;
}
.info-card {
  height: 14.63cqw;
  border: 1px solid #75604463;
  border-bottom-color: #3f403952;
  border-radius: 11px;
  padding: 1.24cqw 1.78cqw;
  background: rgba(5, 14, 19, 0.67);
  box-shadow: inset 0 1px 0 #b19b7310;
  transition:
    border-color 0.25s,
    background 0.25s;
  scroll-margin-top: 40px;
}
.info-card:hover {
  border-color: #ae875565;
  background: #08131bc9;
}
.info-card h2 {
  font-size: 1.36cqw;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.035em;
  color: #dec299;
}
.info-card > p {
  font-size: 0.83cqw;
  color: #aaa298;
  line-height: 1.6;
  margin-top: 0.16cqw;
  letter-spacing: 0.04em;
}
.charity-card {
  padding: 1.42cqw 1.55cqw 1.2cqw 1.66cqw;
}
.charity-main {
  display: flex;
  gap: 0.9cqw;
  align-items: flex-start;
}
.medallion {
  mix-blend-mode: lighten;
  width: 6.6cqw;
  height: 8.3cqw;
  object-fit: contain;
}
.charity-main > div {
  padding-top: 1.02cqw;
}
.charity-main h2 {
  font-size: 1.26cqw;
  white-space: nowrap;
}
.charity-main p {
  font-size: 0.82cqw;
  color: #aaa298;
  line-height: 1.5;
  letter-spacing: 0.03em;
  margin-top: 0.48cqw;
}
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 0.65cqw;
  font-size: 0.84cqw;
  letter-spacing: 0.07em;
  line-height: 1.5;
  transition: color 0.2s;
}
.text-link svg {
  width: 1.22cqw;
  height: 1.22cqw;
  color: #c38d53;
  transition: transform 0.2s;
}
.text-link:hover {
  color: #f5d5a0;
}
.text-link:hover svg {
  transform: translateX(4px);
}
.charity-card > .text-link {
  margin-top: 1.08cqw;
  margin-left: 1.29cqw;
}
.giving-options {
  display: grid;
  gap: 0.22cqw;
  margin-top: 0.45cqw;
}
.giving-options > button {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 0.89cqw;
  text-align: left;
  height: 4.13cqw;
  padding: 0.43cqw 0.7cqw;
  border: 1px solid #77684e14;
  background: #beb1a511;
  border-radius: 6px;
  transition: background 0.2s;
}
.giving-options > button:hover {
  background: #d7b78920;
}
.giving-options > button > span:nth-child(2) {
  display: flex;
  flex-direction: column;
  gap: 0.21cqw;
}
.giving-options strong {
  font-size: 1.01cqw;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.giving-options small {
  font-size: 0.77cqw;
  color: #aaa298;
  letter-spacing: 0.03em;
}
.giving-options .round-caret {
  margin-left: auto;
  width: 1.5cqw;
  height: 1.5cqw;
  background: #ccc3ad13;
  border-radius: 50%;
  padding: 3px;
}
.bank-icon {
  width: 2.23cqw;
  height: 2.23cqw;
  color: #d4b99b;
}
.fps-mark {
  width: 2.23cqw;
  height: 2.23cqw;
  border: 1.3px solid #c8bcaa;
  border-radius: 50%;
  font:
    bold italic 1.05cqw/1 Arial,
    sans-serif;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transform: rotate(-10deg);
  color: #e6ddd1;
}
.fps-mark small {
  font: bold 0.39cqw/1.5 sans-serif;
  color: #d7ccbc;
}
.event-preview {
  display: flex;
  align-items: flex-start;
  width: 100%;
  border: 1px solid #7e633c44;
  border-radius: 8px;
  margin-top: 0.8cqw;
  padding: 1.05cqw 0.72cqw;
  height: 6.2cqw;
  text-align: left;
  background: #01080d44;
  position: relative;
  transition: background 0.2s;
}
.event-preview:hover {
  background: #c39a5620;
}
.event-date {
  display: flex;
  flex-direction: column;
  width: 3.4cqw;
  flex: none;
  font-family: Georgia, serif;
  gap: 0.23cqw;
}
.event-date > small {
  font-size: 0.82cqw;
}
.event-date > strong {
  font-size: 1.13cqw;
  font-weight: 400;
}
.event-date > span {
  display: flex;
  align-items: center;
  gap: 3px;
  font-size: 0.75cqw;
}
.event-description {
  border-left: 1px solid var(--line);
  padding-left: 0.72cqw;
  height: 3.7cqw;
  display: flex;
  flex-direction: column;
  gap: 0.3cqw;
}
.event-description strong {
  font-size: 0.89cqw;
  font-weight: 500;
  white-space: nowrap;
}
.event-description small {
  font-size: 0.77cqw;
  color: #999286;
}
.event-arrow {
  position: absolute;
  right: 0.83cqw;
  top: 1.3cqw;
  color: #a58457;
}
.events-card > .text-link {
  margin-top: 1.05cqw;
}
.service-buttons {
  display: grid;
  grid-template-columns: 0.95fr 1.07fr;
  gap: 0.6cqw 0.5cqw;
  margin-top: 1.02cqw;
}
.service-buttons button {
  height: 3.09cqw;
  border: 1px solid #8d71432b;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.55cqw;
  padding: 0 0.67cqw;
  transition:
    background 0.2s,
    border-color 0.2s;
}
.service-buttons button:hover {
  background: #a57b3c18;
  border-color: #a481515e;
}
.service-buttons svg {
  width: 1.88cqw;
  height: 1.88cqw;
  color: #ba8244;
}
.service-buttons span {
  font-size: 0.76cqw;
  white-space: nowrap;
  letter-spacing: 0.02em;
}
.about-band {
  position: relative;
  z-index: 7;
  display: flex;
  align-items: center;
  min-height: 11.92cqw;
  padding: 1.55cqw 5.04cqw 1.2cqw;
  background: #dac8a8 url("brand/asset-ba347f455e.png") center/110px 165px;
  color: #171a17;
  border-top: 1px solid #b79b74;
  overflow: hidden;
}
.about-copy {
  flex: 0 0 36.5%;
  z-index: 1;
}
.about-copy h2 {
  font-size: 2.27cqw;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1.45;
}
.about-copy p {
  font-size: 1.03cqw;
  letter-spacing: 0.08em;
  margin-top: 0.2cqw;
}
.about-copy .text-link {
  margin-top: 0.9cqw;
  color: #27251e;
}
.about-copy .text-link svg {
  color: #393025;
}
.statistics {
  display: flex;
  justify-content: space-between;
  flex: 1;
  z-index: 1;
}
.stat {
  display: flex;
  align-items: flex-start;
  gap: 0.8cqw;
  color: #24241f;
}
.stat > svg {
  width: 2cqw;
  height: 2cqw;
  color: #664528;
  margin-top: 0.37cqw;
}
.stat > div {
  display: flex;
  flex-direction: column;
  gap: 0.1cqw;
}
.stat strong {
  font:
    1.63cqw/1.4 Georgia,
    serif;
  white-space: nowrap;
}
.stat strong small {
  font:
    0.76cqw "Noto Serif TC",
    serif;
  margin-left: 0.37cqw;
}
.stat > div > span {
  font-size: 0.8cqw;
  color: #574d3d;
  letter-spacing: 0.06em;
}
.about-watermark {
  position: absolute;
  width: 24cqw;
  height: auto;
  right: -11cqw;
  top: -2.5cqw;
  opacity: 0.08;
  transform: rotate(15deg);
}
.detail-dialog {
  width: min(560px, calc(100vw - 32px));
  padding: 44px 44px 35px;
  color: #292b25;
  border: 1px solid #b19870;
  border-radius: 16px;
  background: #dac8aa url("brand/asset-ba347f455e.png") center/110px 165px;
  box-shadow: 0 24px 100px #000b;
}
.detail-dialog::backdrop {
  background: #020b12c9;
  backdrop-filter: blur(7px);
}
.dialog-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
}
.dialog-logo {
  width: 150px;
  height: auto;
  mix-blend-mode: multiply;
  margin-bottom: 22px;
}
.eyebrow {
  display: block;
  color: #877454;
  font:
    10px Georgia,
    serif;
  letter-spacing: 3px;
  margin-bottom: 12px;
}
.detail-dialog h2 {
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 2px;
  margin-bottom: 20px;
}
.detail-dialog p {
  font-size: 14px;
  line-height: 1.95;
  letter-spacing: 0.6px;
  color: #55503f;
}
.donation-tabs {
  display: flex;
  gap: 10px;
  margin: 26px 0 18px;
}
.donation-tabs button {
  border: 1px solid #9b8157;
  border-radius: 5px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px;
  font-size: 14px;
  flex: 1;
  text-align: left;
  white-space: nowrap;
}
.donation-tabs button.selected {
  background: #a42a1c;
  color: #f2dec0;
  border-color: #a42a1c;
}
.donation-detail {
  padding: 18px;
  border: 1px solid #97846455;
  border-radius: 5px;
}
.donation-detail h3 {
  font-weight: 500;
  font-size: 18px;
  margin-bottom: 7px;
}
.dialog-done {
  display: flex;
  align-items: center;
  gap: 22px;
  border-bottom: 1px solid #928063;
  padding-bottom: 6px;
  margin-top: 28px;
  font-size: 14px;
}
.event-detail {
  padding: 20px;
  border: 1px solid #97846455;
  margin-top: 20px;
}
.event-detail > span {
  font-size: 12px;
  letter-spacing: 2px;
  color: #866c48;
}
.event-detail h3 {
  font-weight: 500;
  margin: 12px 0;
}
.motion-paused * {
  animation-play-state: paused !important;
}
@keyframes gilding {
  from {
    opacity: 0.35;
  }
  to {
    opacity: 0.88;
  }
}
@media (min-width: 1642px) {
  .website {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 1250px) and (min-width:961px) {
  .dark-panel {
    min-height: 0;
  }
  .navigation {
    gap: 3.1cqw;
    left: 32%;
  }
  .navigation a,
  .navigation button {
    font-size: 1.15cqw;
  }
  .info-card > p,
  .charity-main p {
    font-size: 0.87cqw;
  }
  .header-donate {
    width: 10.5cqw;
  }
  .feature small {
    font-size: 0.8cqw;
  }
}
@media (max-width:960px) {
  html {
    scroll-padding-top: 22px;
  }
  body {
    min-width: 360px;
  }
  .website {
    margin: 10px 10px 0;
    border-radius: 14px 14px 0 0;
    max-width: none;
  }
  .dark-panel {
    height: auto;
    min-height: 0;
    padding: 0 20px 26px;
  }
  .header {
    height: 94px;
    position: relative;
    margin: 0 -20px;
  }
  .logo-plaque {
    left: 17px;
    width: 167px;
    height: 66px;
    border-radius: 0 0 17px 17px;
  }
  .header-donate {
    right: 57px;
    top: 19px;
    width: 104px;
    height: 35px;
    padding: 0 12px;
    font-size: 12px;
    gap: 10px;
    min-height: 0;
  }
  .header-donate svg {
    width: 17px;
  }
  .menu-toggle {
    position: absolute;
    right: 16px;
    top: 24px;
    display: block;
    color: #d3b78e;
  }
  .menu-toggle svg {
    width: 25px;
    height: 25px;
  }
  .navigation {
    display: none;
    position: absolute;
    left: 14px;
    right: 14px;
    top: 76px;
    padding: 23px;
    background: #07121af7;
    border: 1px solid #93704477;
    border-radius: 9px;
    box-shadow: 0 18px 50px #0009;
  }
  .navigation.mobile-open {
    display: flex;
    flex-direction: column;
    gap: 13px;
    align-items: flex-start;
  }
  .navigation a,
  .navigation button {
    font-size: 15px;
    line-height: 1.8;
  }
  .navigation .active:after {
    bottom: -2px;
  }
  .hero-copy {
    position: relative;
    top: 0;
    left: 0;
    padding: 24px 9px 0;
    z-index: 5;
  }
  .hero-copy h1 {
    font-size: clamp(37px, 9cqw, 65px);
    line-height: 1.34;
    letter-spacing: 0.13em;
  }
  .hero-intro {
    font-size: 13px;
    line-height: 1.95;
    letter-spacing: 0.035em;
    margin-top: 19px;
    max-width: 440px;
  }
  .desktop-break {
    display: none;
  }
  .feature-list {
    width: 100%;
    margin: 27px 0 0;
  }
  .feature {
    gap: 5px;
  }
  .feature > svg {
    width: 31px;
    height: 31px;
    margin-bottom: 5px;
  }
  .feature > span {
    font-size: 12px;
  }
  .feature small {
    font-size: 9px;
    white-space: nowrap;
    letter-spacing: 0;
  }
  .feature:not(:last-child):after {
    height: 57px;
    top: 8px;
  }
  .hero-actions {
    gap: 13px;
    margin: 25px 0 0;
  }
  .action {
    height: 44px;
    min-height: 44px;
    padding: 0 22px;
    font-size: 13px;
    gap: 22px;
  }
  .hero-actions .primary {
    width: 154px;
  }
  .hero-actions .secondary {
    width: 149px;
    padding: 0 24px;
  }
  .art-stage {
    height: 940px;
    overflow: hidden;
  }
  
  .gold-canvas {
    width: 810px;
    height: 408px;
    left: calc(50% - 492px);
    top: 443px;
  }
  .brand-emblem {
    width: 350px;
    left: calc(50% - 156px);
    top: 495px;
  }
  .ring-gold {
    transform: translate(-2px, -2px);
  }
  .vertical-motto {
    right: 17px;
    top: 608px;
    gap: 12px;
  }
  .vertical-motto > span {
    font-size: 10px;
    letter-spacing: 0.15em;
  }
  .vertical-motto img {
    width: 25px;
    height: 25px;
  }
  .scroll-explore {
    display: none;
  }
  .social-links {
    left: 26px;
    top: 710px;
    gap: 12px;
  }
  .social-links button {
    width: 18px;
    height: 18px;
  }
  .motion-toggle {
    right: 21px;
    top: 853px;
    bottom: auto;
    width: 24px;
    height: 24px;
  }
  .information-grid {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    margin-top: 448px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .info-card {
    height: auto;
    min-height: 188px;
    border-radius: 9px;
    padding: 23px;
  }
  .info-card h2 {
    font-size: 19px;
    letter-spacing: 0.04em;
  }
  .info-card > p {
    font-size: 12px;
    line-height: 1.65;
    margin-top: 5px;
  }
  .charity-card {
    padding: 18px 23px;
  }
  .charity-main {
    gap: 19px;
  }
  .medallion {
    mix-blend-mode: lighten;
    width: 85px;
    height: 110px;
  }
  .charity-main > div {
    padding-top: 22px;
  }
  .charity-main h2 {
    font-size: 16px;
  }
  .charity-main p {
    font-size: 12px;
    line-height: 1.6;
    margin-top: 9px;
  }
  .text-link {
    font-size: 12px;
    gap: 12px;
  }
  .text-link svg {
    width: 17px;
    height: 17px;
  }
  .charity-card > .text-link {
    margin: 14px 0 0 8px;
  }
  .giving-options {
    gap: 6px;
    margin-top: 13px;
  }
  .giving-options > button {
    height: 59px;
    padding: 8px 13px;
    gap: 17px;
  }
  .giving-options > button > span:nth-child(2) {
    gap: 4px;
  }
  .giving-options strong {
    font-size: 14px;
  }
  .giving-options small {
    font-size: 11px;
  }
  .giving-options .round-caret {
    width: 22px;
    height: 22px;
    padding: 3px;
  }
  .fps-mark {
    width: 31px;
    height: 31px;
    font-size: 16px;
  }
  .fps-mark small {
    font-size: 6px;
  }
  .bank-icon {
    width: 31px;
    height: 31px;
  }
  .event-preview {
    margin-top: 13px;
    padding: 14px;
    height: 92px;
  }
  .event-date {
    width: 52px;
    gap: 5px;
  }
  .event-date > small {
    font-size: 12px;
  }
  .event-date > strong {
    font-size: 18px;
  }
  .event-date > span {
    font-size: 10px;
  }
  .event-description {
    padding-left: 15px;
    height: 55px;
    gap: 8px;
  }
  .event-description strong {
    font-size: 14px;
  }
  .event-description small {
    font-size: 12px;
  }
  .event-arrow {
    right: 15px;
    top: 19px;
  }
  .events-card > .text-link {
    margin-top: 18px;
  }
  .service-buttons {
    gap: 9px;
    margin-top: 19px;
  }
  .service-buttons button {
    height: 51px;
    padding: 0 12px;
    gap: 9px;
  }
  .service-buttons svg {
    width: 27px;
    height: 27px;
  }
  .service-buttons span {
    font-size: 11px;
  }
  .about-band {
    padding: 28px 28px 36px;
    display: block;
    min-height: 350px;
  }
  .about-copy h2 {
    font-size: 29px;
    letter-spacing: 0.14em;
  }
  .about-copy p {
    font-size: 12px;
    line-height: 1.9;
    margin-top: 6px;
  }
  .about-copy .text-link {
    margin-top: 13px;
  }
  .statistics {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 27px 23px;
    margin-top: 32px;
  }
  .stat {
    gap: 10px;
  }
  .stat > svg {
    width: 26px;
    height: 26px;
    margin-top: 5px;
  }
  .stat strong {
    font-size: 23px;
  }
  .stat strong small {
    font-size: 10px;
    margin-left: 5px;
  }
  .stat > div > span {
    font-size: 11px;
  }
  .stat > div {
    gap: 4px;
  }
  .about-watermark {
    width: 340px;
    right: -150px;
    top: 130px;
    opacity: 0.05;
  }
  .detail-dialog {
    padding: 32px 25px 27px;
  }
  .detail-dialog h2 {
    font-size: 23px;
  }
  .donation-tabs {
    gap: 8px;
  }
  .donation-tabs button {
    padding: 11px;
    font-size: 12px;
    gap: 7px;
  }
}
@media (min-width: 551px) and (max-width:960px) {
  .hero-copy {
    padding-left: 36px;
  }
  .hero-intro {
    font-size: 15px;
  }
  .feature-list {
    max-width: 440px;
  }
  .feature > span {
    font-size: 14px;
  }
  .feature small {
    font-size: 11px;
  }
  .art-stage .brand-emblem {
    top: 534px;
    width: 410px;
    left: calc(50% - 190px);
  }
  .gold-canvas {
    top: 480px;
    width: 950px;
    height: 480px;
    left: calc(50% - 578px);
  }
  
  .vertical-motto {
    top: 650px;
  }
  .information-grid {
    margin-top: 490px;
    grid-template-columns: 1fr 1fr;
  }
  .charity-main {
    gap: 8px;
  }
  .medallion {
    mix-blend-mode: lighten;
    width: 57px;
  }
  .charity-main h2 {
    font-size: 12px;
  }
  .charity-main p {
    font-size: 10px;
  }
  .info-card {
    padding: 18px;
  }
  .service-buttons {
    grid-template-columns: 1fr;
  }
  .services-card {
    grid-row: span 1;
  }
  .service-buttons button {
    height: 40px;
  }
  .information-grid .charity-card {
    min-height: 217px;
  }
  .social-links {
    top: 787px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* Source comparison refinements. */
.action {
  white-space: nowrap;
  flex-shrink: 0;
}
.hero-actions .secondary {
  padding-inline: 1.9cqw;
}
.header-donate {
  gap: 0.9cqw;
  padding-inline: 1.3cqw;
}
.ring-gold {
  opacity: 0.95;
  filter: drop-shadow(-1px 0 4px #d2944d55);
}
.ring-edge {
  opacity: 0.76;
  mix-blend-mode: screen;
  filter: drop-shadow(0 0 1px #c68b46);
}

.official-water {
  filter: brightness(0.9) drop-shadow(0 2px 3px #0008);
  opacity: 0.9;
}
.primary {
  background: #91170f;
}
.hero-actions {
  margin-top: 2cqw;
}
@keyframes gilding {
  from {
    opacity: 0.13;
  }
  to {
    opacity: 0.35;
  }
}
@media (max-width:960px) {
  .header-donate {
    padding: 0 12px;
    gap: 10px;
  }
  .hero-actions .secondary {
    padding-inline: 24px;
  }
  .hero-actions {
    margin-top: 25px;
  }
}

.art-stage:after{content:none;}
.red-house {
  filter: saturate(1.48) contrast(1.12) brightness(1.12);
}
.info-card h2 {
  color: #e6c79f;
}
.info-card > p {
  color: #aca294;
}
@media (max-width:960px) {
  .art-stage:after {
    top: 450px;
    height: 420px;
    opacity: 0.16;
  }
}

/* 2026-09-06: one water material, clean native ring silhouette, restrained gilding. */

.art-stage:after {
  display: none;
}
.ring-gold {
  opacity: 0.78;
  filter: drop-shadow(-1px 0 3px #d2944d30);
}
.ring-edge {
  opacity: 0.55;
  filter: none;
}

.red-house {
  filter: saturate(1.17) contrast(1.06) brightness(1.05);
}
@media (max-width:960px) {
  .art-stage .gold-canvas, .art-stage .flow-canvas{
    width: 900px;
    height: 453.84px;
    left: calc(50% - 560px);
    top: 460px;
    opacity: 1;
  }
  .art-stage .brand-emblem {
    left: calc(50% - 156.68px);
    top: 494.52px;
    width: 351.25px;
  }
}
@media (min-width: 551px) and (max-width:960px) {
  .art-stage .gold-canvas, .art-stage .flow-canvas{
    width: 1052px;
    height: 530.48px;
    left: calc(50% - 661.3px);
    top: 493.65px;
  }
  .art-stage .brand-emblem {
    left: calc(50% - 189.77px);
    top: 534px;
    width: 410.58px;
  }
}

.flow-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 4;
  pointer-events: none;
}
.ring-edge {
  opacity: 0.86;
}
.ring-gold {
  opacity: 0.92;
}
.red-house {
  filter: saturate(1.4) contrast(1.15) brightness(1.05);
}

@media (max-width:960px) {
  .art-stage .flow-canvas{
    mask-image: linear-gradient(
      to bottom,
      transparent,
      #000 12%,
      #000 88%,
      transparent
    );
  }
}


/* ===== 2026-09-07 FORMAL HOMEPAGE LAYER =====
   The art-stage / ring / gold-canvas / flow-canvas visual engine above is frozen.
   This block only styles formal homepage content below/around it. */
.section-kicker{display:block;font:500 10px/1.3 Georgia,serif;letter-spacing:.26em;text-transform:uppercase;color:#9d7b4e;margin-bottom:14px}
.trust-band{min-height:14.4cqw;padding-block:1.35cqw}.trust-band .about-copy{flex-basis:34%}.trust-band .about-copy h2{font-size:1.95cqw}.trust-band .about-copy p{max-width:30cqw;font-size:.91cqw;line-height:1.75;letter-spacing:.045em}.trust-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2cqw;flex:1;position:relative;z-index:1}.trust-fact{border-left:1px solid #806c4d55;padding:.4cqw 0 .4cqw 1.1cqw;display:flex;flex-direction:column;gap:.25cqw}.trust-fact strong{font:500 1.12cqw/1.35 "Noto Serif TC",serif;color:#2e271e}.trust-fact span{font-size:.79cqw;line-height:1.45;color:#453c31}.trust-fact small{font-size:.69cqw;line-height:1.45;color:#776752}.service-dot{width:1.72cqw;height:1.72cqw;border:1px solid #a67d48;border-radius:50%;display:grid;place-items:center;font:500 .62cqw/1 Georgia,serif;color:#c99a60;flex:none}.formal-event-preview{color:inherit;text-decoration:none}.formal-event-preview .event-arrow{font-size:1.35cqw;line-height:1}
.home-section{position:relative;z-index:8;background:#061119;color:#efe7dc}.section-shell{width:min(1380px,calc(100% - 10.2cqw));margin:0 auto;padding:6.3cqw 0}.two-column-section{display:grid;grid-template-columns:.84fr 1.16fr;gap:8cqw;align-items:start}.section-heading h2,.section-head-row h2,.donation-intro h2,.contact-home h2{font:500 clamp(28px,2.75cqw,44px)/1.42 "Noto Serif TC",serif;letter-spacing:.095em;color:#efd5ae}.section-body{max-width:680px}.section-body p{font-size:clamp(14px,.98cqw,16px);line-height:2.0;letter-spacing:.035em;color:#bdb4a8;margin:0 0 1.2em}.section-body .lead{font-size:clamp(16px,1.15cqw,19px);color:#ddd3c5}.inline-links{display:flex;gap:26px;margin-top:30px}.inline-links a{font-size:13px;letter-spacing:.06em;color:#d4a763;text-decoration:none;border-bottom:1px solid #8e6b3d;padding-bottom:5px}.section-head-row{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:3.1cqw}.section-head-row>p{max-width:500px;font-size:14px;line-height:1.85;color:#9f978d;margin:0}.services-home{background:#08151e;border-top:1px solid #876d4933;border-bottom:1px solid #876d4933}.service-grid-formal{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2cqw}.service-grid-formal article{min-height:18cqw;padding:2cqw 1.65cqw;border:1px solid #886c4445;border-radius:10px;background:linear-gradient(145deg,#0b1922d9,#061119d9);position:relative;overflow:hidden;transition:transform .25s,border-color .25s,background .25s}.service-grid-formal article:hover{transform:translateY(-4px);border-color:#c08b4b77;background:linear-gradient(145deg,#0d1c26,#07131b)}.service-index{font:400 .8cqw/1 Georgia,serif;letter-spacing:.12em;color:#a97a42}.service-grid-formal h3{font:500 1.22cqw/1.5 "Noto Serif TC",serif;letter-spacing:.06em;color:#ead4b4;margin:2.1cqw 0 .7cqw}.service-grid-formal p{font-size:.83cqw;line-height:1.85;color:#aaa297;margin:0}.service-tag{position:absolute;left:1.65cqw;bottom:1.55cqw;font:500 .57cqw/1.2 Georgia,serif;letter-spacing:.16em;color:#826d52}.activities-home{background:#050f16}.activity-grid-formal{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:1.2cqw;grid-auto-rows:minmax(12.4cqw,auto)}.activity-grid-formal article{border:1px solid #7e68494a;border-radius:10px;overflow:hidden;background:#0a171f;display:grid;grid-template-columns:42% 58%;min-width:0}.activity-grid-formal .activity-featured{grid-row:span 2;grid-template-columns:1fr;grid-template-rows:minmax(17cqw,1fr) auto}.activity-image{overflow:hidden;min-height:100%;background:#10202a}.activity-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease,filter .45s ease;filter:saturate(.82) contrast(.98)}.activity-grid-formal article:hover img{transform:scale(1.035);filter:saturate(.98) contrast(1.02)}.activity-copy{padding:1.35cqw 1.4cqw;display:flex;flex-direction:column;justify-content:center;min-width:0}.activity-date{font:500 .66cqw/1.3 Georgia,serif;letter-spacing:.12em;color:#b98a4e}.activity-copy h3{font:500 1.08cqw/1.5 "Noto Serif TC",serif;letter-spacing:.05em;color:#ead4b4;margin:.5cqw 0}.activity-featured .activity-copy h3{font-size:1.38cqw}.activity-copy p{font-size:.76cqw;line-height:1.75;color:#9f988e;margin:0}.activity-category{margin-top:1cqw;font-size:.64cqw;letter-spacing:.1em;color:#8e7b62}.donation-home{background:#dac8a8 url("brand/asset-ba347f455e.png") center/110px 165px;color:#211e19}.donation-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:6cqw;align-items:center}.donation-intro .section-kicker{color:#775f3d}.donation-intro h2{color:#2b241b}.donation-intro>p{font-size:14px;line-height:1.9;color:#54493b;max-width:520px}.donation-note{font-size:12px!important;color:#776956!important;border-left:2px solid #a17a49;padding-left:15px;margin-top:24px}.donation-methods-formal{display:grid;grid-template-columns:1fr 1fr;gap:1.25cqw}.donation-methods-formal article{padding:2cqw;border:1px solid #94774f66;border-radius:11px;background:#f5ead5a3;box-shadow:0 12px 35px #65411610}.method-label{font-size:12px;letter-spacing:.12em;color:#795c37}.donation-methods-formal h3{font:500 1.7cqw/1.2 Georgia,serif;color:#34291e;margin:.9cqw 0}.donation-methods-formal p{font-size:12px;line-height:1.75;color:#625442}.donation-methods-formal p strong{font-weight:600;font-size:11px;letter-spacing:.04em}.copy-data{margin-top:1.25cqw;padding:10px 14px;border:1px solid #836840;border-radius:5px;font-size:12px;color:#433526;transition:background .2s,color .2s}.copy-data:hover{background:#8f261b;color:#f3dfc1;border-color:#8f261b}.copy-data.copied{background:#365643;color:#f4e8d5;border-color:#365643}.contact-home{background:#07141d;border-top:1px solid #8b6c4638}.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:7cqw;align-items:start}.contact-home h2{margin-bottom:14px}.contact-home p{color:#9f978c;font-size:14px}.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#806b4b3a;border:1px solid #806b4b3a}.contact-list>*{background:#07141d;padding:1.55cqw;text-decoration:none;display:flex;flex-direction:column;gap:.45cqw;min-height:6.8cqw}.contact-list>div:last-child{grid-column:1/-1}.contact-list span{font-size:.68cqw;letter-spacing:.14em;color:#947955}.contact-list strong{font-size:.9cqw;line-height:1.65;font-weight:400;color:#ded0be;overflow-wrap:anywhere}.site-footer{position:relative;z-index:8;background:#030a0f;border-top:1px solid #76604245;color:#998f83}.footer-inner{width:min(1380px,calc(100% - 10.2cqw));margin:auto;padding:3.2cqw 0;display:grid;grid-template-columns:1.1fr 1fr 1.2fr;gap:3cqw;align-items:end}.footer-brand img{width:185px;height:auto;background:#e1d0b1;border-radius:6px;padding:8px 12px}.footer-brand p{font-size:12px;margin:12px 0 0;letter-spacing:.08em}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:9px 20px}.footer-nav a{font-size:12px;color:#b3a99c;text-decoration:none}.footer-nav a:hover{color:#e2c394}.footer-legal{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.footer-legal strong{font-size:11px;font-weight:500;color:#c7b8a5}.footer-legal span{font-size:10px;letter-spacing:.04em}.social-links button[disabled]{pointer-events:none;opacity:.34}
@media(max-width:960px){.trust-band{padding:30px 28px 34px}.trust-band .about-copy h2{font-size:28px}.trust-band .about-copy p{font-size:12px;max-width:none}.trust-facts{grid-template-columns:1fr 1fr;gap:22px 12px;margin-top:30px}.trust-fact{padding-left:12px}.trust-fact strong{font-size:15px}.trust-fact span{font-size:11px}.trust-fact small{font-size:10px}.section-shell{width:auto;margin:0;padding:64px 28px}.two-column-section,.donation-layout,.contact-layout{grid-template-columns:1fr;gap:34px}.section-heading h2,.section-head-row h2,.donation-intro h2,.contact-home h2{font-size:30px}.section-head-row{display:block;margin-bottom:30px}.section-head-row>p{margin-top:14px}.service-grid-formal{grid-template-columns:1fr 1fr;gap:12px}.service-grid-formal article{min-height:210px;padding:22px 18px}.service-index{font-size:11px}.service-grid-formal h3{font-size:17px;margin:30px 0 11px}.service-grid-formal p{font-size:12px}.service-tag{font-size:8px;left:18px;bottom:18px}.activity-grid-formal{grid-template-columns:1fr;grid-auto-rows:auto}.activity-grid-formal article,.activity-grid-formal .activity-featured{grid-row:auto;grid-template-columns:38% 62%;grid-template-rows:auto;min-height:150px}.activity-grid-formal .activity-featured{grid-template-columns:1fr;min-height:0}.activity-featured .activity-image{height:230px}.activity-copy{padding:18px}.activity-date{font-size:10px}.activity-copy h3,.activity-featured .activity-copy h3{font-size:17px}.activity-copy p{font-size:12px}.activity-category{font-size:9px}.donation-methods-formal{grid-template-columns:1fr}.donation-methods-formal article{padding:24px}.donation-methods-formal h3{font-size:27px}.contact-list{grid-template-columns:1fr}.contact-list>div:last-child{grid-column:auto}.contact-list>*{padding:20px;min-height:90px}.contact-list span{font-size:10px}.contact-list strong{font-size:13px}.footer-inner{width:auto;padding:38px 28px;grid-template-columns:1fr;gap:28px;align-items:start}.footer-nav{grid-template-columns:1fr 1fr}.footer-legal{align-items:flex-start;text-align:left}.inline-links{flex-direction:column;gap:14px}.section-kicker{font-size:9px}}
@media(max-width:520px){.service-grid-formal{grid-template-columns:1fr}.service-grid-formal article{min-height:190px}.activity-grid-formal article{grid-template-columns:1fr}.activity-grid-formal article:not(.activity-featured) .activity-image{height:180px}}

/* R2: annotated homepage corrections, embedded assets and responsive type. */
:root { --numeric-font: Arial, "Helvetica Neue", "PingFang TC", sans-serif; }
body { min-width:320px; }
.website { width:calc(100% - 40px); margin:24px auto 0; }
.numeric,.event-date,.activity-date,.service-index,.service-dot,.method-number,.contact-phone,.legal-ref {
  font-family:var(--numeric-font); font-variant-numeric:lining-nums tabular-nums; font-feature-settings:"lnum" 1,"tnum" 1;
}
.feature small {font-size:clamp(11px,.75cqw,13px);}
.feature > span {font-size:clamp(13px,.92cqw,16px);}
.vertical-motto img {width:clamp(30px,2.5cqw,40px);height:auto;opacity:1;}
.motion-toggle {right:8cqw;bottom:auto;top:46cqw;width:32px;height:32px;opacity:.8;}
.info-card {height:auto;min-height:230px;padding:22px 23px;display:flex;flex-direction:column;}
.info-card h2 {font-size:clamp(19px,1.36cqw,23px);}
.info-card > p {font-size:13px;line-height:1.7;}
.information-grid {grid-template-columns:repeat(4,minmax(0,1fr));}
.dark-panel {height:calc(49.38cqw + 262px);min-height:0;}
.charity-main {gap:16px;align-items:center;flex:1;}
.charity-main > div {padding:0;min-width:0;}
.charity-main h2 {font-size:clamp(17px,1.2cqw,20px);white-space:normal;line-height:1.6;}
.charity-main p {font-size:13px;line-height:1.8;margin-top:6px;letter-spacing:0;}
.charity-status {display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:none;padding-right:16px;border-right:1px solid var(--line);}
.charity-status small {font-size:12px;color:#bca17e;letter-spacing:.08em;}
.charity-status strong {font-family:var(--numeric-font);font-size:52px;line-height:1.1;font-weight:400;letter-spacing:-.06em;color:#e6c79f;}
.charity-card > .text-link,.events-card > .text-link {margin:16px 0 0;font-size:13px;}
.giving-options {gap:7px;margin-top:10px;}
.giving-options > button {height:65px;padding:8px 10px;gap:12px;}
.giving-options strong {font-size:15px;}
.giving-options small {font-family:var(--numeric-font);font-size:12px;letter-spacing:.01em;white-space:nowrap;}
.giving-options .round-caret {width:22px;height:22px;}
.fps-logo-wrap {background:#fff;border-radius:6px;width:38px;height:38px;padding:4px;flex:none;display:grid;place-items:center;}
.fps-official {display:block;width:100%;height:100%;object-fit:contain;}
.bank-icon {width:38px;height:38px;padding:4px;}
.event-preview {height:auto;min-height:89px;padding:13px 10px;margin-top:11px;align-items:center;gap:12px;}
.event-date {width:63px;gap:5px;letter-spacing:0;}
.event-date > small {font-size:12px;letter-spacing:.1em;color:#b8a48b;}
.event-date > strong {font-size:20px;line-height:1.1;font-weight:500;white-space:nowrap;}
.event-date > span {font:12px/1.5 "Noto Serif TC",serif;}
.event-description {height:auto;min-height:52px;justify-content:center;padding-left:12px;gap:5px;}
.event-description strong {font-size:14px;line-height:1.65;white-space:normal;}
.event-description small {font-size:12px;line-height:1.6;}
.event-arrow {display:none;}
.service-buttons {gap:8px;margin-top:14px;}
.service-buttons button {height:48px;padding:0 8px;gap:7px;}
.service-buttons button > span:last-child {font-size:12px;white-space:normal;line-height:1.5;}
.service-dot {width:24px;height:24px;font-size:10px;letter-spacing:0;}
.trust-band {padding-block:38px;}
.trust-band .about-copy p {font-size:14px;}
.trust-fact strong {font-size:18px;}
.trust-fact span {font-size:14px;}
.trust-fact small {font-size:12px;}
.section-shell {padding-block:clamp(68px,6cqw,96px);}
.section-kicker {font-size:12px;}
.section-body p {font-size:16px;}
.section-body .lead {font-size:18px;}
.inline-links a {font-size:14px;}
.section-head-row {margin-bottom:36px;}
.service-grid-formal article {min-height:285px;padding:28px 24px;display:flex;flex-direction:column;}
.service-index {font-size:13px;}
.service-grid-formal h3 {font-size:clamp(18px,1.22cqw,21px);margin:30px 0 12px;letter-spacing:.03em;}
.service-grid-formal p {font-size:14px;line-height:1.9;}
.service-tag {position:static;font-size:10px;margin-top:auto;padding-top:28px;line-height:1.5;}
.activity-grid-formal {grid-template-columns:1.32fr 1fr 1fr;grid-template-rows:repeat(2,auto);grid-auto-rows:auto;gap:18px;align-items:stretch;}
.activity-grid-formal article {grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;}
.activity-grid-formal .activity-featured {grid-row:span 2;grid-template-rows:auto 1fr;}
.activity-image {min-height:0;aspect-ratio:16/9;}
.activity-image img {height:100%;filter:none;object-position:center;}
.activity-featured .activity-image {aspect-ratio:4/3;}
.activity-featured .activity-image img {object-fit:cover;}
.activity-copy {padding:21px 22px;justify-content:flex-start;}
.activity-date {font-size:12px;line-height:1.5;letter-spacing:.06em;color:#c59f6e;}
.activity-copy h3 {font-size:18px;line-height:1.55;letter-spacing:.03em;margin:9px 0;}
.activity-featured .activity-copy {padding:28px;}
.activity-featured .activity-copy h3 {font-size:25px;line-height:1.6;margin:14px 0;}
.activity-copy p {font-size:14px;line-height:1.85;color:#b4ada3;}
.activity-featured .activity-copy p {font-size:16px;line-height:1.95;}
.activity-category {font-size:12px;line-height:1.6;margin-top:22px;color:#b3a087;}
.activity-featured .activity-category {margin-top:auto;padding-top:24px;}
.donation-layout {grid-template-columns:.8fr 1.2fr;gap:4cqw;}
.donation-intro > p {font-size:16px;}
.donation-note {font-size:14px!important;line-height:1.9;}
.donation-methods-formal article {padding:25px 23px;min-width:0;}
.method-label {font-size:13px;letter-spacing:.07em;}
.donation-methods-formal .method-number {font-family:var(--numeric-font);font-size:clamp(23px,1.85cqw,31px);font-weight:500;letter-spacing:.025em;line-height:1.4;white-space:nowrap;margin:16px 0 18px;}
.donation-methods-formal p {font-size:14px;}
.donation-methods-formal p strong {font-family:var(--numeric-font);font-weight:500;font-size:12px;letter-spacing:.02em;}
.copy-data {min-height:44px;font-size:14px;}
.copy-status {display:block;min-height:20px;font-size:12px;line-height:1.5;margin-top:8px;}
.contact-layout {grid-template-columns:.65fr 1.35fr;gap:4.5cqw;}
.contact-home p {font-size:16px;line-height:1.85;}
.contact-list {grid-template-columns:1.05fr 1fr;}
.contact-list > * {padding:24px;min-height:125px;gap:9px;}
.contact-list span {font-size:12px;line-height:1.5;}
.contact-list strong {font-size:14px;line-height:1.8;letter-spacing:0;}
.contact-email strong {font-family:var(--numeric-font);}
.contact-phone-group {display:flex;flex-direction:column;gap:6px;}
.contact-phone-group a {font-family:var(--numeric-font);font-size:15px;line-height:1.6;white-space:nowrap;}
.contact-phone-group a:hover {color:#f2d2a7;}
.contact-list .contact-address {min-height:98px;grid-column:1/-1;overflow-x:auto;}
.contact-address strong {white-space:nowrap;overflow-wrap:normal;}
.footer-inner {grid-template-columns:1fr .95fr 1.3fr;align-items:start;gap:50px;padding-block:48px;}
.footer-brand img {display:block;width:210px;max-width:100%;}
.footer-brand p {font-size:13px;line-height:1.8;margin-top:18px;}
.footer-nav {padding-top:7px;gap:16px 28px;}
.footer-nav a {font-size:14px;line-height:1.6;}
.footer-legal {align-items:flex-end;padding-top:7px;gap:10px;}
.footer-legal strong {font-size:13px;line-height:1.8;}
.footer-legal span {font-family:var(--numeric-font);font-size:12px;line-height:1.6;}
@media (min-width:961px) and (max-width:1200px) {
 .dark-panel {height:calc(49.38cqw + 540px);}
 .information-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
 .info-card {min-height:236px;}
 .hero-intro {font-size:14px;letter-spacing:0;}
 .hero-copy {left:8cqw;top:10.8cqw;}
 .feature-list {width:39cqw;}
 .hero-copy h1 {font-size:4cqw;}
 .feature small {font-size:11px;}
 .navigation {left:27%;gap:2.4cqw;}
 .navigation a {font-size:13px;letter-spacing:0;}
 .header-donate {font-size:13px;width:11.5cqw;right:2cqw;}
 .hero-actions .action {min-width:130px;font-size:14px;padding-inline:18px;}
 .service-grid-formal {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
 .activity-grid-formal {grid-template-columns:1fr 1fr;}
 .activity-grid-formal .activity-featured {grid-column:1/-1;grid-row:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto;}
 .activity-featured .activity-image {aspect-ratio:4/3;}
 .activity-featured .activity-copy h3 {font-size:23px;}
 .donation-layout {grid-template-columns:1fr;gap:32px;}
 .donation-intro > p {max-width:none;}
 .contact-layout {grid-template-columns:1fr;gap:30px;}
 .footer-inner {gap:28px;grid-template-columns:.9fr .75fr 1.3fr;}
 .footer-brand img {width:185px;}
}
@media(max-width:960px) {
 .website {width:calc(100% - 20px);margin:10px auto 0;}
 .dark-panel {height:auto;min-height:0;}
 .hero-intro {font-size:15px;}
 .feature > span {font-size:14px;}
 .feature small {font-size:11px;white-space:normal;text-align:center;max-width:76px;line-height:1.6;}
 .feature-list {gap:5px;}
 .hero-actions .action {font-size:15px;}
 .information-grid {grid-template-columns:1fr;margin-top:448px;gap:16px;}
 .info-card {min-height:225px;padding:24px;}
 .charity-main {justify-content:flex-start;}
 .charity-main h2 {font-size:20px;}
 .charity-main p {font-size:14px;}
 .charity-status strong {font-size:58px;}
 .charity-card > .text-link,.events-card > .text-link {margin-top:18px;font-size:14px;}
 .service-buttons {grid-template-columns:1fr 1fr;}
 .service-buttons button > span:last-child {font-size:14px;}
 .vertical-motto {top:634px;right:13px;}
 .vertical-motto img {width:30px;}
 .motion-toggle {top:864px;right:26px;bottom:auto;width:36px;height:36px;}
 .trust-band .about-copy p {max-width:none;}
 .trust-facts {gap:25px 14px;}
 .section-shell {padding:60px 25px;}
 .two-column-section,.donation-layout,.contact-layout {grid-template-columns:1fr;gap:28px;}
 .section-body .lead {font-size:17px;}
 .section-body p {font-size:15px;}
 .section-head-row {margin-bottom:26px;}
 .service-grid-formal {grid-template-columns:1fr 1fr;gap:14px;}
 .service-grid-formal article {min-height:270px;padding:24px 20px;}
 .service-grid-formal h3 {font-size:18px;margin-top:26px;}
 .service-grid-formal p {font-size:14px;}
 .service-tag {font-size:10px;}
 .activity-grid-formal {grid-template-columns:1fr 1fr;gap:16px;}
 .activity-grid-formal article,.activity-grid-formal .activity-featured {grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:0;grid-row:auto;}
 .activity-grid-formal .activity-featured {grid-column:1/-1;}
 .activity-grid-formal article .activity-image,.activity-grid-formal article:not(.activity-featured) .activity-image {height:auto;aspect-ratio:4/3;}
 .activity-copy,.activity-featured .activity-copy {padding:22px;}
 .activity-copy h3 {font-size:18px;}
 .activity-featured .activity-copy h3 {font-size:23px;}
 .activity-copy p,.activity-featured .activity-copy p {font-size:14px;}
 .activity-date {font-size:12px;}
 .activity-category {font-size:12px;}
 .donation-methods-formal {grid-template-columns:1fr 1fr;gap:14px;}
 .donation-methods-formal article {padding:24px 20px;}
 .donation-methods-formal .method-number {font-size:25px;}
 .donation-intro > p {font-size:15px;}
 .contact-list {grid-template-columns:1fr;}
 .contact-list > * {padding:22px;min-height:108px;}
 .contact-list .contact-address {grid-column:auto;}
 .contact-list strong {font-size:14px;}
 .contact-address {position:relative;}
 .footer-inner {padding:38px 25px;grid-template-columns:1fr 1fr;gap:30px;}
 .footer-legal {grid-column:1/-1;align-items:flex-start;text-align:left;padding-top:24px;border-top:1px solid var(--line);}
 .footer-brand img {width:190px;}
 .footer-nav {gap:14px 20px;}
 .footer-brand p {font-size:12px;}
 .inline-links {flex-direction:row;flex-wrap:wrap;gap:18px;}
}
@media (min-width:551px) and (max-width:960px) {
 .information-grid {grid-template-columns:repeat(2,minmax(0,1fr));margin-top:490px;}
 .info-card {padding:22px;}
 .service-buttons button > span:last-child {font-size:12px;}
 .motion-toggle {top:920px;}
 .charity-main {gap:12px;}
 .charity-status {padding-right:12px;}
 .charity-status strong {font-size:44px;}
 .charity-main h2 {font-size:17px;}
 .charity-main p {font-size:12px;}
}
@media(max-width:550px) {
 .hero-copy {padding-inline:4px;}
 .hero-copy h1 {font-size:clamp(32px,8.8cqw,46px);letter-spacing:.08em;}
 .hero-intro {font-size:14px;}
 .service-grid-formal,.activity-grid-formal,.donation-methods-formal {grid-template-columns:1fr;}
 .service-grid-formal article {min-height:230px;}
 .donation-methods-formal .method-number {font-size:27px;}
 .footer-inner {grid-template-columns:1fr;gap:28px;}
 .footer-legal {grid-column:auto;}
 .footer-nav {grid-template-columns:1fr 1fr;}
 .contact-list .contact-address {padding-inline:16px;}
 .contact-address strong {font-size:11px;letter-spacing:-.045em;}
}
@media(max-width:370px) {
 .dark-panel {padding-inline:14px;}
 .logo-plaque {width:145px;left:14px;}
 .header-donate {width:96px;right:48px;font-size:11px;}
 .menu-toggle {right:10px;}
 .feature > span {font-size:12px;}
 .feature small {font-size:10px;}
 .hero-actions {gap:10px;}
 .hero-actions .primary,.hero-actions .secondary {width:auto;flex:1;padding-inline:14px;gap:8px;}
 .section-shell {padding-inline:18px;}
 .contact-address strong {font-size:10px;}
}
/* Keep service labels together and preserve readable, single-line contact text. */
.service-buttons button {padding-inline:6px;gap:6px;}
.service-buttons button > span:last-child {font-size:clamp(10px,.82cqw,12px);letter-spacing:0;white-space:nowrap;}
.service-dot {width:22px;height:22px;}
.contact-list,.contact-list > * {min-width:0;}
.contact-list .contact-address {max-width:100%;}
.contact-address strong {width:max-content;max-width:none;}
@media(max-width:960px) {
 .service-buttons button > span:last-child {font-size:13px;}
 .contact-address strong {font-size:14px;letter-spacing:0;}
}
@media (min-width:551px) and (max-width:960px) {
 .service-buttons button > span:last-child {font-size:11px;}
}
@media(max-width:550px) {
 /* The desktop address stays on one line; narrow screens wrap naturally without a forced break. */
 .contact-address strong {width:auto;white-space:normal;overflow-wrap:normal;word-break:normal;}
 .contact-list .contact-address {overflow-x:visible;}
}

/* R3: deliberate spacing and phrase-aware mobile typography. */
.charity-main > .charity-status {
  flex:0 0 78px;min-width:78px;padding:0 18px 0 0;
  align-items:center;gap:5px;
}
.charity-status strong {font-size:48px;letter-spacing:0;line-height:1.12;}
.charity-status small {line-height:1.5;}
.charity-main {gap:18px;}
.charity-main h2 {text-wrap:balance;}
.keep-phrase {display:inline-block;white-space:nowrap;}
.charity-main h2 .keep-phrase {display:inline;white-space:nowrap;}
.charity-main .charity-reference {display:block;font:12px/1.7 var(--numeric-font);white-space:nowrap;letter-spacing:0;}
.vertical-motto {top:29.3cqw;}
.fps-logo-wrap {background:transparent;border-radius:0;padding:0;width:36px;height:36px;}
.fps-official {filter:brightness(0) saturate(100%) invert(79%) sepia(24%) saturate(554%) hue-rotate(352deg) brightness(91%) contrast(88%);}
.hero-art-region {display:contents;}
h2,h3 {text-wrap:balance;}
@media (min-width:961px) and (max-width:1350px) {
 .dark-panel {height:calc(49.38cqw + 540px);}
 .information-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
 .info-card {min-height:236px;}
}
@media(max-width:960px) {
 .dark-panel {display:flex;flex-direction:column;}
 .header {order:0;flex:none;}
 .hero-copy {order:1;flex:none;padding-bottom:0;}
 .hero-art-region {order:2;display:block;position:relative;height:440px;flex:none;margin:22px -20px 16px;}
 .hero-art-region .art-stage {position:absolute;inset:0;height:100%;}
 .hero-art-region .art-stage .gold-canvas, .hero-art-region .art-stage .flow-canvas{top:0;width:900px;height:453.84px;left:calc(50% - 560px);}
 .hero-art-region .art-stage .brand-emblem {top:34.52px;width:351.25px;left:calc(50% - 156.68px);}
 .hero-art-region .vertical-motto {top:142px;right:13px;gap:14px;}
 .hero-art-region .vertical-motto img {width:28px;}
 .hero-art-region .motion-toggle {top:auto;bottom:18px;right:26px;}
 .information-grid {order:3;position:relative;margin-top:0;}
 .feature-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;margin-top:26px;}
 .feature {width:auto;gap:5px;}
 .feature > span {font-size:14px;white-space:nowrap;}
 .feature small {font-size:12px;line-height:1.6;white-space:nowrap;max-width:none;letter-spacing:0;}
 .feature > svg {width:30px;height:30px;margin-bottom:3px;}
 .feature:after {display:none;}
 .feature:nth-child(odd):after {display:block;right:-6px;top:6px;height:65px;}
 .hero-actions {margin-top:28px;}
 .hero-intro {max-width:none;font-size:14px;line-height:1.95;letter-spacing:.01em;text-wrap:balance;}
 .mobile-line {display:block;}
 .hero-intro .mobile-line + .mobile-line {margin-top:6px;}
 .section-body p,.activity-copy p,.donation-intro > p,.contact-home p,.service-grid-formal p,.trust-band .about-copy p {text-wrap:balance;}
 .keep-tail {white-space:nowrap;}
 .section-body .lead {font-size:16px;letter-spacing:.01em;}
 .section-body p {font-size:15px;letter-spacing:.01em;line-height:1.95;}
 .charity-main > .charity-status {flex-basis:78px;min-width:78px;padding-right:18px;}
 .charity-main h2 {font-size:18px;letter-spacing:.01em;line-height:1.7;}
 .charity-status strong {font-size:48px;}
 .charity-main p {font-size:13px;letter-spacing:0;}
 .charity-main .charity-reference {font-size:12px;}
 .event-description strong {white-space:nowrap;font-size:14px;letter-spacing:0;}
 .event-description small {white-space:nowrap;}
 .service-grid-formal h3,.activity-copy h3 {text-wrap:balance;letter-spacing:.01em;}
 .contact-address strong {width:auto;white-space:normal;overflow-wrap:normal;word-break:normal;text-wrap:balance;}
 .address-part {display:block;white-space:nowrap;}
 .contact-list .contact-address {overflow:visible;}
 .footer-brand p {white-space:nowrap;letter-spacing:.015em;}
 .footer-legal strong {font-size:12px;letter-spacing:0;text-wrap:balance;}
 .footer-legal .copyright {white-space:nowrap;font-size:11px;letter-spacing:0;}
 .footer-nav a,.inline-links a {white-space:nowrap;}
 .donation-methods-formal p strong {display:block;font-size:11px;white-space:nowrap;letter-spacing:0;}
}
@media (min-width:551px) and (max-width:960px) {
 .hero-copy {padding-right:36px;}
 .hero-intro {max-width:540px;}
 .feature-list {max-width:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
 .feature:not(:last-child):after {display:block;}
 .feature small {font-size:11px;}
 .hero-art-region {height:510px;margin-top:28px;}
 .hero-art-region .art-stage .gold-canvas, .hero-art-region .art-stage .flow-canvas{width:1052px;height:530.48px;left:calc(50% - 661.3px);}
 .hero-art-region .art-stage .brand-emblem {top:40.35px;width:410.58px;left:calc(50% - 189.77px);}
 .hero-art-region .vertical-motto {top:180px;}
 .information-grid {grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;}
 .charity-main {gap:14px;}
 .charity-main > .charity-status {flex-basis:62px;min-width:62px;padding-right:14px;}
 .charity-status strong {font-size:40px;}
 .charity-main h2 {font-size:16px;}
 .charity-main p {font-size:12px;}
 .charity-main .charity-reference {font-size:10px;}
 .event-preview {gap:9px;padding-inline:9px;}
 .event-date {width:56px;}
 .event-description {padding-left:9px;}
 .event-description strong {font-size:12px;white-space:normal;text-wrap:balance;}
 .event-description small {font-size:11px;white-space:normal;text-wrap:balance;}
 .activity-copy {padding:20px;}
 .activity-copy h3 {font-size:17px;}
}
@media(max-width:550px) {
 .service-grid-formal h3,.activity-copy h3 {white-space:nowrap;}
 .activity-featured .activity-copy h3 {font-size:clamp(19px,5.3vw,23px);letter-spacing:0;}
 .service-grid-formal article {padding-inline:20px;}
 .contact-address strong {font-size:14px;line-height:1.85;letter-spacing:0;}
}
@media(max-width:370px) {
 .hero-art-region {margin-inline:-14px;}
 .charity-card {padding:22px 18px;}
 .charity-main {gap:13px;}
 .charity-main > .charity-status {flex-basis:60px;min-width:60px;padding-right:14px;}
 .charity-status strong {font-size:38px;}
 .charity-main h2 {font-size:16px;}
 .charity-main p {font-size:11px;}
 .charity-main .charity-reference {font-size:10px;}
 .event-preview {gap:8px;padding-inline:8px;}
 .event-date {width:56px;}
 .event-description {padding-left:8px;}
 .event-description strong {font-size:12px;}
 .event-description small {font-size:11px;}
 .contact-list .contact-address {padding-inline:14px;}
 .contact-address strong {font-size:13px;}
 .donation-methods-formal .method-number {font-size:24px;letter-spacing:.01em;}
 .service-buttons button > span:last-child {font-size:12px;}
}
.hero-intro .mobile-line {display:block;}
@media(max-width:960px) {
 .trust-fact span,.trust-fact small {text-wrap:balance;}
}
/* Avoid short final lines at intermediate widths as well as phones. */
.keep-tail {white-space:nowrap;}
.info-card > p,.trust-fact span,.trust-fact small,.service-grid-formal p,.activity-copy p,.contact-home p {text-wrap:balance;}

:root {--landscape:url("brand/asset-0fe41ac4e0.webp");}
/* User-selected mountain sunrise palette and supplied backdrop. */
:root {
 color:#f1dfc0;background:#0a2435;
 --gold:#e8c68c;--muted:#c5c5ba;--red:#cf3025;
 --line:rgba(223,197,148,.28);
}
.website {width:100%;max-width:1920px;margin:0 auto;border:0;border-radius:0;background:#102d40;}
.dark-panel {height:auto;min-height:0;padding:44.45cqw 0 0;background:#102d40 var(--landscape) center top / 100% 125.26% no-repeat;}
.header {position:absolute;left:0;right:0;top:0;}
.logo-plaque {background:#fbf1e0;border-color:#d3b383;box-shadow:0 2px 10px #06192533;}
.hero-copy {left:9.6cqw;top:12cqw;}
.hero-copy h1 {font-size:4cqw;color:#fff0d6;letter-spacing:.09em;text-shadow:0 2px 14px #0621374d;}
.hero-copy h1 span {color:#dc2f22;}
.hero-intro {color:#fbefd9;letter-spacing:.045em;font-size:1.09cqw;font-weight:500;text-shadow:0 1px 5px #05233799;}
.feature-list {width:31cqw;margin-top:2.05cqw;}
.feature > span {color:#fff0d5;font-weight:500;}
.feature small {color:#d0d7d3;text-shadow:0 1px 3px #092335;}
.feature > svg {color:#eac789;}
.hero-actions {margin-top:2.0cqw;}
.navigation a {color:#f4ecda;font-weight:500;text-shadow:0 1px 4px #0a2638b3;}
.navigation .active {color:#f0ca80;}
.primary {background:#ce2c22;border-color:#e04b34;color:#fff0db;box-shadow:0 3px 13px #681b1026,inset 0 1px 0 #ff998840;}
.primary:hover {background:#df382b;}
.secondary {background:#102d4085;border-color:#c1b39455;color:#f8e8cc;backdrop-filter:blur(6px);}
.scroll-explore {color:#e6c794;}
.art-stage {height:50.4cqw;}

.flow-canvas {opacity:1;filter:brightness(1.18) saturate(.78);}
.water-still {position:absolute;inset:0;width:100%;height:100%;z-index:4;object-fit:fill;mix-blend-mode:screen;pointer-events:none;filter:brightness(1.35) saturate(.7);mask-image:linear-gradient(to bottom,transparent 49%,#000 64%);}
.website:not(.motion-paused) .water-still {display:none;}
.vertical-motto {top:auto;bottom:calc(100% - 44.45cqw + 28px);}
.vertical-motto > span {color:#f3deba;text-shadow:0 1px 4px #163248;}
.motion-toggle {top:calc(44.45cqw - 60px);right:8cqw;border-color:#e4c49477;color:#f1d9b4;background:#112d4199;}
.information-grid {position:relative;top:auto;left:auto;right:auto;margin:0 3.45cqw;gap:1cqw;grid-template-columns:1.065fr 1fr 1fr 1.075fr;}
.info-card {min-height:220px;padding:20px 21px;background:#0a263ccc;border:1px solid #c3b58b69;border-radius:10px;box-shadow:inset 0 1px 0 #f7dfb01c;backdrop-filter:blur(8px);}
.info-card:hover {background:#102f44e6;border-color:#e0c49299;}
.info-card h2 {color:#f7e3bd;}
.info-card > p,.charity-main p {color:#d4d4c6;}
.giving-options > button {background:#d7e3e71c;border:1px solid #ced0b513;height:61px;}
.giving-options > button:hover {background:#e5e7dd2b;}
.giving-options strong,.charity-main h2 {color:#f5e2bf;}
.giving-options small {color:#d3d3c9;}
.fps-official {filter:brightness(0) saturate(100%) invert(92%) sepia(13%) saturate(753%) hue-rotate(342deg) brightness(99%) contrast(92%);}
.charity-status strong {color:#f2d39f;}
.charity-status small {color:#d6c19a;}
.event-preview {background:#c7d4d90b;border-color:#b7c4c62e;}
.event-description strong {color:#f5e3c1;}
.event-description small,.event-date > small {color:#c9d0c8;}
.service-buttons button {background:#17374b55;border-color:#c5cbb33d;}
.service-buttons button > span:last-child {color:#ece2cc;}
.service-dot {border-color:#dbc394;color:#efcf98;}
.text-link {color:#e8c792;}
.trust-band {background:#f8f0e2 var(--landscape) center bottom / 100% 495.89% no-repeat;border-color:#d5c6aa;min-height:15cqw;padding-block:34px;}
.trust-band .about-copy h2 {color:#172e3d;}
.trust-band .about-copy p {color:#43505a;}
.trust-fact {border-color:#a7977545;}
.trust-fact strong {color:#1e3645;}
.trust-fact span {color:#3c4c56;}
.trust-fact small {color:#657077;}
.trust-band .text-link,.trust-band .section-kicker {color:#9a713d;}
.about-watermark {display:none;}
.about-home {background:#f5efe3;color:#18364b;}
.about-home h2 {color:#17354a;}
.about-home .section-kicker {color:#99713e;}
.about-home .section-body .lead {color:#283e4b;}
.about-home .section-body p {color:#4b5961;}
.about-home .inline-links a {color:#8a642f;border-color:#b28c58;}
.services-home {background:#102e42;border-color:#ab977144;}
.service-grid-formal article {background:#15374b;border-color:#b5ae8845;box-shadow:inset 0 1px 0 #c7dad00d;}
.service-grid-formal article:hover {background:#1a4055;border-color:#ccb17f77;}
.service-grid-formal h3,.section-heading h2,.section-head-row h2 {color:#f4dfb9;}
.about-home .section-heading h2 {color:#17354a;}
.service-grid-formal p {color:#ccd4d2;}
.service-tag {color:#adbcbd;}
.service-index {color:#e1bd7e;}
.activities-home {background:#0b2639;}
.activity-grid-formal article {background:#143449;border-color:#c2b18a55;}
.activity-copy h3,.activity-featured .activity-copy h3 {color:#f4dfbb;}
.activity-copy p {color:#cdd5d3;}
.activity-date {color:#dcc08f;}
.activity-category {color:#bac6c4;}
.donation-home {background:#f6eddd;}
.donation-intro h2 {color:#17354a;}
.donation-intro > p {color:#485761;}
.donation-note {color:#626f75!important;border-color:#b79259;}
.donation-methods-formal article {background:#fff8eb;border-color:#c3ad8977;box-shadow:0 12px 30px #283a4510;}
.donation-methods-formal .method-number {color:#223c4a;}
.donation-methods-formal p {color:#51616a;}
.method-label {color:#896735;}
.contact-home {background:#113145;}
.contact-home h2 {color:#f4dfba;}
.contact-home p {color:#d0d9d5;}
.contact-list {background:#a8b6b53f;border-color:#a8b6b54d;}
.contact-list > * {background:#12354a;}
.contact-list span {color:#dcc391;}
.contact-list strong,.contact-phone-group a {color:#eef0e5;}
.site-footer {background:#082538;border-color:#acac8840;}
.footer-nav a {color:#d6ded8;}
.footer-brand p {color:#cbd4cc;}
.footer-legal strong {color:#e8dbc5;}
.footer-legal span {color:#b5c6c5;}
.footer-brand img {background:#fbf1e0;}
@media (min-width:961px) and (max-width:1350px) {
 .dark-panel {padding-top:49.38cqw;background-size:100% auto;background-color:#0e2d40;}
 .information-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-bottom:24px;}
 .info-card {min-height:224px;}
 .hero-copy {top:10.8cqw;left:8cqw;}
 .hero-intro {font-size:14px;letter-spacing:0;}
 .feature-list {width:39cqw;}
 .vertical-motto {bottom:calc(100% - 49.38cqw + 28px);}
 .motion-toggle {top:calc(49.38cqw - 60px);}
 .trust-band {background-size:auto 495.89%;}
}
@media(max-width:960px) {
 .website {width:100%;margin:0;}
 .dark-panel {padding:0 24px 24px;background:#0c2c40;}
 .header {position:relative;order:0;height:94px;margin:0 -24px;left:auto;right:auto;top:auto;}
 .hero-copy {position:relative;left:auto;top:auto;padding:24px 3px 0;}
 .hero-copy h1 {font-size:clamp(34px,8.8vw,54px);line-height:1.34;letter-spacing:.08em;}
 .hero-intro {font-size:14px;line-height:1.95;letter-spacing:.01em;}
 .hero-copy h1,.hero-intro {text-shadow:none;}
 .feature-list {width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;}
 .feature > span {font-size:14px;}
 .feature small {font-size:12px;}
 .hero-actions {margin-top:28px;}
 .hero-art-region {margin:22px -24px 18px;height:440px;background:var(--landscape) 67% top / auto 125.26% no-repeat;}
 .hero-art-region .vertical-motto {top:142px;bottom:auto;right:13px;}
 .hero-art-region .motion-toggle {top:auto;bottom:18px;right:24px;}
 .hero-art-region .water-still {top:0;left:calc(50% - 560px);width:900px;height:453.84px;}
 .information-grid {margin:0;grid-template-columns:1fr;gap:16px;}
 .info-card {min-height:225px;padding:24px;}
 .trust-band {background-size:auto 495.89%;background-position:58% bottom;}
 .trust-band .about-copy p {color:#344d5d;}
 .trust-facts {gap:25px 14px;}
 .trust-fact strong {color:#18354a;}
 .trust-fact span {color:#314b5a;}
 .trust-fact small {color:#506574;}
 .navigation {background:#103247f7;border-color:#b6a27c77;}
 .section-shell {padding-inline:26px;}
 .contact-list > * {background:#12354a;}
 .contact-list span {color:#ddc28e;}
 .contact-list strong {color:#f0eee3;}
 .contact-list .address-part {color:#f0eee3;font-size:inherit;letter-spacing:0;}
}
@media (min-width:551px) and (max-width:960px) {
 .hero-copy {padding-inline:24px;}
 .feature-list {grid-template-columns:repeat(4,minmax(0,1fr));}
 .feature small {font-size:11px;}
 .hero-art-region {height:510px;}
 .hero-art-region .water-still {width:1052px;height:530.48px;left:calc(50% - 661.3px);}
 .information-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .info-card {padding:22px;}
 .trust-band {background-position:70% bottom;}
}
@media(max-width:370px) {
 .dark-panel {padding-inline:18px;}
 .header {margin-inline:-18px;}
 .hero-art-region {margin-inline:-18px;}
 .charity-card {padding:22px 18px;}
 .section-shell {padding-inline:20px;}
 .contact-list .contact-address {padding-inline:14px;}
}
@media (min-width:961px) and (max-width:1350px) {
 .dark-panel {background:#0e2d40;}
 .dark-panel::before {content:"";position:absolute;inset:0 0 auto;height:60cqw;background:var(--landscape) center top / 100% 125.26% no-repeat;pointer-events:none;}
}
/* Refine contrast and light to match the supplied visual direction. */
.gold-canvas {filter:brightness(1.8) saturate(.88) drop-shadow(0 0 .55px #ffd58c);}
.flow-canvas {mix-blend-mode:screen;filter:brightness(1.5) saturate(.72);}
.ring-gold {filter:brightness(1.35) drop-shadow(-1px 0 3px #ffc97b80);}
.ring-edge {filter:brightness(1.35);}
@media(min-width:961px) {
 .dark-panel {background-image:linear-gradient(90deg,#051e32a6 0%,#08253b55 38%,transparent 65%),var(--landscape);}
 .art-stage {top:2cqw;}
 .logo-plaque {left:3.4cqw;width:16.8cqw;height:7cqw;}
 .logo-plaque img {width:84%;}
 .navigation {left:33.8%;gap:4cqw;}
 .navigation a {font-size:1.15cqw;}
 .header-donate {width:10.3cqw;height:3.3cqw;right:3.55cqw;font-size:1.1cqw;}
 .hero-intro {font-weight:600;}
 .feature > span {font-size:1.04cqw;}
 .feature small {font-size:.82cqw;}
 .hero-actions .action {height:3.8cqw;font-size:1.1cqw;}
 .hero-actions .primary {width:13cqw;}
 .hero-actions .secondary {width:12cqw;}
 .trust-band {padding-right:14.3cqw;}
 .trust-band .about-copy {flex-basis:33%;}
}
@media (min-width:961px) and (max-width:1350px) {
 .dark-panel {background:#0e2d40;}
 .dark-panel::before {background-image:linear-gradient(90deg,#051e32a6 0%,#08253b55 38%,transparent 65%),var(--landscape);}
 .navigation {left:27%;gap:2.4cqw;}
 .navigation a {font-size:13px;}
 .logo-plaque {left:2.98cqw;width:15.625cqw;height:5.966cqw;}
 .hero-actions .action {height:44px;font-size:14px;padding-inline:18px;}
 .hero-actions .primary,.hero-actions .secondary {width:auto;min-width:140px;}
 .feature > span {font-size:14px;}
 .feature small {font-size:11px;}
 .trust-band {padding-right:5.1cqw;}
}
html:has(.motion-paused) {scroll-behavior:auto;}
@media(max-width:370px) {
 .trust-fact span {font-size:12px;white-space:nowrap;}
 .trust-fact small {font-size:10px;white-space:nowrap;}
}
@media(min-width:961px) and (max-width:1100px) {
 .trust-facts {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
}
/* Reuse the original gold-particle texture over the supplied sunrise. */
.art-stage:after {display:block;top:0;height:100%;opacity:.72;mix-blend-mode:screen;filter:brightness(1.3) saturate(.85);mask-image:linear-gradient(#000 0%,#000 46%,transparent 73%);z-index:1;}
@media(max-width:960px) {
 .hero-art-region .art-stage:after {inset:0 auto auto;left:calc(50% - 560px);width:900px;height:453.84px;}
}
@media(min-width:551px) and (max-width:960px) {
 .hero-art-region .art-stage:after {left:calc(50% - 661.3px);width:1052px;height:530.48px;}
}
.art-stage:after {mask-image:linear-gradient(transparent 0%,#000 12%,#000 46%,transparent 73%);}
.scroll-explore {color:#594b36;font-weight:600;text-shadow:0 1px 2px #fff4d988;}
.contact-address .address-part {font:inherit;color:inherit;letter-spacing:inherit;}

/* R4: sunlight on the supplied brush ring, clean water, and alternating sections. */
.art-stage::after {content:none;display:none;background:none;}
.ring-sun-glow {
  opacity:.7;transform:translate(4px,-4px) scale(1.008);
  filter:brightness(1.55) blur(3px) drop-shadow(2px -4px 14px #ffcf83) drop-shadow(4px -6px 24px #eeb06088);
}
.ring-gold {
  transform:translate(2px,-2px);opacity:.92;
  filter:brightness(1.5) drop-shadow(1px -1px 3px #ffdc93aa);
}
.ring-ink {filter:drop-shadow(0 2px 3px #06152255);}
.water-layer {
  position:absolute;inset:0;z-index:4;pointer-events:none;
  mix-blend-mode:screen;opacity:.88;transform:translateY(4.5cqw);
}
.water-layer .water-image,.water-layer .water-canvas {
  position:absolute;inset:0;width:100%;height:100%;object-fit:fill;
  mix-blend-mode:normal;filter:none;opacity:1;mask-image:none;
}
.water-layer .water-canvas {visibility:hidden;}
.water-layer[data-ready="true"] .water-canvas {visibility:visible;}
.water-layer[data-ready="true"] .water-image {visibility:hidden;}
.about-home {background:#0b2639;color:#f1dfc0;}
.about-home .section-heading h2 {color:#f4dfb9;}
.about-home .section-kicker {color:#d7b276;}
.about-home .section-body .lead {color:#e1e4da;}
.about-home .section-body p {color:#cdd5d3;}
.about-home .inline-links a {color:#e2c38f;border-color:#b69a6b;}
.services-home {background:#f5efe3;color:#17354a;border-color:#b9a78644;}
.services-home .section-kicker {color:#987039;}
.services-home .section-head-row h2 {color:#17354a;}
.services-home .service-grid-formal article {background:#fff9ef;border-color:#c5b59188;box-shadow:none;}
.services-home .service-grid-formal article:hover {background:#fffdf7;border-color:#b69b69;}
.services-home .service-grid-formal h3 {color:#17354a;}
.services-home .service-grid-formal p {color:#4b5961;}
.services-home .service-index {color:#99703a;}
.services-home .service-tag {color:#85724f;}

@media (min-width:961px) {
  .dark-panel {--hero-content-height:44.45cqw;height:auto;min-height:0;padding-top:var(--hero-content-height);padding-bottom:24px;}
  .dark-panel::before {height:calc(var(--hero-content-height) + 270px);}
  .information-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:1cqw;padding-bottom:0;align-items:stretch;}
  .info-card {min-width:0;min-height:248px;padding:20px 18px;}
  .info-card > p {font-size:12px;letter-spacing:0;text-wrap:balance;}
  .charity-main {gap:14px;}
  .charity-main > .charity-status {flex-basis:68px;min-width:68px;padding-right:16px;}
  .charity-status strong {font-size:42px;}
  .charity-main h2 {font-size:17px;letter-spacing:0;}
  .charity-main p {font-size:12px;white-space:nowrap;}
  .charity-main .charity-reference {font-size:11px;}
  .event-preview {gap:8px;padding-inline:9px;min-height:93px;}
  .event-date {width:52px;}
  .event-date > strong {font-size:18px;}
  .event-description {padding-left:9px;min-width:0;}
  .event-description strong {font-size:13px;text-wrap:balance;}
  .event-description small {font-size:11px;text-wrap:balance;}
  .event-arrow {display:none;}
  .service-buttons {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 6px;}
  .service-buttons button {padding-inline:6px;gap:5px;}
  .service-buttons button > span:last-child {font-size:11px;}
  .service-dot {width:22px;height:22px;flex:0 0 22px;font-size:10px;}
  .vertical-motto {top:auto;bottom:calc(100% - var(--hero-content-height) + 34px);}
  .motion-toggle {top:calc(var(--hero-content-height) - 68px);}
}
@media (min-width:961px) and (max-width:1350px) {
  .dark-panel {--hero-content-height:49.38cqw;}
  .info-card {padding:18px 14px;min-height:260px;}
  .info-card h2 {font-size:19px;letter-spacing:0;}
  .charity-main {gap:11px;}
  .charity-main > .charity-status {flex-basis:58px;min-width:58px;padding-right:13px;}
  .charity-status strong {font-size:36px;}
  .charity-main h2 {font-size:15px;}
  .charity-main p {font-size:11px;}
  .charity-main .charity-reference {font-size:10px;}
  .giving-options > button {padding:8px;gap:9px;}
  .giving-options strong {font-size:14px;}
  .giving-options small {font-size:11px;letter-spacing:0;}
  .fps-logo-wrap,.giving-options .fps-official,.giving-options .bank-icon {width:28px;height:28px;flex:0 0 28px;}
  .giving-options .round-caret {width:18px;height:18px;}
  .service-buttons {grid-template-columns:1fr;gap:6px;margin-top:12px;}
  .service-buttons button {height:34px;padding-inline:9px;gap:8px;}
  .service-buttons button > span:last-child {font-size:12px;}
  .service-dot {width:21px;height:21px;flex-basis:21px;}
}
@media (min-width:961px) and (max-width:1100px) {
  .info-card {padding:17px 12px;}
  .info-card > p {font-size:11px;}
  .info-card h2 {font-size:18px;}
  .charity-main {gap:9px;}
  .charity-main > .charity-status {flex-basis:50px;min-width:50px;padding-right:11px;}
  .charity-status strong {font-size:31px;}
  .charity-main h2 {font-size:13px;}
  .charity-main p {font-size:10px;}
  .charity-main .charity-reference {font-size:9px;}
  .giving-options > button {gap:7px;}
  .giving-options .round-caret {display:none;}
  .giving-options small {font-size:10px;}
  .event-preview {display:block;padding:9px;}
  .event-date {flex-direction:row;align-items:baseline;width:auto;gap:6px;}
  .event-date > small {font-size:10px;}
  .event-date > strong {font-size:17px;}
  .event-date > span {font-size:10px;}
  .event-description {margin-top:8px;padding:8px 0 0;border-left:0;border-top:1px solid var(--line);min-height:0;gap:4px;}
  .event-description strong {font-size:12px;white-space:nowrap;}
  .event-description small {font-size:10px;}
}
@media (max-width:960px) {
  .hero-art-region .water-layer {inset:0 auto auto;left:calc(50% - 560px);width:900px;height:453.84px;transform:translateY(42px);}
  .ring-sun-glow {filter:brightness(1.45) blur(2px) drop-shadow(2px -3px 10px #ffcf83) drop-shadow(3px -4px 16px #eeb06088);}
}
@media (min-width:551px) and (max-width:960px) {
  .hero-art-region .water-layer {left:calc(50% - 661.3px);width:1052px;height:530.48px;}
}

/* R5: use the supplied-reference corona as a real image, animated with the water. */
.brand-emblem .ring-ink {filter:none;}
.corona-layer {
  position:absolute;left:39.3512%;top:-1.3168cqw;width:49.9546%;aspect-ratio:350/330;z-index:3;
  mix-blend-mode:screen;pointer-events:none;opacity:1;transform:translate(-1cqw,1.8cqw);
}
.visual-layer .visual-image,.visual-layer .visual-canvas {
  position:absolute;inset:0;width:100%;height:100%;object-fit:fill;
  mix-blend-mode:normal;filter:none;opacity:1;mask-image:none;
}
.visual-layer .visual-canvas {visibility:hidden;}
.visual-layer[data-ready="true"] .visual-canvas {visibility:visible;}
.visual-layer[data-ready="true"] .visual-image {visibility:hidden;}
.water-layer {opacity:.93;}
.giving-options .copy-data {position:relative;margin:0;}
.copy-affordance {margin-left:auto;flex:none;color:#efd9b3;font-size:11px;letter-spacing:0;white-space:nowrap;}
.giving-options .copy-status {min-height:18px;margin:0;font:12px/1.5 var(--numeric-font);color:#f6dfaf;}
.giving-options .copy-data.copied {border-color:#e4c18a99;background:#e5e7dd2b;}
.events-card .event-preview {min-height:112px;margin-top:16px;cursor:default;}
.events-card .event-preview:hover {background:#c7d4d90b;}
.events-card .event-description {gap:8px;}
@media (min-width:961px) and (max-width:1350px) {
  .giving-options .copy-affordance {display:none;}
  .giving-options .copy-status {font-size:11px;}
}
@media (max-width:960px) {
  .hero-art-region .corona-layer {left:calc(50% - 205.855px);top:-11.845px;width:449.6px;transform:translate(-9px,16px);}
}
@media (min-width:551px) and (max-width:960px) {
  .hero-art-region .corona-layer {left:calc(50% - 247.251px);top:-13.846px;width:525.542px;transform:translate(-10.5px,19px);}
}

/* R6: one coordinate system for the native brush mark and its registered light. */
.emblem-registration {
  position:absolute;left:44.815%;top:3.835cqw;width:39.027%;aspect-ratio:350/330;
  pointer-events:none;
}
.emblem-registration .brand-emblem {
  inset:0!important;width:100%!important;height:100%;
}
.emblem-registration .corona-layer {
  left:-14.285714%;top:-15.151515%;width:128.571429%;height:130.303030%;
  aspect-ratio:450/430;transform:none;opacity:.94;
}
.corona-layer .visual-image {visibility:visible;}
.water-layer {opacity:.91;}
@media(min-width:961px) {
  .feature-list {width:30cqw;}
  .feature small {white-space:nowrap;max-width:none;letter-spacing:.015em;}
}
@media(min-width:961px) and (max-width:1350px) {
  .feature-list {width:34.6cqw;margin-left:-.75cqw;}
}
@media(max-width:960px) {
  .hero-art-region .emblem-registration {top:34.52px;width:351.25px;left:calc(50% - 156.68px);}
  .hero-art-region .emblem-registration .corona-layer {
    left:-14.285714%;top:-15.151515%;width:128.571429%;height:130.303030%;transform:none;
  }
}
@media(min-width:551px) and (max-width:960px) {
  .hero-art-region .emblem-registration {top:40.35px;width:410.58px;left:calc(50% - 189.77px);}
}

/* The water shares the same native 350 x 330 coordinate system as the Logo. */
.native-water-reference {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.emblem-registration:has(.water-layer[data-ready="true"]) .native-water-reference {visibility:hidden;}
.emblem-registration .water-layer,
.hero-art-region .emblem-registration .water-layer {
  inset:auto;left:-114.830246%;top:1.807148%;width:256.23272%;height:136.968036%;
  transform:none;z-index:4;opacity:.91;
}
.water-layer .visual-image {visibility:hidden;}
.services-card .service-buttons {grid-template-columns:repeat(2,minmax(0,1fr));}
@media(min-width:961px) {
  .information-grid .info-card {min-height:0;padding:17px 16px;}
  .giving-options > button {height:48px;}
  .events-card .event-preview {min-height:102px;margin-top:12px;}
  .services-card .service-buttons {gap:8px;margin-top:12px;}
  .services-card .service-buttons button {height:48px;padding:5px 6px;gap:5px;}
  .services-card .service-buttons button > span:last-child {font-size:clamp(11px,.94cqw,13px);white-space:nowrap;}
  .services-card .service-dot {width:22px;height:22px;flex-basis:22px;}
}
@media(min-width:961px) and (max-width:1150px) {
  .information-grid .info-card {padding:16px 12px;}
  .services-card .service-buttons button {height:55px;flex-direction:column;justify-content:center;gap:4px;padding:5px 3px;}
  .services-card .service-buttons button > span:last-child {font-size:11px;line-height:1.4;}
  .services-card .service-dot {width:20px;height:20px;flex-basis:20px;font-size:10px;}
}
