/* Coach fonts */

/* @font-face {
    font-family: UniversNextUltLt;
	font-weight: 100;
    font-style: normal;
	font-display: auto;
	src: url('../fonts/UniversNext-UltLt.woff') format('woff'),
		url('../fonts/UniversNext-UltLt.ttf') format('truetype');
} */
@font-face {
    font-family: UniversNextLt;
	font-weight: 200;
    font-style: normal;
	font-display: auto;
	src: url('../fonts/UniversNext-Lt.woff') format('woff'),
		url('../fonts/UniversNext-Lt.ttf') format('truetype');
}
@font-face {
    font-family: UniversNext;
	font-weight: 400;
    font-style: normal;
	font-display: auto;
	src: url('../fonts/UniversNext-Rg.woff') format('woff'),
		url('../fonts/UniversNext-Rg.ttf') format('truetype');
}
@font-face {
    font-family: UniversNextMd;
	font-weight: 500;
    font-style: normal;
	font-display: auto;
	src: url('../fonts/UniversNext-Md.woff') format('woff'),
		url('../fonts/UniversNext-Md.ttf') format('truetype');
}
@font-face {
    font-family: UniversNextBd;
	font-weight: 700;
    font-style: normal;
	font-display: auto;
	src: url('../fonts/UniversNext-Bd.woff') format('woff'),
		url('../fonts/UniversNext-Bd.ttf') format('truetype');
}

/* http://meyerweb.com/eric/tools/css/reset/ */
/* v1.0 | 20080212 */

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, font, figure, 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 {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

/*
 * Minus
 */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; }

.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; }

.hamburger--minus.is-active .hamburger-inner::before {
  top: 0; }

.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0; }


