/*
Theme Name: cornerstone
Theme URI: https://cornerstonedm.co.uk/
Author: Cornerstone DM
Author URI: https://cornerstonedm.co.uk/
Description: The cornerstone theme for WordPress. 
Version: 1.00

Tags: cornerstone
*/

/*
z-index's

1
.footerMobile


4
.header
.navSubHolderOpen


9
.tmodal

10
.menu-toggle

20
.sticky-nav //displayed on blog pages
*/


.popup-image {
	margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
	.popup-image {
		float: left;
		width: 40% !important;
		margin-right: 30px;
	}
}

img.imageStretch
{
  width:100%;
}

.bgGradient{
  position: relative;	
}

.bgGradient:hover:after{
   opacity: 0;
}

.bgGradient::after
{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
	left: 0;
	top: 0;
	pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,0.9) 10%, rgba(255,255,255,0) 100%);
	transition: opacity 2s;
}

video.videoStretch
{
  width:100%;
}

.imageGrowth
{
  overflow:hidden;
}
.imageGrowth img:first-child
{
  transition: all 3.0s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.imageGrowth img:first-child:hover
{
  -ms-transform: scale(1.10); /* IE 9 */
  -webkit-transform: scale(1.10); /* Safari */
  transform:scale(1.10);
}

.embed-container {
 height:auto;
 max-width:100%;
 overflow:hidden;
 padding-bottom:56.25%;
 position:relative;
}
.embed-container embed,
.embed-container iframe,
.embed-container object {
 height:100%;
 left:0;
 position:absolute;
 top:0;
 width:100%;
}

p img
{
  max-width:100%;
  height:auto;
  margin-bottom:5px;
}


.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-table table tr td
{
  border:1px solid;
  padding:10px;
}

a
{
  color:inherit;
  outline:none; /*remove outline on image links, looks nicer.  If its needed for accessibility we can put it back in later*/

  cursor:pointer; /*for when <a doesn't have href, ie onclick="javascript*/
}

p a {
	color:#10BDA6
}

a:hover,
a:focus
{
  color:inherit;

  outline:none; 
}

a span .fa-long-arrow-right
{
  /*vertical-align:baseline;*/
  position:relative;
  top:2px;
}

h1, h2, h3, p
{
  padding:0px;
  margin:0px;
}

p
{
  line-height:165%;
  padding-bottom:30px;
}

p a
{
 
}

.textLine
{
  margin-top:24px;
  margin-bottom:24px;
  height:2px;
  width:100px;
}

ul
{
  list-style-type:none;
  padding-left:0px;
}
ul li
{
  display:table;
  margin-bottom:25px;
}
ul li::before
{
  font-family:"Font Awesome 5 Pro";
  content:"\f178";
  font-size:120%;
  display:inline-block;
  margin-left:0px;
  padding-right:25px;
  color:#131313;

  display:table-cell;
  text-align:right;
}
ul.tick li::before
{
  font-family:"Font Awesome 5 Pro";
  content:"\f00c";
  display:inline-block;
  margin-left:0px;
  padding-right:25px;
  color:#131313;

  display:table-cell;
  text-align:right;
}

small,
.small
{
  display:inline-block;
  line-height:150%;
  font-weight:300;
}

.content
{
  clip-path:polygon(100% -50%, 150% 0%, 130% 0%, 150% -20%);
  animation:shapeFrames 0.85s linear forwards;
}
@keyframes shapeFrames 
{
  0% 
  {
    
  }
  100% 
  {
    clip-path:polygon(50% -50%, 150% 50%, 50% 150%, -50% 50%);
  }
}

.pulse
{
  animation:pulseFrames 1.0s infinite;
}
@keyframes pulseFrames
{
  0% 
  {
   transform: scale(1); 
  }
  50%
  {
    transform: scale(1.08);
  }
  100% 
  {
    transform: scale(1);
  }
}


.container
{
  -webkit-transition:all 0.15s;
  transition:all 0.15s;
}

/* Style adjustments for viewports 320px and over go here, anything smaller than 320 treat it as 320 */
@media all and (min-width: 0px)
{
  html, body
  {
    margin:0;
    padding:0;
    /*height:100%;*/
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:15px;
    color:#656D74;

    -webkit-text-size-adjust: none; /* Prevent font scaling on iOS devices */
  }

  h1
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:30px;
    line-height:1.1;
    color:#131313;

    margin-bottom:30px;
  }

  h2
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:25px;
    line-height:1.1;
    color:#131313;

    margin-bottom:30px;
  }

  h3
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:20px;
    color:#131313;

    margin-bottom:10px;
  }

  .header
  {
    padding-top:15px;
    padding-bottom:15px;
  }
  .header .logo
  {
    height:25px;
    max-width:none;
  }
  
  .bgFAQ
  {
    background-image:url("images/bgFAQ.png");
    background-repeat:no-repeat;
    background-position:left top;
    background-size:85% auto;
    padding-top:140px;
    padding-left:0%;
  }

  .buttonSmall
  {
    display:inline-block;

    padding-top:8px;
    padding-bottom:8px;

    padding-left:25px;
    padding-right:25px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:15px;
      line-height:20px;

    border-radius:18px 18px 18px 18px;
  }

  .buttonMedium
  {
    display:inline-block;

    padding-top:10px;
    padding-bottom:10px;

    padding-left:25px;
    padding-right:25px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:15px;
    
    font-weight:700;
    font-style:normal;
    font-size:15px;
      line-height:20px;

    border-radius:20px 20px 20px 20px;
  }

  .buttonLarge
  {
    display:inline-block;

    padding-top:10px;
    padding-bottom:10px;

    padding-left:25px;
    padding-right:25px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:15px;
    
    font-weight:700;
    font-style:normal;
    font-size:15px;
      line-height:20px;

    border-radius:20px 20px 20px 20px;
  }

  input.text,
  div.wpforms-container-full .wpforms-form input[type="text"],
  div.wpforms-container-full .wpforms-form input[type="email"]
  { 
    width:100%;
    height:40px!important;
    
    padding-left:25px!important;
    padding-right:25px!important;
    padding-top:1px!important;
    padding-bottom:0px!important;
    
    border:1px solid #CCCCCC;
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:15px!important;
    color:inherit!important;
    
    margin-top:0px;
    margin-bottom:15px;
    
    -webkit-appearance:none;
    border-radius:20px 20px 20px 20px!important;
  }

  input[type="submit"],
  div.wpforms-container-full .wpforms-form button[type="submit"]
  {
    cursor:pointer;
    display:inline-block;

    padding-left:25px;
    padding-right:25px;
    
    min-width:180px;
    max-width:100%;
    height:40px;

    border:0px!important;
    color:#131313!important;
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:15px!important;
    text-align:center;

    margin-bottom:15px;
    
    -webkit-appearance:none;
    border-radius:20px 20px 20px 20px;
  }

  select,
  div.wpforms-container-full .wpforms-field.wpforms-field-select-style-classic select
  {
    width:100%;
    height:40px;
    
    padding-left:25px!important;
    padding-right:25px!important;
    
    border:1px solid #CCCCCC;
    background-color:white; /*iPhone's*/

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:15px;
    color:inherit;
    
    margin-top:0px;
    margin-bottom:15px;

    -webkit-appearance:none;
    -moz-appearance:none;
    -ms-appearance:none;
    appearance:none;
    border-radius:20px 20px 20px 20px;
    
    background-image:url("images/arrow-select.svg");
    background-repeat:no-repeat;
    background-position:calc(100% - 10px) center;
    background-size:20px 20px;

    cursor:s-resize;
  }

  textarea, /*must be commented out for editor-style.css*/
  div.wpforms-container-full .wpforms-form textarea
  {
    border:1px solid #CCCCCC;
    
    width:100%;
    min-height:120px;
    resize:none;

    padding-top:15px!important;
    padding-bottom:15px!important;
    padding-left:25px!important;
    padding-right:25px!important;

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:15px!important;
    color:inherit!important;

    margin-top:0px!important;
    margin-bottom:15px!important;

    -webkit-appearance:none;
    border-radius:20px 20px 20px 20px!important;
  }


  label.file
  {
    height:40px;
    
    padding-left:25px;
    padding-right:25px;

    background-color:#131313;
    color:white;

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:15px;
    cursor:copy;

    margin-right:5px;
    margin-bottom:15px;

    border-radius:20px 20px 20px 20px;

    
    display:inline-flex;
    align-items:center;
  }

  .filter-button-group button
  {
    border:0px;
    padding:0px;
    background-color:transparent;

    cursor:pointer;
    color:inherit;

    display:block;
    font-size:90%;
    margin-right:0px;
    margin-bottom:10px;
  }

  /*default 3 columns*/
  .grid-item
  {
    width:50%;
  }

  /* 4 columns */
  .grid-item--col4
  {
    width:100%;
  }

  /* 6 columns */
  .grid-item--col6
  {
    width:100%;
  }

  /* 12 columns */
  .grid-item--col12
  {
    width:100%;
  }
  
  .grid-item img
  {
    width:100%;
  }

  .iconsWithText img
  {
    width:75px;
    height:75px;
  }

  .counters
  {
    padding-top:45px;
    padding-bottom:0px;
  }

  .navSticky
  {
    position:static;
    top:auto;
    height:auto;
    pointer-events:none;
    /*margin-bottom:-15px;*/
  }
  .navSticky a
  {
    pointer-events:auto;

    font-size:95%;
    font-weight:bold;
    display:inline-block;
    margin-right:20px;
    margin-bottom:12px;
  }
  .navSticky a.active
  {
    font-weight:bold;
  }

  .text-2-columns
  {
    column-count:1;
    column-gap:0px;
  }

  .footer
  {
    font-size:14px;
    padding-top:50px;
    padding-bottom:105px; /*extra 55 for the footerMobile which is now fixed to bottom of screen*/
  }
  .footer .logo
  {
    height:35px;
    max-width:100%;
  }

  .footerMobile
  {
    font-size:10px;
    line-height:10px;
    font-weight:700;
    padding-top:15px;
    padding-bottom:15px;

    position:fixed;
    width:100%;
    z-index:1;
    bottom:0px;
  }
  table.footerMobileTable
  {
    margin-left:auto;
    margin-right:auto;
  }
  table.footerMobileTable table
  {
    margin-left:0px;
    margin-right:15px;
  }
  table.footerMobileTable table img
  {
    height:20px;
    width:20px;
    margin-right:5px;
  }
}


