/*
    Theme Name:        Elementor Hello Theme Child
    Theme URI:         https://kinggrizzly.com
    Description:       RateLinx child theme
    Author:            King Grizzly
    Author URI:        https://kinggrizzly.com
    Template:          hello-elementor
    Version:           1.0.0
    Text Domain:       hello-elementor-child
*/

/*
Theme reliance is reduced by using the Elementor Hello Theme available at https://github.com/elementor/elementor-hello-theme. This theme resets the environment and prepares it for smooth operation of Elementor — allowing the builder to do most of the work. This also enables marketers and other non-developers to update most aspects of the website from within the visual builder.

This document is the limited custom styling King Grizzly has written to create some visual defaults which can be overruled as needed from within the builder.

Questions? Reach out at https://kinggrizzly.com

- Brian Erickson, King Grizzly
*/

/************************************
    SET SOME DEFAULTS FOR ELEMENTOR
 ************************************/

/* Font defaults for desktop, tablet, and mobile. */
html,
body {
  /* Desktop */
  font-size: 13px;
  line-height: 1.75rem;
  font-weight: 300;
}
/* Tablet */
@media only screen and (max-width: 1023px) and (min-width: 650px) {
  html,
  body {
    font-size: 13px;
    line-height: 1.5rem;
  }
}

/* Mobile */
@media only screen and (max-width: 649px) {
  html,
  body {
    font-size: 12px;
    line-height: 1.55rem;
  }
}

body {
  -webkit-font-smoothing: subpixel-antialiased; /* Improve font clarity */
  margin: 0px; /* Zero spacing around body tag */
}

/* Highlighted text styles */
html ::selection,
body ::selection {
  background: #174f60;
  color: white;
}

/************************************
    COLORS
 ************************************/

/***** Primary brand colors from RateLinx *****/

/* Primary brand and action color */
.torch {
  color: #940f2f;
}

/* Dark blue-grey suitable for instances where a dark, neutral would work. This is a workhorse for headings and body fonts */
.steel {
  color: #353740;
}

/* Bright, powdery blue color.*/
.harbor {
  color: #009abb;
}

/* Blue-green supporting color. */
.ocean {
  color: #174f60;
}

/***** Secondary brand colors *****/

/* Optional accent. Used extremely rarely, if ever. */
.spark {
  color: #a31d36;
}

/***** Dark and Light background defaults *****/

.elementor-section.dark {
  color: white;
}

.elementor-section.light {
  color: #353740;
}

/************************************
    TYPOGRAPHY
 ************************************/

.label,
.label span {
  text-transform: uppercase;
  font-size: 1.1rem;
  font-style: italic;
  font-family: "Lato", Sans-serif;
  font-weight: 600;
  margin-top: 15px;
}
/* Spacing on Tablet and below */
@media only screen and (max-width: 1023px) {
  .label,
  .label span {
    margin-top: 5px;
  }
}

/* Superscript */

sup {
    font-size: 45%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
	top: -.7rem;
}

/*sup {
  bottom: 3ex;
}*/

/***** Headings *****/

h1,
h2,
h3,
h4,
h5,
h6,
.kg-content h2.ee-text-divider__text,
.elementor-widget-heading.elementor-widget-heading .elementor-heading-title,
.kg-content
  .elementor-widget-heading.elementor-widget-heading
  .elementor-heading-title {
  font-family: "Lato", Sans-serif; /* Default font */
  font-weight: 700;
  color: #353740; /* Default color */
  margin-bottom: 1rem;
}

h1 {
  font-style: italic;
  font-family: "Lato", "Arial", sans-serif;
}

.h1-hero h1.elementor-heading-title,
h1.elementor-heading-title {
  font-size: 5rem;
  line-height: 5.25rem !important;
  font-family: "Lato", "Arial", sans-serif;
}
@media (max-width: 768px) {
  .h1-hero h1.elementor-heading-title,
  h1.elementor-heading-title {
    font-size: 4rem;
    line-height: 4.25rem !important;
  }
}
/* Spacing on Mobile */
@media only screen and (max-width: 649px) {
  .h1-hero h1.elementor-heading-title,
  h1.elementor-heading-title {
    font-size: 3rem;
    line-height: 3.25rem !important;
  }
}

