/*

Theme Name: X – Child Theme
Theme URI: https://theme.co/x/
Author: Themeco
Author URI: https://theme.co/
Description: Make all of your modifications to X in this child theme.
Version: 1.0.0
Template: x

*/

/* Variables */

:root {
    --transition: all 220ms ease-in-out;
    --orange: #fe5000;
    --grey: #575756;
    --lgt-grey: #ededed;
    /*  --font: system-ui, sans-serif;*/
    --teal: rgb(10, 99, 122);
    --dark-blue: #051b40;
    --red: #e8414b;
    --grey: #919d9d;
    --lgt-blue: #6AC9D3;
    --vibrant-green: rgb(54, 222, 10);
    --white: #ffffff;
}

/*:root body {
    font-family: var(--font);
  }*/

h1,
h2,
h3,
h4 {
    text-transform: uppercase;
}

@media screen and (max-width: 767px) and (min-width: 500px) {
    #x-root h1 {
        font-size: 3rem;
    }
}
@media screen and (max-width: 499px) {
    #x-root h1 {
        font-size: 2.75rem;
    }
}
/* Padding */

#x-root .no-pad-top,
#x-root .no-pad-inner-top>.wpb_column>.vc_column-inner,
#x-root .no-pad-top .vc_column-inner {
    padding-top: 0 !important;
}

#x-root .pad-in {
    padding-left: 10%;
    padding-right: 10%;
}

#x-root .pad-in-5 {
    padding-left: 5%;
    padding-right: 5%;
}

#x-root .margin-in-5 {
    margin-left: 5%;
    margin-right: 5%;
}

#x-root .pad-all-2 {
    padding: 2em;
}


@media screen and (min-width: 1300px) {
    #x-root .pad-in {
        padding-left: 15%;
        padding-right: 15%;
    }
}

@media screen and (min-width: 1800px) {
    #x-root .pad-in {
        padding-left: 20%;
        padding-right: 20%;
    }
}

@media screen and (max-width: 767px) {
    #x-root .pad-in {
        padding-left: 5%;
        padding-right: 5%;
    }
}

#x-root .pad-top {
    padding-top: 2rem;
}

#x-root .pad-bottom {
    padding-bottom: 2rem;
}

#x-root video {
    display: block;
}

#x-root .margintopbanner {
    margin-top: -4em;
}

/* Button */

#x-root .button {
    font-weight: 600;
    text-shadow: none;
    box-shadow: none;
    padding: 0.8em 1.1em;
    transition: var(--transition);
    text-transform: uppercase;
    border-width: 3px;
    color: white;
}

#x-root .button:hover {
    background-color: var(--dark-blue);
    border-color: var(--dark-blue);
}

#x-root .button.button-reserve {
    background-color: transparent;
    color: var(--red);
}

#x-root .button.button-reserve:hover {
    background-color: var(--red);
    color: white;
    border-color: var(--red);
}

#x-root .button.outline {
    background-color: transparent;
    color: var(--orange);
    border: solid 2px var(--orange);
}

/* Text */

#x-root p {
    line-height: 1.4;
}

#x-root h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
}

#x-root .white-text,
#x-root .white-text p,
#x-root .white-text ul,
#x-root .white-text il {
    color: white;
}

#x-root .red-text {
    color: var(--red);
}

#x-root .tertiary-blue-text {
    color: var(--lgt-blue);
}

#x-root .lgt-blue-text {
    color: var(--teal);
}

#x-root .orange-text {
    color: var(--orange);
}

#x-root .green-text {
    color: var(--vibrant-green);
}

#x-root .no-mar-b .wpb_content_element {
    margin-bottom: 0px;
}

#x-root h6 {
    text-transform: none;
}

/*background*/

#x-root .bg-grey {
    background-color: var(--grey);
}

#x-root .bg-lgt-grey {
    background-color: var(--lgt-grey);
}

#x-root .bg-orange {
    background-color: var(--orange);
}

#x-root .bg-black {
    background-color: black;
}

#x-root .bg-dark-blue {
    background-color: var(--dark-blue);
}

#x-root .bg-teal {
    background-color: var(--teal);
}

#x-root .bg-white {
    background-color: white;
}

#x-root .bg-red {
    background-color: var(--red);
}

#x-root .red-box {
    background-color: var(--red);
    border: 2px solid var(--red);
    border-radius: 40px;
    padding: 10px;
    margin: -4em 5% 0 5%;
    z-index: 1;
    position: relative;
}

