@media (min-width: 1500px) {
    #services .container,
    #reviews .container.c-2,
    #areas .container,
    #service-boxes .container,
    #program-enroll .container {
        max-width: 1420px;
    }
}

@media (max-width: 1599px) {
    .home #hero {
        height: 520px;
    }
    .home #hero .photo {
        top: -200px;
    }
    .home #hero .photo > div {
        width: 930px;
        height: 930px;
        background-size: 930px auto;
    }
}

@media (max-width: 1499px) {
    #header .logo, #header .contact {
        width: auto;
    }
    #header .btn.cta-primary {
        margin-left: 10px;
    }

    .home #hero {
        height: 500px;
    }
    #hero .hl-text-hero p {
        font-size: 19px;
    }
    #hero .hl-title-hero {
        font-size: 46px;
    }
    .home #hero .photo {
        top: -160px;
    }
    .home #hero .photo > div {
        width: 840px;
        height: 840px;
        background-size: 840px auto;
    }

    #services .box img {
        max-height: 80px;
    }
    #services .box .title {
        font-size: 32px;
    }

    #about .fox {
        right: -50px;
    }

    #schedule .hl-title-schedule {
        font-size: 50px;
    }
    #schedule .hl-text-schedule p {
        font-size: 27px;
    }
    #schedule .photo > div {
        right: 0;
    }

    #areas .box {
        padding: 50px 50px 40px 50px;
    }
}

@media (max-width: 1399px) {
    #top-links {
        padding-right: 0;
        padding-left: 0;
    }

    #header {
        padding-left: 30px;
        padding-right: 30px;
    }
    #header .logo img {
        max-height: 50px;
    }
    #header .phone {
        display: none;
    }   

    .btn {
        width: 210px;
        font-size: 17px;
    }
    .btn.cta-primary {
        height: 55px;
    }

    .hl-slogan {
        font-size: 17px;
    }
    .hl-title {
        font-size: 38px;
    }

    .home #hero, #hero {
        height: 460px;
    }
    #hero .hl-title-hero {
        font-size: 44px;
    }
    .home #hero .photo {
        top: -125px;
    }
    .home #hero .photo > div {
        width: 740px;
        height: 740px;
        background-size: 740px auto;
    }

    #services .hl-title, #service-boxes .hl-title, #club-details .hl-title, #faq-wrapper .hl-title, #program-enroll .hl-title {
        padding-bottom: 20px;
    }
    #services .box img {
        max-height: 74px;
    }
    #services .box .title {
        font-size: 29px;
        padding: 20px 0;
    }

    #about .content::before {
        left: 28%;
    }
    #about .content .btns {
        margin-top: 25px;
    }
    #about .fox {
        max-height: 520px;
    }

    #slogans .box img {
        max-height: 98px;
    }
    #slogans .box p {
        font-size: 23px;
        line-height: 29px;
    }

    #promo .item .top {
        min-height: 160px;
    }
    #promo .item .top::before {
        height: 475px;
    }
    #promo .item .top .value {
        font-size: 40px;
    }
    #promo .item .top .title {
        font-size: 18px;
        line-height: 125%;
    }

    #reviews .review .box {
        padding: 35px;
    }

    #schedule .photo > div {
        width: 480px;
        height: 480px;
    }
    #schedule .hl-title-schedule {
        font-size: 46px;
    }
    #schedule .hl-text-schedule p {
        font-size: 25px;
    }

    #partners .row:nth-child(2) .partner img {
        max-height: 110px;
    }

    #areas .box {
        padding: 40px 30px 35px 35px;
    }
    #areas .hl-text ul {
        margin-bottom: 25px;
    }
    #areas .hl-text li {
        padding-left: 20px;
    }
    #areas .map > div {
        background-position: bottom center;
    }

    #footer .logo img {
        max-height: 72px;
        margin-bottom: 30px;
    }
    #footer .links p, #footer .links ul li {
        margin-top: 8px;
    }

    /* SUBPAGES */

    #service-boxes .box {
        padding: 40px 30px 35px 30px;
    }
    #service-boxes .box .title {
        font-size: 30px;
    }

    #service-banner .box {
        padding: 40px;
    }
    #service-banner .box::before {
        width: 990px;
    }
    #service-banner .box .title {
        font-size: 26px;
        line-height: 120%;
    }

    #service-info .entry-content {
        padding-top: 10px;
        padding-left: 25px;
    }

    #program-enroll .box {
        padding: 30px;
    }
    #program-enroll .box .title br,
    #program-enroll .box p br {
        display: none;
    }

    #club-table .box {
        padding: 45px;
    }
    #club-table.program img.fox {
        max-height: 500px;
    }
    #club-table .table-headline h4 {
        font-size: 26px;
    }

    #about-team .item .photo > div {
        width: 220px;
        height: 220px;
    }
    #about-team .item .content {
        padding: 125px 30px 30px 30px;
        margin-top: -95px;
    }

    #contact-wrapper .form {
        margin-top: -35px;
    }
    #contact-wrapper .form .box {
        padding: 40px 40px;
    }
    #contact-wrapper .form .box .title {
        font-size: 36px;
    }

    #contact-wrapper .item .icon img {
        max-height: 94px;
    }
    #contact-wrapper .item .text {
        width: calc(100% - 94px);
    }
    #contact-wrapper .item .title {
        font-size: 28px;
    }

    #contact-wrapper .socials img {
        max-height: 62px;
    }

    .entry-content h1, .entry-content h2, .post-title {
        font-size: 32px;
        line-height: 38px;
    }
    .entry-content blockquote p {
        line-height: 34px;
    }

    /* BLOG */

    .news > a .photo {
        height: 250px;
    }
    .news .content {
        padding: 35px 40px 35px 40px;
    }
    .news .content h2 {
        font-size: 25px;
        line-height: 29px;
    }
    .news .content p {
        font-size: 17px;
    }
    .news .content .more {
        width: calc(100% - 80px);
        left: 40px;
    }
}

