/* sections:
        "General setting"
        "Standard template "
        "latest news, testimonial templates"
        "home page "
        "booking proces"
        "Search page"
		"main with form"
		"Tour page mobile"
		"mobile navigation and menu"
		"footer"
*/
/*
	Unset the under 730px sizing for DESKTOP DEVICES ONLY (Deskop only <730px styles) to allow mobile styles
*/
@media screen and (max-width: 1000px) {
	#news_and_offers .offer:first-of-type{
		border-bottom: 1px solid #d4d4d4;
	}
}
@media screen and (max-width: 730px) {
	#tour-page-wrapper .header_image_upgrade,
	.special-offer,
	.header_image .img,
	#tab_headers,
	.tabs,
	.tour_footer,
	#listing-search-wrapper,
	li.mega-drop-down li.level2.item1:before,
	.swiper-container.swiper-container-horizontal,
	.swiper-container-horizontal
	
	{
		left: 50%;
		width: 100vw;
		margin-left: -50%;
	}
	.header_image .img img{
		min-height: 100%;
		min-width: 100%;
		height: auto;
		width: auto;
		top: 50%;
		left: 50%;
		position: absolute;
		margin: auto auto!important;
		transform: translate(-50%, -50%);
	}
	
}

/* #################################################### */
				/* General setting */
/* #################################################### */
body {
	min-width: 0;
}
.outer-wrapper {
	min-width: auto;
}
.inner-wrapper {
	max-width: 100%;
	box-sizing: border-box;
}
.iw{
	padding:0 15px;
}
.main-content {
    padding-bottom: 15px;
}
#header-main{
	min-width: unset;
}
/* #################################################### */
				/* Standard template */
/* #################################################### */
.main-content h2 {
	text-align: center;
	font-size: 24px;
	line-height: 90%;
	font-weight: 500;
	color: #222222;
	margin-bottom: 12px;
	text-transform: uppercase;
	font-family: 'montserrat-black', 'montserrat', sans-serif;
}
.main-content p{
	font-size: 16px;
	line-height: 29px;
}
/* main content */
#breadcrumbs{
	display: none;
}
/* header */
#home_slider .s_i {
	max-width: 100%;
}
#home_slider .slider_h,
.header_image .header_image_text{
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 90%;
	padding: 30px 10px 27px 10px!important;
	min-height: auto;
	float: none;
}
#home_slider .slider_h h1,
#home_slider .slider_h div:first-Child,
.header_image .header_image_text h1{
	font-size: 24px;
	line-height: initial;
	padding: 0;
	text-align: center;
}
#selected_holder_inner {
	width: 290px;
	margin: 0 auto;
}
#selected_holder:after {
	content: "Why Take a Railtour?";
	position: absolute;
	font-weight: bold;
	color: white;
	font-size: 14px;
	top: 15px;
	width: 90%;
	left: 10px;
	right: 0;
	margin: 0 auto;
	letter-spacing: -0.3px;
}
#selected_holder_inner span{
	top:12px;
}
#selected_holder #selected_slider{
	top: 12px !important;
}
.small-header .header_image .img{
	height: 220px;
}

.small-header .header_image {
	margin-bottom: 55px;
}

/* #################################################### */
			/* home page  */
/* #################################################### */
/* header */
.oak-leaf,
.tour-cards-heading{
	font-size: 12px;
	line-height: 14px;
}
#home-slider-wrapper {
	height: 270px;
	margin-bottom: 0px;
}
#selected_holder_inner{
	left: 0;
	right: 0;
	margin: auto;
	position: relative;
	width: 90%;
	padding-left: 170px;

}
#select_holder .slider-text{
	width: 50%;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 1;
}
#home_slider, #slider {
	height: 210px!important;
}
#home_slider img {
	min-height: 210px;
	max-height: inherit;
	max-width: inherit;
	min-width: 100%;
}
#tour_page_alt #home_slider img {
	width: 100%;
}

/* micro layout testimonial */
.testimonials_micro {
	padding: 56px 15px;
	background: linear-gradient( rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8) ), url(/images/background.png?19);
	background-position: center center;
}
.testimonials_micro .title{
	font-size: 18px;
}
.testimonials_micro .author{
	font-size: 14px;
	text-align: center;
	margin-bottom: 10px;
}.testimonial-inner{
	padding:20px 25px;
}
.testimonials_micro:after{
	content: "";
	width: 100%;
	height: 40px;
	background-color: rgba(255, 255, 255, 0.5);
	position: absolute;
	bottom: 0;
	left: 0;
}
.testimonial_micro .decoration{
	margin-bottom: 20px;
}
.testimonials_micro .decoration:last-child {
	height: 0px;
}
/* Video Micro Layout*/
.video_micro .home-intro-wrapper{
	margin-top: 0;
}
.video_micro .home-info{
	width: 100%;
	text-align: center;
	padding-left: 0;
	padding-right: 0;
	box-sizing: border-box;
	border-top: 1px solid #d4d4d4;
	margin-top: 25px;
	padding-top: 29px;
	border-left: unset;
}
.video_micro .home-info-wrapper div.home-info:first-child{
	padding-top: 0;
	margin-top:29px;
}
.video_micro .header{
	font-size: 20px;
	font-weight: 700;
	line-height: 24px;
	margin-bottom: 10px;
}
.video-micro #breadcrumbs{
	display: block;
	padding: 10px 0;
	margin-bottom: 10px;
	font-size: 12px;
}
.video_micro .content,
.video_micro .info-link,
.video_micro .content h2.heading2{
	font-size: 16px;
	line-height: 29px;
}

