/*
SRF Custom Styles
*/

@font-face {
  font-family: 'Segma';
  src: url('../fonts/Segma-Regular.woff2') format('woff2'),
       url('../fonts/Segma-Regular.woff') format('woff');
  font-weight: 400; /* normal */
  font-style: normal;
  font-display: swap; /* Prevents invisible text during loading */
}
@font-face {
  font-family: 'Segma';
  src: url('../fonts/Segma-RegularItalic.woff2') format('woff2'),
       url('../fonts/Segma-RegularItalic.woff') format('woff');
  font-weight: 400; /* normal */
  font-style: italic;
  font-display: swap; /* Prevents invisible text during loading */
}
@font-face {
  font-family: 'Segma';
  src: url('../fonts/Segma-Medium.woff2') format('woff2'),
       url('../fonts/Segma-Medium.woff') format('woff');
  font-weight: 600; /* normal */
  font-style: normal;
  font-display: swap; /* Prevents invisible text during loading */
}
@font-face {
  font-family: 'Segma';
  src: url('../fonts/Segma-Bold.woff2') format('woff2'),
       url('../fonts/Segma-Bold.woff') format('woff');
  font-weight: 700; /* normal */
  font-style: normal;
  font-display: swap; /* Prevents invisible text during loading */
}
@font-face {
  font-family: 'Segma';
  src: url('../fonts/Segma-Black.woff2') format('woff2'),
       url('../fonts/Segma-Black.woff') format('woff');
  font-weight: 900; /* normal */
  font-style: normal;
  font-display: swap; /* Prevents invisible text during loading */
}


/* GLOBAL */
h1, h2, h3, h4, h5, h6, .heading {
  margin-top: 0px;
  margin-bottom: 1.5rem;
  text-transform: none;
  font-family: 'Segma';
}
p a,
p a:hover,
li a,
li a:hover,
ol a,
ol a:hover {
  text-decoration: underline;
}
ol li::marker {
  content: counter(list-item) '. ' !important;
}
ol li::before {
  display: none !important;
}
.justify-content-end {
  justify-content: flex-end !important;
}
.d-inline {
  display: inline !important;
}
.justify-end {
  justify-content: flex-end;
}
.container {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 1399px;
  margin: 0 auto;
}
@media (max-width: 1199.98px) {
  .container {
    max-width: 100vw;
  }
}
@media (max-width: 767.98px) {
  ul, ol {
    padding-left: 30px;
  }
  .container {
    max-width: 700px;
  }
}

.text-white,
.text-white a {
  color: #ffffff !important;
}
.text-black {
  color: #000000 !important;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.uppercase {
  text-transform: uppercase;
}
.pointer {
  cursor: pointer;
}
.justify-content-center {
  justify-content: center !important;
}

.no-padd {
  padding: 0 !important;
}

.wpb-content-wrapper .wpb_row {
  margin-bottom: 0;
}
.wpb_text_column ol li::marker {
  font-weight: 400;
}
.wpb_text_column ul li:before {
  left: -16px;
  width: 6px;
  height: 6px;
}

.vc_col-has-fill>.vc_column-inner, .vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner, .vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner, .vc_row-has-fill>.vc_column_container>.vc_column-inner {
  padding-top: 0;
}

@media (max-width: 991.98px) {
  /* Force WPBakery rows to un-flex/un-grid if necessary */
  /* .vc_row {
    display: block !important;
  } */

  /* Force all columns to take up 100% width and stack */
  .vc_row .vc_col-sm-1,  .vc_row .vc_col-sm-2,  .vc_row .vc_col-sm-3,  
  .vc_row .vc_col-sm-4,  .vc_row .vc_col-sm-5,  .vc_row .vc_col-sm-6,  
  .vc_row .vc_col-sm-7,  .vc_row .vc_col-sm-8,  .vc_row .vc_col-sm-9,  
  .vc_row .vc_col-sm-10, .vc_row .vc_col-sm-11, .vc_row .vc_col-sm-12 {
    width: 100% !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    margin-bottom: 0; /* Optional: adds space between stacked columns */
  }
}


/* BUTTONS */
.gem-button {
  margin-top: 0px;
  margin-bottom: 0px;
  padding: 0;
  color: rgb(255, 255, 255);
  background-color: rgb(9, 117, 224);
  border-radius: 50px;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
}
.load-more-wrapper .gem-button {
  cursor: pointer;
}
.search-results-bottom a.gem-button,
.gem-button a,
.load-more-wrapper .gem-button,
#column_grid .gem-button:not(.no-title) {
  padding-left: 25px;
  padding-right: 70px;
}
.search-results-bottom a.gem-button::after,
.gem-button a::after,
.load-more-wrapper .gem-button::after,
.gem-button.blue.no-title::after,
#column_grid .gem-button:not(.no-title)::after,
#column_grid .gem-button.blue.no-title::after,
.gem-button.blue.no-title::after,
#column_item .gem-button.blue.no-title::after,
.gem-button.orange.no-title::after,
#column_grid .gem-button.orange.no-title::after,
.gem-button.orange.no-title::after,
#column_item .gem-button.orange.no-title::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  width: 43px;
  height: 16px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}
.search-results-bottom a.gem-button::after,
.gem-button a::after,
.load-more-wrapper .gem-button::after,
#column_grid .gem-button:not(.no-title)::after {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_white.svg');
}
.gem-button.blue.no-title::after,
#column_grid .gem-button.blue.no-title::after,
#column_item .gem-button.blue.no-title::after {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_blue.svg');
  left: 3px;
  right: initial;
}
.gem-button.orange.no-title::after,
#column_grid .gem-button.orange.no-title::after,
#column_item .gem-button.orange.no-title::after {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_orange.svg');
  left: 3px;
  right: initial;
}

.gem-button.blue {
  background-color: rgb(9, 117, 224);
}
.gem-button.blue:hover {
  background-color: rgb(245, 133, 63);
}
.gem-button.orange {
  background-color: rgb(245, 133, 63);
}
.gem-button.orange:hover {
  background-color: rgb(9, 117, 224);
}
.gem-button.blue.no-title,
.gem-button.orange.no-title {
  padding-right: 0;
  background-color: transparent;
  height: 24px;
}
.gem-button.no-title a {
  width: 100%;
  height: 100%;
}

@media (max-width: 991.98px) {
  .gem-button.blue.no-title::after,
  #column_grid .gem-button.blue.no-title::after,
  #column_item .gem-button.blue.no-title::after {
    background-image: url('/wp-content/themes/thegem-child/img/button_icon_white.svg');
    left: 17px;
  }
  .gem-button.orange.no-title::after,
  #column_grid .gem-button.orange.no-title::after,
  #column_item .gem-button.orange.no-title::after {
    background-image: url('/wp-content/themes/thegem-child/img/button_icon_white.svg');
    left: 17px;
  }
  .gem-button.blue.no-title,
  .gem-button.orange.no-title,
  #column_grid .gem-button.blue.no-title,
  #column_item .gem-button.blue.no-title,
  #column_grid .gem-button.orange.no-title,
  #column_item .gem-button.orange.no-title {
    padding-right: 75px;
    height: 34px !important;
  }
  .gem-button.blue.no-title {
    background-color: rgb(9, 117, 224);
  }
  .gem-button.blue.no-title:hover {
    background-color: rgb(245, 133, 63);
  }
  .gem-button.orange.no-title {
    background-color: rgb(245, 133, 63);
  }
  .gem-button.orange.no-title:hover {
    background-color: rgb(245, 133, 63);
  }
}
/* @media (max-width: 575.98px) {
  .gem-button.blue.no-title,
  .gem-button.orange.no-title {
    padding-right: 55px;
  }
} */

.gem-button-container.layout-center,
.gem-button-container.layout-left,
.gem-button-container.layout-right {
  width: 100%;
}
.gem-button-container.layout-center .gem-button,
.gem-button-container.layout-left .gem-button,
.gem-button-container.layout-right .gem-button {
  margin: 0;
}
.gem-button-container.layout-center {
  text-align: center;
}
.gem-button-container.layout-right {
  text-align: right;
}
.gem-button a {
  color: rgb(255, 255, 255);
}
@media (max-width: 991.98px) {
  .gem-button-container {
    margin-top: 1.5rem;
    width: 100%;
  }
}
@media (max-width: 575.98px) {
  .gem-button.gem-button-flex {
    margin: 0;
    height: auto !important;
    /* padding: 0; */
    line-height: 1.5;
  }
  .load-more-wrapper .gem-button.gem-button-flex {
    padding: 15px 70px 15px 20px;
  }
  .gem-button-size-medium {
    font-size: 16px;
  }
  .gem-button a {
    white-space: normal !important;
    overflow-wrap: break-word;
    word-break: normal;
    line-height: 1.2;
    text-align: left;
    padding: 15px 70px 15px 20px;
  }
}
.gem-button svg {
  fill: #FFFFFF;
  width: max(2em, 35px);
}
.gem-button:hover svg {
  fill: #FFFFFF;
}

.donate-btn a.gem-button {
  padding-left: 25px;
  padding-right: 25px;
}
.donate-btn a.gem-button:after {
  display: none;
}