#x-root .radius-background {
    border: 2px solid var(--dark-blue);
    padding: 69px;
    border-radius: 0px 35vw 35vw 0;
    margin-right: 10%;
    width: 83%
}


.box-shadow .wpb_text_column>.wpb_wrapper {
    margin: 1rem;
    padding: 1rem;
    background-color: white;
    box-shadow: 2px 4px 6px 6px rgba(191, 191, 191, 0.25);
}

#x-root .background-full-width {
    background-size: 100% auto !important;
}

@media screen and (max-width: 1077px) {
    #x-root .background-full-width {
        background-position: center top !important;
    }
}

#x-root .bannerHeight {
    height: 35vh;
}

#x-root .neg-margin-bottom {
    margin-bottom: -25px;
}

#x-root .banner {
    width: calc(100% + 30px);
    height: 78vh;
    min-height: 500px;
}


@media screen and (min-width: 1200px) {
    #x-root .banner {
        min-height: 700px;
    }
}

/*Contact form*/

#x-root .fm-form-container {
    width: 100%;
}

#x-root .fm-form .wdform-field {
    margin-top: 0;
}

#x-root .fm-form input,
#x-root .fm-form textarea,
#x-root #form_contact-us input,
#x-root #form_contact-us textarea {
    border: 3px solid var(--dark-blue) !important;
    background-color: transparent;
    font-weight: 400;
    color: var(--dark-blue);
    transition: var(--transition);
    font-size: 1rem;
    padding: 1.25rem 1rem;
	width:100%;
}

#x-root .fm-form label,
#x-root #form_contact-us label {
    color: var(--dark-blue);
    text-transform: uppercase;
}


#x-root .fm-form input:focus,
#x-root .fm-form textarea:focus,
#x-root #form_contact-us input:focus,
#x-root #form_contact-us textarea:focus {
    border-color: var(--dark-blue) !important;
}

#x-root .fm-form input::placeholder,
#x-root .fm-form textarea::placeholder {
    color: white;
}

#x-root .fm-form .button-submit,
#x-root #form_contact-us .frm_button_submit {
    background-color: var(--red);
    font-weight: 400;
    font-size: 1rem;
    color: var(--white);
    padding: 0.75rem 2.5rem;
    line-height: 1rem;
    border: 3px solid var(--red);
    transition: var(--transition);
    margin-right: 0;
}

#x-root .fm-form .button-submit:hover,
#x-root #form_contact-us .frm_button_submit:hover {
    color: white;
    background-color: var(--dark-blue);
    border-color: var(--dark-blue);
}


#x-root .fm-form div[type="type_editor"] p {
    color: var(--dark-blue);
}

#x-root .fm-form div[type="type_editor"] p a {
    color: white;
}

#x-root .fm-form div[type="type_editor"] p a:hover {
    color: white;
    text-decoration: underline;
}

#x-root .fm-form .fm-message,
#x-root #form_contact-us .frm_error_style {
    background-color: var(--grey);
    color: white;
    font-weight: 700;
    text-align: center;
}

#x-root .radius-bottom-right,
#x-root .radius-bottom-right::before {
    border-radius: 0 0 90px 0;
}

#x-root .radius-top-left {
    border-radius: 90px 0 0 0;
}

#x-root .radius-bottom-left {
    border-radius: 0 0 0 90px;
}


#x-root .wdform-field {
    color: #ffffff;
}

#x-root .fm-form .wdform-required {
    color: var(--dark-blue);
}

/*Footer*/

#x-root .x-colophon.top {
    background-color: var(--dark-blue);
    border-top: 5px solid var(--red);
    padding: 0;
}

#x-root .x-colophon.top .x-container.max.width {
    max-width: none;
    width: 100%;
    padding: 2rem 4rem 0rem 4rem;
    background-color: var(--dark-blue);
    border-radius: 0 90px 0 0;
}

#x-root .footer-cont {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

#x-root .footer-cont p {
    color: white;
    font-size: 0.8rem;
}

#x-root .footer-cont p a:not(.social) {
    color: white;
}

#x-root .footer-cont p a:not(.social):hover {
    color: var(--red);
}

#x-root .inner-cont.logo img {
    width: 37px;
}

#x-root .inner-cont.social-links {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
}

#x-root .inner-cont.social-links .row {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
}

#x-root .inner-cont .row .info-row {
    width: 40%;
}


#x-root .inner-cont.social-links .row p {
    margin-bottom: 8px;
}

#x-root .inner-cont.social-links .row:first-child .col:first-child {
    text-align: right;
    padding-right: 8px;
}

