/* lato-300italic - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Lato';
	font-style: italic;
	font-weight: 300;
	src: url('../fonts/lato-v24-latin-300italic.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-lite - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Lato';
	font-style: normal;
	font-weight: 200;
	src: url('../fonts/Lato-Light.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-lite-italic - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Lato';
	font-style: italic;
	font-weight: 200;
	src: url('../fonts/Lato-LightItalic.ttf') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-regular - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Lato';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/lato-v24-latin-regular.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-700 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Lato';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/lato-v24-latin-700.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-900 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Lato';
	font-style: normal;
	font-weight: 900;
	src: url('../fonts/lato-v24-latin-900.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-regular - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/montserrat-v31-latin-regular.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/montserrat-v31-latin-700.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-900 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 900;
	src: url('../fonts/montserrat-v31-latin-900.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* teko-300 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Teko';
	font-style: normal;
	font-weight: 300;
	src: url('../fonts/teko-v22-latin-300.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* teko-500 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Teko';
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/teko-v22-latin-500.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* teko-600 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Teko';
	font-style: normal;
	font-weight: 600;
	src: url('../fonts/teko-v22-latin-600.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}



html {
	font-size: 100%;
	font-family: 'Lato', 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1.8vw;
	line-height: 3vw;
	font-weight: 300;
	background-color: black;
}

@media (min-width: 2000px) {
	html {
		font-size: 26px;
		line-height: 40px;
	}
}

body {
	padding: env(safe-area-inset-top, 0) env(safe-area-inset-right, 0) env(safe-area-inset-bottom, 20px) env(safe-area-inset-left, 0);
	margin: 0;
	padding: 0;
	color: #bebebe;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,282828+45,282828+55,000000+100 */
	background: #000000;
	/* Old browsers */
	background: -moz-linear-gradient(left, #000000 0%, #282828 45%, #282828 55%, #000000 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(left, #000000 0%, #282828 45%, #282828 55%, #000000 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #000000 0%, #282828 45%, #282828 55%, #000000 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000', GradientType=1);
	/* IE6-9 */
}
body.path-user {
	background: black;
}



strong,
b {
	font-weight: 700;
	color: white;
}

p {
	margin: 0 0 20px;
}

sup {
	position: relative;
	font-size: 0.6em;
	line-height: 0;
}

img {
	vertical-align: top;
	border: 0;
	-ms-interpolation-mode: bicubic;
	max-width: 100%;
	height: auto;
}

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/**** unpublished page marker *******/

article.contextual-region.node--unpublished::before {
	content: "unpublished";
	color: black;
	text-align: right;
	float: right;
	background: yellow;
	font-weight: 700;
	padding: 0 14px;
	position: fixed;
	bottom: 0;
	right: 0;
}

/*********** webform blocks **************/
.webform-center h2 {
	max-width: 700px;
	margin: 0 auto;
	text-align: center;
}

body.path-webform #block-pagetitle h1 {
	text-align: left;
	max-width: 600px;
}

.read-understood form {
	border-top: 1px solid #ccc;
	padding-top: 10px;
	margin-top: 20px;
}

.read-understood {
	margin-top: 90px;
	margin-bottom: 90px;
}

@media (max-width: 680px) {
	.read-understood {
		max-width: 90vw;
		margin: 0 auto;
		margin-top: 45px;
		margin-bottom: 45px;
	}
}

/****************** admin tool bar icons fix *************/
.toolbar .toolbar-icon::before {
	width: 17px !important;
}

/******************************* page editing tabs **************************/
#block-tabs ul.tabs.primary {
  list-style: none;
  margin: 0;
  padding: 0;
}
#block-tabs ul.tabs.primary li {
  display: inline-block;
  margin: 10px 0;
}
#block-tabs ul.tabs.primary li a {
  display: inline-block;
  padding: 4px 20px;
  text-align: center;
  border: 1px solid #e0e0e0;
  color: black;
  background: #f1f1f1;
  border-radius: 20px;
  font-size: 74%;
}
body.admin #block-tabs ul.tabs.primary {
	position: fixed;
	bottom: 30%;
	right: 0;
	border: 0 none;
	margin: 0;
	padding: 0;
	z-index: 99;
}

body.admin #block-tabs ul.tabs.primary li {
	border-radius: 0;
	border: 0 none;
	margin: 0;
	float: unset;
	display: block;
}

body.admin #block-tabs ul.tabs.primary li a {
	background: #8C8108;
	background-image: none;
	background-image: none;
	color: white;
	padding: 4px 6px;
	margin: 4px 0;
	font-size: 12px;
	text-transform: uppercase;
	border: 1px solid white;
	border-right-color: white;
	border-right-style: solid;
	border-right-width: 1px;
	border-right: 0 none;
	display: block;
	text-align: center;
	text-decoration: none;
	border-radius: 20px 0 0 20px;
}

body.admin #block-tabs ul.tabs.primary li a.is-active {
	display: none;
}

/******************************** links **********************/
a:link {
	text-decoration: none;
	color: #A1C523;
	-webkit-text-decoration-skip: objects;
}

a:visited {
	color: #A1C523;
}

a:hover {
	color: #A1C523;
}

a:active {
	color: #A1C523;
}

a:active:not(.button) {
	background-color: transparent;
}

/* headings */

h1,
.header__site-name {
	font-size: 3.6vw;
	line-height: 4vw;
	font-weight: 500;
	color: #fff;
	max-width: 80vw;
	margin: 0 auto;
	margin-top: 1vw;
	margin-bottom: 2vw;
}

.header__site-name {
	font-size: 2.4vw;
	line-height: 4vw;
}

h2,
h2.block__title.block-title {
	margin-top: 3vw;
	margin-bottom: 1.4vw;
	font-size: clamp(30px, 3vw, 45px);
	line-height: clamp(34px, 3vw, 45px);
	font-weight: 500;
	color: #dfdfdf;
}

h2.block__title.block-title {
	margin-bottom: 2vw;
}

h3 {
	font-size: 2.2vw;
	line-height: 2.6vw;
	margin-top: 1.6vw;
	margin-bottom: 1.5vw;
	color: #fff;
}

h4 {
	font-size: 1.8vw;
	line-height: 2vw;
	margin-top: 1.5vw;
	margin-bottom: 1.5vw;
	color: white;
	letter-spacing: 0.1vw;
}

h5 {
	font-size: 1.4vw;
	line-height: 1.5vw;
	margin-top: 1.5vw;
	margin-bottom: 1.5vw;
	letter-spacing: .2vw;
	color: #A1C523;
	text-transform: uppercase;
}

h6 {
	font-size: 0.625vw;
	line-height: 1.5vw;
	margin-top: 1.5vw;
	margin-bottom: 1.5vw;
}

@media (min-width: 2000px) {

	h2,
	h2.block__title.block-title {
		margin-top: 10px;
		margin-bottom: 30px;
		font-size: 45px;
		line-height: 45px;
	}

	h3 {
		margin-top: 10px;
		margin-bottom: 30px;
		font-size: 38px;
		line-height: 40px;
	}

	h4 {
		margin-top: 10px;
		margin-bottom: 30px;
		font-size: 30px;
		line-height: 34px;
	}
}

@media (max-width: 1000px) {
	.header__site-name {
		font-size: 30px;
		line-height: 38px;
	}

	h1 {
		font-size: 28px;
		line-height: 36px;
	}

	h2,
	h2.block__title.block-title {
		font-size: 24px;
		line-height: 34px;
	}

	html {
		font-size: 20px;
		line-height: 28px;
		font-weight: 400;
	}

	h1 {
		font-size: 48px;
		line-height: 42px;
		margin-top: 2%;
		margin-bottom: 2%;
		font-weight: 500;
		max-width: 90vw;
	}

	h2 {
		font-size: 34px;
		line-height: 40px;
		margin-top: 30px;
		margin-bottom: 20px;
	}

	h3 {
		font-size: 24px;
		line-height: 32px;
		margin-bottom: 15px;
	}

	h4 {
		font-size: 22px;
		line-height: 26px;
		margin-top: 20px;
		letter-spacing: 1px;
	}

	h5 {
		font-size: 18px;
		line-height: 24px;
		margin-top: 20px;
		letter-spacing: 1px;
	}
}

/************************* site branding  *******************/
body.shrink .branding {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1;
	background: rgba(0, 0, 0, .5);
	display: block;
	height: 68px;
	width: 100%;
}

body.admin .branding {
	top: 80px;
}

.branding .logo a img {
	position: fixed;
	top: 10px;
	left: 30px;
	margin: 0 10px 0 0;
	padding: 0;
	z-index: 99;
	max-width: 360px;
	filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5));
	-webkit-transition: all 0.6s;
	-moz-transition: all 0.6s;
	-ms-transition: all 0.6s;
	-o-transition: all 0.6s;
	transition: all 0.6s;
}

body.admin .branding .logo a img {
	top: 80px;
}

body.shrink .branding .logo a img {
	max-width: 200px;
}

body.shrink .branding .logo a img {
	top: 0;
}

body.admin .branding .logo a img {
	top: 80px;
}

body.page-node-1 .branding {
	display: none;
}

@media (max-width: 1000px) {
	.branding .logo a img {
		top: 0px;
		left: 0;
		max-width: 330px;
	}
}

/***** admin menu ******/
#toolbar-administration ul li a {
	color: black;
	font-weight: 400;
}

/******************************* superfish main menu *********************/
#block-main {
	position: fixed;
	top: 0;
	z-index: 999;
	right: 0;
}

.sf-accordion-toggle a#superfish-main-toggle span {
	display: none;
}

ul#superfish-main-accordion.menu.sf-menu.sf-main.sf-style-black.sf-accordion.sf-expanded {
	max-width: 350px;
	height: 100dvh;
	padding-bottom: env(safe-area-inset-bottom, 0);
	overflow-y: scroll;
	background: black;
	-ms-overflow-style: none;
	/* for Internet Explorer, Edge */
	scrollbar-width: none;
	/* for Firefox */
}

ul#superfish-main-accordion.menu.sf-menu.sf-main.sf-style-black.sf-accordion.sf-expanded::-webkit-scrollbar {
	display: none;
	/* for Chrome, Safari, and Opera */
}

a#superfish-main-toggle {
	width: 30px;
	position: fixed;
	right: 18px;
	top: 5px;
	z-index: 9999999999;
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	-ms-transition: all 0.1s;
	-o-transition: all 0.1s;
	transition: all 0.1s;
}

@media (max-width: 800px) {
	a#superfish-main-toggle {
		right: 6px;
		top: 2px;
	}
}

.sf-accordion-toggle.sf-style-black a#superfish-main-toggle {
	background: transparent;
	border: 0 none;
	color: #A1C523;
	display: inline-block;
	font-weight: normal;
	padding: 2px 4px;
}

.sf-accordion-toggle.sf-style-black a.sf-expanded,
ul.sf-menu.sf-style-black.sf-accordion li.sf-expanded {
	background: transparent;
}

.sf-accordion-toggle.sf-style-black a#superfish-main-toggle::after {
	content: "≡";
	font-size: 40px;
	font-weight: normal;
	top: 20px;
	right: 26px;
	transform: scaleX(150%);
}

body.admin .sf-accordion-toggle.sf-style-black a#superfish-main-toggle::after {
	top: 90px;
}

body.admin .sf-accordion-toggle.sf-style-black a#superfish-main-toggle.sf-expanded::after {
	top: 0;
}

.sf-accordion-toggle.sf-style-black a#superfish-main-toggle.sf-expanded::after {
	content: "x";
	top: 0;
	right: 0;
	transform: scaleX(125%);
}

ul.sf-menu.sf-style-black a,
ul.sf-menu.sf-style-black a:visited,
ul.sf-menu.sf-style-black span.nolink {
	border: 0 none;
	color: #A1C523;
	padding: 18px 36px;
	font-size: 20px;
	border-bottom: 1px solid #241139;
}

ul.sf-menu.sf-style-black li,
ul.sf-menu.sf-style-black.sf-navbar {
	max-width: 350px;
}

@media (max-width:600px) {
	ul#superfish-main-accordion.menu.sf-menu.sf-main.sf-style-black.sf-accordion.sf-expanded {
		max-width: 100vw;
	}

	ul.sf-menu.sf-style-black li,
	ul.sf-menu.sf-style-black.sf-navbar {
		max-width: 100vw;
	}

	ul.sf-menu.sf-style-black a,
	ul.sf-menu.sf-style-black a:visited,
	ul.sf-menu.sf-style-black span.nolink {
		font-size: 28px;
	}

	.sf-accordion-toggle.sf-style-black a#superfish-main-toggle::after {
		top: 10px;
		right: 10px;
	}

	.sf-accordion-toggle.sf-style-black a#superfish-main-toggle.sf-expanded::after {
		font-size: 40px;
		right: 5px;
		top: 6px;
		transform: scaleX(125%);
	}
}

/* special link highlighter */
ul#superfish-main-accordion li#main-menu-link-contenta4b4613b-91e7-4e13-a863-9bbcaed82a9e-accordion.sf-depth-1.sf-no-children a.sf-depth-1,
ul#superfish-main-accordion li#main-menu-link-content66304193-b9b2-4860-82a3-cccec8ec89d5-accordion a.sf-depth-1,
ul#superfish-main-accordion li#main-menu-link-content2d9755b2-c3ae-41f0-9b80-e6ae06fc9e04-accordion a.sf-depth-1 {
	background: rgb(97, 56, 141);
	background: linear-gradient(151deg, rgba(97, 56, 141, 1) 0%, rgba(0, 0, 0, 1) 11%, rgba(0, 0, 0, 1) 100%);
	border-top: 1px solid #5D0C83;
	border-bottom: 1px solid #341e4b;
}

ul#superfish-main-accordion li#main-menu-link-content87c5ff61-4887-4dc4-a50a-1cf7a13546f2-accordion a.sf-depth-1,
ul#superfish-main-accordion li#main-menu-link-content7e3804a8-fde2-4719-a062-6fd180cfb6c7-accordion a.sf-depth-1,
ul#superfish-main-accordion li#main-menu-link-contenta5860b16-5724-4b7b-9f36-363ec06868b6-accordion a.sf-depth-1 {
	background: rgb(97, 56, 141);
	background: linear-gradient(151deg, rgba(97, 56, 141, 1) 0%, rgba(0, 0, 0, 1) 11%, rgba(0, 0, 0, 1) 100%);
	border-top: 1px solid #341e4b;
	border-bottom: 1px solid #341e4b;
}

ul#superfish-main-accordion li#main-menu-link-content87c5ff61-4887-4dc4-a50a-1cf7a13546f2-accordion a.sf-depth-1,
ul#superfish-main-accordion li#main-menu-link-content7e3804a8-fde2-4719-a062-6fd180cfb6c7-accordion a.sf-depth-1 {
	border-bottom: 0 none;
}







/******************************* responsive main menu *********************/
#block-responsivemenumobileicon {
	width: 30px;
	position: fixed;
	top: 26px;
	right: 40px;
	z-index: 999;
	-webkit-transition: all 0.6s;
	-moz-transition: all 0.6s;
	-ms-transition: all 0.6s;
	-o-transition: all 0.6s;
	transition: all 0.6s;
}

.responsive-menu-toggle-icon::before,
.responsive-menu-toggle-icon::after,
.responsive-menu-toggle-icon span.icon {
	width: 30px;
	height: 4px;
	background-color: #A1C523;
	margin: -1px 0;
	border-radius: 0;
	position: relative;
}

body.admin #block-responsivemenumobileicon {
	top: 120px;
}

a#toggle-icon.toggle.responsive-menu-toggle-icon span.label {
	display: none;
}

body.mm-wrapper_opening .responsive-menu-toggle-icon::before,
body.mm-wrapper_opening .responsive-menu-toggle-icon::after,
body.mm-wrapper_opening .responsive-menu-toggle-icon span.icon {
	margin: 0;
	position: absolute;
}

.mm-page,
.mm-wrapper_background body {
	background-color: transparent;
}

#mm-1.mm-panel.mm-panel_opened ul li a,
#mm-2.mm-panel.mm-panel_opened ul li a {
	color: #A1C523 !important;
	font-weight: 700 !important;
	font-size: 18px;
	letter-spacing: 1px;
}

#mm-2.mm-panel.mm-panel_opened .mm-navbar.mm-navbar_sticky a.mm-navbar__title span {
	color: white !important;
	font-weight: 700 !important;
}

body.mm-wrapper #off-canvas.mm-menu.mm-menu_offcanvas.mm-menu_opened .mm-panels #mm-1.mm-panel.mm-panel_opened .mm-navbar.mm-navbar_sticky {
	display: none;
}

off-canvas-wrapper {
	display: none;
}

.mm-listitem {
	border-color: black !important;
}

.mm-listitem__btn,
.mm-listitem__text {
	padding: 16px;
}

.mm-panels {
	background: #333;
}

.mm-menu_theme-black {
	--mm-color-background: #333;
}

.mm-listitem::after {
	border-color: #333;
	left: 0;
}

ul.mm-listview li.menu-item--_6304193-b9b2-4860-82a3-cccec8ec89d5.menu-name--main.mm-listitem,
ul.mm-listview li.menu-item--_7c5ff61-4887-4dc4-a50a-1cf7a13546f2.menu-name--main.mm-listitem {
	border-top: 1px solid #A1C523 !important;
	border-color: #A1C523 !important;
}

.menu-item--_6304193-b9b2-4860-82a3-cccec8ec89d5.menu-name--main.mm-listitem::after {
	border-color: #A1C523;
}

.mm-menu_offcanvas {
	max-width: 330px;
}

@media (min-width: 550px) {
	.mm-wrapper_opening .mm-menu_position-right.mm-menu_opened~.mm-slideout {
		-webkit-transform: translate3d(-330px, 0, 0);
		transform: translate3d(-330px, 0, 0);
	}
}

/************************** Funnel Menu ****************************/
#block-frontpagefunnel {
	position: absolute;
	z-index: 999999;
	top: calc(42vw - 290px);
	left: 0;
	width: 260px;
	max-width: 260px;
	background: rgba(37, 17, 54, 0.93);
	padding: 0;
	border-radius: 0 1vw 1vw 0;
}

#block-frontpagefunnel h2 {
	color: #dcdcdc;
	font-size: 36px;
	font-family: 'Teko', sans-serif;
	text-transform: uppercase;
	padding: 5px 16px 0;
	margin: 0;
	line-height: 60px;
	border-radius: 0 1vw 0 0;
	border-bottom: 1px solid #A1C523;
	font-weight: 600;
}

ul#superfish-front-page-funnel {
	max-width: 240px;
	border: 0 none;
}

ul#superfish-front-page-funnel li {
	background: rgba(255, 255, 255, 0.09);
	border: 0 none;
	border-bottom: 1px solid black;
	width: 260px;
}

/* remove bottom border from last menu item */
ul#superfish-front-page-funnel li#front-page-funnel-menu-link-content90324510-a084-4150-add8-8643cd69b0f1 {
	border: 0 none;
}

/****/
ul#superfish-front-page-funnel li.last {
	border-bottom: 0 none;
	border-radius: 0px 0px 1vw 0;
}

ul#superfish-front-page-funnel li a,
ul#superfish-front-page-funnel li span.nolink {
	font-size: 13px;
	color: white;
	padding: 20px 12px;
	line-height: 20px;
	display: block;
	text-transform: uppercase
}

#block-frontpagefunnel ul li ul {
	top: -28px;
	border-left: 2px solid #A1C523;
	background: rgba(37, 17, 54, 0.93);
	max-width: 190px;
	border-radius: 0 !important;
}

ul#superfish-front-page-funnel li ul li {
	max-width: 190px;
	background: rgba(255, 255, 255, 0.09);
	border-radius: 0 !important;
}

ul#superfish-front-page-funnel ul {
	left: 260px;
	border-top: none;
}

@media (max-width: 840px) {
	#block-frontpagefunnel {
		position: static;
		max-width: 100%;
		width: 100%;
		;
		border-radius: 0;
		text-align: center;
		margin: 0;
		overflow: hidden;
	}

	ul#superfish-front-page-funnel {
		max-width: 100%;
		width: 100%;
	}

	ul#superfish-front-page-funnel li {
		width: 100%;
		padding-left: 0;
	}

	ul#superfish-front-page-funnel li.last {
		border-radius: 0;
	}

	#block-frontpagefunnel ul li ul {
		position: static;
		border-left: 2px solid #A1C523;
		background: rgba(37, 17, 54, 0.93);
		max-width: 100%;
		border-radius: 0 !important;
		width: 100% !important;
		border-radius: 0 !important;
	}

	ul#superfish-front-page-funnel li ul li {
		max-width: 100%;
		background: rgba(255, 255, 255, 0.09);
		border-radius: 0 !important;
	}

}

/******************************** teacher training menu ********************/
/**** hide on temp level 1 page */
body.page-node-359.page-node-type-trainer-level-1 #block-teachertraining.teacher-training-menu {
	display: none;
}

/****/


.teacher-training-menu {
	margin: 0 auto;
	padding-bottom: 30px;
	padding-top: 20px;
}

.teacher-training-menu ul#superfish-teacher-training {
	width: 100%;
}

.teacher-training-menu ul#superfish-teacher-training a,
.teacher-training-menu ul#superfish-teacher-training li span.nolink {
	color: #A1C523;
}

.teacher-training-menu ul#superfish-teacher-training li {
	border: 0 none;
	text-transform: uppercase;
	font-size: 80%;
	background: black;
	border: 0 none;
	padding: 10px 20px;
	cursor: pointer;
}

.teacher-training-menu ul#superfish-teacher-training li a,
.teacher-training-menu ul#superfish-teacher-training li span.nolink {
	border-bottom: 1px solid black;
	padding: 0;
}

.teacher-training-menu ul#superfish-teacher-training li.is-active a {
	border-bottom: 1px solid #A1C523;
}

.teacher-training-menu ul#superfish-teacher-training li.is-active ul li a {
	border-bottom: 0 none;
}

.teacher-training-menu ul#superfish-teacher-training li ul li a {
	padding: 10px 20px;
}

.teacher-training-menu ul#superfish-teacher-training .menu__item {
	list-style: none;
}

.teacher-training-menu ul#superfish-teacher-training ul {
	top: 42px;
	border-top: 1px solid #ccc;
}

@media (max-width: 600px) {
	ul#superfish-teacher-training {
		max-width: 100%;
		width: 100%;
	}

	ul#superfish-teacher-training li {
		width: 100%;
	}

	ul#superfish-teacher-training ul {
		left: 0;
		border-top: none;
	}

	ul#superfish-teacher-training li ul li {
		max-width: 100%;

	}

	.teacher-training-menu {
		width: 90vw;
	}
}

/***************************** front page slide show **********************/
.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#block-views-block-frontpage-slideshow-block-1 {
	width: 100%;
	max-width: 100%;
	text-align: center;
	background: black;
	overflow: hidden;
	border-top: 1px solid #A2C522;
}

#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-photo,
#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em,
#block-locationvideoblock {
	height: 100vh;
	overflow: hidden;
}

#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-photo {
	border-bottom: 6px solid #A1C523;
}

/*********** front page Mission vision values block *************/

body.path-frontpage .layout-container main .layout-content {
	margin: 0;
	width: 100%;
	max-width: 100%;
	margin-top: 0 !important;
}

#block-tm2022-frontpagemissionvisionvalues {
	margin: 0 auto;
	width: 100%;
	margin-bottom: 20px;
}

#block-tm2022-frontpagemissionvisionvalues .pl-hero-layers .layer-wrapper:last-child {
	border-bottom: 2px solid #A1C523;
}

#block-tm2022-frontpagemissionvisionvalues .pl-hero-layers .layer-wrapper:last-child .fullwidth-imageblock {
	margin-bottom: 0;
}

.pl-hero-layers .layer-wrapper .views-field-field-hero-text p {
	width: 80%;
}

.fullwidth-imageblock {
	bottom: unset;
	top: 0;
	height: 100%;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-content: flex-end;
	justify-content: flex-end;
	padding-bottom: clamp(50px, 7vw, 100px);
	margin-bottom: 20px;
}

.fullwidth-hero-text {
	width: 80vw;
	max-width: 1600px;
	margin: 0 auto;
	padding: 1vw 3vw;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	background: rgba(0, 0, 0, 0.4);
}

.fullwidth-hero-text h1 {
	width: 100%;
	max-width: 100%;
}

.fullwidth-hero-text p {
	font-weight: 400;
	color: white;
}

.fullwidth-hero-text p strong {
	color: #A1C523;
}

@media (max-width: 1199px) {
	.fullwidth-hero-text {
		width: 100%;
	}

	.fullwidth-imageblock {
		padding-bottom: 0;
	}
}

.front-page {}

.mission {
	background: url(/themes/custom/tm2022/css/images/mission.webp) no-repeat;
	background-size: cover;
	background-position: center center;
	min-height: 800px;
}

.vision {
	background: url(/themes/custom/tm2022/css/images/vision.webp) no-repeat;
	background-size: cover;
	background-position: center center;
	min-height: 800px;
}

.values {
	background: url(/themes/custom/tm2022/css/images/values.webp) no-repeat;
	background-size: cover;
	background-position: center center;
	min-height: 800px;
}

.button-frame {
	background: black;
	padding: 4vw 2vw 6vw;
	margin-bottom: 2.5vw;
	border-bottom: 1px solid #A1C523;
}

.button4 {
	background: #131313;
	font-weight: 700;
	font-size: 75%;
	text-transform: uppercase;
	padding: 20px 40px;
	letter-spacing: 1px;
	color: white;
	margin-left: 10px;
	border-radius: 12px;
	border: 1px solid #626262;
}

@media (max-width: 1000px) {
	.button-frame .bipod {
		width: 100%;
	}

	.button-frame .bipod {
		width: 100%;
		margin-right: 0%;
		margin-top: 14px;
		margin-bottom: 4px;
	}

	.button4 {
		font-size: 65%;
		padding: 3vw 3vw;
		width: 94%;
		display: block;
	}
}

/***** New home page funnel buttons ****/
#block-tm2022-frontpagefunnel {
	position: absolute;
	top: 38vw;
	width: 100%;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 24px;
}

.flexbox.fpfunnel {
	width: 80vw;
	margin: 0 auto;
}

.flexbox.fpfunnel .menu-3 {
	flex-basis: fit-content;
	text-align: center;
}

.flexbox.fpfunnel .menu-3 a {
	display: inline-block;
	padding: 1vw 3vw;
	;
	border: 2px solid #A1C523;
	width: 25vw;
	letter-spacing: 1px;
	font-weight: 700;
	min-width: 390px;
}

@media (max-width: 1330px) {
	.flexbox.fpfunnel .menu-3 a {
		padding: 16px 20px;
		width: 100%;
		min-width: 300px;
	}
}

@media (max-width: 1000px) {
	#block-tm2022-frontpagefunnel {
		position: unset;
	}

	.flexbox.fpfunnel .menu-3 a {
		margin-bottom: 0;
		margin-top: 0px;
		padding-top: 30px;
		padding-bottom: 30px;
		background: black;
		font-size: 16px;
	}

	.menu-3 a.train-at {
		border-bottom: 1px solid #344106;
		border-right: 0 none;
	}

	.menu-3 a.become {
		border-bottom: 1px solid #344106;
		border-right: 0 none;
	}
}