#srf_button .vc_column-inner {
  padding: 0;
}
@media (max-width: 991.98px) {
  #srf_button .button-content {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}


@media (max-width: 991.98px) {
  .vc_tta.vc_general {
    padding: 0 1.5rem;
  }
}
/* ACCORDION - Classic Style */
.vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel {
  border: 1px solid #0975E0;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  margin-bottom: 2rem;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
.vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel:not(:last-child) {
  margin-bottom: 2rem;
}
.vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-heading {
  margin: 0 !important;
  border: 0 !important;
}
.vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel-heading .vc_tta-panel-title > a {
  padding: 3rem 4rem;
  background: #ffffff;
}
.vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-controls-icon::before {
  content: '';
  position: absolute;
  top: -15px;
  right: 0;
  width: 30px;
  height: 30px;
  border: 0 !important;
  background-image: url('/wp-content/themes/thegem-child/img/arrow-right.png');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.vc_tta-accordion .vc_active .vc_tta-controls-icon.vc_tta-controls-icon-triangle:before {
  transform: rotate(90deg) translateY(25%) !important;
}
.vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-body {
  border: 0 !important;
  padding-top: 1.5rem !important;
}
@media (max-width: 991.98px) {
  .vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel-heading .vc_tta-panel-title > a {
    padding: 2rem 3rem;
  }
  .vc_tta-accordion.vc_tta-color-thegem.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-body {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .vc_tta-accordion .vc_tta-panel .vc_tta-panel-body #heading .heading-content {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .vc_tta-accordion .vc_tta-panel .vc_tta-panel-body #wysiwyg .wysiwyg-content {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

/* TABS */
.vc_tta-tabs .vc_tta-tab a {
  background: #004990 !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border: 0 !important;
}
.vc_tta-tabs .vc_tta-tab.vc_active a {
  background: #F5853F !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}
.vc_tta-tabs .vc_tta-tab:first-of-type a {
  border-top-left-radius: 20px !important;
}
.vc_tta-tabs .vc_tta-tab:last-of-type a {
  border-top-right-radius: 20px !important;
}
.vc_tta-tabs .vc_tta-panels {
  border: 2px solid rgba(0, 73, 144, 0.7) !important;
  border-radius: 0 20px 20px 20px !important;
  -moz-border-radius: 0 20px 20px 20px !important;
  -webkit-border-radius: 0 20px 20px 20px !important;
  overflow: hidden !important;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1) !important;
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1) !important;
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1) !important;
}
@media (max-width: 991.98px) {
  .vc_tta-tabs .vc_tta-panels {
    border-radius: 20px !important;
    -moz-border-radius: 20px !important;
    -webkit-border-radius: 20px !important;
  }
  .vc_tta.vc_general.vc_tta-tabs .vc_tta-panel-body {
    padding: 3rem;
  }
  .vc_tta-tabs .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading {
    background: #004990 !important;
    font-size: 20px !important;
    font-weight: 600 !important;
  }
  .vc_tta-tabs .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading {
    background: #F5853F !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    border-top: 0 !important;
  }
  .vc_tta-tabs .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading a {
    color: #ffffff !important;
  }
  .vc_tta-tabs .vc_tta-panel-body {
    padding: 30px;
  }
  .vc_tta-tabs .vc_tta-panels .custom-heading-block-wrapper .vc_column-inner {
    padding-left: 0;
    padding-right: 0;
  }
  .vc_tta-tabs .vc_tta-panels #heading .heading-content {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .vc_tta-tabs .vc_tta-panels #wysiwyg .wysiwyg-content {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}


/* HEADER */
header .header-wrapper {
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
}
header #menu-topbar-nav li a {
  font-family: 'Segma';
  font-weight: 700;
  font-size: 16px;
}
header .nav-mid-bar {
  padding-bottom: 0 !important;
}
@media (max-width: 991.98px) {
  header .nav-mid-bar {
	padding-bottom: 15px !important;
  }
}

/* HERO */
#hero {
  position: relative;
}
#hero.default-height::before,
#hero.tall-height::before,
#hero.full-height::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 100%;
  z-index: 1;
}
#hero.default-height::after,
#hero.tall-height::after,
#hero.full-height::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 100%;
}

@media (max-width: 991.98px) {
  #hero.default-height::before,
  #hero.tall-height::before,
  #hero.full-height::before {
    left: -15vw;
  }
  #hero.tall-height::before,
  #hero.full-height::before {
    background-position: right center;
  }
  #hero.default-height::after,
  #hero.tall-height::after,
  #hero.full-height::after {
    right: -8vw;
  }
}
@media (max-width: 767.98px) {
  #hero.default-height::before {
    left: -20vw;
  }
  #hero.default-height::after {
    right: -13vw;
  }
  #hero.tall-height::before,
  #hero.full-height::before {
    left: -10vw;
  }
  #hero.tall-height::after,
  #hero.full-height::after {
    right: -10vw;
    background-position: left center;
  }
}
@media (max-width: 575.98px) {
  #hero.default-height::before {
    left: -30vw;
  }
  #hero.default-height::after {
    right: -30vw;
  }
  #hero.tall-height::before,
  #hero.full-height::before {
    left: 0;
  }
  #hero.tall-height::after,
  #hero.full-height::after {
    right: -15vw;
  }
}

#hero.default-height.white::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_left_white.png');
}
#hero.default-height.white::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_right_white.png');
}
#hero.default-height.blue::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_left_blue.png');
}
#hero.default-height.blue::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_right_blue.png');
}
#hero.default-height.black::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_left_black.png');
}
#hero.default-height.black::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_right_black.png');
}
#hero.tall-height.white::before,
#hero.full-height.white::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_left_white.png');
}
#hero.tall-height.white::after,
#hero.full-height.white::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_right_white.png');
}
#hero.tall-height.blue::before,
#hero.full-height.blue::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_left_blue.png');
}
#hero.tall-height.blue::after,
#hero.full-height.blue::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_right_blue.png');
}
#hero.tall-height.black::before,
#hero.full-height.black::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_left_black.png');
}
#hero.tall-height.black::after,
#hero.full-height.black::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_right_black.png');
}

#hero.mobile-wrapper {
  display: none;
}
#hero.mobile-wrapper::before,
#hero.mobile-wrapper::after {
  display: none;
}

#hero.default-height {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
#hero.full-height .full-height {
  min-height: 100vh;
}
#hero.tall-height .tall-height {
  height: 75vh;
  min-height: 450px;
  max-height: 600px;
}
#hero .hero-content {
  padding: 15px;
  min-height: 200px;
}
#hero .hero-content .vc_column-inner {
  height: 100%;
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-right: 2.5rem;
  padding-left: 2.5rem;
  background-color: #FFFFFF;
  border-radius: 35px;
  -moz-border-radius: 35px;
  -webkit-border-radius: 35px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
}
#hero .heading {
  margin-bottom: 0;
}
#hero .hero-content .wpb_text_column {
  margin-top: 1.5rem;
  margin-bottom: 0;
}
@media (max-width: 991.98px) {
  #hero.mobile-wrapper {
    display: block;
  }
  #hero .vc_row.tall-height,
  #hero .vc_row.full-height {
    align-content: end;
    padding-bottom: 4rem;
  }
  #hero.tall-height .tall-height .hero-content,
  #hero.full-height .full-height .hero-content {
    display: none;
    pointer-events: none;
  }
 
  #hero .hero-content {
    padding: 15px 40px;
  }
  #hero .hero-content .vc_column-inner {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  #hero .hero-content .wpb_text_column {
    margin-top: 1.5rem;
    margin-bottom: 0;
  }
}
.vc_row-full-width.vc_clearfix {
  position: relative;
}
.vc_row.wpb_row:has(#hero.drop-shadow) + .vc_row-full-width.vc_clearfix::before {
  content: '';
  position: absolute;
  width: 140vw;
  height: 33px;
  left: -30vw;
  bottom: -33px;
  background: linear-gradient(to bottom, rgba(217, 217, 217, 0.66), rgba(255, 255, 255, 0) 100%);
  z-index: 9;
}


/* =============================================================
   SRF Hero Slider — Stylesheet
   Mirrors the existing custom-hero-block conventions.
   ============================================================= */
/* ── Wrapper ─────────────────────────────────────────────────── */
.srf-hero-slider-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #010101;
}

/* Default height: same vertical padding as #hero.default-height */
.srf-hero-slider-wrapper.srf-slider-height-default {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

/* ── Overlay PNG pseudo-elements ─────────────────────────────── */
/*
   Left half  → ::before   (same as #hero::before)
   Right half → ::after    (same as #hero::after)
   Images live at /wp-content/themes/thegem-child/img/overlay/
*/
.srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::before,
.srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::before,
.srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 100%;
  z-index: 5;
  pointer-events: none;
}
.srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::after,
.srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::after,
.srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 100%;
  z-index: 5;
  pointer-events: none;
}

@media (max-width: 991.98px) {
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::before,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::before,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::before {
    left: -15vw;
    background-position: right center;
  }
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::after,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::after,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::after {
    right: -10vw;
  }
}
@media (max-width: 767.98px) {
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::before,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::before,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::before {
    left: -20vw;
  }
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::after,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::after,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::after {
    right: -20vw;
  }
}
@media (max-width: 575.98px) {
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::before,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::before,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::before {
    left: 0;
  }
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-white .srf-slide-visual::after,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-blue .srf-slide-visual::after,
  .srf-hero-slider-wrapper .srf-slide.srf-overlay-black .srf-slide-visual::after {
    right: -15vw;
    background-position: left center;
  }
}

/* — Default-height overlays — */
.srf-hero-slider-wrapper.srf-slider-height-default .srf-slide.srf-overlay-white .srf-slide-visual::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_left_white.png');
}
.srf-hero-slider-wrapper.srf-slider-height-default .srf-slide.srf-overlay-white .srf-slide-visual::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_right_white.png');
}
.srf-hero-slider-wrapper.srf-slider-height-default .srf-slide.srf-overlay-blue .srf-slide-visual::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_left_blue.png');
}
.srf-hero-slider-wrapper.srf-slider-height-default .srf-slide.srf-overlay-blue .srf-slide-visual::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_right_blue.png');
}
.srf-hero-slider-wrapper.srf-slider-height-default .srf-slide.srf-overlay-black .srf-slide-visual::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_left_black.png');
}
.srf-hero-slider-wrapper.srf-slider-height-default .srf-slide.srf-overlay-black .srf-slide-visual::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_right_black.png');
}

/* — Tall-height and Full-height overlays (share the same tall PNGs) — */
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide.srf-overlay-white .srf-slide-visual::before,
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide.srf-overlay-white .srf-slide-visual::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_left_white.png');
}
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide.srf-overlay-white .srf-slide-visual::after,
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide.srf-overlay-white .srf-slide-visual::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_right_white.png');
}
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide.srf-overlay-blue .srf-slide-visual::before,
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide.srf-overlay-blue .srf-slide-visual::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_left_blue.png');
}
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide.srf-overlay-blue .srf-slide-visual::after,
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide.srf-overlay-blue .srf-slide-visual::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_right_blue.png');
}
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide.srf-overlay-black .srf-slide-visual::before,
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide.srf-overlay-black .srf-slide-visual::before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_left_black.png');
}
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide.srf-overlay-black .srf-slide-visual::after,
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide.srf-overlay-black .srf-slide-visual::after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_hero_tall_right_black.png');
}

/* ── Slides track ────────────────────────────────────────────── */
.srf-slider-track {
  position: relative;
  width: 100%;
}

/*
   Full height: the track itself becomes 100vh
   (mirrors #hero.full-height .full-height { min-height: 100vh })
*/
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slider-track {
  min-height: 100vh;
}

/*
   Tall height: no fixed height — the inner content padding drives the
   height, just like #hero.tall-height .tall-height { padding: 20vh 0 }
*/
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slider-track {
  /* height is content-driven via .srf-slide-inner padding below */
}

/*
   Default height: the wrapper padding (2.5rem top + bottom) set above
   drives the height just like the hero. No explicit height needed here.
*/

/* ── Individual slides ───────────────────────────────────────── */
.srf-slide {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-areas: "slide";
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
  pointer-events: none;
  z-index: 0;
}
.srf-slide.srf-slide-active {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}
/*
   The first slide is position:relative so the track (and therefore the
   wrapper) has a natural height to grow into. All subsequent slides are
   position:absolute and overlay it.
*/
.srf-slide:first-child {
  position: relative;
}

