/* ==================================================
   TABLET / MOBILE — MENU
================================================== */

.espetaculo-voltar-mobile{
    display:none;
}

@media (max-width: 900px){
	
	.post-type-archive-espetaculos.is-restoring-scroll .detail-gallery-track,
    .post-type-archive-espetaculos.is-restoring-scroll .espetaculos-layout{
        opacity:0;
    }

    /* ===========================
       LAYOUT
    =========================== */

    .layout,
    body:not(.menu-collapsed) .layout,
    body.menu-collapsed .layout{
        display:block;
        grid-template-columns:none;
        width:100%;
        min-height:100vh;
    }

    .content{
        width:100%;
        min-width:0;
        padding:var(--content-padding-small);
		    padding-top:calc(var(--content-padding-small) + 44px);

    }
	
	.site-branding span{
    display:inline;
}

.site-branding span + span{
    margin-left:.3em;
}


    /* ===========================
       SIDEBAR
    =========================== */

    .sidebar{
        position:fixed;
        top:0;
        left:0;

        width:min(290px, 86vw);
        height:100dvh;
        min-height:0;

        padding:4rem 1.5rem 1.5rem;

        z-index:1000;

        transform:translateX(0);

        overflow-x:hidden;
        overflow-y:auto;

        -webkit-overflow-scrolling:touch;

        transition:transform var(--transition-medium);
    }

    body.menu-collapsed .sidebar{
        transform:translateX(-100%);
    }


    /* ===========================
       BOTÃO
    =========================== */

	
	.menu-toggle{
    position:fixed;
    top:0;
    left:0;

    width:100%;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:flex-start;

    padding:0 18px;

    background:var(--color-bg);

    z-index:1100;
}


    /* ===========================
       CONTEÚDO DO MENU
    =========================== */

    .sidebar{
        justify-content:flex-start;
    }

    .sidebar-top{
        flex:none;
    }

    .site-branding{
        margin-bottom:1.5rem;
        padding-bottom:1rem;

        font-size:1.5rem;
    }

    .sidebar nav{
        margin-top:1.25rem;
    }

    .sidebar nav > ul > li{
        margin-bottom:.65rem;
    }

    .sidebar nav > ul > li > a{
        font-size:.88rem;
        line-height:1.3;
    }

    .sidebar .current-menu-item > a,
    .sidebar .current_page_item > a{
        font-size:.9rem;
    }

	.sidebar{
    scrollbar-width:none; /* Firefox */
    -ms-overflow-style:none;
}

.sidebar::-webkit-scrollbar{
    display:none; /* Chrome, Safari, Edge */
}

    /* SUBMENU */

    .sidebar .sub-menu{
        margin-top:.4rem;
        margin-bottom:.25rem;
    }

    .sidebar .sub-menu li{
        margin-bottom:.35rem;
    }

    .sidebar .sub-menu a{
        max-width:190px;
        font-size:.76rem;
        line-height:1.3;
    }

    .sidebar .sub-menu .current-menu-item > a,
    .sidebar .sub-menu .current_page_item > a{
        font-size:.78rem;
    }


    /* ===========================
       PARTE INFERIOR
    =========================== */

 .sidebar-bottom{
    margin-top:auto;
    padding-top:1rem;
}

    .language-switcher{
        margin-bottom:1rem;
        font-size:.78rem;
    }

    .sidebar-footer{
        font-size:.68rem;
    }
	
	   /* ===========================
       HOMEPAGE
    =========================== */
	  .home-intro{
        transform:translateY(-6vh);
    }
	
	.home-content{
    padding:44px 0 0;
}

.home-stage,
.home-gallery{
    height:calc(100dvh - 44px);
}
	
	
	  /* ===========================
        SINGLE ESPETACULO
    =========================== */

	
	
	.espetaculo-voltar-mobile{
        display:inline-block;
        margin-bottom:1.5rem;
        color:var(--color-muted);
        text-decoration:none;
        font-size:.82rem;
        transition:color var(--transition-fast);
    }

    .espetaculo-voltar-mobile:hover{
        color:var(--color-white);
    }
	
	
	/* =========================================
   SECÇÕES — TABLET + MOBILE
   Paisagens / Performance e Novos Media
========================================= */

    .section-layout{
        display:block;
        height:auto;
        min-height:0;
    }

    /* esconder timeline */
    .section-layout .section-timeline{
        display:none;
    }

    /* retirar a linha vertical que separava a timeline */
    .section-layout::after{
        display:none;
    }

    /* detail passa a ocupar toda a largura */
    .section-detail{
        width:100%;
        height:auto;
        overflow:visible;
        padding:0;
    }

    .section-intro{
        width:100%;
        margin-bottom:2rem;
    }

    .section-intro-text{
        width:100%;
        max-width:none;
        margin:0;
    }

	

}

    /* ===========================
        TABLET
    =========================== */

