:root {
    /*Colors Start*/
    /*<-==========================================->*/
    --Color1-Pure-Black: #000000;
    --Color1-Pure-white: #ffffff;
    --Color-OffWhite: #f4f4f4;
    --primary: #00A049;
    --RGBAprimary: 4, 172, 76;
    --dischem-green: #00A049;
    --dischemGray: #f5f5f5;
    --secondary-100: #FFE600;
    --disabledstate: #004d23;
    --secondary-200: #333333;
    --tertiary-100: #99FF00;
    --tertiary-200: #33B3CC;
    --cancel-red: #DC3E3E;
    /*Colors End*/
    /*<-==========================================->*/
    /*Font size Start*/
    /*<-==========================================->*/
    --fs-normal: 1.6rem;
    --fs-700: 4rem;
    --fs-600: 3.4rem;
    --fs-550: 2.2rem;
    --fs-500: 2rem;
    --fs-400: 1.9rem;
    --fs-300: 1.8rem;
    --fs-200: 16px;
    --fs-150: 15px;
    --fs-100: 12px;
    --fs-50: 8px;
    /*Font Size End*/
    /*<-==========================================->*/
    /*Font weight Start*/
    /*<-==========================================->*/
    --fw-400: 500;
    --fw-600: 600;
    --fw-700: 700;
    --fw-900: 900;
    /*Font weight End*/
    /*<-==========================================->*/
}

/* <-==========================-> */
/* CSS REST */
/* Box sizing rules */
*,
*::before,
*::after {
    box-sizing: border-box;
    touch-action: manipulation;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
    margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role='list'],
ol[role='list'] {
    list-style: none;
}

/* Set core root defaults */
html:focus-within {
    scroll-behavior: smooth;
}

/* Set core body defaults */
body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
    text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
    max-width: 100%;
    display: block;
}

html, body {
    scroll-behavior: auto !important;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
    font: inherit;
}

.serviceSelect {
    position: relative;
    width: 100%;
}

.setParent_Height .AppointmentConfirmDetails.AppointmentCalendarDetails {
    max-width: 100%;
}

.serviceSelect .serviceDisplay {
    width: 100%;
    max-width: 20rem;
    min-height: 20rem;
    margin: 5rem 5rem 5rem 0;
    display: inline-block;
    border: none;
    background-color: inherit;
    padding: 2rem;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    position: relative;
    justify-content: center;
    grid-gap: 1rem;
    background-position: center center;
    background-size: contain;
    border-radius: 1.2rem;
    float: left;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
    transition: all .2s ease-in;
}

    .serviceSelect .serviceDisplay::after {
        content: "";
        position: absolute;
        background: var(--dischem-green);
        height: 0;
        width: 94%;
        bottom: 0;
        left: 2.6%;
        border-radius: 1rem;
        transition: all .2s ease-in;
    }

    .serviceSelect .serviceDisplay label {
        position: relative;
        z-index: 5;
    }

    .serviceSelect .serviceDisplay:hover::after {
        height: 6rem;
    }

    .serviceSelect .serviceDisplay:hover label {
        color: #fff;
        transition-delay: .25s;
    }

.serviceDisplay .row:last-child {
    display: inherit;
}

    .serviceDisplay .row:last-child img {
        height: 10rem;
    }

.AppointmentCalendarDetails {
    text-align: center;
}

    .AppointmentCalendarDetails button {
        background-color: var(--dischem-green);
        color: white;
        font-size: 14px;
        font-weight: 700;
        padding: 8px 25px 8px 25px;
        border-radius: 25px;
        border: none;
        margin: 6px;
        width: 100%;
        max-width: 30.6rem;
        min-width: 26.6rem;
    }

    .AppointmentCalendarDetails input[type=text] {
        font-size: 14px;
        font-weight: 700;
        border-radius: 15px;
        border: 2px solid rgba(0,0,0,0.3);
        height: 100%;
        min-height: 4.5rem;
        width: 100%;
        max-width: 34.5rem;
        padding: 8px 25px 8px 25px;
        margin: 6px;
        text-align: center;
    }

.CancelBookingButtons input[type=submit] {
    color: white;
    font-size: 14px;
    font-weight: 700;
    border-radius: 25px;
    border: none;
    margin-top: 2rem;
}

.CancelBookingButtons div:not(:last-child) input[type=submit] {
    background-color: var(--cancel-red);
    padding: 8px 25px 8px 25px;
    min-height: 4.5rem;
    width: 100%;
    max-width: 34.5rem;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
        overscroll-behavior: none !important;
    }
}

p,
label, span {
    font-size: 16px;
}

/* CSS REST End*/
/* <-==========================-> */

html {
    font-size: 62.5%;
}

body {
    font-family: 'Monserrat', Helvetica, sans-serif;
    font-weight: var(--fw-400);
    background-color: #FAFAFA;
    line-height: 1.6;
    color: var(--Color1-Pure-Black);
    height: 100%;
    margin: 0;
    width: 100%;
    touch-action: manipulation;
}

form {
    font-family: 'Monserrat', Helvetica, sans-serif;
    font-weight: var(--fw-400);
    background-color: #FAFAFA;
    line-height: 1.6;
    color: var(--Color1-Pure-Black);
    height: 100%;
    margin: 0;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    position: relative;
    min-height: 100vh;
    touch-action: manipulation;
}

h1,
h2,
h3 {
    line-height: 1.1;
}

h2 {
    font-size: var(--fs-700);
}

.container-fluid > div {
    width: 100%;
    margin: 0px;
}

/*Header Start*/
/*<-==========================================->*/
.heading {
    margin: 0;
    position: relative;
    background-color: var(--dischem-green);
}

.Logo--img {
    background-color: transparent;
    z-index: 1000;
    position: relative;
    margin: 0 auto 0 0;
    width: 194px;
    height: auto;
    padding: 23px 0 22px 0;
}

.heading button {
    background-color: inherit;
    border: none;
}

.heading .headingContainer, .heading .headingLogo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 8.8rem;
}

.HeaderSpacer {
    width: 100%;
    height: 4rem;
    background-color: #00ad4e;
}

/*Header End*/
/*<-==========================================->*/
/*Body Start*/
/*<-==========================================->*/
.ArrowBack {
    display: inline-block;
    margin: 0 auto;
    pointer-events: auto;
    height: 5rem;
    width: 5rem;
    padding: .8rem;
}

div.bookingProgress {
    margin-top: 3rem;
}

.bookingProgress div {
    background-color: inherit;
    background-image: none;
}

.bookingProgress .progressImg,
.bookingProgress .progressImgActive {
    height: 5.6rem;
}

.bookingProgress .progressContainer {
    display: flex;
    align-items: center;
    justify-content: space-around;
    height: 100%;
}

