/* ========================= Template ==================== */

/*.footer-top-wrap2 {*/
/*  -webkit-box-pack: justify;*/
/*  -webkit-justify-content: space-between;*/
/*  -ms-flex-pack: justify;*/
/*  justify-content: space-between;*/
/*  -webkit-box-align: center;*/
/*  -webkit-align-items: center;*/
/*  -ms-flex-align: center;*/
/*  align-items: center;*/
/*  grid-column-gap: 4vw;*/
/*  -ms-grid-columns: 1fr 0.25fr;*/
/*  grid-template-columns: 1fr 0.25fr;*/
/*  -ms-grid-rows: auto;*/
/*  grid-template-rows: auto;*/
/*}*/

/*.footer-links-wrap2 {*/
/*  display: -ms-grid;*/
/*  display: grid;*/
/*  -webkit-box-pack: center;*/
/*  -webkit-justify-content: center;*/
/*  -ms-flex-pack: center;*/
/*  justify-content: left;*/
/*  justify-items: start;*/
/*  grid-auto-flow: column;*/
/*  grid-auto-columns: -webkit-max-content;*/
/*  grid-auto-columns: max-content;*/
/*  grid-column-gap: 9rem;*/
/*  grid-row-gap: 0px;*/
/*  -ms-grid-columns: -webkit-max-content;*/
/*  -ms-grid-columns: max-content;*/
/*  grid-template-columns: -webkit-max-content;*/
/*  grid-template-columns: max-content;*/
/*  -ms-grid-rows: auto;*/
/*  grid-template-rows: auto;*/
/*  white-space: normal;*/
/*}*/


/*@media screen and (max-width: 991px) {*/
/*  .footer-top-wrap2 {*/
/*    -webkit-box-pack: center;*/
/*    -webkit-justify-content: center;*/
/*    -ms-flex-pack: center;*/
/*    justify-content: center;*/
/*    justify-items: center;*/
/*    grid-row-gap: 3rem;*/
/*    -ms-grid-columns: 1fr;*/
/*    grid-template-columns: 1fr;*/
/*  }*/
/*}*/

/*@media screen and (max-width: 767px) {*/
/*  .footer-links-wrap2 {*/
/*    justify-items: center;*/
/*    grid-column-gap: 24px;*/
/*    grid-row-gap: 24px;*/
/*  }*/
/*}*/

/*@media screen and (max-width: 479px) {*/
/*  .footer-links-wrap2 {*/
/*    !*display: none;*!*/
/*    grid-auto-flow: row;*/
/*  }*/
/*}*/

.w-input.no-border {
  border: none;
}

@media screen and (min-width: 992px) {
  .w-nav-overlay {
    display: none !important;
    height: 0 !important;
  }
}

.w-button,
.button-with-icon {
  border-radius: 35px;
}

.w-button.pad-50 {
  padding-left: 50px;
  padding-right: 50px;
}

.w-button.pad-100 {
  padding-left: 100px;
  padding-right: 100px;
}


/* FAQ */
.faq-question {
  user-select: none;
  -webkit-user-select: none;
}

.faq-accordion .faq-icon {
  transform: rotateZ(0deg);
  transition: transform .5s;
}

.faq-accordion.open .faq-icon {
  transform: rotateZ(179.9deg);
}

/* Select */

.w-select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  padding-right: 2.2em;
  background-image: url('/content/static/images/v2/6168d2e454973af7dd55449c_icon_chevron.svg');
  background-repeat: no-repeat;
  background-position: right .7em top 50%;
  background-size: 1.5em auto;
}

/* Forms */


@media screen and (max-width: 479px) {

  .mod_register .form-field-2-columns {
    -ms-grid-columns: auto;
    grid-template-columns: auto;
    grid-row-gap: 0;
  }
}

/* Padding */

.padding-vertical.padding-medium,
.padding-vertical.padding-huge {
  padding-right: 0;
  padding-left: 0;
}

/* Grids */

/*
.w-layout-grid {
  display: -ms-grid;
  display: grid;
  grid-auto-columns: 1fr;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  grid-row-gap: 16px;
  grid-column-gap: 16px;
}
*/