.srf-slide-visual,
.srf-slide-inner {
  grid-area: slide;
}

.srf-slide-visual {
  position: relative;
  z-index: 1;
  width: 100%;
  min-height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* ── Slide-left transition mode ──────────────────────────────── */
/*
   When .srf-transition-slide is on the wrapper, we swap from an
   opacity cross-fade to a horizontal CSS transform slide.
   All off-screen slides sit to the right by default (translateX(100%)).
*/
.srf-transition-slide .srf-slide {
    opacity: 1;                              /* always fully visible   */
    transform: translateX(100%);             /* default: off to right  */
    transition: transform 0.55s ease-in-out; /* only animate transform */
    will-change: transform;
}
/* Active slide is centred */
.srf-transition-slide .srf-slide.srf-slide-active {
    transform: translateX(0);
    z-index: 1;
}
/* Outgoing slide exits to the LEFT (forward navigation) */
.srf-transition-slide .srf-slide.srf-slide-exit-left {
    transform: translateX(-100%);
}
/* Outgoing slide exits to the RIGHT (backward navigation) */
.srf-transition-slide .srf-slide.srf-slide-exit-right {
    transform: translateX(100%);
}
/*
   Incoming slide enters from the LEFT (backward navigation).
   We temporarily apply this class before activating so the slide
   is pre-positioned off-screen left before the transition fires.
*/
.srf-transition-slide .srf-slide.srf-slide-enter-left {
    transform: translateX(-100%);
}

/* ── Original slide inner: overlays visual on desktop ───────── */
.srf-slide-inner {
  position: relative;
  z-index: 6;
  width: 100%;
  display: flex;
  align-items: center;
  pointer-events: none;
}
/* Tall: padding-driven height — mirrors tall-height row padding */
.srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide-inner {
  padding-top: 4rem;
  padding-bottom: 4rem;
  min-height: 570px;
}
/* Full: let 100vh on the track do the work; just centre the content */
.srf-hero-slider-wrapper.srf-slider-height-full .srf-slide-inner {
  min-height: 100vh;
}

/* ── Slide content column & card ─────────────────────────────── */
/* Outer column — mirrors #hero .hero-content */
.srf-slide-content-wrap {
  width: 100%;
  max-width: 1399px;
  margin: 0 auto;
  padding: 15px 20px; /* 20px sides leave room for arrows */
  box-sizing: border-box;
}
.srf-slide-has-right-image .srf-slide-content-wrap {
  display: flex;
  align-items: center;
}
/* Inner card — mirrors #hero .hero-content .vc_column-inner */
.srf-slide-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-right: 2.5rem;
  padding-left: 2.5rem;
  background-color: #FFFFFF;
  border-radius: 35px;
  -moz-border-radius: 35px;
  -webkit-border-radius: 35px;
  min-height: 200px;
  max-width: 50%;
  box-sizing: border-box;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  pointer-events: auto;
}
.srf-slide-has-right-image .srf-slide-content {
  flex: 0 0 50%;
  width: 50%;
  order: 1;
}
.srf-slide-image-wrap {
  flex: 0 0 50%;
  width: 50%;
  order: 2;
  padding: 0 5rem;
  box-sizing: border-box;
}
.srf-slide-right-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 70vh;
  object-fit: contain;
}
/* ── Typography ──────────────────────────────────────────────── */

/* Mirrors #hero .heading { margin-bottom: 0 } */
.srf-slide-heading {
  margin-bottom: 0;
  line-height: 1.2;
}
.srf-slide-description {
  line-height: 1.6;
  margin: 1.5rem 0 0; /* mirrors .wpb_text_column margin-top on mobile */
}
/* ── Button — matches existing gem-button wrapper ────────────── */
.srf-slide-content .gem-button-container {
  margin-top: 1.5rem;
}
.srf-slide-content .gem-button {
  display: inline-flex;
  align-items: center;
}
/* ── Prev / Next arrows ──────────────────────────────────────── */
.srf-slider-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background: rgba(189, 189, 189, 0.80);
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  padding: 0;
}
.srf-slider-arrow:hover {
  background: rgba(255, 255, 255, 1);
  transform: translateY(-50%) scale(1.08);
}
.srf-slider-arrow svg {
  fill: #1a6dd4;
  display: block;
  flex-shrink: 0;
}
.srf-slider-prev { left: 16px; }
.srf-slider-next { right: 16px; }

/* ── Dot navigation ──────────────────────────────────────────── */
.srf-slider-dots {
  position: absolute;
  bottom: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  gap: 8px;
  align-items: center;
  background: rgba(51, 51, 51, 0.3);
  padding: 4px 8px;
  border-radius: 50px;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
}
.srf-slider-dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.55);
  border: 2px solid rgba(255, 255, 255, 0.80);
  padding: 0;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.20);
}
.srf-slider-dot.srf-dot-active {
  background: #FEC916;
  border-color: #FEC916;
  transform: scale(1.25);
}
.srf-slider-dot:hover:not(.srf-dot-active) {
  background: rgba(255, 255, 255, 0.85);
  border-color: rgba(255, 255, 255, 1);
}

.vc_row.wpb_row:has(.srf-hero-slider-wrapper.drop-shadow) + .vc_row-full-width.vc_clearfix::before {
  content: '';
  position: absolute;
  width: 140vw;
  height: 33px;
  left: -30vw;
  bottom: -33px;
  background: linear-gradient(to bottom, rgba(217, 217, 217, 0.66), rgba(255, 255, 255, 0) 100%);
  z-index: 9;
}

/* ── Responsive — mirrors hero mobile rules ───────────────────── */
@media (max-width: 991.98px) {
    /* Tall / full rows align to bottom on mobile, like the hero */
    .srf-hero-slider-wrapper.srf-slider-height-tall .srf-slide-inner,
    .srf-hero-slider-wrapper.srf-slider-height-full .srf-slide-inner {
      /* align-content: space-between;
      align-items: end; */
      align-content: center;
      align-items: center;
    }
    /* Matches #hero .hero-content { padding: 15px 30px } */
    .srf-slide-content-wrap {
      padding: 15px 48px; /* 48px sides keep room for arrows */
    }
    .srf-slide-has-right-image .srf-slide-content-wrap {
      flex-direction: column;
      align-items: stretch;
    }
    /* Matches #hero .hero-content .vc_column-inner mobile padding */
    .srf-slide-content {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem;
      width: auto;
      max-width: 100%;
      height: auto;
      min-height: 200px;
      border-radius: 20px;
      -moz-border-radius: 20px;
      -webkit-border-radius: 20px;
    }
    .srf-slide-has-right-image .srf-slide-content {
      /* flex: 0 0 auto; */
      width: auto;
      height: auto;
      order: 2;
    }
    .srf-slide-image-wrap {
      flex: 0 0 auto;
      width: 100%;
      order: 1;
      padding-left: 0;
      padding: 0;
      /* margin-bottom: 5rem; */
    }
    .srf-slide-right-image {
      max-height: 45vh;
    }
    /* Matches .wpb_text_column margin on mobile */
    .srf-slide-description {
      margin-top: 1.5rem;
      margin-bottom: 0;
    }
    /* Matches .gem-button-container margin on mobile */
    .srf-slide-content .gem-button-container {
      margin-top: 1.5rem;
    }
    .srf-slider-prev { left: 6px; }
    .srf-slider-next { right: 6px; }
    .srf-slider-arrow {
      width: 32px;
      height: 32px;
    }

    .srf-slide {
      grid-template-areas:
        "visual"
        "content";
      grid-template-rows: minmax(420px, 55vh) auto;
      background-color: var(--srf-mobile-content-bg, #ff833e);
    }

    .srf-slide-visual {
      grid-area: visual;
      min-height: 0;
    }

    /*
     * Flatten only the structural wrappers on mobile. This makes the content
     * card and optional right image direct grid items without duplicating
     * either of them in the markup.
     */
    .srf-slide-inner,
    .srf-slide-content-wrap,
    .srf-slide-has-right-image .srf-slide-content-wrap {
        display: contents;
    }

    /*
     * The optional right image remains over the upper slider image.
     * It is never moved into the colored content section.
     */
    .srf-slide-image-wrap {
        grid-area: visual;
        align-self: center;
        justify-self: center;
        z-index: 7;
        width: min(80%, 560px);
        margin: 0;
        padding: 2rem;
        box-sizing: border-box;
    }

    /*
     * Only the single semantic content card is placed in the lower row.
     * The row color comes from this slide's WPBakery color picker.
     */
    .srf-slide-content {
        grid-area: content;
        align-self: center;
        justify-self: stretch;
        width: auto;
        max-width: none;
        height: auto;
        min-height: 200px;
        margin: 4rem 30px;
        padding: 2.5rem;
        background-color: #fff;
        border-radius: 35px;
        box-sizing: border-box;
        z-index: 7;
    }
}


/* BARKER */
#srf_barker .container {
  padding: 0;
  align-items: center;
}
#srf_barker .barker-content-column {
  padding: 7rem 5rem 7rem 2rem;
}
#srf_barker.layout-left .barker-content {
  order: 2;
}
@media (max-width: 991.98px) {
  #srf_barker .barker-content-column {
	padding: 7rem 5rem;
  }
}
@media (max-width: 699.98px) {
  #srf_barker .barker-content-column {
	padding: 7rem 8rem;
  }
}
#srf_barker .barker-img:before {
  content: '';
  position: absolute;
  top: 0;
  left: -2px;
  width: 70px;
  height: 101%;
  background-repeat: repeat-y;
  background-size: contain;
  transform: initial;
  z-index: 5;
}
#srf_barker .barker-img:after {
  content: '';
  position: absolute;
  top: 0;
  right: -2px;
  width: 70px;
  height: 101%;
  background-repeat: repeat-y;
  background-size: contain;
  transform: rotate(180deg);
  z-index: 5;
}
#srf_barker .barker-img.white:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_white_v2.png');
}
#srf_barker .barker-img.white:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_white_v2.png');
}
#srf_barker .barker-img.blue:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_blue_v2.png');
}
#srf_barker .barker-img.blue:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_blue_v2.png');
}

@media (min-width: 992px) {
  #srf_barker .image-container {
    height: 100%;
  }
  #srf_barker .barker-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
@media (max-width: 991.98px) {
  #srf_barker.layout-right .barker-content {
    order: 2;
  }
  #srf_barker.layout-right .image-container {
    order: 1;
  }

  #srf_barker .image-container {
    height: 100vw;
    max-height: 500px;
  }
  #srf_barker .barker-img.desktop {
    display: block;
    height: 100%;
    width: 100%;
  }
}
#srf_barker .heading {
  margin-top: 0;
  margin-bottom: 1.5rem;
}
#srf_barker .superheading {
  margin-top: 0;
  margin-bottom: 3rem;
}
#srf_barker .barker-image-container {
  position: relative;
  display: inline-block;
  width: 100%;
}
#srf_barker .barker-image-container img {
width: 100%;
height: auto;
}
#srf_barker .barker-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none; /* Allows users to still click or drag the image below */
}