.bookingProgress .progressContainerDone {
    justify-content: flex-start;
    margin-left: 1.5rem;
}

.bookingProgress .progressText {
    font-size: 18px;
    font-weight: 100;
    margin-left: 1.5em;
    white-space: nowrap;
    padding-right: 0.7em;
}

.bookingProgress .progressStatus:not(:last-child) .progressLine {
    border-style: solid;
    border-top-width: 1px;
    border-bottom-width: 0px;
    border-left-width: 0px;
    border-right-width: 0px;
    border-color: black;
    width: 100%;
    max-width: 15rem;
    min-width: 15rem;
}

.serviceLocation label {
    font-size: 1.6rem;
    font-weight: 700;
    margin-top: 10px;
    margin-bottom: 10px;
}


.serviceLocation div.serviceAndLocationSelect button {
    font-size: 1.6rem;
}

.container-fluid .row div.serviceLocation div.serviceAndLocationSelect,
.DatePicker, .select2-container .select2-selection--single,
.dxbl-text-edit, .dxbl-dropdown > .dxbl-dropdown-dialog.dxbl-edit-dropdown {
    width: 100%;
    min-width: 38rem;
    max-width: 45rem;
}

.serviceLocation div.serviceAndLocationSelect button, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit {
    height: 4.3rem;
    background-image: none;
    background-color: white;
    color: black !important;
    border-radius: 8px 0px 8px 0px;
    font-size: 14px;
    padding-left: 16px;
    box-shadow: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    margin-left: -23px;
    margin-top: 3px;
}

.DatePicker {
    border: 1px solid #adadad;
}

    .serviceLocation div.serviceAndLocationSelect button:focus,
    .select2-container .select2-selection--single:focus,
    .serviceLocation div.serviceAndLocationSelect button:focus-visible,
    .DatePicker:focus, .dxbl-text-edit:focus {
        outline: none !important;
    }

.dxbl-text-edit > .dxbl-btn-group.dxbl-btn-group-right > .dxbl-btn {
    border: 0;
    border-radius: 8px 0px 8px 0px;
    width: 3rem;
}

.dxbl-text-edit:focus,
.dxbl-text-edit:focus-within {
    box-shadow: none;
    border: 1px solid #adadad;
}

.select2-container .select2-selection--single, .select2-container--default .select2-selection--single .select2-selection__rendered {
    height: 4.3rem;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0.5rem;
}

.serviceLocation div.serviceAndLocationSelect button .filter-option {
    display: flex;
    align-items: center;
}

.timeslotHeading {
    padding-top: 45px;
}

    .timeslotHeading .timeslotHeadingContainer {
        align-items: center;
        height: 100%;
        text-align: center;
    }

    .timeslotHeading img,
    .timeslotHeading input[type=image] {
        height: 4.5em;
    }

    .timeslotHeading div:first-child {
        padding-left: 0px;
    }

    .timeslotHeading div:last-child {
        padding-right: 0px;
    }

        .timeslotHeading div:last-child h3 {
            font-weight: var(--fw-600);
            font-size: var(--fs-550);
        }

    .timeslotHeading button {
        background-color: inherit;
        border: none;
    }

div.weekTimes {
    overflow-x: hidden;
    height: calc(48vh - 8rem);
    overflow-y: auto;
    margin-bottom: 10rem;
}

.weekContainer, .weekContainerMobile {
    padding-top: 20px;
    padding-bottom: 10rem;
}

    .weekContainer div {
        align-items: center;
        text-align: center;
    }

.weekHead {
    padding-bottom: 10px;
}

    .weekHead > div {
        padding-left: 0.7em;
        padding-right: 0.7em;
    }

        .weekHead > div > div > div > span {
            background-color: var(--dischem-green);
            color: white;
            font-size: 1.6rem;
            height: 2.4em;
            display: flex;
            margin: auto;
            align-items: center;
            justify-content: center;
            font-weight: 600;
            border-radius: 7px 0px 7px 0px;
            margin-bottom: 15px;
            white-space: nowrap;
            display: inline-block;
            overflow: hidden;
            text-overflow: ellipsis;
            padding: .5rem 1rem;
            width: 100%;
            text-align: center;
            position: sticky;
            top: 0;
        }

.AligrnRow_R {
    margin-left: 5rem;
}

.weekRow {
    padding-top: 15px;
    justify-content: center
}

.weekButton {
    border-radius: 15px;
    border: 1px solid var(--Color1-Pure-Black);
    width: 100%;
    font-weight: 700;
    font-size: 1.3rem;
    padding-top: 5px;
    padding-bottom: 5px;
    background: #ffff;
    margin: 5px 0;
    color: var(--Color1-Pure-Black);
}

.appointmentCurrentDetails {
    width: 100%;
    padding: 0px;
}

.appointmentDetails > div {
    width: 100%;
    margin: 0px;
}

.appointmentDetails .form-group label {
    font-size: 1.6rem;
    margin-bottom: 0;
    font-weight: 100;
}

.appointmentDetails .form-group input[type=text],
.appointmentDetails .form-group input[type=email],
.appointmentDetails .form-group input[type=date] {
    font-size: 1.6rem;
    height: 4.5rem;
    border-width: 1px;
    border-color: rgba(0,0,0,0.3);
    border-radius: 1.2rem;
    margin-bottom: 2rem;
}

    .appointmentDetails .form-group input[type=text]:focus,
    .appointmentDetails .form-group input[type=date]:focus,
    .appointmentDetails .form-group input[type=email] {
        box-shadow: none;
    }

.appointmentDetails .form-group:has(input[type=text]),
.appointmentDetails .form-group:has(input[type=email]),
.appointmentDetails .form-group:has(input[type=date]) {
    padding-right: 60px;
    padding-left: 0px;
}

.appointmentDetails .form-check {
    padding-top: 30px;
    display: flex;
    align-items: center;
}

.appointmentHeading {
    padding-bottom: 30px;
}

    .appointmentHeading h3 {
        color: var(--dischem-green);
        text-decoration: underline;
        text-underline-offset: 11px;
        text-decoration-thickness: 1px;
        font-weight: 700 !important;
        font-size: var(--fs-550);
    }

#backButton {
    margin: 5px 0px 0px 10px;
    padding: 0px;
    border: none;
    width: 100%;
    min-width: 4.5rem;
    max-width: 5.0rem;
    margin-bottom: 0.5rem;
    min-height: 4.5px;
}

.confirmBooking button,
.searchOnPassport button {
    background-color: var(--dischem-green);
    color: white;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 5px 8px 5px;
    border-radius: 25px;
    border: none;
    width: 100%;
    text-align: center;
    min-width: 26.6rem;
    max-width: 28.6rem;
    margin-bottom: 2rem;
    min-height: 42px;
}