/** end test home page ********************/
#block-locationvideoblock {
	margin-bottom: 0;
}

@media (max-width: 600px) {
	#block-locationvideoblock {
		height: 450px;
		max-height: 450px;
		margin-top: 0;
	}

	#block-locationvideoblock .embed-container {
		max-width: 190%;
		width: 190%;
		padding-bottom: 108%;
		margin-left: -44vw;
	}
}

body.page-node-2 #block-views-block-hero-image-or-video-block-1 .views-field-field-hero-photo,
body.page-node-2 #block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
	margin-bottom: 0;
}

.views-field-field-hero-photo .field-content img {
	max-width: 100%;
	width: 100%;
}

.views-field-field-message-text-complex {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 6vw;
	font-weight: 700;
	color: rgba(255, 255, 255, .5);
	text-align: center;
	width: 100%;
	margin-top: -23vw;
	margin-bottom: 4vw;
	padding-bottom: 20px;
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 23%, rgba(0, 0, 0, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 23%, rgba(0, 0, 0, 1) 100%);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 23%, rgba(0, 0, 0, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#000000', GradientType=0);
}

.views-field-field-message-text-complex h2 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 2.2vw;
	line-height: 2vw;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.views-field-field-message-text-complex h1 {
	font-size: 4.2vw;
	text-align: center;
	font-weight: 700;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	text-transform: none;
	margin-bottom: 1vw;
	line-height: 4vw;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.views-field-field-message-text-complex h1.tmark::after {
	content: "®";
	font-size: 30%;
	vertical-align: super;
	color: #b3b3b3;
	color: #b3b3b3;
}

@media (max-width: 768px) {
	.views-field-field-message-text-complex h2 {
		font-size: 4vw;
		line-height: 3vw;
	}

	.views-field-field-message-text-complex h1 {
		font-size: 6vw;
		line-height: 6vw;
		margin-bottom: 20px;
	}
}

/************************ buttons ********************************/
a.button1,
input#edit-submit.form-submit,
input#edit-submit--2.form-submit,
input.webform-submit.button-primary.form-submit,
input#mc-embedded-subscribe.button {
	padding: 1.2vw 3vw !important;
	border: 2px solid #A1C523 !important;
	text-transform: uppercase;
	margin: 0vw 0 4vw;
	margin-top: 40px;
	margin-bottom: 4vw;
	color: #A1C523;
	border-radius: 30vw;
	background: black;
}

a.button2 {
	font-weight: 500;
	font-size: 1.5vw;
	border-radius: 3vw;
	background: #5D0C83;
	color: white;
	padding: .8vw 2vw;
	border: 2px solid;
	border-top-color: currentcolor;
	border-right-color: currentcolor;
	border-bottom-color: currentcolor;
	border-left-color: currentcolor;
	border-color: #5D0C83;
	text-transform: uppercase;
	margin: 3vw 0;
	text-align: center;
	letter-spacing: 1px;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

@media (max-width: 768px) {

	a.button1,
	a.button2,
	input#edit-submit.form-submit,
	input#edit-submit--2.form-submit,
	input.webform-submit.button-primary.form-submit,
	input#mc-embedded-subscribe.button {
		font-size: 20px;
		padding: 10px 20px !important;
		border-radius: 30px;
	}
}

/**************************** hero video *****************************/
h1.no-hero {
	display: none;
}

body.page-node-2 #block-views-block-hero-image-or-video-block-1,
#block-locationvideoblock {
	max-width: 100%;
	width: 100%;
	background-size: cover;
	overflow: hidden;
}

#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
	opacity: .4;
}

@media (max-width: 1000px) {
	#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
		opacity: 1;
	}
}

#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
	margin-bottom: 0;
	max-height: 50vw;
}

body.node-type-location-page #block-frontpageherovideo {
	border-bottom: 1vw solid #A1C523;
}

@media (max-width: 600px) {
	#block-frontpageherovideo .embed-container {
		max-width: 190%;
		width: 190%;
		padding-bottom: 108%;
		margin-left: -44vw;
	}

	#block-frontpageherovideo {
		height: 450px;
		margin-top: 0;
	}
}
/* front page team logo ticker */
#block-tm2022-frontpagewelcomesportsteamannouncementblock {
	max-width: 60%;
	background: black;
	padding: 50px 50px 50px 100px;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: top;
}
body.page-node-2 #header-cent {
	border-bottom: 1px solid #A2C522;
}
.teamlogo-ticker {
	max-width: 38%;
	width: 38%;
	display: inline-block;
	background: black;
	box-sizing: border-box;
	padding: 70px 100px 50px 20px;	
	vertical-align: top;
	font-size: 0;
  text-align: center;
  margin: 0 auto;
}
.teamlogo-ticker .view-content {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}

.teamlogo-ticker .views-row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 29%;
  margin: 0%;
  text-align: center;
  min-height: 100px;
  box-sizing: border-box;
}
.teamlogo-ticker > div > div .views-row .views-field-field-team-logo {
  text-align: center;
}
.views-field-field-team-logo .field-content img {
  opacity: 1;
  max-width: 180px;
  width: 100%;
  filter: blur(0px);
  transition-property: filter,opacity;
  transition-duration: 4s,2s;
  transition-timing-function: ease-in-out;
}
.views-field-field-team-logo .highlight {
  filter: blur(10px) !important;
  opacity: 0 !important;
  transition-property: filter,opacity;
  transition-duration: 4s,2s;
  transition-timing-function: ease-in-out;
}
body.page-node-2 #content-head {
	background: black;
}
.vert-cent {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 26vw;
}
.vert-cent p {
    margin:0;
  }
#block-tm2022-frontpagewelcomesportsteamannouncementblock h2 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 2.5vw;
	color: #fb4f14;
	margin-top: 0;
	font-weight: 700;
	margin-bottom: 1.5vw;
	text-shadow: 4px 0 0 #024, -4px 0 0 #024, 0 4px 0 #024, 0 -4px 0 #024, 4px 4px 0 #024, -4px -4px 0 #024, 4px -4px 0 #024, -4px 4px 0 #024;
}

@media (min-width: 2000px) {
  .vert-cent p {
    font-size: 35px;
    line-height: 58px;
  }
	.vert-cent {
		margin-top: 3vw;
		min-height: 19vw;
	}
}
@media (max-width: 1000px) {
	#block-tm2022-frontpagewelcomesportsteamannouncementblock {
		max-width: 100%;
		padding: 50px;
	}
	.teamlogo-ticker {
		max-width: 100%;
		width: 100%;
		padding: 0px 100px 100px 100px;	
	}
	#block-tm2022-frontpagewelcomesportsteamannouncementblock h2 {
		font-size: 30px;
	}
}
@media (max-width: 800px) {
	.teamlogo-ticker {
		padding: 0 50px 50px 50px;	
	}
}

/************************* Special formatting **********************/
h1.big-notice {
	color: #A1C523;
	font-size: 6vw;
	font-family: 'Teko', sans-serif;
	text-transform: uppercase;
	line-height: 60px;
	font-weight: 600;
}

@media (max-width: 600px) {
	h1.big-notice {
		font-size: 30px;
	}
}

.left-just {
	text-align: left;
}

.textandmedia {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	align-content: space-between;
	background: #131313;
	align-items: center;
}

@media (max-width: 860px) {
	.textandmedia {
		flex-direction: column;
	}
}

.text {
	padding: 20px;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 50%;
	align-self: center;
}

.media {
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 50%;
}

.vgk .media {
	padding: 4vw;
}

.textandmedia.vgk {
	border-bottom: 2px solid #A1C523;
}

.textandmedia.vgk .text h3 {
	font-family: 'Teko', sans-serif;
	color: white;
	margin-bottom: 0;
	font-weight: 500;
}

.textandmedia.vgk .text h2 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 3.2vw;
	color: #fb4f14;
	margin-top: 0;
	font-weight: 700;
	margin-bottom: 10px;
	text-shadow: 4px 0 0 #024, -4px 0 0 #024, 0 4px 0 #024, 0 -4px 0 #024, 4px 4px 0 #024, -4px -4px 0 #024, 4px -4px 0 #024, -4px 4px 0 #024;
}

@media (max-width: 1000px) {
	.textandmedia.vgk .text h2 {
		font-size: 32px;
	}
}

.vgk .text p {
	line-height: 1.3em;
}

.blackbox {
	width: 100%;
	background: black;
	padding: 4vw;
}

/* Registered Trademark */
.sup {
	vertical-align: super;
	font-size: 60%;
}

.reg {
	font-weight: 700;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

figcaption {
	font-size: 56%;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 400;
	line-height: 20px;
	text-align: center;
}

.tripod,
.tripod-db {
	width: 33%;
	display: inline-block;
}

.tripod-db {
	width: 66%;
	text-align: left;
}

.bipod {
	width: 49%;
	display: inline-block;
	vertical-align: top;
	margin-right: 2%;
	margin-top: 2%;
}

.bipod.last {
	margin-right: 0;
}

body.page-node-38 .bipod,
body.page-node-64 .bipod,
body.page-node-type-licensee-resources .bipod,
body.page-node-type-licensee-policy-page .bipod {
	text-align: left;
}

/**** solo pods ****/
.solo-pod a {
	border-bottom: 1px solid #A1C523;
}

.solo-pod h1 {
	font-weight: 700;
}

.solo-pod h2 {
	font-size: 110%;
	font-weight: 700;
	line-height: 40%;
}

.solo-pod h3 {
	text-transform: uppercase;
	font-size: 110%;
}

.solo-pod p,
.solo-pod ul li {
	color: white;
}

.solo-pod ul {
	margin-bottom: 20px !important;
}

.solo-pod {
	padding: 4vw 5vw;
	box-sizing: border-box;
	width: 50%;
	background: rgba(0, 0, 0, 0.75);
}

.solo-pod p.location,
.solo-pod p.map-link {
	display: inline-block;
	padding-right: 2vw;
}

#block-tm2022-frontpagehqannouncement {
	background: url(/themes/custom/tm2022/css/images/tm-location.webp) no-repeat center center;
	background-size: cover;
	border-bottom: 2px solid #A1C523;
	border-top: 2px solid #A1C523;
}

@media (max-width: 1000px) {
	.solo-pod {
		padding: 30px 40px;
		width: 100%;
	}
}



.block-center {
	margin: 0 auto;
	text-align: center;
	width: 88vw;
	max-width: 88vw;
}

.flexbox {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1%;
}

@media (max-width: 768px) {
	.block-center {
		width: 100%;
		max-width: 100%;
	}

	.flexbox {
		display: block;
	}

	.bipod {
		width: 100%;
		margin-right: 0%;
		margin-top: 20px;
		margin-bottom: 40px;
	}

	body.page-node-215 .bipod {
		margin-top: 0;
		margin-bottom: 0;
	}

	body.page-node-215 .layout-container main .layout-content {
		margin-top: 30px;
	}

	.tripod,
	.tripod-db {
		width: 100%;
		margin-top: 20px;
		margin-bottom: 40px;
		flex-basis: 100%;
	}
}

.promo-video {
	margin: 0 auto;
	margin-top: 1%;
	width: 88vw;
	max-width: 88vw;
}

body.page-node-2 .tripod,
body.page-node-type-location-page .tripod {
	background: black;
	margin-top: 2%;
	padding-bottom: 2%;
	overflow: hidden;
}

@media (max-width: 768px) {
	body.page-node-2 .tripod {
		width: 100%;
		padding-bottom: 40px;
		margin: 0;
	}

	.promo-video {
		margin: 0;
		width: 100%;
		max-width: 100%;
	}
}

.spec-heading1 {
	margin: 0 auto;
	margin-top: 3vw;
	margin-bottom: 2vw;
	width: 60vw;
}

.spec-heading1 h2 {
	font-size: 3vw;
	line-height: 3.6vw;
	color: #ccc;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400;
	text-align: center;
	padding-bottom: 2vw;
	color: transparent !important;
	-webkit-background-clip: text;
	background-image: url(/themes/custom/tm2022/css/images/purple-yellow-gradient.jpg);
	background-size: cover;
}

.spec-heading3 {
	margin: 0 auto;
	margin-top: 0;
	margin-bottom: 0;
	width: 100%;
	background: black;
	text-align: left;
	padding: 4vw;
	font-weight: 700;
}

.spec-heading3.center {
	text-align: center;
	padding: 0 4vw 4vw;
}

@media (max-width: 1000px) {
	.spec-heading3 {
		padding: 40px 0;
	}

	.spec-heading1 h2 {
		font-size: 28px;
		line-height: 30px;
	}

	.spec-heading1 {
		width: 80vw;
	}
}

.edify {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: clamp(20px, 4vw, 50px) clamp(30px, 6vw, 100px);
	margin-bottom: 20px;
	margin-top: 3vw;
	font-size: 125%;
}

#footer-copyright {
	color: #ccc;
	font-size: 16px;
	text-align: center;
	max-width: 90%;
	margin: 0 auto;
	padding-top: 20px;
}

.button-box h2 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 900;
	text-align: center;
	font-size: 3vw;
	line-height: 3vw;
	text-shadow: .3vw .3vw 0 rgba(218, 230, 26, .5);
	text-transform: uppercase;
	margin-top: -2.5vw;
	margin-bottom: 3vw;
}

.button-box .button1 {
	margin-bottom: 1vw;
	margin-top: 1vw;
	width: 90%;
}

@media (max-width: 768px) {
	.button-box h2 {
		text-shadow: 2px 2px 0 rgba(218, 230, 26, .5);
		font-size: 9vw;
		line-height: 9vw;
		margin-top: -8vw;
		margin-bottom: 30px;
	}
}

/****** lists ********/
ul {
	margin-bottom: 20px;
}

ol li {
	margin-bottom: 20px;
}

ol li ol li,
ol li ul li {
	margin-bottom: 0px;
}

/********************** custom blocks ******************************/
#block-frontpageassessmentcta {
	width: 88vw;
	max-width: 88vw;
	padding: 2vw;
	margin: 0 auto;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-bottom: 10px;
	margin-top: 2%;
	text-align: center;
	border-radius: 7px;
}

.cta h2 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	margin-top: 2vw;
	margin-bottom: 2vw;
}

a.button-assess {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 20px;
	padding: 10px 20px;
	font-weight: 400;
	border-radius: 3vw;
	background: #5D0C83;
	color: white;
	border: 2px solid;
	border-top-color: currentcolor;
	border-right-color: currentcolor;
	border-bottom-color: currentcolor;
	border-left-color: currentcolor;
	border-color: #5D0C83;
	text-transform: uppercase;
	margin: 3vw 0;
	text-align: center;
	letter-spacing: 1px;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

@media (max-width: 768px) {
	#block-frontpageassessmentcta {
		width: 100%;
		max-width: 100%;
		margin: 0;
	}
}

/******************** page title exceptions *****************/
body.path-user #block-pagetitle,
body.path-tfa #block-pagetitle {
	margin: 0 auto;
	max-width: 700px;
	text-align: center;
}

body.path-user #block-pagetitle h1,
body.path-tfa #block-pagetitle h1 {
	font-size: 30px;
}





/**************************** maps *****************/
.geolocation-map-wrapper .geolocation-map-container {
	height: 45vw;
}

.map-block {
	max-width: 100vw;
	height: 40.5vh;
	overflow: hidden;
}
#footer-map {
	margin: 0 auto;
	max-width: 1200px;
	border: 1px solid #344106;
}
@media (max-width: 1200px) {
	#footer-map {
		border-width: 1px 0;
	}
}

/* map info pop-up window */
.gm-style .gm-style-iw-c {
	padding-top: 14px !important;
	background-color: black;
	border: 1px solid #A1C523;
}

.gm-style .gm-style-iw-tc::after {
	background: #A1C523;
	height: 8px;
}

.gm-style-iw-chr {
	display: none;
}

/********************* locations buy buttons ****/
.locations-buy {
	position: absolute;
	top: 14px;
	right: 120px;
}

@media (min-width: 1001px) {
	body.admin .locations-buy {
		position: absolute;
		top: 94px;
		right: 120px;
	}
}

#location-buttons a {
	background: black;
	font-weight: 700;
	font-size: 55%;
	text-transform: uppercase;
	padding: 10px 20px;
	letter-spacing: 1px;
	color: white;
	margin-left: 10px;
	border-radius: 4px;
	border: 1px solid #626262;
}

@media (max-width: 1000px) {
	#location-buttons {
		background: black;
	}

	#location-buttons a {
		padding: 10px 5%;
		margin: 1% 0;
		display: block;
		min-width: 98%;
		text-align: center;
	}
}

/*******************locations pages ******************/
body.page-node-type-location-page {
	background: black;
}

#block-tm2022-views-block-locations-buy-button-block-9 {
	display: block;
	position: sticky;
	top: 0;
	z-index: 1000;
}

@media (min-width: 1041px) {
	.locations-mini-menu #loc-wrapper {
		text-align: center;
		margin: 0 auto;
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
		align-items: flex-end;
		gap: 6px;
		list-style: none;
		margin-top: 20px;
		padding: 0;
		margin-right: 30px;
		padding-top: 12px;
	}

	#block-tm2022-views-block-locations-buy-button-block-9 .view-content .views-row .views-field {
		background: transparent;
		position: static;
		float: none !important;
	}

	#loc-wrapper a {
		background: black;
		font-weight: 700;
		font-size: 55%;
		text-transform: uppercase;
		padding: 0 20px;
		letter-spacing: 1px;
		color: white;
		border-radius: 4px;
		border: 1px solid #626262;
		margin-left: 10px;
	}
}

/**** mobile in page menu *****/
@media (max-width: 1060px) {
	.locations-mini-menu {
		text-align: center;
	}

	.locations-mini-menu::before {
		content: "Menu ▾";
		background: #A1C523;
		padding: 3px 18px 5px 19px;
		cursor: pointer;
		user-select: none;
		display: inline-block;
		border-radius: 20px;
		overflow: hidden;
		margin-top: 12px;
		color: black;
		font-weight: bold;
		text-transform: uppercase;
		font-size: 16px;
		text-align: center;
		width: unset;
		margin-right: 70px;
		float: right;
	}

	.locations-mini-menu #loc-wrapper {
		display: none;
		overflow: hidden;
		background: black;
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		z-index: 1000;
		padding-top: 0;
		border: 1px solid #222a07;
	}

	#loc-wrapper a.sf-depth-1 {
		display: inline-block;
		width: 100%;
		padding: 15px 20px;
		font-size: 18px;
		border: 0 none;
		border-bottom: 1px solid #222a07;
		margin-left: 0;
	}

	#loc-wrapper a.sf-depth-1:hover {
		background: #202020;
	}

	.locations-mini-menu.is-open #loc-wrapper {
		display: block;
	}
}



#block-views-block-location-page-blocks-block-1 {
	position: absolute;
	z-index: 98;
	top: 34vh;
	right: 0;
	margin-bottom: 0;
}

body.page-node-98 #block-views-block-location-page-blocks-block-1 {
	top: 44vh;
}

#block-views-block-location-page-blocks-block-1 .views-field.views-field-title {
	text-align: right;
	margin-bottom: 0;
	max-width: 100%;
}

#block-views-block-location-page-blocks-block-1 .views-field-title .field-content {}

#block-views-block-location-page-blocks-block-1 .views-field-title .field-content .field-title {
	display: inline-block;
	vertical-align: top;
}

.bookend.acidgr {
	display: inline-block;
	vertical-align: top;
	width: 0px;
	height: 0px;
	border: 3.1vh solid;
	border-bottom-color: #A1C523;
	border-top-color: transparent;
	border-left-color: transparent;
	border-right-color: #A1C523;
}

#block-views-block-location-page-blocks-block-1 .views-field.views-field-title span.field-content .field-title h1 {
	text-align: right;
	font-family: 'Teko', sans-serif;
	background: #A1C523;
	padding-right: 27px;
	font-size: 7vh;
	font-weight: 500;
	line-height: 5vh;
	margin: 0;
	padding-top: 1.5vh;
	color: black;
}



.location-wrapper {
	width: 100%;
	margin: 0 auto;
}

.location-pod {
	padding-right: 20px;
	padding-left: 20px;
	display: inline-block;
	width: 33%;
	text-align: center;
	vertical-align: top;
	padding-top: 30px;
}

@media (max-width: 1000px) {
	.location-pod {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.location-pod p {
	margin: 5px;
}

.location-pod.map {
	background: url(images/icon-loc.svg) no-repeat;
	background-size: 30px;
	background-position: center top;
}

.location-pod.map {
	padding-bottom: 20px;
	border-right: 1px solid #344106;
}

.location-pod.contact {
	background: url(images/icon-contact.svg) no-repeat;
	background-size: 30px;
	background-position: center top;
	border-right: 1px solid #344106;
}

.location-pod.social.desktop,
.location-pod.social.mobiledevice {
	background: url(images/icon-social.svg) no-repeat;
	background-size: 30px;
	background-position: center top;
}

.desktop,
.mobiledevice {
	display: none;
}

@media (hover: hover) {
	.desktop {
		display: inline-block;
	}
}

@media (hover: none) {
	.mobiledevice {
		display: inline-block;
	}
}

@media (max-width: 760px) {

	.location-pod,
	.location-pod.map {
		width: 100%;
		padding-top: 50px;
		padding-bottom: 40px;
		background-position-y: 17px !important;
		background-size: 18px !important;
	}
	.location-pod.map,
	.location-pod.contact {
		border-bottom: 1px solid #344106;
	}
	.location-pod.contact,
		.location-pod.social {
		margin-top: 30px;
	}
}



/********************* congrats new locations notice ****************/
#header-cent header {
	position: relative;
}

body.page-node-type-location-page #header-cent header {
	border-bottom: 0 none;
}

.congrats {
	width: 100% !important;
	max-width: 100% !important;
	font-size: 0;
	text-align: right;
	color: black;
	max-height: 3vw;
	position: absolute;
	z-index: 9;
	bottom: 4px;
	margin-bottom: -6px;
}

.congrats span.title {
	font-family: 'Teko', sans-serif;
	font-size: 2.4vw;
	letter-spacing: 0px;
}

.congrats .locations-text {
	background: #A1C523;
	display: inline-block;
	font-size: 1.6vw;
	line-height: 1.6vw;
	padding: .9vw .8vw .6vw;
	letter-spacing: -0.5px;
}

.congrats a {
	color: black;
	padding: 0 3px;
	border-bottom: 1px solid black;
	text-transform: uppercase;
}

.congrats .bookend.acidgr {
	display: inline-block;
	vertical-align: top;
	width: 0px;
	height: 0px;
	border: 1.6vw solid;
	border-bottom-color: #A1C523;
	border-top-color: transparent;
	border-left-color: transparent;
	border-right-color: #A1C523;
}

@media (max-width: 1000px) {
	.congrats {
		position: static;
		width: 100%;
		max-width: 100%;
		text-align: center;
		color: black;
		margin-top: 0;
		background: #A1C523;
		max-height: unset;
		padding-top: 4px;
		margin-top: 0 !important;
	}

	.congrats .locations-text {
		background: transparent;
		font-size: 18px;
		line-height: 22px;
	}

	.congrats .bookend.acidgr {
		display: none;
	}

	.congrats span.title {
		font-size: 24px;
	}
}

/**** GDPR cookie consent ************************************************/
#sliding-popup.sliding-popup-bottom button.eu-cookie-withdraw-tab {
	padding: 6px 14px;
	border: 1px solid #A1C523;
	font-size: 13px;
	line-height: 18px !important;
	font-weight: 300 !important;
	letter-spacing: .5px;
	border-width: 1px 0 0 1px;
	border-bottom: 1px solid #222;
	z-index: 9;
}

.eu-cookie-withdraw-tab {
	transform: translate(0%, -100%);
	left: unset;
	right: 0%;
}

#sliding-popup.sliding-popup-bottom {
	padding-bottom: 0;
}

#sliding-popup.sliding-popup-bottom,
#sliding-popup.sliding-popup-bottom .eu-cookie-withdraw-banner,
.eu-cookie-withdraw-tab {
	background: #222;
}

#sliding-popup {
	margin: 0;
	padding: 0;
	z-index: 99999;
	left: 0px;
	bottom: 0px;
	text-align: center;
}

#sliding-popup .popup-content #popup-text {
	color: #fff;
	float: left;
	font-weight: 300;
	line-height: 18px;
	margin: 20px;
	max-width: 78%;
}

#sliding-popup .popup-content #popup-buttons {
	width: 190px;
	margin-top: 20px;
}

#sliding-popup .popup-content #popup-buttons {
	float: left;
	max-width: unset;
}

#sliding-popup .popup-content {
	text-align: left;
	float: left;
	display: block;
	margin: 0;
	width: 100%;
	max-width: unset;
	border-radius: 0;
	border-top: 1px solid black;
	transition: border-top 2s ease;
}

body.eu-cookie-compliance-popup-open #sliding-popup .popup-content {
	border-top: 1px solid #A1C523;
	transition: border-top 2s ease;
}

button.eu-cookie-withdraw-button {
	margin-bottom: 20px;
}

.eu-cookie-withdraw-tab {
	color: #A1C523
}

.eu-cookie-compliance-banner {
	margin-top: -1px;
}

.sliding-popup-bottom .eu-cookie-withdraw-tab {
	border-width: 1px 1px 0;
	border-radius: 5px 0 0;
}

#popup-text p.consent-title strong {
	color: #ffff01;
}

#sliding-popup .popup-content #popup-text p {
	color: #fff;
	margin: 0;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: .5px;
}

.eu-cookie-withdraw-banner,
.eu-cookie-withdraw-wrapper.sliding-popup-bottom {
	background: black !important;
}

.eu-cookie-compliance-processed #sliding-popup.sliding-popup-bottom button.eu-cookie-withdraw-tab {
	padding: 10px;
	background: #272727;
	;
	color: white !important;
	border: 1px solid black;
	border-radius: 0;
}

.eu-cookie-compliance-banner .popup-content #popup-text button {
	background: transparent;
	border: 0 none;
	color: #fff;
	text-decoration: underline;
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 18px;
}

.eu-cookie-compliance-banner .popup-content #popup-buttons button {
	background: #555;
	border: 1px solid #555;
	border-radius: 3px;
	padding: 10px;
	font-size: 14px;
	font-weight: 300 !important;
	line-height: 14px;
	color: white;
	box-shadow: none;
	text-shadow: none;
	margin: 0 10px 10px;
	font-family: 'Lato', 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.disagree-button.eu-cookie-compliance-more-button,
.eu-cookie-compliance-agree-button,
.eu-cookie-compliance-default-button,
.eu-cookie-compliance-hide-button,
.eu-cookie-compliance-more-button-thank-you,
.eu-cookie-withdraw-button,
.eu-cookie-compliance-save-preferences-button {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: #999;
	background-image: none;
	-moz-border-radius: 3;
	-webkit-border-radius: 3;
	border-radius: 3px;
	border: 0 none;
	color: #000;
	font-family: 'Lato', 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: bold;
	padding: 4px 8px;
	text-decoration: none;
	text-shadow: none;
}

