/* Fund site styles. Cascade order retained; superseded declarations removed. */

/* Shared presentation */
:root {
  --fund-page-background: #fcf7f0;
  --fund-page-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22240%22%20height%3D%22360%22%20viewBox%3D%220%200%20240%20360%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23edbc87%22%20stroke-width%3D%221.4%22%20opacity%3D%22.26%22%3E%3Cg%20transform%3D%22translate(18%2056)%22%3E%3Cellipse%20cy%3D%22-7%22%20rx%3D%223.5%22%20ry%3D%226%22%2F%3E%3Cellipse%20cy%3D%227%22%20rx%3D%223.5%22%20ry%3D%226%22%2F%3E%3Cellipse%20cx%3D%22-7%22%20rx%3D%226%22%20ry%3D%223.5%22%2F%3E%3Cellipse%20cx%3D%227%22%20rx%3D%226%22%20ry%3D%223.5%22%2F%3E%3Ccircle%20r%3D%222.5%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(210%20242)%20rotate(22)%22%3E%3Cellipse%20cy%3D%22-7%22%20rx%3D%223.5%22%20ry%3D%226%22%2F%3E%3Cellipse%20cy%3D%227%22%20rx%3D%223.5%22%20ry%3D%226%22%2F%3E%3Cellipse%20cx%3D%22-7%22%20rx%3D%226%22%20ry%3D%223.5%22%2F%3E%3Cellipse%20cx%3D%227%22%20rx%3D%226%22%20ry%3D%223.5%22%2F%3E%3Ccircle%20r%3D%222.5%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M26%20283q-8-12-15-3q-2%207%2015%2015q17-8%2015-15q-7-9-15%203Z%22%2F%3E%3Cpath%20d%3D%22M189%2092q-2-17%208-24q12%209-8%2024Zm0%200q-12-4-14-13q13-4%2014%2013Z%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22%23e9b474%22%20opacity%3D%22.20%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%22177%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22216%22%20cy%3D%2230%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22193%22%20cy%3D%22324%22%20r%3D%222.5%22%2F%3E%3Ccircle%20cx%3D%2264%22%20cy%3D%22114%22%20r%3D%221.5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  --fund-panel-background: #fff;
  --fund-panel-radius: 24px;
}

body #wrapper #main {
  background-color: var(--fund-page-background) !important;
  background-image: var(--fund-page-pattern) !important;
  background-repeat: repeat !important;
  background-size: 240px 360px !important;
}

body #main h1 {
  font-size: var(--fund-intro-heading-size) !important;
  line-height: 1.2 !important;
  color: rgb(36, 45, 55) !important;
}

body #main .fund-page-intro {
  border-radius: var(--fund-panel-radius);
  background: linear-gradient(110deg, rgb(255, 241, 223), rgb(252, 247, 240));
  padding: 40px !important;
  margin-bottom: 28px !important;
}

/* Nurse profiles and cards */
body #main .fund-page-intro .fund-nurse-eyebrow {
  letter-spacing: 0.6px;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: rgb(169, 77, 0) !important;
}

/* Shared presentation */
body #main .fund-content-panel {
  border-radius: var(--fund-panel-radius);
  padding: 36px !important;
  margin-bottom: 28px !important;
  background: var(--fund-panel-background) !important;
}

body.fund-supporters-page-body #main .fund-supporters-page {
  background: transparent !important;
}

@media (max-width: 800px) {
  /* Shared presentation */
  body #main .fund-page-intro, body #main .fund-content-panel {
    padding: 28px 20px !important;
  }

}

/* Header and navigation */
body.page .fusion-header-wrapper {
  position: relative !important;
}

/* Homepage */
body.page:not(.home) #main {
  padding-top: 28px !important;
}

/* Shared presentation */
body #wrapper #main > .fusion-row {
  background: transparent !important;
}

/* Header and navigation */
body .fusion-header {
  background: rgb(255, 255, 255) !important;
}

/* Donation forms and payment history */
body #main .leyka-pf.leyka-pf-star {
  box-sizing: border-box;
  box-shadow: rgba(70, 49, 25, 0.04) 0px 4px 18px;
  float: none !important;
  width: 100% !important;
  max-width: 680px !important;
  margin: 24px auto !important;
  padding: 32px !important;
  border: 1px solid rgb(238, 228, 216) !important;
  border-radius: 22px !important;
  background: rgb(255, 255, 255) !important;
}

body #main .leyka-shortcode.donations-list {
  box-sizing: border-box;
  box-shadow: rgba(70, 49, 25, 0.04) 0px 4px 18px;
  width: 100% !important;
  max-width: 900px !important;
  margin: 32px auto 48px !important;
  padding: 24px !important;
  background: rgb(255, 255, 255) !important;
  border: 1px solid rgb(238, 228, 216) !important;
  border-radius: 22px !important;
}