.searchOnPassport {
    text-align: center;
}

.AppointmentConfirm h3 {
    color: var(--dischem-green);
    text-decoration: underline;
    text-underline-offset: 11px;
    text-decoration-thickness: 1px;
    font-weight: 700 !important;
    font-size: var(--fs-550);
}

.cancelBooking > div {
    position: absolute;
    top: 216%;
    left: 70%;
    display: grid;
    padding: 0px;
    width: auto;
}



.cancelBooking button {
    background-color: var(--cancel-red);
    color: white;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 5px 8px 5px;
    border-radius: 25px;
    border: none;
    width: 100%;
    max-width: 28.6rem;
    min-width: 26.6rem;
    text-align: center;
    position: relative !important;
    z-index: 100;
}

.ContinueBooking button {
    margin-bottom: 2rem;
    background-color: var(--dischem-green);
    color: white;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 5px 8px 5px;
    border-radius: 25px;
    border: none;
    width: 100%;
    max-width: 28.6rem;
    min-width: 26.6rem;
    text-align: center;
    position: relative !important;
    z-index: 100;
}

.setParent_Height {
    min-height: 177px;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    grid-gap: 1rem;
}

.AppointmentConfirmDetails {
    background: #fff;
    padding: 2rem 2.5rem;
    border-radius: 1.2rem 0 1.2rem 0;
    max-width: 66rem;
    box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 3px 1px -2px rgb(0 0 0 / 12%), 0 1px 5px 0 rgb(0 0 0 / 20%);
    z-index: 10;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: grid;
    align-items: center;
}

.AppointmentCancelDetails {
    max-width: 100%;
}

.AppointmentConfirmDetails label,
.AppointmentConfirmDetails span {
    font-size: 16px;
}

    .AppointmentConfirmDetails label:first-child {
        font-weight: 700;
    }

input.not-valid:not(input[type=checkbox]) {
    color: var(--Color1-Pure-Black);
}

div:has(input.not-valid[type=checkbox]) > label,
div:has(input.not-valid[type=checkbox]) > label > a {
    color: var(--Color1-Pure-Black);
}

#Homepage_Images {
    display: none;
}

.FlexBox {
    display: flex;
    align-items: center;
    justify-content: center;
}

.weekTimes::-webkit-scrollbar {
    width: 4px;
}

.weekTimes::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

.weekTimes::-webkit-scrollbar-thumb {
    background-color: darkgrey;
    outline: 1px solid slategrey;
}

.weekRow:last-of-type {
    margin-bottom: 4rem;
}

.marginSet {
    margin-top: 3rem;
    margin-bottom: 2rem;
}

.margin_XSet {
    margin-top: 0rem;
    margin-bottom: 4rem;
}

.form-control {
    padding: 2rem;
}

.custom_Checkbox {
    position: relative;
    width: 3.5rem;
    height: 3.5rem;
    margin: 0;
    display: inline-block;
    transition: all .25s ease-in;
    cursor: pointer;
    border-radius: 50%;
}

    .custom_Checkbox input[type="checkbox"] {
        width: 0;
        height: 0;
        appearance: none;
        -moz-appearance: none; /* For older Firefox versions */
        -webkit-appearance: none;
    }

        .custom_Checkbox input[type="checkbox"]::before,
        .custom_Checkbox input[type="checkbox"]::after {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            width: 3.5rem;
            height: 3.5rem;
            display: inline-block;
            border-radius: 50%;
            z-index: 500;
            transition: all .25s ease-in;
            cursor: pointer;
            background-image: url('Images/Group 942.png');
            max-width: 100%;
            max-height: 100%;
            background-position: center;
            background-size: contain;
            background-repeat: no-repeat;
            cursor: pointer;
        }

        .custom_Checkbox input[type="checkbox"]::after {
            visibility: hidden;
            opacity: 0;
            background-image: url('Images/Group 941.png');
        }

        .custom_Checkbox input[type="checkbox"]:checked::after {
            visibility: visible;
            opacity: 1;
        }

        .custom_Checkbox input[type="checkbox"]:checked::before {
            visibility: hidden;
            opacity: 0;
        }

.custom_CheckboxIMg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 3.5rem;
    height: 3.5rem;
    display: inline-block;
    border-radius: 50%;
    z-index: 500;
    pointer-events: none;
    transition: all .25s ease-in;
    cursor: pointer;
    visibility: hidden;
    opacity: 0;
}

label[for="chkTerms"] a {
    margin-left: 2rem;
    margin-top: 1rem;
    display: inline-block;
}

.isHiddenDesk {
    display: none;
}

.modal {
    display: block;
}

.Modal-overlay {
    background: rgba(245, 245, 245, .5);
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    opacity: 1;
    z-index: -1;
}

.Interaction-overlay {
    z-index: 100;
}

.modal .modal-content {
    border-radius: 2rem;
    padding: 2rem;
}

    .modal .modal-content h3 {
        text-align: center;
    }

.modal .modal-header {
    color: var(--dischem-green);
    border: 0;
}

.modal .modal-body {
    max-width: 38rem;
    margin: 1rem auto;
}

    .modal .modal-body p {
        font-size: var(--fs-400);
        font-weight: var(--fw-600);
        text-align: center;
        padding: 2rem;
    }

.modal .modal-footer {
    border: 0;
    text-align: center;
    justify-content: center;
}

    .modal .modal-footer .btn {
        background-color: var(--dischem-green);
        color: white;
        font-size: 14px;
        font-weight: 700;
        padding: 8px 5px 8px 5px;
        border-radius: 25px;
        border: none;
        text-align: center;
        width: 100%;
        min-width: 26.6rem;
        max-width: 28.6rem;
    }

.ImageBottom {
    position: fixed;
    bottom: 0;
    height: 60vh;
    right: 0
}

div.Interaction {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    display: flex;
    flex-direction: column;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, .2);
    background: #ffffff;
    border-radius: 2rem;
    padding: 2rem;
    outline: 0;
    width: 50rem;
    margin: 0 auto;
    z-index: 1000;
}

.alert-danger {
    border: 2px solid var(--cancel-red);
}

.alert-success {
    border: 2px solid var(--dischem-green);
}

.alert-danger h3 {
    color: var(--cancel-red);
}

.alert-success h3 {
    color: var(--dischem-green);
}

div.confirmBooking {
    margin-top: 10rem;
    margin-bottom: 5rem;
}

.interaction-Alert {
    height: 100%;
}

.cancelBooking, .ContinueBooking {
    margin: 4rem 0;
    text-align: left;
}

.ContinueBooking {
    text-align: right;
}

