/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

:root {
  --teal: #2ca5aa;
  --orange: #c6460c;
  --dkBlue: #0e4c67;
  --yellow: #ffc110;
  --ltYellow: #ffe18e;
  --brandedOrange: #f26323;
}

html,
body {
  scroll-behavior: smooth;
}

.home .entry-header,
.page-id-1505 .entry-header {
  position: absolute;
  left: -9999px;
}

.absolute {
  position: absolute !important;
}

.relative {
  position: relative !important;
}

.center {
  margin: 0 auto 20px;
}

.small-text {
  font-size: 12px;
}

.overflow > .kt-row-column-wrap,
.overflow-col,
.overflow-col > .kt-inside-inner-col {
  overflow: hidden;
}

.wp-block-table td,
.wp-block-table th {
  border: none !important;
}

.content-list {
  list-style-type: decimal-leading-zero;
}

.content-list::marker {
  color: var(--brandedOrange);
  font-size: 24px;
}

#impact-title-row {
  transform: translateX(-50%);
  left: 50%;
  width: 940px;
  max-width: 100%;
}

.toc-left {
  position: relative;
  background: #f2f2f2;
}

.toc-left::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: calc(100% - 1px);
  width: calc((100vw - 1180px) / 2);
  background: #f1f1f1;
}

#support-row {
  overflow: hidden;
}

/* .support-left {
  background: #0c415b;
}

.support-left::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: calc(100% - 1px);
  width: 100vw;
  background: #0c415b;
}

.support-right {
  background: var(--dkBlue);
  position: relative;
}

.support-right::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(100% - 1px);
  width: 100vw;
  background: var(--dkBlue);
} */

.support-left {
  position: relative;
  background: #0c415b;
}

.support-left::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: calc(100% - 1px);
  width: calc((100vw - 1260px) / 2);
  background: #0c415b;
}

.support-right {
  position: relative;
  background: var(--dkBlue);
}

.support-right::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(100% - 1px);
  width: calc((100vw - 1260px) / 2);
  background: var(--dkBlue);
}

.fix-full-width.alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* 
.bz .alignfull > .kt-row-column-wrap {
  padding-left: 40px;
  padding-right: 40px;
} */

#donate-button {
  background: var(--brandedOrange);
  position: fixed;
  top: 202x;
  right: 0;
  z-index: 1000;
  color: #fff;
  writing-mode: vertical-lr;
  padding: 20px;
  transform: rotateZ(-180deg);
  border-radius: 0 20px 20px 0;
  font-weight: 700;
  text-decoration: none !important;
  border-top: solid 2px #fff;
  /* border-left: solid 2px #fff; */
  border-right: solid 2px #fff;
  border-bottom: solid 2px #fff;
}

.toc-list {
  list-style-type: none;
  margin-left: 0;
}

.toc-list li {
  margin-bottom: 20px;
}

.no-bullet-list {
  list-style-type: none;
  text-align: center;
  margin-left: 0 !important;
}

.ceo-photo {
  display: block;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  object-fit: cover;
  position: absolute;
  /* margin-top: -60px; */

  left: 0;
  right: 0;
  bottom: -7px;
  padding: 15px;
}

#logo-col {
  position: absolute;
  width: 300px;
  top: 20px;
}

#logo-row {
  left: 0;
  top: 0;
}

button#gform_submit_button_2 {
  background-color: var(--yellow);
  border-radius: 35px !important;
  text-transform: uppercase !important;
  font-family: Arial;
  color: var(--dkBlue) !important;
  border: solid 3px var(--yellow) !important;
  border-radius: 35px !important;
  font-weight: 700 !important;
  padding: 10px 20px !important;
  margin-top: 30px;
}

/* button:hover#gform_submit_button_2 {
  background: var(--yellow);
  color: var(--dkBlue);
} */

.gform-theme--framework .gform-field-label--type-inline,
.gform-theme--framework .gfield_list_group_item::before,
.gform-theme--framework .gform-field-label {
  color: #fff !important;
}

