/* 1.1 TYPOGRAPHY */
body {
    font-family: 'Lato', sans-serif;
    font-size: 22px;
    background-color: #ffffff;
    margin: 0;
}
p, li {
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 40px;
    font-weight: 400;
}
h1, h2 {
    color: rgba(0, 0, 0, 0);
    font-weight: bold;
    font-family: 'Archivo', sans-serif;
    text-transform: uppercase;
    -webkit-text-fill-color: white;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #133754;
}
h1 {
    font-size: 45px;
    letter-spacing: 9px;
    line-height: 55px; 
}
h2 {
    font-size: 40px;
    letter-spacing: 8px;
    line-height: 48px;
}
h3 {
    font-size: 30px;
    color: #133754;
    letter-spacing: 3px;
    line-height: 35px;
    font-weight: 900;        
}
h4 {
    font-size: 25px;
    color: #133754;
    letter-spacing: 2.5px;
    line-height: 40px;
    font-weight: 900;    
}
h5 {
    font-size: 22px;
    color: #133754;
    letter-spacing: 2px;
    line-height: 35px;
    font-weight: 900;
}
a {
    color: #133754;
    text-decoration: underline;
    font-weight: 900;
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 40px;
}
img {
    max-width: 100%;
}
div {
    position: relative;
}

/* 1.2 MOBILE */
@media (max-width: 768px) {
 h1 {
    font-size: 28px;
    letter-spacing: 4px;
    line-height: 45px; 
 }
 h2 {
    font-size: 25px;
    letter-spacing: 3.5px;
    line-height: 42px; 
 }
 h3 {
    font-size: 20px;
    letter-spacing: 2px;
    line-height: 30px;
 }  
 h4 {
    font-size: 16px;
    letter-spacing: 1.5px;
    line-height: 25px;
 }  
 h5 {
    font-size: 16px;
    letter-spacing: 1.5px;
    line-height: 25px;
 }   
 a {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px; 
 }
 p, li {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px;
 }
 body {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px; 
 } 
}

/* 2. HEADER & FOOTER */


/* 2.1 HEADER */
.nav-mobile {
    display: none;
}
.nav-desktop {
    height: 65px;
    background-color: #ffffff;
    box-shadow: 0px 3px 6px #0000001A;
    position: fixed;
    top: 0;
    width: 100%;
    align-items: center;
    display: flex;
    justify-content: space-between;
    z-index: 10;
}
.nav-desktop .menu-item-has-children {
    position: relative;
}
.nav-desktop .sub-menu {
    display: none;
    position: absolute;
    top: 37px;
    left: -15px;
    background-color: #ffffff;
    flex-direction: column;
    width: 260px;    
    -webkit-box-shadow: -5px 15px 5px 0px rgba(0,0,0,0.11);
    -moz-box-shadow: -5px 15px 5px 0px rgba(0,0,0,0.11);
    box-shadow: -5px 15px 5px 0px rgba(0,0,0,0.11);    
}
.nav-desktop .sub-menu > li {
    width: 100%;
}
.nav-desktop .sub-menu > li:first-child {
    padding-top: 15px;
}
.nav-desktop .sub-menu > li:last-child {
    padding-bottom: 15px;
}
.nav-desktop .sub-menu a {
    font-size: 14px;
    letter-spacing: 1px;
    display: block;
    width: 230px;
    padding-left: 30px;
    transition: 0.5s;
}
.nav-desktop .sub-menu a:hover {
    color: #ffffff;
    background-color: #133754;
}
.nav-desktop .sub-menu-flex {
    display: flex !important;
}
.nav-desktop img {
    height: 35px;
}
.nav-desktop .home-logo {
    opacity: 0;
}
.nav-desktop > div {
    width: 40%;
}
.nav-desktop ul {
    padding: 0px;
}
.nav-desktop > div > div > ul {
    display: flex;
    justify-content: space-evenly;
}
.nav-desktop ul li {
    display: inline-block;
}
.nav-desktop a {
    font-size: 17px;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    color: #133754;
    letter-spacing: 1.5px;
}
.home-full-logo {
    margin-top: 100px;
    margin-bottom: 50px;
    text-align: center;
}
.home-full-logo img {
    max-height: 100px;
}


/* 2.2 FOOTER */
.footer-wrapper {
    background-color: #133754;
    padding: 80px 15%;
}
.footer-wrapper > div {
    width: 100%;
    display: flex;
}
.footer-wrapper > .footer-top {
    justify-content: space-between;
}
.footer-wrapper > .footer-top > .footer-contact, .footer-wrapper > .footer-top > .footer-cred {
    width: 260px;
}
.footer-wrapper > .footer-top > .footer-cred {
    align-items: center;
}
.footer-wrapper > .footer-top > .footer-cred img {
    height: 80px;
    width: fit-content;
}
.footer-wrapper > .footer-top > div {
    flex-direction: column;
    display: flex;        
}
.footer-wrapper h5 {
    color: #ffffff;
    margin: 0px 0px 20px;    
}
.footer-wrapper > .footer-top a {
    color: #ffffff;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 1.5px;
    line-height: 28px;
    margin-bottom: 20px;
}
.footer-wrapper > .footer-top > .footer-contact a {
    text-decoration: none;
}
.footer-wrapper > .footer-top > div a:last-child {
    text-decoration: underline;
    margin-bottom: 0px;
}
.footer-wrapper > .footer-top > .footer-cred img:first-child {
    margin-bottom: 20px;
}
.footer-wrapper > .footer-bottom {
    margin-top: 80px;
    display: flex;
    justify-content: space-between;
}
.footer-wrapper > .footer-bottom span:first-child, .footer-wrapper > .footer-bottom a {
    width: 250px;
}
.footer-wrapper > .footer-bottom .footer-rights {
    text-align: center;
}
.footer-wrapper > .footer-bottom span {
    color: #ffffff;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 1.5px;
    line-height: 28px;
}
.footer-wrapper > .footer-bottom a {
    color: #ffffff;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 1.5px;
    line-height: 28px;
    text-align: center;
}