.video_micro .info-link{
	font-weight:700;
}
.video_micro .video{
	height: 228px;
}
.video_micro .home-intro-wrapper .text{
	text-align: center;
	padding-top: 15px;
}
.video_micro .oak-leaf{
	margin-top: 40px;
}
/* Tour Enquiry */
.tour-enquiry {
	padding: 0 10px;
	box-sizing: border-box;
}
.input_holder {
	max-width: 100%;
}
.tour-passengers label, .tour-accomm label, .pre_post_accom_inputs label, .field-wrapper .ap_label {
	width: 100%!important;
	box-sizing: border-box;
}
.field-wrapper input, .field-wrapper select, .field-wrapper textarea {
	max-width: 100%;
	box-sizing: border-box;
}

/* Tour card micro Layout */
.top_links {
	column-count: unset!important;
}
.cards-container .link a{
	font-size: 18px;
	padding: 15px 0px;
	width: 100%;
	border: none;
	max-width: unset;
}
.cards-container div.link {
	width: 50% !important;
}
.cards-container div.link a:before,
.cards-container div.link a:after{
	top:14px !important ;
	background-image: url(/images/r-mobile-mark.png);
	background-size: 70%;
}
.cards-container div.link a:after{
	background-image: url(/images/l-mobile-mark.png);
}
.cards-container div.link.bottom a:before,
.cards-container div.link.bottom a:after{
	top:14px !important ;
}

.cards-container .link {
	width: 50%;
	float: left;
	padding: 5px 0 8px 5px;
	box-sizing: border-box;
}
.cards-container .link:nth-child(odd){
	padding: 5px 5px 8px 0;
}
.cards-container .link .text{
	width: 75%;
}
.cards-container .columns2 .link a{
	margin-right: auto;
}
.bottom_links_wrapper{
	margin-bottom: 50px;
	margin-top: 20px;
}
.card.offer-card .card-title{
	line-height: 18px;
}
.card.offer-card .info-bar{
	line-height: 16px;
}
.top_links_wrapper{
	margin-top: 18px;
	margin-bottom: 10px;
}
.card .tour-code{
	margin-top: 10px;
}
.card .line{
	top:15px;
}
.bottom_links {
	left: 0;
	right: 0;
	margin: auto;
}
#tour-page .castle-upgrade {
	position: initial;
}
#tour-page .castle-upgrade .promo-sticker {
	position: unset;
	display: block;
	width: 120px;
	height: 100px;
	margin: 0 auto;
}

