/*
 Theme Name:   Vardis Child Theme
 Theme URI:    https://generatepress.com
 Description:  Child theme for Vardis Group
 Author:       Sweartaker
 Author URI:   sweartaker.ie 
 Template:     generatepress
 Version:      0.4
*/

/* Font face for font backup */
@font-face {
    font-family: 'Josefin Sans';
    font-weight: 400;
    src: url('https://fonts.googleapis.com/css2?family=Josefin+Sans&display=swap');
}
@font-face {
    font-family: 'Josefin Sans';
    font-weight: 700;
    src: url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@700&display=swap');
}
@font-face {
    font-family: 'Open Sans';
    font-weight: 400;
    src: url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap');
}
@font-face {
    font-family: 'Open Sans';
    font-weight: 700;
    src: url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@700&display=swap');
}


/*--------------------------------------------------------------
# Reset
--------------------------------------------------------------*/
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,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	border: 0;
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a {
    position: relative; 
    z-index: 2;
}

html {
    font-family: 'Open Sans', sans-serif;
    font-size: 15px;
	-webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    margin-top: 0!important;
    scroll-behavior: smooth;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

ol,
ul {
	list-style: none;
}

table {
	/* tables still need 'cellspacing="0"' in the markup */
	border-collapse: separate;
	border-spacing: 0;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
	padding: 5px;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

a, a p {
    background-color: transparent;
    transition: all linear 0.1s;
    font-weight: 700;
    color: #AE831F;
    z-index: 20;
    position: relative;
}

a:hover, a p:hover {
    color: #8D6405;
}

a img {
	border: 0;
}


:root {
    --contrast: inherit;
    --contrast-2: inherit;
    --contrast-3: inherit;
    --base: inherit;
    --base-2: inherit;
    --base-3: inherit;
    --accent: inherit;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/


div {
    width: 100%;
    display: block;
}

body {
    background: white;
    font-size: 1rem;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    color: #323E48;
}

.grid-container {
    margin-left: auto;
    margin-right: auto;
    max-width: unset;
}

.site-content .content-area {
    width: 100%;
}

.separate-containers .site-main, .separate-containers .inside-article {
    margin: 0;
}

.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull {
    margin-left: 0;
    width: 100%;
    max-width: 100vw;
}

/* Colors */

/* Gold - #AE831F
Dark - #323E48
Off-white - #EBEBEB */


div.dark {
    background: #323E48;
}

div.off-white {
    background: #EBEBEB!important;
}


/* Fonts */

h1 {
    font-size: 3rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    color: #AE831F;
}

h2 {
    font-size: 2.75rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    color: #323E48;
    text-align: center;
    padding: 5rem 0 1.5rem 0;
    margin: auto;
}

h3{
    font-size: 1.9rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    color: #AE831F;
    text-align: left;
}

h4 {
    font-size: 1.5rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    color: #AE831F;
}

h5 {
    font-size: 1rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    color: #AE831F;
    text-transform: uppercase;
    letter-spacing: .1rem;
}

h6 {
    font-size: .7rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    color: #323E48;
    text-transform: uppercase;
    letter-spacing: .1rem;
}

blockquote {
    font-size: 1.5rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    color: #323E48;
}

pre {
    font-size: 1.25rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    color: #323E48;
    text-transform: uppercase;
    letter-spacing: .2rem;
}

p {
    font-size: 1rem;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    color: #323E48;
    padding: .5rem 0;
}


/* Angles and masks */
.floater-right {
    position: absolute;
    display: block;
    width: 100%;
    overflow-x: clip;
    z-index: 3; 
  }
.floater-right svg{
    display: block;
    width: 15%;
    max-width: 200px;
    height: auto;
    margin: -3% 0% -13% auto
}

.floater-right-top {
    position: absolute;
    display: block;
    width: 100%;
    overflow-x: clip;
    z-index: 3;
  }
.floater-right-top svg {
    display: block;
    width: 20%;
    max-width: 120px;
    height: auto;
    margin: -25% 0% 0% auto;
}

.floater-left {
    position: absolute;
    display: block;
    width: 100%;
    overflow-x: clip;
    z-index: 3;
    margin: -18% auto 8% 0%;
  }
.floater-left svg{
    display: block;
    width: 15%;
    max-width: 300px;
    height: auto;
  }
  
.floater-left-top {
    position: absolute;
    display: block;
    width: 100%;
    overflow-x: clip;
    z-index: 3;      
}
.floater-left-top svg {
    display: block;
    width: 35%;
    max-width: 350px;
    height: auto;
    margin: -25% auto -2% -15%;
}

.floater-left-top-home {
    position: absolute;
    display: block;
    width: 100%;
    overflow-x: clip;
    z-index: 3;      
}
.floater-left-top-home svg {
    display: block;
    width: 28%;
    max-width: 350px;
    height: auto;
    margin: -25% auto -2% -11%;
}

/* Buttons */

button {
    background-color: transparent;
    margin: 2rem auto 2rem 0;
    padding: 0px;
    border: none;
}

button a {
    background-color: transparent;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    padding: .75rem .5rem .5rem .5rem;
    text-decoration: none;
    display: flex;
    line-height: 1;
}
button a:hover, button a:active, button a:focus, button:hover {
    text-decoration: none;
    background-color: transparent;
}

.outline-big a:after, .outline-small a:after {
    content: '';
    width: 0;
    height: 0;
    border-left: 1.25rem solid transparent;
    border-right: 0rem solid transparent;
    border-bottom: 1rem solid #AE831F;
    margin: auto 0 auto 1rem;
}
.outline-big a:hover:after, .outline-small a:hover:after {
    border-left: 1.25rem solid transparent;
    border-right: 0rem solid transparent;
    border-top: 1rem solid white;
    border-bottom: none;
    margin: 0 0 auto 1rem;
}

.outline-big a {
    font-size: 1.2rem;
    color: #AE831F;
    border: 2px solid;
    border-color: #AE831F;
}
.outline-big a:hover, .outline-big a:hover {
    color: white;
    border-color: #AE831F;
    background-color: #AE831F;
}

.outline-small a {
    font-size: .9rem;
    color: #AE831F;
    border: 2px solid;
    text-transform: uppercase;
    letter-spacing: .1rem;
    border-color: #AE831F;
}
.outline-small a:hover {
    color: white;
    background-color: #AE831F;
}

.solid {
    display: block;
    margin: 2rem auto 3rem auto;
}
.solid a {
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .1rem;
    line-height: inherit;
    text-align: center;
    padding: .5rem 1rem;
    color: #AE831F;
    background-color: white;
}
.solid a:hover{
    color: white;
    background-color: #AE831F;
}

.solid a:active, .solid a:focus {
    background: #AE831F;
    color: white;
}

.solid.gold a{
    color: white;
    background-color: #AE831F;
}
.solid.gold a:hover{
    color: #AE831F;
    background-color: white;
}


.learn-more {
    margin: .5rem auto .5rem 0;
}
.learn-more a{
    line-height: unset;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .1rem;
    color: #323E48;
    padding-left: 0;
}
.learn-more a:after {
    content: '';
    width: 0;
    height: 0;
    border-left: 0rem solid transparent;
    border-right: 0.9rem solid transparent;
    border-bottom: 0.9rem solid #323E48;
    margin: 0 0 0 1rem;
}
.learn-more a:hover {
    color: #AE831F;
    background-color: transparent;
}

.learn-more a:hover:after{
    border-left: 0.9rem solid transparent;
    border-right: 0 solid transparent;
    border-top: 0.9rem solid #AE831F;
    border-bottom: none;
}

button.learn-more:focus {
    background: inherit;
}

.outline-con {
    font-size: 1.2rem;
    font-family: 'Josefin Sans', sans-serif;
    color: #AE831F;
    border: 2px solid;
    border-color: #AE831F;
    padding: 0.5rem .7rem 0.25rem 0.75rem;
    display: inline-flex;
    margin: 1rem 0 2rem 0;
    background-color: transparent;
}
.outline-con:hover {
    color: white;
    border-color: #AE831F;
    background-color: #AE831F;
}

.outline-con:after {
    content: '';
    width: 0;
    height: 0;
    border-left: 1.25rem solid transparent;
    border-right: 0rem solid transparent;
    border-bottom: 1rem solid #AE831F;
    margin: auto 0 auto 1rem;
}
.outline-con:hover:after {
    border-left: 1.25rem solid transparent;
    border-right: 0rem solid transparent;
    border-top: 1rem solid white;
    border-bottom: none;
    margin: 0.25rem 0 0 1rem;
}

/* Nav */

#logo-bg {
    position: fixed;
    z-index: 5;
}
#logo-bg svg {
    top: 0;
    right: 0;
    bottom: auto;
    margin-bottom: auto;
    margin-top: 0;
    width: unset;
    height: 10vw;
    max-height: 140px;
    min-height: 80px;
}

.site-header {
    position: fixed;
    width: 100%;
    z-index: 5;
    background: none;
}

.inside-header {
    display: flex;
    align-items: center;
    padding: 0;
}

.site-logo {
    position: fixed;
    top: 1rem;
    left: 0;
    display: inline-block;
    max-width: 5rem;
}

.site-logo a {
    position: fixed;
    z-index: 100;
    width: 5rem;
    margin: 0 auto auto 0;
}


/* Main nav */

#main-nav {
    position: fixed;
    height: 100%;
    right: 0;
    top: 0;
    background: white;
    z-index: 100;
    display: table;
    
    width: 390px;
    overflow: hidden;
    right: -400px;

    transition: all .8s ease, height 0s!important;
}

