@charset "utf-8";
/* CSS Document */
@media (min-width: 2000px) {
  .slick-dots { right: 31%;}
  }
@media (min-width: 1600px) {
.slick-dots { right: 20%;}
}

@media (min-width: 1200px) {
    /*----- Desktop Landscape -----*/
}
@media (min-width:992px) and (max-width:1199px) {
/*----- Tablet & iPad Landscape -----*/ 
.sideNavWrapper { max-width: 190px;}
.advice h3 { font-size: 45px;}
.skip-content { margin: 19px 0 0; font-size: 14px;}
.menu > li > a { font-size: 14px; padding: 10px 4px;}
.pronsw-dropmenu { width: 100%;}
.drop-left ul li a { font-size: 15px; padding: 15px;}
.drop-right { padding: 10px;}
.content-img { margin: 0 0 10px;}
.playpausebtn { width: 940px;}
.slide-title h2 { font-size: 30px; line-height: 35px;}
.row.strategy-border { margin-bottom: 6rem;}
.strategy-heading br { display: none;}
.strategy-update h3 { font-size: 19px;}
.news li { margin: 0 0 40px;}
.news-detail h2 { font-size: 15px;}
.news-detail h3 { margin: 0 0 10px; font-size: 17px;}
.projectnsw-heading { font-size: 60px;}
.project-slide-detail { padding: 20px;}
.project-slide-detail p { font-size: 17px; line-height: 26px;}
/*Gallery*/
.harbour-tab { margin: 0 -25px; }
.harbour-tab li { padding: 0 25px;}
.harbour-tab li a { font-size: 53px;}
/*Infra Stratgey*/
.strategy-title { font-size: 15px;}
/*Restart nsw*/
.recomm-detail { padding: 0 30px 0 0;}
}

@media (max-width: 991px) {
  .logo { float: none; display: table; width: 380px; margin: 0 auto;}
  .logo img {margin: auto;}
  .sideNavWrapper {
    float: none;
    width: 100%;
    margin-bottom: 1rem;
  }
  .mainWrapper {
    border: none;
    width: 100%;
  }
  .mainWrapper .container {
    padding: 0;
  }
}

@media (min-width: 768px) and (max-width:991px) {
/*----- Tablet & iPad Portrait -----*/ 
header { padding: 20px 0 0;}
.navbar-header { width: 100%;}
.skipContainer {
  bottom: 55px;
  left: 50%;
  transform: translateX(-50%);
}
.navBackground { margin: 40px 0 0; }
.skip-content { float:none; clear: both; display: table; margin: 0 auto 10px;}
.menu { float: left; width: 100%;}
.menu > li > a { padding: 20px 4px; font-size: 12px;}
.pronsw-dropmenu { float: none; width: 100%;}
.drop-right { padding: 10px;}
.drop-content h2 { margin: 0 0 10px; font-size: 28px;}
.drop-content p { margin: 0 0 10px;}
.content-img { margin: 0 0 10px;}
.playpausebtn { width: 670px;}
.slide-two-title h3 { font-size: 12px; line-height: 18px;}
.slide-title h2 { font-size: 20px; line-height: 23px;}
.gap-sm {min-height: 145px;}
.expert-advice { padding: 30px 0;}
.main-heading { margin: 0 0 10px;}
.main-tagline { padding: 0 0 30px; font-size: 16px; line-height: 22px;}
.featuredRow section:nth-child(1) .advice,
.featuredRow section:nth-child(2) .advice { margin: 0 0 6rem;}
.expert-img { margin: 0 0 10px;}
.strategy-heading br { display: none;}
.news li { margin: 0 0 15px;}
.news-detail h2 { font-size: 12px; line-height: 16px;}
.news-detail h3 { margin: 0 0 2px; font-size: 13px;}
.news-detail p { font-size: 13px; line-height: 15px;}
.readmore icon { font-size: 20px;}
.projectnsw-sec { padding: 30px 0;}
.projectnsw-heading { padding: 0 0 10px; margin: 0 0 10px;}
.project-slide-detail { height: 400px; width: 40%; padding: 10px;}
.project-slide-img { width: 60%; height: 400px;}
.project-slide-detail h2 { font-size: 27px; line-height: 30px;}
.project-slide-detail p { margin: 0 0 10px; font-size: 16px; line-height: 22px;}
.footer-link { margin: 0 0 20px;}
.copyright { margin: 7px 0 0;}
.prvacylink { margin: 10px 0 0 10px;}
/*About*/
.people ul li { width: 25%;}
.modal.right .modal-dialog { width: 100%;}
/*Gallery*/
.harbour-tab { margin: 0 -20px; }
.harbour-tab li { padding: 0 20px;}
.harbour-tab li a { font-size: 41px; line-height: 42px;} 
.harbour-tab-content { margin: 30px 0 0;}
/*Infra Stratgey*/
.infar { margin: 0 0 40px;}
.transport-detail h3 { font-size: 15px;}
.transport-detail p { font-size: 17px;}
/*Project-nsw*/
.pronsw-key h2 { font-size: 38px; line-height: 42px;}
.pronsw-key h2 br { display: none;}
.pronsw-key h3 { font-size: 20px;}
.pro-advice h2 { margin: 0 0 10px; padding: 10px; font-size: 28px; line-height: 30px;}
.pro-advice p { margin: 0 0 10px; font-size: 16px; line-height: 23px;}
/*Restart nsw*/
.recom-tabs li a { font-size: 41px;}
.recomm-resources li a { font-size: 17px;}
.recomm-detail { padding: 0 20px 0 0;}
}

