:root {
  --sans-serif-font: "neulis-sans", sans-serif;
  --serif-font: "Merriweather", serif;
  --content-width: 1160px;
  --wide-width: 1200px;
  --font-size-small: 16px;
  --font-size-normal: 19px;
  --font-size-medium: 23px;
  --font-size-large: 36px;
  --font-size-huge: 56px;
  --box-shadow-cards: 0 0 10px 0 rgba(0, 0, 0, .15);
  --border-radius-cards: 5px;
  /* Colors are output by Central Color Palette */
  --primarybrightblue: #0040a3;
  --navy: #002f47;
  --skyblue: #badbe5;
  --primarydarkgray: #253745;
  --familiesteal: #00acc6;
  --providerspurple: #8237a4;
  --researchorange: #db8922;
  --redalert: #c42c02;
  --darkgreen: #00943f;
  --lightgreen: #95d324;
  --yellow: #f4cd4c;
  --cream: #f0e3b5;
}

/**
 * Media/Embeds
 */
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  /* max-width: 100%; */
  height: auto;
}

/**
 * Font Sizes
 */
.has-tiny-font-size {
  font-size: var(--font-size-tiny);
}

.has-small-font-size {
  font-size: var(--font-size-small);
}

.has-normal-font-size {
  font-size: var(--font-size-normal);
}

.has-medium-font-size {
  font-size: var(--font-size-medium);
  line-height: 1.5;
}

.has-large-font-size {
  font-size: var(--font-size-large);
  line-height: 1.2;
}

.has-huge-font-size {
  font-size: calc(var(--font-size-huge) * 0.8);
  line-height: 1.2;
}

@media (min-width: 768px) {
  .has-huge-font-size {
    font-size: var(--font-size-huge);
  }
}

/**
 * Gutenberg Gradients
 */
.has-pale-teal-to-white-gradient-background {
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(230, 247, 249) 100%);
}

.has-pale-purple-to-white-gradient-background {
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(249, 245, 250) 100%);
}

.has-pale-orange-to-white-gradient-background {
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(252, 251, 248) 100%);
}

.has-pale-green-to-white-gradient-background {
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(247, 252, 238) 100%);
}

.has-pale-gray-to-white-gradient-background {
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(247, 249, 251) 100%);
}

.has-transparent-to-navy-gradient-background {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgb(0, 34, 90, 0.7) 50%);
}

/**
 * Buttons
 */
.wp-block-button__link {
  background: var(--primarybrightblue);
  font-family: var(--serif-font);
  transition: all .25s;
  border-radius: 500px;
  text-decoration: none !important;
  background-color: #FFFFFF;
  color: #002f47;
}

.wp-block-button__link:hover {
  transform: scale(1.1);
  transition: all .25s;
}

.wp-block-button.is-style-fill .wp-block-button__link,
.wp-block-button__link.is-style-fill {
  background: var(--primarybrightblue);
}

.wp-block-button.is-style-fill .wp-block-button__link:hover,
.wp-block-button__link.is-style-fill:hover {
  background: var(--navy);
}

.wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-button__link.is-style-outline {
  background: transparent;
  color: var(--primarybrightblue);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button__link.is-style-outline:hover {
  color: var(--navy);
}

/**
 * Random
 */
p.empty-state-message {
  font-size: var(--font-size-medium);
  font-weight: bold;
  padding: 40px 20px;
  text-align: center;
  opacity: 0.85;
}

.wp-block-group.has-background {
  padding-left: 20px;
  padding-right: 20px;
}

.wp-block-image.is-style-rounded img {
  border-radius: 5000px;
}

/*.wp-block-group__inner-container,*/
.wp-block-columns {
  max-width: var(--content-width);
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}

/**
 * Separators
 */
.wp-block-separator {
  color: #ccc;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-thin-wide),
.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-thin-wide) {
  background-color: #ccc;
  border: none;
  height: 4px;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-separator.is-style-wide {
  max-width: calc(var(--content-width) - 40px);
  margin: 2.5em auto;
  border-bottom: solid 4px #e9eaec;
}

.wp-block-separator.is-style-thin-wide {
  background: none;
  border-bottom: solid 1px #c7cbce;
  height: 1px;
  margin: 1em auto;
  max-width: calc(var(--content-width) - 40px) !important;
  width: 100%;
}

.wp-block-separator.is-style-blue-fan::before {
  content: url(../img/separator-blue-fan2.svg);
}

.wp-block-separator.is-style-teal-fan::before {
  content: url(../img/separator-teal-fan.svg);
}

.wp-block-separator.is-style-purple-fan::before {
  content: url(../img/separator-purple-fan.svg);
}

.wp-block-separator.is-style-orange-fan::before {
  content: url(../img/separator-orange-fan.svg);
}

.wp-block-separator.is-style-blue-fan::before,
.wp-block-separator.is-style-orange-fan::before,
.wp-block-separator.is-style-teal-fan::before,
.wp-block-separator.is-style-purple-fan::before {
  display: block;
  width: 100%;
}

.wp-block-separator.is-style-blue-fan,
.wp-block-separator.is-style-orange-fan,
.wp-block-separator.is-style-purple-fan,
.wp-block-separator.is-style-teal-fan {
  background: transparent !important;
  color: transparent !important;
  border: none !important;
  height: 120px !important;
  max-width: none !important;
  position: relative;
  transform: rotate(180deg);
  width: 100%;
  z-index: -1;
  visibility: hidden;
}

.wp-block-separator.is-style-triangle-down {
  background: none !important;
  border: none !important;
  display: block;
  height: 60px !important;
  margin-bottom: -60px;
  max-width: none !important;
  overflow: hidden;
  position: relative;
  width: 100% !important;
  z-index: 10;
}

.is-style-triangle-down {
  color: #fff;
}

.wp-block-separator.is-style-triangle-down::before {
  content: '';
  border-style: solid;
  border-width: 60px 60px 0;
  border-color: currentColor transparent transparent;
  display: block;
  margin: auto;
  position: relative;
  top: 0;
  transform: scaleX(7);
  width: 0;
}

@media (min-width: 800px) {
  .wp-block-separator.is-style-triangle-down::before {
    transform: scaleX(10);
  }
}

@media (min-width: 1200px) {
  .wp-block-separator.is-style-triangle-down::before {
    transform: scaleX(15);
  }
}

@media (min-width: 1600px) {
  .wp-block-separator.is-style-triangle-down::before {
    transform: scaleX(20);
  }
}

.wp-block-separator.is-style-inverted-triangle-down {
  background: none !important;
  border: none !important;
  display: block;
  height: 60px !important;
  margin-top: -60px;
  max-width: none !important;
  overflow: hidden;
  position: relative;
  width: 100% !important;
  z-index: 10;
}

.is-style-inverted-triangle-down {
  color: #fff;
}

.wp-block-separator.is-style-inverted-triangle-down::before {
  content: '';
  border-style: solid;
  border-width: 60px 60px 0;
  border-color: transparent currentColor;
  display: block;
  margin: auto;
  position: relative;
  top: 0;
  transform: scaleX(7);
  width: 0;
}

@media (min-width: 800px) {
  .wp-block-separator.is-style-inverted-triangle-down::before {
    transform: scaleX(10);
  }
}

@media (min-width: 1200px) {
  .wp-block-separator.is-style-inverted-triangle-down::before {
    transform: scaleX(15);
  }
}

@media (min-width: 1600px) {
  .wp-block-separator.is-style-inverted-triangle-down::before {
    transform: scaleX(20);
  }
}

@media (min-width: 2400px) {
  .wp-block-separator.is-style-inverted-triangle-down::before {
    transform: scaleX(24);
  }
}


/**
 * Patterns
 */
.stats-banner .gb-headline-wrapper {
  display: block;
  text-align: center;
}

.stats-banner .gb-headline-wrapper .gb-icon {
  display: inline-block;
  vertical-align: bottom;
}

.stats-banner .gb-headline-wrapper .gb-headline {
  display: inline;
}


/**
 * The Events Calendar
 */
#tribe-events-pg-template,
.tribe-events-pg-template,
.tribe-common .tribe-common-l-container {
  max-width: var(--content-width);
  padding: 60px 20px 80px !important;
}

body .tribe-common .tribe-common-b2,
body .tribe-events .tribe-events-c-view-selector__list-item-text,
body .tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input,
body .tribe-common .tribe-common-form-control-text__input {
  font-family: var(--sans-serif-font);
  font-size: var(--font-size-normal) !important;
  line-height: 1.5 !important;
}

.tribe-common .tribe-common-h2,
.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-h5,
.tribe-common .tribe-common-h6,
.tribe-common .tribe-common-h7,
.tribe-common .tribe-common-h8 {
  font-family: var(--serif-font);
}

.tribe-common a,
.tribe-common a:active,
.tribe-common a:focus,
.tribe-common a:visited {
  color: var(--primarybrightblue);
}

.tribe-events .tribe-common a:hover {
  border-color: #4a77bb;
  color: #4a77bb;
}

.tribe-common .tribe-common-c-btn,
.tribe-common a.tribe-common-c-btn {
  background: var(--primarybrightblue);
  border-radius: 100px;
  font-family: var(--sans-serif-font);
}

.tribe-common .tribe-common-c-btn-border::before,
.tribe-common a.tribe-common-c-btn-border::before,
.tribe-common .tribe-common-c-btn::before,
.tribe-common a.tribe-common-c-btn::before {
  display: none;
}

.tribe-common .tribe-common-c-btn:hover,
.tribe-common a.tribe-common-c-btn:hover {
  background-color: #4369BA;
}

.tribe-events .tribe-events-c-ical__link,
.tribe-block__events-link .tribe-block__btn--link a {
  background: none;
  border-color: var(--primarybrightblue);
  border-radius: 100px;
  border-width: 2px;
  color: var(--primarybrightblue);
  padding: 12px;
}

.tribe-events .tribe-events-c-ical__link::before {
  filter: hue-rotate(-22deg) brightness(0.7);
}

.tribe-block__events-link .tribe-block__btn--link img {
  filter: hue-rotate(22deg) brightness(0.6);
}

.tribe-block__events-link .tribe-block__btn--link:active img,
.tribe-block__events-link .tribe-block__btn--link:focus img,
.tribe-block__events-link .tribe-block__btn--link:hover img {
  filter: hue-rotate(22deg) brightness(20);
}

.tribe-events .tribe-events-c-ical__link:active,
.tribe-events .tribe-events-c-ical__link:focus,
.tribe-events .tribe-events-c-ical__link:hover,
.tribe-block__events-link .tribe-block__btn--link a:active,
.tribe-block__events-link .tribe-block__btn--link a:focus,
.tribe-block__events-link .tribe-block__btn--link a:hover,
.tribe-events .tribe-events-c-ical__link:active,
.tribe-events .tribe-events-c-ical__link:focus,
.tribe-events .tribe-events-c-ical__link:hover {
  background: var(--primarybrightblue);
  color: #fff;
}

.tribe-common button[disabled],
.tribe-common input[disabled] {
  background: none !important;
}

.tribe-events .datepicker .datepicker-switch,
.tribe-events .tribe-events-c-top-bar__datepicker-button {
  font-family: var(--sans-serif-font);
}

.tribe-events table thead th {
  background: transparent;
}

.tribe-events .datepicker .day,
.tribe-events .datepicker .month,
.tribe-events .datepicker .year {
  border-radius: 0;
}

.tribe-events .datepicker .day:hover,
.tribe-events .datepicker .month:hover,
.tribe-events .datepicker .year:hover {
  border-radius: 0;
}

.tribe-events .tribe-events-c-top-bar__datepicker-button:focus,
.tribe-events .tribe-events-c-top-bar__datepicker-button:hover {
  color: var(--primarybrightblue);
  opacity: 1;
}

.tribe-events .datepicker .day.active,
.tribe-events .datepicker .day.active.focused,
.tribe-events .datepicker .day.active:focus,
.tribe-events .datepicker .day.active:hover,
.tribe-events .datepicker .month.active,
.tribe-events .datepicker .month.active.focused,
.tribe-events .datepicker .month.active:focus,
.tribe-events .datepicker .month.active:hover,
.tribe-events .datepicker .year.active,
.tribe-events .datepicker .year.active.focused,
.tribe-events .datepicker .year.active:focus,
.tribe-events .datepicker .year.active:hover {
  background: var(--primarybrightblue);
}

.tribe-common--breakpoint-medium.tribe-common .tribe-events-calendar-list__month-separator-text {
  font-size: var(--font-size-medium);
  font-weight: bold;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-weekday {
  font-family: var(--sans-serif-font);
  font-size: var(--font-size-medium);
}

html body .tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
  font-family: var(--sans-serif-font);
  font-size: var(--font-size-large) !important;
}

html body .tribe-events .tribe-events-c-small-cta__price {
  font-size: var(--font-size-normal);
  font-weight: bold;
}

.tribe-events-schedule__datetime {
  font-family: var(--sans-serif-font) !important;
}

.tribe-block.tribe-block__events-link {
  margin-top: 40px;
}



/**
 * Gravity Forms
 */
.gform_wrapper.gform_wrapper,
.gform_confirmation_wrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--content-width);
  padding-left: 20px;
  padding-right: 20px;
}