#menu-main {
    z-index: 12;
    display: block;
    padding: 4rem 10% 10% 3rem; 
    background: #fff;
    height: 100%;
    width: 100%;
    transition: all .8s, height 0s;
}

#main-nav.active {
    display: block!important;
    width: 400px!important;
    max-width: 400px;
    right: 0!important;
    transition: all .8s ease, height 0s!important;
}
 
#grey {
    display: block;
    content: "";
    height: 100%;
    background: #22292f;
    position: fixed;
    z-index: 8;
    transition: opacity 1s;
}

.out {
    width: 100%;
    opacity: 0.5;
}

.in {
    width: 0;
    opacity: 0;
}

#burgerholder {
    top: 0;
    right: 0;
    transition: 0.5s;
    cursor: pointer;
    z-index: 9;
    position: fixed;
    width: 3.5rem;
    height: 3.5rem;
    background: white;
}

#burgerholder .burger {
    content: "";
    height: 1px;
    width: 2rem;
    background: #ae831f;
    display: block;
    margin: auto;
    margin-top: 0.75rem;
    transition: all 0.2s;
}

#burgerholder:hover #bar1 {
    width: 30px;
    transition: all 0.3s;
}

#burgerholder:hover #bar2 {
    width: 20px;
    transition: all 0.4s;
}

