/*
Theme Name: TM 2026
Author: Jonathan Travers
Tags: accessibility-ready, one-column, two-columns, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready
Version: 2026
Requires at least: 5.2
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: tm2026

TM 2026 WordPress Theme
TM 2026 is distributed under the terms of the GNU GPL
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{appearance:none;border-radius:0}input[type="search"]{appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}


:root {
    --on-primary: 70 40 80;
    --tm-orange: 245 140 50;
    --tm-warm-yellow: 245 170 10;
    --tm-yellow: 240 200 20;
    --tm-warm-neutral: 229 209 211;
    --tm-cool-neutral: 200 200 210;
    --tm-ocean: 139 170 195;
    --tm-air: 210 230 235;
    --tm-neutral: 246 237 229;
    --tm-green: 40 126 26;
    --tm-grey: 190 190 190;
    --tm-utility-warning: 216 2 2;
    --tm-sky: 165 195 215;
    --tm-midnight: 70 40 80;
    --tm-midnight-soft: 144 126 150;
    --tm-midnight-soft-accessible: 120 102 126;
    --tm-off-white: 249 247 233;
    --tm-text-1: 70 40 80;
    --tm-text-2: 249 247 233;
    --tm-text-3: 144 126 150;
    --tm-interactive-1: 245 243 227;
    --tm-interactive-9: 245 243 227;
    --tm-text-4-accessible: 120 102 126;
    --primary: 240 200 20;
    --secondary: 70 40 80;
    --tertiary: 165 195 215;
    --error: 245 12 12 --on-secondary:255 255 255;
    --on-tertiary: 70 40 80;
    --on-error: 255 255 255;
    --primary-container: 255 231 174;
    --secondary-container: 181 169 185;
    --tertiary-container: 210 230 235;
    --error-container: 255 173 102;
    --on-primary-container: 70 40 80;
    --on-secondary-container: 70 40 80;
    --on-tertiary-container: 70 40 80;
    --on-error-container: 70 40 80;
    --alt-1: 245 170 10;
    --alt-2: 243 149 66;
    --alt-3: 231 88 103;
    --on-alt-1: 70 40 80;
    --on-alt-2: 70 40 80;
    --on-alt-3: 70 40 80;
    --alt-1-container: 249 247 233;
    --alt-2-container: 246 237 229;
    --alt-3-container: 229 209 211;
    --on-alt-1-container: 70 40 80;
    --on-alt-2-container: 70 40 80;
    --on-alt-3-container: 70 40 80;
    --surface-dim: 200 200 210;
    --surface: 255 255 255;
    --surface-bright: 255 255 255;
    --surface-variant: 190 190 190;
    --inverse-surface: 0 0 0;
    --surface-container-lowest: 255 255 255;
    --surface-container-low: 255 255 255;
    --surface-container: 249 247 233;
    --surface-container-high: 249 247 233;
    --surface-container-highest: 249 247 233;
    --inverse-on-surface: 249 247 233;
    --on-surface: 70 40 80;
    --on-surface-variant: 120 102 126;
    --outline: 144 126 150;
    --outline-variant: 249 247 233;
    --inverse-primary: 255 231 174;
    --background: 255 255 255;
    --on-background: 70 40 80;
    --scrim: 0 0 0;
    --shadow: 0 0 0
}


.wpb_text_column.light { color: #f9f7e9; }

.buttons-tight { max-width: 625px !important; }
.buttons-tight .vc_column-inner { padding: 10px 10px 10px 10px !important; }
.buttons-tight .vc_column-inner p { margin: 0 !important; }
.buttons-tight .vc_column-inner .wpb_content_element { margin: 0 !important; }

.vc_row { margin-left: 0px !important; margin-right: 0px !important; position: relative; }
.vc_row>.vc_column_container.vc_col-sm-12>.vc_column-inner { padding-left: 0; padding-right: 0; padding-top: 0 !important; }

.mw-1920,
.vc_row.mw-1920 { max-width: 1920px !important; }

.mw-1100,
.vc_row.mw-1100 { max-width: 1100px !important; }

.mw-590,
.vc_row.mw-590 { max-width: 590px !important; }

.single-post .mw-590 { margin: 0 auto !important; }

.wpb_single_image .vc_single_image-wrapper.vc_box_rounded, 
.wpb_single_image .vc_single_image-wrapper.vc_box_rounded img { border-radius: 40px !important; }

.vc_row.bg-black:before,
.bg-black:before { 
	display: block;
    background-color: rgb(0 0 0 / 30%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
}

.nav-bar .col3 > .inner:after,
.nav-bar:after,
.footer .row1 > .inner:after,
.footer .row2 > .inner:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: "";
	clear: both;
	height: 0;
}


.footer {
	--tw-text-opacity: 1;
	color: #1d191e;
	background: url('images/footer-bg-lg-blu.jpg') no-repeat 50% 50%;
	background-size: cover;
}
.footer a { color: #462850; text-decoration: none; } 
.footer a:hover { text-decoration: underline; }

.footer .row1 {}
.footer .row1 > .inner { padding: 3.5rem 3rem 3rem 2.5rem }
.footer .row1 > .inner .col1 { width: 25%; float: left; }
.footer .row1 > .inner .col2 { width: 25%; float: left; }
.footer .row1 > .inner .col3 { width: 25%; float: left; }
.footer .row1 > .inner .col4 { width: 25%; float: left; }

.footer .row1 > .inner .col1 > .inner { padding: 0 20px 0 0; }
.footer .row1 > .inner .col2 > .inner { padding: 0 20px; }
.footer .row1 > .inner .col3 > .inner { padding: 0 20px; }
.footer .row1 > .inner .col4 > .inner { padding: 0 20px; }

.footer .row2 {}
.footer .row2 > .inner { padding: 3.5rem 3rem 3rem 2.5rem }
.footer .row2 > .inner .col1 { width: 50%; float: left; }
.footer .row2 > .inner .col2 { width: 50%; float: left; text-align: right; }

.footer ul { padding: 17px 0; }

ul.list-socials { margin: 0; padding: 0; display: inline-block; }
ul.list-socials li { display: inline; margin: 0 15px; }


.vc_row.align-center,
.align-center { text-align: center; margin: 0 auto; }


.mw-550 { max-width: 550px; }
.mw-650 { max-width: 650px; }




* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}


@font-face {
    font-family: 'Neue Haas Unica Pro Light';
    src: url('fonts/NeueHaasUnicaPro-Light.otf') format("opentype");
    font-weight: light;
    font-style: normal;
}
@font-face {
    font-family: 'Louize Italic';
    src: url('fonts/Louize-Italic-205TF.otf') format("opentype");
    font-weight: light;
    font-style: normal;
}
@font-face {
    font-family: 'Louize Regular';
    src: url('fonts/Louize-Regular-205TF.otf') format("opentype");
    font-weight: light;
    font-style: normal;
}

h1 { font-size: 36px; margin-bottom: 20px; }
h2.large { font-size: 40px; }
h2 { font-size: 36px; margin-bottom: 20px; }
h2.small,
.tm-section h2.small { font-size: 24px; }
h3 { font-size: 26px; margin-bottom: 20px; }
h3.small { font-size: 20px; margin-bottom: 20px; }

p { margin-bottom: 20px; }


.single-post h1 { font-size: 48px; }
.single-post h2 { font-size: 28px; }
.single-post a { color: #462850; }
.single-post #content ul { padding: 10px 0 25px 25px; list-style: disc; line-height: 1.4; }
.single-post #content ol { padding: 10px 0 25px 25px; list-style: decimal; line-height: 1.4; }
.single-post #content ol li { padding: 0 0 10px 10px; }


/* general clears */
.tm-benefit__header:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: "";
	clear: both;
	height: 0;
}