.seven-cols .col-md-1,
.seven-cols .col-sm-1,
.seven-cols .col-lg-1 {
    width: 14.285714285714285714285714285714%;
}

.modal .close {
    font-size: var(--fs-600);
    background: transparent;
    border: 0;
    position: absolute;
    top: 2rem;
    right: 1.1rem;
    width: 20px;
    max-width: 20px;
    height: 20px;
    max-height: 20px;
}

    .modal .close::after,
    .modal .close::before {
        content: "";
        position: absolute;
        background: #cccccc;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%) rotate(45deg);
        height: 2px;
        width: 20px;
    }

    .modal .close::before {
        transform: translate(-50%,-50%) rotate(135deg);
    }

.modal .modal-content h3 {
    font-size: var(--fs-550);
    max-width: 20rem;
    text-align: center;
    margin-inline: auto;
}

.modal.in .modal-dialog {
    -webkit-transform: translate(0, 50%);
    -ms-transform: translate(0, 50%);
    transform: translate(0, 50%);
}

.serviceSelect {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 0 auto;
}

    .serviceSelect .serviceDisplay label {
        cursor: pointer;
    }

.Element_txt_Center {
    text-align: center;
}

.CancelBookingButtons div input[type=submit].btnOk {
    background-color: var(--dischem-green);
    padding: 8px 25px 8px 25px;
}

.bootstrap-select .dropdown-menu {
    max-width: 30rem;
    background-color: var(--Color1-Pure-white);
    white-space: nowrap;
    text-overflow: ellipsis;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus, .dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
    background-color: var(--dischem-green);
    background-image: linear-gradient(to bottom, var(--dischem-green) 0%, var(--dischem-green) 100%)
}

    .dropdown-menu > li > a:hover, .dropdown-menu > li > a:hover .text-muted {
        color: var(--Color1-Pure-white);
    }

.DC_h1 {
    color: var(--Color1-Pure-Black);
    font-weight: var(--fw-600);
    font-size: var(--fs-550);
    margin-bottom: 3rem;
    padding-left: 1rem;
}

.switch-button {
    background: #fff;
    border-radius: 30px;
    width: 240px;
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: 1px;
    color: var(--primary);
    padding-right: 120px;
    position: relative;
    display: inline-block;
    height: 45px;
    overflow: hidden;
    margin-top: 28px;
}

    .switch-button:before {
        content: "Passport";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        width: 120px;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 3;
        pointer-events: none;
        font-size: 1.6rem;
        font-weight: var(--fw-600);
    }

.switch-button-checkbox {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 2;
}

    .switch-button-checkbox:checked + .switch-button-label:before {
        transform: translateX(120px);
        transition: transform 300ms linear;
    }

    .switch-button-checkbox + .switch-button-label {
        position: relative;
        padding: 15px 0;
        user-select: none;
        pointer-events: none;
        height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: var(--fw-600);
    }

        .switch-button-checkbox + .switch-button-label:before {
            content: "";
            background: #d2efe1;
            height: 100%;
            width: 100%;
            position: absolute;
            left: 0;
            top: 0;
            border-radius: 30px;
            transform: translateX(0);
            transition: transform 300ms;
        }

        .switch-button-checkbox + .switch-button-label .switch-button-label-span {
            position: relative;
            font-weight: var(--fw-600);
        }

.padding_L-0 {
    padding-left: 0;
    padding-right: 30px;
}

.lbl_ID_passport {
    height: 4.5rem;
    padding: 7px;
}

.SerachProfile {
    margin-top: 28px;
}

.Set_Banner {
    padding-left: 0;
}

    .Set_Banner img {
        width: 91.9%;
        margin: 2rem 10% 0rem 0;
        object-fit: contain;
        object-position: center;
    }

.MB_Banner {
    display: none;
}

.weekContainerMobile {
    display: none;
}

.Day_Date {
    font-size: var(--fs-150);
    font-weight: 600;
    color: #989494;
    margin: 1rem 0;
    position: relative;
}

    .Day_Date::after {
        content: "";
        position: absolute;
        height: 2.4rem;
        width: 2.4rem;
        left: -3rem;
        background-image: url(Images/Day_Date.png);
        background-position: center;
        background-size: contain;
    }

.modal {
    overflow-y: hidden;
}

.center {
    text-align: center;
}

.ErroBox {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0rem auto;
    padding: 1.5rem;
    background: #fff;
    height: calc(100vh - 12.8rem);
}

    .ErroBox .ClickHere {
        background-color: var(--primary);
        font-size: 1.5em;
        font-weight: 700;
        padding: 8px 5px 8px 5px;
        border-radius: 25px;
        border: none;
        width: 100%;
        max-width: 30.6rem;
        min-width: 26.6rem;
        text-align: center;
        position: relative !important;
        z-index: 100;
        margin: 2rem auto 2rem 2rem;
    }

        .ErroBox .ClickHere a {
            color: #fff;
        }

    .ErroBox p {
        color: #000;
        margin: 0;
        font-size: 2.5rem;
        font-weight: 400;
        max-width: 46rem;
        width: 100%;
        margin: 2rem auto 4rem 2rem;
        text-align: left;
    }

    .ErroBox .Oops, .ErroBox .Cancel {
        color: var(--Color1-Pure-Black);
        font-size: 6rem;
        font-weight: 700;
        padding-left: 1rem;
    }

    .ErroBox .Cancel {
        max-width: fit-content;
        font-size: 5rem;
    }


    .ErroBox .row p.DC_h1 label:first-child {
        font-weight: bold;
    }

    .ErroBox .row p.DC_h1 span,
    .ErroBox .row p.DC_h1 label {
        font-size: 2.5rem;
        font-weight: 400;
    }

    .ErroBox .row p.DC_h1 {
        margin: 1rem auto 0 2rem;
    }

    .ErroBox .CancelClick .ClickHere {
        color: #fff;
        background-color: var(--cancel-red);
    }

    .ErroBox .CancelClick {
        margin-top: 2rem;
    }

.bootstrap-select .dropdown-toggle .filter-option-inner-inner, label[for="chkTerms"] a {
    font-size: 1.6rem;
}

.progressStatus:not(:last-child) {
    width: 30%;
}

div.bookingProgress .DC_h1 {
    margin-bottom: 1rem;
}

.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu {
    bottom: unset;
}


.btn-Dimensions {
    padding: 1rem 1.5rem 1rem 1.5rem;
    min-height: 5rem;
    max-height: 5rem;
    margin: 0rem auto;
    display: grid;
    grid-template-columns: minmax(6rem, 330px);
    -webkit-grid-template-columns: minmax(6rem, 330px);
    align-items: center;
    max-width: 100%;
    width: 33rem;
    border-radius: 5rem;
    font-weight: var(--fw-600);
    letter-spacing: 1px;
}

