

	/********************************* [ GLOBAL STYLES ] *********************************/
		.clear, .clearfix { clear: both; }
		.clear:after, .clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
		.post, .page { margin: 0 !important; }
		div, span, ul, li, img, header, nav, footer, main, article, aside, section { position: relative; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }
		html { background: #000; }
		body { position: relative; font-size: 1.1rem; line-height: 2rem; font-weight: 300; font-family: 'Roboto', sans-serif; color: #bcbcbc; background: #111 url(images/bg-background.jpg) no-repeat 50% 50% fixed; background-size: cover; -webkit-background-size: cover; }
		
		#page { z-index: 1; }
		
		/***************************/
		/* GLOBAL COLOUR - #f28900 */
		/***************************/
		
		a, a:visited { text-decoration: none; color: #f28900; }
		a:active, a:hover { text-decoration: none; color: #e3e3e3; }
		.entry-content a, #home-intro a { text-decoration: underline; color: #f28900; }
			.entry-content a:hover, #home-intro a:hover { text-decoration: underline; color: #e3e3e3; }

		h1, h2, h3, h4, h5, h6 { margin: 0 0 40px; color: #f28900; letter-spacing: 0px; line-height: 1em; font-weight: 200; font-family: 'Oswald', sans-serif; text-shadow: none; text-transform: uppercase; }
		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: #f28900; }
		h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong { font-weight: bold; }
		h1.entry-title a, h2.entry-title a, h3.entry-title a, h4.entry-title a, h5.entry-title a, h6.entry-title a { color: #f28900 !important; }
		h1 { font-size: 2.6rem; line-height: 3rem; }
		h2 { font-size: 1.6rem; line-height: 2.6rem; }
		h3 { font-size: 1.6rem; line-height: 2.6rem; margin-bottom: 20px; }
		h4 { font-size: 1.6rem; line-height: 2.4rem; margin-bottom: 20px; }
		h5 { font-size: 1.6rem; line-height: 2.4rem; margin-bottom: 20px; }
		h6 { font-size: 1.6rem; line-height: 2.4rem; margin-bottom: 20px; }
		strong { font-weight: 500; }
		p { margin: 0 0 3rem; }
		
		
		::-webkit-input-placeholder { color: #222; }
		::-moz-placeholder { color: #222; }
		:-ms-input-placeholder { color: #222; }
		:-moz-placeholder { color: #222; }
		
		input:focus, input:active, input[type="checkbox"], select, textarea, img { outline: none; }
		
		input[type=text], input[type=email], input[type=tel], input[type=password], input[type=number], input.text, input.title, textarea, select { background-color: transparent; color: #bcbcbc !important; border: 1px solid #666; padding: 15px !important; font-weight: 400; font-size: inherit; border-radius: 0px; -webkit-border-radius: 0px; }
			input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=password]:focus, input[type=number]:focus, input.text:focus, input.title:focus, textarea:focus, select:focus { border-color: #666; color: #bcbcbc; box-shadow: 0 0 10px rgba(4,79,134,0.2); }
		
		textarea { resize: vertical; }

		.ginput_container_checkbox { padding-top: 20px; }

		.gfield_checkbox input[type="checkbox"] { opacity: 0; }
		.gfield_checkbox label::before{
			cursor: pointer;
			content: "";
			display: inline-block;
			height: 20px;
			width: 20px;
			left: 0;
			border: 2px solid #444;
			border-radius: 0 0;
			-webkit-border-radius: 0 0;
		}
		.gfield_checkbox label::after {
			cursor: pointer;
			content: "";
			display: inline-block;
			height: 8px;
			width: 12px;
			border-left: 2px solid #f28900;
			border-bottom: 2px solid #f28900;
			transform: rotate(-45deg);
		}
		.gfield_checkbox label { position: relative; padding-left: 30px !important; padding-bottom: 6px !important; cursor: pointer; }
		.gfield_checkbox label::before, .gfield_checkbox label::after { position: absolute; }
		.gfield_checkbox label::before { top: 6px; }
		.gfield_checkbox label::after { left: 4px; top: 10px; }
		
		/*Hide the checkmark by default*/
		.gfield_checkbox input[type="checkbox"] + label::after {
			content: none;
			outline: none;
		}
		/*Unhide the checkmark on the checked state*/
		.gfield_checkbox input[type="checkbox"]:checked + label::after {
			content: "";
			outline: none;
		}
		/*Adding focus styles on the outer-box of the fake checkbox*/
		.gfield_checkbox input[type="checkbox"]:focus + label::before {
			outline: none;
		}
		
		.gfield_checkbox input[type="checkbox"]:checked + label::before {
			border: 2px solid #f28900;
		}
		
		
		input[type=button], input[type=submit], button, .button, a.read-more, .reply-container a, #commentform input#submit, .shortcode-button a, .gform_wrapper.gravity-theme .gform_previous_button.button, .gform_wrapper.gravity-theme .gform_save_link.button {
			-webkit-appearance: none; -moz-appearance: none; -o-appearance: none; /* For Mobiles */
			z-index: 1;
			border-radius: 0px; -webkit-border-radius: 0px;
			position: relative;
			background: #f28900;
			border: 0px none;
			display: inline-block;
			cursor: pointer;
			color: #111 !important;
			font-size: 1.1rem;
			font-weight: 500;
			font-family: 'Oswald', sans-serif;
			text-decoration: none !important;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			line-height: 2rem;
			padding: 16px 30px 16px;
			text-align: center;
		}
		input[type=button] i, input[type=submit] i, button i, .button i, a.read-more i, .reply-container a i, #commentform input#submit i, a i, .shortcode-button a i { margin-right: 10px; }
		input[type=button]:hover, input[type=submit]:hover, button:hover, .button:hover, a.read-more:hover, .reply-container a:hover, #commentform input#submit:hover, .shortcode-button a:hover, .gform_wrapper.gravity-theme .gform_previous_button.button:hover, .gform_wrapper.gravity-theme .gform_save_link.button:hover {
			background: #ffaa3a !important;
			text-decoration: none !important;
			color: #111;
		}
		
		
		/* Change this class to whatever ID or class you wish to animate */
		input, select, textarea, article, section, input[type=button], input[type=submit], button, .button, a.read-more, .reply-container a, #commentform input#submit, .shortcode-button a, .site-info section .footer-socials a, #back-top, ul.products li.product, .main-navigation ul ul a, .site-header, .site-branding, .site-branding img, .main-navigation, .main-navigation li a, .shiftnav-toggle-button, .main-navigation a.menu-bookings, .main-navigation ul ul, .main-navigation ul ul, #home-container.hpvideo #homepage-slider span {
			-webkit-transition: all 0.3s ease-out;
			-moz-transition: all 0.3s ease-out;
			-ms-transition: all 0.3s ease-out;
			-o-transition: all 0.3s ease-out;
			transition: all 0.3s ease-out;
		}
	/******************************* [ END GLOBAL STYLES ] *******************************/


	
	
	

	.pagecontainer { margin: 0 auto; width: 1360px; display: flex; flex-flow: row nowrap; padding: 150px 0 0 0; }
	.container { margin: 0 auto; width: 1360px; }
	
	#primary { float: right; width: 100%; text-align: left; padding: 0px 0px; }
		.fullwidth #primary { float: none; width: auto; }
	#secondary { float: left; width: 100%; margin-right: 4%; text-align: left; padding: 0px 0px; }
	
	
	
	/********************************* [ HEADER STYLES ] *********************************/
	
	.site-header { position: relative; z-index: 111; top: 0; width: 25%; padding: 0 8% 0 0; display: block; }
		
		img.header-logo { display: block; width: 35%; height: auto; margin: 0 auto 50px; opacity: 0.6; -webkit-opacity: 0.6; }
			img.header-logo:hover { opacity: 0.9; -webkit-opacity: 0.9; }
	
	
		/*************** [ NAVIGATION STYLES ] ******************/
		.main-navigation { width: 100%; display: flex; flex-flow: column wrap; margin-bottom: 100px; }
		.menu-main-menu-container { }
			.main-navigation ul { display: flex; flex-flow: column wrap; list-style: none; margin: 0; padding: 0; text-align: center; }
				.main-navigation li { }
					.main-navigation li a, .shiftnav-toggle-button, .main-navigation a.menu-bookings { position: relative; display: inline-block; margin: 4px auto; line-height: 3rem; font-size: 1.2rem; font-family: 'Oswald', sans-serif; font-weight: 200; text-transform: uppercase; text-decoration: none; color: #fff; text-align: center; }
					.main-navigation a.menu-bookings { border: 1px solid #fff; padding: 0px 20px; }
					.main-navigation li:last-child a { margin-right: 0; }
						.main-navigation li a:hover, .shiftnav-toggle-button:hover, .main-navigation a.menu-bookings:hover { text-decoration: none; color: #f28900; }
						.main-navigation a.menu-bookings:hover { border-color: #f28900; }
							
					
					.shiftnav.shiftnav-skin-standard-dark, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu { background: #000; }
					.shiftnav-toggle-button, .shiftnav-toggle-button:hover { background: none transparent; text-align: center; }
					.shiftnav-toggle * { line-height: 1.3rem !important; }
					.shiftnav .fa, .shiftnav-toggle .fa {
						font-family: "Font Awesome 5 Free" !important;
						font-weight: 900 !important;
					}
					.shiftnav-nav .menu-item-has-children::before { top: 1.6rem !important; right: 11px !important; }
					
					.shiftnav.shiftnav-nojs.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item > .shiftnav-target:hover, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item.shiftnav-active > .shiftnav-target, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item.shiftnav-in-transition > .shiftnav-target, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item.current-menu-item > .shiftnav-target, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu > li.shiftnav-sub-accordion.current-menu-ancestor > .shiftnav-target, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu > li.shiftnav-sub-shift.current-menu-ancestor > .shiftnav-target, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu.shiftnav-active-highlight li.menu-item > .shiftnav-target:active, .shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu.shiftnav-active-on-hover li.menu-item > .shiftnav-target:hover { background: transparent !important; }
					
					/* Text Link Styles */
					.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item > .shiftnav-target { font-family: 'Oswald', sans-serif; font-size: 1.2rem; line-height: 1rem; font-weight: 400; color: #ccc; }
						.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item > .shiftnav-target:hover { color: #fff; }
						
					/* Current menu item */
					.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item.current-menu-item > .shiftnav-target { border-top-color: transparent !important; }
					.shiftnav ul.shiftnav-menu li.current-menu-item a { color: #fff !important; }
			
			
			/* Sticky Menu */
			nav.sticky-navbar { display: none; position: fixed; z-index: 111111; top: 0px; flex-flow: row nowrap; background: #111; width: 100%; border-bottom: 1px solid #222; }
				nav.sticky-navbar div { display: flex; flex-flow: row wrap; align-items: center; justify-content: center;  width: 100%; }
				nav.sticky-navbar ul { display: flex; flex-flow: row wrap; align-items: center; justify-content: center; list-style: none; margin: 0; padding: 0; text-align: center; }
					nav.sticky-navbar li { display: inline-block; padding: 0 25px; }
						nav.sticky-navbar li a { position: relative; display: block; margin: 0 auto; line-height: 4rem; font-size: 1.1rem; font-family: 'Oswald', sans-serif; font-weight: 400; text-transform: uppercase; text-decoration: none; color: #fff; text-align: center; }
			nav.sticky-navbar.sticky-fixed { display: flex; }
		/*************** [ NAVIGATION STYLES ] ******************/
	
	
		.sidebar-logo-family { max-width: 86px; height: auto; display: block; margin: 0 auto; }
		.sidebar-logo { max-width: 130px; height: auto; display: block; margin: 60px auto 0; opacity: 0.6; -webkit-opacity: 0.6; }
			.sidebar-logo:hover { opacity: 0.9; -webkit-opacity: 0.9; }
		
	
	/******************************* [ END HEADER STYLES ] *******************************/
	
	
	
	
	/********************** [ BODY STYLES ] **********************/
	#home-container { width: 75%; }
	
		#ape-social-links { position: absolute; top: -40px; right: 0px; text-align: right; }
			#ape-social-links a { margin-left: 20px; color: #666; font-size: 1.4rem; }
				#ape-social-links a:hover { color: #fff; }
	
		#homepage-slider { position: relative; z-index: 1; width: 100%; display: flex; flex-flow: row nowrap; justify-content:space-between; }
			#homepage-slider::after { content: ''; z-index: -1; position: absolute; top: 50px; right: -50px; bottom: -50px; left: 100px; background: #fff; opacity: 0.1; }
			#homepage-slider img { max-width: 47%; height: auto; }
		
		
		#home-intro { z-index: 2; }
				#home-intro section:first-of-type { width: 100%; padding: 150px 0 0 100px; }
					#home-intro section:first-of-type h1 { }
					#home-intro section:first-of-type h2 { color: #e3e3e3; text-transform: initial; font-size: 2rem; line-height: 3rem; }
					#home-intro section:first-of-type p { position: relative; }
				
		
	
	/* Homepage with video instead */
	#home-container.hpvideo { }
		#home-container.hpvideo #homepage-slider { position: relative; z-index: 1; width: 100%; display: flex; flex-flow: row nowrap; justify-content:space-between; cursor: pointer; }
			#home-container.hpvideo #homepage-slider::after { content: ''; z-index: -1; position: absolute; top: 50px; right: -50px; bottom: -50px; left: 100px; background: #fff; opacity: 0.1; }
			#home-container.hpvideo #homepage-slider img { width: 100%; max-width: 100%; height: auto; }
			#home-container.hpvideo #homepage-slider iframe { width: 100%; max-width: 100%; }
			#home-container.hpvideo #homepage-slider span { position: absolute; z-index: 2; bottom: 50px; left: 50px; background: #f28900; border-radius: 100%; -webkit-border-radius: 100%; color: #333; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: 400; text-align: center; width: 100px; height: 100px; display: flex; flex-flow: column wrap; justify-content: center; align-items: center; padding: 20px; line-height: 1.1rem; outline: 10px solid rgba(255,255,255,0); }
				#home-container.hpvideo #homepage-slider:hover span { outline: 10px solid rgba(255,255,255,0.2); }
		
		
		
	/******************** [ END BODY STYLES ] ********************/
	
	
	
	
	#page-header-slider { width: 100%; height: auto; margin-bottom: 100px; }
		#page-header-slider::after { content: ''; z-index: -1; position: absolute; top: 50px; right: -50px; bottom: -50px; left: 100px; background: #fff; opacity: 0.1; }
		
		
	.entry-header { position: relative; width: 100%; background: none transparent; text-align: left; color: #fff; text-transform: uppercase; padding-left: 100px; }
		
		.entry-header h1.entry-title { width: 100%; font-size: 2rem; line-height: 3rem; letter-spacing: 1px; margin: 0px 0px 50px; }
		.entry-header .entry-meta { position: relative; z-index: 1; margin-top: 0px; color: #fff; text-transform: uppercase; font-size: 80%; }
			.entry-header .entry-meta a { color: #fff; }
	
		article.type-page .entry-content h2:first-of-type { font-family: 'Oswald', sans-serif; font-weight: 300; color: #e3e3e3; text-transform: none; font-size: 1.7rem; line-height: 2.6rem; }
			
		
	.page-content, .entry-content, .entry-summary, #post-page-loop { padding: 0 0; margin: 0 0; }
	.site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation { display: none; }
	
		h1, h2, h3, h4, h5, h6 { clear: none !important; }
		.red-swish { background: url(images/red-underline.png) no-repeat 50% 100%; background-size: 100% 9px; -webkit-background-size: 100% 9px; padding-bottom: 15px; color: #f28900; font-size: 140%; }
		
		.quote { font-size: 220%; line-height: 160%; font-family: 'Oswald', sans-serif; }
		.entry-content iframe { width: 100% !important; }
		iframe.googlemap { border: 10px solid rgba(0,0,0,0.1); }
		
		.alignright { float: right; margin: 10px 0 15px 5%; }
		.alignleft { float: left; margin: 10px 3% 15px 0; }
		
		.imageborder { border: 0 none; border-radius: 6px; -webkit-border-radius: 6px; }
		
		
		.entry-content > ul, .shortcode-one-half > ul, .shortcode-one-half-last > ul, .shortcode-faq > ul { margin: 0 0 40px; padding: 0 0 0 20px; list-style: none outside; }
			.entry-content > ul > li, .shortcode-one-half > ul > li, .shortcode-one-half-last > ul > li, .shortcode-faq > ul li { padding: 0 0 5px 30px; background: url(images/icon-list-item.png) no-repeat 0 9px; background-size: 9px auto; -webkit-background-size: 9px auto; }
	
		footer.entry-footer { clear: both; }
		
		
		
		body.page-template-page-blog .entry-header, body.page-template-page-blog article.page.type-page { padding-left: 0px; }
		ul#post-page-loop { display: flex; flex-flow: column wrap; width: 100%; list-style: none outside; margin: 0 0; }
			ul#post-page-loop li { width: 100%; margin-bottom: 40px; }
				ul#post-page-loop li:nth-child(4n+0) { margin-right: 0; }
				
				ul#post-page-loop li .post-page-img { }
					ul#post-page-loop li img { display: block; width: 100%; border-radius: 0px; -webkit-border-radius: 0px; }
				ul#post-page-loop li .post-page-desc { display: flex; flex-flow: row nowrap; position: relative; bottom: 0px; margin: 0 auto; background: #222; padding: 4%; width: 100%; }
					ul#post-page-loop li span { width: 50%; }
						ul#post-page-loop li h3 { font-size: 1.6rem; line-height: 1.6rem; margin-bottom: 10px; color: #f28900; }
							ul#post-page-loop li h3 a { color: #f28900; }
						ul#post-page-loop li .posted-on { font-size: 80%; color: #bcbcbc; }
							ul#post-page-loop li .posted-on a { color: #bcbcbc; }
						ul#post-page-loop li p { margin-top: -5px; margin-bottom: 0px; font-size: 80%; }
		
		
		
		
		
		/* Single Post Styles */
		article.post, article.page { padding-left: 100px; margin-bottom: 20px !important; }
		article.page.type-page { }
		
		
			.entry-header.post { margin-bottom: 50px !important; }
				.post-meta { margin-bottom: 10px; font-size: 70%; text-transform: uppercase; }
				.entry-header .post-meta { margin-top: 30px; }
					.post-meta strong { display: inline-block; background: #f28900; padding: 2px 15px; margin-right: 5px; font-weight: normal; color: #fff; text-transform: uppercase; border-radius: 100px; -webkit-border-radius: 100px; }
						.post-meta strong i { position: relative; vertical-align: middle; margin-top: -2px; margin-right: 4px; }
						.post-meta strong a { color: #fff; }
				
				.post h1 { margin-bottom: 0px !important; }
			.post-thumbnail { max-width: 100%; margin: 0 0 100px; background: #222; border-radius: 0px; -webkit-border-radius: 0px; }
				.post-thumbnail::after { content: ''; z-index: -1; position: absolute; top: 50px; right: -50px; bottom: -50px; left: 100px; background: #fff; opacity: 0.1; }
				.post-thumbnail img { display: block; border-radius: 0px; -webkit-border-radius: 0px; }
			.post #post-social-share { display: flex; flex-wrap: nowrap; justify-content: flex-start; align-content: flex-start; }
				.post #post-social-share div { max-width: 170px; }
				
			.post-tags { }
				.post-tags ul { list-style: none outside; margin: 0 0; padding: 0 0; }
					.post-tags ul li { display: inline-block; background: #f28900; padding: 0px 10px; margin-right: 5px; font-weight: normal; text-transform: uppercase; border-radius: 100px; -webkit-border-radius: 100px; font-size: 70%; }
						.post-tags ul li a { color: #444; }
			
			#comments { margin: 0 auto !important; }
			#wpdcom { margin: 0 !important; padding: 0 !important; max-width: 100% !important; }
				#wpdcom .wpd-thread-list { padding: 30px 0 0; }
		/* End Single Post Styles */
		
		
		
		
		
		/* Contact Page Template */
		main.contactpage { display: flex; flex-flow: row nowrap; }
			#contact-col1 { width: 55%; padding-right: 5%; }
				#contact-col1 article.page.type-page { }
			#contact-col2 { width: 45%; }
		
		
		
		
		/* Woocommerce Styles */
		.cfvsw-label-option, .cfvsw-image-option { border: 1px solid #555; background: none; line-height: 2rem; font-size: 17px !important; }
		.cfvsw-selected-swatch { background: #f28900 !important; color: #111 !important; }
		
		.voucher-fields { }
			.voucher-fields p { width: 40%; display: inline-block; }
				.voucher-fields p label { display: block; }
				.required { color: inherit; }
				span.woocommerce-input-wrapper { width: 100%; display: block; }
				span.woocommerce-input-wrapper input { width: 90%; display: block; }
				
			.voucher-image-options { display: none; }
		
	
	/********************************* [ SIDEBAR STYLES ] *********************************/
		#secondary { }
			.widget { background: #eaeaea; padding: 10%; margin: 0 0 20px; border-radius: 6px; -webkit-border-radius: 6px; }
				.widget.widget_media_image { padding: 0 0; }
					.widget.widget_media_image img { display: block; }
					.widget h2 { font-size: 1.8rem; line-height: 2.2rem; font-weight: 300; margin: 0 0 40px; text-transform: uppercase; }
					.widget a { }
			
			
			.widget_nav_menu { }
				.widget_nav_menu ul { margin: 0 0; padding: 0 0; list-style: none outside; }
					.widget_nav_menu ul li { display: flex; flex-wrap: nowrap; flex-direction: row; margin-bottom: 0; }
					.widget_nav_menu ul li::before { position: absolute; z-index: 1; text-rendering: auto; -webkit-font-smoothing: antialiased; font: var(--fa-font-solid); content: "\f105"; line-height: 1rem; color: #f28900; padding: 18px 20px 10px 20px; }
						.widget_nav_menu ul li a { position: relative; display: block; width: 100%; color: #f28900; padding: 10px 0px 10px 50px; font-weight: bold; background: rgba(255,255,255,0); border-radius: 6px; -webkit-border-radius: 6px; }
							.widget_nav_menu ul li a:hover { text-decoration: none; background: rgba(255,255,255,1); }
			
			
			#custom_html-2 { background: #f28900; color: #fff; padding: 0; border-radius: 6px 6px; -webkit-border-radius: 6px 6px; }/* Quality Advice Widget */
				#custom_html-2 h2 { font-size: 1.2rem; font-weight: 400; color: #fff; padding: 12% 16% 0; margin-bottom: 20px; text-align: center; }
				#custom_html-2 p { padding: 0 16%; text-align: center; }
				#custom_html-2 .widget-buttons { display: flex; flex-flow: column wrap; }
					#custom_html-2 .widget-buttons a { display: block; color: #fff; width: 100%; text-align: center; padding: 20px; font-family: 'Oswald', sans-serif; text-transform: uppercase; font-size: 110%; font-weight: 500; }
						#custom_html-2 .widget-buttons i { color: #f28900; }
						#custom_html-2 .widget-buttons a:first-of-type { background: #2c5182; }
						#custom_html-2 .widget-buttons a:last-of-type { background: #3b67a1; border-radius: 0 0 6px 6px; -webkit-border-radius: 0 0 6px 6px; }
						#custom_html-2 .widget-buttons a:hover { background: #203156; }
			
			
			
	/******************************* [ END SIDEBAR STYLES ] *******************************/
	
	
	
	
	
	
	/********************************* [ FOOTER STYLES ] *********************************/
		
		
		
		.site-footer { width: 100%; position: relative; padding: 300px 50px 40px; }
		
			.site-info { display: flex; flex-flow: row nowrap; justify-content: flex-start; align-items: stretch; font-size: 80%; font-family: 'Oswald', sans-serif; font-weight: 500; letter-spacing: 1px; color: #666; text-transform: uppercase; }
				.site-info section { width: 50%; }
					.site-info a { color: #ccc; }
						.site-info a:hover { color: #fff; }
					.site-info section h1, .site-info section h2, .site-info section h3, .site-info section h4, .site-info section h5, .site-info section h6 { font-size: 1.6rem; line-height: 2rem; font-weight: 200; color: #fff; margin-bottom: 40px; }
						.site-info section h1::after, .site-info section h2::after, .site-info section h3::after, .site-info section h4::after, .site-info section h5::after, .site-info section h6::after { display: block; content: ''; background: #f28900; width: 50px; height: 2px; margin-top: 12px; }
				
				
				section.footer-left { text-align: left; color: #ccc }
					section.footer-left p { margin-bottom: 0px; }
						section.footer-left p span { color: #f28900; margin: 0 12px 0 30px; }
					
				
				section.site-info-copy { text-align: right; }
					section.site-info-copy p { margin-bottom: 0px; }
					section.site-info-copy a { color: #666; }
						section.site-info-copy a:hover { color: #fff; text-decoration: none; }
		
		
		
		#back-top { position: fixed; z-index: 3; padding: 0; bottom: 80px; right: 50px; }
			#back-top a { display: block; width: 50px; color: #FFF; text-align: center; text-decoration: none; text-transform: uppercase; }
			#back-top span { background: #333 url(images/up-arrow.png) no-repeat 50% 50%; display: block; width: 50px; height: 50px; margin-bottom: 0; background-size: 70% auto; -webkit-background-size: 70% auto; border-radius: 0px; -webkit-border-radius: 0px; }
			
			
		#footer-toggle-menu { display: none; flex-direction: row; flex-wrap: wrap; align-items: stretch; justify-content: space-evenly; position: fixed; bottom: 0px; left: 0px; right: 0px; z-index: 99999; background: #000; width: 100%; margin: 0 0; padding: 0 0; }
			#footer-toggle-menu li { display: block; width: 33.333%; vertical-align: middle; text-align: center; }
				#footer-toggle-menu li a { display: block; min-height: 62px; padding: 13px 0px 9px; color: #fff; font-size: 0.7rem; line-height: 1rem; font-family: 'Roboto', Arial, sans-serif; font-weight: bold; text-transform: uppercase; }
					#footer-toggle-menu li a i { display: block; margin: 0 auto; font-size: 1.4rem; min-height: 24px; }
					#footer-toggle-menu li a:hover{ opacity: 1.0; background: #f28900; text-decoration: none; }
					
					#footer-toggle-menu a.shiftnav-toggle-button { margin: 0 0 !important; }
	/******************************* [ END FOOTER STYLES ] *******************************/
	
	
	
	
	
	
	
	
	/********************** [ GRAVITY FORMS STYLES ] **********************/
		.gform_wrapper { margin: 0 0 !important; }
			.gform_required_legend { display: none; }
			
			.gform_wrapper li { margin-top: 12px !important; }
				body .gform_legacy_markup_wrapper .top_label div.ginput_container { margin-top: 2px !important; }
				.gform_wrapper div.ginput_container input, .gform_wrapper div.ginput_container textarea, .gform_wrapper div.ginput_container select { font-size: 1rem !important; padding: 15px !important; background-color: rgba(255,255,255,0.15); color: #fff !important; border: 0 none; }
					.gform_wrapper div.ginput_container input:focus, .gform_wrapper div.ginput_container textarea:focus, .gform_wrapper div.ginput_container select:focus { background-color: rgba(255,255,255,0.3); }
				.gform_wrapper.gravity-theme .ginput_container_time { max-width: 83px !important; min-width: 83px !important; }
				.gform_wrapper.gravity-theme .hour_minute_colon { line-height: 3 !important; }
				
				.gform_wrapper.gravity-theme .gfield_label { text-transform: uppercase; margin-bottom: 0 !important; font-size: 0.9rem !important; font-weight: 400 !important; font-family: 'Oswald', sans-serif; }
				.gform_wrapper.gravity-theme label { margin-bottom: 0 !important; font-size: 1rem !important; }
				
				.gform_wrapper.gravity-theme .field_description_above .instruction { display: none; }
				
				.gform_body.gform-body h2, .gform_body.gform-body h3, .gform_body.gform-body h4, .gform_body.gform-body h5, .gform_body.gform-body h6 { margin: 20px 0 10px 0; }
				.gform_wrapper.gravity-theme .gform_previous_button.button svg, .gform_wrapper.gravity-theme .gform_save_link.button svg { vertical-align: middle; }
					.gform_body.gform-body .button svg path { fill: #fff; }
					
					
					.gform_delete_file { background: #222; padding: 5px 5px; line-height: 1rem; }
					.gform_wrapper.gravity-theme .gfield_required { display: none; color: #fff !important; }
		
		.enquiryform { background: rgba(255,255,255,0.1); padding: 2%; }
			.enquiryform input, .enquiryform textarea { border: 0 none !important; }
			.enquiryform .button { background: #f28900 !important; }
	/******************** [ END GRAVITY FORMS STYLES ] ********************/
	
	
	.hustle-ui.module_id_1 button.hustle-button-close { color: #ffffff !important; }
	
	
	
	
	/* Login Page Styles */
	body.loginpage { height: 100%; display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; background: #111 url(images/bg-background.jpg) no-repeat 50% 50% fixed; background-size: cover; -webkit-background-size: cover; }
		body.loginpage .login-container { width: 500px; background: #111; border-radius: 0px; -webkit-border-radius: 0px; color: #777; padding: 10px; box-shadow: 0 0 150px rgba(255,255,255,0.2); -webkit-box-shadow: 0 0 150px rgba(255,255,255,0.2); }
			body.loginpage .login-container p { margin-bottom: 20px; }
			#form-client-login { border: 1px solid #444; padding: 8% 10%; border-radius: 0px; -webkit-border-radius: 0px; }
				#form-client-login form { display: flex; flex-direction: row; flex-wrap: wrap; }
					#form-client-login form div#login-fields { width: 100%; }
						#form-client-login form div .login-fields-inner { display: block; width: 100%; }
							#form-client-login form div .login-fields-inner label { display: block; width: 100%; padding: 0 0 20px; }
								#form-client-login form div .login-fields-inner label span, #form-client-login form div .login-fields-inner label input { display: inline-block; vertical-align: middle; }
								#form-client-login form div .login-fields-inner label span { width: 120px; }
								#form-client-login form div .login-fields-inner label input { width: calc(96% - 120px); padding: 10px !important; }
									#form-client-login form div .login-fields-inner label span { background: no-repeat 0 50%; background-size: 19px 19px; -webkit-background-size: 19px 19px; }
										#form-client-login form div .login-fields-inner label.login-user span { background-image: url(images/login-user.png); }
										#form-client-login form div .login-fields-inner label.login-pass span { background-image: url(images/login-password.png); }
								#form-client-login form div .login-fields-inner .button { padding: 5px 20px; }
					#form-client-login form div#login-logo { width: 100%; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: center; margin-bottom: 50px; opacity: 0.5; -webkit-opacity: 0.5; }
						#form-client-login form div#login-logo img { display: block; width: 80px; }
		
		/* Login Page Responsive */
		@media only screen and ( max-width: 980px ) {
			body.loginpage .login-container { }
				#form-client-login form div .login-fields-inner label span { width: 100%; padding-bottom: 10px; }
				#form-client-login form div .login-fields-inner label input { width: 98%; }
		}
		@media only screen and ( max-width: 768px ) {
			body.loginpage .login-container { width: 400px; }
				#form-client-login form div#login-fields { width: 100%; }
				#form-client-login form div#login-logo { display: none; }
		}
		@media only screen and ( max-width: 479px ) {
			body.loginpage .login-container { width: 80%; }
		}
		/* End Login Page Responsive */
	/* End Login Page Styles */
	
	
	
	
	
	/********************************* [ SHORTCODES STYLES ] *********************************/
	.shortcode-pdf { position: relative; padding: 15px 15px 15px 55px; margin-bottom: 24px; border: 2px dashed #f28900; line-height: 30px; }
		.shortcode-pdf::before { position: absolute; left: 20px; z-index: 1; font-weight: 900; font-family: "Font Awesome 5 Free"; content: '\f1c1'; font-size: 30px; line-height: 30px; color: #f28900; }
		.shortcode-pdf a { color: #222; }

	.shortcode-hr { position: relative; margin: 30px 0px; border-top: 2px solid #f28900; }

	.shortcode-address, .shortcode-phone, .shortcode-fax, .shortcode-email, .shortcode-time, .shortcode-facebook, .shortcode-shop, .shortcode-trading { position: relative; vertical-align: middle; margin-bottom: 10px; display: block; }
		.shortcode-address i, .shortcode-phone i, .shortcode-fax i, .shortcode-email i, .shortcode-time i, .shortcode-facebook i, .shortcode-shop i, .shortcode-trading i { font-size: 16px; margin: -1px 10px 0px 0px; vertical-align: middle; color: #f28900; border-radius: 100px; -webkit-border-radius: 100px; width: 20px; text-align: center; }
		.shortcode-address strong, .shortcode-phone strong, .shortcode-fax strong, .shortcode-email strong, .shortcode-time strong, .shortcode-facebook strong, .shortcode-shop strong, .shortcode-trading strong { display: block; color: #bcbcbc; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-size: 1rem; line-height: 1rem; font-weight: 400; }
		.shortcode-address a, .shortcode-phone a, .shortcode-email a { color: #bcbcbc; text-decoration: none; }
		.shortcode-address p, .shortcode-phone p, .shortcode-fax p, .shortcode-email p, .shortcode-time p, .shortcode-facebook p, .shortcode-shop p { padding-bottom: 0px; }
		.shortcode-address + br, .shortcode-phone + br, .shortcode-fax + br, .shortcode-email + br, .shortcode-time + br, .shortcode-facebook + br, .shortcode-shop + br { display: none; }
		
		.shortcode-trading i { float: left; margin-bottom: 140px; }
		

	.shortcode-cta { position: relative; display: block; background: #000 url(images/bg-cta-background.jpg) no-repeat 50% 50%; background-size: 100% auto; -webkit-background-size: 100% auto; margin: 6rem 0 3rem 0; padding: 7% 5% 6%; border-radius: 0px; -webkit-border-radius: 0px; color: #fff; text-align: center; border: 1px solid #333; }
		.shortcode-cta p { margin: 0 0 15px; }
			.shortcode-cta p:last-of-type { margin-bottom: 0; }
		.shortcode-cta strong { font-weight: 200; font-family: 'Oswald', sans-serif; text-transform: uppercase; font-size: 150%; letter-spacing: 6px; color: #999; margin }
		.shortcode-cta a { -webkit-appearance: none; -moz-appearance: none; -o-appearance: none; /* For Mobiles */
			border-radius: 0px; -webkit-border-radius: 0px;
			background: #f28900;
			border: 0px none;
			display: inline-block;
			cursor: pointer;
			color: #111 !important;
			font-size: 1.1rem;
			font-weight: 500;
			font-family: 'Oswald', sans-serif;
			text-decoration: none;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			line-height: 2rem;
			padding: 10px 30px;
			text-align: center;
		}
		.shortcode-cta a:hover { background: #ffaa3a; text-decoration: none; color: #111; }
		

	.shortcode-cta2 { position: relative; background: #e8e8e8; border-radius: 20px; -webkit-border-radius: 20px; padding: 8% 10% 5%; margin-bottom: 70px; font-size: 150%; line-height: 130%; font-family: 'Oswald', sans-serif; }
		.shortcode-cta2::after { position: absolute; content: ''; z-index: 1; bottom: -35px; left: 50%; margin-left: -120px; width: 240px; height: 84px; background: url(images/home-intro-quote.png) no-repeat 0 0; background-size: 100% auto; -webkit-background-size: 100% auto; }
		.shortcode-cta2 a { text-decoration: underline; }
			.shortcode-cta2 a:hover { text-decoration: underline; }
			

	.shortcode-urllink { position: relative; padding-left: 30px; font-weight: bold; color: #f28900; }
		.shortcode-urllink a { color: #f28900; text-decoration: underline; }
			.shortcode-urllink a:hover { color: #f28900; }
		.shortcode-urllink::before { position: absolute; left: 0px; z-index: 1; font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f0c1"; }
		
	.shortcode-button { display: inline-block; }
	
	.shortcode-quote { position: relative; font-family: 'Oswald', sans-serif; font-size: 1.8rem; line-height: 2.5rem; font-weight: 700; margin: 0px 4% 40px; padding: 10px 8%; color: #f28900; text-align: center; }
		.shortcode-quote::before { position: absolute; content: ''; top: 0; left: 0; background: url(images/home-intro-quote.svg) no-repeat 0 0; background-size: 100% auto; -webkit-background-size: 100% auto; width: 50px; height: 33px; }
		.shortcode-quote::after { position: absolute; content: ''; bottom: 17%; right: 0; background: url(images/home-intro-quote.svg) no-repeat 0 0; background-size: 100% auto; -webkit-background-size: 100% auto; width: 50px; height: 33px; }
	
	
	.shortcode-one-half, .shortcode-one-half-last { float: left; width: 49%; margin-right: 2%; padding: 0 0; }
	.shortcode-one-half-last { margin-right: 0; }
		.shortcode-one-half h2, .shortcode-one-half-last h2, .shortcode-one-half h3, .shortcode-one-half-last h3 { }
		.shortcode-one-half-last p:first-of-type { margin: 0 0; }
		.shortcode-one-half img, .shortcode-one-half-last img { display: block; max-width: 100% !important; }
	
	
	.shortcode-one-third, .shortcode-one-third-last { float: left; width: 32%; margin-right: 2%; margin-bottom: 20px; }
	.shortcode-one-third-last { margin-right: 0; }
		.shortcode-one-third p, .shortcode-one-third-last p { margin: 0 0 20px; }
		.shortcode-one-third img, .shortcode-one-third-last img { display: block; margin-bottom: 10px; }
		.shortcode-one-third h3, .shortcode-one-third-last h3 { margin-bottom: 20px; font-size: 1.6rem; }
		.shortcode-one-third p:last-of-type a, .shortcode-one-third-last p:last-of-type a { text-align: center; }
			.shortcode-one-third p:last-of-type a:hover, .shortcode-one-third-last p:last-of-type a:hover { }
		.shortcode-one-third ul, .shortcode-one-third-last ul { margin: 0 0 3rem; padding: 0 0 0 20px; list-style: none outside; }
			.shortcode-one-third ul li, .shortcode-one-third-last ul li { padding: 0 0 5px 40px; background: url(images/icon-list-item.png) no-repeat 0 5px; }
	
	.shortcode-one-fourth, .shortcode-one-fourth-last { float: left; width: 23.5%; margin-right: 2%; margin-bottom: 20px; text-align: center; }
	.shortcode-one-fourth-last { margin-right: 0; }
		.shortcode-one-fourth p, .shortcode-one-fourth-last p { margin: 0 0; }
		.shortcode-one-fourth p:last-of-type, .shortcode-one-fourth-last p:last-of-type { margin: 20px 0 0; }
		.shortcode-one-fourth img, .shortcode-one-fourth-last img { display: block; text-align: center; margin: 10px auto; }
		.shortcode-one-fourth h3, .shortcode-one-fourth-last h3 { margin: 0 0 10px; }
		.shortcode-one-fourth p:last-of-type a, .shortcode-one-fourth-last p:last-of-type a { display: block; text-align: center; }
			.shortcode-one-fourth p:last-of-type a:hover, .shortcode-one-fourth-last p:last-of-type a:hover { }
	
	
	.shortcode-faq { display: block; border-bottom: 2px solid #e8e8e8; margin-bottom: 50px; padding-left: 80px; background: url(images/icon-faq.png) no-repeat 0 5px; background-size: 50px 50px; -webkit-background-size: 50px 50px; }
		.shortcode-faq h4 { }
		.shortcode-faq p:first-of-type { margin: 0 0; }
	
	
	.shortcode-menus { }
		.shortcode-menus ul { display: flex; flex-flow: row wrap; align-items: stretch; justify-content: space-between; list-style: none outside; margin: 0 0; padding: 0 0; }
			.shortcode-menus ul li { margin: 0 0 40px; width: 48%; display: flex; flex-flow: row wrap; align-items: stretch; justify-content: center; }
				.shortcode-menus ul li a { display: flex; align-items: center; justify-content: center; width: 100%; color: inherit; padding: 10%; border: 1px solid #ccc; color: #ccc; text-align: center; text-decoration: none; }
					.shortcode-menus ul li a:hover { border-color: #fff; color: #fff; text-decoration: none; }
			
	/******************************* [ END SHORTCODES STYLES ] *******************************/

	
	
	
	
	
	
	
	
	
	
	
	
	
	/********************************* [ RESPONSIVE STYLES ] *********************************/
		.post img, #logo { max-width: 100%; height: auto; }
		embed, iframe, object, video { max-width: 100%; }

		@media only screen and ( max-width: 1600px ) {
			body { font-size: 1rem; }
			p { margin: 0 0 2.3rem; }
			.pagecontainer, .container { width: 1160px; }
			
			#home-intro section:first-of-type h2 { font-size: 1.7rem; line-height: 2.6rem; }
		}
		
		
		

		@media only screen and ( max-width: 1280px ) {
			body { font-size: 1rem; line-height: 1.6rem; }
			.pagecontainer, .container { width: 960px; }
			
			#page-header-slider { margin-bottom: 70px; }
				#page-header-slider::after { right: -25px; bottom: -25px; }
		}
		
		
		

		@media only screen and ( max-width: 1000px ) {
			.pagecontainer, .container { width: 740px; }
			
			img.header-logo { width: 55%; }
			.main-navigation li a, .shiftnav-toggle-button, .main-navigation a.menu-bookings { line-height: 2.6rem; font-size: 1rem; }
			.sidebar-logo { margin: 40px auto 0; }
			
			#homepage-slider::after { top: 25px !important; right: -25px !important; bottom: -25px !important; left: 50px !important; }
				#home-container.hpvideo #homepage-slider span { bottom: 20px; left: 20px; width: 80px; height: 80px; }
			#home-intro section:first-of-type { padding: 100px 0 0 50px; }
				#home-intro section:first-of-type h2 { font-size: 1.4rem; line-height: 2rem; }
				h1 { font-size: 2.3rem; line-height: 2.5rem; }
			
			#page-header-slider, .post-thumbnail { margin-bottom: 50px; }
				#page-header-slider::after, .post-thumbnail::after { top: 25px; right: -25px; bottom: -25px; left: 25px; }
			.entry-header { padding-left: 25px; }
			article.post, article.page { padding-left: 25px; }
			article.type-page .entry-content h2:first-of-type { font-size: 1.4rem; line-height: 2rem; }
			.shortcode-menus ul li { margin: 0 0 20px; }
			
			.gform_wrapper.gravity-theme .gform_fields { display: block; }
				.gform_wrapper.gravity-theme .gfield { margin-bottom: 10px; }
			
			ul#post-page-loop li h3 { font-size: 1.4rem; }
			.alignleft, .alignright { max-width: 40% !important; margin-bottom: 10px; }
			
			.site-footer { padding: 200px 50px 100px; }
			#footer-toggle-menu { display: flex; }
			#back-top { bottom: 130px; }
			nav.sticky-navbar.sticky-fixed { display: none !important; }
			
		}

		
		
		
		
		@media only screen and ( max-width: 820px ) {
			.body-fixed { padding-top: 0px !important; }
			.pagecontainer, .container { width: auto; padding: 0px 20px; }
			.pagecontainer { display: block; padding: 70px 0 0 0; }
				.site-header { width: 100%; padding: 0 0 100px; text-align: center; }
					img.header-logo { width: 70px; margin: 0 auto 50px; }
					.main-navigation { margin-bottom: 20px; }
						.main-navigation .menu-main-menu-container, .main-navigation .shiftnav-toggle { display: none; }
					.sidebar-logo-family { max-width: 70px; margin: 0 auto 20px; }
					.sidebar-logo { display: inline-block; margin: 0px 10px; }
			
			
			#home-container { width: 100%; padding: 0 5%; }
				#ape-social-links { position: relative; top: -20px; text-align: center; }
				#homepage-slider::after, .post-thumbnail::after { display: none; }
				#home-intro section:first-of-type { padding: 50px 0 0; }
			
			
			#page-header-slider::after { display: none; }
			
			.entry-header { padding-left: 0; }
			article.post, article.page { padding-left: 0; }
				
			input[type="button"], input[type="submit"], button, .button, a.read-more, .reply-container a, #commentform input#submit, .shortcode-button a, .gform_wrapper.gravity-theme .gform_previous_button.button, .gform_wrapper.gravity-theme .gform_save_link.button { font-size: 1rem; }
			#primary {}
				p { margin: 0 0 2rem; }
				.gform_wrapper div.ginput_container input, .gform_wrapper div.ginput_container textarea, .gform_wrapper div.ginput_container select { font-size: 1rem !important; padding: 8px 12px !important; }
			
			section.footer-left { width: 70%; }
			section.site-info-copy { width: 30%; }
		}
		
		
		
		

		@media only screen and ( max-width: 479px ) {
			.body-fixed { padding-top: 0px !important; }
			
			.site-header { padding: 0 0 50px; }
				img.header-logo { width: 70px; }
				.sidebar-logo-family { max-width: 70px; margin: 0 auto 20px; }
				.sidebar-logo { margin: 0px 10px 15px; max-width: 100px; }
			
			#home-intro { text-align: center; }
			
			#page-header-slider { margin-bottom: 30px; }
				.entry-header h1.entry-title { margin: 0px 0px 30px; }
				.shortcode-menus ul { display: block; }
					.shortcode-menus ul li { width: 100%; margin: 0 0 10px; }
						.shortcode-menus ul li a { padding: 7%; }
			
			ul#post-page-loop li .post-page-desc { display: block; }
				ul#post-page-loop li span { width: 100%; display: block; margin-bottom: 10px; }
				ul#post-page-loop li .posted-on { margin-bottom: 30px; }
			
			h1 { font-size: 1.6rem; line-height: 2.5rem; margin-bottom: 20px; }
			ul, ol { margin: 0 0 1.5em 0.5em; }
			input[type="button"], input[type="submit"], button, .button, a.read-more, .reply-container a, #commentform input#submit { display: block; padding: 12px 0px 10px; width: 100%; text-align: center; letter-spacing: 0; font-size: 0.8rem; }
			
			body.woocommerce-cart table, body.woocommerce-cart table tbody, body.woocommerce-cart table tr { width: 100%; display: block; }
				body.woocommerce-cart table thead { display: none; }
					body.woocommerce-cart table tr td, body.woocommerce-cart table tr td.product-thumbnail { display: block; width: 100%; padding: 10px 0 0; }
			form.checkout #checkout-flex { display: block; }
				form.checkout #checkout-flex #checkout-leftcol { width: 100%; padding: 10px; margin-bottom: 20px; }
				form.checkout #checkout-flex #checkout-rightcol { width: 100%; padding: 0; }
			
			.site-footer { padding: 100px 5% 100px; }
				.site-info {   display: block; }
					section.footer-left, section.site-info-copy { width: 100%; text-align: center !important; }
					section.site-info-copy { margin-top: 30px; }
			
			#back-top { bottom: 50px; right: 20px; }
		}
		
		
		
		
	/********************************* [ RESPONSIVE STYLES ] *********************************/
	