#field_2_4 a {
  color: #fff;
  text-decoration: underline;
}

#field_2_4 a:hover {
  color: #fff !important;
}

.divider .kt-divider {
  border-radius: 20px;
}

/* .footer-widget-1,
.footer-widget-3,
.footer-widget-4 {
  border-right: solid 1px #fff;
} */

.lines-row {
  position: relative;
}

.lines-row:before {
  content: '';
  position: absolute;
  width: 80%;
  height: 8px;
  top: 278px;
  background-image: url(https://jvs2025.boomerangdev.us/wp-content/uploads/2025/08/line-teal-small.webp);
  background-repeat: repeat-x;
}

.lines-div {
  position: relative;
  height: 8px;
  margin-bottom: 40px;
}

.lines-div:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 8px;
  top: 0;
  background-image: url(https://jvs2025.boomerangdev.us/wp-content/uploads/2025/08/line-teal-small.webp);
  background-repeat: repeat-x;
}

.lines-section-1:before {
  top: 415px;
  background-image: url(https://jvs2025.boomerangdev.us/wp-content/uploads/2025/08/line-yellow-small.webp);
}

.lines-section-1 > .kt-row-column-wrap {
  position: relative;
}

.lines-section-1 > .kt-row-column-wrap:before {
  content: '';
  position: absolute;
  width: 300px;
  height: 8px;
  bottom: 14px;
  left: 66%;
  transform: rotate(90deg);
  background-image: url(https://jvs2025.boomerangdev.us/wp-content/uploads/2025/08/line-yellow-small.webp);
  background-repeat: repeat-x;
}

.quote-section {
  position: relative;
}

.quote-section:before {
  content: '';
  position: absolute;
  background-image: url(https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/quote-open-2.webp);
  background-repeat: no-repeat;
  background-size: contain;
  left: -26px;
  top: -50px;
  width: 80px;
  height: 80px;
  z-index: 5;
}

.quote-section:after {
  content: '';
  position: absolute;
  background-image: url(https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/quote-closed-2.webp);
  background-repeat: no-repeat;
  background-size: contain;
  right: -26px;
  bottom: -50px;
  width: 80px;
  height: 80px;
  z-index: 5;
}

.quote-section-yellow:before {
  background-image: url(https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/quote-open-yellow.webp);
}

.quote-section-yellow:after {
  background-image: url(https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/quote-closed-yellow.webp);
}

.text-lines,
.text-lines-2 {
  position: relative;
}

.text-lines.center {
  justify-content: center;
}

.text-lines:before {
  content: '';
  background-image: url('https://impact2024.jvs.org/wp-content/uploads/2024/10/text-lines.webp');
  background-repeat: no-repeat;
  width: 5px;
  height: 120px;
  position: absolute;
  left: 0;
  top: 12px;
}

.text-lines-2:before {
  content: '';
  background-image: url('https://impact2024.jvs.org/wp-content/uploads/2024/10/text-lines-2.webp');
  background-repeat: no-repeat;
  width: 5px;
  height: 120px;
  position: absolute;
  left: 0;
  top: 13px;
}

.text-lines-3:before {
  background-size: cover;
  height: 126px;
}

.no-break {
  word-break: normal;
  word-wrap: normal;
}

.lines-section-story-1 {
  position: relative;
}

.lines-section-story-1:before {
  content: '';
  position: absolute;
  width: 80%;
  height: 8px;
  top: 58%;
  right: 0;
  background-image: url(https://jvs2025.boomerangdev.us/wp-content/uploads/2025/08/line-yellow-small.webp);
  background-repeat: repeat-x;
}

.donor-list {
  margin-left: 0 !important;
}

.donor-list .list-heading {
  color: var(--orange);
  list-style-type: none;
  font-size: 24px;
  margin: 20px 0 20px 0;
}

.list-heading.no-top-margin {
  margin-top: 0;
}

.donor-list .list-heading strong {
  font-weight: 700;
}

.donor-list li {
  margin-bottom: 5px;
  margin-left: 10px;
}

.donor-list li strong {
  font-weight: 500;
}

.anim-section-line {
  height: 8px;
}

.side-text-section {
  position: relative;
}

#text-financials {
  display: block;
  transform: rotate(90deg);
  transform-origin: top left;
  position: absolute;
  font-size: 196px;
  font-weight: 900;
  top: -67px;
  left: 162px;
  z-index: -1;
  line-height: 1;
}

.lines-anim-row {
  overflow: hidden;
}

.lines-bottom-left {
  position: absolute;
  left: 0; /* starting offset */
  bottom: 0; /* starting offset */
  transition: all 0.3s ease-out;
  z-index: 2;
}

.lines-bottom-left.in-view {
  left: -314px;
  bottom: 0;
}

.lines-top-right {
  top: -378px;
  right: -279px;
  transition: all 0.3s ease-out;
}

.lines-top-right.in-view {
  top: 0;
  right: -314px;
}

.lines-sentinel {
  width: 100%;
  height: 250px;
  pointer-events: none;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.blurred-row .kt-row-column-wrap {
  background-image: url(https://impact2025-jvs.freshy.dev/wp-content/uploads/2024/09/joseph-bg-1.webp);
  background-repeat: no-repeat;
  background-size: cover;
}

.blurred-box {
  position: relative;
  border-radius: 2px;
  overflow: hidden;
  backdrop-filter: blur(16px);
  background-color: rgba(44, 165, 170, 0.36);
  padding-top: 50px;
  padding-bottom: 50px;
  border-radius: 30px;
}

.blurred-box .kt-inside-inner-col {
  z-index: 5;
}

.cutout-section {
  top: 0;
  bottom: 0;
  width: 100%;
  min-height: 720px;
  z-index: 5;
}

.anim-border-row {
  background: none;
  border: 0;
  box-sizing: border-box;
  /* margin: 1em; */
  padding: 15px;
  box-shadow: inset 0 0 0 6px transparent;
  font-size: inherit;
  font-weight: 700;
  position: relative;
  vertical-align: middle;
  border-radius: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.anim-border-row-w-bg {
  background: #fff;
  border-radius: 15px 15px 0 15px;
}

.fix-height {
  height: 100%;
}

.fix-height-inner {
  height: 100%;
}

.fix-height-inner > .kt-inside-inner-col {
  height: 100%;
}

.anim-sm-pad {
  padding: 8px;
}

.anim-border-row::before,
.anim-border-row::after {
  box-sizing: inherit !important;
  content: '' !important;
  position: absolute !important;
  width: 100%;
  height: 100%;
  display: block;
}

.draw {
  transition: color 0.25s;
}

.draw::before,
.draw::after {
  /* Set border to invisible, so we don't see a 4px border on a 0x0 element before the transition starts*/
  border: 6px solid transparent !important;
  opacity: 0;
  border-radius: 0;
  width: 0;
  height: 0;
}

.draw-sm::before,
.draw-sm::after {
  border: 8px solid transparent !important;
}

/* This covers the top & right borders (expands right, then down)*/
.draw::before {
  top: 0;
  left: 0;
}
/* 
  // And this the bottom & left borders (expands left, then up) */
.draw::after {
  bottom: 0;
  right: 0;
}

.draw:hover {
  color: var(--cyan);
}

.draw.in-view::before,
.draw.in-view::after {
  width: 100%;
  height: 100%;
  border-radius: 35px 35px 0 35px;
}

.draw-sm.in-view::before,
.draw-sm.in-view::after {
  border-radius: 15px 15px 0 15px;
}

.draw.in-view::before {
  opacity: 1;
  border-top-color: var(--teal) !important;
  border-right-color: var(--teal) !important;
  transition:
    border-radius 0.25s ease-out 0.25s,
    opacity 0.025s linear 0.5s,
    width 0.25s ease-out,
    height 0.25s ease-out 0.5s;
}

.draw.in-view::after {
  border-bottom-color: var(--teal) !important;
  border-left-color: var(--teal) !important;
  opacity: 1;
  transition:
    border-radius 0.25s ease-out 0.75s,
    width 0.25s ease-out 0.75s,
    height 0.25s ease-out 1s,
    opacity 0.2s linear 0.75s;
}

.draw-sm.in-view::before {
  opacity: 1;
  border-top-color: var(--yellow) !important;
  border-right-color: var(--yellow) !important;
  transition:
    border-radius 0.25s ease-out 0.25s,
    opacity 0.025s linear 0.5s,
    width 0.25s ease-out,
    height 0.25s ease-out 0.5s;
}

.draw-sm.in-view::after {
  border-bottom-color: var(--yellow) !important;
  border-left-color: var(--yellow) !important;
  opacity: 1;
  transition:
    border-radius 0.25s ease-out 0.75s,
    width 0.25s ease-out 0.75s,
    height 0.25s ease-out 1s,
    opacity 0.2s linear 0.75s;
}

.draw-teal.in-view::before {
  border-top-color: var(--teal) !important;
  border-right-color: var(--teal) !important;
}

.draw-teal.in-view::after {
  border-bottom-color: var(--teal) !important;
  border-left-color: var(--teal) !important;
}

.fade-bg {
  background-color: transparent;
  transition: background-color 0.75s ease 0.75s;
}

.fade-bg.in-view {
  background-color: var(--dkBlue);
}

.image-wrap-spacer {
  float: right;
  width: 50%;
  max-width: 560px;
  height: 30px;
}

.quote-box {
  position: relative;
  box-sizing: border-box;

  /* 8px border */
  padding: 8px 8px 0;

  /* outer rounded corners */
  border-radius: 22px 22px 0 22px;

  overflow: hidden;

  /*
     * Yellow border stays solid, then fades into white.
     * White underneath prevents the background image
     * from showing through.
     */
  background:
    linear-gradient(
      to bottom,
      var(--yellow) 0%,
      var(--yellow) 55%,
      rgba(253, 187, 0, 0.7) 62%,
      rgba(253, 187, 0, 0.28) 78%,
      rgba(253, 187, 0, 0) 92%
    ),
    #fff;
}

.quote-box-orange {
  background:
    linear-gradient(
      to bottom,
      var(--brandedOrange) 0%,
      var(--brandedOrange) 45%,
      color-mix(in srgb, var(--brandedOrange) 70%, transparent) 62%,
      color-mix(in srgb, var(--brandedOrange) 28%, transparent) 78%,
      transparent 92%
    ),
    #fff;
}

.quote-box-teal {
  background:
    linear-gradient(
      to bottom,
      var(--teal) 0%,
      var(--teal) 45%,
      color-mix(in srgb, var(--teal) 70%, transparent) 62%,
      color-mix(in srgb, var(--teal) 28%, transparent) 78%,
      transparent 92%
    ),
    #fff !important;
}

.quote-box-inner {
  background: #fff;

  /* outer radius 22px - 8px border = 14px */
  border-radius: 14px 14px 0 0;
}

.video-frame-box {
  position: relative;
  box-sizing: border-box;

  padding: 8px;

  /* top-left, top-right, bottom-right, bottom-left */
  border-radius: 22px 22px 0 22px;

  overflow: hidden;

  background:
    linear-gradient(
      to bottom,
      #fdbb00 0%,
      #fdbb00 55%,
      rgba(253, 187, 0, 0.7) 72%,
      rgba(253, 187, 0, 0.28) 88%,
      rgba(253, 187, 0, 0) 100%
    ),
    #fff;
}

.video-frame-inner {
  background: #fff;

  /* 22px outer radius - 8px border = 14px */
  border-radius: 14px 14px 0 14px;

  overflow: hidden;
}

.video-frame-inner iframe {
  display: block;
  width: 100%;
}

.fade-up-custom {
  opacity: 0;
  transform: translate3d(0, 30px, 0);

  transition-property: opacity, transform;
  transition-duration: 0.4s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}

.fade-up-custom.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.skills-row {
  overflow: hidden;
}

.skills-right {
  position: relative;
}

.skills-right::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;

  /* start in the middle of the right column */
  left: 50%;

  /* extend far past the viewport */
  width: 100vw;

  background: #f2f2f2;
  z-index: 0;
}

.skills-right > .kt-inside-inner-col {
  position: relative;
  z-index: 1;
}

.jvs-fade-in {
  opacity: 0 !important;
  transition: opacity 0.8s ease;
}

.jvs-fade-in.jvs-visible {
  opacity: 1 !important;
}

.jvs-delay-450 {
  transition-delay: 450ms;
}

.jvs-delay-750 {
  transition-delay: 750ms;
}

.dot {
  position: absolute;
  top: calc(50% - 5px);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.dot-orange {
  left: 23%;
  background: var(--brandedOrange);
}

.dot-yellow {
  left: 78%;
  background: var(--yellow);
}

.destination-row > .kt-row-column-wrap {
  grid-template-rows: auto 1fr;
}

.jvs-accordion .kt-accordion-header-wrap {
  position: relative;
  z-index: 1;
}

.jvs-accordion .kt-accordion-panel {
  margin-top: -6px;
  position: relative;
  z-index: 0;
}

/* .section-2 {
  position: relative;
  overflow: hidden;
}

.section-2::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 450px;
  height: calc(100% - 450px);
  background: var(--teal);
  clip-path: polygon(0 25%, 100% 0, 100% 100%, 0 100%);
  width: 100%;
  z-index: 0;
}

.section-2 > * {
  position: relative;
  z-index: 1;
} */

/* .section-2 {
  position: relative;
  overflow: hidden;
}

.section-2::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 450px;
  height: calc(100% - 450px);
  background-image: url('https://impact2026-jvs-kl-09282026.freshy.dev/wp-content/uploads/2026/10/teal-angle.webp');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  width: 100%;
  z-index: 0;
}

.section-2::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;

  top: 680px;
  bottom: 0;

  background: var(--teal);

  z-index: 0;
}

.section-2 > * {
  position: relative;
  z-index: 1;
} */

.section-2 {
  position: relative;
  overflow: hidden;
  /* keep your existing dark blue background image here */
}

.section-2::before {
  content: '';
  position: absolute;
  left: 0;
  top: 450px;
  width: 100%;
  height: calc(100% - 450px);

  background-image:
    url('https://impact2026-jvs-kl-09282026.freshy.dev/wp-content/uploads/2026/10/teal-angle.webp'),
    linear-gradient(
      to bottom,
      transparent 0,
      transparent 110px,
      var(--teal) 110px,
      var(--teal) 100%
    );

  background-repeat: no-repeat, no-repeat;
  background-position:
    top center,
    top left;
  background-size:
    100% 110px,
    100% 100%;

  z-index: 0;
}

.section-2 > * {
  position: relative;
  z-index: 1;
}

.section-yellow::before {
  background-image:
    url('https://impact2026-jvs-kl-09282026.freshy.dev/wp-content/uploads/2026/10/yellow-angle.webp'),
    linear-gradient(
      to bottom,
      transparent 0,
      transparent 110px,
      var(--yellow) 110px,
      var(--yellow) 100%
    );
}

.section-orange::before {
  background-image:
    url(https://impact2026-jvs-kl-09282026.freshy.dev/wp-content/uploads/2026/10/orange-angle.webp),
    linear-gradient(
      to bottom,
      transparent 0,
      transparent 110px,
      var(--brandedOrange) 110px,
      var(--brandedOrange) 100%
    );
}

/* Wrapper & image */
.circular {
  position: relative;
  display: inline-block;
  border-radius: 50%;
}
.circular img {
  display: block;
  border-radius: 50%;
}

/* SVG overlay */
.circular .circle-border {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.circular .circle-border svg {
  width: 100%;
  height: 100%;
  transform: rotate(
    -90deg
  ); /* start at top (12 o'clock) * /;
}
.circular .circle-border circle {
  fill: none;
  stroke: var(--teal); /* <-- border color */
  stroke-width: 1.3; /* <-- border thickness */
  transition: stroke-dashoffset 1.1s ease 0.5s; /* <-- animation timing */
}

.circular.circular-yellow .circle-border circle {
  stroke: var(--yellow); /* <-- border color */
}

.circular.circular-wider .circle-border circle {
  stroke-width: 2.7;
}

/* When in view, the dash offset goes to 0 (fully drawn) */
.circular.in-view .circle-border circle {
  stroke-dashoffset: 0 !important;
}

.text-underline {
  position: relative;
  display: inline-block;
  width: auto;
  padding-bottom: 5px;
  margin-bottom: 8px;
}
.text-underline:after {
  content: '';
  display: inline-block;
  position: absolute;
  height: 7px;
  background: var(--teal);
  border-radius: 10px;
  bottom: -6px;
  left: 0;
  width: 100%;
  /* animation: underline 0.5s ease-in-out 0.5s 1;
  animation-fill-mode: both; */
}

.text-underline-yellow::after {
  background: var(--yellow);
}

/* Wrapper */
.timeline-img {
  position: relative;
  display: inline-block;
  overflow: visible;
}

/* Add the bottom border as a pseudo-element */
.timeline-img::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 22px;
  width: 0; /* start invisible */
  /* background-color: var(--brandedOrange); */
  /* border-bottom: 5px dotted var(--brandedOrange);
  border-radius: 10px; */
  background-image: radial-gradient(
    circle,
    var(--brandedOrange) 30%,
    transparent 31%
  );
  background-repeat: repeat-x;
  background-size: 20px 22px; /* 12px = space between centers, 6px = dot diameter */

  transition: width 0.5s ease-out;
}

/* Active state when in view */
.timeline-img.in-view::after {
  width: 100%; /* animate from left to right */
}

/* Staggered delays */
.timeline-img-1::after {
  transition-delay: 0.5s;
}
.timeline-img-2::after {
  transition-delay: 1s;
}
.timeline-img-3::after {
  transition-delay: 1.5s;
}

.timeline-img::before {
  content: '';
  background-image: url('https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/09/arrow-head-teal.webp');
  background-repeat: no-repeat;
  background-size: contain;
  width: 30px;
  height: 50px;
  position: absolute;
  right: -1px;
  bottom: -18px;
  z-index: 2;
  transition: opacity 0.5s ease-out 0.5s;
  opacity: 0;
}

.timeline-img.in-view::before {
  opacity: 1;
}

.timeline-img-1::before {
  transition-delay: 0.9s;
}
.timeline-img-2::before {
  transition-delay: 1.4s;
}
.timeline-img-3::before {
  transition-delay: 1.9s;
}

#staff-row {
  width: 100%;
}

#staff-row > .kt-row-column-wrap {
  width: 1450px;
  max-width: 100%;
}

.jvs-vid-section > .kt-inside-inner-col,
.jvs-vid-section > .kt-inside-inner-col figure {
  width: 100%;
  height: 100%;
}

.jvs-vid iframe {
  border-radius: 14px 14px 0 14px;
}

.fix-inner-width > .kt-inside-inner-col {
  width: 100%;
  height: auto;
}

.text-arrow-1 {
  position: relative;
}

.text-arrow-1::after {
  content: '';
  background: url('https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/arrow-down-1.webp');
  background-repeat: no-repeat;
  background-size: contain;
  width: 63px;
  height: 160px;
  position: absolute;
  right: -60px;
  top: 39px;
}

.text-arrow-2 {
  position: relative;
}

.text-arrow-2::after {
  content: '';
  background: url('https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/arrow-down-2.webp');
  background-repeat: no-repeat;
  background-size: contain;
  width: 63px;
  height: 160px;
  position: absolute;
  left: 0;
  top: 38px;
}

.text-arrow-3 {
  position: relative;
}

.text-arrow-3::after {
  content: '';
  background: url('https://impact2025-jvs.freshy.dev/wp-content/uploads/2025/10/arrow-down-1.webp');
  background-repeat: no-repeat;
  background-size: contain;
  width: 63px;
  height: 160px;
  position: absolute;
  right: -60px;
  top: 23px;
}

.map-cities {
  position: absolute;
  top: 0;
  opacity: 1;
  width: 100%;
  left: 50%;
  transform: translate3d(-50%, 0, 0) !important;
}

.map-cities img {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0) !important;
}

/* #gform_fields_2 {
  display: flex !important;
  justify-content: space-between !important;
} */

.gform_required_legend {
  display: none !important;
}

/* .gform-theme--foundation .gform_footer {
  justify-content: flex-end;
} */

.gform-theme--foundation .gform_footer,
.gform-theme--foundation .gform_page_footer {
  margin-top: 10px !important;
}

.job-seek-outer-column {
  position: relative;
  flex-basis: 96px !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
}

.job-seek-percent {
  position: absolute;

  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}

#job-seek-77 {
  bottom: 80px;
}

#job-seek-79 {
  bottom: 110px;
}

#job-seek-80 {
  bottom: 140px;
}

#arrow-curved {
  position: absolute;
  top: 29px;
  left: 50%;
  transform: translateX(-50%);
}