@media (max-width: 1199px) {
    .wrapper {
        padding-top: 65px;
        padding-bottom: 65px;
    }  

    #header {
        padding-left: 25px;
        padding-right: 25px;
    }

    .navigation {
        position: absolute;
        right: 25px;
    }
    .navbar {
        margin-right: 0;
        margin-top: 0;
    }
    .icon-bar {
        background-color: #000;
    }
    .navbar-collapse #main-menu {
        display: flex;
        flex-direction: column;
        position: absolute;
        width: 310px;
        max-height: 80vh;
        top: 50px;
        right: -20px;
        padding: 30px 25px;
        background-color: #FFF;
        box-shadow: 0 8px 15px rgba(0, 0, 0, .15);
        transform-origin: 50% 0;
        transform: scaleY(0);
        transition-duration: 250ms;
        overflow-y: auto;
    }
    .navbar-collapse.show #main-menu {
        transform: scaleY(1);
    }

    .navbar-collapse #main-menu > li {
        width: 100%;
        height: auto;
        margin: 0;    
    }
    .navbar-collapse #main-menu > li:first-of-type {
        display: block;
    }
    .navbar-collapse #main-menu > li > a {
        color: #000;
        padding: 12px 15px;
        margin: 0;
        border-bottom: 0;
    }
    .navbar-collapse #main-menu > li.current-menu-item > a,
    .navbar-collapse #main-menu > li.current-page-parent > a,
    .navbar-collapse #main-menu > li:hover > a {
        color: var(--main) !important;
        border: 0;
    } 
    .navbar-collapse #main-menu > li.menu-item-has-children > a::after,
    .navbar .navbar-nav .dropdown .dropdown > .dropdown-item::after {
        display: none;
    }
    .navbar-collapse #main-menu li.menu-item-has-children > span.mobile-dropdown {
        width: 32px;
        height: 32px;
        text-align: center;
        cursor: grab;
        position: absolute;
        right: 0;
        top: 0;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown {
        width: 42px;
        height: 42px;
    }
    .navbar-collapse #main-menu li.menu-item-has-children > span.mobile-dropdown::after {
        content: "\f107";
        color: #000;
        font-family: "Font Awesome 6 Free";
        font-size: 13px;
        font-weight: 700;
        line-height: 32px;
        border: 0;
        padding: 0;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown::after {
        line-height: 42px;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown.active-child::after {
        color: var(--main);
    }
    .navbar-collapse #main-menu li:hover > a::before, 
    .navbar-collapse #main-menu li.current-menu-item > a::before {
        display: none !important;
    }
    .navbar-collapse #main-menu li ul.dropdown-menu {
        display: none;
        position: relative;
        width: 100%;
        padding: 0 0 10px 15px;
        border: 0 !important;
        box-shadow: 0 0 0;
        top: 0; left: 0;
        visibility: visible;
        opacity: 1;
    }
    .navbar-collapse #main-menu li > ul.dropdown-menu > li > a {
        font-size: 15px;
        padding: 6px 20px;
        outline: none;
    }
    .navbar-collapse #main-menu li > ul.dropdown-menu > li > a:hover,
    .navbar-collapse #main-menu li > ul.dropdown-menu > li > a:focus,
    .navbar-collapse #main-menu li > ul.dropdown-menu > li > a:active {
        color: var(--main);
        background-color: transparent;
    }

    #header .phone {
        display: block;
    }
    #header .contact {
        margin-right: 80px;
    }

    .btn.cta-primary {
        height: 53px;
    }
    .btn.cta-primary::after {
        width: 35px;
        height: 35px;
        right: -12px;
    }
    .btn.cta-secondary {
        height: 53px;
    }

    .hl-title {
        font-size: 36px;
    }

    .home #hero, #hero {
        height: 440px;
    }
    #hero .photo {
        right: -10%;
    }
    .home #hero .photo {
        top: -80px;
    }
    .home #hero .photo > div {
        width: 600px;
        height: 600px;
        background-size: 670px auto;
    }
    #hero .hl-title-hero {
        font-size: 42px;
    }
    #hero .hl-text-hero p {
        font-size: 18px;
    }

    #services .hl-title, #service-boxes .hl-title, #club-details .hl-title, #faq-wrapper .hl-title, #program-enroll .hl-title {
        padding-bottom: 15px;
    }
    #services .box:last-of-type {
        width: 100%;
    }

    #about {
        background-image: unset !important;
    }
    #about::before {
        display: none;
    }
    #about .photo > div {
        display: block;
        width: 100%;
        height: 400px;
        background-size: cover;
        background-position: center;
    }
    #about .fox {
        max-height: 480px;
        bottom: -410px;
    }

    #slogans .box img {
        max-height: 90px;
    }
    #slogans .box p {
        font-size: 20px;
        line-height: 25px;
        padding-left: 20px;
    }

    #promo:not(.items) .item:nth-child(n+3) {
        display: none;
    }
    #promo .item .box > img {
        max-height: 120px;
        top: -50px;
    }

    #reviews {
        padding-top: 220px;
    }
    #reviews .review .box {
        padding: 30px;
    }
    #reviews .review img {
        max-height: 20px;
    }

    #schedule .content {
        text-align: center;
    }
    #schedule .hl-text-schedule p {
        font-size: 23px;
    }
    #schedule .btns {
        justify-content: center;
        margin-top: 35px;
    }
    #schedule .photo {
        display: none;
    }

    #partners .row:nth-child(1) .partner img {
        max-width: 210px;
        max-height: 140px;
    }
    #partners .row:nth-child(2) .partner img {
        max-height: 70px;
    }

    #footer .logo {
        width: 100%;
        text-align: center;
        padding-bottom: 40px;
    }
    #footer .logo img {
        max-height: 68px;
        margin-bottom: 20px;
    }
    #footer .logo .btns {
        justify-content: center;
    }

    .copy p {
        text-align: center;
    }

    /* SUBPAGES */

    #service-banner .box {
        flex-direction: column;
    }
    #service-banner .box::before {
        display: none;
    }
    #service-banner .item::after {
        top: initial;
        bottom: -18px;
    }
    #service-banner .box .content, #service-banner .box .btns {
        width: 100%;
        text-align: center;
        justify-content: center;
    }
    #service-banner .box .title {
        color: #000;
        padding-bottom: 20px;
    }

    #service-info .entry-content {
        padding-top: 35px;
        padding-left: calc(var(--bs-gutter-x) * .5);
    }

    #faq-wrapper .accordion-header .accordion-title {
        padding: 26px 30px 20px 30px;
    }
    #faq-wrapper .accordion-header .accordion-title::before {
        right: 30px;
    }
    #faq-wrapper .accordion-body {
        padding: 0 20px 30px 30px;
    }

    #club-table .box {
        padding: 40px;
    }
    #club-table.program .table-headline h4 {
        font-size: 19px;
    }
    #club-table.program .table-box::before {
        width: 23%;
        height: calc(100% + 140px);
    }
    #club-table .column-2, #club-table .column-3 {
        width: 23%;
    }
    #club-table .column.column-1 p, #club-table.program .column.column-1 p b {
        font-size: 20px;
    }
    #club-table .table-headline h4 {
        font-size: 21px;
    }

    #about-wrapper .row > .entry-content {
        padding-top: 0;
        padding-bottom: 30px;
    }

    .about-values {
        padding-left: calc(var(--bs-gutter-x) * .5);
    }

    #contact-wrapper .content {
        display: flex;
        flex-wrap: wrap;
    }
    #contact-wrapper .item {
        width: 33.3333%;
        flex-direction: column;
    }
    #contact-wrapper .item:not(:last-of-type) {
        padding-bottom: 40px;
    }
    #contact-wrapper .item .text {
        width: 100%;
        text-align: center;
        padding-left: 0;
        padding-top: 25px;
    }
    #contact-wrapper .item p span {
        width: auto;
        padding-right: 5px;
    }
    #contact-wrapper .socials {
        width: 100%;
        padding-top: 0;
        text-align: center;
    }
    #contact-wrapper .form {
        margin-top: 0;
        margin-bottom: 50px;
    }

    .entry-content h1, .entry-content h2, .post-title {
        font-size: 30px;
        line-height: 36px;
    }
    .entry-content h3, .sitemap_by_click5 h2 {
        font-size: 26px;
        line-height: 32px;
    }
    .entry-content h4 {
        font-size: 22px;
        line-height: 28px;
    }

    .entry-content p, .entry-content ul li, .entry-content ol li {
        font-size: 18px;
        line-height: 30px;
    }

    .entry-content ul li {
        line-height: 26px;
        margin-top: 8px;
    }
    .entry-content ul li::before {
        line-height: 30px;
    }

    .entry-content blockquote {
        padding-left: 45px;
        margin: 35px 0;
    }
    .entry-content blockquote p {
        font-size: 19px;
        line-height: 33px;
    }

    /* BLOG */

    #index-wrapper .news:nth-child(n+3) {
        margin-top: 25px;
    }

    .news .photo {
        height: 480px;
    }

    #recent-posts .news:nth-child(n+4) {
        display: none;
    }
}

