/** ----------------------------------------------------------
 *
 * Contains the main layout of the page and the individual styles.
 * Acts as the main stylesheet for theme.
 *
 *		Include your notes or table of contents below....
 *		Include color hex's or values of your grid
 *
 *		1. OOCSS GRID
 *		2. MAIN LAYOUT
 *		3. HEADER
 *			- Brand
 *			- Search Form
 *		4. Navigation
 *			- Primary Navigation
 *			- tablet Navigation
 *			- Secondary Navigation
 *			- Secondary Nav 2-5 Levels deep
 *		5. Mixed
 *		6. Footer
 *		7. Page Specific Layout
 *			- Homepage
 *			- Search Results
 *		8. Device and Responsive Layout
 *			- Breakpoint 960px
 *			- Breakpoint 640px
 *				- Search Form
 *				- Main Content
 *		9. Print Styles
 *			- Simple Theme custom print styles
 *
 * @author Your Name <email@silverstripe.com>
 * ------------------------------------------------------- */

/* OOCSS Grid
* https://github.com/stubbornella/oocss/wiki/grids
*/

.line, /* line - Groups units on one horizontal line. Note: for mobile layout units may be stacked to avoid horizontal scrolling. */
.lastUnit {
	overflow:hidden;
	*overflow:visible;
	*zoom:1;
	padding:0 10px;
}
.unit { /* unit - Base class which divides a line into sections (columns). */
	padding:0 10px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box; /* box-sizing:border-box; creates a box-model where
	padding and border are NOT added onto the width - they are included in the width,
	so a 200px wide element with 20px padding will be 200px, NOT 240px wide */
}
.unitRightv { /* Use this class if you want to offset a column eg: |--content(.unit)--|--content(.unit)--|--no-content--|--no-content--|--content(.unitRighttv)--| */
	float:right;
}

/* sizeXofY - Extends unit. Indicates the fractional width of the unit, for example size3of4 would take up three quarters, or 75%, of the horizontal space.
The following fractions are supported: 1, 1/2, 1/3, 2/3, 1/4, 3/4, 1/5, 2/5, 3/5, 4/5 */
/* It is possible to add more columns if you wish you will just have to add the fractions that are missing eg: .size1of6 {width:16.66666%;} */