/*iPhone 6 or iPhone 5 sideways*/
@media all and (min-width: 375px)
{

}


/* Small devices (tablets, 768px and up) */
@media (min-width: 768px)
{
  html, body
  {
    margin:0;
    padding:0;
    /*height:100%;*/
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:21px;
    color:#656D74;

    -webkit-text-size-adjust: none; /* Prevent font scaling on iOS devices */
  }

  h1
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:50px;
    line-height:1.1;
    color:#131313;

    margin-bottom:40px;
  }

  h2
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:29px;
    line-height:1.1;
    color:#131313;

    margin-bottom:40px;
  }

  h3
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:25px;
    color:#131313;

    margin-bottom:10px;
  }

  .header
  {
    padding-top:15px;
    padding-bottom:15px;
  }
  .header .logo
  {
    height:35px;
    max-width:none;
  }

  .bgFAQ
  {
    background-image:url("images/bgFAQ.png");
    background-repeat:no-repeat;
    background-position:left top;
    background-size:70% auto;
    padding-top:135px;
    padding-left:27%;
  }

  .buttonSmall
  {
    display:inline-block;

    padding-top:8px;
    padding-bottom:8px;

    padding-left:25px;
    padding-right:25px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:14px;
      line-height:20px;

    border-radius:18px 18px 18px 18px;
  }

  .buttonMedium
  {
    display:inline-block;

    padding-top:13px;
    padding-bottom:13px;

    padding-left:40px;
    padding-right:40px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:20px;
      line-height:30px;

    border-radius:28px 28px 28px 28px;
  }

  .buttonLarge
  {
    display:inline-block;

    padding-top:15px;
    padding-bottom:15px;

    padding-left:45px;
    padding-right:45px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:25px;
      line-height:40px;

    border-radius:35px 35px 35px 35px;
  }

  input.text,
  div.wpforms-container-full .wpforms-form input[type="text"],
  div.wpforms-container-full .wpforms-form input[type="email"]
  { 
    width:100%;
    height:70px!important;
    
    padding-left:35px!important;
    padding-right:35px!important;
    padding-top:1px!important;
    padding-bottom:0px!important;
    
    border:1px solid #CCCCCC;
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:20px!important;
    color:inherit!important;
    
    margin-top:0px;
    margin-bottom:15px;
    
    -webkit-appearance:none;
    border-radius:35px 35px 35px 35px!important;
  }

  input[type="submit"],
  div.wpforms-container-full .wpforms-form button[type="submit"]
  {
    cursor:pointer;
    display:inline-block;

    padding-left:35px;
    padding-right:35px;
    
    min-width:180px;
    max-width:100%;
    height:70px;

    border:0px!important;
    color:#131313!important;
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:20px!important;
    text-align:center;

    margin-bottom:15px;
    
    -webkit-appearance:none;
    border-radius:35px 35px 35px 35px;
  }

  select,
  div.wpforms-container-full .wpforms-field.wpforms-field-select-style-classic select
  {
    width:100%;
    height:70px;
    
    padding-left:35px!important;
    padding-right:35px!important;
    
    border:1px solid #CCCCCC;
    background-color:white; /*iPhone's*/

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:20px;
    color:inherit;
    
    margin-top:0px;
    margin-bottom:15px;

    -webkit-appearance:none;
    -moz-appearance:none;
    -ms-appearance:none;
    appearance:none;
    border-radius:35px 35px 35px 35px;
    
    background-image:url("images/arrow-select.svg");
    background-repeat:no-repeat;
    background-position:calc(100% - 15px) center;
    background-size:40px 40px;

    cursor:s-resize;
  }

  textarea, /*must be commented out for editor-style.css*/
  div.wpforms-container-full .wpforms-form textarea
  {
    border:1px solid #CCCCCC;
    
    width:100%;
    min-height:210px;
    resize:none;

    padding-top:15px!important;
    padding-bottom:15px!important;
    padding-left:35px!important;
    padding-right:35px!important;

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:20px!important;
    color:inherit!important;

    margin-top:0px!important;
    margin-bottom:15px!important;

    -webkit-appearance:none;
    border-radius:35px 35px 35px 35px!important;
  }


  label.file
  {
    height:70px;
    
    padding-left:35px;
    padding-right:35px;

    background-color:#131313;
    color:white;

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:20px;
    cursor:copy;

    margin-right:5px;
    margin-bottom:15px;

    border-radius:35px 35px 35px 35px;

    
    display:inline-flex;
    align-items:center;
  }

  .filter-button-group button
  {
    border:0px;
    padding:0px;
    background-color:transparent;

    cursor:pointer;
    color:inherit;

    display:inline-block;
    font-size:90%;
    margin-right:40px;
    margin-bottom:15px;
  }

  /*default 3 columns*/
  .grid-item
  {
    width:25%;
  }

  /* 4 columns */
  .grid-item--col4
  {
    width:33.33%;
  }

  /* 6 columns */
  .grid-item--col6
  {
    width:50%;
  }

  /* 12 columns */
  .grid-item--col12
  {
    width:100%;
  }
  
  .grid-item img
  {
    width:100%;
  }

  .iconsWithText img
  {
    width:150px;
    height:150px;
  }

  .counters
  {
    padding-top:90px;
    padding-bottom:50px;
  }

  .navSticky
  {
    position:static;
    top:auto;
    height:auto;
    pointer-events:none;
    /*margin-bottom:-15px;*/
  }
  .navSticky a
  {
    pointer-events:auto;

    font-size:95%;
    font-weight:300;
    display:inline-block;
    margin-right:30px;
    margin-bottom:15px;
  }
  .navSticky a.active
  {
    font-weight:bold;
  }

  .text-2-columns
  {
    column-count:2;
    column-gap:40px;
  }

  .footer
  {
    font-size:16px;
    padding-top:75px;
    padding-bottom:75px;
  }
  .footer .logo
  {
    height:35px;
    max-width:100%;
  }

  .footerMobile
  {
    display:none;
  }
}