.eu-cookie-compliance-content {
	border-top: 1px solid #ccc;
}

@media (max-width: 600px) {
	.eu-cookie-compliance-processed #sliding-popup.sliding-popup-bottom button.eu-cookie-withdraw-tab {
		padding: 3px;
		width: 110px;
		font-size: 13px;
	}

	#sliding-popup .popup-content {
		width: 100%;
	}

	#sliding-popup .popup-content #popup-text {
		margin: 20px 0 20px 20px;
		width: 100%;
		margin-right: 0;
		max-width: 90%;
	}

	#sliding-popup {
		width: calc(100% + 1px);
		box-sizing: border-box;
	}

	#sliding-popup .popup-content #popup-buttons {
		width: 100%;
		margin-top: 0;
		margin-bottom: 40px;
		text-align: center;
	}
}

/* end GDPR widget */
/* advanced cookie selection page */
#cookie-tabs {
	border: 1px solid white;
}

.cookie-tab-container {
	border: 1px solid #A1C523;
}

#cookie-tabs>ul {
	background-color: black;
	margin-top: 0;
}

#cookie-tabs>div {
	display: inline-block;
}

#cookie-tabs>ul>li {
	background-color: black;
}

#cookie-tabs>ul>li>a {
	border: 0 none;
}

button.cookie-settings-save,
button.cookie-settings-save:hover {
	font-weight: 500;
	background: #5D0C83;
	color: white;
	border: 2px solid #5D0C83;
	text-transform: uppercase;
	box-shadow: none;
	margin: 3vw 0;
	text-align: center;
	letter-spacing: 1px;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

input:checked+.euccx-slider {
	background-color: #A1C523;
}

/*********************** contact footer *****************************/
#footer-cent {
	overflow: hidden;
}

#centcontact {
	background: #000;
	color: #ccc;
	font-size: 16px;
	text-align: center;
	overflow: hidden;
}

#block-contactfooter {
	padding: 4vw 0;
	margin: 0 auto;
	width: 80vw;
	max-width: 1100px;
	text-align: center;
}

/************************** social share buttons ************************/
#block-ridiculouslyresponsivesocialsharebuttons .rrssb {
	padding-right: 0 !important;
}

#block-ridiculouslyresponsivesocialsharebuttons .rrssb.rrssb-bs-default ul.rrssb-buttons li a {
	line-height: 1.6vw !important;
}

/************************* featured image hero **********************/
.views-field-field-hero-in-use- {
	display: none;
}

.hero .view-content .views-row {
	position: relative;
}

.hero .views-field-field-hero-photo .field-content img {
	width: 100%;
	height: 100%;
	opacity: .6;
	vertical-align: top;
	object-fit: cover;
	object-position: center;
}

.hero .views-field-field-hero-photo .field-content {
	height: 100vh;
}

.views-field-title,
body.node-type-basic-page-no-hero h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 900;
	font-size: 5vw;
	line-height: 5vw;
	color: rgba(255, 255, 255, 1);
	text-transform: uppercase;
}

body:not(.path-frontpage) .hero:not(.hero-vertical) {
	width: 100%;
	max-width: 100%;
	margin-top: 0;
	background: #000;
	overflow: hidden;
}

.hero .views-row .views-field.views-field-title {
	position: absolute;
	z-index: 99;
	bottom: 5px;
	opacity: 0.4;
	margin-bottom: 0;
}

.hero .views-row .views-field.views-field-title span.field-content h1 {
	font-size: 7.4vw;
	line-height: 5.6vw;
	margin-bottom: 0;
	font-weight: 900;
}

body.page-node-2 .hero .views-row .views-field.views-field-title,
body.page-node-97 .hero .views-row .views-field.views-field-title {
	display: none;
}

@media (max-width: 1000px) {
	#block-views-block-feature-image-block-1 .views-row .views-field.views-field-title span.field-content h1 {
		font-size: 8.2vw;
		line-height: 6vw;
		margin-bottom: 0;
	}
}

/************************* page formatting **************************/
.layout-container main .layout-content {
	margin: 0 auto;
	width: 100vw;
  max-width: 1200px;
	margin-top: 12vw;
	margin-bottom: 4vw;
	-webkit-transition: margin-top 0.6s;
	-moz-transition: margin-top 0.6s;
	-ms-transition: margin-top 0.6s;
	-o-transition: margin-top 0.6s;
	transition: margin-top 0.6s;
}

body.page-node-type-module-lesson .layout-container main .layout-content {
	width: 100%;
	max-width: 1200px;
}

body.yes-hero .layout-container main .layout-content {
	margin-top: 6vw;
}

body.page-node-98 .layout-content {
	margin-top: 5vw;
}

body.page-node-2 main .layout-content {
	margin-top: 0;
}

body.path-user .layout-container main .layout-content {
	margin-top: 12vw;
	min-height: calc(86vh - 14vw);
}

body.page-node-type-location-page .layout-container main .layout-content {
	width: 100vw;
	max-width: 100vw;
}

@media (max-width: 800px) {
	body.page-node-type-location-page .layout-container main .layout-content {
		width: 100vw;
		max-width: 100vw;
	}
}

body.page-node-type-location-page .layout-container main .layout-content {
	margin-top: 0;
	margin-bottom: 20px;
}

body.page-node-220 .layout-container main .layout-content {
	margin-top: 0;
}

@media (max-width: 1200px) {
	body.no-hero .layout-container main .layout-content {
		margin-top: 160px;
	}

	body.page-node-220 .layout-container main .layout-content {
		margin-top: 0;
	}
}

@media (max-width: 1000px) {
	body.no-hero .layout-container main .layout-content {
		margin: 0 auto;
		width: 90vw;
		max-width: 90vw;
		margin-top: 150px;
	}

	body.page-node-209 main .layout-content {
		margin-top: 132px;
	}

	body.path-user .layout-container main .layout-content {
		margin-top: 100px;
	}

	body.page-node-220 .layout-container main .layout-content {
		margin-top: 0;
	}
}

@media (max-width: 600px) {
	body.page-node-220 .layout-container {
		margin-top: 120px;
	}
}

.center-block {
	margin: 0 auto;
	text-align: center;
	margin-bottom: 8vw;
}

.block80vw {
	margin: 0 auto;
	width: 80vw;
	max-width: 80vw;
}

/**************** zing fit menu reserve page *****************/
#block-tempzingfitmenu {
	width: 80vw;
	position: relative;
	z-index: 99999;
}

#block-tempzingfitmenu ul.menu {
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-content: space-between;
	flex-direction: row;
	margin-bottom: 20px;
}

#block-tempzingfitmenu ul.menu li.menu-item {
	align-self: stretch;
	list-style: none;
	flex-grow: 1;
	margin: 0 1px;
}

#block-tempzingfitmenu ul.menu li.menu-item a {
	background: black;
	flex-grow: 1;
	display: flex;
	justify-content: center;
	margin-bottom: 1px;
}

@media (max-width: 1000px) {
	#block-tempzingfitmenu {
		width: 90vw;
	}
}

@media (max-width: 800px) {
	#block-tempzingfitmenu ul.menu {
		flex-wrap: wrap;
		justify-content: space-evenly;
	}
}

/**** Policy pages ****/
#block-policyreviewtext {
	background: black;
	padding: 1px 28px;
	margin-bottom: 60px;
}

/***** Sports Training Page Seasonal Training Pages ********/

h1.hlt-band {
	background: black;
	padding: 15px;
	font-family: 'Teko', sans-serif;
	color: #A1C523;
	text-align: center;
}

.teko {
	font-family: 'Teko', sans-serif;
}

body.page-node-282 article h3,
body.page-node-282 article h2,
body.page-node-282 article h1,
body.page-node-308 article h2,
body.page-node-308 article h1,
body.page-node-308 article h3 {
	font-family: 'Teko', sans-serif;
}

h2.hlt-band {
	text-align: center;
	background: #2d2d2d;
	padding: 14px 10px;
	margin-bottom: 40px;
	font-family: 'Teko', sans-serif;
}

body.page-node-282 .hockey-silo,
.drop-in {
	font-weight: 400;
	font-size: 20px;
	line-height: 28px;
	color: #999;
	position: relative;
}

body.page-node-28 article {
	background: black url(images/bkgd-platform.jpg) no-repeat;
	background-size: cover;
	background-position: center top;
}

.hockey-pod-1 {
	background: rgba(0, 0, 0, 0.8);
	overflow: hidden;
	line-height: 40px;
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 30px;
}

.wrapper-silo-block {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin-bottom: 60px;
}

.hockey-silo,
.drop-in {
	width: 33.3%;
	display: inline-block;
	background: rgba(50, 50, 50, 0.8);
	overflow: hidden;
	padding: 20px;
	font-size: 20px;
	line-height: 34px;
}

.drop-in {
	width: 100%;
	text-align: center;
	margin: 0 auto;
	display: block;
	padding-bottom: 40px;
}

.hk-silo-headings {
	font-family: 'Teko', sans-serif;
	text-transform: uppercase;
	text-align: center;
	padding: 8vw 0 0;
}

.hk-silo-headings h3 {
	line-height: 3vw;
	font-size: 2.8vw;
	margin-bottom: 0;
	min-height: 140px;
}

.logo-flexbox {
	padding: 3vw 2vw;
	background: black;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	align-content: center;
	align-items: center;
	gap: 10px;
}

.sports-logos {
	flex-basis: calc(25% - 20px);
	max-width: 300px;
	min-width: 250px;
	height: auto;
}

#block-sportspagecontentbottom {
	width: 80vw;
	max-width: 80vw;
	margin: 0 auto;
}

@media (max-width: 800px) {
	.hk-silo-headings {
		padding: 80px 0 0;
	}

	.hk-silo-headings h3 {
		line-height: 34px;
		font-size: 40px;
	}
}

.hk-silo-middle {
	background: rgba(0, 0, 0, 0.8);
}

.hk-heading-1 {
	background: transparent url(images/hk-silo-bkgd-1.png) no-repeat;
	background-size: contain;
	background-position: center top;
}

.hk-heading-2 {
	background: transparent url(images/hk-silo-bkgd-2.png) no-repeat;
	background-size: contain;
	background-position: center top;
}

.hk-heading-3 {
	background: transparent url(images/hk-silo-bkgd-3.png) no-repeat;
	background-size: contain;
	background-position: center top;
}

.hockey-silo .silo-img {
	width: 100%;
	min-height: 25vw;
	border: 10px solid black;
}

.hk-silo-left .silo-img {
	background: transparent url(images/hk-silo-img-1.jpg) no-repeat;
	background-size: cover;
	background-position: center top;
}

.hk-silo-middle .silo-img {
	background: transparent url(images/hk-silo-img-2.jpg) no-repeat;
	background-size: cover;
	background-position: center top;
}

.hk-silo-right .silo-img {
	background: transparent url(images/hk-silo-img-3.jpg) no-repeat;
	background-size: cover;
	background-position: center top;
}

.hockey-pod-1 div img {
	padding-top: 40px;
}

.vertical-3-vid {
	width: 32%;
	display: inline-block;
}

.hk-vid-wrap {
	overflow: hidden;
	display: block;
	margin: 0 auto;
	margin-top: 30px;
}

.vertical-3-vid .embed-container {
	padding-bottom: 180%;
}

.hockey-silo .button-wrapper {
	position: absolute;
	bottom: 43px;
	width: 100%;
	text-align: center;
	left: 0;
}

.wrapper-silo-block.hk-pricing .hockey-silo {
	margin: .7vw;
	padding-bottom: 92px;
}

.price-size {
	font-size: 150%;
	color: white;
}

.price-sign {
	font-size: 80%;
	vertical-align: top;
	line-height: 20px;
	color: white;
}

@media (max-width: 800px) {
	.hockey-silo {
		width: 100%;
	}

	.hockey-silo .silo-img {
		min-height: 80vw;
	}

	.vertical-3-vid {
		width: 100%;
	}

	.wrapper-silo-block {
		display: block;
	}

	.wrapper-silo-block.hk-pricing .hockey-silo {
		padding-bottom: 15vw;
	}
}

/************** Platform new page ************/
body.page-node-283,
body.page-node-3,
body.page-node-209  {
	background: #151515;
}

body.page-node-283 .layout-container main .layout-content,
body.page-node-3 .layout-container main .layout-content,
body.page-node-327 .layout-container main .layout-content,
body.page-node-209 .layout-container main .layout-content {
	margin: 0 auto;
	margin-top: 0px;
	margin-bottom: 0px;
	width: 100vw;
	max-width: 1200px;
	margin-top: 0;
	margin-bottom: 0;
}

.pl-hero-layers .layer-wrapper .views-field-field-hero-text h1,
.pl-hero-layers .layer-wrapper .views-field-field-hero-text h1 strong,
.fullwidth-imageblock .fullwidth-hero-text h1 strong,
.fullwidth-imageblock .fullwidth-hero-text h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: clamp(26px, 6vw, 56px) !important;
	line-height: clamp(32px, 7vw, 56px);
	font-weight: 700 !important;
}

.pl-hero-layers .views-field-field-hero-text h1,
.pl-hero-layers .views-field-field-hero-text h2,
.pl-hero-layers .views-field-field-hero-text h3,
.pl-hero-layers .views-field-field-hero-text p {
	width: 80%;
}

.pl-hero-layers h3 {
	font-size: clamp(20px, 2.4vw, 28px);
	line-height: clamp(23px, 2.4vw, 32px);
}

body.page-node-283 h3 {
	color: #B5B5B5;
}

.sub-branding.branding .logo a img {
	opacity: 0;
}

body.shrink .sub-branding.branding .logo a img {
	opacity: 1;
	padding-top: 10px;
}

body.shrink .sub-branding.branding .logo a img {
	max-height: 55px;
}

.hero-vertical {
	width: 100vw;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
}

.hero.hero-vertical .views-field-field-hero-text,
.pl-hero-layers .views-field-field-hero-text {
	width: 100vw;
	max-width: 1200px;
	align-content: flex-start;
	justify-content: flex-start;
}

.hero.hero-vertical .views-field-field-hero-text .field-content {
	display: flex;
	flex-direction: column;
	align-content: flex-start;
	justify-content: flex-start;
	width: 80%;
	max-width: 1000px;
	margin: 0 auto;
	margin-top: 0%;
	min-height: 100vh;
	padding-bottom: env(safe-area-inset-bottom, 0);
}
.hero.hero-vertical .views-field-field-display-coming-soon-banner .views-field-field-hero-text .field-content,
.hero.hero-vertical .views-field-field-display-founding-membershi .views-field-field-hero-text .field-content  {
	width: 100%;
	min-height: 100dvh;
	max-width: 1100px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	align-items: center;
	margin-top: 0;
}
@media (max-width: 600px) {
	.hero.hero-vertical .views-field-field-display-coming-soon-banner .views-field-field-hero-text .field-content,
	.hero.hero-vertical .views-field-field-display-founding-membershi .views-field-field-hero-text .field-content  {
		justify-content: flex-end;
		padding-bottom: 100px;
	}
}
.hero.hero-vertical .views-field-field-hero-photo .field-content {
	height: 100vh;
	min-height: 800px;
}

.hero.hero-vertical .views-field-field-hero-photo .field-content img {
	width: 100%;
	height: 100%;
	opacity: 1;
	object-fit: cover;
	object-position: center;
}

body.shrink .hero.hero-vertical .views-field-field-hero-photo .field-content img {
	opacity: 1;
}

.hero.hero-vertical .views-field-field-hero-text .field-content h1 {
	text-align: left;
	margin-top: auto;
	width: 100%;
	margin-bottom: 4%;
	align-self: flex-end;
}
.hero.hero-vertical .views-field-field-display-coming-soon-banner .views-field-field-hero-text .field-content h1,
.hero.hero-vertical .views-field-field-display-founding-membershi .views-field-field-hero-text .field-content h1 {
	text-align: center;
	margin-top: 20%;
}

.platform-hero-logo {
	max-width: 1000px;
	margin: 0 auto;
	margin-bottom: 20px;
	margin-top: 11%;
}

.views-field-field-hero-text .field-content p.platform-tag {
	color: #A1C523;
	font-weight: 400;
	text-transform: uppercase;
	font-size: clamp(16px, 2vw, 30px);
	line-height: clamp(16px, 2vw, 30px);
	letter-spacing: 1px;
}

.pl-layer-1 {
	padding: 10vw 20vw;
}

.deep-purple-bk {
	background: #1c0627;
}

.full-black-bk {
	background: black;
}

h1 strong,
.pl-hero-layers .layer-wrapper .views-field-field-hero-text p strong {
	color: #A1C523;
}

body:not(.path-frontpage) .pl-hero-layers .views-field-field-hero-text {
	align-content: flex-end;
	justify-content: flex-end;
	padding-bottom: clamp(50px, 7vw, 100px);
}

.layer-wrapper {
	position: relative;
}

.pl-layer-video-button {
	min-height: 20px;
}

/*** horizontal slider ***/
.slider-container {
	position: relative;
	display: flex;
	align-items: center;
}

.horizontal-slider {
	overflow-x: auto;
	scroll-behavior: smooth;
	/* Smooth scrolling */
	scrollbar-width: none;
	/* Hide scrollbar for Firefox */
	-ms-overflow-style: none;
	/* Hide scrollbar for IE/Edge */
	flex-grow: 1;
}

.horizontal-slider::-webkit-scrollbar {
	display: none;
	/* Hide scrollbar for Chrome/Safari */
}

.horizontal-slider:active {
	cursor: grabbing;
}

.horizontal-slider {
	padding: 130px 100px;
}

.horizontal-slider ul {
	display: flex;
	padding: 0;
	margin: 0;
	list-style: none;
}

.horizontal-slider ul li {
	flex-shrink: 0;
	scroll-snap-align: start;
	width: clamp(150px, 68vw, 330px);
	margin-right: 40px;
}

.horizontal-slider ul li img {
	width: 100%;
	margin-bottom: 20px;
}

.horizontal-slider p {
	font-size: clamp(20px, 2.5px, 30px);
	line-height: 128%;
	box-sizing: border-box;
	margin: 0 15px;
}

p.slide-details {
	margin: 0;
	box-sizing: border-box;
	margin: 5px 15px 0;
}

.slider-controls {
	position: absolute;
	bottom: 10px;
	right: 10px;
	display: flex;
	gap: 10px;
}

.slider-button {
	background-color: rgba(255, 255, 255, 0.15);
	border: none;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.slider-button svg {
	width: 24px;
	height: 24px;
	fill: white;
}

.slider-button:hover {
	background-color: rgba(255, 255, 255, 0.3);
}

/* end slider */
.pl-layer-4 {
	font-size: clamp(20px, 2.5px, 30px);
	line-height: 128%;
	width: 60%;
	margin: 0;
	margin-top: 10vw;
	margin-bottom: 8vw;
	padding: 60px 120px 0px;
}

@media (max-width: 1240px) {
	.pl-layer-4 {
		margin-left: 5%;
	}
}

@media (max-width: 900px) {
	.pl-layer-4 {
		width: 90%;
		margin: 0 auto;
		padding: 0;
		margin-top: 10vw;
		margin-bottom: 8vw;
	}
}

.pl-layer-5 {
	font-size: clamp(20px, 2.5px, 30px);
	line-height: 128%;
	display: flex;
	gap: 20px;
	margin-bottom: 10vw;
}

.pl-layer-5 .tripod {
	border-radius: 25px;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	background-color: black;
	padding: 70px 30px;
	box-sizing: border-box;
	min-height: 200px;
}

.pl-layer-5 p:nth-of-type(3),
.pl-layer-5 p:nth-of-type(4) {
	margin-bottom: 0;
}

p.jumbo {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: bold;
	font-size: clamp(40px, 9vw, 130px);
	line-height: clamp(40px, 6vw, 130px);
}

p.details {
	font-size: 90%;
	line-height: 124%;
}

/* platform reformer comparision table */
.pl-layer-6 {
	font-size: clamp(20px, 2.5px, 30px);
	line-height: 128%;
	width: 90%;
	margin: 0 auto;
	margin-top: 10vw;
	margin-bottom: 6vw;
	max-width: 630px;
	overflow-x: scroll;
	padding-bottom: 20px;
}

table {
	width: 100%;
	max-width: 800px;
	min-width: 500px;
	margin: 0 auto;
	border-collapse: collapse;

}

body.wiki-page table {
	border: 1px solid #444;
	margin-bottom: 10px;
	max-width: 95%;
	min-width: 500px;
	margin: 10px;
}

th,
td {
	padding: 10px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #444;
}

body.wiki-page th,
body.wiki-page td {
	padding: 10px;
	text-align: left;
	vertical-align: top;
	border: 1px solid #444;
}

tr:last-of-type td {
	border-bottom: 0 none;
}

th {
	color: #fff;
	font-size: 20px;
	padding-bottom: 15px;
	border-bottom: 2px solid #444;
}

td::before {
	font-weight: bold;
	margin-right: 8px;
	display: inline-block;
}

.checkmark::before {
	content: "✓";
	color: #fff;
}

.crossmark::before {
	content: "✗";
	color: #fff;
}

.highlight {
	color: #d2ff42;
}

/*  end table */
.pl-layer-7 {
	margin-bottom: 10vw;
}

.pl-layer-9 {
	width: 100%;
	padding: 9vw;
	margin-bottom: 20px;
}

@media (max-width: 1240px) {
	body.page-node-283 .pl-layer-9:last-of-type {
		margin-bottom: 0;
	}
}

.logo-array {
	margin-top: 100px;
	margin-bottom: 50px;
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	flex-wrap: wrap;
	align-items: center;
}

.logo-array img {
	max-width: 220px;
}




@media (max-width: 1240px) {
	.pl-layer-5 {
		width: 90%;
		margin: 0 auto;
		margin-bottom: 100px;
	}
}

@media (max-width: 800px) {
	.logo-array img {
			max-width: 140px;
		}
	p.jumbo {
		font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 700;
		font-size: 90px;
		line-height: 80px;
	}

	.pl-layer-5 {
		display: block;
	}

	.pl-layer-5 .tripod {
		display: block;
		width: 90%;
		margin-top: 20px;
		margin-bottom: 10px;
	}
}

@media (max-width: 768px) {
	.hero.hero-vertical .views-field-field-hero-text .field-content {
		min-height: 100vh;
			min-height: 100dvh;
			padding-bottom: env(safe-area-inset-bottom, 0);
	}

	.hero.hero-vertical .views-field-field-hero-photo .field-content {
		min-height: 100vh;
			min-height: 100dvh;
			padding-bottom: env(safe-area-inset-bottom, 0);
	}

	.hero.hero-vertical .views-field-field-hero-photo .field-content img {
		object-fit: cover;
	}

	.hero.hero-vertical .views-field-field-hero-text .field-content h1 {
		margin-bottom: 10px;
		margin-left: 20px;
	}
	.hero.hero-vertical .views-field-field-hero-text .field-content {
		margin-top: 22%;
		padding-bottom: 30%;
	}
	.views-field-field-hero-text .field-content p.platform-tag {
		margin-top: 0;
	}
	.hero.hero-vertical .views-field-field-hero-text .field-content {
		width: 100%;
	}
	.horizontal-slider {
		padding: 90px 70px;
	}
}

@media (min-width: 1200px) {
	.hero-vertical {
		border-radius: 0 0 20px 20px;
	}
	.radius20 {
		overflow: hidden;
		border-radius: 20px;
		margin-top: 20px;
	}
	.pl-layer-video-button {
		display: none;
	}
	.pl-layer-1 {
		padding: 100px 300px;
	}
}

/************** Platform page ************/
.tmp-landing-logo {
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 20px;
}

body.page-node-1 #block-views-block-hero-image-or-video-block-1 .view-content .views-row .views-field.views-field-title {
	display: none;
}

.tripod.pad10 {
	padding: 3%;
}

body.page-node-70 .tripod-wrap {
	background: black;
	overflow: hidden;
}

/***** Media Page ****/
.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#block-block-58 {
	margin-top: 6vw;
	margin-bottom: 6vw;
}

.tripod {
	width: 31%;
	display: inline-block;
	vertical-align: top;
}

.bipod {
	width: 46%;
	display: inline-block;
	vertical-align: top;
	margin-right: 2%;
	margin-top: 2%;
}

@media (max-width: 1000px) {

	.bipod.tmv-intro,
	.bipod.last.phone {
		width: 100%;
	}
}

@media (max-width: 760px) {
	.bipod {
		width: 100%;
		margin-right: 0%;
		margin-top: 20px;
		margin-bottom: 40px;
	}

	.tripod {
		width: 100%;
		margin-top: 20px;
		margin-bottom: 40px;
	}
}

/****************** Locations list block ****************/
.locations-list {
	padding-bottom: 30px;
	padding-top: 30px;
}

#block-views-block-locations-list-block-2 {
	margin: 0 auto;
	width: 80vw;
	max-width: 1100px;
	font-size: 80%;
}

.locations-list .view-content {
	columns: 400px 2;
	column-gap: 10px;
}

.locations-list .view-content .views-row {
	margin-bottom: 25px;
	text-align: center;
	overflow: hidden;
}

.locations-list .view-content .views-row a {
	display: block;
	background: black;
	border-radius: 15px;
	padding: 10px 50px;
}

@media (max-width: 600px) {
	.locations-list .view-content .views-row a {
		padding: 10px;
	}
}

#block-tm2022-views-block-locations-list-block-2 .view-content .views-row .field-content a {
	background: transparent;
	border-radius: unset;
}

#block-tm2022-views-block-locations-list-block-2 .view-content .views-row {
	display: block;
	background: black;
	border-radius: 15px;
	padding: 70px 0;
}

.locations-list p {
	margin: 0;
}

.locations-list h2 {
	margin-bottom: 60px;
	text-align: center;
}

.locations-list h3 {
	margin: 0;
}


/**** Benefits pages  ****/
h1.punch {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 900;
	font-size: 6vw;
	line-height: 6vw;
	text-shadow: .3vw .3vw 0 rgba(218, 230, 26, .5);
	text-transform: uppercase;
	margin-bottom: 2vw;
}

@media (max-width: 760px) {
	h1.punch {
		font-size: 36px;
		line-height: 36px;
	}
}

#block-block-56,
#block-block-57 {
	overflow: hidden;
}

#block-block-57 {
	margin-top: 60px;
}

.app-badges-block {
 width: 100vw;
  max-width: 1200px;
  margin: 0 auto;
  background: #131313;
  padding: 30px 40px;
  margin-top: 20px;
}
.app-badges {
	margin-bottom: 60px;
}

.app-badges2 {
	text-align: center;
	margin-top: 30px;
}

.app-badges a span img,
.app-badges2 a span img {
	margin-right: 20px;
}

.app-badges2 a span img {
	text-align: center;
}

#block-bookaclassappbadges {
	padding: 2vw;
	width: 88vw;
	max-width: 88vw;
}