/* FEATURE CONTENT */
#srf_feature_content .container {
  padding: 0;
  align-items: center;
}
#srf_feature_content .feature-content-content-column {
  padding: 5rem 5rem 5rem 2rem;
}
#srf_feature_content.layout-left .feature-content-content {
  order: 2;
}
@media (max-width: 991.98px) {
  #srf_feature_content .feature-content-content-column {
	padding: 5rem;
  }
}
@media (max-width: 699.98px) {
  #srf_feature_content .feature-content-content-column {
	padding: 5rem 8rem;
  }
}
#srf_feature_content .feature-content-img:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  transform: initial;
  z-index: 5;
}
#srf_feature_content .feature-content-img.white:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_barker_overlay_circle_white.png');
}
#srf_feature_content .feature-content-img.blue:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_barker_overlay_circle_blue.png');
}
#srf_feature_content .feature-content-img.round.white:before,
#srf_feature_content .feature-content-img.round.blue:before {
  display: none;
}
#srf_feature_content .feature-content-img.round.white:after,
#srf_feature_content .feature-content-img.round.blue:after {
  background-position: center center;
  background-size: 100% 100%;
  transform: initial;
}
#srf_feature_content .feature-content-img.round.white:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_barker_overlay_circle_white.png');
}
#srf_feature_content .feature-content-img.round.blue:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_barker_overlay_circle_blue.png');
}

#srf_feature_content .image-container.contain {
  aspect-ratio: 1 / 1;
  height: auto;
}
#srf_feature_content .feature-content-img.round {
  height: auto;
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
}
#srf_feature_content .feature-content-img.desktop {display: block;}
#srf_feature_content .feature-content-img.mobile {display: none;}

@media (min-width: 992px) {
  #srf_feature_content .image-container {
    height: 100%;
  }
  #srf_feature_content .feature-content-img:not(.round) {
    position: absolute;
    left: 0;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
  }
}
@media (max-width: 991.98px) {
  #srf_feature_content.layout-right .feature-content-content {
    order: 2;
  }
  #srf_feature_content.layout-right .image-container {
    order: 1;
  }

  #srf_feature_content .image-container {
    height: 100vw;
  }
  #srf_feature_content .feature-content-img.desktop {
    display: block;
    height: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
  }
  /* #srf_feature_content .feature-content-img.mobile {display: none;} */

  #srf_feature_content .feature-content-img.desktop.round {
    display: block;
    height: 100%;
  }
/*   #srf_feature_content .feature-content-img.mobile.round,
  #srf_feature_content .feature-content-img.mobile.square {display: none;} */

  /* #srf_feature_content .feature-content-img.white:before,
  #srf_feature_content .feature-content-img.blue:before {
    display: none;
  } */
  #srf_feature_content .feature-content-img.white:after,
  #srf_feature_content .feature-content-img.blue:after {
    background-position: center center;
    background-size: 100% 100%;
    transform: initial;
  }
  #srf_feature_content .feature-content-img.white:after {
    background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_barker_overlay_circle_white.png');
  }
  #srf_feature_content .feature-content-img.blue:after {
    background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_barker_overlay_circle_blue.png');
  }
}
#srf_feature_content .heading {
  margin-top: 0;
  margin-bottom: 1.5rem;
}
#srf_feature_content .superheading {
  margin-top: 0;
  margin-bottom: 3rem;
}
#srf_feature_content .feature-content-image-container {
  position: relative;
  display: inline-block;
  width: 100%;
}
#srf_feature_content .feature-content-image-container img {
width: 100%;
height: auto;
}
#srf_feature_content .feature-content-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none; /* Allows users to still click or drag the image below */
}


/* TEXT & MEDIA */
#srf_text_media .container {
  padding: 0;
}
#srf_text_media .textmedia-content-column {
  padding: 7rem 6rem 0 6rem;
}
@media (min-width: 992px) {
  #srf_text_media.layout-right .textmedia-content-column {
    padding: 7rem 6rem 7rem 2.5rem;
  }
}
@media (max-width: 699.98px) {
  #srf_text_media .textmedia-content-column {
	  padding: 7rem 8rem 0 8rem;
  }
}
#srf_text_media.layout-left .textmedia-content {
  order: 2;
}
#srf_text_media .textmedia-img.desktop {display: block;}
#srf_text_media .textmedia-img.mobile {display: none;}
@media (max-width: 991.98px) {
  #srf_text_media.layout-right .textmedia-content {
    order: 2;
  }
  #srf_text_media.layout-right .textmedia-img {
    order: 1;
  }
  #srf_text_media .textmedia-img.desktop {display: block; height: 100vw; max-height: 500px; overflow: hidden;}
  #srf_text_media .textmedia-img.mobile {display: none; overflow: hidden;}
}

#srf_text_media .textmedia-img:before {
  content: '';
  position: absolute;
  top: 0;
  left: -2px;
  width: 70px;
  height: 101%;
  background-repeat: repeat-y;
  background-size: contain;
  z-index: 5;
}
#srf_text_media .textmedia-img:after {
  content: '';
  position: absolute;
  top: 0;
  right: -2px;
  width: 70px;
  height: 101%;
  background-repeat: repeat-y;
  background-size: contain;
  transform: rotate(180deg);
  z-index: 5;
}
#srf_text_media .textmedia-img.white:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_white_v2.png');
}
#srf_text_media .textmedia-img.white:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_white_v2.png');
}
#srf_text_media .textmedia-img.blue:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_blue_v2.png');
}
#srf_text_media .textmedia-img.blue:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_blue_v2.png');
}

#srf_text_media .heading {
  margin-top: 0;
  margin-bottom: 1.5rem;
}
#srf_text_media .subheading {
  margin-top: 0;
  margin-bottom: 3rem;
}
#srf_text_media .textmedia-image-container {
    position: relative;
    display: inline-block;
    width: 100%;
}
#srf_text_media .textmedia-image-container img {
  width: 100%;
  height: auto;
}
/* @media (max-width: 991.98px) {
  #srf_text_media .textmedia-img.white:after {
    background-image: none;
    display: none;
  }
} */


/* FEATURED HIGHLIGHT */
#srf_featured_highlight .container {
  padding: 0;
}
#srf_featured_highlight .featured-highlight-content-column {
  padding: 10rem 6rem;
}
@media (max-width: 699.98px) {
  #srf_featured_highlight .featured-highlight-content-column {
	padding: 7rem 8rem;
  }
}
#srf_featured_highlight.layout-left .featured-highlight-content {
  order: 2;
}
#srf_featured_highlight .featured-highlight-img.desktop {display: block;}
#srf_featured_highlight .featured-highlight-img.mobile {display: none;}
@media (max-width: 991.98px) {
  #srf_featured_highlight.layout-right .featured-highlight-content {
    order: 2;
  }
  #srf_featured_highlight.layout-right .featured-highlight-img {
    order: 1;
  }
  #srf_featured_highlight .featured-highlight-img.desktop {display: block; height: 100vw; max-height: 600px; overflow: hidden;}
  #srf_featured_highlight .featured-highlight-img.mobile {display: none; overflow: hidden;}
}
/*#srf_featured_highlight .featured-highlight-img:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0px;
  width: 100%;
  height: 100%;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
#srf_featured_highlight .featured-highlight-img:after {
  content: '';
  position: absolute;
  top: 0;
  left: inherit;
  right: 0px;
  width: 100%;
  height: 100%;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 100%;
  transform: rotate(180deg);
}
#srf_featured_highlight .featured-highlight-img.white:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_wavy_overlay_white.png');
}
#srf_featured_highlight .featured-highlight-img.white:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_wavy_overlay_white.png');
}
#srf_featured_highlight .featured-highlight-img.blue:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_wavy_overlay_blue.png');
}
#srf_featured_highlight .featured-highlight-img.blue:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_wavy_overlay_blue.png');
} */
#srf_featured_highlight .featured-highlight-img:before {
  content: '';
  position: absolute;
  top: 0;
  left: -2px;
  width: 70px;
  height: 101%;
  background-repeat: repeat-y;
  background-size: contain;
  z-index: 5;
}
#srf_featured_highlight .featured-highlight-img:after {
  content: '';
  position: absolute;
  top: 0;
  right: -2px;
  width: 70px;
  height: 101%;
  background-repeat: repeat-y;
  background-size: contain;
  transform: rotate(180deg);
  z-index: 5;
}
#srf_featured_highlight .featured-highlight-img:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_white_v2.png');
}
#srf_featured_highlight .featured-highlight-img:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_white_v2.png');
}
#srf_featured_highlight .featured-highlight-img.blue:before {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_blue_v2.png');
}
#srf_featured_highlight .featured-highlight-img.blue:after {
  background-image: url('/wp-content/themes/thegem-child/img/overlay/SRF_texmedia_overlay_blue_v2.png');
}
/* @media (max-width: 991.98px) {
  #srf_featured_highlight .featured-highlight-img.white:before {
    display: none;
  }
} */

#srf_featured_highlight .heading {
  margin-top: 0;
  margin-bottom: 0;
}
#srf_featured_highlight .subheading {
  margin-top: 0;
  margin-bottom: 3rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1;
  color: #004990;
}
#srf_featured_highlight .text {
  color: #004990;
}
#srf_featured_highlight .featured-highlight-image-container {
    position: relative;
    display: inline-block;
    width: 100%;
}
#srf_featured_highlight .featured-highlight-image-container img {
  width: 100%;
  height: auto;
}


/* CUSTOM COLUMN ITEM */
#column_item.left-border {
  border-left: 1px solid #004990;
  padding-left: 2rem;
}
#column_item .column-item-image-container img {
  width: 100%;
  height: auto;
}
#column_item .heading {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  line-height: 1.1;
}
a #column_item:hover .heading {
  color: rgb(245, 133, 63);
}
/* a #column_item:hover .gem-button.blue {
  background: rgb(245, 133, 63);
}
a #column_item:hover .gem-button.orange {
  background: rgb(9, 117, 224);
} */
#column_item.no-img .heading {
  margin-top: 0;
}
.column-link #column_item:hover .gem-button.blue.no-title:after {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_orange.svg');
}
.column-link #column_item:hover .gem-button.orange.no-title:after {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_blue.svg');
}
@media (max-width: 991.98px) {
  #column_item.column-item-content {
    width: calc(100% - 8rem);
    margin: 0 auto;
  }

  .column-link #column_item:hover .gem-button.blue.no-title,
  .column-link #column_item:hover .gem-button.orange.no-title:after {
    background-color: rgb(245, 133, 63);
  }
  .column-link #column_item:hover .gem-button.blue.no-title:after,
  .column-link #column_item:hover .gem-button.orange.no-title:after {
    background-image: url('/wp-content/themes/thegem-child/img/button_icon_white.svg');
  }
}

