/* ========================= 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: 6px;
}

/* 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;
  }
}


/* ========================= 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: #ef7d00;
}

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

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

.drop-shadow:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 20px;
  left: 20px;
  border-radius: 10px;
  background: #ef7d00;
  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; }

/* 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;
}

.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: "\f007"; }
.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;
}

.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";
}

.footer .selectors li.dropit-trigger > a {
  width: auto;
  /*display: inline-block;*/
}

.footer .selectors ul.drop_menu.dropit {
  display: inline-block;
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .footer .selectors li.dropit-trigger > a {
    width: 100%;
  }
}

/*
	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;
}

.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;
}

.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;
}

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


/*
	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 {
  margin: 0 5px 5px 0;
  padding: 4px 8px;
  display: inline-block;
}

.tour-flags .booked-yesterday {
  background: #f0f0f0;
}

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

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

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

.mod_search .sortbutton a {
  width: 160px;
}

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

  .mod_search .sortbuttons {
    flex-wrap: nowrap;
    /*font-size: 0.5rem;*/
  }

  .mod_search .sortbutton {
    flex-basis: 33%;
  }

  .mod_search .sortbutton a {
    width: 100%;
  }
}

.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;
}

/*
  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 #ef7d00;
}

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

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

.itinerary {
  margin-top: 30px;
}

.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: 1.5em;
  color: #f6923a;
}

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

.tour-rating-number {
  padding-left: 4px;
  font-size: 1.5em;
  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 notice
*/
#cookie-notice {
  width: 100%;
  position:fixed;
  bottom:0;
  z-index: 5000;
  border-top:1px solid #000;
  background:#1f1f1f;
  display: none;
}

#cookie-notice-spacer {
  display: none;
}

#cookie-notice .content {
  margin: 0 auto;
  max-width: 1174px;
  padding: 12px 32px;
  color:#eaecf0;
  font-size: 0.8em;
}

#cookie-notice .content a {

  color:#eaecf0;
  text-decoration: underline;
}

#cookie-notice .content a:hover {
  color:#fff;
}

#cookie-notice .close {
  min-width: 40px;
  float: right;
  display: inline-block;
  text-align: center;
}

/*
  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 #citysearch {
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  min-height: 42px;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

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;
}

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

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









