@media screen and (min-width: 1024px) {
  #hero .display-1 {
    font-size: 2.625rem;
  }
}
@media screen and (min-width: 1200px) {
  #hero .display-1 {
    font-size: 3.95rem;
  }
}
#hero.hero p.lead {
  max-width: 100%;
}
.page-id-17 .flawless-block-class-1 {
  padding-bottom: 0 !important;
}
.page-id-17 .flawless-block-class-2 {
  padding-top: 0 !important;
}
.page-id-17 form {
  padding-top: 0 !important;
}
@media only screen and (min-width: 1024px) {
  .page-id-17 .lastname {
    /*  iPad Landscape  */
    margin-top: -3rem;
  }
}
@media screen and (min-width: 1024px) {
  .site-footer ul.nav--horizontal {
    text-align: left;
  }
}


/* J2 Updates */

h1,
h2,
h3,
h4,
h5 {
    font-family: degular, sans-serif;
    font-weight: 100;
    font-style: normal;
}
h1,
.h1,
.logo__title {
    color: #fff;
    font-size: 35px;
    font-weight: 400!important;
    font-family: degular, sans-serif;
}
@media (min-width: 768px) {
    h1,
    .h1,
    .logo__title {
        font-size: 40px;
    }
}
@media (min-width: 1024px) {
    h1,
    .h1,
    .logo__title {
        font-size: 45px;
    }
}
.display-2 {
    font-size: 35px;
}
@media (min-width: 768px) {
    .display-2 {
        font-size: 50px;
    }
}
@media (min-width: 1024px) {
    .display-2 {
        font-size: 65px;
    }
}
h5 {
    color: #fff;
    font-size: 20px;
    font-weight: 400!important;
}
@media (min-width: 768px) {
    h5 {
        font-size: 25px;
    }
}
.subheading {
    color: #FF8460;
    font-size: 18px;
    font-weight: 400!important;
}
main {
    background: #21171c;
}
body {
    font-family: acumin-pro, sans-serif;
    font-weight: 200;
    font-style: normal;
    background: #21171c;
    color: #fff;
}
a {
    color: #fff;
    text-decoration: underline;
}
.nav__toggle span {
    background-color: #fff;
}
.button,
a.btn-default,
a.button__label,
form input[type="submit"]{
    color: #fff;
    line-height: 1;
    font-size: 18px;
    padding: 10px 30px;
    border: 2px solid #fff;
    text-decoration: none;
    border-radius: 30px;
    display: inline-block;
    min-height: unset;
    font-weight: 400!important;
    letter-spacing: -0.07px!important;
}
@media (min-width: 1024px) {
    .button,
    a.btn-default,
    a.button__label,
    form input[type="submit"]{
        font-size: 20px;
    }
}
.button:hover,
a.btn-default:hover,
a.button__label:hover,
form input[type="submit"]:hover {
    background-color: #fff;
    color: #21171c;
}
.preloader {
    z-index: 99999;
    background: linear-gradient(135deg, #FF8460 0%, #FF8460 100%);
}
.text-heading__header:before {
    border-color: transparent transparent #21171c transparent;
}
.button__label {
    line-height: 1;
    font-size: 18px;
    font-weight: unset;
    font-family: acumin-pro, sans-serif;
}
@media (min-width: 1024px) {
    .button__label {
        font-size: 20px;
    }
}
.content-block__header.is-mobile {
    margin: 0px 0px;
}
.content-block__header {
    margin: 0px 0px 50px 0px;
}
@media (min-width: 1024px) {
    .content-block__header {
        margin: 0px 0px 75px 0px;
    }
}
.content-block__header .S-all {
    border-left: 0px;
}
.content-block__header a {
    color: #FF8460;
    font-size: 18px;
    letter-spacing: -0.07px;
    font-weight: 400!important;
}
@media (min-width: 768px) {
    .content-block__header a {
        font-size: 20px;
    }
}
.content-block__header a:hover {
    text-decoration: underline;
}
#how-we-can-help {
    background: #21171c;
}
#how-we-can-help .btn-wrap {
    margin: 10px 0px 0px 0px;
}
@media (min-width: 1024px) {
    #how-we-can-help .btn-wrap {
        margin: 30px 0px 0px 0px;
    }
}

