.promo--none .promo__image {
    opacity: 1 !important;
}

.promo--none:before {
    content: none !important;
    transition: unset !important;
}

.promo--none:hover:before {
    background: none !important;
}

/* Default hidden state for mobile-only visibility */
.visible-xs-block {
    display: none !important;
}

/* Show only on extra small screens (mobile, less than 768px) */
@media (max-width: 767px) {
    .visible-xs-block {
        display: block !important;
    }

    .hidden-xs {
        display: none !important;
    }
}

/* Show on tablet and desktop (768px and up) */
@media (min-width: 768px) {
    .hidden-xs {
        display: block !important;
    }

    /* Hide mobile-only elements on tablet and desktop */
    .visible-xs-block {
        display: none !important;
    }

    /* Ensure hidden-sm, hidden-md, and hidden-lg are respected */
    .hidden-sm {
        display: none !important;
    }

    .hidden-md {
        display: none !important;
    }

    .hidden-lg {
        display: none !important;
    }
}

/* Hide on all devices */
.hidden {
    display: none !important;
}

/* IAN 15/11/24 - New festive rewards video and banner */
.video-overlay-img {
    position: absolute;
    height: auto;
    top: 50%;
    width: 33%;
    left: 50%;
    right: initial;

    transform: translate(0, -50%);
}

 /* Paul 16/12/25 - New festive rewards video and banner overrides to handle viewport */
.video-overlay-img[src*="festive"] {
     
        transform: translate(0, -50%);
}

@media (min-width: 990px) {
    .video-overlay-img[src*="festive"] {
        transform: translate(55%, -40%);
        width: 30%;
    }
}

@media (min-width: 1100px) {
    .video-overlay-img[src*="festive"] {
        transform: translate(50%, -40%);
    }
}

@media (min-width: 1300px) {
    .video-overlay-img[src*="festive"] {
        transform: translate(35%, -50%);
    }
}

@media (min-width: 1600px) {
    .video-overlay-img[src*="festive"] {
        transform: translate(10%, -50%);
    }

}