#burgerholder:hover #bar3 {
    width: 30px;
    transition: all 0.5s;
}

#closeburger {
    display: block;
    top: 0;
    right: 0;
    transition: 0.5s;
    cursor: pointer;
    z-index: 15;
    position: relative;
    margin-left: auto;
    width: 3.5rem;
    height: 3.5rem;
}
#closeburger svg {
    margin: 0.5rem;
    height: 2.15rem;
    width: 2.15rem;
}

#closeburger :hover,
#closeburger :active {
    transition: all 0.4s;
    transform: rotate(180deg);
}

#menu-main li a{
    display: block;
    font-size: 1.5rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    color: #AE831F;
    text-decoration: none;
    line-height: 2;
}

#menu-main li a:hover{
    color: dimgray;
}

#menu-main li .sub-menu li a{
    font-size: 1rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    color: #323E48;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: .1rem;
}
#menu-main li .sub-menu li a:hover{
    color: #AE831F;
}


/* Home */

.home-slideshow-block {
    display: flex;
    background: #323E48;
    justify-content: center;
}
.home-slideshow-block .home-image {
    object-fit: cover;
    position: relative;
    height: 90vh;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%);

}
.home-slideshow-block a {
    display: flex;
    width: 30%;
    position: absolute;
    height: 80vh;
}

.location-everything-block {
    position: relative;
    background: #323E48;
    padding: 0;
    margin-bottom: 4rem;
}
.location-everything-block>.wp-block-group__inner-container {
    width: 100%;
    max-width: unset;
    padding: 1rem 0 0 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    overflow: hidden;
} 
.location-everything-block figure {
    width: 45%;
    min-width: 300px;
    max-width: 900px;
    margin: 0;
    clip-path: polygon(0% 0%, 90% 10%, 100% 90%, 0% 100%);
    flex-grow: 1;
  }
  .location-everything-block figure img{
    height: 100%;
    width: 100%;
    object-position: center;
    object-fit: cover;
    clip: unset;
  }
.location-everything-block .wp-block-group {
    padding: 2rem 5rem 4rem 4rem;
    width: calc(50% - 3rem);
    max-width: 650px;
    margin: auto;
    flex-grow: 1;
}
.location-everything-block p{
    color: white;
}
.location-everything-block:after {
    position: absolute;
    display: block;
    content: '';
    height: 6rem;
    width: 100%;
    margin-top: -1px;
    background: inherit;
    clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 100%);
}



/* What we do - departments */

.what-we-do {
    padding: 2rem 1rem 1rem 1rem;
}

.what-we-do h2 {
    color: #AE831F;
}

.departments {
    width: calc(100% - 6rem);
    max-width: 1000px;    
    display: flex;
    flex-wrap: wrap;
    margin: auto;
    justify-content: center;
    margin-bottom: 4rem;
    padding: 2rem 0 2rem 0;
}

.departments .panel {
    background-color: white;
    margin: 2rem 1rem;
    width: 30%;
    min-width: 250px;
}
.panel h5 {
    margin: 1rem 0 .5rem 0;
}
.panel img {
    height: 13rem;
    object-fit: cover;
}
.panel p {
    padding: 0;
}


/* Portfolio */

.our-portfolio { 
    background: white;
}
.our-portfolio .offwhite{ 
    background: #EBEBEB;
}

.our-portfolio>p {
    padding: 0 0 3rem 0;
    text-align: center;
    margin: auto;
}

.our-portfolio:before {
    position: absolute;
    display: block;
    content: '';
    height: 50px;
    width: 100%;
    padding-top: 5rem;
    margin-top: calc(-5rem + 1px);
    background: inherit;
    clip-path: polygon(0% 100%, 100% 0%, 100% 100%, 0% 100%);
    z-index: 2;
}

.portfolio {
    display: flex;
    flex-wrap: wrap;
}

.project {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    min-height: 7rem;
}
.project .info {
    width: 50%;
    padding: 3rem;
    flex-grow: 1;
}
.project .info>h6 {
    padding-bottom: 1rem;
}
.project .info>h6, .project .info>h3, .project .info>p {
    padding-left: 0.6rem;
}


.project .categories {
    display: flex;
    flex-flow: wrap;
    width: 100%;
    color: #323E48;
    margin-top: 1.5rem;
}
.project .categories li{
    line-height: 1rem;
    padding: 0 0.6rem 0 0.6rem;
    border-right: 1px solid #AE831F;
    margin-bottom: 0.5rem;
}