.view-tour-grid {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  grid-column-gap: 5rem;
  /*grid-row-gap: 4rem;*/
  -ms-grid-columns: 1fr 0.6fr;
  grid-template-columns: 1fr 0.6fr;
}

.view-tour-grid > div {
  align-self: start;
}

@media screen and (max-width: 991px) {
  .view-tour-grid {
    min-height: auto;
    grid-auto-flow: row;
    grid-column-gap: 0;
    /*grid-row-gap: 4rem;*/
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 767px) {
  .view-tour-grid {
    /*grid-row-gap: 3rem;*/
  }
}

@media screen and (max-width: 479px) {
  .view-tour-grid {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}

.text-smaller-heading {
  font-size: 36px;
  line-height: 1;
  font-weight: 700;
}

.margin-vertical {
  margin-right: 0;
  margin-left: 0;
}

a.transparent {
  color: unset !important;
}

/* ========================= Migrated ==================== */

/* General */

.table { width: 100%; display: table; }
.table .row { display: table-row; }
.table .cell { display: table-cell; }
.al { text-align: left; }
.ar { text-align: right; }
.ac { text-align: center; }
.at { vertical-align: top; }
.am { vertical-align: middle; }
.ab { vertical-align: bottom; }
.nw { white-space: nowrap; }

.site-content a:not(.button,.button-with-icon) {
  color: #006039;
}

.drop-shadow {
  position: relative;
  /*padding-bottom: 62%;*/
}

.drop-shadow img {
  border-radius: 25px;
}

.drop-shadow:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 20px;
  left: 20px;
  border-radius: 10px;
  background: #006039;
  z-index: -1;
}

.drop-shadow.accent-1:before {
  background: #696d72 ;
}
.drop-shadow.accent-2:before {
  background: #436817;
}
.drop-shadow.accent-3:before {
  background: #861455;
}
.drop-shadow.accent-4:before {
  background: #ad1917;
}

.indent-1 {
  margin-left: 1em;
}

.indent-2 {
  margin-left: 2em;
}

.admin-bar {
  background: #eee;
  font-size: 0.9em;
  text-align: center;
}

/*
	CSS3 Checkbox Styles
	http://codepen.io/bbodine1/pen/novBm
*/
.styled_checkbox {
  width: 22px;
  position: relative;
  margin-right: 10px;
  display: inline-block;
}

.styled_checkbox.style3 {
  width: 16px;
}

.styled_checkbox label {
  top: 0;
  left: 0;
  position: absolute;
  width: 22px;
  height: 22px;
  border-radius: 4px;
  cursor: pointer;
  background: #eee;
}

.styled_checkbox.style2 label {
  background: #fff;
}

.styled_checkbox.style3 label {
  top: 2px;
  width: 16px;
  height: 16px;
  border-radius: 0;
}

.styled_checkbox label:after {
  top: 5px;
  left: 5px;
  position: absolute;
  width: 9px;
  height: 5px;
  border: 3px solid #000;
  border-top: none;
  border-right: none;
  background: transparent;
  content: '';
  opacity: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.styled_checkbox.style3 label:after {
  top: 1px;
  left: 2px;
}

.styled_checkbox input[type=checkbox] { visibility: hidden; padding: 0; }
.styled_checkbox input[type=checkbox]:checked + label:after { opacity: 1; }

/* Calendar */

#calendar-popup {
  position: relative;
  background: #FFF;
  padding: 20px;
  width: auto;
  max-width: 800px;
  min-height: 650px;
  margin: 20px auto;
}

#calendar-combo .date,
#calendar-combo .adult_places {
  padding-left: 40px;
}

#calendar-combo .ph-icon:before {
  top: 0;
}