.discoveryBlock {
    border-color: #235FA6;
    padding: 4.5rem 2.5rem 2.5rem 2.5rem;
}

    .discoveryBlock .btn-Dimensions {
        width: 25rem;
    }

    .discoveryBlock img {
        max-width: 20rem;
        min-width: 20rem;
        width: 20rem;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%,-50%);
        object-fit: contain;
        background: #ffffff;
    }

.Claim_Block img {
    max-width: 6rem;
    min-width: 6rem;
    width: 6rem;
    max-height: 6rem;
    min-height: 6rem;
    height: 6rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%,-50%);
}

button.btn-Discovery {
    width: 5rem;
    display: block;
    padding: 5px;
    border-radius: 1rem;
    border: 1px solid rgba(0,0,0,0.1);
}

.btn-ColorSetCyan {
    background-color: var(--DischemSecondary);
    color: var(--Color1-Pure-white);
    font-size: var(--fs-150);
    border: 1px solid var(--DischemSecondary);
    position: relative;
    overflow: hidden;
    text-transform: capitalize;
}

    .btn-ColorSetCyan::before {
        content: "";
        display: block;
        position: absolute;
        background-color: rgba(255,255,255,0.5);
        width: 6rem;
        height: 100%;
        top: 0;
        filter: blur(30px);
        transform: translate(-10rem) skewX(-15deg);
    }

    .btn-ColorSetCyan:focus,
    .btn-ColorSetCyan:hover {
        color: var(--Color1-Pure-white);
        outline: 0;
        box-shadow: 0 0 0 0.25rem transparent;
    }

.btn-close {
    position: absolute;
    top: 2rem;
    right: 2rem;
    width: 4rem;
    height: 4rem;
    font-size: var(--fs-200);
    z-index: 2000;
}

    .btn-close:focus {
        outline: none;
        box-shadow: none;
        border: none;
    }

.btnView_other {
    background-color: var(--dischem-green);
    color: white;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 5px 8px 5px;
    border-radius: 25px;
    border: none;
    width: 100%;
    text-align: center;
    min-width: 26.6rem;
    max-width: 30.6rem;
    margin-bottom: 2rem;
}

.Sub-text {
    padding: 0 1rem;
    font-size: 14px;
    color: #989494;
}

.dxbl-list-box-render-container > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li.dxbl-list-box-item-selected::before,
.dxbl-list-box > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li.dxbl-list-box-item-selected::before, .dxbl-list-box-render-container:not(.dxbl-disabled):not(:disabled):not(.dxbl-readonly):not(.dxbl-list-box-multi-select)[data-dx-focus-hidden] > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > :not(.dxbl-list-box-empty-data-container) > li:not([dxbl-top-virtual-spacer-element]):not([dxbl-bottom-virtual-spacer-element]).dxbl-list-box-item-selected:hover {
    background: var(--dischem-green);
}

.dxbl-list-box-render-container > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li.dxbl-list-box-item-selected .Sub-text {
    color: var(--Color1-Pure-white);
}

.dxbl-text-edit > [class*=dxbl-btn-group-right]:last-of-type {
    border-radius: 8px 0px 8px 0px;
}

.invalid {
    border-color: #dc3545 !important;
}

.is-invalid {
    font-size: 14px;
    font-weight: var(--fw-600);
    color: #dc3545;
    position: absolute;
    margin-left: 2rem;
    bottom: -0.2rem;
}

.searchOnPassport .btn-disabled,
.confirmBooking .btn-disabled {
    background: #cccccc;
    cursor: not-allowed;
}

.is-Hidden {
    display: none !important;
}

#components-reconnect-modal {
    position: fixed;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    height: 100%;
    margin: 0;
    width: 100%;
    align-items: center;
    justify-content: center;
    display: -webkit-flex;
    display: flex !important;
    flex-direction: column;
    -webkit-flex-direction: column;
    position: relative;
    min-height: 100vh;
    z-index: 1000;
    overflow: hidden;
    background-color: rgba(108,117,125,.9) !important;
    text-align: center;
    font-weight: bold;
    opacity: 1 !important;
}

    #components-reconnect-modal h5 {
        font-size: 16px;
        width: min(30rem, 100%);
        margin: 5rem auto !important;
        position: relative;
        padding: 3rem 7rem;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 5px;
        min-height: 30vh;
        background: #ffffff;
        box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
        border-radius: 2rem;
    }

    #components-reconnect-modal button {
        margin-bottom: 5rem;
        background-color: var(--primary);
        color: white;
        font-size: 14px;
        font-weight: 700;
        padding: 8px 5px 8px 5px;
        border-radius: 25px;
        border: none;
        width: 100%;
        max-width: 260px;
        min-width: 260px;
        text-align: center !important;
        z-index: 100 !important;
        margin-inline: auto !important;
        bottom: 3rem;
        height: 45px;
    }

    #components-reconnect-modal a {
        text-transform: capitalize;
        position: relative;
        width: 11rem;
        margin: 0 auto;
        padding: 0.3rem 1rem;
        z-index: 5;
        color: #989494;
        letter-spacing: 1px;
    }

    #components-reconnect-modal h5 + div {
        display: none !important;
    }

img.warningLogo {
    width: auto;
    margin: 0;
    height: 2rem;
    padding-right: 1rem;
}

.errorHeading {
    display: flex;
    align-items: center;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    margin-top: 1.5rem;
    background: #ffdf00;
    padding-left: 3rem;
}

.HeaderSpacer {
    flex-direction: row-reverse;
}

    .HeaderSpacer .backButton {
        margin-left: 16rem;
    }

.backButton {
    color: #000;
    border: none;
    padding-left: 1rem;
    padding-right: 1rem;
    border-radius: 6px;
    background: none;
    box-shadow: none;
    font-size: 30px;
}

    .backButton:hover {
        background: transparent !important;
    }

#fluBannerContainer {
    transition: max-height 0.4s ease, opacity 0.4s ease;
    overflow: hidden;
    max-height: 1000px;
    opacity: 1;
}

.no-slots-message {
    
    margin-top: 0.5rem;
    padding: 6px 12px;
    border-radius: 6px;
    display: inline-block;
    font-size: 1.3rem;
    text-align: center;
    width: 100%;
    background: none;
    color: black;
    font-weight: bold;
}

