/*
Theme Name: My template-child Child Theme
Theme URI: 
Version: 1.0
Description: 
Author: Rane digital
Author URI: 
Template: Divi
*/

:root {
  --brand-main: #212C27;
  --brand-sec: #b68258;
}

/* New CSS */




/* ==================== */
/* Custom Header
/* ==================== */

.logged-in .hide-admin {
/*  display: none !important;*/
}

.tpsl-header {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.tpsl-header__row--cta {
  display: none;
}

.tpsl-header__row {
  display: flex;
  justify-content: space-between;
}

.tpsl-header__logo {
  max-width: 150px;
  display: block;
}

.tpsl-header__col--nav,
.tpsl-header__col--cta {
  display: none;
}

.tpsl-header__burger {
  flex-basis: 30%;
  max-width: 210px;
  display: flex;
  justify-content: flex-end;
  align-items: center;

}

.tpsl-header__burger-link {
  font-size: 1.5rem;
  color: #212C27 !important;
}

.divi-burger {
  display: inline-block;
  position: relative;
  font-size: 40px;
}

.divi-burger::before {
  content: "\61";
  font-family: "ETmodules";
}

.btn-cta {
  color: #FFFFFF!important;
  border-color: #212C27;
  border-radius: 0px;
  font-family: 'Red Hat Display',Helvetica,Arial,Lucida,sans-serif!important;
  background-color: #212C27;
  text-transform: uppercase;
  font-size: 16px;
  padding: 8px 16px;
  transition: 0.3s;
}

.btn-cta:hover {
  transform: scale(1.05);
}

.header-browse-nav {
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  justify-content: center;
}

.header-browse-nav li {
  padding: 8px 8px;
}

@media (min-width: 768px){
  .tpsl-header__burger {
    display: none;
  }

  .tpsl-header__col--cta,
  .tpsl-header__col--nav {
    display: flex;
  }

  .tpsl-header__col--nav {
    align-items: center;
  }

  .tpsl-header__col--cta {
    align-items: center;
    justify-content: center;
  }
}

@media (min-width: 1280px){

  .tpsl-header {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .tpsl-header__logo {
    max-width: 210px;
  }

  .header-browse-nav li { 
    font-size: 20px;
  }

  .btn-cta { 
    font-size: 20px;
    padding: 10px 24px;
  }
}

/* ===================== */
/* Slideout Nav
/* ===================== */

.slideout-menu {    
  width: 350px;
  position: fixed;
  top: 0; 
  left: -350px; 
/*  left: 0;*/
  height: 100%; 
  background: #333;
  z-index: 100;
  /*overflow-y: scroll;*/
  background-color: #212C27;
  transition: 0.5s;
}

body.admin-bar .slideout-menu {
  top: 46px;
}

.slideout-menu.active {
  box-shadow: 0 21px 27px rgb(0 0 0 / 90%);
  left: 0;
}

.slideout-menu i {
  font-family: "FontAwesome";
}

.slideout-menu h3 { 
  margin: 0;
  position: relative;
  padding: 12px 10px;
  color: #fff;
  font-size: 1.2em;
  font-weight: 400;
/*  border-bottom: 4px solid #222;*/
}

/* Style up the toggle menu "x" */
.slideout-menu .slideout-menu-toggle {
  position: absolute;
  top: 12px;
  right: 10px;
  display: inline-block;
  padding: 6px 9px 5px;
  font-family: Arial, sans-serif;
  font-weight: bold;
  line-height: 1;
  background: #212C27;
  color: white;
  text-decoration: none;
  vertical-align: top;
}

.slideout-menu .slideout-menu-toggle:hover {
  color: #fff;
}

/* Give the menu container some love */
.slideout-menu ul {
  list-style: none;
  font-weight: 300; 
  margin: 0;
  padding: 0;
}

/* And now the list items */
.slideout-menu ul li {
  /*border-top: 1px solid #454545;
  border-bottom: 1px solid #151515;*/
}

/* The anchor elements within the list items */
.slideout-menu ul li a {
  position: relative;
  display: block;
  padding: 10px;
  color: white;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
}

.slideout-menu ul li a button  {
  position: absolute;
  right: 10px;
}

.slideout-menu ul li a:hover {
  /*background: #000;
  color: #fff;*/
}

.slideout-menu ul li a i {
  position: absolute;
  top: 15px;
  right: 10px;
  opacity: .5;
}

.dropdown-toggle {
    background-color: transparent;
    border: 0;    
    content: "";
    height: 42px;
    padding: 0;
    position: absolute;
    text-transform: lowercase;
    top: 3px;
    right: 0;
    width: 42px;
}

.dropdown-toggle:after {
  font-family: "FontAwesome";
    color: white;
    content: "\f078";    
    line-height: 42px;
    position: relative;
    top: 0;
    left: 1px;
    width: 42px;
}

.dropdown-toggle.sub-menu-on:after {
  content: "\f077";    
}

/* Submenu */
.slideout-menu ul .sub-menu {
  display: none;
}

.slideout-menu ul .sub-menu li {
  border: 0;
  background-color: #212C27;
}

@media (min-width: 1024px){
  .slideout-menu {
    display: none;
  }
}


/* ==================== */
/* Intro section
/* ==================== */

.intro-blurb br {
  display: none !important;
}


/* ==================== */
/* Andrew's Stuff
/* ==================== */

.mobile_menu_bar:before{
	color:#000000!important;
}

.et_mobile_menu{
	border-top: 3px solid #000000!important;
}

#et-info{
	float:none!important;
	text-align:center;
}

.clearfix:after{
	margin-bottom: 0px!important;
}

.dl-quote blockquote {
 padding:0;
 margin: 10px 0;
}
/*
.dl-quote blockquote:before {
 content:'7b';
 position:absolute;
 font-size:160px;
 font-family:ETModules;
 top:-80px;
 left:-80px;
 opacity:0.05;
 line-height:1;
}
*/
.dl-button:hover {
 transform:scale(1.05) translateY(-3px);
 box-shadow:1px 15px 35px -10px rgba(0,0,0,0.4);
}

.dl-services .et_pb_column {
 transition: all .3s ease-in-out;
}
.dl-services .et_pb_column:hover {
 transform:translateY(-10px); 
}
.dl-project .et_pb_image {
 transition: all 1s ease-in-out;
}
.dl-project:hover .et_pb_image {
 filter:none!important;
}
@media (max-width:980px) {
 .dl-project .et_pb_image {
 filter:none!important;
 }
}
.dl-social li a.icon {
 width:50px;
}
.dl-social li a.icon:before {
 font-size:30px;
 transition: all .3s ease-in-out;
}
.dl-social li a.icon:hover:before {
 transform:scale(0.8);
 color:#fff;
}

.dl-icon-blurb .et-pb-icon {
 transition: all .3s ease-in-out;
}
.dl-icon-blurb:hover .et-pb-icon {
 transform:scale(0.8);
}

@media (max-width:980px) {
 .dl-smaller-img-mobile {
 transform:none!important;
 }
 .dl-reverse-columns {
 display: flex;
 flex-direction: column-reverse!important;
 }
 .dl-reverse-columns .et_pb_column:last-child {
 margin-bottom:30px;
 }
}



/*CONTACT FORM*/
/*CONTACT FROM 7*/
div.wpcf7 { 
  padding-top:20px;
  }
  
  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 textarea {
    width: 100%;
    background-color: #ffffff!important;
     padding: 16px;
      border-width: 0;
      -webkit-border-radius: 0;
      -moz-border-radius: 0;
      border-radius: 0;
      /*color: #999;*/
      font-size: 14px;
      -webkit-appearance: none;
    box-shadow: 0px 10px 24px 6px rgba(0,0,0,0.06);
  }
  input.wpcf7-form-control.wpcf7-submit {
    color: #ffffff!important;
      border-width: 8px!important;
      border-color: #000000;
      border-radius: 0px;
      font-size: 15px;
      font-weight: 700!important;
      background-color: #000000;
    float: right;
    cursor: pointer!important;
    text-transform: uppercase!important;
  }
  
  @media only screen and (max-width: 980px){
  input.wpcf7-form-control.wpcf7-submit {
    color:#ffffff!important;
      background:  #000000!important;
      border-width: 10px!important;
      border-color:  #000000;
      border-radius: 100px;
      font-size: 10px;
      font-family: 'Poppins',Helvetica,Arial,Lucida,sans-serif!important;
      font-weight: 600!important;
      background-color: #000000;
    float: right;
    cursor: pointer!important;
  }
  }
  
  .wpcf7 form p {
      color: #ffffff;
    /*letter-spacing: 3px;*/
      line-height: 1.8em;
  }
  
  #left {
      width: 47%;
      float: left;
      margin-right:6%;
    color: #ffffff;
  }
   
  #right {
      width: 47%;
      float: left;
    color: #ffffff;
  }
   
  .clearfix:after {
      content:"\0020";
      display:block;
      height:0;
      clear:both;
      visibility:hidden;
      overflow:hidden;
      margin-bottom:10px;
  }
   
  .clearfix {
      display:block;
  }
  
  div.wpcf7-mail-sent-ok {
      border: 2px solid #ffffff!important;
      color: #ffffff!important;
  }