/*************** membership page *******************/
/* Membership styles */
h1#join {
	margin-top: 6vw;
}

vip {
	color: #652F90;
}

body.page-node-218 h2 {
	padding: 2px 12px;
	border-radius: 3px;
}

.memberships {
	margin-bottom: 8vw;
	min-height: 10vw;
	padding-left: 12vw;
	background-position: left top;
}

body.page-node-218 .memberships h2 {
	background: transparent;
	padding: 0;
	border-radius: 0;
}

.memberships .button1 {
	margin-bottom: 0;
	margin-top: 4vw;
}

.vip-header {
	background: url(images/icon-vip.png);
	background-size: 10vw;
	background-repeat: no-repeat;
}

.gold-header {
	background: url(images/icon-gold.png);
	background-size: 10vw;
	background-repeat: no-repeat;
}

.silver-header {
	background: url(images/icon-silver.png);
	background-size: 10vw;
	background-repeat: no-repeat;
}

.sampler-header {
	background: url(images/icon-sampler.png);
	background-size: 10vw;
	background-repeat: no-repeat;
}

@media (max-width: 800px) {
	.memberships {
		padding-left: 0;
		padding-top: 180px;
		background-size: 180px;
		margin: 0 auto;
		margin-top: 20px;
		background-position: center top;
		max-width: 600px;
	}

	body.page-node-218 .memberships h2 {
		background: black;
		padding: 2px 12px;
		border-radius: 3px;
		text-align: center;
	}
}

@media (max-width: 600px) {
	.memberships .button1 {
		margin: 0 auto;
		margin-top: 0px;
		margin-top: 5vw;
		display: block;
		text-align: center;
		max-width: 240px;
	}
}

/************************* licensee pages **********************/
.view-licensee-media-assets-block {
	background: #282828;
	padding: 10px;
	box-shadow: inset 0px 2px 3px black;
	border-radius: 7px;

}

.helpful-links {
	border-top: 1px solid #3e3e3e;
	margin-top: 45px;
}

.helpful-links p {
	margin: 0 0 20px;
}

.helpful-links .bipod {
	text-align: left;
}

#block-contactlistfortruemovement {
	width: 80vw;
	max-width: 80vw;
	margin: 0 auto;
	margin-bottom: 6vw;
	margin-top: 4vw;
}

@media (max-width: 1000px) {
	#block-contactlistfortruemovement {
		width: 90vw;
		max-width: 90vw;
	}
}

/************************** media downloads *********************/
#block-views-block-media-downloads-block-1 h2,
#block-views-block-media-downloads-block-2 h2,
#block-views-block-media-downloads-block-3 h2,
#block-views-block-media-downloads-block-4 h2 {
	font-size: 130%;
	max-width: 90%;
	margin: 0 auto;
	margin-top: 2vw;
	margin-bottom: 2vw;
}

#block-views-block-media-downloads-block-1 h2,
#block-views-block-media-downloads-block-2 h2 {
	text-align: center;
}

#block-views-block-media-downloads-block-1,
#block-views-block-media-downloads-block-2 {
	background: #555;
	padding: 2vw 0 4vw;
}

.media-table table {
	min-width: unset;
	margin-top: 20px;
}

.media-table {
	margin-top: 20px;
}

/************************** colors colours **********************/
.solid-purple-bk {
	background: #2b1740;
}

.black-bk {
	background: black;
}

.purple-grad {
	background: #5D0C83;
	background: -moz-linear-gradient(-45deg, #5D0C83 0%, #000000 52%, #000000 100%);
	background: -webkit-linear-gradient(-45deg, #5D0C83 0%, #000000 52%, #000000 100%);
	background: linear-gradient(135deg, #5D0C83 0%, #000000 52%, #000000 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5D0C83', endColorstr='#000000', GradientType=1);
}

.purple {
	color: #5D0C83;
}

.acid,
p.acid strong {
	color: #A1C523;
}


/************************** exceptions ****************************/
body.page-node-1 {
	background: black;
}

body.page-node-1 #block-views-block-feature-image-block-1 .views-row .views-field-title .field-content h1 {
	display: none;
}

/************************ layouts ****************************/
.text66 {
	display: inline-block;
	width: 66%;
	overflow: hidden;
	vertical-align: top;
}

.image33 {
	display: inline-block;
	width: 33%;
	overflow: hidden;
	vertical-align: top;
}

.image30 {
	display: inline-block;
	width: 30%;
	overflow: hidden;
	vertical-align: top;
}

.padleft {
	padding-left: 30px;
}

.padright {
	padding-right: 30px;
}

@media (max-width: 1000px) {

	.text66,
	.image33,
	.image30 {
		width: 100%;
	}

	.padleft,
	.padright {
		padding: 0;
	}
}

.acid-border-btm {
	border-bottom: 2px solid #A1C523;
	padding-bottom: 30px;
}
.acid-border {
	border: 2px solid #A1C523;
}

.acid-border-top {
	border-top: 2px solid #A1C523;
	padding-top: 30px;
}

.section {
	overflow: hidden;
}

@media (max-width: 1000px) {

	.text66,
	.image33 {
		width: 100%;
	}

	.padleft,
	.padright {
		padding: 0;
	}

	.acid-border-btm {
		border-bottom: 0 none;
		padding-bottom: 0;
	}

	.section {
		padding-top: 10px;
	}
}

/************************* spacers ********************************/
.padding-2vw {
	padding: 2vw;
}

.spacer40px {
	padding: 0 0 40px;
	display: block;
	overflow: hidden;
	width: 100%;
}

.spacertop40px {
	padding: 40px 0;
	display: block;
}

.spacer50px {
	padding: 50px 0;
	display: block;
}

.spacertop50px {
	padding: 50px 0 10px;
	display: block;
}

.spacer60px {
	height: 60px;
}

.spacer100px {
	height: 100px;
}

/* flexible spacers */
.spacer1vw {
	width: 100%;
	height: 1vw;
	display: block;
}

.spacer3vw {
	width: 100%;
	height: 3vw;
	display: block;
}

.spacer6vw {
	width: 100%;
	height: 6vw;
	display: block;
}

/*
	<div class="spacer60px">&nbsp;</div>

*/
/********** login page *******/
body.path-user,
body.path-tfa {
	font-size: 20px;
	line-height: 22px;
}

body.path-user ul.tabs.primary,
body.path-tfa ul.tabs.primary {
	text-align: center;
}

body.path-user ul.tabs.primary li.is-active a.is-active {
	border: 0 none;
	border-bottom: 1px solid #A1C523;
}

body.path-user form#user-login-form .description,
body.path-tfa form#user-login-form .description {
	padding: 10px 0 !important;
}

/************** maintenance mode ****************/
body.maintenance-page header {
	text-align: center;
	margin: 0 auto;
	margin-bottom: 30px;
}

body.maintenance-page header a img {
	max-width: 360px;
}

body.maintenance-page header h1 {
	font-weight: 700;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

body.maintenance-page header h1 a {
	color: white;
}

body.maintenance-page main h1 {
	text-align: center;
	margin-bottom: 10px;
}

body.maintenance-page main {
	margin: 0 auto;
	text-align: center;
	max-width: 700px;
}

@media (max-width: 740px) {

	body.maintenance-page header,
	body.maintenance-page main {
		max-width: 80vw;
	}

	body.maintenance-page header a img {
		max-width: 300px;
	}
}

/**** list styles *****/
ol li ol {
	list-style-type: lower-alpha;
}

ol li ol li ol li {
	list-style-type: lower-roman;
}

body.path-user #block-tabs ul.tabs.primary li {
	list-style: none;
}

/******* vod button tiles *****/
.button-tile {
	background: rgb(99, 120, 21);
	background: linear-gradient(318deg, rgba(99, 120, 21, 1) 0%, rgba(162, 197, 34, 1) 100%);
	width: 33%;
	display: inline-block;
	text-align: center;
	padding: 80px 20px;
	border-radius: 4px;
}

.button-tile-wrap {
	text-align: center;
	margin: 60px 0;
}

a.button-tile {
	color: white;
	font-weight: 900;
}

a.button-tile:hover {
	color: white;
}

@media (max-width: 900px) {
	.button-tile {
		max-width: 300px;
		display: block;
		width: 100%;
		margin: 0 auto;
		margin-top: 5px;
		padding: 80px 20px;
	}
}

/*********************************** promo pages ***********/
body.page-node-203 .hero .views-row .views-field.views-field-title span.field-content h1,
body.page-node-219 .hero .views-row .views-field.views-field-title span.field-content h1,
body.page-node-215 .logo,
body.page-node-215 .layout-container #block-main .sf-accordion-toggle.sf-style-black,
body.page-node-215 .layout-container #footer-cent {
	display: none;
}

.promo-header-text {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	max-width: 100%;
	z-index: 9;
	top: 25vh;
}

img.promo-logo {
	max-width: 27vw;
}

.promo-header-text .promo-text {
	text-align: right;
}

@media (max-width: 1000px) {
	img.promo-logo {
		max-width: 300px;
	}

	.promo-header-text {
		position: unset;
		margin-top: 6vw;
		padding: 50px 0;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#5D0C83+0,000000+25 */
		background: linear-gradient(45deg, #5D0C83 0%, #000000 25%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
}

.promo-text h1,
h1.promo {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: 6vw;
	line-height: 5.3vw;
	max-width: 90vw;
}

body.page-node-215 h2.promo {
	font-weight: 500
}

.promo-text h3,
h3.promo {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400;
	max-width: 90vw;
	margin: 0 auto;
	margin-bottom: 2vw;
	padding-left: 13vw;
}

h4.promo {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

body.page-node-215 .bipod div img {
	padding-left: 5%;
	width: 90%;
	max-width: 550px;
	padding-top: 10%;
}

a.icon.insta {
	display: inline-block;
	width: 3vw;
	height: 3vw;
	min-width: 50px;
	min-height: 50px;
	font-size: 0;
	background: url(/themes/custom/tm2022/css/images/icon_instagram.png);
	background-repeat: no-repeat;
}

form#bb_form_inner {
	margin: 0 auto;
}

.promo-text p {
	max-width: 90vw;
	margin: 0 auto;
}

input#bb_opt_in_email,
input#bb_opt_in_sms {
	display: inline-block;
	max-width: 26px;
	margin-right: 20px;
	vertical-align: bottom;
}

a.button.promo,
.views-field-field-hero-text .field-content p a.button.promo,
button#bb_submit {
	font-weight: 600;
	font-size: 2vw;
	border-radius: 3vw;
	background: #A1C523;
	color: black;
	padding: 1vw 2vw;
	text-transform: uppercase;
	margin: 3vw 0;
	text-align: center;
	letter-spacing: 1px;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	border: 0 none;
	text-shadow: none;
}
.views-field-field-hero-text .field-content p a.button.promo {
	font-weight: 700;
	font-size: 20px;
	border-radius: 50px;
	padding: 10px 40px;
	line-height: 38px;
	border: 1px solid black;
}
.views-field-field-hero-text .field-content p.founding a.button.promo {
	min-width: 250px;
}
.views-field-field-hero-text p.founding {
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
}
@media (max-width: 580px) {
	.views-field-field-hero-text p.founding {
		margin-top: 20px;
		flex-direction: column;
		justify-content: space-evenly;
	}
}
a.button.promo.purple {
	background: #5D0C83;
	color: white;
}

.highlight-banner {
	width: 70vw;
	margin-right: 30vw;
	border-radius: 0 2vw 2vw 0;
	padding: 1vw 2vw 1vw 2vw;
	background: #A1C523;
	margin-top: 8vw;
}

@media (max-width: 1000px) {
	.highlight-banner {
		width: 95vw;
		margin-top: 0;
		border-radius: 0 25px 25px 0;
		padding: 15px 25px;
	}
}

.highlight-banner h1,
.highlight-banner h3 {
	color: black;
	margin: 0;
}

.highlight-banner h2 {
	color: black;
}

.highlight-banner h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: 6vw;
	line-height: 5.3vw;
}

.star-ratings {
	background: black url(/themes/custom/tm2022/css/images/icons-stars.svg);
	background-repeat: no-repeat;
	background-position: center 5vw;
	background-size: 10vw;
	border: 1px solid #000;
	min-height: 21vw;
	border-radius: 2vw;
	padding: 8vw 1vw 1vw;
	font-size: 80%;
	line-height: 130%;
	color: white;
	position: relative;
}

.star-ratings.one,
.star-ratings.two {
	margin-right: 1vw;
}

.avatar {
	background: black url(/themes/custom/tm2022/css/images/icons-avatar.svg);
	background-repeat: no-repeat;
	background-position: center 1.6vw;
	background-size: 7vw;
	position: absolute;
	height: 8vw;
	width: 8vw;
	top: -5vw;
	margin-left: 29%;
	border: 1px solid #000;
	overflow: hidden;
	border-radius: 50%;
}

@media (max-width: 1000px) {
	.star-ratings {
		background: black url(/themes/custom/tm2022/css/images/icons-stars.svg);
		background-repeat: no-repeat;
		background-position: center 31px;
		background-size: 90px;
		border: 1px solid #000;
		min-height: 260px;
		border-radius: 10px;
		padding: 60px 10px 20px;
	}
}

@media (max-width: 760px) {
	.avatar {
		background-size: 50px;
		background-position: center 14px;
		height: 60px;
		width: 60px;
		position: unset;
		margin: 0 auto;
		margin-top: -100px;
		margin-bottom: 30px;
	}

	.star-ratings {
		background-repeat: no-repeat;
		background-position: center 31px;
		background-size: 90px;
		border: 1px solid #000;
		border-radius: 10px;
		padding: 70px 10px 20px;
		min-height: unset;
	}

	.star-ratings.one,
	.star-ratings.two {
		margin-right: 0;
	}

}

.sidebyside {
	margin: 7vw 0;
	overflow: hidden;
}

.sidebyside.image-text {
	font-weight: 700;
	color: white;
}

.sidebyside.image-text img,
.sidebyside.image-text .video {
	max-width: 40%;
	margin-right: 1%;
	vertical-align: top;
}

.sidebyside.image-text .copy {
	display: inline-block;
	max-width: 59%;
	margin-right: 0;
	vertical-align: top;
}

.sidebyside.image-text .video {
	display: inline-block;
	margin-right: 1%;
	vertical-align: top;
	width: 40%;
	margin: 0;
	padding: 0;
}

@media (max-width: 800px) {
	.sidebyside.image-text .video {
		display: block;
		margin-right: 0;
		vertical-align: top;
		width: 100%;
		max-width: 100%;
		margin-bottom: 60px;
	}

	.sidebyside.image-text .copy {
		display: block;
		max-width: 100%;
	}
}

.sidebyside.image-text ul {
	overflow: hidden;
}

.sidebyside.image-text ul li {
	list-style: none;
	padding-left: 5vw;
	padding-bottom: 2vw;
	vertical-align: top;
	display: inline-block;
	background-image: url(/themes/custom/tm2022/css/images/icons-checkmark.svg);
	background-repeat: no-repeat;
	background-size: 4vw;
	background-position: left top;
}

h2.faq-title {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: 5vw;
	color: #A1C523;
	width: 100%;
	margin-bottom: 3vw;
	line-height: 5vw;
	margin-top: 8vw;
}

.promo-faq {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
}

.faq-questions {
	font-weight: bold;
	color: white;
	width: 45%;
	display: inline-block;
	vertical-align: top;
}

span.green {
	color: #A1C523;
}

.faq-questions p {
	background-image: url(/themes/custom/tm2022/css/images/icons-faq-bulletstring.svg);
	background-repeat: no-repeat;
	background-size: 2vw;
	background-position: left top;
	padding-left: 3vw;
	line-height: 2.4vw;
	padding-bottom: 2vw;
	margin-bottom: 0;
}

.faq-questions p.last {
	background-image: url(/themes/custom/tm2022/css/images/icons-faq-bullet.svg);
	background-repeat: no-repeat;
	background-size: 2vw;
	background-position: left top;
}

@media (max-width: 1000px) {
	h2.faq-title {
		font-size: 34px;
		line-height: 40px;
	}

	.highlight-banner h1 {
		font-size: 44px;
		line-height: 44px;
	}

	.faq-questions p {
		line-height: 34px;
	}

	.promo-text h1 {
		font-size: 8vw;
		line-height: 7.3vw;
	}

	.promo-text h3 {
		margin-bottom: 30px;
		padding-left: 13vw;
	}

	a.button.promo,
	button#bb_submit {
		font-size: 26px;
		padding: 10px 20px !important;
		border-radius: 30px;
		display: inline-block;
		margin: 20px 0 30px;
	}
}

@media (max-width: 760px) {
	.promo-text h1 {
		font-size: 46px;
		line-height: 46px;
	}

	.sidebyside.image-text img {
		max-width: 80vw;
		margin: 0 auto;
		margin-bottom: 40px;
		float: unset;
	}

	.sidebyside.image-text ul {
		width: 100%;
	}

	.sidebyside.image-text p {
		text-align: center;
	}

	.sidebyside.image-text ul li {
		padding-left: 50px;
		padding-bottom: 20px;
		background-size: 40px;
	}

	.promo-faq {
		display: block;
	}

	.faq-questions {
		width: 100%;
	}

	.faq-questions p {
		background-image: url(/themes/custom/tm2022/css/images/icons-faq-bulletstring.svg);
		background-repeat: no-repeat;
		background-size: 30px;
		background-position: left top;
		padding-left: 40px;
		padding-bottom: 20px;
		margin-bottom: 0;
	}

	.faq-questions p.last {
		background-image: url(/themes/custom/tm2022/css/images/icons-faq-bullet.svg);
		background-repeat: no-repeat;
		background-size: 30px;
		background-position: left top;
	}
}

#alert.success {
	background: #A1C523;
	color: black;
	font-weight: bold;
	text-align: center;
}

/**************** virtual ***************/
body.page-node-317 #block-main {
	display: none;
}

#vid-frame-container {
	position: relative;
	width: 516px;
	height: 802px;
	overflow: hidden;
	display: block;
	padding-top: 5px;
}

#vid-frame {
	display: block;
	width: 380px;
	height: 794px;
	margin-left: -37px;
}

#vid-frame-mask {
	border-radius: 57px;
	overflow: hidden;
	display: block;
	width: 374px;
	margin-left: 76px;
}

#vid-frame-container::after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(/themes/custom/tm2022/css/images/tmv-phone-frame-empty.png) no-repeat;
	background-position: center center;
	background-size: contain;
	z-index: 1;
}

#form-container {
	max-width: 500px;
}

@media (max-width: 1088px) {
	.bipod.tmv-intro {
		margin: 0 auto;
		text-align: center;
	}

	#form-container {
		margin: 0 auto;
	}

	#vid-frame-container {
		position: relative;
		width: 286px;
		height: 642px;
		overflow: hidden;
		display: block;
		padding-top: 33px;
		margin: 0 auto;
	}

	#vid-frame-mask {
		border-radius: 36px;
		overflow: hidden;
		display: block;
		width: 270px;
		margin-left: 8px;
		height: 580px;
	}

	#vid-frame {
		display: block;
		width: 297px;
		height: 710px;
		margin-left: -25px;
	}

	#vid-frame iframe {
		width: 322px !important;
		height: 577px !important;
	}
}

#block-tm2022-tmvbanner {
	border-top: 2px solid #A1C523;
}

.tmv-logo img {
	max-width: 450px;
	width: 100%;
}

h3.purple {
	color: #5D0C83;
}

h5.promo {
	color: #A1C523;
	text-transform: uppercase;
}

h2.promo {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	margin-top: 0;
}

p.app-badges.virtual-app-badges a {
	display: inline-block;
	margin-bottom: 10px;
}

@media (max-width: 1000px) {
	h1.promo {
		font-size: 34px;
	}

	h1.promo span.virtu {
		font-size: 80px;
		line-height: 58px;
	}
}

/***** remove responsive menu and footer from promo page *******/

body.page-node-205 .layout-container #block-main .sf-accordion-toggle.sf-style-black,
body.page-node-205 #footer-cent,
body.page-node-205 .logo,
body.page-node-207 .logo,
body.page-node-208 .layout-container #block-main .sf-accordion-toggle.sf-style-black,
body.page-node-208 #footer-cent,
body.page-node-208 .logo,
body.page-node-210 .layout-container #block-main .sf-accordion-toggle.sf-style-black,
body.page-node-210 #footer-cent,
body.page-node-210 .logo,
body.page-node-281 .layout-container #block-main .sf-accordion-toggle.sf-style-black,
body.page-node-281 #footer-cent,
body.page-node-281 .logo {
	display: none;
}

body.page-node-205 .layout-container main .layout-content,
body.page-node-207 .layout-container main .layout-content,
body.page-node-208 .layout-container main .layout-content,
body.page-node-281 .layout-container main .layout-content {
	margin-top: 5vw;
}


/*************** TM Virtual landing page *******/
img.phonefade {
	max-width: 600px;
	width: 100%;
}

p.appstrbadge {
	margin-top: -5vw;
	padding-right: 20px;
}


ul.acid-tri {
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.acid-tri li {
	padding: 0 0 0 1.6vw;
	background: url(/themes/custom/tm2022/css/images/acid-gr-bulllet.png) no-repeat;
	background-size: .6vw;
	background-position: left 0.8vw;
	line-height: 2.5vw;
}

.section.target-pain {
	background: url(/themes/custom/tm2022/css/images/target-bkgd.jpg) no-repeat;
	background-size: cover;
	padding: 2vw 6vw 3vw;
  margin-top: 4vw;
	padding-bottom: 7vw;
}

.section.apptour,
.section.unlocking,
.section.tmv-testimonial {
	background: black;
	padding-top: 3vw;
	padding-bottom: 6vw;
}
.section.tmv-testimonial {
	padding-bottom: 0;
}
h4.check-back {
	color: #A2C522;
}
.section.apptour,
.section.unlocking {
	margin-bottom: 20px;
}
.section.apptour h2,
.section.apptour p,
.section.unlocking p,
.section.unlocking h2,
.section.benefits,
.section.tmv-testimonial h1,
.section.tmv-testimonial h3 {
	padding-left: 6vw;
	padding-right: 6vw;
}
.section.target-pain.acid-border-btm.acid-border-top h2.promo.acid,
.section.unlocking.radius20 .section.benefits h2 {
	padding-left: 0;
}
.section.tmv-testimonial {
	margin-top: 20px;
	border-radius: 20px 20px 0 0;
}
.section.unlocking a.button.promo.purple,
.section.apptour a.button.promo.purple {
	display: inline-block;
  max-width: 470px;
  text-align: center;
}
body.page-node-209 #content-b {
	background: black;
	border-radius: 0 0 20px 20px;
	max-width: 1200px;
	margin: 0 auto;
}
@media (max-width: 1200px) {
	.section.tmv-testimonial {
		border-radius: 0;
	}
	body.page-node-209 #content-b {
		border-radius: 0;
	}
}
body.page-node-209 #content-b  #block-views-block-testimonials-block-2.section.boxed {
	max-width: 1200px;
}
.section.benefits .bipod ul.acid-tri {
	text-align: left;
}
.section.apptour img {
	margin-top: 40px;
}
.section.apptour.radius20 h2,
.section.unlocking.radius20 h2 {
	padding-top: clamp(70px, 2vw, 100px);
	margin-top: 0;
}
.section.unlocking.radius20 {
	margin-bottom: 20px;
}
.section.tmv-form.radius20 h2#form-anchor {
		padding-top: clamp(70px, 2vw, 100px);
}
body.page-node-317 .layout-container main .layout-content {
	width: 100%;
	max-width: 100%;
	margin-top: 6vw;
}
.section.boxed {
	margin: 0 auto;
	width: 80vw;
	max-width: 80vw;
}

@media (max-width: 1000px) {
	.target-pain.acid-border-btm {
		border-bottom: 2px solid #A1C523;
		padding-bottom: 63px;
    margin-top: 60px;
	}
	.section.unlocking a.button.promo.purple, 
	.section.apptour a.button.promo.purple,
	.section.benefits a.button.promo.purple {
		font-size: 22px;
		padding: 14px 34px !important;
	}
}

@media (max-width: 1000px) {
	ul.acid-tri li {
		background-size: 5px;
		padding: 0 0 0 15px;
		background-position: left 12px;
		line-height: 30px;
	}
	.section.target-pain .bipod,
	.section.benefits .bipod {
		margin-top: 0;
		margin-bottom: 0;
	}
	.bipod.last.phone,
	.bipod.tmv-intro {
		margin: 0;
	}

}

@media (min-width: 1600px) {

	a.button.promo,
	button#bb_submit.button.promo {
		font-size: 30px;
	}

	.section.boxed {
		max-width: 1310px;
	}

	ul.acid-tri li {
		padding: 0 0 0 25px;
		background: url(/themes/custom/tm2022/css/images/acid-gr-bulllet.png) no-repeat;
		background-size: 10px;
		background-position: left 8px;
	}
	body.page-node-209 ul.acid-tri li {
		background-position: left 15px;
	}
}
body.page-node-209 ul.acid-tri li {
  background-position: left .5vw;
}
/* sign up select location form button */
#signup-locations {
	background: #A1C523;
	color: black;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: 2vw;
	line-height: 3vw;
	padding: 1vw 2vw;
	height: 5vw;
	border-radius: 4vw;
}
.select-location-promo {
	text-align: center;
}
#block-tm2022-2weekpromoheader .promo-text .select-location-promo {
	text-align: right;
}
#block-tm2022-2weekpromoheader .promo-text .select-location-promo form {
	max-width: 100%;
}
@media (max-width: 800px) {
	#signup-locations {
		font-size: 21px;
		line-height: 28px;
		padding: 10px 20px;
		height: 52px;
		border-radius: 50px;
	}
}
/* tmv testimonial inserts **/
#block-views-block-testimonials-block-2 .view-testimonials .view-content .views-row .views-field.views-field-body .field-content p,
#block-views-block-testimonials-block-2 .view-testimonials .view-content .views-row .views-field.views-field-body .field-content h3 {
	margin-left: 6vw;
	margin-right: 6vw;
}
#block-views-block-testimonials-block-2.views-element-container.tab-display.section.boxed {
	width: 100vw;
}
/***** tmv front page banner *****/
.tmv-banner {
	background: black;
	padding: 4vw 0 2.8vw 0;
}

.section.tmv-banner .section.boxed {
	max-width: 1600px;
}

.section.tmv-banner.acid-border-btm .section.boxed .bipod.first {
	width: 40%;
	padding-right: 40px;
}

.section.tmv-banner.acid-border-btm .section.boxed .bipod.last {
	width: 58%;
	padding-top: 20px;
}

.section.tmv-banner .section.boxed .bipod.first .tmv-logo img {
	max-width: 21vw;
}

.section.tmv-banner .section.boxed .bipod.first h4 {
	text-transform: uppercase;
}

@media (max-width: 1000px) {
	.section.tmv-banner.acid-border-btm .section.boxed .bipod.first {
		width: 100%;
		padding-right: 0;
		margin-right: 0;
	}

	.section.tmv-banner.acid-border-btm .section.boxed .bipod.last {
		width: 100%;
		padding-top: 20px;
	}

	.section.tmv-banner .section.boxed .bipod.first .tmv-logo img {
		max-width: 360px;
	}

	.section.tmv-banner.acid-border-btm,
	.section.apptour.acid-border-btm {
		border-bottom: 2px solid #A1C523;
	}
}