.places-adults {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.places-selector {
  display: flex;
  gap: 10px;
}

.places-selector img {
  width: 32px;
  height: auto;
}

.places-selector input {
  width: 50px;
  text-align: center;
}

/* Pickmeup datepicker */

/*.pickmeup {*/
/*  background: #fff;*/
/*  padding: 0 0 10px 0;*/
/*  box-shadow: 3px 3px 7px 0 rgba(0,0,0,0.5);*/
/*  z-index: 1000;*/
/*}*/

/*.pickmeup .pmu-instance {*/
/*  margin: 0 5px;*/
/*  font-size: 0.95em;*/
/*}*/

/*.pickmeup .pmu-instance .pmu-today {*/
/*  background: unset;*/
/*  font-weight: bold;*/
/*}*/

/*.pickmeup .pmu-instance .pmu-button {*/
/*  padding: 2px 4px;*/
/*  color: #000;*/
/*}*/

/*.pickmeup .pmu-instance .pmu-days .pmu-button {*/
/*  border-top: 1px solid #e0e0e0;*/
/*}*/

/*.pickmeup .pmu-instance .pmu-selected,*/
/*.pickmeup .pmu-instance .pmu-selected:hover {*/
/*  background-color: transparent;*/
/*  background-image: url(/content/static/images/calendar_selection.png);*/
/*  background-position: center center;*/
/*  background-repeat: no-repeat;*/
/*  background-size: contain;*/
/*  color: #fff;*/
/*}*/

/*.pickmeup .pmu-instance .pmu-not-in-month {*/
/*  background-color: #eee;*/
/*  color: silver;*/
/*}*/

/*.pickmeup .pmu-instance .pmu-disabled,*/
/*.pickmeup .pmu-instance .pmu-disabled:hover {*/
/*  color: #d0d0d0;*/
/*  background-color: transparent;*/
/*}*/

/*
  ph-icon
*/

.ph-icon {
  width: 100%;
  position: relative;
  white-space: nowrap;
  display: inline-block;
}

/*noinspection CssNoGenericFontName*/
.ph-icon:before {
  font-family: 'FontAwesome';
  color: #868686;
  position: absolute;
  left: 18px;
  top: 10px;
}

.ph-icon.search:before { content: "\f002"; }
.ph-icon.calendar:before { content: "\f133"; }
.ph-icon.users:before { content: "\f007"; }
.ph-icon.user:before { content: "\f2c0"; }
.ph-icon.key:before { content: "\f084"; }
.ph-icon.filters:before { content: "\f004"; }

.ph-icon input, .ph-icon select {
  padding-left: 40px;
}


/*
	Dropit - selectors
*/

ul.drop_menu.dropit {
  /*position: absolute;*/
}

.dropit .dropit-trigger {
  /*z-index: 1000;*/
}
.dropit .dropit-submenu {
  /*z-index: 1000000;*/
}

.selectors ul.drop_menu.dropit {
  /*margin-bottom: 12px;*/
}

.selectors li.dropit-trigger > a {
  width: 100%;
  padding: 4px 8px;
  border: 1px solid #666;
  display: block;
}

/*noinspection CssNoGenericFontName*/
.selectors li.dropit-trigger > a:after {
  margin-left: 6px;
  font-family: 'FontAwesome';
  content: "\f107";
  float: right;
  display: inline-block;
  color: #666;
}

.selectors li.dropit-trigger.dropit-open > a:after {
  content: "\f106";
}

/*
  Website footer
*/

.website-footer {
  line-height: 1.9;
  color: #333;
}

.website-footer a {
  color: #333;
}

.website-footer-links {
  width: 100%;
  display: flex;
}

.website-footer-links > div {
  flex: 0 1 25%;
}

.website-footer-bottom {
  margin-top: 50px;
  text-align: center;
}

.footer-social-link {
  margin-left: 5px;
  display: inline-block;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {

  .website-footer-links {
    display: block;
  }

  .website-footer-links > div {
    margin-bottom: 20px;
    /*text-align: center;*/
    flex: unset;
  }

  .website-footer-bottom {
    margin-top: 30px;
  }

  .website-footer-bottom > span {
    margin-bottom: 10px;
    display: block;
  }
}

/* Footer Accordion Styles */
.footer-accordion .footer-header {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer-accordion .footer-icon {
  width: 16px;
  height: 16px;
  transition: transform 0.25s ease;
  display: none;
}

.footer-accordion.open .footer-icon {
  transform: rotate(225deg);
}

.footer-accordion .footer-icon {
  display: none;
}

/* Mobile styles - accordion enabled */
@media screen and (max-width: 767px) {

  .footer-accordion {
    margin-bottom: 10px !important;
    border-bottom: 1px solid #ddd;
  }

  .footer-accordion.open {
    padding-bottom: 10px;
  }

  .footer-accordion:not(.open) .footer-header {
    padding-bottom: 10px;
  }

  .footer-accordion .footer-icon {
    display: block;
  }

  .footer-accordion .footer-content {
    overflow: hidden;
  }
}

/* Desktop styles - normal footer behavior */
@media screen and (min-width: 768px) {

  .footer-accordion .footer-content {
    height: auto !important;
  }
}

/*
	Dropit submenu
*/

.dropit .dropit-submenu {
  border: 1px solid #dddddd;
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
}

.dropit .dropit-submenu li {
  margin: 0;
  border-bottom: 1px solid #dddddd;
}

.dropit .dropit-submenu li:last-child {
  border-bottom: 0;
}

.dropit .dropit-submenu .dropit-title {
  padding: 9px 20px;
  font-size: 13px;
  display: block;
  color: #777;
}

.dropit .dropit-submenu a {
  padding: 9px 20px;
  border-radius: 0;
  color: #015d85;
  font-size: 13px;
  text-decoration: none;
  text-align: left;
  display: block;
  white-space: nowrap;
}

.dropit .dropit-submenu a:hover {
  color: #000000;
  background: #f5f5f5;
}

/*
	Magpop popup general
*/
.mfp-map .mfp-iframe {
  background: #E2E2E2 url(/content/static/images/maploader.png) 50% 50% no-repeat;
}

.mfp-wrap button.confirm,
.mfp-wrap button.cancel {
  padding: 10px 16px;
  font-weight: bold;
  text-transform: uppercase;
}

.mfp-wrap button.confirm {
  color: #ffffff;
  background-color: #85b200;
}

.mfp-wrap button.confirm:hover {
  background-color: #94c20e;
}

.mfp-wrap button.cancel {
  color: #ffffff;
  background-color: #999;
}

.mfp-wrap button.cancel:hover {
  background-color: #888;
}


.tos-popup {
  max-width: 650px;
  margin: 20px auto;
  padding: 20px 30px;
  text-align: left;
  position: relative;
  background: #ffffff;
}

.licencee-tos-popup {
  max-width: 1100px;
  margin: 20px auto;
  padding: 20px 30px;
  text-align: left;
  position: relative;
  background: #ffffff;
}

.map-popup {
  max-width: 650px;
  margin: 20px auto;
  padding: 20px 30px;
  text-align: left;
  position: relative;
  background: #ffffff;
}

/*
	Flags https://www.flag-sprites.com/
	FamFamFam 16x11
*/
.flag {
  width: 16px;
  height: 11px;
  margin-right: 3px;
  background: url(/content/static/images/flags.png) no-repeat;
  display: inline-block;
}

.flag.flag-cn {background-position: -16px 0}
.flag.flag-de {background-position: -32px 0}
.flag.flag-es {background-position: 0 -11px}
.flag.flag-fr {background-position: -16px -11px}
.flag.flag-gb {background-position: -32px -11px}
.flag.flag-it {background-position: 0 -22px}
.flag.flag-pt {background-position: -16px -22px}
.flag.flag-ru {background-position: -32px -22px}

/*
  Msg
*/

.msg {
  position: relative;
  margin: 4px 0;
  padding: 10px;
  border: 1px solid #d6db02;
  background: #fbfe8d;
}

.msg.warn {
  padding-left: 45px;
  border: 1px solid #f00000;
  border-radius: 4px;
  background: #fbfe8d;
}

/*noinspection CssNoGenericFontName*/
.msg.warn:before {
  position: absolute;
  top: 50%;
  left: 12px;
  color: #f00000;
  font-family: FontAwesome;
  font-size: 1.9em;
  line-height: 0;
  content: "\f057";
}

.msg.ok {
  padding-left: 45px;
  border: 0;
  border-radius: 4px;
  background: #cbffa8;
}

/*noinspection CssNoGenericFontName*/
.msg.ok:before {
  position: absolute;
  top: 50%;
  left: 12px;
  color: #00d000;
  font-family: FontAwesome;
  font-size: 1.9em;
  line-height: 0;
  content: "\f058";
}

.msg.info {
  padding-left: 45px;
  border: 0;
  border-radius: 4px;
  background: #daf7f8;
}

/*noinspection CssNoGenericFontName*/
.msg.info:before {
  position: absolute;
  top: 50%;
  left: 12px;
  color: #2e9dd4;
  font-family: FontAwesome;
  font-size: 1.9em;
  line-height: 0;
  content: "\f05a";
}

/*
  Loading indicator
*/
.loading {
  position: relative;
  pointer-events: none;
}

.loading > * {
  opacity: 0.4 !important;
}

.loading:after {
  width: 100px;
  height: 100px;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  position: absolute;
  content: '';
  background-image: url('/content/static/images/v2/waitanim.svg');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border-radius: 50px;
  box-shadow: 0 0 12px rgba(0,0,0,.5);
  opacity: 0;
  animation: fadeInWithDelay 2s ease-in-out forwards;
}

.loading.fade-out:after {
  animation: fadeOut 0.3s ease-in-out forwards;
}

@keyframes fadeInWithDelay {
  0%, 50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/*
	Module: auth & register
*/
.mod_auth h1 {
  margin-bottom: 36px;
}

.mod_auth a {
  text-decoration: none;
}

.mod_register .field-box,
.mod_auth .login-box,
.mod_auth .reset-box {
  max-width: 500px;
  margin: 10px auto;
}

.mod_register .register-box {
  max-width: 600px;
  margin: 10px auto;
}

.mod_register .input-group,
.mod_auth .input-group {
  width: 100%;
  margin: 8px 0;
}

.mod_register .form-field-wrap {
  margin-bottom: 20px;
}

@media (max-width: 600px) {

  .mod_auth h1 {
    margin-bottom: 20px;
  }

}

.login-popup {
  max-width: 520px;
  margin: 20px auto;
  padding: 20px 30px;
  text-align: left;
  position: relative;
  background: #eee;
}

.mod_auth #capswarn {
  padding-left: 10px;
  color: #ff8000;
  display: none;
}

/*
	Module: search
*/
.tour-flags span {
  border-radius: 6px;
  margin: 0 5px 5px 0;
  padding: 4px 8px;
  display: inline-block;
}

.tour-flags .booked-yesterday {
  background: #ef7d00;
  color: #fff;
}

.tour-flags .likely-sell-out {
  background: #ef7d00;
  color: #fff;
}

.tour-flags .last-two-places {
  background: #ef7d00;
  color: #fff;
}

.tour-flags .new-activity {
  background: #f0f0f0;
}

.mod_search .typebutton {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.mod_search .typebutton a {
  color: #000000;
}

.mod_search .typebutton .ball {
  width: 12px;
  height: 12px;
  display: none;
}

.mod_search .typebutton.active a {
  color: #006039;
}

.mod_search .typebutton.active .ball {
  display: inline-block;
}

.mod_search .result .result-image {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  -ms-grid-column-align: center;
  justify-self: center;
}

.mod_search .result .result-info {

}

.mod_search .result .tour-price {
  /*font-size: 1.5em;*/
  /*font-weight: bold;*/
}

.mod_search .result .tour-price .per-person {
}

.mod_search .result .available-dates {
  color: #a0a0a0;
  /*font-size: 0.9em;*/
}

@media screen and (max-width: 991px) {
  .searchbar {
    display: block;
  }

  .searchbar .w-button {
    width: 100%;
  }
}

/*
  Module: tours
*/
.mod_tours .tour-info .cell {
  padding-bottom: 6px;
}

.mod_tours .tour-info .row:nth-child(even) .cell {
  padding-bottom: 12px;
}

.avabox {
  border: 2px solid #006039;
}

.avabox ul {
  padding-left: 1.5rem;
}

.avabox ul li {
  padding-bottom: .5rem;
}

.itinerary .cell {
  /*padding-bottom: 40px;*/
}

.itinerary .points {
  width: 50px;
  background: linear-gradient(90deg,
  transparent calc(50% - 1px),
  #436817 calc(50%),
  transparent calc(50% + 1px)
  );
}

.itinerary .table .row:last-child .cell.points {
  background: none;
}

.itinerary .text {
  padding: 13px 0 20px 20px;
}

.itinerary .point {
  font-size: 1.1rem;
  width: 50px;
  height: 50px;
  background-color: #f6f1eb;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.itinerary .point > span {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
}

/* Star ratings */

.tour-rating-stars {
  font-size: 24px;
  color: #006039;
}

.tour-rating-stars .fa {
  padding-right: 2px;
}

.tour-rating-number {
  padding-left: 4px;
  font-size: 24px;
  font-weight: bold;
  color: #c42126;
}

.tour-rating-text {
  padding-left: 4px;
}

/* Review bars */

.tour-review-bars {
  width: 100%;
  max-width: 400px;
  color: #5ea34d;
}

.tour-review-bars .stars {
  padding-right: 12px;
  white-space: nowrap;
  vertical-align: middle;
}

.tour-review-bars .bars {
  width: 100%;
  vertical-align: middle;
}

.tour-review-bars .count {
  padding-left: 12px;
  text-align: right;
  vertical-align: middle;
}

.tour-review-bars .bar {
  width: 100%;
  background: #f0f0f0;
  border-radius: 8px;
}

.tour-review-bars .fill {
  height: 12px;
  border-radius: 8px;
  background: #436817;
}

/* Reviews */
.reviews {
  border-top: 4px solid #f0f0f0;
}

.reviews .review {
  padding: 12px 0;
  border-bottom: 4px solid #f0f0f0;
}

.reviews .review-good,
.reviews .review-bad,
.reviews .review-reply {
  margin-bottom: 10px;
}

.mod_tours .no-review {
  color: #777;
}

.reviews .review-good .fa { padding-right: 10px; font-size: 2.2em; color: #5fa396; vertical-align:middle; }
.reviews .review-bad .fa {  padding-right: 10px; font-size: 2.2em; color: #666666; vertical-align:middle; }
.reviews .review-reply .fa { padding-right: 10px; font-size: 1.5em; color: #5fa396; vertical-align:middle; transform: rotateZ(180deg); }
.reviews .no-review .fa {  padding-right: 10px; font-size: 2.2em; color: #CCCCCC; vertical-align:middle; }

.reviews .date {
  color: #777;
}

.mod_tours .reviews .report,
.mod_tours .reviews .reported {
  color: #777;
  padding-left: 10px;
}

.reviews .review-reply {
  padding-top: 10px;
}

.review.table > .cell:first-child {
  width: 25%
}

@media (max-width: 600px) {
  .review.table {
    display: block;
  }
  .review.table > .cell {
    display: block;
  }
  .review.table > .cell:first-child {
    width: 100%;
    margin-bottom: 12px;
    display: block;
  }
}


/*
  Agency public page
*/
.mod_search .agency-header,
.mod_search .agency-legal {
  width: auto;
}

.mod_search .agency-header .cell.logo {
  padding-right: 20px;
}

.mod_search .agency-legal .cell {
  padding-bottom: 10px;
}

.mod_search .agency-legal .cell.labels {
  padding-right: 100px;
}

@media (max-width: 600px) {

  .mod_search .agency-header,
  .mod_search .agency-header .cell,
  .mod_search .agency-legal,
  .mod_search .agency-legal .row,
  .mod_search .agency-legal .cell {
    display: block;
  }

  .mod_search .agency-header .cell.logo {
    padding-right: 0;
    padding-bottom: 20px;
    text-align: center;
  }
}



/*
	Module: register
*/

#map-canvas {
  background-image: url(/content/static/images/maploader.png);
  background-position: center;
  background-repeat: no-repeat;
}

/*
	Cookie consent
*/
#cc-main .cm--bar.cm--inline .cm__btns {
  max-width: 30em;
}

#cc-main .cm__btn,
#cc-main .pm__btn {
  border-width: 0;
  background: #117143;
}

#cc-main .cm__btn:hover,
#cc-main .pm__btn:hover {
  background: #197e4d;
}

#cc-main .cm__btn--secondary,
#cc-main .pm__btn--secondary {
  border-width: 2px;
  border-color: #117143;
  background: #ffffff;
  color: #117143;
}

#cc-main .cm__btn--secondary:hover,
#cc-main .pm__btn--secondary:hover {
  border-color: #117143;
  background: #f2f8f5;
  color: #117143;
}

#cc-main .cm__desc {
  font-size: 0.75rem;
}

#cc-main .pm__section--toggle .pm__section-title,
#cc-main .pm__close-btn {
  background: #f6f1eb;
  border: none;
}