.vc_column_container:has(.border-left) {
  border-left: 1px solid !important;
}


/* CUSTOM COLUMN GRID */
#column_grid.custom-column-wrapper {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
.srf-custom-columns-element:has(#column_grid.custom-column-wrapper) + .srf-custom-columns-element:hads(#column_grid.custom-column-wrapper) {
  padding-top: 0;
}
#column_grid .column-container {
  display: grid;
  gap: 6rem;
}
#column_grid .column-divider .column-content {
  position: relative;
}
@media (min-width: 992px) {
  #column_grid .column-container.two-col {
    grid-template-columns: repeat(2, 1fr);
  }
  #column_grid .column-container.three-col {
    grid-template-columns: repeat(3, 1fr);
  }
  #column_grid .column-container.four-col {
    grid-template-columns: repeat(4, 1fr);
  }
  #column_grid .column-divider .column-content:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -3rem;       /* Centers the line in the middle of the 40px gap */
    top: 0;           /* Pushes the line down from the top */
    height: 100%;        /* Sets the exact height of the line */
    width: 1px;         /* Sets the thickness of the line */
    background: #004990;   /* Sets the line color */
  }
}
@media (max-width: 991.98px) {
  #column_grid .column-divider .column-content:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 10%;       /* Centers the line in the middle of the 40px gap */
    bottom: -3rem;           /* Pushes the line down from the top */
    height: 1px;        /* Sets the exact height of the line */
    width: 80%;         /* Sets the thickness of the line */
    background: #004990;   /* Sets the line color */
  }
}

#column_grid .column-item-content.left-border {
  border-left: 1px solid #004990;
  padding-left: 2rem;
}
#column_grid .column-item-content.light .heading.light,
#column_grid .column-item-content.light .text,
#column_grid .column-item-content.light .text a {
  color: #ffffff;
}
#column_grid .column-item-content.black .text {
  color: #000000;
}
#column_grid .column-item-content.black .text p {
  margin-bottom: 1.5rem;
}
#column_grid a #column_item.light:hover .heading.light {
  color: rgb(245, 133, 63);
}
#column_grid .column-link #column_item.light:hover .gem-button.blue.no-title:after,
#column_grid .column-link #column_item.light:hover .gem-button.orange.no-title:after {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_white.svg');
}


/* CUSTOM BAR FILL */
.v-bar-wrapper {
  height: 280px;
  min-height: 280px;
  display: flex;
  flex-direction: row;
  align-items: start;
  justify-content: space-between;
  gap: 3rem;
}
@media (min-width: 992px) {
  .v-bar-wrapper {
    padding-left: 2.5rem;
  }
}
@media (max-width: 991.98px) {
  .v-bar-wrapper {
    width: 85%;
    margin: 0 auto;
    justify-content: center;
    margin-bottom: 3rem !important;
  }
  .v-bar-wrapper:last-of-type {
    margin-bottom: 0;
  }
}
.v-bar-track {
  background: #ffffff;
  width: 102px;
  min-width: 102px;
  height: 100%;
  position: relative;
  border-radius: 0;
  overflow: visible;
}
.v-bar-track:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('/wp-content/themes/thegem-child/img/fill-counter.svg');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.v-bar-fill {
  width: 66px;
  height: 0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 0 0 50px 50px;
  transition: height 1.5s cubic-bezier(0.1, 1, 0.1, 1);
}
.v-bar-content {
  padding: 2rem 1rem;
}
.v-bar-number {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 1rem;
}
.v-bar-label {}


/* HEADING */
#heading {
  padding-top: 3.5rem;
}
#heading .vc_column-inner {
  padding: 0;
}
#heading .heading-content .heading {
  margin-bottom: 0;
}
@media (max-width: 991.98px) {
  #heading .heading-content {
	padding-left: 3rem;
	padding-right: 3rem;
  }
}


/* WYSIWYG */
#wysiwyg {
  /*margin-bottom: 2rem;*/
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
#wysiwyg + #wysiwyg {
  padding-top: 0;
}
#wysiwyg .wysiwyg-content .vc_column-inner {
  padding: 0;
}
@media (max-width: 991.98px) {
  #wysiwyg .wysiwyg-content {
    padding-left: 0;
    padding-right: 0;
    width: calc(100% - 8rem);
    margin: 0 auto;
  }
}
@media (max-width: 767.98px) {
  width: calc(100% - 10rem);
}
#wysiwyg .wysiwyg-content .wpb_text_column {
  margin-bottom: 0;
}
#wysiwyg .wysiwyg-content .text {
  color: #004990;
  padding: 0;
}
#wysiwyg .wysiwyg-content.light .heading,
#wysiwyg .wysiwyg-content.light h1,
#wysiwyg .wysiwyg-content.light h2,
#wysiwyg .wysiwyg-content.light h3,
#wysiwyg .wysiwyg-content.light h4,
#wysiwyg .wysiwyg-content.light h5,
#wysiwyg .wysiwyg-content.light h6,
#wysiwyg .wysiwyg-content.light .text,
#wysiwyg .wysiwyg-content.light .text a,
#wysiwyg .wysiwyg-content.light .text li,
#wysiwyg .wysiwyg-content.light .text li::before {
  color: #ffffff;
}
#wysiwyg .wysiwyg-content.light .text ul li::before {
  background-color: #ffffff;
}
#wysiwyg .wysiwyg-content .text ul li::before {
  background-color: #004990;
}
#wysiwyg .wysiwyg-content.black .heading,
#wysiwyg .wysiwyg-content.black h1,
#wysiwyg .wysiwyg-content.black h2,
#wysiwyg .wysiwyg-content.black h3,
#wysiwyg .wysiwyg-content.black h4,
#wysiwyg .wysiwyg-content.black h5,
#wysiwyg .wysiwyg-content.black h6,
#wysiwyg .wysiwyg-content.black .text,
#wysiwyg .wysiwyg-content.black .text li,
#wysiwyg .wysiwyg-content.black .text li::before {
  color: #000000;
}
#wysiwyg .wysiwyg-content.black .text ul li::before {
  background-color: #000000;
}

#wysiwyg .wysiwyg-content .text.outlined {
  border: 1px solid #004990;
  padding: 4rem;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
}
#wysiwyg .wysiwyg-content.light .text.outlined {
  border: 1px solid #ffffff;
}
#wysiwyg .wysiwyg-content .text.small p,
#wysiwyg .wysiwyg-content .text.small ul li,
#wysiwyg .wysiwyg-content .text.small ol li {
  font-size: 12px;
}

@media (min-width: 992px) {
  #wysiwyg .wysiwyg-content .text.two-columns ul,
  #wysiwyg .wysiwyg-content .text.two-columns ol {
    column-count: 2;
    column-gap: 4rem;
  }
}
@media (max-width: 575.98px) {
  #wysiwyg .wysiwyg-content .text.outlined {
    padding: 2rem;
  }
}


/* TEXT BANNER */
#text_banner .text-banner-content {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media (max-width: 991.98px) {
  #text_banner .text-banner-content {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .vc_row.vc_row-no-padding #text_banner .text-banner-content {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
#text_banner .text-banner-content .heading {
  text-align: center;
  margin-bottom: 3rem;
}
#text_banner .text-banner-content .vc_column-inner {
  padding: 0;
}
#text_banner .text-banner-content .wpb_text_column {
  margin-bottom: 0;
}
#text_banner .text-banner-content .text {
  font-size: 3rem;
  line-height: 1.34;
  color: #004990;
}
#text_banner .text-banner-content.light .heading,
#text_banner .text-banner-content.light .text,
#text_banner .text-banner-content.light .text a {
  color: #ffffff;
}
#text_banner .text-banner-content .text li a {
  text-decoration: underline;
}
@media (max-width: 991.98px) {
  #text_banner .text-banner-content .text {
    font-size: 2.4rem;
  }
}
@media (max-width: 767.98px) {
  #text_banner .text-banner-content .text {
    font-size: 24px;
    line-height: 30px;
  }
}


/* HORIZONTAL TIMELINE */
.hz-gallery-wrapper {
  width: 100%;
  margin: 40px auto;
  position: relative;
}

.hz-gallery-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  margin-bottom: 20px;
  font-family: sans-serif;
}

.hz-nav-btn {
  position: relative;
  background: none;
  border: none;
  width: 60px;
  height: 24px;
  cursor: pointer;
  transition: all 0.2s ease, opacity 0.2s ease;
}
.hz-nav-btn:before {
  content: '';
  position: absolute;
  width: 43px;
  height: 16px;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_blue.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}
.hz-nav-btn.prev-btn:before {
  transform: translateX(-50%) translateY(-50%) rotate(180deg);
}
.hz-nav-btn:hover:not(:disabled):before {
  background-image: url('/wp-content/themes/thegem-child/img/button_icon_orange.svg');
}

.hz-nav-btn:disabled {
  opacity: 1;
  cursor: pointer;
}

.hz-page-counter {
  font-family: 'Segma';
  font-size: 16px;
  font-weight: 700;
  min-width: 50px;
  text-align: center;
}

.hz-gallery-viewport {
  width: 100%;
  overflow: hidden;
}

.hz-gallery-track {
  display: flex;
  will-change: transform;
}

/* Generic image scaling constraints */
.hz-gallery-item img {
  width: 100%;
  height: 350px;
  object-fit: cover;
  border-radius: 6px;
  display: block;
}

/* --- RESPONSIVE GRID LAYOUT CALIBRATIONS --- */

/* Default: Desktop View (Show 3) */
.hz-gallery-item {
  flex: 0 0 calc(100% / 3); 
  box-sizing: border-box;
  padding: 0 10px;
}

/* Tablet View (Show 2) */
@media (max-width: 1023px) and (min-width: 768px) {
  .hz-gallery-item {
    flex: 0 0 calc(100% / 2);
  }
}

/* Mobile View (Show 1) */
@media (max-width: 767.98px) {
  .hz-gallery-item {
    flex: 0 0 100%;
  }
}
@media (max-width: 575.98px) {
  .hz-gallery-item {
    padding: 0;
  }
}