.highlight {
    padding-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
button.highlights {
    font-size: 15px;
    padding: 15px 0;
    margin-bottom: 10px !important;
}
.mb-3.combined {
    margin-bottom: 0px !important;
}
button.dclife-btn-close.highlights {
    margin-top: 0;
}
p.bookedParagraph {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 500 !important;
    padding-left: 3rem !important;
    padding-right: 3rem !important;
    padding-bottom: 1rem !important;
}

#popupDCLifeUpsell .modal-content {
    border-radius: 1rem;
    padding: 1.2rem;
    padding-bottom: 0.8rem;
    text-align: center;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

#popupDCLifeUpsell .modal-header {
    border-bottom: none;
    padding-bottom: 0;
}

#popupDCLifeUpsell .modal-body p {
    font-size: 1.6rem;
    margin-bottom: 1rem;
    line-height: 1.6;
}

    #popupDCLifeUpsell .modal-body p.highlight {
        font-size: 1.6rem;
        font-weight: 700;
        color: #008954;
        margin-top: 0.4rem;
    }

#popupDCLifeUpsell .close {
    background: none;
    border: none;
    font-size: 1.5rem;
    position: absolute;
    top: 1rem;
    right: 1rem;
    color: #555;
}

#popupDCLifeUpsell h3 {
    display: none;
}

.dclife-btn-primary {
    background-color: #008954;
    color: white;
    border-radius: 999px;
    border: none;
    padding: 0.75rem;
    font-weight: 600;
    font-size: 1.05rem;
    width: 100%;
}

.dclife-btn-outline {
    background-color: transparent;
    color: #008954;
    border: 2px solid #008954;
    border-radius: 999px;
    padding: 0.75rem;
    font-weight: 600;
    font-size: 1.05rem;
    width: 100%;
}

.dclife-btn-close {
    background-color: #d32f2f;
    color: white;
    border-radius: 999px;
    border: none;
    padding: 0.75rem;
    font-weight: 600;
    font-size: 1.05rem;
    width: 100%;
    margin-top: 1rem;
}

/*Body End*/
/*<-===========================================->*/
/*Media Queries Start*/
/*<-==========================================->*/
@media screen and (min-width: 768px) {
    .modal .modal-dialog {
        width: 50rem;
        margin: 0 auto;
    }

    .serviceLocationSpacing {
        padding-bottom: 1rem;
    }

    .serviceLocationSpacing_v2 {
        padding-bottom: 32rem;
    }
}

@media screen and (max-width: 1800px) {

    html {
        font-size: 42%;
    }

    .bookingProgress .progressStatus:not(:last-child) .progressLine {
        max-width: 5rem;
        min-width: 5rem;
    }

    .setParent_Height {
        grid-gap: 1rem;
    }

    .serviceLocationSpacing {
        padding-bottom: 1rem;
    }

    .serviceLocationSpacing_v2 {
        padding-bottom: 32rem;
    }

    .btnView_other {
        max-width: 34.6rem;
    }

    .switch-button-checkbox + .switch-button-label .switch-button-label-span {
        font-size: 1.6rem;
    }

    .switch-button-checkbox + .switch-button-label,
    .switch-button {
        height: 35px;
    }

    .confirmBooking button, .searchOnPassport button {
        min-height: 30px;
    }

    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit, .dxbl-dropdown > .dxbl-dropdown-dialog.dxbl-edit-dropdown {
        width: 100%;
        min-width: 36rem;
        max-width: 36rem;
    }
}

@media(max-width:1550px) {
    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit, .dxbl-dropdown > .dxbl-dropdown-dialog.dxbl-edit-dropdown {
        width: 100%;
        min-width: 36rem;
        max-width: 36rem;
    }
}