/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px)
{
  html, body
  {
    margin:0;
    padding:0;
    /*height:100%;*/
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:22px;
    color:#656D74;

    -webkit-text-size-adjust: none; /* Prevent font scaling on iOS devices */
  }

  h1
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:62px;
    line-height:1.1;
    color:#131313;

    margin-bottom:45px;
  }

  h2
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:37px;
    line-height:1.1;
    color:#131313;

    margin-bottom:45px;
  }

  h3
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:26px;
    color:#131313;

    margin-bottom:10px;
  }

  .header
  {
    padding-top:25px;
    padding-bottom:25px;
  }
  .header .logo
  {
    height:35px;
    max-width:100%;
    position:relative;
    top:-2px;
  }

  .bgFAQ
  {
    background-image:url("images/bgFAQ.png");
    background-repeat:no-repeat;
    background-position:left top;
    background-size:70% auto;
    padding-top:135px;
    padding-left:27%;
  }

  .buttonSmall
  {
    display:inline-block;

    padding-top:8px;
    padding-bottom:8px;

    padding-left:25px;
    padding-right:25px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:14px;
      line-height:20px;

    border-radius:18px 18px 18px 18px;
  }

  .buttonMedium
  {
    display:inline-block;

    padding-top:13px;
    padding-bottom:13px;

    padding-left:40px;
    padding-right:40px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:20px;
      line-height:30px;

    border-radius:28px 28px 28px 28px;
  }

  .buttonLarge
  {
    display:inline-block;

    padding-top:15px;
    padding-bottom:15px;

    padding-left:45px;
    padding-right:45px;

    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px;
    
    font-weight:700;
    font-style:normal;
    font-size:25px;
      line-height:40px;

    border-radius:35px 35px 35px 35px;
  }

  input.text,
  div.wpforms-container-full .wpforms-form input[type="text"],
  div.wpforms-container-full .wpforms-form input[type="email"]
  { 
    width:100%;
    height:70px!important;
    
    padding-left:35px!important;
    padding-right:35px!important;
    padding-top:1px!important;
    padding-bottom:0px!important;
    
    border:1px solid #CCCCCC;
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:20px;
    color:inherit;
    
    margin-top:0px;
    margin-bottom:15px;
    
    -webkit-appearance:none;
    border-radius:35px 35px 35px 35px!important;
  }

  input[type="submit"],
  div.wpforms-container-full .wpforms-form button[type="submit"]
  {
    cursor:pointer;
    display:inline-block;

    padding-left:35px;
    padding-right:35px;
    
    min-width:180px;
    max-width:100%;
    height:70px;

    border:0px!important;
    color:#131313!important;
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:20px!important;
    text-align:center;

    margin-bottom:15px;
    
    -webkit-appearance:none;
    border-radius:35px 35px 35px 35px;
  }

  select,
  div.wpforms-container-full .wpforms-field.wpforms-field-select-style-classic select
  {
    width:100%;
    height:70px;
    
    padding-left:35px;
    padding-right:35px;
    
    border:1px solid #CCCCCC;
    background-color:white; /*iPhone's*/

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:20px;
    color:inherit;
    
    margin-top:0px;
    margin-bottom:15px;

    -webkit-appearance:none;
    -moz-appearance:none;
    -ms-appearance:none;
    appearance:none;
    border-radius:35px 35px 35px 35px;
    
    background-image:url("images/arrow-select.svg");
    background-repeat:no-repeat;
    background-position:calc(100% - 15px) center;
    background-size:40px 40px;

    cursor:s-resize;
  }

  textarea, /*must be commented out for editor-style.css*/
  div.wpforms-container-full .wpforms-form textarea
  {
    border:1px solid #CCCCCC;
    
    width:100%;
    min-height:210px;
    resize:none;

    padding-top:15px!important;
    padding-bottom:15px!important;
    padding-left:35px!important;
    padding-right:35px!important;

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:20px!important;
    color:inherit!important;

    margin-top:0px!important;
    margin-bottom:15px!important;

    -webkit-appearance:none;
    border-radius:35px 35px 35px 35px!important;
  }


  label.file
  {
    height:70px;
    
    padding-left:35px;
    padding-right:35px;

    background-color:#131313;
    color:white;

    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:20px;
    cursor:copy;

    margin-right:5px;
    margin-bottom:15px;

    border-radius:35px 35px 35px 35px;

    
    display:inline-flex;
    align-items:center;
  }

  .filter-button-group button
  {
    border:0px;
    padding:0px;
    background-color:transparent;

    cursor:pointer;
    color:inherit;

    display:inline-block;
    font-size:90%;
    margin-right:40px;
    margin-bottom:15px;
  }

  /*default 3 columns*/
  .grid-item
  {
    width:25%;
  }

  /* 4 columns */
  .grid-item--col4
  {
    width:33.33%;
  }

  /* 6 columns */
  .grid-item--col6
  {
    width:50%;
  }

  /* 12 columns */
  .grid-item--col12
  {
    width:100%;
  }
  
  .grid-item img
  {
    width:100%;
  }

  .iconsWithText img
  {
    width:150px;
    height:150px;
  }

  .counters
  {
    padding-top:90px;
    padding-bottom:50px;
  }

  .navSticky
  {
    position:static;
    top:auto;
    height:auto;
    pointer-events:none;
    /*margin-bottom:-15px;*/
  }
  .navSticky a
  {
    pointer-events:auto;

    font-size:95%;
    font-weight:300;
    display:inline-block;
    margin-right:40px;
    margin-bottom:15px;
  }
  .navSticky a.active
  {
    font-weight:bold;
  }

  .text-2-columns
  {
    column-count:2;
    column-gap:60px;
  }

  .footer
  {
    font-size:16px;
    padding-top:90px;
    padding-bottom:90px;
  }
  .footer .logo
  {
    height:35px;
    max-width:100%;
  }

  .footerMobile
  {
    display:none;
  }
}


