/*
    Theme Name: Stalca
    Theme URI: http: //cultureinspired.com
    Description: Stalca by Culture Inspired.
    Version: 1.0.0
    Author: Culture Inspired
    Author URI: http: //cultureinspired.com
*/


/*** GLOBAL CSS ***/

/* Fonts */

@font-face {
    font-family: 'Open Sans';
    src: url('./assets/fonts/OpenSans-Bold.ttf') format('ttf'),
         url('./assets/fonts/OpenSans-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./assets/fonts/OpenSans-SemiBold.ttf') format('ttf'),
         url('./assets/fonts/OpenSans-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}

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


/* Layout Styling */

body {
    font-family: 'Open Sans', sans-serif;
}

.ieNotice {
    position: fixed;
    display: none;
    visibility: hidden;
    bottom: 0;
    width: 100%;
    margin: auto;
    z-index: 999;
    background: #fff;
    padding: 48px 0;
    text-align: center;
}

_:-ms-fullscreen, :root .ieNotice { /* IE 11 Only */
    display: block;
    visibility: visible;
}

.ieNotice span {
    font-weight: 700;
    color: #1f1f1f;
}

.sectionHeading {
    width: 92%;
    margin: 0 auto 64px auto;
    text-align: center;
}

.sectionHeading__header {
    font-size: 2.8em;
    font-weight: 600;
    margin: 0 auto 4px auto;
    text-transform: uppercase;
}

.sectionHeading__caption {
    max-width: 520px;
    font-size: 1.05em;
    line-height: 1.4;
    margin: 0 auto;
}

.contentFrame {
    /* box-shadow: 0 0.2em 1em 0 rgba(0,0,0,0.15); */
}

.btn {
    position: relative;
    display: block;
    margin: auto;
    box-sizing: border-box;
    font-size: 1.2em;
    font-weight: 600;
    text-decoration: none;
    text-transform: uppercase;
    text-align: center;
    opacity: 1 !important;
    /* letter-spacing: 1px; */
    cursor: pointer;
}

.btn--withArrow {
    display: inline-flex;
    align-items: center;
}

.btn--withArrow span {
    margin-left: 8px;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #fff;
}

.btn--neroBlack {
    color: #1f1f1f;
}

.btn--withArrow.btn--neroBlack span {
    margin-left: 8px;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #1f1f1f;
}

.pageTitle {
    position: relative;
    width: 92%;
    max-width: 1760px;
    margin: 215px auto 0 auto;
    text-align: center;
}

.pageTitle__title {
    font-size: 2.8em;
    font-weight: 600;
    line-height: 1;
    margin: 0 auto;
    text-transform: uppercase;
}

.pageTitle__caption {
    font-size: 1.1em;
    font-weight: 600;
    margin: 0 auto;
    text-transform: uppercase;
    letter-spacing: 1px;
}


/* Inputs */

input[type='text'],
input[type='email'],
input[type='tel'],
input[type='password'],
textarea,
select {
    background: none;
    border: 1px solid #fff;
    color: #fff;
}

input[type='submit'] {

}

::-webkit-input-placeholder { /* WebKit browsers */
    color: #fff;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #fff;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #fff;
}

:-ms-input-placeholder { /* Internet Explorer 10+ */
    color: #fff;
}


/* Brand Colors */

.bg-color-nero-black {
    background: #1f1f1f !important;
}

.text-color-nero-black {
    color: #1f1f1f;
}

.bg-color-white {
    background: #fff;
}

.text-color-white {
    color: #fff;
}

.bg-color-grey {
    background: #d8d8d8;
}


/*** UTILITY & STATE CLASSES ***/

.faux-page-loader svg,
.faux-page-loader img {
    padding-bottom: 50px;
    width: 64px;
}


/*** PAGES & CATEGORIES ***/

/* Home */

.pageSection--homeHero {
    background: #1f1f1f;
}

.pageSection--homeHero .columnWrap-01 .col-01 {
    min-height: 700px;
}

.dynamicBG {
    position: absolute;
    width: 100%;
    height: 700px;
    top: 0;
    left: 0;
    margin: auto;
}

.dynamicBG.dynamicBG--build {
    background-image: url('./assets/images/bg_home_hero_build.jpg') !important;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1.0);
}

.dynamicBG.dynamicBG--develop {
    background-image: url('./assets/images/bg_home_hero_develop.jpg') !important;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1.0);
}

.dynamicBG.dynamicBG--manage {
    background-image: url('./assets/images/bg_home_hero_manage.jpg') !important;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1.0);
}

.dynamicBG--animated {
    transform: scale(1.1) !important;
    -webkit-transition: transform 5s ease-out;
    -moz-transition: transform 5s ease-out;
    -ms-transition: transform 5s ease-out;
    -o-transition: transform 5s ease-out;
    transition: transform 5s ease-out;
}

.pageSection--homeHero .columnWrap-01 {

}

.pageSection--homeHero .columnWrap-01 .col-01 {
    display: flex;
}

.homeHeroContent {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: auto;
    align-self: center;
    color: #fff;
    z-index: 1;
}

.homeHeroHeader {
    margin: 0 auto 16px auto;
    font-size: 3.2em;
    font-weight: 600;
    text-transform: uppercase;
}

.homeHeroContent__caption {
    width: 88%;
    max-width: 720px;
    font-size: 0.92em;
    line-height: 1.4;
    margin: 0 auto 32px auto;
}

.homeHeroContent__cta {
    margin: 0 0 0 6%;
}

.vTickerContainer {
    width: 88%;
    margin: auto;
}

