/*
	Theme Name: Schoolcms - Landing Short
	Author: Innermedia
Author URI: https://www.innermedia.co.uk
Description: 
Requires at least: WordPress 4.9.6
Version: 1.0
*/
/*------------------------------------*\
    TYPOGRAPHY
\*------------------------------------*/

html {
    /*scroll-behavior: smooth;*/
}
/*
body {
    font-size: 18px;
    font-weight: 300;
    color: rgb(87, 87, 86);
    line-height: 1.55;
    font-family: 'Roboto',sans;
}
*/
.wrapper {
    position: relative;
    overflow: hidden;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
}
 /*
h1, h2, h3 {
    color: #002d59;
    font-weight: 900;
   font-family: 'Roboto',sans;
}

h6 {
    font-size: 0.75em;
}

h2 {
    font-size: 32px;
    margin: 20px 0 20px 0;
}*/

.introText h1 {
    font-size: 40px;
    color: #fff;
    margin: 30px 0;
}
h1,
.dynamicContent .sectionTitle {
	font-size: 2.3rem;
    margin-bottom: 15px;
    color: #002d59;
    text-transform: uppercase;
    letter-spacing: .5px;
    position: relative;
}
.introText h2, .introText h3 {
    color: #fff;
}

h3 {
    font-size: 20px;
}

a {
    color: #002d59
}

h4 {
    font-size: 20px;
    color: #be9f56;
    margin: 1.3em 0;
}

p {
    margin-bottom: 1.2em;
}

/*
ul {
    list-style-position: inside;
    padding: 0;
}

.textBlock.default ul {
    color: #237281;
}
*/
blockquote {
    text-align: center;
    border: 0;
}

table {
    margin: 1em auto;
    text-align: left;
    max-width: 100%;
}

table tr {
    border-bottom: solid 1px;
}

table td {
    padding: 5px;
}

table td:last-child {
    text-align: right;
}

.bodyContent {
    margin: 40px 0;
}

/* form changes*/
.dynamicContent div.wpforms-container-full .wpforms-form .wpforms-field-label {
    font-weight: 300;
    word-break: keep-all!important;
}

.dynamicContent div.wpforms-container-full .wpforms-form input.wpforms-field-medium, .dynamicContent div.wpforms-container-full .wpforms-form select.wpforms-field-medium, .dynamicContent div.wpforms-container-full .wpforms-form .wpforms-field-row.wpforms-field-medium {
    max-width: 100%;
}

.dynamicContent div.wpforms-container-full .wpforms-form button[type=submit] {
    display: inline-block;
    line-height: 1.4em;
    padding: 10px 25px 10px;
    text-transform: uppercase;
    background: #002d59;
    color: #fff;
    border: solid 2px #002d59;
    text-align: center;
    background: #002d59;
    transition: all 300ms;
    min-width: 200px;
    letter-spacing: 0.05em;
    font-weight: 300;
}

.dynamicContent div.wpforms-container-full .wpforms-form button[type=submit]:hover {
    background: #fff;
    color: #002d59;
    border: solid 2px #000;
}

@media (min-width:992px){
	.welcomeBlock h1, .welcomeBlock h2, .homeContent h2,
	.dynamicContent .sectionTitle	{
		font-size: 2.3rem;
	}
}
/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter, div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 10px 40px 30px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #FFF;
    border: 1px solid #F0F0F0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption .wp-caption-text, .gallery-caption {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

.sticky {
}

.bypostauthor {
}

/*------------------------------------*\
    RESPONSIVE XL
\*------------------------------------*/
.container.body-container {
    max-width: 1300px;
}
/*
@media only screen and (min-width : 1390px) {
    .container {
        max-width: 1300px;
    }
}

@media (min-width: 1590px) {
    .container {
        max-width: 1560px;
    }
}*/

/* End responsive XL */
/*navigation*/
.menuGroup {
    text-align: right;
}
/*
.mainMenu {
    display: inline-block;
    vertical-align: middle;
}*/

.headGroup {

}

.headGroup .openDays {
    display: inline-block;
    margin-top: 0px;
    margin-right: 10px;
    vertical-align: middle;
}
.headGroup .openDays.desktop {
	display:none;
}
.headGroup .openDays.mob {
	margin: 20px 0 0;
	display:block;	
    padding: 0px 10px;
    text-align: center;
}
/*
.mainMenu ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mainMenu .menu {
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.mainMenu .menu a {
    color: #be9f56;
    transition: all 300ms;
}

.mainMenu .menu a:hover {
    text-decoration: none;
    color: #002d59;
}

.mainMenu .menu li {
    display: inline-block;
    position: relative;
    padding: 0 5px;
    vertical-align: middle;
}
*/
.openCol {
    display: none;
}