/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px)
{
  html, body
  {
    margin:0;
    padding:0;
    /*height:100%;*/
    
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:300;
    font-size:23px;
    color:#656D74;

    -webkit-text-size-adjust: none; /* Prevent font scaling on iOS devices */
  }

  .header
  {
    padding-top:35px;
    padding-bottom:35px;
  }

  .navSticky
  {
    position:sticky;
    top:100px;
    height:0px;
    pointer-events:none;
    /*margin-bottom:-15px;*/
  }
  .navSticky a
  {
    pointer-events:auto;

    font-size:85%;
    font-weight:300;
    display:block;
    margin-right:0px;
    margin-bottom:15px;
  }
  .navSticky a.active
  {
    font-weight:bold;
  }
}


@media (min-width: 1400px)
{
  .container
  {
    max-width:1370px;
  }

  h1
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:70px;
    line-height:1.1;
    color:#131313;

    margin-bottom:45px;
  }

  h2
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:40px;
    line-height:1.1;
    color:#131313;

    margin-bottom:45px;
  }

  h3
  {
    font-family:neuzeit-grotesk, sans-serif;
    font-style:normal;
    font-weight:700;
    font-size:26px;
    color:#131313;

    margin-bottom:10px;
  }

  .header .logo
  {
    height:35px;
    max-width:none;
    position:relative;
    top:-2px;
  }
	
  .contactLinks
  {
    padding-left:50px;
  }
}