.vTickerContainer__caption {
    font-size: 1.1em;
    font-weight: 600;
    margin: 0 auto 4px auto;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.vTicker ul {
    width: 100%;
}

.vTicker ul li {
    overflow: hidden;
}

.homeHeroArrows {
    width: 72px;
    display: flex;
    opacity: 0;
    justify-content: center;
}

.homeHeroArrowsContent {
    display: flex;
    align-self: center;
}

.homeHeroArrows--right .homeHeroArrowsContent {
    margin: 0 5px 0 auto;
}

.homeHeroArrows--left .homeHeroArrowsContent {
    margin: 0 auto 0 5px;
}

.homeHeroArrowsContent__arrow {
    width: 0px;
    height: 0px;
}

.homeHeroArrowsContent__arrow--left {
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #fff;
}

.homeHeroArrowsContent__arrow--right {
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #fff;
}

.missionStatement {
    position: relative;
    max-width: 560px;
    margin: 21px 0 72px 5%;
    z-index: 3;
    visibility: hidden;
}

.missionStatement__header {
    font-size: 2.8em;
    font-weight: 600;
    line-height: 0.96;
    margin: 0 0 24px 0;
    text-transform: uppercase;
}

.missionStatement__caption {
    max-width: 500px;
    line-height: 1.5;
    margin-bottom: 24px;
}

.parallaxBuilding {
    position: absolute;
    width: 100%;
    margin: auto;
    top: -82px;
    z-index: 3;
}

.bgFillGrey {
    position: absolute;
    width: 100%;
    height: 320px;
    margin: 0;
    top: 308px;
    z-index: 2;
}

.bgFillWhite {
    position: absolute;
    width: 100%;
    height: calc(100% - 472px);
    margin: 0;
    bottom: 0;
    z-index: 1;
}

.homeServices {
    position: relative;
    width: 100%;
    z-index: 3;
}

.homeServicesFunnel {
    position: relative;
    width: 90%;
    margin: auto;
}

.homeService {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 100%; /* square */
    padding-bottom: 60%;
    margin: 0 auto 24px auto;
    box-shadow: 0 0.2em 1em 0 rgba(0,0,0,0.25);
    color: #fff;
    text-decoration: none;
    -webkit-transition: background-size 0.2s ease-out;
    -moz-transition: background-size 0.2s ease-out;
    -ms-transition: background-size 0.2s ease-out;
    -o-transition: background-size 0.2s ease-out;
    transition: background-size 0.2s ease-out;
}

.homeService:hover {
    background-size: 110%;
}

.homeService:hover > .homeService__shader {
    background: rgba(0,0,0,0.6);
}

.homeService:hover > .homeService__hoverIcon {
    border: 0.5px solid rgba(255,255,255,1);
}

.homeService:hover > .homeService__hoverIcon div {
    border: 1px solid rgba(255,255,255,1);
}

.homeService--construction {
    background-image: url('./assets/images/home_service_construction.jpg');
    background-position: center;
    background-size: 100.5%;
    background-repeat: no-repeat;
    z-index: 1;
}

.homeService--management {
    background-image: url('./assets/images/home_service_management.jpg');
    background-position: center;
    background-size: 100.5%;
    background-repeat: no-repeat;
    z-index: 2;
}

.homeService--renovation {
    background-image: url('./assets/images/home_service_renovation.jpg');
    background-position: center;
    background-size: 100.5%;
    background-repeat: no-repeat;
    z-index: 3;
}

.homeService--maintenance {
    background-image: url('./assets/images/home_service_maintenance.jpg');
    background-position: center;
    background-size: 100.5%;
    background-repeat: no-repeat;
    z-index: 1;
}

.homeService--insurance {
    background-image: url('./assets/images/home_service_insurance.jpg');
    background-position: center;
    background-size: 100.5%;
    background-repeat: no-repeat;
    z-index: 1;
}

.homeService__shader {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.05);
    z-index: 1;
    -webkit-transition: background 0.3s ease;
    -moz-transition: background 0.3s ease;
    -ms-transition: background 0.3s ease;
    -o-transition: background 0.3s ease;
    transition: background 0.3s ease;
}

.homeService__number {
    position: absolute;
    font-size: 1.6em;
    font-weight: 600;
    top: 18px;
    left: 18px;
    z-index: 2;
}

.homeService__hoverIcon {
    position: absolute;
    display: flex;
    flex-wrap: wrap;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 64px;
    height: 64px;
    z-index: 2;
    border: 0.5px solid rgba(255,255,255,0.0);
}

.homeService__hoverIcon div {
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255,255,255,0.0);
    box-sizing: border-box;
    -webkit-transition: border 0.3s ease;
    -moz-transition: border 0.3s ease;
    -ms-transition: border 0.3s ease;
    -o-transition: border 0.3s ease;
    transition: border 0.3s ease;
}

.homeService__title {
    position: absolute;
    font-size: 1.2em;
    font-weight: 600;
    bottom: 18px;
    left: 18px;
    z-index: 2;
    text-transform: uppercase;
}

.sectionHeading.sectionHeading--homeWork {
    margin: 48px auto 64px auto;
}

.btn.homePortfolio__cta {
    display: flex;
    margin: auto;
    justify-content: center;
    font-size: 1em;
}

.homePortfolio__cta,
homePortfolio__cta span {
    color: #1f1f1f
}

.aboutCTA {
    text-align: center;
    padding: 42px 0 0 0;
}


/* Services */

.parallaxBG {
    position: absolute;
    width: 100%;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
}