@media (max-width: 991px) {
    .wrapper {
        padding-top: 55px;
        padding-bottom: 55px;
    }  

    #top-links ul li {
        padding: 0 20px;
    }

    #header .logo img {
        max-height: 46px;
    }
    #header .phone {
        display: none;
    }

    .hl-text {
        padding-top: 12px;
    }
    .hl-text p, .hl-text li {
        font-size: 17px;
    }
    
    .home #hero, #hero {
        height: auto;
        /* margin-bottom: -160px; */
        margin-bottom: -1px;
        padding-top: 0 !important;
    }
    .home #hero .row, #hero .row {
        flex-direction: column-reverse;
    }
    #hero .photo {
        width: 100%;
        position: relative;
        left: 0; right: 0;
        /* padding-top: 40px; */
        padding-bottom: 40px;
    }
    .home #hero .photo, #hero .photo {
        top: initial;
        margin-top: -80px;
    }
    #hero .photo > div, .home #hero .photo > div {
        margin: 0 auto;
        background-size: cover;
    }
    #hero .content {
        text-align: center;
    }
    #hero .btns {
        justify-content: center;
        padding-top: 25px;
    }

    #hero + div {
        position: relative;
        z-index: 9;
    }

    #services .box, #service-boxes .item, #program-enroll .item {
        padding-top: 15px;
    }

    #about .fox {
        display: none;
    }

    #slogans .box {
        flex-direction: column;
        justify-content: center;
    }
    #slogans .box p {
        font-size: 19px;
        line-height: 24px;
        padding-left: 0;
        padding-top: 20px;
        text-align: center;
    }

    #promo .item .box::before {
        width: calc(100% - 30px);
        height: calc(100% - 30px);
        top: 15px;
        left: 15px;
    }
    #promo .item .box > img {
        top: 10px;
    }
    #promo .item .top {
        padding: 30px 25px 30px 25px;
    }
    #promo .item .top .value {
        font-size: 37px;
    }
    #promo .item .top .title {
        font-size: 17px;
        line-height: 120%;
    }
    #promo .item .bottom {
        padding: 15px 30px 40px 30px;
    }

    .slick-prev {
        left: -10px;
    }

    #schedule .hl-title-schedule {
        font-size: 42px;
    }
    #schedule .hl-text-schedule p {
        font-size: 20px;
    }
    #schedule .btns {
        margin-top: 25px;
    }

    #partners .row:nth-child(1) .partner img {
        max-width: 160px;
        max-height: 110px;
    }
    #partners .row:nth-child(2) {
        padding-top: 15px;
    }
    #partners .row:nth-child(2) .partner img {
        max-width: 115px;
        max-height: 60px;
    }

    #areas .hl-text ul {
        margin-bottom: 20px;
    }

    /* SUBPAGES */

    #service-boxes .box .title {
        font-size: 28px;
        padding-bottom: 15px;
    }
    #service-boxes .box p {
        font-size: 17px;
        line-height: 140%;
    }
    #service-banner .box {
        padding: 35px;
    }
    #service-banner .box .title {
        font-size: 24px;
        padding-bottom: 15px;
    }
    #service-info .photo > div {
        height: 440px;
    }

    #faq-wrapper .accordion-header .accordion-title {
        font-size: 20px;
        padding: 21px 20px 16px 20px;
    }
    #faq-wrapper .accordion-header .accordion-title::before {
        right: 20px;
        top: 20px;
    }
    #faq-wrapper .accordion-body {
        padding: 0 20px 25px 20px;
    }

    #club-table .box {
        padding: 35px;
    }
    #club-table.program img.fox {
        display: none;
    }
    #club-table.program .table-box {
        max-width: 100%;
    }
    #club-table.program .table-box::before {
        width: 25%;
        height: calc(100% + 100px);
        top: -50px;
    }
    #club-table .column-2, #club-table .column-3 {
        width: 25%;
    }
    #club-table.program .table-headline h4 {
        font-size: 18px;
    }
    #club-table .column.column-1 p, #club-table.program .column.column-1 p b {
        font-size: 19px;
    }
    #club-table .column p {
        font-size: 16px;
    }

    #club-details .item .entry-content {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .about-values .box {
        padding: 35px 20px 20px 20px;
    }
    .about-values .title {
        padding-bottom: 10px;
    }

    #about-team .item {
        padding-top: 35px;
    }
    .modal-body.item .content {
        padding-left: 0 !important;
    }

    #contact-wrapper .item .icon img {
        max-height: 90px;
    }
    #contact-wrapper .item .title {
        font-size: 25px;
    }
    #contact-wrapper .item p, #contact-wrapper .item address {
        font-size: 17px;
        line-height: 28px;
    }
    #contact-wrapper .socials img {
        max-height: 56px;
    }
    #contact-wrapper .form .box .title {
        font-size: 33px;
        padding-bottom: 10px;
    }

    .gform-theme--foundation .gform_fields {
        row-gap: 20px !important;
    }

    .entry-content h1::after, .entry-content h2::after, .post-title::after {
        width: 140px;
        margin-top: 20px;
    }

    .entry-content p, .entry-content ul li, .entry-content ol li {
        font-size: 17px;
        line-height: 28px;
    }

    .entry-content .js-video-button.video::after {
        font-size: 70px;
    }

    /* REVIEWS */

    .review-item .review {
        padding: 30px 15px;
    }

    /* BLOG */

    #index-wrapper .news:nth-child(n+2) {
        margin-top: 20px;
    }

    .news .photo {
        height: 420px;
    }
    .news > a .photo {
        height: 220px;
    }
    .news .content {
        padding: 30px 35px 30px 35px;
    }
    .news .content h2 {
        font-size: 23px;
        line-height: 27px;
    }
    .news .content .more {
        width: calc(100% - 70px);
        left: 35px;
        bottom: 35px;
    }
    .news .content .more::before {
        width: calc(100% - 160px);
    }
    .news .content .more span {
        height: 45px;
        font-size: 15px;
        line-height: 42px;
        padding: 0 30px;
    }

    .pagination, .sitemap-by-click5_pagination {
        margin-top: 40px;
    }

    #single-wrapper .back {
        margin-top: 50px;
    }

    #recent-posts .news:nth-child(n+3) {
        display: none;
    }
}