@media (min-width: 992px) {
	.headGroup .openDays.desktop {
		display:inline-block;
		display:block;
		height:40px;
	}
	.headGroup .openDays.mob {
		display:none;
	}
	.menuGroup {
		height: 110px;
	}
}

@media (min-width: 992px) {
	/*
    .mainMenu .menu {
        font-size:14px;
    }

    .mainMenu {
        display: block;
        margin-top: 30px;
        margin-right: 10px;
    }

    .mainMenu .menu > li {
        line-height: 30px;
    }

    .mainMenu .menu li {
    }
	*/
}

@media (min-width: 1200px) {
    .headerIcon {
        margin:25px 0;
        margin: 0;
    }

    .headerIcon .mainLogo {
        display: inline-block;
    }

    .headerIcon .mobIcon {
        display: none;
    }
}
/*
@media (min-width: 1400px) {
    .mainMenu .menu {
        font-size:16px;
    }

    .mainMenu .menu li {
        padding: 0 15px;
    }

    .mainMenu {
        margin-right: 0;
    }
}
*/
@media (min-width: 1590px) {
    .openCol {
        display:block;
    }
}

.headGroup .openDays a {
    display: inline-block;
    line-height: 1.4em;
    padding: 5px 20px 5px;
    font-size: 16px;
    text-transform: uppercase;
    background:  #be9f56;
    color: #fff;
    border: solid 2px  #be9f56;
    text-align: center;
    width: auto;
    transition: all 300ms;
    letter-spacing: 0.05em;
}

.headGroup .openDays a:hover {
    background: #fff;
    color: #002d59;
    text-decoration: none;
}

.lang-flags {
    float: right;
    padding-top: 53px;
}

.lang-flags ul {
    list-style: none;
}

.lang-flags li {
    display: inline-block;
}

@media(max-width: 1199px) {
    .lang-flags {
        padding-top: 45px;
    }
}

@media(max-width: 991px) {
    .lang-flags {
        padding-top: 0px;
        display: inline-block;
        float: none;
    }
}

.menuToggle {
    display: none;
}

/*menuToggle*/
@media (max-width: 991.99px) {
    .mainMenu {
        /* display:block; */ 
		text-align: right;
		margin:17px 0;
    }

    .menuToggle {
        display: inline-block;
        font-size: 30px;
        color: #fff;
        padding: 0px 10px 0 10px;
		margin:10px 0;
        text-align: right;
        cursor: pointer;
		float:right;
    }
	#menu-main {
		clear:both;
	}
    .mainMenu .menuWrap {
        position: fixed;
        right: 0;
        top: 0;
        height: 100%;
        background: #002d59;
		color:#fff;
        display: block;
        width: 260px;
        z-index: 800;
        padding: 32px 0;
        text-align: left;
        border-left: solid 2px #a3adc8;
    }
	#menu-main > li {
		display:block;
	}
	#menu-main > li > a {
		border-bottom:0;
		padding:10px 10px;
		font-size:16px;
	}
    .mainMenu .menuWrap {
        right: -270px;
        transition: 300ms;
    }

    body.menuopen .mainMenu .menuWrap {
        right: 0px;
    }

    .mainMenu .menu li {
        display: block;
        padding: 0px 0px;
    }

    .mainMenu .menu li a {
        padding: 10px;
        display: block;
    }

    .mainMenu .menu li a:hover {
        background: #a3adc8;
        color: #fff;
        text-decoration: none;
    }
}

/*-------------------
Header
------------------*/
.logo {
    display: inline-block
}

.logo img {
    vertical-align: middle;
    width: auto;
    max-height: 90px;
}

.logo .mainLogo {
    display: none;
    vertical-align: middle
}

.logo .mobIcon {
    display: inline-block;
    vertical-align: middle
}