body {
    font-family: 'Neue Haas Unica Pro Light';
    font-weight: 350;
    font-size: 18px;
    line-height: 1.3;
    color: #462850;
}
em {
    font-family: Louize Italic;
    font-size: 120%;
}

.tracking-tight {
    letter-spacing: -.025em;
}
.leading-tight {
    line-height: 1.25;
}
.text-center {
    text-align: center;
}


.tm-section-tight-top {
	padding: 0 20px 135px;
	width: 100%;
	position: relative;
}
.tm-section-tight-bottom {
	padding: 135px 20px 0;
	width: 100%;
	position: relative;
}

.tm-section {
	padding: 150px 20px 120px;
	width: 100%;
	position: relative;
}

.tm-section__inner {
	max-width: 600px;
	margin: 0 auto;
}

/* Variants */
.tm-section .tm-section--beige {
	background: #f9f7e9;
}
.tm-section .tm-section--neutral {
	background: #f6ede5;
}



.mh-740 { min-height: 740px; }
.mh-400 { min-height: 400px; }
.mh-500 { min-height: 500px; }
.mh-600 { min-height: 600px; }
.mh-800 { min-height: 800px; }


.vertical-align-m {
    vertical-align: middle;
}





.tm-video-duration {
    width: 120px;
    height: 120px;

    border: 2px dotted rgba(255,255,255,0.9);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    text-decoration: none;
    color: #fff;
	
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -60px;
    margin-top: -60px;
}

.tm-video-duration__play {
    width: 0;
    height: 0;

    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 10px solid #fff;

    margin-right: 10px;
}

.tm-video-duration__time {
    font-size: 22px;
    font-style: italic;
    line-height: 1;
}