@media (min-width: 1600px)
{
  .container
  {
    max-width:1570px;
  }
}


@media (min-width: 1900px)
{
  .container
  {
    max-width:1570px;
  }
}


.header
{
  width:100%;
  position:fixed;
  z-index:4;
  top:0px;

  background:rgb(19,19,19);
  background:linear-gradient(180deg, rgba(19,19,19,0.7) 0%, rgba(150,150,150,0) 100%);
  color:white;

  transition:background 300ms ease-in-out;

  box-shadow:0 10px 20px rgba(242,244,246,0.01);
  -webkit-box-shadow:0 10px 20px rgba(242,244,246,0.01);
  -moz-box-shadow:0 10px 20px rgba(242,244,246,0.01);
}
.header.bgBlack
{
  background:linear-gradient(180deg, rgba(19,19,19,0.993) 0%, rgba(19,19,19,0.993) 100%);
  background-color:#131313;
  background-color:rgba(19, 19, 19, 0.993);
}



/*
* - Mobile/Tablet navigation -
*/
body
{
  padding-right:0px!important;
}
body.noscroll
{
  position:fixed;
  overflow:hidden;
  width:100%;
}


.tmodal 
{
  display:flex;
  position:fixed;
  top:0;
  left:0;
  bottom:0;
  right:0;
  z-index:9;
  background-color:rgba(19, 19, 19, 0.993);

  transition:clip-path 500ms ease-out;

  justify-content:center;
  align-items:center;
  clip-path:polygon(100% -50%, 150% 0%, 130% 0%, 150% -20%);
  visibility:hidden;

  color:white;
}

.modal-active
{
  clip-path:polygon(50% -50%, 150% 50%, 50% 150%, -50% 50%);
  visibility:visible;
}

.tmodal .logo
{
  margin-top:50px;
  width:200px;
}

.tmodal nav
{
  opacity:0;
  transition:opacity 100ms linear;
  padding-top:35px;
  padding-bottom:35px;

  width:66%;
  margin-left:auto;
  margin-right:auto;
}
.tmodal nav ul
{
  text-align:left;
  list-style-type:none;
  font-weight:700;
  padding:0px;
  margin:0px;
}
.tmodal nav ul li
{
  display:block;
  margin-bottom:14px;
}
.tmodal nav ul li::before
{
  content:none;
}


.tmodal nav ul li a
{
  display:block;

  font-size:17px;
  color:white!important;
  text-decoration:none;
  position:relative;
}

.tmodal nav ul li a .fal
{
  float:right;
  font-size:20px;
  position:relative;
  top:2px;

  width:20px;
  text-align:center;
}

.tmodal nav ul li ul li
{
  margin-top:2px;
  margin-bottom:2px;
}
.tmodal nav ul li ul li a
{
  font-size:15px;
  font-weight:400;
}

.tmodal nav.nav-active
{
  opacity:1;
}

.menu-toggle
{
  z-index:10;
  position:fixed;
  top:15px;
  right:15px;
  right:5%;
  height:30px;
  width:30px;
  /*background-color:red;*/
  
  transition:all 250ms ease-in-out;
}
.menu-toggle:hover
{
  cursor:pointer;
  transform:scale(1.04);
}

.menu-toggle-active
{
  transform:rotate(45deg);
  border-radius:50%;
}
.menu-toggle-active:hover
{
  transform:rotate(45deg);
}
.menu-toggle-active .hamburger
{
  width:0;
  background-color:white!important;
}
.menu-toggle-active .hamburger::before {
  transform:translate(0px, 0px) rotate(-90deg);
  background-color:white!important;
}
.menu-toggle-active .hamburger::after
{
  transform:translate(0px, -2px);
  background-color:white!important;

  width:30px;
}

