/* ===================================================== */
/* MR OUTLINER - RESPONSIVE CSS */
/* ===================================================== */

/* ===================================================== */
/* LARGE DEVICES */
/* ===================================================== */

@media(max-width:1400px){

    .container{
        width:92%;
    }

    .hero-content h1{
        font-size:75px;
    }

}

/* ===================================================== */
/* LAPTOP DEVICES */
/* ===================================================== */

@media(max-width:1200px){

    .section-title{
        font-size:42px;
    }

    .hero-content h1{
        font-size:65px;
    }

    .hero-content p{
        font-size:18px;
    }

    .grid-4{
        grid-template-columns:repeat(2,1fr);
    }

    .featured-box,
    .contact-wrapper,
    .booking-wrapper{
        grid-template-columns:1fr;
    }

    .featured-image img{
        height:auto;
    }

}

/* ===================================================== */
/* TABLET DEVICES */
/* ===================================================== */

@media(max-width:991px){

    header{
        padding:18px 0;
    }

    .navbar{
        flex-direction:column;
        gap:20px;
    }

    .nav-links{
        flex-wrap:wrap;
        justify-content:center;
        gap:20px;
    }

    .hero{
        height:85vh;
        padding-top:100px;
    }

    .hero-content h1{
        font-size:55px;
        line-height:1.3;
    }

    .hero-content p{
        font-size:17px;
        line-height:1.9;
    }

    .section-title{
        font-size:38px;
    }

    .grid-3,
    .grid-2{
        grid-template-columns:1fr;
    }

    .courses-grid,
    .products-grid,
    .gallery-grid,
    .blog-grid,
    .community-grid,
    .pricing-grid,
    .benefits-grid,
    .features-grid,
    .learning-grid,
    .members-grid,
    .stats-grid,
    .social-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .newsletter{
        padding:50px;
    }

    iframe{
        height:450px;
    }

}

/* ===================================================== */
/* MOBILE DEVICES */
/* ===================================================== */

@media(max-width:768px){

    section{
        padding:80px 0;
    }

    .logo{
        font-size:28px;
    }

    .nav-links{
        display:none;
    }

    .hero{
        height:75vh;
    }

    .hero-content h1{
        font-size:42px;
    }

    .hero-content p{
        font-size:16px;
    }

    .section-title{
        font-size:32px;
        margin-bottom:40px;
    }

    .section-subtitle{
        font-size:15px;
        margin-bottom:40px;
    }

    .btn,
    .btn-outline{
        padding:14px 28px;
        font-size:14px;
    }

    .courses-grid,
    .products-grid,
    .gallery-grid,
    .blog-grid,
    .community-grid,
    .pricing-grid,
    .benefits-grid,
    .features-grid,
    .learning-grid,
    .members-grid,
    .stats-grid,
    .social-grid{
        grid-template-columns:1fr;
    }

    .card-content,
    .contact-info,
    .contact-form,
    .booking-info,
    .booking-form,
    .newsletter,
    .policy-content,
    .terms-content,
    .refund-content{
        padding:35px;
    }

    .featured-content h2,
    .contact-info h2,
    .contact-form h2,
    .booking-info h2,
    .booking-form h2{
        font-size:32px;
    }

    .shop-filter,
    .gallery-filter{
        gap:12px;
    }

    .shop-filter button,
    .gallery-filter button{
        padding:10px 18px;
        font-size:13px;
    }

    input,
    textarea,
    select{
        padding:15px;
        font-size:14px;
    }

    .newsletter-form{
        flex-direction:column;
        align-items:center;
    }

    .newsletter-form input{
        width:100%;
    }

    iframe{
        height:350px;
    }

    .hero-content{
        width:95%;
        margin:auto;
    }

    .testimonial{
        padding:35px;
    }

    .testimonial p{
        font-size:18px;
    }

}

/* ===================================================== */
/* SMALL MOBILE DEVICES */
/* ===================================================== */

@media(max-width:576px){

    .container{
        width:94%;
    }

    section{
        padding:70px 0;
    }

    .hero{
        height:70vh;
    }

    .hero-content h1{
        font-size:34px;
    }

    .hero-content p{
        font-size:15px;
        line-height:1.8;
    }

    .section-title{
        font-size:28px;
    }

    .logo{
        font-size:24px;
    }

    .btn,
    .btn-outline{
        width:100%;
        text-align:center;
    }

    .product-actions{
        flex-direction:column;
    }

    .wishlist-btn{
        width:100%;
    }

    .footer-socials{
        flex-wrap:wrap;
    }

    .contact-box,
    .service-box{
        flex-direction:column;
        align-items:flex-start;
    }

    .contact-box i,
    .service-box i{
        margin-bottom:10px;
    }

    iframe{
        height:250px;
    }

    table{
        display:block;
        overflow-x:auto;
        white-space:nowrap;
    }

}

/* ===================================================== */
/* EXTRA SMALL DEVICES */
/* ===================================================== */

@media(max-width:400px){

    .hero-content h1{
        font-size:28px;
    }

    .hero-content p{
        font-size:14px;
    }

    .section-title{
        font-size:24px;
    }

    .btn,
    .btn-outline{
        padding:12px 22px;
        font-size:13px;
    }

    .card-content,
    .contact-info,
    .contact-form,
    .booking-info,
    .booking-form,
    .newsletter,
    .policy-content,
    .terms-content,
    .refund-content{
        padding:25px;
    }

    .footer-socials a{
        width:42px;
        height:42px;
    }

}