@media screen and (max-width: 730px) {
	/* Tour Cards */
	.top_links:before, .bottom_links:before{
		display: none;
	}
	.card.tour-card {
		width: 470px;
		float: none;
		display: block;
		clip-path: url(#tour-card-470-280);
		-webkit-clip-path: url(#tour-card-470-280);
	}
	.card.tour-card:nth-child(odd) {
		margin: 0 auto 19px auto;
	}
	/* Offer cards */
	.offer-card-container {
		width: 470px;
	}
	.card.banner-card,
	.card.offer-card {
		width: 470px;
		height: 200px;
		margin: 0 auto 19px auto;
		clip-path: url(#tour-card-470-200)!important;
		-webkit-clip-path: url(#tour-card-470-200)!important;
	}
	.card.offer-card .card-details{
		min-height: 100px;
		padding-top: 12px;
	}
	#tour-page img.promo-sticker {
		width: 70px;
		height: 70px;
		top: -99px!important;
		right: 5px!important;
	}
	/* Newsletter signup */
	.newsletter-signup {
		padding: 0 10px;
		box-sizing: border-box;
	}
}

/* ############################################################### */
			/* latest news, testimonial templates */
/* ################################################################ */

/* micro layout latest news */

.news-image,
.testimonial-image{
	margin-left: 0;
	margin-bottom: 12px;
}
.news-item, .testimonial-item {
	padding: 25px 15px 70px;
	margin-bottom: 25px;
}
.pagination li{
	margin: 5px;
}
h2.news-headline, 
.testimonial-headline{
	font-size: 20px;
	text-align: left;
	line-height: 20px;
	margin-bottom: 9px;
}
.news-item p, 
.testimonial-item p{
	font-size: 16px;
	line-height: 29px;
}

/* micro layout testimonial */

.testimonials_micro {
	padding: 56px 15px;
	background: linear-gradient( rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8) ), url(/images/background.png?19);
}
.testimonials_micro .title{
	font-size: 18px;
}
.testimonials_micro .author{
	font-size: 14px;
	text-align: center;
	margin-bottom: 10px;
}
.testimonial-inner{
	padding:20px 25px;
	margin-bottom: 10px;
}
.testimonials_micro:after{
	content: "";
	width: 100%;
	height: 40px;
	background-color: rgba(255, 255, 255, 0.5);
	position: absolute;
	bottom: 0;
	left: 0;
}
.testimonial_micro .decoration{
	margin-bottom: 20px;
}
.testimonials_micro .decoration:last-child {
	height: 0px;
}    
/* #################################################### */
			/* booking proces */
/* #################################################### */
#logo_wrapper{
	float: unset;
}
#logo_wrapper .secondary_logo {
	width: 72px;
	margin-top: 0px;
	position: absolute;
}
.booking #call{
	font-size: 18px;
	top: 10px;
	margin-left: 13px;
}
.booking #logo{
	color: #ffffff;
}
.booking #logo_text{
	height: auto;
	padding-bottom: 10px;
	padding-left: 100px;
}
.booking #tagline{
	font-size: 12px;
	color: #ffffff;
}
.booking #phone-details.open{
	display: none;
}
.booking #b-header-email a{
font-size: 14px;
}
#logo_text {
	margin-left:90px;
	padding-top:2px;
	line-height:0.8em;
}
.booking #logo_text{
margin:0px;
}
.stage-intro{
font-size: 14px;
line-height: 17px;
margin: 10px 0;
}
.methods-image {
	text-align: right;
	margin-right: 5px;
	width: auto;
}
.methods-image img{
	max-width: 160px;
	height: auto;
}
.stages-title-outer {
	width:auto; float:none;
	margin-bottom:12px;
}
.stages-title {
	font-size:24px; 
	font-weight:900; 
	height:28px;
	line-height:33px; 
	background:url('/images/large-cart.gif') no-repeat #EEEEEE 12px 50%;
	margin-right:8px;
	padding:8px;
	padding-left:42px;
}
.stages .stage .stage-inner {
	font-size:15px; 
font-weight:900;  
height:auto;
line-height:33px; 
background:#EEEEEE; 
margin-right:8px;
padding:8px;
line-height:1.2em;
}
.stages .stage {
	width:33.3333%; float:left;
}
.stages {
	clear:left;
}
.t-i {
	font-size:14px; 
}
.t-i p {
	display:block;
	white-space: nowrap;          
	overflow: hidden;
	text-overflow: ellipsis;
}
.booking .section-body .section-inputs{
	width: 100%;
}  
.tour .tour-code{
	top: 0;
	float: unset;
}
.details-departure-date-container{
	margin-right: auto!important;
}
.section-info{
	width: 100%;
}
.tour .tour-outer{
	margin-right: auto;
}
.b-tour-image{
	width: 105px;
}
.tour-name-details {
	margin-right: 140px;
	margin-bottom: 17px;
	text-align: left;
}
.tour-passengers,
.tour-accomm {
	min-height: 25px;
	height: 100%;
}
.extend-holiday:before{
	transform: rotate(90deg);
	top: -31px;
}
.extend-holiday{
	width: 100%;
	height: 65px;
	margin-bottom: 10px;
}
div#extra-nights-config-show p,
#extra-nights-config-show .tour-accomm{
	font-size: 13px;
	text-align: left;
	padding: 10px 0;
}
.stages .stage.complete .stage-inner:after{
	margin-top: -1px;
}
.booking .main-left {
	width: 100%;
	text-align: center;
}
.special-requests- {
	font-size: 12px!important;
}
.previous-stage{
	text-align: center;
}
.section-inputs-inner{
	font-size: 14px;
}
#accomm-switch{
	max-width: 210px;
	margin: auto;
	top: 10px;
	position: relative;
}
#extra-nights-config-show{
	text-align: left;
}
#basket-overview {
	float: none;
	width: auto;
	margin-top: 16px;
	clear: Both;
	position: static!important;
}
.stages {
	margin-right: 0;
	max-width: unset;
}



/* #################################################### */
			/* Search page */
/* #################################################### */
.search-wrapper{
	padding-bottom: 30px;
}
.search-field,
#search-inner input[type=submit] {
	width: 100%;
	max-width: 360px;
	float: unset;
	margin: auto;
	margin-bottom: 15px;
}
/* #################################################### */
			/* main with form */
/* #################################################### */
#contact-page div.form input[type=text]{
	width: auto!important;    
}
div.form h1{
	text-align: center;
}
div.form{
	max-width: 380px;
	position: relative;
	left: 0;
	right: 0;
	margin: auto;
}
#tour-page div.form{
	max-width: unset;
}

/* #################################################### */
				/* Tour page mobile */
/* #################################################### */

