@media all and (max-width: 1400px) {
    body {
        font-size: 20px;
    }
    #about-text {
        font-size: 24px;
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        font-size: 18px;
    }
    h1 {
        font-size: 60px;
    }
    .breadcrumbs {
        font-size: 16px;
    }
    .about-page_title span {
        font-size: 32px;
    }
    .contact-box_left p:first-child {
        font-size: 20px;
    }
    #page-header strong {
        font-size: 28px;
    }
    .faq-item_title {
        font-size: 24px;
    }
    .class-fs_right {
        padding-left: 15px;
    }
}

@media all and (max-width: 1200px) {
    body {
        font-size: 18px;
    }
    .navbar-expand-lg .navbar-nav {
        gap: 15px;
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        font-size: 16px;
    }
    #first-screen .container > div:last-child {
        width: 400px;
        min-width: 400px;
    }
    .search-form .form-control {
        padding: 0px 40px 0px 20px;
        font-size: 16px;
    }
    .search-form svg {
        width: 30px;
        height: auto;
    }
    .cart-popup-body .cart-content-header {
        font-size: 26px;
    }
    #cart-content-total > div:first-child {
        font-size: 16px;
    }
    #cart-content-total > div:last-child {
        font-size: 20px;
    }
    #cart-content-total > div:last-child span {
        font-size: 26px;
    }
    /*#header-nav {
        display: none !important;
    }*/
    #header-nav .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 10px;
        padding-bottom: 10px;
        flex-direction: column;
        gap: 10px;
    }
    .header-nav_title {
        display: none;
        font-size: 18px;
        font-weight: 500;
        color: rgba(0, 0, 0, 1);
        width: 100%;
    }
    .header-nav_list .search-class_list {
        display: flex;
        margin: 0px;
        flex-direction: column;
        gap: 5px;
    }
    .header-nav_list .search-class_list_title {
        font-size: 14px;
    }
    .header-nav_list .search-nodes a {
        min-width: 25px;
        padding: 1px 5px;
        font-size: 14px;
        color: #fff;
    }
    .search-class_list_title {
        padding: 0px 12px;
    }
    .header-nav_list .search-nodes {
        display: flex;
        gap: 0px;
        flex-wrap: nowrap;
        max-width: unset;
        overflow: auto;
        padding: 0px 10px;
        max-width: 100vw;
    }
}

@media all and (max-width: 960px) {
    .navbar {
        order: 3;
    }
    .navbar-toggler {
        padding: 0px;
        border: 0px;
        outline: none !important;
        box-shadow: unset !important;
    }
    .navbar-toggler-icon {
        background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23AA0404' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center center;
    }
    body.home #header:not(.fixed) .navbar-toggler-icon {
        background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23AA0404' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center center;
    }
    body.home #header:not(.fixed) .navbar-expand-lg .navbar-nav .nav-link {
        color: rgba(0, 0, 0, 1);
    }
    body.home #header:not(.fixed) .navbar-expand-lg .navbar-nav .nav-link:hover,
    body.home #header:not(.fixed) .navbar-expand-lg .navbar-nav .active .nav-link {
        color: #fff;
    }
    #first-screen {
        padding-top: 30px;
        padding-bottom: 0px;
    }
    #first-screen .container {
        flex-direction: column;
        gap: 30px;
    }
    h1 {
        font-size: 48px;
    }
    .search-nodes {
        max-width: unset;
    }
     #first-screen .container > div:last-child {
        width: 100%;
        min-width: unset;
    }
    #about-text {
        padding: 100px 0px 50px 0px;
        font-size: 20px;
    }
    h2 {
        font-size: 40px;
        margin-bottom: 30px;
    }
    .footer-contacts > div p:nth-child(2) {
        font-size: 18px;
    }
    #navbarNavOffcanvas {
        background: #fff;
    }
    .offcanvas-header .btn-close {
        filter: unset;
    }
    body.home .navbar-expand-lg .navbar-nav .nav-link {
        color: rgba(0, 0, 0, 1);
    }
    body.home .navbar-expand-lg .navbar-nav .nav-link:hover,
    body.home .navbar-expand-lg .navbar-nav .active .nav-link {
        color: #fff;
    }
    .breadcrumbs {
        margin-bottom: 50px;
    }
    #page-header {
        height: auto !important;
        padding-bottom: 150px;
        min-height: unset !important;
    }
    #page-header h1 {
        margin-bottom: 30px;
    }
    .about-page_title span {
        font-size: 26px;
    }
    .contact-box_left p:first-child {
        font-size: 16px;
    }
    #page-wrapper {
        padding: 60px 0px;
    }
    #page-header strong {
        font-size: 24px;
    }
    .faq-item_title {
        font-size: 20px;
    }
    .wp-block-table table thead tr th {
        font-size: 24px;
    }
    .wp-block-table td {
        font-size: 18px;
    }
    .wp-block-table td:nth-child(2) {
        font-size: 18px;
    }
    .class-box_list_title {
        font-size: 30px;
        gap: 20px;
        margin-bottom: 15px;
    }
    .class-box_list_title svg {
        width: 40px;
        height: auto;
    }
    .class-box ul li {
        padding-left: 40px;
    }
    .class-box_title {
        font-size: 26px;
    }
    .cart-content-group-title-row:hover .cart-content-class-title {
        width: 100%;
    }
    .cart-content-group-remove {
        position: relative;
        top: 0px;
        right: 0px;
        transform: unset;
        opacity: 1;
    }
}

