/** MEDIA QUERIES **/
@media screen and (min-width: 1200px) {
/************************  GENERAL  ************************/

}

@media screen and (min-width: 992px) and (max-width: 1199px)  {

}

@media screen and (min-width: 992px) {
/************************  GENERAL  ************************/
}

@media screen and (max-width: 991px) {
/************************  GENERAL  ************************/
    .proyecto-ficha__poster-distro {
        margin-bottom: 50px;
    }
    #rrss-ft a {
        font-size: 22px;
    }
    .idiomas-home a{
        font-size: 14px;
        margin-top: 20px;
    }
    .ft-menu-legales a {
        font-size: 16px;
    }
    #wpml-lang-slideout {
        margin-bottom: 15px;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
/************************  GENERAL  ************************/
}

@media screen and (min-width: 769px) {
/************************  GENERAL  ************************/
}

@media screen and (max-width: 767px) {
/************************  GENERAL  ************************/
}

@media screen and (min-width: 481px) and (max-width: 991px) {
/************************  GENERAL  ************************/
.mad_center-sm{
    text-align: center !important;
}
.mad_left-sm{
    text-align: left !important;
}
}

@media screen and (min-width: 481px) and (max-width: 768px) {
/************************  GENERAL  ************************/

}

@media screen and (max-width: 480px) {
/************************  GENERAL  ************************/
	.mad_center-xs{
		text-align: center !important;
	}
	.mad_left-xs{
		text-align: left !important;
	}
	.slideout-navigation.do-overlay .inside-navigation {
		height: auto; 

	}
	.docenautas-logo-slideout {
		margin-bottom: 50px;
	}
	.docenautas-logo-slideout .logo-1-slideout {
		max-width: 80px !important;
	}
	.docenautas-logo-slideout .logo-2-slideout {
		max-width: 150px !important;
	}
	.slideout-navigation .main-nav{
		margin-bottom: 25px !important;
	}
	.menu-toggle .gp-icon svg {
		height: 20px;
		width: 20px;
	}
	.site-logo.mobile-header-logo .mad_second-logo img {
		height: 35px !important;
	}
	.logo-ft {
		text-align: center !important;
		padding-bottom: 10px;
	}
	.logo-ft-2 {
		text-align: center !important;
		padding-bottom: 30px;
	}
	.ft-copy {
		text-align: right;
		font-size: 12px;
	}
	.box-logos-nosotros .ult-content-box {
		gap: 20px;
		flex-direction: column;
	}
	.ft-menu-legales ul {
	  display: flex;
	  flex-wrap: wrap;
	  justify-content: flex-end;
	  gap: 0;
	}
	
	.ft-menu-info ul {

	margin-bottom: 10px !important;
	}
	.ft-menu-legales ul li{
	  width: 26%;
	  text-align: right;
	}
	#mad-footer {
    	padding: 20px;
	}
}

/* Single portfolio: responsive */
@media screen and (max-width: 991px) {
    .proyecto-ficha__grid {
        grid-template-columns: 1fr;
        padding: 0 30px;
    }
    .proyecto-ficha__datos {
        padding-left: 0;
    }
    .proyecto-ficha__row {
        grid-template-columns: 1fr;
    }

    .proyecto-ficha__reparto-cols {
        grid-template-columns: 1fr;
        gap: 0.35rem 0;
    }
    .proyecto-ficha__poster {
        max-width: 385px;
        margin: 0 auto;
    }
    .proyecto-ficha {
        padding: 80px 0 60px;
    }
    .proyecto-festivales {
        padding: 0 0 80px;
    }
    .proyecto-festivales__inner {
        padding: 0 30px;
    }
    .proyecto-festivales__grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        gap: 30px;
    }
    .copy-home-mvl {
        padding-bottom: 15px;
    }
    .main-titulo, .main-titulo h1 {
        font-size: 32px;
    }
    .main-subtitulo {
        font-size: 20px;
    }
    .proyecto-ficha__value {
        font-size: 26px;
    }
    .proyecto-ficha__label {
        font-size: 22px;
    }
    .proyecto-ficha__row {
        gap: 35px;
    }
}

