.pf20 {
  padding: 20px;
}

.pl10 {
  padding-left: 10px;
}

.pl20 {
  padding-left: 20px;
}

.ph35 {
  padding-left: 35px;
  padding-right: 35px;
}

.pt5 {
  padding-top: 5px;
}

.pb25 {
  padding-bottom: 25px;
}

.mt15 {
  margin-top: 15px;
}

.mb25 {
  margin-bottom: 25px;
}

.pointer {
  cursor: pointer;
}

.tpl_home_slider .skewed-wrapper {
  transform: skewX(-20deg);
}

.tpl_home_slider .skewed-wrapper h1 {
  background: white;
  padding: 5px 15px;
  margin-bottom: 5px;
  margin-right: 10px;
}

.tpl_home_slider .skewed-wrapper .subtitle {
  background: white;
  padding: 5px 15px;
  display: inline-block;
  color: #004688;
  font-size: 30px;
}

.tpl_home_slider_with_subtitle .emphasis-title h1 {
  font-size: 40px;
  word-break: break-word;
  max-width: 650px;
}

.tpl_home_slider_with_subtitle .emphasis-title h2 {
  font-size: 30px !important;
  color: #1e85e8;
}

.tpl_home_slider_with_subtitle .emphasis-title h3 {
  font-size: 2em;
}

.tpl_home_slider_with_subtitle h1 {
  color: #FFF;
  font-weight: 900;
  text-shadow: 0 7px 10px rgba(0, 0, 0, 0.07), 0 4px 4px rgba(0, 0, 0, 0.2);
}

.tpl_home_slider_with_subtitle .title-secondary {
  color: #004688;
  font-weight: 900;
  margin-top: -20px;
}

.tpl_home_slider_with_subtitle p.subtitle {
  font-weight: 300;
  text-shadow: 0 -4px 20px rgba(0, 0, 0, 0.25);
  background: white;
  display: inline-block;
  padding: 5px 15px;
  transform: skewX(-20deg);
}

/* The following media query is used to remove the effect of the .vertical-middle class and display the title and subtitle on top of the page. */
@media (max-width: 575px) {
  .tpl_home_slider .vertical-middle, .tpl_home_slider_with_subtitle .vertical-middle {
    justify-content: flex-start;
  }
}

@media (max-width: 450px) {
  .tpl_home_slider h1, .tpl_home_slider .subtitle {
    font-size: 1.7rem !important;
  }
}

@media (max-width: 441px) {
  .tpl_home_slider h1, .tpl_home_slider .subtitle {
    font-size: 1.6rem !important;
  }
}

@media (max-width: 427px) {
  .tpl_home_slider h1, .tpl_home_slider .subtitle {
    font-size: 1.5rem !important;
  }
}

@media (max-width: 405px) {
  .tpl_home_slider h1, .tpl_home_slider .subtitle {
    font-size: 1.4rem !important;
  }
}

@media (max-width: 387px) {
  .tpl_home_slider h1, .tpl_home_slider .subtitle {
    font-size: 1.3rem !important;
  }
  .tpl_home_slider_with_subtitle .emphasis-title p {
    font-size: inherit;
  }
}

.tpl-icons-with-cta-grid .cta-button {
  color: #413b3d;
}

.tpl-icons-with-cta-grid .hoverable-section-with-icon .content-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.tpl-icons-with-cta-grid .hoverable-section-with-icon img {
  width: 50px;
  height: 50px;
  margin-bottom: 20px;
}

.testimonials-carousel:before {
  content: "\E7AD";
  font-family: 'font-icons';
  position: absolute;
  top: -8px;
  left: 50px;
  font-size: 100px;
  color: rgba(var(--themecolorrgba), 0.08);
}

.card-hover-gray:hover {
  background: #dfdfdf;
}

.feature-box .fbox-icon-with-bg {
  background-color: transparent;
  background-image: url("images/featured-images/2.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  color: var(--themecolor, #0F66DD);
  background-size: 70px 70px;
  width: 80px;
  height: 80px;
}

.feature-box .fbox-icon-with-bg i {
  background: transparent;
  color: var(--themecolor, #0F66DD);
  line-height: 80px;
}

@media (min-width: 992px) {
  .team-member-image {
    margin-bottom: -35%;
  }
}

.disclaimer-box {
  border: 1px solid #525975;
  padding-top: 15px;
}

.disclaimer-box p {
  margin-bottom: 15px;
}

.scroll-indicator {
  display: none;
  position: fixed;
  background: rgba(0, 0, 0, 0.3);
  z-index: 599;
  font-size: 1.25rem;
  text-align: center;
  color: #ffffff;
  top: auto;
  right: auto;
  left: 16px;
  bottom: 65px;
  padding: 15px 10px;
}

.scroll-indicator span {
  -webkit-animation: scroll-hint-animation 2.5s infinite;
          animation: scroll-hint-animation 2.5s infinite;
}

@-webkit-keyframes scroll-hint-animation {
  0% {
    transform: translate(0, -10px);
  }
  50% {
    transform: translate(0px, 15px);
  }
  100% {
    transform: translate(0, -10px);
  }
}

@keyframes scroll-hint-animation {
  0% {
    transform: translate(0, -10px);
  }
  50% {
    transform: translate(0px, 15px);
  }
  100% {
    transform: translate(0, -10px);
  }
}

/* Navbar overrides. */
#header {
  /* Handle cases where there are too many menu entries. */
}

#header.many-entries nav.primary-menu {
  /* Reduce the padding of the first link of the menu so that it fits the navbar space, leave the rest untouched. */
}

@media (min-width: 992px) {
  #header.many-entries nav.primary-menu .menu-container > .menu-item > .menu-link:first-child {
    padding: 39px 5px;
  }
}

@media (min-width: 1200px) {
  #header.many-entries nav.primary-menu .menu-container > .menu-item > .menu-link:first-child {
    padding: 39px 8px;
  }
}

.home-map-container {
  position: relative;
  height: 400px;
}

.home-map-container .container {
  display: flex;
  align-items: center;
  height: 100%;
}

.home-map-container .container .address-container {
  background: white;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
}

.home-map-container .home-map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 400px;
}