#cc-main .pm__section--toggle .pm__section-desc-wrapper {
  border-color: #f4eadd;
}

#cc-main .pm__section--toggle .pm__section-title:hover,
#cc-main .pm__close-btn:hover {
  background: #f4eadd;
}

#cc-main .pm__section--expandable .pm__section-arrow,
#cc-main .pm__badge {
  background: #ffffff;
}

#cc-main .section__toggle:checked~.toggle__icon {
  background: #10b981;
}

#cc-main .pm__section:first-child {
  margin-bottom: 1em;
}

#cc-main .pm__title::before {
  content: "";
  display: inline-block;
  width: 130px;
  height: 31px;
  margin-right: 8px;
  background-image: url('/content/static/images/logo.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
  vertical-align: middle;
}

/*
 FX appear
*/
.fx-appear {
  transform: translate3d(0, 15px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);
  opacity: 0;
  transition: transform 0.5s ease-out, opacity 0.5s ease-out;
}

.fx-appear.done {
  transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  opacity: 1;
  transform-style: preserve-3d;
}


/*
  Page styles
*/
body.mod_pages.com_privacy h4,
body.mod_pages.com_legal h4 {
  margin-top: 32px;
}

body.mod_pages.com_terms h2,
body.mod_pages.com_privacy h2,
body.mod_pages.com_terms_licencee h2 {
  margin-top: 30px;
  margin-bottom: 20px;
}