@media (min-width:701px) and (max-width:900px){

    /* ===========================
       ESPETÁCULOS 
    =========================== */

    .post-type-archive-espetaculos .espetaculos-layout{
        display:flex;
        flex-direction:column;
        height:auto;
        gap:1.5rem;
    }

    /* mantém a pesquisa, esconde a timeline */
    .post-type-archive-espetaculos .timeline{
        position:static;
        width:100%;
        max-height:none;
        overflow:visible;

        padding:0;
        border:0;
    }

    .post-type-archive-espetaculos .timeline-list{
        display:none;
    }

    /* detail ocupa toda a largura */
    .post-type-archive-espetaculos .detail{
        width:100%;
        height:auto;
        min-height:0;
        overflow:visible;
    }
	
	.post-type-archive-espetaculos .detail-gallery-track{
    display:flex;
    gap:1rem;

    overflow-x:auto;
    overflow-y:hidden;

    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;

    padding-bottom:.5rem;

    scrollbar-width:none;
}

.post-type-archive-espetaculos .detail-gallery-track::-webkit-scrollbar{
    display:none;
}
	
	.post-type-archive-espetaculos .detail-card{
    flex:0 0 68vw;
    scroll-snap-align:start;
}
	
	.post-type-archive-espetaculos .detail-card{
    flex:0 0 68vw;
    scroll-snap-align:start;

    display:flex;
    flex-direction:column;
}

.post-type-archive-espetaculos .detail-card-image-link{
    display:block;
    width:100%;
}

.post-type-archive-espetaculos .detail-card img{
    width:100%;
    height:calc(100dvh - 190px);
    object-fit:cover;
    display:block;
}
	
	.post-type-archive-espetaculos .detail-card-content{
    margin-top:.75rem;
}
	
	.post-type-archive-espetaculos .detail-card{
    transition: opacity .2s ease;
}

.post-type-archive-espetaculos .detail-card.is-filtering-out{
    opacity:0;
}
	
	/* ==================================================
    SECCOES PAISAGENS, MAQUINAS E ANIMAIS E PERFORMANCE E NOVOS MEDIA
================================================== */
	
	  .section-projects-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
        gap:1.25rem;
        width:100%;
    }

    .section-title{
        font-size:1.3rem;
        margin-bottom:1.5rem;
    }

    .section-intro-text{
        font-size:.9rem;
        line-height:1.65;
    }
	
	  .section-slideshow{
        width:60%;
    }

}



/* ==================================================
   MOBILE — até 700px
================================================== */

