/*Ban Link Buttons*/
.d-flex.flex-wrap.ban-link {
    justify-content: center;
    padding: 15px 0;
}
/*CONTENTAREA*/
.contentarea {
    padding: 0 0 45px;
    text-align: center;
    color: #313a3c;
}

.contentarea h1 {
    font-size: 45px;
    letter-spacing: normal;
    text-transform: uppercase;
    color: #242424;
}

.contentarea .page-header {
    margin-bottom: 30px;
}

.contentarea .page-header span {
    display: none;
}

.contentarea .container {
    max-width: 1163px;
}

/*MISSION*/
.mission {
    background-image: url(../images/mission-bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 44px;
}

.mission .container {
    max-width: 1300px;
}

.mission h2 {
    text-transform: uppercase;
    font-size: 50px;
    max-width: 600px;
    width: 100%;
    margin: 0;
}

.mission h2:before {
    content: '';
    background-image: url(../images/mission-shape.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 148px;
    min-height: 71px;
    position: absolute;
    left: -25px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    z-index: 1;
}

.mission p {
    font-size: 22px;
    line-height: 141%;
}
.mission a.main-btn.transition {
    display: block;
    margin: 0;
}

.miss-title-wrapper.col-12.col-lg-6.d-flex.align-items-center.align-items-lg-start {
    justify-content: flex-end;
    padding-right: 123px;
}

/*DISCOVER*/
.discover {
    padding: 47px 0;
    display: flex;
    justify-content: center;
    align-items: stretch;
}

.discover h2 {
    letter-spacing: 2px;
    text-transform: uppercase;
}

.discover .container {
    display: flex;
    justify-content: center;
    align-items: stretch;
    height: 100%;
}

/*SHOWCASE*/
.showcase {
    padding: 45px 0 24px;
}

.showcase .container:nth-child(1) {
    max-width: 820px;
    margin-bottom: 60px;
}

.showcase .container {
    max-width: 100%;
    width: 100%;
    padding: 0 5px;
}
.showcase .container .row.d-flex {
    justify-content: center;
    flex-wrap: nowrap;
}
.showcase h2 {
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #242424;
}

.showcase .show-box {
    display: flex;
    max-width: 300px;
    padding: 15px 7.5px;
}

.showcase .show-wrapper {
    display: flex;
    max-width: calc(10vw + 100px);
    min-height: 467px;
    padding: 5px 25px;
    flex-flow: column;
    align-items: center;
}
.showcase .show-wrapper:after {
    content: '';
    width: 1px;
    height: 85%;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background-color: #c7c7c7;
}
.showcase .show-wrapper.surgery:after {
    display: none;
}
.showcase h3 {
    font-family: 'Source Sans Pro', sans-serif;
    color: #242424;
    font-weight: 700;
    letter-spacing: 3px;
    min-height: 100px;
}
.showcase a img {
    width: 100%;
    max-width: calc(10vw + 25px);
}

.showcase a p {
    margin-top: 0;
}

.showcase .show-pic {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
}

.showcase .showcase-hover,
.new-patient .showcase-hover {
    position: absolute;
    top: 0;
    opacity: 0;
}

.showcase .show-wrapper:hover {
    background-color: #242424;
}

.showcase .show-wrapper:hover .showcase-hover,
.new-patient .patient-box .show-wrapper:hover {
    opacity: 1;
}

.showcase .show-wrapper:hover .show-for-hover,
.new-patient .patient-box .show-wrapper:hover {
    opacity: 0;
}

.showcase .show-wrapper:hover * {
    color: #fff;
}

/*NEW PATIENT*/
.new-patient {
    padding: 72px 0 91px;
}

.new-patient .patient-wrapper {
    max-width: 1344px;
    margin: 0 auto;
    padding: 90px 0 53px;
}

.new-patient .container {
    max-width: 1300px;
}

.new-patient .patient-wrapper .container:nth-child(1) {
    max-width: 950px;
    margin-bottom: 40px;
}

.new-patient .new-border {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
}

.new-patient .patient-container {
    max-width: 324px;
    margin: 0 auto;
}

.new-patient .patient-container {
    max-width: 335px;
}

.new-patient .patient-pic {
    display: flex;
    justify-content: center;
    align-items: center;
}

.new-patient h2 {
    margin-bottom: 12px;
    text-transform: uppercase;
    font-weight: 400;
}

.new-patient .patient-box .patient-pic {
    position: relative;
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.new-patient .patient-box {
    display: flex;
    min-height: 300px;
    align-items: center;
}

.new-patient .patient-box:hover {
    background-color: #fff;
}

.new-patient .patient-box:hover * {
    color: #1b578a;
}

.new-patient .patient-box:hover .show-for-hover {
    opacity: 0;
}

.new-patient .patient-box:hover .showcase-hover {
    opacity: 1;
}

/*TEAM*/
.loaded .team {
    background-image: url(../images/team.jpg);
}

.loaded.webp .team {
    background-image: url(../images/team.webp);
}

/*SLEEP-SOLUCTION*/
.sleep-soluction {
    position: relative;
    color: #313a3c;
    background: linear-gradient(98deg, #f1f1f1 4.55%, #d5d5d5 99.59%);
}

.sleep-soluction h2 {
    margin-bottom: 12px;
    text-transform: uppercase;
    color: #242424;
}

.sleep-soluction .container:nth-child(2) {
    max-width: 941px;
    margin-bottom: 40px;
}

.sleep-soluction .container {
    max-width: 1450px;
}

.sleep-soluction .sleep-wrapper {
    display: flex;
    padding: 40px 15px;
    background-color: #fff;
    align-items: stretch;
    filter: drop-shadow(0px 4px 10px rgba(0, 0, 0, 0.25));
}

.sleep-soluction .sleepbox {
    display: grid;
}

.sleep-soluction .sleep-wrapper .sleep-container {
    display: flex;
    max-width: 330px;
    margin: 0 auto;
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
}

.sleep-soluction .sleep-wrapper .sleep-container h3 {
    margin-bottom: 15px;
}

.sleep-soluction .sleep-wrapper .sleep-title {
    text-align: center;
}

.sleep-soluction .sleep-wrapper .sleep-container ul {
    margin: 0;
}

.sleep-container ul li {
    background-image: url(../images/sleep-check.svg);
}

.sleep-soluction .sleep-wrapper .sleep-container ul li {
    display: flex;
    margin-bottom: 10px;
    padding-left: 32px;
    list-style: none;
    background-repeat: no-repeat;
    background-position-y: 7px;
    align-items: center;
}

.sleep-soluction .sleep-wrapper p {
    text-align: center;
}

.sleep-soluction .sleep-watermark {
    position: absolute;
    top: -100px;
    width: 100%;
}

.sleep-soluction h4 {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 600;
    line-height: 120%;
    margin-bottom: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #545d60;
}

.sleep-soluction h3 {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    line-height: 120%;
    text-align: center;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #242424;
}

.sleep-soluction .main-btn.transition.secondary-btn {
    margin: 30px auto;
}

.sleep-soluction .external-link {
    display: none;
}

.team {
    width: 100%;
    height: 43vw;
}

/*REVIEW*/
.review {
    padding: 50px 0;
}

.review .container {
    max-width: 1345px;
}

.review h2 {
    text-transform: uppercase;
    color: #242424;
}

.review h3 {
    text-transform: uppercase;
    color: #696969;
}

.review a.main-btn.secondary-btn {
    margin-right: 25px;
}

/*REVIEW*/
.review .slides {
    min-height: 150px;
    color: #696969;
}

.review .patient-name {
    font-size: 23px;
    font-weight: 700;
    line-height: 138%;
    margin-top: 40px;
    letter-spacing: 2px;
    text-transform: initial;
    color: #696969;
}

.review .slide-container {
    margin-bottom: 50px;
    padding-bottom: 50px;
}

/*REVIEW ARROWS*/
.review .arrow {
    display: none;
}

.review a.main-btn {
    margin: 0;
}

/*REVIEW BREADCRUMBS*/
.review .number-crumb-container .option {
    width: 15px;
    height: 15px;
    margin-right: 15px;
    opacity: 1;
    border: 1.5px solid #1b578a;
    background: transparent;
}

.review .number-crumb-container .option:last-child {
    margin-right: 0;
}

.review .number-crumb-container .option.selected {
    background: #1b578a;
}

.review .number-crumb-container {
    justify-content: flex-start;
}

/*INSTAGRAM*/
.instagram-wrapper {
    padding: 40px 0;
    background-color: #121212;
}

.instagram-wrapper .eapps-instagram-feed-header-container {
    margin-bottom: 60px;
}

.eapps-instagram-feed-header-inner {
    max-width: 100%;
}

.es-header-user-full-name {
    color: #fff;
}

#eapps-instagram-feed-1 .eapps-instagram-feed-header {
    background: #121212 !important;
    color: #fff !important;
}

#eapps-instagram-feed-1 a.eapps-instagram-feed-header-follow-button,
#eapps-instagram-feed-1 a.eapps-instagram-feed-header-follow-button:hover {
    color: #121212 !important;
}

#eapps-instagram-feed-1 a.eapps-instagram-feed-header-follow-button,
#eapps-instagram-feed-1 a.eapps-instagram-feed-header-follow-button:hover {
    background: #fff !important;
}

.eapps-instagram-feed-posts-grid-load-more-text.eapps-instagram-feed-posts-grid-load-more-text-visible {
    color: #121212 !important;
    background: #fff !important;
}

/*CTA*/
.cta {
    padding: 91px 25px;
}

.cta .container {
    max-width: 1344px;
    background: #121212;
    padding: 99px 0 107px;
}

.cta h2 {
    font-weight: 600;
    margin-bottom: 30px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #fff;
}

@media screen and (min-width: 992px) {
    .contentarea {
        padding: 64px 0 73px;
    }

    .contentarea h1 {
        font-size: 45px;
        line-height: 120%;
    }

    .contentarea a.main-btn {
    }

    .mission {
        display: flex;
        min-height: 552px;
        align-items: center;
    }

    .mission h2 {
        margin-bottom: 20px;
        position: relative;
    }

    .mission .miss-title {
        margin-top: 16px;
        padding-left: 25px;
        align-items: flex-start;
    }

    .showcase {
        padding: 60px 0;
    }

    .new-patient {
        padding: 45px 0 192px;
    }

    .new-patient h3 {
        font-size: 30px;
        max-width: 86%;
        margin: 15px auto 15px;
        text-align: center;
        letter-spacing: 3px;
    }

    .team {
        min-height: 793px;
        background-attachment: fixed !important;
        background-position-y: 200px !important;
    }

    .sleep-soluction {
        padding: 123px 0 93px;
    }

    .review {
        padding: 50px 0;
    }

    .review .reviews-section {
        max-width: 665px;
    }

    .cta {
        padding: 90px 25px;
    }

    .cta .container {
        display: flex;
        min-height: 300px;
        padding: 40px 25px;
        align-items: center;
        justify-content: center;
    }

    .instagram-wrapper {
        padding: 100px 0;
    }
}

@media screen and (max-width: 1400px) {
    .review a.main-btn {
        letter-spacing: 0;
    }
}

@media (max-width: 1200px) {
    .miss-title-wrapper.col-12.col-lg-6.d-flex.align-items-center.align-items-lg-start {
        padding-right: 60px;
    }
}

@media screen and (max-width: 1025px) {
    .showcase .show-wrapper {
        margin: 0 auto;
    }
}

@media screen and (max-width: 991px) {
    .contentarea a.main-btn,
    .mission a.main-btn {
        display: inline-flex;
        width: 100%;
        max-width: 264px;
        justify-content: center;
    }

    .mission {
        font-size: 18px;
        line-height: 148%;
        text-align: center;
        letter-spacing: 1px;
    }

    .mission .miss-title-wrapper {
        margin-bottom: 30px;
        flex-flow: column;
    }

    .miss-title-wrapper.col-12.col-lg-6.d-flex.align-items-center.align-items-lg-start {
        padding-right: 0;
        max-width: 400px;
        margin-right: auto;
        margin-left: auto;
    }

    .mission h2 {
        max-width: 350px;
    }

    .mission h2:before {
        left: 0;
    }

    .showcase {
        padding-bottom: 0;
    }
    .showcase a img {
        max-width: 160px;
    }
    .showcase .container:nth-child(1) {
        margin-bottom: 20px;
    }

    .showcase .show-box:nth-child(-n + 4) {
        margin-bottom: 35px;
    }

    .new-patient {
        padding-top: 25px;
        padding-bottom: 0;
    }

    .new-patient .new-border {
        border: none;
    }

    .new-patient .patient-box {
        min-height: auto;
    }

    .new-patient .patient-box:nth-child(-n + 2) {
        margin-bottom: 35px;
    }

    .new-patient .patient-container {
        padding: 30px 15px 0;
    }

    .sleep-soluction {
        padding-top: 80px;
        padding-bottom: 60px;
    }

    .sleep-soluction .sleep-watermark {
        position: absolute;
        top: -1%;
        width: 100%;
    }

    .sleep-soluction .sleep-watermark img {
        max-width: 19%;
    }

    .sleep-soluction .sleep-wrapper {
        width: 100%;
        max-width: 500px;
        margin: 0 auto;
        padding: 55px 15px 30px;
    }

    .sleep-soluction h4 {
        font-size: 18.1624px;
        font-weight: 600;
        line-height: 120%;
        letter-spacing: 2.17949px;
        text-transform: uppercase;
    }

    .sleep-soluction h3 {
        font-size: 25.4274px;
        line-height: 120%;
        letter-spacing: 2.17949px;
    }

    .sleep-soluction .sleepbox:nth-child(-n + 2) {
        margin-bottom: 35px;
    }

    .review {
        text-align: center;

        padding-bottom: 0;
    }
    .review .rev-title h2 {
        margin: 15px 0;
    }
    .review .container {
        padding: 0;
    }

    .review .rev_content {
        padding: 0 25px 35px;
        display: flex;
        flex-flow: column;
        justify-content: center;
        align-items: center;
    }

    .review h3 {
        font-size: 23px;
        font-weight: 600;
        line-height: 130%;
        letter-spacing: 1.5px;
    }

    .review .number-crumb-container {
        justify-content: center;
    }

    .cta .container {
        padding: 50px 15px;
    }

    .new-patient .patient-wrapper .container:nth-child(1) {
        margin-bottom: 20px;
    }
    .new-patient .patient-container h3 {
        margin: 15px 0;
    }
    .sleep-soluction .sleep-wrapper {
        filter: drop-shadow(0px 2.90598px 7.26496px rgba(0, 0, 0, 0.25));
    }
}
@media screen and (max-width: 887px) {
    .showcase .container .row.d-flex {
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 767px) {
    .showcase .show-box:nth-child(-n + 5) {
        margin-bottom: 15px;
    }

    .showcase .container {
        padding: 0;
    }

    .showcase .row {
        margin: 0;
    }

    .showcase .show-box {
        padding: 0;
    }

    .showcase .show-wrapper {
        width: 100%;
        max-width: 100%;
    }

    .review .review-link {
        flex-flow: column;
    }

    .review a.main-btn.secondary-btn {
        margin-right: 0;
        margin-bottom: 25px;
    }
    a.show-wrapper br {
        display: none;
    }
    .mission {
        padding: 44px 5px;
    }
    .mission p {
        font-size: 18px;
        line-height: 2;
    }
}

@media screen and (max-width: 607px) {
    .mapsection {
        height: 40vw;
    }

    .showcase .show-wrapper {
        min-height: 400.86px;
    }

    .cta a.main-btn {
        font-size: 15px;
    }

    .loaded .team {
        background-image: url(../images/team-m.jpg);
    }

    .loaded.webp .team {
        background-image: url(../images/team-m.webp);
    }
}
@media screen and (max-width: 501px) {
    .showcase .show-wrapper:after {
        display: none;
    }
    .showcase a p {
        margin: 10px 0;
    }

    .mission h2 {
        font-size: 36px;
        max-width: 270px;
    }

    .miss-title-wrapper.col-12.col-lg-6.d-flex.align-items-center.align-items-lg-start {
        max-width: 300px;
    }
}