@media (min-width: 16010px) {
    .video-overlay-img[src*="festive"] {
        transform: translate(0%, -50%);
    }
}
    .mobile-overlay-img {
        position: absolute;
        left: 50%;
        height: auto;
        top: 100px;
        width: 50%;
        transform: translate(-50%, 0);
    }

        .mobile-overlay-img[src*="festive"] {
            top: 12px;
            width:180px;
      
        }

        /* Default: show image */
        .media-content {
            display: block;
            height: 80vh;
        }

    .video-content {
        display: none;
    }

    /* Show video on desktop (screen width 768px and above) */
    @media (min-width: 768px) {
        .media-content {
            display: none;
        }

        .video-content {
            display: block;
        }

        video {
            width: 100%;
            height: auto;
        }

        .banner--home {
            max-height: 1130px;
            overflow: hidden;
        }
    }

    @media (max-width: 1300px) {
        .video-overlay-img {
            display: none;
        }

            .video-overlay-img[src*="festive"] {
                display: block;
            }
    }

    @media (max-width: 990px) {
        .video-overlay-img[src*="festive"] {
            display: none;
        }
    }

    @media (min-width: 1300px) {
        .home-search-panel {
            width: 54%;
            margin: unset;
        }

        .home-search-panel-bg {
            background-image: url(/assets/images/imogen.jpg);
            background-position: center;
            background-size: cover;
            border: 3px solid white;
            border-radius: 30px;
        }
    }

    .home-search-panel h1 {
        font-size: 30px;
        margin: unset;
        margin-bottom: 25px;
        text-align: center;
        font-family: "co-headline-light", Arial, Helvetica, sans-serif;
        font-weight: 400;
        letter-spacing: 3px;
        color: #fff;
    }

    .home-search-panel h2 {
        font-size: 24px;
        font-weight: 400;
        margin-bottom: 20px;
        text-align: center;
        font-family: "co-headline-light", Arial, Helvetica, sans-serif;
        font-weight: 400;
        letter-spacing: 3px;
        color: #fff;
    }

    @media (min-width: 1300px) {
        .home-search-panel h1 {
            font-size: 56px;
            margin-bottom: 30px;
        }

        .home-search-panel h2 {
            font-size: 38px;
            margin: 0px auto 35px;
            max-width: 375px;
        }
    }

    @media (min-width: 769px) {
        .header__menu {
            max-width: 432px;
        }
    }

    /* 26-03-25 - GB specific homepage banner header styling */
    .home-search-panel.gb h2 {
        font-size: 30px;
        margin: unset;
        margin-bottom: 25px;
        text-align: center;
        font-family: "co-headline-light", Arial, Helvetica, sans-serif;
        font-weight: 400;
        letter-spacing: 3px;
        color: #fff;
    }

    .home-search-panel.gb h1 {
        font-size: 24px;
        font-weight: 400;
        margin-bottom: 20px;
        text-align: center;
        font-family: "co-headline-light", Arial, Helvetica, sans-serif;
        font-weight: 400;
        letter-spacing: 3px;
        color: #fff;
    }

    @media (min-width: 1300px) {
        .home-search-panel.gb h2 {
            font-size: 56px;
            margin-bottom: 30px;
            max-width: unset;
        }

        .home-search-panel.gb h1 {
            font-size: 38px;
            margin: 0px auto 35px;
            /*max-width: 375px;*/
        }
    }

    /*Cookie List styling: OneTrust overrides*/

    #cookie-policy-title, #cookie-policy-title h5, #ot-sdk-cookie-policy h3 {
        font-family: "co-headline-bold" !important;
        color: black !important;
        text-align: center !important;
        font-size: 4rem !important;
        letter-spacing: .25px;
        line-height: 1.2;
        margin-bottom: 25px;
    }

    #ot-sdk-cookie-policy, .ot-sdk-cookie-policy-v2, #cookie-policy-description {
        color: black !important;
        font-size: 1.6rem !important;
        line-height: 1.6 !important;
    }

        #ot-sdk-cookie-policy .ot-sdk-cookie-policy-v2,
        #ot-sdk-cookie-policy .ot-sdk-cookie-policy-group,
        #ot-sdk-cookie-policy .ot-sdk-cookie-policy-group-desc {
            color: black !important;
            font-size: 1.6rem !important;
            line-height: 1.6 !important;
        }

        #ot-sdk-cookie-policy .ot-sdk-cookie-policy-group-desc {
            color: black !important;
            font-size: 1.6rem !important;
            line-height: 1.6 !important;
        }

    .field-validation-error span {
        float: left;
    }

    .form-group.checkbox label {
        margin-left: 20px !important;
    }

    .form-group.checkbox div.umbraco-forms-field-wrapper {
        position: absolute !important;
    }

    .umbraco-forms-field-wrapper input[type=file], .umbraco-forms-field-wrapper input[type=checkbox] {
        margin-bottom: 20px !important;
    }

    .umbraco-forms-navigation {
        margin-top: 20px !important;
    }







    .search-results__map.gm-disable,
    .location__map.gm-disable {
        padding: 1rem;
        background-color: #eee;
        background: repeating-linear-gradient( 45deg, /* angle of the stripes */
        white, /* first color */
        white 20px, /* width of white stripe */
        #efefef 20px, /* start grey stripe */
        #efefef 40px /* width of grey stripe */
        );
        display: grid;
        place-content: center;
        font-size: 1.5rem;
        border: 1px solid #ccc;
        opacity: 1;
        text-align: center;
        button{
            margin-top: 1rem;
            cursor: pointer;
            border: 1px solid #062060;
            background-color: #062060;
            color: #fff;
            font-size: 1.2rem;
            font-weight: bold;
            padding: 10px 24px;
            width: fit-content;
            justify-self: center;
            display:block;

          &:hover
            {
                background-color: #1e3670;
            }

    }
}


.search-results__map.gm-disable:has(.gm-placeholder),
.location__map.gm-disable:has(.gm-placeholder){

    div {
        display:none;

        }
    div.gm-placeholder{
        display:grid;
    }
}

.yt-hidden {
    display: none !important;
}


.yt-placeholder {
    padding: 1rem;
    background-color: #eee;
    background: repeating-linear-gradient( 45deg, /* angle of the stripes */
    white, /* first color */
    white 20px, /* width of white stripe */
    #efefef 20px, /* start grey stripe */
    #efefef 40px /* width of grey stripe */
    );
    display: grid;
    place-content: center;
    font-size: 1.5rem;
    border: 1px solid #ccc;
    text-align:center;

    button {
        margin-top: 1rem;
        cursor: pointer;
        border: 1px solid #062060;
        background-color: #062060;
        color: #fff;
        font-size: 1.2rem;
        font-weight:bold;
        padding: 10px 24px;
        width: fit-content;
        justify-self: center;

        &:hover {
          
            background-color:#1e3670;
          }
       }
}