.portfolio>div:nth-child(even) {
    flex-direction: row-reverse;
    flex-wrap: wrap;
}

/* Project gallery */

.project>ul {
    position: relative;
    width: 50%;
}
.project>ul li {
    position: absolute;
    height: 100%;
    width: 100%;
}

.gallery .slick-track, .gallery .slick-list.draggable {
    height: 100%;
}

.project .gallery {
    min-width: 350px;
    min-height: 400px;
    flex-grow: 1;
    margin: 0 auto 0 auto;
}
.project .gallery img, .gallery .slick-initialized .slick-slide {
    position: relative;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}
 
.gallery .slick-dots {
    margin: -4rem auto 0 auto;
    position: relative;
    width: 60%;
    height: 3rem;
    /* background: aqua; */
    z-index: 3;
    display: flex;
}
    
.gallery .slick-dots li {
    margin: 0 0.5rem 0 0.5rem;
    position: relative;
}
	
.gallery .slick-dots li	button {
	display: block;
	width: 1rem;
    height: 1rem;
    margin: auto;
    padding: 0;
	border: none;
	border-radius: 100%;
	background-color: #768ea3;
			
	text-indent: -9999px;
}
	
.gallery li.slick-active button {
	background-color: #F4F5F7;
}


/* Our Experts */

.our-experts {
    background: #323E48;
    padding-top: 4rem;
    padding-bottom: 3rem;
}
.our-experts h2 {
    color: #AE831F;
    max-width: 400px;
}
.our-experts>p {
    color: white;
    padding: 0 0 3rem 0;
    text-align: center;
    margin: auto;
    max-width: 400px;
}
.our-experts:after {
    position: absolute;
    display: block;
    content: '';
    height: 6rem;
    width: 100%;
    margin-top: calc(3rem - 1px);
    background: inherit;
    clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 100%);
    z-index: 2;
}

.leaders {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    width: calc(100% - 6rem);
    max-width: 1000px;
    margin: 0 auto;
    justify-content: center;
}
.leaders .panel {
    background: inherit;
    margin: 1rem 1rem 2rem 1rem;
    width: 20%;
    max-width: 15rem;
    min-width: 200px;
}
.leaders .panel img {
    margin-bottom: 1rem;
}
.leaders .panel h6, .leaders .panel p {
    color: white;
    line-height: 1.25rem;
}
.leaders .panel p { 
    font-weight: 700;
    padding-bottom: .25rem;
}


/* Our promises */

.promises-block {
    position: relative;
    background: #323E48;
    padding: 0;
    width: 100%;
    max-width: unset;
    padding: 1rem 0 0 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    overflow: hidden;
} 

.promises-block h3 {
    color: #323E48;
    font-size: 1.5rem;
}


.promises-block:after {
    display: block;
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-left: 18rem solid transparent;
    border-right: 0rem solid transparent;
    border-bottom: 14rem solid #AE831F;
    margin: -1rem 0 0 auto;
    right: 0;
    bottom: 0;
}
.promises-block figure {
    width: 35%;
    min-width: 300px;
    max-width: 900px;
    margin: 0;
    clip-path: polygon(0% 0%, 90% 0%, 100% 90%, 0% 100%);
    flex-grow: 1;
    z-index: 3;
  }
  .promises-block figure img{
    height: 100%;
    width: 100%;
    object-position: center;
    object-fit: cover;
    clip: unset;
  }

  .promises-block>.wp-block-group {
    padding: 3rem;
    width: 65%;
}

  .promises-block .columns .wp-block-group {
    padding: 0 1rem 2rem 0;
    width: 45%;
    margin: 0;
    flex-grow: 0;
}