.header_image .img{
	height: 210px;
}
.booking-info{
	width: 100%;
}
.booking-info-intro{
	margin-top: 17px;
	text-align: center;
	font-size: 16px;
	line-height: 29px;
	margin-bottom: 22px;
}
#tour-page-wrapper .header_image .header_image_text{
	padding: 17.5px 0 !important;
}
.tour-page-alt .header_image .header_image_text {
	bottom: 17px!important;
}
#tour-page .booking-form{
	padding: 60px 0;
	background-color: #F2F2F2;
	position:relative;
	left: 0;
	margin: auto;
	padding-bottom:35px;
	margin-bottom: 45px;
	float: unset;
} 
#tour-page-wrapper .header_image_upgrade{
	padding: 8px 0 5px;
}
#tour-page-wrapper .header_image_upgrade p{
	margin-left: 30px;
	font-size: 13px;
	line-height: 17px;
	padding: 0;
}
#tour-page-wrapper .header_image_upgrade p:before {
	background-size: 65%;
	margin-left: -30px;

}
#tour-page .booking-form:before,
#tour-page .booking-form:after{
	background-color: #F2F2F2;
	content:"";
	position:absolute;
	width: 100%;
	height: 100%;
	left: -100%;
	top: 0;
}
#tour-page .booking-form:after{
	right: -100%;
	left: unset;
}
#tour-page .booking-info{
	padding-right: 0;
	float: unset;
	width: 100%;
}
.swiper-container-horizontal .cropped{
	margin:auto;
}
.booking-form .top_bar{
	font-size: 12px;
	padding: 6px;
}
.booking-form .assistance-info.top_bar {
	padding: 25px 10px;
	font-size: 22px;
	font-weight: 800;
}
.booking-form .assistance-info.top_bar a {
	text-decoration: none;
	color: #fff;
}
.booking-form .assistance-info.top_bar a:hover {
	text-decoration: underline;
}
.booking-form .sold-out {
	height: 90px;
	background-size: auto 100%;
	background-position: center;
}
.booking-form .sold-out span {
	height: auto;
	padding: 50px 0px 0px 0px;
}
.booking-form .price div {
	display: block;
}
.booking-form .price {
	text-align: center;
	color: #202020;
	font-weight: 900;
	font-size: 24px;
	line-height: 24px;
	position: relative;
	text-transform: uppercase;
	margin-top: 12px;
	margin-bottom: 10px;
}
.book-title{
	font-size: 16px;
}
.card-info img.promo-sticker {
	width: 60px;
	height: 60px;
	top: 20px!important;
	right: unset!important;
	left: 5px!important;
}
.booking-form .from_price_info{
	font-size: 12px;
	text-align: center;
	margin-bottom: 20px;
}
#passenger-select .passenger-select{
	column-count: unset;
	margin-bottom: 10px;
}
#passenger-select label{
	margin: 17px 0 0 8px;
}
.booking-form-details .assistance-info{
	text-align: center;
	font-size:12px;
	line-height: 20px;
}
.book-now{
	padding: 24px 0;
}
.booking-form-details .assistance-info button{
	font-size: 12px;
}
.booking-form-details #tour_price {
	height: 30px;
	line-height: 30px;
	background-color: #F8F8F8;
	padding: 10px;
	font-size: 14px;
	font-weight: 600;
	margin: -15px 0px 30px 0px;
}
.booking-form-details #tour_price span {
	float: right;
	font-size: 22px;
}
.booking-form-details #tour_price div.was {
	display: inline;
	font-weight: normal;
}
.booking-form-details #tour_price span.supp {
	float: left;
	font-size: 12px;
	margin: 10px 0px
}
.inclusions-header{
	text-align: center;
	text-transform: uppercase;
	font-size: 12px;
	display: block;
	font-weight: 600;
}
.booking-info-inclusions .list{
	font-size: 20px!important;
	text-align: center;
	font-weight: 900;
	color: #222222;
	text-transform: uppercase;
	margin-top: 20px;
}
.booking-info-inclusions p{
	line-height: 20px;
	margin-bottom: 12px;
}
.bottom-inclusions{
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.7px;
	text-align: center;
	line-height: 16px;
}
.bottom-inclusions:before{
	content: "";
	position: relative;
	width: 110px;
	height: 30px;
	margin-right: 10px;
	display: block;
	margin-top: -3px;
	margin-bottom: 1px;
	background-image: url(/images/decoration-line.png?19);
	background-position: 0;
	background-repeat: no-repeat;
	background-size: 100%;
	margin: auto;
	margin-bottom: 10px;
}
#_photo #map_overlay .back{
	max-width: 360px;
	max-height: 494px;
	width: 100%;
	height: fit-content;
}
#_photo #map_overlay .back img{
	max-width: 360px;
	width: 100%;
	height: auto;
}
.swiper-container-horizontal img{
	width: 100%!important;
	object-fit: cover;
}
#_photo #map_overlay .overlay:after{
	transform: translate(0, -290px);
}
.swiper-container-horizontal .swiper-button-next,
.swiper-container-horizontal .swiper-button-prev{
	background-size: 20px;
	width:32px;
}
#_highlights{
	background-color: #ffffff;
	padding-top: 25px;
	padding-bottom: 28px;
}
#_highlights .itinerary_heading_wrapper > *{
	float: unset;
}
#_highlights .itinerary_heading_wrapper{
	height: auto;
	text-align: center;
}
#_highlights .itinerary_content{
	border-left: unset;
}
#_highlights .itinerary{
	margin-top: 14px;
}
#_highlights .itinerary_content,
#_highlights .itinerary.close .itinerary_content{
	margin:0;
	padding: 0;
}
#_highlights .itinerary:not(:first-of-type):before{
	content: "";
	position: relative;
	display: block;
	height: 30px;
	width: 2px;
	background-color: #C2C2C2 ;
	margin: auto;
	margin-top: 12px;
	margin-bottom: 14px;
}
#_highlights .itinerary:first-of-type .itinerary_content{
	border-left: none;
}
#_highlights .itinerary_heading_wrapper .itinerary_day{
	width: 58px;
	box-sizing: border-box;
	margin:auto;
}
#_highlights .expand_button{
	margin:auto;
	position: relative;
	transform: translate(55px, 0);
	margin-top: -47px;
	margin-bottom: 20px;
}
#_highlights .title{
	font-size: 18px;
	font-weight: 800;
}
#_highlights .overnight_text{
	font-size: 14px;
	text-transform: capitalize;
	margin-top: 3px;
}
#_highlights .upgrade, #_highlights .itinerary_content .button{
	color: #b0b0b0;
	text-align: center;
	margin-left: 0;
	font-weight: 800;
	margin-top: 15px;
	padding-left: 8px;
	padding-right: 8px;
}
#_highlights .upgrade_info{
	margin-top: 36px;
	font-size: 12px;
}
#_highlights .itinerary_content p{
	font-size: 14px;
	line-height: 25px;
}
#_highlights .upgrade_info div:not(:last-child){
	margin-bottom: 13px;
}
#_reviews .tab-content{
	padding-top: 20px;
}
#_reviews{
	background-color:#f2f2f2;
	text-align: center;
}
#_reviews .image{
	float: unset;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    max-width: 500px;
    margin-bottom: 15px;
    height: 160px;
	background-color: #f2f2f2;
	position: relative;
	overflow: hidden;
}
#_reviews .image img{
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	position: absolute;
	margin: auto;
	width: 100%;
	height: auto;
}
#_reviews .review_title{
	text-align: center;
	font-size: 18px;
}
#_reviews .review_description{
	font-size: 14px;
}
#_reviews .link_to_reviews{
	font-size: 14px;
    text-align: center;
    display: block;
}
.share_tour{
	float: unset;
	margin:auto;
	text-align:center;
	margin-bottom: 55px;
}
.back_to_top{
	float: unset;
	margin: auto;
	text-align: center;
	margin-bottom: 15px;
}
.tour_footer{
	border-bottom: 32px;
    padding: 32px 0 1px 0;
    margin-bottom: 45px;
    border-top: none;
    box-shadow: 0px 0px 10px 20px #f6f6f6;
}
.tour-footer{
	border: unset;
	padding: 32px 0;
}
.share_tour .share-icon{
	float: unset;
	margin-bottom: -7px;
}
#tour-page .back_to_top {
	float: unset;
	margin: auto;
	cursor: pointer;
	text-align: center;
	margin-top: 50px;
}
.special-offer .offer{
	font-size: 12px;
	padding: 10px;
	padding-left: 30px;
}
.special-offer .offer p:before{
	width: 20px;
	height: 20px;
	margin-left: -24px;
	margin-top: -5px;
}
.special-offer .upgrades{
	font-size: 12px;
	padding: 5.5px 0;
	padding-left: 30px;
}
.special-offer .upgrades p:before{
	width: 10px;
	height: 10px;
	position: absolute;
	margin-left: -20px;
	margin-top: 0px;
}
.top-info-bar{
	padding: 5px;
	box-sizing: border-box;
}
.top-info-bar .inner-wrapper {
	text-align: left;
}
.special-offer .upgrades p{
	padding: 5px 0;
	z-index: 2;
}
.special-offer .upgrades:after{
	display: none;
}
/* #################################################### */
			/* mobile navigation and menu*/