@media (max-width: 767px) {
    .wrapper {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    #top-links ul li {
        padding: 0 15px;
    }

    #header {
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 25px;
        padding-bottom: 25px;
    }
    #header .btn.cta-primary {
        display: none;
    }

    .navbar-collapse #main-menu {
        width: 280px;
        right: -15px;
        padding: 25px 20px;
    }

    .btn {
        width: 206px;
        height: 49px;
    }
    .btn.cta-primary, .btn.cta-secondary {
        height: 49px;
        padding-top: 2px;
    }

    .hl-slogan {
        font-size: 16px;
    }
    .hl-title {
        font-size: 33px;
    }
    .hl-text p, .hl-text li {
        font-size: 16px;
    }

    #hero .hl-title-hero {
        font-size: 36px;
    }
    #hero .hl-text-hero p {
        font-size: 17px;
    }
    #hero .btns {
        padding-top: 20px;
    }

    .home #hero .photo > div, #hero .photo > div {
        width: 500px;
        height: 500px;
    }

    .google-score .score {
        font-size: 38px;
    }
    .google-score .stars img {
        max-height: 15px;
    }
    .google-score .number {
        font-size: 11px;
    }
    .google-score .google-logo {
        max-height: 46px;
    }

    #services .box, #service-boxes .item, #program-enroll .item {
        padding-top: 10px;
    }
    #services .box a {
        padding-top: 30px;
        padding-bottom: 25px;
    }
    #services .box img {
        max-height: 70px;
    }
    #services .box .title {
        font-size: 26px;
        padding: 18px 0;
    }

    #about .photo > div {
        height: 360px;
    }

    #slogans .box {
        width: 100%;
    }
    #slogans .box:not(:last-of-type) {
        padding-bottom: 20px;
    }

    #promo .headline, #recent-posts .headline {
        padding-bottom: 10px;
    }
    #promo .item {
        padding-top: 15px;
    }
    #promo .item .box > img {
        top: -20px;
        right: 106px;
    }

    #schedule .hl-title-schedule {
        font-size: 38px;
    }
    #schedule .hl-text-schedule p {
        font-size: 18px;
    }

    #partners .row:nth-child(1) .partner img {
        max-width: 110px;
        max-height: 90px;
    }
    #partners .row:nth-child(2) .partner img {
        max-width: 85px;
        max-height: 40px;
    }

    #areas .box {
        padding: 30px 25px 30px 30px;
    }
    #areas .hl-text ul {
        columns: 2;
    }

    #footer .logo img {
        max-height: 64px;
        margin-bottom: 15px;
    }
    #footer .links .title {
        font-size: 15px;
    }
    #footer .links p, #footer .links ul li {
        font-size: 15px;
        margin-top: 6px;
    }

    .copy p {
        font-size: 15px;
    }

    /* SUBPAGES */

    #service-boxes .box {
        padding: 30px 20px 25px 20px;
    }
    #service-boxes .box .title {
        font-size: 26px;
        padding-bottom: 10px;
    }
    #service-boxes .box p {
        font-size: 16px;
    }
    #service-banner .item::after {
        display: none;
    }
    #service-banner .box .title {
        font-size: 22px;
    }
    #service-info .photo > div {
        height: 360px;
    }

    #faq-wrapper .accordion-header .accordion-title {
        font-size: 19px;
        line-height: 27px;
        padding: 20px 40px 16px 10px;
    }
    #faq-wrapper .accordion-body {
        padding: 0 15px 20px 10px;
    }

    #club-table .box {
        padding: 30px 20px;
    }
    #club-table.program .table-headline h4 {
        font-size: 17px;
    }
    #club-table.program .column.column-1 p {
        font-size: 15px;
    }
    #club-table .column.column-1 p, #club-table.program .column.column-1 p b {
        font-size: 17px;
    }
    #club-table .column img {
        max-height: 30px;
    }
    #club-table .table-headline h4 {
        font-size: 19px;
    }
    #club-table .table-box:not(:first-of-type) {
        padding-top: 30px;
    }

    #about-wrapper .row > .entry-content {
        padding-bottom: 20px;
    }

    .about-values .item {
        align-items: center;
    }
    .about-values .item .icon img {
        max-height: 34px;
    }
    .about-values .item .content {
        width: calc(100% - 34px);
    }
    .about-values .title {
        font-size: 27px;
    }
    .about-values .item {
        padding: 15px 20px
    }

    #about-team .item {
        padding-top: 30px;
    }

    #contact-wrapper .item {
        width: 100%;
    }
    #contact-wrapper .item:not(:last-of-type) {
        padding-bottom: 20px;
    }
    #contact-wrapper .form {
        margin-bottom: 45px;
    }

    h1, h2, h3, h4 {
        padding: 15px 0;
    }

    .entry-content h1, .entry-content h2, .post-title {
        font-size: 27px;
        line-height: 33px;
    }
    .entry-content h3, .sitemap_by_click5 h2 {
        font-size: 24px;
        line-height: 30px;
    }

    .entry-content p, .entry-content ul li, .entry-content ol li {
        font-size: 16px;
        line-height: 26px;
    }

    .entry-content ul li {
        margin-top: 6px;
    }
    .entry-content ul li::before {
        line-height: 28px;
    }

    .entry-content blockquote {
        padding-left: 40px;
        margin: 30px 0;
    }
    .entry-content blockquote p {
        font-size: 18px;
        line-height: 30px;
    }

    /* REVIEWS */

    .review-item .review {
        padding: 30px 0;
    }
    .review-item .review p:first-of-type:before {
        font-size: 120px;
        top: -47px;
        left: -20px;
    }
    .review-item .overview {
        font-size: 17px;
        padding-top: 20px;
    }

    /* BLOG */

    .pagination, .sitemap-by-click5_pagination {
        margin-top: 35px;
    }
    .pagination .page-item .page-link, .sitemap-by-click5_pagination .pagination-item, .sitemap-by-click5_pagination strong {
        font-size: 17px;
        padding: 20px 15px;
    }
    .pagination .page-item .page-link.next, .pagination .page-item .page-link.prev {
        padding: 0 27px;
        margin-top: 8px;
    }

    .news .photo {
        height: 330px;
    }

    #single-wrapper .back {
        font-size: 17px;
        margin-top: 40px;
    }
    #single-wrapper .back::after {
        width: 54px;
        height: 54px;
        top: -18px;
    }
}