@media (min-width: 1200px) {
    .logo .mainLogo {
        display:inline-block;
    }

    .logo .mobIcon {
        display: none;
    }

    .logo {
    }

    .logo img {
        max-height: 100px;
    }
}
/*
.homeBanner {
    width: 100%;
    position: relative;
    overflow: hidden;
    max-height: 585px;
    background: #000;
}

.homeBanner:before {
	content:'';
	display:block;
	width:100%;
	padding-top:37.5%;
    min-height: 400px;
}
.homeBanner #hero {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
}
.homeBanner .slide {
    width: 100%;
    height: 100%;
	position:relative;
}

.homeBanner .slideImage {
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    opacity: 0.85;
	position:absolute;
	height:100%;
}

.homeBanner .slideImage img {
    width:100%;
	height:100%;
    min-height: 400px;
	object-fit:cover;
}

.homeBanner .slideText {
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    background: #002d59;
    padding: 10px;
    position: absolute;
    width: 100%;
    bottom: 10%;
    background: transparent;
}

.homeBanner .slideText .linkbutton a {
    font-size: 16px;
    margin-top: 20px;
    font-weight: 300;
}

.homeBanner .slideText .slideTop {
    line-height: 1.3;
    font-weight: 700;
    font-family: 'Roboto',sans;
}

.homeBanner .openDays {
    color: #fff;
    background: #000;
    padding: 15px 0;
    text-align: center;
    font-size: 14px;
}

.homeBanner .openDays a {
    display: inline-block;
    font-weight: 700;
    line-height: 1.5em;
    padding: 10px 41px;
    font-size: 1em;
    text-transform: uppercase;
    background: #002d59;
    color: #fff;
    border: solid 2px #002d59;
    min-width: 200px;
    text-align: center;
    letter-spacing: 0.05em;
}

.homeBanner .openDays a:hover {
    background: #fff;
    color: #002d59;
    text-decoration: none;
}

.homeBanner .openDays .openCont {
    font-size: 1.667em;
    line-height: 1.2;
    font-weight: 700;
    padding: 5px 0 10px;
}*/

#hero .cycle-pager {
    position: absolute;
    right: 30px;
    top: 0;
    z-index: 101;
}

#hero .cycle-pager span {
    background: #fff;
    font-size: 0;
    width: 14px;
    height: 14px;
    display: inline-block;
    border-radius: 50%;
    margin: 10px 5px;
    opacity: 0.7;
    cursor: pointer;
    transition: 300ms;
}

#hero .cycle-pager span.cycle-pager-active {
    opacity: 1;
}

@media (min-width: 992px) {
    #hero .cycle-pager {
        top: 50%;
        transform: translateY(-50%);
    }

    #hero .cycle-pager span {
        display: block;
    }

    .homeBanner .openDays {
        color: #fff;
        background: rgba(0, 0, 0, 0.65);
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 110;
        padding: 25px 0;
    }

    .homeBanner .openDays {
        font-size: 16px;
    }

    .homeBanner .openDays .opendayText {
    }

    .homeBanner .slideText {
        width: 70%;
        left: 15%;
    }
}

@media (min-width: 1200px) {
    .homeBanner .slideText {
        font-size:24px;
    }

    .homeBanner .slideText .slideTop {
        font-size: 60px;
    }

    .homeBanner .slideText .slideBottom {
        margin-top: 15px;
    }
}

@media (min-width: 1590px) {
    .homeBanner .openDays {
        font-size:18px;
    }
}

.introText {
    background: #000;
    color: #fff;
    padding-top: 30px;
    padding-bottom: 40px;
    text-align: center;
}

.introText blockquote {
    font-size: 1.3em;
    color: #fff;
    margin-bottom: 0;
}

.belowText {
    padding: 30px 0;
    background: #f3f4f6;
}

.row.columnrow .col-sm-7.col-xl-6.col-xl-offset-1 {
}

/*Dynamic blocks*/
.dynamicContent {
}

/*text block*/
.textBlock {
    padding: 10px 0 30px 0;
    position: relative;
}

.lightboxContent .textBlock {
    padding-top: 0;
    padding-bottom: 0;
}

.textBlock.hasimg {
    padding-top: 100px;
    padding-bottom: 60px;
}

/*
.textBlock.default {
    padding: 30px 0;
}*/
.textBlock .imageBackground {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    opacity: 0.15;
	overflow:cover;
}

.textBlock.clearBlock .imageBackground {
    opacity: 1;
}

.textBlock .textLink {
    margin: 40px 0 60px;
}

.textBlock .textLink a, .linkbutton a {
    display: inline-block;
    line-height: 1.4em;
    padding: 10px 25px 10px;
    text-transform: uppercase;
    background: #002d59;
    color: #fff;
    border: solid 2px #002d59;
    text-align: center;
    background: #002d59;
    transition: all 300ms;
    letter-spacing: 0.05em;
}

