/*!Combinable CSS group = public!*/
/* preload */
body.index:after {
	position:absolute;
	left:-100%;
	top:-100%;
    content: url('../assets/arrow_sideways.png');
}

.item_card {
	position:relative;
	float:left;
	background-color:#fff;
}

.item_card.small {	
	display:flex;
	margin:1rem;
	width:160px;
	height:calc(100% - 2rem);
	flex-direction:column;
}

.item_card.small:first-child {
	margin-left:0;
}

.item_card.small:last-child {
	margin-right:0;
}

.item_card.list,
.item_card.cart,
.item_card.order {
	width:100%;
	margin-bottom:5rem;
}

.item_card.cart,
.item_card.order,
.my_activities .item_card.list {
	background-color:#F3F4F5;
	box-shadow:2px 1px 13px #bbb;
	padding:2rem 1rem;
	margin:2px 2px 5rem 2px;
	width:calc(100% - 4px);
	box-sizing:border-box;
}

.item_card.full {
	padding:0 2rem;
	float:none;
}

.side_bar .items_box .item_card {
	float:none;
	margin:1rem auto 3rem auto;
	box-shadow:0px 0px 4px #b3bfc6;
	padding:0.5rem;
}

.side_bar .items_box .item_card:last-child {
	margin-bottom:1rem;
}

.item_card .thumb_wrap {
	width:160px;
	height:160px;
	position:relative;
	float:left;
	order:1;
	justify-self:start;
	display:flex;
	box-sizing:border-box;
	background-color:#fff;
}

.item_card.cart .thumb_wrap,
.item_card.order .thumb_wrap,
.item_card.list .thumb_wrap {
	padding:0.5rem;
	border:1px solid #EAEDEF;
	box-shadow:0px 0px 4px #b3bfc6;
}

.item_card .thumb_wrap img.thumb {
	position:relative;
	width:100%;
	max-height:100%;
	justify-self:center;	
	z-index:10;
	/* these next ones are for alt text */
	font-style:italic;
	display:flex;
	flex-direction:column;
	justify-content:center;
	color:#000;
	text-align:center;
}

.item_card .thumb_wrap a {
	display:block;
	text-decoration:none;
}

.item_card .thumb_wrap .price,
.item_card .thumb_wrap h3.title {
	padding:0.5rem;
	background:rgba(0,0,0,0.7);
	color:#fff;
	position:absolute;
	left:0;
	z-index:99;
}

.item_card .thumb_wrap h3.title a {
	color:#fff;
	text-decoration:none;
}

.item_card .thumb_wrap .price {
	top:0;
}

.item_card.list .thumb_wrap .price {
	top:0.5rem;
	left:0.5rem;
}

.price_block,
.price_block_type {
	overflow:auto;
	text-align:center;
}

.price .price_cents {
	font-size:0.7em;
	vertical-align:super;
}

.regular_price,
.regular_price_block .price {
	text-decoration:line-through;
}

.regular_price_block {
	font-size:0.9rem;
}

.price_block .price {
	display:inline;
}

.price_block .our_price .price {
	font-size:2.5rem;
	color:#000;
	line-height:1.2em;
}

.item_card.cart .for_popup {
	display:none;
}

.price_block {
	display:none;
}

.price_block.visible {
	display:block;
}

.item_card .thumb_wrap h3.title {
	bottom:0;
	right:0;
	text-align:center;
}

.item_card .tags {
	margin-bottom:1rem;
	overflow:auto;
}

.item_card .tags .ico {
	position:relative;
	float:left;
	width:25px;
	height:26px;
	margin:0 0.2rem;
	background-repeat:no-repeat;
	background-size:contain;
}

.item_card .tags .ico:first-child {
	margin-left:0;
}

.item_card .tags .ico:last-child {
	margin-right:0;
}

.item_card.cart h3.title,
.item_card.order h3.title,
.item_card.list h3.title {
	font-size:1.5rem;
	justify-self:start;
}

.item_card.cart h3.title,
.item_card.order h3.title {
	margin:1rem 0;
}

.item_card.cart .item_total,
.item_card.order .item_total  {
	font-size:1.2rem;
	text-align:right;
	margin-top:1rem;
	font-weight:bold;
}

.item_card .descr {
	order:2;
	flex:1 1 auto;
	justify-self:start;	
	font-size:0.9rem;
	margin:0.5rem 0;
} 

.item_card.small {
	text-align:center;
	float:left;
}

.item_card a.more {
	order:3;
	justify-self:end;
	display:block;
	text-align:center;
}