@media(max-width:1290px) {

    .bookingProgress .progressImg, .bookingProgress .progressImgActive {
        height: 5rem;
    }

    .padding_L-0 {
        padding-left: 15px;
        padding-right: 15px;
    }

    .bookingProgress .progressStatus:not(:last-child) .progressLine {
        max-width: 10rem;
        min-width: 8rem;
    }

    .seven-cols .col-md-1,
    .seven-cols .col-sm-1,
    .seven-cols .col-lg-1 {
        width: 14.285714285714285714285714285714%;
    }

    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit, .dxbl-dropdown > .dxbl-dropdown-dialog.dxbl-edit-dropdown {
        width: 100%;
        min-width: 36rem;
        max-width: 36rem;
    }

    .appointmentHeading {
        padding-top: 1.5rem;
    }

    .marginSet {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .modal.in .modal-dialog {
        transform: translate(0, 0%) !important;
    }

    .ContinueBooking button {
        margin-right: 0;
    }
}

@media(max-width:1200px) {

    .heading {
        display: flex;
    }

        .heading button {
            margin: 0;
        }

    .Set_Banner img {
        margin: 8rem 5% 5rem 5%;
    }

    .serviceLocationV2 {
        width: 95%;
        margin: 0rem 5% 0rem 4%;
    }

    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit, .dxbl-dropdown > .dxbl-dropdown-dialog.dxbl-edit-dropdown {
        width: 73%;
    }

    .isHiddenMB {
        display: none;
    }

    .isHiddenArrow {
        display: block;
    }

    .Cancel_Box .Cancel {
        font-size: 4rem;
        margin-bottom: 0rem;
    }

    .ErroBox .row p.DC_h1 span, .ErroBox .row p.DC_h1 label {
        font-size: 2rem;
    }

    .setParent_Height {
        grid-gap: 1rem;
    }

    .progressStatus:not(:last-child) {
        width: 25%;
    }

    .serviceLocationSpacing {
        padding-bottom: 1rem;
    }

    .serviceLocationSpacing_v2 {
        padding-bottom: 32rem;
    }

    .AppointmentConfirmDetails label, .AppointmentConfirmDetails span,
    .bookingProgress .progressText {
        font-size: 13px;
    }

    .bookingProgress .progressStatus:not(:last-child) .progressLine {
        max-width: 7rem;
        min-width: 6rem;
    }
}

@media screen and (max-width: 1098px) {
    .container-fluid div {
        margin-left: 0px;
        margin-right: 0px;
    }

    .setParent_Height {
        grid-gap: 1.5rem;
    }

    .modal.in .modal-dialog {
        transform: translate(0, 0%) !important;
    }

    .bookingProgress .progressImg, .bookingProgress .progressImgActive {
        max-width: 3rem;
        min-width: 3rem;
        height: 3rem;
    }

    .bookingProgress .progressStatus:not(:last-child) .progressLine {
        max-width: 5rem;
        min-width: 5rem;
    }

    .AppointmentConfirmDetails label, .AppointmentConfirmDetails span,
    .bookingProgress .progressText {
        font-size: 13px;
    }

    .modal.show .modal-dialog {
        justify-content: center;
    }

    .modal .modal-content {
        max-width: 34rem;
    }

    .modal .modal-footer .btn {
        min-width: 24.6rem;
        max-width: 26.6rem;
    }

    .container-fluid div.modal .modal-dialog {
        margin-left: auto;
        margin-right: auto;
        justify-content: center;
    }

    .timeslotHeading {
        padding-bottom: 3rem;
    }
}

@media screen and (max-width: 1000px) {
    .isHiddenMB {
        display: none;
    }




    .weekContainerMobile {
        display: block;
    }

    .weekContainer {
        display: none;
    }

    .ErroBox p {
        font-size: 2rem;
    }

    .ErroBox .Oops, .ErroBox .Cancel {
        font-size: var(--fs-600);
        max-width: fit-content;
    }

    .Cancel_Box {
        padding: 0;
    }

    .ErroBox .row p.DC_h1 {
        margin-left: 0;
        padding-left: 0;
    }

    .progressStatus:not(:last-child) {
        width: 50%;
    }
}

@media(max-width:996px) {
    html {
        font-size: 62.5%;
    }

    .seven-cols .col-md-1, .seven-cols .col-sm-1, .seven-cols .col-lg-1 {
        width: 33.33333333333333%;
    }

    .AppointmentConfirmDetails {
        max-width: 100%;
    }

    .progressLine {
        display: none !important;
    }

    .isHiddenArrow,
    .isHiddenMBProg, .progressLine, .headingSeperator {
        display: none !important;
    }

    .isHiddenDesk {
        display: inline-block;
    }

    .heading button.isHiddenDesk {
        margin: 0 auto 0 1rem;
    }

    .Logo--img {
        margin: 1rem auto 2rem 0;
    }

    .resetPadMB {
        padding-right: calc(var(--bs-gutter-x)* .5);
        padding-left: calc(var(--bs-gutter-x)* .5);
    }

    .heading .headingContainer, .heading .headingLogo {
        height: auto;
    }

    .bookingProgress .progressContainer {
        height: unset;
        margin: 2rem auto;
        justify-content: center;
    }

    .reverse_Row {
        display: flex;
        flex-direction: row-reverse;
        margin: 2rem 0;
    }

        .reverse_Row div[class*="col-6"]:last-child {
            border-right: 1px solid #000;
        }

    .AppointmentConfirm h3 {
        padding-bottom: .3rem;
    }

    .progressStatus:nth-of-type(2) {
        padding-right: 0;
        padding-left: 30px;
    }

    div.bookingProgress {
        margin: 2rem 0;
    }

    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
    }

    .progressStatus {
        min-width: 160px;
    }

        .progressStatus:last-child {
            padding-left: 30px;
            padding-right: 0;
        }

        .progressStatus .progressContainer:last-child {
            justify-content: flex-start;
        }

    .weekHead > div > div > div > span {
        font-size: var(--fs-100);
        padding: 0 .5rem;
        max-width: 96%;
        margin: 1rem 1.6%;
    }

    .Set_pMB {
        padding: 0;
        padding-right: 0px;
        padding-left: 0px;
    }

    .weekButton:focus {
        box-shadow: none;
    }

    .appointmentDetails .form-group:has(input[type=text]), .appointmentDetails .form-group:has(input[type=email]), .appointmentDetails .form-group:has(input[type=date]) {
        padding-right: 0;
    }

    .appointmentDetails .form-check {
        padding-top: 5px;
    }

    .confirmBooking > div, .cancelBooking > div {
        position: static;
        text-align: center;
    }

    .ContinueBooking {
        text-align: center;
        margin: 2rem auto;
    }

        .confirmBooking button, .cancelBooking button, .ContinueBooking button {
            position: static;
        }



    .cancelBooking {
        justify-content: center;
    }

    .setParent_Height {
        display: inline-block;
        width: 100%;
        margin: 0 auto;
    }

    .AppointmentConfirmDetails {
        display: block;
        margin: 2rem auto;
    }

    .AppointmentConfirm h3 {
        font-size: var(--fs-150);
    }

    .switch-button {
        margin: 2rem auto 1rem 0;
        float: none;
    }



    .SerachProfile {
        margin-bottom: 2rem;
    }

    .confirmBooking button {
        margin-bottom: 2rem;
    }

    .serviceLocationV2 {
        width: 100%;
        margin: 0 4%;
    }

    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker,
    .select2-container .select2-selection--single, .dxbl-text-edit, .dxbl-dropdown > .dxbl-dropdown-dialog.dxbl-edit-dropdown {
        width: 100%;
        min-width: 34rem;
        max-width: 32rem;
    }

    .cancelBooking, .ContinueBooking {
        text-align: center;
    }

    .weekContainerMobile .weekButton, .weekButton {
        max-width: 96%;
        margin: 1rem 1.6%;
    }

    .seven-cols .col-lg-1 {
        width: 24.333333%;
    }

    .AligrnRow_R {
        margin-left: 0;
    }
}