.textBlock .textLink a:hover, .linkbutton a:hover {
    background: #fff;
    text-decoration: none;
    color: #111640;
}

.linkbutton.telephoneLink a {
    padding: 0;
    overflow: hidden;
}

.linkbutton.telephoneLink a .cont {
    display: inline-block;
    position: relative;
    padding: 10px 41px;
    opacity: 1;
    transition: 300ms;
}

.linkbutton.telephoneLink a .number {
    display: block;
    width: 100%;
    position: relative;
    opacity: 0;
    position: absolute;
    padding: 10px 00px;
    top: 0;
    left: 100%;
    transition: 500ms;
}

.linkbutton.telephoneLink a.telOpen .cont {
    opacity: 0;
}

.linkbutton.telephoneLink a.telOpen .number {
    left: 0%;
    opacity: 1;
}

.textBlock .slide {
    padding: 20px 0;
    width: 100%;
}

@media (min-width: 992px) {
    .textBlock {
        padding: 30px 0 60px 0;
    }
}

/*default styles*/
/*
.dynamic-text_block[id="welc"] .textBlock.default:before {
    content: '';
    display: block;
    width: 65px;
    background-image: url(XXX);
    background-size: contain;
    background-position: center;
    height: 70px;
    margin: -20px auto 20px;
}
*/
.dynamicContent.postCols .textBlock.default {
    background: #f8f8f8;
    padding-top: 50px;
}

.dynamicContent.postCols .textBlock.default:before {
    display: none;
}

.textBlock.lightgreyBlock {
    background: #eee;
}

@media (min-width: 1390px) {
    .textBlock.hasimg .col-sm-12 {
        padding-left:120px;
        padding-right: 120px;
    }
}

/* img text block*/
.ImgtextBlock {
    position: relative;
}

.ImgtextBlock .textBlock {
    padding: 30px;
    text-align: left;
}

.ImgtextBlock .textBlock p {
    letter-spacing: 1px;
    line-height: 1.66;
}

.ImgtextBlock .imageBackground {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
}
.ImgtextBlock .imageBackground  img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
}
.ImgtextBlock .textBlock.lightgreyBlock {
    background: rgba(238, 238, 238, 0.8);
    color: #000;
}

@media (min-width: 1590px) {
    .ImgtextBlock .textBlock {
        padding:40px 55px 40px 55px;
    }
}

/*columns*/
.dynamic-two_columns .columnrow .col2 {
    background: #002d59;
    color: #fff;
    z-index: 2;
    padding-top: 60px;
    padding-bottom: 60px;
    padding-bottom: 5px;
    padding-bottom: 30px;
}

.dynamic-two_columns .columnrow .col2 h2, .dynamic-two_columns .columnrow .col2 h3 {
    color: #fff;
}

.dynamic-two_columns .columnrow .col2 a {
    color: #fff;
    text-decoration: underline;
}

.dynamic-two_columns .columnrow .col2 .col-bottom-image {
    margin: 10px -15px -22px;
}

.dynamic-two_columns .columnrow > div:nth-child(2) {
    transform: translateX(1px);
}

.twocol-bg {
    position: relative;
    height: 200px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    z-index: 1;
}

.dynamic-two_columns .twocolbgWrap {
    position: relative;
    background: #002d59;
}