/************* testimonials *************/
body.page-node-220 #block-testimonals-tabbed-block .js-form-item label {
	color: #A1C523;
}

body.page-node-220 h1.rtecenter.hlt-band {
	margin-top: 0;
}

.tab-display .view-content .views-row {
	padding-top: clamp(30px, 4vw, 60px);
	padding-bottom: clamp(30px, 4vw, 60px);
}

.tab-display .view-content .views-row .views-field.views-field-body .field-content p {
	padding-left: 3vw;
	border-left: 4px solid #5D0C83;
	margin: 0;
	padding-bottom: 20px;
}

.tab-display .view-content .views-row .views-field.views-field-body .field-content h3 {
	padding-left: 3vw;
	border-left: 4px solid black;
	margin: 0;
}

/***************** IV Vitamin Therapy ********************/
.recovery-service-hero {}

.fp-iv-vitamin {
	background: black;
	padding: 5vw;
	background: url(/themes/custom/tm2022/css/images/iv-hero-backer.webp) no-repeat;
	background-size: cover;
	border-bottom: 2px solid #A1C523;
	text-shadow: 1px 0px 2px rgba(0, 0, 0, 0.8);
}

.logo.fp-announce {
	width: 100%;
	text-align: center;
}

.logo.fp-announce img {
	max-width: 800px;
	width: clamp(330px, 30vw, 800px);
}

.fp-iv-vitamin h1.acid {
	text-align: center;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-weight: 700;
}

.fp-iv-vitamin h2.iv {
	text-align: center;
	font-weight: 300;
}

.bullet-box {
	margin: 0 auto;
	text-align: center;
}

.fp-iv-vitamin .bullet-box .bipod.iv {
	width: unset;
}

.fp-iv-vitamin .bullet-box .bipod.iv ul.plus-bullet li h2 {
	font-weight: 300;
}

.fp-iv-vitamin .bullet-box .bipod.iv ul.plus-bullet {
	padding: 0;
	text-align: left;
	column-count: 2;
	column-gap: 2vw;
}

.fp-iv-vitamin .bullet-box .bipod.iv.last ul.plus-bullet {
	padding: 0 0 0 3vw;
	margin-left: 2vw;
}

.fp-iv-vitamin .bullet-box .bipod.iv ul.plus-bullet li {
	position: relative;
	padding-left: 1.7em;
}

@media (max-width: 600px) {
	.logo.fp-announce img {
		max-width: 290px;
	}

	.fp-iv-vitamin h1.acid.iv {
		font-size: 1.5em;
		line-height: .8em;
	}

	.fp-iv-vitamin h2.iv {
		font-size: 1em;
	}

	.fp-iv-vitamin .bullet-box {
		flex-direction: column;
	}

	.fp-iv-vitamin .bullet-box .bipod.iv ul.plus-bullet {
		column-count: 1;
		column-gap: 0;
	}

	.fp-iv-vitamin .bullet-box .bipod.iv ul.plus-bullet li {
		margin-left: 1.5em;
	}

}


.lower-c {
	text-transform: lowercase;
}


body.page-node-255 .views-field-field-hero-photo,
body.page-node-331 .views-field-field-hero-photo,
body.page-node-613 .views-field-field-hero-photo,
body.page-node-614 .views-field-field-hero-photo {
	display: none;
}

body.page-node-255 .layout-container main .layout-content,
body.page-node-331 .layout-container main .layout-content,
body.page-node-613 .layout-container main .layout-content,
body.page-node-614 .layout-container main .layout-content {
	margin-top: 0;
	overflow: hidden;
}

body.page-node-255 #header-cent {
	display: block;
	background: url(/themes/custom/tm2022/css/images/water-droplet-drop-liquid-light-leaf-desat.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
}

.recovery-hero {
	padding: 20px 10vw 20px;
	position: inherit;
	background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
	border-bottom: 4px solid #A1C523;
	position: relative;
}

.recovery-hero.promo-header-text {
	top: 0;
}

@media (max-width: 1000px) {

	body.page-node-255 #block-tm2022-ivtherapyheadertext,
	body.page-node-331 #block-tm2022-ivtherapyheadertext,
	body.page-node-613 #block-tm2022-ivtherapyheadertext,
	body.page-node-614 #block-tm2022-ivtherapyheadertext {
		padding: 20px;
		padding-top: 50px;
	}
}

body.page-node-255 h1.yes-hero,
body.page-node-331 h1.yes-hero,
body.page-node-613 h1.yes-hero,
body.page-node-614 h1.yes-hero {
	display: none;
}

.recovery-hero.promo-header-text h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: clamp(35px, 6vw, 88px);
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 80px;
}

@media (max-width: 1000px) {

	.recovery-hero.promo-header-text,
	body.page-node-284 .promo-header-text {
		position: unset;
		margin-top: 0;
	}
}

.recovery-hero.promo-header-text p {
	color: white;
}

.recovery-hero.promo-header-text p strong {
	color: #A1C523;
}

body.page-node-255 #block-views-block-hero-image-or-video-block-1 .views-field-field-hero-photo {
	margin-bottom: 0;
	max-height: 80vw;
	overflow: hidden;
}

body.page-node-255 #block-views-block-hero-image-or-video-block-1 .views-field-field-hero-photo .field-content {
	position: relative;
	height: 80vw;
	overflow: hidden;
}

body.page-node-255 .hero .views-field-field-hero-photo .field-content img {
	position: absolute;
	top: 50%;
	left: 50%;
	height: 100%;
	width: auto;
	transform: translate(-50%, -50%);
}

body.page-node-255 .bipod {
	padding-bottom: 3vw;
}

body.page-node-255 .bipod p {
	margin-bottom: 4vw;
}

@media (max-width: 1000px) {
	body.page-node-255 .bipod p {
		margin-bottom: 40px;
	}

	body.page-node-255 .bipod {
		padding-bottom: 40px;
	}
}

.iv-badges,
.rec-service-badges {
	padding-top: 2vw;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}

@media (max-width: 1000px) {
	#block-tm2022-ivtherapyheadertext p.text-align-center {
		margin-top: 40px;
		margin-bottom: 60px;
	}

	.iv-badges {
		flex-direction: column;
	}

	.iv-badges img {
		margin-top: 30px;
		margin-bottom: 30px;
	}
}

.iv-badges img {
	max-width: 225px;
}

.nurse-p .media {
	flex-basis: 33%
}

.nurse-p .text {
	flex-basis: 66%
}

.product-title {}

h2.drip,
h2.booster {
	padding: 1vw;
	padding-left: 5vw;
	margin-top: 0;
	margin-bottom: 5vw;
	text-align: left;
}

h2.drip {
	background: url(/themes/custom/tm2022/css/images/icon-drip.webp), linear-gradient(to right, #253900 0%, #c4d502 50%, #99ca3f 100%);
	background-size: 3vw, 100%;
	background-position: 1vw center, 0 0;
	background-repeat: no-repeat, no-repeat;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.8);
}

h2.booster {
	background: url(/themes/custom/tm2022/css/images/icon-boost.webp), linear-gradient(to right, #440059 0%, #a637ba 50%, #652682 100%);
	background-size: 3vw, 100%;
	background-position: 1vw center, 0 0;
	background-repeat: no-repeat, no-repeat;
	margin-top: 0;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.8);
}

.iv-benefits {
	color: #A1C523;
	text-transform: uppercase;
	font-size: .9em;
	line-height: 1.2em;
	margin-bottom: .5vw;
}

.iv-products {
	background: black;
	overflow: hidden;
}

.iv-products h3 {
	margin-bottom: .5vw;
	font-weight: 400;
}

.iv-products .views-row {
	margin-bottom: 2vw;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	align-content: space-between;
}

.iv-products.booster-block .views-row {
	padding-left: 3vw;
}

.iv-products .views-row.last {
	margin-bottom: 0;
	padding-bottom: 5vw;
}

@media (max-width: 1000px) {
	.iv-products .views-row {
		flex-direction: column;
		padding-left: 0;
	}

	h2.drip,
	h2.booster {
		padding-left: 50px;
		background-size: 30px, 100%;
		background-position: 10px center, 0 0;
	}

	.iv-products.booster-block .views-row {
		padding-left: 0;
	}

	.views-field-field-product-image .field-content img {
		max-width: 100%;
		min-width: 200px;
	}
}

.iv-products .views-row .views-field.views-field-nothing span.field-content {
	padding: 20px;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 50%;
	align-self: center;
}

.iv-description {
	font-size: .8em;
	line-height: 1.4em;
}

.views-field-field-product-image {
	max-width: 20%;
}

.iv-products.booster-block .views-field-field-product-image {
	max-width: 40%;
}

.iv-products.booster-block .views-field-field-product-image-1 {
	width: 100%;
	max-width: 390px;
}

.views-field-field-product-image .field-content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	align-content: center;
}

.iv-products.booster-block .views-field-field-product-image .field-content {
	flex-direction: row;
	justify-content: flex-end;
}

.views-field-field-product-image .field-content img {
	max-width: 70%;
	align-self: center;
}

.booster-block .views-field-field-product-image .field-content img,
.booster-block .views-field-field-product-image-1 .field-content img {
	max-width: 60%;
}

.iv-products .views-field-nothing {
	flex-shrink: 4;
}

@media (max-width: 1000px) {
	.iv-products .views-field-nothing {
		flex-shrink: 1;
		padding: 0 20px;
		max-width: 500px;
		width: 100%;
	}

	.booster-block .views-field-field-product-image {
		display: none;
	}

	.booster-block .views-field-field-product-image-1 .field-content {
		text-align: right;
	}
}

@media (min-width: 1001px) {
	.booster-block .views-field-field-product-image-1 {
		display: none;
	}
}

/************** IV THERAPY FAQ ***************/
h1.iv {
	margin-bottom: 0;
	line-height: clamp(29px, 5vw, 69px);
}

h1.how {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: clamp(30px, 5vw, 80px);
	line-height: clamp(30px, 5vw, 80px);
	font-weight: 700;
	margin: 0;
}

h2.iv {
	margin-top: 5px;
	padding-top: 0;
	font-size: clamp(30px, 4vw, 32px);
	text-transform: uppercase;
	font-weight: 400;
	letter-spacing: 10px;
}

.bipod.iv {
	padding: 0;
	margin: 0;
	padding-top: 2vw;
}

ul.plus-bullet {
	list-style: none;
	padding: 0 0 0 3vw;
	margin: 0;
}

ul.plus-bullet li {
	position: relative;
	padding-left: clamp(30px, 4vw, 50px);
	padding-bottom: clamp(10px, 1vw, 30px);
}

@media (max-width: 1000px) {
	body.page-node-255 .bipod.iv {
		padding-bottom: 0;
		padding-top: 0;
	}

	body.page-node-255 .bipod.iv.last {
		padding-bottom: 30px;
		padding-top: 0;
	}
}

ul.plus-bullet li::before {
	content: url(/themes/custom/tm2022/css/images/bullet-plus.svg);
	position: absolute;
	left: 0;
	top: clamp(7px, .5vw, 20px);
	width: clamp(22px, 2.12vw, 35px);
	height: clamp(28px, 2.1vw, 62px);
}

ul.plus-bullet li h2 {
	margin: 0;
	font-weight: 200;
}

.ui-accordion-header {
	font-family: 'Lato', 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.iv-faq,
.offer-faq {
	background: black;
	padding: 4vw 10vw;
}
.offer-faq {
	border-radius:  20px;
	margin: 20px;
	padding: 40px;
}

#block-tm2022-ivtherapyfaqreferences {
	padding: 8vw 10vw;
	overflow: hidden;
}

.iv-faq .ui-accordion.ui-widget .views-row .views-row,
.offer-faq.ui-accordion.ui-widget .views-row .views-row {
	border-bottom: 1px solid #3d3d3d;
	padding: 2vw 0;
}

.iv-faq .ui-accordion.ui-widget .views-row:last-child,
.offer-faq.ui-accordion.ui-widget .views-row .views-row:last-child {
	border-bottom: none;
}

.ui-accordion-header .field-content a::after,
.offer-faq .ui-accordion-header span::after {
	content: "";
	width: 1.2vw;
	height: 1.2vw;
	display: inline-block;
	background: url(/themes/custom/tm2022/css/images/acord-arrow.svg);
	background-repeat: no-repeat;
	background-size: 1.2vw;
	background-position: -.1vw center;
	margin-left: 1.2vw;
	transform: rotate(-90deg);
	transition: transform 0.2s linear;
}
.offer-faq .ui-accordion-header span::after {
	content: "";
	width: 13px;
	height: 13px;
	display: inline-block;
	background: url(/themes/custom/tm2022/css/images/acord-arrow.svg);
	background-repeat: no-repeat;
	background-size: 13px;
		background-position: center center;
		margin-left: 15px;
	transform: rotate(-90deg);
	transition: transform 0.2s linear;
}
.offer-faq .ui-accordion-header.ui-accordion-header-active span::after {
	transform: rotate(0deg);
	transition: transform 0.2s linear;
}

@media (max-width: 1000px) {
	.ui-accordion-header .field-content a::after,
	.ui-accordion-header span,
	.offer-faq .ui-accordion-header span {
		width: 15px;
		height: 15px;
		background-size: 15px;
		background-position: center center;
	}
	.offer-faq .ui-accordion-header span {
		position: absolute;
		left: 0;
		top: 18px;
		margin-left: 0;
	}
	.offer-faq .ui-accordion-header span {
		position: unset;
	}
}

.iv-faq .ui-accordion-header .field-content a::after,
.ui-accordion-header span,
.offer-faq .ui-accordion-header span {
	filter: brightness(0) invert(.9);
}

.iv-faq h2,
.iv-faq .ui-accordion-header .field-content a,
.iv-faq .ui-widget-content,
.offer-faq .ui-accordion-header span {
	color: white;
	font-weight: 400;
}

.iv-faq h2,
.offer-faq h2 {
	font-weight: 600;
}
.offer-faq h2 {
	margin-top: 0;
}

.ui-accordion-content.ui-widget-content.ui-accordion-content-active .views-field {
	padding-top: 20px;
}

.ui-accordion-header .field-content a {
	border-bottom: 0 none;
	padding-right: 1vw;
	color: black;
	font-weight: 800;
}

@media (max-width: 1000px) {
	.ui-accordion-header .field-content a {
		display: block;
		padding: 10px 0 10px 20px;
		line-height: 1.2em;
	}

	.ui-widget-content .views-field-body .field-content p {
		margin: 0;
		max-width: 1000px;
		color: #c6c6c6;
		font-size: 1em;
		font-weight: 400;
		line-height: 1.2em;
	}
}

.ui-accordion-header-active .field-content a::after,
.offer-faq .ui-accordion-header-active .field-content span::after {
	transform: rotate(0deg);
}

.ui-accordion-header .field-content a:focus,
.offer-faq .ui-accordion-header-active .field-content span:focus {
	border-bottom: 0 none;
}

.ui-state-default,
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 0 none;
	background: transparent;
	color: black;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
	color: black;
}

.ui-widget-content {
	background: transparent;
	color: black;
	border: 0 none;
}

.ui-accordion .ui-accordion-header,
.ui-accordion .ui-accordion-content {
	padding: 0;
	line-height: 100%;
}

.ui-widget {
	font-family: 'Lato', 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.ui-widget-content .views-field-body .field-content p {
	margin: 0;
	max-width: 1000px;
	color: #d2d2d2;
	font-size: 1.8vw;
	line-height: 3vw;
	font-weight: 300;
}

@media (max-width: 1000px) {
	.ui-widget-content .views-field-body .field-content p {
		font-size: 1em;
		line-height: 1.6em;
	}

	.ui-accordion .ui-accordion-content {
		padding: 10px 0 20px 0;
	}
}

@media (min-width: 2000px) {
	.ui-accordion-content .views-field-body .field-content p {
		font-size: 26px;
		line-height: 40px;
	}
}

.ui-accordion-header span.field-content a {
	text-transform: none;
}

.video-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 0;
	overflow: hidden;
	filter: grayscale(100%) brightness(50%);
	background: url(/themes/custom/tm2022/css/images/hero-backer.webp) no-repeat;
	background-size: cover;
	background-position: center center;
}

.video-container iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 250vh;
	height: 130vh;
	transform: translate(-50%, -50%);
	object-fit: cover;
	border: none;
	pointer-events: none;
}

#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
	min-height: 100vh;
		min-height: 100dvh;
		padding-bottom: env(safe-area-inset-bottom, 0);
	background: transparent;
	opacity: 1;
	border-bottom: 4px solid #A1C523;
}

.layout-content {
	margin-top: 0;
}

.hero .views-row .views-field.views-field-title {
	position: absolute;
	z-index: -1;
	top: 0;
	opacity: 1;
	margin-bottom: 0;
	left: 0;
	height: 100vh;
	width: 100vw;
}

.hero {
	background: transparent;
}

.hero .views-row .views-field.views-field-title .field-content {
	display: flex;
	flex-direction: column;
	height: 100vh;
	width: 100vw;
	justify-content: center;
}

#block-tm2022-frontpagefunnel {
	position: absolute;
	bottom: 7vw;
	top: unset;
	width: 100%;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 24px;
	z-index: 9;
}

.flexbox.fpfunnel .menu-3 a {
	display: inline-block;
	padding: 1vw 3vw;
	border: 0 none;
	width: 25vw;
	max-width: 300px;
	letter-spacing: 1px;
	font-weight: 700;
	min-width: unset;
	background: #A1C523;
	color: black;
	border-radius: 7px;
	margin-bottom: 20px;
}

@media (min-width: 600px) {
	.flexbox.fpfunnel .menu-3 a::after {
		content: "\203A\203A\203A";
		font-size: 30px;
		font-weight: 300;
		letter-spacing: -5px;
		line-height: 17px;
		padding-left: 4px;
		vertical-align: top;
	}
}

.hero .views-row .views-field.views-field-title span.field-content h1 {
	font-size: 6vw;
	line-height: 5.6vw;
	margin-bottom: 0;
	font-weight: 600;
	font-family: 'Teko', sans-serif;
}
body.page-node-327 .pl-hero-layers .layer-wrapper .pl-layer-2.radius20 .secondary-hero img {
	object-fit: cover;
  display: block;
  object-position: center top;
}
.pl-hero-layers.tmv .layer-wrapper {
	margin-bottom: 20px;
}
.views-field-field-hero-text {
	position: absolute;
	z-index: 1;
	bottom: clamp(136px, 9vw, 218px);
	width: 100vw;
	margin: 0 auto;
}

.tmv-demo {
	position: absolute;
  bottom: 0;
  top: unset;
	height: clamp(800px,90vh,980px);
  left: 0;
  z-index: 1;
  width: 32%;
  margin-left: 12%;
  padding-bottom: 172px;
  display: flex;
  flex-direction: column;
  align-content: flex-end;
  justify-content: flex-end;
}
.tmv-hero-text div.tmv-demo.slide-in-left img {
	display: block;
  width: auto;
  max-width: none;
  height: 100%;
  object-fit: contain;
  align-self: flex-end;
}
.tmv-hero-text .views-field-field-hero-text.slide-in-left img {
	max-width: 400px;
	padding-bottom: 10px;
}
.pl-hero-layers .tmv-hero-text {
	padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}
body:not(.path-frontpage) .pl-hero-layers .tmv-hero-text .views-field-field-hero-text {
	width: 40%;
	margin-left: 50%;
  align-content: center;
  justify-content: center;
	padding-top: 16vh;
  padding-bottom: 6vh;
	top: unset;
  bottom: 0;
}
.pl-hero-layers .tmv-hero-text .views-field-field-hero-text img {
	max-width: clamp(320px,33vh,380px);
  margin-bottom: 20px;
}
.tmv-hero-text .views-field-field-hero-text p {
	font-weight: 100;
	font-style: italic;
	letter-spacing: 3px;
	padding-bottom: 33px;
}
a.button1.tmv {
	padding: 15px 14px !important;
  background: rgba(0, 0, 0, 0.784);
  display: block;
  text-align: center;
  max-width: 340px;
  font-size: 80%;
  font-style: normal;
	margin-bottom: 0;
	border-radius: 7px;
}

.pl-hero-layers .layer-wrapper .tmv-hero-text .views-field-field-hero-text p,
.pl-hero-layers .layer-wrapper .tmv-hero-text .views-field-field-hero-text h1 {
  width: 100%;
}
.pl-hero-layers .layer-wrapper .tmv-hero-text .views-field-field-hero-text h1 {
	font-size: 53px !important;
  line-height: 45px;
	font-family: 'Teko', sans-serif;
	font-weight: 600;
  text-shadow: 0 1px 1px #000;
	padding-bottom: 10px;
	margin-bottom: 26px;
}
.section.tmv-form {
	background: black;
	text-align: center;
	padding: clamp(20px, 2vw, 100px);
	margin-bottom: 20px;
}
.tmv-form #form-container {
	text-align: center;
  display: block;
	margin: 0 auto;
}






body:not(.path-frontpage) .views-field-field-hero-text {
	bottom: unset;
	top: 0;
	min-height: 100vh;
		min-height: 100dvh;
		padding-bottom: env(safe-area-inset-bottom, 0);
	display: flex;
	flex-direction: column;
	align-content: center;
	justify-content: center;
	width: 100%;
}
body.page-node-type-location-page .location-hero .views-field-field-display-coming-soon-banner .field-content .views-field-field-hero-text,
body.page-node-type-location-page .location-hero .views-field-field-display-founding-membershi .field-content .views-field-field-hero-text  {
	display: block;
}
.views-field-field-hero-text .field-content {
	width: 80vw;
	max-width: 900px;
	margin-left: 10vw;
}

body.path-frontpage .views-field-field-hero-text .field-content {
	padding-bottom: clamp(20px, 3vw, 60px);
}

body:not(.path-frontpage) .views-field-field-hero-text .field-content {
	text-align: center;
	margin: 0 auto;
	max-width: 1250px;
	margin-top: 100px;
}

.views-field-field-hero-text h1,
.views-field-field-hero-text h2,
.views-field-field-hero-text h3,
.views-field-field-hero-text h4,
.views-field-field-hero-text p {
	color: #fff;
	width: unset;
}

.views-field-field-hero-text h1,
h1.hero-text,
.hero-text h1 {
	font-family: 'Teko', sans-serif;
	font-size: clamp(40px, 5vw, 80px);
	line-height: clamp(35px, 4.6vw, 70px);
	font-weight: 600;
	text-shadow: 0 1px 1px #000;
}

body:not(.path-frontpage) .views-field-field-hero-text h1,
.hero-text h1,
h1.hero-text {
	font-size: clamp(48px, 6vw, 90px);
	line-height: clamp(38px, 5vw, 80px);
}

.views-field-field-hero-text p,
.hero-text p {
	font-size: clamp(18px, 2vw, 36px);
	line-height: clamp(22px, 2.4vw, 40px);
	font-weight: 400;
	text-shadow: 0 1px 1px #000;
}
.pl-hero-layers.tmv .layer-wrapper .pl-layer-2 .tmv-hero-text .views-field-field-hero-text p {
	font-size: 32px;
	line-height: 40px;
}
.views-field-field-hero-text p,
.hero-text p {
	width: 80%;
	margin: 0 auto;
}
.hero.hero-vertical .views-field-field-display-coming-soon-banner .views-field-field-hero-text .field-content p {
	width: 90%;
}

body.path-frontpage .views-field-field-hero-text p {
	width: unset;
	margin-bottom: 40px;
}

.views-field-field-hero-text .field-content p a,
a.button3 {
	color: #A1C523;
	text-transform: uppercase;
	font-size: clamp(20px, 1.4vw, 40px);
	font-weight: bold;
	background: black;
	padding: clamp(16px, 0.8vw, 30px) clamp(28px, 2.2vw, 40px);
	border: 1px solid #A1C523;
	border-radius: 50px;
	margin-top: 40px;
	display: inline-block;
	letter-spacing: 2px;
}

a.cta-button.flipped,
p a.cta-button.flipped {
	background: #A1C523;
	border: 1px solid black;
	color: black;
	text-shadow: none;
}

@media (max-width: 1000px) {
	body:not(.path-frontpage) .views-field-field-hero-text p {
		width: 90%;
	}

	.views-field-field-hero-text {
		top: calc(50% - 120px);
	}

	.views-field-field-hero-text .field-content {
		width: 96vw;
		max-width: 600px;
		margin-left: 2vw;
	}

	.views-field-field-hero-text .field-content h1 {
		max-width: 96vw;
	}

	#location-buttons {
		background: transparent;
		text-align: center;
		width: 96vw;
		margin: 0 auto;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
		gap: 2%;
	}

	.locations-buy {
		position: absolute;
		width: 100%;
		top: unset;
		right: unset;
		bottom: 34px;
		left: 0;
	}

	body.page-node-type-location-page .locations-buy {
		position: unset;
		margin-top: 4%;
	}

	#location-buttons a {
		padding: 10px 5%;
		margin: 1% 0 4%;
		text-align: center;
		display: inline-block;
		width: 49%;
		min-width: unset;
		border-radius: 7px;
	}

	#block-tm2022-frontpagefunnel {
		position: absolute;
		top: unset;
		bottom: 100px;
	}

	.flexbox.fpfunnel {
		width: 96vw;
		display: flex;
		background: transparent;
		margin-top: 9px;
		flex-direction: row;
		justify-content: space-between;
		gap: 1px;
	}

	.flexbox.fpfunnel .menu-3 {
		margin-top: 0px;
		margin-bottom: 0px;
		margin-top: 0;
		margin-bottom: 3vw;
	}

	.flexbox.fpfunnel .menu-3 a {
		display: inline-block;
		padding: 10px .3vw 10px .2vw;
		;
		border: 0 none;
		width: 30.5vw;
		margin-top: 0;
		letter-spacing: 0;
		font-weight: 700;
		min-width: unset;
		background: #A1C523;
		color: black;
		border-radius: 7px;
		margin-bottom: 1vw;
		font-size: 15px;
	}
}

@media only screen and (max-width: 1000px) and (max-height: 600px) and (orientation: landscape) {
	#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
		height: 150vh;
		max-height: 150vh;
	}

	.video-container iframe {
		width: 231.78vh;
		height: 124vh;
	}

	#block-tm2022-frontpagefunnel {
		top: 101vh;
		bottom: unset;
	}

	.locations-buy {
		bottom: unset;
		top: 116vh;
	}

	#block-views-block-hero-image-or-video-block-1 .views-field-field-hero-video-em {
		height: 136vh;
		max-height: 136vh;
	}

	.views-field-field-hero-text {
		bottom: unset;
		top: 37vh;
	}

	#location-buttons a {
		border: 1px solid #616161;
	}
}

.mobile-front {
	display: none;
}

.desktop-front {
	display: block;
}