@media (max-width: 700px){
	
	  /* ===========================
       HOMEPAGE
    =========================== */

  .home-navigation{
    top:62%;
    bottom:auto;

    flex-direction:column;
    align-items:center;
    gap:1rem;

    width:100%;
}
    .home-navigation a{
        font-size:.9rem;
    }
	
	
 /* ===========================
       BIOGRAFIA
    =========================== */
	
	
.biografia-header{
    margin-bottom:var(--space-xl);
}

.biografia-header h1{
    font-size:1.2rem;
}	
	
.biografia-layout{
    display:flex;
    flex-direction:column;
    gap:1rem;

    height:auto;
    min-height:0;
    overflow:visible;
} 

	.biografia-imagens{
	order:1;
    position:static;
    top:auto;
    height:auto;
	padding-top:0;

}

.biografia-texto{
    order:2;

    height:auto;
    max-height:none;
    overflow:visible;

    padding:0;
    margin-top:.5rem;

    font-size:.86rem;
    line-height:1.55;
}
	
	.biografia-imagem-principal{
    width:100%;
    max-height:42vh;
    overflow:hidden;
}

.biografia-imagem-principal img{
    width:100%;
    height:100%;
    max-height:42vh;
    object-fit:cover;
    display:block;
}
	
	.biografia-miniaturas{
    display:none;
}

	
	.biografia-texto-curta p{
    margin-bottom:.8rem;
}
	
.biografia-ver-mais{
    margin-top:1rem;
    margin-bottom:2rem;
}
	
		
 /* ===========================
       ARQUIVO ESPETACULO 
    =========================== */
	
	.post-type-archive-espetaculos .layout{
    height:auto;
    min-height:100vh;
    overflow:visible;
}

.post-type-archive-espetaculos .content{
    height:auto;
    min-height:0;
    overflow:visible;
}
	
	 /* layout geral */
    .post-type-archive-espetaculos .espetaculos-layout{
        display:flex;
        flex-direction:column;
        height:auto;
        gap:1.25rem;
    }

    /* mantém apenas a pesquisa */
    .post-type-archive-espetaculos .timeline{
        position:static;
        width:100%;
        max-height:none;
        overflow:visible;
        padding:0;
        border:0;
    }

    .post-type-archive-espetaculos .timeline-list{
        display:none;
    }

    /* importante: anula o antigo .detail { display:none; } */
    .post-type-archive-espetaculos .detail{
        display:block;
        width:100%;
        height:auto;
        min-height:0;
        overflow:visible;
    }

    /* deixa de ser galeria horizontal */
    .post-type-archive-espetaculos .detail-gallery-track{
        display:flex;
        flex-direction:column;
        gap:1.75rem;

        overflow:visible;
        scroll-snap-type:none;
        padding-bottom:2rem;
    }

    /* card ocupa a largura toda */
    .post-type-archive-espetaculos .detail-card{
        flex:none;
        width:100%;
        scroll-snap-align:none;
    }

    /* imagem vertical */
  .post-type-archive-espetaculos .detail-card img{
    width:100%;
    height:auto;
    aspect-ratio:3 / 4;
    object-fit:cover;
    display:block;
}
	
     
	
	/* =========================================
   SINGLE ESPETÁCULO 
========================================= */

.single-espetaculo .espetaculo-textos,
.single-espetaculos .espetaculo-textos,
.single-espetaculo-content .espetaculo-textos{
    display:block;
}

/* Sinopse + ficha ficam uma por baixo da outra */
.single-espetaculo-content .espetaculo-sinopse{
    margin-bottom:2rem;
}

.single-espetaculo-content .espetaculo-ficha{
    margin-bottom:2.5rem;
}

/* Dossier imediatamente depois da ficha técnica */
.single-espetaculo-content .espetaculo-pdf-card{
    display:inline-block;
    margin-top:1.25rem;
}


/* =========================================
   GALERIA — 1 IMAGEM POR LINHA
========================================= */

.single-espetaculo-content .espetaculo-galeria-extra{
    display:flex;
    flex-direction:column;
    gap:1rem;
    width:100%;
    margin-top:0;
}

.single-espetaculo-content .espetaculo-galeria-extra figure,
.single-espetaculo-content .espetaculo-galeria-extra .galeria-item-1{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:auto;
    grid-column:auto;
    grid-row:auto;
    margin:0;
}

.single-espetaculo-content .espetaculo-galeria-extra .lightbox-trigger{
    display:block;
    width:100%;
    padding:0;
    margin:0;
    border:0;
}

.single-espetaculo-content .espetaculo-galeria-extra img{
    display:block;
    width:100%;
    height:auto;
    max-height:none;
    aspect-ratio:auto;
    object-fit:contain;
}
	
		/* ==================================================
    SECCOES PAISAGENS, MAQUINAS E ANIMAIS E PERFORMANCE E NOVOS MEDIA
================================================== */
	

    .section-projects-grid{
        grid-template-columns:1fr;
        gap:1.75rem;
        width:100%;
        padding-bottom:2rem;
    }

    .section-project-card{
        width:100%;
    }

    .section-project-image{
        width:100%;
        aspect-ratio:16 / 9;
    }

    .section-project-info{
        padding-top:.65rem;
    }

    .section-project-info h2{
        font-size:.92rem;
        margin-bottom:.1rem;
    }

    .section-project-info span{
        font-size:.7rem;
    }

    .section-title{
        font-size:1.2rem;
        margin-bottom:1.25rem;
    }

    .section-intro{
        margin-bottom:1.75rem;
    }

    .section-intro-text{
        font-size:.86rem;
        line-height:1.55;
    }

    .section-intro-text p{
        margin-bottom:.9rem;
    }

	 .section-slideshow{
        width:100%;
        margin-bottom:1.5rem;
    }
	
	
	
	/* ==================================================
   PROJETOS
================================================== */

.projetos-accordion-header h1{
    font-size:1.2rem;
}

.projeto-accordion-titulo{
    font-size:.92rem;
}

.projeto-accordion-content{
    padding-top:.75rem;
    padding-bottom:2.5rem;
}

.projeto-accordion-texto{
    width:100%;
    margin:0;
    font-size:.86rem;
    line-height:1.55;
}

.projeto-accordion-texto p{
    margin-bottom:.9rem;
}

	.projeto-accordion-imagem{
    width:100%;
}

.projeto-accordion-imagem img{
    display:block;
    width:100%;
    max-width:none;
    height:auto;
}

/* EDIÇÕES */

.projeto-accordion-edicoes > h2{
    font-size:.92rem;
    margin-bottom:1.25rem;
}

.projeto-edicoes-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:var(--space-xl) var(--space-sm);
}