/* Background section */
.tm-section--faq-bg {
	background-image: url('images/bg-faq.jpg');
	background-size: cover;
	background-position: center;
	position: relative;
	color: #fff;
}
.tm-section--faq-bg.light { color: #f9f7e9; }
.tm-section--faq-bg.dark { color: #462850; }

.tm-section--faq-bg.custom-style { background-image: initial; }

/* Overlay */
.tm-section--faq-bg::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(80, 70, 70, 0.5); /* tweak to match */
	z-index: 1;
}
.tm-section--faq-bg.custom-style::before {
	display: none; 
}
	
	

/* Ensure content sits above overlay */
.tm-section--faq-bg .tm-section__inner {
	position: relative;
	z-index: 2;
	max-width: 960px;
}

/* Intro label */
.tm-faq__intro {
	font-size: 20px;
	margin-bottom: 40px;
	text-align: center;
}

/* FAQ wrapper */
.tm-faq {
	text-align: center;
}
.tm-section--faq-bg.light .tm-faq a { color: #f9f7e9; text-decoration: underline; }
.tm-section--faq-bg.dark .tm-faq a { color: #462850; text-decoration: underline; }

.tm-section ul { padding: 0 0 30px 25px; list-style: disc; line-height: 1.4; }
.tm-section p,
.tm-section p { margin-bottom: 20px; }

/* Item */
.tm-faq__item { border-bottom: 1px solid rgba(255,255,255,0.3); }
.tm-section--faq-bg.dark .tm-faq__item { border-bottom: 1px solid #462850; }
.tm-section--faq-bg.light .tm-faq__item { border-bottom: 1px solid #ffffff4d; }

.tm-faq__item:last-child,
.tm-section--faq-bg.dark .tm-faq__item:last-child,
.tm-section--faq-bg.light .tm-faq__item:last-child { border-bottom: none; }
/* Question */
.tm-faq__question {
	width: 100%;
	background: none;
	border: none;
	font-size: 32px;
	padding: 25px 0 25px 100px;
	cursor: pointer;
	position: relative;
	text-align: left;
    font-family: 'Neue Haas Unica Pro Light';
}

.tm-section.light .tm-faq__question {
	color: #f9f7e9;
}

/* Plus icon (left side) */
.tm-faq__question::before {
	content: "+";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 36px;
}

/* Answer */
.tm-faq__answer {
	display: none;
	padding: 0 0 30px 100px;
	font-size: 20px;
	line-height: 1.6;
	text-align: left;
}
.tm-faq__answer p:last-child { margin: 0; }

/* Active state */
.tm-faq__item.active .tm-faq__question::before {
	content: "–";
}





/* Divider */
.tm-divider {
	width: 1px;
	height: 100px;
	background: #f9f7e9;
	margin: 0 auto;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1px;
}

.tm-section.light .tm-divider,
.tm-divider--light {
	background: #f9f7e9;
}

.tm-section.dark .tm-divider,
.tm-divider--dark {
	background: #948699;
}

.tm-divider--grey {
	background: #bdbdbd;
}

.tm-divider--top {
	margin-bottom: 40px;
	top: 0;
	bottom: initial;
}

.tm-divider--bottom {
	margin-top: 40px;
	bottom: 0;
    top: initial;
}
.tm-divider--small {
	height: 50px;
}



/* Typography */
.tm-section h2 {
	font-size: 32px;
	font-weight: normal;
	margin-bottom: 20px;
}

.tm-section p {
	margin-bottom: 30px;
}

/* Button */
.tm-btn {
	display: inline-block;
	padding: 1.25rem 3.5rem 1.25rem 3.5rem;
	border-radius: 30px;
	background: #a5c3d7;
	text-decoration: none;
	font-size: 18px;
}
a.tm-btn { color:#462850;}

.tm-btn--small { padding: .625rem 1.25rem .625rem 1.25rem; font-size: 14px; }

.btn-watch { padding: 1.25rem 5.5rem 1.25rem 5.5rem; background: none; border: solid 1px #462850; border-radius: 40px; }

body.light a.btn-watch { border: solid 1px #f9f7e9; color: #f9f7e9; }


/* Split layout */
.tm-section--split {
	padding: 0; /* edge-to-edge */
}

/* Row clearfix */
.tm-row::after {
	content: "";
	display: table;
	clear: both;
}

/* Columns */
.tm-col {
	float: left;
	width: 50%;
}

.tm-table-row {
    display: table;
    width: 100%;
}
.tm-table-col {
    width: 50%;
    display: table-cell;
}




/* Image column */
.tm-col--image {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	min-height: 400px; /* fallback for very short content */
    position: relative;
}
.tm-col--image a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
}

/* Content column */
.tm-col--content {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	/*background: #e9e4d8;*/
	padding: 80px 40px;
	position: relative;
}

/* Override inner alignment for this layout */
.tm-col--content .tm-section__inner {
	max-width: 500px;
	text-align: left;
}

/* Typography tweak for this section */
.tm-col--content h2 {
	margin-bottom: 20px;
}

.tm-col--content p {
	margin-bottom: 20px;
}
.tm-section-quote-from {
    position: absolute;
    bottom: 20px;
    left: 40px;
}



/* Benefits */
.tm-benefit__header {
	margin-bottom: 20px;
}
.tm-benefit__image {
	width: 112px;
	height: 112px;
	border-radius: 16px;
	background-size: cover;
	background-position: center;
	margin-bottom: 15px;
	
	float: left;
	margin-right: 15px;
	margin-bottom: 0;
	
}

.tm-section--benefits {
	background-image: url('images/tm-list-small-ocean-lg.jpg');
	background-size: cover;
	background-position: center;
	color: #f9f7e9;
	text-align: center;
	position: relative;
	padding: 80px 20px 100px;
}
.tm-section--benefits.dark { color: #462850; }
.tm-section--benefits.light { color: #f9f7e9; }

.text-light { color: #f9f7e9; }
.text-dark { color: #462850; }


.tm-section--benefits .tm-section__inner {
	position: relative;
	z-index: 2;
	max-width: 1190px;
}

/* Intro */
.tm-benefits__intro {
	font-size: 20px;
	margin-bottom: 80px;
	color: #462850;
}

/* Row spacing */
.tm-row--4col,
.tm-row--3col,
.tm-row--2col {
	margin: 0 -20px;
}

.tm-row--2col { max-width: 1120px; margin: 0 auto; }
.tm-row--2col .tm-benefit { max-width: 373px; margin: 0 auto; }




/* Columns */
.tm-col--1-3 {
	width: 33.333%;
	padding: 0 20px;
	border-right: solid 1px #ffffff4d;
}
.tm-col--1-3:last-child {
	border-right: none;
}
.tm-col--1-2 {
	width: 50%;
	padding: 0 20px;
    text-align: left;
}
.tm-col--1-2:last-child {
	border-right: none;
}

.tm-col--1-4 {
	width: 25%;
	padding: 0 15px;
	float: left;
}

.vc_row.desktop { display: block; } 
.vc_row.vc_row-flex.desktop { display: flex; }
.vc_row.mobile { display: none; }
.vc_row.vc_row-flex.mobile { display: none; }

.tm-section--benefits.dark .tm-col--1-3 { border-right: solid 1px #6868684d; }
.tm-section--benefits.dark .tm-col--1-3:last-child { border-right: none; }

.tm-section--benefits.dark .tm-col--1-4 { border-right: solid 1px #6868684d; }
.tm-section--benefits.dark .tm-col--1-4:last-child { border-right: none; }


/* Individual benefit */
.tm-benefit {
	position: relative;
	padding: 0 20px 60px;
	height: 100%;
	max-height: 270px;
}

/* Small top icon (circle) */
.tm-benefit__icon {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #fff;
	margin: 0 auto 20px;
	opacity: 0.8;
}

/* Typography */
.tm-benefit h3 {
	font-size: 26px;
	margin-bottom: 10px;
	font-weight: normal;
	text-align: left;
	overflow: hidden;
}

.tm-benefit p {
	text-align: left;
	margin-bottom: 20px;
}
.tm-benefit p:last-child { margin-bottom: 0; }

/* Button variant */
.tm-btn--light {
	background: #e9e4d8;
	color: #333;
	margin-top: 50px;
}
.tm-btn.btn-transparent {
	display: inline-block;
	min-width: 170px;
	padding: 24px 40px;
	border-radius: 999px;
	background: transparent;
	margin: 20px 0;
	color: #ffffff;
	font-size: 18px;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	text-decoration: none;

	transition:
		background 0.25s ease,
		color 0.25s ease,
		box-shadow 0.25s ease;

	box-shadow:
		0 0 24px rgba(255, 212, 74, 0.45),
		0 0 50px rgba(255, 212, 74, 0.18);
	
}

.tm-btn.btn-transparent-2 {
	display: inline-block;
	min-width: 170px;
	padding: 24px 40px;
	border-radius: 999px;
	background: transparent;
	margin: 20px 0;
	color: #462850;
	font-size: 18px;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	text-decoration: none;

	transition:
		background 0.25s ease,
		color 0.25s ease,
		box-shadow 0.25s ease;

    box-shadow: 0 0 24px rgb(153 116 0 / 45%), 0 0 50px rgba(255, 212, 74, 0.18);
	
}

.tm-btn.btn-transparent:hover {
	background: #f4f1e7;
	color: #4b1f5c;

	box-shadow:
		0 0 24px rgba(255, 212, 74, 0.65),
		0 0 60px rgba(255, 212, 74, 0.28);
}
.btn-white { background-color: #f9f7e9; }
.btn-full-width { width: 100%; text-align: center; }

.top-bar { display: none; }
.top-bar > .top-bar-inner { display: inline-block; width: 530px; }
.top-bar > .top-bar-inner > .col1 { display: inline; float: left; width: 12%; }
.top-bar > .top-bar-inner > .col1 img { display: block; max-width: 45px; }
.top-bar > .top-bar-inner > .col2 { display: inline; float: left; padding: 14px 0 0 0; width: 87%; font-size: 16px; }


.home.active-top-bar .top-bar { display: block; }

.home.active-top-bar .top-bar { padding: 5px 20px 5px 20px; color: #462850; background: #f8eee5; text-align: center; position: fixed; width: 100%; top: 0px; z-index: 10; }
.home.active-top-bar .top-bar a { color: #462850; text-decoration: none; } 
.home.active-top-bar .top-bar a:hover { text-decoration: underline; } 

/* admin bar + top bar + nav */
.admin-bar.active-top-bar #wrapper { padding-top: 84px; }
.admin-bar.active-top-bar .top-bar { top: 32px; }
.admin-bar.active-top-bar .nav-bar { top: 91px; }
.admin-bar .nav-bar { top: 32px; }

.admin-bar #wrapper { padding-top: 75px; }

.home #wrapper { padding-top: 74px; }


.nav-bar { padding: 1rem 2rem 1rem 2rem; background: none; transition: background 500ms ease; position: fixed; width: 100%; top: 0px; z-index: 10; }
body.active-top-bar .nav-bar { top: 59px; }


.nav-bar .col1 { float: left; width: 15%; }
.nav-bar .col1 > .inner { max-width: 93px; padding: 0; }
.nav-bar .col1 > .inner img { max-width: 100%; }
.nav-bar .col2 { float: left; width: 70%; text-align: center; }
.nav-bar .col2 > .inner { padding: 9px 20px 0; display: inline-block; }

.nav-bar .col2 > .inner ul.menu {}
.nav-bar .col2 > .inner ul.menu > li { display: inline-block; margin: 10px 15px; }
.nav-bar .col2 > .inner ul.menu > li a { text-decoration: none; color: #462850; }
body.light .nav-bar .col2 > .inner ul.menu > li a { color: #fff; }

.nav-bar .col2 > .inner ul.menu > li a:hover { text-decoration: underline; }

.nav-bar .col2 > .inner ul.menu .sub-menu { display: none; position: absolute; font-size: 25px; line-height: 1.5; top: 120px; left: 37px; text-align: left; }
.nav-bar .col2 > .inner ul.menu .sub-menu a { transition: margin-left 250ms ease; }

body.tm-mobile-nav-open .nav-bar,
.nav-bar.active,
.nav-bar.scrolling { background: #f9f7e9; }



body.light.active-top-bar .nav-bar .col2 > .inner ul.menu > li a,
body.light .nav-bar.active .col2 > .inner ul.menu > li a,
body.light .nav-bar.scrolling .col2 > .inner ul.menu > li a { color: #462850; }

.nav-bar.active .col2 > .inner ul.menu li.active .sub-menu { display: block; }
.nav-bar.active .col2 > .inner ul.menu li.active .sub-menu a:hover { margin-left: 10px; text-decoration: none; }
.nav-bar.active .col2 > .inner ul.menu li.active .sub-menu.active a { opacity: 0.6; }
.nav-bar.active .col2 > .inner ul.menu li.active .sub-menu.active a.active { opacity: 1; }


body.light .logo-dark { display: none !important; }



body.error404 .logo-light,
body.dark .logo-light { display: none !important; }

body.error404 article { max-width: 500px; margin: 0 auto; text-align: center; padding-top: 100px; }

body.light .telephone-dark { display: none; }
body.dark .telephone-light { display: none; }

body.tm-mobile-nav-open.light .telephone-dark,
body.tm-mobile-nav-open.dark .telephone-dark { display: block !important; }

body.tm-mobile-nav-open.light .telephone-light,
body.tm-mobile-nav-open.dark .telephone-light { display: none !important; }

body.light .nav-bar.active .logo-dark,
body.light .nav-bar.scrolling .logo-dark,
body.light .nav-bar.active .telephone-dark,
body.light .nav-bar.scrolling .telephone-dark { display: block !important; max-width: 100%; }

body.tm-mobile-nav-open.light .logo-dark,
body.tm-mobile-nav-open.dark .logo-dark { display: block !important; max-width: 100%; }

body.tm-mobile-nav-open.light .logo-light,
body.tm-mobile-nav-open.dark .logo-light { display: none !important; }

body.light .nav-bar.active .logo-light,
body.light .nav-bar.scrolling .logo-light,
body.light .nav-bar.active .telephone-light,
body.light .nav-bar.scrolling .telephone-light { display: none !important; }

body.dark .nav-bar.active .logo-dark,
body.dark .nav-bar.scrolling .logo-dark,
body.dark .nav-bar.active .telephone-dark,
body.dark .nav-bar.scrolling .telephone-dark { display: block !important; }

body.dark .nav-bar.active .logo-light,
body.dark .nav-bar.scrolling .logo-light,
body.dark .nav-bar.active .telephone-light,
body.dark .nav-bar.scrolling .telephone-light { display: none !important; }


.nav-bar .col3 { float: left; width: 15%; text-align: right; }
.nav-bar .col3 > .inner { padding: 0; }



.nav-bar .col3 ul {}
.nav-bar .col3 ul li { float: left; padding-left: 40px; }
.nav-bar .col3 ul li.icon-telephone { padding-top: 4px; }
.nav-bar .col3 .tm-btn--small { padding: 15px 25px 15px 25px; font-size: 16px; }


#content { min-height: 500px; background: #f9f7e9; }



.form-find-a-teacher-stage-1 {}
.form-find-a-teacher-stage-1 input[type=submit] { 
	padding: 1.25rem 3.5rem 1.25rem 3.5rem;
	background: #fff;
	display: inline-block;
	border-radius: 40px;
	text-decoration: none;
	font-size: 18px;
	border: none;
    font-family: 'Neue Haas Unica Pro Light';
	color: #462850;
	cursor: pointer;
}
.form-find-a-teacher-stage-1 input[type=text] { 
	padding: 18px 85px 18px 3.5rem;
	margin-right: -70px;
	border: solid 2px #fff;
	border-radius: 40px;
	background: none;
	font-size: 18px;
    font-family: 'Neue Haas Unica Pro Light';
	color: #462850;
}
.widget-find-a-teacher-stage-1 > .inner {
    max-width: 565px;
    margin: 50px auto 60px;
}


#content > article > .wpb-content-wrapper > .vc_row:first-child,
.vc_row.first-child { padding-top: 74px; margin-top: -74px; }



/* page builder cotent */
#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row { max-width: 1200px; margin: 0 auto !important; }
#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row h2 { margin-bottom: 40px; }
#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row p { margin-bottom: 20px; }
#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row > .vc_col-sm-6:first-child > .vc_column-inner { padding-right: 50px; }
#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row > .vc_col-sm-6:last-child > .vc_column-inner { padding-left: 50px; }


/* focus slider */
.tm-focus {
	text-align: center;
	padding: 125px 20px 100px;
}

.tm-focus__slider {
	position: relative;
	margin-top: 40px;
}

.tm-focus__slider {
	position: relative;
	max-width: 900px;
	margin: 40px auto 0;
}

.tm-focus__viewport {
	overflow: hidden;
    margin-bottom: 50px;
}

.tm-focus__track {
	display: flex;
	align-items: flex-end;
	transition: transform 0.5s ease;
}

.tm-focus__slide {
	width: 260px;
	margin: 0 20px;
	flex-shrink: 0;

	transform: scale(0.85);
	opacity: 0.6;
	transition: transform 0.4s ease, opacity 0.4s ease;
}

.tm-focus__slide.is-active {
	transform: scale(1);
	opacity: 1;
}

.tm-focus__card {
	text-align: center;
}

.tm-focus__image {
	height: 340px;
	border-radius: 20px;
	background-size: cover;
	background-position: center;
	position: relative;
	overflow: hidden;
}

.tm-focus__slide:not(.is-active) .tm-focus__video {
	pointer-events: none;
}

/*
.tm-focus__image::after {
	content: "▶";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 30px;
	color: #fff;
	opacity: 0.8;
}

.tm-focus__image::after {
	opacity: 0;
	transition: opacity 0.3s;
}
.tm-focus__slide.is-active .tm-focus__image::after {
	opacity: 0.8;
}*/
.tm-focus__slide.is-active:hover {
	transform: scale(1.03);
}

.tm-focus__overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;

	padding: 20px;

	color: #fff;
	background: linear-gradient(to top, rgba(0,0,0,0.6), transparent);

	opacity: 0;
	transform: translateY(20px);
	transition: all 0.4s ease;
}

.tm-focus__slide.is-active .tm-focus__overlay {
	opacity: 1;
	transform: translateY(0);
}

.tm-focus__slide a { text-decoration: none; color: #462850; }

.tm-focus__meta {
	margin-top: 12px;
	font-size: 14px;
}

.tm-focus__meta strong {
	display: block;
}

.tm-focus__meta span {
	display: block;
	font-style: italic;
	opacity: 0.7;
}

.tm-focus__arrow {
	position: absolute;
	top: 45%;
	transform: translateY(-50%);

	width: 44px;
	height: 44px;

	border-radius: 50%;
	border: 1px dotted #555;
	background: none;

	cursor: pointer;
	z-index: 2;
}

.tm-focus__arrow--prev {
	left: -60px;
}

.tm-focus__arrow--next {
	right: -60px;
}



.tm-research-slider {
	background: #eee5dc;
	text-align: center;
}

.tm-section.tm-research-slider h2 {
	margin-bottom: 40px;
}

.tm-research-slider .tm-section__inner {
	max-width: 990px;
}

.tm-research-slider__title {
	margin-bottom: 40px;
}

.tm-research-slider__slider {
	position: relative;
	max-width: 990px;
	margin: 0 auto;
}

.tm-research-slider__viewport {
	overflow: hidden;
}

.tm-research-slider__track {
	white-space: nowrap;
	transition: transform 0.45s ease;
}

.tm-research-slider__slide {
	display: inline-block;
	width: 33.333%;
	padding: 0 6px;
	vertical-align: top;
	white-space: normal;
}
.tm-research-slider__slide a {
	color: #462850;
	text-decoration: none;
}
.tm-research-slider__card {
	height: 100%;
	padding: 24px;
	background: #f8f3df;
	border-radius: 16px;
	text-align: left;
}

.tm-research-slider__card h3 {
	font-size: 16px;
	line-height: 1.35;
	font-weight: normal;
	margin-bottom: 10px;
}

.tm-research-slider__card p {
	font-size: 13px;
	line-height: 1.35;
	margin-bottom: 8px;
	opacity: 0.75;
}

.tm-research-slider__author {
	font-style: italic;
	opacity: 1;
}

.tm-research-slider__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px dotted #4b285c;
	background: none;
	cursor: pointer;
	z-index: 2;
}

.tm-research-slider__arrow--prev {
	left: -70px;
}

.tm-research-slider__arrow--next {
	right: -70px;
}

.tm-research-slider__arrow.is-hidden {
	display: none;
}






/* mirrored layout */
.tm-section__inner--narrow {
	max-width: 800px;
}

/* Title */
.tm-mirrored-layout__title {
	text-align: center;
	margin-bottom: 40px;
}

/* Row */
.tm-mirrored-layout__row {
	margin: 60px 0;
}

.tm-mirrored-layout__row::after {
	content: "";
	display: table;
	clear: both;
}

/* Columns */
.tm-mirrored-layout__image,
.tm-mirrored-layout__content {
	float: left;
	width: 50%;
}

/* Image */
.tm-mirrored-layout__image {
	height: 350px;
	background-size: cover;
	background-position: center;
	border-radius: 20px;
}

/* Content */
.tm-mirrored-layout__content {
	padding: 40px;
	text-align: center;
}

.tm-mirrored-layout__content .table { display: table; width: 100%; height: 100%; }
.tm-mirrored-layout__content .table-cell { display: table-cell; vertical-align: middle;}

/* Reverse row */
.tm-mirrored-layout__row--reverse .tm-mirrored-layout__image {
	float: right;
}

/* Divider */
.tm-mirrored-layout__divider {
	position: relative;
	text-align: center;
	margin: 40px 0;
}

.tm-mirrored-layout__divider span {
	padding: 0 20px;
	position: relative;
	z-index: 2;
    font-size: 24px;
}

/* Divider lines */
.tm-mirrored-layout__divider::before,
.tm-mirrored-layout__divider::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 40%;
	height: 1px;
	background: #bbb;
}

.tm-mirrored-layout__divider::before {
	left: 0;
}

.tm-mirrored-layout__divider::after {
	right: 0;
}




/* testimonials */

.tm-testimonial {
	position: relative;
	overflow: hidden;
}

.tm-testimonial__track {
	white-space: nowrap;
	transition: transform 0.4s ease;
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.tm-section--testimonial {
	background: #e9e4d8;
	text-align: center;
}

.tm-section--testimonial .tm-section__inner {
	max-width: 900px;
}


.tm-testimonial__intro {
	font-size: 20px;
	margin-bottom: 65px;
}

.tm-testimonial__source {
	font-size: 28px;
	margin-bottom: 20px;
}

.tm-testimonial__source img {
	max-width: 180px;
}

.tm-testimonial__quote {
	font-size: 36px;
	line-height: 1.4;
	max-width: 900px;
	margin: 0 auto;
}

.tm-testimonial__mark {
	font-size: 84px;
	position: absolute;
	left: -2px;
	top: 18px;
    font-family: Louize Regular, serif;
}

.tm-testimonial__item {
	display: inline-block;
	width: 100%;
	vertical-align: top;
	white-space: normal;
    position: relative;
}

.tm-testimonial__item.active {
	display: block;
}

.tm-testimonial__prev,
.tm-testimonial__next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: 1px dotted #666;
	background: none;
	cursor: pointer;
	font-size: 18px;
}
.tm-testimonial__next {
	left: 50%;
	margin-left: 460px;
}

/* Left arrow (mirror it) */
.tm-testimonial__prev {
	left: 50%;
	margin-left: -540px;
}
.tm-testimonial__prev.is-hidden,
.tm-testimonial__next.is-hidden {
	opacity: 0;
	pointer-events: none;
}



/* feature benefits */
.tm-feature-benefits {
	position: relative;
	padding: 80px 90px;
	overflow: hidden;
    max-width: 1250px;
    margin: 0 auto;
}

/* Tabs */
.tm-feature-benefits__tabs {
	text-align: center;
	margin-bottom: 60px;
}

.tm-feature-benefits__tab {
	display: inline-block;
	margin: 0 34px;
	cursor: pointer;
	padding-bottom: 6px;
    font-size: 24px;
}

.tm-feature-benefits__tabs .tm-feature-benefits__tab:first-child { margin-left: 0; }
.tm-feature-benefits__tabs .tm-feature-benefits__tab:last-child { margin-right: 0; }

.tm-feature-benefits__tab.is-active {
	border-bottom: 1px solid #3b2354;
}

/* Slider */
.tm-feature-benefits__viewport {
	overflow: hidden;
}

.tm-feature-benefits__track {
	white-space: nowrap;
	transition: transform 0.5s ease;
}

/* Slide */
.tm-feature-benefits__slide {
	display: inline-block;
	width: 100%;
	white-space: normal;
}

/* Columns (float-based) */
.tm-feature-benefits__content {
	float: left;
	width: 45%;
	padding-right: 5%;
	font-size: 36px;
    line-height: 1.2;
}
.tm-feature-benefits__content .tm-btn {
	margin-top: 40px;
}

.tm-feature-benefits__image {
	float: left;
	width: 488px;
	height: 488px;
	background-size: cover;
	background-position: center;
	border-radius: 16px;
}

/* Arrows */
.tm-feature-benefits__arrow {
	position: absolute;
	top: 55%;
	background: none;
	border: 1px dotted #3b2354;
	border-radius: 50%;
	width: 44px;
	height: 44px;
	cursor: pointer;
}

.tm-feature-benefits__arrow--prev {
	left: 0px;
}

.tm-feature-benefits__arrow--next {
	right: 0px;
}

.tm-feature-benefits__arrow.is-hidden {
	display: none;
}



body .fancybox__content { padding: 0; background: none; }



.nav-bar .col3 .mobile-button { /* display: none; */ }


.tm-mobile-nav-toggle,
.tm-mobile-nav { display: none; }


.tm-mobile-nav-toggle {
	margin-top: 3px;
	width: 34px;
	height: 30px;
	position: relative;
	border: 0;
	background: none;
	cursor: pointer;
	padding: 0;
}

.tm-mobile-nav-toggle span {
	position: absolute;
	left: 0;
	width: 34px;
	height: 2px;
	background: #f9f7e9;
	transition: transform 0.3s ease, top 0.3s ease;
    z-index: 1000;
}

.tm-mobile-nav-toggle span,
.tm-mobile-nav-toggle.is-open span,
.nav-bar.scrolling .tm-mobile-nav-toggle span {
	background: #43234f;
}

.tm-mobile-nav-toggle span:first-child {
	top: 9px;
}

.tm-mobile-nav-toggle span:last-child {
	top: 20px;
}

.tm-mobile-nav-toggle.is-open span:first-child {
	top: 15px;
	transform: rotate(45deg);
}

.tm-mobile-nav-toggle.is-open span:last-child {
	top: 15px;
	transform: rotate(-45deg);
}

/* =========================
   MOBILE NAV PANEL
========================= */

.tm-mobile-nav {
	position: fixed;
	top: 75px;
	left: 0;
	right: 0;
	z-index: 999;
	background: #f9f7e9;
	padding: 32px 15px 40px;
	transform: translateY(-100%);
	transition: transform 0.35s ease;
}
.admin-bar .tm-mobile-nav { top: 107px; }

.tm-mobile-nav.is-open {
	transform: translateY(0);
}

body.tm-mobile-nav-open {
	overflow: hidden;
}

/* =========================
   NAV LIST
========================= */

.tm-mobile-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.tm-mobile-nav .menu-item {
	position: relative;
	margin-bottom: 16px;
}

.tm-mobile-nav a {
	display: block;
	text-decoration: none;
	color: #43234f;
	font-size: 28px;
	line-height: 1.2;
}

/* =========================
   SUB MENU
========================= */

.tm-mobile-nav .sub-menu {
	display: none;
	list-style: none;
	margin: 10px 0 18px;
	padding-left: 18px;
}

.tm-mobile-nav .sub-menu .menu-item {
	margin-bottom: 8px;
}

.tm-mobile-nav .sub-menu a {
	font-size: 18px;
	line-height: 1.35;
	opacity: 0.8;
}

/* =========================
   CSS ARROWS
========================= */

.tm-mobile-nav .menu-item-has-children {
	padding-right: 30px;
}

.tm-mobile-nav .menu-item-has-children::after {
	content: "";
	position: absolute;
	right: 9px;
	top: 14px;
	width: 9px;
	height: 9px;
	border-right: 2px solid #43234f;
	border-bottom: 2px solid #43234f;
	transform: rotate(45deg);
	transition: transform 0.3s ease;
}

.tm-mobile-nav .menu-item-has-children.is-open::after {
	transform: rotate(-135deg);
}





/* =========================
   Enquiry form
========================= */

.tm-enquiry-form {
    max-width: 420px;
    margin: 0 auto;
}
.tm-enquiry-form a { text-decoration: underline !important; }

.tm-enquiry-form *,
.tm-enquiry-form *::before,
.tm-enquiry-form *::after {
    box-sizing: border-box;
}


/* ----------------------------------------
   ROWS
---------------------------------------- */

.tm-enquiry-form__row {
    margin: 0 -6px 22px;
}

.tm-enquiry-form__row::after {
    content: "";
    display: block;
    clear: both;
}


/* ----------------------------------------
   TWO COLUMN
---------------------------------------- */

.tm-enquiry-form__row--two .tm-enquiry-form__field {
    float: left;
    width: 50%;
    padding: 0 6px;
}


/* ----------------------------------------
   PHONE ROW
---------------------------------------- */

.tm-enquiry-form__row--phone .tm-enquiry-form__country {
    float: left;
    width: 130px;
    padding: 0 6px;
}

.tm-enquiry-form__row--phone .tm-enquiry-form__field {
    float: left;
    width: calc(100% - 130px);
    padding: 0 6px;
}


/* ----------------------------------------
   FIELD
---------------------------------------- */

.tm-enquiry-form__field {
    position: relative;
    margin-bottom: 22px;
}

.tm-enquiry-form__field input,
.tm-enquiry-form__field textarea,
.tm-enquiry-form__country select {
    width: 100%;
    border: 0;
    border-bottom: 1px solid #e4d1cc;
    background: transparent;
    padding: 18px 0 10px;
    color: #2f1748;
    font-size: 18px;
    line-height: 25px;
    outline: none;
    border-radius: 0;
    appearance: none;
    -webkit-appearance: none;
    font-family: 'Neue Haas Unica Pro Light';
}

input:-internal-autofill-selected {
    background: transparent;
}


/* ----------------------------------------
   FLOATING LABELS
---------------------------------------- */

.tm-enquiry-form__field label {
    position: absolute;
    left: 5px;
    top: 18px;
    color: #9b84a4;
    font-size: 18px;
    line-height: 1;
    pointer-events: none;
    transition: all 0.18s ease;
}

.tm-enquiry-form__field.is-active label {
    top: 0;
    font-size: 16px;
    color: #7d6887;
}

.tm-enquiry-form__field label[for=tm_postcode] { left: 0px; }
.tm-enquiry-form__field label[for=tm_email] { left: 0px; }
.tm-enquiry-form__field label[for=tm_message] { left: 0px; }


/* ----------------------------------------
   COUNTRY SELECT
---------------------------------------- */

.tm-enquiry-form__country {
    position: relative;
}

.tm-enquiry-form__country::after {
    content: "⌄";
    position: absolute;
    right: 6px;
    bottom: 12px;
    color: #2f1748;
    font-size: 14px;
    pointer-events: none;
}

.tm-enquiry-form__country select {
    cursor: pointer;
    padding-right: 22px;
}


/* ----------------------------------------
   TEXTAREA
---------------------------------------- */

.tm-enquiry-form__field textarea {
    min-height: 80px;
    resize: vertical;
}


/* ----------------------------------------
   TOGGLE
---------------------------------------- */

.tm-enquiry-form__toggle {
    display: block;
    position: relative;
    padding-left: 62px;
    min-height: 28px;
    line-height: 28px;
    color: #2f1748;
    font-size: 16px;
    cursor: pointer;
    margin-bottom: 14px;
}

.tm-enquiry-form__toggle input {
    display: none;
}

.tm-enquiry-form__toggle span {
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 28px;
    border-radius: 999px;
    background: #c9c9d4;
    transition: background 0.2s ease;
}

.tm-enquiry-form__toggle span::before {
    content: "";
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #ffffff;
    position: absolute;
    left: 3px;
    top: 3px;
    transition: transform 0.2s ease;
}

.tm-enquiry-form__toggle input:checked + span {
    background: #f5aa0a;
}

.tm-enquiry-form__toggle input:checked + span::before {
    transform: translateX(22px);
}


/* ----------------------------------------
   SUBMIT
---------------------------------------- */

.tm-enquiry-form__submit {
    width: 100%;
    border: 0;
    border-radius: 999px;
    padding: 18px;
    background: #ded9dc;
    color: #c1b7bf;
    font-size: 16px;
    line-height: 1;
    cursor: not-allowed;
    transition: all 0.2s ease;
}

.tm-enquiry-form__submit:not(:disabled) {
    background: #a5c3d7;
    color: #ffffff;
    cursor: pointer;
}


/* ----------------------------------------
   VALIDATION
---------------------------------------- */

.tm-enquiry-form__field.has-error input,
.tm-enquiry-form__field.has-error textarea {
    border-bottom-color: #d63638;
}

.tm-enquiry-form__field.has-error::after {
    content: "Required";
    display: block;
    margin-top: 6px;
    color: #d63638;
    font-size: 12px;
    line-height: 1;
}




.tm-enquiry-form input:-webkit-autofill,
.tm-enquiry-form input:-webkit-autofill:hover,
.tm-enquiry-form input:-webkit-autofill:focus,
.tm-enquiry-form textarea:-webkit-autofill,
.tm-enquiry-form textarea:-webkit-autofill:hover,
.tm-enquiry-form textarea:-webkit-autofill:focus,
.tm-enquiry-form select:-webkit-autofill {
    -webkit-text-fill-color: #2f1748;
    -webkit-box-shadow: 0 0 0px 1000px transparent inset;
    transition: background-color 9999s ease-in-out 0s;
    background-color: transparent !important;
}

.tm-enquiry-form-text--title { font-size: 36px; line-height: 120%; margin: 20px 0; text-align: center; }
.tm-enquiry-form-text--call { font-size: 18px; line-height: 140%; margin: 20px 0; text-align: center; }
.tm-enquiry-form-text--address { font-size: 18px; line-height: 140%; margin: 20px 0; text-align: center; }
.tm-enquiry-form-text--text_above { font-size: 24px; margin: 20px 0; text-align: center; }
.tm-enquiry-form-text--text_below { font-size: 14px; margin: 20px 0; text-align: left; color: #907e96; }
.tm-enquiry-form-text--text_below a { color: #f5aa0a; }



/* Intro talks */
.tm-intro-talks {
	/*background-image: url('images/bg-intro-talks.jpg');*/
	background: #f6ede5;
	
	background-size: cover;
	background-position: center;
	color: #45274f;
	text-align: center;
	position: relative;
	padding: 80px 20px 100px;
}

.tm-intro-talks__inner {
	max-width: 1180px;
	margin: 0 auto;
}

.top-bar .top-bar-inner::after,
.tm-intro-talks__inner::after,
.tm-session__trigger::after {
	content: "";
	display: block;
	clear: both;
}

.tm-intro-talks__content {
	float: left;
	width: 50%;
	padding-top: 50px;
	text-align: center;
}

.tm-intro-talks__content ul { list-style: disc; padding: 10px 0 10px 20px; }

.tm-intro-talks__content h2 {
	margin: 0 0 35px;
	font-size: 40px;
	font-weight: 400;
}

.tm-intro-talks__content p {
	/*
	max-width: 430px;
	margin: 0 auto;*/
	line-height: 1.4;
}

.tm-intro-talks__list {
	float: right;
	width: 420px;
}

.tm-session {
	border-bottom: 1px dotted rgba(47, 23, 72, 0.35);
}

.tm-session.hidden { display: none; }

.tm-session__trigger {
	width: 100%;
	border: 0;
	background: transparent;
	padding: 20px 0;
	text-align: left;
	cursor: pointer;
	color: #2f1748;
    font-size: 18px;
}

.tm-session__icon {
	float: left;
	width: 80px;
	height: 80px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.65);
	text-align: center;
	line-height: 64px;
	font-size: 24px;
	position: relative;
}
.tm-session__icon img { max-width: 100%; border-radius: 20px; }

.tm-session__details {
	float: left;
	width: 220px;
	padding: 5px 0 0 20px;
    font-family: Neue Haas Unica Pro Light;
}

.tm-session__details strong,
.tm-session__details span,
.tm-session__details em {
	display: block;
}

.tm-session__details strong {

}

.tm-session__details span {
	margin-top: 0;
}

.tm-session__details em {
	margin-top: 2px;
    font-size: 20px;
}

.tm-session__arrow {
	float: right;
	font-size: 34px;
	line-height: 64px;
	transition: transform 0.2s ease;
}

.tm-session.is-open .tm-session__arrow {
	transform: rotate(90deg);
}

.tm-session__form {
	display: none;
	padding: 20px;
	margin: 0 0 24px 0;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 8px;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
}

.tm-session__form input {
	width: 100%;
	border: 0;
	border-bottom: 1px solid rgba(47, 23, 72, 0.35);
	background: transparent;
	padding: 12px 0;
	margin-bottom: 18px;
	color: #2f1748;
	outline: none;
    font-family: Neue Haas Unica Pro Light;
    font-size: 18px;
}

.tm-session__form button {
	width: 100%;
	border: 0;
	border-radius: 999px;
	background: #a8cbe2;
	color: #2f1748;
	padding: 15px;
	cursor: pointer;
    font-family: Neue Haas Unica Pro Light;
    font-size: 18px;
}
.tm-session__form input.has-error {
	border-bottom-color: #d63638;
}

.tm-session__form input.has-error::placeholder {
	color: #d63638;
}
.tm_intro_talks_see_more { margin-top: 40px; }



.tm-benefit .tm-btn { position: absolute; bottom: 0px; margin: 0; }




.box-messsage { border: solid 2px #ccc; padding: 10px; margin: 10px 0; }
.box-messsage.ok { color: #467316; border-color: #7cb348; background: #f1ffe9; }
.box-messsage.fail { color: #a93535; border-color: #e75252; background: #fff1f1; }
.box-messsage.loading { color: #833e00; border-color: #ffc63a; background: #fff4b9; position: relative; }
.box-messsage.loading:after {
	content: "";

	position: absolute;
	right: 20px;
	top: 50%;

	width: 26px;
	height: 26px;

	margin: -13px 0 0 -13px;

	border: 3px solid rgba(47,23,72,0.15);
	border-top-color: #cd6f00;
	border-radius: 50%;

	animation: tm-loading-spinner 0.7s linear infinite;
}

@keyframes tm-loading-spinner {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}


/* Mobile */
@media (max-width: 1083px) {
	
	.vc_row.desktop,
	.vc_row.vc_row-flex.desktop { display: none !important; }
	
	.vc_row.mobile,
	.vc_row.vc_row-flex.mobile { display: flex !important; }
	
	/* force dark logo on mobile home */
	body.dark .logo-dark { display: block !important; }
	body.light .logo-dark { display: block !important; }
	body.dark .logo-light { display: none !important; }
	body.light .logo-light { display: none !important; }
	
	
	.tm-section--split .tm-table-row {
		display: flex;
		flex-direction: column;
	}

	.tm-section--split .tm-col--image {
		order: 1;
	}

	.tm-section--split .tm-col--content {
		order: 2;
	}
	
	
	
	#content { padding-top: 50px; }
	
	#content > article > .wpb-content-wrapper > .vc_row:first-child .tm-section.tm-section--split { padding-top: 10px; }
	
	.tm-section-quote-from { position: relative; bottom: initial; left: initial; }
	
	.nav-bar .col3 ul li.icon-telephone { display: none; }
	.tm-mobile-nav { padding: 65px 15px 40px; }
	
	.top-bar > .top-bar-inner { width: auto; }
	.top-bar > .top-bar-inner > .col2 { padding: 8px 0 0 0; font-size: 14px; }
	
	
	.tm-btn { padding: 20px 30px; }
	.tm-benefit .tm-btn { position: relative; bottom: initial; margin: 0 0 20px; }
	
	
	.nav-bar .tm-btn,
	.nav-bar .col3 .tm-btn--small	{ padding: 7px 12px; }
	
	.tm-intro-talks__content,
	.tm-intro-talks__list { float: none; width: 100%; }
	
	.tm-intro-talks__content { padding-top: 0px; }
	.tm-intro-talks__list { max-width: 450px; margin: 40px auto 0; }
	
	.tm-focus__arrow--prev { left: -10px; display: inline-block !important; }
	.tm-focus__arrow--next { right: -10px; display: inline-block !important; }
	
	.vc_empty_space { height: 60px !important; }
	
	body .wpb_text_column,
	body .wpb_single_image.vc_align_left,
	body .wpb_single_image.vc_align_right { text-align: center; }
	
	h2,
	.tm-section h2 { font-size: 28px; }
	
	.tm-section p { margin-bottom: 20px; }
	
	
	.tm-faq__question { font-size: 28px; padding: 20px 0 20px 50px; }
	.tm-faq__answer { font-size: 20px; padding: 0 0 30px 50px;}
	
	.tm-section { padding: 60px 20px 60px; }
	.tm-section.tm-section--split { padding: 0 0 10px; }
	
	.nav-bar { padding: 1rem 15px 1rem 15px; background: #f9f7e9; }
	
	.nav-bar .col1 { width: 20%; }
	.nav-bar .col2 { display: none; }
	
	.nav-bar .col3 { width: 80%; }
	.nav-bar .col3 > .inner { display: inline-block; }
	.nav-bar .col3 ul li { padding-left: 20px; }
	.nav-bar .col3 .tm-mobile-nav-toggle { -webkit-appearance: button; background-color: transparent; background-image: none; border: none; cursor: pointer; display: inline-block; }
	
	
	.tm-mobile-nav-toggle,
	.tm-mobile-nav-open .tm-mobile-nav { display: block; }
	
	.tm-testimonial__prev, .tm-testimonial__next { left: initial; top: initial; position: relative; margin: 0 10px; transform: none; }
	.tm-testimonial__prev.is-hidden, .tm-testimonial__next.is-hidden { opacity: 1; pointer-events: initial; }
	
	.tm-research-slider__slide { width: 100%; }
	.tm-research-slider__arrow--prev, .tm-research-slider__arrow--next { left: initial; right: initial; top: initial; position: relative; margin: 0 10px; transform: none; }
	.tm-research-slider__arrow--prev.is-hidden, .tm-research-slider__arrow--prev.is-hidden { opacity: 1; pointer-events: initial; display: inline-block; }
	.tm-research-slider__viewport { margin-bottom: 30px; }
	.tm-section.tm-research-slider h2 { font-size: 28px; }
	
	
	#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row > .vc_col-sm-6:first-child > .vc_column-inner { padding: 0 20px 40px; }
	#content > article > .wpb-content-wrapper > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper .vc_row > .vc_col-sm-6:last-child > .vc_column-inner { padding: 0 20px 0; }
	
	.tm-divider { height: 50px; }
	
	.tm-btn--light,
	.tm-btn--dark { margin-top: 0; margin-bottom: 20px; }
	
	ul.list-socials li { margin: 0 10px; }
	
	.tm-benefit { padding: 0 20px 0px; max-height: initial; }
	.tm-benefit h3 { text-align: center; top: 0px; position: relative; }
	.tm-benefit__header { text-align: center; border-bottom: solid 1px #c3c3c3; padding-bottom: 20px; position: relative; }
	.tm-feature-benefits__tab { display: block; margin: 0; position: relative; }
	.tm-feature-benefits { padding: 80px 20px; text-align: center; }
	.tm-feature-benefits__content { padding: 0 0 40px 0; }
	.tm-feature-benefits__content .tm-btn { margin-top: 20px; }
	.tm-feature-benefits__tabs { display: none; }
	.tm-feature-benefits__content { float: none; width: 100%; }
	
	
	
	.tm-section--benefits.dark .tm-col--1-3 { border-right: none; }
	
	.tm-feature-benefits__arrow--next,
	.tm-feature-benefits__arrow--prev,
	.tm-feature-benefits__arrow--next.is-hidden,
	.tm-feature-benefits__arrow--prev.is-hidden { margin: 0 10px; opacity: 1; position: relative; top: initial; left: initial; right: initial; display: inline-block; }
	.tm-feature-benefits__viewport { margin-bottom: 30px; }
	.tm-feature-benefits__image { float: none; margin: 0 auto; }
	
	
	.tm-mirrored-layout__row { margin: 40px 0 30px; }
	
	.tm-mirrored-layout__row--reverse .tm-mirrored-layout__image,
	.tm-mirrored-layout__image,
	.tm-mirrored-layout__content {
		float: none;
		width: 100%;
	}

	.tm-mirrored-layout__content {
		padding: 20px 0 0;
		text-align: center;
	}
	
	.tm-row--2col .tm-benefit,
	.tm-benefit p { text-align: center; }
	.tm-benefits__intro { margin-bottom: 40px; }
	
	.tm-col--1-4 {
		width: 100%;
		float: none;
		margin-bottom: 30px;
	}
	
	
	
	
	tm-feature-benefits__image {
		width: 244px;
		height: 244px;
	}
	
	
	.tm-focus__arrow { position: relative; }
	
	
	
	.footer .row1 > .inner .col1,
	.footer .row1 > .inner .col2,
	.footer .row1 > .inner .col3,
	.footer .row2 > .inner .col1,
	.footer .row2 > .inner .col2 { width: 100%; float: none; }
	
	.footer .row1 > .inner .col1 { padding-bottom: 50px; }
	
	.footer .row2 > .inner .col1,
	.footer .row2 > .inner .col2 { padding-bottom: 50px; }
	
	.footer .row1 > .inner .col1 > .inner,
	.footer .row1 > .inner .col2 > .inner,
	.footer .row1 > .inner .col3 > .inner,
	.footer .row2 > .inner .col1 > .inner,
	.footer .row2 > .inner .col2 > .inner { padding: 0; }
	
	.footer .row1 > .inner { padding: 3.5rem 1.5rem 1.5rem 1.5rem; }
	.footer .row2 > .inner { padding: 1.5rem 1.5rem 1.5rem 1.5rem; }
	.footer .row2 > .inner .col1 { font-size: 16px; }


	.tm-col {
		float: none;
		width: 100%;
	}

	.tm-col--content {
		padding: 40px 20px;
	}
	
	.tm-table-row {
		display: block;
		width: 100%;
	}
	.tm-table-col {
		width: 100%;
		display: block;
	}
	
	
	.mh-740,
	.mh-400 {
		min-height: 0px;
	}
	
	.tm-col--1-3,
	.tm-col--1-2	{
		width: 100%;
		float: none;
		margin-bottom: 20px;
	}
	
	.tm-col--1-3:last-child,
	.tm-col--1-2:last-child {
		margin-bottom: 0;
	}
	
	.tm-col--1-3:not(:last-child) .tm-benefit::after,
	.tm-col--1-2:not(:last-child) .tm-benefit::after	{
		display: none;
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
}