h2,
.elementor-widget-heading h2.elementor-heading-title,
h2.ee-text-divider__text {
  color: #353740;
  font-size: 2.75rem;
  line-height: 3.75rem;
}
@media (max-width: 768px) {
  h2,
  .elementor-widget-heading h2.elementor-heading-title,
  h2.ee-text-divider__text {
    font-size: 2.25rem;
    line-height: 2.75rem;
  }
}

h3,
.elementor-widget-heading h3.elementor-heading-title,
h3.ee-text-divider__text {
  color: #174f60;
  font-size: 2.25rem;
  line-height: 3rem;
}
@media (max-width: 768px) {
  h3,
  .elementor-widget-heading h3.elementor-heading-title,
  h3.ee-text-divider__text {
    font-size: 1.75rem;
    line-height: 2.5rem;
  }
}

h4,
.elementor-widget-heading h4.elementor-heading-title,
h4.ee-text-divider__text {
  font-size: 1.85rem;
  line-height: 2.75rem;
}
@media (max-width: 768px) {
  h4,
  .elementor-widget-heading h4.elementor-heading-title,
  h4.ee-text-divider__text {
    font-size: 1.65rem;
    line-height: 2.5rem;
  }
}

h5,
.elementor-widget-heading h5.elementor-heading-title,
h5.ee-text-divider__text {
  font-size: 1.75rem;
  line-height: 2.5rem;
}
@media (max-width: 768px) {
  h5,
  .elementor-widget-heading h5.elementor-heading-title,
  h5.ee-text-divider__text {
    font-size: 1.5rem;
    line-height: 2.25rem;
  }
}

h6,
.elementor-widget-heading h6.elementor-heading-title,
h6.ee-text-divider__text {
  font-size: 1.5rem;
  line-height: 2.25rem;
}
@media (max-width: 768px) {
  h6,
  .elementor-widget-heading h6.elementor-heading-title,
  h6.ee-text-divider__text {
    font-size: 1.25rem;
    line-height: 2rem;
  }
}

/***** Body *****/

p {
  margin-block-start: 0em;
  margin-block-end: 0em;
}

/* Subtitle */

.subtitle .elementor-section .elementor-text-editor,
.elementor-text-editor .subtitle,
.subtitle p,
.subtitle,
.subtitle h4 {
  font-size: 1.6rem;
  line-height: 2.5rem;
  font-weight: 400;
}

/* Spacing on Tablets */
@media only screen and (max-width: 1023px) and (min-width: 650px) {
  .elementor-text-editor .subtitle,
  .subtitle p,
  .subtitle,
  .subtitle h4 {
    font-size: 1.45rem;
    line-height: 1.5em;
  }
}

/* Spacing on Mobile */
@media only screen and (max-width: 649px) {
  .elementor-text-editor .subtitle,
  .subtitle p,
  .subtitle {
    font-size: 1.35rem;
    line-height: 1.55em;
  }
}

/* H3 Subtitle Manipulation */
.h3-subtitle .elementor-section .elementor-text-editor,
.elementor-text-editor .h3-subtitle,
.h3-subtitle p,
.h3-subtitle,
.h3-subtitle h3.elementor-heading-title,
.resource-hero
  .h3-subtitle
  .elementor-text-editor.elementor-clearfix.elementor-inline-editing {
  font-size: 1.9rem;
  line-height: 2.65rem;
  font-weight: 400 !important;
}

/* Spacing on Tablets */
@media only screen and (max-width: 1023px) and (min-width: 650px) {
  .elementor-text-editor .h3-subtitle,
  .h3-subtitle p,
  .h3-subtitle,
  .h3-subtitle h3.elementor-heading-title {
    font-size: 1.45rem;
    line-height: 1.5em;
  }
}

/* Spacing on Mobile */
@media only screen and (max-width: 649px) {
  .elementor-text-editor .h3-subtitle,
  .h3-subtitle p,
  .h3-subtitle,
  .h3-subtitle h3.elementor-heading-title {
    font-size: 1.45rem;
    line-height: 1.55em;
  }
}

/* H3 Benefit */

.solutions-benefit,
.solutions-benefit h3.elementor-heading-title {
  font-size: 2.75rem;
  line-height: 3.4rem;
  font-weight: 400 !important;
}