.item_card.list a.more {
	width:auto;
	float:right;
	padding:0.5rem 0;
}

.side_bar .items_box .similar {
	position:relative;
	min-height:5rem;
}

.side_bar .specials_wrap:after {
	content:'';
	position:absolute;
	top:-2.7rem;
	left:-2.7rem;	
	width:81px;
	height:81px;
	background:transparent url('../assets/specials.png') no-repeat center center;
	background-size:contain;
}

.col-1_5 .side_bar .specials_wrap:after  {
	left:-0.7rem;
}

.item_card.list .specials {
	margin:0 auto 2rem auto;
	text-align:center;
}

.item_card.full .main h3 {
	font-weight:bold;
	margin:0.5rem 0;
	font-size:1.2rem;
}

.item_card.full .col-1_2 {
	padding-right:0.5rem;
}

.item_card.full .col-1_2:last-child {
	padding-right:0;
}

.item_card.full .specials,
.item_card.full h1.title,
.item_card.full .tags_wrap {
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.item_card.full .specials,
.item_card.full h1.title,
.item_card.full .tags_wrap .tags {
	margin-bottom:0;	
}

.item_card.full .specials {
	margin-right:1rem;
}

.item_card.full .maps .collapsible_content {
	display:flex;
}

.item_card.full .maps .map_contain {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}

.item_card.full .maps .map_contain .map.no-dir {
	margin-bottom:1.4rem;
}

.item_card .middle,
.item_card .rightside,
.item_card .leftside {
	position: relative;
	float: left;
	box-sizing: border-box;
}

.item_card .middle {
	padding:0 1rem;
	width:60%;
}

.item_card .rightside {
	width:13%;
}

.item_card .leftside {
	width:25%;
	max-width:180px;
}

.item_card .info {
	width:100%;
}

.item_card.cart .prices .as_cell,
.item_card.order .prices .as_cell {
	/* This is important to keep proper sizes / col count, otherwise "cells" will flow in previous "row" */
	width:calc(75% / 4);
	text-align:center;
}

.item_card.order .prices .as_cell {
	width:calc(95% / 4);
}

.item_card.cart .prices .as_cell.count,
.item_card.order .prices .as_cell.count {
	width:5%;
}

.item_card.cart .prices .as_cell.edit {
	width:10%;
}

.item_card.cart .prices .as_cell.title,
.item_card.cart .prices .mobile.title,
.item_card.order .prices .as_cell.title,
.item_card.order .prices .mobile.title,
.item_card .info .as_cell.title {
	font-weight:bold;
	background-color:#dfdfdf;
	background-image:-webkit-linear-gradient(#fff, #dfdfdf);
	background-image:-moz-linear-gradient(#fff, #dfdfdf);
	background-image:-o-linear-gradient(#fff, #dfdfdf);
	background-image:linear-gradient(#fff, #dfdfdf);
	background-repeat:no-repeat;
	background-position:top left;
	background-size:100% 100%;
	
}

.item_card.cart .prices .as_cell.title,
.item_card.order .prices .as_cell.title,
.item_card .info .as_cell.title {
	order:1;
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.item_card.cart .prices .as_cell.value,
.item_card.order .prices .as_cell.value,
.item_card .info .as_cell.value {
	order:2;
}

.item_card .title_wrap {
	display:flex;
	justify-content:space-between;
	margin-bottom:1rem;
}

.item_card .rating_stars {
	margin:0;
}

.item_card .rating_stars:after {
	z-index:0;
}

.my_activities p.no_data {
	display:none;
}

.my_activities p.no_data.visible {
	display:block;
	font-style:italic;
	font-size:1.5rem;
	text-align:center;
}
.item_card button.my_activities {
	display:none;
}

.item_card.cart button.cart.remove_from,
.item_card button.my_activities.remove_from {
	padding-left:2rem;
}

.item_card.cart button.price.remove_from:before,
.item_card.cart button.price.remove_from:after,
.item_card.cart button.cart.remove_from:before,
.item_card.cart button.cart.remove_from:after,
.item_card button.my_activities.remove_from:before,
.item_card button.my_activities.remove_from:after {
	content:'';
	position: absolute;
	width:4px;
	height:1rem;
	top:calc(50% - 0.5rem);
	left:1.1rem;
	background-color:#cc3300;
}

.item_card.cart button.price.remove_from:before,
.item_card.cart button.cart.remove_from:before,
.item_card button.my_activities.remove_from:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.item_card.cart button.price.remove_from:after,
.item_card.cart button.cart.remove_from:after,
.item_card button.my_activities.remove_from:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.item_card.cart button.cart.remove_from:before,
.item_card.cart button.cart.remove_from:after,
.item_card.in_my_activities button.my_activities.remove_from:before,
.item_card.in_my_activities button.my_activities.remove_from:after {
	left:auto;
	right:1.1rem;
}

.item_card button.my_activities.visible {
	display:inline-block;
	position:relative;
	cursor:pointer;
}

.item_card.cart button.cart.no-background,
.item_card.in_my_activities button.no-background {
	color:#cc3300;
	position:absolute;
	top:0;
	right:0;
	padding-left:0.5rem;
	padding-right:2rem;
	cursor:pointer;
}

.item_card.cart button.price.no-background {
	position:relative;
	width:2.5rem;
	height:2.5rem;
	cursor:pointer;
}

.item_card.cart .prices,
.item_card.order .prices {
	margin-top:2rem;
}

.item_card.cart .booking_parameters,
.item_card.order .booking_parameters {
	display:flex;
}

.item_card.cart .activity_data,
.item_card.cart .guest_options,
.item_card.order .activity_data,
.item_card.order .guest_options {
	display:flex;
	flex-direction:column;	
}

.item_card.cart .guest_options,
.item_card.order .guest_options {
	flex-grow:1;
}

.item_card.cart .guest_options .guest,
.item_card.order .guest_options .guest {
	color:#235284;
	font-weight:bold;
}

.item_card.cart .guest_options .info {
	font-size:0.9em;
	color:#768b99;
	font-style:italic;
}

.item_card.cart .guest_options .title span {
	line-height:1.1em;
	vertical-align:middle;
}

.item_card.cart .guest_options .value input,
.item_card.cart .guest_options .value .selectric-wrapper {
	width:100%;
}

.item_card.cart .activity_data a.item_title,
.item_card.order .activity_data a.item_title {
	margin:1rem 0;
}

.item_card.cart .activity_data .item_block,
.item_card.order .activity_data .item_block {
	margin:2rem 5rem 0 0;
}

.item_card.cart .activity_data .item_block:first-child,
.item_card.order .activity_data .item_block:first-child {
	margin-top:0.5rem;	
}

.item_card.cart .booking_parameters .date,
.item_card.cart .booking_parameters .time {
	margin:0.5rem;
	overflow:auto;
	line-height:2em;
}

.calendar_popup .popup_content {
	width:auto;
}

.item_card.cart button.grey_button {
	cursor:pointer;
	color:#fff;
	background-color: #768b99;
    background-image: -webkit-linear-gradient(#bfccd4, #768b99);
    background-image: -moz-linear-gradient(#bfccd4, #768b99);
    background-image: -o-linear-gradient(#bfccd4, #768b99);
    background-image: linear-gradient(#bfccd4, #768b99);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 100% 100%;
}

.item_card.cart button.grey_button:hover {
	color:#000;
	background-color:#bfccd4;
	background-image: -webkit-linear-gradient(#768b99, #bfccd4);
	background-image: -moz-linear-gradient(#768b99, #bfccd4);
	background-image: -o-linear-gradient(#768b99, #bfccd4);
	background-image: linear-gradient(#768b99, #bfccd4);	
}

.item_card.cart button.grey_button:disabled {
	background-image:none;
	background-color:#ccc;
}

.item_card.cart .booking_parameters button.grey_button {
	float:right;
	margin-left:1rem;
	line-height:1.5em;
	padding:0.1rem 0.3rem;
	border-radius:10px;
}

.item_card.cart .prices button.grey_button {
	border-radius:1rem;
	width:2.4rem;
	font-weight:bold;
	font-size:2rem;
	padding:0;
}

.item_card .map {
	max-width:100%;
}

.item_card .print {
	padding-left:15px;
	min-height:10px;
	display:inline-block;
	background-color:transparent;
	background-position:left center;
	background-repeat:no-repeat;
	margin:0.5rem;
	background-image:url('../assets/ico_print.png');
}

.activities_slider_wrap .pages.activities_groups .page_group.active {
	display:flex;
}

.activities_slider_wrap .navigate {
	width:45px;
	height:100%;
	display:flex;
	justify-content:center;
	flex-direction:column;
	opacity:0.7;
	flex-grow:0;
	flex-shrink:0;
}

.activities_slider_wrap .navigate.hidden button {
	display:none;
}

.activities_slider_wrap .navigate:hover {
	opacity:1;
}

.activities_slider_wrap .item_slider_wrap {
	overflow:hidden;
	height:100%;
}

.activities_slider_wrap .item_slider_wrap .activities_slider {
	height:100%;
}

.activities_slider_wrap .navigate button {
	background:transparent url('../assets/arrow_sideways.png') no-repeat center center;
	background-size:contain;
	border:none;
	width:100%;
	height:40px;
	cursor:pointer;
}

.activities_slider_wrap .navigate.next button {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);	
}

.activities_list {
	margin-bottom:2rem;
}

.activities_list,
.activities_list .list {
	overflow:auto;
}

.activities_list .loading_wrap {
	height:auto;
	position:relative;
}

.hightl_and_reviews {
	display:flex;
	margin:2rem 0;
}

.hightl_and_reviews > .highlights {
	width:70%;
}

.hightl_and_reviews > .reviews {
	background-color:#f3f2e7;
	border-radius:2rem;
	padding:1rem;
	min-width:200px;
	max-width:300px;
	height:0%; /* do not stretch to full container height */
	margin:0 0 0 4rem;
}

.hightl_and_reviews > .reviews h2 {
	margin-top:0;
}

.hightl_and_reviews > .reviews a.go_to_block {
	margin-top:0.5rem;
	position:absolute;
	bottom:1rem;
	right:1rem;
}

.mobile_tablet_price {
	display:none;	
}


@media screen and (max-width: 1050px) {
	.mobile_tablet_price {
		display:block;	
	}
	
	.side_bar .items_box.specials_wrap,
	.side_bar .items_box.similar_activities {
		margin-top:1rem;
	}
	
	.side_bar .items_box.specials_wrap .specials,
	.side_bar .items_box.similar_activities .similar  {
		display:flex;
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	.item_card .title_wrap,
	.hightl_and_reviews {
		flex-wrap:wrap;
	}
	
	.hightl_and_reviews > .highlights {
		width:auto;
	}
	
	.hightl_and_reviews > .reviews {
		margin:0.5rem 0;
		max-width:100%;
	}
	
	.item_card.full .specials, 
	.item_card.full h1.title, 
	.item_card.full .tags_wrap .tags {
		margin:0.5rem 0;
	}
}

@media screen and (max-width: 870px) {
	.item_card.list,
	.item_card.cart,
	.item_card.order,
	.item_card.full .maps .collapsible_content,
	.item_card.cart .booking_parameters, 
	.item_card.order .booking_parameters {
		display:flex;
		flex-direction:column;
	}
	
	.item_card.list .middle
	.item_card.cart .middle,
	.item_card .title_wrap {
		margin-top:1rem;
	}
	
	.item_card.cart .activity_data,
	.item_card.cart .guest_options,
	.item_card.order .activity_data,
	.item_card.order .guest_options,
	.item_card.cart .middle,
	.item_card.cart .leftside,
	.item_card.list .middle,
	.item_card.list .leftside {
		width:100%;
	}
	
	.item_card .leftside {
		max-width:100%;
	}
	
	.item_card.full .maps .map_contain {
		margin-bottom:1rem;
	}
	
	.item_card.full .maps .map_contain:last-child {
		margin-bottom:0;
	}
		
	.item_card.list .leftside .booking_and_icons {
		position:relative;
		float:left;
		margin-left:2rem;
		display:block;
	}
	
	.item_card .rightside,
	.item_card.cart .prices .as_cell.title.desktop,
	.item_card.order .prices .as_cell.title.desktop {
		display:none
	}
	
	.item_card button.my_activities.visible,
	.item_card.cart .prices .as_cell .title.mobile,
	.item_card.order .prices .as_cell .title.mobile {
		display:block;
	}
	
	.item_card.cart .activity_data .item_block {
		margin:2rem 0;
	}
	
	.item_card.cart .prices .as_cell,
	.item_card.cart .prices .as_cell.count,
	.item_card.cart .prices .as_cell.edit,
	.item_card.order .prices .as_cell,
	.item_card.order .prices .as_cell.count {
		width:100%;	
		display:flex;
		flex-direction:row;
		padding:0;
	}
	
	.item_card.cart .prices .as_cell.remove {
		margin-bottom:3rem;	
	}
	
	.item_card.cart .prices .as_cell div,
	.item_card.order .prices .as_cell div {
		width:50%;
		padding:0.5rem;
		box-sizing:border-box;
	}
	
	.item_card.cart .prices button.grey_button {
		width:3.4rem;
		margin:0.5rem;
	}
	
	.item_card.cart .prices button.grey_button.more {
		margin-top:1rem;
	}
}

@media screen and (max-width: 650px) {
	.side_bar .specials_wrap:after {
		left:-1rem;
	}
}