@media (max-width: 767px) {
    h2.two-lines {
        font-size: 25px !important; /* Reset the hacky bs */
    }


header {
  border: none;
}
/*----- Large Smartphones -----*/ 
.project-slide-detail a { position: unset; bottom: unset; left: unset;}
.news-update-sm { padding-top: 5rem; border-top: 1px solid #8a8c8e; width: 100%; }
.gap-sm {min-height: unset; padding:0 15px 20px;}
header { padding: 20px 0 0; z-index: 1;}
.navbar-header { float: left; width: 100%; padding: 0 15px 10px;}
.navbar-collapse { margin: 0;}
.navbar-toggle { position: absolute; top: 90px; left: 10px; padding: 0; margin: 0; }
.navbar-toggle .icon-bar { width: 40px; height: 3px; background: #000;}
.navbar-toggle .icon-bar + .icon-bar { margin-top: 8px;}
.skipContainer {
  /*bottom: 27px; WILLY REVERT AT LIVE*/
  bottom:4px;
  left: 85px;
}
.readmore-gray span {padding: 0.5em;}

.menu { float: left; width: 100%;}
.menu > li { width: 100%; border-bottom: 1px solid #f2f2f2; margin: 0;}
.menu > li > a { padding: 7px 10px; font-size: 13px;}
.menu > li.dropdown { position: relative;}
.menu > li > .dropdown-menu { position: relative; margin: 0; width: 100%;}
.pronsw-dropmenu { width: 100%; display: inherit; float: left;}
.drop-left { display: inherit; float: left; width: 100%;}
.drop-right { display: inherit; float: left; width: 100%; padding: 10px;}
.drop-left ul li a,
.dropdown-menu li a { padding: 7px 10px; font-size: 14px; overflow:hidden; text-overflow: ellipsis;}
.drop-content { width: 100%; margin: 0 0 10px;}
.drop-content-img { float: left; width: 100%;}
.drop-content h2 { margin: 0 0 5px;}
.drop-content p { margin: 0 0 5px;}
.content-img { margin: 0 0 5px;}
.advice h3 {
    width: 100%;
    position: absolute;
    bottom: 0px;
    margin: 0px;
    padding-left: 15px;
    background: rgba(255, 255, 255, 0.8);    
  }
/*Fixing case studies on mobile having title over sibling*/
.projectnsw-sec .advice h3 {
    position:static;
    background-color:white;
}
.logo {
    margin: 0 auto 6rem;
}

/* Slider Stlyes */
.project-slide-detail h3 { background: #007CAD; padding: 2rem 15px; }
.slider-sec {display: none;}
.slide-two-title p { font-size: 15px }
.smallSliderControls {right: 10px;}
.slick-dots { width: auto; bottom: 10px; right: 10px;}
.slick-dots li { width: 25px; margin: 0 1px;}
.slick-dots li button::before { width: 25px; font-size: 60px; color: #fff; opacity: 1;}
.slick-dotted.slick-slider { margin-bottom: 0;}
.slide-title h2 { /*font-size: 43px; line-height: 44px;*/ margin: 0 0 10px;}
.slide-img { position: relative; overflow: hidden;}
/*.slide-img img, .slide img { width: auto; max-width: unset; max-height: 100%;}*/
.slider-small { width: 100%; display: block;}
.slide-title { padding: 10px 15px; height: 150px;}
.main-tagline { padding: 0 0 30px;}
.playpausebtn { width: 100%;}
.lower { right: 10px;}


.expert-advice .container .row .col-sm-6 { padding-left: 0; padding-right: 0;}
.advice { margin: 0 0 6rem;}
.featuredRow section:nth-last-child(1) .advice { margin: 0; }
.expert-border { top: -5px;}
.strategy-border { margin-bottom: 3rem; }
.strategy-border-sec { margin: 20px 0 0; padding: 20px 0 0; border-top: none;}
.strategy-border { border-top: 1px solid #8a8c8e;}
.strategy-update { float: left; width: 100%; margin:0 0 6rem;}

/* News Pages */
.newsimg { width: 100%; margin: 0 0 20px;}
.newsimg img { width: 100%;}
.news li { margin: 0 0 40px; }
.news-detail { width: 100%;}
.news-list .newsimg { display:none; }
.news-list .news-detail { width: 100%; }

.projectnsw-sec { padding: 40px 0 0;}
.projectnsw-sec .container .row .col-sm-12 { padding-left: 0; padding-right: 0;}
.projectnsw-gap-sm { padding: 0 15px;}

.project-slide-img { width: 100%; height: auto;}
.project-slide-detail { width: 100%; height: auto; padding: 0 0 50px 0;}
.pro-slide-detail-gap-sm { float: left; width: 100%; padding: 30px 15px;}
.project-slide-detail h2 { padding: 20px 15px; background: #007CAD; font-size: 60px; line-height: 57px; color: #fff;}

#carouselButtons { right: 7px;}
.footer-link { margin: 0 0 30px;}
.footer-link ul li a { /*ont-size: 14px;*/ line-height: 22px;}
.copyright { margin: 0 0 10px;}
.prvacylink { margin: 0 0 0 10px;}
.prvacylink li { margin: 0 0 10px 0;}

/*About*/
.about-sec { padding: 0 0 20px;}
.about-harbour { margin-bottom: 6rem;}
.breadcrumb { padding: 0; margin: 0 0 4rem 0; clear: both;}
.people { margin: 10px 0 0;}
.people ul li { width: 50%;}
.modal.right .modal-dialog { position: absolute; width: 100%;}
.closemodel-icon { width: 40px;}
.team-pop-left { padding: 10px;}
/*Gallery*/
.pronsw-banner-sec { min-height: 320px;}
.pronsw-banner-heading { line-height: 44px; width: unset; float: right; margin-right: -15px;}
.harbour-tab { margin: 0;}
.harbour-tab li { position: relative; width: 100%; padding: 20px 0; border: none;}
.harbour-tab li:before { position: absolute; left: 0; bottom: 0; content: ''; width: 70px; border-bottom: 1px solid #000;}
.harbour-tab li:last-child:before { border-bottom: none;}
.harbour-tab li a { font-size: 45px; line-height: 50px; text-align:left;}
.harbour-tab li a icon { display: inline-block; vertical-align: middle; font-size: 10px;}
.harbour-tab li a icon.fa-minus { display: none;}
.harbour-tab li.active a icon.fa-plus { display: none;}
.harbour-tab li.active a icon.fa-minus { display: inline-block;}
.harbour-tab-content { margin: 10px 0 0;}
.harbour-gallery { margin: 10px 0 0;}
.harbour-gallery ul li { width: 100%;}
.harbour-gallery ul li:last-child { margin: 0 0 10px;}
.harbour-gallery p { margin: 5px 0 0;}
.harbour-tab-content .col-sm-4 { padding-left: 0;}
.harbour-img { margin: 0 0 10px;}
.latest-update li:first-child { padding-top: 0;}
/*Infra Stratgey*/
.infra-head-sec { margin: 0;}
.state-infr-sec { padding: 40px 0;}
.infar h2 { font-size: 16px; line-height: 22px; margin: 0 0 5px;}
.transport-sec { padding: 40px 0;}
.transport-detail { width: 100%; margin: 0 0 20px;}
.mapimg { width: 100%;}
.strategy-point ul li { padding: 0 5px 5px;}
.strategy-point ul li.padding-top { padding-top: 5px;}
.strategy-point ul li.padding-bottom { padding-top: 5px;}
.strategy-point { margin: 20px 0 0;}
.strategy-title { font-size: 12px;}
/*Project nsw*/
.pronsw-sec { margin: 0 0 30px; padding: 0 0 20px;}
.pronsw-key { display: none; margin: 0; border-left:none; padding: 0;}
.pronsw-key h2 { font-size: 36px; line-height: 42px;}
.pronsw-key h2 br { display: none;}
.pro-advice h2 { margin: 0 0 20px; background: #fff;}
.pro-advice p { margin: 0 0 20px;}
.harbour-tab h2 {display: inline-block; font-size: 25px;}
/*Restart nsw*/ 
.recom-tabs-sec { padding: 20px 0;}
.recom-tabs li { float: left; width: 100%; margin: 0 0 10px; padding: 0; border-right: none;}
.recom-tabs li a icon { display: inline-block; vertical-align: middle; font-size: 20px;}
.recom-tabs li a icon.fa-minus { display: none;}
.recom-tabs li.active a icon.fa-plus { display: none;}
.recom-tabs li.active a icon.fa-minus { display: inline-block;}
.recomm-view { width: 100%; margin: 0 0 10px;}
.recomm-view img { display: none;}
.recomm-detail { width: 100%; padding: 0;}
.recommendation-white { padding: 30px 0;}
}

@media (max-width: 480px) {
/*----- Smartphone iPhone & Android -----*/
.pro-advice { height: auto; }
}


@media screen and (max-width: 1199px) {
  .team-pop-left {
    width: 100%;
  }
  .team-pop-right {
    display: none;
  }
  .closemodel { bottom: inherit; top: 10px;}
}

@media screen and (min-width:992) and (max-width: 1199px) {
  .pronsw-banner-heading {
    margin: 150px 0 0;
  }  
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .pronsw-banner-heading {
    margin: 30px 0 0;
  }  
}
@media screen and (max-width: 767px) {
  .pronsw-banner-heading {
    margin: 145px 0 0;
  }  
}

@media (max-width: 449px) {
/*----- Smartphone iPhone & Android -----*/ 
.navbar-toggle .icon-bar { width: 34px;}
.logo { width: 238px;}
.slide-title h2 { margin: 0 0 5px; font-size: 30px; line-height: 31px;}
.slide-title h2 br { display: none;}
.slide-title { padding:15px 20px; }
.slide-two-title h3 { font-size: 13px; line-height: 16px;}
.readmore icon { font-size: 17px;}
.slick-dots li { width: 20px; margin: 0 1px;}
.slick-dots li button::before { width: 20px; font-size: 50px;}
.expert-advice { padding: 20px 0;}
.main-tagline { padding: 0 0 40px; margin:0 0 30px; font-size: 15px; line-height: 22px;}

.newsimg { margin: 0 0 10px;}

.news-detail p { /*font-size: 14px; line-height: 20px;*/ margin: 0 0 10px;}
.projectnsw-heading { font-size: 70px; line-height: 67px; /*margin: 0 0 10px; padding: 0 0 5px;*/}
footer { padding: 20px 0;}
.footer-link { margin: 0 0 20px;}
.footer-link ul li { margin: 0 0 10px;}

.footer-heading { margin: 0 0 10px;}
#elevator { width: 50px; height: 40px;}
/*About*/

.breadcrumb > li { width: 100%; border-bottom: 1px solid #f2f2f2;}
.breadcrumb > li + li::before { display: none;}
.breadcrumb li a { display: block; padding: 6px 0;}
.breadcrumb > li:last-child { border-bottom: none;}

.breadcrumb-gap.active { padding-left: 10px;}

.inner-heading { font-size: 40px; line-height: 42px;}
.team-pop { display: inherit; float: left; width: 100%;}
.team-pop-left { display: inherit; float: left; width: 100%;}
.team-pop-right { display: inherit; float: left; width: 100%;}

/*Gallery*/
.harbour-tab li { padding:12px 0;}
.pronsw-banner-heading { padding: 10px; line-height: 36px;}
.pronsw-banner-title { padding: 20px 0;}
/*Infra Stratgey*/

.strategy-title { display: none;}
/*.strategy-point ul li { height: 110px;}*/
.strategy-point ul li a { float: none; display: table;}

.strategy-icon { float: none; display: table-cell; padding: 10px; height: 100%; margin: 0 auto; vertical-align: middle;}

/*Project nsw*/
.pro-advice { margin: 0 0 40px;}
.pro-advice h2 { margin: 0 0 20px; background: #fff;}

/*Restart nsw*/ 
.recom-tabs li a { font-size: 33px; }
.recomm-resources li a { font-size: 17px;}
.recom-resource-detail h2 { margin: 0 0 10px; font-size: 40px;}

}

/* 
*   Fluid Type Calculations 
*   https://css-tricks.com/snippets/css/fluid-typography/
*   font-size: calc([minimum size] + ([maximum size] - [minimum size]) * ((100vw - [minimum viewport width]) / ([maximum viewport width] - [minimum viewport width])));
*/
@media screen and (min-width: 320px) {
    body,
    .pronsw-sec a {
        font-size: calc(16px + 3 * ((100vw - 320px) / 680));
    }
    h1 {
        font-size: calc(44px + 16 * ((100vw - 320px) / 680));
    }
    h2 {
        font-size: calc(32px + 16 * ((100vw - 320px) / 680));
    }
    h2.two-lines {
        font-size:18px; /* Implemented for the Tab Panel Page to deal with large tab titles (JS solution) */
    }
    h3 {
        font-size: calc(18px + 6 * ((100vw - 320px) / 680));
    }   
    h3.upper, h3.upper p {
        font-size: calc(18px + 2 * ((100vw - 320px) / 680));
    }  
    h4 {
        font-size: calc(20px + 2 * ((100vw - 320px) / 680));
    }  
    .slide-title h3,
    .slide-title h3 p {
      font-size: calc(23px + 9 * ((100vw - 320px) / 680));
      font-weight: 400;
    }
    /* for the new construction industrty template*/
    .advice h3, .industry-first .advice .mainHeading, .industry-first .advice .mainHeading {
        font-size: calc(24px + 14 * ((100vw - 320px) / 680));
    }    
         
}
@media screen and (min-width: 1000px) {
  body,
  .pronsw-sec a {
    font-size: 19px;
  }
  h1 {
    font-size: 32px; /* 80% reduction of 75px */
  }  
  h2 {
    font-size: 28px; /* 80% reduction of 60px */
  }
    h2.two-lines {
        font-size: 26px; /* Implemented for the Tab Panel Page to deal with large tab titles (JS solution) */
    }
  h3 {
    font-size: 24px; /* 80% reduction of 47px 80% Reduced again after Font Family Change */
  } 
  h3.upper, h3.upper p {
    font-size: 20px; /* 80% reduction of 40px Reducded again after Font Family Change*/
  }   
  .slide-title h3,
  .slide-title h3 p {
    font-size: 26px;
    font-weight: 400;
  }
    /* for the new construction industrty template*/
    .advice h3, .case-archive .mainHeading {
        font-size: 24px
    }
    .industry-first .advice .mainHeading {
        font-size: 28px
    }
  h4 {
    font-size: 22px;
  }       
}

@media screen and (max-width : 767px ) {
  .slide-title .readmore:hover,
  .slide-title .readmore:active,
  .slide-title .readmore:focus {
    text-decoration: none;
  }

  .slide-title .readmore span {
    background: #5a5c5e;
  }

  .slide-title .readmore:hover span,
  .slide-title .readmore:active span,
  .slide-title .readmore:focus span {
    background: #E00087;
  }

  .slide-title .readmore i{ 
    color: #5a5c5e;
  }
  .slide-title .readmore:hover i,
  .slide-title .readmore:active i,
  .slide-title .readmore:focus icon {
    color: #E00087;
  }    
}

@media screen and (max-width: 450px) {
  .people ul li a .morepeople icon {
    display: none;
  }
}
@media screen and (min-width: 500px) {
  .teambig-img {
    margin-bottom: 12rem;
  }
}

/* Changes 2/12/19 */
@media(max-width:991px) {
    .navbar-header {
        position: relative;
    }
    .navbar-toggle {
        top: 50%;
        left: 0;
        transform: translateY(-50%);
    }
    .logo {
        margin-bottom: 0;
    }
    .menu {
        float: left;
        margin: 0 -8.5px;
    }
    .navbar-search {
        padding-top: 2rem;
    }
}

/* MOBILE FIXES */
@media(max-width:767px) {
    .breadcrumb {
        margin-bottom: 1rem;
        padding-bottom: 0 !important;
    }
    .breadcrumb-gap.active {
        padding-left: 0;
    }

    .darling-harbour {
        margin: 0 -1.5rem;
        width: calc(100% + 3rem);
    }
    .harbour-tab-sec {
        margin-bottom: 2rem;
    }
    .harbour-tab {
        margin: 0;
    }
    .harbour-tab li {
        padding: .75rem 0;
    }
    .harbour-tab li a {
        display: block;
        line-height: 1rem;
    }

    .about-harbour {
        word-break: break-word;
    }
}