.promises-block h2 {
    text-align: left;
    color: #AE831F;
}
.columns {
    display: flex;
    padding-top: 2rem;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* Intro blocks */

.intro {
    display: flex;
    flex-wrap: wrap;
}

.intro-block {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    min-height: 7rem;
}
.intro .intro-text {
    width: 50%;
    padding: 10vh 3rem;
    flex-grow: 1;
}
.intro .intro-text h3 {
    padding-top: 1.5rem;
}
 
.intro .image-panel {
    width: 50%;
    min-width: 350px;
    min-height: 400px;
    flex-grow: 1;
    margin: 0 auto 0 auto;
    clip-path: polygon(0% 0%, 100% 10%, 100% 90%, 0% 100%);
}
.intro .image-panel img {
    position: relative;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}

.intro-block:first-child {
    margin-top: -5rem;
}
.intro-block:first-child > .image-panel {
    clip-path: polygon(0% 0%, 100% 0%, 100% 90%, 0% 100%);
}

.intro>div:nth-child(even) {
    flex-direction: row-reverse;
    flex-wrap: wrap;
}

.intro>div:nth-child(even) > .image-panel {
    clip-path: polygon(0% 10%, 100% 0%, 100% 100%, 0% 90%);
}



/* Services */

.our-services { 
    background: #EBEBEB;
}

.our-services>p {
    padding: 0 0 3rem 0;
    text-align: center;
    margin: auto;
}

.our-services:before {
    position: absolute;
    display: block;
    content: '';
    height: 50px;
    width: 100%;
    padding-top: 5rem;
    margin-top: calc(-5rem + 1px);
    background: inherit;
    clip-path: polygon(0% 100%, 100% 0%, 100% 100%, 0% 100%);
    z-index: 2;
}

.services {
    display: flex;
    flex-wrap: wrap;
}

.service {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    min-height: 7rem;
}
.service .info {
    width: 50%;
    padding: 3rem;
    flex-grow: 1;
}
.service .info>h6 {
    padding-bottom: 1rem;
}
.service .info>h6, .service .info>h3, .service .info>p {
    padding-left: 0.6rem;
}
 
.service:last-child .info {
    padding: 3rem 3rem 8rem 3rem;
}

.service .image-panel {
    width: 50%;
    min-width: 350px;
    min-height: 400px;
    flex-grow: 1;
    margin: 0 auto 0 auto;
}
.service .image-panel img {
    position: relative;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}

.service ul {
    margin: 0 auto 0 1.5rem;
}
.service ul li {
    list-style-type: square;
}
.service ul ::marker {
    color: #AE831F;
}

.service .learn-more {
    float: right;
}

.services>div:nth-child(even) {
    flex-direction: row-reverse;
    flex-wrap: wrap;
}

/* Services slideshow */

.department-hero {
    display: flex;
    justify-content: center;
    height: 90vh;
    z-index: 2;
    position: relative;
}

.department-hero>img, .department-hero>video {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%);
    height: 90vh;
    width: 100%;
    object-fit: cover;
}

.lockup {
    display: block;
    height: 56vh;    
    width: 100%;
    margin: auto;
    position: absolute;
}

.lockup img {
    object-fit: contain;
    display: flex;
    width: 30%;
    height: 100%;
    min-width: 300px;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    clip-path: unset;
}

.button-block {
    position: relative;
    margin: 0 auto 0 auto;
    display: flex;
    justify-content: center;
}

.button-block .solid {
    display: inline;
    margin: 0 1rem 0 1rem;
}

/* Slideshow container */
.slideshow-container {
    position: relative;
    width: 100%;
    height: 100vh;
    margin: auto;
    display: block;
    background: #323E48;
    justify-content: center;
  }

  .slick-initialized .slick-slide {
    /* clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%); */
    /* height: 90vh; */
    object-fit: cover;
} 

.slideshow-container div div li {
    height: 90vh;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%);
}