body #main .donations-list-table {
  table-layout: fixed;
  width: 100% !important;
  margin: 0px !important;
  border: 0px !important;
  border-spacing: 0px !important;
  border-collapse: collapse !important;
  background: transparent !important;
}

body #main .donations-list-table caption.title {
  text-align: left !important;
  font-size: 24px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  color: rgb(36, 45, 55) !important;
  padding: 0px 0px 20px !important;
  margin: 0px !important;
}

body #main .donations-list-table :is(th, td).list-cell {
  vertical-align: middle;
  padding: 11px 16px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  background: transparent !important;
  border-width: 0px 0px 1px !important;
  border-style: none none solid !important;
  border-color: currentcolor currentcolor rgb(238, 232, 224) !important;
  border-image: none !important;
  height: auto !important;
}

body #main .donations-list-table th.list-cell {
  color: rgb(104, 113, 124) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

body #main .donations-list-table .donation_date {
  color: rgb(104, 113, 124);
  width: 40% !important;
  text-align: left !important;
  padding-left: 0px !important;
}

body #main .donations-list-table .donation_type {
  width: 30% !important;
  text-align: left !important;
}

body #main .donations-list-table .donation_amount {
  font-weight: 600;
  width: 30% !important;
  text-align: right !important;
  white-space: nowrap !important;
  padding-right: 0px !important;
  color: rgb(53, 65, 78) !important;
}

body #main .donations-list-table tbody tr:last-child td {
  border-bottom: 0px !important;
}

body #main .donations-list-table img.donation-type-icon {
  vertical-align: middle;
  opacity: 0.6;
  width: 16px !important;
  height: 16px !important;
  margin-right: 6px !important;
}

@media (max-width: 800px) {
  /* Donation forms and payment history */
  body #main .leyka-pf.leyka-pf-star {
    padding: 20px 16px !important;
  }

  body #main .leyka-shortcode.donations-list {
    padding: 20px 16px !important;
    margin-bottom: 32px !important;
  }

  body #main .donations-list-table caption.title {
    font-size: 21px !important;
  }

  body #main .donations-list-table :is(th, td).list-cell {
    font-size: 13px !important;
    padding: 10px 6px !important;
  }

  body #main .donations-list-table .donation_date {
    padding-left: 0px !important;
  }

  body #main .donations-list-table .donation_amount {
    padding-right: 0px !important;
  }

  body #main .donations-list-table img.donation-type-icon {
    width: 13px !important;
    height: 13px !important;
    margin-right: 4px !important;
  }

}

@media (max-width: 800px) {
  /* Donation forms and payment history */
  body #main .donations-list-table thead {
    display: table-header-group !important;
  }

  body #main .donations-list-table tbody {
    display: table-row-group !important;
  }

  body #main .donations-list-table tr.list-row {
    display: table-row !important;
    float: none !important;
  }

  body #main .donations-list-table :is(th, td).list-cell {
    display: table-cell !important;
    float: none !important;
    margin: 0px !important;
  }

}

@media (max-width: 800px) {
  /* Donation forms and payment history */
  body.page:has(#main .leyka-pf-star) #main {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.page:has(#main .leyka-pf-star) #main > .fusion-row {
    width: 100% !important;
  }

}

/* Shared presentation */
:root {
  --fund-donation-panel-width: 680px;
}

/* Donation forms and payment history */
body #main .leyka-pf.leyka-pf-star, body #main .leyka-shortcode.donations-list {
  max-width: var(--fund-donation-panel-width) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body #main h1.fund-donation-title {
  max-width: var(--fund-donation-panel-width);
  margin: 16px auto 24px !important;
  font-size: 32px !important;
  line-height: 1.3 !important;
  font-weight: 650 !important;
  text-align: center !important;
  color: rgb(36, 45, 55) !important;
}

@media (max-width: 800px) {
  /* Donation forms and payment history */
  body #main h1.fund-donation-title {
    font-size: 28px !important;
    margin-top: 8px !important;
  }

}

@media (min-width: 1101px) {
  /* Header and navigation */
  body .fusion-header-wrapper.fusion-is-sticky .fusion-header > .fusion-row {
    min-height: 65px !important;
    height: 65px !important;
  }

  body .fusion-header-wrapper.fusion-is-sticky .fusion-header-has-flyout-menu-content {
    min-height: 65px !important;
    height: 65px !important;
  }

}

/* Project information */
body #main .fund-information-label .fund-information-description {
  font-size: 17px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  text-align: left !important;
  color: rgb(89, 101, 114) !important;
  margin: 18px 0px 0px !important;
}


/* Leyka's static grid must look ready before its JavaScript initializes.
   Keep controls available for actual swipe layouts. */
