
body .breadcrumbs { display:none; }
body #banner { display:none; }
body .addthis-smartlayers { display:none; }

#contentpage main.view-itinerarybundle { padding-bottom:0; }
.itinerary-mapper-content h1 { margin:0 0 15px 0; }
.itinerary-mapper-page .well { text-align:center; border-radius:0; box-shadow:none; -webkit-box-shadow:none; border-left:none; border-right:none; }
.itinerary-mapper-page .well h2 { font-size:20px; }
.itinerary-mapper-page .well input { width:100%; max-width:500px; height:50px; padding-left:20px; }
.itinerary-planner-controls { text-align:center; padding:20px 0; }
.itinerary-planner-controls a { text-decoration:none !important; outline:none; }
.itinerary-planner-controls i { border-radius:100px; background:#000; color:#fff; padding:10px; font-size:24px; vertical-align:middle; margin:0; }
.itinerary-planner-control { position:relative; display:inline-block; }
.itinerary-planner-control > a { padding:0 15px; }
.itinerary-planner-control > a > i { margin-right:3px; }
.itinerary-planner-items { position:relative; }
.itinerary-planner-items h2 { display:block; position:relative; z-index:2; }
.itinerary-planner-items-day { border-top:solid 1px #ddd; padding-bottom:18px; }
.itinerary-planner-items-day h2.itinerary-planner-day-title { text-transform:none; margin:0; padding:16px 30px; font-size:24px; background:#f5f5f5; color:#666; }
.itinerary-planner-items-day .itinerary-planner-day-content { padding:16px 15px 0 30px; background:#fff; position:relative; z-index:3; }
.itinerary-planner-items-dayitems { min-height:10px !important; overflow-x:hidden; }
.itinerary-planner-item { position:relative; z-index:2; background:#fff; border-top:solid 1px #ddd; }
.itinerary-planner-item-collapsible { display:none; padding:0 30px 30px 30px; }
.itinerary-planner-item.expanded .itinerary-planner-item-collapsible { display:block; }
.itinerary-planner-item-header { display:block; padding:10px 30px; outline:none !important; }
.itinerary-planner-item-header-inner { position:relative; }
.itinerary-planner-item-number { border-radius:200px; overflow:hidden; position:absolute; z-index:10; left:-6px; top:-6px; font-weight:bold; font-size:22px; width:46px; height:46px; line-height:40px; display:block; text-align:center; border:solid 3px #fff; }
.itinerary-planner-item-number:before { content:' '; display:block; border:solid 30px #000; position:absolute; z-index:5; top:0; left:0; }
.itinerary-planner-item-number span { position:absolute; z-index:12; left:0; right:0; top:0; display:block; color:transparent !important; text-shadow:0 0 0px #fff !important; -webkit-print-color-adjust:exact !important; }
.itinerary-planner-items .itinerary-planner-item-number { transform:scale(0.75); }
.itinerary-planner-item-remove { position:absolute; z-index:3; right:12px; top:12px; }
.itinerary-planner-item-image { margin-bottom:15px; }
.itinerary-planner-item img { width:100%; height:200px; object-fit:cover; }
.itinerary-planner-item .details-gadget img { height:110px; }
.itinerary-planner-item h3.itinerary-planner-item-title { font-size:16px; margin-bottom:7px; padding-top:8px; padding-left:46px; color:#666; }
.itinerary-planner-item-type { display:none; }
.itinerary-planner-item-type,
.itinerary-planner-item-address { margin:0 0 15px 0; font-weight:bold; font-size:14px; color:#000; }
.itinerary-planner-item-type i,
.itinerary-planner-item-address i { color:#007DC6; font-size:22px; margin-right:5px; }
.itinerary-planner-item-description,
.itinerary-planner-item-description p { font-size:14px; clear:both; line-height:160%; margin:0 0 20px 0; }
.itinerary-planner-item-contact { display:inline-block; padding-right:30px; margin-bottom:10px; font-size:14px; text-transform:uppercase; }
.itinerary-planner-item-contact i { font-size:16px; margin-right:5px; }
.itinerary-planner-addday { position:relative; z-index:2; background:#fff; margin-top:30px; padding-top:25px; text-align:center; border-top:dotted 1px #888; }
.itinerary-planner-emptyday { position:relative; z-index:2; padding:50px 0; text-align:center; display:none; }
.itinerary-planner-items-empty .itinerary-planner-emptyday { display:block; }
.draggable-items .itinerary-planner-item { cursor:all-scroll; }
.draggable-items .itinerary-planner-item a { cursor:pointer; }
.itinerary-planner-map #map-canvas { background:#f1f1f1; }
.itinerary-planner-map #map-totals { text-align:center; padding:14px 0; }
.itinerary-planner-map { position:relative; }
.itinerary-planner-map .map-total { color: #333; font-size: 18px; font-weight: bold; text-transform: uppercase; line-height: 100%; display:inline-block; margin:0 15px; }
.itinerary-planner-no-items { padding:10px 30px; text-align:center; }
.itinerary-map-marker-wrapper { position:absolute; z-index:18; left:-15px; top:-10px; }
.itinerary-map-marker-wrapper .itinerary-planner-item-number { left:0; top:0; }
.itinerary-map-marker-wrapper .umpopout { border-radius:12px; overflow:hidden; position:absolute; z-index:22; width:300px; left:-100px; margin-top:48px; display:block; background:#fff; }
.itinerary-map-marker-wrapper .umpopout.has-content { box-shadow:2px 2px 4px 2px rgba(0,0,0,0.15); }
.itinerary-map-marker-wrapper .umpopout .details { padding:10px 12px; }
.itinerary-map-marker-wrapper .umpopout p { margin-bottom:12px; }
.itinerary-map-marker-wrapper.has-price { z-index:19; }
.itinerary-map-marker-wrapper.has-price .ummarker { opacity:1; border:solid 5px #fff; }
.itinerary-map-marker-wrapper.no-price  .ummarker i { font-size:16px; width:30px; line-height:30px; background:#017DB1; color:#fff; }
.itinerary-map-marker-wrapper.active { z-index:22; }
.itinerary-map-marker-wrapper.active .ummarker { background:#333; border-color:#333 !important; color:#fff; transform:scale(1.2); z-index:99 !important; }
.itinerary-map-marker-wrapper.active .ummarker i { background:#333; color:#fff; }

.gu-mirror { position: fixed !important; margin: 0 !important; z-index: 9999 !important; opacity: 0.8; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter: alpha(opacity=80); }
.gu-hide { display: none !important; }
.gu-unselectable { -webkit-user-select: none !important; -moz-user-select: none !important; -ms-user-select: none !important; user-select: none !important; }
.gu-transit { opacity: 0.2; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)"; filter: alpha(opacity=20); }

#map-canvas { width:100%; height: 400px; }



@media screen {
	.itinerary-planner-logo { opacity:0; width:1px; height:1px; }
}

@media print {
	
	a[href]:after { content:"" !important; }
	
	#cart-bar,
	header,
	.header,
	.custom-share-wrapper,
	.search-gadget-contentpage,
	.contentpage-banner-wrapper,
	.breadcrumbs,
	#system-message-container,
	.site-alert-visible .site-alert-wrappr,
	.site-alert-visible .site-alert,
	.site-alert,
	.itinerary-mapper-tabs,
	.itinerary-planner-controls,
	.itinerary-planner-addday,
	.itinerary-planner-emptyday,
	.itinerary-planner-item-remove,
	.itinerary-mapper-page .btn-primary,
	.itinerary-planner-item-description a,
	.itinerary-map-marker-wrapper .umpopout,
	.save-your-itinerary,
	.exclusive-deals,
	.partner-logos,
	.content-before,
	.content-after,
	.panel-subscribe,
	.footer-call-to-action,
	iframe,
	footer,
	.footer,
	.localhost-dev-warning,
	#system-debug { display:none !important; }
	
	html .itinerary-mapper-map .col-mapper-sidebar,
	html .itinerary-mapper-map .itinerary-planner-cart,
	html .itinerary-mapper-list .col-mapper-map { display:block !important; }
	
	.itinerary-planner-map { page-break-before:always; }
	.itinerary-planner-map #map-canvas { background:#f1f1f1; border:solid 1px #ddd; }
	
	#banner, .banner,
	#contentpage-banner,
	#messages,
	#sticky-header-megamenu,
	#homepage-social,
	#widget-box-instagram,
	.social-buttons.modern,
	.subscribe-email,
	.newsletter-signup,
	.rotating-offers-wrapper,
	.book-local-experts { display:none !important; }
	
	main,
	.container { width:100% !important; padding:0 !important; margin:0 !important; max-width:700px; }
	
	.itinerary-planner-logo { display:block; width:100%; height:auto; padding-bottom:18px; border-bottom:solid 1px #aaa; margin-bottom:30px; }
	.itinerary-planner-logo img { display:block; width:30%; }
	.itinerary-planner-items { display:block !important; /*page-break-before: always;*/ }
	.itinerary-planner-items .itinerary-planner-item-number { left:0; }
	
	#map-totals { padding-top:0; }
	
}

@media (max-width:767px) {
	.itinerary-mapper-page { overflow-x:hidden; }
	.itinerary-mapper-content { padding:25px 25px 10px 25px; clear:both; }
	.itinerary-planner-item-gadget-search #details-gadget .embedded-search { padding:0; }
	.itinerary-planner-item-gadget-search #details-gadget .im-morelink-js { font-size:15px; }
	#itinerary-cart-gadget { padding:0 25px; }
	.col-mapper-sidebar { padding:0; }
	.col-mapper-map { padding:0; }
	.itinerary-planner-cart.cartInOverlay { padding:0; }
	.itinerary-mapper-map header { display:none !important; }
	.itinerary-mapper-map main { margin-top:0 !important; }
	.itinerary-mapper-map .itinerary-mapper-tabs { top:0 !important; }
	.itinerary-planner-map .map-total { font-size:14px; font-weight:300; }
	.itinerary-planner-map #map-canvas { height:100vh; min-height:600px; }
	.itinerary-mapper-map .col-mapper-sidebar,
	.itinerary-mapper-map .itinerary-planner-cart,
	.itinerary-mapper-list .col-mapper-map { display:none !important; }
	.site-alert-visible .itinerary-mapper-tabs { position:static; }
	.site-alert-visible .itinerary-mapper-tabs-gap { display:none; }
}
@media (min-width:768px) {
	.itinerary-mapper-tabs, .itinerary-mapper-tabs-gap { display:none; }
	.itinerary-mapper-wrapper.container-fluid { padding:0; height:calc(100vh - 60px); }
	.itinerary-mapper-wrapper > .row { margin:0; height:100%; }
	.itinerary-mapper-wrapper > .row > .col { padding:0; height:100%; }
	.trip-planner-wrapper-row { margin:0 -8px; }
	.itinerary-planner-map { height:100%; }
	.itinerary-planner-map #map-canvas { height:100%; }
	.itinerary-planner-map #map-totals { position:absolute; z-index:123; left:10px; top:10px; background:#fff; box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px; }
	.col-mapper-sidebar { overflow:auto; padding-top:10px; }
	.itinerary-mapper-content { padding:25px 30px 10px 30px; clear:both; }
}

.layout-itineraryplanner #at4-share { display:none !important; }
ul.itinerary-share { width: 222px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; position: absolute; margin: 0; padding:0; list-style: none; overflow: hidden; will-change: padding; -webkit-transition: padding .3s; transition: padding .3s; z-index: 5; margin-left:-10px; }
ul.itinerary-share.active li:first-of-type { margin-left:10px; }
ul.itinerary-share li { opacity: 0; will-change: opacity; -webkit-transition: opacity .4s; transition: opacity .4s; background: #fff; color: #cf0010; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; border-radius: 50px; -webkit-box-shadow: 0 5px 16px rgba(0,0,0,.25); box-shadow: 0 5px 16px rgba(0,0,0,.25); margin:4px 8px 6px 0; -webkit-transform: scale(1); transform: scale(1); will-change: transform; -webkit-transition: all .2s; transition: all .2s; text-align: center; }
ul.itinerary-share.active li { opacity: 1; }
ul.itinerary-share li:first-of-type { margin-left: 197px; }
ul.itinerary-share li a { color: #0D859B; line-height: 36px; display: inline-block; width: 100%; }
ul.itinerary-share li a:hover { text-decoration: none; -webkit-transform: scale(1.1); transform: scale(1.1); }
@media (max-width: 380px) {
	.com_bookeasy.view-details ul.itinerary-share { clear: both; margin-right: 0; padding-top: 7px; }
}

.itinerary-mapper-tabs { position:fixed; z-index:1111; top:50px; left:0; right:0; padding:8px 20px; background:#253746; color:#fff; text-align:center; font-size:15px; }
.itinerary-mapper-tabs .row { margin:0; }
.itinerary-mapper-tabs .col-xs-6 { padding:0; }
.itinerary-mapper-tabs a { color:#fff; display:block; height:34px; line-height:34px; border-radius:8px; max-width:120px; margin:0 auto; text-decoration:none; outline:none; }
.itinerary-mapper-list .itinerary-mapper-tab-list a,
.itinerary-mapper-map  .itinerary-mapper-tab-map a { background:var(--colour-instant); }
.itinerary-mapper-tabs-gap { height:50px; }


/* itinerary bundles / itinerary planner, when using search gadget */

#details-gadget .embedded-search::after { display:none !important; }
#itemGadget .priceGrid tbody td { vertical-align:top; padding:8px 0 8px 0; }
#itemGadget .priceGrid tbody td.item-thumb { width:100px; }
#itemGadget .priceGrid tbody td.item-thumb div { width:100px; height:75px; }
#itemGadget .priceGrid tbody td.item-thumb div img { width:100%; height:100%; object-fit:cover; }
#itemGadget .priceGrid tbody td.thumb { display:none !important; }
#itemGadget .priceGrid tbody td.summary { text-align:left; padding:8px 8px 8px 15px; }
#itemGadget .priceGrid tbody td.summary p { margin:0 0 8px 0; }
@media (min-width:1200px) {
	/*.itinerary-planner-item.expanded { position:static; }*/
	/*.itinerary-planner-item.expanded .trip-planner-wrapper-row { position:fixed; z-index:3333; top:10vh; left:50%; margin:0 0 0 -380px; width:760px; background:#fff; box-shadow:0 0 500px 100px rgba(0,0,0,0.6); border-radius:10px; padding:30px 0; }*/
	/*.itinerary-planner-item.expanded .trip-planner-wrapper-row { position:absolute; z-index:3333; left:30vw; background:#fff; width:50vw; padding:30px 0; }*/
}

.view-itinerarybundle .itinerary-planner-item .col-md-3 { padding-right:0; }
.itinerary-planner-item-gadget-search #itemGadget,
.itinerary-planner-item-gadget-details #itemGadget { width:auto !important; }
#details-gadget .trip-planner-details-gadget .priceGrid { width:auto; padding:0; margin:0; }
#details-gadget #itemGadget .trip-planner-search-gadget { padding:0 0 12px 0; }
#details-gadget #itemGadget .trip-planner-search-gadget .currencyId { max-width:100% !important; width:100% !important; margin-bottom:3px !important; }
#details-gadget #itemGadget .trip-planner-search-gadget .gadget__search-column { max-width:100% !important; min-width:50%; margin-bottom:3px !important; }
#details-gadget #itemGadget .trip-planner-search-gadget .gadget__search-column-date { min-width:100%; }
#details-gadget #itemGadget .trip-planner-search-gadget .gadget__search-column .row .row { margin:0; }
.trip-planner-wrapper-row #details-gadget { margin-top:0; }
.trip-planner-wrapper-row #details-gadget #itemGadget table thead td { padding:4px 0; }
.itinerary-planner-item .click-me-click-me { /*animation:clickmeBounce 2s infinite 2s;*/ animation:clickmeDefaultColors 1.5s infinite; animation-direction:alternate; }
@keyframes clickmeDefaultColors { from { } to { background-color:#faae33; } }
@keyframes clickmeBounce { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-10px); } 60% { transform: translateY(-5px); background-color:#faae33; } }
.itinerary-planner-item.booking-completed .btn-booknow { position:relative; }
.itinerary-planner-item.booking-completed .btn-booknow:after { content:"\f058"; color:#00aa00; font-family: 'Font Awesome 5 Pro', FontAwesome; font-weight: 900; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; font-size: 36px; vertical-align: top; position:absolute; right:-18px; top:-18px; background:#fff; border-radius:50%; border:solid 3px #fff; }

.itinerary-planner-cart { display:none; }
.BE-cart-visible .itinerary-planner-cart { display:block; }
.itinerary-planner-cart.cartInOverlay { margin-bottom:32px; }
.itinerary-planner-cart.cartInOverlay h2 { background:#444; color:#fff; margin:0; padding:4px 20px; line-height:150%; font-size:24px; }
.itinerary-planner-cart.cartInOverlay .shopping-cart .noItems { margin:0; padding:25px 0 0 20px; }
.itinerary-planner-cart.cartInOverlay .cartItems div.item { margin-left:-8px; }
.itinerary-planner-cart.cartInOverlay,
.itinerary-planner-cart .shopping-cart.BE,
.itinerary-planner-cart .shopping-cart.BE div.cartItems { font-family:inherit; font-size:inherit; padding-left:0; padding-right:0; border:none; }
@media (min-width:768px) {
	.itinerary-planner-cart.cartInOverlay { position:absolute; z-index:1888; top:100px; right:9px; width:320px; background:#fff; padding:0; box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px; }
}

#itinerary-notification-top { position:fixed; z-index:99999; top:160px; left:0; right:0; }
#itinerary-notification-top span { display:block; margin:0 auto; width:90%; max-width:600px; border:solid 3px #ddd; background:#f3f3f3; color:#888; font-size:15px; font-weight:400; border-radius:2px; line-height:160%; padding:5px 15px; box-shadow:2px 2px 4px 0px rgba(0,0,0,0.1); text-align:center; }

#itinerary-notification-bottom { position:fixed; z-index:99999; bottom:90px; left:0; right:0; }
#itinerary-notification-bottom span { display:block; margin:0 auto; width:90%; max-width:600px; border:solid 3px #00aa00; background:#00bb00; color:#fff; font-size:14px; font-weight:400; border-radius:2px; line-height:160%; padding:5px 15px; box-shadow:2px 2px 4px 0px rgba(0,0,0,0.1); text-align:center; }

body div#wdOverlayContent div.add-to-cart-form div.addProgress div.spinner,
body div#wdOverlayContent div.item-details div.addProgress div.spinner { right:30px; bottom:25px; }

@media screen and (max-width:767px) {
	.view-itinerarybundle .itinerary-planner-item .col-md-3 { padding-right:15px; }
	#details-gadget #itemGadget .trip-planner-search-gadget { padding:30px 0 30px 0; }
	.itinerary-planner-item .trip-planner-wrapper-row .col-md-3 { width:100%; position:static; }
}

.itinerary-planner-imagegallery { margin:0 auto 30px auto; max-width:880px; }
.itinerary-planner-imagegallery .cycle-next,
.itinerary-planner-imagegallery .cycle-prev { position: absolute; z-index: 200; top: 50%; margin-top: -30px; width: 60px; height: 60px; line-height: 60px; background-color: rgba(0,0,0,.5); color: hsla(0,0%,100%,.8); text-align: center; cursor: pointer; }
.itinerary-planner-imagegallery .cycle-prev { left: 0; }
.itinerary-planner-imagegallery .cycle-next { right: 0; }
.itinerary-planner-imagegallery .cycle-next i,
.itinerary-planner-imagegallery .cycle-prev i { line-height: 60px; font-size: 24px; }



/* UTILITIES :  simple loading spinners */
.lds-dual-ring-medium-dark { display: block; width: 80px; height: 80px; margin:0 auto; }
.lds-dual-ring-medium-dark:after { content: " "; display: block; width: 64px; height: 64px; margin: 8px; border-radius: 50%; border: 6px solid #555; border-color: #555 transparent #555 transparent; animation: lds-dual-ring 1.2s linear infinite; }
.lds-dual-ring-small-dark { display: block; width: 40px; height: 40px; margin:0 auto; }
.lds-dual-ring-small-dark:after { content: " "; display: block; width: 32px; height: 32px; margin: 4px; border-radius: 50%; border: 3px solid #555; border-color: #555 transparent #555 transparent; animation: lds-dual-ring 1.2s linear infinite; }
@keyframes lds-dual-ring {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