@media (max-width: 500px) {
	#location-buttons {
		flex-wrap: wrap;
		justify-content: space-evenly;
	}

	#location-buttons a {
		margin: 1%;
		width: 100%;
	}

	.mobile-front {
		display: block;
	}

	.desktop-front {
		display: none;
	}

	.views-field-field-hero-text {
		position: absolute;
		top: 0;
		left: 0;
		display: flex;
			width: 100%;
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: space-between;
			align-content: flex-end;
			align-items: flex-end;
			min-height: 100vh;
			min-height: 100dvh;
			padding-bottom: env(safe-area-inset-bottom, 0);
	}

	body.path-frontpage .flexbox.fpfunnel,
	body.path-frontpage #location-buttons {
		display: none;
	}

	body.path-frontpage .flexbox.fpfunnel.mobile-fix,
	body.path-frontpage #location-buttons.mobile-fix {
		display: flex;
	}
}

/********** Own a True Movement Studio Franchise page *************/
body.page-node-274 {
	background: none;
}

body.page-node-274 .layout-container main .layout-content,
body.page-node-275 .layout-container main .layout-content {
	margin-top: 0;
	width: 100vw;
	max-width: 100vw;
}

.fw-layer h2 {
	margin-top: 0
}

.fw-layer p {
	font-size: clamp(20px, 1.8vw, 34px);
	line-height: clamp(32px, 3vw, 46px);
	font-weight: 300;
}

.fw-layer {
	position: relative;
	width: 100vw;
	padding: 10vw;
}

.fw-layer.even.gradient {
	padding-left: 38vw;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+40,131313+100&0+20,1+40,1+100 */
	background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.fw-layer.fran-2.even.gradient {
	padding-left: 40vw;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+38,131313+100&0+24,1+38,1+100 */
	background: linear-gradient(to right, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 24%, rgba(19, 19, 19, 1) 38%, rgba(19, 19, 19, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.fw-layer.odd.gradient {
	padding-right: 38vw;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+60,131313+100&1+0,1+60,0+80 */
	background: linear-gradient(to right, rgba(19, 19, 19, 1) 0%, rgba(19, 19, 19, 1) 60%, rgba(19, 19, 19, 0) 80%, rgba(19, 19, 19, 0) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

@media (min-width: 2000px) {
	.fw-layer.even.gradient {
		padding-left: 38vw;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+35,131313+100&0+20,1+35,1+100 */
		background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 1) 35%, rgba(0, 0, 0, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	}

	.fw-layer.odd.gradient {
		padding-right: 38vw;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+65,131313+100&1+0,1+65,0+80 */
		background: linear-gradient(to right, rgba(19, 19, 19, 1) 0%, rgba(19, 19, 19, 1) 65%, rgba(19, 19, 19, 0) 80%, rgba(19, 19, 19, 0) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
}

.fw-layer.fran-1 {
	background: transparent;
}

.fw-layer.fran-1::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/circle-logo.svg) no-repeat;
	background-position: 42vw -17vw;
	background-size: 60vw;
	opacity: 0.3;
	z-index: -1;
}

.fw-layer.fran-1::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #131313;
	z-index: -2;
}

a.cta-button {
	color: #A1C523;
	text-transform: uppercase;
	font-size: clamp(20px, 1.4vw, 40px);
	line-height: clamp(20px, 1.4vw, 40px);
	font-weight: bold;
	background: black;
	padding: clamp(16px, 0.8vw, 30px) clamp(28px, 2.2vw, 40px);
	border: 1px solid #A1C523;
	border-radius: 50px;
	margin-top: 40px;
	display: inline-block;
	letter-spacing: 2px;
}

.cta-button .arrow-svg {
	width: clamp(20px, 1.4vw, 40px);
	height: clamp(20px, 1.4vw, 40px);
	vertical-align: top;
	margin-left: clamp(10px, .7vw, 20px);
	transition: transform 0.3s ease;
}

.cta-button:hover .arrow-svg {
	transform: translateX(5px);
}


.fw-layer.fran-2 {
	position: relative;
}

.fw-layer.fran-2::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/erin-chair.webp) no-repeat;
	background-position: left center;
	background-size: contain;
	z-index: -1;
}

.fw-layer.fran-1b {
	position: relative;
	padding: 5vw 8vw;
	border-top: 3px solid #A1C523;
	border-bottom: 3px solid #A1C523;
}

.fw-layer.fran-1b:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/franchise-2b-back.webp) no-repeat right center;
	background-size: contain;
	z-index: -1;
}

.fw-layer.fran-3 {
	position: relative;
}

.fw-layer.fran-3::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/why-truemovement.webp) no-repeat;
	background-position: right center;
	background-size: contain;
	z-index: -1;
}

.fw-layer.fran-4 {
	position: relative;
}

.fw-layer.fran-4::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/comprehensive.webp) no-repeat;
	background-position: left center;
	background-size: contain;
	z-index: -1;
}

.fw-layer.fran-4a {
	padding-right: 40%;
	background-color: rgb(19, 19, 19);
	background-image: url(/themes/custom/tm2022/css/images/studio-model.webp);
	background-repeat: no-repeat;
	background-position: 93% 64%;
	background-size: 60%;
}

.fw-layer.fran-4a img {
	max-width: 400px;
	margin-top: 20px;
	width: clamp(310px, 20vw, 400px);
}

@media (max-width: 860px) {
	.fw-layer.fran-4a {
		padding-bottom: 50%;
		background-position: 50% 89%;
		background-size: 80%;
		padding-right: 7vw;
	}
}

@media (max-width: 600px) {
	.fw-layer.fran-4a {
		padding-bottom: 50%;
		background-position: 50% 95%;
		background-size: 80%;
		padding-right: 7vw;
	}
}

@media (max-width: 1000px) {
	.fw-layer {
		padding: 7vw;
	}

	.fw-layer.gradient::after {
		background-position: top center !important;
	}

	.fw-layer.even.gradient {
		padding-top: 400px;
		background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, .9) 50%, rgba(0, 0, 0, .9) 100%);
		padding-left: 7vw;
		padding-right: 7vw;
	}

	.fw-layer.fran-1b.odd.gradient {
		padding-top: 300px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+39,131313+39,131313+100&0+21,1+39,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 21%, rgba(19, 19, 19, 1) 39%, rgba(19, 19, 19, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}

	.fw-layer.fran-1b::after {
		background-size: cover;
	}

	.fw-layer.fran-2.even.gradient {
		padding-top: 600px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+61,131313+100&0+31,1+61,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 31%, rgba(19, 19, 19, 1) 61%, rgba(19, 19, 19, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		padding-left: 7vw;
		padding-right: 7vw;
	}

	.fw-layer.odd.gradient {
		padding-top: 400px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+50,131313+100&0+35,1+50,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 35%, rgba(19, 19, 19, .9) 50%, rgba(19, 19, 19, .9) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		padding-left: 7vw;
		padding-right: 7vw;
	}

	.fw-layer p {
		font-weight: 400;
	}

	.fw-layer.fran-2::after,
	.fw-layer.fran-3::after,
	.fw-layer.fran-4::after {
		background-size: cover;
	}
}

@media (max-width: 800px) {
	.fw-layer.even.gradient {
		background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, .8) 40%, rgba(0, 0, 0, .8) 100%);
	}

	.fw-layer.fran-1b.odd.gradient {
		padding-top: 300px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+39,131313+39,131313+100&0+21,1+39,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 21%, rgba(19, 19, 19, 1) 39%, rgba(19, 19, 19, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}

	.fw-layer.fran-2.even.gradient {
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+50,131313+100&0+42,1+57,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 42%, rgba(19, 19, 19, 0.53) 50%, rgba(19, 19, 19, 1) 57%, rgba(19, 19, 19, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}

	.fw-layer.odd.gradient {
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 25%, rgba(19, 19, 19, .8) 40%, rgba(19, 19, 19, .8) 100%);
	}

	.fw-layer.fran-2::after,
	.fw-layer.fran-3::after,
	.fw-layer.fran-4::after {
		background-size: 120vw;
	}
}

@media (max-width: 600px) {
	.fw-layer.fran-2.even.gradient {
		padding-top: 400px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+50,131313+100&0+32,1+49,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 32%, rgba(19, 19, 19, 1) 49%, rgba(19, 19, 19, 1) 50%, rgba(19, 19, 19, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}

	.fw-layer.fran-1b.odd.gradient {
		padding-top: 230px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#131313+0,131313+39,131313+39,131313+100&0+21,1+39,1+100 */
		background: linear-gradient(to bottom, rgba(19, 19, 19, 0) 0%, rgba(19, 19, 19, 0) 21%, rgba(19, 19, 19, 1) 39%, rgba(19, 19, 19, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
}

ul.acid-triangle {
	padding: 0;
	list-style: none;
	font-size: clamp(20px, 1.8vw, 34px);
	line-height: clamp(32px, 3vw, 46px);
}

ul.acid-triangle li {
	position: relative;
	padding-left: 7vw;
}

ul.acid-triangle li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 13px;
	width: 17px;
	height: 20px;
	background-image: url('/themes/custom/tm2022/css/images/acid-gr-bullet.svg');
	background-size: cover;
	background-repeat: no-repeat;
}

ul.acid-circle {
	padding: 0;
	list-style: none;
	font-size: clamp(20px, 1.8vw, 34px);
	line-height: clamp(32px, 3vw, 46px);
}

ul.acid-circle li {
	position: relative;
	padding-left: 7vw;
}

ul.acid-circle li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 13px;
	width: 17px;
	height: 20px;
	background-image: url('/themes/custom/tm2022/css/images/bullet-circle.svg');
	background-size: cover;
	background-repeat: no-repeat;
}

ul.acid-aster {
	padding: 0;
	list-style: none;
	font-size: clamp(20px, 1.8vw, 34px);
	line-height: clamp(32px, 3vw, 46px);
}

ul.acid-aster li {
	position: relative;
	padding-left: 7vw;
}

ul.acid-aster li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 13px;
	width: 17px;
	height: 20px;
	background-image: url('/themes/custom/tm2022/css/images/bullet-aster.svg');
	background-size: cover;
	background-repeat: no-repeat;
}

@media (max-width: 1000px) {
	ul.acid-triangle li::before {
		top: 8px;
	}

	ul.acid-circle li::before {
		top: 8px;
	}

	ul.acid-aster li::before {
		top: 8px;
	}
}

ul.acid-triangle li {
	padding-left: 27px;
	margin-bottom: 18px;
}

ul.acid-aster li {
	padding-left: 27px;
	margin-bottom: 18px;
}

ul.acid-circle li {
	padding-left: 27px;
	margin-bottom: 18px;
}

.fw-layer.title {
	background: black;
	text-align: center;
}

.fw-layer.title p {
	max-width: 800px;
	margin: 0 auto;
}

.fw-layer.fran-5,
.fw-layer.fran-7 {
	background: #1E1E1E;
}

.text-testimonial p {
	max-width: 900px;
	margin: 0 auto;
}

.fw-layer p {
	margin-bottom: 20px;
}

.fw-layer.fran-6 {
	background: black;
}

/* bubble shout out */
.bubble-block {
	position: absolute;
	top: 15vh;
	right: 0;
	width: 21vw;
	max-width: 280px;
	min-width: 100px;
	z-index: 1;
}

/* Franchise video learn more page *****/

.video-frame {
	padding: 10vw;
	background: #1E1E1E;
}

.video-frame.black {
	background: black;
}

.cta-frame-blk {
	width: 100%;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	background-color: black;
	padding: clamp(20px, 4vw, 50px) clamp(30px, 6vw, 100px);
	box-sizing: border-box;
}

.text-frame-1 {
	width: 100%;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	padding: clamp(20px, 4vw, 50px) clamp(30px, 6vw, 100px);
	box-sizing: border-box;
	margin-bottom: 20px;
	margin-top: 20px;
}

.pl-hero-layers .landscape .views-field-field-hero-text {
	max-width: 100%;
}

@media (max-width: 1000px) {
	.pl-hero-layers .layer-wrapper .landscape .views-field-field-hero-text {
		position: unset;
		padding-top: 10vw;
	}
}

/***** Press Coverage page ****/
body.page-node-321 {
	background: black;
}

.presslogo-ticker {
	width: 100vw;
	margin-top: 9vw;
	border-bottom: 1px solid #A1C523;
	overflow: hidden;
}

.presslogo-ticker .views-field-field-press-logo {
	max-width: 200px;
	aspect-ratio: 1.5 / 1;
	opacity: .8;
}

.presslogo-ticker .views-field-field-press-logo .field-content {
	display: flex;
	flex-direction: row;
	align-items: center;
	align-content: center;
	height: 100%;
	width: 100%;
}

.presslogo-ticker .views-row {
	display: inline-block;
	white-space: nowrap;
	margin-right: 50px;
}

.presslogo-ticker .view-content {
	display: flex;
	flex-wrap: nowrap;
	white-space: nowrap;
	animation: ticker-scroll 10s linear infinite;
	width: max-content;
	will-change: transform;
}

@media (max-width: 1000px) {
	.presslogo-ticker .view-content {
		animation: ticker-scroll 16s linear infinite;
	}
}

.presslogo-ticker .views-row {
	display: inline-block;
	padding-right: 100px;
	white-space: nowrap;
}

@keyframes ticker-scroll {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-50%);
	}
}

/**** press coverage page *****/
body.page-node-321 .hero-text {
	max-width: 900px;
	margin: 0 auto;
}

body.page-node-321 .layout-container main .layout-content {
	margin-top: 100px;
}

.press {
	max-width: 100%;
	width: 900px;
	margin: 0 auto;
	margin-top: 100px;
}

.press .views-row {
	position: relative;
	margin-bottom: 20px;
	border-radius: 20px;
	overflow: hidden;
	background: #181818;
	height: 100%;
}

.press .views-row .views-field-field-feature-image {
	position: relative;
	z-index: 0;
}

.press .views-field-field-feature-image a {
	display: block;
	width: 100%;
	height: 100%;
}

.press .views-row .views-field-field-feature-image .field-content img {
	pointer-events: none;
}

.press .views-row .views-field-field-feature-image::before {
	content: "";
	position: absolute;
	z-index: 10;
	border-radius: 20px;
	inset: 0;
	pointer-events: none;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#181818+0,181818+100&0+0,1+84 */
	background: linear-gradient(to bottom, rgba(24, 24, 24, 0) 0%, rgba(24, 24, 24, 1) 84%, rgba(24, 24, 24, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.press .views-field-field-feature-image .field-content img {
	width: 100%;
	max-width: 100%;
}

.press-article {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-content: flex-end;
	justify-content: flex-end;
}

.press .views-field-nothing {
	position: absolute;
	z-index: 25;
	inset: 0;
	height: 100%;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.press .views-row .views-field-title {
	background: url(/themes/custom/tm2022/css/images/quote-mark.svg) no-repeat;
	background-position: top center;
	padding-top: 60px;
	background-size: clamp(36px, 1vw, 100px);
	font-weight: 500;
	font-style: italic;
	color: white;
	text-align: center;
	font-size: clamp(20px, 4vw, 50px);
	line-height: clamp(24px, 4.5vw, 50px);
	width: 80%;
	margin: 0 auto;
	margin-bottom: clamp(5px, 3vw, 20px);
	padding-bottom: 0;
}

.press .views-row .views-field-author {
	text-align: center;
	font-size: clamp(16px, 2.2vw, 24px);
	text-transform: uppercase;
	color: #A1C523;
	font-weight: 500;
	margin-bottom: 130px;
}

.press .views-row .views-field-author::before {
	content: "–";
	padding-right: 3px;
}

.press .views-row .views-field-field-press-logo {
	text-align: center;
	margin: 0 auto;
	z-index: 0;
	position: absolute;
	bottom: 3vw;
	width: 100%;
	left: 0;
}

.press .views-row .views-field-field-press-logo .field-content {
	width: clamp(170px, 30vw, 270px);
	max-width: 270px;
	margin: 0 auto;
}

@media (max-width: 1000px) {
	.presslogo-ticker {
		margin-top: 100px;
	}

	body.page-node-321 .layout-container main .layout-content {
		margin-top: 80px;
	}

	.press {
		margin-top: 50px;
	}

	.press .views-field-nothing {
		position: unset;
	}

	.press .views-row .views-field-author {
		margin-bottom: 90px;
	}

	.press .views-row {
		border-radius: 20px;
	}

	.press-article {
		padding-top: 30px;
	}

	.press .views-row .views-field-field-press-logo {
		bottom: 30px;
	}

	.press .views-row .views-field-field-feature-image::before {
		content: "";
		position: absolute;
		z-index: 10;
		border-radius: 20px 20px 0 0;
		inset: 0;
		pointer-events: none;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#181818+0,181818+100&0+0,0.75+99 */
		background: linear-gradient(to bottom, rgba(24, 24, 24, 0) 0%, rgba(24, 24, 24, 0.75) 99%, rgba(24, 24, 24, 0.75) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}

	.press .views-row .views-field-title {
		padding-top: 36px;
	}

	.presslogo-ticker .views-field-field-press-logo {
		width: 200px;
	}

	.presslogo-ticker .views-row {
		padding-right: 50px;
	}

}

/* Recovery section */
.pl-hero-layers {
	overflow: hidden;
}

body.page-node-327 {
	background-image: url(/themes/custom/tm2022/css/images/recovery-background.webp);
	background-repeat: repeat-y;
	background-position: top center;
	background-size: 100vw auto;
}

@media (max-width: 500px) {
	body.page-node-327 {
		background-image: none;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#19222d+0,000000+6,071726+16,2a222b+22,000000+29,160828+36,190828+50,000000+55,2b302d+64,000000+72,190828+80,000000+92,081a28+100 */
		background: linear-gradient(45deg, #19222d 0%, #000000 6%, #071726 16%, #2a222b 22%, #000000 29%, #160828 36%, #190828 50%, #000000 55%, #2b302d 64%, #000000 72%, #190828 80%, #000000 92%, #081a28 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
}

body.page-node-327 #centcontact {
	background: transparent;
}

.secondary-hero img {
	width: 100%;
	min-height: 100vh;
		min-height: 100dvh;
		height: 100dvh;
	object-fit: cover;
	display: block;
	object-position: top;
}
.pl-hero-layers.tmv .secondary-hero {
	position: relative;
	height: 100vh;
  height: 100dvh;
	max-height: 1200px;
	min-height: 800px;
	overflow: hidden;
	background: url(/themes/custom/tm2022/css/images/tmv-background-iphone.webp) no-repeat;
	background-size: cover;
	background-position: center center;
}
.pl-hero-layers.tmv .secondary-hero img {
	min-height: 900px;
	position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}
.layer-wrapper .hero-logo,
.location-hero .hero-logo {
	position: absolute;
	width: 100%;
	text-align: center;
}

.layer-wrapper .hero-logo img,
.location-hero  .hero-logo img {
	margin: 0 auto;
	max-width: 600px;
	width: 70%;
	margin-top: clamp(30px, 5vw, 70px);
	opacity: 1;
	transition: all 1s ease;
}

body.shrink .layer-wrapper .hero-logo img {
	opacity: 0;
	margin-top: 0;
}
@media (max-width: 1200px) {
	a.button1.tmv {
		margin-bottom: 2vw;
	}
	.tmv-demo {
		padding-bottom: 14.5vw;
	}
	.pl-hero-layers.tmv .layer-wrapper .pl-layer-2 .tmv-hero-text .views-field-field-hero-text p {
		font-size: 2.8vw;
    line-height: 3.8vw;
	}
	.pl-hero-layers .layer-wrapper .tmv-hero-text .views-field-field-hero-text h1 {
		font-size: 44px !important;
		line-height: 39px;
	}
}

@media (max-width: 1000px) {
	a.button1.tmv {
		margin-bottom: 2vw;
		padding: 10px 10px !important;
		max-width: 240px;
	}
	.tmv-demo {
		padding-bottom: 130px;
	}
	.pl-hero-layers .tmv-hero-text .views-field-field-hero-text img {
		max-width: 37vw;
	}
	.pl-hero-layers .layer-wrapper .tmv-hero-text .views-field-field-hero-text h1 {
			font-size: 4.5vw !important;
			line-height: 4.2vw;
		}
	.pl-hero-layers.tmv .layer-wrapper .pl-layer-2 .tmv-hero-text .views-field-field-hero-text p {
		font-size: 3vw;
		line-height: 4vw;
	}
	.pl-hero-layers.tmv .secondary-hero img {
		object-fit: cover;
	}
	.tmv-demo {
		height: calc(500px + 32vw);
	}
}

@media (max-width: 800px) { 
	.pl-hero-layers .tmv-hero-text {
		height: 100vh;
		height: 100dvh;
	}
	.pl-hero-layers.tmv .secondary-hero { 
		background: none;
	}
	body:not(.path-frontpage) .pl-hero-layers .tmv-hero-text .views-field-field-hero-text {
		height: 100vh;
    height: 100dvh;
    margin-left: 0;
    width: 100%;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    background: url(/themes/custom/tm2022/css/images/tmv-background-iphone-sm.webp) no-repeat;
    background-size: cover;
    padding-left: 15%;
		padding-top: 50px;
		padding-bottom: env(safe-area-inset-bottom);
	}
	.pl-hero-layers.tmv .secondary-hero {
		display: none;
	}
	.tmv-demo {
    display: none;
  }
	.pl-hero-layers .tmv-hero-text .views-field-field-hero-text img {
		max-width: 85%;
		margin-bottom: 20px;
	}
	body.page-node-209 ul.acid-tri li {
		background-position: left 1.9vw;
	}
	.pl-hero-layers .layer-wrapper .tmv-hero-text .views-field-field-hero-text h1 {
    font-size: 8vw !important;
    line-height: 8vw;
		margin-top: auto;
  }
	.pl-hero-layers.tmv .layer-wrapper .pl-layer-2 .tmv-hero-text .views-field-field-hero-text p {
    font-size: 5vw;
    line-height: 7vw;
    letter-spacing: 2px;
		padding-bottom: 20px;
  }
	a.button1.tmv {
    margin-bottom: 40px;
    padding: 10px 10px !important;
    max-width: unset;
    display: inline-block;
    width: 85%;
  }

}
/**************** recovery services block *******************/
#block-tm2022-views-block-recovery-services-block-block-1 {
	max-width: 1200px;
}

#block-tm2022-views-block-recovery-services-block-block-1 .views-row {
	width: 100%;
	border-radius: 20px;
	overflow: hidden;
	padding: 12px 12px 12px 30px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin-bottom: 20px;
}

.views-field-field-service-image {
	max-width: 400px;
	border-radius: 0 20px 20px 0;
	overflow: hidden;
	display: inline-block;
}

.recov-prod-info {
	border-radius: 20px;
	overflow: hidden;
	padding: 8px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-content: center;
	max-width: 50%;
}

.halosauna.views-row {
	background: url(/themes/custom/tm2022/css/images/back-tex-sauna.webp) no-repeat;
	background-size: cover;
}

.vitamin.views-row {
	background: url(/themes/custom/tm2022/css/images/back-tex-vitamin.webp) no-repeat;
	background-size: cover;
}

.halored.views-row {
	background: url(/themes/custom/tm2022/css/images/back-tex-red.webp) no-repeat;
	background-size: cover;
}

.radiant-flow.views-row {
	background: url(/themes/custom/tm2022/css/images/norma-background.webp) no-repeat;
	background-size: cover;
}
.views-row .recov-prod-info .rtagline {
	text-transform: uppercase;
}

.radiant-flow.views-row .recov-prod-info .rtagline {
	color: #ecafe5;
}

.halosauna.views-row .recov-prod-info .rtagline {
	color: #ECB7B3;
}

.halored.views-row .recov-prod-info .rtagline {
	color: #CE7C7D;
}

.vitamin.views-row .recov-prod-info .rtagline {
	color: #99DCE5;
}

.views-row .recov-prod-info .rtitle {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 15px;
}

.views-row .recov-prod-info .rdesc {
	color: white;
	font-size: clamp(22px, 2vw, 29px);
	line-height: clamp(24px, 2.4vw, 40px);
	font-weight: 400;
}

.rbuttons {
	display: flex;
	width: 100%;
	flex-direction: row;
	justify-content: flex-start;
	padding-top: 25px;
}

.rbuttons .rbooknow a,
.rbuttons .rlearnmore a {
	font-weight: 700;
	font-size: 55%;
	text-transform: uppercase;
	padding: 15px 30px;
	letter-spacing: 1px;
	color: white;
	margin-right: 20px;
	background: rgba(255, 255, 255, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	backdrop-filter: blur(0px) saturate(180%);
	-webkit-backdrop-filter: blur(0px) saturate(180%);
	cursor: pointer;
	transition: all 0.3s ease;
}

.rbuttons .rbooknow a {
	background: rgba(0, 0, 0, 0.7);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.rbuttons .rlearnmore a:hover {
	background: rgba(255, 255, 255, 0.2);
	backdrop-filter: blur(1px) saturate(180%);
	-webkit-backdrop-filter: blur(1px) saturate(180%);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

.rbuttons .rbooknow a:hover {
	background: rgba(0, 0, 0, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

/***** halotherapy landing page */
body.page-node-331,
body.page-node-613,
body.page-node-614 {
	background: #131313;
}

body.page-node-331 #header-cent {
	display: block;
	background: url(/themes/custom/tm2022/css/images/halo-background.webp);
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
}

.hero-frame-1,
.hero-frame-2 {
	background: rgba(0, 0, 0, .4);
	padding: 20px 60px 50px 60px;
	border-radius: 25px;
	overflow: hidden;
	backdrop-filter: blur(10px) saturate(180%);
	-webkit-backdrop-filter: blur(10px) saturate(180%);
}
.hero-frame-2 {
	margin-top: 20px;
	background: black;
	padding: 30px 60px 50px 60px;
}
.rec-service-badges {
	justify-content: center;
}
.rec-service-badges img {
	max-width: 222px;
}
.hero-frame-1 h3 {
	margin-top: 3vw;
	margin-bottom: 0;
}

.hero-frame-2.service-halosauna,
.hero-frame-2.service-halored,
.hero-frame-2.service-norma  {
	padding: 0;
}

.service-halosauna {
	background: url(/themes/custom/tm2022/css/images/halosauna-background.jpg);
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: top;
	margin-bottom: 20px;
}

.rec-service-body {
	overflow: hidden;
	padding: 500px 60px 50px 60px;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+19,1+60 */
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 19%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}

.rec-service-body p strong,
.hero-frame-2 ul li strong {
	color: #A1C523
}

h2.recovery {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
}

h4.recovery {
	text-transform: uppercase;
	font-weight: 300;
}

.hero-frame-2 ul {
	padding-left: 0;
}

.hero-frame-2 ul li {
	margin-bottom: 20px;
	list-style: none;
	position: relative;
	padding-left: clamp(30px, 4vw, 40px);
	padding-bottom: clamp(10px, 1vw, 30px);
}

.hero-frame-2 ul li::before {
	content: url(/themes/custom/tm2022/css/images/bullet-plus.svg);
	position: absolute;
	left: 0;
	top: clamp(7px, .4vw, 15px);
	width: clamp(22px, 1.12vw, 55px);
	height: clamp(28px, 2.1vw, 42px);
}

@media (max-width: 1240px) {
	#block-tm2022-views-block-recovery-services-block-block-1 .views-row {
		border-radius: 0;
	}

	h2.layout25 {
		margin: 20px;
		font-size: 28px;
		line-height: 26px;
	}
}

@media (max-width: 800px) {
	ul.plus-bullet {
		list-style: none;
		padding: 0;
		margin: 0 auto;
		max-width: 288px;
		margin-top: 20px;
	}
	.bipod.iv.last ul.plus-bullet {
		margin-top: 0;
	}
	.hero-frame-1,
	.hero-frame-2 {
		padding: 20px 20px 40px 20px;
	}
	.hero-frame-1 {
		background: rgba(0, 0, 0, .4);
	}
	h2.layout25 {
		text-align: center;
	}
	#block-tm2022-views-block-recovery-services-block-block-1 .views-row {
		gap: 20px;
		flex-direction: column;
		padding: 12px;
	}
	.recov-prod-info {
		max-width: 100%;
	}
	.views-field-field-service-image {
		max-width: 100%;
		border-radius: 0;
		max-height: 400px;
	}
	.views-field-field-service-image .field-content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		max-height: 400px;
		overflow: hidden;
	}
	body.page-node-327 .pl-hero-layers .layer-wrapper {
		height: 100vh;
	}
	body.page-node-327 .pl-hero-layers .layer-wrapper div.pl-layer-2.radius20 .secondary-hero {
		display: flex;
		justify-content: center;
		width: 100vw;
		overflow: hidden;
	}
	body.page-node-327 .pl-hero-layers .layer-wrapper div.pl-layer-2.radius20 .secondary-hero img {
		height: 100vh;
		width: auto;
		max-width: none;
		display: block;
		object-fit: cover;
	}
	h2.iv {
		margin-top: 0;
		font-size: clamp(19px, 4vw, 32px);
		letter-spacing: 4px;
		line-height: clamp(19px, 4vw, 40px);
		margin-bottom: 10px;
	}
	.iv-badges {
		flex-direction: row;
	}
	.iv-badges img {
		max-width: 125px;
	}
	.recovery-hero {
		padding: 20px 20px 20px;
	}
	.recovery-hero.promo-header-text h1 {
		margin-top: 50px;
		margin-bottom: 6px;
	}
	.rec-service-badges img {
		max-width: 132px;
	}
	.rec-service-body {
		padding: 240px 60px 50px 60px;
	}
	ul.plus-bullet li h2 {
		font-weight: 300;
	}
	ul.plus-bullet li::before {
		content: url(/themes/custom/tm2022/css/images/bullet-plus.svg);
		position: absolute;
		left: calc(50% - 7px);
		top: unset;
		bottom: 8px;
		width: 14px;
		height: 28px;
	}
	ul.plus-bullet li {
		position: relative;
		padding-left: 0;
		padding-bottom: 35px;
		text-align: center;
	}
	.bipod.iv.last ul.plus-bullet li:last-child::before {
		content: "";
	}
}

@media (max-width: 600px) {
	.rec-service-body {
		padding: 220px 20px 30px 20px;
	}
}
/* HaloRed recovery service modality */

.fire-red {
	background: linear-gradient(0deg, #510044, #eb0792);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}
.radiant {
	background: linear-gradient(0deg, #794361, #ffd4e8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}
body.page-node-613 #header-cent {
  display: block;
  background: url(/themes/custom/tm2022/css/images/halored-background.webp);
    background-repeat: repeat;
    background-size: auto;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}
.service-halored {
	background: url(/themes/custom/tm2022/css/images/halored-booth-background.webp);
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: top;
	margin-bottom: 20px;
}
/* Normatec LightStim recovery service modality */
body.page-node-614 #header-cent {
  display: block;
  background: url(/themes/custom/tm2022/css/images/norma-background.webp);
    background-repeat: repeat;
    background-size: auto;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
	background-position: center center;
}
body.page-node-614 .hero-frame-1 {
	background: rgba(0, 0, 0, .2);
	backdrop-filter: blur(2px) saturate(100%);
  -webkit-backdrop-filter: blur(8px) saturate(100%);
}
.service-norma {
	background: url(/themes/custom/tm2022/css/images/norma2-background.webp);
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: top;
	margin-bottom: 20px;
}

/****************** Franchisee Wiki ************************/
body.wiki-page a:hover {
	color: white;
}

body.wiki-page aside.layout-sidebar-first::-webkit-scrollbar {
	display: none;
}

body.wiki-page aside.layout-sidebar-first {
	-ms-overflow-style: none;
	scrollbar-width: none;
}

body.wiki-page:not(.page-node-362) .layout-container main .layout-content {
	min-height: calc(100vh - 70px);
}

body.shrink.wiki-page:not(.page-node-362) .layout-container main .layout-content {
	min-height: 100vh;
}

body.wiki-page {
	background: #131313;
	color: #c9c9c9;
	padding-top: 1px;
	font-weight: 400;
	font-size: 20px;
	line-height: 28px;
}

body.wiki-page #block-pagetitle h1,
body.wiki-page h1 {
	color: #e0e0e0;
	margin-left: 0;
	margin-bottom: 30px;
	font-size: 40px;
	line-height: 40px;
}

body.wiki-page #block-pagetitle h1 {
	max-width: 100%;
}

body.page-node-type-franchise-wiki-studio-ops #block-pagetitle,
body.page-node-type-franchise-wiki-studio-set-up #block-pagetitle,
body.page-node-type-franchise-wiki-sales #block-pagetitle,
body.page-node-type-franchise-wiki-marketing #block-pagetitle,
body.page-node-type-franchise-wiki #block-pagetitle {
	max-width: 50vw;
}

body.wiki-page em,
.subtitle {
	color: #9273a4;
}

body.wiki-page h1 {
	margin-top: 0;
}

body.wiki-page h2 {
	margin-bottom: 30px;
	font-size: 27px;
	line-height: 30px;
	font-weight: 500;
	margin-top: 49px;
}

body.wiki-page article h1:first-of-type,
body.wiki-page article h2:first-of-type,
body.wiki-page article h3:first-of-type {
	margin-top: 0 !important;
}

body.wiki-page h3 {
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 30px;
	font-weight: 500;
	margin-top: 30px;
}

body.wiki-page h4 {
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	text-transform: uppercase;
	margin-top: 20px;
	letter-spacing: 0;
}

body.wiki-page .layout-container main .layout-content {
	width: 90vw;
	max-width: 90vw;
	margin-top: 0;
	padding-top: 70px;
}

body.wiki-page .layout-container main .layout-content div div#block-tm2022-content article {
	margin-left: 20px;
	margin-right: 20px;
	position: relative;
}

body.wiki-page .branding {
	position: absolute;
	background: none;
	top: 0;
	width: 100%;
	background: black;
	height: 70px;
}

body.wiki-page.shrink .branding {
	position: absolute;
	background: none;
	top: 0;
	width: 100%;
	background: black;
	height: 140px;
}

body.wiki-page .branding .logo a img {
	margin: 0 10px 0 0;
	padding: 0;
	z-index: 99;
	max-width: 200px;
	top: 0;
}

body.admin.wiki-page .branding .logo a img {
	top: 80px;
}

body.wiki-page.shrink .branding .logo a img {
	position: fixed;
	opacity: 0;
}

.subtitle {
	font-weight: 500;
	font-size: 30px;
	line-height: 38px;
	margin-bottom: 30px;
	max-width: 50vw;
}

.field--taxonomy-term div a {
	color: #ccc;
	font-size: 80%;
	font-weight: 600;
}

body.wiki-page .categories {
	color: #ccc;
	font-size: 80%;
	font-weight: 600;
}

/***** create pdf light mode dark mode buttons *****/
#theme-toggle {
	width: 135px;
	transition: opacity 0.3s ease;
	opacity: 1 font-size: 12px;
	background: black;
	color: #A1C523;
	border: 1px solid #66772B;
	padding: 4px 10px;
	border-radius: 5px;
	line-height: 1;
}

body.shrink #theme-toggle {
	opacity: 0
}

#block-tm2022-lightmodedarkmodebutton {
	position: absolute;
	right: 100px;
	top: 10px;
	z-index: 999;
}

body.admin #block-tm2022-lightmodedarkmodebutton {
	top: 16px;
}