.parallaxLayer {
    position: absolute;
    width: 100%;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.infoBlock {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    background: #fff;
}

.infoBlockText {
    box-sizing: border-box;
}

.infoBlockText--right {
    padding: 36px 7%;
}

.infoBlockText--left {
    padding: 36px 7%;
}

.infoBlockText__header {
    margin: 0 0 1em 0;
    text-transform: uppercase;
    font-size: 1.6em;
    font-weight: 600;
    letter-spacing: 1px;
}

.infoBlockText__description {
    line-height: 1.5;
    /* text-align: justify; */
}

.infoBlockImage {
    display: flex;
    display: none;
    box-sizing: border-box;
}

.infoBlockImage.infoBlockImage--noPadding {
    align-self: flex-start;
}

.infoBlockImage img {
    width: 100%;
}


/* Service - Construction */

.pageSection--constructionHero .columnWrap-01 .col-01 {
    height: 508px;
}

.parallaxBG--construction {
    height: 508px;
    background-image: url('./assets/images/bg_service_construction_hero.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}


/* Service - Management */

.pageSection--managementHero .columnWrap-01 .col-01 {
    height: 508px;
}

.parallaxBG--management {
    height: 508px;
    background-image: url('./assets/images/bg_service_management_hero.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}


/* Services - Renovation */

.pageSection--renovationHero .columnWrap-01 .col-01 {
    height: 508px;
}

.parallaxBG--renovation {
    height: 508px;
    background-image: url('./assets/images/bg_service_renovation_hero.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}


/* Service - Maintenance */

.pageSection--maintenanceHero .columnWrap-01 .col-01 {
    height: 508px;
}

.parallaxBG--maintenance {
    height: 508px;
    background-image: url('./assets/images/bg_service_maintenance_hero.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}


/* Service - Insurance */

.pageSection--insuranceHero .columnWrap-01 .col-01 {
    height: 508px;
}

.parallaxBG--insurance {
    height: 508px;
    background-image: url('./assets/images/bg_service_insurance_hero.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}


/* Portfolio */

.pageSection--portfolioHero .columnWrap-01 .col-01 {
    height: 494px;
}

.parallaxBG--portfolio {
    height: 494px;
    background-image: url('./assets/images/bg_portfolio_hero.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}

.pageSection--portfolioInfo {
    z-index: 1;
}

.pageSection--portfolioInfo .contentFrame {
    margin-top: 0px;
}

.slash {
    margin: 12px auto;
    color: #fff;
}


/* About Us */

.pageSection--aboutHero .columnWrap-01 .col-01 {
    min-height: 328px;
}

.infoBlockImage--about {
    display: flex;
}


/* Contact */

.pageSection--contact {
    background-image: url('./assets/images/bg_contact.jpg');
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}

.contactForm {
    display: flex;
    max-width: 780px;
    width: 92%;
    margin: 72px auto 128px auto;
    color: #fff;
}

.contactInfo {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 89%;
    max-width: 600px;
    height: 100px;
    margin: 72px auto 48px auto;
    list-style: none;
    padding: 0;
}

.contactInfo__item {
    align-self: center;
}

.contactInfo__item img {
    width: 45px;
    margin: 0 auto 12px auto;
    box-sizing: border-box;
}

.contactInfo__item:nth-of-type(1) img {
    padding: 7px;
}

.contactInfo__item:nth-of-type(2) img {
    padding: 9px;
}

.contactInfo__item a,
span {
    display: block;
    font-size: 13px ;
    color: #fff;
}

.divider {
    width: 1.5px;
    height: auto;
    padding: 24px 0;
    background: #fff;
}

.mapEmbed {
    width: 92%;
    max-width: 1240px;
    margin: 0 auto 108px auto;
}


/*** WORDPRESS TEMPLATE CONTENT ***/

/* The Loop */

.loopContent {
    width: 92%;
    margin: 0 auto 48px auto;
}

.loopContent .contentContainer {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 3;
    overflow: hidden;
}

ul.loop {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    list-style: none;
    margin: 0 auto;
    padding: 0;
}

article.post {
    position: relative;
    width: 100%;  /* 1 column loop */
}

.postLink {
    display: block;
    height: 0;
    cursor: pointer;
    padding-bottom: 100%; /* square */
    padding-bottom: 60%;
    -webkit-transition: background-size 0.2s ease-out;
    -moz-transition: background-size 0.2s ease-out;
    -ms-transition: background-size 0.2s ease-out;
    -o-transition: background-size 0.2s ease-out;
    transition: background-size 0.2s ease-out;
}

.postLink:hover {
    /* background-size: auto 110% !important; */
}

.postLink:hover > .postLink__shader {
    background: rgba(255,255,255,0.9);
}

.postLink:hover > .postLink__hoverIcon {
    border: 0.5px solid rgba(31,31,31,1);
}

.postLink:hover > .postLink__hoverIcon div {
    border: 1px solid rgba(31,31,31,1);
}

.postLink:hover .loopInfo__title,
.postLink:hover .loopInfo__location,
.postLink:hover .projectType__title {
    color: #1f1f1f !important;
}

.postLink--darkTheme:hover > .postLink__shader {
    background: rgba(0,0,0,0.6);
}

.postLink--darkTheme:hover > .postLink__hoverIcon {
    border: 0.5px solid rgba(255,255,255,1);
}

.postLink--darkTheme:hover > .postLink__hoverIcon div {
    border: 1px solid rgba(255,255,255,1);
}

.postLink--darkTheme:hover .loopInfo__title,
.postLink--darkTheme:hover .postLink:hover .loopInfo__location,
.postLink--darkTheme:hover .projectType__title {
    color: #fff !important;
}

.postLink__shader {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.15);
    z-index: 1;
    -webkit-transition: background 0.3s ease;
    -moz-transition: background 0.3s ease;
    -ms-transition: background 0.3s ease;
    -o-transition: background 0.3s ease;
    transition: background 0.3s ease;
}

.postLink__hoverIcon {
    position: absolute;
    display: flex;
    flex-wrap: wrap;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 64px;
    height: 64px;
    z-index: 2;
    border: 0.5px solid rgba(255,255,255,0.0);
}

.postLink__hoverIcon div {
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255,255,255,0.0);
    box-sizing: border-box;
    -webkit-transition: border 0.3s ease;
    -moz-transition: border 0.3s ease;
    -ms-transition: border 0.3s ease;
    -o-transition: border 0.3s ease;
    transition: border 0.3s ease;
}

.loopInfo {
    position: absolute;
    width: 100%;
    bottom: 18px;
    left: 18px;
}

.loopInfo__title {
    position: relative;
    max-width: 90%;
    margin: 0;
    font-size: 1.3em;
    font-weight: 600;
    bottom: 0;
    left: 0;
    z-index: 2;
    text-transform: uppercase;
}

.loopInfo__location {
    position: relative;
    max-width: 90%;
    margin: 0;
    font-size: 1em;
    font-weight: 600;
    bottom: 0;
    left: 0;
    z-index: 2;
    text-transform: uppercase;
}

.projectType {
    position: absolute;
    width: 100%;
    top: 18px;
    left: 18px;
}

.projectType__title {
    position: relative;
    max-width: 90%;
    margin: 0;
    font-size: 1.3em;
    font-weight: 600;
    bottom: 0;
    left: 0;
    z-index: 2;
    text-transform: uppercase;
}

.post-categories {
    display: inline-block;
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.post-categories li {
    display: inline-block;
}

.pagination {
    float: right;
    clear: both;
}

.pagination > span,
.pagination > p,
.pagination > a {

}

.pagination > .current {

}


/* The Single Post */

article.post {
    margin-bottom: 21px;
}

.socialSharing {
    list-style-type: none;
    padding: 0;
    clear: both;
}

.socialSharing li {
    display: inline-block;
    width: 32px;
    margin: 0 7px 0 0;
}

.socialSharing li:last-of-type {
    margin: 0;
}

.postNavWrap {
    width: 100%;
    float: left;
}

.postNavWrap__item--left {
    float: left;
}

.postNavWrap__item--right {
    float: right;
}

.post-edit-link {
    float: left;
    clear: both;
}


/* Selectors shared by Single Pages & Posts */

.ContentContainer li {
    line-height: 2;
}

.featImageContainer img {
    width: 100%;
}

.ContentContainer img {
    /* width: 100%; */
}


/*** MENUS ***/

/* The Footer */

.footer {
    width: 100%;
}

.footerContents {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 92%;
    margin: 48px auto;
    z-index: 1;
}

.footerCard {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 200px;
    margin: auto auto 42px auto;
    border: 1.5px solid #fff;
    box-sizing: border-box;
    text-decoration: none;
}

.footerCard:hover {
    background: #fff;
}

.footerCard:hover span {
    color: #1f1f1f;
}

.footerCard span {
    font-size: 1.6em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 2;
    color: #fff;
}

.footerWolf {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
}

.footerInfo {
    text-align: center;
}

.footerMenu {
    position: relative;
    margin-bottom: 48px;
}

.footerMenu ul.menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footerMenu ul.menu li {
    margin: 0 0 16px 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.footerMenu ul.menu li a {
    position: relative;
    color: #fff;
    text-decoration: none;
    padding-bottom: 3px;
}

.footerMenu ul.menu li a:after {
    position: absolute;
    margin: auto;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 1.5px;
    content: '';
    -webkit-transition: width .25s;
    transition: width .25s;
    background-color: #fff;
}

.footerMenu ul.menu li a:hover:after,
.footerMenu ul.menu li a:focus:after,
.footerMenu ul.menu li a:active:after {
    width: 100%;
}

.footerTitle {
    margin: 0 0 24px 0;
    font-size: 0.9em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1;
}

.footerSocials {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 32px 0 0 0;
}

.footerSocials li {

}

.footerSocials li a {
    opacity: 1;
}

.footerSocials li a svg,
.footerSocials li a img {
    width: 21px;
    margin-right: 13px;
}

.footerSocials li a svg:hover .st0,
.footerSocials li a svg:hover g {
    fill: #a7a7a7;
}

.footerSocials li:last-child a svg {
    margin-right: 0;
}

.footerSocials li a .st0,
.footerSocials li a g {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.footerBizInfo {

}

.footerBizInfo span {
    display: block;
    margin-top: -2px;
    margin-bottom: 16px;
    line-height: 1.4;
}

.footerBizInfo a {
    display: table;
    margin: auto;
    color: #fff;
}

.copyright {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 32px 0;
    float: left;
    font-size: 0.9em;
    text-align: center;
}

.copyright p {
    text-align: center;
}

.copyright .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    margin: 0 auto;
}

#menu-copyright-fr,
#menu-copyright-en {
    list-style: none;
    padding: 0;
}

#menu-copyright-fr li,
#menu-copyright-en li {
    padding: 0;
    margin: 0 0 0 0;
    text-align: center;
}

#menu-copyright-fr li:first-of-type,
#menu-copyright-en li:first-of-type {
    margin: 0 0 10px 0;
}

#menu-copyright-fr li a,
#menu-copyright-en li a {
    color: #000;
    text-decoration: none;
}

.footerLine {
    width: 16px;
    margin: 0 16px;
    height: 1px;
    background: #000;
}


/*** PLUGINS STYLING ***/

/* Photoswipe Masonry by Web Design Gold Coast */

.pswp__top-bar,
.pswp__caption {
    background: transparent !important;
}

.pswp__bg {
    background: rgba(0,0,0,0.95) !important;
}

.psgal figure.msnry_item,
.psgal figure.msnry_items {
    display: none !important;
}

.psgal figure.msnry_item:first-of-type,
.psgal figure.msnry_items:first-of-type {
    display: block !important;
    width: 100%;
    height: 520px;
    padding: 0;
    opacity: 0;
}

.pswp__item {
    opacity: 0 !important;
}

.pswp__item.opaque {
    opacity: 1 !important;
    -moz-transition: opacity 0.3s ease-out;
    -webkit-transition: opacity 0.3s ease-out;
    -o-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
}

.pswp__zoom-wrap {
    z-index: 999;
}

/*
.pswp__button {
    background-color: #fff !important;
}
*/

.pswp__share--download,
.pswp__button--share {
    display: none !important;
}

.pswp__caption__center {
    text-align: center;
    max-width: 92%;
    margin: 12px auto 10px auto;
    font-size: 15px;
    padding: 0;
    line-height: 20px;
    color: #fff;
}

.pswp__button--arrow--right:before {
    right: 120px;
    transform: scale(2);
    background-color: transparent !important;
}

.pswp__button--arrow--left:before {
    left: 120px;
    transform: scale(2);
    background-color: transparent !important;
}

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
    opacity: 1 !important;
}


/* Contact Form 7 */

.wpcf7 {
    width: 100%;
    margin: auto !important;
}

.wpcf7 form {
    float: left;
}

.wpcf7 label {
    width: 100%;
    display: block;
}

.wpcf7 p {
    margin: 0;
}

.wpcf7 figure {
    width: 100%;
    float: left;
    margin-bottom: 21px;
}

.wpcf7 figure h4 {
    margin: 0 auto 10px auto;
}

.wpcf7 input[type='submit'] {
    background: #fff;
    color: #1f1f1f;
    text-transform: uppercase;
    font-weight: 700;
    border: none;
    padding: 16px 48px;
    float: right;
    margin-bottom: 21px;
}

.wpcf7 input[type="file"] {
    /* color: #fff; */
}

.wpcf7 .ajax-loader {
    /* display: none !important; */ /* disables the ajax spinner for CF7 */
}

.wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.wpcf7 .wpcf7-response-output {
    width: 100%;
    margin: 0;
    padding: 12px !important;
    float: left;
    text-align: center;
}

.wpcf7 .wpcf7-mail-sent-ok {
    border: 2px solid #398f14;
    color: #398f14;
}

.wpcf7-form-control-wrap .wpcf7-not-valid-tip {
    display: block;
    width: 100%;
    margin: 12px 0 16px 7px;
    float: left;
    box-sizing: border-box;
    text-align: left;
    text-decoration: underline;
}

.wpcf7 .wpcf7-validation-errors,
.wpcf7 .wpcf7-mail-sent-ng,
.wpcf7 .wpcf7-aborted {
    display: block !important;
    width: 100%;
    float: left;
    color: red;
    border-color: red;
    box-sizing: border-box;
    text-align: center;
}

.wpcf7 .wpcf7-form .wpcf7-mail-sent-ok {
    display: block !important;
    width: 100%;
    margin-bottom: 32px;
    float: left;
    box-sizing: border-box;
    text-align: center;
}

.wpcf7 ::-webkit-input-placeholder { /* WebKit browsers */
    color: #fff;
}

.wpcf7 :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #fff;
}

.wpcf7 ::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #fff;
}

.wpcf7 :-ms-input-placeholder { /* Internet Explorer 10+ */
    color: #fff;
}


/* Contact Form 7 Captcha */

.cf7sr-g-recaptcha {
    margin-bottom: 24px;
    clear: both;
}


/* Lightslider.js */

.lSSlideOuter {
    margin: auto;
    transform: scale(1.4);
}

.lightSlider li {
    display: flex;
    justify-content: space-between;
    background: none !important;
}

.lightSlider li.active + li {
    transform: scale(1.3);
    -webkit-transition: transform 3s ease-out;
    /*
    -moz-transition: transform 0.3s ease-out;
    -ms-transition: transform 0.3s ease-out;
    -o-transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    */
}

.lSSlideOuter .lSPager.lSpg {
    /* display: none; */
    position: relative;
    z-index: 1;
}

.lSAction {
    /* display: none !important; */
}

.lSAction > .lSPrev {
    display: none;
    width: 16px;
    height: 32px;
    /* margin-top: -40px; */
    background-image: url('./assets/svgs/arrow_left.svg');
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    z-index: 1;
}

.lSAction > .lSNext {
    display: block;
    width: 16px;
    height: 32px;
    /* margin-top: -40px; */
    background-image: url('./assets/svgs/arrow_right.svg');
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    z-index: 1;
}

.lSSlideOuter .lSPager.lSpg > li {
    padding: 0 10px;
}

.lSSlideOuter .lSPager.lSpg > li a {
    width: 12px;
    height: 12px;
    background-color: #000;
}


.lSSlideOuter .lSPager.lSpg > li:hover a,
.lSSlideOuter .lSPager.lSpg > li.active a {
    background-color: #ccc;
}


/*** MEDIA QUERIES ***/

/* Min-Widths */

@media screen and (min-width: 360px) {
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 535px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 470px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 470px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 470px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 440px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 480px;
    }
    .bgFillGrey {
        top: 326px;
    }
    .parallaxBuilding {
        top: -114px;
    }
}

@media screen and (min-width: 375px) {
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 545px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 520px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 545px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 545px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 470px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 545px;
    }
}

@media screen and (min-width: 411px) {
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 568px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 535px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 545px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 520px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 500px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 550px;
    }
}

@media screen and (min-width: 600px) {
    .slash {
        margin: 0;
    }
}


@media screen and (min-width: 720px) {
    ul.loop {
        flex-direction: row;
    }
    article.post {
        width: 49%; /* 2 column loop */
        margin: 0% 2% 2% 0%;
        float: left;
    }
    article.post:nth-of-type(2n+2) {
        margin: 0% 0% 2% 0%;
    }
    input[type='submit'] {
        width: auto;
    }
    .wpcf7 figure.wpcf7_field_first_name,
    .wpcf7 figure.wpcf7_field_last_name,
    .wpcf7 figure.wpcf7_field_email,
    .wpcf7 figure.wpcf7_field_phone,
    .wpcf7 figure.wpcf7_field_company,
    .wpcf7 figure.wpcf7_field_city {
        width: 49%;
    }
    .wpcf7 figure.wpcf7_field_first_name,
    .wpcf7 figure.wpcf7_field_email,
    .wpcf7 figure.wpcf7_field_company {
        margin: 0 2% 0 0;
    }
    .cf7sr-g-recaptcha {
        float: left;
    }
    .copyright .inner {
        flex-direction: row;
        width: auto;
    }
    .copyright p {
        display: table;
    }
    #menu-copyright-fr,
    #menu-copyright-en {
        display: table;
    }
    #menu-copyright-fr li,
    #menu-copyright-en li {
        text-align: left;
    }
    #menu-copyright-fr li:first-of-type,
    #menu-copyright-en li:first-of-type {
        margin: 0;
        /* margin: 0 16px 0 0; */ /* for use with multiple links in copyright menu */
    }
    .faux-page-loader svg,
    .faux-page-loader img {
        padding-bottom: 0;
    }
    .pageTitle {
        margin: 260px auto 0 auto;
    }
    .pageTitle__title {
        font-size: 4em;
    }
    .pageTitle__caption,
    .vTickerContainer__caption {
        font-size: 1.6em;
    }
    .pageSection--aboutHero .columnWrap-01 .col-01 {
        min-height: 360px;
    }
    .aboutCTA {
        display: none;
    }
    .footerContents {
        width: 90%;
        flex-direction: row;
        justify-content: space-between;
        margin: 92px auto;
    }
    .footerCard {
        width: 292px;
        height: 171px;
        margin: 0;
    }
    .footerWolf {
        width: 386px;
        left: -77px;
        bottom: 0;
    }
    .footerMenu {
        margin-bottom: auto;
    }
    .footerInfo {
        display: flex;
        max-width: 298px;
        text-align: left;
    }
    .footerBizInfo a {
        margin: 0;
    }
    .footerMenu {
        margin-right: 48px;
    }
    .footerSocials {
        justify-content: flex-start;
    }
    .footerWolf {
        width: 200px;
        left: -77px;
    }
    .contactInfo {
        width: 60%;
        margin: 108px auto 128px auto;
    }
    .contactInfo__item a, span {
        font-size: 1em;
    }
    .contactForm {
        width: 70%;
    }
    .mapEmbed {
        width: 77%;
    }
    .loopContent {
        width: 77%;
        margin: 0 auto 72px auto;
    }
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 847px;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -248px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 770px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 750px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 788px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 708px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 816px;
    }
    /*
    .infoBlockText--right {
        flex-basis: 50%;
        padding: 7% 5% 5% 10%;
    }
    .infoBlockText--left {
        flex-basis: 50%;
        padding: 5% 0 5% 5%;
    }
    */
    .infoBlockText {
        text-align: center;
        padding: 72px 0;
        width: 75%;
        max-width: 1000px;
        margin: auto;
    }
    .infoBlockText--about {
        width: auto !important;
        flex-basis: 50%;
        padding: 5% 0 5% 5% ;
        max-width: 100%;
        margin: 0;
        text-align: left;
    }
    .infoBlock.infoBlock--paddedTop {
        padding: 64px 0 0 0;
    }
    .infoBlockImage {
        flex-basis: 50%;
        padding: 0 5% 0 0;
    }
    .infoBlockImage.infoBlockImage--noPadding {
        flex-basis: 50%;
        padding: 0;
    }
    .infoBlockImage.infoBlockImage--right {
        margin: 0 5% 0 0;
    }
    .infoBlockImage.infoBlockImage--left {
        margin: 0 0 0 5%;
    }
    .infoBlockImage.infoBlockImage--padded {
        padding: 0 5% 5% 10%;
    }
    .infoBlock.infoBlock--paddedTop {
        padding: 32px 0 0 0;
    }
    .infoBlockText__header {
        font-size: 2em;
    }
    .homeHeroContent {
        padding-top: 60px;
        text-align: center;
    }
    .homeHeroHeader {
        font-size: 4.5em;
    }
    .homeHeroContent__caption {
        width: 74%;
        font-size: 1em;
    }
    .homeHeroContent__cta {
        margin: auto;
    }
    .sectionHeading__header {
        font-size: 4.5em;
        margin: 0 auto;
    }
    .sectionHeading__caption {
        font-size: 1em;
    }
    .pageSection--homeHero .columnWrap-01 .col-01 {
        min-height: 736px;
    }
    .dynamicBG {
        height: 736px;
    }
    .homePortfolio__cta {
        display: inline-flex;
        float: right;
    }
    .missionStatement {
        margin: 64px 0 0 10%;
        visibility: visible;
    }
    .missionStatement__header {
        font-size: 4.5em;
    }
    .btn {
        font-size: 1.4em;
    }
    .btn.homePortfolio__cta {
        font-size: 1.4em;
    }
    .btn--withArrow span {
        margin-left: 10px;
        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 7px solid #fff;
    }
    .btn--withArrow.btn--neroBlack span {
        margin-left: 10px;
        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 7px solid #1f1f1f;
    }
    .pageSection--missionStatement .columnWrap-01 .col-01 {
        height: 1292px;
    }
    .bgFillGrey {
        height: 924px;
        top: initial;
        bottom: 0;
        z-index: 1;
    }
    .bgFillWhite {
        height: 575px;
        bottom: 0;
    }
    .parallaxBuilding {
        top: -389px;
        width: calc(100% + 156px);
        max-width: none;
        margin: 0;
    }
    .homeServices {
        position: absolute;
        bottom: 0;
    }
    .homeServicesFunnel {
        width: 77%;
        height: 700px;
    }
    .homeService {
        position: absolute;
        width: 36.83%;
        height: 290px;
        padding-bottom: 0;
        margin: 0;
    }
    .homeService--construction {
        top: 0;
        left: 0;
    }
    .homeService--management {
        top: 96px;
        left: 0%;
        right: 0;
        margin: 0 auto;
    }
    .homeService--renovation {
        top: 192px;
        right: 0%;
    }
    .homeService--maintenance {
        top: 303px;
        left: 14%;
    }
    .homeService--insurance {
        top: 397px;
        left: 53%;
    }
    .homeService__number {
        font-size: 1.6em;
        top: 18px;
        left: 18px;
    }
    .postLink__hoverIcon,
    .homeService__hoverIcon {
        width: 96px;
        height: 96px;
    }
    .postLink__hoverIcon div,
    .homeService__hoverIcon div {
        width: 48px;
        height: 48px;
    }
}