.chart-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 30px;
}

h1 {
  font-size: 20px;
  font-weight: 500;
  color: #333;
  margin-bottom: 30px;
}

.chart {
  position: relative;
  height: 400px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 80px;
  padding: 20px 60px;
}

.y-axis {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 50px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px 0;
}

.y-label {
  font-size: 16px;
  color: #fff;
  text-align: right;
  padding-right: 10px;
}

.y-axis-title {
  position: absolute;
  left: -72px;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
  font-size: 14px;
  color: #fff;
  white-space: nowrap;
}

.bar-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  max-width: 200px;
}

.bar {
  width: 100%;
  position: relative;
  border-radius: 2px 2px 0 0;
}

.bar-3months {
  background-color: #f26323;
  height: 220px;
  border-radius: 20px 20px 0 0;
}

.bar-6months {
  background-color: #2ca5aa;
  height: 300px;
  border-radius: 20px 20px 0 0;
}

.percentage-label {
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 24px;
  font-weight: 600;
  color: #fff;
  white-space: nowrap;
}

.x-label {
  margin-top: 7px;
  margin-bottom: -15px;
  font-size: 18px;
  color: #fff;
  text-align: center;
  font-weight: 700;
}

.grid-lines {
  position: absolute;
  left: 50px;
  right: 0;
  top: 20px;
  bottom: 40px;
  pointer-events: none;
}

