/*
 Theme Name:     Divi Child Theme
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
@import url("../Divi/style.css");

/* Fonts */
h1,h2,h3,h4,h5,h6, p, div, em, i, u, strong, a, span {
  font-family: "alibaba-sans", sans-serif;
  font-weight: 400 !important;
  font-style: normal;
}
.medium, .medium *, strong, #top-menu li.current_page_item > a {
  font-weight: 500 !important;
}
h1,h2,h3,h4,h5,h6, h1 *, h2 *, h3 *, h4 *, h5 *, h6 *, #main-footer li a, #main-footer .textwidget * {
  font-weight: 700 !important;
}
h1 span {
  font-weight: 300 !important;
}

/* Animation */
.animated-bottom {
  opacity: 0;
  transform: translate3d(0, 80px, 0);

  transition-property: opacity, transform;
  transition-duration: 600ms;
  transition-timing-function: cubic-bezier(0.625, 0.05, 0, 1);
  transition-delay: var(--stagger-delay, 0ms);
}

.animated-bottom.is-visible, #et_pb_root .animated-bottom {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* Optional: respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .animated-bottom {
    transition: none;
    transform: none;
    opacity: 1;
  }
}


/* Font Sizes */
h1,h1 * {
  font-size: 3vw !important;
  line-height: 3vw !important;
}
h2,h2 * {
  font-size: 2vw !important;
  line-height: 2vw !important;
}
.large-text, .large-text * {
  font-size: 1.5vw !important;
  line-height: 2vw !important;
  font-weight: 700 !important;
}
/* General */
#main-content a.et_pb_button {
  padding: 8px 50px 8px 25px;
}
#main-content a.et_pb_button::after {
  right: 25px;
}
#main-content a.et_pb_button:hover::after {
  transform: rotate(45deg);
  top: 15px;
}
#main-header {
  box-shadow: 0 !important;
}
#main-content .container::before, #sidebar {
  display: none !important;
}
#left-area {
  width: 100% !important;
  padding-right: 0 !important;
}
.et_pb_row, .container, #main-content .et_pb_row:not([class*="et_flex_column"]), .footer-logo {
  width: 95%;
  max-width: 1800px;
}

/* Header */
#et-top-navigation {
  float: none !important;
  width: 100%;
  padding-left: 0 !important;
  text-align: center !important;
}
nav#top-menu-nav, #top-menu, nav.et-menu-nav, .et-menu {
  float: none;
}
#top-menu li:last-child {
  position: absolute;
  right: 0;
  top: 43px;
  padding-right: 0 !important;
}
#top-menu li {
  padding-right: 35px !important;
}
#top-menu li a {
  opacity: 1 !important;
}
#top-menu li a::before {
  display: block;
  content: "";
  width: 0%;
  height: 1px;
  background: white;
  position: absolute;
  bottom: 30px;
  transition: .3s ease-in-out;
}
#top-menu li a:hover::before {
  width: 100%;
}
#top-menu li:nth-child(3) {
  padding-right: 0 !important;
}
#top-menu li:last-child a {
  background: #2ACED4 !important;
  border-radius: 5px;
  padding: 9px 25px 13px !important;
}
#top-menu li:last-child a::after {
  display: inline-block;
  content: "$";
  font-family: ETmodules !important;
  margin-left: 7px;
  font-size: 18px !important;
  position: relative;
  top: 3px;
  transition: .3s ease-in-out;
  transform: rotate(-45deg);
}
#top-menu li:last-child a:hover {
  background: #23A9AD !important;
}
#top-menu li:last-child a:hover::after {
  transform: rotate(0deg);
}
#top-menu li:last-child a::before {
  display: none;
}
#top-header {
  border-bottom: .5px solid rgba(255,255,255,.5);
}
#et-info-phone::before {
  top: 1px;
  margin-right: 5px;
  color: #2ACED4 !important;
}
#et-info-email::before {
  margin-right: 6px;
  top: 1px;
  position: relative;
  color: #2ACED4 !important;
}
#main-header.et-fixed-header #top-menu li:last-child {
  top: 8px;
}
#main-header.et-fixed-header, #top-header.et-fixed-header {
  backdrop-filter: blur(6px) !important;
}
#main-header.et-fixed-header #top-menu li a::before {
  bottom: 14px;
}