#x-root .inner-cont.social-links img {
    width: 50px;
    margin: 0 0.3rem;
    border: 1px solid white;
}

#x-root .inner-cont.social-links .text-links {
    margin-top: 1.1em;
}

#x-root .inner-cont.social-links .text-links a {
    margin-left: 1.1em;
}

#x-root .inner-cont.social-links a.social img {
    transition: var(--transition);
    transform: scale(1);
}

#x-root .inner-cont.social-links a.social:hover img {
    transform: scale(1.2);
}

#x-root .inner-cont .social {
    margin-right: 1em;
}

.x-colophon.bottom {
    padding: 0;
    background-color: var(--dark-blue);
}

.x-colophon.bottom .x-colophon-content p {
    color: white;
    font: var(--font);
    font-size: 0.6rem;
    text-transform: none;
    font-weight: 600;

}

#x-root .x-container .x-column {
    padding-bottom: 1em;
    border-bottom: 1px solid grey;
}

/* Forth Ports Styling*/

#x-root .above-fold {
    position: relative;
    width: calc(100% + 15px);
}

/*#x-root .above-fold::before {
  content: '';
  display: inline-block !important;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: var(--teal);
  opacity: 0.8;
  }*/

#x-root .above-fold h1 {
    color: var(--red);
    margin: 0;
}

@media screen and (max-width: 768px) {
    #x-root .above-fold h1 {
        color: var(--red);
        font-size: 310%;
    }
}

#x-root .above-fold h2 {
    color: white;
    margin: 0;
}

#x-root .above-fold h2 {
    color: white;
    font-weight: 400;
    margin-top: 10px;
    font-size: 2.25rem;
}

#x-root .above-fold p {
    text-align: right;
    margin-top: 2em;

}

/*
  #x-root .above-fold a {
    color: var(--red);
    border: 3px solid var(--red);
    padding: 0.6em 1.5em;
    border-radius: 18px 18px 18px 18px;
    transition: var(--transition);
    font-size: 1.2rem;
  }
  
  #x-root .above-fold a:hover {
    background-color: var(--red);
    color: white;
  }
  */
#x-root .blue-text {
    color: var(--teal);
}

#x-root .blue-text strong {
    color: var(--vibrant-green);
}

#x-root .red-text {
    color: var(--red);
}

@media screen and (min-width: 768px) {
    .wpb_text_column.border-radius {
        min-height: 350px;
    }
}

.wpb_text_column.border-radius,
#x-root .border-radius {
    padding: 1rem;
    border-radius: 35px;
}

.wpb_text_column.border-radius.bg-red * {
    color: white;
}

.wpb_text_column.border-radius.bg-red a:hover {
    color: var(--dark-blue);
}

.wpb_text_column.border-radius.bg-white a {
    color: var(--red);
    transition: var(--transition);
}

.wpb_text_column.border-radius.bg-white a:hover {
    color: var(--dark-blue);
}

#x-root .services-box .wpb_text_column {
    background-color: white;
    padding: 2em 4rem;
    margin: 0;
}

#x-root .services-box .wpb_text_column h4 {
    margin-top: 0;
}

#x-root .services-box .wpb_column:first-child .wpb_text_column {
    border-radius: 50px 50px 0 50px;
    min-height: 370px;
}

#x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column {
    background-color: var(--dark-blue);
    border-radius: 50px 50px 50px 0;
    margin-bottom: -1em;
    min-height: 370px
}

#x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column li,
#x-root .services-box.drk-left .wpb_column:first-child .wpb_text_column li {
    color: white;
}

#x-root .services-box.drk-right .wpb_column:first-child .wpb_text_column li,
#x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column li {
    color: var(--dark-blue);
}

#x-root .services-box.drk-left .wpb_column:first-child .wpb_text_column {
    background-color: var(--dark-blue);
    border-radius: 50px 0 50px 50px;
}

#x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column {
    border-radius: 0 50px 50px 50px;
    margin-bottom: -1em;
    min-height: 370px;
}

#x-root .our-approach-line {
    padding: 2rem 0rem;
}

#x-root .our-approach-line-small {
    padding: 2rem 0rem;
}

#x-root .approach-numbers span.circle {
    display: block;
    width: 50px;
    height: 50px;
    background-color: var(--vibrant-green);
    border-radius: 50%;
    margin: 0 auto;
    position: relative;
}