@media screen and (max-width: 767px) {
    /* Home: eliminar scroll horizontal (WPB stretch_row_content + mad_slider_home) */
    body.home #page,
    body.home .site-content,
    body.home .wpb-content-wrapper {
        overflow-x: clip;
        max-width: 100%;
    }

    body.home .wpb-content-wrapper .vc_row.vc_row-no-padding,
    body.home .wpb-content-wrapper .vc_row[data-vc-stretch-content="true"],
    body.home .wpb-content-wrapper .vc_row[data-vc-full-width="true"],
    body.home .wpb-content-wrapper .vc_row.vc_row-o-full-width {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        left: auto !important;
        right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.home .wpb-content-wrapper .vc_row > .vc_column_container {
        max-width: 100%;
    }

    body.home .mad-slider-home,
    body.home .mad-slider-home__stack,
    body.home .mad-slider-home__item,
    body.home .mad-slider-home__figure {
        max-width: 100%;
        box-sizing: border-box;
    }

    body.home .mad-slider-home__img {
        max-width: 100%;
    }

    /* Slider archivo portfolio: 65% de altura desktop (mad.css) */
    .mad-slider-portfolio--archive .mad-slider-portfolio__swiper.swiper {
        height: min(62.4vh, 858px);
    }

    .mad-slider-portfolio--archive .swiper-slide {
        height: clamp(221px, 44.2vh, 533px);
    }

    .mad-slider-portfolio--archive .mad-slider-portfolio__nav-prev,
    .mad-slider-portfolio--archive .mad-slider-portfolio__nav-next {
        display: none !important;
    }

    .mad-slider-portfolio--archive .mad-slider-portfolio__title {
        font-size: clamp(1.15rem, 4.5vw, 1.65rem);
    }

    /* Más alto solo el bloque sinopsis (no la tarjeta): ~el doble que el max-height original de 7.5rem */
    .mad-slider-portfolio--archive .mad-slider-portfolio__synopsis {
        font-size: 0.85rem;
        max-height: min(15rem, calc(44.2vh - 6.5rem));
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Coming Soon: tarjetas ~40% más altas que 16/9 (mismo ancho) + sinopsis sin cortar */
    .mad-slider-coming-soon .swiper-slide,
    .mad-slider-coming-soon__cell {
        width: min(88vw, 360px);
        max-width: min(88vw, 360px);
    }

    .mad-slider-coming-soon__figure {
        aspect-ratio: 16 / 12.6;
    }

    .mad-slider-coming-soon__synopsis {
        display: block;
        overflow: visible;
        -webkit-box-orient: unset;
        -webkit-line-clamp: unset;
        line-clamp: unset;
    }

    .mad-slider-coming-soon__nav-prev,
    .mad-slider-coming-soon__nav-next {
        display: none !important;
    }

    /* Contacto: contener coverflow en viewport (evitar scroll horizontal) */
    .mad-slider-contacto {
        overflow-x: clip;
        max-width: 100vw;
    }

    .mad-slider-contacto__swiper {
        overflow: hidden;
        max-width: 100%;
    }

    .mad-slider-contacto .swiper-slide {
        width: min(82vw, 300px);
        max-width: min(82vw, 300px);
    }

    .mad-slider-contacto__nav-prev,
    .mad-slider-contacto__nav-next {
        display: none !important;
    }

    .mad-slider-contacto__figure,
    .mad-slider-contacto .swiper-slide-active .mad-slider-contacto__figure,
    .mad-slider-contacto__link:hover .mad-slider-contacto__figure,
    .mad-slider-contacto__link:focus-visible .mad-slider-contacto__figure {
        box-shadow: none !important;
    }

    .mad-slider-home__figure .mad-slider-home__play {
        opacity: 1 !important;
        pointer-events: auto !important;
        visibility: visible !important;
        touch-action: manipulation;
    }

    .mad-slider-home__play--modal {
        display: none !important;
    }

    .mad-slider-home__play--external {
        display: inline-flex !important;
    }

    .proyecto-hero {
        padding: 30px 0 60px;
    }
    .proyecto-hero__inner {
        padding: 0 20px;
    }
    .proyecto-hero__title {
        font-size: 2rem;
    }
    .proyecto-ficha__grid,
    .proyecto-festivales__inner {
        padding: 40px 20px 0 20px;
    }
	.main-menu-home {
		display: block;
		text-align: center;
		margin-bottom: 50px !important;
		height: fit-content;
	}
    .legales-home, .idiomas-home {
        justify-content: center;
        margin-top: 10px;
    }
}