/* Dark Header */
.page-id-12 #main-header #top-menu li a, .page-id-12 #top-header * {
  color: black !important;
}
.page-id-12 #main-header #top-menu li:last-child a {
  color: white !important;
}
.page-id-12 #top-header #et-info-phone::before, .page-id-12 #top-header #et-info-mail::before {
  color: #2ACED4 !important;
}
.page-id-12.et_secondary_nav_enabled #page-container #top-header, .page-id-12.et_secondary_nav_enabled #page-container #main-header {
  position: absolute !important;
  background: none !important;
}
a.phone-link::before, a.mail-link::before, a.map-link::before {
  content: "\e090";
  position: relative;
  top: 2px;
  margin-right: 10px;
  font-family: ETmodules !important;
  color: #2ACED4 !important;
}
a.mail-link::before {
  content: "\e076";
}
a.map-link::before {
  content: '' !important;
}
.contact-section {
  padding-top: 250px !important;
  padding-bottom: 150px !important;
}
/* Page */
#front {
  height: 100vh !important;
  align-content: end;
  padding-bottom: 40px !important;
  padding-top: 0 !important;
}
#front::before {
  display: block;
  content: "";
  width: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0,0,0,0.4);
  z-index: 1;
  position: absolute;
}
.bounce {
animation: bounce 2s infinite;
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
.arrow-text, .arrow-text .et_pb_text_inner {
  display: inline-block;
}
.arrow-text::after {
  display: inline-block;
  content: "$";
  font-family: ETmodules !important;
  margin-left: 10px;
  color: #2ACED4 !important;
  font-size: 20px;
  position: relative;
  top: 4px;
}
#actions .et_pb_column {
  height: 80vh !important;
  padding: 0 8vw !important;
}
#actions .et_pb_column h2::before {
  display: block;
  content: "";
  width: 100px;
  height: 1px;
  background: #2ACED4;
  margin: 0 auto 30px;
}
#actions .et_pb_column h2 {
  padding-bottom: 20px;
}
#actions .with_frm_style input, #actions .et_pb_column.light textarea {
  background: none !important;
  border: 1px solid rgba(255,255,255,.7) !important;
  box-shadow: none !important;
  border-radius: 5px !important;
  color: white !important;
  transition: .3s ease-in-out;
}
#actions .with_frm_style input::placeholder {
  color: rgba(255,255,255,.7) !important;
}
#actions .with_frm_style input:focus {
  border: 1px solid white !important;
  box-shadow: 0 0 10px rgba(255,255,255,.8);
}
#actions .frm_button_submit {
  margin: 0 !important;
  width: 100% !important;
  border: none !important;
  box-shadow: none !important;
  background: #2ACED4 !important;
  padding: 10px 10px 12px !important;
  font-size: 15px !important;
}
#actions #frm_field_6_container {
  margin-bottom: 0 !important;
}
#actions .et_pb_column.light h2::before {
  background: white;
}
#actions .et_pb_column.light input, #actions .et_pb_column.light textarea {
  background: rgba(255,255,255,.8) !important;
  border: none !important;
  color: black !important;
}
#actions .et_pb_column.light input::placeholder, #actions .et_pb_column.light textarea::placeholder {
  color: black !important;
} 
#actions .et_pb_column.light .frm_button_submit {
  background: black !important;
  color: white !important;
}

/* Services */
.medium-text, .medium-text * {
  font-size: 1.3vw;
  line-height: 1.6vw;
}
.border-top .et_pb_column {
  border-top: 1px solid #2ACED4 !important;
}
.text-column {
  padding: 8vw !important;
}
/* Footer */
#footer-widgets .footer-widget li {
  padding-left: 0 !important;
}
#footer-widgets .footer-widget li::before {
  display: none !important;
}
#main-footer .footer-widget h4 {
  font-weight: 400 !important;
  margin-bottom: 30px !important;
  padding-top: 10px !important;
  border-top: 1px solid #2ACED4 !important;
}
.et_pb_widget {
  float: none !important;
}
#footer-widgets .footer-widget li {
  margin-bottom: 0 !important;
}
.footer-widget, .footer-widget li, .footer-widget li a, #footer-info, #main-footer .textwidget p {
  line-height: 34px !important;
}
.et_pb_gutters3.et_pb_footer_columns3 .footer-widget {
  width: 32%;
  margin-right: 2%;
  margin-bottom: 250px !important;
}
.et_pb_gutters3.et_pb_footer_columns3 .footer-widget:nth-child(3n) {
  margin-right: 0;
}
.footer-logo {
  margin: auto;
}
.footer-logo img {
  width: 200px;
  margin-bottom: 15px;
}
.footer-widget a {
  transition: .3s ease-in-out;
}
#footer-widgets .footer-widget a:hover {
  padding-left: 10px !important;
}

/* Mobile */
@media only screen and (max-width: 1000px) {
  /* General */
  .et_pb_row, .container, #main-content .et_pb_row:not([class*="et_flex_column"]), .footer-logo {
    width: 90%;
    max-width: 1800px;
  }
  #front .et_flex_row {
    --vertical-gap: 0px !important;
  }
  #actions.et_flex_section, #actions .et_pb_row {
    row-gap: 0 !important;
    display: block !important;
  }
  /* Header */
  ul#mobile_menu {
    background: rgba(0,0,0,.7) !important;
    backdrop-filter: blur(6px) !important;
  }
  /* Fonts */
  h1, h1 * {
    font-size: 30px !important;
    line-height: 36px !important;
  }
  #main-footer .footer-widget h4, body, .et_pb_column_1_2 .et_quote_content blockquote cite, .et_pb_column_1_2 .et_link_content a.et_link_main_url, .et_pb_column_1_3 .et_quote_content blockquote cite, .et_pb_column_3_8 .et_quote_content blockquote cite, .et_pb_column_1_4 .et_quote_content blockquote cite, .et_pb_blog_grid .et_quote_content blockquote cite, .et_pb_column_1_3 .et_link_content a.et_link_main_url, .et_pb_column_3_8 .et_link_content a.et_link_main_url, .et_pb_column_1_4 .et_link_content a.et_link_main_url, .et_pb_blog_grid .et_link_content a.et_link_main_url, body .et_pb_bg_layout_light .et_pb_post .post-content, body .et_pb_bg_layout_dark .et_pb_post .post-content {
    font-size: 14px !important;
  }
  .large-text, .large-text *, .footer-widget, .footer-widget li, .footer-widget li a, #footer-info, .footer-widget p, #main-footer .textwidget p, .medium-text, .medium-text * {
    font-size: 17px !important;
    line-height: 22px !important;
  }
  h2, h2 * {
    font-size: 24px !important;
    line-height: 28px !important;
  }

  /* Page */
  #front {
    height: 70vh !important;
  }
  .page-id-12 .mobile_menu_bar::before {
    color: black !important;
  }
  .contact-section {
    padding-top: 200px !important;
    padding-bottom: 0 !important;
  }
}