.projects .logo__click {
    transform: translateY(-50%);
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    top: 50%;
}
.projects .logo__click img {
    transform: translateY(-50%);
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    top: 50%;
}
.projects .logo-content__link {
    font-weight: 400!important;
    color: #FF8460;
}
.site-footer {
    background: #21171c;
}
.content-block--grey {
    background: #21171c;
}
.content-block--grey .content-block__header {
    margin: 0px 0px 25px 0px;
}
.container--page {
    background: #21171c;
}
.content-block--gradient {
    background: #FF8460;
    padding: 75px 15px;
}
@media (min-width: 1024px) {
    .content-block--gradient {
        padding: 85px 0px 115px 0px;
    }
}
.content-block--gradient .heading {
    text-align: center;
    margin: 0px 0px 30px 0px;
}
@media (min-width: 768px) {
    .content-block--gradient .heading {
        margin: 0px 0px 35px 0px;
    }
}
.content-block--gradient .heading h4 {
    text-align: center;
    margin: 0px 0px;
    font-size: 32px;
    line-height: 1;
    color: #fff;
}
@media (min-width: 768px) {
    .content-block--gradient .heading h4 {
        font-size: 36px;
    }
}
@media (min-width: 1024px) {
    .content-block--gradient .heading h4 {
        font-size: 38px;
    }
}
.content-block--gradient .lead {
    margin-bottom: 0px;
}
.content-block__counter {
    display: none;
}
.animated-link {
    color: #FF8460;
    text-shadow: none;
    background-image: none;
    font-size: 28px;
    letter-spacing: -0.23px;
    font-weight: 400!important;
    line-height: 1!important;
    display: block;
    margin: 0px 0px 15px 0px;
}
@media (min-width: 768px) {
    .animated-link {
        font-size: 34px;
    }
}
@media (min-width: 1024px) {
    .animated-link {
        font-size: 38px;
        margin: 0px 0px 30px 0px;
    }
}
.content-block__filler {
    padding: 0px 0px;
}
@media (min-width: 1024px) {
    .content-block--gradient .lead {
        width: 600px; /* removed fix width as p styles broken on laptop/tablet size screens */
        max-width: 100%;
        margin: 0 auto;
    }
}
.lead,
.logo-content,
.cta p.lead,
.cta p.lead a {
    font-weight: 400!important;
    font-size: 16px;
    color: #fff;
}
@media (min-width: 768px) {
    .lead,
    .logo-content,
    .cta p.lead,
    .cta p.lead a {
        font-size: 18px;
    }
}
.content-block__seperator {
    display: none;
}
.projects .logo {
    border-radius: 50%;
}
.projects .content-block__header {
    margin: 0px 0px 25px 0px;
}
.glide .content-block__header {
    margin: 0px 0px 25px 0px;
}
.component .content-block__header {
    margin: 0px 0px 15px 0px;
}
.card p {
    color: #FF8460;
    font-size: 15px;
    text-transform: none;
    font-weight: 400!important;
    font-family: degular, sans-serif;
}
.card .card__date {
    margin: 10px 0px 0px 0px;
    font-size: 14px;
    color: #fff;
}
.card__title h3,
.card__title h4 {
    color: #fff;
    display: block;
    text-shadow: none;
    background-image: none;
    font-size: 18px;
    text-decoration: underline;
}
.card__title h3,
.card__title h4 {
    color: #fff;
    text-shadow: none;
    background-image: none;
    font-size: 18px;
    line-height: 1.2!important;
    font-weight: 400!important;
    text-decoration: underline;
}
#block__block_60056cd9bddc9 .card__date {
    color: #FF8460!important;
    font-size: 16px;
}
#block__block_60056cd9bddc9 .card p {
    color: #fff;
    line-height: 1.6;
}
.cta {
    margin: 0px;
    /* overflow: hidden!important; */
}
.cta,
.cta .primary {
    border-left-width: 0px;
    background-color: #FF8460;
}
.cta .primary {
    width: 100%;
    position: relative;
    padding: 75px 0px;
}
@media (min-width: 1024px) {
    .cta .primary {
        padding: 130px 0px 145px 0px;
    }
}
.cta .primary:before {
    top: 0;
    width: 3000px;
    height: 100%;
    right: 100%;
    content: "";
    z-index: 999;
    position: absolute;
    background-color: #FF8460;
    border: 0px;
}
.cta .primary:after {
    top: 0;
    width: 3000px;
    height: 100%;
    left: 100%;
    content: "";
    z-index: 999;
    position: absolute;
    background-color: #FF8460;
    border: 0px;
}
.cta .lead {
    max-width: 100%!important;
    width: 450px!important;
    font-size: 16px!important;
    text-align: center;
    display: block;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .cta .lead {
        font-size: 18px!important;
    }
}
.cta .primary h2 {
    text-align: center;
    margin: 0 auto;
    display: block;
    font-size: 32px;
    line-height: 1;
    margin: 0px 0px 20px 0px;
    font-weight: 400!important;
    font-family: degular, sans-serif;
}
@media (min-width: 768px) {
    .cta .primary h2 {
        font-size: 36px;
    }
}
@media (min-width: 1024px) {
    .cta .primary h2 {
        font-size: 38px;
    }
}
.cta .primary::before,
.cta .primary::before {
    /* display: none; */
}
.cta .btn-wrap {
    display: block;
    margin: 0 auto;
    margin-top: 15px;
    text-align: center;
}
@media (min-width: 1024px) {
    .cta .btn-wrap {
        margin-top: 30px;
    }
}
.component-cta {
    padding-bottom: 0px;
}
.projects .logo__title {
    font-weight: 400!important;
    font-family: degular, sans-serif;
    position: relative;
    font-size: 18px;
    text-align: center;
    left: unset;
    right: unset;
    padding: 0px 0px;
    margin-top: 30px;
    display: block;
}
@media (min-width: 768px) {
    .projects .logo__title {
        font-size: 20px;
    }
}
@media (min-width: 1024px) {
    .projects .logo__title {
        font-size: 22px;
    }
}
.projects .logo__title img {
    display: block;
    margin-top: 15px;
}
.text-heading__content a {
    color: #FF8460!important;
    font-weight: 400!important;
}
.text-heading__content .display-2 {
    display: block;
    margin-bottom: 30px;
    font-weight: 400!important;
    font-family: degular, sans-serif;
}
.filter__link {
    color: #fff;
    font-weight: 400!important;
}
.filter__link:hover {
    color: #FF8460;
}
.filter__link--active {
  color: #FF8460;
  border-bottom: 2px solid #FF8460;
}
.text-heading__content--paragraph {
    font-weight: 400!important;
    font-size: 18px;
    color: #fff;
}
@media (min-width: 768px) {
    .text-heading__content--paragraph {
        font-size: 20px;
    }
}
@media (min-width: 1024px) {
    .text-heading__content--paragraph {
        font-size: 25px;
    }
}
.alt .glide__slide {
    background: #FF8460;
}
.alt .glide__image::before, .alt .glide__image::before {
    border-color: transparent transparent #FF8460 transparent;
}
@media (min-width: 1024px) {
    body.page-id-9 #bespoke-white-labelled-solutions-for-leading-properties .lead {
        float: right;
    }
}
.glide__content__nova {
    height: 100%;
    width: 100%;
    padding: 50px 20px!important;
    background-color: rgba(0,0,0,0.7);
}
@media (min-width: 768px) {
    .glide__content__nova {
        width: 40%;
    }
}
@media (min-width: 1024px) {
    .glide__content__nova {
        right: 0;
        height: 100%;
        padding: 30px 20px!important;
        position: absolute;
    }
}
.glide__content__nova .gradient-text {
    color: #fff;
    line-height: 1.2;
    font-size: 20px;
    letter-spacing: -0.1px;
    background-color: #fff;
    text-shadow: none;
    background-image: none;
    font-weight: 400!important;
    font-family: degular, sans-serif;
    margin-bottom: 0px!important;
}
@media (min-width: 768px) {
    .glide__content__nova .gradient-text {
        font-size: 24px;
    }
}
@media (min-width: 1024px) {
    .glide__content__nova .small {
        font-size: 28px;
    }
}
.glide__content__nova .small {
    color: #fff;
    font-size: 16px;
    letter-spacing: -0.07px;
    font-weight: 400!important;
    text-transform: unset;
    margin-bottom: 0px;
    margin-top: 30px;
}
@media (min-width: 768px) {
    .glide__content__nova .small {
        font-size: 18px;
    }
}
@media (min-width: 1024px) {
    .glide__content__nova .small {
        font-size: 20px;
        margin-top: 40px;
    }
}
.glide__content__nova .small span.orange {
    color: #FF8460;
}
#layouts-wrap {
    overflow: hidden;
}
form p {
    /* display: none; */
}
form label {
    font-weight: 400!important;
    font-size: 18px;
    color: #fff;
}
form input,
form textarea {
    color: #fff;
    font-size: 20px;
    padding: 10px 15px;
    border-radius: 30px;
    border: 1px solid #fff;
    margin-top: 10px!important;
    background-color: transparent;
}
form input:focus,
form textarea:focus {
  border-color: #FF8460;
}
.button--green,
form input[type="submit"] {
    background-color: transparent;
    border: 1px solid #fff!important;
}
.wpcf7-not-valid-tip {
    color: #FF8460;
    line-height: 1;
    font-size: 14px;
}
#bespoke-white-labelled-solutions-for-leading-properties .h1 {
    font-size: 38px;
    line-height: 1.2;
    margin-bottom: 30px;
}
@media (min-width: 768px) {
    #bespoke-white-labelled-solutions-for-leading-properties .h1 {
        font-size: 45px;
    }
}
@media (min-width: 1024px) {
    #bespoke-white-labelled-solutions-for-leading-properties .h1 {
        font-size: 50px;
    }
}
#bespoke-white-labelled-solutions-for-leading-properties  p {
    font-size: 18px;
}
@media (min-width: 768px) {
    #bespoke-white-labelled-solutions-for-leading-properties  p {
        font-size: 20px;
    }
}
@media (min-width: 1024px) {
    #bespoke-white-labelled-solutions-for-leading-properties  p {
        font-size: 25px;
    }
}
#discover-our-solutions {
    padding-bottom: 0px;
}
#hero .display-1 {
    font-size: 42px;
    line-height: 1.2;
}
@media (min-width: 768px) {
    #hero .display-1 {
        font-size: 54px;
    }
}
@media (min-width: 1024px) {
    #hero .display-1 {
        font-size: 64px;
    }
}
@media (min-width: 1200px) {
	body.home #hero .display-1 {
		font-size: 85px!important;
	}
}
#hero .lead {
    font-weight: 400!important;
    font-size: 18px;
    margin: unset;
    margin-top: 25px;
    width: 100%!important;
}
@media (min-width: 768px) {
    #hero .lead {
        font-size: 20px;
    }
}
@media (min-width: 1024px) {
    #hero .lead {
        font-size: 25px;
    }
}
#hero .button {
    margin-top: 25px!important;
}
@media (min-width: 1024px) {
    #hero .button {
        margin-top: 35px!important;
    }
}
.hero__content {
    z-index: 999;
}
.hero__gradient-v2 {
    top: 0;
    left: 0;
    z-index: 99;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    transition: 0s;
    background-color: rgba(0,0,0,.5);
}
.site-header {
    background: #21171c;
}
.site-header--home {
    background: transparent;
}
.nav.pull-right {
    float: unset;
}
@media (min-width: 1024px) {
    .nav.pull-right {
        float: right;
    }
}
@media (min-width: 1024px) {
    .site-header__nav ul {
        padding: 5px 30px;
        border: 1px solid #fff;
        border-radius: 30px;
    }
}
.primary li a {
    color: #fff;
    letter-spacing: -0.15px;
    font-weight: 400!important;
}
.primary li a {
    font-weight: 400!important;
}
.primary li a:hover {
    color: #FF8460;
}
.primary li.current-menu-item a,
.primary li.current_page_parent a {
    border-color: transparent;
    color: #FF8460;
}
.logo-content__excerpt {
    color: #000;
}
.site-header {
    z-index: 9999;
}
.content-block__header .S-all h5 {
    font-weight: 400!important;
    margin-bottom: 25px!important;
    letter-spacing: -0.09px!important;
    font-family: acumin-pro, sans-serif!important;
    /* display: block; */
}
/* @media (min-width: 1024px) {
    .content-block__header .S-all h5 {
        margin-bottom: 50px!important;
    }

    Removed as the header elements are now sitting in flex containers 
    
} */
.content-block-image-full {
    height: 250px;
}
@media (min-width: 768px) {
    .content-block-image-full {
        height: 350px;
    }
}
@media (min-width: 1024px) {
    .content-block-image-full {
        height: 450px;
    }
}
.container--page {
    padding-bottom: 0px!important;
}
main.article {
    color: #fff;
}
main.article a {
    color: #fff;
    text-decoration: none;
}
main.article .content-block__header {
    margin: 0px 0px 25px 0px;
}
main.article .container {
    padding-bottom: 0px;
}
main.article .category {
    color: #FF8460;
    font-size: 15px;
    letter-spacing: unset;
    font-weight: 400!important;
    text-transform: none!important;
}
main.article a.link {
    font-weight: 400!important;
    font-size: 20px;
    color: #FF8460;
}
main.article a.link:hover {
    text-decoration: underline;
}
body.page-id-1655 .container {
    padding-bottom: 0px!important;
}
body.page-id-880 .container {
    padding-bottom: 0px!important;
}
.site-header__open .primary {
    background: #21171c;
}
#smart-digital-layers {
    display: none;
}
#block__block_60056cd9bddc9 {
    padding-bottom: 0px!important;
}
#block__block_60056cd9bddc9 .card__title h3 {
    font-size: 28px!important;
}
@media (min-width: 768px) {
    #block__block_60056cd9bddc9 .card__title h3 {
        font-size: 32px!important;
    }
}
@media (min-width: 1024px) {
    #block__block_60056cd9bddc9 .card__title h3 {
        font-size: 34px!important;
    }
}
.alt .glide__content p.small {
    font-size: 18px;
    text-transform: none;
    font-weight: 400!important;
    margin-bottom: 0px!important;
}
.glide__content {
    padding: 30px 15px;
}
@media (min-width: 768px) {
    .glide__content {
        padding: 2rem;
    }
}
.alert {
    color: #000;
    z-index: 999;
    height: auto;
    font-size: 18px;
    padding: 15px 0px;
    background: #fff;
    font-weight: 400!important;
}
.alert .close {
    margin-top: 10px;
}
.alert .button--outline {
    border-color: #000!important;
}
.alert .button--outline:hover {
    background-color: #000!important;
}
.alert .button--outline:hover .button__label {
    color: #fff!important;
}
.alert .button span,
.alert form input[type="submit"] span,
form .alert input[type="submit"] span {
    font-weight: 400!important;
    color: #000;
}
@media (min-width: 768px) {
	a.card {
		min-height: 385px;
	}
}
form input,
form textarea {
    margin-bottom: 0px!important;
}
.meta {
    color: #fff;
    font-size: 15px;
    letter-spacing: unset;
    font-weight: 400!important;
}
.site-footer ul.nav--horizontal {
    /* display: none; */
}
.site-footer a {
    padding-bottom: 0px;
    border-bottom: 0px;
}
@media (min-width: 1024px) {
    .site-footer .site-footer__logo {
        margin-top: 150px;
    }
}
footer {
    padding: 70px 0px!important;
}
footer h3 {
    display: block;
    font-size: 28px;
    font-weight: 400!important;
    font-family: degular, sans-serif;
}
@media (min-width: 768px) {
    footer h3 {
        font-size: 38px;
    }
}
footer p {
    font-size: 16px;
    line-height: 1.4;
}
@media (min-width: 768px) {
    footer p {
        font-size: 18px;
    }
}
footer .linkedin-mobile {
	display: block;
}
@media (min-width: 1024px) {
	footer .linkedin-mobile {
        display: none;
    }
}
footer .linkedin-desktop {
	display: none;
}
@media (min-width: 1024px) {
	footer .linkedin-desktop {
        display: block;
    }
}