/* ==================== */ 
/* New Homepage Css
/* ==================== */

/* Contact Form Section */
.frm_button_submit {
	font-family: 'Redhat Display' !important;
	width: 100% !important;
}

.et_pb_slide_description, .et_pb_slider_fullwidth_off .et_pb_slide_description {
padding: 2% 7% !important; 
}

.workbooks-form-section, .frm_button_submit {
	width: 100%; 
}

/* 50/50 Sections on Scroller */
#field_zcxw {
	height: 200px !important;
}

@media (min-width: 1024px) {
 
#upper-table-image{
	margin-right: -20px !important;
	z-index: 999 !important;
}

#lower-table-image {
	margin-left: -20px !important;
	z-index: 999 !important;
}

.career-giving-section {
	z-index: 0 !important; 
}

.what-makes-us-different-section { 
	z-index: 0 !important;
	}

}

/* Green Banner Section */ 
.green-banner-column {
	width: 20% !important;
	font-family: 'Redhat Display' !important;
}

#green-banner-section {
	align-items: center;
	text-align: center;
	margin-right: auto !important;
	margin-left: auto !important;
}

/* Testimonial Section */
.testimonial-section {
	text-shadow: none !important;
}

h2.et_pb_slide_title {
padding-bottom: 20px !important;
}

