/* Custom CSS */

#sp-top-bar .logo img.sp-default-logo,
#sp-logo .logo img.sp-default-logo,
#sp-header .logo img.sp-default-logo {
  max-width: 100%;
  height: auto;
}

#sp-top-bar .logo img[src*="logo_tfmg.png"],
#sp-logo .logo img[src*="logo_tfmg.png"],
#sp-header .logo img[src*="logo_tfmg.png"] {
  width: 1000px;
}

#sp-top-row,
#sp-top-bar,
body.main-homepage #sp-top-bar,
body.homepage-dynamic #sp-top-bar,
body.homepage-unique #sp-top-bar {
  background-color: #b65424;
  background-image: url("/images/terraforming/tfmg_header.png") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
  height: 415px !important;
  min-height: 415px !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: flex;
  align-items: flex-start;
}

#sp-top-row > .container,
#sp-top-bar > .container {
  width: 100%;
}

#sp-top-row > .row {
  width: calc(100% - 30px);
  max-width: 1320px;
  margin-right: auto;
  margin-left: auto;
}

#sp-top-row .row,
#sp-top-bar .row {
  align-items: center;
  min-height: 44px;
}

#sp-top1,
#sp-top-login {
  position: relative;
  z-index: 5;
}

#sp-top1 .social-icons {
  display: flex;
  gap: 16px;
  align-items: center;
  line-height: 1;
  margin: 0;
  padding: 16px 0 0;
}

#sp-top1 .social-icons a,
#sp-top-login .sp-login a {
  color: rgba(255, 255, 255, 0.86);
}

#sp-top1 .social-icons a:hover,
#sp-top1 .social-icons a:focus,
#sp-top-login .sp-login a:hover,
#sp-top-login .sp-login a:focus {
  color: #ffffff;
}

#sp-top-login {
  text-align: right;
}

#sp-top-login .sp-module,
#sp-top-login .sp-travelia-login,
#sp-top-login .sp-login,
#sp-top-login .info-text {
  display: inline-block;
}

#sp-top-login .info-content {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  padding-top: 14px;
  font-size: 13px;
  line-height: 1;
  text-transform: uppercase;
}

#sp-top-login .info-content .fa-user-o::before {
  content: "\f007";
}

#sp-top-login .info-content::after {
  content: "Inloggen";
}

@media (min-width: 992px) {
  #sp-top-row #sp-top1,
  #sp-top-row #sp-top-login {
    flex: 0 0 25%;
    max-width: 25%;
  }

  #sp-top-row #sp-top-login {
    margin-left: auto;
  }
}

section#sp-logo {
  position: relative;
  z-index: 2;
  min-height: 415px;
  margin-top: -415px;
  background: transparent !important;
}

section#sp-logo,
section#sp-logo > .container,
section#sp-logo > .container > .row,
section#sp-logo .sp-column {
  background-color: transparent !important;
  background-image: none !important;
}

section#sp-logo > .container {
  width: 100%;
}

section#sp-logo > .container > .row {
  justify-content: center;
}

section#sp-logo div[id="sp-logo"] {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

section#sp-logo .logo {
  margin-top: 75px;
  text-align: center;
  display: block !important;
  width: 100%;
}

section#sp-logo .logo a {
  display: block !important;
  width: 100%;
  text-align: center;
}

section#sp-logo .logo img.sp-default-logo {
  display: block !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

@media (min-width: 992px) {
  section#sp-logo .logo img[src*="logo_tfmg_mobiel"] {
    display: none !important;
  }

  section#sp-logo .logo img[src*="logo_tfmg.png"] {
    display: block !important;
  }
}

@media (max-width: 991.98px) {
  section#sp-logo .logo img[src*="logo_tfmg.png"] {
    display: none !important;
  }

  section#sp-logo .logo img[src*="logo_tfmg_mobiel"] {
    display: block !important;
    width: min(640px, 90vw);
  }
}