.hamburger
{
  margin-left:0px;
  margin-top:14px;
  height:2px;
  width:30px;
  border-radius:0px;
  background-color:white;
  transition:all 250ms ease-in-out;
}
.hamburger::before
{
  content:'';
  display:block;
  height:2px;
  width:30px;
  border-radius:0px;
  background-color:white;
  transition:all 250ms ease-in-out;
}
.hamburger::after
{
  content:'';
  display:block;
  height:2px;
  width:15px;
  border-radius:0px;
  background-color:white;
  transition:all 250ms ease-in-out;
}
.hamburger::before
{
  transform:translateY(-8px);
}
.hamburger::after
{
  transform:translateY(6px);
}



/*
* — Desktop navigation —
*/
.navigation
{
  /*float:right;*/
  text-align:center;
  list-style:none;
  padding:0px;
  margin:0px;
}

.navigation > li
{
  display:inline-block;
  font-size:20px;
  font-weight:bold;
  margin-left:32px;
  margin-right:0px;
  margin-bottom:0px;
  padding-left:0px;
  /*padding-bottom:14px;*/
  text-decoration: none;
  text-align:center;
}
.navigation > li::before
{
  content:none;
}

.navigation > li a
{
  padding-bottom:0px;
  border-bottom:2px solid transparent;
  text-decoration: none;
  width:100%;
  transition:border-bottom-color 0.15s;
}
.navigation > li a:hover,
.navigation > li a.active
{
  border-bottom:2px solid white;
  color:white;

}


.arrowMenuUp
{
  display:block;
  height:15px;
  margin-left:auto;
  margin-right:auto;
  vertical-align:bottom;
}

.navSubHolder
{
  display:none;
  padding-top:15px;
}
.navSubHolderOpen
{
  display:block;
  position:absolute;
  
  transform: translate(-30%);
  min-width:180px;

  z-index:4;
}

.navSub
{
  list-style:none;
  padding:0px;
  margin:0px;

  padding-top:15px;
  padding-bottom:15px;

  background-color:white;
  color:#131313;

  -webkit-box-shadow:10px 10px 50px -20px rgba(0, 0, 0, 0.25);
  -moz-box-shadow:10px 10px 50px -20px rgba(0, 0, 0, 0.25);
  box-shadow:10px 10px 50px -20px rgba(0, 0, 0, 0.25);

  border-radius:1px 1px 1px 1px;
}

.navSub li
{
  padding-top:5px;
  padding-bottom:5px;
  padding-left:15px;
  padding-right:15px;
  margin-bottom:0px;
  font-size:14px;
  text-align:center;

  display:list-item;
}
.navSub li::before
{
  content:none;
}
.navSub li a
{
  display:inline;
  border-bottom:1px solid transparent;
}
.navSub li:last-child a
{
  /*border-bottom:0px;*/
}

.navSub li a:hover
{
  border-bottom:1px solid #131313;
  color:#131313;
}

.contactLinks a
{
  font-size:14px;
  font-weight:700;
  margin-left:25px;
}

.notificationBadge
{
  position:relative;
  top:-12px;
  left:0px;
  font-size:12px;
  color:#FFFFFF;
  background-color:#10BDA6;
  border-radius:12px;
  padding:2px 6px;
}

.cs_notification
{
  font-size:16px;
  padding-top:30px;
  padding-bottom:30px;
}

.cs_notification p:last-child
{
  padding-bottom:0px;
}

.cs_notification a
{
  text-decoration:underline;
}

.cs_notification .closeX
{
  font-size:25px;
  text-decoration:none;
  
  position:relative;
  top:-3px;
  margin-right:40px;
}

.buttonSmall,
.buttonMedium,
.buttonLarge
{
  transition:all 0.4s!important;
  -webkit-filter: brightness(1.0);
  filter: brightness(1.0);
}
.buttonSmall:hover,
.buttonMedium:hover,
.buttonLarge:hover
{
  /*opacity:0.95;*/
  -webkit-filter: brightness(1.13);
  filter: brightness(1.13);
}

.buttonSmall.bgBlack:hover,
.buttonMedium.bgBlack:hover,
.buttonLarge.bgBlack:hover
{
  background-color:#656D74;
}

input[type="submit"]
{
  transition:all 0.4s;
  -webkit-filter: brightness(1.0);
  filter: brightness(1.0);
}

input[type="submit"]:hover
{
  -webkit-filter: brightness(1.13);
  filter: brightness(1.13);
}

/*to override WPForms*/
.wpforms-form .wpforms-field
{
  padding-top:0px!important;
  padding-bottom:0px!important;
}

.wpforms-form .wpforms-field input,
.wpforms-form .wpforms-field select
{
  max-width:none!important;
}

div.wpforms-container-full .wpforms-form .wpforms-submit-container
{
  padding-top:0px!important;
}

div.wpforms-container-full .wpforms-form input[type="submit"],
div.wpforms-container-full .wpforms-form button[type="submit"]
{
  background-color:#10BDA6!important;
}

div.wpforms-container-full .wpforms-form input[type="submit"]:hover,
div.wpforms-container-full .wpforms-form input[type="submit"]:focus,
div.wpforms-container-full .wpforms-form input[type="submit"]:active,
div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
div.wpforms-container-full .wpforms-form button[type="submit"]:active
{
  background-color:#10BDA6!important;
  border:0px!important;
}

div.wpforms-container-full .wpforms-form input[type="checkbox"]
{
  margin-bottom:15px!important;
}

div.wpforms-container-full .wpforms-form label.wpforms-error
{
  /*display:none;*/
  margin-bottom:15px;
}