.gform_confirmation_wrapper {
  font-size: var(--font-size-medium);
  margin-bottom: 40px;
  margin-top: 20px;
  min-height: 200px;
}

body .gform_wrapper span.gform_description {
  font-size: var(--font-size-medium);
  margin-bottom: 40px;
}

body .gform_wrapper ul li.gfield {
  margin-bottom: 40px;
  margin-top: 20px;
}

.gform_wrapper label.gfield_label {
  font-size: 17px;
}

body .gform_wrapper .gfield_description,
body .gform_wrapper .gsection_description {
  color: #505e6a;
}

html body .gform_wrapper li.gfield.gsection,
html .gform_wrapper li.gfield.field_description_below+li.gsection {
  margin-bottom: 20px !important;
  margin-top: 60px !important;
}

.gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label,
.gform_wrapper ul.gfield_checkbox li label,
.gform_wrapper ul.gfield_radio li label {
  font-weight: normal;
  font-family: var(--sans-serif-font);
}


/**
 * Utlity Classes
 */
.reverse-text,
.reverse-text h1,
.reverse-text h2,
.reverse-text h3,
.reverse-text h4,
.reverse-text h5,
.reverse-text h6,
.reverse-text p,
.reverse-text li,
.reverse-text td,
.reverse-text th {
  color: #fff;
}
/**
body .reverse-text a {
  color: #fff;
}

body .reverse-text a:hover {
  color: rgba(255, 255, 255, 0.9);
}
*/
body .reverse-text a:hover,
p.has-text-color a:hover {
  text-decoration: underline;
}

