/*
Theme Name: Travel Solutions
Description: Custom theme for Travel Solutions. Theme uses UNCODE as the parent theme.
Author: Pixel Point Design
Author URI: https://www.pixelpoint.design/
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/

@font-face {
  font-family: 'montserratblack';
  src: url('fonts/montserrat-black-webfont.woff2') format('woff2'),
        url('fonts/montserrat-black-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'montserratregular';
  src: url('fonts/montserrat-regular-webfont.woff2') format('woff2'),
        url('fonts/montserrat-regular-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

/*---General Page css---*/
.text-lead {padding-top: 0 !important; margin-top: 0 !important}
.style-light p a {color: #00313d !important; text-decoration: underline;}
.style-light p a:hover {text-decoration: none; color:#52c0dc !important; }
.uncode-single-media .t-entry p.t-entry-excerpt {padding: 10px 20px; border: 1px solid #fff; width: 250px; margin: 18px auto 0 auto !important;}
.uncode-single-media:hover .t-entry p.t-entry-excerpt {background-color: #fff;}
strong, b {font-family: 'montserratblack';font-weight: normal;}

.tmb-carousel .btn:not(.btn-custom-typo):not(.btn-inherit) {background-color: #52c0dc !important; text-decoration: none;}
.tmb-carousel .btn:not(.btn-custom-typo):not(.btn-inherit):hover {background-color: #fff !important; border: 1px solid #52c0dc !important; color: #52c0dc !important;}
.tmb-carousel .t-entry .t-entry-excerpt, .tmb-carousel .t-entry .t-entry-title {padding: 18px; background-color: #52c0dc; margin-top: -9px !important;}
.tmb-carousel .t-entry .t-entry-excerpt p, .tmb-carousel .t-entry .t-entry-title a {color: #fff !important; text-transform: uppercase; line-height: 1.2; font-family: 'montserratregular'}
.tmb .t-entry p.t-entry-readmore .btn {margin-bottom: 36px !important;}

.uncode-post-table-column h3.t-entry-title {font-family: 'montserratregular' !important; font-weight: normal; text-transform: uppercase; font-size: 18px;}
.uncode-post-table-column h3.t-entry-title a {color: #00313d;}
.icon-box.icon-inline {font-size: 18px;}
.icon-box-heading > * {line-height: 2.25em !important;}
.icon-box-left.icon-box-space-reduced .icon-box-content {padding-left: 0;}
.icon-box.icon-inline {text-align: left; vertical-align: top;}
.icon-box-content p {margin-top: 0; margin-bottom: 18px; line-height: 1;}

.navbar .no-link > a {cursor: default}

/* mobile: reduce padding on v small screens */
@media screen and (max-width: 400px) {
.main-container .row-container .row-parent {
padding: 18px }
}

/*---Top Bar css---*/
ul#menu-top-bar-menu li a:hover {color: #fff; text-decoration: underline;}
.topbar-col-right ul li a:hover {color: #fff !important; }
@media screen and (max-width: 450px) {
  .top-menu.top-menu-enhanced, .top-menu.top-menu-enhanced .menu-horizontal ul.menu-smart { padding: 0 }
  .top-menu.top-menu-enhanced .row-menu-inner .topbar-col.topbar-col-center, .top-menu.top-menu-enhanced .row-menu-inner .topbar-col.topbar-col-right {
  display: none }
  .top-menu.top-menu-enhanced .row-menu-inner .menu-horizontal, .top-menu.top-menu-enhanced .row-menu-inner .topbar-col.topbar-col-left {
  width: 100% !important;   
  text-align: center }
}
.fa-tiktok:before { background: #fff; border-radius: 3px; font-size: 16px; position: relative; top: -1px; }
.top-menu .fa-tiktok:before { color: #9dc640 }

@media screen and (min-width: 960px) and (max-width: 1050px) {
#main-logo .navbar-brand img {
width: 140px;
height: auto }
.menu-container:not(.grid-filters) ul.menu-smart > li > a:not(.social-menu-link), .menu-container:not(.vmenu-container):not(.grid-filters) ul.menu-smart > li > a:not(.social-menu-link):not(.vc_control-btn) {
font-size: 16px }
}

@media (min-width: 960px) {
#masthead[class*="-h-padding"] .overlay.overlay-search .overlay-search-wrapper {
justify-content: flex-end;
padding: 0 } 

.overlay.overlay-search .search-container {
width: 400px;
max-width: 100%;
background-color: #d6dbe1 }
}

#masthead .overlay.overlay-search .search-container .search-container-inner {
padding: 0 30px }

#masthead .overlay .overlay-search-wrapper .search-container form .search-container-inner input {
background-color: #fff !important;
font-size: 18px;
padding: 9px 6px !important }

.overlay.overlay-search .mmb-container {
right: 2px }

/*---Holiday Search Bar css---*/
#holiday-search-bar-container {border-radius: 15px; padding: 0 18px 30px 18px; background:#00313d; max-width: 1600px; margin: 0 auto;}
#holiday-search-bar-container form .leaving-from-wrapper, #holiday-search-bar-container form .going-to-wrapper {width: 25%; margin-right: 1%; display: inline-table;}
#holiday-search-bar-container form .departing-wrapper, #holiday-search-bar-container form .nights-wrapper, #holiday-search-bar-container form .travellers-wrapper {width: 14%; margin-right: 1%; display: inline-table;}
#holiday-search-bar-container form label {color: #fff;}

/*---Breadcrumbs css---*/
.breadcrumb-title {display: none;}
.breadcrumb {text-align: left;}
.breadcrumb li a {text-decoration: underline;}
.main-container .row-container.row-breadcrumb .row-parent {padding: 18px 36px 18px 36px !important;}

/*---Sticky Holiday Sub Menu css---*/
#holiday-sub-menu-container {background-color: #f7f7f7}
#holiday-sub-menu-container ul#menu-holiday-page-menu li a {text-transform: uppercase; font-size: 16px; font-family: 'montserratblack'; font-weight: normal; color: #00313d;}
#holiday-sub-menu-container ul#menu-holiday-page-menu li a:hover, #holiday-sub-menu-container ul#menu-holiday-page-menu li.active a {color: #52c0dc; border-bottom: 2px solid #00313d;}

/*---Sticky Resort Sub Menu css---*/
#resort-sub-menu-container ul#menu-resort-page-menu li a {text-transform: uppercase; font-size: 16px; font-family: 'montserratblack'; font-weight: normal; color: #00313d;}
#resort-sub-menu-container ul#menu-resort-page-menu li a:hover, #resort-sub-menu-container ul#menu-resort-page-menu li.active a {color: #52c0dc; border-bottom: 2px solid #00313d;}

/*--- Form css---*/
.gdpr-acceptance {margin-bottom: 1em; display: inline-block; padding-left: 2em;}
.gdpr-acceptance input {margin-left: -2em;}
.wpcf7-acceptance .wpcf7-list-item-label {font-size: 14px;}
div.wpcf7 .wpcf7-submit:disabled, div.wpcf7 .wpcf7-submit:disabled:hover {background: #ccc !important; border-color: #ccc !important; color: #fff;}
.btn-accent:not(.btn-flat):not(.btn-hover-nobg):not(.icon-animated):not(.btn-text-skin):disabled:hover {color: #fff !important;}
.style-light ::placeholder {color: #251607 !important; opacity: .75;}
.style-light input, .style-light textarea, .style-light select {border-color: #75529d; }
.wpcf7 span.wpcf7-not-valid-tip {color: #f00 !important; border: 1px solid #f00; padding: 2px; background: #fff; margin-bottom: 9px;}
.wpcf7-inline-wrapper .wpcf7-inline-field {text-align: left;}
.wpcf7-list-item-label {width: 100%; padding-left: .5em; font-size: 14px;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {background: #fff; padding:5px 10px; color: #f00;}
div.wpcf7 form .wpcf7-response-output {background: #fff; padding:5px 10px;}
form p {font-weight: 400;}
input, textarea, select { max-width: 100% }

/*--- Footer css---*/
.ts-footer-menu {margin-top: 18px !important}
ul#menu-footer-bottom-menu li {font-size: 13px;}
ul#menu-footer-bottom-menu.menu-smart.sm.menu-horizontal {padding: 0 !important;}
ul#menu-footer-bottom-menu.menu-smart li a {padding-left: 0 !important;}
span.h6 {font-family: 'montserratblack';font-weight: normal}
.icon-box-icon.fa-container {padding-right: 9px;}
.icon-box-icon a:hover, .icon-box-heading a:hover {text-decoration: underline; color: #fff !important;}
.footer-scroll-top i {background: #52c0dc; border: 2px solid #52c0dc;}
.site-footer .fa-tiktok:before { color:#01303d; font-size: 21px }
.site-footer .fa-tiktok:hover:before { background-color: #006cff; }
.site-footer #footer-30-anniv {max-width: 150px; margin: 0 auto}

#colophon p.h4 {
line-height: 150% !important;	
font-size: 15px}

#colophon .icon-box {
padding: 0;
display:flex;
align-items:center}

#colophon .fa-container {
margin: 0;
padding-right:30px}

#colophon>div:nth-child(2) .wpb_row  {
display: flex;
justify-content: space-between;	
flex-wrap:wrap}

#colophon .uncode-vc-social.icons-lead {
display: flex;
align-items: center;
justify-content: space-between;
width: 100px}

@media (min-width: 640px) and (max-width: 961px) {
#colophon .wpb_row >div:first-child * {
text-align:center}

#colophon > div:nth-child(2) .wpb_row >div:first-child {
width:100%}
	
#colophon > div:nth-child(2) .wpb_row >div:not(:first-child) {
padding-top:30px;
width:33%}
 
#colophon .icon-box {
justify-content: center}
	
#colophon .uncode-vc-social.icons-lead	{
margin: auto}
}

.chrome #colophon .wpb_column {
height: auto }

/*---Hide reCaptcha v3 visible seal---*/
.grecaptcha-badge {
	opacity:0 !important;
}

/* home slider */
@media (max-width: 959px) {
.owl-carousel .background-inner.srcset-bg {
filter: brightness(.8) }
}

.post-content .page-intro-text {
margin: -15px 0 15px;
font-size: 16px; 
line-height: 24px;
padding: 0 7px }

#holiday-search-bar-container form div.input-wrapper {
width: 11.5%; 
margin-right: 1%; 
display: inline-table;}

#holiday-search-bar-container form div.input-wrapper.wide {
width: 17%; }

#holiday-search-bar-container form div.input-wrapper.departing {
width: 11.5% }

#holiday-search-bar-container form div.input-wrapper.submit {
width: auto;
margin-right: 0; }

#holiday-search-bar-container form div.input-wrapper.submit button {
display: flex;
align-items: center;	
border-width: 0;
white-space: nowrap }

#holiday-search-bar-container form div.input-wrapper.submit button i{
top: 0}

#holiday-search-bar-container #reset-wrapper {
margin: 15px 0 0 10px }

#holiday-search-bar-container #reset-search {
color: #fff;
font-size: 13px;
padding: 5px 0;
text-decoration: underline }

#holiday-search-bar-container #error-wrapper {
padding-left: 0 }

#holiday-search input:disabled, #holiday-search #holiday-date-picker.searching a.input-button {
opacity: 0.7 }