.uforms-consent-message {
    padding: 2rem;
    background-color: #eee;
    display: grid;
    margin-inline:auto;
    place-content: center;
    font-size: 1.5rem;
    border: 1px solid #ccc;
    border-radius: 2rem;
    margin-bottom: 2rem;
    width:fit-content;

    button
        {
            margin-top: 1rem;
            cursor: pointer;
            border: 1px solid #062060;
            background-color: #062060;
            color: #fff;
            font-size: 1.2rem;
            font-weight: bold;
            padding: 10px 24px;
            width: fit-content;
            justify-self: center;

            &:hover

            {
                background-color: #1e3670;
            }

        }
}



form:has(div.g-recaptcha) {
    visibility: hidden;
}

form:has(div.g-recaptcha).show {
    visibility: visible;
}

.uforms-overlay {
    position: relative;
    pointer-events: auto;
    padding: 2rem;
}

/* full-cover overlay */
    .uforms-overlay:before {
        content: "";
        border-radius:2rem;
        position: absolute;
        inset: 0;
        display: flex;
        height: 100%;
        background: repeating-linear-gradient( 45deg, /* angle of the stripes */
        white, /* first color */
        white 20px, /* width of white stripe */
        #efefef 20px, /* start grey stripe */
        #efefef 40px /* width of grey stripe */
        );
        opacity: 0.7;
        z-index: 10;
        pointer-events: auto; /* blocks interaction with form beneath */
    }


    .trustpilot{
        margin:20px;
    }

 .search-filter__item--select:hover select{
    color:#000 !important;
}

.no-touchevents.appearance .search-filter__item--select:hover
{
    background-color:unset !important;
}

.appearance .search-filter__item--select:after {
    border-color: #000 !important;
}

.app-links {
    width: 100%;
}

body.country-gb .app-links {
    border-top: 1px solid #fff;
}

    /* Two ads - determine gradient based on image names */
    /* Default: blue left, yellow right (first=standard, second=taxi) */
.app-links:has(.app-link:first-child img:not([src*="taxi"])):has(.app-link:last-child img[src*="taxi"]) {
    background: linear-gradient(to right, #06205f 50%, #fab633 50%);
}

    /* Flipped: yellow left, blue right (first=taxi, second=standard) */
    .app-links:has(.app-link:first-child img[src*="taxi"]):has(.app-link:last-child img:not([src*="taxi"])) {
        background: linear-gradient(to right, #fab633 50%, #06205f 50%);
    }

    /* Both standard */
    .app-links:has(.app-link:first-child img:not([src*="taxi"])):has(.app-link:last-child img:not([src*="taxi"])) {
        background: #06205f;
    }

    /* Both taxi */
    .app-links:has(.app-link:first-child img[src*="taxi"]):has(.app-link:last-child img[src*="taxi"]) {
        background: #fab633;
    }

    /* Single ad - blue by default */
    .app-links:has(.app-links-grid > .app-link:only-child) {
        background: #06205f;
    }

    /* Single taxi ad - yellow */
    .app-lisnk:has(.app-links-grid > .app-link:only-child img[src*="taxi"]) {
        background: #fab633;
    }

.app-links-grid {
    display: grid;
    max-width: 1400px;
    margin: 0 auto;
    grid-template-columns: 1fr 1fr;
}

    .app-links-grid > .app-link:only-child {
        grid-column: 1 / -1;
        justify-self: center;
    }

    .app-links-grid img {
        max-width: 100%;
        height: auto;
        vertical-align: baseline;
        display: block;
    }

    .app-links-grid > .app-link:only-child img {
        max-height: 350px;
    }

@media (max-width: 767px) {
    .app-links {
        background: none;
    }

    .app-links-grid {
        grid-template-columns: 1fr;
    }

    .app-link {
        background-color: #06205f;
    }

        .app-link:has(img[src*="taxi"]) {
            background-color: #fab633;
        }
}