@media (min-width: 768px) {
    .twocol-bg {
        position:absolute;
        left: 0;
        right: 40%;
        top: 0;
        bottom: 0;
        height: auto;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
    }

    .dynamic-two_columns .columnrow > div {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

@media (min-width: 992px) {
    .dynamic-two_columns .columnrow {
        display:flex;
        background: #fff;
        position: relative;
    }

    .dynamic-two_columns.intro-two .columnrow .col2 {
        margin-top: -250px;
        position: relative;
        z-index: 120;
        padding-top: 20px;
    }

    .dynamic-two_columns {
        position: relative;
    }

    .dynamic-two_columns h3 {
        max-width: 500px
    }

    .dynamic-two_columns .columnrow .col2 {
        /* margin-left: 2px; */
    }
}

@media (min-width: 1200px) {
    .dynamic-two_columns.intro-two .columnrow .col2 {
        margin-top:-450px;
    }
}

@media (min-width: 1390px) {
    .dynamic-two_columns .columnrow > div {
        padding-right: 40px;
    }

    .dynamic-two_columns .columnrow .col2 {
        padding-left: 40px;
    }

    .dynamic-two_columns .columnrow .col2 .col-bottom-image {
        margin: 10px -40px -22px;
    }

    .dynamic-two_columns.intro-two .columnrow .col2 {
        margin-top: -450px;
    }
}

/*infoBlocks*/
.infoBlocks .image {
}

.infoBlocks img {
    border-radius: 100%;
}

.infoBlocks:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 50%;
    background: #f4f4f4;
    display: block;
}

.infoBlocks {
    text-align: center;
    padding-top: 0px;
    padding-bottom: 0px;
    position: relative;
}

.infoBlocks .infoBlock {
    padding-top: 20px;
    padding-bottom: 20px;
}

.infoBlocks .infoBlock .images {
    padding: 10px 0;
}

@media (min-width: 992px) {
    .infoBlocks .infoBlock {
        padding-left:30px;
        padding-right: 30px;
    }
}

/*innerInfoBlocks*/
.innerInfoBlocks {
    margin-top: 30px;
    margin-bottom: 30px;
    line-height: 105px;
    text-align: center;
}

.innerInfo {
    line-height: 1.3;
    display: inline-block;
    vertical-align: middle;
    margin-top: 20px;
    margin-bottom: 10px;
}

.innerInfoBlocks .image {
    height: 45px;
    line-height: 45px;
}

.innerInfoBlocks .image img {
    vertical-align: middle;
}

.innerInfoBlocks img {
    max-height: 105px;
}

.innerInfoBlocks strong {
    display: block;
}

.innerInfoBlocks span {
    display: block;
    font-size: 16px;
}

.highlights {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.highlights > div {
    flex-basis: 50%;
    text-align: center;
    overflow: hidden;
}

@media(max-width: 767px) {
    .highlights > div {
        flex-basis: 100%;
    }
}

.highlight-icon {
    border: solid 3px #efefef;
    max-width: 230px;
    padding: 5px 20px;
    line-height: 84px;
    margin: 5px auto 10px;
    text-align: center;
}

.highlight-icon img {
    display: inline-block;
    vertical-align: middle;
}

.highlight-title {
    color: #000;
    margin-bottom: 20px;
    font-size: 15px;
    line-height: 1.3em;
}

.tb-pager {
    display: block;
    text-align: center;
    font-size: 40px;
    line-height: 20px;
    letter-spacing: 7px;
    position: relative;
    z-index: 120;
}

.tb-pager > span {
    color: #333;
    opacity: 0.5;
    transition: all 300ms;
}

.tb-pager .cycle-pager-active {
    opacity: 1;
}

.boxed-items {
    margin: 60px 0;
}

.boxed-item {
    overflow: hidden;
    border: 4px solid rgba(255, 255, 255, 0.5);
    margin: 30px 0;
    padding: 30px;
}

.whiteBlock .boxed-item {
    border-color: #e2e2e3;
}

.boxed-item img {
    border-radius: 100%;
    width: 20%;
    margin: 0 30px;
}

@media(max-width: 767px) {
    .boxed-item img {
        width: 100%;
        margin: 0px;
        float: none;
    }

    .triptych img {
        margin: 0 10px;
        width: 60px
    }

    .subject-staff-member-image {
        width: 60px;
    }

    .subject-staff-member-blurb {
        padding-left: 25px;
    }

    .subject-staff-member-links {
        font-size: 16px;
    }

    .subject-title {
        padding: 14px 40px 14px 0px;
        text-align:left
    }

}

/*infoCarousel*/
.infoCarousel {
    position: relative;
}

.infoCarItem {
    padding: 20px;
    text-align: center;
    color: #2b2b2b;
}

.infoCarItem h3 {
    position: relative;
    font-size: 20px;
    margin: 1em 0;
    padding-top: 10px;
    line-height: 1.3;
    min-height: 2.6em;
}

.infoCarItem h3:before {
    content: '';
    display: block;
    position: absolute;
    width: 20px;
    height: 2px;
    background: #002d59;
    top: 0;
    left: 50%;
    margin-left: -10px;
}

.infoCarousel .owl-prev, .infoCarousel .owl-next {
    font-size: 0;
    width: 15px;
    height: 29px;
    display: block;
    position: absolute;
    background-image: url(images/arrow-dark.png);
    background-repeat: no-repeat;
    top: 50%;
    transition: 300ms opacity;
}

.infoCarousel .owl-prev {
    left: -7px;
}

.infoCarousel .owl-next {
    right: -7px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.infoCarousel .owl-prev.disabled, .infoCarousel .owl-next.disabled {
    opacity: 0;
}

/* Link Blocks*/
.linkBlock a {
    display: block;
    width: 100%;
    position: relative;
    margin-bottom: 30px;
    max-height: 300px;
}

.linkBlock a:before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 55%;
}

.linkBlock a .linkBlockimg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.linkBlock a .linkBlockimg img {
    display: none;
}

.linkBlock a .lnkTitle {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    line-height: 1.4em;
    padding: 10px 20px;
    font-size: 16px;
    text-transform: uppercase;
    background: #002d59;
    color: #fff;
    border: solid 2px #002d59;
    text-align: center;
    width: 100%;
    background: #002d59;
    transition: all 300ms;
}

.linkBlock a:hover .lnkTitle {
    background: #fff;
    color: #002d59;
}

@media (min-width: 768px) {
    .linkBlock a:before {
        padding-top:65%;
    }
}

@media (min-width: 992px) {
    .linkBlock a .lnkTitle {
        font-size: 20px;
    }
}

/*testimonials*/
.testimonialBlock .cycle-slideshow {
    width: 100%;
    text-align: center;
}

.testimonialBlock .slide {
    width: 100%;
}

.testimonialWrap {
    padding: 20px 30px;
    font-size: 20px;
    text-align: center;
}

blockquote {
    font-style: normal;
    font-size: 22px;
}

blockquote cite {
    font-style: normal;
    display: block;
    font-size: 16px;
    margin-top: 10px;
}

/*
.testimonialWrap:before{
	content:'';
	display:block;
	width:34px;
	height:25px;
	background-image:url(images/quoteopen.png);
	position:absolute;
	top:20px;
	left:0;
}
.testimonialWrap:after {
	content:'';
	display:block;
	width:34px;
	height:25px;
	background-image:url(images/quoteclose.png);
	position:absolute;	
	bottom:40px;
	right:0;
}
.testimonialWrap .cycle-pager {
	font-size: 45px;
    line-height: 5px;
	color:inherit;
	margin-top:20px;
	text-align:center;
}*/
.testimonialWrap .cycle-pager span {
    margin: 0 3px;
    cursor: pointer;
    opacity: 0.7;
}

.testimonialWrap .cycle-pager .cycle-pager-active {
    opacity: 1;
}

/*Image Block*/
.imageBlock {
    width: 100%;
    margin: 0 auto;
}

.imageWrap {
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.imageWrap img {
    width: 100%;
}

@media (min-width: 992px) {
    .imageWrap {
        max-height:400px;
    }
	.testimonialWrap {
		padding: 20px 70px;
	}
    .imageWrap img {
        visibility: hidden;
    }
}

@media (min-width: 1200px) {
    .imageWrap {
        max-height:550px;
    }
}

.blockGalleryItem {
    padding-bottom: 30px;
    text-align: center;
}

.blockGalleryItem a {
    border: solid 2px transparent;
    display: inline-block;
}

.blockGalleryItem a:hover {
    border-color: #002d59;
}

.imgBlockCar {
    position: relative;
    padding: 60px 15px;
}

.imgBlockCar .blockGalleryItem {
    padding-bottom: 0;
}

.imgBlockCar .owl-prev, .imgBlockCar .owl-next {
    font-size: 0;
    width: 15px;
    height: 29px;
    display: block;
    position: absolute;
    background-image: url(images/arrow-dark.png);
    background-repeat: no-repeat;
    top: 50%;
    transition: 300ms opacity;
}

.imgBlockCar .owl-prev {
    left: -7px;
}

.imgBlockCar .owl-next {
    right: -7px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.imgBlockCar .owl-prev.disabled, .imgBlockCar .owl-next.disabled {
    opacity: 0;
}

.videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.subjects {
    max-width: 1070px;
    margin: auto;
}

.subject-staff-member {
    display: flex;
    max-width: 560px;
    margin: 50px auto;
    text-align: left;
    line-height: 1.2em;
    font-size: 20px;
    color: #888;
}

.subject-staff-member-image {
    width: 133px;
    flex-shrink: 0;
}

.subject-staff-member-blurb {
    padding-left: 70px;
    flex-grow: 1;
}

.subject-staff-member-link-row {
    display: flex;
    align-content: flex-end;
    justify-content: space-between;
}

.subject-staff-member-name {
    font-weight: 600;
    margin-top: -5px;
}

.subject-staff-member-title {
    margin-bottom: 20px;
}

.subject-staff-member-text {
    margin-bottom: 20px;
}

.subject-staff-member-link {
    text-transform: uppercase;
}

.sessions {
    text-align: center;
}

.subject-staff {
    opacity: 0;
    height: 0;
    transition: all 300ms;
    overflow: hidden;
}

.subject.open .subject-staff {
    opacity: 1;
    height: auto;
    display: block;
    overflow: hidden;
}

.subject-title {
    font-size: 20px;
    color: #888;
    padding: 14px 40px 14px 40px;
    position: relative;
    cursor: pointer;
    transition: all 300ms;
}

.subject-title:hover {
    background: #f8f8f8
}

.subject-title:after {
    content: ">";
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    right: 0;
    top: 14px;
    color: #fff;
    background: #002d59;
    transition: all 300ms;
    text-align: center;
}

.subject.open .subject-title:after {
    transform: rotate(90deg);
}

.subject {
    border-top: 2px solid #002d59;
}

.subject:last-child {
    border-bottom: 2px solid #002d59;
}

.tte-booking-form-image {
    text-align: center;
    padding: 20px;
}

.tte-booking-form-image img {
    max-width: 200px;
}

.tte-booking-form-image {
}

.tte-booking-form-holder {
    border-top: 1px solid #888;
    padding-bottom: 30px;
    margin-bottom: 0px;
    padding-top: 10px;
}

.tte-booking-form-holder > div > div > div:nth-child(2) {
    display: none !important;
}

.tte-booking-form-holder > div > div > div:nth-child(3) {
    display: none !important;
    height: 100px;
    margin-bottom: -100px;
    z-index: -1;
    visibility: hidden;
    pointer-events: none;
}

.tte-booking-form-holder > div > div > div:nth-child(4) {
    display: none !important;
}

.tte-booking-form-holder {
    display: flex
}

.tte-booking-form-blurb {
    flex-basis: 33%;
}

.tte-booking-form-embed {
    flex-basis: 66%;
    transform: translateX(30px);
}

@media(max-width: 767px) {
    .tte-booking-form-blurb {
        flex-basis: 100%;
    }

    .tte-booking-form-embed {
        flex-basis: 100%;
        transform: none;
    }

    .tte-booking-form-holder {
        flex-direction: column;
    }
}
/*Accordions*/
.accordion {
	margin-bottom:10px;
	border-bottom:solid 1px #002d59;
}
.accordion.open {
	border-bottom-color:#ccc;
}
.accordion .title {
	position:relative;
	cursor:pointer;
	background:#002d59;
	color:#fff;
	margin:0;
	padding:0.5em 10px;
	padding-right:35px;
}
.accordion .title:after {
	content:'\f054';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display:inline-block;
	position:absolute;
	right:10px;
	top:0.5em;
	transition:300ms;
}
.accordion.open .title:after {
	transform:rotate(90deg);
}
.accordionContent {
	display:none;
	overflow:hidden;	
	padding:10px 0 5px 0;
}
/*----------------
Footer
------------------*/

.footer {
}

.footer .map {
    background-color: #f3f4f6;
    background-position: center;
    background-repeat: no-repeat;
    height: 330px;
    width: 100%;
    position: relative;
    background-size: cover;
    margin-bottom: 20px;
}

.footer .map .linksContainer {
    position: absolute;
    bottom: 70px;
    width: 100%;
    left: 0;
    text-align: center;
}
/*
.footer .map a {
    display: inline-block;
    line-height: 1.5em;
    padding: 10px 41px;
    font-size: 12px;
    text-transform: uppercase;
    background: #002d59;
    color: #fff;
    border: solid 2px #002d59;
    min-width: 200px;
    text-align: center;
}

.footer .map a:hover {
    background: #fff;
    color: #002d59;
    text-decoration: none;
}

.footerTop {
    font-size: 16px;
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: center;
    border-bottom: solid 1px #8d9091;
}

.footerTop a, .footerTop span {
    color: #002d59;
}

.footerTop p {
    margin: 10px 0;
}
*/
.footerBottom {
    text-align: center;
    font-size: 14px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.footerBottom a, .footerBottom span {
    color: #002d59;
}

ul.inputs-list {
    list-style: none;
}

ul.inputs-list input[type='checkbox'] {
    margin-right: 10px
}

@media (min-width: 768px) {
    .footer .map .linksContainer .container {
        display: flex;
        justify-content: space-around;
    }
}

/*----------------
	STYLE TYPES
------------------*/
/*Style 1*/
.textBlock.style1 {
    background: #002d59;
    color: #fff;
}

.textBlock.style1 h2, .textBlock.style1 h3, .textBlock.style1 h4 {
    color: #fff;
}

.textBlock.style1 a {
    color: #fff;
}

.ImgtextBlock .textBlock.style1 {
    background: rgba(0, 45, 89, 0.8)
}

.textBlock.style1 a.readmore, .textBlock.style1 .linkbutton a, .textBlock.style1 div.wpforms-container-full .wpforms-form button[type=submit], .dynamic-two_columns .columnrow .col2 div.wpforms-container-full .wpforms-form button[type=submit], .textBlock.style1 .submitButton {
    border: solid 2px #fff;
    background: #002d59;
}

.textBlock.style1 a.readmore:hover, .textBlock.style1 .linkbutton a:hover, .textBlock.style1 div.wpforms-container-full .wpforms-form button[type=submit]:hover, .dynamic-two_columns .columnrow .col2 div.wpforms-container-full .wpforms-form button[type=submit]:hover, .textBlock.style1 .submitButton:hover {
    background: #fff;
    color: #002d59;
    border: solid 2px #002d59;
}

/*Style 2*/
.textBlock.style2 {
    background: #be9f56;
    color: #fff;
}

.textBlock.style2 h2, .textBlock.style2 h3, .textBlock.style2 h4 {
    color: #fff;
}

.textBlock.style2 a {
    color: #fff;
}

.ImgtextBlock .textBlock.style2 {
    background: rgba(0, 45, 89, 0.8);
}

.style2 .linkbutton a:hover {
    color: #002d59;
}

/*Transparent*/
.textBlock.clearBlock .imageBackground {
    opacity: 1;
}

/*Light Grey 2*/
.textBlock.lightgreyBlock {
    background: #eee;
}

.ImgtextBlock .textBlock.lightgreyBlock {
    background: rgba(238, 238, 238, 0.8);
    color: #000;
}

/*Curriculum Page*/
.subject-tile {
    background: #be9f56;
}

#subject-tiles .subject-block .panel {
    color: #000;
}

#subject-tiles .subject-block .subject-close {
    background: #002d59;
}

.subject-tile.subjectOpen .cover .button-wrap {
    background: #be9f56;
}

#subject-tiles .subject-block .photo {
    margin-bottom: 30px;
}

#subject-tiles .subjContent {
    padding-top: 0;
}

#subject-tiles .title {
}