@media(max-width: 860px) {
    .serviceLocation {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .cancelBooking {
        margin-bottom: 0;
    }

    .ContinueBooking {
        margin-top: 0;
        padding-top: 0;
    }

    .heading button {
        margin: 0 auto 0 0rem;
    }

    .serviceLocationV2 {
        width: 100%;
        margin: 0;
    }

    .container-fluid .row div.serviceLocation div.serviceAndLocationSelect, .DatePicker, .select2-container .select2-selection--single, .dxbl-text-edit {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
    }
}

@media(max-width: 780px) {

    .errorHeading {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-top: 0rem;
        padding-bottom: 1.5rem;
        margin-top: 1.5rem;
        background: #ffdf00;
        flex-direction: column;
        width: 100%;
    }

    .warningLogo {
        margin: 2rem 5% 2rem 5% !important;
    }

    .errorHeading p {
        padding: 0 1rem 0;
        text-align: center;
    }

    img.warningLogo {
        height: 2.8rem;
    }

    div.weekTimes {
        overflow-x: auto;
        height: 100%;
        overflow-y: auto;
        margin-bottom: 10rem;
    }
    .serviceSelect .serviceDisplay {
        max-width: 15rem;
        min-width: 15rem;
        min-height: 15rem;
        margin: 1.2rem auto;
        float: unset;
    }

        .serviceSelect .serviceDisplay label {
            font-size: var(--fs-150);
            display: inline-block;
            max-width: 12rem;
            margin: 0 auto
        }

    .serviceDisplay .row:last-child img {
        height: 5rem;
    }

    .serviceLocation {
        display: block;
    }

    .isHiddenMB, .DS_Banner {
        display: none;
    }

    img.MB_Banner {
        display: block;
        width: 100%;
        margin: 2rem auto;
    }

    .Set_Banner {
        padding-right: 0;
    }

    .heading button {
        padding: 23px 0px 22px 0;
    }

    .ErroBox {
        flex-direction: column-reverse;
        height: calc(100vh - 9.3rem);
    }

        .ErroBox img {
            margin: 2rem auto;
        }

        .ErroBox .ClickHere {
            margin: 2rem auto;
            max-width: 30.6rem;
            font-size: 1.3em;
        }

        .ErroBox .Oops, .ErroBox .Cancel {
            margin-bottom: 0rem;
        }

    .Cancel_Box > div,
    .Cancel_Box > div > div > div, .Cancel_Box .Cancel {
        padding: 0;
    }

    .CancelClick {
        text-align: center;
    }

    .weekRow .col-4 {
        width: 100%;
        text-align: center;
    }

        .weekRow .col-4 .weekButton {
            width: 10.2rem;
            display: inline-block;
        }

    .weekHead > div > div > div > span {
        background: transparent;
        font-size: var(--fs-150);
        font-weight: 600;
        color: #989494;
        margin: 1rem 0;
        position: relative;
        justify-content: left;
        padding-left: 5rem;
        text-align: left;
    }

        .weekHead > div > div > div > span::after {
            content: "";
            position: absolute;
            height: 2.4rem;
            width: 2.4rem;
            left: 1rem;
            background-image: url(Images/Day_Date.png);
            background-position: center;
            background-size: contain;
        }
}

@media(max-width: 600px) {
    #backButton {
        margin: 5px 0px 0px 10px;
        padding: 0px;
        border: none;
        width: 100%;
        min-width: 4.5rem;
    }

    .AppointDetails {
    }

    .HeaderSpacer .backButton {
        margin-left: 2rem;
    }

    .heading .headingText {
        font-size: 2.5rem;
        padding: 0 0 1.5rem 0;
        margin: 0;
    }

    .ErroBox .row p.DC_h1 span, .ErroBox .row p.DC_h1 label {
        font-size: 1.8rem;
    }

    .Cancel_Box .Cancel {
        font-size: 3rem;
    }

    .HeaderSpacer {
        height: 4rem;
        display: flex !important;
        align-content: flex-end;
        flex-wrap: wrap !important;
    }

    .heading button {
        padding: 20px 0px 0 0;
    }

    .ErroBox p {
        margin-bottom: 3rem;
    }



    .ArrowBack {
        height: 4rem;
        width: 4rem;
    }

    .ErasePmb {
        padding: 0;
    }

    .Logo--img {
        margin: 0rem auto 0 auto;
        max-width: 170px;
    }

    .bookingProgress .progressImg, .bookingProgress .progressImgActive, .timeslotHeading input[type=image] {
        height: 3rem;
    }

    .timeslotHeading img {
        height: 3rem;
        width: 3rem;
        display: inline-block;
        min-width: 3rem;
    }

    .bookingProgress .progressText {
        font-size: 14px;
        margin-left: .8rem;
        font-weight: 500;
    }

    .serviceLocation label,
    .timeslotHeading div:last-child h3,
    .appointmentDetails .form-group label,
    .AppointmentConfirmDetails label, .AppointmentConfirmDetails span,
    .switch-button-checkbox + .switch-button-label, .switch-button:before {
        font-size: var(--fs-150);
    }

    button#backButton img {
        height: 4.5em;
    }

    .col-12 .DC_h1 {
        margin: 2rem 1rem 2rem 0rem;
    }


    .DC_h1 {
        font-size: var(--fs-150);
        width: 96%;
        margin: 2rem 1rem 2rem 4rem;
        text-align: left;
    }

    .col-11.col-sm-11.col-md-11.col-lg-9.col-xl-9.marginSet {
        padding-left: 5rem;
    }

    .marginSet {
        margin: 2rem 0;
    }

    .margin_XSet {
        margin-bottom: 2rem;
    }

    .confirmBooking, .cancelBooking, .ContinueBooking {
        padding-top: 1em;
        padding-bottom: 1em;
        align-items: center;
        justify-content: center;
    }

    .AppointmentConfirmDetails {
        padding: 1rem;
        margin-bottom: 1.5rem;
        z-index: 500;
        position: relative;
        box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 3px 1px -2px rgb(0 0 0 / 12%), 0 1px 5px 0 rgb(0 0 0 / 20%);
    }

    .AppointmentCancelDetails {
        margin-bottom: 1rem;
    }

    .ImageBottom {
        height: 40vh;
    }

    .serviceLocation {
        display: block;
    }

    .bookingProgress .progressContainer, div.bookingProgress {
        margin: .8rem auto
    }

    .serviceLocation label {
        margin-top: .5rem;
    }

    .timeslotHeading {
        padding-top: 2rem;
    }

    .progressStatus:last-child, .progressStatus:nth-of-type(2) {
        padding-left: 15px;
    }

    .modal.in .modal-dialog {
        transform: translate(0, calc(50vh - 50%)) !important;
    }

    .serviceLocationSpacing {
        padding-bottom: 1rem;
    }

    .switch-button-label-span {
        font-size: var(--fs-150);
    }

    .cancelBooking {
        margin-bottom: 0;
    }

    .ContinueBooking {
        margin-top: 0px !important;
        padding-top: 0px !important;
    }
}



@media (max-width: 375px) {
    .appointmentHeading h3 {
        font-size: 19px;
    }
}

@media (max-width: 360px) {

    html {
        font-size: 49%;
    }

    .ErroBox {
        flex-direction: column-reverse;
        height: 100%;
    }

    label[for="chkTerms"] a {
        margin-left: 2rem;
        margin-top: 1rem;
        display: inline-block;
    }

    .serviceSelect .serviceDisplay {
        margin: 1.2rem auto 1.2rem 0;
    }

    .ArrowBack {
        height: 3rem;
        width: 3rem;
        padding: 0;
    }

    .remove_Eli {
        display: none;
    }

    div.bookingProgress .Col_Sm {
        padding: 0;
    }

    .ErroBox .ClickHere {
        margin: 2rem auto;
        max-width: 24.6rem;
        max-width: 24.6rem;
        font-size: 1.3em;
    }

    .progressStatus:nth-of-type(2), .progressStatus:last-child {
        padding-left: calc(var(--bs-gutter-x)* .5);
    }
}

@media (max-width: 285px) {
    html {
        font-size: 45%;
    }

    .progressStatus:nth-of-type(2), .progressStatus:last-child {
        padding-right: 15px;
        padding-left: 15px;
    }

    .weekHead > div {
        padding-left: 0;
        padding-right: 0.5rem;
    }

    .appointmentHeading h3 {
        font-size: var(--fs-150);
    }



    .serviceSelect .serviceDisplay label {
        max-width: 12rem;
    }

    .AppointmentCalendarDetails button {
        min-width: 22rem;
        max-width: auto;
    }
}


/*Media Queries End*/
/*<-==========================================->*/