#x-root .approach-numbers span.circle:not(.number):before {
    content: '';
    width: 64px;
    height: 64px;
    display: inline-block;
    position: absolute;
    top: -7px;
    left: -7px;
    border: 4px solid var(--vibrant-green);
    border-radius: 50%;
}

#x-root .approach-numbers span.circle.number {
    color: var(--vibrant-green);
    font-size: 35px;
    background-color: transparent;
    text-align: center;
    border: 4px solid var(--vibrant-green);
    line-height: 1.1;
    background-color: var(--teal);
}

#x-root .approach-numbers p {
    color: white;
}

@media screen and (min-width: 768px) {
    #x-root .our-approach-line>.wpb_column:first-child:before {
        content: '';
        display: inline-block;
        width: 4px;
        height: 1075px;
        position: absolute;
        background-color: var(--vibrant-green);
        left: calc(50% - 2px);
        top: 50%;
    }

    #x-root .our-approach-line-small>.wpb_column:first-child:before {
        content: '';
        display: inline-block;
        width: 4px;
        height: 450px;
        position: absolute;
        background-color: var(--vibrant-green);
        left: calc(50% - 2px);
        top: 50%;
        z-index: 1;
    }
}

@media screen and (min-width: 978px) and (max-width:1089px) {
    #x-root .our-approach-line>.wpb_column:first-child:before {
        height: 1086;
    }

    #x-root .our-approach-line-small>.wpb_column:first-child:before {
        height: 450px;
    }
}

@media screen and (max-width: 979px) and (min-width: 768px) {
    #x-root .our-approach-line>.wpb_column:first-child:before {
        height: 928px;
    }
}

@media screen and (min-width: 1200px) and (max-width:1588px) {
    #x-root .our-approach-line>.wpb_column:first-child:before {
        height: 1166px;
    }

    #x-root .our-approach-line-small>.wpb_column:first-child:before {
        height: 450px;
    }
}

@media screen and (min-width: 1300px) and (max-width:1588px) {

    #x-root .our-approach-line-small>.wpb_column:first-child:before {
        height: 452px;
    }
}

@media screen and (min-width: 1512px) and (max-width: 1588px) {
    #x-root .our-approach-line>.wpb_column:first-child:before {
        height: 1100px;
    }
}

#x-root .bg-crbn-left {
    position: relative;
    background-position: top center !important;
}



/*Top Bar*/

.x-topbar .p-info {
    text-transform: none;
    color: white;
    float: right;
}

.x-topbar {
    background-color: var(--dark-blue);
}

.x-topbar .x-container.max {
    max-width: 86%;
}

.x-topbar .x-container.width {
    max-width: 86%;
}

/*Header*/
#x-root a.x-brand {
    width: 15%;
    line-height: 30px;
    margin-bottom: 20px;
}

/*#x-root .x-navbar {
  border-top: solid 10px var(--red);
  }*/
#x-root .x-navbar {
    border-bottom: solid 5px var(--dark-blue);
}

#x-root .x-nav-wrap.desktop #menu-main-menu li a {
    padding-left: 0;
    padding-right: 0;
}

#x-root .x-nav-wrap.desktop #menu-main-menu li a span {
    color: var(--dark-blue);
    border: none;
}


#x-root .x-nav-wrap.desktop #menu-main-menu li:last-child a span {
    border-right-color: transparent;
}

#x-root .x-nav-wrap.desktop #menu-main-menu li a:hover span,
#x-root .x-nav-wrap.desktop #menu-main-menu li.current-menu-item a span {
    color: var(--red) !important;
}

#x-root .x-nav-wrap.desktop #menu-main-menu #menu-item-455 a {
    padding-top: 30px;
}

i.x-icon.x-framework-icon.x-framework-icon-menu {
    display: none;
}

/*Mobile*/

#x-nav-wrap-mobile .x-sub-toggle {
    width: 68px;
}

#x-root #x-nav-wrap-mobile {
    overflow-y: scroll;
    max-height: calc(100vh - 138px);
}

a#x-btn-navbar {
    position: fixed;
    visibility: visible;
    display: block;
    top: 32px;
    right: 12px;
}

.admin-bar a#x-btn-navbar {
    top: 44px;
}

@media screen and (min-width: 979px) {
    a#x-btn-navbar {
        display: none;
        visibility: hidden;
    }
}

@media screen and (max-width: 978px) {
    .masthead .x-navbar-wrap>.x-navbar {
        position: fixed;
        z-index: 1030;
        left: 0;
        right: 0;
        top: 0;
    }

    .admin-bar .masthead .x-navbar-wrap>.x-navbar {
        top: 32px;
    }

    #x-root a.x-brand.img {
        margin-top: 0px;
    }
}

