/*
 Theme Name:     Audience of the Future v2020 Mar
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Vuk
 Author URI:     http://rv3.co.uk
 Template:       Divi
 Version:        2.1.3
*/
 
 
/* =Theme customisation starts here
------------------------------------------------------- */

/* old style keep while transitioning to new design */


@font-face {
	font-family: ExoBold;
	src: url('fonts/Exo-Bold.ttf');
	font-style: bold;
	font-weight: 700;
}

@font-face {
	font-family: ExoRegular;
	src: url('fonts/Exo-Regular.ttf');
	font-style: normal;
	font-weight: 400;
}

@font-face {
	font-family: 'Elegant Icons';
	src:  url('fonts/ElegantIcons.ttf');
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* 
body{
	font-family: 'ExoRegular',sans-serif !important;
	font-size: 16px !important;
	line-height: 1.3;
}
 */

h1{
	font-size: 38px;
	font-weight: bold;
	margin: 0.5rem 0;
}


h2{
	font-size: 30px;
	margin: 0.5rem 0;
}


h3{
	font-size: 24px;
}


h4{
	font-size: 22px;
}


h5{
	font-size: 18px;
	margin: 0.5rem 0;
}


h6{
	font-size: 16px;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'ExoBold',sans-serif !important;
	line-height: 1.3;
	color: rgba(0,0,0,0.75);
}

/* 
p{
	font-family: 'ExoRegular',sans-serif !important;
	font-size: 16px; Set using Divi Theme Customizer	line-height: 1.5;
	margin: 0.5rem 0;
	color: rgb(100,100,100);
}

 */
.with-background{}

.with-background h5,
.with-background p,
.et_pb_with_background h5, 	/* Divi standard classes if section has a bg */
.et_pb_with_background p 	/* Divi standard classes if section has a bg */
{
	color: rgba(255,255,255,0.9) !important;
}

.et_pb_with_background .et_pb_text a,
.et_pb_with_background .et_pb_blurb_description a {
	color: #f7be00;
	text-decoration: none;
	transition: all 0.3s ease-in-out 0s;
}

.et_pb_with_background .et_pb_text a:hover,
.et_pb_with_background .et_pb_blurb_description a:hover {
	background-color: rgba(247,190,0,0.15);
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.et_pb_row {
	max-width: 892px !important;
}



#navTo-contact h4{
	color: rgba(255,255,255,0.9);
}

/* Wallace and Gromit background */
#wg-bg{
	background-size: auto !important;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.aotf-button{
	color: rgba(103,0,83,0.9) !important;
	text-transform: uppercase;
	font-family: 'ExoBold',sans-serif;
	border-color: rgba(103,0,83,0.9) !important;
}
.aotf-button:hover{
	background-color: rgba(103,0,83,0.9) !important;
	color: rgba(255,255,255,0.9) !important;
}

.aotf-button.white{
	color: rgba(255,255,255,0.9) !important;
	border-color: #fff;
}
.aotf-button.white:hover{
	background-color: rgba(255,255,255,0.9) !important;
	color: rgba(0,0,0,0.9) !important;
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Menu hacks */

.et_header_style_left #logo{
	max-width: 100% !important;
	max-height: 100%;
}

@media all and (max-width: 640px) {
	.et_header_style_left #logo{
		max-width: 100% !important;
		max-height: 100%;
	}
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Get the post title centered with outline so it works on any background */
.et_pb_fullwidth_section .et_pb_post_title{
	padding: 12% 0;
}

.et_pb_fullwidth_section .et_pb_post_title h1{
	color: rgba(255,255,255,0.9);
	text-shadow: 0 0 3px #000,
		1px 0px 0 #000,
		1px 1px 0 #000,
		0px 1px 0 #000,

		-1px 0px 0 #000,
		-1px -1px 0 #000,
		0px -1px 0 #000
		;

	font-size: calc( 48px + (80 - 48) * ( (100vw - 320px) / ( 892 - 320) ) ) !important;

/* 	font-size: 5em !important; */
}

.et_pb_slide_content div p{
	color: rgba(255,255,255,0.9) !important;

	text-shadow: 0 0 3px #000,
		1px 0px 0 #000,
		1px 1px 0 #000,
		0px 1px 0 #000,

		-1px 0px 0 #000,
		-1px -1px 0 #000,
		0px -1px 0 #000
		!important
		;
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Email optin on one line
	Body on TOP, Form on BOTTOM
*/
.ifl-emailOptin-skinny{
}


.ifl-emailOptin-skinny.et_pb_newsletter .et_pb_newsletter_fields{
	display: inline-grid;
	grid-template-columns: 1fr 128px;
	grid-column-gap: 1em;
	align-items: last baseline;
}

.ifl-emailOptin-skinny .et_pb_newsletter_form{
	padding: 0 !important;
}


.et_pb_newsletter{
	padding: 0 !important;
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* 
Make sure the picture scales in POST title
 */
.et_pb_fullwidth_section .et_pb_title_container{
	min-width: 320px;
}

et_pb_featured_bg{
	background-size: 100% auto;
}




/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.aotf-web-link{
	display: inline-block;
	font-family: 'ExoBold',sans-serif !important;
	line-height: 36px;
	padding: 2px 8px 0px 42px;
	background-image: url(/wp-content/uploads/2020/02/link-web.png);
	background-repeat: no-repeat;
	background-size: 28px;
	background-position: left 5px top 5px;
	border-radius: 3px;

	transition: all 1s ease;
}

.aotf-web-link:hover{
	background-color: rgb(100,0,83);
	color: #fff;

	transition: all 0.3s ease;
}





/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.aotf-image-background{}
.aotf-image-background:before{
	position: absolute;
	content: "";
	background-color: rgb(100,0,83);
	transform: rotate(-12deg);
	width: 100%;
	height: 100%;
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Alternating rows */

.aotf-2col-with-image{}

.aotf-2col-with-image .aotf-image-background:before{
	position: absolute;
	content: "";
	background-color: rgba(100,0,83,0);
	transform: rotate(12deg);
	left: 50%;
	top: 50%;
	width: 0;
	height: 0;
	transition: 1s all ease;
}

.aotf-2col-with-image:hover .aotf-image-background:before{
	background-color: rgba(100,0,83,1);
	transform: rotate(-12deg);
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: 0.6s all ease;
}


.text-white {
	color: rgba(255,255,255,0.9);
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.aotf-image-link{
	border: 2px solid #fff;
	display: inline-block;
	width: 52px;
	margin: 0px 8px;
	transition: 1s all ease;
}

.aotf-image-link:hover{
	filter: invert(1);
	background-color: rgb(0,0,0);
	border: 2px solid rgb(0,0,0);
	transition: 0.2s all ease;
	cursor: pointer;
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.aotf-footer{
	background-color: rgb(177,82,154);
	color: rgba(0,0,0,0.8);
	text-align: center;
}

.aotf-footer h5{
	font-size: 7px;
/* 	font-size: calc( 8px + (18 - 7) * ( (100vw - 320px) / ( 892 - 320) )); */
}

@media (min-width: 320px) and (max-width: 892px) {
	.aotf-footer h5{
		font-size: calc( 7px + (18 - 7) * ( (100vw - 320px) / ( 892 - 320) ));
	}
}
@media (min-width: 892px) {
	.aotf-footer h5{
		font-size: 17px;
	}
}

.aotf-footer a{
	color: rgba(0,0,0,0.8);
}

.aotf-footer a:hover{
	color: rgba(255,255,255,0.8);
}

.aotf-footer .leftSide,
.aotf-footer .rightSide
{
	width: calc(50% - 2rem);
	padding: 0 1rem;
	display: inline-block;
}

.aotf-footer .leftSide h5,
.aotf-footer .rightSide h5
{
	margin: 12px 0;
	padding: 0;
	font-family: 'ExoRegular'!important;
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
Toggle hacks
*/
.aotf-toggle{
	padding: 0 !important;
}

.et_pb_toggle_content{
	padding-top: 0;
}

h3.et_pb_toggle_title{
	padding-bottom: 10px !important;
	min-height: 74px;
}


/**
 * SOCIAL ICONS IN FOOTER BLOCK (not copyright line)
 */
#footer-social-icons {
	font-family: 'Elegant Icons',Helvetica,Arial,Lucida,sans-serif!important;
	margin-top: 2em;
}

#footer-social-icons .et_pb_text_inner div {
	display: inline-block;
	margin-right: 10px;
	transition: all 300ms ease;
}

#footer-social-icons .et_pb_text_inner div:hover {
	transform: scale(1.2);
}

#footer-social-icons a {
	color: white;
	font-size: 48px;
}

#footer-social-icons a:hover {
	background-color: initial;
}

/*Equalize Blog Columns*/

.et_pb_blog_grid .et_pb_salvattore_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.et_pb_blog_grid article {
        margin-bottom: 20px !important;
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 auto;
	        flex: 1 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.et_pb_blog_grid  .post-content {
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 auto;
	        flex: 1 0 auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.et_pb_blog_grid  .column {
        margin-bottom: 20px !important;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.et_pb_blog_grid .et_pb_salvattore_content .et_pb_image_container {
	margin-bottom: 0;
}

/* old style keep while transitioning to new design */




























/* new design starts here */




/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Fonts */
@font-face {
	font-family: ExoBold;
	src: url('fonts/Exo-Bold.ttf');
	font-style: bold;
	font-weight: 700;
}

@font-face {
	font-family: ExoRegular;
	src: url('fonts/Exo-Regular.ttf');
	font-style: normal;
	font-weight: 400;
}

@font-face {
	font-family: 'Elegant Icons';
	src:  url('fonts/ElegantIcons.ttf');
}

@font-face {
	font-family: OpenSans;
	src: url('fonts/OpenSans-Regular.ttf');
	font-style: normal;
	font-weight: 300;
}

@font-face {
	font-family: OpenSansLight;
	src: url('fonts/OpenSans-Light.ttf');
	font-style: normal;
	font-weight: 300;
}

@font-face {
	font-family: OpenSansSemiBold;
	src: url('fonts/OpenSans-SemiBold.ttf');
	font-style: normal;
	font-weight: 300;
}

@font-face {
	font-family: OpenSansBold;
	src: url('fonts/OpenSans-Bold.ttf');
	font-style: normal;
	font-weight: 300;
}

@font-face {
	font-family: OpenSansExtraBold;
	src: url('fonts/OpenSans-ExtraBold.ttf');
	font-style: normal;
	font-weight: 300;
}

@font-face {
	font-family: 'Elegant Icons';
	src:  url('fonts/ElegantIcons.ttf');
}





/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* For everything */

*{margin:0;padding:0;}

body{
	font-family: 'OpenSans',sans-serif !important;
	font-size: 18px !important;
	line-height: 1.55 !important;
}

:root{
	--aotfBlue:		rgb(76, 154, 212);
	--aotfPeach:	rgb(237, 110, 111);
	--aotfGreen:	rgb(90, 187, 166);
	--aotfYellow:	rgb(255, 222, 20);
}

p, dl, multicol {
	display: block;
	margin-block-start: 1em;
	margin-block-end: 1em;
	padding-bottom: 0;
}


hr.cep { border: 0; height: 1px; float:none; clear:both; 
background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0)); 
}
hr.cep.white {
background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(255, 255, 255, 0.75), rgba(0, 0, 0, 0)); 
}

hr.cep-left-to-right{
border: 0; height: 1px; float:none; clear:both; 
background: -moz-linear-gradient(left, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
background: -webkit-linear-gradient(left, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);
background: linear-gradient(to right, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);
}


h1,
h2,
h3,
h4,
h5,
h6
{
	font-family: 'ExoBold',sans-serif !important;
	padding: 0;
}

h1{
	font-size: 2.5rem;
	line-height: 1;
}

h2{
	font-size: 2.5rem !important;
	line-height: 1 !important;
	font-family: 'ExoRegular', sans-serif !important;
	font-weight:normal;
}


h3{
	font-size: 1.44rem;
}

h4{
	font-size: 1.3rem;
}


h6{
	font-size: 1rem;
}


p.tiny{
	font-size:10px;
}


ul{
	padding: 0 0 1.5rem 1rem;
	color: rgba(0,0,0,0.8);
}

article .hentry,
div.entry-content{
	position: relative;
}

.underlineH1 {
	display: block;
	margin: 3rem 0;
}
.underlineH1 h1{
	display:inline-block;
	padding-bottom: 0.8rem;
	font-size: 3rem;
	line-height: 1;
	border-bottom: 5px solid;

}

.underlineH1 h1.blue{
	border-bottom: 5px solid rgb(76,154,212);
}

.underlineH1 h1.peach{
	border-bottom: 5px solid rgb(237, 110, 111);
}

.underlineH1 h1.green{
	border-bottom: 5px solid rgb(90, 187, 166);
}

.underlineH1 h1.yellow{
	border-bottom: 5px solid rgb(255,222,20);
}

.underlineH1 h1.white{
	border-bottom: 5px solid rgb(255,255,255);
	color: rgba(255,255,255,0.9);
}


.subIntro{
	font-family: OpenSans;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.55;
}

.subIntro a{
	font-family: OpenSansExtraBold;
}

/* LINKS */
a {
	text-decoration: none;
	color: rgba(103,0,83,0.9);
	box-shadow: inset 0 -2px 0 rgba(103,0,83,0.9);
	-webkit-text-decoration-skip: objects;
}

a:focus, a:hover {
	box-shadow: inset 0 -1.5em 0 rgba(103,0,83,0.9);
	text-shadow: none;
	outline-width: 0;
	color: rgb(255,255,255) !important;

	transition: all .4s ease;
}

a.noHover,
a.noHover:focus, 
a.noHover:hover {
	box-shadow: none;
}

a.yellow{
	box-shadow: inset 0 -2px 0 rgba(255,220,20,0.9);
}
a.yellow:focus, 
a.yellow:hover {
	box-shadow: inset 0 -1.5em 0 rgba(255,220,20,0.9);
}

a.blue{
	box-shadow: inset 0 -2px 0 rgba(76, 154, 212,0.9);
}
a.blue:focus, 
a.blue:hover {
	box-shadow: inset 0 -1.5em 0 rgba(76, 154, 212,0.9);
}

a.green{
	box-shadow: inset 0 -2px 0 rgba(90, 187, 166,0.9);
}
a.green:focus, 
a.green:hover {
	box-shadow: inset 0 -1.5em 0 rgba(90, 187, 166,0.9);
}

a.peach{
	box-shadow: inset 0 -2px 0 rgba(237, 110, 111,0.9);
}
a.peach:focus, 
a.peach:hover {
	box-shadow: inset 0 -1.5em 0 rgba(237, 110, 111,0.9);
}




#top-menu-nav a:focus,
#top-menu-nav a:hover {
	color: rgb(237, 110, 111) !important;
}



.btn{
	color: rgba(103,0,83,0.9) !important;
	text-transform: uppercase;
	font-family: 'ExoBold',sans-serif;
	border: 1px solid rgba(103,0,83,0.9) !important;
	box-shadow: none;

	position: relative;

	font-size: 20px;
	font-weight: 500;
	line-height: 1.7em !important;
/* 	border-radius: 3px; */
	padding: 0.5em 1em;

	transition: all 300ms ease 0ms;
}

.btn:hover,
.btn:focus {
	background-color: rgba(103,0,83,0.9) !important;
	color: rgba(255,255,255,0.9) !important;
	box-shadow: none;
}


.btn.yellow{
	border: 1px solid rgba(255,222,20,0.9) !important;
	color: rgba(255,222,20,0.9) !important;
}

.btn.yellow:hover,
.btn.yellow:focus {
	background-color: rgba(255,222,20,0.9) !important;
	color: rgba(0,0,0,0.9) !important;
}


.toggleShowHide{
	position: absolute;
	top: 0;
	left: 100%;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	line-height: 32px;
	font-size: 36px;
	text-align: center;
	color: rgba(255,255,255,0.9);
}

.toggleShowHide.blue{
	color: var(--aotfBlue);
	border: 3px solid var(--aotfBlue);
}

.toggleShowHide.peach{
	color: var(--aotfPeach);
	border: 3px solid var(--aotfPeach);
}

.toggleShowHide.green{
	color: var(--aotfGreen);
	border: 3px solid var(--aotfGreen);
}

.toggleShowHide.yellow{
	color: var(--aotfYellow);
	border: 3px solid var(--aotfYellow);
}

.toggleContent{
	max-height: 0px;
	overflow: hidden;

	transition: max-height 1.25s ease-in-out;
}

.toggleContent.show{
	max-height: 100vh;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* CEP DEMO */

.cepContainer{
	width: 100%;
	position: relative;
}

.centeredVertically{
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}



.cepContainer .overhangingH1 p span{
	background-color: rgb(255, 222, 20);
}


.cepContainer .cepBody{
	max-width: 1064px;
	margin: 4rem auto;
	position: relative;
}

.cepContainer .page .main_title{
	display: none;
}


.cepGridParent {
  display: flex;
  flex-wrap: wrap;
}


.cepGrid3-4{
	display: grid;
	grid-gap: 1rem;
	grid-template-columns: 3fr 1fr;
}



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.cepColumns{
	width: 100%;
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: space-between;
}

.cepColumns .col3-4{
	display: inline-block;
	width: calc(75% - 2rem);
	min-width: 260px;
	padding: 0 2rem 0 0;
	position: relative;
}

.cepColumns .col1-4{
	display: inline-block;
	width: calc(25%);
	min-width: 234px;
	position: relative;
}

.cepColumns .col1-2{
	display: inline-block;
	width: 50%;
	min-width: 260px;
	position: relative;
}

.cepColumns .col1-3{
	display: inline-block;
	width: calc(33% - 2rem);
	min-width: 260px;
	position: relative;
	margin-bottom: 3rem;
}

.cepColumns .col2-3{
	display: inline-block;
	width: calc(67% - 2rem);
	min-width: 260px;
	align-self: flex-start;
}

.gradientGreenToYellow{
background: #5abba6; /* Old browsers */
background: -moz-linear-gradient(-45deg,  #5abba6 0%, #ffde14 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  #5abba6 0%,#ffde14 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  #5abba6 0%,#ffde14 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	color: rgba(255,255,255,0.9);
}


.gradientGreenToBlue{
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#5abba6+0,4c9ad4+100 */
background: rgb(90,187,166); /* Old browsers */
background: -moz-linear-gradient(-45deg,  rgba(90,187,166,1) 0%, rgba(76,154,212,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  rgba(90,187,166,1) 0%,rgba(76,154,212,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  rgba(90,187,166,1) 0%,rgba(76,154,212,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	color: rgba(255,255,255,0.9);
}

.gradientBlueToGreen{
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#4c9ad4+0,5abba6+100 */
background: rgb(76,154,212); /* Old browsers */
background: -moz-linear-gradient(45deg,  rgba(76,154,212,1) 0%, rgba(90,187,166,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  rgba(76,154,212,1) 0%,rgba(90,187,166,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  rgba(76,154,212,1) 0%,rgba(90,187,166,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	color: rgba(255,255,255,0.9);
}

.gradientBlueToPeach{
background: #4c9ad4; /* Old browsers */
background: -moz-linear-gradient(45deg,  #4c9ad4 0%, #ed6e6f 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  #4c9ad4 0%,#ed6e6f 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  #4c9ad4 0%,#ed6e6f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	color: rgba(255,255,255,0.9);
}


.hero{
	padding: 20% 0;
/* 	background-image: url(/wp-content/uploads/cepUploads/Monks.JPG); */
	background-position: 50%;
	background-size: cover;
	position: relative;
}

.hero h1{
	text-align: center;
	color: rgba(255,255,255,0.9);
	text-shadow: 0 0 3px #000, 1px 0px 0 #000, 1px 1px 0 #000, 0px 1px 0 #000, -1px 0px 0 #000, -1px -1px 0 #000, 0px -1px 0 #000;
	font-size: calc( 48px + (80 - 48) * ( (100vw - 320px) / ( 892 - 320) ) ) !important;
	max-width: 80%;
	margin: 0 auto;
}

/* 
.hero p,
.hero h3{
	text-align: center;
	color: rgba(255,255,255,0.9);
	text-shadow: 0 0 3px #000, 1px 0px 0 #000, 1px 1px 0 #000, 0px 1px 0 #000, -1px 0px 0 #000, -1px -1px 0 #000, 0px -1px 0 #000;
	max-width: 80%;
	margin: 0 auto;
}
 */


.hero .tagLine{
	position: absolute;
	bottom: 2rem;
	max-width: 680px;
	left: 50%;
	margin-left: -532px;
	padding: 2rem 4rem;
	clip-path: polygon(0 0, 95% 0, 100% 100%, 5% 100%);
}

.hero .tagLine h1{
	font-size: 3rem !important;
	line-height: 1;
	text-shadow: none;
	text-align: left;
	font-weight: normal;
	font-family: 'ExoRegular',sans-serif !important;
}

.hero p.category{
	position: absolute;
	bottom: 2rem;
	left: 0;
	padding: 2rem 4rem;
	font-size: 1.2rem !important;
	line-height: 1;
	font-weight: normal;
	font-family: 'ExoRegular',sans-serif !important;
	text-align: right;
	background-color: rgba(76, 154, 212,0.9);
	color: rgba(255,255,255,0.9);
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */


.cepColumns .col1-2 .rect16-9{
}

.cepColumns .col1-2 .rect16-9 .av{
	width: 100%;
	height: 56%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%
}


.cepColumns .col1-3.rect4-3{}
.cepColumns .col1-3.rect4-3 .av{
	width: 100%;
	height: 242px;

	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: all 1s ease-in-out 0s;
}

.cepColumns .col1-3.rect16-9{}
.cepColumns .col1-3.rect16-9 .av{
	width: 100%;
	height: 162px;

	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: all 1s ease-in-out 0s;
}


.highlightReports .cepColumns .col1-3.rect4-3,
.highlightReports .cepColumns .col1-3.rect16-9{
	background-color: rgba(255,255,255,0.9);
}

.highlightReports .cepColumns .col1-3.rect4-3 .content,
.highlightReports .cepColumns .col1-3.rect16-9 .content{
	padding: 2rem;
	color: rgba(0,0,0,0.9);
}

.cepColumns .col1-4.square{
	position: relative;
}

.cepColumns .col1-4.square .av{
	width: 100%;
	height: 242px;

	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: all 1s ease-in-out 0s;
}


/* Speakers */

.cepColumns.speakers .col1-4{
	background-color: rgba(237,237,237,0.99);
	margin: 0 1.5rem 1.5rem 0;
	width: calc(25% - 1.5rem);
}

.cepColumns.speakers .col1-4 .content{
	padding: 1rem;
}

.cepColumns .icon{
	width: 2rem;
	height: 2rem;
	background-color: rgba(255,255,255,0.8);
	border-radius: 50%;
	padding: 0.25rem;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: 64% auto;
	background-position: center;
	vertical-align: middle;
	filter: invert(1);
	margin: 0 0.5rem 0 0;
	transition: all 1s ease;
}

.cepColumns .icon.small{
	width: 1.75rem;
	height: 1.75rem;
	padding: 0.25rem;
}


.cepColumns .icon:hover{
	background-size: 72% auto;
	background-color: rgba(255,255,255,0.99);
	transition: all .4s ease;
}


/* FEATURED gallery */
.cepFeaturedGallery{
	z-index: 2;
	max-width: 972px;
	margin: 3rem auto;
}

.cepFeaturedGallery .item{
	display: block;
	height: 306px;
	min-width: 306px;

	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;

	margin-right: 2rem;
}

.cepFeaturedGallery .item .content{
	color: rgba(255,255,255,0.9);
	position: absolute;
	background-color: rgba(0,0,0,0.5);
	left: 0;
	right: 0;
}

.cepFeaturedGallery .item .content h3,
.cepFeaturedGallery .item .content h4,
.cepFeaturedGallery .item .content p{
	margin: 0;
	padding: 0;
	color: inherit;
}

.cepFeaturedGallery .item .content.top{
	top: 0;
}

.cepFeaturedGallery .item .content.middle{
	/* vertically center */
	top: 50%;
	transform: translateY(-50%);
}

.cepFeaturedGallery .item .content.bottom{
	bottom: 0;
}


.cepFeaturedGallery .item .content.center{
	text-align: center;
}





/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Subscribe to newsletter */

.registerForUpdates .leftSide{
	text-align: right;
}

.registerForUpdates .leftSide .centeredVertically{
	width: 70%;
	display: inline-block;
	text-align: left;
	padding: 0 2rem 0 0;
}

input[type="email"].oneLiner{
	font-size: 1em;
	padding: 0.5em;
	width: calc(100% - 1em);
	margin: 0;
	border: 0;
	background-color: rgba(255,255,255,0.5);
	font-family: OpenSans;
	transition: all 1s ease-in-out 0s;
}

input[type="email"].oneLiner:focus{
	background-color: rgba(255,255,255,0.75);
	transition: all 0.3s ease-in-out 0s;
}

button.oneLiner{
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	font-size: 1em;
	padding: 0.5em;
	background-color: rgba(255,255,255,0.9);
	font-family: ExoBold;
}

.registerForUpdates .rightSide{
	background-color: rgb(76,154,212);
	background-image: url(/wp-content/uploads/cep/israel-palacio-wUMbIeoVKgw-unsplash.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 100%, 0% 50%);
	min-height: 280px;
	transition: all 3s ease-in-out 0s;
}

.registerForUpdates:hover .rightSide{
	clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 100%, 25% 51%);
	transition: all 1s ease-in-out 0s;
}

.floatingRect{
	position: absolute;
	background-image: url(/wp-content/uploads/boxes.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width:80%;
	height: 800px;
	opacity: 0.25;
	top: -40%;
}

.spinning{
	-webkit-animation-name: spin;
	-webkit-animation-duration: 60s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-timing-function: ease-in-out;
	animation-name: spin;
	animation-duration: 60s;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
}

@keyframes spin{
	from {transform:rotateZ(0deg)}
	to{transform:rotateZ(360deg)}
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.featuredBlock100{
	overflow: hidden;
	max-width: 95%;
	margin: 4rem auto;
	height: 500px;
	min-height: 400px;
}
.featuredBlock100 .leftSide{
	background-color: rgb(76,154,212);
	background-image: url(/wp-content/uploads/cep/pexels-pixabay-373543.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 45%;
/* 	clip-path: polygon(0 0, 100% 0, 50% 100%, 0% 100%); */
	clip-path: polygon(0 0, 57% 0, 100% 0, 88% 51%, 75% 100%, 55% 100%, 0 100%);
	margin: 0;

	transition: all 3s ease-in-out 0s;
}

.featuredBlock100:hover .leftSide{
	clip-path: polygon(0% 20%, 60% 20%, 60% 0%, 95% 50%, 60% 100%, 60% 80%, 0% 80%);

	transition: all 1s ease-in-out 0s;
}

.featuredBlock100 .rightSide{
	width: 55%;
}

.featuredBlock100 .rightSide h1{
	font-family: 'ExoRegular',sans-serif !important;
	font-size: 2.5rem;
}






/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
.cepColumnsCollection{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.cepColumnsCollection .col1-2.rect16-9{
	display: inline-block;
	width: calc(50% - 36px);
	min-width: 320px;
	min-height: 440px;
	background-color: rgba(237,237,237,0.99);
	padding: 0;
	margin: 0 0 36px;
	position: relative;
	transition: all 1s ease-in-out 0s;
}

.cepColumnsCollection .col1-2.rect16-9 .av{
	width: 100%;
	height: 270px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	transition: all 1s ease-in-out 0s;
}

.cepColumnsCollection .col1-2.rect16-9:hover{
	box-shadow: 0px 0px 18px rgba(0,0,0,0.125);
	transition: all 0.3s ease-in-out 0s;
}

.cepColumnsCollection .col1-2.rect16-9:hover .av{
	background-size: 110%;
}


.cepColumnsCollection .col1-2.rect16-9 .content{
	padding: 32px;
}


.bottomRightArrowLink{
	background-color: rgba(255,255,255,0.9);
	position: absolute;
	bottom: 1rem;
	right: 1rem;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 50%;
	border: 2px solid rgba(103,0,83,0.9);
	transition: all 1s ease-in-out 0s;
}

.bottomRightArrowLink a{
	color: rgba(103,0,83,0.9);
	font-size: 1rem;
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	text-decoration: none;
	line-height: 1.5;
	border-bottom: unset;
	padding: 0;
	box-shadow: none;
/* 
	text-shadow:	1px 1px 0 #fff,
					0   1px 0 #fff,
					1px 0   0 #fff,
					-1px -1px 0 #fff,
					0    -1px 0 #fff,
					-1px  0   0 #fff;
 */

	transition: background-color 1s ease-in-out 0s;
}

.bottomRightArrowLink:hover{
	background-color: rgba(103,0,83,0.9);
	transition: background-color 0.3s ease-in-out 0s;
}

.bottomRightArrowLink:hover a{
	color: rgba(255,255,255,0.9)
}

.bottomRightArrowLink.small{
	width: 1.25rem;
	height: 1.25rem;
	font-size: 0.75rem;
}

.bottomRightArrowLink.small a{
	line-height: 100%;
}




.breakBack{
	z-index: 1;
	background-color: rgba(0, 0, 0, 0.06);
	min-height: unset !important;
}

.rv3sticky{
	position: static !important;
	position: -webkit-sticky !important;
	position: sticky !important;
	top: 118px;
}

.underlineH1.rv3sticky{
	background-color: rgba(255,255,255,0.9);
	z-index: 1;
}


.cepPictureGallery{
	z-index: 2 !important;
}
.cepPictureGallery .picItem{
	display: block;
	height: 270px;
	/* set min-width,
	allow images to determine cell width */
	min-width: 150px;
	max-width: 100%;
	margin-right: 10px;
	/* vertically center */
	top: 50%;
	transform: translateY(-50%);
}

.cepPictureGallery.is-fullscreen{
	top: 118px !important;
	height: calc(100% - 118px) !important;
}

.cepPictureGallery.is-fullscreen .picItem {
	height: auto;
	max-height: 100%;
}



/* highlightReports */
.highlightReports{
	padding: 1px 0;
	min-height: 400px;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Schedules */

.cepBody.day{
	max-width: 1064px;
	margin: 0 auto;
}

.cepBody.day .btnStageFilter{
	padding: 0.25rem 2rem;
	margin: 0 0.5rem;
	color: rgba(255,255,255,0.9);
}

.cepBody.day .btnStageFilter.all{
	background-color: rgba(100,100,100,0.99);
}

.cepBody.day .btnStageFilter.mainStage{
	background-color: rgba(237,110,111,0.99);
}

.cepBody.day .btnStageFilter.sessionSpace{
	background-color: rgba(76,154,212,0.99);
}


.cepBody.day .event{
	border-bottom: 1px solid #ccc;
	padding: 1rem 0;
}

.cepBody.day .event span.programme{
	padding: 0.125rem 0.5rem;
	margin: 0 0.5rem 0 0;
/* 	color: rgba(255,255,255,0.9); */
	background-color: rgba(103,0,83,0.125);
}


.cepBody.day h3.light{
	font-family: 'Exo',sans-serif !important;
	font-weight: normal;
}


.cepBody.day h3.peach,
.cepBody.day p.peach,
.cepBody.day .toggleContent.peach{
	color: rgb(237, 110, 111);
}

.cepBody.day h3.blue,
.cepBody.day p.blue,
.cepBody.day .toggleContent.blue{
	color: rgb(76,154,212);
}

.cepBody.day h3.green,
.cepBody.day p.green,
.cepBody.day .toggleContent.green{
	color: rgb(90, 187, 166);
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* FOOTER */

.cepFooter{
	background-color: rgba(31,31,31,1);
	color: rgba(255,255,255,0.9);
}

.cepFooter .icon{
	width: 48px;
	height: 48px;
	background-color: rgba(255,255,255,0.9);
	border-radius: 50%;
	padding: 0;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: 64% auto;
	background-position: center;
	filter: none;
	margin: 0 0 0 1rem;

	transition: all 1s ease;
}

.cepFooter .icon:hover{
	background-size: 72% auto;
	background-color: rgba(255,255,255,0.99);
	transition: all .4s ease;
}

.cepFooter p.tiny a{
	color: rgba(255,255,255,0.9);
	margin-left: 1rem;
	box-shadow: none;
}


/* navigation tidy up */

header a{
	box-shadow: none !important;
	font-size: 22px;
	color: rgba(0,0,0,0.8) !important;
}





/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* WordPress hacks */
.wp-block-latest-posts{
    list-style: none !important;
    max-width: 1064px;
    margin: 0 auto;
    padding: 0 !important;
}

.wp-block-latest-posts.columns-3 li{
	width: calc(33% - 2rem);
	margin: 0 2rem 0 0;
}

/* menu hack */

#menu-item-3146{
	display: none !important;
	position: absolute;
	top: 110px;
	right: 1rem;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	text-align: center;
	transform: rotate(9deg);

background: #4c9ad4; /* Old browsers */
background: -moz-linear-gradient(45deg,  #4c9ad4 0%, #ed6e6f 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  #4c9ad4 0%,#ed6e6f 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  #4c9ad4 0%,#ed6e6f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}

#menu-item-3146 a{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);

	color: rgba(255,255,255,0.9) !important;

	text-align: center;
	left: 0;
	right: 0;
	font-size: 1.7rem;
	line-height: 1;
	font-family: 'ExoRegular';
	text-transform: uppercase;

	padding: 0 !important;
	margin: 0;
}

#menu-item-3146 a:hover,
#menu-item-3146 a:focus,
#menu-item-3146 a:active{
	color: var(--aotfYellow) !important;
}

.nav li ul{
	right:0;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Specific hacks */


/* Royal Shakespeare Company Opens ‘Dream’ */
/* /2021/02/royal-shakespeare-company-opens-dream/ */
.blocks-gallery-item__caption a{
	background-color: rgba(255,255,255,0.95);
	padding: 0 8px;
}

/* mobile */

/* 
MIN font size is 42px on device with screen @ 320px
MAX font size is 100px on device with screen @ 1350px
IMPORTANT to leave numbers WITH or WITHOUT suffixes in calculations
 */

/* 20 40 */

.cepFeaturedGallery .item h3{
	font-size: 28px !important;
}

.cepFeaturedGallery .item h4{
	font-size: 20px !important;
}

@media (min-width: 320px) and (max-width: 1350px) {

		h1 {
			font-size: calc( 32px + (48 - 32) * ( (87vw - 320px) / ( 1350 - 320))) !important;
		}


		h2 {
			font-size: calc( 32px + (40 - 32) * ( (87vw - 320px) / ( 1350 - 320))) !important;
		}

		h3 {
			font-size: calc( 24px + (34 - 24) * ( (87vw - 320px) / ( 1350 - 320))) !important;
		}

		h4 {
			font-size: calc( 20px + (28 - 20) * ( (87vw - 320px) / ( 1350 - 320))) !important;
		}
}

@media (min-width: 1350px) {

	.h2 {
		font-size: 40px !important;
	}

}

/* Phones */
@media (min-width: 320px)  and (max-width: 480px){

	.cepContainer .cepBody,
	.cepContainer .cepBody.day{
		max-width: 95% !important;
	}

	p {
		line-height: 1.5;
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
	}

	.tagLine{
		max-width: 70% !important;
		margin-left: unset !important;
		padding: 0.25rem 1rem !important;
		transform: scale(0.7);
		bottom: -4rem !important;
		left: -2rem !important;
	}

/* 
	.toggleShowHide{
		left: unset;
		right: 0;
	}
 */

	.cepBody.day .btnStageFilter{
		padding: 0.5em;
	}


	.cepColumns .col1-4{
		width: 100% !important;
	}


	.cepColumns .col1-3{
		width: 100% !important;
	}

	.cepColumns .col2-3{
		width: 100% !important;
	}

	.cepColumns .col1-2{
		width: 100% !important;
	}


	.featuredBlock100 .floatingRect{
		width: 100%;
		height: 320px;
		top: 150px;
	}

	.featuredBlock100 .leftSide{
		display: none;
	}

	.featuredBlock100 .rightSide{
		width: 100% !important;
		height: unset !important;
	}

	.featuredBlock100 .rightSide .centeredVertically{
		padding: 0.5em;
	}

	.registerForUpdates .leftSide .centeredVertically{
		width: 100%;
		display: block;
		padding: 0.5em;
	}


	.cepFooter hr.cep.white {margin:1em 0;}

}/* Phones */


/* Tablet */
@media (min-width: 768px)  and (max-width: 1024px){

	.cepContainer .cepBody,
	.cepContainer .cepBody.day{
		max-width: 95% !important;
	}

	.tagLine{
		max-width: 40% !important;
		margin-left: unset !important;
		padding: 1rem 2rem !important;
		bottom: 1rem !important;
		left: 1rem !important;
	}

	.rv3grid{
		max-width: 95% !important;
	}

	.cepColumns.speakers .col1-4{
		min-width: 340px !important;
	}

	.cepColumns .col1-4{
		min-width: 214px !important;
	}

	.cepColumns .col1-3{
		min-width: 230px !important;
	}

	.cepColumns .col1-2{
		min-width: 355px !important;
	}

	.cepFooter hr.cep.white {margin:1em 0;}

}/* Tablet */