@media screen and (min-width: 768px) {
    .footerContents {
        width: 86%;
    }
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 875px;
    }
    .bgFillWhite {
        height: 562px;
    }
}

@media screen and (min-width: 1000px) {
    /*
    article.post {
        width: 32%;
        margin: 0% 2% 2% 0%;
    }
    article.post:nth-of-type(2n+2) {
        margin: 0% 2% 2% 0%;
    }
    article.post:nth-of-type(3n+3) {
        margin: 0% 0% 2% 0%;
    }
    */
    input[type='text'],
    input[type='email'],
    input[type='tel'],
    input[type='password'],
    input[type='submit'],
    input[type='number'],
    textarea {
        padding: 0.7vw;
    }
    select {
        padding: 0.61vw;
    }
    .footerCard {
        width: 440px;
        height: 240px;
    }
    .footerWolf {
        width: 400px;
    }
    .pageTitle {
        margin: 320px auto 0 auto;
    }
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 1100px;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -360px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 974px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 980px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 986px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 874px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 986px;
    }
    .homeHeroHeader {
        font-size: 6em;
    }
    .pageSection--missionStatement .columnWrap-01 .col-01 {
        height: 1600px;
    }
    .missionStatement__header {
        font-size: 6em;
    }
    .bgFillGrey {
        height: 940px;
    }
    .sectionHeading__header {
        font-size: 6em;
    }
    .homeServicesFunnel {
        height: 812px;
    }
    .homeService {
        height: 400px;
    }
    .postLink {
        padding-bottom: 100%;
    }
}

