@charset "UTF-8";
/* CSS Document */

html, body, div, span, applet, object, iframe,
blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}
h1,h2,h3,h4 { font-weight:inherit }
h1.nomargin,
h1.nomargin,
h1.nomargin {
    margin-bottom:0;
}
html, body {
	width:100%;
	height:100%;
}
body {
	-webkit-font-smoothing: antialiased;
	font-size:18px;
	line-height: 150%;
	background-repeat:repeat;
    color:#282828;
    text-align:left;
}
body.dark-theme {
    color:#FFF;
}
main {
    position:relative;
    z-index:2;
    transition:margin-left 0.4s ease;
}
img { width:100%; }
ul { list-style: none }
a {
    color:inherit;
    text-decoration: none;
}
p a { border-bottom:1px solid white; padding-bottom:0px }
.blip {
    width:40px;
    height:1px;
    background:#282828;
    display:inline-block;
}
.largeText { font-size:26px; line-height:140%}

#preloader {
    position:fixed;
    top:0;bottom:0;left:0;right:0;
    z-index:99;
}
/* Layout */

section {
    position:relative;
}
section.fixedHeight { height:600px; }

.image-container {
    background-size:cover;
    background-position:center;
    overflow: hidden;
    position:relative;
}
section.fluidHeight .image-container { width:50%; }
section.fixedHeight .image-container {
    position:absolute;
}
section.fixedHeight .image-container.fixed {
     top:0;left:0;right:0;bottom:0;
}
section.fixedHeight .image-container.inset {
    top:20px;left:20px;right:20px;bottom:20px;
}
section.fixedHeight .text-container, #preloader .text-container {
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:50%;
    text-align:center;
}
.titlePage .text-container {
	padding:60px;
	text-align: center;
}
.titlePage.unbranded .text-container {
	padding:10px;
}
section.fixedHeight.imagesection.original { height:auto; }
section.fluidHeight.textsection .text-container {
    width:50%;
    margin:0 25%;
    text-align:center;
}
section.fluidHeight.split { display:flex }
section.fluidHeight.split .image-container { width:50% }
section.fluidHeight.split .text-container {
    width:30%;
    padding:120px 10%;
    transition:0.4s ease;
}
section.fluidHeight.split .text-container.extraPad {
    padding:180px 10%;
}
section.fluidHeight.split .text-wrap { vertical-align: middle }
section.fluidHeight.split.right { flex-direction: row-reverse;}
section.imagetextsection.propImage  {
}
section.contactPage.fixedHeight {
	height:auto;
}
#login  {
    position:fixed;
    z-index:999;
    width:100%;
    top:0;
    bottom:0;
}
#login .container {
    font-family:'Circular Std Book';
    width:300px;
    left:50%;
    transform:translate(-50%,-50%);
    top:50%;
    position:absolute;
    text-align: center;
    background:rgba(0,0,0,0.1);
    border-radius:5px;
    padding:80px 60px;
}
#login .container h3 {
    font-family: inherit;
    margin-top:0;
    font-size:16px;
}
#login form input#password {
    border-radius:3px;
    border:0;
    padding:5px 8px;
    font-size:16px;
    border-bottom:3px solid rgba(255,255,255,0.3);
}
#login form input.submit {
    display:inline-block;
    width:80px;
    padding:8px 10px;
    border:0;
    border-radius:3px;
    font-family:'Circular Std Book';
    font-size:16px;
    cursor:pointer;
}
#login img.logo {
    width:150px;
    bottom:60px;
    left:50%;
    position:absolute;
    transform: translateX(-50%);
}
img.logo  {
    width:30%; min-width:160px; max-width:200px;
}
img.partner-logo {
	min-width:80px;
	width:20%;
}
img.logo.yc {
	width:20%; min-width:60px; max-width:110px;
}
.clientStatement {
    font-size:16px;
    position:relative;
    width:80%;
	padding-top:30px;
    margin:0 10%;
    text-align: center;
}
section.titlePage .text-container.personalise {
	padding-top:100px;
}
.imageCaption {
    font-family:'Circular Std Book';
    font-size:12px;
    padding:3px 10px;
    display:inline-block;
    position:absolute;
    top:0;
    right:0;
    opacity:0;
    transition:0.3s ease;
    background:white;
    color:black;
}