.grid-line {
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #777;
}

.grid-line:nth-child(1) {
  top: 0%;
}
.grid-line:nth-child(2) {
  top: 25%;
}
.grid-line:nth-child(3) {
  top: 50%;
}
.grid-line:nth-child(4) {
  top: 75%;
}
.grid-line:nth-child(5) {
  top: 100%;
}

.jvs-table table {
  border: none;
}

.jvs-table td {
  border-bottom: solid 1px var(--teal) !important;
}

.donor-list,
.no-bullet-list {
  margin-bottom: 0;
}

.wp-block-kadence-advancedheading.add-support-stat > .kt-highlight {
  display: inline-block;
  line-height: 0;
  position: absolute;
  margin-left: 10px;
}

/*==responsive==============================================*/

@media only screen and (max-width: 1700px) {
  #ceo-letter-grid {
    padding-right: 100px;
  }
}

@media only screen and (max-width: 1600px) {
  #ceo-letter-grid {
    padding-right: 200px;
  }
}

@media only screen and (max-width: 1510px) {
  #donate-button {
    right: -18px !important;
    padding-right: 10px !important;
  }
}

@media only screen and (max-width: 1450px) {
  #footer-info-row > .kt-row-column-wrap {
    column-gap: 35px;
  }
}

@media only screen and (max-width: 1400px) {
  #ceo-letter-grid {
    padding-right: 300px;
  }
}

