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

/*
Theme Name: Pronghorn Custom Responsive Theme
Theme URI: https://pronghorn.ca
Author: Dragon Evo
Author URI: https://dragonevo.ca
Description: Built using the Evo Framework. 
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-image-header, featured-images, full-width-template, microformats, post-formats, sticky-post, theme-options, threaded-comments, translation-ready
Text Domain: dragon
*/

/* ============================================
   CSS CUSTOM PROPERTIES (VARIABLES)
   ============================================ */
:root {
    /* Responsive Spacing Scale */
    --space-4xs: clamp(0.52rem, calc(-0.03vw + 0.53rem), 0.49rem);
    --space-3xs: clamp(0.66rem, calc(0.04vw + 0.64rem), 0.7rem);
    --space-2xs: clamp(0.82rem, calc(0.16vw + 0.77rem), 0.99rem);
    --space-xs: clamp(1.02rem, calc(0.35vw + 0.91rem), 1.4rem);
    --space-s: clamp(1.28rem, calc(0.65vw + 1.07rem), 1.98rem);
    --space-m: clamp(1.6rem, calc(1.11vw + 1.24rem), 2.8rem);
    --space-l: clamp(2rem, calc(1.81vw + 1.42rem), 3.96rem);
    --space-xl: clamp(2.5rem, calc(2.87vw + 1.58rem), 5.6rem);
    --space-2xl: clamp(3.13rem, calc(4.44vw + 1.71rem), 7.92rem);
    --space-3xl: clamp(3.91rem, calc(6.75vw + 1.75rem), 11.19rem);
    --space-4xl: clamp(4.88rem, calc(10.13vw + 1.64rem), 15.83rem);
    
    /* Fluid Typography Scale */
    --text-3xs: clamp(1rem, calc(-0.38vw + 1.08rem), 0.85rem);
    --text-2xs: clamp(1.12rem, calc(-0.35vw + 1.2rem), 0.88rem);
    --text-xs: clamp(1.26rem, calc(-0.23vw + 1.34rem), 1.01rem);
    --text-s: clamp(1.42rem, calc(-0.07vw + 1.44rem), 1.35rem);
    --text-m: clamp(1.6rem, calc(0.19vw + 1.54rem), 1.8rem);
    --text-l: clamp(1.8rem, calc(0.55vw + 1.62rem), 2.4rem);
    --text-xl: clamp(2.02rem, calc(1.09vw + 1.68rem), 3.2rem);
    --text-2xl: clamp(2.28rem, calc(1.84vw + 1.69rem), 4.26rem);
    --text-3xl: clamp(2.56rem, calc(2.89vw + 1.64rem), 5.68rem);
    --text-4xl: clamp(2.88rem, calc(4.34vw + 1.49rem), 7.58rem);
    
    /* Brand Colors */
    --primary-color: #008752;
    --secondary-color: #4d4d4d;
}


/* ============================================
   SPACING UTILITIES
   ============================================ */

/* == Padding Utilities == */

/* All-sides Padding */
.dra_padding-4xs { padding: var(--space-4xs); }
.dra_padding-3xs { padding: var(--space-3xs); }
.dra_padding-2xs { padding: var(--space-2xs); }
.dra_padding-xs { padding: var(--space-xs); }
.dra_padding-s { padding: var(--space-s); }
.dra_padding-m { padding: var(--space-m); }
.dra_padding-l { padding: var(--space-l); }
.dra_padding-xl { padding: var(--space-xl); }
.dra_padding-2xl { padding: var(--space-2xl); }
.dra_padding-3xl { padding: var(--space-3xl); }
.dra_padding-4xl { padding: var(--space-4xl); }

/* Single Side Padding */
.dra_padding-left-4xs { padding-left: var(--space-4xs); }
.dra_padding-left-3xs { padding-left: var(--space-3xs); }
.dra_padding-left-2xs { padding-left: var(--space-2xs); }
.dra_padding-left-xs { padding-left: var(--space-xs); }
.dra_padding-left-s { padding-left: var(--space-s); }
.dra_padding-left-m { padding-left: var(--space-m); }
.dra_padding-left-l { padding-left: var(--space-l); }
.dra_padding-left-xl { padding-left: var(--space-xl); }
.dra_padding-left-2xl { padding-left: var(--space-2xl); }
.dra_padding-left-3xl { padding-left: var(--space-3xl); }
.dra_padding-left-4xl { padding-left: var(--space-4xl); }

.dra_padding-right-4xs { padding-right: var(--space-4xs); }
.dra_padding-right-3xs { padding-right: var(--space-3xs); }
.dra_padding-right-2xs { padding-right: var(--space-2xs); }
.dra_padding-right-xs { padding-right: var(--space-xs); }
.dra_padding-right-s { padding-right: var(--space-s); }
.dra_padding-right-m { padding-right: var(--space-m); }
.dra_padding-right-l { padding-right: var(--space-l); }
.dra_padding-right-xl { padding-right: var(--space-xl); }
.dra_padding-right-2xl { padding-right: var(--space-2xl); }
.dra_padding-right-3xl { padding-right: var(--space-3xl); }
.dra_padding-right-4xl { padding-right: var(--space-4xl); }

.dra_padding-top-4xs { padding-top: var(--space-4xs); }
.dra_padding-top-3xs { padding-top: var(--space-3xs); }
.dra_padding-top-2xs { padding-top: var(--space-2xs); }
.dra_padding-top-xs { padding-top: var(--space-xs); }
.dra_padding-top-s { padding-top: var(--space-s); }
.dra_padding-top-m { padding-top: var(--space-m); }
.dra_padding-top-l { padding-top: var(--space-l); }
.dra_padding-top-xl { padding-top: var(--space-xl); }
.dra_padding-top-2xl { padding-top: var(--space-2xl); }
.dra_padding-top-3xl { padding-top: var(--space-3xl); }
.dra_padding-top-4xl { padding-top: var(--space-4xl); }

.dra_padding-bottom-4xs { padding-bottom: var(--space-4xs); }
.dra_padding-bottom-3xs { padding-bottom: var(--space-3xs); }
.dra_padding-bottom-2xs { padding-bottom: var(--space-2xs); }
.dra_padding-bottom-xs { padding-bottom: var(--space-xs); }
.dra_padding-bottom-s { padding-bottom: var(--space-s); }
.dra_padding-bottom-m { padding-bottom: var(--space-m); }
.dra_padding-bottom-l { padding-bottom: var(--space-l); }
.dra_padding-bottom-xl { padding-bottom: var(--space-xl); }
.dra_padding-bottom-2xl { padding-bottom: var(--space-2xl); }
.dra_padding-bottom-3xl { padding-bottom: var(--space-3xl); }
.dra_padding-bottom-4xl { padding-bottom: var(--space-4xl); }

/* Axis Padding */
.dra_padding-horizontal-4xs { padding-left: var(--space-4xs); padding-right: var(--space-4xs); }
.dra_padding-horizontal-3xs { padding-left: var(--space-3xs); padding-right: var(--space-3xs); }
.dra_padding-horizontal-2xs { padding-left: var(--space-2xs); padding-right: var(--space-2xs); }
.dra_padding-horizontal-xs { padding-left: var(--space-xs); padding-right: var(--space-xs); }
.dra_padding-horizontal-s { padding-left: var(--space-s); padding-right: var(--space-s); }
.dra_padding-horizontal-m { padding-left: var(--space-m); padding-right: var(--space-m); }
.dra_padding-horizontal-l { padding-left: var(--space-l); padding-right: var(--space-l); }
.dra_padding-horizontal-xl { padding-left: var(--space-xl); padding-right: var(--space-xl); }
.dra_padding-horizontal-2xl { padding-left: var(--space-2xl); padding-right: var(--space-2xl); }
.dra_padding-horizontal-3xl { padding-left: var(--space-3xl); padding-right: var(--space-3xl); }
.dra_padding-horizontal-4xl { padding-left: var(--space-4xl); padding-right: var(--space-4xl); }

.dra_padding-vertical-4xs { padding-top: var(--space-4xs); padding-bottom: var(--space-4xs); }
.dra_padding-vertical-3xs { padding-top: var(--space-3xs); padding-bottom: var(--space-3xs); }
.dra_padding-vertical-2xs { padding-top: var(--space-2xs); padding-bottom: var(--space-2xs); }
.dra_padding-vertical-xs { padding-top: var(--space-xs); padding-bottom: var(--space-xs); }
.dra_padding-vertical-s { padding-top: var(--space-s); padding-bottom: var(--space-s); }
.dra_padding-vertical-m { padding-top: var(--space-m); padding-bottom: var(--space-m); }
.dra_padding-vertical-l { padding-top: var(--space-l); padding-bottom: var(--space-l); }
.dra_padding-vertical-xl { padding-top: var(--space-xl); padding-bottom: var(--space-xl); }
.dra_padding-vertical-2xl { padding-top: var(--space-2xl); padding-bottom: var(--space-2xl); }
.dra_padding-vertical-3xl { padding-top: var(--space-3xl); padding-bottom: var(--space-3xl); }
.dra_padding-vertical-4xl { padding-top: var(--space-4xl); padding-bottom: var(--space-4xl); }

/* == Margin Utilities == */

/* All-sides Margin */
.dra_margin-4xs { margin: var(--space-4xs); }
.dra_margin-3xs { margin: var(--space-3xs); }
.dra_margin-2xs { margin: var(--space-2xs); }
.dra_margin-xs { margin: var(--space-xs); }
.dra_margin-s { margin: var(--space-s); }
.dra_margin-m { margin: var(--space-m); }
.dra_margin-l { margin: var(--space-l); }
.dra_margin-xl { margin: var(--space-xl); }
.dra_margin-2xl { margin: var(--space-2xl); }
.dra_margin-3xl { margin: var(--space-3xl); }
.dra_margin-4xl { margin: var(--space-4xl); }

/* Single Side Margin */
.dra_margin-left-4xs { margin-left: var(--space-4xs); }
.dra_margin-left-3xs { margin-left: var(--space-3xs); }
.dra_margin-left-2xs { margin-left: var(--space-2xs); }
.dra_margin-left-xs { margin-left: var(--space-xs); }
.dra_margin-left-s { margin-left: var(--space-s); }
.dra_margin-left-m { margin-left: var(--space-m); }
.dra_margin-left-l { margin-left: var(--space-l); }
.dra_margin-left-xl { margin-left: var(--space-xl); }
.dra_margin-left-2xl { margin-left: var(--space-2xl); }
.dra_margin-left-3xl { margin-left: var(--space-3xl); }
.dra_margin-left-4xl { margin-left: var(--space-4xl); }

.dra_margin-right-4xs { margin-right: var(--space-4xs); }
.dra_margin-right-3xs { margin-right: var(--space-3xs); }
.dra_margin-right-2xs { margin-right: var(--space-2xs); }
.dra_margin-right-xs { margin-right: var(--space-xs); }
.dra_margin-right-s { margin-right: var(--space-s); }
.dra_margin-right-m { margin-right: var(--space-m); }
.dra_margin-right-l { margin-right: var(--space-l); }
.dra_margin-right-xl { margin-right: var(--space-xl); }
.dra_margin-right-2xl { margin-right: var(--space-2xl); }
.dra_margin-right-3xl { margin-right: var(--space-3xl); }
.dra_margin-right-4xl { margin-right: var(--space-4xl); }

.dra_margin-top-4xs { margin-top: var(--space-4xs); }
.dra_margin-top-3xs { margin-top: var(--space-3xs); }
.dra_margin-top-2xs { margin-top: var(--space-2xs); }
.dra_margin-top-xs { margin-top: var(--space-xs); }
.dra_margin-top-s { margin-top: var(--space-s); }
.dra_margin-top-m { margin-top: var(--space-m); }
.dra_margin-top-l { margin-top: var(--space-l); }
.dra_margin-top-xl { margin-top: var(--space-xl); }
.dra_margin-top-2xl { margin-top: var(--space-2xl); }
.dra_margin-top-3xl { margin-top: var(--space-3xl); }
.dra_margin-top-4xl { margin-top: var(--space-4xl); }

.dra_margin-bottom-4xs { margin-bottom: var(--space-4xs); }
.dra_margin-bottom-3xs { margin-bottom: var(--space-3xs); }
.dra_margin-bottom-2xs { margin-bottom: var(--space-2xs); }
.dra_margin-bottom-xs { margin-bottom: var(--space-xs); }
.dra_margin-bottom-s { margin-bottom: var(--space-s); }
.dra_margin-bottom-m { margin-bottom: var(--space-m); }
.dra_margin-bottom-l { margin-bottom: var(--space-l); }
.dra_margin-bottom-xl { margin-bottom: var(--space-xl); }
.dra_margin-bottom-2xl { margin-bottom: var(--space-2xl); }
.dra_margin-bottom-3xl { margin-bottom: var(--space-3xl); }
.dra_margin-bottom-4xl { margin-bottom: var(--space-4xl); }