a.x-btn-navbar i.x-icon-bars::before,
a.x-btn-navbar i.x-icon-bars::after,
a.x-btn-navbar::after {
    content: '';
    display: block;
    background-color: var(--dark-blue);
    transition: all 300ms cubic-bezier(.4, 0, .2, 1);
}

a.x-btn-navbar i.x-icon-bars::before {
    width: 48px;
    height: 5px;
}

a.x-btn-navbar i.x-icon-bars::after {
    width: 48px;
    height: 5px;
    margin-left: auto;
    margin-top: 6px;
}

a.x-btn-navbar::after {
    width: 48px;
    height: 5px;
    margin-left: auto;
    margin-top: 5px;
}

a.x-btn-navbar[aria-expanded="true"] i.x-icon-bars::before {
    transform: rotate(45deg);
    background-color: var(--red);
}

a.x-btn-navbar[aria-expanded="true"] i.x-icon-bars::after {
    transform: rotate(-45deg);
    width: 48px;
    margin-top: -5px;
    background-color: var(--red);
}

a.x-btn-navbar i.x-icon-bars::before,
a.x-btn-navbar i.x-icon-bars::after,
a.x-btn-navbar::after {
    content: '';
    display: block;
    transition: all 300ms cubic-bezier(.4, 0, .2, 1);
}

a.x-btn-navbar[aria-expanded="true"] i.x-icon-bars::before {
    transform: rotate(45deg);
    background-color: var(--red);
}

a.x-btn-navbar[aria-expanded="true"]::after {
    opacity: 0;
}

#x-nav-wrap-mobile .x-nav .menu-item a {
    border: 4px solid var(--dark-blue);
}

#x-nav-wrap-mobile .x-nav .menu-item a span {
    color: var(--dark-blue);
}

@media screen and (max-width: 768px) {
    #x-root .x-brand img {
        margin-left: 20px
    }
}

/*4 boxes*/
#x-root .drop-box-down {
    margin-top: 1.5em;
}

#x-root .drop-box-up {
    margin-top: -1.5em;
}

#x-root .drop-box-up-top {
    margin-top: -0.5em;
}

@media screen and (min-width: 1500px) {
    #x-root .drop-box-up {
        margin-top: 0.5em;
    }
}

@media screen and (max-width: 1252px) and (min-width: 1199px) {
    #x-root .drop-box-up {
        margin-top: 0.5em;
    }
}

@media screen and (min-width: 1259px) and (max-width: 1262px) {
    #x-root .drop-box-up {
        margin-top: 0em;
    }
}

@media screen and (max-width: 1166px) and (min-width: 1060px) {
    #x-root .drop-box-up {
        margin-top: 0.5em;
    }
}

#x-root .x-navbar-inner>.x-container.max.width {
    max-width: none;
    margin: 0;
    padding: 0rem 4rem;
    width: 100%;
}

@media screen and (max-width: 1099px) and (min-width: 1000px) {
    #x-root .x-navbar-inner>.x-container.max.width {
        padding: 0rem 1rem;
    }
}


/* Grid */

#x-root .padBottomGrid {
    padding-bottom: 1em;
}

#x-root .padtop6 {
    padding-top: 6em;
}

@media screen and (max-width: 767px) {
    #x-root .padBottomGrid {
        padding-bottom: 0;
    }

    #x-root .padtop6 {
        padding-top: 0;
    }
}

@media screen and (max-width: 1499px) and (min-width: 1407px) {

    #x-root .services-box .wpb_column:first-child .wpb_text_column,
    #x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column,
    #x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column {
        min-height: 400px
    }
}

@media screen and (max-width: 1407px) and (min-width: 1001px) {

    #x-root .services-box .wpb_column:first-child .wpb_text_column,
    #x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column,
    #x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column {
        min-height: 440px
    }
}

@media screen and (max-width: 1000px) and (min-width: 822px) {

    #x-root .services-box .wpb_column:first-child .wpb_text_column,
    #x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column,
    #x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column {
        min-height: 380px
    }
}

@media screen and (max-width: 821px) and (min-width: 768px) {

    #x-root .services-box .wpb_column:first-child .wpb_text_column,
    #x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column,
    #x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column {
        min-height: 430px
    }
}

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

    #x-root .services-box .wpb_column:first-child .wpb_text_column,
    #x-root .services-box.drk-right .wpb_column:last-child .wpb_text_column,
    #x-root .services-box.drk-left .wpb_column:last-child .wpb_text_column {
        min-height: 250px;
        margin-bottom: 1em;
    }
}

