/* ============================================================
   FILE: _header.scss
   Variables, @mixin, and @extend resolved to plain CSS
   ============================================================ */
   /*set the Divi menu dropdown auto width*/
@media only screen and (min-width: 981px) {
	.nav li ul {
		width: fit-content;
		display: flex;
		flex-direction: column;
	}
	.nav li li {
		white-space: nowrap;
	}
	.nav li li a {
		width: auto !important;
	}
}

/* --- DIVI CLOUD MENU MODULES --- */
#rf-body .rf-centered-inline--menu .et_pb_menu__logo a:hover,
#rf-body .rf-left-aligned--menu .et_pb_menu__logo a:hover {
  opacity: 1;
}
#rf-body .rf-centered-inline--menu li a,
#rf-body .rf-left-aligned--menu li a {
  font-size: 1.3125rem;
  font-size: clamp(0.75rem, calc(0.75rem + ((1vw - 0.48rem) * 0.6944)), 1.25rem);
}
#rf-body .rf-centered-inline--menu .et_pb_menu__logo-wrap,
#rf-body .rf-left-aligned--menu .et_pb_menu__logo-wrap {
  margin-bottom: 0px;
}
#rf-body .rf-centered-inline--menu .et_pb_menu_inner_container,
#rf-body .rf-left-aligned--menu .et_pb_menu_inner_container {
  display: flex;
}
@media screen and (max-width: 980px) {
  #rf-body .rf-centered-inline--menu .et_pb_menu__wrap,
  #rf-body .rf-left-aligned--menu .et_pb_menu__wrap {
    justify-content: flex-end;
  }
}

/* Mobile menu open: icon becomes X */
#rf-body .mobile_nav.opened .mobile_menu_bar::before {
  content: "\4d";
}

/* --- NAV BUTTON LINKS (tablet and up) --- */
@media (min-width: 980px) {
  #rf-body li.btn {
    display: flex;
    align-items: center;
  }
  #rf-body li.btn a {
    color: #274156 !important;
    background-color: transparent;
    height: fit-content;
    padding: 1.5rem 1.5rem !important;
    box-shadow: 0 0 0 0.0625rem inset #274156;
  }
  #rf-body li.btn a:hover {
    background-color: #274156 !important;
    color: #fff !important;
    opacity: 1 !important;
  }
}

/* --- CONTAINER WIDTHS --- */
#main-header .container,
#top-header .container {
  max-width: 1400px;
  width: 90.09%;
}

/* --- AUTO-WIDTH NAV DROPDOWNS --- */
@media only screen and (min-width: 981px) {
  .nav li ul {
    width: fit-content;
    display: flex;
    flex-direction: column;
  }
  .nav li li {
    white-space: nowrap;
  }
  .nav li li a {
    width: auto !important;
  }
}

/* --- TOP HEADER --- */
#top-header .container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
#top-header #et-info-phone a {
  font-weight: 500;
  transition: all 0.25s ease-in-out;
}
#top-header #et-info-phone a:hover {
  opacity: 0.7;
}
#top-header a {
  font-size: 15px !important;
}
#top-header #et-secondary-menu {
  float: none;
}

/* --- MAIN HEADER --- */
#main-header .et_pb_menu__wrap {
  display: flex;
  justify-content: flex-end;
}
#main-header #menu-top-menu {
  display: flex;
  align-items: center;
}

/* Main header button nav links (@extend .rf-button--primary, tablet and up) */
@media (min-width: 980px) {
  #main-header li.btn a {
    display: inline-flex;
    justify-content: center;
    position: relative;
    border: none;
    font-size: 1rem;
    font-size: clamp(0.85rem, calc(0.85rem + ((1vw - 0.48rem) * 0.2083)), 1rem);
    font-weight: 400;
    letter-spacing: 1px;
    padding: 0.75rem 1.5rem !important;
    text-transform: capitalize;
    border-radius: 5px;
    transition: all 0.25s ease-in-out;
    font-family: "Geologica", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
    line-height: 1.5rem !important;
    text-align: center;
    text-shadow: none;
    cursor: pointer;
    color: #fff;
    background: #274156;
    background: linear-gradient(90deg, rgba(39, 65, 86, 1) 0%, #6b879c 100%);
    color: #fff !important;
    height: fit-content;
  }
  #main-header li.btn a:hover {
    color: #fff !important;
    opacity: 1 !important;
    background-color: #6b879c !important;
    transform: translateY(-0.25rem);
  }
}