@media only screen and (max-width: 1330px) {
  .bz .demand-left > .kt-inside-inner-col {
    padding-left: 64px;
  }

  .bz .demand-right > .kt-inside-inner-col {
    padding-right: 64px;
  }

  .bz .destination-section > .kt-inside-inner-col {
    padding-left: 64px;
    padding-right: 64px;
  }

  .jvs-icon img {
    width: 60px;
  }

  .dashed-arrow {
    right: -70px;
    width: 60px;
  }

  .icon-text {
    font-size: 17px;
  }
}

@media only screen and (max-width: 1200px) {
  #footer-info-row > .kt-row-column-wrap {
    grid-template-columns: repeat(1, 1fr);
    max-width: 500px;
    margin: 0 auto;
  }

  .wp-block-kadence-advancedheading.add-support-stat {
    font-size: 54px !important;
  }
}

@media only screen and (max-width: 1154px) {
  #opp-img .kt-inside-inner-col {
    min-height: 400px;
  }
}

@media only screen and (max-width: 1068px) {
  #opp-img .kt-inside-inner-col {
    min-height: 450px;
  }
}

@media only screen and (max-width: 1049px) {
  .six-months-br {
    display: none;
  }
}

@media only screen and (max-width: 1024px) {
  #toc-left > .kt-inside-inner-col,
  #toc-right > .kt-inside-inner-col {
    padding-top: 250px;
  }

  .image-wrap-spacer {
    display: none;
  }

  #gform_fields_2 {
    flex-direction: column;
  }

  .bz .destination-section > .kt-inside-inner-col {
    padding-left: 15px;
    padding-right: 15px;
  }

  .avg-countup-2 .kb-count-up-number {
    font-size: 56px !important;
  }

  #after-footer-inner-div {
    margin: 0 30px;
  }
}

