@media (max-width: 768px) {
    .help-box {
        padding: 45px 30px;
        min-height: 420px;
    }

    .help-decoration {
        right: -100px;
        top: 70%;
        width: 250px;
        height: 250px;
    }

    .help-content {
        max-width: 100%;
    }
}

@media (max-width: 900px) {

    .about-grid {
        grid-template-columns: 1fr;

        gap: 60px;
    }

    .about-intro {
        max-width: 700px;
    }

    .about-features {
        grid-template-columns: 1fr;

        gap: 30px;
    }

}


@media (max-width: 600px) {

    .about-section {
        padding: 80px 0;
    }

    .about-stats {
        grid-template-columns: 1fr 1fr;
    }

    .about-stat {
        min-height: 140px;

        padding: 20px;
    }

    .about-stat-number {
        font-size: 42px;
    }

    .about-features {
        margin-top: 70px;
    }

}

@media (max-width: 900px) {

    .reviews-header {
        align-items: flex-start;

        flex-direction: column;

        gap: 35px;
    }

    .reviews-rating {
        width: 180px;
    }

    .reviews-grid {
        grid-template-columns: 1fr 1fr;
    }

}


@media (max-width: 600px) {

    .reviews-section {
        padding: 80px 0;
    }

    .reviews-grid {
        display: flex;

        overflow-x: auto;

        scroll-snap-type: x mandatory;

        gap: 15px;

        padding-bottom: 10px;

        scrollbar-width: none;
    }

    .reviews-grid::-webkit-scrollbar {
        display: none;
    }

    .review-card {
        min-width: 85%;

        scroll-snap-align: start;
    }

    .reviews-controls {
        display: none;
    }

    .reviews-footer {
        flex-direction: column;

        text-align: center;
    }

}

@media (max-width: 900px) {

    .location-grid {
        grid-template-columns: 1fr;

        gap: 50px;
    }

    .location-content {
        max-width: 700px;
    }

    .location-map {
        min-height: 400px;
    }

    .location-map-placeholder {
        min-height: 400px;
    }

}


@media (max-width: 600px) {

    .location-section {
        padding: 80px 0;
    }

    .location-contact {
        grid-template-columns: 1fr;

        gap: 20px;
    }

    .location-map {
        min-height: 350px;

        border-radius: 15px;
    }

    .location-map-placeholder {
        min-height: 350px;
    }

}

@media (max-width: 600px) {

    .final-cta {
        padding-bottom: 80px;
    }

    .final-cta-box {
        min-height: 500px;

        padding: 45px 30px;

        border-radius: 15px;
    }

    .final-cta-content h2 {
        letter-spacing: -1px;
    }

    .final-cta-buttons {
        align-items: flex-start;

        flex-direction: column;

        gap: 20px;
    }

    .final-cta-decoration {
        right: -30px;
        bottom: 20px;

        font-size: 80px;

        letter-spacing: -4px;
    }

}

@media (max-width: 900px) {

    .footer-main {
        grid-template-columns: 1fr 1fr;

        gap: 50px;
    }

    .footer-brand {
        grid-column: 1 / -1;
    }

}


@media (max-width: 600px) {

    .site-footer {
        padding-top: 60px;
    }

    .footer-main {
        grid-template-columns: 1fr;

        gap: 40px;

        padding-bottom: 50px;
    }

    .footer-brand {
        grid-column: auto;
    }

    .footer-bottom {
        flex-direction: column;

        align-items: flex-start;

        gap: 15px;
    }

    .footer-legal {
        flex-wrap: wrap;
    }

}

/* =========================
   SERVICE PAGE
========================= */

@media (max-width: 900px) {

    .service-hero-grid {
        grid-template-columns: 1fr;

        gap: 50px;
    }

    .service-hero-image {
        min-height: 450px;
    }

    .service-process-grid {
        grid-template-columns: 1fr;

        gap: 60px;
    }

    .service-form-box {
        align-items: flex-start;

        flex-direction: column;
    }

}


@media (max-width: 600px) {

    .service-hero {
        padding: 70px 0 80px;
    }

    .service-hero-content h1 {
        letter-spacing: -1px;
    }

    .service-hero-image {
        min-height: 360px;

        border-radius: 15px;
    }

    .service-offer {
        padding: 80px 0;
    }

    .service-offer-grid {
        grid-template-columns: 1fr;
    }

    .service-process {
        padding: 80px 0;
    }

    .service-form-cta {
        padding: 80px 0;
    }

    .service-form-box {
        padding: 40px 30px;

        border-radius: 15px;
    }

}

@media (max-width: 900px) {

    .nav-links {
        gap: 18px;
    }

    .nav-links a {
        font-size: 13px;
    }

}


@media (max-width: 700px) {

    .site-header {
        padding: 18px 0;
    }

    .navbar {
        align-items: flex-start;

        flex-direction: column;

        gap: 15px;
    }

    .nav-links {
        width: 100%;

        overflow-x: auto;

        padding-bottom: 5px;

        gap: 22px;

        scrollbar-width: none;
    }

    .nav-links::-webkit-scrollbar {
        display: none;
    }

    .nav-links a {
        flex-shrink: 0;
    }

}

@media (max-width: 900px) {

    .catalog-preview-box {
        align-items: flex-start;

        flex-direction: column;
    }

}


@media (max-width: 600px) {

    .catalog-preview {
        padding-bottom: 80px;
    }

    .catalog-preview-box {
        padding: 40px 30px;

        border-radius: 15px;
    }

}

/* =========================
   SMART FORM RESPONSIVE
========================= */

@media (max-width: 700px) {

    .form-page {
        padding: 70px 0 80px;
    }

    .form-page-header {
        margin-bottom: 45px;
    }

    .form-page-header h1 {
        font-size: 42px;
        letter-spacing: -1.5px;
    }

    .form-section {
        padding: 30px 22px;

        border-radius: 15px;
    }

    .category-grid {
        grid-template-columns: 1fr;
    }

    .form-grid {
        grid-template-columns: 1fr;
    }

    .form-field-full {
        grid-column: auto;
    }

    .form-submit {
        align-items: stretch;

        flex-direction: column;
    }

    .form-submit .btn {
        width: 100%;

        text-align: center;
    }

}