#main-header #logo {
  max-width: 25%;
}
@media (max-width: 767px) {
  #main-header #logo {
    max-width: 100%;
  }
}

#et-top-navigation {
  padding-top: 42px;
}

/* --- MAIN MENU --- */
#main-header #top-menu {
  display: flex;
  align-items: center;
}
#main-header #top-menu li a {
  font-size: clamp(0.75rem, calc(0.75rem + ((1vw - 0.48rem) * 0.6944)), 1.25rem);
}
#main-header #top-menu li ul {
  width: auto;
}
#main-header #top-menu li ul a {
  width: auto;
  white-space: nowrap;
}

/* --- MOBILE HEADER (max 980px) --- */
@media (max-width: 980px) {
  #main-header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
  }
  #main-header .logo_container {
    position: static;
  }
  #main-header #et-top-navigation {
    padding-left: 0px !important;
  }
  #main-header .logo_container #logo {
    max-width: unset;
    max-height: 100px;
  }
  #main-header .et_header_style_split #logo {
    max-width: unset;
  }
  #main-header #et_search_icon,
  #main-header .select_page {
    display: none;
  }
  #main-header .mobile_menu_bar::before {
    color: rgba(0, 0, 0, 0.6);
    font-size: 3rem;
    position: absolute;
    transform: translate(-50px, -22px);
  }
  #main-header .mobile_nav.opened .mobile_menu_bar::before {
    content: "\4d";
  }
  #main-header .mobile_nav {
    padding: 0 !important;
  }
  #main-header #et_mobile_nav_menu {
    margin: 0;
  }

  .et_header_style_centered #main-header .container {
    display: block;
    text-align: left;
  }
  .et_header_style_centered #main-header div#et-top-navigation {
    position: absolute;
    bottom: auto;
    top: 0;
    padding-top: 0;
  }
  .et_header_style_centered #main-header #et_mobile_nav_menu {
    margin-top: 0;
  }
  .et_header_style_centered #main-header #et_mobile_nav_menu .mobile_nav {
    padding: 0;
  }
}


/* ============================================================
   FILE: _fullwidth-header.scss
   Variables resolved to plain CSS
   ============================================================ */

#rf-body .et_pb_fullwidth_header {
  /* Intentionally empty — base styles only */
}

#rf-body .et_pb_fullwidth_header_container {
  margin: auto;
  max-width: 1920px;
  width: 90.09%;
}

@media screen and (max-width: 400px) {
  #rf-body .et_pb_fullwidth_header_container {
    margin-left: auto;
    margin-right: auto;
  }
  #rf-body .et_pb_fullwidth_header {
    padding-top: 0px;
    padding-bottom: 0px;
  }
}


/* ============================================================
   FILE: _footer.scss
   Variables and @mixin resolved to plain CSS
   ============================================================ */

/* --- FOOTER WIDGETS --- */
#main-footer #footer-widgets {
  display: block;
  justify-content: center;
}
@media screen and (min-width: 980px) {
  #main-footer #footer-widgets {
    display: flex;
  }
}
@media screen and (max-width: 980px) {
  #main-footer #footer-widgets {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}

#main-footer .footer-widget {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#main-footer .footer-widget li {
  padding-left: 0;
}
#main-footer .footer-widget li::before {
  display: none;
}
#main-footer .footer-widget .widget_media_image {
  padding-bottom: 0;
  margin-bottom: 20px;
}

/* --- BOTTOM BAR (@include font-body, "small") --- */
#footer-info {
  font-family: "Geologica", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  font-size: 0.875rem;
  line-height: 1.3125rem;
  float: none;
  padding: 0.75rem 0;
  text-align: center;
}
#footer-info a {
  font-size: 14px;
}


/* ============================================================
   FILE: _forms.scss
   Variables, @mixin, and @extend resolved to plain CSS
   ============================================================ */

/* --- RECAPTCHA NOTICE --- */
.recaptcha {
  font-size: 0.8rem !important;
  opacity: 0.7;
}
.recaptcha * {
  font-size: 0.8rem !important;
}

/* --- GENERAL FORM OVERRIDES --- */
.gform_validation_errors {
  text-transform: none;
}

