/* =========================================================
   GRUPO LAS LETRAS — RESPONSIVE HOME
   ========================================================= */

@media (max-width: 1100px) {

    /* ===== HERO ===== */

        .hero-content {
            grid-template-columns: 1fr 0.85fr;
            gap: 45px;
        }

        .hero h1 {
            font-size: clamp(3rem, 6vw, 5rem);
        }

        .hero-carousel {
            height: 520px;
        }


    /* ===== SERVICIOS ===== */

        .services-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }


    /* ===== APARTADO LITERARIO ===== */

        .literary-grid {
            gap: 20px;
        }

        .literary-card {
            grid-template-columns: 1fr;
        }

        .literary-image {
            min-height: 280px;
        }


    /* ===== CONTACTO ===== */

        .contact-content {
            gap: 35px;
        }


}


@media (max-width: 900px) {

    /* ===== HERO ===== */

        .hero {
            min-height: auto;
            padding: 90px 0;
        }

        .hero-content {
            grid-template-columns: 1fr;
            gap: 60px;
        }

        .hero-text {
            max-width: 750px;
        }

        .hero-carousel {
            width: 100%;
            max-width: 520px;
            height: 580px;

            margin: 0 auto;
        }


    /* ===== CONTACTO ===== */

        .contact-content {
            flex-direction: column;
            align-items: flex-start;
        }

        .contact-buttons {
            flex-direction: row;
            flex-wrap: wrap;
        }


}


@media (max-width: 760px) {

    /* ===== HERO ===== */

        .hero {
            padding: 65px 0 80px;
        }

        .hero-content {
            gap: 50px;
        }

        .hero h1 {
            margin-bottom: 24px;

            font-size: clamp(3rem, 14vw, 4.5rem);

            letter-spacing: -0.5px;
        }

        .hero h1::after {
            margin-top: 24px;
        }

        .hero-text p {
            font-size: 14px;
            line-height: 1.85;
        }


    /* ===== BOTONES HERO ===== */

        .hero-buttons {
            flex-direction: column;
            align-items: stretch;

            gap: 12px;

            margin-top: 28px;
        }

        .hero-buttons .btn {
            width: 100%;
            min-height: 48px;

            text-align: center;
        }


    /* ===== CARRUSEL ===== */

        .hero-carousel {
            width: 100%;
            max-width: 400px;

            height: 470px;

            margin: 0 auto;
        }

        .hero-carousel::before {
            top: 18px;
            right: -18px;
        }

        .carousel-slide {
            inset: 25px;
        }

        .carousel-prev,
        .carousel-next {
            width: 40px;
            height: 40px;

            font-size: 24px;
        }

        .carousel-prev {
            left: 35px;
        }

        .carousel-next {
            right: 35px;
        }


    /* ===== QUIÉNES SOMOS ===== */

        .about-text {
            padding-left: 20px;
        }

        .about-text p {
            font-size: 14px;
            line-height: 1.9;
        }


    /* ===== SERVICIOS ===== */

        .services-grid {
            grid-template-columns: 1fr;
            gap: 15px;
        }

        .service-card {
            padding: 30px 25px;
        }

        .service-card h3 {
            font-size: 24px;
        }


    /* ===== ESCRITORES ===== */

        .writers-section {
            padding: 85px 0;
        }

        .writers-content h2 {
            font-size: 2.8rem;
        }

        .writers-content p {
            font-size: 14px;
            line-height: 1.85;
        }


    /* ===== APARTADO LITERARIO ===== */

        .literary-grid {
            grid-template-columns: 1fr;
            gap: 25px;
        }

        .literary-card {
            grid-template-columns: 1fr;
        }

        .literary-image {
            min-height: 250px;
        }

        .literary-content {
            padding: 30px 25px;
        }

        .literary-content h3 {
            font-size: 26px;
        }


    /* ===== CONTACTO ===== */

        .contact-section {
            padding: 75px 0;
        }

        .contact-content h2 {
            font-size: 2.8rem;
        }

        .contact-buttons {
            width: 100%;

            flex-direction: column;
            align-items: stretch;
        }

        .contact-buttons .btn {
            width: 100%;
            min-height: 48px;

            text-align: center;
        }

    /* ===== LIBROS ===== */

    .books-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .book-card {
        width: 100%;
    }

    .book-cover {
        height: 430px;
    }

    .book-info {
        padding: 25px 22px;
    }

    .book-info h3 {
        font-size: 25px;
    }

    .book-info .author {
        font-size: 11px;
    }

    .book-info .btn {
        width: 100%;
        text-align: center;
    }
}




@media (max-width: 420px) {

    /* ===== HERO ===== */

        .hero {
            padding: 55px 0 70px;
        }

        .hero h1 {
            font-size: 3.2rem;
        }

        .small-title {
            font-size: 9px;
            letter-spacing: 3px;
        }

        .hero-text p {
            font-size: 13px;
        }


    /* ===== CARRUSEL ===== */

        .hero-carousel {
            height: 420px;
        }

        .carousel-slide {
            inset: 20px;
        }

        .carousel-prev,
        .carousel-next {
            width: 38px;
            height: 38px;
        }

        .carousel-prev {
            left: 27px;
        }

        .carousel-next {
            right: 27px;
        }


    /* ===== QUIÉNES SOMOS ===== */

        .about-text {
            padding-left: 15px;
        }


    /* ===== SERVICIOS ===== */

        .service-card {
            padding: 27px 22px;
        }

        .service-card h3 {
            font-size: 22px;
        }


    /* ===== ESCRITORES ===== */

        .writers-content h2 {
            font-size: 2.5rem;
        }


    /* ===== LITERARIO ===== */

        .literary-content {
            padding: 25px 20px;
        }

        .literary-content h3 {
            font-size: 24px;
        }


    /* ===== CONTACTO ===== */

        .contact-content h2 {
            font-size: 2.5rem;
        }


    /* ===== LIBROS ===== */

    .books-grid {
        gap: 20px;
    }

    .book-cover {
        height: 390px;
    }

    .book-info {
        padding: 22px 20px;
    }

    .book-info h3 {
        font-size: 23px;
    }

}


@media (max-width: 360px) {

    /* ===== HERO ===== */

        .hero h1 {
            font-size: 2.8rem;
        }

        .small-title {
            font-size: 8px;
            letter-spacing: 2.5px;
        }


    /* ===== CARRUSEL ===== */

        .hero-carousel {
            height: 380px;
        }

        .carousel-slide {
            inset: 18px;
        }

        .carousel-prev {
            left: 22px;
        }

        .carousel-next {
            right: 22px;
        }


    /* ===== ESCRITORES ===== */

        .writers-content h2 {
            font-size: 2.3rem;
        }


    /* ===== CONTACTO ===== */

        .contact-content h2 {
            font-size: 2.3rem;
        }

    /* ===== LIBROS ===== */

    .book-cover {
        height: 350px;
    }

    .book-info h3 {
        font-size: 21px;
    }
}