body.mod_pages.com_terms h3,
body.mod_pages.com_privacy h3,
body.mod_pages.com_terms_licencee h3 {
  margin-top: 30px;
}

body.mod_pages.com_terms .site-content li {
  margin-bottom: 10px;
}

/*
  Home
*/
body.mod_home .city-searchbar {
  padding: 6px;
  border-radius: 50px;
  background: #fff;
  display: flex;
}

body.mod_home .city-searchbar .city-input {
  flex-basis: 99%;
}

body.mod_home #citysearch {
  border: none;
  min-height: 42px;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

body.mod_home .hero-homepage-inner {
  max-width: 550px;
  margin: 0 auto;
  text-align: center;
}

body.mod_home .hero-homepage-inner h1 {
  margin-bottom: 160px;
}

/*noinspection CssNoGenericFontName*/
/*body.mod_home .search-button {*/
/*  border-top-left-radius: 0;*/
/*  border-bottom-left-radius: 0;*/
/*  font-family: 'FontAwesome';*/
/*}*/

/*body.mod_home .search-button:before {*/
/*  content: "\f002";*/
/*}*/

body.mod_home .hero-image-wrap {
  border-radius: 10px;
  overflow: hidden;
}

body.mod_home .autocompleter {
  max-width: 400px;
  padding: 12px;
  border: 1px solid #eee;
  border-top: none;
  border-radius: 12px;
  /*border-bottom-left-radius: 12px;*/
  /*border-bottom-right-radius: 12px;*/
  background: #fff;
  /*background: linear-gradient(to bottom, #ffffff, #f0f0f0);*/
  box-shadow: none;
  color: #006039;
  text-align: left;
  z-index: 1000000;
}