/* override parent: */
.flatpickr-calendar select {
display: initial;
min-width: initial;
max-width: initial; }

#holiday-date-picker {
display: flex;
align-items: center }

#holiday-date-picker input.form-control {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
width: calc(100% - 40px);	
border-right: 0;
height: 37px}

#holiday-search input, #holiday-search select{
height: 37px;
line-height: 37px;	
padding: 0 15px}

#holiday-date-picker input.form-control:focus {
border-color: #75529d }

#holiday-date-picker a.input-button {
margin-top: 9px;
height: 37px;	
padding: 10px 4px;
background-color: #fff;
border-top: 1px solid #75529d;
border-bottom: 1px solid #75529d }

#holiday-date-picker a.input-button:last-child {
border-top-right-radius: 2px;
border-bottom-right-radius: 2px;
border-right: 1px solid #75529d;
padding-right: 10px }

body.overlay-open {
overflow: hidden !important }

.box-container .menu-wrapper.overlay-open, footer.overlay-open {
display: none !important }

#rooms-picker-wrapper .room-selector-overlay {
position: fixed;
overflow-y: scroll;
-ms-overflow-style: none;
scrollbar-width: none }

#rooms-picker-wrapper .room-selector-overlay::-webkit-scrollbar {
display: none }

#rooms-picker-wrapper .room-selector-overlay.overlay-open {
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,.9); 
z-index: 100 }