@media only screen and (max-width: 1023px) and (min-width: 650px) {
  .solutions-benefit,
  .solutions-benefit h3.elementor-heading-title {
    font-size: 2rem;
    line-height: 2.75rem;
    font-weight: 400 !important;
  }
}

@media only screen and (max-width: 649px) {
  .solutions-benefit,
  .solutions-benefit h3.elementor-heading-title {
    font-size: 1.6rem;
    line-height: 2.25rem;
    font-weight: 400 !important;
  }
}

/* H4 Benefit Support */
.benefit-support .elementor-section .elementor-text-editor,
.elementor-text-editor .benefit-support,
.benefit-support p,
.benefit-support,
.benefit-support h4.elementor-heading-title {
  font-size: 1.75rem !important;
}

.marketing-copy {
  font-size: 1.35rem;
  line-height: 2.25rem;
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  .marketing-copy {
    font-size: 1.25rem;
  }
}

/***** Links *****/

.elementor-section .elementor-text-editor a,
.post-content a {
  transition: all 0.5s;
  border-bottom: 2px solid;
  color: #940f2f;
  border-color: #940f2f;
  font-weight: bold;
}

.post-content a:hover,
.elementor-section .elementor-text-editor a:hover,
.elementor-section .elementor-text-editor a:active,
.elementor-section .elementor-text-editor a:focus {
  color: #ffffff;
  cursor: pointer;
  background-color: #009abb;
  border: none;
}

.post-content figure a {
  border: none;
}
.post-content figure.pw-block-image a:hover,
.post-content figure.pw-block-image a:active,
.post-content figure.pw-block-image a:focus {
  background-color: none;
}

/* Hidden social image */

.hide-social {
	display: none;
}

/******************
    UI/UX
 ******************/

/* Offset anchor - requested by Cory */
:target::before {
  content: "";
  display: block;
  height: 120px;
  margin-top: -120px;
}
/* Mobile */
@media only screen and (max-width: 649px) {
  :target::before {
    content: "";
    display: block;
    height: 160px;
    margin-top: -160px;
  }
}

/***** Buttons *****/

.text-cta-primary {
  font-size: 3rem;
}

.cta-learn-more span {
  text-transform: uppercase;
  font-style: italic;
  font-weight: 400;
  font-size: 1rem;
}

/* Slant buttons and round corners */
.elementor-button,
.elementor-button:hover,
.elementor-button:active,
.elementor-button:focus {
  transform: skew(-21deg);
  border-top-left-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
}

/* Unslant the button text */
.elementor-button span.elementor-button-text,
.elementor-button:hover span.elementor-button-text,
.elementor-button:active span.elementor-button-text,
.elementor-button:focus span.elementor-button-text,
.elementor-button span.elementor-button-icon,
.elementor-button:hover span.elementor-button-icon,
.elementor-button:active span.elementor-button-icon,
.elementor-button:focus span.elementor-button-icon {
  transform: skew(21deg);
  border-top-left-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
  font-style: italic;
}

.elementor-cta__button span.cta-button {
  letter-spacing: 2px;
  font-style: italic;
}

/* Same buttons styling for forms */
form .elementor-button span span,
form .elementor-button:hover span span,
form .elementor-button:active span span,
form .elementor-button:focus span span {
  transform: skew(0deg);
  border-top-left-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
  font-style: italic;
}

/***** CTAs *****/
.cta-elementor-widget {
}

/***** GDPR Cookie Consent *****/

/* Add a box shadow */
.cc-banner.cc-bottom {
  -webkit-box-shadow: 0px -1px 15px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0px -1px 15px 0px rgba(0, 0, 0, 0.15);
  box-shadow: 0px -1px 15px 0px rgba(0, 0, 0, 0.15);
}
/* Adjust font size */
.cc-banner .cc-message {
  font-size: 1rem;
}

/******************
    SPACING
 ******************/

/* Let's get a head start of visually pleasing spacing and readability by defaulting spacing for common builder components such as sections. These can be overruled in the builder padding settings for the related components/widgets. */

/***** Sections *****/

/* Set default padding for sections */
.elementor-section {
  padding: 80px 50px;
}
/* Spacing on Tablets */
@media only screen and (max-width: 1023px) and (min-width: 650px) {
  .elementor-section {
    padding: 40px;
  }
}
/* Spacing on Mobile */
@media only screen and (max-width: 649px) {
  .elementor-section {
    padding: 20px 30px;
  }
}