/* #################################################### */
#logo_image{
	height: 71px;
	width: 72px;
	margin-left: 10px;
	margin-right: 10px;
}
#tc-mobile-menu-overlay {
	position:fixed; 
	z-index:150; 
	width:100%; 
	top:0; 
	left:0; 
	height:100%; 
	padding-bottom:120px; 
	background:rgba(0,0,0,0.7); 
	width:100%; 
	height:100%; 
	display:none;
}
#tc-mobile-menu-toggle {
	position: relative;
	margin: auto;
	right: -6px;
    margin-right: 0;
    /* -moz-transition: right 0.3s ease-in;
    -ms-transition: right 0.3s ease-in;
    -o-transition: right 0.3s ease-in;
    -webkit-transition: right0.3s ease-in;
    transition: right 0.3s ease-in; */
    z-index: 160;
    top: 26px;
    display: block;
}
#tc-mobile-menu-toggle #tc-mobile-menu-toggle-text {
	margin: auto;
	margin-right: 0;
    background: none;
    font-size: 15px;
    padding: 12px 24px;
    line-height: 37px;
    height: 12px;
    cursor: pointer;
    position: relative;
    display: block;
    color: #CCD9CC;
	height: 18px;
	width: 0;
}

#tc-mobile-menu-toggle.open-nav #tc-mobile-search{
	display: block;
	padding: 5px 15px;
	position: relative;
}
#tc-mobile-menu-toggle hr{
	display: none;
	position: relative;
	width: 40px;
	margin: 30px auto;
	border: 1px solid white;
}
#tc-mobile-menu-toggle.open-nav hr{
	display: block;
}
#tc-mobile-search {
	float: left; 
	display: none; 
}
#tc-mobile-search img{
	width: 19px; 
	height: 19px;
}
.open-nav #tc-mobile-menu-toggle #tc-mobile-menu-toggle-text{
	margin-top:28px;
	margin-right: 0;
	-moz-transition:margin-top 0.3s ease-in;
	-ms-transition:margin-top 0.3s ease-in;
	-o-transition:margin-top 0.3s ease-in;
	-webkit-transition:margin-top	0.3s ease-in;
	transition:margin-top 0.3s ease-in;
}
.open-nav #tc-mobile-menu-toggle #tc-mobile-menu-toggle-text:before  {
	content: "";
	position: absolute;
	left: auto;
	right:16px;
	top: 50%;
	margin-top:-8px;
	width: 17px;
	height: 3px;
	background: #fff;
	box-shadow: 0 6px 0 0 #fff, 0 12px 0 0 #fff;
	border-radius:1px;
}
#tc-mobile-menu-toggle #tc-mobile-menu-toggle-text:before  {
	content: "";
	position: absolute;
	left: auto;
	right: 8px;
	top: 15px;
	margin-top: -8px;
	width: 31px;
	height: 5px;
	background: #25591c;
	box-shadow: 0 11px 0 0 #25591c, 0 22px 0 0 #25591c;
	border-radius: 5px;
}
#tc-mobile-menu-toggle.open-nav {
	right: 274px;
	position: fixed;
	-moz-transition: right 0.5s cubic-bezier(1, -0.22, 0.17, 0.97);
	-ms-transition: right 0.5s cubic-bezier(1, -0.22, 0.17, 0.97);
	-o-transition: right 0.5s cubic-bezier(1, -0.22, 0.17, 0.97);
	-webkit-transition: right 0.5s cubic-bezier(1, -0.22, 0.17, 0.97);
	transition: right 0.5s cubic-bezier(1, -0.22, 0.17, 0.97);
	
}
#navigation {
	width: 50%;
	float: right;
}
#nav.tc-mobile-menu {
	position:fixed; 
	z-index:160;
	right:0;
	top: 0;
	bottom: 0;
	right: -279px;
	-moz-transition: all 0.5s cubic-bezier(1, 0.02, 0.47, 0.74);
	-ms-transition: all 0.5s cubic-bezier(1, 0.02, 0.47, 0.74);
	-o-transition: all 0.5s cubic-bezier(1, 0.02, 0.47, 0.74);
	-webkit-transition: all 0.5s cubic-bezier(1, 0.02, 0.47, 0.74);
	transition: all 0.5s cubic-bezier(1, 0.02, 0.47, 0.74);
	padding-bottom:60px;
	background-color: white;
	width: 275px;
	font-family: 'roboto', sans-serif;
}
.open-nav #nav.tc-mobile-menu{
	right: 0 !important;
	-moz-transition: all 0.3s ease-in;
	-ms-transition: all 0.3s ease-in;
	-o-transition: all 0.3s ease-in;
	-webkit-transition: all 0.3s ease-in;
	transition: all 0.3s ease-in;
	z-index: 10000;
}
.tc-mobile-menu .drop-down li a{
	white-space: normal;
}
.tc-mobile-menu li:not(:last-child){
	border-bottom: 1px solid #a6bc92;
}