#holiday-search-bar-container #room-selector {
background: white;
width: 300px;
margin: 5% auto 0;
padding: 20px;
border-radius: 10px; }

#holiday-search-bar-container #room-selector .room-wrapper:not(:first-of-type) {
margin-top: 40px }

#holiday-search-bar-container #room-selector .heading {
font-weight: bold }

#holiday-search-bar-container #room-selector label {
color: #00313d}

#holiday-search-bar-container #room-selector .quantity-select, #holiday-search-bar-container #room-selector .quantity-select > div {
display: flex; 
align-items: baseline;
justify-content: space-between }

#holiday-search-bar-container #room-selector .quantity-select label {
min-width: 125px;
line-height: 20px }

#holiday-search-bar-container #room-selector label .label-detail {
display: block;
font-size: 11.5px }
    
#holiday-search-bar-container #room-selector .quantity-select input {
font-size: 16px;
height: auto;
width: 50px;
border: none;
box-shadow: none; }

#holiday-search-bar-container #room-selector .quantity-select a.quantity {
padding: 10px 15px }

#holiday-search-bar-container #room-selector .age-select select {
min-width: initial; }

#holiday-search-bar-container #room-selector .add-room-wrapper, #holiday-search-bar-container #room-selector .remove-room-wrapper {
margin: 15px 5px 5px 0;
text-align: right; }