@media screen and (min-width: 1160px) {
    /*
    article.post {
        width: 23.5%;
        margin: 0% 2% 2% 0%;
    }
    article.post:nth-of-type(2n+2) {
        margin: 0% 2% 2% 0%;
    }
    article.post:nth-of-type(3n+3) {
        margin: 0% 2% 2% 0%;
    }
    article.post:nth-of-type(4n+4) {
        margin: 0% 0% 2% 0%;
    }
    */
    .pageTitle {
        margin: 260px auto 0 auto;
    }
    .pageTitle__title {
        font-size: 7.5em;
    }
    .pageSection--aboutHero .columnWrap-01 .col-01 {
        min-height: 524px;
    }
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 1252px;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -520px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 1040px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 1060px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 1060px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 930px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 1140px;
    }
    .loopInfo__title {
        font-size: 1.6em;
        bottom: 18px;
        left: 18px;
    }
    .loopInfo__location {
        font-size: 1.3em;
        bottom: 14px;
        left: 18px;
    }
    .projectType__title {
        font-size: 1.6em;
        top: 18px;
        left: 18px;
    }
    .contactForm {
        width: 52%;
    }
    .sectionHeading__header {
        font-size: 7.5em;
    }
    .sectionHeading__caption {
        max-width: 720px;
    }
    .pageSection--homeHero .columnWrap-01 .col-01 {
        min-height: 100vh;
    }
    .dynamicBG {
        height: 100vh;
    }
    .homeHeroHeader {
        font-size: 7.5em;
    }
    .homeHeroContent__caption {
        width: 46%;
        font-size: 1.05em;
    }
    .pageSection--missionStatement .columnWrap-01 .col-01 {
        height: 2260px;
    }
    .bgFillGrey {
        height: 1290px;
    }
    .bgFillWhite {
        height: 400px;
    }
    .parallaxBuilding {
        width: 100%;
        max-width: 100%;
        top: -48px;
    }
    .missionStatement {
        margin: 108px 0 0 10%;
    }
    .missionStatement__header {
        font-size: 7.5em;
    }
    .homeServicesFunnel {
        height: 1266px;
    }
    .homeService {
        height: 560px;
    }
    .homeService--maintenance {
        top: 586px;
        left: 14%;
    }
    .homeService--insurance {
        top: 676px;
        left: 53%;
    }
    .homeService__title {
        font-size: 1.6em;
    }
    .homeService--renovation,
    .homeService--management,
    .homeService--maintenance,
    .homeService--insurance,
    .homeService--construction {
        background-size: 110.5%;
    }
    .infoBlockText {
        width: 52%;
    }
}