.flip-contents-vertical,
.flip-contents-vertical .wp-block-group__inner-container,
.flip-contents-vertical .gb-inside-container {
  display: flex;
  flex-direction: column-reverse;
}

.is-style-shadowed {
  /* headings */
  text-shadow: 3px 3px 20px rgba(0, 0, 0, 0.67);
}

.is-style-card,
.wp-block-columns.is-style-cards .wp-block-column,
.gb-grid-wrapper.is-style-cards>.gb-grid-column>.gb-container {
  border-radius: var(--border-radius-cards);
  box-shadow: var(--box-shadow-cards);
  overflow: hidden;
}


body .no-bottom-margin {
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
  .lean-mobile .wp-block-image {
    display: none;
  }

  .lean-mobile .icon-block {
    font-size: 2.5rem !important;
  }

  .lean-mobile .icon-block.has-background,
  .lean-mobile .icon-block.has-border {
    font-size: 1.25rem !important;
  }

  .lean-mobile .icon-block.has-background .icon-block__background,
  .lean-mobile .icon-block.has-border .icon-block__background {
    height: 2.5rem !important;
    width: 2.5rem !important;
  }

}

@media (max-width: 767px) {
  html body .no-mobile {
    display: none !important;
  }
}

@media (max-width: 1023px) {
  html body .no-tablet {
    display: none !important;
  }
}

.no-break {
  white-space: nowrap;
}
