a.volver::after {
    display: none;
}

/* ===========================
   HERO FEST PAW
=========================== */

.hero-fest{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    background-image:
        url("../assets/images/hero.webp");

    background-size:cover;

    background-position:center;

    background-repeat:no-repeat;

    color:#fff;

    text-align:center;

}

@media (max-width:768px){

    .hero-fest{

        background-image:url("../assets/images/hero-mobile.webp");

    }

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.20);

}


.hero-content{

    position:relative;

    z-index:2;

    background-color: transparent;

    max-width:720px;

    margin:auto;

    padding: 20px; /* mejora respiración */

}


.hero-tag{

    display:inline-block;

    padding:.5rem 1rem;

    border-radius:50px;

    background: rgba(93, 84, 145, .85);

    backdrop-filter:blur(8px);

    letter-spacing:2px;

    font-size:.85rem;

    margin-bottom:1.5rem;

}


.hero-fest h1{

    font-family:"Bree Serif", serif;

    font-size:clamp(2.4rem,5vw,3.8rem);

    margin-bottom:1rem;

    line-height: 1.2;

    color: #fff;

}


.hero-fest p{

    max-width:620px;

    margin:0 auto 2rem;

    font-size:1.25rem;

    line-height:1.7;

    opacity: .95;

}


.hero-btn{

    padding:14px 34px;

    font-size:1.1rem;

    background-color: #5d5491;

    border: none;

    border-radius:50px;

    transition: all .25s ease;

}

.hero-btn:hover{
    background-color: #8f8aae;
    transform: translateY(-2px);
}

.scroll-indicator{

    position:absolute;

    bottom:30px;

    left:50%;

    transform:translateX(-50%);

    font-size:2rem;

    color:white;

    opacity:.75;

    animation: float 2s ease-in-out infinite;

}


@keyframes float {
    0%, 100% { transform: translate(-50%, 0); }
    50% { transform: translate(-50%, 8px); }
}


/* ===========================
   INTRODUCCIÓN
=========================== */

.intro-fest{

    padding:110px 0;

    background:#fff;

}

.intro-layout{

    display:grid;

    grid-template-columns:1.4fr .8fr;

    gap:70px;

    align-items:center;

}

.intro-content{

    text-align:left;

}

.intro-content h2{

    font-family:"Bree Serif",serif;

    color:#5d5491;

    font-size:clamp(2rem,4vw,2.8rem);

    margin-bottom:1.5rem;

}

.intro-content p{

    font-size:1.15rem;

    line-height:1.9;

    color:#555;

}

.intro-video{

    text-align:center;

}

.intro-video video{

    width:100%;

    max-width:320px;

    aspect-ratio: 9 / 16;

    object-fit: cover;

    display:block;

    margin:auto;

    border-radius:22px;

    box-shadow:0 20px 45px rgba(0,0,0,.15);
    
}



@media(max-width:992px){

    .intro-layout{

        grid-template-columns:1fr;

        gap:50px;

    }

    .intro-content{

        text-align:center;

    }

}


/* ===========================
   EDICIONES
=========================== */

.editions{

    padding:120px 0;

    background:#ffffff;

}

/*TITULO*/
.section-title{

    text-align:center;

    max-width:700px;

    margin:0 auto 70px;

}

.section-title h2{

    font-family:"Bree Serif", serif;

    color:#5d5491;

    font-size:clamp(2rem,4vw,2.8rem);

    margin-bottom:1rem;

}

.section-title p{

    color:#666;

    font-size:1.1rem;

}

/*LA CARD*/
.edition{

    max-width:900px;

    margin:0 auto 90px;

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.3s;

}

.edition:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

.edition:last-child{

    margin-bottom:0;

}

.edition-badge{

    display:inline-block;

    margin-bottom:15px;

    padding:6px 14px;

    background:#5d5491;

    color:#fff;

    border-radius:30px;

    font-size:.8rem;

    letter-spacing:1px;

}


/*LA FOTOGRAFIA*/
.edition-image{

    margin:0;

    overflow:hidden;

    border-radius:20px;

}

/*LA IMAGEN*/
.edition-image img{

    width:100%;

    height:520px;

    object-fit:cover;

    display:block;

    transition:transform .5s ease;

}

/*HOVER*/
.edition:hover img{

    transform:scale(1.03);

}

/*EL TEXTO*/
.edition-content{

    text-align:center;

    padding:40px 30px;

}

/*AÑO*/
.edition-year{

    display:block;

    font-size:2.5rem;

    font-family:"Bree Serif", serif;

    color:#5d5491;

    margin-bottom:10px;

    letter-spacing:0;

    text-transform:none;

}

/*TITULO*/
.edition-content h3{

    font-family:"Bree Serif", serif;

    font-size:2rem;

    margin-bottom:20px;

}

/*PARRAFO*/
.edition-content p{

    max-width:650px;

    margin:0 auto 30px;

    color:#555;

    line-height:1.8;

}

/*BOTON*/
.edition-content a{

    color:#5d5491;

    font-weight:600;

    text-decoration:none;

    transition:.25s;

}

/*HOVER BOTON*/
.edition-content a:hover{

    letter-spacing:1px;

}

/*RESPONSIVE*/
@media (max-width:768px){

    .edition-image img{

        height:300px;

    }

    .edition-content{

        padding:30px 15px;

    }

}



/* ===========================
   CTA FINAL
=========================== */

.cta-fest{

    background:#f7f5fc;

    color: #333;

    padding:110px 20px;

    text-align:center;

}

.cta-fest h2{

    font-family:"Bree Serif", serif;

    font-size:clamp(2rem,4vw,3rem);

    margin-bottom:20px;

}

.cta-fest p{

    max-width:650px;

    margin:0 auto 35px;

    font-size:1.15rem;

    line-height:1.8;

    opacity:.95;

}

.cta-btn{

    padding:14px 36px;

    border-radius:50px;

    font-weight:600;

    transition:.3s;

    background: #5d5491;

    color: white;

}

.cta-btn:hover{

    transform:translateY(-2px);

    background: #8f8aae;

    color: white;

}

