@font-face { font-family: "OpenSansRegular"; src: url("/library/fonts/OpenSans-Regular.ttf") format('opentype'); }
@font-face { font-family: "OpenSansBold"; src: url("/library/fonts/OpenSans-Bold.ttf") format('opentype'); }
@font-face { font-family: "FontAwesome"; src: url("/library/fonts/FontAwesome.otf"); }

* {padding: 0px;margin: 0px;box-sizing: border-box;}
body {font-size: 87.5%;font-family: OpenSansRegular,sans-serif;color: #5a5b5c;line-height: 1.65; width: 100%;height: 100%;}
p { margin-bottom: 15px; }
li { list-style-type: none; }
td, th { vertical-align: top; }
b, strong { font-weight: bold; }
a { color: #0da4d3; text-decoration: none; }
a:hover,a:focus { color: #23527c; text-decoration: underline }
fieldset { border: none; }
.hidden { display: none; }
input, textarea { font-family: "OpenSansRegular";  height: 40px; font-size: 120%; margin: 10px 0px; padding: 5px; }
input[type=button], input[type=submit], input[type=text], textarea { -webkit-appearance: none; border-radius: 0; background-color: #ffffff; color: #000000; cursor: pointer; border: 1px solid; }
textarea { height: auto; }
input[type=button], input[type=submit] { padding: 0px 20px; }
img { border: none; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; font-size: 100%; line-height: 1; margin-bottom: 15px; /*letter-spacing: -.04em*/ }
table { border-spacing: 0px; }
td, th { padding: 0px; }

.sitetitle { font-weight: 900; }
.pagetitle, h1, .profile h2 { margin-top: 20px; text-transform: uppercase; font-size: 150%; font-family: OpenSansBold; color: #ffffff; }


.layoutmain { margin: 0px auto 0px auto; }
.layoutheader { width: 100%; float: left;  margin: 0px 0px 0px 0px; background-color: #e4e4e4;}
.layouttopmenu { height: 130px; max-width: 1100px; margin: 0px auto 0px auto;   }

.social {float:right;margin-right: 50px;}
.social li { float: left; font-family: FontAwesome; font-size: 160%; margin: 0px 5px 0px 5px;}
.social li a {text-decoration: none;}
.social li:first-of-type a::before {content: "\f08c";vertical-align: top;}
.social li:nth-of-type(2n) a::before { content: "\f16d"; }
.social li:last-of-type { margin: 0px 0px 0px 5px;}

.location::before { content: "\f041  "; font-family: FontAwesome; margin-left: -10px;}
.email::before { content: "\f0e0  "; font-family: FontAwesome; margin-left: -15px;}
.tel:before { content: "\f098  "; font-family: FontAwesome; margin-left: -15px;}

.layouttopmenu .sitelogo { float: left; padding: 10px 0px 0px 0px; }
.nav_multilevel { float:right;  margin: 10px 0px 0px 0px; text-transform: uppercase; font-size: 100%; }
.nav_multilevel .level1>li { float: left; margin: 0px 40px 0px 0px; line-height: 65px; }
.imagelink img {height: 16px;width: auto;position: relative;top: 2px;}


  
.layouttopmenu .nav_multilevel .level1>li { width: auto; float: left; margin: 0px 20px 0px 20px;}
.layouttopmenu .nav_multilevel a { text-align : center;  }
.layouttopmenu .nav_multilevel {position: absolute; left: 50%; top: 50px; margin: 0px auto 0px -250px; }
.layouttopmenu .nav_multilevel .level2 { width: 260px; background-color: #ffffff; z-index: 20;  position: absolute;  display:none;  margin: -20px 0px 0px -18px; }
.layouttopmenu .nav_multilevel .level2>li { clear: left; text-align: left; line-height: 0px;  margin: 0px 20px 0px 18px;  background-color: #ffffff;  }
.layouttopmenu .nav_multilevel .level2>li a  {white-space: nowrap;  line-height: 30px;}
.layouttopmenu .nav_multilevel .level1>li:hover .level2 { display: block; text-align: left;  }
.layouttopmenu .level1>li { display: block; }
.layouttopmenu .nav_multilevel .level1 li { width: auto; }

.layouttopmenu .nav_multilevel .link78, .layouttopmenu .nav_multilevel .link79 { display: none; }

.layoutmiddle { margin: -50px auto 0px auto; clear: both; min-height: 650px; }
.homebanner {  margin: 130px auto 0px auto; font-size: 278.58%;color: #ffffff;  display: block; }
.homebanner .content { height: 160px; }
.bannerlink { float: left;color: #ffffff;width: 200px;height: 40px;border: 1px solid #ffffff;text-align: center;margin-right: 40px;line-height: 40px;text-transform: uppercase;}
.bannerlink:hover { background: #ffffff; color: #000000; }

.black_bannerlink { margin-top: 10px; color: #000000; border: 1px solid #000000; }
.black_bannerlink:hover { background: #0da4d3; border: 1px solid #0da4d3; color: #ffffff; }
@media (max-width: 390px) {
  .black_bannerlink { width: 100%; }
} 

.layoutfooter {width: 100%;background: #e4e4e4;padding: 40px 50px 40px 50px;}
.layoutfooter p {margin-bottom: 5px; clear: both; }

.layoutfooter>.util_container {max-width: 920px;margin: 0 auto;font-size: 95%;}
.layoutfooter .social { margin-right: 0; }

.londonandsocial { width: 904px; height: 20px; margin: 0 auto; font-size: 0.95rem; }
.layoutfooter .social { width: 100%; }
.footerlondon {text-align: center; }
.footerregistered { width: 904px; margin: 0px auto;}

.footerregistered, .layoutfooter .social {text-align: center;}

.layoutfooter .social {text-align: center;display: inline-block;margin: 0px 0px 5px 0px;}
.layoutfooter .social ul {width: 45px;height: 23px; margin: 0 auto; }
.layoutfooter .social li { font-size: 1rem; }

.footerregistered { float: none; }

.footerbottom { clear: left; }
.privacyfooter {margin-left: 20px;}

.layoutcredits {max-width: 1100px;margin: 30px auto 0px auto;padding-right: 40px;text-align: right;font-size: 95%;}


.std_contentpage, .util_sitesearch {max-width: 100%;margin: 0px 0px 60px 0px;}
.pagetitle, .util_sitesearch .introduction {  background-color: black; background-image: url(/images/hra4SqlFl55gZWRz9Oyd1jk0e6.jpg); background-repeat: no-repeat; background-size: cover; background-position: center bottom; padding: 50px 0px; margin-bottom: 40px; }
span.pagetitle_inner { display: block; color: #ffffff; }
span.pagetitle_inner, .pagecontent, .pagecomponents,  .util_sitesearch .include, .util_sitesearch .introduction h2  {max-width: 900px;width: 100%;margin: 0px auto 50px auto;}



.privacy ol li, .terms ol li {   padding-left: 1.5em; list-style-position: inside; list-style-type:  decimal; line-height: 1.5em;}
.privacy ol li p, .terms ol li {padding-left: 1.2em; padding-top: 10px;}
.terms ol li ol { padding:  10px; }

.terms table { table-layout: fixed; width: 100%; margin: 10px 0px 10px 0px; border: 1px solid  }
.terms table th { font-weight: bold; text-align: center; background-color: #e4e4e4; line-height: 30px; border-bottom: 1px solid;}
.terms table td { text-align: center; padding: 5px 0px;}

/* Carousels */
.home {max-width: 100% !important;; }
.home .pagecomponents { max-width: initial; margin: 0px; width: initial; }
.home .feat_carousel {margin-top: 50px;background-image: url(/images/hra4SqlFl55gZWRz9Oyd1jk0e6.jpg);background-repeat: no-repeat;background-size: cover;}
.feat_carousel { height: 510px;}
.feat_carousel .carousel { max-width: 1000px;  height: 510px; margin: auto;}
.feat_carousel .carousel li {height: auto;width: 0px;float: left;}
.feat_carousel .carousel { overflow: hidden; position: relative; }
.feat_carousel .carousel ul { width: 20000em; position: relative; }

.home .pagecomponents_inner>.bannerlink { display: none; }

/*.std_contentpage .pagecontent {  text-align: center;  }*/
.std_contentpage img.right { padding: 20px 0px 20px 20px;}
.std_contentpage img.left { padding: 20px 20px 20px 0px;}

@media (max-width: 1245px) {
.home .feat_carousel { background-position: 10% 0%; }
}

@media (max-width: 1190px) {
  .layouttopmenu .sitelogo { position: relative; left: 50px; }
}

@media (max-width: 1100px) {
  .feat_carousel .carousel { margin: 0px 50px 0px 50px;}
  .homebanner { margin: 100px auto 0px auto; }
  .layoutmiddle { min-height: 400px; }
}

@media (max-width: 1006px) {
  
  .layoutfooter .social .links {width: 60px;height: 35px;}
  .layoutfooter .social li:last-of-type { margin: 0px 5px 0px 5px;}
  .layoutfooter .social li {font-size: 140% !important;}
  .london_phone { display: inline-block; }
}

@media (max-width: 964px) {

  .layoutheader { height: 35px;position: fixed;z-index: 2;top: 0px;float: none;background: #e4e4e4; }
  
  .layouttopmenu { position: fixed;z-index: 1;top: 35px;width: 100%;background: #ffffff;height: 82px; }
  .sitelogo .imagetop { line-height: 1; }
  .sitelogo img { width: auto;height: 60px; }
  
  .layouttopmenu .nav_multilevel { margin: 0px 0px 0px 0px; position: fixed; z-index: -1; left: 0px; top: 0px; padding: 0px; width: 100%; }
  .layouttopmenu .nav_multilevel .toggle { display: block;float: right;width: 40px;height: 40px;margin: 57px 50px 20px 20px;cursor: pointer;background-image: url(/images/YepnyaNAIBqNP2QrpRVU02401i.png); /* z-index: 10; */background-size: 40px 40px;background-repeat: no-repeat; }
  .layouttopmenu .nav_multilevel.toggleon .toggle {background-image: url(/images/kVrPMJyw20JNPFCC8N4Z02401i.png); background-size: 40px 40px; background-repeat: no-repeat;}

  .layouttopmenu .nav_multilevel .links {position: absolute;z-index: 50;left: 0px;margin: 118px 0px 0px 0px;width: 100%;height: 100vh;background: rgba(40,40,40,0.9);/* padding: 30px 0px 30px 0px; */}
  .layouttopmenu .nav_multilevel.toggleoff .links { display: none; }

  .layouttopmenu .nav_multilevel li { display: none; border: none; width: 100%; clear: both; padding: 0px 0px 0px 0px !important; margin: 0px !important; font-family: OpenSansBold; font-size: 100%; }
  .layouttopmenu .nav_multilevel .level1 li { width: 100%; line-height: 42px; }
  .layouttopmenu .nav_multilevel li a { display: block; padding: 5px; color: #ffffff; }
  .layouttopmenu .nav_multilevel li:first-of-type a { padding-top: 20px; }
  .layouttopmenu .nav_multilevel.toggleon li { display: block; }
  .layouttopmenu .nav_multilevel.toggleoff li { display: none; }
  
  .layouttopmenu .nav_multilevel .level1>li:hover .level2 { display: none; }
  .layouttopmenu .nav_multilevel li.link12 { display: none; }
  
  .layoutmiddle {margin-top: 117px;}
  
  span.pagetitle_inner, .pagecontent, .pagecomponents, .util_sitesearch .include { width: auto; margin: 0px 50px; }
  .util_sitesearch .introduction { margin-top: 0px!important; } 

  .footer { width: 100%; }
  .layoutcredits {font-size: 80%;padding-right: 0px;text-align: center;margin-top: 10px;}
}

@media (max-width: 842px) /* Large tablet */ { 
.feat_carousel { height: 300px; }
.feat_carousel .carousel { height: 300px; }
.home .feat_carousel .bannerlink { display: none;  }
.home .pagecomponents_inner>.bannerlink { display: block; color: #000000; border: 1px solid #000000; }
.home .pagecomponents_inner>.bannerlink { margin: 40px 0px 40px 50px; }
.home .pagecomponents_inner>.bannerlink.seecurrent { margin-left: 50px; }

.layoutmiddle {min-height: 300px;}
}

@media (max-width: 777px) {
  .profilepage img { width: 100%; height: auto; }
}

@media (max-width: 628px) /* Small tablet */ { 
.social { margin-right: 30px; }
.layouttopmenu .sitelogo { left: 30px; }
.layouttopmenu .nav_multilevel .toggle {margin-right: 30px;}

.feat_carousel { height: 250px; }
.feat_carousel .carousel { height: 250px; margin: 0px 30px 0px 30px; }
.home .feat_carousel { background-position: top left; }
.homebanner { margin: 60px auto 0px auto; font-size: 220%; }
.home .pagecomponents_inner>.bannerlink.seecurrent { margin-left: 30px; }

span.pagetitle_inner, .pagecontent, .pagecomponents, .util_sitesearch .include { margin: 0px 30px; }

}

@media (max-width: 545px) {
  .std_contentpage img.right, .std_contentpage img.left, .profilepage img { padding: 15px 0px 0px 0px; float: none !important; width: 100%; height: auto; }
  .black_bannerlink {float: none;margin: 25px auto 0px auto;}
}

@media (max-width: 526px) /* V small tablet and phones */ { 
.home .feat_carousel {background-position: 40% top;}
.homebanner { margin: 50px auto 0px auto; font-size: 200%; }
}

@media (max-width: 430px) {
  .london_label {display: block;}
}

@media (max-width: 478px) {
  .home .pagecomponents_inner>.bannerlink { float: none; margin: 30px auto 0px auto !important; }
  .home .pagecomponents_inner>.bannerlink.sendcv {margin-top: 25px !important;}
}


@media (max-width: 370px) {

.social { margin-right: 20px; }
.layouttopmenu .sitelogo { left: 20px; }
.layouttopmenu .nav_multilevel .toggle {margin-right: 20px;}

.feat_carousel { height: 240px; }
.feat_carousel .carousel {  margin: 0px 20px 0px 20px;}
.homebanner { margin: 40px auto 0px auto; font-size: 160%; }

span.pagetitle_inner, .pagecontent, .pagecomponents, .util_sitesearch .include { margin: 0px 20px; }
.std_contentpage, .util_sitesearch { margin-bottom: 40px; }

}

@media (max-width:339px) {
  .privacyfooter { margin-left: 0; display: block; }
}

/* PAGE SPECIFIC RULES */
/* Profile (Directors) */
.profile { box-sizing: content-box; display: inline-block; vertical-align: top; width: 400px; /* height: 385px; */ padding: 0px 47px 45px 0px; /* border-right: 1px dashed #e0e1e3; */ }
.profile:nth-of-type(2n) {margin-right: 0px;padding: 0px 0px 45px 47px;border-right: none;}
.profile .titletxt, .profile h2 { color: #5a5b5c; font-size: 120%; }
/*.profile .imagetop { position: relative; *//* bottom: 39px; }*/
.profile .content { height: 140px; margin: 15px 0px 25px 0px;}
.profile .link {  display: inline-block; font-size: 80%; font-weight: 700; text-transform: uppercase; border-bottom: 2px solid #cbeefa; }
.profile .link a:hover, .profile .link a:focus { text-decoration: none !important; }

@media (max-width: 964px) {
  .profile { padding: 0px 0px 0px 0px; }
  .profile:nth-of-type(2n) { padding: 0px 0px 0px 0px; float: right; }
}

@media (max-width: 928px) {
  .profile:nth-of-type(2n) { float: none; display: block; padding-top: 60px; }
}

@media (max-width: 545px) {
  .profile { width: 100%; }
  .profile .content { height: auto; margin-bottom: 15px; }
  .profile img {width: 100%; height: auto;}
}

/* Profile (individual page) */
.profilepage .pagecontent_inner { width: 679px; }

@media (max-width: 777px) {
  .profilepage .pagecontent_inner { width: auto; }
}

/* Testimonials */
.testimony {width: 100%;/* height: 300px; *//* float: left; */background: #0da4d3;padding: 35px 35px 45px 85px;margin-bottom: 40px;color: #ffffff;font-size: 130%;font-style: italic;}
.testimony::before {content:"\201C";font-size: 5em;display: block;width: 0;height: 0;position: relative;right: 60px;top: -36px;color: #ffffff;opacity: 0.3;font-family: "Times New Roman";font-weight: 900;}
.testimony div:last-of-type { text-align: right; font-size: 1rem; font-style: normal; }

@media (max-width: 500px) {
  .testimony { padding-left: 50px; font-size: 1rem; }
  .testimony::before { font-size: 3em; right: 36px ;top: -18px; }
}

/* Contact */
/* .contact .pagetitle { margin-bottom: 0px; } */
.contact .pagecomponents { max-width: initial; width: initial; }

.contact {clear: both; display: block; max-width: 100%; background-color: #e4e4e4; padding: 0px 0px 50px 0px;}
/*.std_contentpage.contact { margin-bottom: 0; }*/

.contact .feat_googlemap { margin: 0px auto 0px auto; max-width: 3000px; }
.contact .address { max-width: 1100px;margin: -170px 0px 0px -550px;position: absolute;top: 370px;background-color: #0da4d3;width: 400px;left: 50%;padding: 30px;color: #ffffff;opacity: 1.0;}
.contact .address a {color: #ffffff;}
.contact .address.kent { top: 885px; background-color: #6db4c7; }
.contact .feat_googlemap .map { max-width: 100%;}
.contact .surv_standard {max-width: 1110px;margin: 40px auto 0px auto;}
.contact .surv_standard .label {display: none;}
.contact #fb-1-div, .contact #fb-2-div {float: left; margin-right: 30px;}
.contact #fb-1-div input, .contact #fb-2-div input {width: 310px;}
.contact #fb-3-div {clear: left; }
.contact #fb-3-div input { width: 650px;}
.contact #fb-4-div textarea { width: 650px; height: 200px;}

@media (max-width: 1194px) {
  .contact .address { position: static; z-index: 10; margin: 40px 0px 40px 50px; }
  .contact .surv_standard {width: auto;margin: 50px;/* display: block; *//* overflow: hidden; */}
}

@media (max-width: 964px) {
  .contact .pagecomponents { margin: 0 !important; }
}

@media (max-width: 754px) {
  .contact #fb-1-div, .contact #fb-2-div { float: none; margin-right: 0px; }
  .contact input, .contact textarea { width: 100% !important; }
}

@media (max-width: 628px) {
  .contact .address, .contact .surv_standard { margin-left: 30px; margin-right: 30px; }
}

@media (max-width: 500px) {
  .contact .address {width: 81%;margin: 30px;width: auto;}
}

@media (max-width: 500px) {
  .contact {padding-bottom: 1px;}
  .contact #fb-4-div textarea { height: 150px;  }
}

@media (max-width: 370px) {
  .contact .address, .contact .surv_standard {margin-left: 20px;margin-right: 20px;}
}

/* Search page */
.util_sitesearch { margin: 10px auto 0px auto !important; }
.util_sitesearch .introduction {margin-top: -150px;} 
.util_sitesearch .introduction h2 { margin: 20px auto 150px auto;text-transform: uppercase;font-size: 150%;font-family: OpenSansBold;color: #ffffff; } 
/*.util_sitesearch .introduction { height: 150px; }*/


@media (max-width: 964px) {
  .util_sitesearch .introduction h2 { width: auto; margin: 0px 50px; }
}


@media (max-width: 628px) {
  .util_sitesearch .introduction h2  { margin: 0px 30px; }
}

@media (max-width: 480px) {
  .util_sitesearch .url { font-size: 85%; overflow: scroll; }
  /* .util_sitesearch .result {font-size: 85%; overflow: scroll;} */
}

@media (max-width: 370px) {
  .util_sitesearch .introduction h2 { margin: 0px 20px; }
}

@media (max-width: 350px) {
  .util_sitesearch input[type=text] { width: 180px; }
}