body,
html {
    margin: 0;
    height: 100%;
}
.year-toggle,
body {
    width: 100%;
    position: relative;
}
.article-body em,
.intro h2 em {
    font-style: normal !important;
}
.article-block img,
.home-img:hover img {
    filter: grayscale(100%);
}
html {
    width: 100%;
    scroll-padding-top: 120px;
}
body {
    font-family: articulat-cf, Helvetica, Arial, sans-serif;
    background: #fff;
    font-size: 18px;
    color: #707070;
    overflow-x: hidden;
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: -0.02em;
    font-weight: 700;
    color: #071033;
}
.cabinet-member .position,
.elected-rep .position,
.political-position p,
.written-by {
    letter-spacing: 2px;
    text-transform: uppercase;
}
.contact-form h2 span,
.government h2,
.latest-alert span,
.resource-download h5,
.year-toggle {
    font-weight: 600;
}
.contact-details-block .alertsteps h4,
.event .media-category,
.events .article-block h3,
.news .article-block img,
.next-article .media-category {
    margin-bottom: 15px;
}
.alertsteps {
    border: 2px solid #071033;
    padding: 25px 25px 15px;
    margin-bottom: 40px;
}
#stay-updated ol {
    padding-left: 20px;
}
.year-toggle {
    display: block;
    color: #3249bd;
    font-size: 24px;
}
.year-toggle img {
    position: absolute;
    right: 0;
    top: 10px;
}
.agency-section.gz-section,
.pb-40 {
    padding-bottom: 40px;
}
.cabinet-row .col-md-3,
.elected-rep .col-4,
.elected-rep .col-8,
.gazette-year .single-resource {
    padding-left: 0;
    padding-right: 0;
}
#stay-updated {
    border-bottom: 0;
    padding-bottom: 0;
}
.latest-alert {
    background: #f5c92e;
    color: #000;
    margin-top: 10px;
    padding: 2px 10px 3px;
    display: inline-block;
}
.latest-alert img {
    width: 16px;
    margin-right: 10px;
}
.emergency-form .outline-btn {
    max-width: 200px;
}
.emergency-form {
    max-width: 400px;
    margin-top: 30px;
}
.emergency-form .input-em {
    border: 1px solid #b6b6b6;
    border-radius: 50px;
    padding: 10px 20px;
    margin-bottom: 20px;
}
.agency-intro h3,
.award-intro h3,
.dept-intro,
.footer .social,
.geographical-section h2,
.hero-title h1,
.le-lodge h2,
.le-lodge p,
.parliament-section h3,
.sh-address,
.tradition-slide h3,
.traditions-section h2 {
    margin-bottom: 40px;
}
.alert-bar p,
.department-text p,
.event-details p,
.preloader-wrap .outer p,
.threat-table p {
    margin-bottom: 0;
}
h1 {
    font-size: 110px;
    color: #000;
}
div[class*="Columns-sc-"] {
    flex-direction: column !important;
}
div[class*="WidgetBackground__Wrapper-sc-"] {
    padding: 0 !important;
}
.Block__RegularBlock-sc-3maawy-1 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
div[class*="CardContainer-sc-"] {
    border-top: 2px solid #071033;
    padding-bottom: 20px;
    background: #fff !important;
    border-radius: 0 !important;
}
div[class*="User__Name-sc-"] {
    font-weight: 600;
    padding: 2px;
    font-size: 18px;
}
div[class*="Text__Container-sc-"] {
    font-size: 16px;
    color: #071033;
}
.dXelQe {
    font-size: 16px !important;
}
div[class*="Avatar__Container-sc-"] {
    position: relative;
    width: 50px !important;
    height: 50px !important;
}
div[class*="CardUserBlock__UserBlock-sc-"] {
    padding-bottom: 20px;
    width: 100%;
    border-bottom: 1px solid #cacaca;
}
.department-news .department-update {
    padding: 0;
}
.department-news .resource-desc,
.news-tab:first-child {
    padding-top: 0;
}
.grey-link {
    color: #707070 !important;
    display: block !important;
    margin-top: 10px;
}
.alert-bar a,
.grey-link:hover,
.terms-links a {
    text-decoration: underline;
}
#cabinet-slider .owl-nav,
.go-transparent #dark-logo,
.grey-link:after {
    display: none !important;
}
.error-section a,
.fb-link {
    margin-top: 20px;
}
.department-text {
    padding-left: 120px;
}
.alert-bar {
    background: #b80000;
    padding: 5px 20px;
    color: #fff;
    font-size: 14px;
    text-align: center;
}
.alert-bar p {
    font-size: 14px;
}
.downloads,
.enquire .le-more-info,
.enquiries form,
.form-section form,
.key-colours,
.network-desc {
    margin-top: 40px;
}
.threat-table {
    color: #fff;
    padding: 25px;
    background: #757575;
    margin-top: 15px;
}
.eapps-facebook-feed-large .eapps-facebook-feed-posts-item {
    width: 100% !important;
}
.department-icon {
    float: left;
    max-width: 100px;
    margin-right: 20px;
}
.alert-department {
    min-height: 150px;
    padding: 25px;
    margin-bottom: 20px;
    border: 1px solid #cacaca;
}
.threat-name,
.threat-status {
    border-right: 1px solid rgba(255, 255, 255, 0.3);
}
.tab-content ol,
.threat-impact,
.threat-status {
    padding-left: 25px;
}
.alert-department:hover {
    background: #f5f5f5;
}
.more-btn svg {
    margin-bottom: -2px;
}
.no-threats {
    border: 2px dashed #e6e6e6;
    padding: 25px;
    text-align: center;
    color: #000;
    font-weight: 400;
}
.more-btn {
    padding: 10px 25px;
    border: 1px solid #fff;
    border-radius: 50px;
    color: #fff;
}
.threat-info {
    border: 1px solid #cacaca;
    padding: 20px;
    border-top-width: 0;
}
.threat-name p,
.toggle-button:hover {
    opacity: 0.7;
}
.threat-table h4,
.threat-table h5 {
    color: #fff;
    margin-bottom: 0;
}
.threat-key {
    display: inline-block;
    margin-right: 30px;
    color: #010101;
}
.red {
    background: #b80000;
}
.blue {
    background: #1f42c5;
}
.yellow {
    background: #e1b000;
}
.key-icon {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    float: left;
    margin-right: 10px;
}
.video__wrapper {
    margin: 20px 0;
    display: inline-block;
    position: relative;
}
.video__fullscreen-button,
.video__play-button {
    margin: 0;
    padding: 0;
    position: absolute;
    transition: 0.2s ease-in-out;
    cursor: pointer;
    -webkit-appearance: none;
}
.video__wrapper video {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    max-width: 100%;
    display: inline-block;
    vertical-align: top;
}
.video__play-button {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 0;
    background-color: rgba(0, 0, 0, 0.1);
    z-index: 2;
}
.video__play-button-icon {
    width: 15%;
    transition: 0.2s ease-in-out;
}
.video__play-button-icon--play polygon {
    transform-origin: 50% 50%;
    transition: 0.2s ease-in-out;
}
.video__play-button-icon--play:hover polygon {
    transform: scale(1.5);
}
.video__play-button[data-button-state="pause"] .video__play-button-icon--pause,
.video__play-button[data-button-state="play"] .video__play-button-icon--play {
    display: none;
}
#dark-logo,
.hidden,
.hide-element,
.services-nav li:hover .text-1,
.text-2,
.toggle-active .middle,
.video__play-button[data-button-state="play"] .video__play-button-icon {
    opacity: 0;
}
.carousel-control-next,
.carousel-control-next:focus,
.carousel-control-next:hover,
.carousel-control-prev,
.carousel-control-prev:focus,
.carousel-control-prev:hover,
.cd-horizontal-timeline.loaded,
.home-img:hover .listing-btn,
.midnightHeader.light #dark-logo,
.topbar #dark-logo,
.topbar.scrolled #dark-logo,
.video__play-button[data-button-state="play"]:hover .video__play-button-icon {
    opacity: 1;
}
.video__play-button[data-button-state="play"] {
    background-color: rgba(0, 0, 0, 0);
}
.video__play-button[data-button-state="play"]:hover {
    background-color: rgba(0, 0, 0, 0.4);
}
.video__fullscreen-button {
    bottom: 10px;
    right: 10px;
    border: 0;
    background: 0 0;
    border-radius: 0;
    z-index: 3;
}
.video__fullscreen-icon {
    padding: 10px;
    display: block;
    vertical-align: top;
    color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: 0.2s ease-in-out;
    width: 40px;
    height: 40px;
}
.video__wrapper[data-state="pause"] .video__fullscreen-icon,
.video__wrapper[data-state="play"]:hover .video__fullscreen-icon {
    opacity: 1;
    visibility: visible;
}
.video__fullscreen-icon polygon {
    fill: white !important;
}
.anniversay-videos iframe {
    width: 100%;
    aspect-ratio: 16/9;
    height: auto;
}
.government h2 {
    font-size: 54px;
    color: #000;
    margin-bottom: 60px;
}
.ministry-heading h4 {
    color: #3249bd;
    margin-bottom: 40px;
}
.cabinet-member img,
.error-section h1,
.floor-plan h3,
.floor-plan img,
.intro-logo-icon,
.media-resource img {
    margin-bottom: 20px;
}
.go-transparent .midnightHeader.light .contact a,
.go-transparent .midnightHeader.light .menu-text,
.menu-details a,
.tab-black:hover h3,
.tab-black[aria-expanded="true"] h3,
.uploadcare--camera__button {
    color: #fff !important;
}
.uploadcare--camera__button_type_start-record {
    display: none;
}
h2 {
    font-size: 90px;
    line-height: 1.2;
}
h3 {
    font-size: 48px;
}
h5 {
    font-size: 24px;
}
.video-container {
    width: 640px;
    border-radius: 4px;
    margin: 0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 0 8px 20px rgba(black, 0.4);
}
.video-container .video-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.video-container video {
    width: 100%;
    height: 100%;
    border-radius: 4px;
}
.play-button-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    pointer-events: none;
}
.agency-details a,
.main-menu li:hover > ul,
.tcs-box {
    display: block;
}
#circle-play-b {
    cursor: pointer;
    pointer-events: auto;
}
#circle-play-b svg {
    width: 100px;
    height: 100px;
    fill: #fff;
    stroke: #fff;
    cursor: pointer;
    background-color: rgba(black, 0.2);
    border-radius: 50%;
    opacity: 0.9;
}
.med-acc form {
    margin-top: 0 !important;
}
.upload-box {
    border-bottom: 1px solid #6a7085;
    padding: 10px 0;
    margin-bottom: 40px;
}
.upload-box button {
    margin-left: 10px;
}
.uploadcare--button_primary,
.uploadcare--widget__button {
    border-radius: 50px;
    background-color: #071033;
    border-color: #071033;
}
select option:disabled {
    color: #6c7487 !important;
}
.uploadcare--camera__button,
.uploadcare--camera__button:hover {
    border-color: #071033;
    color: #071033;
    border-radius: 50px;
}
.category-link.active,
.footer,
.pagination-news ul li a[aria-current="page"],
.social-link:hover {
    color: #fff;
    background: #071033;
}
.uploadcare--button_primary:hover,
.uploadcare--widget__button:hover {
    background-color: #071033;
    border-color: #071033;
}
.tcs-box {
    margin-bottom: 30px;
}
.tcs-box input {
    float: left;
    width: 25px;
    height: 25px;
    margin-right: 10px;
    margin-top: 1px;
}
.footer .contact a:after,
.readmore-small[aria-expanded="true"],
.service-nav-second-level,
.uploadcare--menu__item_tab_dropbox,
.uploadcare--menu__item_tab_evernote,
.uploadcare--menu__item_tab_facebook,
.uploadcare--menu__item_tab_flickr,
.uploadcare--menu__item_tab_gdrive,
.uploadcare--menu__item_tab_gphotos,
.uploadcare--menu__item_tab_instagram,
.uploadcare--menu__item_tab_onedrive {
    display: none;
}
.no-vacancies {
    border: 2px solid #071033;
    padding: 15px 20px 10px;
    margin-top: 40px;
}
.pagination-news ul li {
    display: inline-block;
    margin-right: 10px;
    width: 35px;
    height: 35px;
    background: #fff;
    color: #071033;
    border: 1px solid #ddd;
}
.pagination-news ul li a {
    display: inline-block;
    text-align: center;
    width: 100%;
    height: 100%;
    padding-top: 3px;
}
.pagination-news {
    padding-bottom: 50px;
    padding-top: 0;
}
.article-title,
.elected-rep,
.resource-desc {
    padding-top: 20px;
}
.pagination-news nav {
    margin-left: 0;
}
.main-menu ul,
.pagination-news ul {
    padding-left: 0;
}
.pagination-news nav ul {
    margin-left: 0;
    padding-left: 0;
}
.back-to-news,
.footer-terms,
.nav-block-right,
.partner-website {
    text-align: right;
}
.terms-conditions h4 {
    margin-top: 30px;
    margin-bottom: 25px;
}
.main-menu li .second-level {
    display: none;
    background: #fff;
    position: absolute;
    top: 50px;
    border: 1px solid #d0d0d0;
    border-top: 2px solid #071033;
    text-align: left;
    padding: 20px 0 5px;
    height: auto;
    margin-left: -25px;
    max-width: 300px;
}
.footer ul li a:hover:after,
.fw,
.hero .img,
.main-menu .second-level li,
.main-menu ul li a:hover:after,
.menu-width,
.project-image,
.project-info table,
.project-summary table,
.sp-content-section img {
    width: 100%;
}
.agencies-nav,
.sticky {
    position: sticky;
    top: 150px;
}
.second-level li a:hover {
    color: #2251ff !important;
}
.agency-intro ul {
    padding-left: 15px;
    padding-bottom: 15px;
    padding-top: 15px;
}
.article-title-section,
.project-halfs,
.project-image,
.project-testimonial {
    padding-bottom: 30px;
}
.agency-intro ul li,
.listing-ctas a,
.listing-photos-additional img,
.political-career p {
    margin-bottom: 10px;
}
.main-menu .second-level li a {
    display: block;
    text-decoration: none;
    white-space: nowrap;
    color: #000;
}
.second-level li {
    padding-bottom: 15px !important;
}
.owl-stage-outer,
.topbar,
.topbar .midnightHeader,
.topbar .midnightInner {
    overflow: visible !important;
}
.elected-rep {
    border-top: 2px solid #071033;
    padding-bottom: 15px;
}
.elected-rep .position {
    text-align: right;
    margin-bottom: 5px;
    font-size: 14px;
}
.mailchimp-btn {
    background-image: url(/assets/img/cta-arrow-white.svg);
    background-size: 11px 15px;
    background-repeat: no-repeat;
    background-position: right 20px center;
    position: absolute;
    top: 0;
    right: 0;
    width: 70px;
    border: 0 !important;
    cursor: pointer !important;
}
.cabinet-row {
    border-bottom: 2px solid #071033;
    padding-top: 40px;
    padding-bottom: 40px;
}
.political-career:first-child {
    border-top: 1px solid #cacaca;
    padding-top: 20px;
}
.cabinet-row .outline-btn {
    margin-top: 10px;
}
.cabinet-row h4,
.cabinet-slide h4 {
    font-size: 30px;
    margin-bottom: 15px;
}
.political-career {
    border-bottom: 1px solid #cacaca;
    margin-top: 20px;
    padding-bottom: 15px;
}
.category-link,
.mobile-quicklinks a {
    background: #dadada;
    padding: 7px 10px;
    line-height: 1;
}
.cabinet-row .cabinet-member,
.media-line .col-md-9 {
    padding-left: 50px;
}
.political-position p {
    text-align: right;
    font-size: 12px;
}
.all-projects p,
.intro,
.linkedin {
    text-align: center;
}
.political-date p {
    color: #3249bd !important;
    font-weight: 700;
}
.category-link {
    font-size: 18px;
    color: #000;
    margin-right: 12px;
}
.agencies-nav ul li,
.cabinet-member,
.contact-details-block h4,
.news .article-block,
.sh-hours p,
.show-home h3 {
    margin-bottom: 30px;
}
.category-link:hover {
    background: #fed217;
    color: #000;
}
.system-block {
    border-top: 2px solid #071033;
    padding-top: 30px;
    margin-top: 60px;
}
.mobile-quicklinks {
    padding-bottom: 10px;
    white-space: nowrap;
    margin-right: -30px;
    overflow-x: scroll !important;
}
.media-enq a:after {
    content: "";
    background-image: url(/assets/img/cta-arrow-blue.svg);
    width: 11px;
    height: 14px;
    display: inline-block;
    margin-left: 15px;
}
.media-enq a {
    color: #2251ff;
}
::-webkit-scrollbar {
    width: 0;
    background: 0 0;
}
::-webkit-scrollbar-thumb {
    background: #fff;
}
.social-link {
    font-size: 13px;
    text-transform: uppercase;
    border: 1px solid #071033;
    border-radius: 50px;
    padding: 5px 15px;
    color: #071033;
    margin-right: 5px;
}
.mobile-quicklinks a {
    color: #000;
    display: inline-block;
    margin-right: 4px;
    font-size: 13px;
    border-radius: 50px;
}
.footer h4,
.media-category:hover,
.service-toggle,
.service-toggle:hover,
.topbar.transparent .main-menu ul li,
.tradition-slide h3,
footer input {
    color: #fff;
}
.next-article h3 {
    font-size: 28px;
    margin-top: 20px;
}
.media-date,
.next-article .media-date {
    font-size: 16px;
}
#traditions-slider {
    overflow: hidden;
}
.traditions-carousel {
    background-color: #071033;
}
.traditions-carousel p {
    color: #6c7487;
}
#traditions-slider .owl-nav {
    position: absolute;
    bottom: 75px;
    left: 25px;
    top: auto;
}
.event-details {
    padding-left: 40px;
    border-left: 3px solid #3249bd;
    position: sticky;
    top: 150px;
    margin-top: 40px;
}
.event-info {
    font-weight: 600;
    color: #071033;
    margin-bottom: 20px !important;
}
.geographical-section {
    background-image: url("../img/world-map.png");
    background-position: 60vw center;
    background-size: auto 100%;
    background-repeat: no-repeat;
}
.cd-horizontal-timeline {
    background-color: #000;
    padding-top: 250px;
    padding-bottom: 80px;
    opacity: 0;
    -webkit-transition: opacity 0.2s;
    -moz-transition: opacity 0.2s;
    transition: opacity 0.2s;
}
.outline-btn,
.outline-btn-small {
    transition-timing-function: ease-out;
}
.cd-timeline-navigation {
    list-style-type: none;
    position: absolute;
    right: 20px;
    top: 20px;
}
.events ol,
.events-content ol,
.footer ul {
    list-style-type: none;
    padding-left: 0;
}
.traditions-carousel .col-md-5,
.traditions-section .col-md-6 {
    padding: 0 40px;
}
.pb-80,
.tradition-slide {
    padding-bottom: 80px;
}
.cd-horizontal-timeline::before {
    content: "mobile";
    display: none;
}
.cd-horizontal-timeline .timeline {
    position: relative;
    height: 100px;
    width: 100%;
    margin: 0 auto;
}
.cd-horizontal-timeline .events-wrapper {
    position: relative;
    height: 100%;
    margin: 0;
    overflow: hidden;
}
.cd-horizontal-timeline .events-wrapper::after,
.cd-horizontal-timeline .events-wrapper::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    height: 100%;
    width: 20px;
}
.cd-horizontal-timeline .events {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 49px;
    height: 2px;
    background: rgba(255, 255, 255, 0.3);
    -webkit-transition: -webkit-transform 0.4s;
    -moz-transition: -moz-transform 0.4s;
    transition: transform 0.4s;
}
.cd-horizontal-timeline .filling-line {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: #fff;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left center;
    -moz-transform-origin: left center;
    -ms-transform-origin: left center;
    -o-transform-origin: left center;
    transform-origin: left center;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
}
.cd-horizontal-timeline .events a {
    position: absolute;
    bottom: 0;
    z-index: 2;
    text-align: center;
    font-size: 1.3rem;
    padding-bottom: 15px;
    color: #fff;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
}
.cd-horizontal-timeline .events a::after {
    content: "";
    position: absolute;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -5px;
    height: 12px;
    width: 12px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.3);
    background-color: #fff;
    -webkit-transition:
        background-color 0.3s,
        border-color 0.3s;
    -moz-transition:
        background-color 0.3s,
        border-color 0.3s;
    transition:
        background-color 0.3s,
        border-color 0.3s;
}
.no-touch .cd-horizontal-timeline .events a:hover::after {
    background-color: #09f;
    border-color: #09f;
}
.cd-horizontal-timeline .events a.selected {
    pointer-events: none;
}
.cd-horizontal-timeline .events a.selected::after {
    background-color: #fff;
    border-color: #fff;
}
.cd-horizontal-timeline .events a.older-event::after {
    border-color: #fff;
}
@media only screen and (min-width: 1100px) {
    .cd-horizontal-timeline::before {
        content: "desktop";
    }
}
.cd-timeline-navigation a {
    position: absolute;
    z-index: 1;
    height: 60px;
    width: 60px;
    border-radius: 50%;
    border: 2px solid #fff;
    overflow: hidden;
    color: transparent;
    text-indent: 100%;
    white-space: nowrap;
    -webkit-transition: border-color 0.3s;
    -moz-transition: border-color 0.3s;
    transition: border-color 0.3s;
}
.cd-timeline-navigation a::after {
    content: "";
    position: absolute;
    height: 18px;
    width: 20px;
    left: 50%;
    top: 50%;
    bottom: auto;
    right: auto;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    background: url(../img/arrow-right.svg) no-repeat;
}
.cd-timeline-navigation a.prev {
    right: 70px;
}
.cd-timeline-navigation a.prev::after {
    background: url(../img/arrow-left.svg) no-repeat;
}
.cd-timeline-navigation a.next {
    right: 0;
}
.no-touch .cd-timeline-navigation a:hover {
    border-color: #09f;
}
.cd-timeline-navigation a.inactive {
    cursor: not-allowed;
}
.no-touch .cd-timeline-navigation a.inactive:hover {
    border-color: #dfdfdf;
}
.cd-horizontal-timeline .events-content {
    position: relative;
    width: 100%;
    margin: 2em 0;
    overflow: hidden;
    -webkit-transition: height 0.4s;
    -moz-transition: height 0.4s;
    transition: height 0.4s;
}
.cd-horizontal-timeline .events-content li {
    position: absolute;
    z-index: 1;
    width: 100%;
    min-height: 92px;
    left: 0;
    top: 0;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    padding: 0 5%;
    opacity: 0;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}