@media only screen and (max-width: 900px) {
  #text-2025 {
    font-size: 309px;
    top: 247px;
    left: -278px;
  }
}

@media only screen and (max-width: 840px) {
}

@media only screen and (max-width: 767px) {
  #toc-row,
  #support-row {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }

  #toc-left > .kt-inside-inner-col {
    padding-top: 160px;
  }

  #toc-right > .kt-inside-inner-col {
    padding-top: 0;
  }

  .ceo-photo {
    margin-left: 0;
  }

  #ceo-letter-grid {
    padding-left: 30px;
    padding-right: 30px;
  }

  /* .section-2::before {
    clip-path: polygon(0 8%, 100% 0, 100% 100%, 0 100%);
  } */

  #tagline-row {
    bottom: 44px;
  }

  .toc-list {
    margin-bottom: 5px;
  }

  .toc-list li:last-child {
    margin-bottom: 0;
  }

  #article-row .wp-block-kadence-column {
    max-width: 90%;
    margin: 0 auto;
  }

  .bz .demand-left > .kt-inside-inner-col {
    padding-left: 15px;
  }

  .bz .demand-right > .kt-inside-inner-col {
    padding-right: 15px;
  }

  .staff-list {
    margin-bottom: 0;
  }

  .list-heading.no-top-margin {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 640px) {
  .icon-row {
    margin-left: -22px;
    margin-right: -17px;
  }

  .icon-row > .kt-row-column-wrap {
    gap: 0;
  }

  .icon-text {
    font-size: 11px !important;
  }

  .jvs-bar-title {
    font-size: 13px !important;
  }

  .jvs-bar-number {
    font-size: 16px !important;
  }
}

@media only screen and (max-width: 500px) {
  .jvs-logo {
    max-width: 120px !important;
    margin-bottom: -7px !important;
  }

  .jvs-logo img {
    padding: 10px !important;
    border-radius: 10px 0 0 10px !important;
  }

  /* .section-2::before {
    clip-path: polygon(0 3%, 100% 0, 100% 100%, 0 100%);
  } */

  #input_2_3 > div {
    max-width: 220px;
  }

  #after-footer-inner-div h3 {
    font-size: 40px;
  }

  /* .anim-border-row {
    max-width: 90%;
  } */

  .chart-container {
    padding: 30px 10px;
  }

  .chart {
    padding-right: 20px;
  }
}