body.mod_home .autocompleter-item {
  padding: 4px 0;
}

body.mod_home .autocompleter-item:hover {
  background-color: unset;
  text-decoration: underline;
}

body.mod_home .tour-videos video {
  /*margin: 0 15px;*/
  border-radius: 8px;
  width: 250px;
}

body.mod_home .home-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  height: 800px;
  /*gap: 30px; !* Optional: adds spacing between grid items *!*/
  column-gap: 30px;
  row-gap: 10px;
}

body.mod_home .home-grid2 {
  display: grid;
  grid-template-columns: 1fr .4fr;
  grid-template-rows: 1fr 1fr;
  height: 500px;
  /*gap: 30px; !* Optional: adds spacing between grid items *!*/
  column-gap: 20px;
  row-gap: 10px;
  margin-top: 2rem;
  border: 10px solid #EB582C;
  background: #EB582C;
}

body.mod_home .home-grid .item1,
body.mod_home .home-grid2 .item1 {
  grid-row: 1 / 3; /* Spans both rows (full height) */
  grid-column: 1; /* Left column */
}

body.mod_home .home-grid .item2,
body.mod_home .home-grid2 .item2 {
  grid-row: 1; /* First row */
  grid-column: 2; /* Right column */
}

body.mod_home .home-grid .item3,
body.mod_home .home-grid2 .item3 {
  grid-row: 2; /* Second row */
  grid-column: 2; /* Right column */
}