.cd-horizontal-timeline .events-content li.selected {
    position: relative;
    z-index: 2;
    opacity: 1;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
}
.cd-horizontal-timeline .events-content li.enter-right,
.cd-horizontal-timeline .events-content li.leave-right {
    -webkit-animation-name: cd-enter-right;
    -moz-animation-name: cd-enter-right;
    animation-name: cd-enter-right;
}
.cd-horizontal-timeline .events-content li.enter-left,
.cd-horizontal-timeline .events-content li.leave-left {
    -webkit-animation-name: cd-enter-left;
    -moz-animation-name: cd-enter-left;
    animation-name: cd-enter-left;
}
.cd-horizontal-timeline .events-content li.leave-left,
.cd-horizontal-timeline .events-content li.leave-right {
    -webkit-animation-direction: reverse;
    -moz-animation-direction: reverse;
    animation-direction: reverse;
}
.cd-horizontal-timeline .events-content li > * {
    margin: 0 auto;
}
.cd-horizontal-timeline .events-content h2 {
    font-size: 2.6rem;
    font-family: "Playfair Display", serif;
    font-weight: 700;
    line-height: 1.2;
}
.cd-horizontal-timeline .events-content em {
    display: block;
    font-style: italic;
    margin: 10px auto;
}
.cd-horizontal-timeline .events-content em::before {
    content: "- ";
}
.cd-horizontal-timeline .events-content p {
    font-size: 22px;
    color: #fff;
}
.cd-horizontal-timeline .events-content em,
.cd-horizontal-timeline .events-content p {
    line-height: 1.6;
}
@media only screen and (min-width: 768px) {
    .cd-horizontal-timeline .events-content h2 {
        font-size: 7rem;
    }
    .cd-horizontal-timeline .events-content em {
        font-size: 2rem;
    }
}
@-webkit-keyframes cd-enter-right {
    0% {
        opacity: 0;
        -webkit-transform: translateX(100%);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}
@-moz-keyframes cd-enter-right {
    0% {
        opacity: 0;
        -moz-transform: translateX(100%);
    }
    100% {
        opacity: 1;
        -moz-transform: translateX(0);
    }
}
@keyframes cd-enter-right {
    0% {
        opacity: 0;
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        transform: translateX(100%);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}
@-webkit-keyframes cd-enter-left {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}
@-moz-keyframes cd-enter-left {
    0% {
        opacity: 0;
        -moz-transform: translateX(-100%);
    }
    100% {
        opacity: 1;
        -moz-transform: translateX(0);
    }
}
@keyframes cd-enter-left {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}
.system-block h3 {
    font-size: 22px;
    margin-bottom: 25px;
}
.,
.listing-description,
.pb-50 {
    padding-bottom: 50px;
}
.cabinet-member .position {
    margin-bottom: 5px;
    font-size: 12px;
}
.article-author img {
    border-radius: 50%;
    width: 75px;
    height: 75px;
    margin-right: 20px;
    float: left;
}
.author-name {
    color: #071033;
    font-weight: 500;
    margin-bottom: 0;
}
.article-author {
    border-top: 1px solid #cacaca;
    padding-top: 35px;
    margin-top: 60px;
}
.written-by {
    color: #7f7f7f;
    font-size: 11px;
    margin-bottom: 5px;
}
.agency-section,
.award-section {
    border-bottom: 1px solid #cacaca;
    margin-bottom: 40px;
}
.parliament-section p {
    color: #6c7487;
    line-height: 2;
}
.falefono-section img {
    margin-bottom: 50px;
}
.home-stat {
    font-weight: 700;
    color: #071033;
    font-size: 90px;
    line-height: 1;
}
.home-stat-desc {
    font-size: 20px;
}
.cabinet-slide p,
.filter-toggle,
.le-map p,
.team-mini p,
p {
    font-size: 18px;
}
.article-body img {
    margin-bottom: 25px;
    margin-top: 15px;
}
.article-footer {
    border: 1px solid #cacaca;
}
.article-footer .container {
    max-width: 1018px;
}
.article-body em {
    color: #071033;
    padding-left: 50px;
    font-size: 30px;
    font-weight: 600;
    border-left: 4px solid #071033;
    margin-top: 20px;
    margin-bottom: 30px;
    line-height: 1.5;
    display: inline-block;
}
.agency-category h3,
.event h3 {
    margin-top: 30px;
}
.article-body {
    max-width: 998px;
    margin-left: auto;
    margin-right: auto;
}
.article-body h2 {
    font-size: 36px;
    color: #000;
    margin-bottom: 20px;
}
.cabinet-slide .position {
    text-transform: uppercase;
    margin-top: 20px;
    font-size: 14px;
    letter-spacing: 1px;
    margin-bottom: 10px;
}
.agency-section {
    padding-bottom: 75px;
}
.award-section {
    padding-bottom: 30px;
}
.agencies-nav ul {
    list-style-type: none;
    padding: 0;
    border-left: 1px solid #cacaca;
}
.agency-details {
    border-top: 2px solid #071033;
    padding-top: 20px;
    padding-bottom: 50px;
}
.agency-details h4 {
    margin-bottom: 25px;
}
.agency-details a,
.agency-details p,
.event-details,
.network p {
    margin-bottom: 5px;
}
.agency-category h3,
.featured p {
    margin-bottom: 30px;
    font-size: 22px;
}
.agencies-nav ul li a {
    font-size: 20px;
    padding-left: 30px;
    color: #6c7487;
    margin-left: -1px;
}
.agencies-nav ul li a.active {
    font-weight: 600;
    border-left: 2px solid #3249bd;
    color: #3249bd;
}
.agency-contacts {
    margin-top: 50px;
}
.about-values,
.hero-title,
.pb-100,
.pb-150 {
    padding-bottom: 100px;
}
.hero-title a:after {
    content: "";
    background-image: url("/assets/img/cta-arrow-white.svg");
    width: 11px;
    height: 14px;
    display: inline-block;
    margin-left: 15px;
}
.agency-category {
    border-top: 2px solid #071033;
    margin-bottom: 80px;
}
.featured p {
    color: #6c7487;
}
.featured h3 {
    margin-bottom: 35px;
}
.feature-date {
    font-weight: 700;
    font-size: 30px !important;
    margin-top: 20px;
}
.countdown-timer,
.single-resource .outline-btn {
    float: right;
}
.countdown-timer ul {
    list-style-type: none;
}
.countdown-timer ul li {
    display: inline-block;
    padding-right: 40px;
    padding-left: 40px;
    border-left: 1px solid #cacaca;
}
.cat-events .blog-column:first-child,
.cat-events .blog-column:nth-child(4),
.cat-john .blog-column:first-child,
.countdown-timer ul li:first-child,
.member-column:nth-child(13),
.member-column:nth-child(17),
.member-column:nth-child(21),
.member-column:nth-child(25),
.member-column:nth-child(5),
.member-column:nth-child(9) {
    border-left: 0;
}
.cat-tabs {
    padding-top: 25px;
}
.countdown-timer ul li span {
    color: #071033;
    line-height: 1;
    font-weight: 700;
    font-size: 54px;
    display: block;
}
[data-aos^="grow-width"][data-aos^="grow-width"].aos-animate {
    width: 880px;
}
[data-aos^="grow-height"][data-aos^="grow-height"].aos-animate {
    height: 400px;
}
.footer-main,
.pt-80 {
    padding-top: 80px;
}
.award-list,
.news-collapse,
.pt-50 {
    padding-top: 50px;
}
.pt-40 {
    padding-top: 40px;
}
.event,
.footer-navigation {
    margin-bottom: 70px;
}
.event h3 {
    margin-bottom: 15px;
}
.event .media-date {
    font-size: 22px;
    margin-bottom: 20px;
}
.media-category {
    color: #fff;
    background: #071033;
    font-size: 15px;
    padding: 5px 10px;
    display: inline-block;
}
.media-line .divider {
    border-width: 2px;
    border-color: #071033;
    margin-top: 15px;
    margin-bottom: 30px;
}
.media-line,
.people-header {
    margin-bottom: 80px;
}
.media-line h3 {
    font-size: 36px;
    margin-bottom: 25px;
    padding-right: 250px;
}
.media-line .outline-btn {
    position: absolute;
    right: 15px;
    top: 80px;
}
.location-head {
    font-size: 24px;
    color: #707070;
    padding-bottom: 10px;
    padding-top: 15px;
    border-bottom: 1px solid #f0f0f0;
    position: relative;
    padding-left: 20px;
}
.location-head a[aria-expanded="true"] {
    color: #c3cbe2 !important;
}
.location-head a:before {
    content: "";
    border-color: transparent #707070;
    border-style: solid;
    border-width: 0.2em 0 0.2em 0.3em;
    display: block;
    height: 0;
    width: 0;
    position: absolute;
    top: 25px;
    left: 0;
}
.location-head a[aria-expanded="true"]::before,
.nav-link.active::before {
    border-color: transparent #c3cbe2;
}
.team-member,
.team-quote {
    border-left: 1px solid #d0d0d0;
}
.location-body {
    padding-top: 25px;
    padding-bottom: 5px;
}
.about-overview h2 {
    font-size: 80px;
    font-weight: 300;
    max-width: 800px;
    margin-bottom: 60px;
    color: #0f2d32;
}
.about-overview p {
    font-size: 30px;
    line-height: 1.5;
}
.project-description,
.testimonial blockquote {
    line-height: 1.4;
    font-weight: 300;
    color: #0f2d32;
}
.container-fluid {
    padding-left: 30px;
    padding-right: 30px;
}
.testimonial blockquote {
    margin-top: 40px;
    font-size: 32px;
    margin-bottom: 40px;
}
.service-nav-second-level,
.testimonial {
    padding-left: 40px;
}
.testimonial p {
    color: #0f2d32;
    font-weight: 300;
}
p {
    font-weight: 200;
    line-height: 1.8;
}
.grid {
    min-height: 100vh;
    padding: 0;
}
.element-item {
    width: calc(50% - 30px);
    float: left;
    margin: 15px;
}
.about-overview,
.project-info,
.project-summary {
    padding-top: 120px;
    padding-bottom: 120px;
}
.project-info .row {
    border-top: 1px solid #0f2d32;
    padding-top: 5px;
    padding-bottom: 70px;
}
.project-halfs ul {
    list-style-type: none;
    padding-left: 0;
    margin-top: 40px;
    max-width: 785px;
    float: right;
    width: 100%;
}
.project-halfs li,
.project-info td,
.project-summary td {
    padding: 25px 0 15px;
}
.project-info .pre {
    margin-top: 25px;
}
.next-project-title {
    font-size: 80px;
    color: #0f2d32;
    font-weight: 300;
    margin-bottom: 30px;
}
.next-project {
    border-top: 2px solid #c3cbe2;
    padding-top: 80px;
    padding-bottom: 80px;
}
.project-halfs li {
    border-top: 1px solid #b4bdbf;
    font-weight: 300;
    color: #0f2d32;
}
.crafting-excellence .green-divider {
    border-top: 2px solid #c3cbe2;
    width: 0;
    position: absolute;
    top: 80px;
    left: 50%;
    transform: translate(-50%, 0);
}
.service-beyond .green-divider {
    border-top: 2px solid #c3cbe2;
    width: 0;
    position: absolute;
    top: -80px;
    left: 9%;
}
.contact-section .container,
.project-info tr,
.project-summary tr {
    border-top: 1px solid #d0d0d0;
}
.building-relationships .green-divider {
    border-left: 2px solid #c3cbe2;
    height: 0;
    position: absolute;
    top: 0;
    left: 35%;
}
.cursor-change img {
    cursor: url(/assets/img/cursor.svg), pointer;
}
.building-relationships .container,
.crafting-excellence .container,
.home-stats,
.listing-hero-img,
.listing-hero-slider,
.map-container,
.profile-img,
.service-beyond .container {
    position: relative;
}
.bg-container {
    background-image: url(/assets/img/awards-bg.png);
    background-repeat: no-repeat;
    background-position: -200px bottom;
    background-size: auto 1250px;
}
.project-info table tr td:first-child,
.project-summary table tr td:first-child {
    color: #0f2d32;
    font-weight: 300;
    width: 40%;
}
.project-info table tr:first-child {
    border-top: 0;
}
.team-quote img {
    max-width: 50px;
    margin-bottom: 40px;
    margin-top: 10px;
}
.project-header {
    padding-top: 300px;
    padding-bottom: 75px;
}
.project-description {
    font-size: 32px;
    margin-bottom: 70px;
}
.project-header h1 {
    font-size: 80px;
    color: #0f2d32;
    font-weight: 300;
}
.lines h3,
.profile-info h4 {
    font-weight: 300;
    color: #c3cbe2;
    font-size: 30px;
}
.lines h3 {
    margin-bottom: 30px;
}
.about-header,
.location .le-map,
.pt-200 {
    padding-top: 200px;
}
[data-aos="zoom-in"] {
    transform: scale(0.1);
}
.additional-projects,
.article-container .service-content,
.building-relationships,
.contact-section,
.crafting-excellence,
.home-awards,
.projects-carousel,
.service-beyond,
.work-together {
    padding-bottom: 200px;
}
.contact-section .container {
    padding-top: 100px;
}
.location-header,
.news-container {
    padding-top: 200px;
    padding-bottom: 150px;
}
.profile-info {
    padding: 45px 15px 75px;
}
.team-role {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #0f2d32;
    margin-bottom: 10px;
}
.intro h2 em,
.nav-link.active,
.quote-marks {
    color: #c3cbe2;
}
.team-member {
    padding: 0 15px 0 0;
}
.quote-marks {
    font-size: 160px;
    font-weight: 600;
}
.team-quote {
    padding-left: 30px;
    padding-right: 30px;
}
.team-quote blockquote {
    color: #c3cbe2;
    font-size: 32px;
    font-weight: 300;
}
.about-header h1,
.location-header h1,
.projects-main h1 {
    font-size: 120px;
    padding-bottom: 60px;
    color: #0f2d32;
    font-weight: 300;
}
.linkedin {
    background: #c3cbe2;
    border-radius: 50%;
    height: 32px;
    width: 32px;
    position: absolute;
    bottom: 20px;
    right: 20px;
    padding-top: 3px;
}
.about-header h1,
.projects-main h1 {
    border-bottom: 1px solid #d0d0d0;
}
.nav-link {
    color: #d0d0d0;
    position: relative;
    margin-left: 25px;
}
.all-projects p,
.close,
.intro-line,
.nav-link::before {
    position: absolute;
}
#plans-gallery p,
.enquiries,
.intro-inner,
.intro-text,
.le-half {
    margin-left: auto;
}
.nav-link::before {
    content: "";
    border-color: transparent #e1e1e1;
    border-style: solid;
    border-width: 0.2em 0 0.2em 0.3em;
    display: block;
    height: 0;
    width: 0;
    top: 20px;
    left: -10px;
}
.bathrooms:before,
.bedrooms:before,
.garage:before {
    left: -35px;
    top: 7px;
    content: "";
}
.tab-pane .pre {
    font-size: 12px;
    letter-spacing: 2px;
    margin-top: 15px;
}
.tab-pane p {
    color: #0f2d32;
    font-size: 22px;
}
.location-header .nav a {
    font-size: 30px;
}
.button-group button {
    background-color: #fff;
    border-radius: 50px;
    font-weight: 300;
    border: 1px solid #d0d0d0;
    font-size: 18px;
    color: #707070;
    padding: 10px 30px 8px;
    line-height: 1;
    margin-right: 10px;
    margin-bottom: 10px;
    cursor: pointer;
    -webkit-appearance: none;
}
.button-group button:hover {
    background-color: #0f2d32;
    color: #fff;
    border-color: #0f2d32;
}
.close:focus,
.owl-dot:focus,
.owl-next:focus,
.owl-prev:focus,
button:focus {
    outline: 0;
}
.button-group button.is-checked {
    background-color: #c3cbe2;
    color: #fff;
    border-color: #c3cbe2;
}
.projects-grid,
.service-desktop {
    padding-top: 75px;
}
.projects-grid h3 {
    font-size: 50px;
    color: #0f2d32;
    font-weight: 300;
    margin-bottom: 40px;
}
img {
    max-width: 100%;
}
.intro {
    padding-top: 200px;
    padding-bottom: 200px;
}
.intro-inner {
    max-width: 1000px;
    margin-right: auto;
}
.pre-text {
    font-size: 22px !important;
    color: #3249bd !important;
    font-weight: 700;
    margin-bottom: 40px;
}
.pre-text sup {
    font-weight: 300;
    margin-right: 15px;
    font-size: 14px;
}
.people {
    margin-top: 80px;
    margin-bottom: 220px;
}
.divider {
    border-top: 1px solid #cacaca;
}
.about-people h2 {
    font-size: 50px;
    max-width: 650px;
    font-weight: 300;
}
.about-values .value {
    border-top: 1px solid #d0d0d0;
    padding-top: 35px;
    padding-bottom: 75px;
}
.about-values h3 {
    font-size: 30px;
    color: #0f2d32;
    font-weight: 300;
}
.pre {
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 5px;
}
.home-awards {
    background-image: url(/assets/img/awards-bg.png);
    background-repeat: no-repeat;
    background-position: calc(100% + 200px) 0;
    background-size: contain;
}
.projects-carousel h2 {
    font-size: 80px;
    margin-bottom: 75px;
    display: flex;
}
.all-projects {
    background: #0f2d32;
}
#plans-gallery .owl-dot button,
.outline-btn {
    background: 0 0;
    font-size: 18px;
    cursor: pointer;
}
.all-projects p {
    color: #fff;
    font-size: 48px;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
a,
a:hover {
    color: inherit;
}
.projects-carousel h2:after {
    content: "";
    flex: 1;
    margin: auto 200px auto 50px;
    height: 0;
    border-top: 1px solid #d0d0d0;
}
.intro h2 {
    font-size: 50px;
    font-weight: 200;
}
a:hover {
    text-decoration: none;
}
.le-map a,
.sh-address a {
    text-decoration: underline;
}
.hero h1 {
    color: #fff;
    font-size: 100px;
}
.modal-content h4,
.work-together h4 {
    font-size: 80px;
    font-weight: 300;
    color: #0f2d32;
    margin-bottom: 35px;
}
.additional-projects p {
    color: #0f2d32;
    font-size: 30px;
    margin-bottom: 30px;
    font-weight: 300;
    margin-top: 60px;
}
.additional-projects img,
.socials {
    margin-top: 30px;
}
.outline-btn {
    display: inline-block;
    color: #071033;
    font-weight: 700;
    padding: 15px 40px;
    border: 1px solid #071033;
    border-radius: 50px;
    line-height: 1;
    transition-property: background-color;
    transition-duration: 0.2s;
}
.outline-btn span:after {
    content: "";
    background-image: url("/assets/img/cta-arrow.svg");
    width: 11px;
    height: 14px;
    display: inline-block;
    margin-left: 15px;
}
.outline-btn-small {
    background: #fff;
    color: #707070;
    font-size: 20px;
    padding: 20px 40px 15px;
    border: 1px solid #d0d0d0;
    border-radius: 50px;
    line-height: 1;
    transition-property: background-color, border-color;
    transition-duration: 0.5s;
}
.footer input {
    border-radius: 50px;
    border: 1px solid #6a7085;
    padding: 15px 25px;
}
.footer ul li a,
.main-menu ul li a {
    display: inline-block;
    position: relative;
}
.footer ul li a:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 1px;
    background: #6f8184;
    transition: 0.3s;
}
.outline-btn:hover {
    color: #0f2d32;
    background: #fed217;
    border: 1px solid #fed217;
}
.outline-btn:active {
    background: #0f2d32;
    color: #fff !important;
    border: 1px solid #0f2d32;
}
.outline-btn-small:hover {
    background: #0f2d32;
    color: #fff;
    border: 1px solid #0f2d32;
}
.footer-copyright {
    padding-bottom: 40px;
    padding-top: 100px;
}
.footer-copyright p {
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
}
.building-relationships img,
.mt-100,
.our-villas .owl-carousel,
.top-section {
    margin-top: 100px;
}
.intro-line {
    height: 100px;
    width: 1px;
    background: #d0d0d0;
    left: 50%;
    top: 0;
}
.carousel-control-next-icon,
.carousel-control-prev-icon {
    background-repeat: no-repeat !important;
    background-position: center !important;
}
.line-scroll {
    color: #d0d0d0 !important;
    position: fixed;
    bottom: 0;
    width: 20px;
    height: 45px;
    display: block;
    left: calc(50% - 10px);
    z-index: 1000;
    mix-blend-mode: difference;
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition:
        transform 0.3s,
        -webkit-transform 0.3s;
}
.ghost-icon,
.main-logo .logo-icon {
    height: 51px;
    margin-bottom: 7px;
}
.hero-title {
    z-index: 1;
    text-align: left;
    color: #fff;
}
#plans-gallery p,
.book-visit,
.center,
.error-title,
.headline p,
.intro-text,
.le-cta,
.le-half,
.our-villas,
.socials a {
    text-align: center;
}
.hero-title p {
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.footer h4 {
    font-size: 16px;
    margin-bottom: 15px;
}
.socials a {
    display: inline-block;
    width: 40px;
    height: 40px;
    border: 1px solid #fff;
    border-radius: 50%;
    padding-top: 3px;
    margin-right: 5px;
}
#plans-gallery p,
.enquiries,
.intro-text,
.le-cta p,
.le-half {
    margin-right: auto;
}
.socials a:hover {
    background: #fed217;
    border-color: #fed217;
}
#nearby-tabs,
.le-map h3 {
    border-bottom: 1px solid #194222;
    padding-bottom: 15px;
}
.socials img {
    width: 20px;
}
.footer ul li {
    color: rgba(255, 255, 255, 0.7);
    font-size: 16px;
    margin-bottom: 10px;
}
.project-details h4 {
    font-size: 30px;
    margin-top: 20px;
    font-weight: 300;
    color: #0f2d32;
}
.home-awards .award-row,
.project-details p {
    font-size: 15px;
    letter-spacing: 5px;
    text-transform: uppercase;
}
.project-details p {
    color: #0f2d32;
}
.carousel-control-next,
.carousel-control-prev {
    width: auto;
}
.listing-hero-img img,
.listing-secondary img {
    cursor: pointer;
}
.carousel-control-prev-icon {
    background-image: url("/assets/img/arrow-left.svg") !important;
}
.carousel-control-next-icon {
    background-image: url("/assets/img/arrow-right.svg") !important;
}
.carousel-control-next span,
.carousel-control-prev span {
    background: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
}
.carousel-control-next span:hover,
.carousel-control-prev span:hover {
    background: #95c470;
}
.text-page h3 {
    margin-top: 40px;
    margin-bottom: 25px;
}
.floor-plan,
.our-villas h2 {
    margin-top: 80px;
}
.close {
    right: 25px;
    top: 25px;
}
.home-price,
.listing-price,
.ribbon {
    top: 0;
    position: absolute;
}
.modal.fade .modal-dialog {
    transform: translate3d(0, 0, 0);
}
.modal-dialog {
    min-height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: auto;
    max-width: 1120px;
}
.book-visit,
.contact-details-block a,
.main-logo a,
.ribbon {
    display: inline-block;
}
#halfclip,
.hov-overlay,
.pulse {
    overflow: hidden;
}
.article-container,
.box.active:before,
.modal,
.news-tabs {
    background: #fff;
}
.modal-content {
    border: 0;
}
.events .event-details:last-of-type,
.home .topbar,
.modal-header,
.topbar.go-transparent {
    border-bottom: 0;
}
.listing-price {
    font-size: 2.5rem;
    line-height: 1;
    right: 0;
}
.home-price {
    right: 0;
}
.last-section {
    padding-bottom: 120px !important;
}
.listing-ctas .btn,
.listing-ctas .btn-secondary {
    width: 100%;
    max-width: 270px;
}
.topbar {
    transition: margin 0.7s;
}
.has-caption .le-inner {
    padding-bottom: 56px;
}
.left-section.residents-lodge,
.pb-120 {
    padding-bottom: 120px;
}
#plans-gallery p {
    font-size: 24px;
    max-width: 1140px;
    margin-top: 250px;
}
#plans-gallery .owl-next,
#plans-gallery .owl-prev {
    top: calc(50% - 250px);
}
.ribbon {
    background: #fec553;
    padding: 5px 45px;
    left: 0;
    z-index: 1;
}
.listing-description h3 {
    line-height: 1.5;
}
.listing-description h3,
.listing-plan h3,
.show-home h3 {
    color: #194222;
    font-size: 32px;
}
.sh-address a,
.show-home p {
    color: #496a50;
}
.citation {
    font-size: 12px;
    margin-top: 10px;
}
.scrolled .ghost-icon,
.scrolled .logo-icon {
    transform: scale(0);
}
.in-the-area h4 {
    color: #194222;
    margin-bottom: 15px;
}
#nearby-tabs li {
    margin-right: 50px;
    color: #194222;
}
#nearby-tabs li a.active,
#nearby-tabs li.active {
    text-decoration: underline !important;
}
#nearby-tabs {
    padding-top: 35px;
    border-top: 1px solid #194222;
}
.tab-content li {
    margin-bottom: 20px;
    color: #194222;
}
.le-mid h3 {
    font-size: 32px;
    margin-bottom: 200px;
    color: #194222;
}
.light-green {
    background: #ebf4e4;
}
.le-half {
    max-width: 500px;
}
.le-half h3 {
    font-size: 32px;
    margin-bottom: 70px;
    color: #194222;
}
#plans-gallery .owl-dots {
    width: 100%;
    position: absolute;
    bottom: 200px;
}
#plans-gallery .owl-dot {
    width: 20%;
    float: left;
    padding: 10px;
}
#plans-gallery .owl-dot button {
    width: 100%;
    text-transform: uppercase;
    border: 0;
    border-top: 1px solid #869985;
    color: #869985;
    padding-top: 25px;
    outline: 0;
}
#plans-gallery .owl-dot.active {
    background: 0 0 !important;
}
#plans-gallery .owl-dot.active button {
    color: #194222;
    border-top-color: #194222;
}
.main-logo .logo-icon {
    width: 116px;
    display: block;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    transition: 0.5s;
}
.home-img .listing-btn,
.home-img img,
.hov-overlay {
    transition: 0.5s;
}
.le-map h3 {
    color: #194222;
    font-size: 20px;
    margin-bottom: 35px;
}
#map {
    height: 500px;
    width: 100%;
}
.le-map a {
    font-size: 18px;
    color: #194222;
}
.about-icons a:hover,
.article-block a:hover,
.load-more:hover,
.menu-holder ul li a,
.tabs a,
.tabs a:hover {
    text-decoration: none;
}
.pb-200 {
    padding-bottom: 200px !important;
}
.pt-120 {
    padding-top: 120px;
}
.pt-100 {
    padding-top: 100px;
}
.le-gallery,
.pt-150 {
    padding-top: 150px;
}
.mb-100 {
    margin-bottom: 100px;
}
.our-villas h2 {
    margin-bottom: 50px;
}
.sand {
    background: #f7f4ec;
}
.intro-text {
    max-width: 1140px;
}
.intro-text p {
    font-size: 32px;
}
#duplexes-gallery .owl-dots,
#villas-gallery .owl-dots {
    position: absolute;
    bottom: 25px;
}
.headline p {
    font-size: 24px;
}
.anniversary-logo {
    width: 100px;
    margin-bottom: 20px;
}
.owl-next:hover,
.owl-prev:hover {
    background: #071033 !important;
}
.owl-dot.active {
    background: #194222 !important;
}
.owl-dots button.owl-dot {
    background: #d9d9d9;
    border-radius: 50%;
    height: 10px;
    width: 10px;
    margin-right: 10px;
    position: relative;
}
.owl-carousel .owl-nav.disabled {
    display: initial !important;
}
.our-villas .owl-carousel p {
    text-align: right;
    margin-top: 30px;
}
.enquiry-intro {
    max-width: 650px;
    margin-bottom: 40px;
}
.le-more-info {
    padding-top: 200px;
    padding-bottom: 200px;
}
.book-visit,
.enquiries button {
    border: 1px solid #194222;
    padding: 15px;
    width: calc(50% - 10px);
    margin-top: 40px;
    outline: 0;
}
.enquiries {
    max-width: 900px;
}
.enquiries button {
    background: #194222;
    color: #fff;
    -webkit-apperance: none;
    cursor: pointer;
}
.book-visit,
.enquiries h3,
.listing-features h1 {
    color: #194222;
}
.book-visit:hover,
.enquiries button:hover {
    background: #95c470;
    color: #194222;
    border-color: #95c470;
}
.contact-details-block:first-child {
    border-bottom: 1px solid #cacaca;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.book-visit {
    float: right;
}
.enquiries h3 {
    font-size: 32px;
    margin-bottom: 50px;
}
.le-cta {
    padding-top: 150px;
    padding-bottom: 150px;
}
.listing-features {
    padding-top: 50px;
    padding-bottom: 120px;
}
.listing-secondary img {
    margin-bottom: 8px;
}
.listing-hero {
    padding-right: 0;
}
.btn,
.btn-secondary {
    color: #194222;
    font-size: 18px;
    padding: 12px 50px;
    text-decoration: none !important;
    text-align: center;
    display: inline-block;
}
.listing-features span {
    position: relative;
    margin-left: 40px;
    padding-right: 20px;
    display: inline-block;
}
.le-cta p {
    color: #194222;
    font-size: 32px;
    max-width: 680px;
    margin-left: auto;
    text-align: center;
    margin-bottom: 50px;
}
.listing-features p {
    font-size: 20px;
    margin-top: 30px;
}
.home-awards h2,
.home-awards h3 span {
    font-size: 160px;
    font-weight: 400;
}
.btn {
    background: #95c470;
    border-radius: 0;
}
.btn-secondary {
    background: 0 0;
    border: 1px solid #194222;
    border-radius: 0;
}
.owl-next,
.owl-prev {
    width: 60px;
    height: 60px;
    display: block !important;
    background: #071033 !important;
    float: left;
}
.btn-secondary:hover {
    background: #194222;
    color: #fff;
}
.go-transparent .midnightHeader.light .bar,
.topbar.scrolled,
.topbar.scrolled .midnightHeader.light,
.topbar.transparent.scrolled {
    background: #fff !important;
}
#gallery p {
    position: absolute;
    color: #fff;
    bottom: 20px;
    right: 40px;
}
.topbar.scrolled {
    border-bottom: 1px solid #d0d0d0 !important;
}
.owl-prev {
    border-radius: 50%;
    margin-right: 15px;
    border: 2px solid #fff !important;
}
.article-title h1,
.intro-logo img,
.listings-info {
    margin-left: auto;
    margin-right: auto;
}
.owl-next.disabled,
.owl-prev.disabled {
    background: #eaf1f0 !important;
}
.owl-next.disabled img,
.owl-prev.disabled img {
    opacity: 0.4;
}
.owl-next {
    border-radius: 50%;
    border: 2px solid #fff !important;
}
.left-section,
.right-section {
    padding-top: 120px;
    padding-bottom: 60px;
}
.owl-nav {
    position: absolute;
    top: -150px;
    right: 0;
}
#feature-slider .owl-next.disabled,
#feature-slider .owl-prev.disabled {
    background-color: #ccc !important;
}
#feature-slider .owl-nav {
    position: absolute;
    bottom: -100px;
    top: auto;
    right: auto;
    left: auto;
}
.listing-btn {
    color: #fff;
    white-space: nowrap;
    border-radius: 10px;
    position: absolute;
    font-size: 48px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
}
.listings-info {
    max-width: 320px;
    margin-top: 60px;
    text-align: center;
}
.bedrooms:before {
    background: url("../img/bedroom-icon.svg");
    width: 21px;
    height: 18px;
    position: absolute;
}
.bathrooms:before {
    background: url("../img/bathroom-icon.svg");
    width: 24px;
    height: 20px;
    position: absolute;
}
.garage:before {
    background: url("../img/garage-icon.svg");
    width: 21px;
    height: 19px;
    position: absolute;
}
.listing-features .bedrooms:before {
    width: 28px;
    height: 24px;
    background-size: cover;
    top: 5px;
    left: -38px;
}
.listing-features .bathrooms:before {
    width: 29px;
    height: 25px;
    background-size: cover;
    top: 3px;
    left: -38px;
}
.listing-features .garage:before {
    width: 26px;
    height: 23px;
    background-size: cover;
    top: 5px;
    left: -38px;
}
.floorplan:before {
    content: "";
    background: url("../img/floorplan-icon.svg") 0 0 / cover;
    width: 25px;
    height: 27px;
    position: absolute;
    left: -38px;
    top: 5px;
}
.home-img {
    position: relative;
    background: #f5f5f5;
}
.hero-overlay,
.home-usp,
.hov-overlay,
.search-icon {
    position: absolute;
}
.home-awards h2 {
    color: #0f2d32;
}
.home-awards h3 {
    color: #0f2d32;
    font-size: 30px;
}
.home-awards .award-row {
    border-top: 1px solid #d0d0d0;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 15px;
    line-height: 1;
    color: #0f2d32;
}
.award-row span {
    width: 25%;
    display: inline-block;
}
.homes-available h2 {
    text-align: center;
    margin-bottom: 50px;
}
.hov-overlay {
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #0f2d32;
    opacity: 0.8;
    width: 100%;
    height: 0;
}
.home-img:hover .hov-overlay,
.le-inner {
    height: 100%;
}
.home-usp {
    background: #194222;
    text-align: center;
    color: #fff;
    padding: 12px 15px;
    font-size: 18px;
    z-index: 1;
    width: 100%;
}
.le-inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.le-inner p {
    margin-bottom: 0;
    align-self: flex-end;
}
.back-all:hover,
.footer-navigation a:hover {
    color: #cdde68;
}
.columns-container {
    columns: 300px 3;
    column-gap: 3rem;
    column-rule: 1px solid #f1f1f1;
}
.search-icon {
    top: 19px;
    left: 45px;
}
.case-study-intro,
.publications-container,
.single-publications-hero {
    padding-top: 72px !important;
}
.form-container {
    padding: 50px;
}
input::placeholder,
textarea::placeholder {
    color: #6c7487;
}
input,
select,
textarea {
    background: 0 0;
    border: 0;
    border-bottom: 1px solid #6a7085;
    padding: 10px 0;
    margin-bottom: 25px;
    font-size: 18px;
    display: block;
    width: 100%;
}
input:focus,
select:focus,
textarea:focus {
    border-color: #0f2d32 !important;
    outline: 0;
}
footer input:focus {
    border-color: #fff !important;
    outline: 0;
}
.team-mini {
    text-align: center;
    padding: 30px 20px 20px;
}
.tab-expanded-red .partner-website a:after,
.tab-expanded-red .partner-website:after,
.tab-red:hover,
.tab-red[aria-expanded="true"] {
    background: #eb6e4f !important;
}
.tab-expanded-red .partner-website a:hover {
    color: #eb6e4f !important;
}
.tab-expanded-sand .partner-website a:after,
.tab-expanded-sand .partner-website:after,
.tab-sand:hover,
.tab-sand[aria-expanded="true"] {
    background: #d4b887 !important;
}
.tab-expanded-sand .partner-website a:hover {
    color: #d4b887 !important;
}
.tab-expanded-black .partner-website a:hover,
.text-info {
    color: #191b16 !important;
}
.tab-black:hover,
.tab-black[aria-expanded="true"],
.tab-expanded-black .partner-website a:after {
    background: #191b16 !important;
}
.tab-black:hover img,
.tab-black[aria-expanded="true"] img {
    filter: invert(100%) !important;
}
.tab-expanded-black .partner-website:after {
    content: url(/assets/img/link-arrow-white.svg) !important;
    background: #191b16 !important;
}
.tp-padding {
    padding-top: 70px !important;
}
.tp-padding h1 {
    padding-bottom: 70px !important;
}
.toggle-active .bar {
    background-color: #000 !important;
}
.people-desc {
    column-count: 3;
}
.person-name a h3:hover,
.person-name a:hover,
.topbar .main-menu ul li {
    color: #191b16;
}
.text-info {
    line-height: 1;
    margin-bottom: 40px;
}
.sea {
    background: #c8d7de;
    padding: 0;
}
.padded,
.padded-left {
    padding-left: 55px;
}
.footer .terms a {
    font-weight: 400;
}
.faded-bg {
    background: #000;
    background: linear-gradient(132deg, #000 64%, #008245 100%);
}
.content-intro {
    font-family: Feijoa;
    font-size: 22px;
}
.padded {
    padding-right: 55px;
}
.topbar.transparent #light-logo,
.topbar.transparent.scrolled #dark-logo,
[data-aos^="zoom"][data-aos^="zoom"] {
    opacity: 1 !important;
}
[data-aos="zoom-out"] {
    transform: scale(1.3);
}
[data-aos-delay="5000"][data-aos].aos-animate,
[data-aos][data-aos][data-aos-delay="5000"].aos-animate {
    transition-delay: 5.3s;
}
.nav-row {
    padding: 40px 0 0;
}
.main-menu ul {
    margin-bottom: 0;
    height: 100%;
    text-align: right;
    font-weight: 700;
}
.counter,
.error-title h1,
.intro-logo,
.issues-img,
.percentage::after,
.preloader-wrap {
    text-align: center;
}
.main-menu ul li {
    color: #fff;
    font-weight: 500;
    list-style-type: none;
    font-size: 14px;
    text-transform: uppercase;
    display: inline-block;
    padding-left: 24px;
    padding-right: 24px;
    letter-spacing: 1px;
    padding-bottom: 26px;
}
.main-menu ul li a:after {
    display: none;
    content: "";
    position: absolute;
    bottom: 0;
    left: -2px;
    width: 0%;
    height: 1px;
    background: #6f8184;
    transition: 0.3s;
}
.hero-overlay {
    background: #191b16;
    background: linear-gradient(0deg, rgba(25, 27, 22, 0) 0, #191b16 100%);
    opacity: 60%;
    height: 30%;
    width: 100%;
    top: 0;
}
.issues-img {
    background-image: url("../img/issues-in-focus.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
}
.main-issues {
    padding-top: 75px;
    padding-left: 0;
}
.hp-intro,
.slider-loading {
    padding-top: 70px;
    padding-bottom: 70px;
}
.loader-container {
    position: relative;
    height: 140px;
}
#halfclip,
#loader,
.counter,
.halfcircle,
.hotspot {
    position: absolute;
}
.counter {
    top: 50%;
    left: 50%;
    z-index: 9;
    transform: translate(-50%, -50%);
    color: #6b6a68;
}
.counter:first-letter {
    color: #000;
    border-right: 1px solid #6b6a68;
    margin-right: 10px;
    padding-right: 10px;
}
@-webkit-keyframes ringPulse {
    0% {
        opacity: 0;
        transform: scale(1);
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.8);
    }
}
@-moz-keyframes ringPulse {
    0% {
        opacity: 0;
        transform: scale(1);
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.8);
    }
}
@-ms-keyframes ringPulse {
    0%,
    100% {
        opacity: 0;
    }
    0% {
        transform: scale(1);
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: scale(1.8);
    }
}
@-o-keyframes ringPulse {
    0% {
        opacity: 0;
        transform: scale(1);
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.8);
    }
}
@keyframes ringPulse {
    0% {
        opacity: 0;
        transform: scale(1);
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.8);
    }
}
.hotspot div {
    background: #c3cbe2;
    width: 15px;
    height: 15px;
    border-radius: 50%;
}
.hotspot.pulse div {
    background: #071033;
    width: 12px;
    height: 12px;
    border-radius: 50%;
}
.hotspot.pulse {
    transform: translate(-17px, -17px) !important;
    transition: none;
}
.pulse {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: #c3cbe2;
    border: 4px solid #c3cbe2;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    -moz-transition: 0.2s;
    transition: 0.2s;
    -webkit-animation: 3s 1s infinite pulse;
    -moz-animation: 3s 1s infinite pulse;
    -o-animation: 3s 1s infinite pulse;
    animation: 3s 1s infinite pulse;
}
@keyframes pulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 #c3cbe2;
        -moz-box-shadow: 0 0 0 0 #c3cbe2;
        box-shadow: 0 0 0 0 #c3cbe2;
        border-color: #c3cbe2;
    }
    70% {
        -webkit-box-shadow: 0 0 0 30px #a1cd4400;
        -moz-box-shadow: 0 0 0 30px #a1cd4400;
        box-shadow: 0 0 0 30px #a1cd4400;
        border-color: #c3cbe2;
    }
    100% {
        -webkit-box-shadow: 0 0 0 0 #a1cd4400;
        -moz-box-shadow: 0 0 0 0 #a1cd4400;
        box-shadow: 0 0 0 0 #a1cd4400;
    }
}
@-webkit-keyframes pulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 #c3cbe2;
        box-shadow: 0 0 0 0 #c3cbe2;
        border-color: #c3cbe2;
    }
    70% {
        -webkit-box-shadow: 0 0 0 30px #a1cd4400;
        box-shadow: 0 0 0 30px #a1cd4400;
        border-color: #c3cbe2;
    }
    100% {
        -webkit-box-shadow: 0 0 0 0 #a1cd4400;
        box-shadow: 0 0 0 0 #a1cd4400;
    }
}
@-moz-keyframes pulse {
    0% {
        -moz-box-shadow: 0 0 0 0 #c3cbe2;
        box-shadow: 0 0 0 0 #c3cbe2;
        border-color: #c3cbe2;
    }
    70% {
        -moz-box-shadow: 0 0 0 30px #a1cd4400;
        box-shadow: 0 0 0 30px #a1cd4400;
        border-color: #c3cbe2;
    }
    100% {
        -moz-box-shadow: 0 0 0 0 #a1cd4400;
        box-shadow: 0 0 0 0 #a1cd4400;
    }
}
@-o-keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 #c3cbe2;
        border-color: #c3cbe2;
    }
    70% {
        box-shadow: 0 0 0 30px #a1cd4400;
        border-color: #c3cbe2;
    }
    100% {
        box-shadow: 0 0 0 0 #a1cd4400;
    }
}
#loader {
    right: 0;
    width: 140px;
    height: 140px;
    border: 1px solid #b3b4ad;
    border-radius: 50%;
    animation: 2.5s infinite colors;
}
#halfclip {
    width: 50%;
    height: 100%;
    right: 0;
    transform-origin: left center;
    animation: 5s steps(2) infinite cliprotate;
    -webkit-animation: 5s steps(2) infinite cliprotate;
}
.halfcircle {
    box-sizing: border-box;
    height: 100%;
    right: 0;
    border: 5px solid transparent;
    border-top-color: #c1d03d;
    border-left-color: #c1d03d;
    border-radius: 50%;
}
#clipped {
    width: 200%;
    animation: 2.5s linear infinite rotate;
    -webkit-animation: 2.5s linear infinite rotate;
}
#fixed {
    width: 100%;
    transform: rotate(135deg);
    animation: 5s steps(2) infinite showfixed;
    -webkit-animation: 5s linear infinite showfixed;
}
@-webkit-keyframes cliprotate {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
@keyframes cliprotate {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
@-webkit-keyframes rotate {
    0% {
        transform: rotate(-45deg);
    }
    100% {
        transform: rotate(135deg);
    }
}
@keyframes rotate {
    0% {
        transform: rotate(-45deg);
    }
    100% {
        transform: rotate(135deg);
    }
}
@-webkit-keyframes showfixed {
    0%,
    49.9% {
        opacity: 0;
    }
    100%,
    50% {
        opacity: 1;
    }
}
.preloader-wrap {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    bottom: 0;
    background: #000;
    background: linear-gradient(
        135deg,
        #008245 0,
        #000 30%,
        #000 67%,
        #008245 100%
    );
    z-index: 800;
}
.preloader-wrap .outer {
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    height: 100vh;
    flex-direction: column;
}
.intro-topline {
    margin-bottom: 40px !important;
}
.intro-logo img {
    display: block;
}
.intro-logo {
    margin-bottom: 200px;
    margin-top: -200px;
}
.percentage-wrapper {
    width: 100%;
    padding: 0 50px;
    display: table;
    margin: 0 auto;
    z-index: 10;
    position: fixed;
    top: calc(100vh - 80px);
    text-align: center;
}
.percentage {
    opacity: 1;
    font-size: 13px;
    color: #fff;
    display: table;
    margin: 0 auto;
}
.percentage::after {
    content: "%";
    width: 100%;
    height: 20px;
    font-size: 13px;
    line-height: 20px;
    color: #fff;
    left: 0;
}
.trackbar {
    width: calc(100% - 160px);
    height: 2px;
    margin-top: 0;
    position: absolute;
    top: 50vh;
    left: 80px;
    right: auto;
    opacity: 1;
    background: rgba(255, 255, 255, 0.1);
    z-index: 1;
}
.hold-progress-bar,
.loadbar {
    width: 0%;
    height: 2px;
    margin: 0 auto;
    display: table;
    top: 0;
    left: auto;
    right: auto;
    overflow: hidden;
    position: relative;
}
.loadbar {
    background: #fff;
}
.hold-progress-bar {
    background: #000;
}
.contact a,
.footer-navigation a {
    position: relative;
    display: inline-block;
}
.contact a:hover:after,
.footer-navigation a:hover:after {
    width: 100%;
    left: 0;
}
.footer-logo img {
    width: 100%;
    max-width: 247px;
    margin-bottom: 0;
}
.top-footer {
    padding-top: 80px;
    padding-bottom: 80px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.footer-navigation a:after {
    background: #cdde68;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transition:
        width 0.3s,
        left 0.3s;
    width: 0;
}
.article-block img {
    transition: 1s;
}
.article-block:hover h3,
.filter-toggle:hover,
.midnightHeader.light .contact a,
.midnightHeader.light .menu-text,
.news .people-nav ul,
.news-filters,
.news-tabs p,
.topbar.scrolled .main-menu ul li a {
    color: #000;
}
.article-block:hover img {
    filter: grayscale(0%);
}
.article-block time {
    color: #191b16;
    font-size: 16px;
    margin-bottom: 20px;
}
.article-block a h3 {
    text-transform: uppercase;
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 0;
}
.articles {
    padding-top: 50px;
    padding-left: 30px;
    padding-right: 30px;
}
.news .article-block time {
    display: block;
    margin-bottom: 15px;
}
.pagination-news {
    padding-left: 10px;
}
.pagination-news ul li:hover {
    color: #071033;
    background-color: #fed217;
}
.article-title {
    padding-bottom: 0;
    font-size: 56px;
}
.article-body {
    padding-top: 60px;
}
.article-title h1 {
    max-width: 1240px;
    width: 100%;
}
.single-article-hero {
    margin-top: 70px;
}
.error-title .download-btn {
    float: none;
    margin-top: 10px;
    display: inline-block;
}
.error-title h1 {
    font-weight: 300 !important;
    color: #071033;
    font-size: 90px;
    line-height: 1.1;
}
#johns-column .article-block a h3 {
    color: #000;
    margin-top: 20px;
    margin-bottom: 10px;
}
.read-more {
    color: #008245 !important;
    font-size: 20px;
    display: inline-block;
}
.back-to-all,
.download-btn,
.load-more {
    font-size: 18px;
    font-weight: 600;
}
.service-nav-second-level.show {
    display: block !important;
}
.event-date-second {
    line-height: 1.2;
}
.download-btn,
.service-content h1 {
    text-transform: uppercase;
    line-height: 1;
}
.article-block .read-more:after {
    background: url(../img/arrow-right.svg) 0 0 / contain no-repeat;
    opacity: 0;
    content: "";
    display: block;
    margin-left: 0;
    transition: 0.5s;
    float: right;
    width: 22px;
    height: 8px;
    margin-top: 8px;
}
.article-block:hover .read-more:after {
    opacity: 1;
    margin-left: 5px;
}
.overlay .menu-holder .primary-nav li {
    display: flex;
    width: 100%;
    text-align: left;
    padding: 15px 30px 0;
}
.services-hero .menu-holder ul li a:after {
    content: "";
    opacity: 0;
    background: url(../img/arrow-right-green.svg) 0 0 / contain no-repeat;
    width: 0;
    height: 11px;
    display: block;
    float: right;
    margin-top: 25px;
    margin-left: 0;
    transition: 0.5s;
}
.overlay .menu-holder ul li:after,
.overlay .menu-holder ul li:before {
    margin-top: 35px !important;
}
.services-hero .menu-holder ul li a:hover:after {
    width: 80px;
    margin-left: 15px;
    opacity: 1;
}
.services-nav:hover a {
    opacity: 0.3;
}
.network h4 {
    font-size: 24px;
    margin-top: 40px;
    font-weight: 600;
}
.network-details {
    border-bottom: 0 !important;
}
.network,
.service-content h1 {
    border-bottom: 1px solid #fff;
    padding-bottom: 40px;
}
.network {
    margin-bottom: 50px;
}
.back-to-all span {
    padding-left: 0;
    transition: 0.5s;
}
.midnightHeader.light .bar {
    background: #000;
}
.news .service-content h1 {
    color: #000;
    padding-bottom: 0;
    margin-bottom: 0;
}
.social-header {
    border-bottom: 1px solid #161616;
    margin-bottom: 75px;
}
.social-icons {
    padding-top: 35px;
    text-align: right;
}
.social-icons a {
    margin: 0 15px;
}
.news-tab {
    border-bottom: 1px solid #000;
    padding-top: 40px;
    padding-bottom: 10px;
}
strong {
    font-weight: 700;
}
.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.container {
    max-width: 1630px;
}
.hp-intro h3 {
    font-family: Feijoa, Arial, Helvetica, sans-serif;
    font-size: 28px;
}
.hero {
    height: 100vh;
    background-image: url("../img/hero-D.jpg");
    background-color: #000;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    position: relative;
    text-align: center;
    display: flex;
    align-items: end;
    justify-content: center;
    overflow: hidden;
}
.hero video {
    position: absolute;
    min-width: 100vw;
    min-height: 100vh;
}
.service-container {
    margin-top: 200px;
}
#plans-gallery .animated {
    -webkit-animation-duration: 0.3s !important;
    animation-duration: 0.3s !important;
}
.service-bg {
    position: absolute;
    height: 100vh;
    left: 50px;
    right: 50px;
    background: #008245;
    background: linear-gradient(180deg, #036638 0, #000 100%);
    z-index: -1;
}
.back-to-all {
    text-transform: uppercase;
    color: #008245;
    margin-bottom: 30px;
    display: inline-block;
}
.load-more-container {
    text-align: center;
    margin-top: 60px;
    padding-bottom: 150px;
}
.load-more {
    background: #fff;
    border: 1px solid #000;
    display: inline-block;
    color: #000;
    text-transform: uppercase;
    border-radius: 50px;
    padding: 15px 25px 10px;
    transition: 0.35s;
}
.contact-form button,
.download-btn {
    float: right;
    border: 1px solid #fff;
    background: #000;
    cursor: pointer;
}
.load-more:hover {
    background: #000;
    color: #fff;
}
.article .download-btn,
.download-btn:hover {
    background: #fff;
    color: #000;
}
.instagram-feed {
    padding-top: 150px;
    padding-bottom: 150px;
}
.services .service-content {
    padding: 100px 85px 0;
}
.service-content {
    padding: 100px 35px 0;
}
.service-content h1 {
    font-weight: 700;
    color: #fff;
    font-size: 90px;
    margin-bottom: 50px;
}
.resource-download {
    border-top: 1px solid #fff;
    padding-top: 20px;
    padding-bottom: 25px;
}
.download-btn {
    color: #fff;
    border-radius: 50px;
    padding: 15px 25px 10px;
    transition: 0.5s ease-out;
}
.article .download-btn {
    border: 1px solid #000;
}
.article .download-btn:hover {
    background: #000;
    color: #fff;
}
.single-resource h4 {
    line-height: 2;
}
.single-resource {
    width: 100%;
    padding: 0 15px;
    margin-top: 40px;
}
.single-resource .divider {
    border-top: 2px solid #071033;
    width: 100%;
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 40px;
}
.people-nav ul,
.service-nav ul {
    padding: 0;
    list-style-type: none;
    color: #fff;
}
.service-nav {
    position: -webkit-sticky;
    position: sticky;
    top: 150px;
    padding-top: 100px;
}
.people-nav ul li,
.service-nav ul li {
    font-size: 22px;
    font-weight: 400;
    margin-bottom: 10px;
}
#news-filters {
    padding-top: 20px;
    font-size: 24px;
}
.filter-toggle span {
    transition: 1s ease-out;
    display: inline-block;
}
.filter-toggle[aria-expanded="true"] span {
    transform: rotate(45deg);
}
.radio input[type="radio"] {
    position: absolute;
    opacity: 0;
}
.radio input[type="radio"] + .radio-label:before {
    content: "";
    border-radius: 100%;
    border: 1px solid #000;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-top: 3px;
    margin-right: 10px;
    position: relative;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
    transition: 250ms;
}
.radio input[type="radio"]:checked + .radio-label:before {
    background-color: #008245;
    box-shadow: inset 0 0 0 4px #f4f4f4;
}
.contact-form input:focus,
.contact-form textarea:focus,
.radio input[type="radio"]:focus + .radio-label:before {
    outline: 0;
    border-color: #008245;
}
.radio input[type="radio"]:disabled + .radio-label:before {
    box-shadow: inset 0 0 0 4px #f4f4f4;
    border-color: #b4b4b4;
    background: #b4b4b4;
}
.radio input[type="radio"] + .radio-label:empty:before {
    margin-right: 0;
}
.member-column {
    border-left: 1px solid #fff;
}
.cat-news .col-md-3:nth-child(2) {
    margin-left: 0 !important;
}
@media screen and (max-width: 1799px) {
    .hero h1 {
        font-size: 80px;
    }
    .projects-carousel h2 {
        font-size: 72px;
    }
    .home-awards h2,
    .home-awards h3 span {
        font-size: 140px;
    }
    .footer-copyright {
        padding-bottom: 50px;
    }
}
@media screen and (max-width: 1599px) {
    .cd-horizontal-timeline,
    .project-header {
        padding-top: 200px;
    }
    .cat-news .col-md-3:nth-child(4n + 4) {
        margin-left: 0 !important;
    }
    .project-header {
        padding-bottom: 50px;
    }
    .contact-details-block h4,
    .contact-details-block p,
    .parliament-section h3 {
        margin-bottom: 20px;
    }
    .home-stat {
        font-size: 72px;
    }
    .agency-section {
        padding-bottom: 25px;
        margin-bottom: 70px;
    }
    .award-section {
        padding-bottom: 25px;
        margin-bottom: 40px;
    }
    .government h2 {
        font-size: 48px;
        margin-bottom: 40px;
    }
    .system-block {
        padding-top: 20px;
    }
    h3 {
        font-size: 36px;
    }
    .pb-80 {
        padding-bottom: 60px;
    }
    .pt-200 {
        padding-top: 160px;
    }
    h1 {
        font-size: 90px;
    }
    .pt-80 {
        padding-top: 60px;
    }
    h2 {
        font-size: 80px;
    }
    .hero h1,
    .modal-content h4,
    .next-project-title,
    .project-header h1,
    .work-together h4 {
        font-size: 70px;
    }
    .project-info,
    .project-summary {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .contact-section,
    .location-header {
        padding-bottom: 100px;
    }
    .location-header {
        padding-top: 150px;
    }
    .about-header h1,
    .location-header h1,
    .projects-main h1 {
        font-size: 100px;
        padding-bottom: 30px;
    }
    .pb-200 {
        padding-bottom: 100px !important;
    }
    .home-awards h2,
    .home-awards h3 span {
        font-size: 120px;
    }
    .projects-grid {
        padding-top: 50px;
    }
    .building-relationships,
    .crafting-excellence,
    .home-awards,
    .projects-carousel,
    .service-beyond,
    .work-together {
        padding-bottom: 150px;
    }
    .agency-intro h3 {
        margin-bottom: 30px;
    }
}
@media screen and (max-width: 1399px) {
    .agency-intro h3,
    .projects-grid h3,
    .team-quote img {
        margin-bottom: 30px;
    }
    .traditions-carousel .col-md-5,
    .traditions-section .col-md-6 {
        padding: 0 0 0 40px;
    }
    .main-menu ul li {
        padding-left: 15px;
        padding-right: 15px;
    }
    .hotspot.pulse {
        left: 40% !important;
    }
    .cd-timeline-navigation a,
    .owl-next,
    .owl-prev {
        width: 45px;
        height: 45px;
    }
    .cd-timeline-navigation a.prev {
        right: 60px;
    }
    .geographical-section {
        background-image: url(../img/world-map.png);
        background-position: 50vw center;
    }
    .about-people h2,
    .intro h2,
    .listing-btn {
        font-size: 42px;
    }
    .home-awards h2,
    .home-awards h3 span {
        font-size: 100px;
    }
    .modal-content h4,
    .project-header h1,
    .work-together h4 {
        font-size: 68px;
    }
    h2 {
        font-size: 72px;
    }
    .agencies-nav ul li {
        margin-bottom: 20px;
    }
    .about-overview p,
    .about-values h3,
    .home-awards h3,
    .profile-info h4,
    .testimonial blockquote {
        font-size: 26px;
    }
    .footer-logo img {
        max-width: 200px;
    }
    .team-quote img {
        max-width: 40px;
    }
    .project-halfs li {
        padding: 20px 0 10px;
    }
    .pre-text {
        font-size: 16px !important;
    }
    .government h2 {
        font-size: 36px;
    }
    .pre-text sup {
        font-weight: 300;
        margin-right: 10px;
        font-size: 12px;
    }
    .profile-info {
        padding: 30px 15px 60px;
    }
    .people-header {
        margin-bottom: 50px;
    }
    .project-info,
    .project-summary {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .about-overview h2,
    .projects-carousel h2 {
        font-size: 62px;
    }
    .pre,
    .project-details p {
        font-size: 14px;
        letter-spacing: 4px;
    }
    .next-project-title {
        font-size: 64px;
        margin-bottom: 20px;
    }
    .project-description {
        font-size: 26px;
        margin-bottom: 40px;
    }
    .project-header {
        padding-top: 200px;
        padding-bottom: 50px;
    }
    .projects-grid h3 {
        font-size: 40px;
    }
    .about-header h1,
    .projects-main h1 {
        font-size: 90px;
        padding-bottom: 30px;
    }
    .crafting-excellence .green-divider {
        top: 40px;
    }
    .home-stat {
        font-size: 70px;
    }
    .media-line h3 {
        font-size: 30px;
    }
    .building-relationships,
    .crafting-excellence,
    .home-awards,
    .projects-carousel,
    .service-beyond,
    .work-together {
        padding-bottom: 120px;
    }
    .location-header h1 {
        font-size: 90px;
    }
    .intro-inner {
        max-width: 800px;
    }
    .people {
        margin-bottom: 150px;
    }
}
@media screen and (max-width: 1299px) {
    h3 {
        font-size: 36px;
    }
}
@media screen and (max-width: 1199px) {
    .countdown-timer ul li span,
    .hero h1 {
        font-size: 48px;
    }
    .agency-details h4 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .cabinet-member img,
    .media-line h3 {
        margin-bottom: 10px;
    }
    .nav-row {
        padding-top: 20px;
    }
    .pt-100 {
        padding-top: 60px;
    }
    .hero-title,
    .pb-100 {
        padding-bottom: 60px;
    }
    .hero-title p {
        font-size: 12px;
    }
    #dark-logo,
    #light-logo {
        top: -10px !important;
    }
    .traditions-carousel .col-md-5,
    .traditions-section .col-md-6 {
        padding: 0 0 0 15px;
    }
    .cabinet-slide .position,
    .media-date {
        font-size: 14px;
    }
    .agency-contacts {
        margin-top: 20px;
    }
    .agencies-nav ul li a,
    .cabinet-slide p,
    .home-stat-desc,
    p {
        font-size: 16px;
    }
    .media-line h3 {
        font-size: 24px;
        padding-right: 170px;
    }
    .media-line .col-md-9 {
        padding-left: 30px;
    }
    .media-category {
        font-size: 12px;
        padding: 3px 7px;
    }
    .cabinet-member .position {
        font-size: 10px;
    }
    .cabinet-member h4,
    .featured p,
    h5 {
        font-size: 18px;
    }
    .home-stat,
    h2 {
        font-size: 54px;
    }
    .media-line .divider {
        margin-top: 15px;
        margin-bottom: 15px;
    }
    .agency-category {
        margin-bottom: 60px;
    }
    .agency-category h3 {
        font-size: 18px;
        margin-bottom: 15px;
        margin-top: 20px;
    }
    .outline-btn {
        font-size: 16px;
        padding: 12px 25px;
    }
    .event-date-second,
    .pre-text {
        font-size: 16px !important;
    }
    .cabinet-slide h4 {
        font-size: 24px;
    }
    .featured p {
        margin-bottom: 15px;
    }
    .pre-text {
        margin-bottom: 20px;
    }
    .government h2 {
        font-size: 36px;
        margin-bottom: 20px;
    }
    .footer-copyright {
        padding-bottom: 30px;
    }
    .system-block {
        margin-top: 40px;
    }
    .countdown-timer ul li {
        padding-right: 25px;
        padding-left: 25px;
    }
    .feature-date {
        font-size: 24px !important;
        margin-top: 20px;
        margin-bottom: 10px;
    }
    h3 {
        font-size: 30px;
    }
}
.cat-john .blog-column {
    border-left: 0;
    margin-bottom: 50px;
}
.blog-column {
    border-right: 1px solid #000;
    border-left: 1px solid #000;
}
.events .event-details {
    color: #191b16;
    font-size: 16px;
    font-weight: 400;
}
.event-details span {
    color: #6b6a68;
    margin-right: 2px;
}
.event-details-last {
    border-bottom: 1px solid #dedede !important;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.sticky-featured-image {
    position: sticky;
    top: 150px;
    padding-right: 50px;
}
.article-container .service-content h1 {
    color: #000;
    border-color: #000;
}
.article-container .service-container {
    margin-top: 0;
    padding-top: 200px;
}
.footer .contact a:hover,
.hero .menu-holder ul li a:hover,
.network a:hover {
    color: #008245;
}
.sidebar {
    height: 100%;
    width: 220px;
    float: left;
    position: sticky;
    position: -webkit-sticky;
    top: 100px;
    padding-bottom: 100px;
}
.main-content {
    margin-left: 220px;
    border-left: 1px solid #878882;
}
.contact-form,
nav {
    margin-left: auto;
    margin-right: auto;
}
.person-description {
    padding: 50px;
    line-height: normal;
}
.person-description p {
    font-size: 18px;
    line-height: 1.5;
}
.midnightInner {
    overflow: hidden !important;
}
.event-mobile-title {
    font-size: 30px;
    padding-left: 25px;
    padding-right: 25px;
    margin-bottom: 0;
}
.menu-text,
.topbar .contact a {
    font-size: 15px;
    letter-spacing: 2px;
}
.about-intro p {
    font-size: 32px;
    line-height: normal;
}
.contact-form button,
.menu-text,
.topbar .contact a {
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
}
.contact-form-section {
    padding-top: 175px;
    padding-bottom: 275px;
}
.contact-section .row {
    border-bottom: 1px solid #fff;
}
.contact-form button {
    color: #fff;
    font-size: 18px;
    border-radius: 50px;
    padding: 15px 25px 10px;
}
.contact-form input,
.contact-form textarea {
    background: #000;
    padding: 10px 15px;
    width: 100%;
}
.contact-form button:hover {
    color: #000;
    background: #fff;
}
.contact-form h2 {
    text-align: center;
    font-size: 65px;
    margin-bottom: 120px;
}
.contact-form {
    width: 850px;
}
.contact-form input {
    margin-bottom: 20px;
    border: 1px solid #fff;
    border-radius: 5px;
    height: 50px;
    font-size: 18px;
    color: #fff;
}
.contact-form textarea {
    border-radius: 5px;
    border: 1px solid #fff;
    font-size: 18px;
    color: #fff;
    margin-bottom: 15px;
}
.contact-form p {
    text-align: center;
    font-weight: 500;
    font-size: 18px;
}
.menu-holder ul,
.services-hero .menu-holder ul li {
    text-align: left;
}
.menu-logo-text {
    position: absolute;
    top: 105px;
    width: 210px;
}
.line,
.line-backdrop {
    width: 1px;
    z-index: 2;
    top: 0;
    transform: translateX(-50%);
    left: 50%;
}
.owl-carousel .animated {
    animation-duration: 3s !important;
}
#dark-logo,
#light-logo {
    position: absolute;
    top: -32px;
}
.publications-container,
.publications-hero {
    padding-top: 0;
    padding-bottom: 0;
}
.home .topbar .row {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.topbar {
    position: relative;
    background: #fff;
    border-bottom: 1px solid #d0d0d0;
    z-index: 2;
}
.topbar.transparent.scrolled .bar {
    background-color: #0f2d32 !important;
}
.topbar.transparent {
    background: 0 0 !important;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2;
}
.topbar.transparent #dark-logo {
    opacity: 0 !important;
}
.topbar .contact a {
    color: #fff;
}
.footer .terms,
.footer .terms a {
    color: rgba(255, 255, 255, 0.5);
}
.menu-text {
    color: #fff;
    right: 60px;
    position: absolute;
    margin-top: 2px;
}
.main-logo img {
    width: 230px;
    z-index: 2;
}
.topbar.scrolled .midnightHeader.default {
    transition: background-color 0.2s linear;
    background: #fff;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.footer .flag {
    max-width: 133px;
}
.footer-main p {
    color: #194222;
    font-weight: 300;
    font-size: 14px;
    margin-bottom: 0;
}
.footer-contact p {
    text-transform: uppercase;
}
.footer .divider {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    margin-bottom: 25px;
    width: 100%;
    margin-left: 15px;
    margin-right: 15px;
}
.footer .partners img {
    max-height: 96px;
    width: auto;
    margin-right: 20px;
}
.footer .terms {
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 13px;
}
.footer .contact a {
    font-size: 20px;
    display: block;
    color: #fff;
}
.footer .social a,
.fw-social a {
    display: inline-block !important;
}
.footer .social a {
    width: 25px;
    height: 25px;
    margin: 0 5px;
}
.footer h3 {
    font-size: 24px;
    color: #fff;
    margin-bottom: 25px;
}
.spacing {
    height: 75vh;
    margin: 25px;
    display: block;
}
.box,
.vbottom,
.vcenter,
.vert-center {
    display: flex;
}
.startLine {
    margin-top: 25px;
    padding-top: 150px;
    border-top: 1px dashed #999;
}
.line-backdrop {
    margin-top: 100px;
    position: relative;
    height: 800px;
    background: #000;
    border: 1px solid #000;
}
.line {
    position: absolute;
    height: 0;
    background: #fff;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius: 50px;
    transition: 0.2s ease-out;
    filter: drop-shadow(0 0 8px #34ef92);
}
.box {
    top: 25%;
    position: relative;
    z-index: 999;
    background-size: cover;
    width: 400px;
    height: 556px;
    justify-content: center;
    align-items: center;
}
.c-scrolldown,
.menu-details,
.scroll-text,
.toggle-button,
.vbottom {
    position: absolute;
}
.fw-social a {
    width: 30px;
    height: 30px;
    margin: 0 15px;
}
.box:nth-child(2n) {
    transform: translateX(calc(150px));
}
.box:nth-child(odd) {
    transform: translateX(calc(-100% - 150px));
}
.box.active {
    border-color: #fff;
    color: #fff;
}
.one,
.two {
    background-image: url("../img/testimonial-1.jpg");
}
.scroll-text {
    color: #fff;
    font-size: 12px;
    letter-spacing: 5px;
    transform: rotate(-90deg);
    text-transform: uppercase;
    bottom: 155px;
}
.c-scrolldown {
    width: 1px;
    height: 200px;
    top: -100px;
    left: 0;
    right: 0;
    margin: 0 auto;
    overflow: hidden;
    z-index: 1;
}
.c-scrolldown .c-line {
    width: 100%;
    height: 100%;
    display: block;
    background: linear-gradient(
        to bottom,
        #d0d0d0 50%,
        rgba(208, 208, 208, 0) 50%
    );
    background-position: 0 -200px;
    background-size: 100% 200%;
    animation: 3.2s cubic-bezier(0.76, 0, 0.3, 1) infinite forwards scrolldown;
}
@keyframes scrolldown {
    0% {
        background-position: 0 -200px;
    }
    75% {
        background-position: 0 0;
    }
    100% {
        background-position: 0 200px;
    }
}
.footer-pattern {
    background-image: url(../img/footer-pattern.png);
    height: 263px;
    background-size: auto 100%;
}
.footer-icons {
    background-color: #191b16;
    background-image: url(../img/footer-icons.png);
    height: 200px;
    background-size: auto 100%;
    background-position: center;
}
.go-transparent {
    background-color: transparent !important;
}
.tabs a {
    color: #2d2d2d;
}
.tabs a:hover {
    color: #ac4239;
}
.homepage h1 {
    font-size: 30px;
    line-height: 1.5;
    margin-bottom: 0;
    text-transform: uppercase;
}
.vcenter {
    justify-content: center;
    align-items: center;
}
.vbottom {
    flex-direction: column;
    justify-content: flex-end;
    bottom: 0;
    max-height: 100%;
}
.primary-nav .collapse li a {
    color: #3249bd;
}
.vert-center {
    align-items: center;
    flex-wrap: wrap;
}
.menu-details {
    max-width: 800px;
    right: 50px;
    bottom: 50px;
}
.menu-details h3 {
    color: #fff;
    font-size: 12px;
    margin-bottom: 20px;
}
.menu-details p {
    margin-bottom: 0;
    color: #fff;
    font-size: 12px;
}
.toggle-button {
    right: 0;
    display: inline-block;
    width: 50px;
    cursor: pointer;
    z-index: 3;
}
.bar {
    background-color: #194222;
    display: block;
    width: 100%;
    height: 2px;
    border: 0;
    -webkit-transition: 0.35s;
    transition: 0.35s;
}
.bar + .bar {
    margin-top: 7px;
}
.go-transparent .bar,
.transparent .bar {
    background-color: #fff;
}
.middle {
    top: 15px;
}
.bottom {
    top: 30px;
}
.toggle-active .top {
    -webkit-transform: translateY(6px) translateX(0) rotate(45deg);
}
.toggle-active .bottom {
    -webkit-transform: translateY(-5px) translateX(0) rotate(-45deg);
    margin-top: 0;
}
.overlay {
    position: fixed;
    background: #fff;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
    opacity: 0;
    -webkit-transition:
        opacity 0.5s,
        visibility 0.5s;
}
.menu-holder {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100vh;
}
.nav-active {
    opacity: 1;
    visibility: visible;
    height: 100%;
    z-index: 1;
}
.menu-holder ul {
    display: block;
    position: relative;
    left: 0;
    font-size: 22px;
    font-weight: 400;
    list-style: none;
    padding: 0;
}
#service-preview {
    height: 753px;
    width: 1005px;
    position: absolute;
    background-image: url(../img/services-landing.jpg);
    background-size: 100% auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#service-hover {
    height: 100%;
    background-size: 100% auto;
}
.pepi-bg {
    background-image: url(../img/services-pepi-tamariki.jpg) !important;
}
.rangatahi-bg {
    background-image: url(../img/services-rangatahi.jpg) !important;
}
.matua-bg {
    background-image: url(../img/services-matua.jpg) !important;
}
.kaumatua-bg {
    background-image: url(../img/services-kaumatua.jpg) !important;
}
.whanau-bg {
    background-image: url(../img/services-whanau.jpg) !important;
}
.services-nav li a:hover,
.services-nav li:hover .text-2 {
    opacity: 1;
    color: #008245;
}
.text-1 {
    position: absolute;
    opacity: 1;
}
@keyframes fade {
    0%,
    45% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.service-title {
    position: absolute;
    top: -12px;
    text-align: center;
    width: 100%;
}
.service-title h1 {
    text-transform: uppercase;
    font-size: 30px;
    font-weight: 600;
}
.menu-holder ul li {
    text-align: center;
    color: #fff;
    font-size: 90px;
    line-height: 1.1;
}
.menu-holder ul li a {
    color: #000;
    position: relative;
    display: inline-block;
}
.hero .menu-holder ul li {
    display: flex;
    align-items: center;
}
.people-nav {
    padding-top: 15px;
}
@media screen and (max-width: 1680px) {
    .service-desktop,
    .service-nav {
        padding-top: 50px;
    }
    .board-container {
        margin-top: 100px;
    }
    .person-description p,
    .person-details p {
        font-size: 18px;
    }
    #service-preview {
        width: 734px;
        height: 550px;
    }
    .service-title h1,
    .team-member a h3 {
        font-size: 24px;
    }
    .people-nav ul li {
        font-size: 20px;
    }
    .ropu-members {
        padding-bottom: 100px;
    }
    .ropu-kaumatua {
        margin-top: 150px;
        margin-bottom: 100px;
    }
    .service-content h1 {
        font-size: 80px;
        padding-bottom: 20px;
    }
    .back-to-all {
        margin-bottom: 20px;
    }
    .back-to-all:hover {
        color: #fff;
    }
    .menu-holder ul li {
        font-size: 72px;
    }
    .content-section {
        margin-bottom: 50px;
    }
    .service-nav {
        position: -webkit-sticky;
        position: sticky;
        top: 150px;
    }
    .services-nav {
        max-width: 1280px;
    }
    .service-bg {
        left: 40px;
        right: 40px;
    }
    .container {
        padding: 0 50px;
    }
}
@media screen and (max-width: 1599px) {
    .article-block a h3 {
        font-size: 24px;
    }
    .vertical-title {
        padding-top: 70px;
        top: 70px;
    }
    .instagram-feed,
    .issue-block {
        padding-top: 100px;
    }
    .publication-block {
        height: 600px;
    }
    .issue-block p {
        max-width: 80%;
    }
    #news-filters {
        padding-top: 20px;
        font-size: 20px;
    }
    .radio input[type="radio"] + .radio-label:before {
        width: 15px;
        height: 15px;
    }
    .radio input[type="radio"]:checked + .radio-label:before {
        background-color: #008245;
        box-shadow: inset 0 0 0 2px #f4f4f4;
    }
    .instagram-feed {
        padding-bottom: 100px;
    }
    .menu-logo-text {
        top: 110px;
    }
}
@media screen and (min-width: 1600px) {
    .cat-news .col-md-3:nth-child(5n + 5),
    .offset-xl-0 {
        margin-left: 0 !important;
    }
    .offset-xl-2 {
        margin-left: 16.666667% !important;
    }
}
@media screen and (max-width: 1279px) {
    .latest-news-intro,
    .tradition-slide {
        padding-bottom: 50px;
    }
    .download-btn,
    .person-description p,
    .person-details p,
    .publication-block p {
        font-size: 14px;
    }
    .network h4,
    .network-desc {
        margin-top: 20px;
    }
    .network,
    .ropu-officers {
        margin-bottom: 30px;
    }
    .listing-price {
        position: relative;
    }
    #service-preview {
        width: 600px;
        height: 450px;
    }
    .publications-list {
        padding-top: 100px;
    }
    .main-menu ul li {
        padding-left: 10px;
        padding-right: 10px;
        font-size: 10px;
    }
    .publication-block {
        height: 420px;
    }
    .latest-news-intro {
        padding-top: 50px;
    }
    .issue-block {
        padding-top: 50px;
    }
    .resource .service-content {
        padding: 50px 35px 0;
    }
    .contact-waipareira {
        padding-top: 250px;
        padding-bottom: 80px;
    }
    .download-btn {
        padding: 10px 15px 5px;
    }
    .resource-download {
        padding-bottom: 10px;
    }
    .tradition-slide h3 {
        margin-bottom: 20px;
    }
    .service-nav-second-level {
        padding-left: 20px;
    }
    .network h4 {
        font-size: 18px;
    }
    .network {
        border-bottom: 1px solid #fff;
        padding-bottom: 20px;
    }
    .resource-download h5 {
        font-weight: 600;
        font-size: 15px;
    }
    #news-filters {
        padding-top: 10px;
        font-size: 18px;
    }
    .filter-toggle,
    .people-nav ul li,
    .read-more {
        font-size: 16px;
    }
    #news-filters label {
        margin-bottom: 2px;
    }
    .load-more-container {
        padding-bottom: 100px;
    }
    .article-block a h3,
    .ropu-intro p,
    .ropu-members p,
    .service-nav ul li,
    .team-member a h3 {
        font-size: 18px;
    }
    .news-collapse,
    .news-tab {
        padding-top: 30px;
    }
    .close-news {
        margin-top: 0;
    }
    .instagram-feed {
        padding-top: 75px;
        padding-bottom: 75px;
    }
    .social-icons {
        margin-top: 100px;
    }
    .news-container {
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .tribe {
        font-size: 15px !important;
    }
    .ropu-members {
        padding-bottom: 0;
    }
    .ropu-kaumatua h2 {
        font-size: 72px;
    }
    .ropu-members p,
    .team-photo {
        margin-top: 10px;
    }
    .ropu-members h3 {
        font-size: 24px;
        margin-bottom: 0;
    }
    .ropu-intro-text {
        padding-right: 30px;
    }
    .board-container {
        margin-top: 50px;
    }
    .ropu-kaumatua {
        margin-top: 100px;
        margin-bottom: 50px;
    }
    .menu-holder ul li {
        font-size: 60px;
    }
    .services .service-content {
        padding: 50px 65px 0;
    }
    .back-to-all:before {
        margin-top: 6px;
    }
    .service-content h1 {
        margin-bottom: 30px;
        font-size: 54px;
    }
    .back-to-all {
        margin-bottom: 10px;
        font-size: 16px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) {
    .person-description p,
    .person-details p {
        font-size: 11px;
    }
    .sh-address {
        margin-top: 30px;
    }
    .home-price,
    .listing-ctas {
        margin-top: 20px;
    }
    .home-price {
        position: relative;
    }
    .team-member a h3 {
        font-size: 14px;
    }
    .listing-ctas .btn,
    .listing-ctas .btn-secondary {
        max-width: none;
    }
    .listing-secondary {
        display: none;
    }
    .close-news {
        width: 30px;
    }
    .article-block time {
        font-size: 12px;
    }
    .instagram-feed h2 {
        margin-bottom: 40px;
    }
    .blog-column {
        padding: 0 10px;
    }
    .news .service-content {
        padding-left: 15px;
        padding-right: 15px;
    }
    .load-more {
        font-size: 15px;
        padding: 10px 20px 5px;
    }
    .load-more-container {
        padding-bottom: 50px;
        margin-top: 40px;
    }
    .article-block img {
        margin-bottom: 5px;
        margin-top: 5px;
    }
    .menu-text,
    .people-nav p,
    .people-nav ul li,
    .read-more,
    .topbar .contact a {
        font-size: 13px;
    }
    .article-block a h3 {
        font-size: 18px;
    }
    .news-container {
        padding-top: 75px;
        padding-bottom: 75px;
    }
    .member-column {
        padding-left: 10px;
        padding-right: 10px;
    }
    .board-container {
        margin-top: 0;
    }
    .ropu-kaumatua {
        margin-top: 75px;
        margin-bottom: 50px;
    }
    .ropu-kaumatua h2 {
        font-size: 54px;
    }
    .tribe {
        font-size: 13px !important;
    }
    .ropu-intro p,
    .ropu-members p {
        font-size: 15px;
    }
    .ropu-head {
        margin-top: -25px;
    }
    .people .service-container {
        margin-top: 100px;
    }
}
@media screen and (max-width: 1439px) {
    .listing-price {
        font-size: 2.5rem;
        line-height: 1;
    }
}
@media screen and (max-height: 900px) {
    .c-scrolldown {
        height: 200px;
    }
    .c-scrolldown .c-line {
        background-position: 0 -200px;
    }
    @keyframes scrolldown {
        0% {
            background-position: 0 -200px;
        }
        75% {
            background-position: 0 0;
        }
        100% {
            background-position: 0 200px;
        }
    }
}
@media screen and (min-width: 1024px) {
    .desktop-hide,
    .desktopno,
    .listing-hero-slider,
    .mobile-only,
    .mobile-quicklinks,
    .mobile-service-menu,
    .toggle-button {
        display: none;
    }
    .overlay {
        visibility: hidden !important;
        display: none !important;
    }
}
@media screen and (max-width: 1023px) {
    .nav-row {
        padding: 35px 30px;
    }
    #feature-slider .owl-nav,
    .desktop-only,
    .footer h3 br,
    .hotspot,
    .listing-hero-img,
    .main-menu ul,
    .mobile-hide,
    .mobileno,
    .publication-block p,
    .service-desktop,
    .side-testimonal {
        display: none;
    }
    .anniversary-logo {
        width: 60px;
        margin-bottom: 10px;
    }
    .cabinet-section {
        overflow-x: hidden;
    }
    .show-home {
        padding-top: 75px !important;
        padding-bottom: 75px !important;
    }
    .listing-features,
    .publications-intro {
        padding-bottom: 50px;
    }
    .single-resource h4 {
        line-height: 1.5;
    }
    .single-resource .outline-btn {
        float: none;
    }
    .single-resource .divider {
        margin-bottom: 20px;
    }
    .single-resource {
        margin-top: 25px;
    }
    .text-page h3 {
        font-size: 30px;
    }
    .articles {
        padding-top: 0;
    }
    .publications-intro {
        padding-top: 50px;
    }
    .news .article-block {
        margin-bottom: 0;
    }
    .publication-block {
        height: 300px;
    }
    h3 {
        font-size: 18px;
    }
    .resource .service-content {
        padding: 50px 15px 0;
    }
    .resource .service-nav ul li:after {
        transform: rotate(-90deg);
    }
    .service-nav ul li {
        position: relative;
        font-size: 20px;
    }
    .service-nav ul li:after {
        content: "";
        display: block;
        background: url(../img/arrow-down-white.svg) 0 0/100% 100% no-repeat;
        position: absolute;
        top: 0;
        right: 0;
        width: 12px;
        height: 11px;
        margin-top: 5px;
    }
    .service-nav ul li a {
        width: 100%;
        display: block;
    }
    .service-nav {
        padding-bottom: 15px;
        border-bottom: 1px solid #fff;
    }
    .mobile-service-menu .menu-holder {
        background: rgba(0, 0, 0, 0.3);
        position: absolute;
        z-index: 1;
    }
    .mobile-service-menu .menu-holder li {
        margin-bottom: 15px;
    }
    .mobile-service-menu {
        position: relative;
        height: 100vh;
    }
    .menu-logo-text {
        top: 90px;
        width: 190px;
    }
    .footer h3 {
        margin-bottom: 50px;
    }
    .footer-navigation {
        margin-bottom: 30px;
    }
    .contact-form-section {
        padding-top: 100px;
        padding-bottom: 125px;
    }
    .contact-form {
        width: 100%;
    }
    .about-intro p,
    .contact-intro a,
    .contact-intro h4 {
        font-size: 24px;
    }
    .about-intro,
    .contact-waipareira {
        padding-top: 150px;
        padding-bottom: 50px;
    }
    .menu-holder {
        height: 100vh;
    }
    .text-translate {
        font-weight: 300;
        font-size: 24px;
        text-transform: none;
        display: block;
    }
    #mobile-services .item {
        background-size: cover;
        background-position: bottom center;
        height: 100vh;
    }
    #mobile-services {
        position: absolute;
    }
    .resources-group h3 {
        font-size: 20px;
    }
    .nav-active {
        height: 100%;
    }
    .feeds {
        margin-top: 40px;
    }
    .resource-link h3 {
        font-size: 18px !important;
        line-height: normal;
        margin-bottom: 25px;
        margin-top: 25px;
    }
    .overlay ul li a {
        display: block;
        font-size: 16px;
    }
    .overlay ul li {
        margin-bottom: 5px;
        text-align: center;
    }
}
@media screen and (min-width: 768px) {
    .person-description {
        margin-left: -15px;
    }
    .menu-main {
        height: 100vh;
    }
    #plans-gallery h4,
    .desktop-no {
        display: none;
    }
    .overlay ul {
        width: 100%;
        padding: 0 40px;
    }
    .offset-md-3 {
        margin-left: 25%;
    }
}
@media screen and (max-width: 767px) {
    .cabinet-member img,
    .dept-intro,
    .event .media-category,
    .event .media-date,
    .featured h2,
    .next-article .media-category,
    .person-details,
    .project-info table,
    .threat-key {
        margin-bottom: 10px;
    }
    .cd-timeline-navigation,
    .media-line .outline-btn {
        right: auto;
        position: relative;
        top: auto;
    }
    .pre,
    .scroll-text {
        letter-spacing: 3px;
    }
    #loader,
    .hero-title a:after,
    .outline-btn span:after {
        margin-left: 10px;
    }
    #plans-gallery h4,
    .overlay ul li a,
    .pre {
        text-transform: uppercase;
    }
    .topbar {
        min-height: 65px !important;
    }
    .nav-row {
        min-height: 65px;
    }
    .agency-section.gz-section,
    .cabinet-member {
        padding-bottom: 25px;
    }
    .faq-middle p,
    .fytFEp,
    .person h3,
    .single-publication-main p,
    .threat-info p,
    body {
        font-size: 15px;
    }
    .dldPsi,
    .dqiKFy,
    .ipWtNQ {
        font-size: 15px !important;
    }
    .dqiKFy {
        font-weight: 600;
        padding: 2px;
    }
    .dCXpzK {
        border-top: 2px solid #071033;
    }
    .ipWtNQ {
        width: 100%;
    }
    .guNiJS {
        background: #fff !important;
    }
    .fSqTlR {
        width: 40px !important;
        height: 40px !important;
    }
    .dXelQe {
        font-size: 14px !important;
    }
    .additional-projects img,
    .agency-contacts,
    .footer h4,
    .footer-navigation,
    .key-colours,
    .nav-block,
    .terms-links {
        margin-top: 20px;
    }
    #plans-gallery .owl-dots,
    .agencies-nav ul,
    .article-footer .col-md-6:first-child,
    .cursor-change,
    .events-content,
    .featured h3,
    .green-divider,
    .hero .menu-holder ul li:after,
    .hero .menu-holder ul li:before,
    .home-awards h3 br,
    .line1,
    .line2,
    .line3,
    .listing-secondary,
    .map-container,
    .menu-text:after,
    .mobile-no,
    .overlay ul li a:after,
    .projects-carousel h2:after,
    .side-feature,
    .single-publication-nav,
    .sp-num,
    .timeline,
    .underline:after,
    .video__fullscreen-button,
    h2 br {
        display: none;
    }
    .partner-intro,
    .publication-block,
    .threat-table {
        padding: 20px;
    }
    .about-values h3,
    .all-projects p,
    .article-body em,
    .case-study-body em,
    .headline p,
    .intro-text p,
    .listing-btn,
    .profile-info h4,
    .threat-table h4 {
        font-size: 20px;
    }
    .threat-table h5 {
        font-size: 18px;
        padding-bottom: 10px;
    }
    .threat-impact p,
    .threat-status p {
        font-size: 15px;
        margin-top: 10px;
    }
    .threat-key {
        display: inline-block;
        margin-right: 15px;
    }
    .media-line .col-md-9,
    .threat-impact,
    .threat-status {
        padding-left: 15px;
    }
    .threat-name,
    .threat-status {
        border-right: 0;
    }
    .alert-more {
        justify-content: initial;
        margin-top: 10px;
    }
    .threat-status h5 {
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    }
    .alert-department {
        padding: 10px;
        min-height: 90px;
    }
    .more-btn {
        padding: 7px 25px;
    }
    .alert-department p {
        font-size: 15px;
        line-height: normal;
    }
    .department-icon {
        float: left;
        max-width: 70px;
        margin-right: 10px;
    }
    .countdown-timer,
    .sidebar {
        float: none;
    }
    .department-text {
        padding-left: 80px;
    }
    .alert-department h4,
    .cabinet-row ul li,
    .contact-details a,
    .featured p,
    .menu-holder ul li,
    .outline-btn-small,
    .partner-intro p,
    .partner-toggle h3,
    .person-description p,
    .person-details p,
    .resources-group ul li a,
    .service-nav ul li,
    .sh-address a,
    p {
        font-size: 16px;
    }
    .article-body em {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .agency-intro ol,
    .news-slider {
        padding-left: 20px;
    }
    .cabinet-row img,
    .listing-features span,
    .sp-content-section h4 {
        margin-bottom: 15px;
    }
    #projects-slider,
    .article-body,
    .footer .col-lg-6,
    .political-career .col-md-6 {
        padding-left: 0;
        padding-right: 0;
    }
    .cabinet-row ul {
        padding-left: 15px;
        margin-top: 10px;
    }
    #start1,
    .building-relationships img,
    .error-title .download-btn,
    .news-filetrs p,
    .people-nav p,
    .political-career:first-child,
    .service-container {
        margin-top: 0;
    }
    .political-career {
        margin-left: 0;
        margin-right: 0;
        margin-top: 15px;
    }
    .footer ul li,
    .political-date p {
        font-size: 14px;
        margin-bottom: 5px;
    }
    .political-position p {
        font-size: 10px;
        letter-spacing: 1px;
        text-align: left;
    }
    .cabinet-row {
        padding-bottom: 0;
        padding-top: 20px;
    }
    .elected-rep .position,
    .footer-copyright p {
        font-size: 12px;
    }
    .elected-rep {
        padding-top: 15px;
        padding-bottom: 10px;
    }
    .elected-section .col-md-9 {
        padding-left: 30px;
        padding-right: 30px;
    }
    .about-overview p,
    .cabinet-member h4,
    .elected-rep h4,
    .hero-title a,
    .hp-intro h3,
    .issue-block h3,
    .read-more,
    .single-publication-main h2,
    .single-resource h4,
    .sp-content-section blockquote,
    .sp-num {
        font-size: 18px;
    }
    .article-author img {
        border-radius: 50%;
        width: 50px;
        height: 50px;
    }
    .agency-category,
    .agency-section,
    .award-section,
    .enquiry-intro,
    .event,
    .homes-available h2,
    .media-line,
    .socials,
    .sp-content-section blockquote,
    .tradition-slide img {
        margin-bottom: 30px;
    }
    #traditions-slider .owl-nav {
        bottom: 0;
        left: 0;
    }
    h1 {
        font-size: 48px;
        margin-bottom: 0;
    }
    .pt-100 {
        padding-top: 40px;
    }
    .event-date-second,
    .media-line-details,
    .project-info .pre,
    .project-summary table {
        margin-top: 15px;
    }
    .article-block,
    .article-title,
    .award-list,
    .news-collapse {
        padding-top: 20px;
    }
    .category-link {
        font-size: 13px;
        padding: 6px 10px;
        color: #000;
        margin-right: 5px;
    }
    .article-body h2 {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .agency-details,
    .cat-tabs,
    .pb-80 {
        padding-bottom: 30px;
    }
    .article-body em {
        padding-left: 25px;
    }
    .event .media-date {
        font-size: 14px;
    }
    .event h3 {
        margin-bottom: 5px;
        margin-top: 10px;
    }
    .event-info,
    .has-caption img {
        margin-bottom: 10px !important;
    }
    .event-details {
        padding-left: 20px;
        margin-bottom: 25px;
        margin-top: 20px;
    }
    .event h1,
    .next-project-title {
        font-size: 48px;
    }
    .article-author {
        margin-top: 30px;
        padding-top: 20px;
    }
    .next-article h3 {
        font-size: 22px;
        margin-top: 15px;
    }
    .agency-section,
    .article-body-container,
    .award-section,
    .listing-description,
    .project-halfs,
    .project-image,
    .project-testimonial {
        padding-bottom: 20px;
    }
    .article-footer {
        border: 0;
        border-top: 1px solid #cacaca;
    }
    .article-body blockquote {
        font-size: 18px;
        padding-left: 25px;
        border-left: 2px solid #071033;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .article-body img {
        margin-bottom: 20px;
        margin-top: 5px;
    }
    .article h1,
    .listing-features h1 {
        font-size: 30px;
    }
    .agency-details h4 {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .agency-intro h3,
    .article .back-to-all,
    .broken-grid img,
    .falefono-section img,
    .featured h5,
    .le-lodge h2,
    .le-lodge p,
    .left-section img,
    .listing-description h3,
    .right-section img,
    .ropu-kaumatua,
    .single-publication-main h2,
    .traditions-section h2 {
        margin-bottom: 20px;
    }
    .agency-intro h3 {
        font-size: 30px;
    }
    sup {
        top: -0.3em;
    }
    .geographical-section,
    .traditions-carousel {
        background-image: none;
    }
    #start1 {
        padding-bottom: 0 !important;
        padding-top: 20px !important;
    }
    .cd-timeline-navigation {
        padding-left: 15px;
    }
    .cd-timeline-navigation a.prev {
        right: 0;
        margin-right: 10px;
    }
    .cd-timeline-navigation a {
        position: relative;
        display: inline-block;
    }
    .cd-horizontal-timeline {
        padding-top: 200px;
        padding-bottom: 30px;
    }
    .contact-intro a,
    .in-the-area h4,
    .listing-description h3,
    .listing-plan h3,
    .premier .cabinet-member h4,
    .show-home h3,
    .team-member a h3 {
        font-size: 22px;
    }
    #hp-news-slider,
    .cabinet-member,
    .cabinet-member p,
    .elected-section .pre-text,
    .footer-main,
    .footer-navigation,
    .lines,
    .people-header,
    .project-header .pre {
        margin-bottom: 0;
    }
    .geographical-section .col-6:first-child {
        border-right: 1px solid #cacaca;
    }
    .pb-150 {
        padding-bottom: 75px;
    }
    .cabinet-member:nth-child(2n) {
        padding-left: 8px;
    }
    .cabinet-member:nth-child(odd) {
        padding-right: 8px;
    }
    .falefono-section p {
        margin-bottom: 5px;
    }
    .footer h3,
    .system-block h3 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .mobile-space,
    .system-block {
        margin-top: 25px;
    }
    .article-block,
    .elected-section .pb-80 {
        padding-bottom: 15px;
    }
    .cabinet-member .position,
    .hero-title p {
        font-size: 11px;
    }
    .parliament-section p {
        line-height: 1.8;
    }
    .government h2,
    .premier h2 {
        font-size: 30px;
        margin-bottom: 25px;
    }
    #dark-logo,
    #light-logo {
        left: 0;
        top: -7px !important;
    }
    .pre-text {
        font-size: 14px !important;
        margin-bottom: 10px;
    }
    .home-stat-desc {
        font-size: 16px;
        text-align: center;
    }
    .home-stat {
        font-size: 48px;
        line-height: 1;
        text-align: center;
    }
    .home-stat-desc {
        line-height: normal;
    }
    .about-lockerbie .our-villas,
    .big-img,
    .footer-logo,
    .le-gallery,
    .project-info {
        padding-top: 0 !important;
    }
    .stats-section .col-md-3:first-child {
        border-bottom: 1px solid #cacaca;
        border-right: 1px solid #cacaca;
    }
    .stats-section .col-md-3:nth-child(2) {
        border-bottom: 1px solid #cacaca;
    }
    .top-footer {
        padding-top: 0;
        padding-bottom: 0;
    }
    .stats-section .col-md-3:nth-child(3) {
        border-right: 1px solid #cacaca;
        padding-top: 25px;
    }
    .projects-grid,
    .stats-section .col-md-3:nth-child(4) {
        padding-top: 25px;
    }
    .media-line h3 {
        padding-right: 0;
        font-size: 18px;
        margin-bottom: 10px;
    }
    .media-category {
        font-size: 11px;
        padding: 1px 7px 2px;
    }
    .contact .team-dynamic,
    .featured .pb-40,
    .featured .pb-80,
    .location-header h1,
    .news-slider {
        padding-bottom: 10px;
    }
    .media-line .divider {
        border-width: 2px;
        border-color: #071033;
        margin-top: 10px;
        margin-bottom: 15px;
    }
    .main-content,
    .single-publication-intro-text,
    .single-publication-nav {
        border-left: 0;
    }
    .agency-category h3 {
        margin-top: 20px;
        font-size: 18px;
        margin-bottom: 10px;
    }
    .countdown-timer li:first-child,
    .countdown-timer ul,
    .testimonial {
        padding-left: 0;
    }
    .about-people h2,
    .countdown-timer ul li span,
    .error-title h1,
    .project-header h1,
    .ropu-kaumatua h2 {
        font-size: 36px;
    }
    .countdown-timer ul li {
        display: inline-block;
        padding-right: 15px;
        padding-left: 15px;
    }
    .enquiries form,
    .our-villas .owl-carousel,
    .stats-section .divider {
        margin-top: 30px;
    }
    .event-date-second {
        margin-bottom: 5px !important;
        font-size: 13px !important;
    }
    .pre-text sup {
        font-size: 10px;
        margin-right: 5px;
    }
    .feature-date {
        font-size: 20px !important;
        margin-top: 0;
        margin-bottom: 10px;
    }
    .pt-80 {
        padding-top: 30px;
    }
    .modal-content {
        padding: 25px;
    }
    .additional-projects p {
        font-size: 24px;
        margin-bottom: 20px;
        margin-top: 30px;
    }
    .additional-projects {
        padding-bottom: 100px;
    }
    .contact-section,
    .footer-logo,
    .left-section.residents-lodge,
    .location-header,
    .pb-100 {
        padding-bottom: 40px;
    }
    .mobile-only {
        margin-left: -25px;
    }
    .location-header h1 {
        font-size: 40px;
    }
    .location-header {
        padding-top: 120px;
    }
    .contact-section .container {
        padding-left: 10px;
        padding-right: 10px;
        padding-top: 40px;
    }
    .project-description {
        font-size: 24px;
        margin-bottom: 30px;
        margin-top: 10px;
    }
    .owl-dots button.owl-dot {
        border-radius: 0;
        margin-right: 0;
        height: 2px;
        width: 33%;
    }
    .home-awards .award-row {
        font-size: 10px;
        letter-spacing: 3px;
    }
    .award-row span {
        width: 10%;
    }
    .home-awards h3,
    .home-awards h3 span {
        font-size: 18px;
        font-weight: 200;
    }
    .project-details p {
        font-size: 9px;
        letter-spacing: 2px;
    }
    .home-awards {
        background-position: calc(100% + 100px) bottom;
        margin-bottom: 70px;
        padding-bottom: 10px !important;
    }
    .home-awards h2 {
        font-size: 40px;
        margin-bottom: 10px;
        font-weight: 200;
    }
    .modal-content h4,
    .work-together h4 {
        font-size: 36px;
        margin-bottom: 20px;
        font-weight: 200;
    }
    .project-details h4 {
        margin-top: 15px;
        font-size: 16px;
        margin-bottom: 0;
    }
    .pre-text:before {
        width: 7px;
        height: 7px;
    }
    .contact-details-block:last-child {
        border-bottom: 0;
        padding-bottom: 0;
        margin-bottom: 0;
    }
    .pb-120 {
        padding-bottom: 60px;
    }
    .contact-details-block h4 {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .contact-details-block:first-child {
        border-top: 1px solid #cacaca;
        padding-top: 20px;
        margin-top: 40px;
    }
    .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }
    .project-info td,
    .project-summary td {
        padding: 15px 0 10px;
    }
    .project-info table tr td:first-child,
    .project-summary table tr td:first-child {
        width: 50%;
    }
    .footer-logo img {
        width: 100%;
        max-width: 170px;
    }
    .contact-form p,
    .contact-intro,
    .footer,
    .footer h4,
    .footer ul li,
    .footer-logo,
    .le-half,
    .nav-block-right,
    .terms-links {
        text-align: left;
    }
    .footer-copyright {
        padding-bottom: 20px;
        padding-top: 40px;
        text-align: left;
        font-size: 12px;
    }
    #plans-gallery h4,
    .footer-contact,
    .owl-dots,
    .sh-address,
    .sh-hours {
        text-align: center;
    }
    .footer input {
        border-radius: 50px;
        border: 1px solid #6a7085;
        padding: 10px 20px;
    }
    .about-header h1,
    .projects-main h1 {
        font-size: 40px;
        padding-bottom: 20px;
    }
    .button-group button {
        margin-right: 5px;
        border-radius: 50px;
        padding: 5px 15px 4px;
        font-size: 14px;
    }
    .team-member {
        padding: 0 15px;
    }
    .accordian-feature,
    .counter,
    .news-slider h3,
    .person-details h4,
    .person-details h5,
    .profile-info p,
    .value p {
        font-size: 14px;
    }
    .team-role {
        font-size: 9px !important;
    }
    .about-overview,
    .left-section,
    .right-section,
    .team-quote {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .about-intro p,
    .article-title h1,
    .intro h2,
    .team-quote blockquote {
        font-size: 24px;
    }
    .team-quote img {
        max-width: 25px;
        margin-bottom: 20px;
    }
    .linkedin {
        bottom: 10px;
        right: 10px;
    }
    .profile-info {
        padding: 20px 0;
    }
    .about-overview h2 {
        font-size: 30px;
        margin-bottom: 30px;
    }
    .about-values .value {
        padding-top: 25px;
        padding-bottom: 10px;
    }
    .about-values,
    .footer .terms,
    .has-caption .le-inner,
    .service-nav {
        padding-bottom: 0;
    }
    .about-header {
        padding-top: 120px;
    }
    .people {
        margin-top: 30px;
        margin-bottom: 70px;
    }
    .bg-container {
        background-image: none !important;
    }
    .projects-grid h3 {
        font-size: 24px;
        margin-bottom: 10px;
    }
    .element-item {
        width: calc(50% - 20px);
        margin: 10px;
    }
    .lines h3,
    .project-halfs ul {
        margin-top: 30px;
        margin-bottom: 20px;
    }
    .pt-150 {
        padding-top: 75px;
    }
    .outline-btn {
        padding: 10px 25px;
        font-size: 16px;
    }
    .cabinet-slide .position {
        font-size: 12px;
        margin-top: 15px;
        margin-bottom: 5px;
    }
    .cabinet-slide h4 {
        font-size: 22px;
        margin-bottom: 10px;
    }
    .cabinet-slide p {
        font-size: 16px;
        line-height: 1.5;
    }
    .project-info .row {
        border-top: 0;
        padding-bottom: 0;
    }
    .next-project-img {
        margin-top: 30px;
        display: none;
    }
    .next-project {
        border-top: 1px solid #c3cbe2;
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .next-project-title {
        margin-top: 15px;
        margin-bottom: 15px;
    }
    .testimonial blockquote {
        font-size: 24px;
        margin-bottom: 20px;
    }
    .project-header {
        padding-top: 150px;
        padding-bottom: 30px;
    }
    .project-halfs li {
        color: #0f2d32;
        border-top: 1px solid #b4bdbf;
        padding: 15px 0 10px;
    }
    .broken-grid.light-green,
    .project-info,
    .project-summary {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .building-relationships,
    .crafting-excellence,
    .home-awards,
    .intro,
    .projects-carousel,
    .service-beyond,
    .work-together {
        padding-bottom: 50px;
    }
    .pre {
        margin-bottom: 10px;
        font-size: 10px;
    }
    .intro {
        padding-top: 100px;
    }
    .main-logo img {
        width: 160px;
    }
    .scroll-text {
        font-size: 11px;
        bottom: 145px;
    }
    .cat-events .blog-column:nth-last-child(2) .article-block,
    .cat-john .blog-column:last-child .article-block,
    .cat-news .blog-column:nth-last-child(2) .article-block,
    .contact-section .row,
    .go-transparent .nav-row,
    .home .topbar .row,
    .person-description {
        border-bottom: 0;
    }
    .lines h3 {
        font-size: 20px;
    }
    .projects-carousel h2 {
        font-size: 40px;
        margin-bottom: 30px;
    }
    .le-inner {
        display: initial;
    }
    .hero h1 {
        font-size: 40px;
        margin-bottom: 20px;
    }
    .intro-line {
        height: 50px;
    }
    .footer-contact {
        padding-top: 20px;
    }
    .listing-price {
        font-size: 24px;
        margin-top: 15px;
        margin-bottom: 20px;
        position: relative;
    }
    #plans-gallery .owl-next,
    #plans-gallery .owl-prev {
        top: calc(50% - 120px);
    }
    #plans-gallery h4 {
        font-size: 18px;
        padding: 0 20px;
        margin-top: 10px;
    }
    .sand {
        background-color: #f7f4ec !important;
    }
    .article-body,
    .location .le-map,
    .news-slider,
    .pm-0 {
        padding-top: 0;
    }
    #plans-gallery p {
        padding: 0 20px;
        font-size: 18px;
        margin-top: 20px;
        margin-bottom: 0;
    }
    .floor-plan,
    .mt-100 {
        margin-top: 40px;
    }
    .listing-features .bathrooms:before,
    .listing-features .bedrooms:before,
    .listing-features .floorplan:before,
    .listing-features .garage:before {
        top: 0;
    }
    .ribbon {
        font-size: 16px;
        padding: 3px 20px;
    }
    .listing-features p {
        margin-top: 20px;
        margin-bottom: 15px;
        font-size: 18px;
    }
    .le-half h3,
    .le-mid h3 {
        font-size: 22px;
        margin-bottom: 30px;
    }
    .listing-ctas .btn,
    .listing-ctas .btn-secondary {
        width: 100%;
        max-width: none;
    }
    .sh-address {
        margin-top: 30px;
    }
    .listing-plan,
    .our-homes .our-homes-intro {
        padding-bottom: 30px !important;
    }
    .listing-features {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .listing-hero {
        margin-top: 59px;
    }
    .last-section,
    .pb-200 {
        padding-bottom: 60px !important;
    }
    .cs-gallery,
    .halfhalf-section,
    .in-the-area,
    .pm-0 {
        padding-bottom: 0 !important;
    }
    .enquire .le-more-info {
        margin-top: 100px;
    }
    #gallery p {
        bottom: 0;
        right: 10px;
    }
    .citation {
        padding-left: 15px;
        padding-right: 15px;
        margin-top: 0;
        margin-bottom: 30px;
    }
    .top-section {
        margin-top: 90px;
    }
    .scrolled .midnightHeader:has(.toggle-active) {
        background-color: #fff !important;
    }
    .topbar.scrolled:has(.toggle-active) {
        border-bottom-color: #0f2d32 !important;
    }
    .person,
    .sidebar,
    .team-mini {
        border-bottom: 1px solid #b3b4ad;
    }
    .topbar.transparent.scrolled:has(.toggle-active) .bar {
        background-color: #fff !important;
    }
    .care .our-villas {
        padding-top: 119px;
    }
    #nearby-tabs,
    .tab-content {
        font-size: 18px;
        padding-top: 25px;
    }
    .cs-gallery,
    .in-the-area {
        padding-top: 0 !important;
    }
    .in-the-area .fw-img,
    .intro-topline {
        margin-bottom: 20px !important;
    }
    .fw-img {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .our-homes-hero {
        margin-top: 119px;
        background: #fff;
    }
    .le-half h3 {
        text-align: left;
    }
    .pt-200 {
        padding-top: 90px;
    }
    .halfhalf-section {
        padding-top: 30px !important;
    }
    .le-half,
    .mb-100 {
        margin-bottom: 40px;
    }
    #projects-slider .owl-dots {
        text-align: left;
        margin-top: 0;
    }
    .btn,
    .btn-secondary {
        font-size: 16px;
        padding: 10px 35px;
    }
    #duplexes-gallery .owl-dots,
    #villas-gallery .owl-dots {
        position: relative;
        margin-top: 15px;
    }
    .our-villas .owl-carousel p {
        text-align: center;
        margin-top: 15px;
    }
    .our-villas h2 {
        margin-top: 40px;
        margin-bottom: 15px;
    }
    .le-cta,
    .pt-120 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .footer h4,
    .sp-content-section h3 {
        font-size: 16px;
        margin-bottom: 15px;
    }
    #duplexes-gallery .owl-next,
    #duplexes-gallery .owl-prev,
    #villas-gallery .owl-next,
    #villass-gallery .owl-prev {
        top: calc(50% - 60px);
    }
    .service-content h1,
    h2 {
        font-size: 36px;
        margin-bottom: 20px;
    }
    .le-more-info {
        padding-top: 60px;
        padding-bottom: 40px;
    }
    .owl-next img,
    .owl-prev img {
        width: 20px;
        margin-top: -3px;
    }
    input,
    select,
    textarea {
        font-size: 16px;
        margin-bottom: 15px;
        padding: 10px;
    }
    .home-usp {
        padding: 10px;
    }
    .enquiries h3,
    .le-cta p {
        font-size: 24px;
        margin-bottom: 30px;
    }
    .book-visit,
    .enquiries button {
        width: 100%;
        float: none;
        font-size: 16px;
        margin-top: 10px;
        padding: 10px;
    }
    .owl-next,
    .owl-prev {
        width: 40px;
        height: 40px;
        top: calc(50% - 25px);
    }
    #map {
        height: 400px;
        margin-bottom: 30px;
    }
    #projects-slider .owl-next,
    #projects-slider .owl-prev {
        bottom: -50px;
        top: initial;
    }
    .homes-available {
        padding-bottom: 40px;
        padding-top: 40px;
    }
    .container {
        padding: 0 25px;
    }
    .future-title {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
    .case-study-gallery {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .article-details,
    .articles {
        padding-left: 20px;
        padding-right: 20px;
    }
    .people-desc {
        column-count: 1;
    }
    .single-article-hero {
        margin-top: 60px;
        height: 300px;
    }
    .partner-website {
        text-align: left;
        margin-top: 10px;
    }
    .intro-logo,
    .news-all,
    .slider-loading,
    .social-icons {
        text-align: center;
    }
    .team-description p {
        font-size: 18px;
        margin-bottom: 5px;
    }
    .hp-publications .publications {
        margin-right: 0;
        margin-left: 0;
    }
    .search-icon {
        left: auto;
        right: 45px;
    }
    .collapse-partners .row {
        padding: 15px 20px;
    }
    .article-details {
        font-size: 15px;
        margin-bottom: 20px;
        margin-top: 20px;
    }
    .person-description {
        padding: 25px 20px;
    }
    .tp-padding {
        padding-top: 35px !important;
    }
    .tp-padding h1 {
        padding-bottom: 25px !important;
    }
    .single-publications-hero {
        height: 200px;
        margin-top: 60px;
    }
    .search-container {
        display: none;
        padding: 0 20px;
    }
    .single-publication-intro h1,
    .single-publication-main h1 {
        font-size: 36px;
        margin-bottom: 0;
    }
    .single-publication-intro-text p {
        font-size: 16px;
        margin-bottom: 0;
    }
    .single-publication-intro-text {
        padding-top: 0 !important;
        padding-left: 0;
    }
    .sp-content-section {
        padding-left: 0;
        margin-bottom: 30px;
    }
    .sp-content-section h4 {
        font-size: 15px;
        margin-top: 20px;
    }
    figcaption {
        font-size: 12px;
        margin-top: 10px;
        margin-bottom: 20px;
    }
    .sp-content-section ul {
        font-size: 15px;
        margin-bottom: 25px;
    }
    .single-publication-main .col {
        padding-bottom: 35px;
    }
    .single-publication-intro .col {
        padding: 25px 15px 20px;
    }
    .future-title,
    .slider-loading {
        border-right: 1px solid #b3b4ad;
    }
    .partner-toggle {
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 20px;
    }
    .partner-intro {
        padding: 35px 20px;
    }
    .sort-publications {
        margin-bottom: 15px;
        padding-right: 35px;
    }
    .sort-publications a {
        margin-right: 0;
        margin-left: 40px;
        font-size: 15px;
    }
    #publications-table h3 {
        margin-bottom: 0;
        font-size: 15px;
    }
    .colour-spot {
        border-radius: 50%;
        width: 25px;
        height: 25px;
    }
    .publications-list {
        padding-top: 50px;
    }
    .main-issues,
    .vertical-title {
        padding-top: 35px;
    }
    .main-content {
        margin-left: 0;
    }
    #publications-table td {
        padding: 20px 15px;
    }
    .sidebar {
        padding-bottom: 35px;
        position: relative;
        width: 100%;
        top: 0;
    }
    .vertical-title h1 {
        transform: none;
        writing-mode: initial;
        font-size: 36px;
        position: relative;
    }
    .footer {
        padding-top: 50px !important;
    }
    .contact-form-section,
    .contact-section,
    .news .service-content,
    .padded,
    .ropu-intro-text {
        padding-left: 15px;
        padding-right: 15px;
    }
    .footer .padded {
        padding-left: 35px;
        padding-right: 35px;
    }
    .article-feature .sticky-featured-image,
    .slider-loading {
        padding-right: 0;
    }
    .case-study-intro h1 {
        font-size: 36px;
        margin-top: 25px;
        margin-bottom: 15px;
    }
    .footer-pattern {
        background-image: url(../img/mobile-footer.png);
        width: 100%;
        height: 142px;
        background-size: auto 100%;
    }
    .footer-icons {
        background-image: none;
        width: 100%;
        height: auto;
        padding-bottom: 10px;
        background-size: 100% auto;
        background-repeat: no-repeat;
    }
    #loader,
    .loader-container {
        height: 60px;
    }
    .footer-main {
        padding-top: 15px;
    }
    .close-news,
    .issue-block h3:after {
        width: 25px;
    }
    #loader {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 60px;
    }
    .halfcircle {
        border-width: 3px;
    }
    .article-block time {
        font-size: 10px;
    }
    .hp-intro,
    .publications-intro,
    .slider-loading {
        padding-top: 35px;
        padding-bottom: 35px;
    }
    .issue-block p {
        margin-left: 45px;
        font-size: 14px;
        max-width: 100%;
    }
    .main-issues h2,
    .social-header {
        margin-bottom: 35px;
    }
    .issue-block {
        padding-top: 30px;
        padding-bottom: 30px;
        padding-left: 30px;
    }
    .issues-img {
        height: 300px;
    }
    .hero {
        background-size: cover;
        background-position: center;
    }
    .article-container .service-container {
        margin-top: 0;
        padding-top: 100px;
    }
    .article .back-to-all span {
        color: #008245 !important;
    }
    .download-btn {
        float: left;
    }
    .resource-download {
        padding-bottom: 15px;
        margin-top: 5px;
    }
    .people .service-content,
    .resource .service-content,
    .services .service-content {
        padding: 100px 15px 0;
    }
    .news-container {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .latest-news-intro {
        padding-top: 40px;
        padding-bottom: 35px;
    }
    .slider-loading {
        padding-left: 0;
    }
    .news-all {
        margin-bottom: 50px;
    }
    .article-block img {
        margin-top: 5px;
        margin-bottom: 15px;
    }
    .load-more {
        width: 100%;
        font-size: 16px;
        padding: 12px 25px 7px;
    }
    #johns-column .article-block a h3 {
        margin-top: 10px;
    }
    .load-more-container {
        padding-bottom: 40px;
        margin-top: 10px;
    }
    .blog-column {
        border-left: 0;
        border-right: 0;
    }
    .instagram-feed {
        padding: 40px 10px 0;
    }
    .social-icons {
        margin-top: 0;
        padding-top: 15px;
    }
    .people-nav {
        padding-bottom: 10px;
        border-bottom: 1px solid #fff;
    }
    .people-nav ul li,
    .vbottom {
        position: relative;
    }
    .people-nav ul li a {
        width: 100%;
        display: block;
    }
    .ropu-head {
        margin-top: -15px;
    }
    .float-right {
        float: left !important;
        padding-left: 15px;
        padding-right: 15px;
        border-left: 0;
    }
    .ropu-members {
        border-left: 0;
        margin-top: 40px;
    }
    .member-column {
        margin-top: 15px;
        border-left: 0 !important;
    }
    .people-nav ul li:after {
        content: "";
        display: block;
        background: url(../img/arrow-down-white.svg) 0 0/100% 100% no-repeat;
        position: absolute;
        top: 0;
        right: 0;
        width: 9px;
        height: 8px;
        margin-top: 5px;
    }
    .service-nav ul li:after {
        width: 9px;
        height: 8px;
        margin-top: 5px;
    }
    .overlay ul li a {
        font-size: 16px;
        font-weight: 600;
        width: 100%;
    }
    .overlay .menu-holder .primary-nav li a {
        border-bottom: 1px solid #cacaca;
        padding-bottom: 20px;
    }
    .future-title {
        padding-top: 25px;
        border-bottom: 1px solid #b3b4ad;
        padding-bottom: 25px;
    }
    .contact-form-section,
    .contact-waipareira {
        padding-bottom: 100px;
        padding-top: 0;
    }
    .go-transparent .main-logo img {
        display: none !important;
    }
    .mobile-menu-contact a {
        color: #c1d03d;
        width: 100%;
        display: block;
        margin-top: 10px;
        font-size: 16px;
    }
    .mobile-menu-contact {
        position: fixed;
        bottom: 50px;
        left: 50px;
    }
    .service-toggle h2,
    .service-toggle h3 {
        margin-right: 40px;
    }
    .service-toggle:before {
        content: "";
        background-image: url("../img/dropdown.svg");
        background-size: contain;
        background-repeat: no-repeat;
        width: 25px;
        height: 25px;
        display: block;
        transition: 0.5s ease-out;
        float: right;
    }
    .service-toggle[aria-expanded="true"]:before {
        transform: rotate(45deg);
    }
    .hero .menu-holder ul li {
        display: block;
        width: 100%;
        margin-bottom: 5px;
    }
    .c-scrolldown {
        z-index: 1;
    }
    .text-translate {
        font-weight: 300;
        font-size: 14px;
        text-transform: none;
        display: block;
    }
    .intro-logo {
        margin-bottom: 100px;
        margin-top: -100px;
    }
    .contact-waipareira {
        border-left: 0;
    }
    .socials img {
        margin-top: 5px;
    }
    .copyright {
        text-align: left;
        margin-bottom: 20px;
    }
    .contact-form {
        width: 100%;
    }
    .menu-width .col-md-12 {
        padding: 0 !important;
    }
    .hero video {
        height: 100vh;
        width: auto;
    }
    .toggle-active .bottom {
        -webkit-transform: translateY(-6px) translateX(0) rotate(-45deg);
    }
    .toggle-active .top {
        -webkit-transform: translateY(4px) translateX(0) rotate(45deg);
    }
    .menu-holder {
        padding: 0 15px;
        height: 100vh;
    }
    .service-nav {
        border-bottom: 1px solid #fff;
        position: relative;
        top: 0;
        padding-top: 0;
    }
    .menu-logo-text {
        top: 28px;
        left: 80px;
        width: 170px;
    }
    .main-logo {
        display: initial !important;
    }
    .nav-row {
        padding: 12px 15px;
    }
    .midnightInner {
        overflow: inherit !important;
    }
    .toggle-button {
        width: 34px;
        margin-top: 12px;
    }
    .back-to-all {
        margin-bottom: 50px;
    }
    .back-to-all span {
        font-size: 14px;
        color: #fff;
        margin-left: 25px;
    }
    .back-to-all:before {
        opacity: 1;
        width: 22px;
        height: 8px;
    }
    .service-bg {
        left: 0;
        right: 0;
    }
    .footer-bar {
        margin-top: 50px;
    }
    .fw-contactform input,
    .fw-contactform textarea {
        padding: 12px;
        margin-bottom: 15px;
    }
    .overlay ul li {
        display: block;
    }
    .menu-details {
        max-width: 100%;
        position: absolute;
        right: auto;
        bottom: 40px;
    }
    .overlay ul {
        padding: 0;
        top: auto;
        margin-left: -15px;
        margin-right: -15px;
    }
}
@media (min-width: 768px) {
    .breakout-right .container {
        width: calc(((100% - 750px) / 2) + 750px) !important;
        margin-right: 0;
    }
    .mobile-only {
        display: none;
    }
}
@media (min-width: 992px) {
    .breakout-right .container {
        width: calc(((100% - 970px) / 2) + 970px) !important;
        margin-right: 0;
    }
}
@media (min-width: 1200px) {
    .breakout-right .container {
        width: calc(((100% - 1630px) / 2) + 1630px) !important;
        margin-right: 0;
        max-width: 2400px;
    }
}
