	@charset "UTF-8";
	/*
	Theme Name: FT.Fitness
	Theme URI: https://rt.fitness/
	Author: Keith Donegan
	Author URI: https://www.madebytoast.com/
	Version: 1.0
	*/

	/*****************************************************************
		Variables
	******************************************************************/

	:root {
		--rt-color-primary: #fd0002;
		--rt-color-darker: #383838;
		--rt-color-dark: #363636;

		--rt-color-grey-lighter: #FAFAFA;
		
		/* --rt-accent-light: #ffede0;
		
		--rt-grey-dark: #7c7c7c;
		--rt-grey-light: #eaeaea; */
		--rt-color-white: #fff;
	}


	/*****************************************************************
		Utility classes
	*****************************************************************/

	.rt-flex {
		display: flex;
	}
	.rt-flex-gap-50 {
		gap: 50px;
	}
	.rt-text-center { text-align: center; }

	.rt-text-highlight {
		background: #000;
		color: #fff;
		padding: 0px 7px;
		transform: rotate(-1deg);
		display: inline-block;
	}
	.shake-what-yo-momma-gave-ya {
		animation: tilt-shaking 0.28s linear;
	}

	.rt-pad-top-5 { padding-top: 5rem; }
	.rt-pad-top-4 { padding-top: 5rem; }
	.rt-pad-top-3 { padding-top: 5rem; }
	.rt-pad-top-2 { padding-top: 5rem; }
	.rt-pad-top-1 { padding-top: 5rem; }

	.rt-pad-bot-5 { padding-bottom: 5rem; }
	.rt-pad-bot-4 { padding-bottom: 5rem; }
	.rt-pad-bot-3 { padding-bottom: 5rem; }
	.rt-pad-bot-2 { padding-bottom: 5rem; }
	.rt-pad-bot-1 { padding-bottom: 5rem; }

	.rt-mar-top--2 { margin-top: -2rem; }

	@keyframes tilt-shaking {
		0% { transform: rotate(0deg); }
		10% { transform: rotate(5deg); }
		20% { transform: rotate(-5deg); }
		30% { transform: rotate(5deg); }
		40% { transform: rotate(-5deg); }
		50% { transform: rotate(5deg); }
		60% { transform: rotate(0deg); }
		70% { transform: rotate(5deg); }
		80% { transform: rotate(0deg); }
		90% { transform: rotate(-5deg); }
		100% { transform: rotate(0deg); }
	}


	/*****************************************************************
		Block: WP Table etc
	******************************************************************/

	.wp-block-table {
	   margin-bottom: 2.4rem;
	}
		.wp-block-table th {
			color: #fff;
			border: 1px solid #000;
		}

	.wp-block-image {
		margin-bottom: 3.5rem;
	}

	.cky-btn.cky-btn-accept {
		border: 1px solid #000 !important;
		background: #000 !important;
		color: #fff !important
	}
	.cky-notice-btn-wrapper button {
		border: 1px solid #000 !important;
		color: #000 !important;
	}
	.cky-btn-revisit-wrapper {
		background: #000 !important
	}


	/*****************************************************************
		Page: Contact
	******************************************************************/
	/* 
	.contact-text {
	}

	.contact-profile {
		padding-top: 35px;
	}
		.contact-profile p {
			text-align: center;
			margin: 15px 0 0 0;
		}

	body.page-id-376 .entry > .wp-block-group:first-child {
		display: flex;
		gap: 60px;
	}

	.menu-grey {
		background: var(--nal-grey-lighter);
		padding: 15px 0;
		border-radius: 40px;
		margin-top: 25px;
	}
	.menu-social-media {
		display: flex;
		width: 80%;
		margin: 0 !important;
		justify-content: space-evenly !important;
		justify-content: center;
	}
		.menu-social-media li {
			padding: 0 !important;
			margin: 0 !important;
		}
		.menu-social-media li:before,
		.menu-social-media li:after {
			content: none !important;
		}
		.menu-social-media a {
			width: 30px;
			height: 30px;
			display: block;
		}
		.menu-social-media span {
			display: none;
		}
		.menu-social-media a:before {
			content: "";
			width: 30px;
			height: 30px;
			display: block;
		}
		li.medium-link a:before {
			background: url("images/icon-social-medium-dark.svg") 0 4px / 90% no-repeat;
		}
		li.youtube-link a::before {
			background: url("images/icon-social-youtube-dark.svg") 0 3px / 90% no-repeat;
		}
		li.flickr-link a::before {
			background: url("images/icon-social-flickr-dark.svg") 0 0px / 90% no-repeat;
			height: 30px !important;
		}
	*/


	/*****************************************************************
		Block: Recent Posts
	******************************************************************/

	.grid {
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 50px;
	}
	.grid-gap-15 {
		grid-gap: 15px;
	}
	.grid-gap-accordion {
		grid-gap: 15px;
	}
		.grid-span-12 { grid-column: span 12; }
		.grid-span-10 { grid-column: span 10; }
		.grid-span-9 { grid-column: span 9; }
		.grid-span-8 { grid-column: span 8; }
		.grid-span-6 { grid-column: span 6; }
		.grid-span-4 { grid-column: span 4; }
		.grid-span-3 { grid-column: span 3; }
		.grid-span-2 { grid-column: span 2; }
		.grid-span-1 { grid-column: span 12; }


	.grid-3 {
		grid-template-columns: 1fr 1fr 1fr;
		grid-gap: 50px;
	}
	

	/*****************************************************************
		Reset
	******************************************************************/
	/* http://meyerweb.com/eric/tools/css/reset/ 
	v2.0b1 | 201101 */

	html, body, div, span, applet, object, iframe,
	h1, h2, h3, h4, h5, h6, p, blockquote, pre,
	a, abbr, acronym, address, big, cite, code,
	del, dfn, em, img, ins, kbd, q, s, samp,
	small, strike, strong, sub, sup, tt, var, 
	b, u, i, center,
	dl, dt, dd, ol, ul, li, 
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td,
	article, aside, canvas, details, figcaption, figure, 
	footer, header, hgroup, menu, nav, section, summary,
	time, mark, audio, video {
		margin: 0;
		padding: 0; 
		border: 0;
		outline: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}

	/* HTML5 display-role reset for older browsers */
	article, aside, details, figcaption, figure, 
	footer, header, hgroup, menu, nav, section {
		display: block;
	}
	ol, ul {
		list-style: none;
	}
	blockquote, q {
		quotes: none;
	}
	blockquote:before, blockquote:after,
	q:before, q:after {
		content: '';
		content: none;
	}

	/* remember to define visible focus styles! */
	:focus {
		outline: none;
	}

	/* remember to highlight inserts somehow! */
	ins {
		text-decoration: none;
	}
	del, del * {
		text-decoration: line-through;
		color: #666;
	}
	table {
		border-collapse: collapse;
		border-spacing: 0;
		width: 100%;
	}
	select {
		-webkit-appearance: none; 
		-moz-appearance: none;
		appearance: none; /* remove default arrow */
		background: url(images/dd-arrow.svg) right 14px top 20px / 16px no-repeat #fff;
		border-radius: 0;
		width: 100%;
		padding: 15px;
		font-size: 1rem;
		border: 0px none;
		position: relative;
	}
	* { 
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	#rt-overlay {
		background: #000;
		width: 100%;
		height: 100%;
		position: absolute;
		position: fixed;
		z-index: 1;
		opacity: 0;
		visibility: hidden;
		transition: all 0.3s ease;
	}
	body.nav-is-open #rt-overlay {
		opacity: 1;
		visibility: visible
	}

	/* ul {
		
	}
		#main-area ul li {
			font-weight: normal;
			position: relative;
			padding-left: 35px;
		}
		#main-area ul li::before {
			background: #000;
			position: absolute;
			content: "";
			width: 7px;
			height: 7px;
			top: 9px;
			left: 15px;
			border-radius: 100px;
		}
	*/


	/*****************************************************************
		Grid
	******************************************************************/

	.wrapper,
	#nav-primary-wrapper nav,
	.wp-block-group > .wp-block-group__inner-container,
	body.page-template-blocks .pattern-2-col-post > div > .wp-block-group > .wp-block-group__inner-container {
		position: relative;
		width: 100%;
		max-width: 960px !important;
		margin: 0 auto;
		padding: 0 20px;
	}


	/*****************************************************************
		Typography
	******************************************************************/

	/* Headings */
	h1, h2, h3, h4, h5, h6 {
		margin-bottom: 2rem;
		font-family: "futura-pt", sans-serif;
		font-weight: 700;
		font-style: normal;
		text-transform: uppercase;
	}

	h1 { font-size: 4.2rem; line-height: 5.2rem; }
	h2 { font-size: 3.6rem; line-height: 4.6rem; }
	h3 { font-size: 3rem; line-height: 3.6rem; }
	h4,
	.personal-training-services h3 { font-size: 2.4rem; line-height: 3.2rem; }
	h5 { font-size: 2rem; line-height: 2.8rem; }
	h6 { font-size: 1.6rem; line-height: 2.4rem; }

	/* Paragraph */
	p,
	.entry ul li,
	.entry ol li { 
		font-size: 2.2rem;
		margin-bottom: 2rem;
		line-height: 3rem;
		font-weight: 400;
		color: var(--rt-color-dark);
		letter-spacing: 0.15px;
	}
	blockquote {
		border-left: 5px solid #efefef;
		padding-left: 20px;
		color: #9d9c9c;
		margin-bottom: 35px;
	}
		blockquote p {
			font-style: italic;
		}
		blockquote cite {
			font-size: 16px;
		}

	/* Styles */
	strong { font-weight: 600; }
	small {
		font-size: 14px;
		margin-top: -13px;
		display: block;
	}

	/* Links */
	a,
	.type-post.hentry h1 a, 
	.type-post.hentry h2 a, 
	.type-post.hentry h3 a, 
	.type-post.hentry h4 a, 
	.type-post.hentry h5 a, 
	.type-post.hentry h6 a {
		color: var(--nal-primary);
		text-decoration: underline;
	}
		.entry a {
			border-bottom: 1px solid #fff;
		}
		a:hover,
		.tab:hover {
			transition: all 0.3s ease;
			/* color: #005EA0; */
		}

	/* lists */
	.entry ul,
	.entry ol {
		margin: 30px 0px 32px 0px;
	} 
	.entry ul ul {
		margin-top: 16px !important;
		margin-bottom: 16px !important;
	}
	.entry ol,
	.learndash-wrapper ol {
		list-style: inside decimal;
		margin-left: 10px;
	}
		.entry ul li,
		.entry ol li {
			position: relative;
			padding: 0px 0px 0px 52px;
			margin-bottom: 15px; 
			color: var(--rt-color-dark);
			font-weight: 400;
		} 
			.entry ul li:before {				
				display: block;
				background: #7C7C7C;
				width: 7px;
				height: 7px;
				border-radius: 100px;
				position: absolute;
				top: 9px;
				left: 24px;
				content: '';
			}

	.entry ol { 
		margin-bottom: 8px;
	} 
		.entry ol li { 
			padding-left: 14px !important;
			margin-left: 40px;
			list-style: decimal outside;
		}



	/*****************************************************************
		Generic
	******************************************************************/

	.alignleft { float: left; }
		.entry .alignleft { padding: 0px 30px 20px 0px; }
	.alignright { float: right; }
		.entry .alignright { padding: 0px 0px 20px 30px; }
	.aligncenter {
		margin: 0 auto;
		display: block;
		/* border: 5px solid #f7f7f7; */
		width: 100%;
	}
	em {
		font-style: italic;
	}

	img {
		max-width: 100%;
		height: auto;
	}
	.wp-block-image figcaption {
		color: #8f8f8e;
	}

	input,
	button,
	textarea{
		-webkit-appearance: none;
		-webkit-border-radius: 0; 
		appearance: none;
		border-radius: 0;
	}

	/* Buttons */
	.btn,
	.gform_button,
	.text-link {
		color: #fff;
		background: var(--rt-color-primary) !important;
		display: inline-block;
		text-align: left;
		margin-bottom: 10px;
		border: 0px none !important;
		font-family: "futura-pt", sans-serif;
		font-weight: 700 !important;
		cursor: pointer;
		border-radius: 12px !important;
		text-decoration: none;
		padding: calc(0.667em + 2px) calc(1.333em + 2px) !important;
		font-size: 2rem !important;
		text-transform: uppercase !important;
		position: relative;
		z-index: 1;
	}
	.btn::after {
		position: absolute;
		content: "";
		background: var(--rt-color-primary);
		border-radius: 0 12px 12px 0;
		right: -35px;
		top: 0;
		width: 125px;
		height: 100%;
		transform: skewX(345deg);
		z-index: -1;
		transition: all 0.3s ease;
	}
	.with-arrow::before {
		transition: all 0.3s ease;
		position: absolute;
		content: "";
		right: -20px;
		top: 50%;
		transform: translateY(-50%);
		width: 35px;
		height: 25px;
		background: url("images/icon-arrow-right-dark-red.svg;") 0 0 / 30px no-repeat;
	}
	.btn:hover,
	.wp-block-button__link:hover {
		opacity: 0.8;
	}
	.text-link {
		color: var(--rt-color-primary);
		background: none !important;
		padding: 1.5rem 0 !important;
		position: relative;
	}
	.text-link.with-arrow {
		padding-right: 3rem !important;
	}
	.text-link::before {
		background: url("images/icon-arrow-right-red.svg;") 0 3px / 20px no-repeat;
	}


	/*****************************************************************
		General
	******************************************************************/

	html {
		/* height: 100%; */
		font-size: 62.5%;
	}
	body {
		background: #fff;
		font-family: "futura-pt", sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size: 1.6rem;
		color: var(--rt-color-darker);
	}

	.pull-quote {
		width: 280px;
		float: right;
		background: var(--rt-color-grey-lighter);
		padding: 2rem;
		margin-left: 5rem;
		margin-right: 0px;
		font-style: italic;
		border-radius: 12px;
	}


	/*****************************************************************
		Block: About intro
	******************************************************************/

	.rt-about-intro {
		padding: 7.5rem 0;
		
	}
		.rt-about-intro img {
			border-radius: 12px;
		}


	/*****************************************************************
		Block: Facts
	******************************************************************/

	.rt-facts {
		border-radius: 12px;
	}
		.rt-facts ul {
			margin: 3.2rem 0 !important;
			align-items: center;
    		justify-items: center;
			grid-gap: 0;
			background: url("images/bg-trans.png") center center / 225% no-repeat;
			border-radius: 12px;
			width: 100%;
		}
			.rt-facts li {
				margin: 0 !important;
				border-right: 5px solid #fff;
				border-bottom: 5px solid #fff;
				text-align: center;
				padding: 3rem !important;
				grid-column: span 4;
				min-height: 210px;
				width: 100%;
				font-size: 2rem !important;
				line-height: 2.6rem !important;
			}
			.rt-facts li:nth-child(3) { border-right: 0px none; }
			.rt-facts li:nth-child(4) { border-bottom: 0px none; }
			.rt-facts li:nth-child(5) { border-bottom: 0px none; }
			.rt-facts li:nth-child(6) { border-bottom: 0px none; border-right: 0px none; }

			.rt-facts li::before,
			.rt-facts li::after {
				content: none !important
			}

			.rt-facts span.icon {
				display: block;
				font-size: 4.4rem;
				margin: 2rem 0;
			}


	/*****************************************************************
		Block: Quick contact
	******************************************************************/

	/** CONTACT **/
	body.page-id-17 .rt-quick-contact {
		padding-top: 2.5rem;
	}

	.rt-quick-contact {
		display: block;
	}
	.rt-quick-contact .wp-block-group__inner-container {
		padding: 0;
	}

		.rt-quick-contact .wrapper > p {
			margin-bottom: 7rem;
		}

		#gform_fields_1 {
			row-gap: 2rem !important;
			column-gap: 2rem !important;
		}

		.rt-quick-contact input:not(.gform_button),
		.rt-quick-contact textarea {
			border: 0 none !important;
			padding: 2.6rem 2rem !important;
			font-size: 2rem !important;
			border-radius: 12px !important;
			box-shadow: none !important;
			background: #f0f0f0 !important;
		}
		.rt-quick-contact textarea {
			padding: 1.4rem 1.5rem !important;
		}

		.rt-quick-contact #input_1_1_3_container {
			padding-right: 1rem !important;
		}
		.rt-quick-contact #input_1_1_6_container {
			padding-left: 1rem !important;
		}

		.rt-quick-contact input:focus,
		.rt-quick-contact textarea:focus {
			/* box-shadow: 0px 0px 5px 0px rgb(212, 212, 212) !important; */
			background: #e5e5e5 !important;
		}

		.rt-quick-contact legend,
		.rt-quick-contact label,
		#gfield_description_1_3,
		.gform_validation_errors {
			display: none !important
		}

		.rt-quick-contact textarea {
			min-block-size: 18rem !important;
		}
		.rt-quick-contact .gform_footer {
			justify-content: center;
		}


	/*****************************************************************
		Header + Hero
	******************************************************************/

	/** 
	* Hero 
	*/
	#header-hero {
		background: url(images/bg-dark.jpeg) top center / cover no-repeat rgba(0, 0, 0, 0.912);
		position: relative;
		overflow: hidden;
		margin-bottom: 5rem;
	}
		#hero {
			transition: all 0.3s ease;
		}
	body.home #header-hero,
	body.page-template-hero-blocks #header-hero {
		/* min-height: 680px; */
		margin-bottom: 0;
	}
	body.page-template-hero-blocks #header-hero {
		margin-bottom: 5rem;
	}
		body.nav-is-open #hero {
			filter: blur(7px);
			opacity: 0.35;
		}

	/** 
	 * Hero Blocks Template
	 */
	#featured-image {
		/* min-height: 600px; */
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100%;
		margin: 1rem 0 5rem 0;
		position: relative;
		transition: all 0.3s ease;
	}
	body.nav-is-open #featured-image {
		opacity: 0;
		visibility: hidden;
	}
		#featured-image img {
			border-radius: 12px;
		}

		#header-hero .content-area {
			width: 60%;
			/* align-self: center; */
			margin-top: 50px;
		}
			#header-hero .content-area h1 {
				color: var(--rt-color-white);
				margin-bottom: 1.5rem;
			}
			#header-hero .content-area p {
				color: #a4a4a4;
				font-size: 2.6rem;
				line-height: 3.6rem;
				padding-right: 15px;
				margin-bottom: 35px;
			}
		#header-hero img.featured {
			width: 35%;
		}

		#header-hero .wrapper {
			z-index: 1;
		}
		body.nav-is-open .wrapper {
			z-index: -1 !important;
		}

		/** 
		 * Hero button
		 */
		#header-hero .btn:hover { opacity: 1; }
		#header-hero .btn:hover::before { right: -30px; }
		#header-hero .btn:hover::after { right: -50px; }

	#nav-wrapper {
		grid-column: span 9;
		position: relative;
	}

	/** 
	* Contact nav 
	*/
	#contact-menu {
		margin-top: 26px;
	}
		#contact-menu ul {
			display: flex;
			justify-content: flex-end;
		}
			#contact-menu li:last-child {
				margin-left: 35px;
			}
		#contact-menu a {
			color: #D0D0D0;
			font-weight: 700;
			font-size: 1.9rem;
			text-decoration: none;
			position: relative;
			display: block;
			padding-left: 32px;
		}
			#contact-menu a::before {
				content: "";
				position: absolute;
				width: 20px;
				height: 20px;
				left: 0px;
				top: 2px;
				background: url("images/icon-phone.svg") center center / 100% no-repeat;
			}
			#menu-item-29 a::before {
				background: url("images/icon-email.svg") center center / 100% no-repeat;
			}
			#contact-menu a:hover {
				color: #fff;
			}


	/** 
	* Primary Header
	*/
	#primary-header {
		padding: 35px 0px;
		width: 100%;
		position: relative;
		z-index: 1;
	}
		.hamburger {
			position: absolute;
			right: 15px;
			padding: 0;
			transform: translateY(-50%);
			top: 50%;
			display: none;
			margin-top: 6px;
		}
		.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before,
		
		.hamburger.is-active .hamburger-inner, 
		.hamburger.is-active .hamburger-inner:after, 
		.hamburger.is-active .hamburger-inner:before {
			background-color: #fff;
		}



		/** 
		* Logo
		*/ 
		.logo {
			margin-left: 15px;
		}
			.logo img {
				width: 80%;
			}


		/** 
		* Primary nav
		*/
		#nav-primary-wrapper {
			position: relative;
			z-index: 100;
		}
			#nav-primary {
				position: absolute;
				width: 100%;
				bottom: 2px;
			}
				#nav-primary > ul {
					display: flex;
					border-radius: 5px;
					width: 100%;
					justify-content: space-between;
				}
					#nav-primary li {
						display: block;
						margin-right: 0;
						position: relative;
						transition: all 0.3s ease;
					}
					#nav-primary li::after {
						transition: all 0.3s ease;
					}
						#nav-primary a {
							display: block;
							color: #fff;
							text-decoration: none;
							font-size: 2.5rem;
							font-weight: 700;
						}
						#nav-primary li:hover {
							/* color: var(--nal-white); */
						}
						#nav-primary > ul > li.menu-item-has-children:hover > a::after,
						#nav-primary > ul > li.current-menu-item > a::after {
							transform: translateY(-50%) rotate(180deg);
							filter: invert(227%) sepia(0%) saturate(2878%) hue-rotate(346deg) brightness(204%) contrast(97%);
						}
						#nav-primary .current-menu-item::after,
						#nav-primary li:hover::after {
							background: url("images/active-nav-item.svg") center center / 100% no-repeat;
							width: 100%;
							height: 20px;
							content: "";
							position: absolute;
							bottom: -7px;
							left: 0;
							z-index: -1;
						}

						#nav-primary > ul > li.menu-item-has-children > a {
							padding-right: 4.6rem;
						}
						#nav-primary > ul > li.menu-item-has-children > a::after {
							width: 15px;
							height: 15px;
							content: "";
							position: absolute;
							right: 15px;
							top: 50%;
							transition: all 0.3s ease;
							transform: translateY(-50%);
							background: url("images/icon-angle-arrow-down-dark.svg") center center / 100% no-repeat;
						}

					/* DD */
					#nav-primary ul.sub-menu {
						position: absolute;
						width: 280px;
						left: 0;
						visibility: hidden;
						opacity: 0;
					}

						#nav-primary ul.sub-menu a,
						#nav-primary li.menu-item-has-children:hover a {
							background-color: var(--nal-primary);
							color: #fff;
						}
							#nav-primary li.menu-item-has-children ul a:hover {
								background-color: #e61a1a;
							}
					#nav-primary li.trp-language-switcher-container ul {
						right: 0;
						left: auto;
						border-top: 5px solid var(--nal-primary);
					}
						#nav-primary ul.sub-menu li {
							width: 100%;
						}

						#nav-primary li:hover ul.sub-menu {
							opacity: 1;
							visibility: visible;
						}


		/** 
		* Socials follow
		*/
		#social-follow {
			position: absolute;
			bottom: 0;
			left: 0;
			width: calc(100%);
			background: #2a2a2ad9;
			padding: 1.3rem;
			border-top: 1px solid #fff3;
		}
			#social-follow * {
				color: #fff;
				margin-bottom: 0;
				line-height: normal;
			}

			#social-follow .rt-flex {
				align-items: center;
			}

			#social-follow h4 {
				opacity: 0.55;
				padding-top: 2px;
			}

			.rt-socials {
				display: flex;
				align-items: center;
				margin: 6px 0 0px 80px;
			}
				.rt-socials li {
					margin-right: 2.3rem;
					display: block;
				}
						.rt-socials a {
							opacity: 0.65;
							transition: all 0.3s ease;
						}
						.rt-socials a:hover {
							opacity: 1;
						}
							.rt-socials i {
								font-size: 3.8rem;
							}

			.strava {
				width: 38px;
				margin-left: -3px;
			}


	/*****************************************************************
		Block: Personal Training Intro
	******************************************************************/

	.personal-training-intro {
		background: url(images/bg-trans.png);
		padding: 7.5rem 0;
	}
		.personal-training-intro .wrapper > h2,
		.personal-training-testimonials .wrapper > h2 {
			margin-bottom: 1rem;
		}
		.personal-training-intro .wrapper > p,
		.personal-training-testimonials .wrapper > p,
		.rt-quick-contact .wrapper > p {
			padding: 0 10% 0 10%;
		}
		.personal-training-services {
			margin-top: 5rem;
		}
			.personal-training-services * {
				text-align: center;
				text-decoration: none;
			}

			.rt-fitness-service {
				display: block
			}
				.rt-fitness-service figure {
					position: relative;
					background: #000;
					border-radius: 12px;
					margin-bottom: 2.5rem;
					display: flex;
					justify-content: center;
					align-items: center;
					min-height: 225px;
					overflow: hidden;
				}
					.rt-fitness-service img.rt-bg { filter: contrast(130%) blur(1px) grayscale(1); width: 125%; }
					.rt-fitness-service img.rt-icon { width: 65%; filter: drop-shadow(0 0 15px #000); }

					.personal-training-services img {
						display: block;
						border-radius: 12px;
						filter: grayscale(1);
						position: absolute;
						max-width: 150%;
						transition: all 0.3s ease;
					}
			.rt-fitness-service:hover img.rt-bg {
				width: 135%;
			}
				.rt-fitness-service > a {
					display: block
				}
					.rt-fitness-service .text-link::before {
						transition: all 0.3s ease;
					}
					.rt-fitness-service:hover .with-arrow::before,
					.text-link.with-arrow:hover::before {
						right: -30px;
					}

			.personal-training-services h3 {
				margin-bottom: 1rem;
			}
			.personal-training-services p {
				margin-bottom: 0;
				font-size: 2rem;
			}


	/*****************************************************************
		Block: Testimonials
	******************************************************************/

	.personal-training-testimonials {
		background: var(--rt-color-primary);
		min-height: 600px;
		position: relative;
	}
		.personal-training-testimonials .wrapper > p {
			margin-bottom: 4.5rem;
		}

		.wrapper-grad {
			background: url(images/bg-red.png) center center / cover no-repeat;
			position: relative;
			width: 100%;
			max-width: 1060px !important;
			margin: 0 auto;
			padding: 7.5rem 15px;
		}
		.wrapper-grad::before,
		.wrapper-grad::after {
			position: absolute;
			width: 200px;
			height: 100%;
			content: "";
			bottom: 0px;
			left: 0;
			z-index: 1;
			background: rgb(255,0,0);
			background: linear-gradient(90deg, rgba(255,0,0,1) 0%, rgba(255,0,0,1) 50%, rgba(255,255,255,0) 100%);
		}
		.wrapper-grad::after {
			right: 0;
			left: auto;
			background: linear-gradient(270deg, rgba(255,0,0,1) 0%, rgba(255,0,0,1) 50%, rgba(255,255,255,0) 100%);
		}
		.personal-training-testimonials .wrapper > * {
			color: #fff;
		}
			.testimonial-wrapper {
				height: 225px;
				transform: skewX(345deg);
				max-width: 600px;
				margin: 0 1.5rem;
				padding-bottom: 7.5rem;
				opacity: 0.3;
				transition: all 0.3s ease;
			}
				.testimonial-wrapper blockquote,
				.testimonial-wrapper .testimonial-author {
					opacity: 0;
				}
			.testimonial-wrapper.slick-current,
			.testimonial-wrapper.slick-current blockquote,
			.testimonial-wrapper.slick-current .testimonial-author {
				opacity: 1;
			}
			.testimonial::before {
				position: absolute;
				width: 50px;
				height: 50px;
				content: "";
				bottom: 0px;
				left: 35px;
				background: url(images/testimonial-speech.svg) left / contain no-repeat;
			}
				.testimonial { 
					background: #fff;
					border-radius: 12px;
					padding: 2.5rem;
				}
				.testimonial-wrapper blockquote {
					margin: -2px -24px;
					border: 0px none;
					padding: 0;
					transform: skewX(-345deg);
				}
					span.indent-text { display: inline-block; width: 100%;}

					span.indent-text-0--1-2 { margin-left: -2rem; }
					span.indent-text-0--1-5 { margin-left: -1.5rem; }
					span.indent-text-0--1 { margin-left: -1rem; }

					span.indent-text-0--0-5 { margin-left: -0.5rem; }
					span.indent-text-0 { margin-left: 0rem; }
					span.indent-text-0-3 { margin-left: 0.3rem; }
					span.indent-text-0-7 { margin-left: 0.7rem; }
					span.indent-text-0-8 { margin-left: 0.8rem; }

					span.indent-text-0-5 { margin-left: 0.5rem; }
					span.indent-text-1 { margin-left: 1rem; }
					span.indent-text-1-5 { margin-left: 1.5rem; }

					span.indent-text-2 { margin-left: 2rem; }
					span.indent-text-2-2 { margin-left: 2.2rem; }
					span.indent-text-2-4 { margin-left: 2.4rem; }
					span.indent-text-2-5 { margin-left: 2.5rem; }
					span.indent-text-2-7 { margin-left: 2.7rem; }

					span.indent-text-3 { margin-left: 3rem; }
					span.indent-text-3-2 { margin-left: 3.2rem; }
					span.indent-text-3-5 { margin-left: 3.5rem; }
					span.indent-text-4 { margin-left: 4rem; }
					span.indent-text-4-5 { margin-left: 4.5rem; }

					span.indent-text-5 { margin-left: 5rem; }
					span.indent-text-5-5 { margin-left: 5.5rem; }

					span.indent-text-6 { margin-left: 6rem; }
					span.indent-text-6-5 { margin-left: 6.5rem; }

					span.indent-text-7 { margin-left: 7rem; }
					span.indent-text-8 { margin-left: 8rem; }
					span.indent-text-9 { margin-left: 9rem; }

					
				.testimonial-wrapper p {
					color: var(--rt-color-darker);
					font-weight: 500;
					margin-bottom: 0.8rem;
					font-size: 1.95rem;
				}
				.testimonial-wrapper p:last-child {
					margin: 0;
				}
				.testimonial-author {
					position: absolute;
					bottom: 0;
					left: 110px;
					font-size: 1.8rem;
				}

			/**
			* Author heights
			*/
			.testimonial-wrapper.author-kayleigh .testimonial::before { bottom: 59px; }
			.testimonial-wrapper.author-kayleigh .testimonial-author { bottom: 59px; }

			.testimonial-wrapper.author-no-name .testimonial::before { bottom: 101px; }
			.testimonial-wrapper.author-no-name .testimonial-author { bottom: 98px; }

			.testimonial-wrapper.author-no-name-2 .testimonial::before { bottom: 29px; }
			.testimonial-wrapper.author-no-name-2 .testimonial-author { bottom: 27px; }

			.testimonial-wrapper.author-keith .testimonial::before { bottom: 82px; }
			.testimonial-wrapper.author-keith .testimonial-author { bottom: 83px; }


	/** 
	* Slick tweak to center align testimonials
	*/
	.slick-track { display: flex; }
	.slick-track .slick-slide { display: flex; height: auto; align-items: center; justify-content: center; }


	/*****************************************************************
		Block: FAQ
	******************************************************************/

	.personal-training-faq {
		padding: 7.5rem 0;
		background: url(images/bg-trans.png)
	}
    	
		.personal-training-faq .grid {
        	background-color: #dbdbdb;
			border-radius: 12px;
			row-gap: 0;
			margin-top: 5rem;
    	}
			.personal-training-faq .accordion-item {
				border-bottom: 2px solid #fff;
				transition: all 0.3s ease;
			}
			.personal-training-faq .accordion-item:first-child {
				border-radius: 12px 12px 0 0;
			}
			.personal-training-faq .accordion-item:last-child {
				border: 0px none;
				border-radius: 0 0 12px 12px;
			}

			.personal-training-faq .accordion-item.active {
				background-color: #fff;
			}
			.accordion-item:hover {
				background-color: #e9e9e9;
			}
			.personal-training-faq .accordion-item.active:hover {
				background-color: #fff;
			}
			
        .accordion-item > * {
            font-weight: 400;
            font-style: normal;
            font-size: 2.1rem;
            color: var(--rt-color-dark);
            padding: 10px 20px;
        }
        .accordion-title,
        .accordion-content {
            padding-left: 15px;
            position: relative;
        }
        .accordion-title {
            margin-bottom: 0;
            line-height: 2.6rem;
            cursor: pointer;
            transition: all 0.3s ease;
            min-height: 5rem;
            display: flex;
            align-items: center;
			padding-right: 55px;
			font-weight: 700;
			text-transform: capitalize;
        }
        .accordion-content {
            background: none;
            overflow: hidden;
            max-height: 0; 
            transition: max-height 0.3s ease-out;
            padding-top: 0 !important;
            padding-bottom: 0 !important;
        }
            .accordion-content-inner {
                margin-top: 10px;
            }
        .accordion-item.active .accordion-content {
            max-height: 100vh; /* high enough to handle larger content */
        }
            .accordion-content p {
                font-weight: 400;
                font-style: normal;
                font-size: 2rem;
                line-height: 2.7rem;
            }
        .accordion-title::before {
            width: 20px;
            height: 20px;
            transition: all 0.3s ease;
            content: "";
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%); 
            background: url("images/icon-angle-arrow-down-dark.svg") 0 0 / 90% no-repeat;
        }
        .accordion-item.active .accordion-title::before {
            transform: translateY(-50%) rotate(180deg);
        }


	/*****************************************************************
		Block: Quick Contact
	******************************************************************/

	.rt-quick-contact {
		padding: 7.5rem 0;
	}


	/*****************************************************************
		Block: CTA
	******************************************************************/

	#rt-cta {
		background: var(--rt-color-primary);
		margin: 3.5rem 0 -6rem 0;
		transition: all 0.3s ease;
	}
	#rt-cta:hover {
		background: #e00002;
	}
		#rt-cta * {
			color: #fff;
			text-decoration: none;
		}
		#rt-cta a {
			padding: 7.5rem 0;
			display: block;
			position: relative;
		}
			#rt-cta a:hover .wrapper::after {
				right: 15px;
			}
		#rt-cta .wrapper::after {
			transition: all 0.3s ease;
			position: absolute;
			background: blue;
			width: 100px;
			height: 100px;
			right: 45px;
			top: 50%;
			transform: translateY(-50%);
			content: "";
			background: url("images/icon-arrow-right-dark-red.svg;") 0 center / 100px no-repeat;
		}
		#rt-cta h3 {
			width: 60%;
		}
		#rt-cta p {
			margin: 0;
			width: 55%;
		}


	/*****************************************************************
		Block: List
	******************************************************************/

	.rt-list {
		row-gap: 25px;
		margin-top: 6rem !important;
	}
		.rt-list li {
			padding-left: 72px !important;
			font-size: 1.9rem !important;
			line-height: 2.8rem !important;
		}
		.rt-list li::before {
			background: url("images/icon-tick.svg") 0 0px / 100% no-repeat !important;
			width: 35px !important;
			height: 35px !important;
			left: 0 !important
		}


	/*****************************************************************
		Block: Services Page List
	******************************************************************/

	.rt-services-cols {
		background: url(images/bg-trans.png);
    	padding: 7.5rem;
	}
		 .rt-services-cols h3 {
			margin-bottom: 6rem;
		 }
		.rt-services-cols .wp-block-column {
			background: #fff;
			border-radius: 12px;
			text-align: center;
			padding: 2rem;
		}



	/*****************************************************************
		Archive: Blog etc
	******************************************************************/

	#archive-description {
		margin-bottom: 3.6rem;
	}

	.blog-image img {
		display: block;
	}
		/* .type-post.hentry h3 {
			margin: 0;
			font-size: 2rem;
		} */
		.type-post.hentry h3 a {
			text-decoration: underline;
			color: var(--secondary-dark);
			font-weight: 500;
		}

	/*****************************************************************
		Single
	******************************************************************/

	.hentry {
		margin-bottom: 0
	}
		.thumbnail {
			float: left;
			width: 100%;
			background-size: cover;
			background-position: center;
			margin-bottom: 20px;
		}
			.thumbnail {
				position: relative;
				height: 275px;
			}
			.thumbnail img {
				border: 1px solid #eee;
			}
		.content-area {
			float: right;
			/* width: 60%; */
			width: 100%;
			/* padding-left: 30px; */
		}
			.oembed-gist {
				margin-bottom: 30px;
			}

	.tags a {
		color: #8F8F8F;
		font-size: 14px;
		border-radius: 5px;
		background: #f2f2f2;
		padding: 5px 7px;
		font-weight: 300;
	}


	/*****************************************************************
		Page: Contact
	******************************************************************/

	body.page-id-17 #sidebar {
		display: none;
		margin-top: 90px;
	}
		body.page-id-17 #sidebar #contact-menu {
		}
			body.page-id-17 #sidebar #contact-menu ul {
				flex-direction: column;
			}
			body.page-id-17 #sidebar #contact-menu li:last-child {
				margin: 8px 0 0 0; 
			}
			body.page-id-17 #sidebar #contact-menu a {
				color: var(--rt-color-dark);
				font-weight: normal;
			}






	body.page-id-17 h1 {
		display: none;
	}
		body.page-id-17 .rt-quick-contact {
			padding-bottom: 2.5rem;
		}
		body.page-id-17 h2 {
			margin: 20px 0 0 0;
		}
		body.page-id-17 .grid-cf {
			top: -800px;
			position: absolute;
			width: 55%;
			background: #fff;
			gap: 0;
		}

	body.page-id-17 #header-hero {
		margin-bottom: 0;
	}
	body.page-id-17 #footer-primary {
		margin: 0;
	}

	.feh-content {
		margin-top: -1rem;
	}
		.feh-content h3 {
			font-size: 2rem;
			margin-bottom: 0rem;
		}
		.feh-content p {
			font-size: 1.7rem;
			margin-bottom: 0rem;
			line-height: 2.4rem;
			margin-top: -0.5rem;
		}


	/*****************************************************************
		Footer
	******************************************************************/

	#footer-primary {
		background: var(--rt-color-grey-lighter);
		padding: 3.6rem 0;
		width: 100%;
		margin-top: 6rem;
	}
		body.home #footer-primary {
			margin-top: 0;
		}

		#footer-primary * {
			color: #696969;
		}

		#footer-primary .grid {
			grid-gap: 25px;
		}
		#footer-primary .rt-logo {
			width: 100%;
			margin-top: 7px;
		}
		#footer-primary p {
			font-size: 1.7rem;
			margin-bottom: 0.5rem;
			line-height: 2.4rem;
		}
		#footer-primary .grid-span-3 {
			justify-self: right;
		}

		.footer-links ul {
			display: flex; 
		}
			.footer-links li {
				margin-right: 15px;
			}


	/*****************************************************************
		Media Quieres
	******************************************************************/

	@media only screen and (max-width: 950px) {
		#header-hero img.featured {
			width: 315px;
		}
		#header-hero .btn {
			margin-left: -35px;
		}
		#social-follow { display: none; }

		.rt-fitness-service img.rt-bg {
			width: 170%;
		}

		#header-hero .content-area {
			width: 80%;
		}
		#header-hero .content-area p {
			padding-right: 0;
		}
		#header-hero .rt-flex {
			justify-content: center;
    		text-align: center;
			flex-direction: column;
			align-items: center;
		}

		body.page-id-17 #google-map {
			border: 2px solid red;
			height: 450px;
			display: none;
		}
		body.page-id-17 .grid-cf {
			position: relative;
			top: auto;
			width: 100%;
			column-gap: 50px;
		}
		body.page-id-17 .grid-cf > div.grid-span-12 {
			grid-column: span 8;
		}
		body.page-id-17 #sidebar {
			grid-column: span 4;
			display: block
		}

		body.page-id-17 .wp-block-group__inner-container {
			padding: 0;
		}

	}

	@media only screen and (max-width: 900px) {

		#header-hero #contact-menu {
			display: none;
		}

		body.page-id-161 .grid-cf {
			gap: 0;
		}

		#nav-wrapper {
			grid-column: 10 span;
		}

		.logo {
			grid-column: 2 span;
			margin-left: 7px;
		}
		.logo img {
			width: 75px;
		}

	}

	@media only screen and (max-width: 850px) {

		.wrapper-grad::before, 
		.wrapper-grad::after {
			width: 100px;
		}

	}


	@media only screen and (max-width: 800px) {

		.grid:not(footer .grid) {
			gap: 0 !important;
		}
		
		#nav-primary.active,
		#nav-primary.active * {
			z-index: 1000 !important
		}
		
		.rt-facts li {
			grid-column: span 6;
		}
		.rt-facts li:nth-child(2) {
			border-right: 0px none;
		}
		.rt-facts li:nth-child(4) {
			border-bottom: 5px solid #fff;
			border-right: 0px none;
		}
		.rt-facts li:nth-child(3) {
			border-right: 5px solid #fff;
		}
		
		body.nav-is-open { 
			overflow: hidden;
		}
		body.nav-is-open #header-hero {
			height: 90vh;
			overflow: hidden;
		}
		
		body.page-template-contact .grid-cf > div {
			grid-column: span 12 !important
		}

		.personal-training-services {
			gap: 0;
		}
		.rt-quick-contact #input_1_1_6_container,
		.rt-quick-contact #input_1_1_3_container {
			padding: 0px 5px 0px 5px !important
		}
		
		#sidebar {
			margin: 5rem 0;
		}
		
			.personal-training-services a {
				display: flex;
				flex-direction: column;
				align-items: center
			}
		.rt-fitness-service {
			margin-bottom: 2.5rem;
		}
		.personal-training-intro {
			padding-bottom: 5rem;
		}
		.rt-fitness-service figure {
			width: 225px
		}
		.personal-training-services img {
			max-width: 200%;
		}
		.rt-fitness-service img.rt-bg {
			width: 200%;
		}
		.rt-fitness-service:hover img.rt-bg {
			width: auto !important;
		}

		.rt-about-intro * {
			text-align: center;
		}
		.rt-about-intro .grid-span-6:first-child {
			padding: 0 5%;
		}
		.rt-about-intro .grid {
			grid-template-columns: 1fr;
			gap: 0;
		}
		
		.wp-block-list.rt-list {
			gap: 0;
		}
			.wp-block-list.rt-list li {
				grid-column: span 12 !important;
			}

		.personal-training-services .grid-span-4 {
			grid-column: span 12;
			padding: 0 12%
		}

		.testimonial-wrapper {
			opacity: 0;
		}
		.wrapper-grad::before, 
		.wrapper-grad::after {
			width: 0px;
		}
		.testimonial-wrapper {
			transform: none
		}
		.testimonial-wrapper blockquote {
			transform: none;
			margin: auto
		}
		span.indent-text {
			margin: auto;
			display: inline;
		}
		.personal-training-testimonials .wrapper > p {
			/* margin-bottom: 0; */
		}
		.testimonial::before {
			left: auto
		}
		.testimonial-wrapper.author-keith .testimonial::before { bottom: 165px; }
		.testimonial-wrapper.author-keith .testimonial-author { bottom: 167px; }

		.testimonial-wrapper.author-no-name .testimonial::before { bottom: 203px; }
		.testimonial-wrapper.author-no-name .testimonial-author { bottom: 206px; }

		.testimonial-wrapper.author-kayleigh .testimonial::before { bottom: 119px; }
		.testimonial-wrapper.author-kayleigh .testimonial-author { bottom: 121px; }

		.slick-track .slick-slide {
			align-items: flex-start;
		}
		.testimonial-wrapper .testimonial-author {
			left: auto;
			margin-left: 66px
		}
		.wrapper-grad {
			padding: 4.5rem 0;
		}

		#footer-primary .grid {
			row-gap: 10px;
		}
		#footer-primary p {
			margin-bottom: 0.5rem;
			line-height: 2.4rem;
		}
		.grid-span-nah {
			grid-column: span 2;
		}
		.grid-span-6 {
			grid-column: span 10;
		}
		#footer-primary .grid-span-3 {
			justify-self: auto;
			grid-column: 3 / 10;
		}
		#footer-primary .grid-span-8 {
			grid-column: span 10;
		}

	}

	@media only screen and (max-width: 750px) {

		#primary-header .grid {
			display: block;
		}
		#nav-primary { display: none; }

		#nav-primary.active {
			position: fixed;
			top: 200px;
			width: 100%;
			left: 0;
		}
			#nav-primary.active ul {
				flex-direction: column;
				align-items: center;
			}
				#nav-primary.active a {
					padding: 1.5rem 5.5rem;
				}
				#nav-primary .current-menu-item::after, 
				#nav-primary li:hover::after {
					background: url("images/active-nav-item.svg") center center / 60% no-repeat;
					bottom: 9px;
					width: 70%;
					left: 30px;
				}


		.hamburger,
		#nav-primary.active {
			display: block;
		}

		#header-hero .content-area h1 {
			font-size: 3.2rem; 
			line-height: 4.2rem;
		}

	}

	@media only screen and (max-width: 700px) {

		.testimonial-wrapper {
			max-width: 425px;
		}
		.testimonial-wrapper.author-keith .testimonial::before { bottom: 135px; }
		.testimonial-wrapper.author-keith .testimonial-author { bottom: 141px; }

		.testimonial-wrapper.author-no-name .testimonial::before { bottom: 203px; }
		.testimonial-wrapper.author-no-name .testimonial-author { bottom: 208px; }

		.testimonial-wrapper.author-no-name-2 .testimonial-author { bottom: 32px; }

		.testimonial-wrapper.author-kayleigh .testimonial::before { bottom: 59px; }
		.testimonial-wrapper.author-kayleigh .testimonial-author { bottom: 65px; }

	}


	@media only screen and (max-width: 550px) {

		.has-text-align-left.pull-quote {
			display: none;
		}
		
		#header-hero .content-area {
			width: 92%;
		}
		.testimonial-wrapper {
			max-width: 350px;
		}
		.testimonial-wrapper.author-keith .testimonial::before { bottom: 165px; }
		.testimonial-wrapper.author-keith .testimonial-author { bottom: 167px; }

		.testimonial-wrapper.author-no-name .testimonial::before { bottom: 233px; }
		.testimonial-wrapper.author-no-name .testimonial-author { bottom: 238px; }

		.testimonial-wrapper.author-no-name-2 .testimonial-author { bottom: 32px; }

		.testimonial-wrapper.author-kayleigh .testimonial::before { bottom: 89px; }
		.testimonial-wrapper.author-kayleigh .testimonial-author { bottom: 92px; }

		.rt-facts ul {
			background: #efefef;
		}
		.rt-facts li {
			grid-column: span 12;
		}
		.rt-facts li:nth-child(5) {
			border-bottom: 5px solid #fff;
		}
		.rt-facts li {
			border-right: 0px none !important;
			border-left: 0px none !important;
		}
		
	}