#holiday-search-bar-container #room-selector .add-room-wrapper {
margin-top: 25px }

#holiday-search-bar-container #room-selector .add-room-wrapper button, #holiday-search-bar-container #room-selector .remove-room-wrapper button {
background: none;
color: #52c0dc;
font-weight: bold;
font-size: 16px }

#holiday-search-bar-container #room-selector .close-wrapper {
margin-top: 25px;
text-align: right; }

#holiday-search-bar-container .error-message {
color: red;
font-style: italic }

#holiday-search-bar-container #room-selector .age-select label, #holiday-search-bar-container #room-selector .age-select select {
display: inline-block;
width: 49% }

#holiday-search-bar-container #room-selector .child-age-error {
padding: 9px 0;
text-align: right }

/* single holiday */
body.single-holiday .cruise-locations {
font-family: 'montserratblack';
font-weight: normal;
font-size: 18px }

body.single-holiday #min-max-dates-text + .icon-box-content {
padding-top: 10px }

body.single-holiday #departures .heading-text {
font-size: 22px;
text-transform: uppercase }

body.single-holiday #departures .departures-wrapper {
margin-top: 18px }

body.single-holiday #departures .column .dates-title {
font-weight: bold;
text-transform: uppercase }

body.single-holiday #departures .column .dates-title + ul {
margin: 5px 0 30px 0 }

body.single-holiday span.sold-out {
font-family: 'montserratblack';
font-weight: normal;
font-size: 30px;
text-transform: uppercase;
color: red }

body.single-holiday #gallery-row {
background-color: #52c0dc; }

body.single-holiday .post-content ul#optional-extras {
list-style: none; 
padding-left: 0 }

body.single-holiday .post-content ul#optional-extras .extra-name {
padding-right: 20px }

body.single-holiday #related-holidays .owl-stage {
width: 1200px !important;
max-width: 100%; }

/* search filters */
#advanced-search {
margin-top: 30px}

#holiday-search .top-search-wrap {
display:flex;
flex-wrap: wrap;
align-items: flex-end}

#holiday-search .top-search-wrap >div{
width: 100%!important}

#advanced-search .toggle-wrapper {
text-align: center;
margin-bottom: 15px}

#advanced-search .toggle-wrapper a {
color: #fff;
font-family: 'montserratblack';
font-weight: normal; }

#advanced-search .filter-values {
margin: 0;
padding: 0;
list-style: none;
display: flex;
flex-wrap: wrap;	
color: #fff;
align-items: center;	
white-space: nowrap}

#advanced-search .filter-values input {
margin-right: 10px}

#advanced-search .filter-values li{
margin: 0 40px 20px 0}

#advanced-search .filter label{
margin-bottom: 5px;
font-size: 18px;
display: inline-block}

#advanced-search input[type="checkbox"] {
border-radius:0;
padding:0;
cursor:pointer;	
width: 24px;
height: 24px;	
border: 2px solid #4DCEE0}

#advanced-search input[type="checkbox"]:checked {
background:  #4DCEE0;
border: 2px solid #fff}

#advanced-search input[type="checkbox"]:checked::before{
content: "\f00c";
margin-top: 3px;
transform:scale(2);	
font-family: 'uncodeicon' !important;
display: inline}

#holiday-search input#rooms_summary{
width: 100%}

@media (max-width: 959px){
#search-filters >div:not(:last-child){
margin-bottom: 20px}
}

@media (max-width: 1299px){
#holiday-search-bar-container form div.input-wrapper.submit {
flex-basis: 100%;
margin-bottom:20px}
	
#holiday-search-bar-container form div.input-wrapper.submit button{
margin: auto}	
}

@media (min-width: 580px){
#holiday-search .top-search-wrap >div{
width: 49%!important}
}

@media (min-width: 960px){
#holiday-search .top-search-wrap >div{
width: 32%!important}
}