.open-nav #nav .tc-mobile-menu {
	width:275px!important;
}
.open-nav #tc-mobile-menu-overlay {
	display:block;
}
.tc-mobile-menu ul {
	display:block!important;
	position:static!important;
	margin-bottom:12px!important;
	text-align: center;
	padding-bottom: 114px;
}
.tc-mobile-menu ul.level2{
	background-color: #f2f2f2;
}
.tc-mobile-menu ul.level2 li{
	border-color: #d7d7d7;
	padding: 10px 0;
}
.tc-mobile-menu ul.level2 a{
	color: #000000;
	font-weight:500;
}
.tc-mobile-menu .level2 a{
	text-align: left;
}
.tc-mobile-menu ul.level3 a{
	color: #666666;
}
.tc-mobile-menu ul.level3 li{
	border: none;
	line-height: 12px;
	padding-top: 10px;
	left: -13px;
	position: relative;
}
.tc-mobile-menu .has_sub:before,
li.mega-drop-down li.level2.item1:before{
	content: "+";
	position: absolute;
	width: 80px;
	height: 40px;
	right: 12px;
	font-size: 30px;
	line-height: 35px;
	margin:auto;
	background-color: unset;
	bottom: auto;
}

.tc-mobile-menu .level2.has_sub:before,
li.mega-drop-down li.level2.item1:before{
	line-height: 36px;
	left: 8px;
	right: auto;
	top: 3px;
}
#tc-mobile-menu-toggle hr{
	display: none;
	position: relative;
	width: 40px;
	margin: 30px auto;
	border: 1px solid white;
}
.tc-mobile-menu .has_sub ul.level2 {
	display:none!important;
	position:static!important;
	margin-bottom:0 !important;
	padding-bottom: 12px;
	margin-top: 13px;
}
.tc-mobile-menu li.level2.has_sub{
	padding-left:25px;

}

.tc-mobile-menu .has_sub.over ul.level2,
.tc-mobile-menu .has_sub ul.level2:hover {
	display: block !important;
}
.tc-mobile-menu li {
	display:block!important;
	float:none!important;
	height:auto!important;
	font-weight:bold;
}	
.tc-mobile-menu li.level1,
.tc-mobile-menu ul.level1.drop-down li.level1 a.level1{
	color: #25591c;
}
#nav.tc-mobile-menu li.level2.has_sub ul.level3 {
	display: none!important;

}
#nav.tc-mobile-menu li.level2.has_sub.over ul.level3 {
	display: block!important;

}
.tc-mobile-menu h3{
	font-size: 13px;
	padding: 0;
	margin: 0;
	font-weight: 500;
}