.error404 .entry-404 {
    margin: 8.5% 0;
    min-height: calc(100vh - 415px);
}

#x-root .hoverWhite:hover {
    color: #ffffff;
}

/*** Cameron Edits ***/
/*** Second level menu ***/

#x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children>a>span {
    position: relative;
    padding-right: 34px;
}

#x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children>a>span::after {
    content: '';
    width: 10px;
    height: 10px;
    border-left: 2px solid var(--dark-blue);
    border-bottom: 2px solid var(--dark-blue);
    position: absolute;
    transform: rotate(-45deg);
    box-sizing: border-box;
    margin-left: 10px;
}

#x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children>a:hover>span::after {
    border-color: var(--red);
}

#x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children .sub-menu {
    /* display: block;
    visibility: hidden;
    opacity: 0; */
    left: 0;
    right: auto;
    border: none;
    padding: 0.5rem 1rem;
    width: 148%;
    /* transition: var(--transition);
    transform: translateY(10px); */
}

/* #x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children:hover .sub-menu {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
  } */

#x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children .sub-menu .menu-item a span {
    border-right: none;
    padding-right: 0;
    font-weight: 700;
    text-transform: uppercase;
    word-break: break-word;
}

/*** Main Menu and Responsiveness 
  @media screen and (min-width: 1000px) and (max-width: 1420px) {
    #x-root .x-nav-wrap.desktop #menu-main-menu li a span {
      font-size: 14px;
      padding-left: 4px;
      padding-right: 4px;
    }
    #x-root .x-navbar-inner>.x-container.max.width {
      padding-left: 0.25rem;
      padding-right: 0.25rem;
    }
    #x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children > a > span {
      padding-right: 20px;
    }
  }***/

@media screen and (min-width: 979px) and (max-width: 999px) {
    #x-root .x-nav-wrap.desktop #menu-main-menu li a span {
        font-size: 0.8em;
        padding-left: 8px;
        padding-right: 8px;
    }

    #x-root .x-navbar-inner>.x-container.max.width {
        padding-left: 0.1rem;
        padding-right: 0.1rem;
    }

    #x-root .x-nav-wrap.desktop #menu-main-menu li.menu-item-has-children>a>span {
        padding-right: 20px;
    }
}

#x-root .esg-filterbutton {
    border: 3px solid var(--red);
    border-radius: 15px;
    color: var(--red);
    transition: var(--transition);
    font-family: Arial, Helvetica, sans-serif;
    text-shadow: none;
    box-shadow: none;
}

#x-root .esg-filterbutton.selected,
#x-root .esg-filterbutton:hover {
    background-color: var(--red);
    color: white;
    text-shadow: none;
    box-shadow: none;
}

#x-root .esg-filters.esg-singlefilters {
    display: flex;
}

.entry-404 .center-text {
    font-size: 1.2em !important;
}

.entry-404 .center-text a {
    margin-top: 1em !important;
}

/** Scroll to Top **/

.x-scroll-top {
    border: 1px solid var(--red);
    color: var(--red);
}

.x-scroll-top.in {
    opacity: 1;
}

.x-scroll-top:hover {
    border: 1px solid var(--grey) !important;
    color: var(--grey) !important;
}

/*** Esg Mobile Styling ***/

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

    #x-root .eg-policies-and-procedures-element-3,
    #x-root .eg-supplier-and-procurement-guides-element-3 {
        font-size: 16px;
    }

    #x-root .eg-policies-and-procedures-element-10,
    #x-root .eg-supplier-and-procurement-guides-element-10 {
        font-size: 20px;
        line-height: 18px;
    }

    #x-root .eg-policies-and-procedures-element-10 i:before,
    #x-root .eg-supplier-and-procurement-guides-element-10 i:before {
        width: 10px;
        line-height: 10px;
    }

    #x-root .eg-policies-and-procedures-element-10-a,
    #x-root .eg-supplier-and-procurement-guides-element-10-a {
        margin: 0;
    }
}

@media screen and (min-width: 640px) and (max-width: 689px) {

    #x-root .eg-policies-and-procedures-element-3,
    #x-root .eg-supplier-and-procurement-guides-element-3 {
        font-size: 14px;
    }

    #x-root .eg-policies-and-procedures-element-10,
    #x-root .eg-supplier-and-procurement-guides-element-10 {
        padding: 4px;
    }
}