/* 2.3 MOBILE */
@media (max-width: 1020px) {
 .nav-desktop a {
    font-size: 14px;
 }
 .nav-desktop img {
    height: 30px;
 }
 .nav-desktop .sub-menu a {
    font-size: 12px;
 } 
 .footer-wrapper {
    background-color: #133754;
    padding: 80px 5%; 
 }
}
@media (max-width: 768px) {
 .nav-desktop {
    display: none;
 }
 .nav-mobile {
    display: block;
    height: 60px;
    display: flex;
    align-items: center;
    padding: 0% 15%;
    box-shadow: 0px 3px 6px #0000001A;    
 }
 .home-full-logo {
    display: none;
 }
 .nav-logo-mobile img {
    max-height: 40px; 
 }
 .nav-mobile-hamburger {
    position: absolute;
    right: 15%;
    height: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between; 
 }
 .nav-mobile-hamburger > span {
    width: 40px;
    display: block;
    height: 5px;
    background-color: #6d6d6d; 
    transition: 0.5s;
 }
 .nav-mobile-open > span:first-child {
    transform: rotate(-30deg) translate(0px,9px);
 }
 .nav-mobile-open > span:last-child {
    transform: rotate(30deg) translate(0px,-9px);
 } 
 #menu-main-menu-mobile {
    display: none; 
 }
 .menu-main-menu-mobile-container {
    position: absolute;
    width: 100%;
    left: 0px;    
 }
 .menu-main-menu-mobile-container > ul {
    position: absolute;
    width: 70%;
    z-index: 30;
    background-color: #ffffff;
    box-shadow: 0px 3px 6px #0000001A;
    padding: 15px 15% 50px;
    margin: 0px;
    top: 31px;       
 }
 .menu-main-menu-mobile-container li {
    display: block; 
 }
 .menu-main-menu-mobile-container a {
    font-size: 19px;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    color: #133754;
    letter-spacing: 1.5px;
    line-height: 40px;
 }
 .menu-main-menu-mobile-container .sub-menu {
    display: none; 
    padding-left: 20px;  
 }
 .menu-main-menu-mobile-container .sub-menu a {
    font-size: 17px !important; 
 }
 .menu-main-menu-mobile-container .sub-menu > a > i {
    transition: 0.5s;
 }
 .menu-main-menu-mobile-container .sub-active > a > i {
    transform: rotate(-90deg) scale(-1, -1);    
 } 
 .footer-top {
    flex-direction: column;
    align-items: center;     
 }
 .footer-contact {
    text-align: center;
    width: 100%; 
    margin-bottom: 50px;    
 }
 .footer-social {
    width: 100%;
    text-align: center;
    margin-bottom: 50px;
 }
 .footer-cred {
    width: 200px;
    justify-content: space-between; 
 }
 .footer-bottom {
    flex-direction: column;
    text-align: center; 
 }
 .footer-rights {
    margin: 10px 0px;
 }
 .footer-bottom > span {
    width: 100% !important; 
 }
 .footer-bottom > a {
    width: 100% !important; 
 } 
}

/* 3.1 HOMEPAGE */
.home-header-wrapper > .header-title-wrapper {
    text-align: center;
}
.home-header-wrapper > .header-title-wrapper > img {
    margin: 0px 0px 30px;
    width: 95%;
    max-width: 1400px;
}
.home-slideshow .content-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    text-align: center;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    display: flex;
}
.home-slideshow .content-wrapper > .content-box-1 > span {
    color: #ffffff;
    font-size: 40px;
    letter-spacing: 6px;
    line-height: 70px;
    font-weight: 900;
}
.home-slideshow .content-wrapper > .content-box-2 > a {
    color: #133754;
    text-decoration: none;
    letter-spacing: 2.2px;
    background-color: #ffffff;
    text-transform: uppercase;
    padding: 3px 45px;
    font-size: 18px;
    border-radius: 5px;
    margin-top: 50px;
    display: block;
    font-weight: 400;
}
.home-slideshow .content-wrapper > .content-box-2 > span {
    color: #ffffff;
    letter-spacing: 2.5px;
    line-height: 70px;
    font-size: 18px;
}
.home-slideshow .grey-content {
    background-color: rgba(0, 0, 0, 0.45);
}
.home-slideshow .blue-content {
    background-color: rgba(19, 55, 84, 0.80);
}
.home-services-wrapper {
    padding: 150px 7.5% 90px;
    width: 85%;
    background-color: #F2F2F2;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.home-services-wrapper > a {
    display: block;
    cursor: pointer;
    width: 48%;
    height: 500px;    
    margin-bottom: 60px;
}
.home-services-wrapper .home-service {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;   
    position: relative;
}
.home-services-wrapper .home-service-text {
    position: absolute;   
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    display: flex;
    justify-content: end;
    align-items: flex-end;    
    transition: 0.5s;
}
.home-services-wrapper .home-service-text:hover {
    background-color: rgba(0, 0, 0, 0.1);
}
.home-services-wrapper .home-service-text span {
    color: #ffffff;
    font-size: 40px;
    letter-spacing: 4px;
    line-height: 40px;
    text-transform: uppercase;
    font-weight: 900;
    margin-left: 40px;
    margin-bottom: 40px;    
}
.home-testimonial-wrapper {
    padding: 170px 15% 70px;
    width: 70% !important;
    align-items: flex-start !important;    
}
.home-testimonial-wrapper > h2 {
    margin-bottom: 40px;
}
.home-testimonial-wrapper > .slideshow-bar {
    width: 100% !important;
    margin: 40px 0px !important;    
}
.home-testimonial-wrapper > .home-testimonial {
    display: none;
}
.home-testimonial-wrapper > .home-testimonial > h4 {
    display: inline;
    margin-right: 50px;    
    font-weight: 700;
    text-transform: uppercase;
}
.home-testimonial-wrapper > .home-testimonial > p {
    font-size: 18px;
    margin-bottom: 40px;
    margin-top: 0px;    
}