@media (min-width: 960px){
#search-filters {
display: flex;
flex-wrap:wrap;
justify-content: space-between}

#search-filters >div {
margin: 8px 0;
width: 50%}
	
#search-filters >div:first-child{
width: 45%}

#search-filters >div:nth-child(2){
width: 55%}	

}

@media (min-width: 1200px){
#holiday-search .top-search-wrap >div{
flex: 1}
	
#holiday-search-bar-container form div.input-wrapper .btn-container	{
margin-top: 0;
position:relative;	
top: 5px}
}

/* fix theme issues */
.btn-container .border-width-0 {
border-width: 0 }

/* taxonomy pages */
@media (min-width: 960px){
body.tax-location #search-results-wrapper .limit-width,
body.tax-portfolio_category #search-results-wrapper .limit-width,
body.tax-tour-type #search-results-wrapper .limit-width,
body.tax-tour-location #search-results-wrapper .limit-width,
body[class*='tax-'] .row-breadcrumb .limit-width {
max-width: 1596px; }
}

/* agent login/reg */
body.agent-page label {
font-family: 'montserratblack';
font-weight: normal; }

body.agent-page .message, body.agent-page .notice, body.agent-page .success {
border-left: 4px solid #72aee6;
padding: 12px;
margin-left: 0;
margin-bottom: 20px;
background-color: #fcfcfc;
box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .1);
word-wrap: break-word; }

body.agent-page .notice > p {
margin: 0 }

body.agent-page .notice-error {
border-left-color: #d63638; }

.search-heading-wrapper {
max-width: 1600px;
margin: 0 auto 30px;
text-align: center }

.search-heading-wrapper:has(+ .packager-intro) {
margin-bottom: 20px }

.packager-intro {
font-family: 'montserratblack';
text-align: center;
margin-bottom: 30px }

.recaptcha-form > form.submitting input[type=submit] {
opacity: 0.5 }

/* fix top menu active colour */
.top-menu .menu-smart > li.active > a,
.top-menu .menu-smart > li a.active,
.top-menu .menu-smart > li.current-menu-ancestor > a,
.top-menu .menu-smart > li.current-menu-item:not(.menu-item-type-custom) > a,
.top-menu .menu-smart > li.current-menu-parent > a {
  color: #000;
}

/* brochures */
.brochure-wrapper h2 {
text-align: center;
margin-bottom: 20px; }

.brochure-bottom-text p {
text-align: center;
margin-top: 10px }

.brochure-bottom-text p:first-of-type {
margin-top: 30px }

/* forms */
form.wpcf7-form select.wpcf7-select {
min-width: initial;
width: 360px }

p.recaptcha {
font-style: italic;
font-size: 13px }

/* home page (agent) */
#agent-home-content {
text-align: center;
margin: 30px auto !important;
max-width: 800px; }

#packager-form {
margin: 60px 0; }

/* home holiday types grid responsive */
@media screen and (max-width: 1199px) {
  div#holiday-types-grid > .row > .row-inner {
    display: flex;
    flex-wrap: wrap;
  }
  div#holiday-types-grid > .row > .row-inner > .wpb_column {
    width: 100%;
    order: 2;
    padding: 0 0 18px 0;
  }
  div#holiday-types-grid > .row > .row-inner > .wpb_column:nth-child(2) {
    order: 1
  }
  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner {
    height: auto !important;
  }
  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner .tmb .dummy {
    padding-top: 50% !important
  }
  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner .tmb a img {
    object-fit: cover
  }
}

@media screen and (min-width: 1200px) and (max-width: 1499px) {
  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner .tmb a .t-overlay-text {
    padding: 54px 0
  }
}

@media screen and (max-width: 499px) {
  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner .tmb .dummy {
    padding-top: 75% !important
  }

  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner .tmb a .t-overlay-text {
    padding: 0
  }
  div#holiday-types-grid > .row > .row-inner > .wpb_column .row-inner .tmb .t-entry-visual .t-overlay-content {
    vertical-align: middle;
  }
}

/* blog */
body.blog .tmb .t-entry p.t-entry-meta .t-entry-tax, body.blog .tmb .t-entry hr, body.blog .tmb .t-entry .t-entry-author { display: none }
body.single .category-info, body.single .author-info {display: none}

/* text search */
.results-wrapper {
padding-bottom: 25px }

.results-wrapper .load-more {
margin-top: 15px }

.results-wrapper mark {
background-color: rgb(159, 198, 59) }