@media (max-width: 320px) {
    section.specialist .slot-item a > span:first-of-type{position:inherit;display:block;transform:inherit;left:0;top:0}
}
@media (max-width: 400px) {
    section.specialist .slot-times .glyphicon{display:none}
}
@media (max-width: 768px) {
    section.specialist .header{left:15px;right:15px}
    section.specialist .slider-item > div{margin:0}
    section.specialist .slider-item > div .opacity{left:0;right:0}
    section.specialist .geopoint-item > div.main-body {margin-left:75px;padding-left:inherit;border-left:inherit;min-height:75px;}
    section.specialist .geopoint-item > div.main-body > img{width:75px;left:-75px;max-height:75px;}
    section.specialist .geopoint-item .triangle{border-width:0 40px 40px 0}
    section.specialist .geopoint-item .triangle > i{left:18px;font-size:18px;}
    section.specialist .geopoint-item > div > h1{margin-bottom:15px;}
    section.specialist .confirm-panel{width: 100%}
    section.specialist .slot-times{border-left:0}
    section.specialist .slot-times > div{padding-right:5px;padding-left:5px}
    section.specialist .slot-date > span{display:inline-block;margin-bottom:20px}
    section.specialist .slider-item .container-fluid {padding-left:0;padding-right:0;}
    .specialist-card {
        padding: 10px 5px;
        margin-bottom: 15px;
    }
    .specialist-card .d-flex {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    .specialist-card img {
        width: 100%;
        height: auto;
        margin-bottom: 10px;
    }
    .specialist-card .justify-content-between {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 5px;
    }
    .specialist-card .justify-content-end {
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100%;
        gap: 8px;
    }
    .specialist-card .next-available-slot {
        display: block;
        margin-top: 4px;
    }
    .specialist-card .d-flex.justify-content-end {
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100%;
        gap: 0;
        margin-top: 10px;
    }
    .specialist-card .reserve-btn {
        width: 100%;
        height: 44px;
        font-size: 16px;
        margin-left: 0 !important;
        margin-bottom: 8px;
    }
    .specialist-card .reserve-btn + .reserve-btn {
        margin-left: 0 !important;
        margin-top: 8px;
    }
}
@media (min-width: 769px) and (max-width: 992px) {
    section.specialist .header{left:15px;right:15px}
    section.specialist .slider-item > div{margin:0}
    section.specialist .slider-item > div .opacity{left:0;right:0}
    section.specialist .header h1{font-size:24px}
    section.specialist .slot-times{border-left:0}
    section.specialist .slot-date > span{display:inline-block;margin-bottom:20px}
    section.specialist .confirm-panel{width: 100%}
    section.specialist .slider-item .container-fluid {padding-left:0;padding-right:0;}
}
@media (max-width: 480px) {
    .specialist-card {
        font-size: 16px;
    }

    .specialist-card .reserve-btn {
        font-size: 13px;
        padding: 8px 0;
    }
}