/* 3.2 MOBILE */
@media (max-width: 1020px) {
 .header-title-wrapper {
    display: none;
 }
.home-services-wrapper > a {
    width: 100%;
    height: 300px;
 }
.home-services-wrapper .home-service-text {
    text-align: center;
    justify-content: center;    
 }
 .home-testimonial-wrapper {
     text-align: center;
 }
 .home-testimonial h4 {
    width: 100%;
    display: block !important;
    margin: 10px 0px !important;
 }
 .content-wrapper {
    width: 90% !important;
    padding: 0% 5%; 
 }
 .home-slideshow .content-wrapper > .content-box-1 > span { 
    font-size: 30px;
    letter-spacing: 4px;
    line-height: 45px; 
 }
 .home-services-wrapper {
    padding: 75px 7.5% 50px;
 }
}
@media (max-width: 768px) {
 .home-slideshow .content-wrapper > .content-box-1 > span { 
    font-size: 20px;
    letter-spacing: 3px;
    line-height: 40px;
 }
.home-services-wrapper > a {
    width: 100%;
    height: 200px;
 } 
 .home-services-wrapper .home-service-text span { 
    font-size: 18px;
    margin: 0px 0px 30px 0px;
    letter-spacing: 2px;
    line-height: 22px; 
 }
 .home-testimonial-wrapper {
    padding: 50px 10% 50px;
    width: 80% !important; 
 }
 .home-testimonial-wrapper > .home-testimonial > h4 {
    font-size: 16px;
    letter-spacing: 1.5px;
    line-height: 25px;
 } 
 .home-testimonial-wrapper > .home-testimonial > p {
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 30px;
 }
 .home-slideshow .content-wrapper > .content-box-2 > a {
    padding: 3px 35px;
    font-size: 15px;
 } 
 .home-slideshow .content-wrapper > .content-box-2 > span {
    letter-spacing: 1.5px;
    line-height: 30px;
    font-size: 14px;
 } 
 .content-box-2 {
    margin-top: 25px; 
 }
}

/* 4.1 SERVICE LISTING */
.service-header {
    margin-top: 100px;
    text-align: center;
}
.service-header h2 {
    margin: 0px;
}
.services-wrapper {
    padding: 50px 7.5% 100px;
    width: 85%;
    background-color: #ffffff;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.services-wrapper > a {
    display: block;
    cursor: pointer;
    width: 48%;
    height: 300px;    
    margin-bottom: 60px;
}
.services-wrapper .service {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;   
    position: relative;
}
.service .service-text {
    position: absolute;   
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    display: flex;
    justify-content: end;
    align-items: flex-end;    
    transition: 0.5s;
}
.services-wrapper .service-text:hover {
    background-color: rgba(0, 0, 0, 0.1);
}
.services-wrapper .service-text span {
    color: #ffffff;
    font-size: 40px;
    letter-spacing: 4px;
    line-height: 40px;
    text-transform: uppercase;
    font-weight: 900;
    margin-left: 40px;
    margin-bottom: 40px;    
}
.services-faq-wrapper {
    padding: 100px 7.5%;
    width: 85%;
    background-color: #F2F2F2;  
    display: flex;    
    flex-direction: column;
    align-items: center;
}
.services-faq-wrapper > h2 {
    text-align: center;
}
.services-faq-wrapper > .service-faq {
    width: 80%;
    margin-bottom: 50px;
}
.services-faq-wrapper > div > h4 {
    text-transform: uppercase;
    text-align: center;
}
.service-list-slideshow {
    padding: 170px 5%;
    margin-bottom: 0px !important;
    width: 90% !important;
}
.service-list-slideshow .content-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    top: 0px;
    left: 0px;
    background-color: rgba(0, 0, 0, 0.45);
}
.service-list-slideshow .content-wrapper h3, .service-list-slideshow .content-wrapper a {
    text-transform: uppercase;
    color: #ffffff;
}
.service-list-slideshow .content-wrapper a {
    font-size: 30px;
    letter-spacing: 3px;
    line-height: 35px;
    font-weight: 900;    
}
.footer-callout-services h4 {
    margin-bottom: 180px;
}
.slideshow-no-margin-bottom {
    padding-bottom: 0px !important;    
}
.slideshow-no-margin-bottom > .slideshow-wrapper {
    margin-bottom: 100px !important;
}
.second-slideshow {
    padding-top: 0px !important;
}
.second-slideshow > .slideshow-wrapper {
    margin-top: 50px !important; 
}
.second-slideshow > h2 {
    margin-bottom: 0px !important;
}