div.wpforms-container-full .wpforms-form textarea:focus
{
  border:1px solid #F2F4F6;
}

.wpforms-form ul li::before
{
  content:none;
}

.wpforms-confirmation-container-full
{
  background-color:#10BDA6!important;
  border:0px!important;
}
.wpforms-confirmation-container-full p:last-child
{
  padding-bottom:0px;
}


.filter-button-group
{
  margin-left:10px;
  margin-top:0px;
  margin-bottom:25px;
}

.filter-button-group button.active,
.filter-button-group button:hover
{
  color:#10BDA6;
}

.grid-item .article
{
  font-size:90%;
  margin:10px;
}

.grid-item .article > a
{
  display:block;
}


/*
* - horizontal mouse slider
*/
body
{
  overflow-x:hidden;  /*must be commented out for editor-style.css*/
}

@media all and (min-width: 0px)
{
  .sliderHorizontalHolder
  {
    overflow-x:scroll;
  }
  .sliderHorizontal
  {
    display:flex;
    padding-left:0%;
    transition:all 0.4s;
  }

  .sliderHorizontal > div
  {
    float:left;
    padding-left:5px;
    padding-right:5px;
    padding-bottom:10px;
  }
  .sliderHorizontal > div img
  {
    width:300px;
    margin-bottom:15px;
  }
}



@media (min-width: 1025px)
{
  .sliderHorizontalHolder
  {
    overflow:visible;
  }

  .sliderHorizontal
  {
    display:flex;
    padding-left:33%;
    transition:all 0.4s;
  }

  .sliderHorizontal > div
  {
    float:left;
    padding-left:5px;
    padding-right:5px;
    padding-bottom:10px;
  }
  .sliderHorizontal > div img
  {
    width:500px;
    margin-bottom:15px;
  }
}




/*
* - slick slider -
*/
.slick-arrow
{
  cursor:pointer;
  font-size:36px;
  transition:all 0.4s;
  padding-right:16px;
}
.slick-arrow:hover
{
  opacity:0.75;
  filter:alpha(opacity=75);
}

.slick-dots
{
  left:0px!important;
}

.slick-dots li
{
  margin-left:1px!important;
  margin-right:1px!important;
}
.slick-dots li::before
{
  content:none;
}
.slick-dots li button::before 
{
  font-size:15px!important;
  color:#656D74!important;
}


.slick-prev1
{
  display:inline-block;
}
.slick-next1
{
  display:inline-block;
}


.sliderBanners.slick-slider
{
  line-height:0px; /*removes space under individual slides*/
}

.sliderBanners.slick-dotted.slick-slider
{
  margin-bottom:0px!important;
}
.sliderBanners .slick-dots
{
  text-align:right;
  padding-left:30px;
  padding-right:30px;

  bottom:50px;
}
.sliderBanners .slick-track
{
  display:flex!important;
}
.sliderBanners .slick-slide
{
  height:inherit!important;
}
.sliderBanners .slick-slide > div
{
  height:100%;
}
.sliderBannerTextHolder
{
  /*
  padding-top:70px;
  padding-bottom:30px;
  */
  padding-top:14vw;
  padding-bottom:7vw;
}
.sliderBannerWithBgImage
{
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
}


.slideText
{
  padding-left:0px;
  padding-right:30px;
  padding-bottom:30px;
  font-size:35px;
}

.slideTeam
{
  padding-left:5px;
  padding-right:5px;
  padding-bottom:10px;
}
.slideTeam h3
{
  margin-top:15px;
}

.member-profile{
	margin-bottom: 30px;
}

.member-profile h3
{
  margin-top: 15px;
}


.sliderHorizontalsSlick .slideHorizontalSlick
{
  padding-left:8px;
  padding-right:8px;
  padding-bottom:10px;
}
.sliderHorizontalsSlick .slideHorizontalSlick h3
{
  margin-top:15px;
}


.sliderHorizontalsSlick4 .slideHorizontalSlick
{
  padding-left:15px;
  padding-right:15px;
  padding-bottom:10px;
}
.sliderHorizontalsSlick4 .slideHorizontalSlick img
{
  margin-bottom:15px;
}



.sliderDrags
{
  cursor: url('images/drag.png'), auto;
  cursor: url('images/drag.svg'), auto;
}
.slideDrag
{
  margin-left:35px;
  padding-right:35px;
}
.action a
{
  display:inline-block;
  margin-right:15px;
  margin-bottom:15px;
}

.slideFeatured .article
{
  font-size:90%;
  margin:10px;
}
.slideFeatured .article > a
{
  display:block;
}

.slideShot
{
  padding-left:5px;
  padding-right:5px;
  padding-bottom:10px;
}



.counter
{
  display:inline-block;
  width:270px;
  margin-bottom:40px;
}
.counterHolderIcon
{
  display:inline-block;
  float:left;
  border-right:1px solid white;
  width:134px;
}
.counterHolderIcon img
{
  width:100%;
}
.counterHolderText
{
  display:inline-block;
  float:left;
  text-align:left;
  color:#10BDA6;
  padding-top:15px;
  padding-left:15px;
  width:calc(135px - 15px);
}

.counterNumber
{
  display:block;
  font-family:Helvetica, sans-serif;
  font-size:40px;
  line-height:40px;
  font-weight:bold;
}


.contactTable
{
  font-weight:700;
  font-size:14px; 
}
.contactTable table tr td
{
  vertical-align:top;
  padding-bottom:20px;
}

.contactTable table tr td:first-child img
{
  margin-right:20px;
}
.contactTable table tr td:last-child
{
  padding-top:20px;
}