/* TEAM GRIDDER */
.team-gridder-wrapper {
  max-width: 1399px;
  margin: 0 auto;
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media (max-width: 991.98px) {
  .team-gridder-wrapper {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.team-gridder-wrapper .heading {
  text-align: center;
  margin-bottom: 3rem;
}
/* Strict 3-column Grid Container */
.team-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8rem;
}
.team-member-item {
  display: contents; /* Allows children to participate directly in the outer grid */
}
.team-member-card {
  cursor: pointer;
}
.no-bio .team-member-card {
  cursor: default;
}
.team-member-card .image {
  position: relative;
  margin-bottom: 2rem;
  border: 2px solid #004990;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  transition: all 0.2s ease-in-out;
  overflow: hidden;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
.team-member-card .image:after {
  content: '';
  position: absolute;
  top: 2rem;
  right: 2rem;
  width: 25px;
  height: 25px;
  background: url('/wp-content/themes/thegem-child/img/open-icon.png');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.no-bio .team-member-card .image:after {
  display: none;
}
.team-member-card .image:hover {
  transform: translateY(-5px);
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
.no-bio .team-member-card .image:hover {
  transform: translateY(0);
}
.team-member-card img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.team-member-card .info .name {
  font-weight: bold;
  margin_bottom: 1.5rem;
  color: #004990;
}
.team-member-card .info .position {
  color: #000000;
}

/* Dynamic Gridder Drawer spans all 3 columns */
.team-gridder-drawer {
  grid-column: 1 / -1; 
  background: #ffffff;
  padding: 40px;
  position: relative;
  margin: 10px 0 20px 0;
  box-sizing: border-box;
  border: 2px solid #004990;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  animation: fadeInGridder 0.3s ease;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
.gridder-inner {
  display: flex;
  align-items: start;
  gap: 4rem;
}
.gridder-inner .image {
  position: relative;
  width: 100%;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
}
.gridder-inner .image img {
  width: 100%;
  height: auto;
}
@media (min-width: 992px) {
  .gridder-inner .image,
  .gridder-inner .info {
    width: 50%;
  }
}
@media (max-width: 991.98px) {
  .gridder-inner {
    flex-direction: column;
    gap: 3rem;
  }
}
.gridder-inner .info .name {
  font-weight: bold;
  margin_bottom: 1rem;
  color: #004990;
}
.gridder-inner .info .position {
  color: #000000;
}
.gridder-inner .info .team-bio {
  color: #000000;
  margin-top: 2rem;
}

.team-gridder-close {
  position: absolute;
  top: 4rem;
  right: 4rem;
  cursor: pointer;
  z-index: 9;
}
.team-gridder-close img {
  width: 25px;
  height: auto;
}

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

/* Responsive handling for smaller screens */
@media (max-width: 991.98px) {
  .team-grid-container {
    grid-template-columns: repeat(2, 1fr);
  }
  .team-gridder-close img {
    width: 5vw;
    max-width: 50px;
    min-width: 25px;
  }
}
@media (max-width: 767.98px) {
  .team-grid-container {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 575.98px) {
  .team-gridder-drawer {
    padding: 15px;
  }
  .team-gridder-close {
    top: 2rem;
    right: 2rem;
  }
}


/* VIDEO SINGLE */
.fullscreen-video .wpb_wrapper {
  display: flex;
}
.gem-wrapbox.gem-youtube {
  margin-bottom: 0;
}

.single-video .video-content {
  background: linear-gradient(to bottom, #ffffff 0%, #E8E2F8 100%);
  padding-top: 6rem;
  padding-bottom: 6rem;
  margin-bottom: 0;
}
.single-video .video-content .title .heading {
  text-align: center;
  margin-bottom: 3rem;
}
.single-video .video-content .video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9; /* Automates widescreen scaling */
}
.single-video .video-content .video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.single-video .video-content .video-description {
  text-align: left;
  margin: 3rem auto 0;
  color: #004990;
  width: 100%;
}
.single-video .video-content .video-description p:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .single-video .video-content .video-description {
    width: 75%;
  }
}


/* SINGLE VIDEO BLOCK */
#srf_video.dotted-overlay:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('/wp-content/uploads/2026/07/grad-45.png');
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
#srf_video.layout-right.dotted-overlay:before {
  content: '';
  position: absolute;
  left: initial;
  right: 0;
  transform: rotate(180deg);
}
@media (max-width: 991.98px) {
  /* #srf_video.dotted-overlay:before {
    left: -10vw;
  } */
  #srf_video.layout-right.dotted-overlay:before {
    left: -10vw;
    right: initial;
    transform: initial;
  }
}
#srf_video .vc_row {
  padding-top: 7rem;
  padding-bottom: 7rem;
}
#srf_video .srf-video {
  padding: 15px 35px;
}
#srf_video.layout-right .srf-video {
  order: 2;
}
#srf_video .srf-video .image img {
  width: 100%;
  height: auto;
}
#srf_video .video-content-column {
  padding: 0 4rem;
}
#srf_video.layout-left .video-content-column {
  padding: 0 0 0 4rem;
}
#srf_video.layout-right .video-content-column {
  padding: 0 4rem 0 0;
}
#srf_video .heading {
  margin-top: 0;
  margin-bottom: 1.5rem;
}
#srf_video .superheading {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 2rem;
}
#srf_video .gem-button-container {
  margin-top: 1.5rem;
}
@media (max-width: 991.98px) {
  #srf_video .vc_row {
    padding-bottom: 0;
  }
  #srf_video .srf-video {
    padding: 0 2.5rem;
  }
  #srf_video .video-content {
    padding: 0 2rem;
  }
  #srf_video.layout-right .srf-video {
    order: 1;
  }
  #srf_video.layout-right .video-content {
    order: 2;
  }
  #srf_video.layout-left .video-content-column,
  #srf_video.layout-right .video-content-column {
    padding: 4rem 1rem 5rem;
  }
}
@media (max-width: 699.98px) {
  #srf_video .srf-video,
  #srf_video .video-content {
    padding: 0 5rem;
  }
}

/* VIDEO GRID */
#video_grid {
  padding-top: 7rem;
  padding-bottom: 7rem;
  padding-left: 5rem;
  padding-right: 5rem;
}
#video_grid .heading {
  text-align: center;
  margin-bottom: 3rem;
}
#video_grid .vgrid .vc_row {
  row-gap: 4rem;
}
@media (max-width: 991.98px) {
  #video_grid .vgrid .vc_row {
    gap: 4rem;
  }
}

#video_grid .srf-video-filter {
  margin-top: 2rem;
  margin-bottom: 5rem;
}
#video_grid .srf-video-filter .container {
  gap: 0;
}
#video_grid .srf-video-filter .selection-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-grow: 1;
  gap: 0;
}
#video_grid .srf-video-filter .wpb_column.vc_column_container {
  width: auto;
}
#video_grid .srf-video-filter .flex-grow {
  flex-grow: 1;
}
#video_grid .srf-video-filter .heading {
  margin-bottom: 0;
  text-align: left;
}
@media (max-width: 991.98px) {
  #video_grid .srf-video-filter {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  #video_grid .srf-video-filter .container,
  #video_grid .srf-video-filter .selection-wrap {
  	flex-direction: column;
	  gap: 2rem;
  }
  #video_grid .srf-video-filter .wpb_column.vc_column_container {
    width: 100%;
  }
}
@media (max-width: 767.98px) {
  #video_grid .srf-video-filter {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

#video_grid .video-grid-content .wpb_wrapper {
  height: 100%;
}
#video_grid .video-grid-content .video-item {
  padding: 3rem;
  border: 1px solid rgba(0, 73, 144, 0.7);
  border-radius: 20px;
  height: 100%;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
#video_grid .video-grid-content .video-item .image img {
  width: 100%;
  height: auto;
}
#video_grid .video-content-column {
  margin-top: 2.5rem;
}
#video_grid .video-grid-content .video-item .heading {
  text-align: left;
  margin-bottom: 2.5rem;
}
@media (max-width: 575.98px) {
  #video_grid .video-grid-content .video-item {
    padding: 1.5rem;
  }
  #video_grid .video-content-column {
    margin-top: 2rem;
  }
  #video_grid .video-grid-content .video-item .heading {
    margin-bottom: 2rem;
  }
}


/* VERTICAL TIMELINE */
#timeline {
  padding-top: 6rem;
}
#timeline .heading {
  text-align: center;
  margin-bottom: 3rem;
}
.timeline-scroll-wrapper {
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
  display: block;
}
.custom-vertical-timeline {
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding-top: 10vh;
  padding-bottom: 10vh;
  box-sizing: border-box;
  will-change: transform;
  padding-left: 15px;
  padding-right: 15px;
}
.custom-vertical-timeline,
.gsap-fade-item {
    transition: none !important;
}
/* Central spine line */
.custom-vertical-timeline .timeline-line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20px; /* Aligns left for simple mobile-first layouts */
  width: 2px;
  background-color: #004990;
}
.custom-vertical-timeline .timeline-line:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 80px;
  background: linear-gradient(to top, #004990, rgba(255,255,255,0.4) 25%, rgba(255,255,255,0.65) 50%, rgba(255,255,255,0.9) 100%);
}
.custom-vertical-timeline .timeline-line:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2px;
  height: 80px;
  background: linear-gradient(to bottom, #004990, rgba(255,255,255,0.4) 25%, rgba(255,255,255,0.65) 50%, rgba(255,255,255,0.9) 100%);
}
.timeline-item {
  position: relative;
  margin-bottom: 30px;
  padding-left: 50px; /* Gives room for spine and badges */
}
/* Plot dots on the line */
.timeline-badge {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 6px;
  width: 30px;
  height: 30px;
  background-color: #004990;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  z-index: 2;
}
.timeline-date {
  display: inline-block;
  font-size: 1.85em;
  font-weight: bold;
  color: #004990;
  /* margin-bottom: 5px; */
  position: absolute;
  top: 0;
  left: 5px;
  z-index: 2;
}
.timeline-panel {
  background: #cbe2f9;
  padding: 10px 40px 10px 15px;
  border-radius: 10rem;
  -moz-border-radius: 10rem;
  -webkit-border-radius: 10rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 3rem;
  min-height: 150px;
  box-shadow: 10px 20px 10px rgba(0, 0, 0, 0.15);
  -mox-box-shadow: 10px 20px 10px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 10px 20px 10px rgba(0, 0, 0, 0.15);
}
.timeline-panel:has(.timeline-image-none) {
  padding: 30px 40px 25px 15px;
}
.timeline-image-holder {
  width: 200px;
  min-width: 200px;
  height: 200px;
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1;
}
.timeline-image-none {
  width: 35px;
}
.timeline-title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.2em;
    font-weight: 600;
    color: #000;
}
.timeline-description {
  color: #000;
  padding: 15px 0;
}
.timeline-panel:has(.timeline-image-none) .timeline-description {
  margin: 0 auto;
}
/* Optional Desktop Layout: Split alternate sides */
@media (min-width: 992px) {
  .custom-vertical-timeline .timeline-line {
    left: 50%;
    margin-left: -1px;
  }
  .timeline-date {
  top: 50%;
  transform: translateY(-50%);
  }
  .timeline-item {
    width: 50%;
    padding-left: 0;
  }
  /* Even elements go to the left side */
  .timeline-item:nth-child(even) {
    left: 0;
    padding-right: 40px;
    text-align: left;
  }
  /* Odd elements go to the right side */
  .timeline-item:nth-child(odd) {
    left: 50%;
    padding-left: 40px;
    text-align: left;
  }
  /* Re-align structural node points */
  .timeline-item:nth-child(even) .timeline-date {
    right: -110px;
    left: initial;
  }
  .timeline-item:nth-child(odd) .timeline-date {
    left: -110px;
    right: initial;
  }
  .timeline-item:nth-child(even) .timeline-badge {
    left: auto;
    right: -15px;
  }
  .timeline-item:nth-child(odd) .timeline-badge {
    left: -15px;
  }
}
@media (max-width: 991.98px) {
  .custom-vertical-timeline {
    padding-left: 0;
  }
  .timeline-item {
    margin-top: 7rem;
    margin-bottom: 0;
    padding-top: 4rem;
  }
  .timeline-item:first-of-type {
    margin-top: 0;
  }
  .timeline-item:last-of-type {
    margin-bottom: 3rem;
  }
  .timeline-item.no-date {
    margin-top: 0;
  }
  .timeline-badge {
    top: 0;
  }
  .timeline-date {
    top: -12px;
    left: 60px;
    font-size: 2.25em;
  }
}
@media (max-width: 767.98px) {
}
@media (max-width: 575.98px) {
  #timeline .container {
    padding: 0;
  }
  .custom-vertical-timeline {
    width: fit-content;
  }
  .timeline-badge {
    top: 0;
  }
  .timeline-date {
    top: -12px;
    left: 60px;
    font-size: 2.25em;
  }
  .timeline-panel {
    padding: 15px 15px 70px;
    border-radius: 50rem;
    -moz-border-radius: 50rem;
    -webkit-border-radius: 50rem;
    flex-direction: column;
    justify-content: center;
    gap: 2rem;
    max-width: 250px;
    min-height: 340px;
  }
  .timeline-image-holder {
    width: auto;
    min-width: 100%;
    height: auto;
  }
  .timeline-content {
    padding: 0 14px;
  }
}