#x-root img.top-quotes {
    position: absolute;
    z-index: 0;
    top: 1px;
}

#x-root .quote-text-box {
    z-index: 5;
    position: relative;
    padding-left: 11px;
}

#x-root img.bottom-quotes {
    position: absolute;
    bottom: 50px;
    right: 200px;
}

#x-root .artical-border {
    border: 4px solid var(--red);
    border-radius: 17px;
    z-index: 5;
    position: relative;
}

/**#x-root .artical-border:hover {
    border: 4px solid transparent;
    border-radius: 17px;
}**/


#x-root .artical-border .white-section {
    border-top-left-radius: 13px;
    border-bottom-left-radius: 13px;
}

#x-root .artical-border .image-section .vc_column-inner {
    border-top-right-radius: 13px;
    border-bottom-right-radius: 13px;
}

.esg-grid .mainul li.eg-article-grid-wrapper .esg-entry-media {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
}


.eg-article-grid-element-3 {
    border: 3px solid var(--red) !important;
}

.eg-article-grid-element-3:hover {
    border: 3px solid var(--red) !important;
}

#x-root .grey-circle-bg {
    position: sticky;
    z-index: 50;
}

#x-root .banner-info-box {
    margin-top: -6em;
    border-color: white !important;
}

#x-root .grid-feature {
    margin-top: -7em;
}

#x-root .banner-feature-box {
    margin-top: -6em;
}

#x-root .banner-contact-box {
    margin-top: -13em;
    border-top-right-radius: 50%;
}

#x-root .image-position-grey {
    position: absolute;
    z-index: 0;
    bottom: -170px;
}

#x-root article#esg-grid-6-1-wrap,
#x-root article#esg-grid-5-1-wrap {
    z-index: 1 !important;
}

#x-root .image-box-left {
    border-top-left-radius: 20em;
    border-bottom-left-radius: 20em;
	height: 550px;
}

#x-root .image-box-right {
    border-top-right-radius: 20em;
    border-bottom-right-radius: 20em;
	height: 550px;
}

/*Post*/
#x-root .post.type-post .entry-wrap {
    padding-bottom: 0;
    padding-top: 0;
    border: none;
}

#x-root .post.type-post .x-container.max.width {
    max-width: 100%;
    width: 100%;
}

#x-root .post.type-post .entry-featured {
    margin-top: 0;
    padding: 0;
    border: none;
}

@media screen and (min-width: 768px) {
    #x-root .post.type-post .entry-featured img {
        margin-top: -90px;
        height: 650px;
        min-height: 650px;
        object-fit: cover;
    }
}

#x-root .post.type-post .text-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#x-root .post.type-post .entry-title {
    text-align: left;
    padding: 0;
    margin: 0 7% 0 7%;
    font-size: 228.5%;
    color: white;
}

#x-root .post.type-post .entry-content.content {
    padding: 0 5% 0 5%;
    line-height: 1.313em;
    margin: 3rem 0;
    font-size: 1em;
    max-width: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#x-root .post.type-post .title-section {
    background-color: var(--dark-blue);
    width: 70%;
    border-top-right-radius: 5em;
    border-bottom-right-radius: 5em;
    margin-top: -5em;
    z-index: 99;
    position: relative;
    padding: 3em 0;
}


#x-root .post.type-post .date-header {
    color: var(--red);
    text-align: left;
    padding: 0;
    margin: 0 7%;
    text-transform: uppercase;
    font-weight: 500;
}

/*Mobile Styling*/
@media screen and (max-width: 767px) {
    #x-root .colum-reserve,
	#x-root .column-reverse {
        display: flex;
        flex-direction: column-reverse;
    }

    #x-root .inner-cont .row .info-row {
        width: 100%;
    }
}

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

    #x-root .radius-background {
        width: 100%;
    }

}

@media screen and (min-width: 783px) and (max-width: 977px) {
    #x-root .above-fold {
        margin-top: 135px;
    }
}

@media screen and (max-width: 782px) {
    #x-root .above-fold {
        margin-top: 120px;
    }
}

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

    #x-root .radius-background {
        padding: 40px;
    }

    #x-root .image-section-height {
        min-height: 500px;
    }

    #x-root .artical-border .image-section .vc_column-inner {
        border-top-right-radius: 13px;
        border-top-left-radius: 13px;
		border-bottom-right-radius:0px;
    }

    #x-root .artical-border .white-section {
        border-bottom-left-radius: 13px;
        border-bottom-right-radius: 13px;
        border-top-left-radius: 0;
		border-top-right-radius: 0;
    }
}