/* Half padding override classes. Placing these classes on sections will change the padding. */
.p-half {
  padding: 30px;
}
.p-half-top {
  padding-top: 30px;
}
.p-half-bottom {
  padding-bottom: 30px;
}

/* Zero padding override classes. Placing these classes on sections will change the padding.  */
.p-zero,
.elementor-column.p-zero {
  padding: 0px;
}
.p-zero-top,
.elementor-column.p-zero-top {
  padding-top: 0px;
}
.p-zero-right,
.elementor-column.p-zero-right {
  padding-right: 0px;
}
.p-zero-bottom,
.elementor-column.p-zero-bottom {
  padding-bottom: 0px;
}
.p-zero-left,
.elementor-column.p-zero-left {
  padding-left: 0px;
}

/* Zero margin overrides */

.m-zero {
  margin: 0;
}

.m-zero-bottom,
.elementor-element.m-zero-bottom {
  margin-bottom: 0;
}

.m-zero-top {
  margin-top: 0;
}

/***** Inner Sections *****/

/* Default padding for inner sections */
.elementor-section .elementor-inner-section,
.elementor-section .elementor-widget-container {
  padding: 0px;
  margin-bottom: 0px;
}

/* Set some default spacing after inner sections */
.elementor-section.elementor-inner-section {
  margin-bottom: 50px;
}

.elementor-section .elementor-inner-section .elementor-widget-container {
  margin-bottom: 0px;
}

.elementor-column,
.elementor-inner-column,
.elementor-column-gap-default
  > .elementor-row
  > .elementor-column
  > .elementor-element-populated {
  padding: 0px;
}

.elementor-column .elementor-inner-column:first-child {
  margin-left: 0px;
}
.elementor-column .elementor-inner-column:last-child {
  margin-right: 0px;
}

/************************************
    NAVIGATION
 ************************************/

.jet-sub-mega-menu {
  z-index: 9999 !important;
}

/* Hide menu itmes on larger screens that don't need them. */
@media (min-width: 1025px) {
  .nav--home,
  .nav--contact {
    display: none !important;
  }
}

/***** Transparent nav on dark *****/

.nav-transparent .jet-menu .jet-menu-item .top-level-link {
  border-color: transparent;
}

/* Background color on sticky */
header.ee-sticky--stuck {
  background-color: rgba(255, 255, 255, 01) !important;
  transition: all 0.5s ease;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
}

.logo-color {
  display: none;
}

header.ee-sticky--stuck .logo-white {
  display: none;
  transition: all 0.5s ease;
}
header.ee-sticky--stuck .logo-color {
  display: block;
  transition: all 0.5s ease;
}

/* Button color changes on scroll */
header.ee-sticky--stuck .nav-contact-transparent .elementor-button {
  color: #940f2f !important;
  border-color: #940f2f !important;
}
header.ee-sticky--stuck .nav-contact-transparent .elementor-button:hover {
  color: white !important;
  border-color: #009abb !important;
}

/* Hamburger icon color change on scroll */
.ee-sticky--stuck .nav-hamburger .elementor-menu-toggle {
  color: #009abb !important;
}

/* Change link item colors on transparent nav */
.nav-transparent .top-level-link {
  color: white !important;
}
.nav-transparent .top-level-link:hover {
  color: white !important;
}
/* Adjust link colors on scroll */
.nav-transparent.ee-sticky--stuck .top-level-link {
  color: #004B60 !important;
}
.nav-transparent.ee-sticky--stuck .top-level-link:hover {
  color: #0099BC !important;
}

/************************************
    BLOG COMPONENTS - Resources / News & Events
 ************************************/

.post-content {
  font-size: 1.4rem;
  line-height: 2.4rem;
}

.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6,
.post-content p,
.post-content img {
  margin-bottom: 25px;
}

.post-content h2 {
  font-size: 2.5rem;
  line-height: 3rem;
}

/* Images break outside text margins */
.post-content img {
  width: 120%;
  min-width: 120%;
  max-width: 120%;
  margin-left: -10%;
}