body.mod_home .home-grid-item {
  display: flex;
  flex-direction: column;
}

body.mod_home .home-grid2 .home-grid-item.item3 {
  flex-direction: row;
  align-items: flex-end;
}

body.mod_home .home-grid-image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
}

body.mod_home .home-grid h4 {
  margin-top: 20px;
  margin-bottom: 6px;
}

@media screen and (max-width: 767px) {

  body.mod_home .home-grid {
    grid-template-columns: 1fr; /* Single column */
    grid-template-rows: repeat(3, 1fr); /* Three rows of equal height */
    height: auto; /* Allow height to be determined by rows */
    gap: 10px; /* Maintain gap between items */
  }

  body.mod_home .home-grid2 {
    grid-template-columns: 1fr; /* Single column */
    grid-template-rows: auto auto auto; /* Three rows of equal height */
    height: auto; /* Allow height to be determined by rows */
    gap: 10px; /* Maintain gap between items */
  }

  body.mod_home .home-grid .item1,
  body.mod_home .home-grid .item2,
  body.mod_home .home-grid .item3 {
    grid-column: 1; /* All items in single column */
    aspect-ratio: 1; /* Makes each item square */
    min-width: 0; /* Allow shrinking below intrinsic size */
    overflow: hidden; /* Prevent content overflow */
  }

  body.mod_home .home-grid2 .item1 {
    aspect-ratio: 1;
  }
  body.mod_home .home-grid2 .item1,
  body.mod_home .home-grid2 .item2,
  body.mod_home .home-grid2 .item3 {
    grid-column: 1; /* All items in single column */
  }


  body.mod_home .home-grid .item1,
  body.mod_home .home-grid2 .item1 {
    grid-row: 1; /* First row */
  }

  body.mod_home .home-grid .item2,
  body.mod_home .home-grid2 .item2 {
    grid-row: 2; /* Second row */
  }

  body.mod_home .home-grid .item3,
  body.mod_home .home-grid2 .item3 {
    grid-row: 3; /* Third row */
  }
}



