/**
 * Booked Plugin
 */
body.ecoclean .booked-calendar-wrap {
    margin: 0;
}

body.ecoclean .booked-calendar-wrap .booked-calendar {
    border-collapse: collapse;
}

body.ecoclean table.booked-calendar thead th {
    border: 0;
    overflow: hidden;
}
body.ecoclean #booked-profile-page input[type=submit].button-primary,
body.ecoclean table.booked-calendar input[type=submit].button-primary,
body.ecoclean .booked-list-view input[type=submit].button-primary,
body.ecoclean .booked-modal input[type=submit].button-primary,
body.ecoclean .booked-modal button.cancel {
    font-weight: 400 !important;
}

body.ecoclean table.booked-calendar td {
    height: 80px !important;
}

body.ecoclean table.booked-calendar td > span {
    line-height: 79px !important;
}

body.ecoclean table.booked-calendar td {
    font-size: 14px;
    font-weight: 300;
}

body.ecoclean table.booked-calendar thead th .monthName {
    font-size: 30px;
    font-weight: 300;
    letter-spacing: 0.2em;
    line-height: 28px;
    text-transform: none;
}

body.ecoclean table.booked-calendar th .monthName a {
    font-family: 'Yantramanav', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 19px;
    letter-spacing: normal;
    top: -5px;
}
body.ecoclean table.booked-calendar th .monthName a,
body.ecoclean table.booked-calendar th a.page-left > i,
body.ecoclean table.booked-calendar th a.page-right > i {
    display: none;
}

body.ecoclean table.booked-calendar th a.page-left,
body.ecoclean table.booked-calendar th a.page-right {
    border: 1px solid rgba(225, 225, 225, 0.5);
    border-radius: 50%;
    color: #a0a0a0;
    width: 38px;
    height: 38px;
}
body.ecoclean table.booked-calendar th a.page-left {
    top: 16px;
    left: 0;
}
body.ecoclean table.booked-calendar th a.page-right {
    top: 16px;
    right: 0;
}
body.ecoclean table.booked-calendar th a.page-left:after,
body.ecoclean table.booked-calendar th a.page-right:after {
    position: absolute;
    top: 9px;
    font-size: 16px;
}

body.ecoclean table.booked-calendar th a.page-left:after {
    font-family: 'rt-icons-2';
    content: '\f104';
    left: 14px;
}

body.ecoclean table.booked-calendar th a.page-right:after {
    font-family: 'rt-icons-2';
    content: '\f105';
    right: 14px;
}

body.ecoclean table.booked-calendar tr.entryBlock td {
    padding: 36px 40px 24px;
}