.print__wrapper {
	margin: 20px 0;
}

a.print__link.print__link--pdf {
	font-size: 0px;
	color: #919191;
}

a.print__link.print__link--pdf::after {
	content: "Create PDF";
	border: 1px solid #5c5c5c;
	padding: 4px 10px;
	border-radius: 5px;
	font-size: 12px;
	line-height: 1;
}

/***** wiki auto table of contents *****/
.toc-filter {
	max-width: 50vw;
}

.toc.toc-responsive {
	position: absolute;
	top: 0;
	right: 20px;
	max-width: 20vw;
	height: 80vh;
	overflow-y: scroll;
	transition: top 2s ease;
}

.toc-desktop.toc.toc-tree h4 {
	margin-top: 0
}

body.shrink .toc.toc-responsive {
	position: fixed;
	top: 130px;
	z-index: 1;
}

a.back-to-top {
	position: fixed;
	bottom: 15px;
	right: 15px;
	font-size: 15px;
	color: black !important;
	background: #A1C523;
	padding: 5px 10px;
	border-radius: 5px;
}

.toc.toc-responsive .toc-desktop.toc.toc-tree a strong {
	color: unset;
}

.toc-desktop.toc.toc-tree ol {
	list-style: none;
	padding: 0;
	margin: 0;
	padding-bottom: 60px;
}

.toc-desktop.toc.toc-tree ol li {
	margin-bottom: 12px;
	font-size: 16px;
	line-height: 1.2;
}

.toc-desktop.toc.toc-tree ol li ol {
	margin-top: 10px;
}

.toc-desktop.toc.toc-tree ol li a:hover {
	color: white;
}

.toc-menu select {
	font-weight: 400 !important;
	font-size: 15px !important;
	line-height: 20px;
	padding-right: 8px;
	min-width: 133px;
	width: 133px;
	background: black;
	height: 26px;
}

@media only screen and (max-width: 1200px) {
	.toc-mobile {
		display: block;
	}

	.toc-desktop {
		display: none;
	}

	.toc.toc-responsive {
		position: fixed;
		top: 185px;
		right: 10px;
		max-width: 150px;
		height: unset;
		overflow-y: unset;
		opacity: 1 transition: opacity 0.3s ease;
	}

	.toc-filter {
		max-width: calc(100% - 20px);
	}

	body.shrink .toc.toc-responsive {
		opacity: 0
	}
}

body.path-franchise .view-wiki-landing-pages .view-content .views-row .views-field.views-field-title {
	font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 16px;
	line-height: 22px;
	color: rgba(255, 255, 255, 1);
	text-transform: capitalize;
}

body.path-franchise .layout-content,
body.wiki-page .layout-content {
	margin-left: 100px;
	padding-left: 20px;
}

#block-tm2022-franchiseewikimain {
	position: absolute;
	top: 140px;
	left: 0;
	z-index: 9;
}

body.admin #block-tm2022-franchiseewikimain {
	top: 172px;
}

ul#superfish-franchisee-wiki-main {
	font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 14px;
	line-height: 16px;
}

ul#superfish-franchisee-wiki-main.menu.sf-menu.sf-franchisee-wiki-main li.sf-depth-1 {
	margin-right: 1px;
}

ul#superfish-franchisee-wiki-main.menu.sf-menu.sf-franchisee-wiki-main li.sf-depth-1.menuparent span.sf-depth-1.menuparent,
ul#superfish-franchisee-wiki-main.menu.sf-menu.sf-franchisee-wiki-main li.sf-depth-1 a.sf-depth-1 {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: rgb(52, 52, 52);
	text-align: center;
	border-radius: 3px 3px 0 0;
}

#superfish-franchisee-wiki-main.menu.sf-menu.sf-franchisee-wiki-main li.sf-depth-1.menuparent ul.sf-hidden li.sf-depth-2.sf-no-children a.sf-depth-2 {
	display: block;
	background: black;
}

ul#superfish-franchisee-wiki-main.menu.sf-menu.sf-franchisee-wiki-main li.sf-depth-1 a.sf-depth-1.is-active {
	background: #131313;
}

/******************* resource hub page *********************/

body.wiki-page.page-node-362 .layout-container {
	margin-left: 0;
}

body.page-node-362 .layout-container main #content-b>div:first-of-type {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-around;
	gap: 10px;
}

#block-tm2022-views-block-wiki-helpful-links-block-1 {
	width: calc(100% - 40px);
}

#block-tm2022-views-block-wiki-helpful-links-block-1 .view-content {
	margin: 20px;
	padding: 20px 0;
}

.views-field-field-helpful-link .field-content a {
	display: block;
	text-align: center;
	padding: 10px 0;
}

.hub-parent {
	text-align: center;
	display: block;
	min-width: 330px;
	max-width: 50%;
	margin-bottom: 20px;
	flex: 1 1 calc(25% - 20px);
}

/**** resource hub landing pages sub menu tiles ***/
body.page-node-396 .layout-container main #content-b>div {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	gap: 10px;
	padding-bottom: 60px;
}

#content-b>div>.hub-secondary {
	width: 23%;
	box-sizing: border-box;
}

.hub-secondary {
	border-radius: 9px;
	margin-bottom: 4px;
}

.hub-secondary .views-row span a {
	padding: 30px 30px 0;
	display: block;
}

.hub-secondary .views-row:first-of-type a h2,
.hub-secondary .views-row:first-of-type a {
	color: #A1C523;
	background: #222;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex: 1 1 100%;
	padding: 10px;
	height: 150px;
	font-size: 18px;
	line-height: 24px;
	font-weight: 500;
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 1px;
	border-radius: 9px;
	text-shadow: 0px 0px 10px #000;
	overflow: hidden;
}

.hub-secondary .views-row:not(:first-of-type) a h2 {
	font-size: 100%;
	line-height: 120%;
	padding: 0;
}

.hub-secondary .views-row:not(:first-of-type) span a {
	padding: 0;
	max-width: 90%;
	margin: 0 auto;
	display: block;
	padding: 25px 10px;
	border-bottom: 1px solid rgba(150, 150, 150, 0.3);
	max-width: 100%;
	line-height: 24px;
}

.hub-secondary .views-row:last-of-type span a {
	border-bottom: 0 none;
}

.hub-secondary .views-row {
	text-align: center;
}

body.wiki-page.page-node-362 .layout-container main .layout-content {
	width: 100vw;
	max-width: 100vw;
	padding: 0;
	margin: 0;
	margin-top: 0;
	padding-top: 70px;
}

body.wiki-page .hub-parent h2 a {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	align-content: center;
	padding: 20px;
	height: 150px;
	background: rgba(255, 255, 255, 0.1);
	font-size: 18px;
	line-height: 24px;
	font-weight: 500;
	margin-top: 0;
	margin-bottom: 0;
	text-transform: uppercase;
	letter-spacing: 1px;
	border-radius: 9px;
	text-shadow: 0px 0px 10px #000;
}

body.wiki-page .hub-parent h2 a {
	color: white;
}

body.wiki-page .hub-parent h2 {
	margin-top: 0;
}

.hub-parent .views-row a {
	display: block;
	padding: 25px 10px;
	border-bottom: 1px solid rgba(150, 150, 150, 0.3);
	line-height: 23px;
	max-width: 100%;
	margin: 0 auto;
	line-height: 24px;
}

.hub-parent .views-row a:hover {
	background: #1d1d1d;
}

.hub-parent .view-footer a {
	display: block;
	font-size: 80%;
	padding: 16px;
}

ul.pager__items {
	margin: 0;
	padding: 0;
	font-size: 80%;
}

/* resource hub icons */
#block-tm2022-views-block-resource-hub-block-1 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-cog.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-1 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-cog.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-2 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-roller.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-2 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-roller.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-3 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-sales.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-3 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-sales.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-4 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-marketing.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-4 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-marketing.svg) no-repeat;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-5 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-ppl.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-5 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-ppl.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-6 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-support.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-6 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-support.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-7 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-network.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-7 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-network.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-8 h2 a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-tmm.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

#block-tm2022-views-block-resource-hub-block-8 h2 a:hover {
	background: #2d2d2d url(/themes/custom/tm2022/css/images/icon-wiki-tmm.svg) no-repeat;
	color: white;
	background-size: 120px;
	background-position: center center;
}

/***** resource hub menu side bar *********/
nav#block-tm2022-resourcehub {
	height: 100%;
	overflow-y: auto;
	/* Hide scrollbar for WebKit browsers */
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE/Edge */
	background: black;
	padding-bottom: 30px;
}

nav#block-tm2022-resourcehub::-webkit-scrollbar {
	display: none;
}

nav#block-tm2022-resourcehub ul.menu {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 18px;
	letter-spacing: .8px;
	line-height: 1;
	font-weight: 300;
	overflow-y: scroll;
}

nav#block-tm2022-resourcehub ul.menu li ul {
	overflow-y: hidden;
}

nav#block-tm2022-resourcehub>ul.menu>li.menu-item:first-child>a {
	background: #222 url(/themes/custom/tm2022/css/images/icon-wiki-hub.svg) no-repeat;
	color: white;
	background-size: 20px;
	background-position: 20px center;
	padding: 20px 10px 20px 50px;
	margin-bottom: 0;
	display: block;
	font-size: 22px;
	font-weight: 500;
}

nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item--expanded a,
nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item--expanded span,
nav#block-tm2022-resourcehub ul.menu li.menu-item.menu-item--expanded ul.menu li.menu-item a {
	display: block;
	margin-left: 0;
	display: block;
	padding: 10px;
	color: white;
}

nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item ul.menu li.menu-item.menu-item--expanded a,
nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item ul.menu li.menu-item.menu-item--expanded span {
	display: block;
	margin-left: 0;
	padding: 10px;
	display: block;
	margin-top: 0;
	border-bottom: 1px solid rgba(150, 150, 150, 0.3);
	padding-left: 20px;
	cursor: pointer;
}

nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item ul.menu li.menu-item a {
	display: none;
	margin: 0;
	border: 0 none;
	padding: 10px;
	border-bottom: 1px solid rgba(150, 150, 150, 0.3);
	line-height: 23px;
}

nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item.menu-item--active-trail ul.menu li.menu-item a {
	display: block;
}

nav#block-tm2022-resourcehub ul.menu li.menu-item ul.menu li.menu-item ul.menu li.menu-item ul.menu li.menu-item a {
	padding: 14px;
}

/* active trail colour key */
nav#block-tm2022-resourcehub ul.menu li.menu-item.menu-item--expanded.menu-item--active-trail ul.menu li.menu-item.menu-item--expanded.menu-item--active-trail a,
nav#block-tm2022-resourcehub ul.menu li.menu-item.menu-item--expanded.menu-item--active-trail ul.menu li.menu-item.menu-item--expanded.menu-item--active-trail ul.menu li.menu-item.menu-item--expanded.menu-item--active-trail span,
#block-tm2022-resourcehub li.menu-item.menu-item--expanded>span {
	border-left: 4px solid #5D0C83;
	padding-left: 20px;
}

body:not(.light-mode) nav#block-tm2022-resourcehub li.menu-item.menu-item--active-trail a.is-active {
	background: #131313 !important;
	color: #A2C522 !important;
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

#block-tm2022-resourcehub ul.menu li.menu-item.menu-item--expanded ul.menu li.menu-item.menu-item--expanded ul.menu li.menu-item.menu-item--expanded ul.menu li.menu-item a {
	border-left: 4px solid #CA5CFF;
	color: white;
	padding-left: 40px;
	background: #201623;
}

nav#block-tm2022-resourcehub .menu-item.menu-item--active-trail>a.is-active {
	padding: 20px !important;
}

nav#block-tm2022-resourcehub>ul.menu>li.menu-item.menu-item--expanded>ul.menu>li.menu-item.menu-item--expanded>a {
	background: url(/themes/custom/tm2022/css/images/icon-wiki-parent.svg) no-repeat;
	background-size: 30px;
	background-position: 0px 11px;
	padding: 15px 10px 15px 30px;
}

nav#block-tm2022-resourcehub>ul.menu>li.menu-item.menu-item--expanded.menu-item--active-trail>ul.menu>li.menu-item.menu-item--expanded.menu-item--active-trail>a {
	background-position: 0px 11px;
	padding: 15px 10px 15px 30px;
}

/******************* menu expansion *****************/
#block-tm2022-resourcehub ul.menu ul.menu {
	display: none;
}

#block-tm2022-resourcehub ul.menu li.menu-item.menu-item--expanded.menu-item--active-trail>ul.menu {
	display: block;
}

#block-tm2022-resourcehub li.menu-item.menu-item--expanded.has-js-active>ul.menu {
	display: block;
}

#block-tm2022-resourcehub li.menu-item.menu-item--expanded>span::after {
	content: "+";
	padding-left: 10px;
}

#block-tm2022-resourcehub li.menu-item.menu-item--expanded.has-js-active>span::after {
	content: "–";
	padding-left: 10px;
}

/****** Resource Hub landing page **************/
body.page-node-type-franchise-wiki-landing .layout-container main {
	min-height: 85vh;
}

body.page-node-type-franchise-wiki-landing .layout-container main div.layout-content div #block-tm2022-content article {
	margin-top: 30px;
	margin-bottom: 40px;
	margin-right: 40px;
}

#wiki-landingpage-header #block-pagetitle h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: 50px;
	line-height: 50px;
	margin-top: 0;
	margin-bottom: 10px;
}

#wiki-landingpage-header #block-pagetitle p {
	font-size: 24px;
	line-height: 32px;
	margin-top: 0;
	margin-bottom: 0;
	max-width: 60%;
}

#wiki-landingpage-header {
	background: #40095A;
	max-width: 100%;
	padding: 8vw 10vw 8vw 8vw;
	border-radius: 9px;
	margin: 20px 20px 20px 0;
	position: relative;
	z-index: 10;
}

body.page-node-362 #wiki-landingpage-header {
	max-width: 100%;
	padding: 4vw 5vw;
	margin: 20px 20px 0 20px;
}

body.page-node-362 .layout-container main div#content-b {
	padding: 0 20px 20px;
}

#wiki-landingpage-header #block-pagetitle {
	border-left: 10px solid rgba(255, 255, 255, 0.3);
	padding-left: 20px;
}

body.page-node-type-franchise-wiki-studio-ops #wiki-landingpage-header,
body.page-node-type-franchise-wiki-marketing #wiki-landingpage-header,
body.page-node-type-franchise-wiki-sales #wiki-landingpage-header,
body.page-node-type-franchise-wiki-common #wiki-landingpage-header,
body.page-node-type-franchise-wiki-news #wiki-landingpage-header,
body.page-node-type-franchise-wiki-studio-ops #wiki-landingpage-header {
	background: #40095A;
	max-width: 100%;
	padding: 6vw;
}

body.page-node-type-franchise-wiki-studio-ops #wiki-landingpage-header #block-pagetitle p,
body.page-node-type-franchise-wiki-marketing #wiki-landingpage-header #block-pagetitle p,
body.page-node-type-franchise-wiki-sales #wiki-landingpage-header #block-pagetitle p,
body.page-node-type-franchise-wiki-common #wiki-landingpage-header #block-pagetitle p,
body.page-node-type-franchise-wiki-news #wiki-landingpage-header #block-pagetitle p,
body.page-node-type-franchise-wiki-studio-ops #wiki-landingpage-header #block-pagetitle p {
	max-width: 100%;
}

body.page-node-390 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-sales.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-389 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-cog.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-396 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-roller.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-391 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-marketing.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-392 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-support.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-393 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-ppl.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-394 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-network.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.page-node-395 #wiki-landingpage-header {
	background: #40095A url(/themes/custom/tm2022/css/images/icon-wiki-tmm.svg) no-repeat;
	background-size: 18vw;
	background-position: 90% center;
}

body.wiki-page .hub-secondary h2 {
	margin: 0 auto;
	padding-bottom: 10px;
	padding-top: 20px;
}


/* Algonquin waitlist landing and thank you pages */
body.page-node-488 {
	background: none;
}

body.page-node-488 .layout-container main .layout-content {
	margin-top: 0;
	width: 100vw;
	max-width: 100vw;
}
.waitlist-message {
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 20px;
}
.quote-overlay {
	color: white;
	border-left: 8px solid #5D0C83;
	margin: 0;
	padding: 20px 20px 20px 30px;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: clamp(24px, 3vw, 30px) !important;
	line-height: clamp(26px, 3.5vw, 32px);
	font-weight: 700;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	background: rgba(0, 0, 0, 0.3);
	width: 80%;
	margin-left: 10%;
}

/****** WALLA styles **********/
.walla-widget-root iframe {
	background: white;
	border-radius: 20px;
	padding: clamp(20px, 3vw, 50px) clamp(50px, 5vw, 100px);
	margin-top: 20px;
	box-sizing: border-box;
}

.walla-form iframe {
	background: black;
	padding: 0;
	border-radius: 20px;
	overflow: hidden;
}

@media (max-width: 800px) {
	.walla-widget-root iframe {
		padding: clamp(20px, 3vw, 50px) 0;
		border-radius: 0;
	}
}

/***** new boxed layout franchise info page ******/

.boxed-hero {
	margin: 0 auto;
	background: transparent;
	border-radius: 20px;
	width: 100%;
	max-width: 1200px;
	margin-top: 20px;
	overflow: hidden;
	position: relative;
	z-index: 9;
	transition: all 1s ease;
}

.boxed-hero::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/circle-logo-leftcrop.svg) no-repeat;
	background-position: left top;
	background-size: 50%;
	z-index: -1;
}

.boxed-hero::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -2;
	background: url(/themes/custom/tm2022/css/images/franchise-hero.webp) no-repeat;
	background-position: center;
	background-size: cover;
}

@media (max-width: 800px) {
	.boxed-hero {
		aspect-ratio: unset;
		height: 100vh;
	}

	.boxed-hero::after {
		background: url(/themes/custom/tm2022/css/images/franchise-hero-mobile.webp) no-repeat;
		background-position: center;
		background-size: cover;
	}

	.boxed-hero::before {
		background-size: 60%;
	}
}

.boxed-hero .hero-logo img {
	width: clamp(300px, 36vw, 800px);
	margin-bottom: 10px;
}

.boxed-hero h1,
.boxed-layer h1 {
	width: 100%;
	max-width: 100%;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: clamp(26px, 6vw, 62px) !important;
	line-height: clamp(32px, 7vw, 62px);
	font-weight: 700 !important;
	padding-left: 5%;
}

.boxed-layer h1 {
	padding-left: 0;
}

.boxed-hero h1 strong {
	color: #A1C523;
}

.boxed-hero p {
	color: #fff;
	width: 100%;
	max-width: 800px;
	padding-left: 5%;
	font-size: clamp(22px, 2vw, 36px);
	line-height: clamp(24px, 2.4vw, 40px);
	font-weight: 400;
	text-shadow: 0 1px 1px #000;
}