/*************************
 * Coach theme styles *
 *************************/
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html {
	max-width: 100vw;
	overflow-x: hidden;
	font-size: 62.5%;
}
body {
	color: #404040;
	background: #f5f5f5;
	font-family: 'UniversNext', sans-serif;
	font-weight: 400;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 100%;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5 {
	margin: 0 0 1em;
	font-family: 'UniversNextBd', sans-serif;
	font-weight: 700;
	line-height: 1.3;
}
p {
	margin: 0 0 1.382em;
	font-size: 1em;
	line-height: 1.4;
}
ul {
	margin-bottom: 2em;
}
a {
	outline: transparent solid 0px;
}
strong {
    font-family: 'UniversNextMd', sans-serif;
	font-weight: 500;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
sup.ext {
	color: #e96232;
}
.nowrap {
	white-space: nowrap;
}
:hover, :focus {
    outline: none;
}

/* Disable tap highlight */
button,
textarea,
input,
select,
a,
.logo,
.scroll-cue,
.services > div,
.testimonials-nav > div {
 -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
 -webkit-tap-highlight-color: transparent;
 -webkit-user-select: none;
 -khtml-user-select: none;
 -moz-user-select: none;
 -ms-user-select: none;
  user-select: none;
}

/*
 * Buttons
 */
 
/*
 * Menu
 */
body > header {
	width: 100%;
	height: 70px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	overflow: hidden;
	background-color: #f5f5f5;
	transition: top 0.3s ease, height 0.3s ease;
}
body.scrolled > header:not(.open) {
	position: fixed;
	top: -70px;
}
body > header.open {
	height: 100vh;
}
body > header nav {
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	opacity: 1;
	transition: top 0.3s ease, opacity 0.3s ease;
}
body > header.open nav {
	top: 70px;
	opacity: 1;
}
body > header nav ul {
	margin: 100px 20px 0;
}
body > header nav ul li {
	font-size: 18px;
	font-size: 1.8rem;
}
body > header nav ul li a {
	padding: 10px 0;
	display: block;
	color: #404040;
	text-decoration: none;
}

/* Hamburger */
.hamburger {
	behavior: url(PIE.htc);
	padding: 20px 20px;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 99999;
	opacity: 1;
	line-height: 0;
	transition: top 0.3s ease;
}
.hamburger:hover {
	opacity: 1;
}
body.scrolled > header:not(.open) .hamburger {
	top: -70px;
}
.hamburger.is-active:hover {
	opacity: 1;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
	background-color: #404040;
}
.hamburger-box {
	width: 35px;
	height: 30px;
	line-height: 0;
}
.hamburger-inner {
	margin-top: -1px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 35px;
	height: 1px;
	background-color: #404040;
}
.hamburger-inner::before {
	top: -9px;
}
.hamburger-inner::after {
	bottom: -9px;
}

/* Logo */
body > header > div.logo {
	width: 196px;
	height: 35px;
	margin: 18px 0 17px;
	position: fixed;
	top: 0;
	left: 20px;
	z-index: 9;
	cursor: pointer;
	opacity: 0.7;
	background-image: url(../img/logo.png);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	transition: top 0.3s ease;
}
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-device-pixel-ratio: 2) { body > header > div.logo { background-image: url(../img/logo@2x.png); } }
@media screen and (-webkit-min-device-pixel-ratio: 3), screen and (min-device-pixel-ratio: 3) { body > header > div.logo { background-image: url(../img/logo@3x.png); } }

body.scrolled > header:not(.open) > div.logo {
	top: -70px;
}
/*
 * Homepage
 * Hero
 */
.hero,
.global-hero {
	width: 100%;
	height: 100vh;
	margin-left: 10px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.hero video {
	height: 100%;
    width: 177.77777778vh; /* 100 * 16 / 9 */
    min-width: 100%;
    min-height: 56.25vw; /* 100 * 9 / 16 */
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-image: url(../img/hero.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;	
}
.hero h1 {
	width: 80%;
	max-width: 550px;
	margin-bottom: 0;
	position: fixed;
	top: 120px;
	right: 20px;
	opacity: 0.7;
	color: #000;
	font-family: 'Playfair Display', serif;
	font-size: 1.875em;
	font-weight: 400;
	text-align: right;
}
.scroll-down-cue {
	width: 41px;
	height: 30px;
	margin-left: -10px;
	left: 50%;
	bottom: 70px;
	position: absolute;
	z-index: 99;
	opacity: 1;
	transform: translateX(-50%);
	transition: transform 0.5s ease, opacity 0s;
	animation: mover 5s infinite cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.scroll-down-cue::before,
.scroll-down-cue::after {
	content: '';
	width: 25px;
	height: 1px;
	position: absolute;
	top: 0;
	left: 0;
	transform: rotate(45deg);
	background-color: #fff;
}
.scroll-down-cue::after {
	left: 17px;
	transform: rotate(-45deg);
}
@keyframes mover {
	10%, 100% {
		transform: translateX(-50%) translateY(0);
	}
	0% {
		transform: translateX(-50%) translateY(0);
	}
	5% {
		transform: translateX(-50%) translateY(-10px);
	}
}
.scroll-down-cue.hide {
	opacity: 0;
}
/* Mouse wheel scroll down cue
.scroll-down-cue {	
	width: 30px;
	height: 50px;
	margin-left: -10px;
	border-radius: 40px;
	border: 2px solid #fff;
	position: absolute;
	bottom: 75px;
	left: 50%;
	transform: translate(-50%);
	cursor: pointer;
}
.scroll-down-cue::before {
	height: 6px;
	width: 6px;
	content: '';
	position: absolute;
	left: calc(50% - 3px);
	top: 10px;   
	background-color: #fff;
	border-radius: 50%;
	animation: scroll 3s infinite;
}
@keyframes scroll {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
		transform: translateY(0);
	}
	40% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		transform: translateY(10px);
	}
} */

/* Narrow line scroll down cue
.scroll-down-cue {
	width: 1px;
	height: 100px;
	margin-left: -11px;
	position: absolute;
	bottom: 70px;
	left: 50%;
	background-color: rgba(255, 255, 255, 0.3);
	overflow: hidden;
}
.scroll-down-cue::before {
	content: '';
	width: 1px;
	height: 100px;
	position: absolute;
	top: -100px;
	left: 0px;
	background-color: #fff;
	transition: top ease;
	animation: scroll 5s infinite ease;
}
@keyframes scroll {
	0%,50% {
		top: -100px;
	}
	75% {
		top: 0px;
	}
	100% {
		top: 100px;
	}
} */

/* Fade effect */
.fade-effect {
	opacity: 0;
	animation-duration: 1s;
	animation-fill-mode: both;
	animation-timing-function: ease-in-out;
}
@keyframes fadeInUp {
	from { opacity: 0; transform: translateY(20px); }
	to { opacity: 1; transform: translateY(0); }
}
.fade-in-up {
	animation-name: fadeInUp;
}

/* Structure */
main {	
	margin-top: 100vh;
	position: relative;
	z-index: 99;
	background-color: #f5f5f5;
}
main section {
	padding-top: 80px;
}
main section header {
	width: 100%;
	padding: 0 10px;
	text-align: center;
}
main section header h2,
main section header span.h2 {
	margin-bottom: 0.5em;
	display: block;
	font-family: 'Amiri', serif;
	font-size: 1.375em;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}
main section > div > div a,
section.content div.wrap article a,
footer a {
	color: #00f;
	text-decoration-color: #9393f9;
	text-decoration-color: rgba(0, 0, 255, 0.4);
	transition: text-decoration-color 0.2s ease;
}
main section > div > div a:hover,
section.content div.wrap article a:hover,
footer a:hover {
	text-decoration-color: #00f;
	text-decoration-color: rgba(0, 0, 255, 1);
}
p.subtitle {
	margin-bottom: 70px;
	font-family: 'UniversNextLt', sans-serif;
	font-size: 1em;
	font-weight: 200;
	line-height: 1.3;
}

/* Who */
.home main section.who div.wrap {
	width: 100%;
	text-align: center;
}
.who-content {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.who-content div.words,
.who-content picture {
	width: 100%;
}
.who-content div.words {
	padding: 0 10px;
	order: 1;
	text-align: left;
}
.who-content picture {
	width: 100%;
	margin-bottom: 1.382em;
	order: 0;
}
.who-content picture img {
	width: 100%;
	display: block;
}
.who-content div.words p:last-of-type {
	margin: 0;
}

/* What */
.home main section.what div.wrap {
	text-align: center;
}
.home main section.what div.wrap p.subtitle {
	margin-bottom: 60px;
}
.services {
	max-width: 1200px;
	margin: 0 auto 80px;
	padding: 0 10px;
	display: flex;
	flex-direction: column;
	z-index: 1;
}
.services > div {
	width: 100%;
	max-width: 400px;
	min-height: 500px;
	margin: 0 auto 30px;
	position: relative;
}
.services > div > div.bg-image {
	width: 100%;
	height: calc( 100% - 50px);
	margin: 0;
	position: absolute;
	top: 50px;
	left: 0;
	overflow: hidden;
	background-color: #ccc;
}
.services > div > div.bg-image div {
	width: 100%;
	height: 200%;
	position: absolute;
	top: 0;
	left: 0;
	background-size: cover;
	background-position: center 0;
	background-repeat: no-repeat;
}
.services > div.performance > div.bg-image div {
	background-image: url(../img/services_performance.jpg);
}
.services > div.wellbeing > div.bg-image div {
	background-image: url(../img/services_wellbeing.jpg);
}
.services > div.mediation > div.bg-image div {
	background-image: url(../img/services_mediation.jpg);
}
.services > div > h2 {
	width: 100%;
	height: 50px;
	position: absolute;
	z-index: 99;
	pointer-events: none;
	font-family: 'Amiri', serif;
	font-weight: 400;
	font-size: 1.0625em;
	line-height: 50px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}
.services > div > div.words {
	min-height: 500px;
	padding: 70px 30px 30px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
	cursor: pointer;
	background-color: rgba(204, 204, 204, 0);
	text-align: left;
	transition: background-color 1s ease;
}
.services > div > div.words:hover {
	background-color: rgba(204, 204, 204, 1);
}
.services > div > div.words p {
	opacity: 0;
	transition: opacity 1s ease;
}
.services > div > div.words:hover p {
	opacity: 1;
}
.services > div > div.words button,
.services > div > div.words a {
	width: 50%;
	height: 50px;
	border: 0;
	padding: 15px 0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 99;
	cursor: pointer;
	color: #404040;
	background-color: #ccc;
	font-family: 'UniversNext', sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 19px;
	text-align: center;
	text-decoration: none;
	transition: opacity 1s ease;
}
.services > div > div.words a {
	width: 50%;
	position: absolute;
	right: 0;
	bottom: 0;
	left: auto;
	opacity: 0;
	pointer-events: none;
	background-color: #f5f5f5;
	text-indent: 19px;
	transition: opacity 1s ease, text-indent 0.2s ease;
}
.services > div > div.words:hover button {
	opacity: 0;
}
.services > div > div.words:hover a {
	opacity: 1;
}
.services > div > div.words a:hover {
	text-indent: 0;
}
.services > div > div.words a.active {
	pointer-events: auto;
}
.services > div > div.words a i {
	margin-left: 5px;
	position: relative;
	top: -10px;
	left: -10px;
	opacity: 0;
	text-indent: 0;
	transition: top 0.2s ease, left 0.2s ease, opacity 0.2s ease;
}
.services > div > div.words a:hover i {
	top: 0;
	left: 0;
	opacity: 1;
}
.what-is-lifecoaching {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.what-is-lifecoaching picture,
.what-is-lifecoaching div.words {
	width: 100%;
	text-align: left;
}
.what-is-lifecoaching picture {
	width: 100%;
	order: 1;
}
.what-is-lifecoaching picture img {
	width: 100%;
}
.what-is-lifecoaching div.words {
	padding: 0 10px;
	order: 0;
}
.what-is-lifecoaching div.words h2,
.what-is-lifecoaching div.words h3 {
	font-family: 'UniversNextMd', sans-serif;
	font-size: 1.125em;
	font-weight: 500;
}
.what-is-lifecoaching div.words p:last-of-type {
	margin-bottom: 1.75em;
}
.what-is-lifecoaching div.words ul li {
	margin-bottom: 0.5em;
	line-height: 1.4;
}
.what-is-lifecoaching div.words ul li span.fa-li {
	top: 1px;
}
/* Testimonials */
.swiper-slide blockquote {
	width: 100%;
	max-width: 1152px;
	margin: 0 auto 50px;
	padding: 0 20px;
}
.swiper-slide blockquote p {
	margin-bottom: 0.3em;
	position: relative;
	font-family: 'UniversNextMd', sans-serif;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 500;
}
.swiper-slide blockquote p::before, .swiper-slide blockquote p::after {
    content: '\201C';
    height: auto;
    display: inline;
    position: static;
    top: auto;
    left: auto;
	font-size: 20px;
	font-size: 2rem;
}
.swiper-slide blockquote p::before {
	display: block;
	position: absolute;
	left: -10px;
}
.swiper-slide blockquote p::after {
    content: '\201D';
}
.swiper-slide blockquote cite {
	font-family: 'UniversNextLt';
	font-weight: 200;
	font-style: normal;
}
.testimonials-nav {
	margin: 0 auto;
	position: relative;
	text-align: center;
}
.testimonials-nav > div,
nav.pagination a {
	width: auto;
	height: auto;
	display: inline-block;
	position: relative;
	left: auto;
	right: auto;
	color: #404040;
	font-size: 1.125em;
	transition: color 0.2s ease;
}
.testimonials-nav > div.swiper-button-next,
nav.pagination a.next,
.pagination > span.next {
	margin-left: 50px;
}
.testimonials-nav > div::after {
	display: none;
}
.testimonials-nav > div.swiper-button-next::before,
.pagination > a.next::before,
.pagination > span.next::before {
	content: '';
	width: 40px;
	height: 1px;
	display: block;
	position: absolute;
	top: 50%;
	left: -45px;
	background-color: #404040;	
}
.testimonials-nav > div.swiper-button-disabled {
	opacity: 1;
	color: #ccc;
	text-decoration: none;
}
/* Contact */
.home main section.contact {
	width: 100%;
	margin-top: 80px;
	padding-top: 60px;
	position: relative;
	color: #fff;
	background-color: #e6e5e0;
	transition: color 2s ease, background-color 2s ease;
}
.home main section.contact.changed {
	color: #fff;
	background-color: #9aa5af;
}
.home main section.contact div.wrap {
	padding: 0 10px;	
	display: flex;
	flex-direction: column;
}
.home main section.contact div.wrap > div {
	width: 100%;
}
.home main section.contact form {
	margin-bottom: 50px;
}
.home main section.contact form span {
	position: absolute;
	top: 1px;
}
.home main section.contact form p {
	display: none;
}
.home main section.contact form p#formError {
	padding: 2px 4px;
	background-color: #c00;
}
.home main section.contact form label,
footer form label {
	display: none;
}
.home main section.contact form input,
.home main section.contact form textarea,
footer form input {
	width: 100%;
	margin: 0;
	border: 0;
	border-bottom: 1px solid #fff;
	border-radius: 0;
	padding: 15px 10px 10px;
	display: block;
	-webkit-appearance: none;
	color: #fff;
	background-color: transparent;
	font-family: 'UniversNext', sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
}
.home main section.contact form textarea {
	height: 150px;
	resize: none;
}
.home main section.contact form input::-webkit-input-placeholder,
.home main section.contact form textarea::-webkit-input-placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}   
.home main section.contact form input:-moz-placeholder,
.home main section.contact form textarea:-moz-placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
.home main section.contact form input::-moz-placeholder,
.home main section.contact form textarea::-moz-placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
.home main section.contact form input:-ms-input-placeholder,
.home main section.contact form textarea:-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
.home main section.contact form input::-ms-input-placeholder,
.home main section.contact form textarea::-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
.home main section.contact form input::placeholder,
.home main section.contact form textarea::placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
/* .home main section.contact form input:-webkit-autofill,
.home main section.contact form input:-webkit-autofill:hover, 
.home main section.contact form input:-webkit-autofill:focus, 
.home main section.contact form input:-webkit-autofill:active  {
	border-bottom-color: #3278c4;
	-webkit-box-shadow: 0 0 0 30px #5dcdf9 inset !important;
	-webkit-text-fill-color: #15158f !important;
	transition: none;
} */
.home main section.contact form input:-webkit-autofill,
.home main section.contact form input:-webkit-autofill:hover, 
.home main section.contact form input:-webkit-autofill:focus, 
.home main section.contact form input:-webkit-autofill:active {
	border-bottom-color: #9aa5af;
}
.home main section.contact form button.submit,
footer form button.submit {
	width: 100%;
	margin: 0;
	border: 0;
	padding: 15px 20px;
	display: block;
	position: relative;
	cursor: pointer;
	background: rgba(255, 255, 255, 1);
	color: #404040;
	font-family: 'UniversNext', sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	text-indent: 19px;
	transition: color 0.2s ease, background 0.2s ease, text-indent 0.2s ease;
}
.home main section.contact form button.submit:hover,
footer form button.submit:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0);
	text-indent: 0;
}
.home main section.contact form button.submit i,
footer form button.submit i {
	margin-left: 5px;
	position: relative;
	top: 1px;
	left: -10px;
	opacity: 0;
	text-indent: 0;
	transition: left 0.2s ease, opacity 0.2s ease;
}
.home main section.contact form button.submit:hover i,
footer form button.submit:hover i {
	left: 0;
	opacity: 1;
}
.home main section.contact div.wrap > div ul {
	margin-bottom: 60px;
}
.home main section.contact div.wrap > div ul li {
	line-height: 1.2;
	margin-bottom: 1.382em;
}
.home main section.contact div.wrap > div ul li:nth-of-type(2) {
	margin-bottom: 0;
}
.home main section.contact div.wrap > div ul li a {
	color: #fff;
	text-decoration: none;
	transition: opacity 0.2s ease;
}
.home main section.contact div.wrap > div ul li a:hover {
	opacity: 0.6;
}
.home main section.contact div.wrap > div.map {
	width: calc(100% + 20px);
	height: 400px;
	margin: 0;
	flex: none;
	position: relative;
	left: -10px;
	background-color: #e6e5e0;
}
/*
 * Footer
 */
footer {
	width: 100%;
	height: auto;
	padding: 50px 0 30px;
	position: relative;
	visibility: hidden;
	background-color: #f5f5f5;	
}
body:not(.home) footer {
	padding: 60px 0 30px;
	visibility: visible;
}
footer div.wrap {
	padding: 0 10px;
}
footer > div > div {
	margin-bottom: 60px;
}
footer > div > div:last-of-type {
	margin-bottom: 0;
}
footer ul li {
	line-height: 1.4;
}
footer div p:last-of-type {
	margin: 0;
}
footer div ul {
	margin-bottom: 0;
}
footer div.latest-posts ul li {
	margin-bottom: 1em;
}
footer div.latest-posts ul li:last-of-type {
	margin-bottom: 0;
}
footer div.latest-posts ul li span.h4 {
	font-family: 'UniversNextBd';
	font-weight: 700;
}
footer div.latest-posts ul li span.date {
	font-size: 0.875em;
}
footer div.newsletter {
	margin-bottom: 70px;
}
footer div.newsletter p {
	margin-bottom: 1em;
}
footer form input {
	border-bottom: 1px solid #777;
	color: #404040;
}
footer form button.submit {
	margin-bottom: 5px;
	color: #fff;
	background: rgba(119, 119, 119, 1);
}
footer form button.submit:hover {
	color: #404040;
	background: rgba(119, 119, 119, 0);
}
footer div.newsletter div.clear {
	font-size: 13px;
}
footer div.newsletter i.fa-shield-alt {
	color: rgba(64, 64, 64, 0.4);
}
footer div.newsletter a.privacy {
	text-decoration-color: #f5f5f5;
    text-decoration-color: rgba(64, 64, 64, 0);
}
footer div.newsletter a.privacy:hover {
	text-decoration-color: #666;
    text-decoration-color: rgba(64, 64, 64, 0.4);
}
footer div.achology p {
	font-size: 0.875em;
	line-height: 1.3;
}
footer div.achology a {
	margin-bottom: 1.2em;
	display: block;
}
footer div.achology a img {
	width: 200px;
}
footer div:last-of-type {
	font-size: 0.9375em;
}
footer a {
	color: #404040;
	text-decoration-color: #b3b3b3;
	text-decoration-color: rgba(64, 64, 64, 0.4);
}
footer a:hover {
	text-decoration-color: #404040;
	text-decoration-color: rgba(64, 64, 64, 1);
}
/*
 * Global
 * Hero
 */
.global-hero {
	margin-left: 0 !important;
}
.global-hero {
	background-image: url(../img/hero_blog.jpg);
}
@media screen and (max-width: 991px) {
	.global-hero::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: -moz-linear-gradient(top,  rgba(255,255,255,0.9) 0%, rgba(255,255,255,0) 100%);
		background: -webkit-linear-gradient(top,  rgba(255,255,255,0.9) 0%,rgba(255,255,255,0) 100%);
		background: linear-gradient(to bottom,  rgba(255,255,255,0.9) 0%,rgba(255,255,255,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );
	}
}
section.content {
	position: relative;
	background-color: #f5f5f5;
}
section.content div.wrap header {
	width: 80%;
	max-width: 500px;
	padding: 0;
	position: fixed;
	top: 120px;
	right: 20px;
	z-index: -1;
}
/* Posts & pages */
section.content div.wrap header h1 {
	font-family: 'Playfair Display', serif;
	font-size: 1.875em;
	font-weight: 400;
	line-height: 1.4;
	text-align: right;
	text-transform: none;
}
.posts section.content div.wrap article:not(:last-of-type) {
	margin-bottom: 2.5em;
}
section.content div.wrap article h2 {
	margin-bottom: 1em;
	font-family: 'UniversNextMd', sans-serif;
	font-size: 1.25em;
	font-weight: 500;
}
section.content div.wrap article h2 a {
	color: #404040;
	text-decoration: none;
	transition: color 0.2s ease;
}
section.content div.wrap article h2 a:hover {
	color: #999;
}
section.content div.wrap article {
	padding: 0 10px;
}
section.content div.wrap article p:last-child,
section.content div.wrap article ul:last-child,
section.content div.wrap article ul:last-child li:last-of-type {
	margin-bottom: 0;
}
section.content div.wrap article p.post-meta {
	font-size: 0.9375em;
}
section.content div.wrap article p.post-meta a {
	color: #404040;
	text-decoration-color: #666;
	text-decoration-color: rgba(64, 64, 64, 0.4);
	transition: text-decoration-color 0.2s ease;
}
section.content div.wrap article p.post-meta a:hover {
	text-decoration-color: #404040;
	text-decoration-color: rgba(64, 64, 64, 1);
}
section.content div.wrap article p.info {
    margin: 0 0 1.382em 2.2rem;
    display: inline-block;
    position: relative;
	font-size: 0.9375em;
}
section.content div.wrap article p.info::before {
    content: '\f0f3';
    position: absolute;
    top: 0;
    left: -2.2rem;
    color: #0c0;
    font-family: "Font Awesome 5 Pro";
}
section.content div.wrap article ul {
    margin: 1.382em 20px 1.5em 35px;
    padding: 0;
	list-style-type: disc;
}
section.content div.wrap article ol {
    margin: 1.382em 20px 1.5em 35px;
    padding: 0;
	list-style-type: decimal;
}
section.content div.wrap article ul li,
section.content div.wrap article ol li {
	line-height: 1.4;
    margin-bottom: 1em;
}
section.content div.wrap article ul li p,
section.content div.wrap article ol li p {
    margin-bottom: 1em;
}
section.content div.wrap article ol li ul {
	list-style-type: circle;
}
section.content div.wrap article figure.image {
    max-width: 600px;
    margin: 25px auto 25px;
    display: block;
    position: relative;
}
section.content div.wrap article figure.image img {
	max-width: 100%;
	height: auto;
    display: block;
}
section.content div.wrap article figure.image figcaption {
    width: calc(100% - 10px);
    margin: 2px 0 0 10px;
    position: relative;
    font-size: 0.8125em;
    line-height: 1.4;
}
section.content div.wrap article figure.image figcaption::before {
    content: '\f129';
    position: absolute;
    top: 0;
    left: -10px;
	opacity: 0.7;
    font-family: "Font Awesome 5 Pro";
    font-size: 0.875em;
    font-weight: 900;
}

/* To handle long infographic images */
section.content div.wrap article figure.image.too-long { 
	max-height: 400px;
	margin-bottom: 0;
	overflow: hidden;
}
section.content div.wrap article figure.image.too-long::before { 
	content: '';
	width: 100%;
	height: 400px;
	position: absolute;
	top: 0;
	opacity: 0.4;
	background-color: #000;
	pointer-events: none;
	transition: opacity 0.2s ease;
}
section.content div.wrap article figure.image.too-long:hover::before { 
	opacity: 0.3;
}
section.content div.wrap article figure.image.too-long::after { 
	content: '\f00e';
	position: absolute;
	top: 20px;
	left: 20px;
	color: #fff;
	font-family: "Font Awesome 5 Pro";
	font-size: 2.5em;
	font-weight: 900;
	line-height: 1;
	text-shadow: 2px 2px 5px rgba(0,0,0,0.5);
	pointer-events: none;
	transition: all 0.2s ease;
}
section.content div.wrap article figure.image.too-long:hover::after {
	transform: scale(1.2);
}
section.content div.wrap article figure.image.too-long figcaption {
	width: 100%;
	height: 50px;
	margin: 0;
	position: absolute;
	top: 350px;
	color: #6e7886;
	background: rgb(245,245,245);
	background: linear-gradient(180deg, rgba(245,245,245,0) 0%, rgba(245,245,245,1) 25%);
	line-height: 50px;
}
section.content div.wrap article figure.image.too-long figcaption::before { 
	content: '\f129\00a0\00a0';
	position: relative;
	top: -1px;
	left: 0;
}
section.content div.wrap article figure.quote {
    max-width: 600px;
    border-left: 3px solid #98a2b1;
    padding-left: 15px;
    margin: 1.382em auto 1.5em;
    font-style: italic;
}
section.content div.wrap article figure.quote p {
	margin-bottom: 1em;
}
section.content div.wrap article figure.quote p::before {
    content: '\201C';
    font-style: normal;
}
section.content div.wrap article figure.quote p::after {
    content: '\201D';
    font-style: normal;
}
section.content div.wrap article figure.quote figcaption {
    margin-left: 15px;
    position: relative;
    font-size: 0.925em;
    line-height: 1.4;
}
section.content div.wrap article figure.quote figcaption::before {
    content: '\007E\00a0';
    position: absolute;
    top: 0;
    left: -15px;
}

/* Fierce Kindness styling */
div.card {
	width: calc( 100% + 20px );
	margin-bottom: 2em;
	margin-left: -10px;
	padding: 20px 10px;
	background-color: rgba(154, 165, 175, 0.2);
}
div.card p:last-of-type {
	margin-bottom: 1.382em;
}

nav.pagination {
	padding: 40px 10px 0;
	text-align: center;
}
nav.pagination a,
nav.pagination span {
	display: inline-block;
	position: relative;
	color: #404040;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1;
	text-decoration: none;
	transition: color 0.2s ease;
}
nav.pagination a:hover {
	color: #999;
}
nav.pagination span {
	cursor: default;
	color: #ccc;
}
nav.pagination span.hidden {
	display: none;
}

/*
 * reCAPTCHA badge
 */
.grecaptcha-badge {
	z-index: 9;
	visibility: visible !important;
	opacity: 0;
	transition: opacity 0.5s ease, right 0.3s ease 0s !important;
}
.grecaptcha-badge.visible {
	opacity: 1;
}
 
/*
 * Cookies
 */
.cookies {
	/* width: 290px; */
	width: 100%;
	height: auto;
	/*border-radius: 4px; */
	padding: 15px;
	display: none;
	position: fixed;
	/* left: 15px; 
	bottom: 10px; */
	bottom: 0;
	left: 0;
	z-index: 999999;
	background-color: rgba(136, 136, 136, 0.96);
	color: #fff;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.04), 0px 3px 1px -2px rgba(0, 0, 0, 0.02);
	font-family: Arial, sans-serif;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.4;
	letter-spacing: 0.5px;
}
@media screen and (min-width: 600px) and (max-width: 767px) {
	.cookies p {
		margin-bottom: 0;
	}
}
.cookies p a {
	color: #fff;
	text-decoration: none;
}
.cookies p a:link, .cookies p a:visited {
	border-bottom: 1px solid #ccc;
	padding-bottom: 1px;
	transition: all 0.2s ease;
}
.cookies p a:hover {
	border-bottom: 1px solid #fff;
}
.cookies a#consent {
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	border-radius: 6px;
	padding: 1.5rem 2rem;
	display: inline-block;
	position: relative;
	overflow: hidden;
	float: right;
	cursor: pointer;
	color: #fff;
	background-color: #0a3;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.5s ease;
	transform: none;
	
}
.cookies a#consent::before,
.cookies a#consent::after {
	display: none;
}
.cookies a#consent:hover {
    background-color: #070;
    box-shadow: 0 5px 20px -5px rgba(0, 204, 51, 0.4);
}
@media screen and (min-width: 375px) {
	.hero h1,
	section.content header {
		top: 150px;
	}
}
@media screen and (min-width: 414px) {

}
@media screen and (min-width: 480px) {
	section.content div.wrap article figure.image.too-long { 
		max-height: 500px;
	}
	section.content div.wrap article figure.image.too-long::before {
		height: 500px;
	}
	section.content div.wrap article figure.image.too-long figcaption {
		top: 450px;
	}
}
@media screen and (min-width: 600px) {
	.home main section.contact div.wrap {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.home main section.contact div.wrap > div {
		width: 48.71795%;
		margin-left: 2.5641%;
	}
	.home main section.contact div.wrap > div:first-of-type {
		margin: 0;
	}
	footer div.wrap {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.home footer div.wrap > div {
		width: 48.71795%;
		margin-left: 2.5641%;
	}
	@media screen and (max-width: 991px) {
		footer div.wrap > div:nth-of-type(odd) {
			margin-left: 0;
		}		
	}
	footer div:last-of-type {
		font-size: 1em;
	}
	footer div.newsletter div.clear {
		font-size: 14px;
	}
}
@media screen and (min-width: 768px) {
	body > header nav ul {
		margin: 100px 30px 0;
	}
	body > header > div.logo {
		left: 30px;
	}
	.hero,
	.global-hero {
		margin-left: 20px;
	}
	.hero h1 {
		top: 200px;
		font-size: 2.5em;
	}
	.scroll-down-cue {
		width: 60px;
		height: 30px;
		margin-left: -20px;
	}
	.scroll-down-cue::before,
	.scroll-down-cue::after {
		width: 40px;
		left: -4px;
	}
	.scroll-down-cue::after {
		left: 24px;
		transform: rotate(-45deg);
	}
	.home main section header,
	.who-content div.words,
	.services,
	.what-is-lifecoaching div.words,
	.home main section.contact div.wrap,
	footer div.wrap {
		padding: 0 20px;
	}
	.swiper-slide blockquote {
		padding: 0 30px;
	}
	.home main section.contact div.wrap > div.map {
		width: calc(100% + 40px);
		left: -20px;
	}
	footer {
		padding: 60px 0 40px;
	}
	section.content div.wrap header {
		top: 200px;
	}
	section.content div.wrap header h1 {
		font-size: 2.5em;
	}
	section.content div.wrap article {
		padding: 0 20px;
	}
	section.content div.wrap article figure.image.too-long { 
		max-height: 600px;
	}
	section.content div.wrap article figure.image.too-long::before {
		height: 600px;
	}
	section.content div.wrap article figure.image.too-long figcaption {
		top: 550px;
	}
	div.card {
		width: 100%;
		margin-left: 0;
		padding: 25px 15px;
	}
	div.card p:last-of-type {
		margin-bottom: 1.382em;
	}
	.cookies {
		width: 300px;
		border-radius: 4px;
		left: 15px; 
		bottom: 10px;
	}
}
@media screen and (min-width: 800px) {

}
@media screen and (min-width: 992px) {
	body > header {
		height: 80px;
	}
	body.scrolled > header:not(.open) {
		position: fixed;
		top: -80px;
	}
	body > header nav {
		width: 50%;
		margin: 0;
		padding-right: 2.25%;
	}
	body > header nav ul {
		margin: 0;
		display: flex;
		justify-content: space-between;
	}
	body > header nav ul li {
		display: inline-block;
		line-height: 80px;
		width: auto;
	}
	body > header nav ul li a {
		padding: 0;
	}
	.hamburger {
		display: none;
	}
	body > header > div.logo {
		width: 224px;
		height: 40px;
		margin: 22px 0 18px;
		left: calc( 2.25% + 10px );
		background-image: url(../img/logo_992.png);
	}
	@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-device-pixel-ratio: 2) { body > header > div.logo { background-image: url(../img/logo_992@2x.png); } }
	@media screen and (-webkit-min-device-pixel-ratio: 3), screen and (min-device-pixel-ratio: 3) { body > header > div.logo { background-image: url(../img/logo_992@3x.png); } }
	.hero,
	.global-hero {
		margin-left: 2.25%;
	}
	.hero h1 {
		top: 200px;
		right: 10%;
		font-size: 3em;
	}
	.scroll-down-cue {
		width: 86px;
		height: 43px;
		margin-left: -20px;
	}
	.scroll-down-cue::before,
	.scroll-down-cue::after {
		width: 60px;
		left: -8px;
	}
	.scroll-down-cue::after {
		left: 34px;
		transform: rotate(-45deg);
	}
	.scroll-down-cue {
		margin-left: -2.25vw;
	}
	body:not(.home) .scroll-down-cue {
		display: none;
	}
	.home main section {
		padding-top: 100px;
	}
	.home main section header,
	.services,
	footer div.wrap {
		padding: 0 2.25%;
	}
	.home main section header h2,
	.home main section header span.h2 {
		font-size: 1.5em;
	}
	p.subtitle {
		margin-bottom: 90px;
		font-size: 1.0625em;
	}
	.who-content {
		flex-direction: row;
	}
	.who-content div.words,
	.who-content picture {
		width: 32.0512%;
		margin-left: 2.5641%;
		flex-wrap: wrap;
	}
	.who-content div.words {
		width: 32.0512%;
		margin-left: 0;
		padding: 0 0 0 2.25%;
		display: flex;
		align-content: flex-end;
		order: 0;
	}
	.who-content picture {
		width: 65.384616666%;
		margin-bottom: 0;
	}
	.home main section.what div.wrap p.subtitle {
		margin-bottom: 80px;
	}
	.services {
		margin-bottom: 100px;
		padding: 0 2.25%;
		flex-direction: row;
	}
	.services > div {
		width: 32.5%;
		margin-left: .8333333%;
		flex-wrap: wrap;
	}
	.services > div:first-of-type {
		margin-left: 0;
	}
	.services > div > h2 {
		font-size: 1.125em;
	}
	.what-is-lifecoaching {
		flex-direction: row;
	}
	.what-is-lifecoaching picture,
	.what-is-lifecoaching div.words {
		width: 48.71795%;
		margin-left: 2.5641%;
		flex-wrap: wrap;
	}
	.what-is-lifecoaching picture {
		margin-left: 0;
		order: 0;
	}
	.what-is-lifecoaching div.words {
		padding: 0 2.25% 0 0;
	}
	.swiper-slide blockquote p {
		font-size: 36px;
		font-size: 3.6rem;
	}
	.swiper-slide blockquote p::before, .swiper-slide blockquote p::after {
		font-size: 36px;
		font-size: 3.6rem;
	}
	.swiper-slide blockquote p::before {
		left: -18px;
	}
	.testimonials-nav > div {
		font-size: 20px;
		font-size: 2rem;
	}
	.home main section.contact {
		margin-top: 100px;
		padding: 0;
		position: relative;
	}
	.home main section.contact::before {
		content: '';
		width: 100%;
		height: 100px;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: -1;
		box-shadow: 0px 5px 10px 3px rgba(0,0,0,0.1);
	}
	.home main section.contact div.wrap {
		padding: 0;
	}
	.home main section.contact div.wrap > div {
		width: 23.07692%;
		margin-left: 2.5641%;
		padding-top: 60px;
	}
	.home main section.contact div.wrap > div:first-of-type {
		padding-left: 2.25%;
	}
	.home main section.contact div.wrap > div.map {
		width: 48.71795%;
		height: auto;
		margin-left: 2.5641%;
		padding: 0;
		flex-grow: 1;
		position: static;
		left: auto;
	}
	footer {
		padding: 100px 0 60px;
		position: fixed;
		bottom: 0;
	}
	body:not(.home) footer {
		padding: 60px 0 50px;
		position: static;
	}
	.home footer div.wrap {
		padding-left: 2.25%;
	}
	body:not(.home) footer div.wrap {
		padding: 0 4.5%;
	}
	.home footer div.wrap > div {
		width: 23.07692%;
		margin-left: 2.5641%;
	}
	.home footer div.wrap > div:first-of-type {
		margin: 0;
	}
	.global-hero {
		width: 50%;
		opacity: 1 !important;
	}
	body:not(.home) main {
		margin-top: 0;
	}
	section.content {
		width: 50%;
		position: absolute;
		top: 80px;
		right: 0;
	}
	section.content div.wrap header {
		width: 100%;
		max-width: none;
		padding: 0 4.5%;
		position: static;
		z-index: 1;
	}
	section.content div.wrap header h1 {
		margin-bottom: 70px;
		display: block;
		font-family: 'Amiri', serif;
		font-size: 1.5em;
		font-weight: 400;
		line-height: 1.2;
		letter-spacing: 0.5px;
		text-align: center;
		text-transform: uppercase;

	}
	section.content div.wrap article {
		padding: 0 4.5%;
	}
}
@media screen and (min-width: 1152px) {

}