body.ecoclean table.booked-calendar .booked-appt-list {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    padding: 0;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list h2 {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-transform: unset;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list h2 strong {
    font-weight: 500;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-time {
    font-size: 14px;
    font-weight: 300;
    line-height: 2.1429;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .spots-available {
    font-size: 14px;
    font-weight: 500;
    line-height: 2.1429;
    text-transform: none;
    float: right;
    width: 50%;
}
body.ecoclean table.booked-calendar,
body.ecoclean table.booked-calendar thead {
    background: transparent !important;
}
body.ecoclean table.booked-calendar thead th .page-right,
body.ecoclean table.booked-calendar thead th .page-left,
body.ecoclean table.booked-calendar thead th {
    color: #a0a0a0 !important;
}
body.ecoclean table.booked-calendar tr.days,
body.ecoclean table.booked-calendar thead tr.days th {
    background: #0082ca !important;
    color: #ffffff !important;
}
body.ecoclean table.booked-calendar thead .days {
    border: 0 !important;
    border-radius: 5px 5px 0 0  !important;
}

body.ecoclean table.booked-calendar thead th .monthName {
    color: #3c3c3c !important;
    font-weight: 300;
    font-size: 36px;
    font-size: 3.6rem;
    letter-spacing: 0;
    font-family: 'Yantramanav', sans-serif;
}
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot {
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-time {
    height: 52px;
    padding-top: 10px;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-people {
    height: 52px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    padding-right: 0 !important;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-people button {
    width: 100%;
    max-width: 180px;
    letter-spacing: 0;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .button-text {
    font-family: 'Yantramanav', sans-serif;
    font-weight: 600;
    font-size: 14px;
}
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-time .timeslot-range {
    font-weight: 400;
}
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-time i.fa {
    font-size: 18px;
}

body.ecoclean .booked-modal .bm-window,
body.ecoclean .booked-modal .bm-window p.booked-title-bar,
body.ecoclean .booked-modal .bm-window .booked-scrollable {
    border-radius: 0;
}

body.ecoclean .booked-modal .bm-window b,
body.ecoclean .booked-modal .bm-window strong {
    font-weight: 500;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-people button,
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-people button:hover {
    border: none;
}

body.ecoclean table.booked-calendar .booked-appt-list .timeslot .timeslot-people button,
body.ecoclean .booked-calendar .booked-appt-list .timeslot .timeslot-people button {
    position: relative;
    height: 40px;
    border-radius: 0;
    padding-right: 12px;
    padding-left: 12px;
}

body.ecoclean .booked-modal .bm-window .close {
    opacity: 0.5;
    top: 10px;
}

body.ecoclean .booked-modal .bm-window .close:hover {
    opacity: 0.9;
}

body.ecoclean .booked-modal input.button-primary[type="submit"]:hover {
    opacity: 0.5;
}

body.ecoclean table.booked-calendar td.today .date .number {
    line-height: 45px;
}

body.ecoclean table.booked-calendar tr.days th {
    border-width: 0 !important;
}

/* Transparent background */

body.ecoclean table.booked-calendar td,
body.ecoclean table.booked-calendar td.active {
    border-bottom: 1px solid #e1e1e1 !important;
}

body.ecoclean table.booked-calendar td.booked .date,
body.ecoclean table.booked-calendar td.booked:hover .date,
body.ecoclean table.booked-calendar td.booked .date span,
body.ecoclean table.booked-calendar td.booked:hover .date span {
    background: rgba(149,198,216, 0.2)  !important;
}

body.ecoclean table.booked-calendar td.booked .date span,
body.ecoclean table.booked-calendar td.booked:hover .date span {
    background: transparent !important;
}

body.ecoclean table.booked-calendar {
    border-bottom: 1px solid #e1e1e1;
}

body.ecoclean table.booked-calendar td {
    border-right: 1px solid #e1e1e1;
}
body.ecoclean table.booked-calendar td:first-child {
    border-left: 1px solid #e1e1e1;
}
body.ecoclean table.booked-calendar td:last-child {
    border-right: 1px solid #e1e1e1 !important;
}
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot {
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-people button[disabled],
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot .timeslot-people button[disabled]:hover,
.gray-dark-alt-color-bg-imp {
    background-color: #434343 !important;
    color: #a0a0a0 !important;
    border: 1px solid #434343 !important;
    cursor: default;
}
body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot:hover {
    background: transparent !important;
}

@media (max-width: 721px) {
    body.ecoclean table.booked-calendar tr.entryBlock td {
        height: auto !important;
    }

    body.ecoclean table.booked-calendar th a.page-left,
    body.ecoclean table.booked-calendar th a.page-right {
        top: 5px;
    }

    body.ecoclean table.booked-calendar th a.page-left::after {
        left: 14px;
    }
    body.ecoclean table.booked-calendar th a.page-right::after {
        right: 14px;
    }

    body.ecoclean .booked-calendar-wrap table.booked-calendar tr.week td.active .date {
        right: 0;
    }

    body.ecoclean table.booked-calendar td.today .date .number {
        line-height: 25px;
    }

    body.ecoclean .booked-calendar-wrap .booked-appt-list .timeslot button {
        width: auto;
        max-width: 100%;
    }
}

@media screen and (max-width: 1100px) {
    body.ecoclean table.booked-calendar td.today .date .number {
        line-height: 25px;
    }
}