/* 4.2 MOBILE */
@media (max-width: 1020px) {
 .footer-callout-services h4 {
    margin-top: 50px;
 }
 .service-list-slideshow .content-wrapper a { 
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px; 
 }
.services-wrapper > a {
    width: 100%;
    height: 300px;
 }
.services-wrapper .service-text {
    text-align: center;
    justify-content: center;    
 }
} 
@media (max-width: 768px) {
.services-wrapper > a {
    width: 100%;
    height: 200px;
 } 
 .services-wrapper .service-text span { 
    font-size: 18px;
    margin: 0px 0px 30px 0px;
    letter-spacing: 2px;
    line-height: 22px; 
 }
 .services-faq-wrapper > div > h4 {
    font-weight: 700;
 } 
}

/* 5.1 SERVICE POST */
.service-post-header {
    width: 80%;
    padding: 120px 10% 150px;
}
.service-post-header h2 {
    margin-top: 0px;
    margin-bottom: 75px;
    text-align: center;
}
.service-post-header h3, .service-post-header h4, .service-post-header h5 {
    margin-top: 0px;
}
.footer-callout-service h4 {
    margin-bottom: 150px;
}
.block-color-wrapper {
    width: 75%;
    padding: 0px 12.5% 0px;
}
.block-colors {
    display: flex;
    flex-wrap: wrap;    
    justify-content: space-evenly;
    width: 100%;
}
.block-color-wrapper h2 {
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 60px;
}
.block-color-wrapper a {
    text-align: center;
    text-transform: uppercase;
    font-size: 25px;
    letter-spacing: 2.5px;
    display: inherit;
    line-height: 35px;
    margin-top: 60px;
}
.block-colors img {
    margin-bottom: 20px;    
}
.service-list-slideshow-wrapper {
    background-color: #f2f2f2;
    padding: 150px 0px;    
    display: flex;
    flex-direction: column;
    align-items: center;
}
.service-list-slideshow-content {
    width: 80%;  
}
.service-list-slideshow-wrapper > .slideshow-wrapper {
    margin-top: 150px;
}
.service-list-slideshow-content h2 {
    text-align: center;
    text-transform: uppercase;
}
.service-list-portfolios {
    display: flex;
    flex-direction: column;
    text-align: center;
}
.service-list-portfolios a {
    text-transform: uppercase;
    line-height: 65px;
    font-size: 25px;
    letter-spacing: 2.5px;
}
.callout-white {
    background-color: #ffffff !important;
}
.service-content-wrapper {
    padding: 0px;   
    background-color: #f2f2f2; 
    display: flex;
    flex-direction: column;    
}
.service-content-wrapper > p {
    width: 80%;
    align-self: center;
}
.service-content-wrapper li {
    font-size: 22px;
    color: #133754;
    text-transform: uppercase;
    line-height: 60px;
    letter-spacing: 2px;
    font-weight: 900;
    margin-left: 30%;    
}
.service-content-wrapper > div:last-chid {
    padding-bottom: 0px;
}
.service-content-wrapper .padding-bottom {
    padding-bottom: 150px;
}
.service-content-wrapper .padding-top {
    padding-top: 150px;
}
.block-icon-wrapper {
    width: 100%;
}
.block-icon-wrapper > h2 {
    text-align: center;
    margin-bottom: 50px;
    margin-top: 0px;    
}
.block-icons {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.block-icon {
    width: 20%;
    min-width: 150px;
    margin-top: 25px;
    text-align: center;
}
.block-icon img {
    max-height: 120px;
}
.service-flex {
    display: flex;
    justify-content: space-between;
    align-self: center;
    width: 80%;
}
.service-flex div {
    width: 40%;
}

/* 5.2 MOBILE */
@media (max-width: 1020px) {
 .service-post-header {
    width: 80%;
    padding: 50px 10% 50px;
 }
 .service-list-slideshow-wrapper {
    background-color: #f2f2f2;
    padding: 50px 0px;
 }
 .footer-callout-service h4 {
    margin-bottom: 50px;
 } 
 .service-list-slideshow-wrapper > .slideshow-wrapper {
    margin-top: 50px; 
 }
 .service-list-portfolios a {
    line-height: 65px;
    font-size: 18px;
    letter-spacing: 1.5px;
 } 
.service-content-wrapper .padding-top {
    padding-top: 50px;
 } 
.service-content-wrapper .padding-bottom {
    padding-bottom: 50px;
 }  
 .service-content-wrapper h2 {
    width: 90%;
    padding: 0px 5%; 
    text-align: center;    
 }
 .service-flex {
    flex-direction: column; 
 }
 .service-flex div {
    width: 100%;
 } 
} 
@media (max-width: 768px) {
 .service-content-wrapper li {
    font-size: 16px;
    line-height: 35px;
    margin-bottom: 25px;
    letter-spacing: 1px;
    margin-left: 10%;
    margin-right: 5%;
 }
 .block-icon img {
    max-height: 75px;
 } 
}

/* 6.1 PORTFOLIO LISTING */
.portfolio-list-header {
    text-align: center;
    margin-bottom: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;    
}
.portfolio-list-header p {
    width: 90%;
}
.portfolio-list-header h2 {
    text-transform: uppercase;
    margin-top: 100px;
}
.portfolio-list-header h5 {
    text-transform: uppercase;    
    margin-bottom: 0px;
}
.portfolio {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.portfolio-list {
    padding: 180px 10%;
    width: 80%;
    display: flex;
    justify-content: space-between;
}
.portfolio-list > div {
    width: 45%;   
    display: flex;
    flex-direction: column;
    justify-content: center;    
}
.portfolio-list > div > h3 {
    text-transform: uppercase;
    margin: 0px 0px 5px;    
}
.portfolio-list > div > span {
    font-style: italic;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 2px;
    display: inline-block;
}
.portfolio-list > div > a {
    font-size: 25px;
    text-transform: uppercase; 
}
.portfolio > div:nth-child(odd) {
    background-color: #FFFFFF;
}
.portfolio > div:nth-child(even) {
    background-color: #F2F2F2;
}
.portfolio-list:nth-child(even) > .portfolio-list-content {
    order: 1;
    text-align: right;
}
.portfolio-list:nth-child(even) > .portfolio-list-image {
    order: 2;
}
.footer-callout-portfolio {
    background-color: #ffffff !important;
}

/* 6.2 MOBILE */
@media (max-width: 1020px) {
 .portfolio-list-header {
    margin-bottom: 75px;
    display: flex;
    flex-direction: column;
    align-items: center;    
 }
 .portfolio-list {
    flex-direction: column;
    align-items: center;
    width: 100%; 
    padding: 0px 0px 75px !important;
 }
 .portfolio-list-image {
    order: 1 !important;
    width: 100% !important; 
 } 
 .portfolio-list-content {
    order: 2 !important;
    margin-top: 50px !important;
    text-align: center !important;
    width: 60% !important; 
 }
}
@media (max-width: 768px) {
 .portfolio-list > div > a {
    font-size: 22px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 30px;
    letter-spacing: 2px;
 }
}

/* 7.1 PORTFOLIO POST */
.portfolio-video {
    width: 100%;
    height: 550px;
    overflow: hidden;
    position: relative;    
    text-align: center;
    background-size: cover;
    background-position: center;
    margin-top: 34px;    
}
.portfolio-video-inner {
    position: absolute;
    color: white;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,0,0,0.20);
    z-index: 1;
    flex-direction: column;
}
div[role=dialog] {
    position: inherit;
}
.portfolio-video-inner div {
    width: 125px !important;
    height: 100px !important;
}
.portfolio-video-inner img {
    cursor: pointer;
    width: 125px !important;
    height: 100px !important;    
}
.portfolio-post-header {
    width: 80%;
    padding: 120px 10% 150px;
}
.portfolio-post-header h2 {
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 75px;
}
.portfolio-post-header p {
    margin: 0px;
}
.portfolio-post-wrapper {
    background-color: #f2f2f2;
    display: flex;
    flex-direction: column;
}
.portfolio-post-flex {
    display: flex;
    justify-content: space-between;
    align-self: center;
    width: 80%;
    padding: 150px 0px;
}
.portfolio-post-flex > div:first-child {
    width: 35%;
}
.portfolio-post-flex > div:last-child {
    width: 50%;
}
.portfolio-post-flex li {
    padding-bottom: 50px;
}

/* 7.2 MOBILE */
@media (max-width: 1020px) {
 .portfolio-post-wrapper {
     margin-top: 75px;
 }
 .portfolio-post-flex {
    flex-direction: column; 
    padding: 75px 0px;
 }
 .portfolio-post-flex > div:first-child {
    width: 100%;
 } 
 .portfolio-post-flex > div:last-child {
    width: 100%;
 } 
 .portfolio-post-header {
    padding: 75px 10% 75px;    
 }
} 

/* 8.1 GALLERY */
.gallery-wrapper {
    margin-top: 100px;
}
.gallery-wrapper h2 {
    text-align: center;
    margin-bottom: 75px;
}
.gallery-links {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin-bottom: 120px;
}
.gallery-links > .active {
    color: #747474;
    text-decoration: none;
} 
.galleries {
    display: flex;
    justify-content: center;
    min-height: 100vh;    
}
.galleries > div:first-child {
    display: block;
}
.galleries > div {
    display: none;    
    width: 90%;    
}
.galleries > div > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.gallery .image {
    width: 29%;
    height: 350px;
    min-width: 300px;    
    background-size: cover;
    background-position: center;
    cursor: pointer;
    display: inline-block;
    padding: 0px;
    margin-bottom: 90px;
    border: solid 1px #707070;    
}
.gallery .slideshow-arrows {
    width: 100%;
    text-align: center;    
    margin-bottom: 120px;
}
.gallery .slideshow-arrows > i {
    font-size: 30px;
    color: #B2B2B2;
    cursor: pointer;
}
.gallery .slideshow-arrows > span {
    width: 50px;
    display: inline-block;
}
.gallery .flex {
    display: flex;
}
.lightbox {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 20;
    top: 0px;
    left: 0px;
    background-color: rgba(0, 0, 0, 0.6);
    display: none;
    justify-content: center;
    align-items: center;
}
.lightbox .fa-times {
    position: absolute;
    right: -20px;
    top: -70px;
    font-size: 30px;
    color: rgba(112, 112, 112, 1);
    background-color: #ffffff;
    padding: 10px 20px;
    z-index: 21;
    font-weight: 100;
    cursor: pointer;
}
.lightbox .lightbox-arrows {
    position: absolute;
    bottom: -47px;
    width: 90px;
    height: 30px;
    left: 50%;
    margin-left: -45px;
    text-align: center;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.lightbox .lightbox-arrows > i {
    font-size: 18px;
    color: #B2B2B2;
    cursor: pointer;
}
.lightbox .lightbox-arrows > span {
    width: 35px;
    display: inline-block;
}
.lightbox .lightbox-inner {
    position: relative;
    height: 70%;
    max-height: 80%;
    max-width: 90%;
    border: solid white 20px;
}
.lightbox .lightbox-image {
    height: 100%; 
    display: none;
}
.lightbox-image img {
    max-height: -webkit-fill-available;
    height: auto;    

}
/* 8.2 MOBILE */
@media (max-width: 768px) {
 .gallery .image {
    width: 100%;
 }
.lightbox .lightbox-inner {
    height: fit-content;
 }
}

/*  9.1 ABOUT */
.team-members-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 100px;    
}
.team-content-wrapper {
    background-color: #f2f2f2;
    padding-top: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.team-content-wrapper .team-content {
    padding-bottom: 150px;
    width: 85%;
    justify-content: space-between;
    align-items: center;
    display: flex;
}
.team-content-wrapper .team-content > div {
    width: 45%;
}
 .team-content > .content {
    text-align: right;
 }
.team-member-title {
    text-align: center;
    padding: 100px 0px 50px;
}
.team-members {
    display: flex;
    width: 80%;
    justify-content: space-evenly;
    flex-wrap: wrap;
}
.team-members > .team-member {
    width: 25.5%;
    min-width: 350px;
    max-width: 450px;  
    text-align: center;
    margin-bottom: 50px;
}
.team-members > .team-member img {
    border-radius: 50%;
    max-width: 300px;    
    width: 90%;
}
.team-member > h3 {
    text-transform: uppercase;
    margin-bottom: 0px;
}
.team-member > h5 {
    font-weight: 300;
    margin: 10px 0px;
    text-transform: uppercase;
    color: #464646;
    font-size: 13px;    
}
.team-member > p {
    font-size: 18px;
}
.who-icon-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #f2f2f2;
    padding: 150px 0px;
}
.who-icons {
    display: flex;
    justify-content: space-around;
    width: 80%;
    flex-wrap: wrap;    
}
.who-icons > div {
    text-align: center;
    width: 25%;
    min-width: 250px;   
    margin-bottom: 75px;
}
.who-icons > div img {
    max-width: 70%;
    max-height: 100px;    
}
.who-icon-wrapper p {
    font-size: 18px;
    margin: 25px 0px 0px;
    padding: 0px 5%;
    text-align: center;    
}
.who-icon-wrapper a {
    font-size: 18px;
}
.who-icon-wrapper p, .who-icon-wrapper h5 {
    margin: 25px 0px 0px;
}
.testimonial-header {
    margin-bottom: 120px;
}
.testimonial-header h2 {
    margin-top: 100px;
    text-align: center;
}
.testimonial-header > div {
    text-align: center;
}
.testimonial-header .top {
    margin: 50px 0px;
}
.testimonial-header a {
    display: block;
    line-height: 50px;    
}
.testimonial-wrapper {
    flex-direction: column;
    align-items: center;
}
.testimonial-wrapper > div:nth-child(odd) {
    background-color: #ffffff !important;
}
.testimonial-wrapper > div:nth-child(even) {
    background-color: #f2f2f2 !important;
}
.testimonial {
    padding: 150px 15%;
    width: 70%;
}
.testimonial > p {
    font-size: 18px;
    margin-bottom: 40px;
    margin-top: 0px;
}
.testimonial > h4 {
    display: inline;
    margin-right: 50px;
    font-weight: 700;
    text-transform: uppercase;
}
.employment-header a {
    margin-top: 50px;
}
.employment-wrapper {
    padding: 150px 15%;
    width: 70%;
    background-color: #f2f2f2;
}
.employment-wrapper li {
    color: #133754;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 60px; 
}
.employment-wrapper h5 {
    line-height: 20px;
    margin-left: 25%;
    font-weight: 400;
    color: #202224;
}
.contact-header {
    width: 60%;
    padding: 120px 20% 150px;
    text-align: center;
}
.contact-form-wrapper {
    background-color: #f2f2f2;
    padding: 100px 10% 150px;
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.contact-form {
    width: 80%;
    max-width: 700px;
}
.contact-form .nf-form-title {
    display: none;
}
.contact-form .nf-form-fields-required {
    display: none;
}
.contact-form label {
    color: #133754;
    text-transform: uppercase;
    font-weight: 900;
    font-family: 'Lato', sans-serif;
    letter-spacing: 2px;
}
.contact-form .nf-field {
    margin-top: 50px;
}
.contact-form .label-above .nf-field-element {
    text-align: center;
}
.contact-form [type="button"] {
    background-color: #133754 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    letter-spacing: 2.2px !important;
    text-transform: uppercase !important;
    padding: 4px 35px !important;
    font-size: 18px !important;
    border-radius: 5px !important;
    display: inline-block !important;
    width: fit-content !important;
    transition: 0.5s !important;
    font-weight: 400 !important;
}
.contact-form [type="button"]:hover {
    background-color: #5d7c96 !important;
}
.contact-form-wrapper .contact-content {
    width: 70%;
}

/* 9.2 MOBILE */
@media (max-width: 1020px) {
 .gallery .image {
    padding: 100px 0px 50px;
 }
 .team-content-wrapper .team-content {
    padding-bottom: 50px; 
    flex-direction: column;    
    text-align: center;    
 }
 .team-content-wrapper .team-content > div {
    width: 100%;
 } 
 .team-content > .image {
     order: 1;
 } 
 .team-content > .content {
     order: 2;
     text-align: center;
 }
 .team-members > .team-member {
    width: 90%;
    min-width: 90%; 
 }
}
@media (max-width: 768px) {
 .portfolio-post-header h2 {
    margin-bottom: 50px;
 } 
 .contact-form {
    width: 100%;
 }
 .contact-form-wrapper .contact-content {
    width: 90%;
 } 
 .contact-header {
    width: 80%;
    padding: 75px 10% 75px;
 }
 .header-image-wrapper {
    height: 40vh !important;
    min-height: 250px !important;
 }
 .header-image-wrapper > div:first-child { 
    display: none;
 }
 .header-image-wrapper > div:last-child {
    width: 100% !important; 
 }
 .testimonial {
    padding: 75px 15%; 
 }
 .testimonial > h4 {
    display: block;
 }
 .employment-header a {
    font-size: 12px !important; 
 }
 .employment-footer a {
    font-size: 12px !important;  
 }
 .employment-wrapper h5 {
    line-height: 20px;
    margin-left: 7%; 
 }
 .employment-wrapper h5 strong { 
    display: block; 
 }
 .employment-wrapper {
    padding: 75px 10%;
    width: 80%;
 } 
 .header-image-wrapper { 
    margin-top: 0px !important; 
 }
}
    /* 11. BLOG */
.resource-header-wrapper {
    overflow: hidden;
    height: 350px;
    width: 100%;
    background-position: center;
    background-size: cover;
    z-index: 1;
    position: relative;
    margin-top: 34px;
}
.resource-header-content {
    background-color: rgb(19 55 84 / 60%);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.resource-header-content h1 {
    -webkit-text-stroke-color: inherit; 
}
.background-resources {
    background-image: url('/wp-content/uploads/2020/10/BSV-57.jpg');
}
.blog-listing-wrapper {
    margin-top: 150px;
    margin-bottom: 150px;
    padding-left: 10%;
    padding-right: 10%;
}
.blog-listing-outer-wrapper {
    display: flex;
    justify-content: center;
}
.blog-listing-inner-wrapper {
    display: flex;
    justify-content: space-between;
    max-width: 1400px;
    width: 100%;
    flex-wrap: wrap;
}
.blog-post-listing {
    width: 100%;
    margin-bottom: 50px;
}
.blog-post-listing a {
    text-decoration: none;
    text-transform: capitalize;
    color: #336A8B;
}
.blog-post-listing p {
    margin-top: 5px;
    font-size: 16px;
    letter-spacing: 1px;    
}
.blog-post-meta {
    color: #999999;
    font-size: 20px;
}
.blog-listing-image {
    height: 400px;
    border-radius: 5px;
    background-position: center;
    background-size: cover;
    position: relative;
}
.blog-post-header {
    overflow: hidden;
    margin-top: 65px;
    height: 400px;
    width: 100%;
    background-position: center;
    background-size: cover;
    z-index: 1;
    position: relative;    
}
.blog-post-header-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    height: 100%;
    width: 95%;
    background-color: rgba(0, 0, 0, 0.70);
    text-align: center;
    padding-left: 2.5%;
    padding-right: 2.5%;
}
.blog-post-header-inner h1 {
    text-transform: capitalize;   
    -webkit-text-stroke-color: inherit;     
}
.blog-post-body {
    padding-left: 10%;
    padding-right: 10%;
    margin-top: 100px;
    margin-bottom: 100px;
    max-width: 1200px;
    width: 100%;
}
.blog-post-outer {
    display: flex;
    justify-content: center;
}
.blog-post-body h2 {
    margin: 70px 0px 30px;
}
.blog-post-body p {
    font-size: 20px;
    letter-spacing: 1.5px;
}


/* RE-USEABLE MODULES */
.main-cta {
    background-color: #133754;
    color: #ffffff;
    text-decoration: none;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    padding: 4px 35px;
    font-size: 18px;
    border-radius: 5px;
    display: inline-block;
    width: fit-content;
    transition: 0.5s;
    font-weight: 400;
}
.main-cta:hover {
    background-color: #5d7c96;
}
.section-wrapper {
    position: absolute;
    text-align: end;
    width: 100%;
    height: calc(100% - 200px);
    right: 0px;
    white-space: nowrap;    
}
.section-title {
    font-weight: 400;
    display: inline-block;
    letter-spacing: 2.5px;
    font-family: 'Archivo', sans-serif;
    color: #9c9c9c;
    font-size: 16px;
    text-transform: uppercase;
    transform: rotate(90deg) scale(-1, -1);
    position: -webkit-sticky;
    position: sticky;
    margin-right: -60px;
    width: 200px;
    top: 165px;
    z-index: 5;    
}
.footer-callout {
    background-color: #F2F2F2;
    padding: 180px 0px;
    text-align: center;
}
.footer-callout h1 {
    margin-top: 0px;
    margin-bottom: 55px;
    text-transform: uppercase;
    color: rgb(255 255 255 / 0%) !important;
}
.footer-callout h4 {
    text-transform: uppercase;
}
.slideshow-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 150px;
    width: 100%;
}
.slideshow-image-wrapper {
    height: 50vh;
    min-height: 650px;
    width: 90%;
    position: relative;
}
.slideshow-image-wrapper > .slideshow-images {
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    justify-content: center;     
}
.slideshow-image-wrapper > .slideshow-images-2 {
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    justify-content: center;    
}
.portfolio-image, .services-image {
    display: flex;
    justify-content: center;
}
.portfolio-image > .slideshow-images, .services-image > .slideshow-images, .services-image > .slideshow-images-2  {
    max-width: 1400px;   
}
.slideshow-image-wrapper > .slideshow-images .portrait {
    width: 460px !important;
}
.slideshow-image-wrapper > .slideshow-images-2 .portrait {
    width: 460px !important;
}
@media (max-width: 550px) {
.slideshow-image-wrapper > .slideshow-images .portrait {
    width: 100% !important;
 }
.slideshow-image-wrapper > .slideshow-images-2 .portrait {
    width: 100% !important;
 }
}
.slideshow-wrapper > .slideshow-bar {
    width: 70%;
    margin: 25px 0px;
    display: flex;
    max-width: 1400px;    
}
.slideshow-wrapper > .slideshow-bar > .active {
    background-color: #BFBFBF !important;    
}
.slideshow-wrapper > .slideshow-bar > span {
    background-color: #D8D8D8;
    display: block;
    height: 6px;
    flex: 1;
}
.slideshow-wrapper > .slideshow-arrows {
    width: 100%;
    text-align: center;
}
.slideshow-wrapper > .slideshow-arrows > span {
    width: 50px;
    display: inline-block;
}
.slideshow-wrapper > .slideshow-arrows > i {
    font-size: 30px;
    color: #B2B2B2;
    cursor: pointer;
}
.slideshow-image-wrapper > .slideshow-images > .image {
    background-size: cover;
    background-position: center;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;    
    max-width: 100%;
}
.slideshow-image-wrapper > .slideshow-images-2 > .image {
    background-size: cover;
    background-position: center;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;     
    max-width: 100%;    
}
.slideshow-image-wrapper > .slideshow-images {
    opacity: 0;
}
.slideshow-image-wrapper > .slideshow-images-2 {
    opacity: 0;
}
.slideshow-image-wrapper > .slideshow-images:first-child {
    opacity: 1;
}
.slideshow-image-wrapper > .slideshow-images-2:first-child {
    opacity: 1;
}
.header-image-wrapper {
    display: flex;
    justify-content: space-between;
    height: 50vh;
    min-height: 450px;
    width: 100%;
    margin-top: 33px;
}
.header-image-wrapper > div:first-child {
    width: 35.7%;
}
.header-image-wrapper > div:last-child {
    width: 64%;
}
.header-image-wrapper > div {
    background-position: center;
    background-size: cover;
}
.service-content-wrapper-2 {
    padding: 100px 0px 50px;   
    background-color: #ffffff; 
    display: flex;
    flex-direction: column;   
}
.service-content-image {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 50px;
    margin-bottom: 50px;
}
.no-padding {
    padding: 0px !important;
}
.margin-150-bottom {
     margin-bottom: 150px;
}
.service-content-image > .left {
    order: 1;
}
.service-content-image > .right {
    order: 2;
}
.service-testimonial {
    background-color: #F2F2F2;
    margin: 100px 0px;
}
.service-portfolio-wrapper {
    margin: 0px 0px;
    display: flex;
    flex-direction: column;   
    text-align: center;
    padding: 0% 10%;
    width: 80%;    
}
.service-portfolio-wrapper > h3 {
    margin-bottom: 60px;
}
.service-portfolio {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.service-portfolio > a {
    display: block;
    width: 48%;
    height: 400px;
    background-size: cover;
    background-position: center;
    position: relative;
    margin-bottom: 60px;
}
.service-portfolio .portfolio-service-content {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-end;
    text-align: left;   
    background-color: rgba(0, 0, 0, 0.25);    
}
.service-portfolio .portfolio-service-content h2, .service-portfolio .portfolio-service-content p {
    padding-left: 40px;
}
.service-portfolio .portfolio-service-content h2 {
    color: white;
    border: none;
    -webkit-text-stroke-width: 0px;
    font-size: 35px;
    letter-spacing: 2px;
    margin: 0px;
}
.service-portfolio .portfolio-service-content p {
    color: white;
    font-size: 16px;
    font-weight: 600;
    margin-top: 0px;    
}
.padding-footer-custom {
    padding: 0px 0px 180px !important;
}
.service-testimonial > div {
    padding: 150px 10%;
    width: 80%;
}
.service-testimonial h4  {
    display: inline;
    margin-right: 50px;    
    font-weight: 700;
    text-transform: uppercase;
}
.service-testimonial p {
    font-size: 25px;
    margin-bottom: 40px;
    margin-top: 0px;    
}
.service-content-image > div:first-child {
    width: 45%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.service-content-image .space {
    width: 30px;
}
.service-content-image > div:last-child {
    width: 45%;
}

@media (max-width: 1078px) {
.service-content-image {
    flex-direction: column;
    width: 100%; 
 }
.service-content-image > div:first-child {
    width: 90%;
    order: 2;
 }
.service-content-image > div:last-child {
    width: 90%;
    order: 1;
 } 
.service-portfolio > a {
    width: 100%;
 }
}
@media (max-width: 1020px) {
 .slideshow-wrapper {
    margin-bottom: 25px; 
 }
 .slideshow-image-wrapper {
    width: 100%; 
 }
 .section-wrapper {
    display: none;
 }
 .slideshow-wrapper > .slideshow-bar {
    display: none;
 }
 .slideshow-wrapper > .slideshow-arrows {
    margin-top: 25px;
 }
 .footer-callout {
    padding: 75px 5%;
    width: 90%; 
 }
}