body #main .leyka-pf-star .star-swiper.no-swipe>.swiper-arrow,
body #main .leyka-pf-star .star-swiper.no-swipe>.arrow-gradient {
  display: none !important;
}
body #main .leyka-pf-star .star-swiper.no-swipe .flex-amount-item {
  padding: 8px 16px 0 !important;
}
body #main .leyka-pf-star .amount-description:not(:has(span:not(:empty))) {
  display: none !important;
}

/* Footer copyright alignment on every page. */
body .fund-footer .fund-footer-copy { text-align: center !important; }

/* Stable homepage intro, including the first render before scripts run. */
body.home #main .fund-hero { --fund-intro-heading-size: clamp(28px,3vw,40px); }
body.home #main .fund-hero .fund-hero-video,
body.home #main .fund-hero .fund-hero-video>.video-wrapper {
  aspect-ratio:16/9!important;
  width:100%!important;
  min-height:0!important;
}
body.home #main .fund-hero .fund-hero-video video {
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/9!important;
  object-fit:contain!important;
  display:block!important;
}
body.home #main .fund-mobile-summary { display:none; }
@media(min-width:801px){
  body.home #main .fund-hero>.fusion-row {align-items:flex-start!important;}
  body.home #main .fund-hero>.fusion-row>.fusion-layout-column>.fusion-column-wrapper {
    justify-content:flex-start!important;
  }
  body.home #main .fund-mobile-details {border:0;padding:0;margin:0;}
}
@media(max-width:800px){
  body.home #main .fund-hero h1 {font-size:28px!important;}
  body.home #main .fund-mobile-summary {
    display:block;width:100%;border:0;background:transparent;color:inherit;
    text-align:left;font:inherit;padding:0;cursor:pointer;
  }
  body.home #main .fund-mobile-summary::before {content:'▸';margin-right:8px;}
  body.home #main .fund-mobile-expanded .fund-mobile-summary::before {content:'▾';}
  body.home #main .fund-mobile-details:not(.fund-mobile-expanded) .fund-hero-detail {
    display:none!important;
  }
}

body.home #main .fund-hero .fund-hero-video:not(.fund-video-started) video {object-fit:cover!important;}

/* Avoid fractional scaling of the small lettering in the raster logo. */
body .fusion-header .fusion-logo img {
  filter:none!important;transform:none!important;
}
@media(min-width:1101px){
 body .fusion-header .fusion-logo img {width:385px!important;height:55px!important;max-width:none!important;}
 body .fusion-header .fusion-logo {width:385px!important;}
}

/* The information hero uses the same white surface as the following sections. */
body.page-id-12 #main .fund-information-hero { background:#fff !important; }

/* The primary titles share a scale; article and card headings stay independent. */
body #main .fund-hero .fusion-text h1,
body #main .fund-information-hero h1,
body #main .fund-nurses-intro h1,
body #main .fund-supporters-page h1,
body #main .fund-news-page-intro h1,
body #main h1.fund-donation-title {
  font-size:48px !important;
  line-height:1.2 !important;
}
body #main .fund-hero .fund-hero-kicker,
body #main .fund-information-hero .fund-nurse-eyebrow,
body #main .fund-nurses-intro .fund-nurse-eyebrow,
body #main .fund-supporters-page .fund-nurse-eyebrow,
body #main .fund-news-page-intro .fund-nurse-eyebrow {
  font-size:16px !important;
  line-height:1.5 !important;
  color:#a94d00 !important;
  letter-spacing:.6px !important;
  text-transform:none !important;
}
@media (max-width:800px) {
  body #main .fund-hero .fusion-text h1,
  body #main .fund-information-hero h1,
  body #main .fund-nurses-intro h1,
  body #main .fund-supporters-page h1,
  body #main .fund-news-page-intro h1,
  body #main h1.fund-donation-title { font-size:32px !important; }
}


/* The existing all-news button is centered only within its own homepage section. */
body.home #main .fund-news-more .fusion-column-wrapper { text-align:center !important; }
body.home #main .fund-news-more .fusion-button-wrapper { display:inline-flex !important; justify-content:center; width:auto !important; max-width:100%; }
body.home #main .fund-news-more .fusion-button { width:auto !important; max-width:100%; margin-left:auto; margin-right:auto; background:#ff951a !important; color:#222 !important; }
body.home #main .fund-news-more .fusion-button .fusion-button-text { color:#222 !important; }

/* Keep the all-news action inside the news module. */
body.home #main .fund-news .fusion-button-wrapper { display:flex !important; justify-content:center; width:100% !important; margin-top:32px; }
body.home #main .fund-news .fund-news-all-button { width:auto !important; max-width:100%; background:#ff951a !important; color:#222 !important; }
body.home #main .fund-news .fund-news-all-button .fusion-button-text { color:#222 !important; }