@media (min-width: 1200px) {
  .container,
  .container-lg,
  .container-xl,
  .container-xxl,
  .sppb-container,
  .sppb-row-container {
    width: calc(100% - 30px);
    max-width: 1320px !important;
  }

  #sp-header > .container,
  #sp-menu > .container {
    width: calc(100% - 30px) !important;
    max-width: 1320px !important;
  }

  #sp-header > .container > .row {
    width: auto;
    max-width: none;
  }

  #sp-header .sp-megamenu-wrapper {
    display: flex;
    align-items: center;
    width: 100% !important;
    max-width: none !important;
  }

  #sp-header .sp-megamenu-parent {
    display: flex !important;
    flex: 1 1 auto;
    width: auto !important;
    max-width: none !important;
    justify-content: flex-start;
    padding-right: 45px;
  }

  #sp-header .sp-megamenu-parent > li {
    float: none !important;
  }

  #sp-header .sp-megamenu-wrapper > .icon-top-wrapper,
  #sp-header .sp-megamenu-wrapper > .top-search-wrapper,
  #sp-header .sp-megamenu-wrapper > .sp-module,
  #sp-header #sp-top1,
  #sp-header #sp-top2 {
    margin-left: auto !important;
    margin-right: 0 !important;
    text-align: right;
  }

  #sp-header .icon-top-wrapper {
    margin-right: 0 !important;
  }
}

#sp-page-builder .sppb-slider-wrapper .sppb-slideshow-fullwidth-item-bg,
#sp-page-builder div.sppb-addon-articles-slider .sppb-addon-article,
#sp-page-builder .sppb-addon-articles .sppb-addon-article,
#sp-page-builder .sppb-addon-articles .sppb-addon-article .sppb-img-wrapper,
#sp-page-builder .sppb-addon-articles .sppb-addon-article .sppb-article-img-wrap,
#sp-page-builder .sppb-addon-articles-slider .sppb-addon-article .sppb-img-wrapper,
#sp-page-builder .sppb-img-wrapper,
#sp-page-builder .sppb-article-img-wrap,
#sp-page-builder .sppb-addon-single-image-container,
#sp-page-builder .travelia-tab-image,
#sp-page-builder .popular-travel-story,
#sp-page-builder .popular-travel-story .latestnews > div,
#sp-page-builder .popular-travel-story .latestnews .article-list-img {
  border: 0 !important;
  box-shadow: none !important;
}

#sp-page-builder div.sppb-addon-articles-slider .sppb-addon-article,
#sp-page-builder .sppb-img-wrapper,
#sp-page-builder .sppb-article-img-wrap,
#sp-page-builder .sppb-addon-single-image-container,
#sp-page-builder .travelia-tab-image,
#sp-page-builder .popular-travel-story,
#sp-page-builder .popular-travel-story .latestnews > div,
#sp-page-builder .popular-travel-story .latestnews .article-list-img {
  background: transparent !important;
  padding: 0 !important;
}
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
#sp-page-builder .sppb-addon-title,
#sp-page-builder .sppb-addon-title span,
#sp-page-builder .sppb-addon-content,
#sp-page-builder .sppb-addon-text,
#sp-page-builder .sppb-article-introtext,
#sp-page-builder .sppb-addon-articles h3 a,
#sp-page-builder .article-title,
#sp-page-builder .article-title a,
#sp-page-builder .travelia-news-title,
article.item-page .entry-header h2,
article.item-page .entry-header h2 a,
.entry-header h2,
.entry-header h2 a {
  letter-spacing: 0 !important;
}