/* Caption */
.post-content figcaption {
  margin-top: -25px;
  margin-bottom: 30px;
  color: #555d66;
  text-align: center;
  font-size: 0.8rem;
  line-height: 1.5rem;
  padding-left: 10%;
  padding-right: 10%;
}

/* Blockquote */

.post-content blockquote {
  border-left: 3px solid #940f2f;
  padding-left: 5%;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-left: -5%;
  font-style: italic;
  font-size: 1.3rem;
}

@media (max-width: 768px) {
  .post-content blockquote {
    padding-left: 30px;
    margin-left: 0;
  }
}

.post-content blockquote p {
  margin-bottom: 0px;
}

.post-content blockquote cite {
  font-style: normal;
  font-size: 0.9rem;
}

/* Pull Quote */
.wp-block-pullquote {
  padding: 1.5rem 0;
}

.post-content .wp-block-pullquote blockquote {
  border: none;
  color: #004b60;
  padding: 0;
  margin: 3em -10%;
  font-family: "Lato", sans-serif;
}

.post-content .wp-block-pullquote blockquote p {
  font-size: 2.5rem;
}

.post-content .wp-block-pullquote blockquote cite {
  color: #353740;
}

@media (max-width: 540px) {
  .post-content .wp-block-pullquote blockquote p {
    font-size: 2rem;
  }

  .post-content .wp-block-pullquote blockquote {
    padding: 0 5%;
  }
}

/* Suggested reading */

.srb__container {
  background: #eee;
  margin: 3em -10%;
  padding: 5em 10%;
  clip-path: polygon(0 30px, 100% 0, 100% calc(100% - 30px), 0 100%);
}

.srb__heading.srb__heading {
  margin: 0 0 1em;
}

.srb__item img {
  transition: 1s;
}

.srb__item img:hover {
  transform: scale(1.1);
  transition: 0.5s;
}

@media (max-width: 1023px) {
  .srb__item img:hover {
    transform: none;
  }
}

@media (max-width: 768px) {
  .srb__container {
    margin: 3em -5%;
    padding: 4em 5%;
  }

  .srb__heading.srb__heading {
    margin: 0 0 2em;
  }
}

/* Flexible CTA block */

.fcta-block.fcta-block {
  margin: 3em -10%;
  clip-path: polygon(0 30px, 100% 0, 100% calc(100% - 30px), 0 100%);
}

.fcta-block.fcta-block,
.fcta-block__overlay.fcta-block__overlay {
  padding: 5em 10%;
}

.fcta-block__heading.fcta-block__heading {
  margin: 0 0 1em;
}

.fcta-block__image--regular.fcta-block__image--regular {
  padding-right: 30px;
}

.fcta-block__image--wide {
  padding-bottom: 15px;
}

.fcta-block__button a {
  display: inline-block;
  transform: skew(-21deg);
  border-top-left-radius: 6px;
  border-bottom-right-radius: 6px;
  padding: 12px 24px;
  color: #940f2f;
  border: solid 2px #940f2f;
  font-family: "Lato", Sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-style: italic;
  letter-spacing: 1.2px;
}

.fcta-block__overlay.fcta-block__overlay .fcta-block__button a {
  background: white;
  border-color: white;
  color: #940f2f;
}

.fcta-block__button a:hover,
.fcta-block__overlay.fcta-block__overlay .fcta-block__button a:hover {
  border: solid 2px #009abb;
  background-color: #009abb;
  color: white;
}

.fcta-block__button-text {
  transform: skew(21deg);
  display: block;
  line-height: 1;
}

@media (max-width: 768px) {
  .fcta-block.fcta-block,
  .fcta-block__overlay.fcta-block__overlay {
    margin: 3em -5%;
    padding: 5em 5%;
  }

  .fcta-block__heading.fcta-block__heading {
    margin: 0 0 2em;
  }

  .fcta-block__image--regular.fcta-block__image--regular {
    padding: 0 0 15px;
  }

  .fcta-block__button {
    padding-left: 0.5em;
  }
}

/* Subscribe CTA block */

.scta-block.scta-block {
  margin: 3em -10%;
  padding: 2em 10%;
  background: white;
  border: solid 2px #ddd;
}

.scta-block__heading.scta-block__heading {
  margin: 0 0 1em;
}