.slick-slide img, .slide img, .slide video, .slick-slide video {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.slick-slide li img, .slide li img {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
}

.slideshow-container li a {
    display: block;
    height: 70vh;
    width: 100%;
    margin: auto;
    position: absolute;
}
.slideshow-container a img {
    object-fit: contain;
    display: flex;
    width: 30%;
    min-width: 300px;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    clip-path: unset;
}

.slideshow-container .slick-dots {
	display: flex;
    justify-content: right;
    margin: -2rem 0 auto 0;
    padding: 0 2rem 0 2rem;
    list-style-type: none;
    position: relative;
    z-index: 3;
}
    
.slideshow-container .slick-dots li {
    margin: 0 0.5rem 0 0.5rem;
}
	
.slideshow-container .slick-dots li	button {
	display: block;
	width: 1rem;
	height: 1rem;
    padding: 0;
    margin: -5vh .5rem 0 0;
			
	border: none;
	border-radius: 100%;
	background-color: #768ea3;
			
	text-indent: -9999px;
}
	
.slideshow-container li.slick-active button {
	background-color: #F4F5F7;
}
    

  /* Fading animation */
  .fade {
    animation-name: fade;
    animation-duration: 1.5s;
  }
  
  @keyframes fade {
    from {opacity: .4} 
    to {opacity: 1}
  }  


/* Work with us */

.work-with-block {
    position: relative;
    background: #EBEBEB;
    padding: 0;
}
.work-with-block>.wp-block-group__inner-container {
    width: 100%;
    max-width: unset;
    padding: 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    overflow: hidden;
} 
.work-with-block figure {
    width: 45%;
    min-width: 300px;
    max-width: 900px;
    margin: 0;
    clip-path: polygon(0% 0%, 90% 0%, 100% 100%, 0% 100%);
    flex-grow: 1;
  }
  .work-with-block figure img{
    height: 100%;
    width: 100%;
    object-position: center;
    object-fit: cover;
    clip: unset;
  }
.work-with-block .wp-block-group {
    padding: 4rem 4rem 6rem 4rem;
    width: calc(50% - 3rem);
    max-width: 650px;
    margin: auto;
    flex-grow: 1;
} 
.work-with-block .wp-block-group h2{
    text-align: left;
    color: #AE831F;
}
.work-with-block button.solid {
    display: block;
    margin: 2rem auto 3rem 0;
}

.work-with-block>.wp-block-group__inner-container:after {
    display: block;
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-left: 18rem solid transparent;
    border-right: 0rem solid transparent;
    border-bottom: 14rem solid #AE831F;
    margin: -1rem 0 0 auto;
    right: 0;
    bottom: 0;
}

/* Our guarantee */

.guarantee-block {
    position: relative;
    background: #323E48;
    padding: 0;
}
.guarantee-block>.wp-block-group__inner-container {
    width: 100%;
    max-width: unset;
    padding: 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    overflow: hidden;
} 

.guarantee-block>.wp-block-group__inner-container p{
    color: white;
}

.guarantee-block figure {
    width: 45%;
    min-width: 300px;
    max-width: 900px;
    margin: 0;
    clip-path: polygon(10% 0%, 100% 0%, 100% 100%, 0% 100%);
    flex-grow: 1;
  }
  .guarantee-block figure img{
    height: 100%;
    width: 100%;
    object-position: center;
    object-fit: cover;
    clip: unset;
  }
.guarantee-block .wp-block-group {
    padding: 4rem 4rem 6rem 4rem;
    width: calc(50% - 3rem);
    max-width: 650px;
    margin: auto;
    flex-grow: 1;
} 
.guarantee-block .wp-block-group h2{
    text-align: left;
    color: #AE831F;
} 

/* Recruitment */

.roles {
    background: white;
}

.roles:before {
    position: absolute;
    display: block;
    content: '';
    height: 50px;
    width: 100%;
    padding-top: 5rem;
    margin-top: calc(-5rem + 1px);
    background: inherit;
    clip-path: polygon(0% 100%, 100% 0%, 100% 100%, 0% 100%);
    z-index: 2;
}

.roles .inside-article {
    display: flex;
    flex-wrap: wrap;
    background: transparent;
    justify-content: center;
    padding: 0 4rem 6rem 4rem;
}
.roles .panel {
    width: 320px;
    background: white;
    display: block;
    padding: 1rem 1.5rem;
    margin: 0.75rem;
}

.roles h5 {
    font-size: .8rem;
}
.roles h6 {
    padding-bottom: 0.5rem;
}
.roles h3 {
    padding: 0 0 1rem 0;
    font-size: 1.7rem;
}

.extract {
    height: 10rem;
    overflow: hidden;
    padding-top: 1rem;
}

.roles .panel button.outline-small {
    float: right;
    margin-bottom: 1rem;
    margin-top: 1.5rem;
}

.roles .button-block {
    padding-top: 2rem;
}


/* Job posts */

.job_post-template-default {
    background: #ebebeb;
}

.recruitment-header {
    width: 100%;
    height: 14rem;
    background-image: url("/wp-content/themes/vardischildtheme/assets/recruitment-header.jpg");
    background-size: cover;
    background-position: center;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%);
}
 
.recruitment-header .lockup {
    height: auto;
}
.recruitment-header .lockup svg {
    display: flex;
    height: 9rem;
    margin: 1.5rem 2rem 2rem auto;
}
.intro.recruit .image-panel {
    clip-path: unset!important;
}
.recruit .intro-block:first-child .intro-text {
    padding: 5rem 4rem 7rem 4rem;
}

.job-info {
    padding: 4rem;
    max-width: 950px;
    margin: auto;
}

.job-info h5 {
    font-size: .8rem;
}
.job-info h6 {
    padding-bottom: 0.5rem;
}
.job-info h2 {
    padding: 0.75rem 0 0.5rem 0;
    color: #ae831f;
    text-align: left;
}

.job-info ul {
    list-style: disc; 
    padding-bottom: 0.25rem;
    margin-left: 1rem;
}

.job-info li{ 
    padding-bottom: 0.25rem; 
}


.single-job_post main > .job-info {
    padding: 3rem 1rem!important;
    width: calc(100% - 4rem);
    max-width: 800px;
}

.job-info .form {
    width: 100%;
    padding: 2rem 0 2rem 0;
}

.job-info .form label.forminator-label {
    color: #22292f;
}

.forminator-file-upload {
    background: white;
    padding: 3rem;
    min-height: 30vh;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: center;
}
.forminator-field input, .forminator-field textarea, .forminator-field select {
    background: white;
    border: 0;
}

.forminator-checkbox__wrapper {
    display: flex;
}
div#forminator-field-consent-1-628b95288e0f0__label {
    line-height: 0;
    margin-left: 1rem;
}

input#forminator-field-upload-1 {
    appearance: inherit;
    background-color: initial;
    cursor: pointer;
    align-content: center;
    color: black;
    text-overflow: ellipsis;
    white-space: pre-wrap;
    text-align: center!important;
    padding: initial;
    border: inherit;
    overflow: visible !important;
    text-decoration: none;
    margin: auto;
    justify-items: center;
    flex-grow: 0;
    border: none;
    width: 6rem;
    font-size: .9rem;
}
 
input#forminator-field-upload-1::before {
    margin: auto;
    height: 8rem;
    width: auto;
    content: url("/wp-content/themes/vardischildtheme/assets/upload-icon.svg");
    display: inline-table;
    z-index: 5;
    position: relative;
}

.forminator-file-upload span {
    display: none;
}