/* Axis Margin */
.dra_margin-horizontal-4xs { margin-left: var(--space-4xs); margin-right: var(--space-4xs); }
.dra_margin-horizontal-3xs { margin-left: var(--space-3xs); margin-right: var(--space-3xs); }
.dra_margin-horizontal-2xs { margin-left: var(--space-2xs); margin-right: var(--space-2xs); }
.dra_margin-horizontal-xs { margin-left: var(--space-xs); margin-right: var(--space-xs); }
.dra_margin-horizontal-s { margin-left: var(--space-s); margin-right: var(--space-s); }
.dra_margin-horizontal-m { margin-left: var(--space-m); margin-right: var(--space-m); }
.dra_margin-horizontal-l { margin-left: var(--space-l); margin-right: var(--space-l); }
.dra_margin-horizontal-xl { margin-left: var(--space-xl); margin-right: var(--space-xl); }
.dra_margin-horizontal-2xl { margin-left: var(--space-2xl); margin-right: var(--space-2xl); }
.dra_margin-horizontal-3xl { margin-left: var(--space-3xl); margin-right: var(--space-3xl); }
.dra_margin-horizontal-4xl { margin-left: var(--space-4xl); margin-right: var(--space-4xl); }

.dra_margin-vertical-4xs { margin-top: var(--space-4xs); margin-bottom: var(--space-4xs); }
.dra_margin-vertical-3xs { margin-top: var(--space-3xs); margin-bottom: var(--space-3xs); }
.dra_margin-vertical-2xs { margin-top: var(--space-2xs); margin-bottom: var(--space-2xs); }
.dra_margin-vertical-xs { margin-top: var(--space-xs); margin-bottom: var(--space-xs); }
.dra_margin-vertical-s { margin-top: var(--space-s); margin-bottom: var(--space-s); }
.dra_margin-vertical-m { margin-top: var(--space-m); margin-bottom: var(--space-m); }
.dra_margin-vertical-l { margin-top: var(--space-l); margin-bottom: var(--space-l); }
.dra_margin-vertical-xl { margin-top: var(--space-xl); margin-bottom: var(--space-xl); }
.dra_margin-vertical-2xl { margin-top: var(--space-2xl); margin-bottom: var(--space-2xl); }
.dra_margin-vertical-3xl { margin-top: var(--space-3xl); margin-bottom: var(--space-3xl); }
.dra_margin-vertical-4xl { margin-top: var(--space-4xl); margin-bottom: var(--space-4xl); }


/* ============================================
   SIZE & DIMENSION UTILITIES
   ============================================ */

/* Percentage Widths */
.dra-width-100 { width: 100%; }
.dra-width-90 { width: 90%; }
.dra-width-80 { width: 80%; }
.dra-width-70 { width: 70%; }
.dra-width-60 { width: 60%; }
.dra-width-50 { width: 50%; }
.dra-width-40 { width: 40%; }
.dra-width-30 { width: 30%; } /* FIXED: was 15% */
.dra-width-20 { width: 20%; }
.dra-width-10 { width: 10%; }

/* Max Widths in Rem */
.dra-max-width-14 { max-width: 14rem; }
.dra-max-width-13 { max-width: 13rem; }
.dra-max-width-12 { max-width: 12rem; }
.dra-max-width-11 { max-width: 11rem; }
.dra-max-width-10 { max-width: 10rem; }
.dra-max-width-9 { max-width: 9rem; }
.dra-max-width-8 { max-width: 8rem; }
.dra-max-width-7 { max-width: 7rem; }
.dra-max-width-6 { max-width: 6rem; }
.dra-max-width-5 { max-width: 5rem; }
.dra-max-width-4 { max-width: 4rem; }
.dra-max-width-3 { max-width: 3rem; }
.dra-max-width-2 { max-width: 2rem; }
.dra-max-width-1 { max-width: 1rem; }

/* Border Radius Utilities */
.rounded-corners img { border-radius: 2rem; }
.rounded-corner-tl { border-top-left-radius: 2rem; }
.rounded-corner-tr { border-top-right-radius: 2rem; }
.rounded-corner-bl { border-bottom-left-radius: 2rem; }
.rounded-corner-br { border-bottom-right-radius: 2rem; }


/* ==========================================================================
   Site Fonts
   ========================================================================== */

@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('./fonts/raleway-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('./fonts/raleway-800.woff2') format('woff2');
}