div.container::before {
	background-color: transparent !important;
}


/* Green Background Banner Section  Custom Code */

.tpsl_container {
	color: #fff;
	border-color: transparent;
	font-family: 'Red Hat Display'; 
	margin-right: auto !important; 
	margin-left: auto !important;
	width: 100% !important;
	max-width: 1440px;
	padding: 22px 50px !important;
	align-content: center;
	font-weight: bold;
	text-align: center;
/* 	background-color: blue; */
}

.tpsl_container__column {
	display:inline-block;
	padding: 0px !important;
	border: transparent;
	text-align: center;
/* 	border: 1px solid red; */
	line-height: 1;
	margin-right:50px;
	font-size: 18px;
	position: relative;
}

.tpsl_container__column::after {
	content: ".";
	position: absolute;
	right: -25px;
}

.tpsl_container__column:last-of-type {
	margin-right: 0;
}

.tpsl_container__column:last-of-type::after {
	display: none;
}

div.container::before {
background-color: transparent;
}

span.full-stop {
padding: 0 20px !important;
align-items: center !important;
font-weight: bold;
font-size: 20px;
text-align: center;
align-content: center;
}


/* ==================== */
/* Stats Section
/* ==================== */

.stats-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.stats-list__item {
  width: 48%;
  display: flex;
  align-items: center;  
  flex-direction: column;
  margin-bottom: 2rem;
}

.stats-list__value {
  color: var(--brand-sec);
  font-size: 48px;
  margin-bottom: 8px;
}

.stats-list__label {
  color: white;
}

@media (min-width: 1280px){
  .stats-list {
    margin-top: 2rem;
  }

  .stats-list__value {
    font-size: 55px;
    margin-bottom: 1rem;
  }

  .stats-list__label {
    font-size: 16px;
  }
}


/* ======================================== */
/* Gareth Amends
/* ======================================== */


/* Intro Section */

.et_pb_text_inner a {
  text-decoration: underline !important;
}

@media (min-width: 1024px){
  .life-you-want-column {
    display: flex;
    align-items: center;
  }
}


/* Services Boxes */

.tpsl-service-box {
  background-color: white;
  padding: 1rem;
  margin-bottom: 1rem;
}

.tpsl-service-box__img-wrap {
  width: 100%;
  height: 250px;
  overflow: hidden;
  margin-bottom: 1rem;
}

.tpsl-service-box__img {
  display: block;
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}

.tpsl-service-box__title {
  text-align: center;
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  position: relative;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

.tpsl-service-box__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 110px;
  height: 1px;
  background-color: black;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

.tpsl-service-box__toggle {
  display: block;
  text-align: center;
  margin-top: 0.5rem;
}

.tpsl-service-box__toggle::before {
  content: "\33";
  font-family: "ETmodules";
  text-align: center;
  font-size: 40px;
}

.tpsl-service-box__toggle--open::before {
  content: "\32";
}

@media (min-width: 1280px){
  .meet-denise__col--img {
    display: flex;
    align-items: center;
  }
}


@media (min-width: 1024px){
  .tpsl-service-boxes {
    display: flex;
    justify-content: center;
  }

  .tpsl-service-box {
    margin-left: 1%;
    margin-right: 1%;
    margin-bottom: 2rem;
    max-width: 282px;
    width: 100%;
  }
}

@media (min-width: 1280px){
  .tpsl-service-boxes--top {
    margin-top: 2rem;
  }

  .tpsl-service-boxes--top .tpsl-service-box {
    margin-bottom: 5rem;
  }

  .tpsl-service-box {
    margin-left: 2%;
    margin-right: 2%;
    padding: 1.5rem;
    max-width: 380px;
  }

  .tpsl-service-box__title {
    font-size: 32px;
  }
}