.size1of1 {
	float:none;
}
.size1of2 {
	width:50%;
}
.size1of3 {
	width:33.33333%;
}
.size2of3 {
	width:66.66666%;
}
.size1of4 {
	width:25%;
}
.size3of4 {
	width:75%;
}
.size1of5 {
	width:20%;
}
.size2of5 {
	width:40%;
}
.size3of5 {
	width:60%;
}
.size4of5 {
	width:80%;
}
.lastUnit { /* lastUnit - Extends unit. Applied to the last child of every line. */
	float:none;
	width:auto;
	_position:relative; /* Bug fix for IE6 - Internet Explorer 6 and below wouldn't fail on properties that were prefixed with non-alphanumeric characters.
	meaning that anything prefixed with _ wouldn't be picked up by any other browsers */
	_left:-3px;
	_margin-right:-3px;
}
.clearAll{clear:both;}
.element{display:block; padding:30px 0;}
.element.green{background-color:#f2f8ed;}
.element h2.display{position: relative; text-align: left; font: 700 36px/36px 'Montserrat','Open Sans',sans-serif; color: #222; margin: 0 0 57px 0; text-transform: uppercase;}
.element h2.display::before{content: ''; position: absolute; left: 0; margin-left: 0; bottom: -16px; width: 35px; height: 2px; background: #ccc;}
.element h3 {font-family: 'Open Sans',sans-serif; font-weight: 700; color: #222; line-height: 1.714285; margin: 0; padding: 0; font-size:2em}
.element h3.subheading { font: 400 16px/16px 'Montserrat','Open Sans',sans-serif; color: #777; margin: 0; padding: 0 0 8px 0;}
.ui-accordion .ui-accordion-content{height:auto!Important;}

.youtubeWrap {position:relative; padding-bottom:56.25%; height: 0;}
.youtubeWrap iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.elementoembed h3.card-title { font: 400 16px/16px 'Montserrat','Open Sans',sans-serif; color: #777; margin: 0; padding: 0 0 8px 0;}
.card-body{padding:20px 0;}
.inc{-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;}
/* MAIN LAYOUT */
body {
    margin: 0;
    background: #ededed;
    min-width: 240px;
    -webkit-text-size-adjust: none; /* The text size is not adjusted for Safari on iPhone */
}
	.ie7 body,
	.ie8 body {
	    min-width: 860px; /* media queries are not supported in ie7/8 without a polyfill */
	}
	.main {
	    background: #fff;
	    min-height: 300px;
		z-index:98;
	}
	.inner {
	    max-width: 1100px;
	    margin: 0 auto;
	    padding: 0 30px;
	}
	.ie6 .inner {
	    width: 960px;
	}
	.no-sidebar .content-container {
	    float: left;
	    width:100%; /* makes content container full width when there is no sidebar */
	}
	.sidebar { /* this is the sidebar element */
	    margin-top: 12px;
	}
	.no-sidebar .sidebar {
		display: none;
	}


/* HEADER */
.header {
    background: #fff;
	z-index:99;
}
	.header .inner {
	    padding-top: 45px;
	    position: relative;
	    min-height: 72px;
	}
	.element.imageWrap {
	padding:60px 0;	
    width: 100%;
    display: grid;
    justify-self: center;
    align-items: center;
	background-size: cover;
}
.headerbkgrImg {
    background-repeat: no-repeat;
    background-size: 100%;
    width: 100vw;
    height: 29vw;
    transition: background-size 8s ease-in 0s;
    position: relative;
    z-index: 98;
}
.headerImagerContactOutter{display:flex; flex-wrap: wrap; padding:0 20px;}
.headerLogo{-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
.float-panel.fixed .headerBookOutter{display:none;}
.headerBookOutter{-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;  }
.book-section{float: right; width: 100%; padding: 25px 0; }
.headerLogo img{width:100%; max-width:300px;}
.headerBook h2{color:#000; position: relative;
    text-align: left;
    color: #222;
    margin: 0;
    text-transform: uppercase; display: block;
    font: 700 24px/24px 'Montserrat','Open Sans',sans-serif;
    color: #222;
    transition: all 0.3s ease-in; }
.headerBookNum.book{    position: absolute;
    right: 181px;
    padding: 0 30px 0 0;
    transition: all 0.3s ease-in;}	
.number-box {
    position: absolute;
    right: 181px;
    padding: 0 30px 0 0;
    transition: all 0.3s ease-in;
}
.number-box .fa {
    float: left;
    color: #85be4d;
    font-size: 24px;
    line-height: 44px;
    transition: all 0.3s ease-in;
}
.number-box:hover .number-text:before {
    border-color: transparent transparent transparent #85be4d;
    transition: all 0.3s ease-in;
}
.number-box:hover a span, .number-box:hover a:hover span, .number-box:hover a strong, .number-box:hover a:hover strong {
    color: #85be4d;
    transition: all 0.3s ease-in;
}
.number-box span {
    display: block;
    font: 400 14px/14px 'Montserrat','Open Sans',sans-serif;
    color: #777;
    padding: 0 0 7px 0;
    transition: all 0.3s ease-in;
}
.number-box strong {
    display: block;
    font: 700 24px/24px 'Montserrat','Open Sans',sans-serif;
    color: #222;
    transition: all 0.3s ease-in;
}
.number-text:before {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    content: '';
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 4px;
    border-color: transparent transparent transparent #ccc;
    transition: all 0.3s ease-in;
}	
.number-text {
    float: left;
    position: relative;
    border-left: 1px solid #ccc;
    padding: 0 0 0 15px;
    margin: 0 0 0 15px;
    transition: all 0.3s ease-in;
}	
.book-section a.btn-book {
    float: right;
    position: relative;
    background: #85be4d;
    padding: 12px 20px 12px 35px;
    font: 400 18px/18px 'Montserrat','Open Sans',sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
	display:block;
	transition:all 0.3s ease-in;
}
.book-section a.btn-book:before {
    background: #fff;
    content: "";
    height: 60px;
    left: -11px;
    position: absolute;
    top: -15px;
    transform: rotate(37deg);
    -moz-transform: rotate(37deg);
    -webkit-transform: rotate(37deg);
    width: 30px;
    opacity: 1;
    visibility: visible;
}	
.book-section a.btn-book:hover{background:none;border:1px solid #444;color:#222;padding:12px 20px;}
.book-section a.btn-book:hover:before{content:'';opacity:0;visibility:hidden; transition:all 0.3s ease-in;}
.headerBook a{color:#000;}	
.element .imageCallOut {
    justify-self: center;
    align-items: center;
    padding: 20px;
	text-align:center;
}
.element .imageCallOut p{line-height:40px; word-wrap:normal;}
.element .imageCallOut h3.headerSmallCallout {
    font-size: 24px;
    line-height: 30px;
}
.element .imageCallOut h2.headerLargeCallout {
    font-size: 60px;
    line-height: 60px;
	color:#fff;
}
h2.headerLargeCallout {
    font-family: "Barlow", sans-serif;
    font-size: 60px;
    line-height: 60px;
    margin-bottom: 0;
    padding: 0;
    color: #fff;
    border-top: none;
    border-bottom: none;
}
h3.headerSmallCallout {
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 0;
    padding: 0;
    color: #fff;
    border-top: none;
    border-bottom: none;
    font-style: italic;
}
.element .imageCallOut p, .element .imageCallOut h2{color:#fff;}
.element .gridContentBox {
    display: grid;
}
	/* Brand */
	header .brand, header .brand:hover {
	    float: left;
	    color: #fff;
	    display: inline-block;
	}
		.brand h1 {
		    margin: 0;
		    padding: 0;
		    font-size: 48px;
		    font-family: "HelveticaNeueLTPro-Bd", "Helvetica Neue LT Pro Bold", "HelveticaNeueBold", "HelveticaNeue-Bold", "Helvetica Neue Bold", "Helvetica Neue LT Pro", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		    color: #fff;
		    font-weight: 600;
		    font-stretch: normal; /* default value. No font stretching */
		    line-height: 1em;
		}
		.brand p {
		    color: #888;
		    margin-bottom: 22px;
		}
		
		.headerContactBlock {background-color:#85BE4D; color:#fff; height:40px; }
		.headerContactBlock p{ color:#fff; font-size:16px; line-height:40px;}
		.headerContactBlock a{ border-left:solid 1px #fff; color:#fff; padding:12px 10px; }
		.headerContactBlock a:hover{color:#156825}

	/* Search form */

	.search-bar {
		position: absolute;
		right: 13px;
		top: 12px;
	}
		.search-bar .field {
			margin: 0;
			padding: 0;
		}
		.search-bar form input.text {
		    width: 155px;
		    padding: 5px 34px 5px 15px;
		    color: #888;
		    margin: 0;
		    border: none;
		    border-radius: 14px;
		    background: #fff;
		}

		.search-bar form input.action { /* positions the search button icon over the top of the search input */
		    font-size: 14px;
		    position: absolute;
		    right: 5px;
		    top: 0;
		    cursor: pointer;
		    border: none;
		    padding: 5px;
		    background: none;
		    font-family: 'WebSymbolsRegular';
		    color: #848484;
			border-radius: 0;
			margin: 0;
		}
		.search-bar form input.active,
		.search-bar form input.action:hover {
		    color: #000;
		}
		.search-bar form input:focus,
		.header textarea:focus {
		    outline: none; /* removes default browser outlining on focus */
		}
		.search-dropdown-icon {
		    display: none; /* hides search-dropdown-icon when site is at full width - media queries set it to display:block when at mobile/tablet width */
		}



/* NAVIGATION */

	/* Primary navigation */
	.header .navoutter{
        float: left;
    background: #fff;
    border: 1px solid #ccc;
    width: 100%;
    box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 0 4px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 0 4px rgb(0 0 0 / 10%);
	position:relative;
	top:10px;
	z-index:99999;
	
}

	.header .inner .unit {
		position: relative; /* used to position the main navigation */
	}
	.header .primary ul {flex-direction:row;	}
	.header .primary li {
	position: relative;
    float: left;
    padding: 0;
    margin: 9px 0;
    border-left: 1px solid #ccc;
	}
	.header .primary li.firstnav {border:0;}

	.header .primary li a {
    position: relative;
    font: 400 14px/30px 'Montserrat','Open Sans',sans-serif;
    color: #222;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0 25px;
    display: block;
    z-index: 20;
	}
	.header .primary li a:hover {
	    color: #000;
	}
	.header .primary li.section a,
	.header .primary li.current a {
	    color: #000;
	}
	.header .primary li.section:after,
	.header .primary li.current:after {
	    content: '}'; /* adds triangle beneath current nav item ('}' is renders as a triangle when WebSymbolsRegular is set as the font) */
	    display: block;
	    position: absolute;
	    left: 50%;
	    margin-left: -7px;
	    bottom: -7px;
	    font-family: 'WebSymbolsRegular';
	    font-size: 30px;
	    color: #fff;
	    text-align: center;
	    line-height: 20px;
	}
	
	

	/* Tablet Navigation */
	/* When navigation and logo overlap tablet-nav is initialized */
	.tablet-nav .brand p {
	    margin-bottom: 0;
	}
	.tablet-nav .header .inner {
	    padding-top: 20px;
	}
	.tablet-nav .header .primary ul {
	    float: left;
	    clear: both;
	    position: relative;
	    white-space: nowrap;
	    right: auto; /* resets the right property value that is set for the desktop site */
	}
		.tablet-nav .header .primary ul li {
		    white-space: nowrap;
		}
			.tablet-nav .header .primary ul li a { /* there is no hover on touch devices so no transition on hover is necessary */
			    -moz-transition: none;
			    -webkit-transition: none;
			    transition: none;
			}
	.tablet-nav .footer .right {
	    float: left;
	    width: 100%;
	}
	
	.fixed {
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    padding: 4px 0 0 0;
    opacity: 0.95;
    position: fixed;
    background:#85BE4D
}
.float-panel {
    width: 100%;
    z-index: 9999;
	min-height:20px;
	left:0;
	
	
}
.float-panel.fixed{ }
.float-panel.fixed .tag, .float-panel.fixed .headeraward{display:none;}
.float-panel.fixed .logo{padding:10px 10px 0 10px; width:20%;}
.float-panel.fixed .header .inner{padding-top:10px; min-height:40px;}
.float-panel .float-panelInner {max-width:1300px; margin:0 auto; position:relative; min-height:40px; padding-bottom:15px;}
.tablet-nav .float-panel.fixed{min-height:40px; height:auto;} 	
.float-panel.fixed .headerSliderImage {position:relative; float:left; top:10px; left: 10px;}
.tablet-nav .float-panel.fixed .float-panelInner .headerCart {float:right;}
.float-panel.fixed .header .navoutter {float:right; top:0; width:80%; border:none; box-shadow: none;
    -moz-box-shadow: none; -webkit-box-shadow: none; top:-30px;}
.float-panel.fixed .header .primary li{margin:0; }
.float-panel.fixed img.mainlogo{width:120px;}
	/* Secondary navigation */
	.main .secondary h3 {
	    font-size: 20px;
	    color: #AAA;
	    margin: 0 0 8px 0;
	    font-family: "CamboRegular", Georgia, "Times New Roman", Times, serif;
	    font-weight: normal;
	}
	.main .secondary {
	    border-bottom: 1px solid #e5e5e5;
	}
		.main .secondary ul {
		    padding: 0;
		    margin: 0;
		}
		.main .secondary li {
		    border-top: 1px solid #e5e5e5;
		    position: relative;
		    list-style-type: none;
		    margin-bottom: 0;
		}
			.main .secondary li .arrow {
			    color: #b80000;
			    padding-right: 5px;
			    display: block;
			    font-size: 15px;
			    line-height: 20px;
			    position: absolute;
			    left: 2px;
			    top: 7px;
			    -moz-transition: 0.2s; /* this transition moves the arrow from left:2px to left:6px */
			    -webkit-transition: 0.2s;
			    transition: 0.2s;
			}
		.main .secondary li a:hover .arrow {
		    left: 6px; /* this sets the final position for the arrow transition */
		}
		.main .secondary li a { /* side nav link styling */
		    padding: 10px 0;
		    display: block;
		    text-transform: uppercase;
		    letter-spacing: 2px;
		    font-size: 11px;
		    color: #333;
		    line-height: 17px;
		    border-bottom: none;
		    font-family: 'Lucida Sans', 'Lucida Grande', Arial, Helvetica, sans-serif;
		}
		.main .secondary li .text {
		    padding-left: 28px;
		    display: block;
		}
		.main .secondary li.current a.current {
			color: #b80000;
			background-color: #EDEDED;
		}
		.main .secondary li.section,
		.main .secondary li.current {
		    background-color: #F3F3F3;
		}
			.main .secondary li.section a,
			.main .secondary li.current a {
			    color: #000;
			}


		/* Secondary navigation 2-5 levels deep */
		.main .secondary ul ul {
			display: none;
		}
		.secondary ul li.current ul,
		.secondary ul li.section ul { /* Only show child pages from selected parent */
			display: block;
		}
		.secondary li.current ul ul {
			display: none;
		}
		.main .secondary ul ul li a { padding-left: 10px; } /* Indent all sidebar navigation levels*/
			.main .secondary ul ul li a .arrow { left: 12px; }
			.main .secondary ul ul li a:hover .arrow { left: 16px; }

		.main .secondary ul ul ul li a { padding-left: 20px; }
			.main .secondary ul ul ul li a .arrow { left: 22px; }
			.main .secondary ul ul ul li a:hover .arrow { left: 26px; }

		.main .secondary ul ul ul ul li a { padding-left: 30px; }
			.main .secondary ul ul ul ul li a .arrow { left: 32px; }
			.main .secondary ul ul ul ul li a:hover .arrow { left: 36px; }

		.main .secondary ul ul ul ul ul li a { padding-left: 40px; }
			.main .secondary ul ul ul ul ul li a .arrow { left: 32px; }
			.main .secondary ul ul ul ul ul li a:hover .arrow { left: 36px; }

		.main .secondary li a:hover,
		.main .secondary li.section a:hover,
		.main .secondary li.current a:hover {
			color: #b80000;
		}

/* FLEXSLIDER */
.elementslideshow{background-color:#000; padding:0;}

/* TESTIMONIALS */
.elementtestimonials{background-color:#000; padding:60px 0; color:#fff; margin-bottom:60px;}
.elementtestimonials h1, .elementtestimonials h2, .elementtestimonials h2.display, .elementtestimonials h3, .elementtestimonials h3.subheading, .elementtestimonials h4, .elementtestimonials h5, .elementtestimonials p{color:#fff;}
.elementtestimonials h2{font-size: 3.5vw;
    line-height: 3.5vw; font-weight:700;}
.testimonial__quote{display:grid; grid-template-columns:20% 80%; column-gap: 20px;}
ul#slides li{list-style-type:none; }
.testimonialSliderOutter{position:relative; padding-bottom:50px;}
.testimonialBlockOutter{position:relative;  }
#slides {
    position: relative;
    min-height: 350px;
    padding: 0px;
    margin: 0px;
    list-style-type: none;
}

.slide {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;

    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
}

.showing {
    opacity: 1;
    z-index: 2;

}
.slide.showing {
    position: relative;

}
.slide {
    font-size: 40px;
    padding: 40px;
    box-sizing: border-box;
    background: #000;
    color: #fff;
}
.testimonial_title{border-right:solid 1px #fff; text-align:center; padding:10px;}
.testimonial_title h4{font-size: 1.6vw;
    line-height: 2vw;}
	.testimonial_content p{font-size: 20px;
    line-height: 28px; }
.testimonial_title img{max-width:94px; width:100%; margin:0 auto; border-radius:100%; clear:both;}
.testimonialControls{position:absolute; bottom:10px; margin:0 auto; width:100%; text-align:center;}

.testimonialControls button{color:#85be4d; background-color:#000; float:none; font-size:20px;}

.statisticsBlockWrap{display:flex; flex-wrap:wrap; margin-bottom:60px; margin-right: -15px;
    margin-left: -15px;}
.statisticsBlock{display:block; padding:15px;}
.facts-box {

    padding: 22px 15px;
    text-align: center;
	-ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
	margin-bottom:30px;

}
.statisticsBlockInner{
	padding:22px 0;
	background-color:#fff;
    border: 1px solid #ccc;
    box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 0 4px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 0 4px rgb(0 0 0 / 10%);	
}	
.facts-box span.title {
    font: 400 17px/16px 'Montserrat','Open Sans',sans-serif;
    color: #222;
    text-transform: uppercase;
    display: block;
	width: 100%;
    height: 80px;
    text-align: center;

	
}
.facts-box strong.number {
    font: 400 45px/70px 'Montserrat','Open Sans',sans-serif;
    color: #777;
    display: block;
}

.statisticsBlock.facts-box .fas, .statisticsBlock.facts-box .fab, .statisticsBlock.facts-box .fa {
    color: #85be4d;
    display: inline-block;
    text-align: center;
    font-size: 60px;
    border-bottom: 2px solid #ccc;
    padding: 0 0 20px 0;
    margin: 0 0 10px 0;
}

.visitorCounter{
	display: grid;
    grid-template-columns: 24% 24% 24% 24%;
    grid-column-gap: 1%;
    grid-row-gap: 1%;
position:relative; top:50px; height:120px;	
background-color:#fff;
}
.visitorCounterBlock{display:block; text-align:center; background-color:#fff; padding:100px 10px;  border: 1px solid #ccc;
    box-shadow: 0 0 4px rgb(0 0 0 / 10%); -moz-box-shadow: 0 0 4px rgba(0,0,0,0.1); -webkit-box-shadow: 0 0 4px rgb(0 0 0 / 10%); }
.visitorCounterBlock h3, .visitorCounterBlock h4{color:#000; }
.visitorCounterBlock h3{font-size:60px; margin-bottom:10px;}
.visitorCounterBlock h4{}
/* MAILCHIMP */
.elementchimplesubscribe h1, .elementchimplesubscribe h2, .elementchimplesubscribe h3, .elementchimplesubscribe h4, .elementchimplesubscribe h5, .elementchimplesubscribe p{color:#fff;}
.elementchimplesubscribe{
background: url(../images/newsletter-background.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
	min-height:600px;

}
/* PANORAMAS */
.panoramaImage{width:100%; overflow:auto;}

.panoramaImage img.panoImg{width:200%;}

/* GALLERY */
.onesized.photogallery.row{display:grid;  grid-template-columns: auto auto auto auto auto; column-gap:1vw; row-gap:1vw;}
.photogallery.row .photogallery-holder{display:block; position:relative; line-height:0}

.mixedsized .mixed.photogallery.row {   }
.mixedsized .mixed.photogallery.row .mixedCol1, .mixedsized .mixed.photogallery.row .mixedCol2 {float:left; display: flex; flex-wrap:wrap; width:50%; flex-direction: row; }
.mixedsized .mixed.photogallery.row .photogallery-holder.mixed {width:50%; padding:3px;}
.mixedsized .mixed.photogallery.row .mixedCol1 .photogallery-holder.mixed.first {width:100%; height:400px; overflow:hidden; 
margin-bottom:3px;}
.photogallery-holder.mixed.first {padding-bottom:5px;}
.mixedsized .mixed.photogallery.row .mixedCol1 .photogallery-holder.mixed.third {width:50%!Important; height:200px;}
.mixedsized .mixed.photogallery.row .mixedCol1 .photogallery-holder.mixed:nth-child(3n) {width:100%;}
.mixedsized .mixed.photogallery.row .mixedCol2 .photogallery-holder.mixed:nth-child(3n) {width:100%;}
.photogallery.row .photogallery-holder img{width:100%; border-radius: 2px;}

/* ELEMENT FORM */
.elementform .contactFormBlock{width:66.66%; min-width:66.66%;  float:left;}
.elementform .contactListingBlock{width:33.33%; min-width:33.33%; float:right;}

.elementform .contactListingBlock span.contactIcons{
    float: left;
    font-size: 25px;
    width: 35px;
    color: #85be4d;
    padding: 10px;
    margin-right: 20px;
    height: 30px;
    border-right: solid 1px #ccc;
}
.elementform h3{font-family: 'Open Sans',sans-serif;
    font-weight: 400;
    color: #222;
    line-height: 1.714285;
    margin: 0;
    padding: 0;
    font-size: 1.5em;}
.elementform .contactListingBlock h3{    font-weight: 400;
    font-size: 1.5rem;}
form{width:100%; min-width:100%; margin-left:-10px;}


div.field.short{width:50%; float:left;  -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; padding:0 5px;}
div.field{-moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box;
    box-sizing: border-box; padding:0 5px;}
form input.text, form textarea, form .textajaxuniquetext, form select{    width: 100%;
    max-width: 100%;
    padding: 15px 10px;
    font-size: 15px;
    background-color: #fff;
    border: 1px solid #dad9d9; -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;}
/* ACCORDIAN */

.questionblock .ui-state-active{background-color:#fff; border:solid 1px #ccc;}
.questionblock .ui-icon, .ui-widget-content .ui-icon {
    background:none; display:none;
}
h3.ui-accordion-header.ui-state-default span.seeAnswer{display:inline-block; color:#85BE4D; font-size:20px; margin-right:20px; top:10px;}
h3.ui-accordion-header.ui-state-default.ui-state-active span.seeAnswer{display:none}
h3.ui-accordion-header.ui-state-default span.hideAnswer{display:none;}
h3.ui-accordion-header.ui-state-default.ui-state-active span.hideAnswer{display:inline-block; color:#85BE4D; font-size:20px; margin-right:20px; top:10px;}
h3.ui-accordion-header.ui-state-default.ui-state-hover{background:none;}
.questionblock .ui-widget-content{border:none;}
.questionblock .ui-widget-content p{font-family: 'Open Sans',sans-serif;font-size: 10.5pt; line-height: 1.714285; margin: 15px 0; padding: 0; }
 
 /* FEATURES */
.elementfeatures .row.outter{display:grid; grid-template-columns: 33% 33% 33%; grid-column-gap: 20px;grid-row-gap: 20px;}
.elementfeatures .row .card{display:block; width:100%;  -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; text-align:center;}
.elementfeatures .row .card .row.feature{box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px;}	
.elementfeatures .row .card h3.card-title{font-size:1.8em; line-height:1em; margin-bottom:20px; min-height:52px;}	
.elementfeatures .row .card .card-text{min-height:150px;}
.elementimage img.img-fluid{width:100%; }	

.featuredIcon	{display: block;
    margin: -49px auto 25px;
    width: 97px;
    height: 97px;
    color: #777;
    font-size: 44px;
    background: #fff;
    line-height: 97px;
    border-radius: 100%;
    text-align: center;
    border: 1px solid #ccc;
    box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 0 4px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    transition: all 0.5s ease;}
.blurb {
    display: block;
    padding: 0 35px 20px;
    margin-top: 55px;
    margin-bottom: 55px;
    text-align: center;
    color: #777;
    text-decoration: none !important;
    transition: all 0.5s ease;
    border: 1px solid #ccc;
    box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 0 4px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    min-height: 280px;
}
.blurb:hover .featuredIcon{color:#80B64B;}
/* CONTENT WITH FEATURED */
.contentwithfeaturedimgelementalblock{position:relative;}
.contentwithfeaturedimgelementalblock .featuredImgBlock.withImg{display:grid; grid-template-columns: 60% 35%; grid-column-gap: 5%;}
.contentwithfeaturedimgelementalblock .featuredImgBlock{display:block; }
.contentwithfeaturedimgelementalblock .content{}
.contentwithfeaturedimgelementalblock .imageWrapContent img{width:100%; box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px;}

/* PACKAGES */
.programmewrap{display:grid; grid-template-columns: 33% 33% 33%; grid-column-gap: 1%; grid-row-gap: 1%;}
.programmeBlock{border:1px solid #ccc;}
.programmeBlock .programmeContent{Padding:20px;}
.programmeBlock .programmeContent h2{color: #85be4d; font-size: 14px; line-height:14px; margin: 0; text-align: left; position: relative; 
    font-weight: 700;  margin: 0 0 20px 0; text-transform: uppercase;}
.programmeBlock .programmePrice h3{ margin: 0; text-align: left; position: relative; font-weight: 700; font-size:1.6vw; margin: 0 0 20px 0; text-transform: uppercase;}
.programmeBlock .programmeSummary{ border-bottom:dotted 1px #ccc; margin-bottom:30px;}
.programmeBlock .programmeLink{text-align:center;}
.programmeFeaturedMedia {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}

.programmeFeaturedMedia iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sponsors-list {display:block; overflow:hidden;  }
.sponsors-list-sponsor {max-width:20%; width:200px; padding:10px 30px; text-align:center; float:left;  }
.sponsors-list-sponsor-inner {position:relative; }
.sponsors-list-sponsor img{max-width:100%;}

  .marquee {
  width: 100%;
  overflow: hidden;
  
}
/* ACTIVITIES */
.activitieselementalblock{position:relative; background-color:#f2f8ed; }
.activityBlockOutter{position:relative;  }
.activitywrap{position:relative; display:flex; flex-wrap:wrap;}
.activityBlock{padding:5px 10px; width:25%;}
.activityFeaturedImage{ background-color:#fff; margin-bottom:20px; line-height:0; box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;} 
.activityBlock img{width:100%;}
.activityBlock h4{font-size: 1.2rem; font-weight: normal; line-height: 1.2;}
/* LIST STYLE LAYOUT */
.list-element__container{display:flex; flex-wrap:wrap;}
.list-element__container.elementColumn2 .element{width:50%;}
.list-element__container.elementColumn3 .element{width:33.33%;}
.list-element__container.elementColumn4 .element{width:25%;}
.list-element__container.elementColumn2 .element img{    box-shadow: 0 0 4px rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 0 4px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 0 4px rgb(0 0 0 / 10%);}

/* ACTIVITY ADMIN */
.activityQuestions{clear:both; padding:60px 0;  }
.activityQuestions fieldset{width:60%; }
.activityQuestions .btn-toolbar{width:auto;}
.activityQuestions .btn-toolbar input[type="submit"]{float:none;}
.activityQuestions form{clear:both; background-color:#ddd; padding:20px; -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box; box-sizing: border-box; margin-left:0;}
.ActivityDetailPlan .mainfixed{padding-top:120px;}
.ActivityDetailPlan .float-panel.fixed{margin-bottom:60px;}
.ActivityDetailPlan h2{font-size:20px; border-bottom:1px solid #ccc; margin-top:30px;}
.instructorCheckIns{padding:60px 0;}
.ActivityDetailPlan .content-container{margin-top:0;}
.detailBlock{padding:0}
.detailBlockHeader{width:100%; background-color:#333; margin-top:30px; margin-bottom:30px; padding:30px; color:#fff!Important; text-align:center;}
.detailBlockHeader h1{color:#fff!Important; text-align:center;}
.detailBlock{width:50%; float:left; margin-bottom:60px; }
.proceedureBlock{padding:20px 0; margin:0;  border-bottom:dotted 1px #ccc}
.proceedureBlock h5{margin-top:20px;}
.incidentBlockExtra{display:none; border:solid 1px #ccc; padding:10px; margin-bottom:30px;}
.incidentBlock:hover .incidentBlockExtra{display:block;}
.incident.widedetailBlock ul li{font-size:14px; margin-bottom:20px;}
.incidentWrap{margin-bottom:10px; padding:0 20px}
.incidentWrap p.incidentHeader{margin-top:10px;margin-bottom:10px; border-bottom:dotted 1px #ccc; text-transform:uppercase; font-size:11px}
.incidentBlock p{margin-bottom:10px}
.widedetailBlock{width:100%; display:block; clear:both; margin-bottom:60px;}
.subdetailBlock{width:50%; float:left; }
.equipmentBlock{width:100%; display:block; clear:both;}
.equipdetailBlock{width:33.33%; padding:5px; float:left; }
.hazardCol{width:30%; float:left; padding:5px;}
.siteHazardsBlock{width:100%; display:block; clear:both;}
.hazardBlock h4{ padding-bottom:10px; }
.hazardCol.risk{width:20%;   }
.hazardCol h5{font-size:12px; text-transform:uppercase; background-color:#333; color:#fff; padding:0 5px}
.ActivityDetailPlan ul{margin-left:0;}
.ActivityDetailPlan ul li{font-size:12px; list-style-type:none;}

/* MIXED */
header:after,
.main:after,
#Root:after,
.search-bar:after,
header .inner:after,
footer:after { /* clearfix */
    height: 0;
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
}
.search-bar form input.action,
.header .primary li a,
.footer a { /* adds color transition when links/inputs on hover */
    -moz-transition: color 0.2s;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}
.footer a.brand { color: #333; margin-left: 0; }
.footer a.brand:hover { color: #B80000; }
body h1 span.amp {
    font-family: Baskerville,"Goudy Old Style","Palatino","Book Antiqua",Georgia;
    font-style: italic;
}


/* FOOTER */
.footer {
    color: #999;
    background: url(../images/Another-slider.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
	min-height:400px;
    padding: 20px 0;
    font-size: 11px;
    line-height: 22px;
}
.footer .footerColumnBlock{
	  display: grid;
	  grid-template-columns: 66% 33%;
	  grid-template-rows: auto;
	  grid-column-gap: 20px;
	  padding:60px 0;
}
.footer span.contactIcons{float:left; font-size:25px; width:35px; color:#85be4d; padding:10px; margin-right:20px; height:30px; border-right:solid 1px #fff;}
.footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer p{color:#fff; font-family:'Montserrat','Open Sans',sans-serif}
.footer h5{margin-bottom:5px; padding-top:5px; font-size:14px; line-height:14px;}
.footer .footerContactBlock p, .footer .footerContactBlock p a, {font-weight:700; font-size:16px; color:#fff;}
.footerSocialBlockWrap{border-top:solid 1px #fff; margin-top:30px; padding:30px 0;}
.footerSocialBlockWrap a {
    border-left: solid 1px #fff;
    color: #fff;
    padding: 12px 10px;
}
.footerSocialBlockWrap p {
	color: #fff;
    font-size: 16px;
    line-height: 40px;
}
	.footer p {
		font-size:16px;
	    color: #ccc;
	}
	.footer a {
	    color: #85be4d;
	}
	.footer a:hover {
	    color:#156825;
	}
	.footer .left {
	    float: left;
	    color: #000;
	    display: block;
	    margin-bottom: 10px;
	}
	.footer .right {
	    float: right;
	    display: block;
	    margin-bottom: 10px;
	}
	.footer span {
	    padding: 0 3px;
	    color: #bbb;
	}
	.footer .primary,
	.footer .primary ul {
	    display: inline;
	    margin: 0;
	    padding: 0;
	}
		.footer .primary li {
		    display: inline;
		}
	.ie6 .footer .primary li,
	.ie7 .footer .primary li { /* this is a bugfix for ie6/7 */
	    display: inline;
	    zoom: 1;
	    margin-right: 10px;
	}
	.footer .primary li:after { /* adds '/' to separate the footer navigation items */
	    padding: 0 3px 0 5px;
	    content: '/';
	    color: #999;
	}
	.footer .primary li:last-child:after {
	    content: ''; /* makes sure last nav item doesn't have a '/' following it */
	}
	.footer .arrow {
	    padding: 0 8px 0 5px;
	    color: #85be4d;
	    font-size: 13px;
	}
	.footer .primary .nav-open-button {
	    display: none; /* the footer includes the primary nav include - this makes sure the nav open close button doesn't show up */
	}

/* PAGE SPECIFIC LAYOUT */

	/* Homepage */
		/* currently no Hompage specific styles - feel free to add your own */

	/* Search Results */
	.typography .searchResults h1 {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	.searchResults p.searchQuery {
	    margin-bottom: 10px;
	    font-size: 15px;
	    font-weight: bold;
	}
	.searchResults ul#SearchResults {
	    padding: 0;
	    border-bottom: 1px solid #e5e5e5;
	    margin:0;
	}
		.searchResults ul#SearchResults li {
		    border-top: 1px solid #e5e5e5;
		    padding: 20px 0;
		    list-style-type: none;
		}
		.searchResults ul#SearchResults p {
		    margin-bottom: 10px;
		}
		.searchResults #PageNumbers a {
		    padding: 0 5px;
		}
		.searchResults #PageNumbers .pagination {
		   	border-bottom: 1px solid #e5e5e5;
		    padding: 20px 0;
		    display:table; /* displays the pagination as a table so that elements stay inline and the middle column adjusts its size to accomodate and the right arrow stays to the right */
		    width:100%;
		}
		.searchResults #PageNumbers .pagination span{
			display:table-cell; /* each element in the pagination div displays as a table cell */
		}
		.searchResults #PageNumbers p {
		    text-align: center;
		    padding:20px 0;
		}
		.searchResults #PageNumbers .next,
		.searchResults #PageNumbers .prev {
		    font-size: 14px;
		    padding: 0 20px;
		    display:table-cell; /* each element in the pagination div displays as a table cell */
		    vertical-align: middle;
		    border-bottom:0 !important;
		}
		.searchResults #PageNumbers .next {
		    margin-left: 15px;
		}
		.searchResults #PageNumbers .prev {
		    margin-right: 15px;
		}

/* DEVICE & RESPONSIVE LAYOUT */
.header .nav-open-button {
    display: none; /* removes the nav toggle button for desktop site */
}
#media-query-trigger {
    /* instead of detecting the width of the window in simple/javascript/script.js it detects the visibility of this element (which is set using media queries)
    instead to trigger the hiding/showing of nav and search in mobile mode */
    display: none;
    visibility: hidden;
}

/* BREAKPOINT 960px */

@media only screen and (max-width: 960px) {
	.content img {
	    max-width: 97%;
	    height: auto;
	}
	.header .primary ul {
	    margin-left: -12px;
	    -webkit-padding-start: 0px; /* removes default webkit padding on ul items */
	}
	.headerBookOutter {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
	.testimonial_content p{font-size: 1.8vw;
    line-height: 2.2vw; }
.number-box {
    position: relative;
    right: unset;
}
.book-section .number-box > a {
    display: none;
}
.book-section .number-text {
    padding-left: 0;
    border: 0;
    margin-left: 0;
}

.elementfeatures .row.outter{grid-template-columns: 50% 50%;}
.facts-box {
    padding: 10px 15px; 
	-ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
	max-width:400px;
	margin-bottom: 10px;
}
.photogallery.row{ grid-template-columns: auto auto auto; column-gap:1vw; row-gap:1vw;}
div.field.short{width:100%; float:none; }
.mixedsized .mixed.photogallery.row .mixedCol1, .mixedsized .mixed.photogallery.row .mixedCol2 {float:none; display: flex; flex-wrap:wrap; width:100%; flex-direction: row; }
.mixedsized .mixed.photogallery.row .photogallery-holder.mixed {width:50%; padding:5px}
.mixedsized .mixed.photogallery.row .mixedCol1 .photogallery-holder.mixed.first {width:100%; height:auto; padding:none; overflow:hidden;}
.mixedsized .mixed.photogallery.row .mixedCol1 .photogallery-holder.mixed.third {width:100%; height:auto;}
.mixedsized .mixed.photogallery.row img{max-width:100%;}
.onesized.photogallery.row {
  grid-template-columns: auto auto auto;

}
.footer .footerColumnBlock {grid-template-columns: 50% 50%;}
}

/* BREAKPOINT 640px */

/* when changing the breakpoint below, change it ito the same value in the script.js file as well */
@media only screen and (max-width: 640px) {
	body {
	    max-width: 640px;
	}
	#media-query-trigger {
	    visibility: visible;
	}

	/* Navigation*/

	.tablet-nav .header .brand {
	    float: none;
	    display: inline-block;
	    margin-left: 22px;
	    margin-bottom: 22px;
	}
		.brand h1 {
		    font-size: 40px;
		}
		.brand h1 {
		    padding-right: 100px; /* padding stops .brand text from overlapping the search and nav buttons */
		}
	.tablet-nav .header {
	    padding: 0px;
	}
		.tablet-nav .header .inner {
		    padding: 20px 0 0 0;
		    min-height: 0;
		}
		.tablet-nav .header .primary .nav-open-button { /* styling and positioning of the nav toggle button */
		    z-index: 100;
		    width: 20px;
		    height: 20px;
		    position: absolute;
		    right: 20px;
		    top: -80px;
		    display: block;
		    cursor: pointer;
		    font-family: 'WebSymbolsRegular';
		    font-size: 20px;
		    color: #85be4d;
		}
		.tablet-nav .float-panel.fixed .header .primary .nav-open-button {
			top:-20px;	}
		.float-panel.fixed .header .navoutter {
			float:none; width:100%;	
		}	
		.tablet-nav .float-panel.fixed  .header .primary ul	{top:30px;}	
			
		.tablet-nav .header .primary ul {
		    z-index: 10;
		    position: relative;
		    display: none; /* initially hiding the navigation */
		    float: left;
		    margin: 0;
		    padding: 0;
		    white-space: normal;
		    width: 100%;
		}
			.tablet-nav .header .primary ul li {
			    width: 100%;
			    margin: 0;
			    padding: 0;
			    float: none; /* displays list items vertically */
			    background: none;
			    position: relative;
			    text-shadow: 0 1px #fff;
			}
			.tablet-nav .header .primary ul li:after { /* creates the arrow for the primary nav links */
			    content: '\003e';
			    display: block;
			    position: absolute;
			    right: 20px;
			    top: 0px;
			    font-family: 'WebSymbolsRegular';
			    font-size: 14px;
			    color: #999;
			    text-align: center;
			    vertical-align: middle;
			    line-height: 38px;
			}
			.tablet-nav .header .primary ul li a,
			.tablet-nav .header .primary ul li.current a,
			.tablet-nav .header .primary ul li.section a { /* styling the  top level nav links */
			    padding: 10px 0 10px 22px;
			    font-weight: bold;
			    border-bottom: 1px solid #bbb;
			    color: #434343;
			    background: #e7e7e7;
			}
			.tablet-nav .header .primary ul li.current a,
			.tablet-nav .header .primary ul li.section a {
				background: #CCCCCC; /* makes background on current top level page slightly darker */
			}
			.tablet-nav .header .primary ul li a:hover {
			    color: inherit;
			}
			.tablet-nav .header .primary li.section:after,
			.tablet-nav .header .primary li.current:after {
			    display: none; /* hides the link arrow on current top level page */
			}
			.tablet-nav .tablet-nav .header nav.primary ul li {
				padding: 0;
			}
			.book-section a.btn-book {display:none;}

	/* Search Form */
	.search-bar { /* adds new styling to mobile search bar */
	    width: 100%;
	    position: relative;
	    top: 0;
	    right: 0;
	    display: none; /* hides searchbar initially */
	    padding: 20px 0;
	    margin: 0;
	    background-color: #E7E7E7;
	}
	.search-dropdown-icon { /* styling for search toggle button */
	    display: block;
	    cursor: pointer;
	    width: 20px;
	    height: 20px;
	    position: absolute;
	    right: 60px;
	    top: 34px;
	    font-family: 'WebSymbolsRegular';
	    font-size: 20px;
	    color: #ededed;
	    text-align: center;
	    line-height: 20px;
	}
	.search-bar form {
	    margin: 0;
	    width: 100%;
	}
		.search-bar form fieldset {
		    padding: 0 18px;
		    left: 0;
		    right: 0;
		    position: relative;
		}
	.search-bar div.field {
	    margin-bottom: 0;
	}
	.search-bar form input.text {
	    width: 89%; /* makes search input full width - allowing for space either side */
	    max-width: 89%;
	    padding: 8px 10% 8px 1%;
	    text-indent: 15px;
	    position: relative;
	    display: block;
	    right: 0;
	    left: 0;
	    border: 1px solid #e5e5e5;
	    background: #fff;
	    font-size: 17px;
	    border-radius: 20px; /* increase border radius due to increased padding */
	}
	.search-bar form input.action {
	    right: 5%;
	    top: 2px;
	    font-size: 18px;
	}

	/* Main Content */
	.main {
	    padding: 20px 0 45px; /* decrease padding so that more content can fit on screen */
	}
	.content-container,
	.sidebar {
	    width: 100%; /* sidenav is now shown above the page content */
	    margin-bottom: 30px;
	}
		.typography h1 { /* decrease size of page heading due to smaller screen */
		    font-size: 30px;
			line-height:35px;

		}
		.typography p {
		    font-size: 14px;
		    line-height: 23px;
		}
	p.intro {
	    font-size: 19px;
	    line-height: 27px;
	}
	.main .inner {
	    padding: 0 22px;
	}
	/* Secondry Nav */
	.secondary li a {
	    line-height: 24px;
	}
	.secondary li .arrow {
	    line-height: 26px;
	}
	/* Footer */
	.footer .right {
	    float: left;
	    width: 100%;
	}
.facts-box {

	-ms-flex: 0 0 50%;
    flex: 0 0 100%;
    max-width: 100%;
    padding: 10px 15px; 	

}	
.photogallery.row{ grid-template-columns: auto auto; column-gap:1vw; row-gap:1vw;}
.elementfeatures .row.outter{grid-template-columns: 100%;}

.contentwithfeaturedimgelementalblock .featuredImgBlock.withImg{grid-template-columns: 100%;}
.activityBlock {padding: 5px 10px; width: 100%; text-align:center; margin-bottom:40px; }
.activityBlock img {max-width:600px; margin:0 auto; }
.programmewrap{grid-template-columns: 100%;}
.programmeBlock .programmeContent h2{font-size:22px; line-height:28px; text-align:center;}
.programmeBlock .programmePrice h3{font-size:18px; text-align:center;}
.programmeBlock .programmeSummary p{font-size:16px; text-align:center;}
.list-element__container.elementColumn2 .element, .list-element__container.elementColumn3 .element, .list-element__container.elementColumn4 .element{width:100%; padding:20px 0;}
.element.elementlist{padding:20px 0;}
.elementlist .elementoembed h3.card-title{font-size:16px; line-height:24px;}
.elementfeatures .row .card h3.card-title{min-height:auto;}
.elementfeatures .row .card h3.card-text{min-height:auto;}
.testimonial__quote{display:block;}
.testimonial_title{border-right:0;}
.testimonial_title img{max-width:150px; margin:0 auto;}	
.testimonial_title h4 {
    font-size: 18px;
    line-height: 24px;
}
.onesized.photogallery.row {
  grid-template-columns: auto auto;

}
.elementform .contactFormBlock, .elementform .contactListingBlock{width:100%; min-width:100%;  float:none;}



a.btn, button, input[type="submit"], input[type="reset"], .Actions .action {float:none;}

.footer .footerColumnBlock {grid-template-columns: 100%;}
}

/* Print Styles */

/* Based on HTML5 boilerplate print styles */
@media print {
	* {
	    background: transparent !important;
	    color: black !important;
	    box-shadow: none !important;
	    text-shadow: none !important;
	    filter: none !important;
	    -ms-filter: none !important;
	}
	a,
	a:visited {
	    text-decoration: underline
	}
	a[href]:after {
        content: " (" attr(href) ")";
    }
    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

	thead {
	    display: table-header-group
	}
	tr,
	img {
	    page-break-inside: avoid
	}
	img {
	    max-width: 100% !important
	}
	pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }
    @page {
        margin: 0.5cm;
    }
    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    /* Simple theme custom print styles */
	.header,
	.footer,
    .nav-open-button,
    .search-bar,
    .search-dropdown-icon,
    nav.primary {
	    display: none;
	}
}