/* Videos Block */

.three-col-video-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px; 
     
}

.video-container .video-link {
    height: 236px; 
    margin-bottom: 1.5rem;
}

.video-container iframe {
    width: 100%;
    height: 100%; 
}

@media screen and (max-width: 1024px) {
    .three-col-video-grid {
        grid-template-columns: 1fr; /* Single column layout */
    }
    
    .video-container {
        padding: 10px; /* Adjust padding for smaller screens */
        width: 400px;
        margin: 0 auto; 
    }
}


/* SEO Audit Amends */


.cookie {

    height: auto; /* allows cookie banner to expand to fit content */

}

#cookie .button.cookie-close {

    padding: 0 !important; 

}

.projects .logo img:not(.logo__click img, .logo-content__close img) {

    min-height: 434px;
    height: auto;

}


/* Limits background flash from img hover zoom on Chrome */ 

.projects .logo img {
    box-shadow: 0 0 0 transparent; 
    will-change: transform;
}

.projects .logo:hover img:not(.logo__click img, .logo-content__close img) {
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
}

/* Fixes header and CTA misalignment */

.content-block__header .S-all {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center; 
}

/* Resize Latest News images to fit within containers */

img.attachment-thumbnail_image {

    min-height: 236px; 

}

/* Contact CTA Button */