@media screen and (max-width: 479px) {
  body.mod_home h1 {
    font-size: 32px;
  }
}

/* Newsletter form */

.newsletter-wrapper {
  display: flex;
}

.newsletter-image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  flex: 0 1 40%;
}

.newsletter-content {
  padding: 30px 0 35px 30px;
  color: #ffffff;
  flex: 0 1 60%;
}

.newsletter-content a {
  white-space: nowrap;
}

.newsletter-content input {
  border-radius: 15px;
  margin-right: 10px;
}

.newsletter-fields {
  margin-bottom: 10px;
  display: flex;
}

.newsletter-footer {
  color: #888888;
}

.newsletter-footer p {
  padding-top: 5px;
}

.newsletter-footer a {
  color: #888888 !important;
  font-weight: bold;
  white-space: nowrap;
}

@media screen and (max-width: 767px) {

  .newsletter-section {
    background-color: #ffffff;
  }

  .newsletter-wrapper {
    padding: 5px 20px 10px 20px;
    border-radius: 25px;
    background-color: #006039;

  }
  .newsletter-image {
    display: none;
  }
  .newsletter-content {
    padding: 0;
    flex-basis: 100%;
  }
  .newsletter-fields {
    display: block;
  }
  .newsletter-content input {
    margin-bottom: 15px;
  }
  .newsletter-content .button-with-icon {
    padding: 8px;
    justify-content: center;
    align-items: center;
  }
}