#nav.tc-mobile-menu ul.level2 li a {
	padding: 5px 0 5px 16px!important;
}
#nav.tc-mobile-menu ul.level2 li.level2.footer_bar{
	background-color: #fac719;
	border-color: white;
	position: relative;
	bottom: unset;
	left: unset;
	width: 100%;
	line-height: unset;
	padding-left: 0;
}
#nav.tc-mobile-menu ul.level2 li.level2.footer_bar a{
	text-align: center;
	padding-left: 0!important;
}
#nav.tc-mobile-menu ul.level2 li.level2.footer_bar:last-child{
	box-shadow: 0px 12px #fff;
}
#nav.tc-mobile-menu li a {
	padding: 9px 16px 9px 0!important;
	display:block;
	width:auto;
	overflow: hidden;
	white-space:nowrap;
}
#nav.tc-mobile-menu ul.level3 li a{
	margin: 0;
	font-size: 13px;
	text-align: center;
	padding-left: 0!important;
	white-space: normal;
	line-height: 16px;
}
.tc-mobile-menu ul.level1 {
	margin-top:6px;
}

.tc-mobile-menu a {
	color:#CCD9CC;
	text-decoration:none;
}
#aux_nav{
	position: fixed !important;
	margin: 0 !important;
	bottom: 0px;
	background-color: #a6bc92;
	width: 275px;
	box-sizing: border-box;
	padding: 5px 26px;
}

#aux_nav li{
	border: none;

}
#nav.tc-mobile-menu #aux_nav li a{
	padding:0 !important;
	color: #ffffff;
	font-size: 13px;
}


.header {
	padding-right: 200px;
	font-size: 36px;
	line-height: 36px;
	letter-spacing: -0.03em;
	padding-top: 16px;
	margin-bottom: 16px;
	color: #202020;
	border: none;
	font-weight: 600;
}
ul.level1.drop-down li.level1{
	padding: 11px 3px 11px 0;
}

li.mega-drop-down li.level2.item1:after{
	display: none;
}
ul#top_nav {
	height: 100vh;
	overflow: scroll;
	padding-bottom: 175px;
	box-sizing: border-box;
}
#header-main #nav a:hover {
	color: inherit;
}
#header-main #nav ul.level2 a:hover {
	text-decoration: none;
}
#top-info-outer .header-iw a.cart{
	background-color: #648360;
	width: 145px;
	height: 30px;
	border-radius: 5px;
	padding: 2px 5px 2px 10px;
	float: right;
	line-height: 26px;
	color: white;
	font-family: 'roboto', san-serif;
	font-size: 12px;
	margin-top: 5px;
	box-sizing: border-box;
}
#top-info-outer .header-iw a.cart:after{
	content: '';
	width: 0;
	height: 0;
	border-left: 5px solid white;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	/* display: inline-block; */
	float: right;
	cursor: pointer;
	background-color: transparent;
	border-right: none;
	top: 8px;
	right: 3px;
	position: relative;
}
#header-main{
	padding-top: 0;
}
#top-info-outer{
	background-color: #a6bc92;
	height: 40px;
}
#call{
	font-size: 18px;
	position: relative;
	top: 13px;
	margin: 0;
}
/* mobile footer map */
.footer-map {
	background-size: cover;
	padding-bottom: 126px;
}
.footer-map .text-wrapper {
	padding: 0 15px;
	box-sizing: border-box;
}
.footer-map .text-wrapper .title {
	font-size: 19px;
	font-weight: 700;
	padding-top: 50px;
	background-position: center top 20px;
	background-size: 74px;
}
.footer-map .text-wrapper .intro {
	font-size: 14px;
	line-height: 20px;
	padding-top: 10px;
	padding-bottom: 14px;
	background-image: none;
	font-weight: 300;

}
.footer-map .map {
	width: 256px;
}

/* #################################################### */
					/* Footer  */
/* #################################################### */
#footer .section-title, 
#footer-signup-inner .section-title, 
#footer-info-inner .section-title{
	font-size: 12px;
}
#news_and_offers{
	padding-top: 40px;
}
#news_and_offers .heading{
	font-size: 18px;
	font-weight: 700;
	line-height: 20px;
	margin-top: 1px;
}
#news_and_offers p{
	font-size: 16px;
	line-height: 29px;
	text-align: inherit;
	margin-top: 0;
}
#news_and_offers .img img.card_image{
	width: auto;
	min-height: 72.5px;
}
#news_and_offers .img{
	height: 72.5px;
	width: 72.5px;
}
#news_and_offers .text{
	max-height: unset;
	padding: 0;
}
#news_and_offers .text:before{
	display: none;
}
#news_and_offers a{
	position: relative;
	bottom: 0;
	font-size: 16px;
}
#news_and_offers .offer{
	padding-bottom: 18px;
	padding-top: 0;
	margin-top: 20px;
	padding-right: 0;
}
#news_and_offers .offer:first-of-type{
	margin-bottom: 23px;
}
#logos{
	bottom: unset !important;
	top: -116px !important;
}
#logos div.logo-outer{
	width: 33.3%;
	padding: 0 10px;
	top: 33px;
	height: 33px;
}
#logos .inner-wrapper{
	height: 100px; 
}