@media screen and (min-width: 1326px) {
    .footerContents {
        width: 77%;
    }
    .footerInfo {
        max-width: 100%;
    }
    .footerMenu {
        margin-right: 64px;
    }
    .footerCard {
        width: 500px;
        height: 240px;
    }
    .footerWolf {
        width: 365px;
        left: 0;
    }
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 1336px;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -574px;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 1120px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 1125px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 1086px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 986px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 1240px;
    }
    .homeHeroContent {
        padding-top: 102px;
    }
    .parallaxBuilding {
        top: 0;
    }
    .bgFillGrey {
        height: 1134px;
    }
    .bgFillWhite {
        height: 360px;
    }
    .homeService--renovation,
    .homeService--management,
    .homeService--maintenance,
    .homeService--insurance,
    .homeService--construction {
        background-size: 100.5%;
    }
}

@media screen and (min-width: 1367px) {
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 188vh;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -83vh;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 1140px;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 1160px;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 1135px;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 1020px;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 1288px;
    }
    .homeHeroContent {
        padding-top: 60px;
    }
}

@media screen and (min-width: 1441px) {
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 93vw;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -42vw;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 77vw;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 78vw;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 85vw;
    }
    .parallaxBG--renovation {
        background-image: url(./assets/images/bg_service_renovation_hero.jpg);
        background-position: top;
        background-size: contain;
        background-repeat: no-repeat;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 69vw;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 85vw;
    }
    .bgFillGrey {
        height: 1000px;
    }
}