@media screen and (max-width: 1372px) {
    #x-root .footer-cont .inner-cont.logo {
        width: 50%;
    }
}

@media screen and (max-width: 550px) {
    #x-root .footer-cont .inner-cont {
        width: 100%;
    }

    #x-root .footer-cont .inner-cont.logo {
        width: 100%;
    }
}

i.x-framework-icon.x-icon-bars {
    display: block;
}

.esg-navigationbutton.esg-right,
.esg-navigationbutton.esg-left {
    border: none !important;
    background-color: transparent !important;
}

.eg-icon-right-open:before,
.eg-icon-left-open:before {
    color: var(--dark-blue);
}

input .fm-hide {
    display: none;
}

@media screen and (max-width: 767px) {
    article.esg-filters.esg-singlefilters.esg-navbutton-solo-left {
        margin-left: -30px !important;
    }

    article.esg-filters.esg-singlefilters.esg-navbutton-solo-right {
        margin-right: -30px !important;
    }

    #x-root .x-navbar-inner .x-container {
        padding: 0rem 2rem !important;

    }
}

#x-root .menu-button {
    display: block;
}

@media screen and (max-width: 978px) {
    #x-root .mobile-top-pad {
        padding-top: 12em;
    }
}

i.x-framework-icon.x-entry-title-icon {
    display: none;
}

#x-root .fm-form .fm-hide {
    display: none;
}

.stema-case-study a,
.case-links a{
	color:var(--dark-blue);
}
.stema-case-study a:hover,
.case-links a:hover{
	color:var(--red);
}

 #x-root .over-image-text{
	z-index: 999;
    position: sticky;
}

@media screen and (max-width: 767px) {
	#x-root .mobile-pad-top{
		padding-top:25px;
	}
	#x-root .image-box-right {
	height: 250px;
}
		#x-root .image-box-left {
	height: 250px;
}
	#x-root .post.type-post .title-section{
		width:100%;
	}
    .x-post-meta-disabled .post .entry-featured {
    margin-top: 20% !important;
}
	.mobile-h5{
		font-size:1.3em;
	}
}
#x-root .esg-entry-skin-article-grid .eg-article-grid-content {
	text-align: left;
}

#x-root .new-image-box > .vc_column-inner {
    height: 550px;
    margin: 2rem 0;
}
#x-root .new-image-box.corner-left > .vc_column-inner {
	border-radius: 30em 0 0 30em;
}

#x-root .new-image-box.corner-right > .vc_column-inner {
	border-radius: 0 30em 30em 0;
}
@media screen and (max-width: 767px) {
	#x-root .new-image-box > .vc_column-inner {
		height: 250px;
	}
	
	#x-root .new-image-box.corner-right > .vc_column-inner {
		margin-right: 2rem;
	}

	#x-root .new-image-box.corner-left > .vc_column-inner {
		margin-left: 2rem;
	}
}
@media screen and (max-width: 767px) {
	#x-root .bg-white.image-box-left.accreditations {
    	height: auto;
    	margin-left: 2rem;
	}
}

.grecaptcha-badge { 
    visibility: hidden !important;
}
#x-root .privacy-links a {
	color: var(--dark-blue);
	text-decoration: underline;
	transition: var(--transition);
}
#x-root .privacy-links a:hover {
	color: var(--red);
}
#x-root .with_frm_style .frm_form_fields>fieldset {
	border: none !important;
}

/*** Title responsiveness ***/
@media screen and (min-width: 1213px) and (max-width: 1570px) {
	#x-root .eg-article-grid-element-1 {
    	min-height: 130px;
	}
}
@media screen and (min-width: 1170px) and (max-width: 1212px) {
	#x-root .eg-article-grid-element-1 {
    	min-height: 155px;
	}
}
@media screen and (min-width: 806px) and (max-width: 1142px) {
	#x-root .eg-article-grid-element-1 {
    	min-height: 130px;
	}
}
@media screen and (min-width: 640px) and (max-width: 805px) {
	#x-root .eg-article-grid-element-1 {
    	min-height: 180px;
	}
}

#x-root .header-shadow{
	text-shadow:0 0 5px black;
}

/* Update Fixes */

#x-root .eg-article-grid-element-3 p{
	margin-bottom:0;
}

@media screen and (min-width: 767px) and (max-width: 1500px){
	#x-root .mobile-size-width{
		width:50% !important;
	}
}