.footerSocial
{
  margin-bottom:30px;
}
.footerSocial a
{
  font-size:25px;
  margin-right:12px;

  transition:all 0.4s!important;
}
.footerSocial a:hover
{
  color:#10BDA6;
}

/*
  Remove ugly default square blue outlines on Firefox and Chrome.
  Remove ugly default square black outline on Microsoft Edge (Chromium).
  Safari's is rounded
*/
/*Any Firefox*/
@-moz-document url-prefix() 
{
  input:focus,
  select:focus,
  textarea:focus,
  button:focus 
  {
    outline:none;
  }
}
/*Chrome 29+*/
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm)
{
  input:focus,
  select:focus,
  textarea:focus,
  button:focus 
  {
    outline:none;
  }
} 






/* The custom-checkbox */
.custom-checkbox 
{
  display:block;
  position:relative;

  margin-bottom:0px;
  cursor:pointer;
  
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;

  font-weight:normal;

  padding-top:5px;
  padding-bottom:25px;

  padding-left:45px;
  padding-right:0px;

  /*color:#002F87;*/
}

/* Hide the browser's default checkbox */
.custom-checkbox input 
{
  position:absolute;
  opacity:0;
  cursor:pointer;
}

/* Create a custom checkbox */
.checkmark 
{
  position:absolute;
  top:-5px;
  left:0px;
  height:40px;
  width:40px;
  background-color:white;
  border:1px solid #CCCCCC;

  border-radius:15px 15px 15px 15px;
}

/* On mouse-over, add a grey background color */
.custom-checkbox:hover input ~ .checkmark 
{
  /*background-color:#EEEEEE;*/
}

/* When the checkbox is checked, add a teal background */
.custom-checkbox input:checked ~ .checkmark 
{
  background-color:#10BDA6;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after 
{
  content:"";
  position:absolute;
  display:none;
}

/* Show the checkmark when checked */
.custom-checkbox input:checked ~ .checkmark:after 
{
  display:block;
}

/* Style the checkmark/indicator */
.custom-checkbox .checkmark:after {
  left:14px;
  top:14px;
  width:12px;
  height:12px;
  background-color:#131313;
  border-radius:6px 6px 6px 6px;
}





.accordionItem
{
  width:100%;
  min-height:70px;

  padding-top:15px;
  padding-bottom:15px;
  padding-left:35px;
  padding-right:35px;

  margin-top:0px;
  margin-bottom:15px;

  background-color:white;

  border-radius:35px 35px 35px 35px;
}

.accordionItem > a
{
  display:inline-block;
  width:calc(100% + 35px);
  line-height:40px;
}
.accordionItem > a img
{
  float:right;
  position:relative;
  right:20px;
  /*
  position:absolute;
  left:15px;
  */
}


.black
{
  color:#131313;
}

.grey
{
  color:#656D74;
}
.greyLight
{
  color:#F2F4F6;
}

.orange
{
  color:#F7A600;
}

.teal
{
  color:#10BDA6;
}

.white
{
  color:white;
}

.backgroundShift
{
  transition:background 300ms ease-in-out;
}
.bgBlack h1,
.bgBlack h2,
.bgBlack h3,
.bgBlack .fa-long-arrow-right
{
  color:white;
}

.articlesHolder{
		  transition:background 300ms ease-in-out;
}


.bgBlack
{
  background-color:#131313;
  color:white!important;

  transition:background 300ms ease-in-out;
}

.bgGrey
{
  background-color:#656D74;
}
.bgGreyLight
{
  background-color:#F2F4F6;
}

.bgOrange
{
  background-color:#F7A600;
}

.bgTeal
{
  background-color:#10BDA6;
  color:#131313!important;
}

.bgWhite
{
  background-color:white;
}


.dividerGrey
{
  margin-top:30px;
  margin-bottom:60px;
  border-top:1px solid #656D74;
}


.display-table
{
  display:table;
}

.display-cell
{
  display:table-cell;
  vertical-align:middle;
}

.pagination .current
{
  font-weight:bold;
}

img.center
{
  display:block;
  margin-left:auto;
  margin-right:auto;
}
.center
{
  text-align:center;
}
.leftText
{
  text-align:left;
}
.rightText
{
  text-align:right;
}


.no-gutter > [class*='col-']
{
  padding-right:0;
  padding-left:0;
}

.no-padding
{
  padding:0!important;
}

.padding15
{
  padding:15px;
}


iframe
{
  width:100%;
  margin-bottom:30px;
}

.fancybox-skin
{
  background-color:#F2F4F6!important;
}

/*applies to backend editor, no effect to frontend*/
.wp-block-acf-cs-general-spacer
{
  border:1px dashed grey;
}

/* Floating sticky-nav
--------------------------------------------- */
.sticky-nav 
{
  background:#31BDA6;
  width:40px;
  padding:15px 5px 10px 5px;
  position:fixed;
  top:20%;
  z-index:20;
}
 
.sticky-nav .sticky-nav-text 
{
  width:30px;
}
.sticky-nav .sticky-nav-text a
{
  color:white;
  writing-mode:vertical-rl;
}
@media (max-width: 960px) 
{
  .sticky-nav
  {
    display:none;
  }
}



/* Mega Menu styles */

#mega-menu-wrap-main-menu #mega-menu-main-menu > li#mega-menu-item-56 > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
  color: #10BDA6 !important;
}

#mega-menu-wrap-main-menu #mega-menu-main-menu > li#mega-menu-item-56 > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover {
  color: #131313 !important;
}