.forminator-checkbox__wrapper {
    display: flex;
    height: auto;
    line-height: 0rem;
    margin: 2rem 0 2rem 0;
}
label.forminator-checkbox {
    width: 15px;
    height: 15px;
    margin: .5rem 1rem .5rem 0!important;
}
div#forminator-field-consent-1-628ba0f84c9a4__label {
    padding-left: 0.5rem;
}

button#forminator-field-upload-1_button {
    color: black;
    text-align: center;
    margin: auto;
    display: none
}

.forminator-response-message.forminator-show.forminator-success {
    display: block;
    color: #0eb476;
    font-size: 2rem;
    line-height: 1.25;
    padding-bottom: 1rem;
    padding-top: 3rem;
}

span.forminator-description {
    display: none;
}

.dark .forminator-field.forminator-merge-tags, .dark .forminator-field.forminator-merge-tags p {
    color: white;
}

 /* Contact forms */

.contact-form {
    display: flex;
    flex-direction: row;
}

.contact-info {
    width: calc(50% - 4rem);
    padding: 2.5rem 4rem;
}

.contact-info h2 {
    text-align: left;
}

.contact-info h2:before {
    content: '';
    position: absolute;
    display: block;
    border-left: 6rem solid #AE831F;
    border-right: 0rem solid transparent;
    border-bottom: 3.5rem solid transparent;
    border-top: 1rem solid transparent;
    margin: -1.5rem 0 0 -1rem;
    z-index: -1;
}

.dark .contact-info h2:before {
    border-left: 6rem solid white;
}

.contact-form.dark .contact-info h2 {
    color: #AE831F;
}
.contact-form.dark .contact-info, .contact-form.dark .contact-info p {
   color: white;
}

.sub-info {
    display: flex;
    flex-wrap: wrap;
}
.sub-info div {
    width: 50%;
    padding-top: 2rem;
    padding-right: 2rem;
}

#contact span.forminator-description span {
    color: white;
}

.form {
    width: 50%;
    padding: 3rem;
    margin: auto;
}

.forminator-custom-form {
    display: inline!important;
 }
 label.forminator-label {
    color: white;
    text-transform: uppercase;
    letter-spacing: .1rem;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1;
    padding: 2rem 0 0.5rem 0;
    margin: 0;
    text-align: left;
    width: 100%;
    display: block;
 }

 .forminator-row {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.forminator-field input, .forminator-field select {
    display: flex;
    width: 100%;
    flex-grow: 1;
    border: 0;
}

.forminator-checkbox__label p {
    line-height: 1rem;
}

.dark .forminator-checkbox__label p {
    color:white;
}

.forminator-col-6 {
    width: calc(50% - 1rem);
}

.forminator-response-message.forminator-show.forminator-error {
    background: #fea8b7;
    padding: 1rem;
    line-height: 1.5;
}

label.forminator-label--forminator-error {
    font-weight: 700;
}

label.forminator-hidden {
    display: none;
}


.off-white label.forminator-label {
    color: #22292f;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="number"]:focus, textarea:focus, select:focus {
    background-color: white;
}


/* Map */
.map {
    padding-top: 3rem;
    position: relative;
    height: 400px !important;
    overflow: hidden;
  }

.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 400px !important;
  }



/* Footer */
.site-info {
    display: none;
}
#custom-footer #footer-widgets .site-footer, .footer-widgets-container, #custom-footer .footer-widgets, .site-footer .copyright {
    background-color: #323E48 !important;
    background: #323E48 !important;
}
#custom-footer .site-footer .footer-widgets-container .inside-footer-widgets {    
    margin-left: -40px;
    display: flex;
    flex-direction: row;
}

#custom-footer .footer-widgets .widget {
    padding-bottom: 0;
    margin-bottom: 2rem;
}

#custom-footer .wp-block-social-links:not(.is-style-logos-only) .wp-social-link {
    background: #323e48!important;
}
.wp-block-social-links {
    display: inline-flex!important;
    height: 2rem;
}
.wp-block-social-links .wp-social-link {
    padding-right: 1rem;
}
.wp-block-social-links .wp-social-link a {
    padding: 0;
}
.wp-block-social-links .wp-social-link svg {
    width: 1em;
    height: 1em;
    margin: auto;
}

.site-footer .copyright p {
    color: #AE831F;
    text-align: center;
}

.inside-footer-widgets .footer-widget-1, .inside-footer-widgets .footer-widget-2 {
    width: 20%;
}
.inside-footer-widgets .footer-widget-3 {
    width: 60%;
}

.footer-widget-3 img {
    float: right;
	max-width: 200px;
}

.widget-title {
    color: white;
    text-transform: uppercase;
    letter-spacing: .1rem;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1;
    padding: 1rem 0 0.5rem 0;
    margin: 0;
    text-align: left;
}

.widget ul li a, .widget p {
    color: white;
    text-decoration: none;
    font-weight: 400;
}
.widget ul li a:hover {
    color: #AE831F;
}

.footer-widgets .widget :last-child, .sidebar .widget :last-child {
    margin: 0;
    display: inherit;
}

/* Default pages */