.projeto-edicao-imagem{
    height:auto;
}
	
	.projeto-edicao-imagem img{
    display:block;
    width:100%;
    height:auto;
}

	
.projeto-edicao-ano{
    font-size:.78rem;
}

.projeto-edicao-descricao{
    font-size:.7rem;
    line-height:1.5;
}

.projeto-edicao-link{
    font-size:.7rem;
}


/* HISTÓRICO */

.projeto-historico{
    width:100%;
    margin:2.5rem 0 0;
}

.projeto-historico > h2{
    font-size:.92rem;
    margin-bottom:1.25rem;
}

.projeto-historico-texto{
    font-size:.86rem;
    line-height:1.55;
}

.projeto-historico-texto h3{
    font-size:.86rem;
    line-height:1.4;
    margin:1.5rem 0 .6rem;
}

.projeto-historico-texto p{
    margin-bottom:.9rem;
}
	
	/* ==================================================
   PUBLICAÇÕES
================================================== */

.publicacoes-accordion-header{
    margin-bottom:var(--space-xl);
}

.publicacoes-accordion-header h1{
    font-size:1.2rem;
}


/* FILTROS — sempre numa só linha */

.publicacoes-filtros{
    display:flex;
    flex-wrap:nowrap;
    gap:var(--space-md);

    overflow-x:auto;
    overflow-y:hidden;

    margin-bottom:var(--space-xl);
    padding-bottom:var(--space-sm);

    scrollbar-width:none;

    -webkit-overflow-scrolling:touch;
}

.publicacoes-filtros::-webkit-scrollbar{
    display:none;
}

.publicacoes-filtros button{
    flex:0 0 auto;
    white-space:nowrap;
}


/* LINHA DA PUBLICAÇÃO */

.publicacao-accordion-toggle{
    grid-template-columns:30px minmax(0, 1fr) 16px;

    gap:var(--space-sm);

    padding:var(--space-md) 0;
}


/* esconder editora na linha em mobile */

.publicacao-editora{
    display:none;
}


.publicacao-ano{
    font-size:.76rem;
}


.publicacao-titulo{
    font-size:.88rem;
    line-height:1.4;
}


.publicacao-accordion-icon{
    font-size:1rem;
}


/* CONTEÚDO ABERTO */

.publicacao-accordion-content{
    display:block;

    padding:
        var(--space-sm)
        0
        var(--space-2xl)
        30px;
}


/* não mostrar capa no telemóvel */

.publicacao-accordion-capa{
    display:none;
}


/* TEXTO */

.publicacao-accordion-subtitulo{
    font-size:.88rem;
    line-height:1.5;

    margin-bottom:var(--space-sm);
}


.publicacao-accordion-autores{
    font-size:.78rem;
    line-height:1.5;

    margin-bottom:var(--space-lg);
}


.publicacao-accordion-resumo,
.publicacao-accordion-extra{
    font-size:.86rem;
    line-height:1.55;
}


.publicacao-accordion-resumo p,
.publicacao-accordion-extra p{
    margin-bottom:.9rem;
}


/* METADADOS EM LISTA */

.publicacao-accordion-meta{
    display:block;

    margin-top:var(--space-xl);
    padding-top:var(--space-md);
}


.publicacao-accordion-meta p{
    margin-bottom:var(--space-md);

    font-size:.78rem;
}


.publicacao-accordion-meta span{
    margin-bottom:.2rem;

    font-size:.68rem;
}


/* LINKS */

.publicacao-accordion-links{
    display:block;

    margin-top:var(--space-lg);
}


.publicacao-accordion-links a{
    display:block;

    width:max-content;

    margin-bottom:var(--space-sm);

    font-size:.7rem;
}
	
	/* ==================================================
   CONTACTOS
================================================== */

.contactos-header{
    margin-bottom:var(--space-xl);
}

.contactos-header h1{
    font-size:1.2rem;
}


.contactos-lista{
    width:100%;
}


.contacto-item{
    display:block;

    padding:var(--space-md) 0;
}


.contacto-label{
    display:block;

    margin-bottom:var(--space-xs);

    font-size:.68rem;
}


.contacto-item a,
.contacto-value{
    font-size:.86rem;
    line-height:1.55;
}
	
	.erro-404 h1{
    font-size:1.2rem;
}

.erro-404 p{
    font-size:.86rem;
    line-height:1.55;
}
	
}