/*
THEME NAME: Custom Theme
DESCRIPTION: Bespoke WordPress theme
VERSION: 1.0
AUTHOR: Lake District Web Services
Author URI: https://ldws.co.uk
*/

:root{
    --body : #1E1E1E;
    --bodyLineHeight: 1.5rem;
    --buttonBG : #969696;
    --buttonColour : #fff;
    --buttonBGHover : #ddd;
    --buttonBGHoverColour : #000;
    --gridGap : 40px;
    --bigGridGap : 150px;
    --orange : #FF9800;
    --mWidth : 1250px;
    --purple :#7b233c;
    --lightPurple :#715258;


}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var, u, i, 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;vertical-align:baseline;}
.jumpNext svg, .smooth,input,textarea,a{-webkit-transition:all 0.2s ease;-moz-transition:all 0.2s ease;-o-transition:all 0.2s ease;-ms-transition:all 0.2s ease;transition:all 0.2s ease;}
*, *:after, *:before {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
html{scroll-behavior: smooth !important;}

:target:before {
    content: "";
    display: block;
    height: 100px;
    margin: -100px 0 0;
}

body {
font-family:"Open Sans", sans-serif;
color:var(--body);
line-height:var(--bodyLineHeight);
font-size:1.1rem;
}

img{max-width: 100%;height:auto}

a{text-decoration:none;color:inherit;cursor:pointer;}
p{margin-bottom:20px;}
b,strong{font-weight:bold;}
i,em{font-style:italic;}







h1,h2,h3,h4,h5,h6{font-weight:bold;margin-bottom:0.5em;line-height: 1.1em;}

h1{
    font-size:84px;
    text-transform: uppercase;
    font-weight: normal;
    margin:0;
}
h2{
    font-size: 50px;
    font-weight:normal;
    margin-bottom:40px;
}
h3{
    font-size:25px;
    text-transform: uppercase;
    font-weight:normal;
    margin-bottom:40px;
}
h4{
    font-size: 2.5rem;
    font-size: clamp(1.2rem, 1rem + 3.5vw, 2.5rem);
}
h5{
    font-size: 2rem;
    font-size: clamp(1.1rem, 1rem + 3vw, 2rem);
}
h6{
    font-size: 1.5rem;
    font-size: clamp(1.1rem, 1rem + 2vw, 1.5rem);
}

input[type="text"],input[type="email"],textarea{padding:10px;border:1px solid #ccc;width:100%;border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px;margin-bottom:5px;outline:none;}

input[type="button"],input[type="submit"],.button {-webkit-appearance:none;border-radius:0;cursor:pointer;display:inline-block;background:var(--buttonBG);color:var(--buttonColour);padding:0.5rem 2rem;border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px;}
input[type="button"]:hover, input[type="submit"]:hover, .button:hover{background:var(--buttonBGHover);color: var(--buttonBGHoverColour)}

:is(.theme-purple,.theme-orange) :is(input[type="button"],input[type="submit"],.button){background:black;color:white}
:is(.theme-purple,.theme-orange) :is(input[type="button"],input[type="submit"],.button):hover{background:#969696;color:white}

.divTitleSlider{opacity: 0}

/* - - GRID - - */
.grid{display: grid;}
.halves{grid-template-columns: 1fr 1fr;}
.thirds{grid-template-columns: 1fr 1fr 1fr;}
.quarters{grid-template-columns: 1fr 1fr 1fr 1fr;}
.gridGap{grid-gap: var(--gridGap);}
.bigGridGap{grid-gap: var(--bigGridGap);}
.gridMid{align-items: center;}
.grid.swap .cont-half{order:1}
.grid.swap .img-half{order:2}

.groupContactGrid{grid-template-columns: 1fr 3fr;}

.flex{display: flex;}
.vmid{align-items:center;}
.sb{justify-content: space-between}

.nodesk{display:none;}

.padded{padding:80px 50px}
.smallpad{padding:40px 50px}

.in{max-width:var(--mWidth);margin:auto;}
.nopad{padding:0;}
.nomar{margin:0;}
.tac{text-align:center;}
.tar{text-align:right;}
.row{margin-bottom:40px;}
.prel{position:relative;}
.pa{position:absolute;}
.ov{overflow:visible;}
.oh{overflow:hidden;}





.theme-white{background-color: white;color: var(--body)}
.theme-black{background-color: black;color: white}
.theme-grey{background-color: #F5F5F5;color: var(--body)}
.theme-purple{background-color: var(--purple);color: white}
.theme-lightPurple{background-color: var(--lightPurple);color: white}
.theme-orange{background-color: var(--orange);color: black}

.border-orange{border-bottom-color:var(--orange)}
.border-purple{border-bottom-color:var(--purple)}



section, #wrapper{overflow: hidden;}

section.notopp .padded{padding-top:20px}
section.nobottomp .padded{padding-bottom:20px}

/*.entry-content :not(img) a:not(.button){text-decoration: underline;}*/

#header{position:sticky;top: 0;z-index:9;background: white;text-transform:uppercase;font-size:14px}

/*#header .logo{width: 9rem;width: clamp(100px, 15vw, 180px);height: auto}*/
/*.scrolled #header .logo{width: 6rem;width: clamp(70px, 10vw, 100px)}*/

#header .logo img{min-height: 40px;width: auto}

#header li{display: inline;margin-left: 2rem}

#header .in{padding:15px 50px}
.img-half img{width:100%}

.jumpNext{transform:translateY(40px);}


.jumpNext svg{cursor: pointer;overflow: visible;}
.slick-next:hover:before, .slick-prev:hover:before, .jumpNext svg:hover{transform:scale(1.5)}


.jumpNext svg:hover circle{fill:black}
.jumpNext svg:hover path{stroke:white}

:is(.theme-grey, .theme-white) .jumpNext :is(circle, path){stroke:black;}
:is(.theme-black) .jumpNext:hover :is(circle){fill:white}
:is(.theme-black) .jumpNext:hover :is(path){stroke:black}

.blockVideoTitle .jumpNext, .blockTitle .jumpNext{transform: translateY(calc(-100% - 40px));z-index: 2;position:relative;}

.noarrow .jumpNext{display: none}

section:last-child .jumpNext{display: none}

.blockTitle:after{content:"";background: black;opacity: 0.6;position: absolute;top:0;left:0;width:100%;height: 100%;z-index: 0}
.blockTitle .in{position:relative;z-index: 1}
.blockTitle h1{text-align:center;}

.blockTitle .overlay{position:absolute;top:50%;left:0;width:100%;transform:translateY(-50%);z-index:1;display: none}

.blockTitle img{position: relative;
  top: 0%;
  left: 50%;
  max-width: 200%;
  width: 100%;
  transform: translateX(-50%);}

.factBox{padding:35px 40px;}
.factBox .factTitle{font-size:40px;margin-bottom:15px;line-height: 45px}

.smallerTitles .factBox .factTitle{font-size:20px;line-height: 25px}
.factGrid{grid-auto-rows: 1fr;grid-auto-rows: auto;}

.cultureIcon:before{height:2px;width: 30%;background:black;content:"";position:absolute;top:50%;right:-36%;}
.cultureCol:last-child .cultureIcon:before{display: none}
.cultureTitle{font-size:2.6rem;margin-bottom:40px}
.cultureIcon{background-image: url("data:image/svg+xml,%3Csvg id='Layer_2' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 194.2 194.2'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fff;%7D%3C/style%3E%3C/defs%3E%3Cg id='artwork'%3E%3Ccircle class='cls-1' cx='97.1' cy='97.1' r='97.1'/%3E%3C/g%3E%3C/svg%3E");background-size:contain;background-repeat: no-repeat;background-position:center;height:0;padding-bottom:100%;position:relative;margin:0 12%;position:relative;}
.cultureIcon img{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:45%}

.blockHalfHalf .smallh2 h2{font-size:24px;;line-height: 32px}

:is(.theme-grey,.theme-white) .factBox{box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;}

.blockContact .gform_footer{flex-direction: row-reverse;padding:0!important;margin:0!important;margin-top:10px!important}

.contactTop{padding-bottom:40px;margin-bottom:40px;border-bottom:1px solid #D9DEE1;}
iframe{max-width:100%;width: 100%}
.blockGroupContact iframe{max-height:250px;max-width:100%}
.blockGroupContact .officeTitle{text-transform: uppercase;font-weight: bold}

.accordionBlock{position:relative;cursor: pointer;}
.accordionBlock:after{content:"";position:absolute;right:20px;top:25px;width:20px;height:16px;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.677' height='7.638' viewBox='0 0 13.677 7.638'%3E%3Cg id='Group_12' data-name='Group 12' transform='translate(-1040.211 -1876.686)'%3E%3Cpath id='Path_6' data-name='Path 6' d='M1053.489,1883.925l-6.439-6.439-6.439,6.439' fill='none' stroke='%23000' stroke-miterlimit='10' stroke-width='1.13'/%3E%3C/g%3E%3C/svg%3E%0A");background-size:contain;background-repeat: no-repeat;transform:rotate(180deg);}
.accordionTitle{font-size:20px;border-bottom-style:solid;border-bottom-width: 1px;padding:20px}
.accordionCont{display: none;padding:20px;padding-bottom:10px}
.accIcon{    width: 200px;
    margin-right: 40px;
    margin-left: 40px;
}
.accordionBlock.active:after{transform: none}




.projectTitle, .tCont{font-size: 20px;line-height:25px}
.projectTitle, .tName{margin-bottom:20px}
.projectCont{overflow: hidden;}
.projectCont li{list-style-type: none;}
.projectCont li:before{content:"- "}
.blockSingleContact .in{border-top:1px solid #D9DEE1;}
.singleContact{line-height: 2rem}
.projectImg img{max-width: 750px;margin:auto}


.iframe-wrap{    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%;}

.iframe-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.blockVideoTitle:after{background: black;opacity:0.6;position:absolute;left:0;top:0;width:100%;height: 100%;content:""}
.blockVideoTitle .overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;max-width:100%}

.divTitleSlider{font-size: 3.5rem;text-align:center;line-height: 1.4}
.blockVideoTitle .slick-track{display: flex;align-items: center;}

#footer{font-size:14px}
#footer .smallprint{font-size:12px;color:#969696;line-height:2em}


.accs img{max-height:50px;width:auto;}
.accs{gap:40px}

.office.grid{grid-template-columns: 1fr 2fr}

.blockCarousel .in{padding:40px 50px 60px 50px}
.carousel .slick-track{display: flex;align-items: center;}

input.error,textarea.error{border:1px solid #ec0032;background:#ffdddd;}
#fail,#error{border:1px solid #ec0032;background:#ffdddd;display:none;padding:15px 20px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;}

#success{border:1px solid #4BB543;background:#d7fbd4;display:none;padding:15px 20px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;}



#servicesImg, #whoImg{overflow: visible;width: 100%;height: auto}
#whoImg line, #servicesImg line{opacity: 0;transition: 0.5s;transition-delay: 2s}
#whoImg > g > image, #whoImg > g, #servicesImg a{transform:scale(0);transition:1s;transform-origin: center;position:relative;}

#servicesImg a:first-child{transition-delay: 1s}
#servicesImg a:nth-child(2){transition-delay: 1s}
#servicesImg a:nth-child(3){transition-delay: 1.25s}
#servicesImg a:nth-child(4){transition-delay: 1.5s}
#servicesImg a:nth-child(5){transition-delay: 1.75s}
#servicesImg a:nth-child(6){transition-delay: 2s}

.aos-init #servicesImg a:hover{transform:scale(1.1);transition-delay:0s;transform-origin: center;cursor: pointer}


.aos-init #servicesImg line, .aos-init #whoImg line{opacity: 1;}
.aos-init #servicesImg line:first-child{transition-delay: 1s}
.aos-init #servicesImg line:nth-child(2){transition-delay: 1.25s}
.aos-init #servicesImg line:nth-child(3){transition-delay: 1.5s}
.aos-init #servicesImg line:nth-child(4){transition-delay: 1.75s}
.aos-init #servicesImg line:nth-child(5){transition-delay: 2s}

.aos-init #whoImg > g > image, .aos-init #whoImg > g, .aos-init #servicesImg a{transform:scale(1);position:relative;}

.aos-init #whoImg line{transition-delay: 3.2s}

#whoImg > g:first-child{transition-delay: 1s}
#whoImg > g:nth-child(2){transition-delay: 1.1s}
#whoImg > g:nth-child(3){transition-delay: 1.2s}
#whoImg > g:nth-child(4){transition-delay: 1.3s}
#whoImg > g:nth-child(5){transition-delay: 1.4s}
#whoImg > g:nth-child(6){transition-delay: 1.5s}
#whoImg > g:nth-child(7){transition-delay: 1.6s}
#whoImg > g:nth-child(8){transition-delay: 1.7s}
#whoImg > g:nth-child(9){transition-delay: 1.8s}
#whoImg > g:nth-child(10){transition-delay: 1.9s}
#whoImg > g:nth-child(11){transition-delay: 2s}
#whoImg > g:nth-child(12){transition-delay: 2.1s}
#whoImg > g:nth-child(13){transition-delay: 2.2s}
#whoImg > g:nth-child(14){transition-delay: 2.3s}
#whoImg > g:nth-child(15){transition-delay: 2.4s}
#whoImg > g:nth-child(16){transition-delay: 2.5s}
#whoImg > g:nth-child(17){transition-delay: 2.6s}
#whoImg > g:nth-child(18){transition-delay: 2.7s}
#whoImg > g:nth-child(19){transition-delay: 2.8s}
#whoImg > g:nth-child(20){transition-delay: 2.9s}

/*#whoImg > g > image:first-of-type{transition-delay: 2.1s}
#whoImg > g > image:last-of-type{transition-delay: 2.2s}*/

#whoImg > g image:hover, #whoImg > g:hover{transform:scale(1.4);transition-delay: 0s;cursor:pointer;position:relative;z-index:9 }


.fmenu li{list-style-type: none;display:inline;padding-right:20px;}
.fmenu li:last-child{padding-right:0}

.divLogo img{max-height: 25px;width: auto}

.docCarousel.slick-slider, .docCarousel .slick-track{display: flex}
.docCarousel .slick-slide{min-height:100%;height:auto}
.docBlock{margin-right:50px;position:relative;}
.docCont{padding:20px 0 60px 0;}
.docCont h4{font-size:1.5rem}
.docCont .button{position: absolute;bottom:20px;}

.entry-title,.entry-meta {
clear:both;
}

.alignright,img.alignright{
float:right;
margin:1em 0 0 1em;
}

.alignleft,img.alignleft{
float:left;
margin:1em 1em 0 0;
}

.aligncenter,img.aligncenter{
display:block;
margin:1em auto;
text-align:center;
}

div.sidebar h3 {
font-size:1.2em;
}

div.sidebar li {
list-style:none;
margin:0 0 2em;
}

div.sidebar li form {
margin:0.2em 0 0;
padding:0;
}

div.sidebar ul ul {
margin:0 0 0 1em;
}

div.sidebar ul ul li {
list-style:none;
margin:0;
}

div.sidebar ul ul ul {
margin:0em;
}

div.sidebar ul ul ul li {
list-style:none;
}



input#author,input#url,div.navigation div ,.wp-caption {}.wp-caption-text {}.sticky {}.gallery-caption {}.bypostauthor {}

   

@media screen and (max-width:875px){
h1{font-size:50px}
}
@media screen and (max-width:875px){
    [class*='col-'] img{width:100%;height:auto;}
    .hwi{width:50%!important} .fwi{width:100%;}

    .grid{grid-template-columns: 1fr 1fr!important;}
    .office.grid{grid-template-columns: 1fr!important}

    .cultureIcon:before{display:none;}
}





@media screen and (max-width:820px){

.nodesk{display: block}
#header .hamburger{display:inline-block;z-index:9;outline: none}
#menu{display:none;padding:50px;position: absolute;top:0;left: 0;width:100%;height: 100vh;background:#fff;padding-top:70px;text-align: center;
}
#menu li a{padding: 15px 20px;display: block;font-size:1.5rem;border-bottom:1px solid black}

.hwm{width:50%;}
.fwm,.hwi {width:100%!important;}

.grid.swap .cont-half{order:2}
.grid.swap .img-half{order:1}

.bigGridGap{gap:40px}
.padded{padding:60px 30px}

#header .logo img{width: auto;height:100%;max-height: 40px}

.grid{grid-template-columns: 1fr!important;}
#header .grid.halves{grid-template-columns: 1fr 1fr!important;}

.offices .office:last-child, .groupContactGrid{margin:0}

#header .in{padding-left:20px;padding-right:20px}

h1{font-size:35px}

body .slick-slide .slideCont{color: var(--body);position:relative;transform:none;left: auto;top: auto;padding: var(--mediumPadding)}

.blockTitle .titleBg img{height:80vh;width:auto;object-fit: cover}
#footer .tar{text-align: left;}
.blockVideoTitle .overlay{position:relative;left:auto;top:auto;transform:none}
.divTitleSlider{font-size:2.6rem}
.accordionTitle{padding-right:50px}
}