@media (max-width: 768px) {
  .scta-block.scta-block {
    margin: 3em -5%;
    padding: 2em 5%;
  }
}

/* Featured Expert block */

.feb__container {
  margin: 3em -10%;
  padding: 2em 10%;
  background: white;
  position: relative;
}

.feb__container.spotlight {
  padding: 120px 10% 2em;
  border: solid 1px #ddd;
}

.feb__headshot-inner {
  padding-top: 100%;
  overflow: hidden;
  position: relative;
  border-radius: 100%;
}

.feb__headshot img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}

.feb__title.feb__title {
  padding-left: 30px;
}

.feb__name {
  color: #004b60;
  font-weight: bold;
  font-size: 2rem;
}

.feb__title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-family: "Lato", sans-serif;
}

.feb__bio {
  padding: 30px 0 0;
}

.feb__heading.feb__heading {
  text-align: center;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.5em;
  background: #ddd;
}

.feb__small-heading {
  color: #004b60;
  font-family: "Lato", sans-serif;
  font-weight: bold;
  text-transform: uppercase;
  font-style: italic;
}

.feb__recommended-reading-link {
  margin: 0 0 30px;
}

.feb__follow-list {
  padding: 0;
}

.feb__follow-item a {
  border: none;
  font-size: 2em;
  padding: 0.2em 0.3em;
  display: block;
}

.feb__follow-item:first-child a {
  margin-left: -0.3em;
}

@media (max-width: 767px) {
  .feb__container {
    margin: 3em -5%;
    padding: 2em 5%;
  }

  .feb__container.spotlight {
    padding: 120px 5% 2em;
  }

  .feb__headshot.feb__headshot {
    width: 100%;
  }

  .feb__headshot-inner {
    width: 80%;
    margin: 0 auto 30px;
    padding-top: 80%;
  }

  .feb__title.feb__title {
    width: 100%;
    padding: 0;
    text-align: center;
  }
}

/* Drop cap */
.drop-cap > .elementor-widget-container > p:first-of-type:first-letter {
  color: #940f2f;
  float: left;
  font-size: 4em;
  line-height: 1em;
  padding-top: 0.05em;
  padding-right: 0.1em;
  padding-left: 0.03em;
}

/* Limit the width of the newsletter subscribe trigger box on Desktop views */
@media (min-width: 1025px) {
  .subscribe-trigger {
    width: 175px !important;
  }
}

/***** Jet Listings *****/
/* This plugin enables easier control over custom post types, filtering, lists, and searching. */

/* Reset spacing on text elements */
.resources-jet-listing .jet-listing-dynamic-field {
  justify-content: flex-start;
  margin-block-start: 0;
  margin-block-end: 0;
}

.resources-jet-listing
  .jet-listing-excerpt
  .jet-listing-dynamic-field__content {
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  margin-bottom: 0px;
}

.swiper-container ::selection {
  background-color: transparent !important;
}

/************************************
    FOOTER
 ************************************/

.elementor-51
  .elementor-element.elementor-element-034ceec
  .elementor-nav-menu--dropdown {
  display: none !important;
}

/* King Grizzly credit */
a.kg-credit {
  color: gray !important;
  border-bottom-color: gray !important;
  border-width: 1px !important;
  font-weight: 300 !important;
}
a.kg-credit:hover {
  color: white !important;
  border-bottom-color: white !important;
  border-width-bottom: 1px !important;
  background-color: transparent !important;
}

/************************************
    GRAVITY FORMS
 ************************************/

.gform_wrapper label.gfield_label,
.gform_wrapper legend.gfield_label {
  color: #174f60;
}

.gform_wrapper.gform_wrapper
  input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {
  background-color: #f4f4f4;
  border: #f4f4f4 solid 1px;
  padding: 0.6em 1em;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-size: 1.2rem;
  line-height: 2em;
  border-radius: 3px;
}

.gform_wrapper.gform_wrapper
  input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]):focus {
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.1);
  }

.gform_wrapper.gform_wrapper.gform_wrapper select {
  border: solid 1px #ccc;
  background-color: #f4f4f4;
  font-size: 1.2rem;
  font-weight: 300;
  font-family: "Roboto", sans-serif;
  padding: 0.95em 1em;
}

.gfield_consent_label {
  color: #174f60;
}