p.hero-caption {
	text-align: right;
	font-size: 70%;
	color: white;
	font-weight: 200;
	width: 100%;
	max-width: 100%;
	padding-right: 20px;
	padding-top: 40px;
}

.vertical-bottom-flex {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: stretch;
	min-height: 100vh;
		min-height: 100dvh;
		padding-bottom: env(safe-area-inset-bottom, 0);
}

.vertical-center-flex {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.boxed-video {
	background: black;
	border-radius: 20px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 20px;
	overflow: hidden;
	transition: all 1s ease;
}
.radius20boxed {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 20px;
	border-radius: 20px;
}
.boxed-layer,
body.page-node-577 .iv-faq {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 20px;
	overflow: hidden;
	padding: 5%;
	transition: all 1s ease;
}

.boxed-layer.black {
	background: black;
}

body.page-node-577 .iv-faq {
	background: #341643;
}

.boxed-layer ul.acid-triangle {
	font-size: unset;
	line-height: unset;
}

.owntm-1 {
	position: relative;
	z-index: 9;
	background: transparent;
}

.owntm-1::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	z-index: -2;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#3a1847+0,000000+100 */
	background: linear-gradient(45deg, rgba(58, 24, 71, 1) 0%, rgba(0, 0, 0, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.owntm-1::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/circle-logo-rightcrop.svg) no-repeat;
	background-position: right top;
	background-size: 40%;
	opacity: 0.3;
	z-index: -1;
}

.owntm-2 {
	position: relative;
	padding-top: 30vw;
	z-index: 0;
	background: transparent;
}

.owntm-2::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+30,1+50 */
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.owntm-2::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/franchise-2b-back.webp) no-repeat center top;
	background-size: 100%;
	z-index: -2;
}

.owntm-3 {
	position: relative;
	z-index: 9;
	padding-top: 50vw;
	background: transparent;
}

.owntm-3 p {
	color: #fff;
	width: 100%;
	font-size: clamp(22px, 2vw, 36px);
	line-height: clamp(27px, 3vw, 45px);
	font-weight: 400;
	text-shadow: 0 1px 1px #000;
}

.owntm-3::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+51,1+95 */
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 51%, rgba(0, 0, 0, 1) 95%, rgba(0, 0, 0, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}

.boxed-layer.testimonial {
	background: #110019;
}

.boxed-layer.testimonial .quote {
	background: #110019 url(/themes/custom/tm2022/css/images/quote.svg) no-repeat;
	background-position: top left;
	background-size: 46px;
	padding-top: 60px;
	color: white;
	font-style: italic;
}

.boxed-layer.testimonial .quote p strong {
	font-style: normal;
}

.owntm-3::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/erin-chair.webp) no-repeat;
	background-position: center top;
	background-size: cover;
	z-index: -2;
}

.owntm-4 {
	/*background: #110019;*/
	background: transparent;
	position: relative;
	z-index: 9;
}

.owntm-4::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#110019+0,110019+100&0.65+0,0.85+100 */
	background: linear-gradient(to bottom, rgba(17, 0, 25, 0.65) 0%, rgba(17, 0, 25, 0.85) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.owntm-4::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/now-is-the-moment.webp) no-repeat;
	background-position: center top;
	background-size: cover;
	z-index: -2;
}

.owntm-5 {
	background: black;
	overflow-y: hidden;
}

.boxed-layer.owntm-5 {
	border-radius: 13px 13px 0 0;
	padding-bottom: 0;
	transition: all 1s ease;
}

.owntm-6 {
	background: black;
}

.boxed-layer.owntm-6 img {
	margin: 30px 0;
}

.boxed-layer.owntm-6 ol {
	list-style: none;
	counter-reset: item;
	padding: 0;
	margin: 40px 0;
}

.boxed-layer.owntm-6 ol li {
	counter-increment: item;
	margin-bottom: .5rem;
	position: relative;
	padding-left: 1.6rem;
}

.boxed-layer.owntm-6 ol li::before {
	content: counter(item);
	position: absolute;
	left: 0px;
	top: 10%;
	width: 1.1rem;
	height: 1.1rem;
	border-radius: 50%;
	background: #A1C523;
	color: black;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 67%;
}

.boxed-layer.owntm-6 ul.acid-triangle,
.boxed-layer.owntm-6 ol {
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
	gap: 20px;
}

.boxed-layer.owntm-6 ol {
	list-style-position: inside;
	column-width: 310px;
	-webkit-column-width: 310px;
	-moz-column-width: 310px;
	max-width: 60vw;
	margin: 0 auto;
}

.franchise.boxed-layer.horizontal-slider {
	border-radius: 0 0 13px 13px;
	margin-top: 0;
	padding-top: 50px;
	transition: all 1s ease;
}

.franchise.horizontal-slider {
	background: black;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
	flex-grow: 1;
}

.franchise.horizontal-slider {
	cursor: grab;
}

.franchise.horizontal-slider.dragging {
	cursor: grabbing;
}

.franchise.horizontal-slider ul {
	display: flex;
	padding: 0;
	margin: 0;
	list-style: none;
	margin-bottom: 55px;
}

.franchise.horizontal-slider ul li {
	flex-shrink: 0;
	scroll-snap-align: start;
	width: clamp(150px, 68vw, 430px);
	margin-right: 5px;
}

.franchise.horizontal-slider ul li img {
	-webkit-user-drag: none;
	user-drag: none;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	display: block;
}
#block-tm2022-franchiseformintro #start.boxed-layer {
	max-width: 800px;
	padding-bottom: 0;
}
body.page-node-577 #content-b {
	border-radius: 20px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
	margin-bottom: 20px;
	background: black;
}
body.page-node-577 {
	background: #151515;
}
body.page-node-577 .layout-container main .layout-content {
	margin: 0;
	padding: 20px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	transition: all 1s ease;
	padding-top: 0;
}
body.page-node-577 .layout-container #header-cent header #block-logo.branding .logo a img {
	opacity: 0;
	transition: opacity 2s ease;
	left: -500px;
}
body.page-node-577.shrink .layout-container #header-cent header #block-logo.branding .logo a img {
	opacity: 1;
	left: 30px;
}

@media (max-width: 800px) {
	body.page-node-577 .layout-container main .layout-content {
		padding: 0;
	}
	.boxed-hero {
		border-radius: 0;
		margin-top: 0;
	}
	.radius20boxed {
		border-radius: 0;
	}
	.boxed-video,
	.boxed-layer,
	body.page-node-577 .iv-faq,
	.franchise.boxed-layer.horizontal-slider,
	.boxed-layer.owntm-5 {
		border-radius: 0;
	}
	.boxed-layer {
		padding: 40px 20px;
	}
	.boxed-layer.owntm-6 ul.acid-triangle,
	.boxed-layer.owntm-6 ol {
		columns: 1;
	}
	p.hero-caption {
		text-align: center;
		width: 90%;
		max-width: 90%;
		padding-right: 0;
	}
	.boxed-layer.owntm-3 {
		padding-top: 350px;
	}
	.boxed-layer.owntm-1 {
		padding-top: 60px;
	}
	.boxed-layer.owntm-2 {
		padding-top: 100px;
	}
}

/* side by side image text block */
.side-by-side {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	flex-wrap: nowrap;
	max-width: 1200px;
	margin: 0 auto;
}

.side-by-side .image {
	max-width: 50%;
	border-radius: 20px;
	overflow: hidden;
}

.side-by-side img {
	max-width: 100%;
	height: auto;
	flex: 1 1 50%;
	filter: grayscale(50%);
}

.side-by-side .text {
	flex: 1 1 50%;
	padding: 90px 0 0 20px;
	font-size: 26px;
  line-height: 36px;
}
.side-by-side .image.video-50 iframe {
	vertical-align: top;
}
.side-by-side .text h1,
.side-by-side .text h2,
.side-by-side .text h3,
.side-by-side .text p {
	margin-bottom: 0;
	padding-left: 26px;
}

@media (max-width: 1000px) {
	.side-by-side #form-anchor.form-50.text {
		padding-top: 80px;
	}
	.side-by-side {
		flex-direction: column;
	}

	.side-by-side .image,
	.side-by-side .text {
		width: 100%;
		max-width: 600px;
		margin-top: 20px;
	}

	.side-by-side .text {
		padding: 40px 0 0 0;
	}

	.side-by-side .text h1,
	.side-by-side .text h2,
	.side-by-side .text h3,
	.side-by-side .text p {
		max-width: 600px;
		margin: 0;
	}
}

body.page-node-98 {
	background: black;
	overflow-x: hidden;
}

body.page-node-98 .layout-container {
	width: 100vw;
}

body.page-node-98 .layout-container main .layout-content {
	width: 100vw;
	max-width: 100vw;
	height: 100vh;
	margin-top: 0;
}

#block-tm2022-views-block-duplicate-of-location-map-block-1 {
	position: absolute;
	z-index: 1;
	width: 100vw;
	height: 100vh;
	border-bottom: 3px solid #A1C523;
	box-sizing: content-box;
}

#block-tm2022-views-block-duplicate-of-locations-list-block-4 {
	margin-top: clamp(140px, 20vw, 300px);
}

#block-tm2022-views-block-duplicate-of-locations-list-block-4 h2 {
	color: #A1C523;
	margin-top: 30px;
}

@media (min-width: 800px) {
	#block-tm2022-views-block-duplicate-of-locations-list-block-4 {
		margin-top: clamp(140px, 20vw, 300px);
		position: absolute;
		left: 2vw;
		bottom: 2vw;
		z-index: 2;
	}

	.locations-index {
		padding: 1vw 3vw;
		backdrop-filter: blur(6px);
		-webkit-backdrop-filter: blur(6px);
		background: rgba(0, 0, 0, 0.4);
		width: clamp(350px, 50vw, 610px);
		border-radius: 20px;
		overflow: hidden;
		overflow-y: scroll;
		max-height: 80vh;
	}
}

@media (max-width: 799px) {
	body.page-node-98 .layout-container {
		height: 100%;
		overflow: visible;
	}

	body.page-node-98 .layout-container main .layout-content {
		width: 100vw;
		max-width: 100vw;
		height: 100%;
		margin-top: 0;
		overflow-y: visible;
	}

	.locations-index {
		padding: 10px 20px;
		width: 100%;
		border-radius: 0;
		overflow: visible;
		overflow-y: unset;
		max-height: unset;
		border-bottom: 3px solid #A1C523;
		padding-bottom: 60px;
	}

	#block-tm2022-views-block-duplicate-of-location-map-block-1 {
		position: unset;
		width: 100vw;
		height: 100vh;
		overflow: hidden;
		display: block;
	}

	#block-tm2022-views-block-duplicate-of-locations-list-block-4 h2 {
		margin-top: 20px;
		text-align: center;
	}
}

.locations-index .views-row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
}

.location-details {
	display: block;
	overflow: hidden;
	clear: both;
	width: fit-content;
}

.studio-location {
	color: white;
	font-weight: bold;
	font-size: 22px;
	line-height: 30px;
	letter-spacing: 4px;
	text-transform: uppercase;
}

.coming-soon {
	display: inline-block;
	vertical-align: middle;
	font-size: 10px;
	text-transform: uppercase;
	line-height: 10px;
	background: #430179;
	color: white;
	font-weight: normal;
	padding: 6px;
	border-radius: 9px 0 9px 0;
	letter-spacing: 1px;
	border: 1px solid #393939;
	margin-bottom: 5px;
}

.address-line-1,
.address-line-2 {
	font-size: 16px;
	line-height: 20px;
	letter-spacing: 1px;
	color: #9d9d9d;
}

.address-line-1 {
	margin-top: 5px;
}

.address-line-2 {
	margin-bottom: 10px;
}

.locations-index .view-content .view-grouping .view-grouping-content .views-row .phone-number a {
	background: transparent;
	padding: 10px 0;
	display: block;
	text-align: left;
	margin-bottom: 5px;
	border-radius: 0;
	border: 0 none;
	font-size: 20px;
	line-height: 20px;
}

.studio-buttons {
	display: block;
}

.studio-buttons a {
	background: black;
	padding: 12px 26px;
	display: block;
	text-align: center;
	margin-bottom: 5px;
	border-radius: 40px;
	border: 1px solid #A1C523;
	font-size: 16px;
	line-height: 30px;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 2px;
	transition: transform 0.3s ease;
}

.studio-buttons a.button-offer {
	background: #A1C523;
	color: black;
	font-weight: 900;
	border: 1px solid black;
}

.studio-buttons a:hover {
	color: #A1C523;
	transform: scale(1.05);
}

.studio-buttons a.button-offer {
	background: #A1C523;
	color: black;
	font-weight: 600;
	border: 1px solid black;
	transition: transform 0.3s ease;
}

.studio-buttons a.button-offer:hover {
	transform: scale(1.04);
}

.locations-index .view-content .view-grouping .view-grouping-content h3 {
	display: none;
}

.locations-index .view-grouping-header {
	border-bottom: 1px solid #3f3f3f;
	margin: 30px 0 20px;
	font-size: 20px;
	line-height: 34px;
}

#block-tm2022-views-block-duplicate-of-location-map-block-1.views-element-container.map-block.settings-tray-editable div div.view.view-duplicate-of-location-map.view-id-duplicate_of_location_map.view-display-id-block_1 .view-content .geolocation-map-wrapper .geolocation-map-container.js-show div .gm-style {
	height: 110% !important;
}


/**** location walla embed accordion ***/

.location-accordions {
	background: #341643;
	padding: 20px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #4d2a5d;
	border-radius: 0;
}
.location-accordions + .location-accordions {
	margin-top: 0;
}
.location-accordions:not(:has(~ .location-accordions)) {
	margin-bottom: 20px;
	border-bottom: 0 none;
}
.location-accordions .ui-accordion-header span.field-content {
	color: white;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	font-size: 25px;
	line-height: 31px;
	position: unset;
}
@media (min-width: 1200px) {
	/* first .location-accordions */
	/* Default: everyone gets full rounding */
  .location-accordions {
    border-radius: 20px 20px 0 0;
  }
  .location-accordions + .location-accordions {
    border-radius: 0;
  }
  /* Last one */
  .location-accordions:not(:has(~ .location-accordions)) {
    border-radius: 0 0 20px 20px;
  }
	#founding.location-accordions {
    border-radius: 20px;
  }
}
.location-accordions .view-locations-walla-embeds.view-id-locations_walla_embeds.ui-accordion.ui-widget .view-content .ui-accordion-content.ui-widget-content {
	min-height: 750px;
}
.location-hero .views-field-field-di .field-content,
.location-hero .views-field-field-display-coming-soon-banner .field-content,
.location-hero .views-field-field-display-founding-membershi .field-content,
.location-hero .views-field-nothing .field-content {
	display: flex;
	width: 100%;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-between;
	align-items: center;
	min-height: 100vh;
	min-height: 100dvh;
	padding-bottom: env(safe-area-inset-bottom, 0);
}


.hero.hero-vertical.location-hero {
	min-height: 800px;
	width: 100vw;
	margin: 0 auto;
	min-height: 100vh;
	min-height: 100dvh;
	padding-bottom: env(safe-area-inset-bottom, 0);
}
.location-hero .hero-logo,
.location-hero .hero-logo.comingsoon {
	position: unset;
	width: 100%;
	text-align: left;
	margin-left: 50px;
	align-self: flex-start;
}
.location-hero .hero-logo.comingsoon {
	text-align: center;
	margin-left: 0;
}
body.shrink .location-hero .hero-logo img {
	opacity: 0;
	margin-top: 0;
}
.location-hero .views-field-field-di,
.location-hero .views-field-field-display-coming-soon-banner,
.location-hero .views-field-nothing,
.location-hero .views-field-field-display-founding-membershi {
	position: absolute;
		width: 100%;
		top: 0;
		text-align: center;
		z-index: 9;
}
.location-hero .views-field-field-display-coming-soon-banner {
	min-height: 800px;
}

.location-hero .views-row {
	position: relative;
}
body.page-node-type-location-page #block-logo .logo {
	opacity: 0;
	transition: all 1s ease;
}
body.page-node-type-location-page .branding .logo a img {
		max-width: 200px;
		top: 0;
}
body.shrink.page-node-type-location-page #block-logo .logo {
	opacity: 1;
	transition: all 1s ease;
}
.open-hero-elements {
	display: flex;
	width: 100%;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-between;
	align-items: flex-end;
	height: 365px;
	padding: 50px;
	box-sizing: border-box;
}
.location-title-block {
	text-align: left;
	padding: 30px 40px;
	border-radius: 20px;
	background: rgba(0, 0, 0, 0.5);
}
.location-title-block.slide-in-left .field-title h2 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	margin: 0;
	padding: 0;
	font-size: 50px;
	line-height: 50px;
}
.location-title-block.slide-in-left .field-title h1 {
	text-transform: uppercase;
	font-weight: bold;
	margin: 0;
	padding: 0;
	color: #A2C522;
	word-spacing: -18px;
	white-space: normal;
	word-wrap: break-word;
	text-align: justify;
	font-size: 32px;
	line-height: 40px;
}
.location-title-block .field-title h1 span.invisible {
	display: inline-block;
	width: 100%;
	visibility: hidden;
	height: 1px;
	overflow: hidden;
}
.location-title-block.slide-in-left .field-address .address .organization,
.location-title-block.slide-in-left .field-address .address br {
	display: none;
}
.location-title-block.slide-in-left .field-address .address span {
	width: 100%;
}
.location-title-block.slide-in-left .field-address {
	margin-top: -40px;
}
.location-title-block.slide-in-left .field-address p,
.location-title-block.slide-in-left .field-phone,
.location-title-block.slide-in-left .field-map-link {
	text-transform: uppercase;
	font-size: 18px;
	line-height: 30px;
	margin: 0;
	padding: 0;
}
.location-open-buttons {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	height: 100%;
	padding: 20px 0;
	gap: 20px;
}
.location-open-buttons a {
	background: rgba(0, 0, 0, .4);
	font-weight: 700;
	font-size: 16px;
	line-height: 34px;
	text-transform: uppercase;
	padding: 10px 40px;
	letter-spacing: 2px;
	color: white;
	border-radius: 10px;
	border: 1px solid #626262;
}
.location-open-buttons a.claim-offer {
	background: #A2C522;
	font-weight: 700;
	color: black;
}
@media (max-width: 875px) {
	.location-open-buttons a.claim-offer {
			font-weight: 900;
		}
}

.location-accordions .ui-accordion-header span.field-content::before {
	filter: brightness(0) invert(.9);
}
.location-accordions .ui-accordion-header span.field-content::before {
	content: "";
	width: 16px;
	height: 16px;
	display: inline-block;
	background: url(/themes/custom/tm2022/css/images/acord-arrow.svg);
	background-repeat: no-repeat;
	background-size: 16px;
	background-position: 2px 0;
	margin-right: 10px;
	transform: rotate(-90deg);
	transition: transform 0.2s linear;
	vertical-align: middle;
}

.location-accordions .ui-accordion-header.ui-accordion-header-active.ui-state-active span.field-content::before {
	transform: rotate(0deg);
}

#claim-offer-section {
	min-height: 100vh;
	width: 100vw;
	max-width: 1200px;
	margin: 0 auto;
	background: #131313;
	margin-top: 20px;
	overflow: hidden;
	background: transparent;
		position: relative;
		z-index: 9;
		padding: 0;
}
@media (max-width: 1000px) {
	#claim-offer-section {
			border-radius: 0;
		}
}
#claim-offer-section::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: transparent;
}
#claim-offer-section::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/themes/custom/tm2022/css/images/circle-logo-rightcrop.svg) no-repeat right top / 30%,
		url(/themes/custom/tm2022/css/images/builds-you-hero.webp) no-repeat center top / contain, #131313;
	z-index: -2;
}
#claim-offer-section .highlight-banner {
	width: 380px;
	margin-right: 0;
	border-radius: 0 20px 20px 0;
	padding: 10px 20px 10px 30px;
	background: #A1C523;
	margin-top: 60px;
}

#claim-offer-section .highlight-banner h3 {
	color: black;
	margin: 0;
font-size: 18px;
	line-height: 18px;
}
#claim-offer-section .highlight-banner h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: 40px;
	line-height: 40px;
	margin: 0;
}
.claim-offer-text {
	padding: 400px 20px 20px;
}

.claim-offer-text h1 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: clamp(30px, 6vw, 62px) !important;
	line-height: clamp(36px, 7vw, 62px);
	font-weight: 700 !important;
	margin: 0;
}
.claim-offer-text .details {
	color: white;
	font-size: 60px;
	line-height: 68px;
	margin-top: 10px;
	font-weight: 100;
}
.claim-offer-text .description {
	font-size: 30px;
	color: white;
	line-height: 38px;
	background: rgba(0, 0, 0, .5);
	border-radius: 20px;
	padding: 16px 20px 30px;
	margin-bottom: 50px;
	margin-top: 60px;
}
.claim-offer-text .tripod.star-ratings {
	overflow: visible;
	background: black url(/themes/custom/tm2022/css/images/icons-stars.svg) no-repeat;
	background-position: center 40px;
	background-size: 80px;
	border: 1px solid #000;
	min-height: 258px;
	border-radius: 20px;
	padding: 76px 20px 20px;
	font-size: 20px;
	line-height: 28px;
}

.claim-offer-text .tripod.star-ratings .avatar {
	background: black url(/themes/custom/tm2022/css/images/icons-avatar.svg) no-repeat;
	background-position: center 10px;
	background-size: 60px;
	position: absolute;
	height: 60px;
	width: 60px;
	top: -30px;
	margin-left: calc(50% - 50px);
	border: 1px solid #000;
	overflow: hidden;
	border-radius: 50%;
}
@media (max-width: 799px) {
	#claim-offer-section::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(/themes/custom/tm2022/css/images/builds-you-hero.webp) no-repeat center 40px / contain, #131313;
		z-index: -2;
	}
	#claim-offer-section .highlight-banner {
		margin-top: 0;
	}

	.claim-offer-text {
		padding: 100px 20px 20px;
	}

	.avatar {
		margin-top: 0px;
	}
}
@media (max-width: 380px) {
	#claim-offer-section .highlight-banner {
			border-radius: 0;
	}
}
.locations-slider {
	width: 100vw;
	max-width: 1200px;
	margin: 0 auto;
}
.locations-slider .horizontal-slider ul li img {
	width: 100%;
	margin-bottom: 20px;
	filter: grayscale(100%);
	border-radius: 20px;
	transform: scale(1);
	transition: filter 0.5s ease-in-out, transform 0.5s ease-in-out;
}
.locations-slider .horizontal-slider ul li img:hover {
	width: 100%;
	margin-bottom: 20px;
	filter: grayscale(0%);
	transform: scale(1.03) translateY(-5px);
}

.locations-slider .slider-controls {
	position: absolute;
	bottom: 10px;
	left: 10px;
	display: flex;
	gap: 10px;
}
.locations-slider .horizontal-slider {
	padding: 130px 0;
}
.locations-closing-message {
	width: 100vw;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 30px;
}
.location-info-footer .location-wrapper {
	width: 100%;
	margin: 0 auto;
	padding-top: 30px;
	padding-bottom: 30px;
	font-size: 20px;
	line-height: 34px;
	max-width: 1200px;
	border-radius: 20px;
	margin-bottom: 20px;
}
@media (max-width: 760px) {
	.location-info-footer .location-wrapper {
		padding-bottom: 0;
		margin-bottom: 0;
		border-bottom: 0 none;
	}
}
@media (max-width: 1200px) {
	.location-info-footer .location-wrapper {
		border-width: 1px 0;
		border-radius: 0;
	}
}
#block-tm2022-locationswhythisstudio {
	width: 100vw;
	max-width: 1200px;
	margin: 0 auto;
	background: #131313;
	padding: 30px 40px;
	margin-top: 20px;
}
#block-tm2022-locationswhythisstudio h1 {
	width: 100%;
	max-width: 100%;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-size: clamp(26px, 6vw, 62px) !important;
		line-height: clamp(32px, 7vw, 62px);
		font-weight: 700 !important;
}
@media (max-width: 875px) {
	.open-hero-elements {
		justify-content: flex-end;
		align-content: flex-start;
		align-items: flex-start;
		height: 80%;
		padding: 10px;
		flex-direction: column;
	}

	.location-title-block {
		padding: 0;
		border-radius: 0;
		background: transparent;
	}

	.location-title-block.slide-in-left .field-title h2 {
		margin-bottom: 0px;
		font-size: 32px;
		line-height: 30px;
		margin-bottom: 0px;
	}

	.location-title-block.slide-in-left .field-title h1 {
		font-size: 26px;
		line-height: 38px;
	}

	.location-hero .views-field-field-di .field-content,
	.location-hero .views-field-field-display-coming-soon-banner .field-content,
	.location-hero .views-field-nothing .field-content {
		display: flex;
		width: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
		align-content: space-between;
		align-items: center;
			min-height: 100vh;
				min-height: 100dvh;
				padding-bottom: env(safe-area-inset-bottom, 0);
	}

	.location-open-buttons {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		height: 240px;
		padding: 20px 0 60px;
		width: 100%;
	}

	.location-open-buttons a {
		font-size: 12px;
		line-height: 30px;
		padding: 8px 30px;
		margin-left: 0;
		max-width: 240px;
	}

	#purchase-classes,
	#recovery-plans {
		border-radius: 0;
	}

	.location-accordions {
		padding: 4px;
	}

	.location-accordions .walla-widget-root iframe {
		padding: 4px;
		margin-top: 0;
	}

	.location-accordions .ui-accordion-header span.field-content {
		font-size: 18px;
		line-height: 34px;
	}

	.location-hero .hero-logo img {
		width: 90%;
		margin-top: clamp(40px, 5vw, 70px);
		padding-left: 20px;
	}

	.hero.hero-vertical .views-field-field-display-coming-soon-banner .views-field-field-hero-text {
		margin-top: 200px;
	}

	.hero.hero-vertical .views-field-field-display-coming-soon-banner .views-field-field-hero-text .field-content p {
		width: 90%;
		margin-bottom: 20px;
	}

	.side-by-side .image {
		border-radius: 0;
	}

	.locations-slider .horizontal-slider {
		padding: 30px 40px 70px 30px
	}
		.locations-slider .slider-controls {
			bottom: 0;
			left: 40px;
		}
}
#block-tm2022-franshisedisclaimer {
	font-size: 50%;
  text-align: center;
  max-width: 1040px;
  margin: 0 auto;
  line-height: 130%;
  margin-top: 30px;
}
#block-tm2022-elearninglearnworldslink div h2 ,
#block-tm2022-elearninglearnworldslink div h3 {
	border: 1px solid #A1C523;
  border-radius: 19px;
  padding: 15px 25px 18px;
  text-align: center;
  display: inline-block;
	background: black;
	font-weight: 500;;
}
/*** admin toolbar fixes ***/
#admin-toolbar-search-field-input {
	min-height: 0px;
  padding: 0;
  font-size: 20px;
  line-height: 20px;
}
.toolbar .toolbar-toggle-orientation button {
  width: 50px;
  height: 40px;
}