@media screen and (min-width: 1880px) {
    .pageTitle {
        margin: 300px auto 0 auto;
    }
    .pageTitle__title {
        font-size: 9em;
    }
    .pageTitle__caption,
    .vTickerContainer__caption {
        font-size: 2em;
    }
    .pageSection--portfolioHero .columnWrap-01 .col-01,
    .parallaxBG--portfolio {
        height: 92vw;
    }
    .pageSection--portfolioInfo .contentFrame {
        margin-top: -41vw;
    }
    .pageSection--constructionHero .columnWrap-01 .col-01,
    .parallaxBG--construction {
        height: 75vw;
    }
    .pageSection--managementHero .columnWrap-01 .col-01,
    .parallaxBG--management {
        height: 76vw;
    }
    .pageSection--renovationHero .columnWrap-01 .col-01,
    .parallaxBG--renovation {
        height: 85vw;
    }
    .pageSection--maintenanceHero .columnWrap-01 .col-01,
    .parallaxBG--maintenance {
        height: 66vw;
    }
    .pageSection--insuranceHero .columnWrap-01 .col-01,
    .parallaxBG--insurance {
        height: 84vw;
    }
    .btn {
        font-size: 1.8em;
    }
    .sectionHeading__header {
        font-size: 10em;
    }
    .sectionHeading__caption {
        font-size: 1.2em;
    }
    .homeHeroHeader {
        font-size: 10em;
    }
    .bgFillGrey {
        height: 1650px;
    }
    .bgFillWhite {
        height: 518px;
    }
    .parallaxBuilding {
        top: -196px;
    }
    .pageSection--missionStatement .columnWrap-01 .col-01 {
        height: 2700px;
    }
    .missionStatement__header {
        font-size: 10em;
    }
    .homeServicesFunnel {
        height: 1600px;
    }
    .homeService {
        height: 720px;
    }
    .homeService--insurance {
        top: 753px;
    }
    .homeService--construction {
        top: 846px;
    }
    .homeService__hoverIcon,
    .postLink__hoverIcon {
        width: 128px;
        height: 128px;
    }
    .homeService__hoverIcon div,
    .postLink__hoverIcon div {
        width: 64px;
        height: 64px;
    }
}

@media screen and (min-width: 2100px) {
    .parallaxBG--renovation {
        background-image: url(./assets/images/bg_service_renovation_hero.jpg);
        background-position: top;
        background-size: cover;
        background-repeat: no-repeat;
    }
}

@media screen and (min-width: 2400px) {

}


/* Max-Widths */

@media screen and (max-width: 359px) {
    .pageTitle__title {
        font-size: 2.4em;
    }
}

@media screen and (max-width: 719px) {
    .infoBlock--columnReverse {
        flex-direction: column-reverse;
    }
    .parallaxBG {
        position: fixed;
        background-position-y: top !important;
    }
}

@media screen and (max-width: 600px) {
    .pswp__img {
        margin-top: 0;
    }
}



/* Specific Ranges */

@media (width: 720px) and (height: 1280px) { /* MS Surface Pro 1 & 2 */

}

@media (width: 768px) and (height: 1024px) { /* iPad */

}

@media (width: 1024px) and (min-height: 1366px) and (max-height: 1367px) { /* iPad Pro */

}