.gform_wrapper.gform_wrapper
  .field_description_below
  .gfield_consent_description,
.gform_wrapper.gform_wrapper .gfield_consent_description {
  font-size: 0.9rem;
  line-height: 1.5;
}

.gform_wrapper.gform_wrapper textarea {
  background: #f4f4f4;
  border: solid 1px #f4f4f4;
  font-size: 1.2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  padding: 0.6em 1em;
}

.gform_wrapper.gform_wrapper textarea:focus {
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.1);
}

.gform_wrapper select option {
  font-weight: 300;
}

.gform_wrapper ul.gfield_checkbox li label,
.gform_wrapper ul.gfield_radio li label {
  font-size: 1.2rem;
  color: #174f60;
  margin-top: 0.4em;
}

.gform_wrapper.gform_wrapper .gform_footer input.button,
.gform_wrapper.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper.gform_wrapper .gform_page_footer input.button,
.gform_wrapper.gform_wrapper .gform_page_footer input[type="submit"] {
  color: white;
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-family: "Lato", sans-serif;
  width: auto;
  padding: 15px 30px;
  margin: 0;
  font-size: 16px;
  line-height: 1 !important;
  background-color: #004B60;
  transform: skew(-21deg);
  border-radius: 6px 0 6px 0;
  border: solid 2px #004B60;
  display: inline-block;
  transition: 0.3s;
  margin-left: 15px;
}

.gform_wrapper.gform_wrapper .gform_footer input.button:hover,
.gform_wrapper.gform_wrapper .gform_footer input[type="submit"]:hover,
.gform_wrapper.gform_wrapper .gform_page_footer input.button:hover,
.gform_wrapper.gform_wrapper .gform_page_footer input[type="submit"]:hover,
.gform_wrapper.gform_wrapper .gform_footer input.button:focus,
.gform_wrapper.gform_wrapper .gform_footer input[type="submit"]:focus,
.gform_wrapper.gform_wrapper .gform_page_footer input.button:focus,
.gform_wrapper.gform_wrapper .gform_page_footer input[type="submit"]:focus {
  background-color: #0099BC;
  border-color: #0099BC;
}

body .gform_wrapper.gform_wrapper ul li.gfield {
  margin-top: 25px;
}

body .gform_wrapper.gform_wrapper .top_label div.ginput_container {
  margin-top: 5px;
}

.gform_wrapper.gform_wrapper li.field_sublabel_below .ginput_complex {
  margin-top: 5px !important;
}

.gform_wrapper.gform_wrapper
  .field_sublabel_above
  .ginput_complex.ginput_container
  label,
.gform_wrapper.gform_wrapper
  .field_sublabel_above
  div[class*="gfield_date_"].ginput_container
  label,
.gform_wrapper.gform_wrapper
  .field_sublabel_above
  div[class*="gfield_time_"].ginput_container
  label,
.gform_wrapper.gform_wrapper
  .field_sublabel_below
  .ginput_complex.ginput_container
  label,
.gform_wrapper.gform_wrapper
  .field_sublabel_below
  div[class*="gfield_date_"].ginput_container
  label,
.gform_wrapper.gform_wrapper
  .field_sublabel_below
  div[class*="gfield_time_"].ginput_container
  label {
  font-size: 0.9rem;
  margin-top: 3px;
}

.gform_wrapper.gform_wrapper .ginput_container span:not(.ginput_price) {
  margin-bottom: 15px;
}

.gform_wrapper.gform_wrapper .gfield_checkbox li,
.gform_wrapper.gform_wrapper .gfield_radio li {
  margin: 0;
}

body .gform_wrapper ul li.field_description_below div.ginput_container_checkbox,
body .gform_wrapper ul li.field_description_below div.ginput_container_radio {
  margin-top: 0;
}

.gform_wrapper.gform_wrapper ul.gfield_checkbox,
.gform_wrapper.gform_wrapper ul.gfield_radio {
  margin: 0;
}

@media (min-width: 767px) {
  .gform_wrapper.gform_wrapper .ginput_complex .ginput_full {
    display: block;
  }
}

/* Remove built in form spacing */
.gform_wrapper {
    margin-top: 0;
    margin-bottom: 0;
}