/* FILTERS */
input[type="text"],
input[type="date"],
input[type="datetime"],
input[type="email"],
input[type="tel"],
select {
  color: #002952;
  box-shadow: 0 0  10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0  10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0  10px rgba(0, 0, 0, 0.1);
  border: none;
  background: #fff;
  padding: 20px;
  width: 100%; 
}
/* @media (min-width: 992px) {
  .srf-select,
  .tcf-radius-select {
    max-width: 500px;
  }
} */
.srf-select,
.tcf-radius-select {
  appearance: none;
	-webkit-appearance: none;
	font: inherit;
	cursor: pointer;
}
.srf-select::after,
.tcf-radius-select::after {
  content: '';
	position: absolute;
	right: 1.5rem;
	top: 50%;
	transform: translateY( -50% );
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 6px solid #004990;
	pointer-events: none;
}


/* INVESTIGATORS GRID */
.investigator-grid {
  padding-top: 7rem;
  padding-bottom: 7rem;
}
.investigator-filter-form {
  margin-bottom: 5rem;
}
.investigator-filter-form .selection-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-grow: 1;
  gap: 0;
}
.investigator-filter-form .wpb_column.vc_column_container {
  width: auto;
}
.investigator-filter-form .flex-grow {
  flex-grow: 1;
}
.investigator-filter-form .heading {
  margin-bottom: 0;
}
.investigator-card {
  border: 2px solid #004990;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 4rem;
}
@media (min-width: 992px) {
  .investigator-grid .container {
	padding: 0;
  }
  .investigator-img .vc_column-inner {
    padding-left: 0;
  }
}
.investigator-img .image {
  aspect-ratio: 1;
}
.investigator-img .image img {
  width: 100%;
  height: 100%;
}
.investigator-info .title {
  display: flex;
  align-items: start;
  gap: 15px;
  flex-wrap: nowrap;
}
.investigator-info .heading {
  color: #0975E0;
}
.investigator-info .title .external-icon {
  display: inline-flex;
  margin-top: 1px;
}
.positions .position {
  display: flex;
  flex-wrap: balance;
  align-items: center;
  color: #000000;
}
.positions .position .title {
  font-weight: bold;
}
.positions .position .organization {}

@media (max-width: 991.98px) {
  .investigator-filter-form {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .investigator-filter-form .container,
  .investigator-filter-form .selection-wrap {
	flex-direction: column;
	gap: 2rem;
  }
  .investigator-filter-form .flex-grow {
	width: 100% !important;
  }
  .investigator-posts-grid {
  	padding-left: 2rem;
	padding-right: 2rem;
  }
  .investigator-img .vc_column-inner {
    padding: 0;
  }
  .investigator-img .vc_column-inner {
    padding: 0 !important;
  }
  .investigator-info {
    padding: 3rem;
  }
}
@media (max-width: 767.98px) {
  .investigator-filter-form {
    padding-left: 1rem;
    padding-right: 1rem;
  }
 .investigator-posts-grid {
  	padding-left: 0;
	padding-right: 0;
  }
}
@media (max-width: 575.98px) {
  .investigator-info {
    padding: 2rem 1rem;
  }
}


/* INVESTIGATORS SINGLE */
.single-investigator #hero {
  background-color: #002548;
}
.single-investigator #hero .heading {
    margin-bottom: 0;
}
.single-investigator .investigator-row {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background: linear-gradient(to bottom, #EBF5FF 0%, #ffffff 100%);
}
.single-investigator .investigator-img .image {
  aspect-ratio: inherit;
  border-radius: 20px;
  overflow: hidden;
}
.single-investigator .investigator-info {}
.single-investigator .investigator-info .heading,
.single-investigator .investigator-info .positions {
  margin-bottom: 2rem;
}
.single-investigator .related-projects {
  padding-bottom: 6rem;
}
.single-investigator .related-publications {
  padding-bottom: 6rem;
}


/* PROJECTS GRID */
.project-grid {
  display: grid;
  padding-top: 7rem;
  padding-bottom: 7rem;
}
.project-filter-form {
  margin-bottom: 5rem;
}
.project-filter-form .selection-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-grow: 1;
  gap: 0;
}
.project-filter-form .wpb_column.vc_column_container {
  width: auto;
}
.project-filter-form .flex-grow {
  flex-grow: 1;
}
.project-filter-form .heading {
  margin-bottom: 0;
}
.project-grid a {
  position: relative;
}
.project-inner {
  position: relative;
  background: #ffffff;
  border: 2px solid #002548;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  /* overflow: hidden; */
}
.project-grid .project-inner .project-type {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: end;
}
.project-grid .project-inner .project-type .type-wrapper {
  color: #ffffff;
  background: #002548;
  padding: 10px 40px;
  max-width: 91%;
  border-radius: 0 15px 0 20px;
  -moz-border-radius: 0 15px 0 20px;
  -webkit-border-radius: 0 15px 0 20px;
}
.project-grid .project-inner .project-info {
  padding: 5rem;
}
.project-grid .project-inner.has-cat .project-info {
  padding: 3rem 5rem 5rem;
}
.project-inner .heading {
  color: #0975E0;
}
.project-inner .investigators .investigator-info .title {
  color: #000000;
  font-weight: 700;
}
.project-inner .content {
  color: #000000;
  margin-top: 1.5rem;
}
.project-inner .content p:last-of-type {
  margin-bottom: 0;
}
@media (max-width: 991.98px) {
  .project-filter-form {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .project-filter-form .container,
  .project-filter-form .selection-wrap {
  	flex-direction: column;
	  gap: 2rem;
  }
  .project-filter-form .wpb_column.vc_column_container {
    width: 100%;
  }
  .project-posts-grid {
	  padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (max-width: 767.98px) {
  .project-filter-form {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .project-posts-grid {
	  padding-left: 0;
    padding-right: 0;
  }
  .project-grid .project-inner .investigator-info {
    padding: 1rem 0;
  }
}
@media (max-width: 575.98px) {
  .project-grid .project-inner .project-info {
    padding: 5rem 2.5rem;
  }
  .project-grid .project-inner.has-cat .project-info {
    padding: 3rem 2.5rem 5rem;
  }
}


/* PROJECTS SINGLE */
.single-project #hero {
  background-color: #002548;
}
.single-project #hero .heading {
  margin-bottom: 0;
}
.single-project .project-container {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background: linear-gradient(to bottom, #EBF5FF 0%, #ffffff 100%);
}
.single-project .project-info .project-details .project-tax {
  color: #000000;
  margin-bottom: 2rem;
}
.single-project .project-info .project-details .project-tax:last-of-type {
  margin-bottom: 0;
}
.single-project .project-info .project-investigators {
  margin-top: 6rem;
}
.single-project .project-info .project-investigators .investigator-info {
  margin-bottom: 2rem;
}
.single-project .project-info .project-investigators .investigator-info .title {
  display: flex;
  align-items: start;
  gap: 10px;
  flex-wrap: nowrap;
}
.single-project .project-info .project-investigators .positions .position {
  margin-bottom: 1rem;
}

@media (min-width: 992px) {
  .single-project .project-overview .wpb_wrapper {
    padding-right: 10rem;
  }
  .single-project .project-info .wpb_wrapper {
    border-left: 1px solid;
    padding-left: 4rem;
  }
}


/* PUBLICATIONS GRID */
.publication-grid {
  display: grid;
  padding-top: 7rem;
  padding-bottom: 7rem;
}
.publication-filter-form {
  margin-bottom: 5rem;
}
.publication-filter-form .selection-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-grow: 1;
  gap: 0;
}
.publication-filter-form .wpb_column.vc_column_container {
  width: auto;
}
.publication-filter-form .flex-grow {
  flex-grow: 1;
}
.publication-filter-form .heading {
  margin-bottom: 0;
}
.publication-grid a,
.publication-outer {
  position: relative;
}
.publication-grid .publication-inner {
  position: relative;
  background: #ffffff;
  border: 2px solid #002548;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  /* overflow: hidden; */
}
.publication-grid .publication-inner .pub-type {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: end;
  z-index: 5;
}
.publication-grid .publication-inner .pub-type .type-wrapper {
  color: #ffffff;
  background: #002548;
  padding: 10px 40px;
  max-width: 91%;
  border-radius: 0 15px 0 20px;
  -moz-border-radius: 0 15px 0 20px;
  -webkit-border-radius: 0 15px 0 20px;
}
.publication-inner .project-info {
  padding: 5rem;
}
.publication-inner.has-cat .project-info {
  padding: 3rem 5rem 5rem;
}
.publication-inner .heading {
  color: #0975E0;
}
.publication-inner .pub-type {
  color: #000000;
}
.publication-inner .content {
  color: #000000;
  margin-top: 1.5rem;
}
.publication-inner .content p:last-of-type {
  margin-bottom: 0;
}
.publication-inner .external-icon {
  position: absolute;
  bottom: 3rem;
  right: 3rem;
}
@media (max-width: 991.98px) {
  .publication-filter-form {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .publication-filter-form .container,
  .publication-filter-form .selection-wrap {
    flex-direction: column;
	gap: 2rem;
  }
  .publication-filter-form .flex-grow {
    width: 100% !important;
  }
  .publication-posts-grid {
	  padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (max-width: 767.98px) {
  .publication-filter-form {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .publication-posts-grid {
	  padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 575.98px) {
  .publication-inner .project-info {
    padding: 5rem 2.5rem;
  }
  .publication-inner.has-cat .project-info {
    padding: 3rem 2.5rem 5rem;
  }
}


/* MASONRY */
/* Container holding the layout */
.project-posts-grid,
.publication-posts-grid,
.news-media-posts-grid
.treatment-center-posts-grid {
    width: 100%;
    margin: 0 auto;
}
.project-posts-grid .masonry-item,
.publication-posts-grid .masonry-item,
.treatment-center-posts-grid .masonry-item {
  margin-bottom: 5rem;
  box-sizing: border-box;
}
.news-media-posts-grid .masonry-item {
  margin-bottom: 2rem;
  box-sizing: border-box;
}
@media (min-width: 992px) {
  .project-posts-grid .masonry-item,
  .publication-posts-grid .masonry-item,
  .treatment-center-posts-grid .masonry-item {
    width: 50%;
    float: left; /* Essential fallback for masonry positioning */
  }
  .news-media-posts-grid .masonry-item {
    width: 50%;
    float: left; /* Essential fallback for masonry positioning */
  }
}


/* NEWS & MEDIA */
@media (min-width: 992px) {
  .thegem-template-21498 #hero.default-height,
  .thegem-template-blog-archive #hero.default-height {
    max-height: 250px;
  }
}
.news-media-grid {
  padding-top: 7rem;
  padding-bottom: 7rem;
}
.news-media-grid .block-heading .heading {
  text-align: center;
  margin-bottom: 3rem;
}
.news-media-grid .gem-button-container {
  width: 100%;
  text-align: center;
  margin-top: 3rem;
}
.news-media-card.vc_column_container > .vc_column-inner {
    padding-left: 1rem;
    padding-right: 1rem;
}
@media (max-width: 767.98px) {
  .news-media-card.vc_column_container > .vc_column-inner {
    padding-left: 0;
    padding-right: 0;
  }
}
.news-media-card .news-media-outer {
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(0, 73, 144, 0.7);
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
.news-media-card a {
  position: relative;
}
.news-media-card .news-media-category {
  min-height: 44px;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
.news-media-card .news-media-image {
  min-height: 44px;
}
.news-media-card .post-image img {
  width: 100%;
  height: auto;
}
.news-media-card .news-media-category .category-wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.news-media-card .news-media-category .category-wrapper.floating {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
.news-media-card .news-media-category .category-wrapper .cat-name {
  background: #F5853F;
  font-family: 'Segma';
  font-weight: 700;
  color: #ffffff;
  padding: 1rem 3rem;
  border-radius: 0 18px 0 20px;
  -moz-border-radius: 0 18px 0 20px;
  -webkit-border-radius: 0 18px 0 20px;
}
@media (max-width: 575.98px) {
  .news-media-card .news-media-category .category-wrapper .cat-name {
    padding: 0.75rem 2rem;
    line-height: 1.4;
    max-width: 90%;
  }
}
.news-media-card .news-media-inner {
  padding: 3rem 2rem;
}
.news-media-card .news-media-inner .post-date {
  margin-bottom: 1.5rem;
}
.news-media-card .news-media-inner .post-title .heading {
  color: #0975E0;
}
.news-media-card .news-media-inner .source {
  margin-bottom: 1rem;
  font-style: italic;
}

/* NEWS MEDIA GRID / ARCHIVE */
#post_archive_grid {
  padding-top: 7rem;
  padding-bottom: 7rem;
}
#post_archive_grid #news-results-container {
  display: grid;
  gap: 2rem;
}
@media (min-width: 992px) {
  #post_archive_grid #news-results-container {
    padding-right: 10rem;
  }
}
@media (max-width: 575.98px) {
  #post_archive_grid #news-results-container {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
#post_archive_grid .news-media-card .news-media-outer {
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(0, 73, 144, 0.7);
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
}
#post_archive_grid .news-media-card .news-media-category {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 5;
}
#post_archive_grid .news-media-card .news-media-category .category-wrapper .cat-name {
  background: #004990;
  color: #ffffff;
  padding: 1rem 3rem;
  border-radius: 0 18px 0 20px;
  -moz-border-radius: 0 18px 0 20px;
  -webkit-border-radius: 0 18px 0 20px;
}
#post_archive_grid .load-more-wrapper {
  text-align: center;
  width: 100%;
  margin-top: 4rem;
}
#post_archive_grid .news-filter-wrapper {
  border-left: 1px solid #134B8D;
  padding-left: 3rem;
}
#news-filter-form .search {}
#news-filter-form .featured {
  margin-top: 2rem;
}
#news-filter-form .featured article {
  margin-bottom: 2rem;
}
#news-filter-form .featured article:last-of-type {
  margin-bottom: 0;
}
#news-filter-form .custom-recent-posts {
  margin-top: 6rem;
}
#news-filter-form .custom-recent-posts .recent-item {
  margin-bottom: 1rem;
}
#news-filter-form .categories {
  margin-top: 6rem;
}
#news-filter-form .date-range {
  margin-top: 2rem;
}
#news-filter-form .date-range label {
  width: 100%;
  display: block;
  margin-bottom: 2rem;
  font-weight: 600;
}
#news-filter-form .date-range label.label-to {
  margin-top: 2rem;
}
#news-filter-form .date-range input {}