body,
body p,
body li,
body td,
body th,
body input,
body textarea,
body select,
body button,
#sp-page-builder,
#sp-page-builder .sppb-addon-content,
#sp-page-builder .sppb-addon-text,
#sp-page-builder .sppb-article-introtext,
#sp-page-builder .sppb-article-meta,
#sp-page-builder .sppb-meta-date,
#sp-page-builder .sppb-btn-link,
#sp-page-builder .btn-link,
#sp-page-builder .article-info,
#sp-page-builder .tags a,
#sp-page-builder .pagination li a,
#sp-page-builder .qoutation,
#sp-page-builder .sppb-animated-number,
#sp-bottom,
#sp-bottom .sp-module,
#sp-bottom .sp-module-content,
#sp-bottom ul.nav.menu li a,
#sp-bottom3 .sppb-addon-text-block .sppb-addon-content,
.sp-copyright {
  font-family: "Roboto", sans-serif !important;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
#sp-page-builder .sppb-addon-title,
#sp-page-builder .sppb-title-heading,
#sp-page-builder .sppb-addon-title span,
#sp-page-builder .sppb-addon-header .sppb-addon-title,
#sp-page-builder .sppb-addon-articles h3,
#sp-page-builder .sppb-addon-articles h3 a,
#sp-page-builder .article-title,
#sp-page-builder .article-title a,
#sp-page-builder .travelia-news-title,
#sp-page-builder .travelia-tab-title h2,
#sp-page-builder .speasyimagegallery-album-title,
article.item-page .entry-header h2,
article.item-page .entry-header h2 a,
.entry-header h2,
.entry-header h2 a {
  font-family: "Roboto Slab", serif !important;
}

#sp-bottom a,
#sp-bottom .sppb-addon-content a,
#sp-bottom .sp-module-content a {
  color: #fff !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(255,255,255,0.7) !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

#sp-bottom a:hover,
#sp-bottom a:focus,
#sp-bottom .sppb-addon-content a:hover,
#sp-bottom .sppb-addon-content a:focus,
#sp-bottom .sp-module-content a:hover,
#sp-bottom .sp-module-content a:focus {
  color: #fff !important;
  text-decoration-color: #fff !important;
}

span.sp-copyright {
  padding-left: 1px !important;
}

#sp-header .sp-megamenu-parent > li > a::before,
#sp-header .sp-megamenu-parent > li > span::before {
  height: 3px;
  background: #e87513;
}

p.readmore > a.btn,
.readmore > a.btn {
  border-color: #e87513;
  background-color: #e87513;
  color: #fff;
}

p.readmore > a.btn:hover,
p.readmore > a.btn:focus,
.readmore > a.btn:hover,
.readmore > a.btn:focus {
  border-color: #c95f10;
  background-color: #c95f10;
  color: #fff;
}
#sp-page-builder .sppb-slider-wrapper .sppb-slideshow-fullwidth-item-text .tfmg-launch-countdown {
  display: block;
  color: #fff !important;
  font-size: 72px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: none;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
}

@media (max-width: 767px) {
  #sp-page-builder .sppb-slider-wrapper .sppb-slideshow-fullwidth-item-text .tfmg-launch-countdown {
    font-size: 22px;
  }
}
/* Full-width homepage without empty right column. */
body.itemid-437 #sp-main-body #sp-component {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

body.itemid-437 #sp-main-body #sp-right {
    display: none !important;
}

/* Full-width content when the right column has no modules. */
#sp-main-body .row:has(> #sp-right > .sp-column:empty) > #sp-component {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

#sp-main-body .row:has(> #sp-right > .sp-column:empty) > #sp-right {
    display: none !important;
}

/* Keep right-position modules available when assigned. */
body:not(.com-tfmcards) #sp-main-body .row:has(> #sp-right .sp-module) > #sp-right {
    display: block !important;
}

@media (min-width: 992px) {
    body:not(.com-tfmcards) #sp-main-body .row:has(> #sp-right .sp-module) > #sp-component {
        flex: 0 0 75% !important;
        max-width: 75% !important;
        width: 75% !important;
    }

    body:not(.com-tfmcards) #sp-main-body .row:has(> #sp-right .sp-module) > #sp-right {
        flex: 0 0 25% !important;
        max-width: 25% !important;
        width: 25% !important;
    }
}

/* Add breathing room between stacked right-column modules. */
#sp-right .sp-column > * + * {
  margin-top: 25px;
}

/* Keep right-column menu modules vertical. */
#sp-right ul.nav.menu,
#sp-right ul.mod-menu.nav {
  flex-direction: column;
  align-items: stretch;
}

#sp-right ul.nav.menu > li,
#sp-right ul.mod-menu.nav > li {
  width: 100%;
  margin-top: 10px;
}

/* Keep Helix3 right-aligned megamenus opening to the right of their parent item. */
.sp-megamenu-parent.menu-slide-down .sp-has-child > .sp-dropdown.sp-dropdown-main.sp-dropdown-mega.sp-menu-right {
  left: 0;
  right: auto;
}