/* Field spacing */
    body .gform_wrapper.gform_wrapper ul li.gfield,
    body .gform_wrapper textarea {
    margin-top: 13px;
}

/* Adjust checkbox and radio alignment */
.gform_wrapper .gfield_checkbox li input, .gform_wrapper .gfield_checkbox li input[type="checkbox"], .gform_wrapper .gfield_radio li input[type="radio"] {
    display: -moz-inline-stack;
    display: inline-block;
    vertical-align: middle;
    margin-left: 1px;
    margin-right: 5px;
    margin-bottom: 0;
    margin-top: 0.5em;
}

/* Remove left margin on buttons */
.gform_wrapper.gform_wrapper .gform_footer input.button,
.gform_wrapper.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper.gform_wrapper .gform_page_footer input.button,
.gform_wrapper.gform_wrapper .gform_page_footer input[type="submit"] {
  margin-left: 0;
}

/* Flip text to white using .dark-form */
.dark-form .gform_wrapper ul.gfield_checkbox li label,
.dark-form .gform_wrapper ul.gfield_radio li label,
.dark-form  label.gfield_label,
    .dark-form .gform_wrapper .gform_footer a.gform_save_link, .gform_wrapper .gform_page_footer a.gform_save_link {
        color: white !important;
    }

/* Nowrap */
.nowrap {
    white-space: nowrap;
}
/* End Nowrap */

/* Header Nav */
.nav-transparent .jet-menu .jet-menu-item.jet-current-menu-item .top-level-link {
    border-bottom-color: #fff!important;
}

.nav-transparent .top-level-link:hover {
    border-bottom-color: #fff!important;
}

/* Override sticky behavior of site header. */
body.disable-sticky-header[data-elementor-device-mode="desktop"] [data-elementor-type="header"] .ee-sticky--stuck,
body.disable-sticky-header[data-elementor-device-mode="tablet"] [data-elementor-type="header"] .ee-sticky--stuck {
  position: relative !important;
  top: 0 !important;
}
body.disable-sticky-header[data-elementor-device-mode="desktop"] [data-elementor-type="header"] .sticky-spacer,
body.disable-sticky-header[data-elementor-device-mode="tablet"] [data-elementor-type="header"] .sticky-spacer {
  display: none !important;
}

/* Reposition sticky page nav when site nav is not sticky. */
body.disable-sticky-header[data-elementor-device-mode="desktop"] .site-main .ee-sticky--stuck,
body.disable-sticky-header[data-elementor-device-mode="tablet"] .site-main .ee-sticky--stuck {
  top: 0 !important;
}
body.disable-sticky-header.admin-bar[data-elementor-device-mode="desktop"] .site-main .ee-sticky--stuck,
body.disable-sticky-header.admin-bar[data-elementor-device-mode="tablet"] .site-main .ee-sticky--stuck {
  top: 30px !important; /* The height of the desktop WP Admin bar. */
}
@media max-width(782px) {
  body.disable-sticky-header.admin-bar[data-elementor-device-mode="tablet"] .site-main .ee-sticky--stuck {
    top: 46px !important; /* The height of the mobile WP Admin bar. */
  }
}


/*Product Nav Menu*/
.nav-sticky {
    background-color: #fff;
    z-index:99;
}

/* End Product Nav Menu*/


/* Resource Card */

.resource-card-dynamic-terms .svg {
    width: 16px;
}

.resource-card {
    min-height: 525px;
}

.resource-card-dynamic-terms .jet-listing-dynamic-terms{
    min-height: 3.6em;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    text-overflow: ellipsis;
}

.truncate-title .elementor-widget-container .elementor-heading-title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    text-overflow: ellipsis;
}

.truncate-title-line .elementor-widget-container .elementor-heading-title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    text-overflow: ellipsis;
}

.truncate-author .elementor-widget-container .elementor-author-box .elementor-author-box__text
 {
     width: 167px;
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
}

.truncate-author::before {
    content:"By ";
    text-transform: uppercase;
    font-style: italic;
    font-size: 1.05em;
}

.truncate-paragraph .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap
 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    text-overflow: ellipsis;
    min-height: 5.2em;
}

/* End Resource Card */


/* Superscript */

.sup {
    font-size: .70%;
    vertical-align: super;
    position: relative;
}

/* End Superscript */