.left .imageCaption {
    right:auto;
    left:0;
}
.active .imageCaption {
    opacity:1;
    transition:0.3s ease;
}

.translateLight .imageCaption, .translateDark .imageCaption {
    transform:translateX(100%);
}
.translateLight.active .imageCaption, .translateDark.active .imageCaption {
    transform:none;
}
.transparentLight .imageCaption {
    background:none!important;
    color:white;
}
.transparentDark .imageCaption {
    background:none!important;
    color:black;
}
.captionType3.active .imageCaption {
}
.contactPage img.logo {
    width:180px;
    display:inline-block;
}
.contactPage img.logo.yc {
	width:80px;
}
.contactPage .contact {
    margin-top:60px;
}
.contactPage .contact .blip {
    margin-top:-10px;
}
.contactPage .contact p {
    font-family:'Circular Std Book';
    font-size:13px;
    margin-top:5px;
}
section.fixedHeight.contactPage .text-container {
    position:relative;
    transform:none;
    left:auto;
    width:auto;
    padding-top:40px;
    top:auto;
}
section.fixedHeight.contactPage { padding:40px 0; }

.homepage main, main.error404 {
    width:100%;
    top:0;
    bottom:0;
    position:absolute;
}
.shad {
    box-shadow:inset 0 0 400px rgba(0,0,0,0.3);
}
.homepage .container, .error404 .container {
    position:absolute;
    left:50%;
    transform:translate(-50%,-50%);
    top:50%;
    text-align: center;
    width:340px;
}
.homepage img.logo, .error404 img.logo {
    width:100%;
    margin:20px auto
}
.palaceScript {
    font-family:'PalaceScript', Serif;
}
h1.palaceScript { font-size:3em; }
.cta {
    font-family:'Circular Std Book';
    font-size:14px;
    padding:2px 10px;
    border-radius:5px;
    letter-spacing:-0.2px;
    border:2px solid;
}
.homepage .cta, .error404 .cta {
    position:absolute;
    bottom:80px;
    left:50%;
    transform:translateX(-50%);
}
.m-burger {
	width: 25px;
	height: 25px;
	position: fixed;
	z-index:100;
	left:30px;
	top:35px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
	transition:opacity 0.4s ease;
	-webkit-transition:opacity 0.4s ease;
}
.m-burger.open {
    filter:brightness(0);
    opacity:0.8;
}
.m-burger:hover {
	opacity:1;
  	-webkit-opacity:1;
  	transition:opacity 0.7s ease;
  	-webkit-transition:opacity 0.7s ease;
}
.m-burger span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: #FFF;
  border-radius: 3px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}
.m-burger span:nth-child(1) {
  top: 0px;
}

.m-burger span:nth-child(2),.m-burger span:nth-child(3) {
  top: 8px;
}

.m-burger span:nth-child(4) {
  top: 16px;
}

.open.m-burger span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%;
}

.open.m-burger span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.open.m-burger span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.open.m-burger span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%;
}
#nav {
    position:fixed;
    width:0px;
    height:100%;
    font-family:'Circular Std Book';
    font-size:16px;
    z-index:99;
    background:#FFF;
    transition:width 0.4s ease;
    box-shadow:2px 2px 10px rgba(0,0,0,0.2);
}
#nav.open { width:240px; transition:width 0.3s ease; }
#nav ul {
    display:none;
    top:70px;
    left:32px;
    right::30px;
    position:absolute;
}
#nav.open ul { display:block }
#nav li {
    opacity:0;
}

section.multipleImages {
    display:flex;
}
section.multipleImages div {
    width:100%;
    background-size:cover;
    background-position:center;
    display:table-cell;
}
img.logo { width:45% }
.partnership-text {
    margin-top:20px;
    font-size:16px;
}
.partner-logo {
    width:20%;
    display:block;
    margin-top:20px;
    margin:20px auto;
}