@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/OpenSans-Bold.woff2') format('woff2'),
        url('./fonts/OpenSans-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/OpenSans-Regular.woff2') format('woff2'),
        url('./fonts/OpenSans-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* ==========================================================================
   Icon Font
   ========================================================================== */
@font-face {
  font-family: 'pronghorn-icons';
  src: url('fonts/pronghorn-icons.woff2?8inqhq') format('woff2'),
       url('fonts/pronghorn-icons.woff?8inqhq') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

[class^="icon-pc-"], [class*=" icon-pc-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'pronghorn-icons' !important;

  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
vertical-align:middle;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-pc-renewable-energy:before {
  content: "\e900";
}
.icon-pc-commercial:before {
  content: "\e901";
}
.icon-pc-oil-gas:before {
  content: "\e902";
}
.icon-pc-services:before {
  content: "\e903";
}
.icon-pc-agriculture:before {
  content: "\e904";
}
.icon-pc-mining:before {
  content: "\e905";
}
.icon-pc-careers:before {
  content: "\e906";
}
.icon-pc-safety:before {
  content: "\e907";
}
.icon-pc-projects:before {
  content: "\e908";
}
.icon-pc-bars:before {
  content: "\e909";
}
.icon-pc-call-location:before {
  content: "\e90a";
}
.icon-pc-contact-person:before {
  content: "\e90b";
}
.icon-pc-burner-management:before {
  content: "\e90c";
}
.icon-pc-calibration:before {
  content: "\e90d";
}
.icon-pc-construction:before {
  content: "\e90e";
}
.icon-pc-crypto:before {
  content: "\e90f";
}
.icon-pc-commissioning:before {
  content: "\e910";
}
.icon-pc-maintenance:before {
  content: "\e911";
}
.icon-pc-service-maintenance:before {
  content: "\e912";
}
.icon-pc-mobile:before {
  content: "\e913";
}
.icon-pc-location:before {
  content: "\e914";
}
.icon-pc-fibre-optic:before {
  content: "\e915";
}
.icon-pc-quote-outline:before {
  content: "\e916";
}
.icon-pc-call-outline:before {
  content: "\e917";
}
.icon-pc-find-outline:before {
  content: "\e918";
}
.icon-pc-contact-outline:before {
  content: "\e919";
}
.icon-pc-staff-outline:before {
  content: "\e920";
}

/* ICON STYLES AND SIZING */
.icon-wrap i:before {
  background: #F7F7F7;
  border-radius: 50%;
  padding: 32px;
  padding: 2rem;
  color: #FFC430;
  box-sizing: border-box;
}

h3 a, .icon-wrap a {
  text-decoration: none;
}

.ic-xs {
  font-size: var(--text-l) !important;
  text-decoration: none;
}
.ic-sm {
  font-size: var(--text-xl) !important;
  text-decoration: none;
}
.ic-md {
  font-size: var(--text-3xl) !important;
  text-decoration: none;
}
.ic-lg {
  font-size: var(--text-4xl) !important;
  text-decoration: none;
}
.ic-xl {
  font-size: var(--text-4xl) !important;
  text-decoration: none;
}

.icon-row i {
  color: var(--primary-color);
}
.icon-row :nth-child(even) i {
  color: #F6853B;
}

.important-notice .wpb_content_element, .icon-row .wpb_content_element {
  margin-bottom: 0;
}
.notice {
  font-size: var(--text-l);
  text-decoration: none;
  font-family: 'Raleway', sans-serif;
}

/* ==========================================================================
  Custom Scrollbars
   ========================================================================== */

/* width */
::-webkit-scrollbar {
  width: 15px;
 background:#f5f5f5;
}

/* Track */
::-webkit-scrollbar-track {

  border-radius: 6px;
}
 
/* Handle */
::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #ddd; 
  width:0;
}
#shiftnav::-webkit-scrollbar{width:5px;}

#shiftnav-main::-webkit-scrollbar {
  width: 5px;}

div#shiftnav-locations-phone::-webkit-scrollbar {width:5px;}
.shiftnav-inner::-webkit-scrollbar , .shifthomenav::-webkit-scrollbar {
    display: none;}
.shiftnav .shiftnav-panel-close i{font-size:1rem!important;color:#777!important;}

.shiftnav .shiftnav-panel-close{background-color:rgba(204,204,204, 0.1)!important;}

/* ==========================================================================
   Default stylings from HTML5 Boilerplate
   ========================================================================== */

html{background:var(--primary-color);}
body{background:#fff;}
   
  body{overflow-x:hidden!important;}
html body{overflow:unset!important;}
*,*:focus,*:hover{
    outline:none!important; /***Remove outline in Chrome/*/
}   

/* Apply a natural box layout model to all elements - http://paulirish.com/2012/box-sizing-border-box-ftw/ */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

*,*:focus,*:hover{
    outline:none!important; /***Remove outline in Chrome/*/
}

html{font-size:16px;}
/* Using rem font sizing (Root em’s) with fallback to px for ie8 and below - http://snook.ca/archives/html_and_css/font-size-with-rem */
body { margin: 0; font-size: 16px; font-size: 1rem; line-height: 1.5; }

::-webkit-selection { background: #5784FE; color: #fff; text-shadow: none; }
::-moz-selection { background: #5784FE; color: #fff; text-shadow: none; }
::selection { background: #5784FE; color: #fff; text-shadow: none;cursor:pointer;}

a {
  color: #333;
  text-decoration: underline;
  -webkit-tap-highlight-color: transparent; /* for removing the highlight on tap */
}

a:visited { color: #666; }
 a:hover { color: #b40101;}
#primary a:hover{text-decoration:none; }

menu { padding: 0; }

td { vertical-align: top; }

/* ==========================================================================
   Basic page styles
   ========================================================================== */

body {
	margin: 0 auto;
	padding: 0;
	font: 16px/1.5 'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 1rem;
	font-style: normal;
	font-weight: 400;
	color: #333;
	text-align: left;
	
}

/* Set the default behavior for touch-based browsing in IE10 on devices running Windows 8 */
canvas {
	-ms-touch-action: double-tap-zoom;
}

/* Make sure videos and embeds fit their containers */
embed, iframe, object, video {
	max-width: 100%;
}

.entry-content .twitter-tweet-rendered {
	max-width: 100% !important; /* Override the Twitter embed fixed width */
}

/* Responsive images */
img {
	border: 0;
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

.entry-content img,
.comment-content img,
.widget img {
	max-width: 100%; /* Fluid images for posts, comments, and widgets */
}

img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}

img.size-full,
img.size-large,
img.header-image,
img.wp-post-image {
	max-width: 100%;
	height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}

img.wp-smiley,
.rsswidget img {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Raleway', sans-serif;
	
	font-weight: 800;
	color: #434343;
	margin-top: 0;
	 word-break: keep-all;
	 -moz-hyphens:none;
	-ms-hyphens:none;
	-webkit-hyphens: none;
	hyphens:none;
	text-transform:uppercase;
}

h1 {
	margin-bottom: 10px;
	margin-bottom: 0.625rem;
	font-size: 48px;
	font-size: var(--text-xl);
	line-height: 1.25;
}

h2 {
	margin-bottom: 8px;
	margin-bottom: .5rem;
	font-size: 36px;
	font-size: var(--text-l);
	line-height: 1.1666;
}

h3 {
	margin-bottom: 6px;
	margin-bottom: 0.375rem;
	font-size: 28px;
	font-size: var(--text-m);
	line-height: 1.2857;
}

h4 {
	margin-bottom: 5px;
	margin-bottom: 0.3125rem;
	font-size: 24px;
	font-size: var(--text-s);
	line-height: 1.25;
}

h5 {
	margin-bottom: 5px;
	margin-bottom: 0.3125rem;
	font-size: 20px;
	font-size: var(--text-xs);
	line-height: 1.25;
}

h6 {
	margin-bottom: 5px;
	margin-bottom: 0.3125rem;
	font-size: 14px;
	font-size: .875rem;
	line-height: 1.2142;
}

.text-shadow{text-shadow: 2px 2px 2px var(--secondary-color);}

hr {
	background-color: #eee;
	border: 0;
	height: 1px;
	margin: 24px;
	margin: 1.5rem;
}
#primary fieldset{border:1px solid #ddd;padding:20px;}

ul {
	list-style: none outside none;
	padding-inline-start:0;
}
#primary ul li{list-style:disc outside;}
#primary .center-text ul li{list-style:disc inside;}

p, ol, ul, dl, address {
	margin: 0 0 24px 0;
	margin: 0 0 1.5rem 0;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.8;
}

ul ul, ul ol, ol ol, ol ul {
	margin-bottom: 0;
}

dt {
	font-style: normal;
	font-weight: 700;
}

figure {
	margin: 1rem 0;
	margin: 16px 0;
}

b, strong {
	font-weight: 700;
}

em {
	font-style: italic;
}

ins {
	background: none repeat scroll 0 0 #FFF9C0;
	text-decoration: none;
}

a {
	color: #333;
	outline: none;
}

a:visited {
	color: #666;
}

a:focus {
	outline: thin dotted;
	color: var(--primary-color);
}

a:hover, a:active {
	outline: 0;
	color: var(--primary-color);
}

.alignleft {
	display: inline;
	float: left;
	margin: 0 20px 16px 0;
	margin: 0 1.25rem 1rem 0;
}

.alignright {
	display: inline;
	float: right;
	margin: 0 0 16px 20px;
	margin: 0 0 1rem 1.25rem;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

blockquote {
	border-left: 5px solid #ddd;
	margin: 0 0 18px 20px;
	margin: 0 0 1.125rem 1.25rem;
	padding: 0 0 0 16px;
	padding: 0 0 0 1rem;
}
blockquote{position:relative;}

blockquote p{display:inline;}

blockquote:before {
    color: #ddd;
    content: "\201C";
    font-size: var(--text-2xl);
    line-height: 0.1em;
    vertical-align: -0.4em;
}

blockquote:after {
    color: #ddd;
    content: "\201D";
    font-size: var(--text-2xl);
    line-height: 0.1em;
    vertical-align: -0.4em;
}

blockquote.pull-right {
	border-left: 0 none;
	border-right: 5px solid #333;
	margin: 0 20px 18px 0;
	margin: 0 1.25rem 1.125rem 0;
	padding: 0 16px 0 0;
	padding: 0 1rem 0 0;
	float: none;
}

blockquote p {

	font-style: italic;
	font-weight: 400;
	
	margin-bottom: 0;
}

blockquote.pull-right p,
blockquote.pull-right small {
	text-align: right;
}

blockquote cite:before {
	content: "\2014 ";
}

blockquote cite {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.125;
	color: #999;
	display: block;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

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

code, pre {
	border-radius: 3px;
	color: #555;
	font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
	font-size: 12px;
	font-size: 0.75rem;
	padding: 0 3px 2px;
	padding: 0 0.1875rem 0.125rem;
	overflow: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}

code {
	background-color: #f7f7f9;
	border: 1px solid #e1e1e8;
	padding: 2px 4px;
	padding: 0.125rem 0.25rem;
}

pre {
	background-color: #fafafa;
	border-color: #ddd;
	border-style: solid;
	border-width: 1px 1px 1px 11px;
	margin: 1.7rem 0 1.7rem 0.3rem;
}

abbr,
dfn,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

.wp-caption {
	max-width: 100%; /* Keep wide captions from overflowing their container. */
	padding: 4px;
	padding: 0.25rem;
}

.wp-caption .wp-caption-text,
.gallery-caption,
.entry-caption {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: italic;
	font-weight: 400;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	color: #777;
	text-align: center;
}

img.wp-smiley, .rsswidget img {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

.entry-content dl.gallery-item {
	margin: 0;
}

.gallery-columns-1 .gallery-item a {
	max-width: 100%;
	width: auto;
}

.gallery .gallery-icon img {
	height: auto;
}

.gallery {
  clear: both;
  margin: 0 auto;
}

.gallery:before,
.gallery:after {
	content: "";
	display: table;
}

.gallery:after {
	clear: both;
}

#primary .entry-content [id^="gallery-"] img {
	border: none;
}

/* Text meant only for screen readers */
.assistive-text {
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.menu-toggle, button, input {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.25;
	margin: 0;
	font-size: 100%;
	vertical-align: middle;
}

.menu-toggle, button, input {

	line-height: normal;
}

.menu-toggle::-moz-focus-inner,
button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	cursor: pointer;
	-webkit-appearance: button;
}

input[type=checkbox]:focus
{
    outline: 1px solid rgba(0, 0, 0, 0.2);
}

input[type=checkbox]
{
    background-color: #DDD;
    border-radius: 2px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 17px;
    height: 17px;
    cursor: pointer;
    position: relative;
   
}

input[type=checkbox]:checked
{
    background-color: var(--primary-color);
    background: var(--primary-color) url("data:image/gif;base64,R0lGODlhCwAKAIABAP////3cnSH5BAEKAAEALAAAAAALAAoAAAIUjH+AC73WHIsw0UCjglraO20PNhYAOw==") 3px 3px no-repeat;
}

input[type="button"] {
	width: auto;
}

 .alm-btn-wrap .alm-load-more-btn {
  
	font-family: 'Raleway', sans-serif;
    background-color: #008752!important;	
 }
.careers-template-default .collapseomatic{width:auto;}

.careers-template-default .colomat-close:after, .careers-template-default .collapseomatic:after{content:'';}

.d-row.careers-content a {text-decoration:none;font-weight:bolder;}

/*SLIDER/*/

.safety-logos-slider {
  height: auto;
  max-width: 500px;
  position: relative;
  background-color: rgba(77, 77, 77, 0.4);
  padding: 0 1% !important;
  display: inline-block;
}

.safety-logos-slider img {
  width: 100%;
}

/*CAREERS TEMPLATE/*/

#more-positions{ user-select: none!important; /* supported by Chrome and Opera */
   -webkit-user-select: none; /* Safari */
   -khtml-user-select: none; /* Konqueror HTML */
   -moz-user-select: none; /* Firefox */
   -ms-user-select: none; /* Internet Explorer/Edge */}

.careers-wrap{padding-top:30px;}

.careers-table {
  border-collapse: collapse;
  width: 100%;
}

.careers-table tr th {
  padding: 5px;
  border-bottom: 3px solid #ddd;
  font-weight: bolder;
}

.careers-table tr {
  border-bottom: 1px solid #f2f2f2;
}

.careers-table tr:last-child {
  border: 0;
}

.careers-table tr td{padding:10px 5px;vertical-align:middle;}

tr:nth-child(even) {
  background: #f9f9f9;
}
tr:nth-child(odd) {
  background: #FFF;
}

.apply-now {
  text-align: center;
}

.careers-title a {
  text-decoration: none;
}

.careers-template-default.single-careers .collapseomatic:after{position:relative;content:'\f067';color:#fff;font-family:'FontAwesome';}
.careers-template-default.single-careers .colomat-close:after{content:'\f068';color:#fff;font-size:var(--text-s);font-family:'FontAwesome';}
a#projects-jump:after {content:"\f078";padding-left:5px;font-family:'FontAwesome';}

button.alm-load-more-btn.more.loading, button.alm-load-more-btn, .menu-toggle,
#primary .btn, #footercontainer .btn, #primary .careers-btn,
input[type="submit"] {
  display: inline-block;
  padding: 10px 40px;
  margin-bottom: 0;
  font-size: 24px;
  font-size: var(--text-xs);
	line-height: 1.25;
	color: #fff;
	border-radius:50px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-color: var(--primary-color);	
	border: 0;
	font-weight:normal;
	font-family: 'Raleway', sans-serif;
	text-transform:uppercase;
}

::-webkit-file-upload-button {
  display: inline-block;
  padding: 10px 30px;
  margin-bottom: 0;
  font-size: 24px;
  font-size: var(--text-xs);
  line-height: 1.25;
  color: #fff;
  border-radius: 50px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
	background-color: #008752;	
	border: 0;
	font-family: 'Raleway', sans-serif;
	text-transform:uppercase;
}

::-ms-browse {
 display: inline-block;

	padding:10px 40px;
	margin-bottom: 0;
	font-size: 24px;
	font-size: var(--text-xs);
	line-height: 1.25;
	color: #fff;
	border-radius:50px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-color: #008752;	
	border: 0;
	font-family: 'Raleway', sans-serif;
	text-transform:uppercase;

}

.idpc-button.btn{margin:20px 0;}

.menu-toggle, #primary a.btn, .careers-btn {
	color: #fff;
	text-decoration: none;
}

.menu-toggle:hover,
#footercontainer .btn:hover,#footercontainer.active .btn,
#footercontainer .btn.disabled,
#primary .btn:hover,
 .careers-btn:hover,
#primary .btn:active,
#primary .btn.active,
#primary .btn.disabled,
#primary .btn[disabled] {
  background-color: #434343;
}

.menu-toggle:hover,
#primary #primary .btn:hover,
input[type="submit"]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #434343;
}

.menu-toggle:focus,
#primary .btn:focus,
input[type="submit"]:focus {
	outline: thin dotted #333;
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}

#primary .btn.disabled, #primary .btn[disabled] {
	cursor: default;
	background-color: #dad8da;
	background-image: none;
	opacity: 0.65;
	filter: alpha(opacity=65);
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

#primary .btn.disabled:active, #primary .btn[disabled]:active {
  top: 0;
}

button.btn::-moz-focus-inner,
input[type="submit"].btn::-moz-focus-inner {
  padding: 0;
	border: 0;
}

#primary .btn-large,
input[type="submit"].btn-large {
	padding: 10px 15px;
	padding: 0.625rem 0.9375rem;
	font-size: 20px;
	font-size: var(--text-xs);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.btn-small,
input[type="submit"].btn-small {
	padding: 5px 9px;
	padding: 0.3125rem 0.5625rem;
	font-size: 13px;
	font-size: 0.8125rem;
}

/* Form fields */
input[type="text"],
input[type="tel"],
input[type="password"],
input[type="email"],
input[type="url"],
textarea, select, input[type="search"] {

    background: #fff;
padding: 15px 8px;
outline: none;

color: #777777;
display: block;
margin-bottom: 20px;
width: 100%;
margin: 5px 0 0 0;
border: 1px solid #e8e8e8;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
-moz-box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
}

.quote-form label{display:inline-block;padding-bottom:10px;}

.quote-form .d-row{padding-bottom:20px;}

input[type="date"] {

    background: #fff;
padding: 15px 8px;
outline: none;

color: #777777;
display: block;
margin-bottom: 20px;

margin: 5px 0 0 0;
border: 1px solid #e8e8e8;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
-moz-box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
}

select {
	max-width: 100%;
}

/* HTML5 galleries */
.gallery .gallery-item {
	float: left;
	margin: 10px 1% 0;
	text-align: center;
}

.gallery-columns-1 .gallery-item {
	width: 100%;
	margin: 10px 0 0;
}

.gallery-columns-2 .gallery-item {
	width: 47.5%
}

.gallery-columns-3 .gallery-item {
	width: 31%
}

.gallery-columns-4 .gallery-item {
	width: 22.5%
}

.gallery-columns-5 .gallery-item {
	width: 17.75%
}

.gallery-columns-6 .gallery-item {
	width: 14%
}

.gallery-columns-7 .gallery-item {
	width: 12%
}

.gallery-columns-8 .gallery-item {
	width: 10.25%
}

.gallery-columns-9 .gallery-item {
	width: 9%
}

/* Small headers */
.archive-title,
.page-title,
.entry-content th,
.comment-content th {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: normal;
	font-weight: 700;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 2;
	text-transform: uppercase;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* ==========================================================================
   Site specific styles including Page content
   ========================================================================== */
   #breadcrumbs a{text-decoration:none;color:#bbb;} 

#breadcrumbs a, #breadcrumbs {font-family:'raleway', sans-serif;
text-transform:uppercase;}

#breadcrumbs{color:#4D4C4D;}

   /*/HOME PAGE/*/
   
   .awards-badges{position:absolute;bottom:0;right:0;}

   /*/HERO SLIDER /*/

   .slider-x-lead-title:after {width: 115%;
    background: rgba(0, 136,82, 0.7);
    content: '';
    position: absolute;
    top: 0;
    left: -10%;
    height: 100%;
    z-index: -1;
    -ms-transform: skew(-30deg, 0deg);
    -webkit-transform: skew(
-30deg
, 
0deg
);
    transform: skew(
-30deg
, 
0deg
);
}
#primary .slider-x-lead-title{
 padding: 20px 20px 20px 20px!important;position:absolute;left:0!important;top:20%;width:60%;text-shadow:2px 2px 2px #222;font-style:italic;color:#fff!important;}

#primary  .qcld_hero_content_area{height:100%;top:0!important;margin:0!important;}

#primary .slider-x-item-title {
  position: absolute;
  top: 40%;
  width: 70%;
  text-transform: uppercase;
}

#primary .slider-x-item-title p {text-align:left;text-shadow:2px 2px 2px #222;color:#fff;}

  .ms-slide-layers {max-width:100vw!important;left:0!important;}

.ms-view.ms-fade-view.ms-grab-cursor {margin:0 auto!important;}

.awards-badges{position:absolute;bottom:0;right:0;}

.ms-layer.title-shape-bg {
   
    position: relative;
    padding: 20px 20px 20px 60px;position:absolute;left:0!important;
 
}
.ms-layer.title-shape-bg:before {
    width:115%;
     background:rgba(0, 136,82, 0.7);
     content:'';
       position: absolute;
    top:0;
    left:-10%;
    height:100%;
    z-index:-1;
      -ms-transform: skew(-30deg, 0deg);
    -webkit-transform: skew(-30deg, 0deg);
    transform: skew(-30deg, 0deg);
} 
   
/*   .ms-inner-controls-cont {max-width:100vw!important;}

.ms-view.ms-basic-view.ms-grab-cursor {width:100%!important;max-width:100vwimportant;left:0!important;}

.ms-slide-layers {max-width:100vw!important;left:0!important;}

.ms-view.ms-fade-view.ms-grab-cursor {left:0!important;}

.awards-badges{position:absolute;bottom:0;right:0;}

.ms-view.ms-fade-view.ms-grab-cursor {left:0!important;}

.ms-layer.title-shape-bg {
   
    position: relative;
    padding: 20px 20px 20px 60px;position:absolute;left:0!important;
 
}
.ms-layer.title-shape-bg:before {
    width:115%;
     background:rgba(0, 136,82, 0.7);
     content:'';
       position: absolute;
    top:0;
    left:-10%;
    height:100%;
    z-index:-1;
      -ms-transform: skew(-30deg, 0deg);
    -webkit-transform: skew(-30deg, 0deg);
    transform: skew(-30deg, 0deg);
}/*/

.slider-home-page .wpb_content_element{margin-bottom:0;}

.service-title .clients-first  {
       width:100%;
    padding: 20px 20px 20px 60px;position:absolute;left:0!important;
    background:transparent;
    display:block;
    z-index:1;
    color:#008852;
    font-weight:bolder;
 
}
#headercontainer .topmenu, #primary .service-title{overflow:hidden!important;}

.service-box{position:relative;}

.service-box h2{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);color:#fff;text-shadow:2px 2px 2px #111;}

.service-title h3{ color:#008852;}

/*.service-title .clients-first:after {
    width:115%;
  
     background:#F4F4F4;
     content:'';
       position: absolute;
    z-index:-1;
    top:0;
   right:-10%;
height:100%!important;
 
      -ms-transform: skew(-30deg, 0deg);
    -webkit-transform: skew(-30deg, 0deg);
    transform: skew(-30deg, 0deg);
}/*/

.service-title .clients-first:before {
    width:10%;
  
     background:#F4F4F4;
     content:'';
       position: absolute;
    z-index:-1;
    top:0;
   left:0;
height:100%!important;
 
      -ms-transform: skew(-30deg, 0deg);
    -webkit-transform: skew(-30deg, 0deg);
    transform: skew(-30deg, 0deg);
}
.service-title .clients-first:after {
    width:95%;
  
     background:#F4F4F4;
     content:'';
       position: absolute;
    z-index:-1;
    top:0;
   right:0;
height:100%!important;
}

.service-icons span.ic-sc{position:relative;}

.service-icons .collapseomatic:after{display:none;}
.service-icons .collapseomatic{background-image:none;padding:0;}

.service-icons .services-text .collapseomatic_content{display:inline;} 

.service-icons .wpb_content_element{margin-bottom:10px;}

.service-icons{margin-bottom:30px;}

@media only screen and (max-width: 767px) {
	.service-icons{margin-bottom:0;}
	.service-icons .icol-col.wpb_column.vc_column_container.vc_col-sm-4 {margin-bottom:30px}
	
}

.service-icons .services-text{padding-bottom:30px;}
.service-icons .btn{position:absolute;bottom:0;transform:translateX(-50%);left:50%;}

#primary .service-icons .services-text .wpb_wrapper p{display:inline;}

.service-icons span.ic-sc:hover {

    transition: 0.5s;
    background: linear-gradient(
90deg
, var(--c1, #eee), var(--c2, #ccc) 51%, var(--c1, #dddd)) var(--x, 0)/ 200%;
    color: #777;
    /* text-shadow: 0px 0px 10px rgb(0 0 0 / 20%); */
    box-shadow: 0 0 20px #eee;

    position:relative;
    z-index:1;
}

#service-top-img{position:relative;}

#service-top-img:after{visibility:visible!important;display:block;content:'';position:absolute;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0, 0.8);width:100%;height:100%;}

details{cursor: pointer;display:flex;flex-direction:column;padding:0 2rem;}

details.green-boxes h3 {
    background: #f9f9f9;
    padding: 1.5rem 5rem 1.5rem 2rem;
    width: 100%;
    position: relative;
    display: flex;
    align-items:start;
    justify-content: center;
   clip-path: polygon(1% 0, 100% 0, 99% 100%, 0% 100%);
    
}
details.green-boxes h3 , details.green-boxes h4{
    color: var(--secondary-color);
    text-align: center;
}

summary::-webkit-details-marker {
    display: none
}
details.bottom-line {border-bottom:2px solid #eee;}
.styled{padding:2rem;margin:0 0 0.5rem 0}
.styled h3:after, .styled h4:after {
    cursor: pointer;
    content: '';
    border-right: 4px solid #7c7c7c;
    border-bottom: 4px solid #7c7c7c;
    position: absolute;
    right: 3rem;
    height: 1.0rem;
    width: 1.0rem;
    transform: rotate(45deg) translatey(-.1em);
    transition: transform .3s ease;
}

.styled[open] summary h4:after,
.styled[open] summary h3:after {
    transform: rotate(-135deg) translatey(-.1em);
}

.green-boxes h3:after, .green-boxes h4:after {
    cursor: pointer;
    content: '';
    border-right: 4px solid var(--secondary-color);
    border-bottom: 4px solid var(--secondary-color);
    
}

details[open].styled h3:after {
    transform: rotate(-135deg);
}

.green-boxes .details{background:#fff;padding:2rem;box-shadow:2px 2px 12px #eee;transform: skewX(1deg);}

.green-boxes .details > * {
  transform: skewX(-1deg);
}

/* ==========================================================================
   Careers
   ========================================================================== */

.d-row.careers-headings{padding:10px 0;border-bottom:#eee 4px solid;margin:20px 0;font-weight:bolder;}

.d-row.careers-content{padding:10px 0;border-bottom:1px solid #f1f1f1;margin:10px 0;}

.trade-form .d-row{padding:20px 0;}

.trade-form fieldset{margin:20px 0;}

.trade-form legend{font-weight:bolder;font-size:var(--text-s);}

.test{width:80vw;}

/* ==========================================================================
   PARTNERS
   ========================================================================== */

#primary .partners-bg{position:relative;}
.partners-bg h4:after {content:'';border-top:4px solid #333;;width:20%;display:block;margin:10px auto;}

#primary .partners-bg:after{content:'';background:rgba(255,255,255,0.8);position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;visibility: visible;}

/* ==========================================================================
   Grid System
   ========================================================================== */
   .flex-grid{display:flex; flex-wrap:wrap;}

   .flex-padding {padding:2%;box-sizing:border-box;}

/* ==========================================================================
	 Timeline
	  ========================================================================== */

	  .story-img.wp-post-image{width:300px!important}

   .ctl-label-big, .ctl-title{font-family:'Raleway', sans-serif!important;;}
   .ctl-content {align-items:center;}
.ctl-content p{font-family:'Open Sans', Helvetica, Arial, sans-serif!important;}
   
   /* ==========================================================================
	 Staff Management Profiles
	  ========================================================================== */

	  .image--wrap {
		opacity: 0;
		transform: translateY(20px);
		transition: all 0.5s ease-out;
	}
	.visible--image {
		opacity: 1;
		transform: translateY(0);
	}
   
	  .top--triangle{position:relative;}
   
		   .top--triangle:before {
			   z-index:99999;
			   margin-top:-4.4vh;
			   content: '';
			   display: block;
			   width: 0;
			   height: 0;
			   border-left: 50vw solid transparent;
			   border-right: 50vw solid transparent;
			   border-bottom: 4.9vh solid #0A6340;
			   position: absolute;
			   top: 0;
			   left: 50%;
			   transform: translateX(-50%);
			   overflow:hidden;
		   }

   .image--wrap {position:relative;}
   
   .linkedin--link{position:absolute;right:0;top:0;margin:1vw;font-size:var(--text-xl);color:#fff;}
				   
	
   
   .linkedin--link i:hover{color:#fff;border-radius:50%;background:#000;padding:20px;}
   
   .management--profiles h4 {font-size:var(--text-xl);}
   
   .management--profiles h4 span {display:block;font-size:var(--text-l);color:var(--primary-color);}
   
   .management--profiles span{font-weight:700;text-transform:uppercase;}

/* ==========================================================================
   Services Page
   ========================================================================== */
   .mejs-container, .mejs-container .mejs-controls, .mejs-embed, .mejs-embed body{background: #0A6340!important;}
   
   .mejs-controls .mejs-time-rail .mejs-time-current {background: #5b977f!important;}

   #primary .grid-container:before{display:none;}

   #grid1 { background-color: #1CEC9A; }
   #grid2 { background-color: #1AC481; }
   #grid3 { background-color: #0AA76A; }
   #grid4 { background-color: #088D58; }
   .grid-item {
    max-height:400px;
   
    text-align: center;
    color: #222;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 1.5em;
    font-family: Arial, sans-serif;
    padding: 20px; /* Add padding for better spacing */
    box-sizing: border-box;
}
.grid-item span{color:#fff;font-weight:bolder}

.grid-item .counter {
    font-size: var(--text-l); /* Larger size for the counter */
}

   #servicesTitleWrap .wpb_content_element{z-index:2;}
#servicesTitleWrap:after{z-index:1;}

#servicesTitleWrap {
	position: relative; /* Ensure the parent element has relative positioning */
	height: 100%;
	/* z-index: 1!important; */
   }
   
   #servicesTitleWrap:before {
	   content: '';
	   position: absolute;
	   bottom: 0;
	   left: 0;
	   right: 0;
	   height: 100%;
	   background-image: url('images/background-services.svg');
	   background-size: contain;
	   background-repeat: no-repeat;
	   background-position: bottom; /* Ensure the image is positioned at the bottom */
	   z-index: 99; /* Keep the z-index low if layering is not a concern */
	   display: block;
	   visibility: visible;
   }
   
   #servicesTitleWrap .wpb_column{z-index:999}

.outlined-text h3 {text-transform:lowercase;color:transparent;-webkit-text-stroke:1px #fff;font-size:var(--text-4xl);}

.outlined-text.green h3{
      
    -webkit-text-stroke: 1px #0a6340!important;
    }

.core-services h4{color:#fff;text-transform:lowercase;font-size:var(--text-xl);position:relative;z-index:9999;}

.page-id-26 #headercontainer {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255,255,255,0.8)
}

.servicesTxt{position:absolute;top:20%;left:50%;transform:translate(-50%,-50%);width:100%;}
.servicesBg{align-self:flex-end;}

.awardWinning h3 {padding:10% 0;text-shadow:2px 2px 2px rgba(0,0,0,.35);}

.ScrollPrompt{position:absolute;bottom:0;left:50%;}

.scroll-prompt {
	z-index: 998;
	left: 50%;
	margin-left: -80px;
	width: 160px;
	height: 160px;
}

	.scroll-prompt-arrow-container {
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -18px;
		animation-name: bounceAnimation;
		animation-duration: 1.5s;
		animation-iteration-count: infinite;
	}
	.scroll-prompt-arrow {
		animation-name: opacityAnimation;
		animation-duration: 1.5s;
		animation-iteration-count: infinite;
	}
	.scroll-prompt-arrow:last-child {
		animation-direction: reverse;
		margin-top: -6px;
	}
	.scroll-prompt-arrow > div {
		width: 36px;
		height: 36px;
		border-right: 8px solid #1CEC9A;
		border-bottom: 8px solid #1CEC9A;
		transform: rotate(45deg) translateZ(1px);
	}

@keyframes opacityAnimation {
	0% {
		opacity: 0;
	}

	10% {
		opacity: 0.1;
	}

	20% {
		opacity: 0.2;
	}

	30% {
		opacity: 0.3;
	}

	40% {
		opacity: 0.4;
	}

	50% {
		opacity: 0.5;
	}

	60% {
		opacity: 0.6;
	}

	70% {
		opacity: 0.7;
	}

	80% {
		opacity: 0.8;
	}

	90% {
		opacity: 0.9;
	}

	100% {
		opacity: 1;
	}
}

@keyframes bounceAnimation {
	0% {
		transform: translateY(0);
	}

	10% {
		transform: translateY(3px);
	}

	20% {
		transform: translateY(6px);
	}

	30% {
		transform: translateY(9px);
	}

	40% {
		transform: translateY(12px);
	}

	50% {
		transform: translateY(15px);
	}

	60% {
		transform: translateY(18px);
	}

	70% {
		transform: translateY(21px);
	}

	80% {
		transform: translateY(24px);
	}

	90% {
		transform: translateY(27px);
	}

	100% {
		transform: translateY(30px);
	}
}

#servicesTitleWrap{position:relative;height:100vh;}

#servicesTitleWrap:after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;visibility:visible!important;background:rgba(0,135,82,.5);overflow:unset}

 #servicesTitleWrap .wpb_column {display:flex;height: 100vh;align-items: flex-end;}

#servicesTitleWrap .wpb_content_element{

    margin-bottom:0;padding-bottom:0;
}

/*#servicesTitleWrap h1{color:#fff;font-size:6rem;text-shadow:2px 2px 2px rgba(0,0,0,.35);font-style:italic;}/*/

#servicesTitleWrap h1{color:rgba(255,255,255,0.2);font-size:var(--text-3xl);font-style:italic;-webkit-text-stroke: 2px #fff; }

#servicesTitleWrap h2{font-size:var(--text-l);color:#1CEC9A;}

.service-icons span.ic-sc:hover:after{content:"VIEW";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);color:#fff;z-index:5;background:rgba(120,120,120,0.4);padding:5px 10px;border-radius:50px}  

.service-icons.vc_row-has-fill>.vc_column_container>.vc_column-inner{

    padding-top:0!important
}

.service-icons span.ic-sc {background:#F2F2F2;display:inline-block;border-radius:50%;padding:30px;border:8px solid #ddd;color:#008852;}

.services_button {
    width: 100%;
 border:0;
    padding-bottom: 10px;
    position:relative;
	text-align:left;
}

.services_button:before{
    border-bottom: 5px solid #ddd;
    content: "";
    display: block;
    width: 90%;
    padding-top: 10px;
    position:absolute;left:0;bottom:-10px;
}
h1.title-border-light {color:#ffff;text-shadow:2px 2px 2px var(--secondary-color);display:relative;}
h1.title-border-light:after{border-bottom:5px solid #FFC430;width:20%;content:'';display:block;margin:0 auto;margin-top:20px;}

#primary #service-top-img.vc_row.vc_row-flex::before,
#primary #service-top-img.vc_row.vc_row-flex::after {
  display: block!important;
}

#service-top-img{position:relative;}
#service-top-img:before {display:block!important;position:absolute!important;background:rgba(0,0,0,0.2);content:'';top:0;right:0;left:0;bottom:0;width:100%;}
	  
#primary .services-wrap a.btn{
background-color:rgba(0,135,82, 0.9);margin:10px;border:1px solid #075936;padding:15px 40px;}

#primary .services-wrap a.btn:hover {background-color:rgba(77,77,77, 0.8);border:1px solid #111;}

.services-wrap p {font-size:1.5rem;color:#fff;text-shadow:2px 2px 2px var(--secondary-color);margin:5px 0;padding:0 10px;}

.page-template-full-width-no-title .site-content{padding-top:0;}

.services-wrap .wpb_text_column.wpb_content_element {margin-bottom:0;}

.colomat-hover{text-decoration:none;color:#008852;}

.info-text{height:100%;padding-bottom:30px;}

#primary .info-text .btn{position:absolute;bottom:0;transform:translate(-50%, -50%);}

#primary .info-text .btn:active{position:absolute;top:auto;}

   .home-info .ic-sc span{color:#095738;font-size:var(--text-4xl)!important;}
   
 .title-line-left:after {

    border-bottom: 5px solid #FFC430;
    content: "";
    display: block;
    width: 10%;
    padding-top: 10px;
}

.title-line{position:relative;}
.title-line:after {    border-bottom: 5px solid #FFC430;
    content: "";
    display: block;
    margin: 0 auto 20px;
    width: 10%;
    padding-top: 10px;}
	
	.green.title-line-left:after, .green.title-line:after{
	border-bottom: 5px solid #008852;
	}

	#background-img {
  background-image: url("images/background-home.svg"), linear-gradient(#fff 0%, #f1f1f1 50%, #f1f1f1 100%); /* W3C */
    background-size:cover;background-repeat:no-repeat;
	background-position: center;
}

/*PAGE TEMPLATE HEADER/*/
 .set-thumbs{
	background:white;
	box-sizing:border-box; 
	height:100%;
	position:relative;
 	background-position: 50% 50%;
    background-repeat:   no-repeat;
    background-size:     cover;
	overflow:hidden;
	
}
   
    .set-image{
	width:100%;
	height:500px;
	overflow:hidden;
	text-align:center;
	position:relative;
	
}

.set-image:after{background:rgba(0,0,0, 0.7);width:100%;top:0;left:0;right:0;right:0;
	height:100%;content:'';position:absolute;}
.set-image h1{
	white-space: initial;
	display:inline-block;
	position: absolute;
	z-index:999;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-style:italic;
	color:#fff;
	font-size: var(--text-3xl);
	text-shadow: 1px 1px 20px #444!important;
	padding:10px 15px;
	text-transform:uppercase;
}
#set:before{
width: 100%!important;
    height: 100%!important;
    content: "";
    position: absolute!important;
    left: 0!important;
    top: 0!important;
    pointer-events: none!important;
    z-index: 1!important;
     background: rgba(255,255,255,0.1);	   	   
}

.set-image h1:after{

	content: ""; 
    display: block;
	margin:0 auto;
    width: 20%;
    padding-top: 10px; 
    border-bottom: 5px solid #ffc430; 	
}	  

  .set-image h1 a {
    color: #fff;
    padding: 15px 20px;
    text-decoration: none;
    display: inline-block;
    width: 100%;
    margin: 0 auto;
    border-radius: 50px;
  } 
	
	.set-image h1 a:hover{background:#333;color:#fff;border:2px solid #111;}
		/*.set-image h1 a:hover{    background: #8a5bc3;
    color: #fff;
    border: 2px solid #4e2a7a;
    text-shadow: 2px 2px 2px #4e2a7a;/*
}/*/
	   


   .set-image img{width:100%;max-width:100%!important;height:auto;
   position: relative;
  top: 50%;
  transform: translateY(-50%);
   }

/*FLICKITY SLIDER News & Events/*/

.carousel-cell {
  width: 50%;
background-size:cover;background-position: 50% 50%;
    background-repeat:   no-repeat;
    text-align:center;transform: scale(1.0);background-color:#fff;
	height:350px;display:flex; flex-direction:column; flex:1;
	}
	
	#primary .flickity-button{background:rgba(0, 136,82, 0.8);color:#fff;}

#primary .flickity-button:hover{background:rgba(77, 76,77, 0.8);color:#fff;}

#primary .carousel-cell .news-events-content{padding:20px 0;}    

#primary .carousel-cell .btn{margin-top:5px;}

.news-carousel {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.news-events-content{
  margin-top: auto;
  min-height:40%;
  padding:10px;box-sizing:border-box;
}
.news-carousel .news-events-content h3{color:#fff;font-size:var(--text-l);margin:0 0 5px 0;padding:0;}

.news-events-content p {padding:0 20px;width:90%;margin:0 auto!important;}
.news-carousel .news-events-content{background:rgba(77,76,77, 0.6);color:#fff;}

.carousel-cell:not(.is-selected) {
 transform: scale(.9);
  transition: transform .3s cubic-bezier(.4,0,.2,1);
    opacity: 0.8;
}

.carousel-cell:not(.is-selected) .news-events-content{background:rgba(77,76,77, 0.8);z-index:10;position:relative;}

.staff_button{width:100%;border-bottom:5px solid #eee;padding-bottom:10px;}

.collapseomatic:after{font-family:'FontAwesome';content:"\f067";position:absolute;right:-20px;color:#008852;font-size:1.5rem;top:0;}
.colomat-close:after{content:"\f068";position:absolute;right:-20px;color:#008852;font-size:1.5rem;top:0;}

.collapseomatic_content p{width:80%;}

.collapseomatic_content p{padding-top:20px;}

.collapseomatic_excerpt, .collapseomatic_content{margin-left:0;}

.collapseomatic{width:90%;}
.collapseomatic:after{width:10%;}
/*****NEWS/****************/

.news-box{width:100%;display:inline-block;padding:20px;background:#f8f8f8;margin:10px 0;border-radius:5px;border:2px solid #f4f4f4;}

/******MAPS/****************/

.locations-menu-wrapper h3{color:#008752;}

.locations-menu-wrapper details {margin-bottom:2rem;background:#f9f9f9;border-radius:1.5rem;box-shadow:5px 2px 10px #eee}

/* Position close button in top right */
.gm-style-iw-chr {
    position: absolute !important;
    top: 0 !important;
    right: 1rem !important;
}

#primary a.btn.view-on-map{background:transparent;color:#444;}

#primary a.btn.view-on-map:before {
    content: '\f041';
    font-family: FontAwesome;
    padding-right:0.5rem;

}

.acf-map .marker {
    display: none;
}

/* Add padding to tooltip */
.gm-style .gm-style-iw-c {
    padding: 0.8rem !important;
   
}
#primary .gm-style-iw-d a{text-decoration:none;}

#primary .gm-style-iw-d .btn {font-size:var(--text-3xs);}
.gm-style-iw-ch{display:none;}

#primary .locations-menu-wrapper details .locations-list li{list-style:none;border:4px solid #eee;padding:2rem;border-radius:1.5rem;
                                                           margin:1rem 0;}

.acf-map {
    width: 100%;
    height: 400px;
    border:0;
    margin: 20px 0;
}

/*// Fixes potential theme css conflict/*/
.acf-map img {
   max-width: inherit !important;
}
#primary ul.locations-menu{background:#f9f9f9;padding:20px;border:4px solid #eee;border-radius:20px;}
#primary ul.locations-menu li {list-style:none;}


.page-locations #primary ul.locations-menu {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    padding: 10px;
    margin: 0;
    list-style: none;
}

.page-locations #primary ul.locations-menu{text-align:center;}

.page-locations #primary ul.locations-menu li{display:inline-block;padding:5px 10px;box-sizing:border-box;}
.page-locations #primary ul.locations-menu li a.btn{font-size:0.8rem;padding:10px 12px;}

/* Location Title Styles */
.location-tile h1{
     font-size:var(--text-2xl);
}
.location-tile{width:100%;text-align:center;padding:2rem;}

.location-tile h1 span {
    display: block;
    font-size:var(--text-xl);
    color:var(--primary-color);
}



/* ==========================================================================
   Case Studies
   ========================================================================== */

   .gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.gallery-grid img {

    width: 100%;
    height: 250px; 
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 30px; 
}

.gallery-grid img {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges; 
    backface-visibility: hidden;
    transform: translateZ(0);
}


.case-studies-img-wrap {
  position: relative;
}
.case-studies-img-wrap:hover:after {pointer-events:none;content:'';background:rgba(0,0,0,0.5);position:absolute;top:0;right:0;left:0;bottom:0;cursor:pointer;}
.d-flex.align-items-center.flex-column.justify-content-center.h-100 {display:block!important;width:100%!important;text-align:center!important;}
.row.m-4 {display: -ms-flexbox;
display: -webkit-flex;
display: flex;
}
/* Two-column grid for ul */
#primary.projects ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 30px;
    list-style: none!important;
    padding: 0;
}

#primary.projects ul li{list-style:none!important}

#primary.projects ul li::before {
    content: "›";
    color: #ffc430;
    font-weight: bold;
    font-size: var(--text-m);
    margin-right: 8px;
}

#primary.projects ul li:marker{display:none;}



/* Mobile: Stack single column */
@media (max-width: 899px) {
    #primary.projects ul {
        grid-template-columns: 1fr;
    }
}


.project-navigation {padding:var(--space-s) 0}


#our-reviews .carousel-item {
    margin-left: 7.5% !important;}

   .search-results input.search-field {margin:20px 0;}
   
   button.alm-load-more-btn.more.done {display:none;}

   .ms-layer.slider-book-online.msp-cn-2-2.ms-hover-active:after {content: "\e911";font-family:'ccst'; }

  /*FLEX BOX for rows */
.parentheader{
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;}

   .center-text{
	text-align:center!important;   
   }
   
   .white-text,.white-text p, .white-text h1, .white-text h2, .white-text h3, .white-text h4, .white-text h5, .white-text a{
	color:#fff!important;   
   }


.highlight{-webkit-text-stroke:1px #1CEC9A;}
.safety-text{background:#0A6340;padding:20px;text-align:center;}

.safety-text .textwidget p{font-style:italic;color:#fff;;font-size:var(--text-l);margin:0!important;font-family: 'Raleway', sans-serif;font-weight:700;letter-spacing:1px;-webkit-text-stroke:1px #fff;}

.logo-carousel-free .swiper-wrapper {
	align-items: center;
}
.sp-lc-logo {padding:0 10px;}
.logo-carousel-free .sp-lc-logo img{max-height:150px;width:auto;}

.highlight{font-size:150%;}

#wrapper {
	width: 100%;
	position: relative;
	text-align: left;
	display:intial;
}

#headercontainer {
	width: 100%;
	padding: 0;
    box-shadow: 2px 5px 5px #eee;
	position:relative;
	z-index:9999999;
	
}

#headercontainer.sticky{
	background:rgba(255,255,255, 0.9);
	
	top:0;
	position:sticky;
}
.mobile-buttons{display:none;visibility:hidden;}
.site-title a{text-decoration:none;}

.site-header {
	clear: both;
	width: 100%;
	font-size: 16px;
	font-size: 1rem;
	margin: 0 auto;
	padding: 0;
	position: relative;
	color: #000;
}

#maincontentcontainer .home-sidebar .widget {
	background-color: #fcfcfc;
	border: 1px solid #bbb;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	-moz-background-clip: padding;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	padding: 10px;
	padding: 0.625rem;
}

#maincontentcontainer {
	width: 100%;
}

.site-content {
	clear: both;
	width: 96%;
	font-size: 16px;
	font-size: 1rem;
	margin: 0 auto;
	padding: 32px 20px;
	padding: 2rem 20px;
	color: #333;
	line-height: 1.5;
	position: relative;
}
.home .site-content{
	padding: 0 20px 32px 20px;
	padding: 0 20px 2rem 20px;
}

.home-sidebar {
	width: 96%;
	margin: 0 auto;
	padding-bottom: 32px;
	padding-bottom: 2rem;
}
.d-col.sidebar-wrap {margin:0;padding:0 20px;box-sizing:border-box;}

#primary .sidebar-wrap{margin-top:10px;padding:20px;margin-left:10px;display:inline-block;box-sizing:border-box;}

#primary .sidebar-wrap ul li{list-style:none;padding:10px;}

.d-col.grid_4_of_12.sidebar-wrap a {color:var(--primary-color);text-decoration:none;}

.home.page .site-content {
	padding-bottom: 0;
}

.home.page .site-content article {
	margin-bottom: 0;
}

/* Social Media icons */
.social-media-icons {
	height: auto;

}

.social-media-icons ul {
	list-style: none;
	margin: .5em 0 0 0;
	padding: 0;
	
}

.social-media-icons li {
	display: inline-block;
	margin: 1rem 0 0;
	font-size: var(--text-l);
	text-align: center;
padding:0 5px!important;
}

.social-media-icons a {
	color: #333;
	text-decoration: none;
}

.social-media-icons li a span{color:#fff;}
.social-media-icons li a span:hover{color:var(--primary-color);}

/* ==========================================================================
   Main Content
   ========================================================================== */

.entry-meta {
	clear: both;
}

.comments-link {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: italic;
	font-weight: 400;
	font-size: 14px;
	font-size: 0.875rem;
	float: right;
}

.entry-header {
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.entry-header .entry-title a {
	text-decoration: none;
}

.entry-header h1 a:visited {
	color: #333;
}

.entry-header h1 a:hover {
	color: #008752;
}

article.sticky .featured-post {

	font-style: normal;
	font-weight: 400;
	border-top: 4px double #aaa;
	border-bottom: 4px double #aaa;
	color: #777;
	font-size: 16px;
	font-size: 1rem;
	line-height: 3;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	text-align: center;
}

article.sticky {
	border-bottom: 4px double #aaa;
}

.site-content article {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	-ms-word-wrap: break-word;
	-webkit-hyphens: auto;
	word-wrap: break-word;
}

.header-meta {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin-bottom: 10px;
	margin-bottom: 0.625rem;
	padding: 5px 0;
	padding: 0.3125rem 0;

}

.header-meta:before,
.header-meta:after {
	content: "";
	display: table;
}

.header-meta:after { clear: both; }

.header-meta a {
	text-decoration:none;
}

.header-meta a:visited {
	color: #333;
}

.header-meta a:hover {
	color: #008752;
}

.entry-content {
	margin-bottom: 20px;
	margin-bottom: 1.25rem;

}

.entry-content:before,
.entry-content:after {
	content: "";
	display: table;
}

.entry-content:after { clear: both; }

.post-categories a,
.post-tags a {
	font-size: 14px;
	font-size: 0.875rem;
	background-color: #333;
	color: #fff;
	padding: 0 5px;
	padding: 0 0.3125rem;
	margin: 0 3px 0 0;
	margin: 0 0.1875rem 0 0;
	display: inline;
	text-decoration: none;
}

.post-categories a:visited,
.post-tags a:visited {
	color: #fff;
}

.post-categories a:hover,
.post-tags a:hover {
	background-color: var(--primary-color);
	color: #fff;
}

.entry-header address,
.comment-content address {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: italic;
	font-weight: 400;
	display: block;
}

.entry-header address {
	display: inline;
}

.entry-header time,
	entry-header address {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: italic;
	font-weight: 400;
	font-size: 14px;
	font-size: 0.875rem;
	margin: 0 20px 0 0;
	margin: 0 1.25rem 0 0;
}

.page-links {
	clear: both;
	line-height: 1.75;
	color: #333;
}

.page-links .page-numbers {
	background-color: #333;
	border: 1px solid #333;
	padding: 2px 4px;
	padding: 0.125rem 0.25rem;
	color: #fff;
}

.page-links a {
	text-decoration: none;
}

.page-links a .page-numbers {
	background-color: transparent;
	color: #333;
}

.page-links a:hover .page-numbers {
	background-color: #008752;
	color: #fff;
}

.more-link {
	text-decoration: none;
}

.post-edit-link {
	text-decoration: none;
}

.entry-content dl,
.comment-content dl {
	margin: 0 24px;
	margin: 0 1.5rem;
}

.entry-content dt,
.comment-content dt {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
}

.entry-content dd,
.comment-content dd {
	line-height: 1.5;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.entry-content table,
.comment-content table {
	border-bottom: 1px solid #ccc;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 2;
	margin: 0 0 24px;
	margin: 0 0 1.5rem;
	width: 100%;
}

.entry-content table caption,
.comment-content table caption {
	font-size: 16px;
	font-size: 1rem;
	margin: 24px 0;
	margin: 1.5rem 0;
}

.entry-content td,
.comment-content td {
	border-top: 1px solid #ccc;
	padding: 6px 10px 6px 0;
	padding: 0.375rem 0.625rem 0.375rem 0;
}

.entry-content ol,
.comment-content ol,
.entry-content ul,
.comment-content ul {
	margin: 0 0 24px;
	margin: 0 0 1.5rem;
	line-height: 1.5;
	padding: 0;
}

.entry-content ul ul,
.comment-content ul ul,
.entry-content ol ol,
.comment-content ol ol,
.entry-content ul ol,
.comment-content ul ol,
.entry-content ol ul,
.comment-content ol ul {
	margin-bottom: 0;
}

.entry-content ul,
.comment-content ul {
	list-style: disc outside;
}

.entry-content ol,
.comment-content ol {
	list-style: decimal outside;
}

/* Author profiles */
.author .archive-header {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.author-info {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin: 24px 0;
	margin: 1.5rem 0;
	padding: 24px 0;
	padding: 1.5rem 0;
	overflow: hidden;

}

.author-info:before,
.author-info:after {
	content: "";
	display: table;
}

.author-info:after { clear: both; }

.author-description h2 {
	font-size: 24px;
	font-size: 1.5rem;
}

.author-description p {
	color: #777;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.author-link {
	font-size: 14px;
	font-size: 0.875rem;
}

.author-link a {
	color: #777;
	text-decoration: none;
}

.author-link a:visited {
	color: #666;
}

.author-link a:focus,
.author-link a:hover,
.author-link a:active {
	outline: 0;
	color: #008752;
}

.author.archive .author-info {
	border-top: 0;
	margin: 0 0 48px;
	margin: 0 0 3rem;
}

.author.archive .author-avatar {
	margin-top: 0;
}

.author.archive .author-link {
	display: none;
}

.author-avatar {
	float: left;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.author-description {
	float: right;
	width: 80%;
}

.social-meta a {
	text-decoration: none;
	margin-right: 5px;
	margin-right: 0.3125rem;
}

/* ==========================================================================
   Post Formats
   ========================================================================== */

.entry-media {
	margin: 0 auto 16px;
	margin: 0 auto 1rem;
	max-width: 792px;
	width: 100%;
}

.entry-media .wp-caption,
.entry-media .wp-caption-text,
.entry-media [class*="align"] {
	margin: 0 auto;
}

/* Aside */
.format-aside .entry-content {
	margin: 20px 0 18px 0;
	margin: 1.25rem 0 1.125rem 0;
}

.format-aside .entry-content p:last-child {
	margin-bottom: 0;
}

/* Status */
.format-status .entry-content {
	border-left: 5px solid #ddd;
	margin: 20px 0 18px 0;
	margin: 1.25rem 0 1.125rem 0;
	padding: 0 0 0 15px;
	padding: 0 0 0 0.9375rem;
}

.format-status .entry-content p {
	font-size: 20px;
	font-size: 1.25rem;
	font-style: italic;
}

.format-status .entry-content p:last-child {
	margin-bottom: 0;
}

/* Quote */
.format-quote .entry-content blockquote:before {
	font-family: 'FontAwesome';
	font-weight: normal;
	font-style: normal;

	vertical-align: top;
	font-size: 40px;
	font-size: var(--text-l);
	content: "\f10d";
	color: #ddd;
	top: -15px;
	left: 0;
	position: absolute;
	z-index: -1;
}

.format-quote .entry-content {
	margin-top: 24px;
	margin-top: 1.5rem;
	position: relative;
}

.format-quote .entry-content blockquote {
	border: none;
	margin-left: 40px;
	margin-left: 2.5rem;
}

/* Audio */
.format-audio .wp-audio-shortcode {
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

/* ==========================================================================
   Archives
   ========================================================================== */

.archive-header,
.page-header {
	margin-bottom: 32px;
	margin-bottom: 2rem;
	border-bottom: 1px solid #CCCCCC;
}

.archive-meta {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: italic;
	font-weight: 400;
	color: #777;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 2;
	margin-top: 16px;
	margin-top: 1rem;
}

/* ==========================================================================
   Comments
   ========================================================================== */

.comments-title {
	margin-bottom: 48px;
	margin-bottom: 3rem;
	font-size: 32px;
	font-size: var(--text-l);
	line-height: 1.5;
	font-weight: normal;
}

.comments-area article {
	padding-bottom: 16px;
	padding-bottom: 1rem;
	margin: 24px 0;
	margin: 1.5rem 0;
	border-bottom: 1px solid #ccc;
}

.comments-area article header {
	margin: 0 0 24px;
	margin: 0 0 1.5rem;
	overflow: hidden;
	position: relative;
}

.comments-area article header img {
	float: left;
	padding: 0;
	line-height: 0;
}

.comments-area article header cite,
.comments-area article header time {
	display: block;
	margin-left: 84px;
	margin-left: 5.25rem;
}
.comments-area article header cite {
	font-style: normal;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

.comments-area article header time {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: italic;
	font-weight: 400;
	line-height: 1.8;
	text-decoration: none;
	font-size: 14px;
	font-size: 0.875rem;
	color: #5e5e5e;
}

.comments-area article header a {
	text-decoration: none;
	color: #5e5e5e;
}

.comments-area article header a:hover {
	color: #21759b;
}

.comments-area article header cite a {
	color: #444;
}

.comments-area article header cite a:hover {
	text-decoration: underline;
}

.comments-area article header h4 {
	position: absolute;
	top: 0;
	right: 0;
	padding: 8px 14px;
	padding: 0.5rem 0.875rem;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: normal;
	color: #fff;
	background-color: #0088d0;
	background-repeat: repeat-x;
	background-image: -moz-linear-gradient(top, #009cee, #0088d0);
	background-image: -ms-linear-gradient(top, #009cee, #0088d0);
	background-image: -webkit-linear-gradient(top, #009cee, #0088d0);
	background-image: -o-linear-gradient(top, #009cee, #0088d0);
	background-image: linear-gradient(top, #009cee, #0088d0);
	border-radius: 3px;
	border: 1px solid #007cbd;
}

.comments-area li.bypostauthor cite span {
	position: absolute;
	margin-left: 6px;
	margin-left: 0.375rem;
	padding: 2px 6px;
	padding: 0.125rem 0.375rem;
	font-size: 12px;
	font-size: 0.75rem;
}

a.comment-reply-link {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.8;
	color: #686868;
	text-decoration: none;
}

a.comment-reply-link:hover {
	color: #21759b;
}

.commentlist .pingback {
	line-height: 1.8;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	padding-bottom: 0;
}

.commentlist .children {
	margin-left: 48px;
	margin-left: 3rem;
}

.commentlist {
	padding-left: 0;
}

/* Comment form */
#respond {
	margin-top: 48px;
	margin-top: 3rem;
}

#respond h3#reply-title #cancel-comment-reply-link {
	margin-left: 12px;
	margin-left: 0.75rem;
	font-weight: normal;
	font-size: 12px;
	font-size: 0.75rem;
}

#respond form {
	margin: 24px 0 32px 0;
	margin: 1.5rem 0 2rem 0;
}

#respond form p {
	margin: 12px 0;
	margin: 0.75rem 0;
}

#respond form p.logged-in-as {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

#respond form label {
	display: block;
	line-height: 1.8;
}

#respond form input[type="text"],
#respond form textarea {
	font-family: inherit;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.8;
	padding: 8px;
	padding: 0.5rem;
	width: 100%;
}

#respond form input[type="text"] {
	width:48%;
}

#respond form p.form-allowed-tags {
	margin: 0;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	color: #5e5e5e;
}

#respond form p.form-allowed-tags code {
	background: none;
	border: none;
	color: #5e5e5e;
}

label .required,
span.required {
	color: #bb0504;
}

form label.error {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: normal;
	font-weight: 700;
	display:block;
	padding: 0 10px 0 10px;
	padding: 0 0.625rem 0 0.625rem;
	margin: 5px 0 5px 0;
	margin: 0.3125rem 0 0.3125rem 0;
	font-size: 14px;
	font-size: 0.875rem;
	border-left: 4px solid #bb0504;
	display: none;
}

#respond form label.error {
	line-height: 1.3;
}

#respond #wp-comment-cookies-consent {
	margin-right: 12px;
	margin-right: .75rem;
	margin-top: -3px;
}

#respond .comment-form-cookies-consent label {
	display: inline;
}

/* ==========================================================================
   Footer
   ========================================================================== */

   .col-8 {
	 flex: 1 1 8%; /* Allow flex items to grow and shrink, and set a base width */
	 text-align: center;
	 padding:1%;
	 box-sizing:border-box;
   }
   
   .flex-grid.accreditation {
	 display: flex;
	 justify-content:space-between;
	 align-items: center;
	 flex-wrap: wrap; /* Allow items to wrap to the next line */
	 padding: 0 0 40px 0;
   }
   
   .flex-grid.accreditation img {
	 max-height: 80px;
	 width: auto;
	 flex-shrink: 0; /* Prevent images from shrinking below their intrinsic size */
   }

   hotspots-map-container-207{overflow:hidden!important;}
   
   .hotspots-image-container .hotspots-map-container{
	right:0!important;
	top:-10px!important;   
   }

#footercontainer {
	width: 100%;
	background:#4D4C4D;
	padding:20px;
}

#footercontainer a{text-decoration:none;}

.flex-wrap{display:flex;padding:10px;} 
.flex-wrap i{padding-right:10px;font-size:var(--text-l);}

#footercontainer .flex-wrap i{text-shadow:0px 2px 10px #333;}

.flex-wrap i{width:50px;text-align:center;}

h3.widget-title:after {

    border-bottom: 3px solid #008852;
    content: "";
    display: block;
    width: 10%;
    padding-top: 10px;
}

ul#menu-quick-links li{text-transform:uppercase;}
ul#menu-quick-links li a{color:#fff;}
ul#menu-quick-links li a:hover{color: #0CAE6E;}

#footercontainer img.safety-banner {max-width:70%;}

  /* ==========================================================================
   Footer Map
   ========================================================================== */

h2.hotspot-title {
  display: none;
  visibility: hidden;
}

#hotspot-207 .hotspots-placeholder {
  display: none;
}

aside#text-3 {
  margin-top: -92px;
}

#hotspot-207 .hotspots-image-container, #hotspot-207 .leaflet-container {background:transparent!important;}

  /* ==========================================================================
   Go Top Button
   ========================================================================== */
#go-top {
	z-index:99999;
		position: fixed;
	bottom: 30px;
    right:30px;
   text-align: center; 
   text-align: center; 
   display: none;
   
}
#go-top a, #go-top a:visited {
	text-decoration: none;
	border: 0 none;
	display: block;
	width: 48px;
	height: 48px;
	background: rgba(0, 136,82, 0.8) /*#008852;*/;
	border-radius:50%;
	border:2px solid #fff;

	-webkit-transition: all 0.2s ease-in-out;
   -moz-transition: all 0.2s ease-in-out;
   -o-transition: all 0.2s ease-in-out;
   -ms-transition: all 0.2s ease-in-out;
   transition: all 0.2s ease-in-out;

   color: #fff!important;
   font-size: 16px;
   line-height: 48px;
}
#go-top a:hover { background: rgba(77, 76,77, 0.8) /*#008852;*/ }

#footercontainer .grid_12_of_12 {text-align:center;}

.site-footer {
	clear: both;
	width: 96%;
	font-size: 16px;
	font-size: 1rem;
	margin: 0 auto;
	padding: 30px 0 0 0;
	padding: 1.875rem 0 0 0;
	color: #fff;
}

.site-footer h3 {
	color: #eee;
	font-style:italic;
}

.site-footer a {
	color: #fff;
	
}

.site-footer a:visited {
	color: #999;
}

.site-footer a:hover {
	color: #0CAE6E;
}

.site-footer a:focus {
	outline: thin dotted;
	color: #008752;
}

.site-footer .widget-area .widget {
	margin-bottom: 16px;

	margin-bottom: 1rem;
}

.smallprint {
	color: #fff;
	width: 96%;
	text-align:center;
}

.smallprint p {
	font-size: 14px;
	font-size: 0.875rem;
}

.smallprint a {
	color: #555;
}

.smallprint a:visited {
	color: #555;
}

.smallprint a:hover {
	color: #008752;
}

/* ==========================================================================
   Widgets
   ========================================================================== */

.widget-area ul {
	list-style: none outside none;
	padding-left: 0;
}

.widget-area .widget {
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	word-wrap: break-word;
	margin-bottom: 48px;
	margin-bottom: 3rem;
}

.widget select {
	margin-left: 1px;
	margin-left: 0.0625rem;
}

.widget-area .widget ul ul {
	margin-left: 12px;
	margin-left: 0.75rem;
}

.widget_rss li {
	margin: 12px 0;
	margin: 0.75rem 0;
}

.widget_recent_entries .post-date,
.widget_rss .rss-date {
	font-size: 12px;
	font-size: 0.75rem;
	margin-left: 12px;
	margin-left: 0.75rem;
}

#wp-calendar {
	margin: 0;
	width: 100%;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 2;
}

#wp-calendar th,
#wp-calendar td,
#wp-calendar caption {
	text-align: center;
}

#wp-calendar thead {
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
}

#wp-calendar caption {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-style: normal;
	font-weight: 700;
	text-transform: uppercase;
	text-align: left;
}

#wp-calendar #today {
	background-color: #ddd;
}

#wp-calendar tfoot {
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
}

#wp-calendar #next {
	padding-right: 24px;
	padding-right: 1.5rem;
	text-align: right;
}

.widget_search label {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
}

.widget_twitter li {
	list-style-type: none;
}

.widget_twitter .timesince {
	display: block;
	text-align: right;
}

/* ==========================================================================
   Content Navigation
   ========================================================================== */

.site-content nav {
	clear: both;
	line-height: 2;
	overflow: hidden;
}

#nav-above {
	padding: 24px;
	padding: 1.5rem;
}

#nav-above {
	display: none;
}

.paged #nav-above {
	display: block;
}

.nav-previous,
.previous-image {
	float: left;
	width: 50%;
	line-height: 1.3;
}

.nav-previous a,
.nav-next a {
	text-decoration: none;
}

.nav-next,
.next-image {
	float: right;
	text-align: right;
	width: 50%;
	line-height: 1.3;
}

.nav-single + .comments-area,
#comment-nav-above {
	margin: 48px 48px 48px 0;
	margin: 3rem 3rem 3rem 0;
}

ul.page-numbers {
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 2;
}

li a.page-numbers,
li span.page-numbers {
	padding: 5px;
	padding: 0.3125rem;
	border: 1px solid #333;
	text-decoration: none;
}

li a:visited.page-numbers {
	color: #333;
}

li a:hover.page-numbers {
	background-color: #008752;
	color: #fff;
}

li a:hover.prev,
li a:hover.next {
	background-color: transparent;
	color: #008752;
}

.page-numbers li {
	display: inline;
}

li span.current {
	background-color: #333;
	color: #fff;
}

li a.prev,
li a.next,
li span.dots {
	border: none;
}

/* ==========================================================================
   Services Menu
   ========================================================================== */
.paddle {display:none;}

/* ==========================================================================
   Main Navigation
   ========================================================================== */
   a.mega-custom-icon.mega-menu-link {cursor:pointer;}

   ul.mega-sub-menu .outlined-text h3 {font-size:var(--text-2xl);}

   ul.mega-sub-menu {box-shadow:2px 2px 10px #ddd!important;}

   #headercontainer .btn {border:3px solid #1CEC9A;border-radius:50px; background:var(--secondary-color);color:#fff;text-decoration:none;padding:0.5rem 1rem;margin-top:1rem;display:inline-block;}
   ul.mega-sub-menu .btn,ul.mega-sub-menu .btn a{color:#fff;}
   ul.mega-sub-menu .btn:hover{background:#000;color:#fff;}
   #headercontainer a.btn{background:var(--secondary-color);color:#fff!important}

   #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {  font-size: var(--text-2xs)!important;}

   .mega-current-menu-item a.btn:hover{color:#fff!important;}

   .mega-sub-menu li.bold-heading a{font-weight:bolder!important;}

nav#site--contact--nav ul li{display:inline-block;text-align: center;padding: 0 1rem;font-weight:bolder;}

nav#site--contact--nav ul li a, nav#site--contact--nav ul li a:visited{text-decoration:0;color:#333;}

nav#site--contact--nav ul li a:hover{color:#fff;}

.d-col.grid_6_of_12.main-navigation {display:flex;align-items:center;}

.site--contact--nav li:before{
color:#B88912;
    display:block!important;
}
.contact-navigation{position:relative;z-index:9999;justify-content: center;align-items: center;}

.menu-contact-menu-container:before{
	content: '';
    position: absolute;
    top: 0;
    left: -40px; /* Adjust this value based on your needs */
    width: 41px; /* Size of the square (width and height) */
    height: 100%; /* Ensure it matches the height of the parent */
    background: #ffc430;
    clip-path: polygon(100% 100%, 0% 100%, 100% 0%);
}

  .contact-navigation{display:flex;justify-content:end;}

.menu-contact-menu-container{background:#ffc430;position:relative;}

.mega-current-menu-item a, .current-menu-item a{color: #333!important;font-weight:600!important;}

   .desktop-menu a.mega-menu-link {display:none!important;visibility:none!important;}
   
 .menu-services-container ul {text-align:center;}

.menu-services-container li{display:inline-block;padding:10px;font-family: 'Raleway', sans-serif;color:#4D4C4D;text-transform:uppercase;position:relative;

    background:#f4f4f4;
    margin:5px 2px;
    border-radius:50px;
}

.menu-services-container ul li a{text-decoration:none;}

   #mega-menu-wrap-primary #mega-menu-primary li#mega-menu-item-498 .mega-search.mega-search-closed input[type=text]{
box-shadow:none!important;
    
}
   #mega-menu-wrap-primary #mega-menu-primary li#mega-menu-item-498 .mega-search .search-icon:before{font-family:'FontAwesome';content:"\f002";font-style: normal;
  font-display: block;}
  
  #shiftnav-main li.search{display:none;}

  .icon-email, .icon-phone, .icon-address{position:relative;}
  .icon-address:before,.icon-email:before, .icon-phone:before,.icon-staff:before,.icon-estimation:before{font-family: 'pronghorn-icons';font-size:var(--text-m);color: #B88912;display: block;}
  
  .icon-email:before{content: '\e919';}
  .icon-phone:before{content: "\e917";vertical-align:middle;}
.icon-address:before {
  content: "\e918";
}
.icon-staff:before {
  content: "\e920";
}
.icon-estimation:before {
  content: "\e916";
  font-family: 'pronghorn-icons';
  padding-right: 5px;
  font-size: 1.6rem;
  color: #B88912;
  display: block;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link, #site-navigation li a,.main-navigation a{font-family: 'Raleway', sans-serif;font-weight:700;}

.main-navigation .topmenu a{display:inline-block;}

.site-title img {position:relative;top:10px;}

.topmenu {justify-content: flex-end;display:flex;right:0;position:relative;}

.menu-contact-menu-container {
  position: relative;
  display: inline-block;

}

.topmenu ul#menu-contact-menu{margin:0;padding:0;line-height:1;}

.topmenu ul#menu-contact-menu li{padding:10px 5px; display:inline-block;}

.topmenu ul#menu-contact-menu li a{text-decoration:none;}

   .topmenu ul#menu-contact-menu li:first-child{padding-left:40px;}
.topmenu ul#menu-contact-menu li:last-child{padding-right:20px;}

.main-navigation {
	text-align:center;
}

.nav-menu {
	font-family: 'Raleway', sans-serif;
	font-weight:400;
	font-style: normal;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.5;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.main-navigation li {
	position: relative;
	display:inline-block;
	margin: 0 0 0 20px; /* Margin on the left side of each top level menu item (since it's floated right) */
	margin: 0 0 0 1.25rem;
	text-transform:uppercase;
}

.main-navigation ul ul li {
	margin: 0;
}

.main-navigation li.menu-item-has-children > a:after { /* If you don't want the arrows on the top level drop down, simply remove this style */
	font-family: 'FontAwesome';
	font-weight: normal;
	font-style: normal;

	vertical-align: middle;
	font-size: 9px;
	font-size: 0.5625rem;
	content: " \f078";
}

.main-navigation ul li li.menu-item-has-children > a:after { /* If you don't want the arrows on the sub-menu options, simply remove this style */
	font-family: 'FontAwesome';
	font-weight: normal;
	font-style: normal;

	vertical-align: middle;
	font-size: 9px;
	font-size: 0.5625rem;
	content: " \f054";
}

.main-navigation ul a {
	padding: 0; /* Padding around each top level menu option (if needed) */
}

.main-navigation ul ul a {
	padding: 0 5px; /* Padding around each dropdown menu option */
	padding: 0 0.3125rem;
}

.main-navigation ul ul {
	display: none;
	position: absolute;
	left: 0;
	padding:10px;
	
	z-index: 99999;
	line-height: 1.7;
	background-color: var(--primary-color); /* Nav bar dropdown background color */
	-webkit-box-shadow:2px 2px 5px 0px rgba(0, 0, 0, 0.6);
	box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.6);
}

.main-navigation ul ul ul {
  left: 100%;
  top: 0;
}

.main-navigation li:hover > a {
  color: var(--primary-color); /* Nav bar link color on hover */
}

.main-navigation ul ul :hover > a {
  color: #333; /* Nav bar dropdown level 2 link color on level 3 hover */
  background-color: #fff; /* Nav bar dropdown link background color on hover */
}

.main-navigation ul ul a:hover {
  color: var(--primary-color); /* Nav bar dropdown link color on hover */
}

.main-navigation ul li:hover > ul {
  display: block;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current_page_parent > a {
	color: var(--primary-color); /* Nav bar link color for current menu item or ancestor */
}

.main-navigation ul .divider {
    border-bottom: 1px solid #aaa;
    height: 0;
    line-height: 0.0625;
    overflow: hidden;
}

.main-navigation ul li.dropdown-header a,
.main-navigation ul li.current-menu-item ul .dropdown-header a {
	color: #aaa; /* Nav bar dropdown header color */
	background-color: #333; /* Nav bar dropdown header background color */
}

/* Small menu toggle for mobile devices */
.menu-toggle {
	cursor: pointer;
}

.main-small-navigation .nav-menu {
	display: none;
}

.shiftnav-active a{background:#ffc430;font-weight:bold;}

.shiftnav ul.shiftnav-menu li.menu-item li a{background:#eee;color:#555;font-weight:normal}

/* ==========================================================================
   Page Builders
   ========================================================================== */
   .vc_row{overflow:visible!important;}

/* Divi Builder - Resize rows to match Evo */
.page-template-page-builderfullwidth.et_divi_builder #et_builder_outer_content .et_pb_section .et_pb_row,
.page-template-page-builderblank.et_divi_builder #et_builder_outer_content .et_pb_section .et_pb_row,
.page-template-page-builderboxed.et_divi_builder #et_builder_outer_content .et_pb_section .et_pb_row {

	width: 96%;
}

/* Visual Composer - Remove the negative margin when using the full-width page builder template */
.page-template-page-builderfullwidth.wpb-js-composer .vc_row,
.page-template-page-builderblank.wpb-js-composer .vc_row {
	margin-left: 0;
	margin-right: 0;
	
}

/* SiteOrigin Page Builder - Ensure the grid only extends 100% */
.page-template-page-builderfullwidth.siteorigin-panels .panel-grid,
.page-template-page-builderblank.siteorigin-panels .panel-grid {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */
   /*  Specific Device Break Points */
   @media only screen and (max-width: 900px), 
(height: 1024px) and (width: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) and (orientation: landscape), 
(width: 1024px) and (height: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) and (orientation: portrait)  {
.safety-text span.highlight{font-size:120%!important;}
 .safety-text span {font-size:90%!important;}     

   .top-menu{margin:0!important;padding:1rem 0;}
    .contact-navigation{margin:0}
    .contact-navigation:before{display:none;}
}

/*  The Breakpoints are set based on the design, not based on device sizes */

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

    .flex-grid.accreditation{gap:5%;padding:0 20px;}

.flex-grid.accreditation .col-8 {flex: 1 1 45%;padding:20px 0;}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link, #menu-contact-menu li{padding:0 0.2rem!important}

.d-col.grid_2_of_12.site-title{display:flex;align-items:center;}

    .menu-contact-menu-container li {font-size:0.7rem; }

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{font-size:0.9rem;}

#primary .service-icons .ic-md{font-size:var(--text-xl)!important;}
#primary .service-icons h4 {font-size:1.2rem;}

}

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

	 .icon-email, .icon-phone, .icon-address{position:relative;}
  .icon-address:before,.icon-email:before, .icon-phone:before,.icon-staff:before,.icon-estimation:before{font-size:var(--text-xl);}

.sp-lc-pagination{display:none;}

#servicesTitleWrap:before {

    height: 50%;
   
    background-size: cover;
  
}

	#primary .services--row h4, #primary .core-services h4{font-size:var(--text-l);}

	.site--contact--nav, .contact-navigation{display:flex;justify-content:center;width:100vw;}

.menu-contact-menu-container:before{display:none;}

.menu-contact-menu-container{width:100vw;}

#menu-contact-menu{justify-content:space-around;display:flex;}

	#senior--management{margin-top:10rem;}

	#servicesTitleWrap h1, .outlined-text h3{font-size:var(--text-2xl);}

    .shiftnav{z-index:999999999!important;}
    .site-header {
        flex-wrap: wrap; /* Allows elements to wrap to the next line */
    }

    .site-header .d-col {

        text-align: center; /* Center text if needed */
    }

    .site-header .contact-navigation {
        width: 100%;
        order: 3; /* Ensures it moves to the bottom */;
     
    }
	
	#headercontainer .grid_2_of_12{width:auto;}

#headercontainer img{max-width:100%;padding-bottom:1rem;}

#headercontainer.sticky{padding:5px 0;}
	
	#headercontainer.sticky img{max-width:300px!important;width:auto!important;-webkit-transition: all 0.3s;

transition: all 0.3s; }

#headercontainer.sticky i{font-size:var(--text-l);}

	.safety-text .textwidget p{font-size:1.5rem;-webkit-text-stroke:0.2px #fff;}
	
	#shiftnav-locations-phone a.shiftnav-target {display:inline-block!important;padding:10px 20px;position:relative;}
	
	.location-wrap span, .location-wrap i{margin:0!important;vertical-align:middle;}

.location-wrap a{text-decoration:none;font-weight:bold;}
	
	#shiftnav-locations-phone li{padding:10px 0!important;}
	
	#shiftnav-locations-phone li:after{content:'';border-bottom:1px solid #ddd;width:100%;display:block;}

  #shiftnav-locations-phone h5 {
    font-size: 1.2rem;
    margin: 0;
    padding: 0 0 10px 20px;
  }

  #shiftnav-locations-phone i {
    font-size: var(--text-l);
    color: #434343;
  }

  #shiftnav-locations-phone li {
    font-size: 1.2rem;
  }
	
	.carousel-cell{width:100%;}

.news-carousel .news-events-content {margin-top:0;height:100%;color:#fff;
}

	.ic-md{font-size:var(--text-xl)!important;}

	.icol-col.wpb_column.vc_column_container.vc_col-sm-2 {width:49%;display:inline-block;vertical-align:top;}
	
	.mobile-buttons{display:block;visibility:visible;position:relative;}
	
	.mobile-buttons i{font-size:var(--text-4xl);} 
	
	.mobile-buttons.location i{font-size:var(--text-2xl);}
	.parentheader{align-items:center;justify-content: space-between;}
	
	#headercontainer{padding:20px 0 0 0;}

	#servicesTitleWrap h1{margin-top:50%;}
	
	.site-title img{top:0;}
	
	#primary .service-title .clients-first{position:relative;padding:20px;left:unset!important;overflow:hidden;}
	.service-title .clients-first:after{transform:none;}

	#background-img {
  background-image: url("images/background-home.svg"), linear-gradient(#fff 30%,#fff 50%,  #f1f1f1 60%, #f1f1f1 100%); /* W3C */
    background-size:contain;background-repeat:no-repeat;
}

	#footercontainer .widget-area{text-align:center;}
	
	h3.widget-title:after {margin:0 auto;}
	
	.flex-wrap{justify-content:center;}
	
	aside#text-3 {margin-top:0}
	
.reviews-wrap .row.m-4  {
    display: block;}
.reviews-wrap .col-sm{
	margin:0 0 20px 0!important;}

  .d-col.grid_4_of_12.our-services {
    padding: 20px 0;
  }

  #menu-toggle {
    display: inline-block;
  }

  .mobile-buttons span {
    display: block;
    font-family: 'Raleway', sans-serif;
    color: #434343;
  }

  .mobile-buttons span a {
    color: #434343;
  }

}
/*  Go full Width at less than 800px */
@media only screen and (max-width: 800px) {
	
	#headercontainer.sticky .site-title img{width:auto;}
	
	.safety-logos-slider{height:auto;max-width:40%;}
	
	.service-title .clients-first:after{width:100%;}
	#background-img p{text-align:center;}

	.d-col.mobile-buttons {padding:0 5px;}
	
	  #footercontainer .hotspots-image-container .hotspots-map-container{
	right:0!important;
	top:0!important;   
   }
	
		/* ==========================================================================
   Slider Mobile
   ========================================================================== */
	.slide1-description{

 font-size:0.7rem!important;   
}

.ms-slide-container .btn{
font-size:0.8rem!important;

 width:auto!important;
 height:auto!important;
 padding:10px!important   
}
	
	/* ==========================================================================
   Services Menu
   ========================================================================== */

   #primary .icol-col h4 {font-size:1.2rem;}
	.menu-services-container{position:relative;}
	ul#menu-services {
border:0;
 overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; 
display:flex;
padding:0 20px;

    }

    ul#menu-services::-webkit-scrollbar{display:none;}

ul#menu-services li {

    font-size:10px;
    padding: 10px;
    font-family: 'Raleway', sans-serif;
    color: #4D4C4D;
    text-transform: uppercase;
    position: relative;

}

.paddle {
  position: absolute;
 
  display:block;
  font-size: 1.5rem;
  top:50%;
  transform:translateY(-50%);
}

.left-paddle {
  left: -10px;
}
.right-paddle {
  right: -10px;
}
.hidden {
  display: none;
}

html{font-size:90%;  }

h3.services_button{font-size:1.5rem;}

	.grid_1_of_12,
	.grid_2_of_12,
	.grid_3_of_12,
	.grid_4_of_12,
	.grid_5_of_12,
	.grid_6_of_12,
	.grid_7_of_12,
	.grid_8_of_12,
	.grid_9_of_12,
	.grid_10_of_12,
	.grid_11_of_12,
	.grid_12_of_12 {
		width: 100%;
	}
	.d-col {
		margin: 0;
	}
	
	.site-title{
		text-align: center;
	}
	
}

/*  Adjust the menu at less than 520px */
@media only screen and (max-width: 520px) {
	
	.trade-form label{display:block;padding-bottom:5px;
	
}
}

/* ==========================================================================
   Non-semantic helper classes from HTML5 Boilerplate
   Please define your styles before this section.
   ========================================================================== */

/* For image replacement */
.ir {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  background-color: transparent;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr;
}
.ir br {
  display: none;
}

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}

/* ==========================================================================
   Print styles from HTML5 Boilerplate
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}


/* ============================================
   LAYOUT & CONTAINER COMPONENTS
   ============================================ */

/* == Content Wrappers == */
.content--wrapper-no-bg {
    max-width: 1600px;
}

.content--wrapper {
    max-width: 1600px;
    margin: 0 auto 2rem!important;
    padding: 2rem var(--space-2xs);
    border: 1px solid #f9f9f9;
    border-radius: 10px;
    background: #fff;
    box-shadow: rgba(221, 221, 221, 1.00) 0px 10px 1px 0px,
                rgba(204, 204, 204, 1.00) 0px 10px 20px 0px;
}

.content--max-width {
    max-width: 1200px;
    margin: 0 auto;
}

.negative-margin {
    margin-top: -80px;
    position: relative;
    z-index: 9999;
}

/* == Interactive Content Boxes == */
.content-box {
    display: none;
    padding: 2rem;
}

.content-box.active {
    display: block;
}

.content-box ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.content-box ul li {
    display: block;
    padding: 10px 15px;
    margin: 0;
}

.content-box ul::after {
    content: "";
    flex: 0 0 calc(33.333% - 10px);
}

.content-box ul li::before {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: var(--primary-color);
    margin-right: 10px;
}


/* ============================================
   TYPOGRAPHY ENHANCEMENTS
   ============================================ */

.content--wrapper h2,
.content--wrapper h3 {
    font-weight: 900;
}

h4.expand-toggle {
    font-size: 1.2rem;
}

    #service-top-img h1 {
    color: #fff;
	padding:var(--space-s);
    font-size: var(--text-3xl);
    font-style: italic;
}

#service-top-img h2 {
    font-style: italic;
    color: rgba(255, 255, 255, 1);
    font-size: var(--text-3xl);
    text-shadow: 1px 1px 20px #bbb !important;
}

/* ============================================
   UI COMPONENTS
   ============================================ */

/* == Toggle Buttons & Tabs == */
.button-container {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}

.toggle-btn {
    background: #fff;
    padding: 1.5rem 2rem;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 2px 10px rgba(0, 135, 82, 0.2);
    border-radius: 100px;
    border: 3px solid #eee;
    text-transform: uppercase;
    font-weight: bolder;
    color: #666;
    z-index: 999;
}

.toggle-btn span {
    display: inline-block;
}

.toggle-btn.active {
    background: #f9f9f9;
    color: var(--primary-color);
}

/* == Navigation & Links == */
#primary .quick--links ul,
#primary .quick--links ul li {
    list-style: none;
    margin: 0;
}

#primary .quick--links ul {
    margin-left: 0;
    padding-left: 0;
}

.quick--links ul li {
    padding: 0.5rem 0;
}

.quick--links ul li a {
    text-decoration: none;
    padding: 0;
}

.news-navigation {
    display: flex;
    gap: 10px;
}

.news-navigation a.btn {
    display: flex;
    font-size: var(--text-3xs) !important;
}


/* ============================================
   THIRD-PARTY PLUGIN OVERRIDES
   ============================================ */

/* == Visual Composer Specific Fixes == */
.top .vc_column-inner {
    padding-top: 0 !important;
}

.content--wrapper .vc_row {
    margin: 0 !important;
}

.content--wrapper .vc_column_container > .vc_column-inner {
    margin: 0 !important;
    padding: 0;
}

.content--wrapper .vc_column_container > .vc_column-inner .vc_inner.vc_row-fluid.no-padding-row {
    padding: 0;
}

.content--wrapper .vc_column_container > .vc_column-inner .vc_inner.vc_row-fluid .vc_column_container {
    padding: 0 1rem;
}

.content--wrapper .vc_column_container > .vc_column-inner .vc_inner.vc_row-fluid.no-padding-row .vc_column_container {
    padding: 0;
}

.vc_col-has-fill > .vc_column-inner,
.vc_row-has-fill + .vc_row-full-width + .vc_row > .vc_column_container > .vc_column-inner,
.vc_row-has-fill + .vc_row > .vc_column_container > .vc_column-inner,
.vc_row-has-fill > .vc_column_container > .vc_column-inner {
    padding-top: 0;
}

#servicesWrapper.wpb_button,
.wpb_content_element,
ul.wpb_thumbnails-fluid > li {
    margin-bottom: 0;
}

/* ============================================
   RESPONSIVE DESIGN - MEDIA QUERIES
   ============================================ */

@media (max-width: 767px) {
    .button-container {
        display: flex;
        justify-content: start;
        overflow-x: auto;
        flex-wrap: nowrap !important;
        scroll-behavior: smooth;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        padding: 0 10px;
    }

    .button-container::-webkit-scrollbar {
        height: 2px;
    }

    .button-container::-webkit-scrollbar-track {
        background: #f0f0f0;
        display: none;
    }

    .button-container::-webkit-scrollbar-thumb {
        background: #eee;
        border-radius: 10px;
    }

   
}

/* ==========================================================================
   Social Media Accessibility Fix
   ========================================================================== */

/* Add screen reader accessible text to social media links */
.social-media-icons a[href*="instagram.com"]:after {
    content: "Instagram";
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.social-media-icons a[href*="linkedin.com"]:after {
    content: "LinkedIn";
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* Alternative: Add aria-label via CSS (modern browsers) */
.social-media-icons a[href*="instagram.com"] {
    position: relative;
}

.social-media-icons a[href*="linkedin.com"] {
    position: relative;
}