@media (max-width: 575px) {
    .wrapper {
        padding-top: 40px;
        padding-bottom: 40px;
    }    

    #top-links .container-fluid {
        padding: 0;
    }
    #top-links ul li {
        font-size: 14px;
    }

    #header {
        top: 42px;
        padding-left: 15px;
        padding-right: 15px;
    }
    #header .logo img {
        max-height: 40px;
    }
    #header.sticky .logo img {
        max-height: 34px;
    }

    .navigation {
        right: 10px;
    }
    .navbar-collapse #main-menu {
        width: 260px;
        padding: 15px;
        right: -10px;
    }
    .navbar-collapse #main-menu > li > a {
        padding: 10px 15px;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown {
        width: 36px;
        height: 36px;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown::after {
        line-height: 36px;
    }

    .hl-slogan {
        font-size: 15px;
        line-height: 20px;
        padding-bottom: 15px;
    }
    .hl-title {
        font-size: 30px;
    }
    .hl-text p, .hl-text li {
        font-size: 15px;
    }
    .hl-text p br {
        display: none;
    }

    .home #hero, #hero {
        /* margin-bottom: -140px; */
        padding-bottom: 30px;
        overflow: hidden;
    }
    #hero .hl-title-hero {
        font-size: 30px;
    }
    #hero .hl-text-hero p {
        font-size: 16px;
    }
    #hero .btns {
        padding-top: 15px;
    }
    .home #hero .btns {
        flex-wrap: wrap;
    }
    .home #hero .btns .btn {
        width: 165px;
    }
    .home #hero .btns .btn.cta-secondary {
        padding-top: 0;
        margin-left: 5px;
    }
    #hero .photo {
        /* padding-top: 30px; */
        padding-bottom: 30px;
    }
    .home #hero .photo, #hero .photo {
        margin-top: -120px;
    }
    .home #hero .photo > div, #hero .photo > div {
        /* width: 350px;
        height: 350px; */
        width: 675px;
        height: 475px;
        border-width: 10px;
        background-position: top 70px center;
        position: relative;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    #hero .photo > div {
        background-position: center;
    }

    .google-score {
        width: 100%;
        margin-left: 0;
        margin-top: 25px;
        justify-content: center;
    }

    #services .hl-title, #service-boxes .hl-title, #club-details .hl-title, #faq-wrapper .hl-title, #program-enroll .hl-title {
        padding-bottom: 10px;
    }
    #about .content .btns, #schedule .btns, #footer .logo .btns, #service-info .btns, #program-enroll .btns {
        flex-direction: column;
        margin-top: 15px;
    }
    #about .btns .btn,
    #schedule .btns .btn,
    #footer .logo .btns .btn,
    #service-banner .box .btns .btn,
    #service-info .btns .btn,
    #program-enroll .btns .btn {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    #about .content .btns .btn.cta-secondary, 
    #schedule .btns .btn.cta-secondary, 
    #footer .logo .btns .btn.cta-secondary,
    #service-banner .box .btns .btn.cta-secondary,
    #service-info .btns .btn.cta-secondary,
    #program-enroll .btns .btn.cta-secondary {
        margin-top: 5px;
    }
    #about .photo > div {
        height: 300px;
    }

    #promo .item .box > img {
        top: 10px;
        right: 0;
    }

    #top-links, #about, #slogans {
        overflow: hidden;
    }

    #reviews {
        padding-top: 190px;
    }
    #reviews .container:not(.c-2) .row {
        padding-bottom: 20px;
    }

    #schedule .hl-title-schedule {
        font-size: 30px;
    }
    #schedule .hl-text-schedule p {
        font-size: 16px;
    }
    #schedule .btns, #footer .logo .btns, #program-enroll .btns {
        align-items: center;
    }

    #partners .row {
        justify-content: center !important;
    }
    #partners .partner a {
        display: inline-block;
        margin-bottom: 5px;
    }

    #areas .box {
        padding: 25px 20px 25px 25px;
    }

    #footer .logo img {
        max-height: 50px;
    }
    #footer .logo .btns {
        margin-top: 0;
    }
    #footer .links {
        width: 100%;
        text-align: center;
    }
    #footer .links:not(:last-of-type) {
        padding-bottom: 25px;
    }
    #footer .links .title {
        padding-bottom: 5px;
    }
    #footer .row.row-2 {
        padding-bottom: 30px;
    }
    .copy p {
        font-size: 14px;
        line-height: 22px;
    }

    /* SUBPAGES */

    #service-boxes .box {
        padding: 20px 20px 15px 20px;
    }
    #service-boxes .box .title {
        font-size: 23px;
        padding-bottom: 7px;
    }
    #service-boxes .box p {
        font-size: 15px;
    }

    #service-banner .box {
        padding: 25px;
    }
    #service-banner .box .title {
        font-size: 20px;
    }
    #service-banner .box .title br {
        display: none;
    }
    #service-banner .box .btns {
        flex-direction: column;
        align-items: center;
    }

    #service-info .photo > div {
        height: 280px;
    }

    #faq-wrapper .accordion-header .accordion-title {
        font-size: 18px;
        line-height: 23px;
        padding: 18px 40px 14px 10px;
    }
    #faq-wrapper .accordion-header .accordion-title::before {
        font-size: 16px;
        right: 10px;
        top: 17px;
    }
    #faq-wrapper .accordion-header .accordion-title[aria-expanded="true"] {
        padding-bottom: 15px;
    }

    #program-enroll .box {
        padding: 22px;
    }
    #program-enroll .box .title {
        font-size: 19px;
        padding: 15px 0 8px 0;
    }
    #program-enroll .box p {
        font-size: 15px;
        line-height: 135%;
    }

    #club-table .box {
        padding: 25px 13px;
    }
    #club-table.program .table-box::before {
        height: calc(100% + 70px);
        top: -35px;
    }
    #club-table .table-headline h4,
    #club-table.program .table-headline h4 {
        font-size: 16px;
    }
    #club-table .column.column-1 p {
        padding-right: 10px;
    }
    #club-table .column.column-1 p, #club-table.program .column.column-1 p b {
        font-size: 16px;
    }
    #club-table .column p {
        font-size: 15px;
    }
    #club-table .column img {
        max-height: 26px;
    }

    .about-values .box {
        padding: 27px 20px 10px 20px;
    }
    .about-values .title {
        font-size: 24px;
    }
    .about-values .item {
        padding: 13px 10px;
    }
    .about-values .item .content {
        padding-left: 15px;
    }
    .about-values .item .content p br {
        display: none;
    }

    #about-team .item {
        padding-top: 20px;
    }
    #about-team .item .photo > div {
        width: 180px;
        height: 180px;
        border-width: 6px;
    }
    #about-team .item .content {
        padding: 105px 25px 20px 25px;
        margin-top: -85px;
    }
    #about-team .item .content .name {
        font-size: 21px;
    }
    #about-team .item .content .title {
        font-size: 17px;
        padding: 6px 0 15px 0;
    }

    .modal-body {
        padding: 10px 20px 20px 20px !important;
    }

    #contact-wrapper .item {
        flex-direction: row;
    }
    #contact-wrapper .item:not(:last-of-type) {
        padding-bottom: 25px;
    }
    #contact-wrapper .item .icon img {
        max-height: 66px;
    }
    #contact-wrapper .item .text {
        width: calc(100% - 66px);
        text-align: left;
        padding-left: 20px;
        padding-top: 0;
    }
    #contact-wrapper .item .title {
        font-size: 22px;
        padding-bottom: 8px;
    }
    #contact-wrapper .item p, #contact-wrapper .item address {
        font-size: 16px;
        line-height: 26px;
    }
    #contact-wrapper .socials img {
        max-height: 50px;
    }

    #contact-wrapper .form {
        margin-bottom: 40px;
    }
    #contact-wrapper .form .box {
        padding: 30px 20px;
    }
    #contact-wrapper .form .box .title {
        font-size: 30px;
        padding-bottom: 5px;
    }

    .gform-footer .gform_button {
        height: 57px !important;
        font-size: 20px !important;
        margin: 5px auto 0 !important;
    }

    h1, h2, h3, h4 {
        padding: 12px 0;
    }

    .entry-content h1, .entry-content h2, .post-title {
        font-size: 24px;
        line-height: 30px;
    }
    .entry-content h1::after, .entry-content h2::after, .post-title::after {
        width: 120px;
        height: 8px;
        margin-top: 15px;
    }
    .entry-content h3, .sitemap_by_click5 h2 {
        font-size: 21px;
        line-height: 27px;
    }
    .entry-content h4 {
        font-size: 19px;
        line-height: 25px;
    }

    .entry-content p, .entry-content ul li, .entry-content ol li {
        font-size: 15px;
        line-height: 24px;
    }

    .entry-content ul li::before {
        line-height: 26px;
    }

    .entry-content blockquote {
        padding-left: 35px;
        margin: 20px 0;
    }
    .entry-content blockquote p {
        font-size: 16px;
        line-height: 27px;
    }
    
    .entry-content .js-video-button.video::after {
        font-size: 60px;
    }

    /* REVIEWS */

    .review-item .review p:first-of-type:before {
        font-size: 110px;
        top: -43px;
        left: -13px;
    }
    .review-item .overview {
        font-size: 15px;
    }

    /* BLOG */

    #index-wrapper .news:nth-child(n+2), 
    #recent-posts .news:nth-child(n+3) {
        margin-top: 15px;
    }

    .news .photo {
        height: 220px;
    }
    .news .content {
        padding: 25px 25px 25px 25px;
    }
    .news .content .time-cat {
        margin-bottom: 12px;
    }
    .news .content h2 {
        font-size: 22px;
        line-height: 26px;
    }
    .news .content p {
        display: -webkit-box;
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;  
        overflow: hidden;
        font-size: 16px;
        line-height: 24px;
    }
    .news .content .more {
        width: calc(100% - 50px);
        bottom: 30px;
        left: 25px;
    }
    .news .content .more span {
        height: 45px;
        line-height: 42px;
    }

    .pagination .page-item .page-link, .sitemap-by-click5_pagination .pagination-item, .sitemap-by-click5_pagination strong {
        font-size: 15px;
        padding: 17px 11px;
    }
    .pagination .page-item .page-link.next, .pagination .page-item .page-link.prev {
        height: 36px;
        font-size: 18px;
        line-height: 32px;
        padding: 0 15px;
        margin-top: 7px;
    }
    .pagination .page-item .page-link.next {
        margin-left: 8px;
    }
    .pagination .page-item .page-link.prev {
        margin-right: 8px;
    }

    #single-wrapper .back {
        font-size: 15px;
        margin-left: 20px;
    }
    #single-wrapper .back::after {
        width: 48px;
        height: 48px;
        top: -15px;
        left: -20px;
    }
}