@media (min-width: 1200px) {
  .single-post .vc_col-md-8 > .vc_column-inner {
    padding-right: 6rem !important;
  }
}
@media (min-width: 992px) {
  .single-post .vc_col-md-8 > .vc_column-inner {
    padding-right: 10rem !important;
  }
}

.single-post .thegem-te-post-content .post-content .gem-button-container {
  margin-bottom: 2rem;
}
.single-post .thegem-te-post-content .post-content .vc_row:has(.srf-button):last-of-type > .gem-button-container {
  margin-bottom: 0;
}

.single-post .post-tags .post-tags__title {
  font-weight: bold;
  padding-right: 10px;
}
.single-post .post-tags .post-tags__list li {
  margin: 0;
}
.thegem-te-post-tags .post-tags__list li:not(:last-of-type) {
  border-right: 1px solid #0975E0;
}
.single-post .post-tags .post-tags__list li:hover > a {
  text-decoration: underline;
}
.single-post .post-sidebar .news-grid .read-more-button,
.single-post .post-sidebar .widget_categories .widgettitle {
  display: none;
}


/* SEARCH */
.sf-result .search-results-section h2 .light {}
h1 .light, h2 .light, h3 .light, h4 .light, h5 .light, h6 .light, .title-h1 .light, .title-h2 .light, .title-h3 .light, .title-h4 .light, .title-h5 .light, .title-h6 .light, .title-xlarge .light {
  text-transform: none !important;
}



/* FOOTER */
footer.custom-footer .space-40 {
  height: 40px !important;
}
footer.custom-footer .space-75 {
  height: 75px !important;
}
footer.custom-footer a {
  text-decoration: none;
}
footer.custom-footer .wpb_text_column a {
  color: #ffffff;
}
footer.custom-footer .wpb_text_column a:hover {
  color: #F5853F;
}
footer.custom-footer .footer-image-wrapper {
  margin: 3rem 0 4rem;
}
footer.custom-footer .footer-image-wrapper .wpb_wrapper {
  display: flex;
  flex-wrap: nowrap;
  gap: 2rem;
  align-items: center;
}
footer.custom-footer .footer-image-wrapper .wpb_wrapper .wpb_single_image,
footer.custom-footer .gem-image.gem-wrapbox {
  margin-bottom: 0;
}
footer.custom-footer .footer-image-wrapper img {
  height: 108px;
  width: auto;
}
footer.custom-footer .copyright p {
  margin-bottom: 0;
}

@media (max-width: 991.98px) {
  footer.custom-footer {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  footer.custom-footer .vc_row-has-fill > .vc_column_container.vc_col-md-3 > .vc_column-inner {
      padding-top: 20px;
  }
  footer.custom-footer .footer-topsection {
    padding-bottom: 50px !important;
  }
  footer.custom-footer .space-40,
  footer.custom-footer .space-75 {
    height: 20px !important;
  }
  footer.custom-footer .footer-midsection .footer-image-wrapper {
    order: 2;
    margin: 1rem 0;
  }
  footer.custom-footer .footer-midsection .privacy-text {
    order: 1;
  }
  footer.custom-footer .footer-image-wrapper {
    padding: 1rem 0;
  }
  footer.custom-footer .footer-image-wrapper img {
    height: 65px;
  }
  footer.custom-footer .copyright {
    margin-bottom: 3rem;
  }
  footer.custom-footer .copyright p:not(:last-of-type) {
    margin-bottom: 1.1rem;
  }
}


/* Link-out Modal */
.wzlw-modal-container .wzlw-modal-close-btn {
  font-size: 3.5rem;
  right: 0.5rem;
  width: 3.5rem;
  height: 3.5rem;
}
.wzlw-modal-container .wzlw-modal-content {
  padding-top: 3.5rem;
}
.wzlw-modal-container .wzlw-modal-title {
  font-size: 2.5rem;
  line-height: 1.5;
  font-weight: 700;
  color: #004990;
}
.wzlw-modal-container .wzlw-modal-message {
  font-size: 18px;
  line-height: 28px;
  color: #333333;
}
.wzlw-modal-container .wzlw-modal-url {
  background-color: #D9D9D9;
  font-size: inherit;
}
.wzlw-modal-container .wzlw-modal-url .wzlw-modal-url-value {
  font-size: 16px;
  line-height: 26px;
  color: #0975E0;
}
.wzlw-modal-container .wzlw-modal-actions .wzlw-modal-button {
  padding: .625rem 2rem;
  font-size: 18px;
  line-height: 28px;
  font-weight: 700;
  border-radius: 50px;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
}
.wzlw-modal button.wzlw-modal-cancel, .wzlw-modal button.wzlw-modal-cancel:active, .wzlw-modal button.wzlw-modal-cancel:focus, .wzlw-modal button.wzlw-modal-cancel:focus-visible {
  border-color: var(--wzlw-color-button-muted) !important;
}
.wzlw-modal button.wzlw-modal-continue, .wzlw-modal button.wzlw-modal-continue:active, .wzlw-modal button.wzlw-modal-continue:focus, .wzlw-modal button.wzlw-modal-continue:focus-visible {
  background-color: #F5853F !important;
}
.wzlw-modal button.wzlw-modal-continue:hover {
  background-color: #0975E0 !important;
}