@media all and (max-width: 767px) {
    body {
        font-weight: normal;
    }
    h1 {
        font-size: 40px;
    }
    .navbar-brand {
        width: auto;
        height: auto;
    }
    .navbar-brand img {
        max-width: 100px;
    }
    .header-phone a {
        font-size: 17px;
    }
    #first-screen h1 {
        margin-bottom: 30px;
    }
    .search-form .form-control {
        height: 55px;
    }
    .search-class {
        margin-bottom: 0px;
    }
    #first-screen .container > div:last-child::before {
        left: -15px;
    }
    #first-screen .container > div:last-child {
        padding: 20px 0px 0px 0px;
    }
    #page-header {
        padding-top: 120px;
        padding-bottom: 120px;
    }
    .class-fs_right {
        padding-top: 20px;
        display: flex;
        justify-content: center;
    }
    .class-fs_right img {
        max-width: 200px;
        height: auto;
    }
    .class-box_list_title {
        font-size: 20px;
        gap: 13px;
    }
    .class-box ul li::before {
        position: absolute;
        top: 4px;
        left: 0px;
        display: block;
        content: '';
        width: 13px;
        height: 13px;
        min-width: 13px;
        border-radius: 0px;
    }
    .class-box ul li {
        padding-left: 27px;
        margin-bottom: 10px;
    }
    .class-box {
        font-size: 16px;
    }
    #single-wrapper {
        padding: 30px 0px 0px 0px;
    }
    #footer {
        padding-top: 25px;
        padding-bottom: 90px;
    }
    #footer .container {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }
    .footer-contacts > div p {
        text-align: left;
    }
    .footer-info p img {
        max-width: 150px;
        height: auto;
        display: block;
        margin-top: 0px;
    }
    .footer-contacts > div:not(:last-child) {
        margin-bottom: 8px;
    }
    .footer-contacts > div p {
        font-size: 16px;
    }
    .class-box {
        margin-bottom: 40px;
    }
    #page-wrapper {
        padding-top: 30px;
    }
    .wp-block-table table thead tr th {
        font-size: 20px;
    }
    .wp-block-table td {
        font-size: 16px;
    }
    .wp-block-table td:nth-child(2) {
        font-size: 16px;
    }
    #page-header strong {
        font-size: 20px;
    }
    #page-header p {
        margin-bottom: 30px;
    }
    .grid-sizer {
        width: 100%;
        margin-bottom: 30px;
    }
    .faq-item_title {
        margin-bottom: 30px;
    }
    .contact-box_right {
        text-align: left;
    }
    .contact-box_right p {
        margin-bottom: 20px;
    }
    .about-page_title span {
        font-size: 22px;
    }
    .page-template-page-about #page-wrapper {
        margin-top: 0px;
        padding: 0px 0px 120px 0px;
    }
    .about-page_title {
        margin-bottom: 30px;
    }
    .advantages-item {
        margin-bottom: 30px;
    }
    .advantages-item p:first-child {
        margin-bottom: 20px;
    }
    .why-list ul li {
        gap: 20px;
    }
    #first-screen  h1 {
        font-size: 32px;
    }
    .search-form button {
        right: 15px;
    }
    .search-form svg {
        width: 25px;
    }
    .search-nodes a {
        min-width: 34px;
        font-size: 20px;
    }
    .search-class_list_title {
        margin-bottom: 15px;
    }
    h2 {
        font-size: 32px;
    }
    #header.fixed {
        padding: 20px 0px 0px 0px;
    }
    body:not(.search) #header.fixed,
    body:not(.single) #header.fixed {
        padding-bottom: 15px;
    }
    .cart-popup-body .cart-content-header {
        padding: 0px 20px 10px 20px;
        font-size: 18px;
        font-weight: 500;
        text-align: center;
    }
    .cart-popup-body .cart-content-header br {
        display: none;
    }
    .cart-content-subheader {
        font-size: 13px;
        padding: 0px 20px 15px 20px;
    }
    .cart-content-group ul {
        padding: 15px 0px;
    }
    .cart-content-group ul li {
        font-size: 14px;
    }
    .cart-content-group-title-row {
        font-size: 18px;
    }
    .cart-content-group-title-row {
        padding: 5px 0px;
    }
    .cart-content-group ul li button {
        position: relative;
        top: -6px;
        right: -13px;
        margin-right: 15px;
        opacity: 1;
        z-index: 10;
        margin-left: -16px;
    }
    .cart-content-over-limit-notice {
        margin: 0px;
        padding: 0px;
        font-size: 14px;
    }
    #cart-content-total > div:first-child {
        padding: 10px 20px;
        font-size: 16px;
    }
    #cart-content-total > div:last-child {
        padding: 0px 20px 10px 20px;
        font-size: 20px;
    }
    #floated-cart {
        position: fixed;
        top: auto;
        right: 0px;
        transform: unset;
        z-index: 1000;
        bottom: 0px;
    }
    #floated-cart_mob {
        width: 100%;
        position: fixed;
        top: auto;
        right: 0px;
        transform: unset;
        z-index: 1001;
        bottom: 0px;
        padding-bottom: 0px;
        padding-top: 0px !important;
        height: auto !important
    }
    #floated-cart_mob.active {
        display: flex;
        justify-content: center;
    }
    #floated-cart-button,
    #floated-cart_mob {
        width: 100%;
        height: 100%;
        transform: unset;
        opacity: 1;
        border-radius: 0px;
        padding: 15px 20px;
        background: rgb(233, 233, 233);
        box-shadow: 0px -1px 3px 0px rgba(0, 0, 0, 0.25);
        color: rgb(0, 0, 0);
        flex-direction: column;
        gap: 10px;
        font-weight: 500;
    }
    #floated-cart-button:before,
    #floated-cart-button_mob:before {
        display: block;
        content: '';
        width: 33px;
        height: 5px;
        background: rgba(170, 4, 4, 1);
        border-radius: 3px;
    }
    #floated-cart-button_mob {
        width: 100%;
        padding: 15px 0px;
        display: flex;
        justify-content: center;
    }
    #cart-content-pre_body_mob {
        padding-top: 0px !important;
    }
    #floated-cart {
        width: 100%;
    }
    #about-text {
        padding: 30px 0px;
        font-size: 18px;
        background: rgba(170, 4, 4, 1);
    }
    #page-header {
        padding-bottom: 20px;
        padding-top: 80px;
    }
    #page-header h1 {
        margin-bottom: 20px;
        font-size: 28px;
    }
    .class-box_title {
        font-size: 25px;
        margin-bottom: 15px;
    }
    .class-box:not(:last-child) {
        margin-bottom: 25px;
    }
    .red-wrapper {
        padding: 40px 0px 0px 0px;
        margin-bottom: 30px;
    }
    input[type="checkbox"] {
        -webkit-appearance: none;
        appearance: none;
        width: 15px;
        height: 15px;
        min-width: 15px;
    }
    #cart-content.cart-popup {
        position: fixed;
        z-index: 10020;
        width: 100%;
        max-height: 100vh;
        background: rgba(233, 233, 233, 1);
        border: 1px solid #fff;
        border-radius: 0px;
        box-shadow: unset;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        top: auto;
        right: 0px;
        left: auto;
        bottom: 0px;
        height: auto;
    }
    #cart-content-pre_body,
    #cart-content-pre_body_mob {
        padding: 15px;
    }
    #cart-content-body {
        padding: 0px 20px;
    }
    .cart-content-footer {
        padding: 0px 20px 20px 20px;
    }
    #header {
        padding: 18px 0px;
    }
    .class-box_list_title svg {
        max-width: 15px;
        height: auto;
    }
    .products-list-item {
        margin-bottom: 5px;
    }
    body.home #page {
        padding-top: 70px;
    }
    .page-header_content p {
        text-align: left;
        font-size: 16px;
    }
    .cart-content-group ul li svg {
        width: 12px;
    }
    .cart-content-group_top-title-row .cart-content-group-remove svg {
        width: 13px;
    }
    .cart-content-group_top-title-row .cart-content-group-remove {
        position: absolute;
        top: -14px;
        right: -13px;
    }
    .cart-popup-drag {
        display: none;
    }
    #cart-content-close {
        display: flex;
        justify-content: center;
        padding: 15px 0px 10px 0px;
        margin: 0px;
        overflow: hidden;
        text-indent: 1000000px;
        position: relative;
        width: 100%;
        align-items: center;
    }
    #cart-content-close:before {
        display: block;
        content: '';
        width: 33px;
        height: 5px;
        background: rgba(170, 4, 4, 1);
        border-radius: 3px;
    }
    #cart-content-close span {
        display: none;
    }
    #header.fixed #header-nav {
        margin-top: 10px;
    }
}