#logos div.irish-rail-logo-white{
	max-width: 150px;
	height:auto;
}
#logos .turism-ireland-logo-white {
	max-width: 92px;
	height:auto;
}
#logos .ustoa-logo-white {
	max-width: 110px;
	height:auto;
}
#logos div.golden-key-outer{
	width:50%;
}
#logos .golden-keys-logo-white {
	max-width: 34px;
	height:auto;
}
#logos div.atlantic-outer{
	width:50%;
}
#logos .wild-atlantic-way-logo-white {
	max-width: 75px;
	height:auto;
}
.booking .logos-background{
	height: 133px;
}
#footer-signup-inner{
	margin-top: 7px;
	text-align: center;
	padding-bottom: 1px;
	padding-top: 40px;
}
#footer-signup-description{
	font-size: 20px;
	line-height: 24px;
}
#footer-signup-inner label{
	font-size: 14px;
	margin-top: -4px;
	margin-bottom: 5px;
	float: left;
}
#footer-signup .input_holder{
	float: unset;
}
#footer-signup input[type=text]{
	width: 100%!important;
	margin-bottom:5px;
}
#footer-signup input[type=submit]{
	left: 0;
	right: 0;
	margin: auto;
	margin-top: 10px;
	float: unset;
}
#footer-signup .sign-up-form{
	padding: 23px 20px 37px 20px ;
	margin:25px 16px 63px 16px ;
	border-width: 2px;
}
#footer-info-inner{
	text-align: center;
}
#footer-info-inner .clm{
	font-size: 13px;
	color: #444444;
	box-sizing: border-box;
	float: left;
	width: 50%;
	min-height: 165px;
	padding:0 30px;
	margin-top: 25px;
	max-width: unset;
}
#footer-info-inner .clm-header,
#footer-info-inner .clm a{
	margin-bottom: -2px;
}
#footer-info-inner .clm a{
	color: #444444;
	text-decoration: none;
	font-size: 14px;
	display: inline-block;
	margin-top: 15px;
}
#footer-info-inner .clm a:hover{
	text-decoration: underline;
}
#footer-info .footer-info-bottom{
	text-align: center;
	padding-left: 0;
	margin-top: 58px;
}
#footer-info .share-button.share-facebook {
	background-color: #3B5998;
}
#footer-info .share-button.share-twitter {
	background-color: #1DC7FB;
}
#footer-info .share-button.share-instagram {
	background-color: #E95950;
}
#footer-info .share-button.share-tripadvisor {
	background-color: #34DFA0;
}
#footer-info .copyright{
	font-size:12px;
	font-weight: 500;
}

@media screen and (max-width: 600px) {
/* ############################################################### */
				/* latest news, testimonial templates */
/* ################################################################ */
	.news-image,
	.testimonial-image{
		float:unset;
		text-align:center;
	}
}

@media screen and (max-width: 480px){
	.booking-form .sold-out {
		background-size: 100% 100%;
		background-position: unset;
	}


    #footer-info-inner .clm {
		width: 100%;
        float: unset;
        min-height: unset;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 40px;
        padding: inherit;
	}
/* ############################################################### */
                /* latest news, testimonial templates */
/* ################################################################ */
	/* Tour Cards */
	.card.tour-card {
		width: 290px;
		float: none;
        display: block;
        clip-path: url(#tour-card-290-280);
        -webkit-clip-path: url(#tour-card-290-280);
    }
    .cards-container div.link a .text {
        width: 85px;
    }
    .cards-container div.link a:before,
    .cards-container div.link a:after{
		top:7px!important ;
		width: 20px;
	}
	.cards-container div.link a:before{
		right: 0;
	}
	.cards-container div.link a:after{
		left: 0;
	}
    .cards-container .link:nth-child(odd){
        padding: 5px 5px 5px 0px;
    }
    .cards-container .link:nth-child(even){
        padding: 5px 0px 5px 5px;
    }
    .card.offer-card .card-details{
        min-height: 140px;
    }
    .cards-container .link.top a{
        padding: 6px 0;
    }
    /* Offer cards */
	.offer-card-container {
		width: 290px;
	}
	.card.banner-card,
	.card.offer-card {
		width: 290px;
        height: 280px;
        clip-path: url(#tour-card-290-280)!important;
        -webkit-clip-path: url(#tour-card-290-280)!important;

	}
	.card.banner-card .card-info {
		height: 122px;
	}
/* #################################################### */
                /* booking process */
/* #################################################### */
   
    .booking .tour-name-details{
        margin-right: auto;
    }
    .booking .tour .tour-outer{
        width: 100%;
    }
    .booking #logos{
        top:-142px!important;
	}
	.single-suppliment-info {
		display: none;
	}


	/* #################################################### */
				/* main with form */
	/* #################################################### */
	#tour-page #contact_form label {
		float: unset;
		margin: auto;
		text-align: center!important;
		width: 100%!important;
		margin-bottom: 5px;
	}
	#tour-page #contact_form input.text {
		width: 75%;
		margin: auto;
		float: unset;
	}
}

/* DECORATIONS */

/* 25 Year Anniversary */
#twenty_five_years #logo_image {
	/* background-image: url('/images/seasonal_banners/independence-day/rti-independence-day-logo.png')!important; */
}
#twenty_five_years #logo_wrapper .secondary_logo {
	width: 68px;
	margin-top: 0;
}
#twenty_five_years .offers_banner .side_icons.right {
	display: none;
}
#twenty_five_years #breadcrumbs:before, #twenty_five_years .oak-leaf:before, #twenty_five_years .tour-cards-heading:before, #twenty_five_years .search-header:before {
	background-image: url('/images/seasonal_banners/25-years/typoornament-25years2.png')!important;
	height: 38px;
	width: 100px;
	height: 40px;
	width: 130px;
}
@media screen and (max-width: 730px) {
	#twenty_five_years #home-slider-wrapper {
		height: 304px!important;
		background-size: contain;
	}
}