/* --- GRAVITY FORMS WRAPPER --- */
.gform_wrapper {
  background-color: #ffffff;
  padding: 2rem;
  border-radius: 15px;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.gform_wrapper input {
  border-radius: 5px;
  border: 1px solid #bbb !important;
  background-color: #f8fafc;
}

/* --- FORM ERROR AND INPUT BORDERS --- */
#et-main-area .gform_wrapper .gform_submission_error {
  font-family: "Geologica", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  line-height: 1.5rem;
  font-weight: 400;
  font-size: 1rem;
}
#et-main-area .gform_wrapper input[type="number"],
#et-main-area .gform_wrapper input[type="text"],
#et-main-area .gform_wrapper input[type="tel"],
#et-main-area .gform_wrapper input[type="email"],
#et-main-area .gform_wrapper input[type="date"],
#et-main-area .gform_wrapper textarea {
  border: 1px solid #bbb !important;
}

/* --- HIDE REQUIRED FIELDS HEADING --- */
.gform_heading {
  display: none;
}

/* --- HORIZONTAL NEWSLETTER LAYOUT --- */
#et-main-area .gform_wrapper .gf_simple_horizontal {
  position: relative;
  display: flex;
  justify-content: center;
}
#et-main-area .gform_wrapper .gf_simple_horizontal,
#et-main-area .gform_wrapper .gf_simple_horizontal * {
  margin: 0 auto;
  max-width: 838px;
  width: 100%;
  height: 3rem;
}
#et-main-area .gform_wrapper .gf_simple_horizontal .gfield {
  padding: 0;
}
#et-main-area .gform_wrapper .gf_simple_horizontal input {
  padding: 0.75rem 1.5rem;
  background-color: transparent;
  border: 1px solid white;
  color: white;
}
#et-main-area .gform_wrapper .gf_simple_horizontal input::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
#et-main-area .gform_wrapper .gf_simple_horizontal .gform_footer {
  position: absolute;
  width: 25%;
  right: 0;
}

/* Newsletter submit button (@extend .rf-button--newsletter) */
#et-main-area .gform_wrapper .gf_simple_horizontal #gform_submit_button_2 {
  color: #fff !important;
  background-color: transparent;
  height: fit-content;
  border-left: 1px solid white;
}
#et-main-area .gform_wrapper .gf_simple_horizontal #gform_submit_button_2:hover {
  background-color: #fff !important;
  color: #000000 !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 0.0625rem inset #fff;
}


/* ============================================================
   FILE: _news.scss
   Variables and @extend resolved to plain CSS
   ============================================================ */

#rf-body .rf-news--header .header-content .et_pb_module_header {
  font-size: 3rem;
  font-size: clamp(2rem, calc(2rem + ((1vw - 0.48rem) * 1.3889)), 3rem) !important;
}

#rf-body .rf-news .entry-featured-image-url {
  max-width: 550px;
}

#rf-body .rf-news .entry-title {
  line-height: 0.5em;
}
#rf-body .rf-news .entry-title a {
  font-weight: 700;
  line-height: 1em;
  letter-spacing: 0px;
  text-transform: none;
  font-size: 1.5rem !important;
  font-family: "Telex", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
}

/* More link (@extend .rf-button--outline + @extend .et_pb_button, with overrides) */
#rf-body .rf-news a.more-link {
  display: inline-flex;
  justify-content: center;
  position: relative;
  border: none;
  font-size: 1rem;
  font-size: clamp(0.875rem, calc(0.875rem + ((1vw - 0.48rem) * 0.2083)), 1rem);
  font-weight: 400;
  text-transform: capitalize;
  border-radius: 5px;
  transition: all 0.25s ease-in-out;
  font-family: "Geologica", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  line-height: 1.5rem !important;
  text-align: center;
  text-shadow: none;
  cursor: pointer;
  color: #274156 !important;
  background-color: transparent;
  height: fit-content;
  letter-spacing: 2px;
  box-shadow: none !important;
  color: white !important;
  margin-top: 1.5rem;
}
#rf-body .rf-news a.more-link:hover {
  opacity: 80% !important;
}

#rf-body .et_pb_post_content h1,
#rf-body .et_pb_post_content h2,
#rf-body .et_pb_post_content h3,
#rf-body .et_pb_post_content h4,
#rf-body .et_pb_post_content h5,
#rf-body .et_pb_post_content h6 {
  text-transform: capitalize;
}