@media (min-width: 992px) {
    #subject-tiles .subject-block .photo {
        float:right;
        padding-right: 35px;
        padding-left: 15px;
    }
}

span.leadin {
    color: #be9f56;
    font-weight: 500;
    font-size: 1.6em;
    line-height: 1.2;
}

/****Button******/
.blockButton > a, a.readmore {
    display: inline-block;
    background: #002d59;
    color: #fff;
    line-height: 1.4em;
    padding: 15px;
    position: relative;
    transition: 300ms;
    margin: 5px 0;
    /* letter-spacing: 1.04px; */
    /* font-weight: 700; */
	text-align:left;
}

.blockButton > a {
    display: block;
}

.blockButton.blueShort > a{
    display: inline-block;
    margin: 0 20px 0 0;
}

.blockButton.goldShort > a {
    display: inline-block;
    background: #be9f56;
    margin: 0 20px 0 0;
}
.blockButton.goldShort > a:before {
	display:none;
}
.blockButton.goldShort > a {
    display: inline-block;
    background: #be9f56;
    margin: 0 20px 0 0;
	padding-left:15px;
}
.blockButton.downloadButton > a {
    padding-left: 42px;
}
.blockButton.downloadButton > a:before {
	    content: "\f019";
    font-family: "Font Awesome 5 Free";
    /* color: #FFFFFF; */
    font-weight: 900;
    margin-right: 5px;
    position: absolute;
    left: 15px;
    top: 15px;
}

.blockButton.blueOutline > a:hover {
    background: #fff;
    box-shadow: inset 0 0 0 2px #002d59;
}
.blockButton > a{
	padding-left:42px;
}
.blockButton > a:before {
    content: "\f0c1";
    font-family: "Font Awesome 5 Free";
    /* color: #FFFFFF; */
    font-weight: 900;
    margin-right: 10px;
	 position: absolute;
    left: 15px;
	top:15px;
}
.blockButton.blueShort > a{
	padding-left:15px;
}
.blockButton.blueShort > a:before {
	display:none;
}
.blockButton> a:hover, a.readmore:hover {
    background: #be9f56;
    color: #002d59;
    border-color: #000;
    text-decoration: none;
}