.cta a.button {

    font-weight: 500 !important;

}

/* Careers Heading */

.text-heading__content.no-image {
    display: flex;
    justify-content: space-between;
    align-items: baseline; 
}

.text-heading__content--paragraph {

    width: 80%;

}

.text-heading__content a {
    text-align: right; 
    width: 20%;
}

@media (max-width: 1024px) {

    .text-heading__content.no-image {

        flex-direction: column; 

    }

    .text-heading__content--paragraph {

        width: 100%;
    
    }

    .text-heading__content a {

        text-align: left; 
        width: 100%; 

    }

}

/* Keep Testimonial Text on right until mobile screens */

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

    
    .glide__image {

        display: flex;
        justify-content: flex-end;

        }

    .projects .S-all.M-4 {

        width: 60%;
        margin: 0 auto; 

    }
}

@media (min-width: 580px) and (max-width: 1023px) {

    .projects .row {

        display: flex;
        flex-direction: column; 
    }


    .projects .logo img:not(.logo__click img, .logo-content__close img) {

        min-height: 696px;
        height: auto;
    
    }
}

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

    .projects .S-all.M-4 {

        width: 60%;
        margin: 0 auto; 

    }

}

@media (max-width: 580px) {

    .projects .logo img:not(.logo__click img, .logo-content__close img) {

        min-height: 510px;
        height: auto;
    
    }

}

/*# sourceMappingURL=flawless-override.css.map */