.page-template-default .site-main {
    min-height: 100vh;
    padding-top: 10rem;
    background-color: #EBEBEB;
}

.page-template-default .inside-article{
    background-color: #EBEBEB;
}

.page-template-default  article {
    max-width: 1200px;
    margin: auto;
    display: block;
}

.page-template-default h5, .page-template-default h3 {
    padding-top: 2rem;
}

/* Error pages */

.error404 .inside-article {
    padding: 10rem 4rem;
}

li#accordion-section-generatepress_upsell_section {
    display: none;
}

/* Accessibility */

.access-toolbar-widget {
    display: block;
    padding: 4rem 10% 10% 3rem;
    margin: 0 0 auto 0;
}
.a11y-toolbar-widget ul li button{
    display: inline-block;
    font-size: 1rem;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    color: #323E48;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: .1rem;
}

.a11y-toolbar-widget ul li button:focus, .ltr.right.a11y-toolbar-widget ul li button:active {
    background: transparent;
}

.access-toolbar-widget button {
    background-color: transparent;
    margin: 0;
    padding: 0.5em 0.25em 0.25em 1.5em;
    border: none;
}

/* Responsiveness */

@media only screen and (max-width: 950px) {
    .forminator-row {
        display: block;
    }
    .forminator-col-6 {
        width: 100%;
        flex-grow: 1;
    }
}

@media only screen and (max-width: 900px) {
    h1, h2 {
      font-size: 2rem;
    }
    h3, h4 {
        font-size: 1.25rem;
      }
    .contact-form {
        display: block;
    }
    .contact-info, .form{
        flex-grow: 1;
        width: auto;
    }
    .form {
        padding: 0 2rem 2rem 3rem;
        margin: auto;
    }
    .job-info .form {
        max-width: 100%;
    }

  }

@media only screen and (max-width: 800px) {
    .intro {
        padding: 0 0 8rem 0;
    }
    .intro .image-panel {
        display: none;
    }
    .intro .intro-text {
        padding: 3rem 3rem 0rem 3rem;
    }
    .promises-block figure {
        display: none;
    }
    .promises-block>.wp-block-group {
        width: 100%;
    }
    .guarantee-block figure {
        display: none;
    }
    .roles .panel {
        flex-grow: 1;
        max-width: 95vw;
        width: 100%;
    }
    .recruit .intro-block:first-child .intro-text {
        padding: 9rem 4rem 1rem 4rem;
    }
    .location-everything-block figure {
        width: 100%;
    }
}

@media only screen and (max-width: 750px) {
    .work-with-block figure {
        display: none;
    }
    .work-with-block .wp-block-group h2 {
        padding-top: 0;
    }
    .sub-info div {
        display: block;
        width: 100%;
        padding-top: 1rem;
        padding-right: 0;
    }
    .site-footer .footer-widgets-container .inside-footer-widgets {
        flex-wrap: wrap;
    }
    .inside-footer-widgets>div {
        flex: 1 0 100%;
    }
    .footer-widgets .widget :last-child, .sidebar .widget :last-child {
        margin: auto;
        display: block;
    }
} 

@media only screen and (max-width: 690px) {
    .location-everything-block .wp-block-group {
        padding: 3.5rem 10% 2rem 10%;
    }
    .location-everything-block figure{
        display: none;
    }
    .departments {
        width: 90%;
    }
    .departments .panel { 
        margin: 1rem 0;
        width: unset;
        min-width: unset;
    }
    .work-with-block .wp-block-group{
        padding: 5rem 2rem 7rem 2rem !important;
      }
    .project .info, .service .info { 
      padding: 2rem !important;
      }
    .roles .inside-article {
          padding: 2.5rem 1rem !important;
      }
    .guarantee-block .wp-block-group {
          padding: 2rem 2rem 5rem 2rem !important;
      }
    .contact-info {
        padding: 4rem 2rem !important;
    }
    .footer-widget-3 img {
          float: unset;
          margin: auto;
          display: block;
      }
  }
  
@media only screen and (max-width: 563px) { 
    .leaders .panel { 
        max-width: unset;
        min-width: unset;
        display: block;
        width: 100%;
    }
    .leaders .panel p, .leaders .panel h6 {
        display: block;
        width: 100%;
    }
    .recruitment-header .lockup svg {
        margin: 1.5rem auto 2rem auto;
    }

    .promises-block .columns .wp-block-group {
        padding: 0 1rem 2rem 0;
        width: 100%; 
        flex-grow: 1;
        display: block;
    }

    #main-nav.active {
        display: block!important;
        width: 100%!important;
        max-width: 400px;
        right: 0!important;
        transition: all .6s ease, height 0s!important;
    }
    #burgerholder .burger {
        content: "";
        height: 1px;
        width: 1.75rem;
        background: #ae831f;
        display: block;
        margin: auto;
        margin-top: 0.55rem;
        transition: all 0.2s;
    }
    #closeburger svg {
        width: 2rem;
    }
  } 


.g-recaptcha {
	position:relative;
	z-index:0;
}
.grecaptcha-badge {
    display: none!important;
}
.dark #captcha-1 {
    color: white;
}


  