/*
 Theme Name: Gabriel Baggio Astra Child
 Theme URI: https://gabrielbaggio.com.ar/
 Description: Tema hijo de Astra personalizado para Gabriel Baggio
 Author: Sofía Castro
 Author URI: https://gabrielbaggio.com.ar/
 Template: astra
 Version: 1.0.0
*/

/*  CURSOR  */

.page-id-18,
.page-id-18 a,
.page-id-18 a:hover {
  cursor: url("https://gabrielbaggio.com.ar/wp-content/uploads/2025/10/logoArtboard-1logo56-1.png") 0 0, auto;
}


html{
	scrollbar-width: none;
}


/* FONTS */
body {
  font-family: "Futura Std Book", sans-serif;
}

/* Declaración de la fuente */
@font-face {
  font-family: "Futura Std Book";
  src: url("fonts/FuturaStd-Book.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
}

/* Titulares */
h1 {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 48.83px;
    line-height: 1; 
    letter-spacing: 0.05em;
}

h2 {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 39.06px; 
    line-height: 1; 
    letter-spacing: 0.05em;
}

h3 {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 31.25px; 
    line-height: 1; 
    letter-spacing: 0.05em;
}

h4 {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 25px; 
    line-height: 1; 
    letter-spacing: 0.05em;
}

/* Párrafos */
.paragraph-large {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0;
}

.paragraph-medium {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12.8px;
    line-height: 20px;
    letter-spacing: 0;
}

.obra-titulo {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-style: normal; /* "Book" lo interpretamos como el peso 400 */
    font-size: 31.25px;
    line-height: 100%;
    letter-spacing: 5%;
    margin: 0; /* elimina espacios extra */
    display: inline-block; /* para que se alinee con el año si lo ponés al lado */
}

.obra-year {
    font-family: "Futura Std Book", sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 100%;
    letter-spacing: 5%;
    margin-left: 0; /* separación con el título */
    color: #000000;
}

.obra-content pre {
    font-family: 'Futura Std Book', sans-serif ;
    font-weight: 700 ;
    font-style: normal ;
    font-size: 18px ;
    line-height: 24px ;
    letter-spacing: 0% ;
    color: #000000;
}

/* ===========================
   HEADER GENERAL
=========================== */

/* Ocultar títulos de página por defecto */
.entry-title {
  display: none !important;
}

/* Base de tipografía global */
html {
  font-size: 16px;
}

html, body {
  height: 100%;
  margin: 0;
}

/* Accesibilidad: quitar outlines/box-shadows */
:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* ===========================
   HEADER FIJO
=========================== */

.site-content{
	height:100vh;
}

.site-footer{
	height:6vh;
}


/* ===========================
   HEADER FIJO DESKTOP
=========================== */
@media (min-width: 1021px) {
  #ast-desktop-header .site-header,
  #ast-desktop-header .ast-primary-header {
    background-color: #ffffff !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 53px;
    z-index: 9999;
    border-bottom: 1px solid #000000;
    transition: none !important;
  }

  /* Ocultar header mobile en desktop */
  #ast-mobile-header {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  /* Separar contenido del header fijo */
  .site-content {
    padding-top: 60px; /* igual que altura del header */
  }
	.footer-widget-area[data-section="section-fb-html-1"] {
		margin: 0;
	}
	.footer-widget-area[data-section="section-fb-html-2"] {
		margin:0;
	}
}

/* ===========================
   HEADER MOBILE
=========================== */
@media (max-width: 1021px) {
  #ast-mobile-header .ast-primary-header {
    background-color: #ffffff ;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;
    border-bottom: 1px solid #000000;
  }

  /* Asegurar que logo y hamburguesa se vean alineados */
  #ast-mobile-header .ast-builder-layout-element,
  #ast-mobile-header .menu-toggle {
    display: flex !important;
    align-items: center;
  }

  /* Separar contenido del header fijo en mobile */
  .site-content {
    padding-top: 70px; /* ajustá según la altura del header mobile */
	height: 100vh;
  }

	/* --- HEADER MÓVIL --- */
	.ast-mobile-header-content {
	  background: transparent !important;    /* sin recuadro/blanco */
	  border: none !important;
	  box-shadow: none !important;
	}

	/* Contenedor del título y la X en el header móvil */
	.ast-mobile-header-content .ast-builder-grid-row {
	  display: flex !important;
	  align-items: center !important;        /* centra verticalmente el texto y la X */
	  justify-content: space-between !important;
	  padding: 0.5rem 1rem !important;       /* opcional: ajusta espacio interno */
	  background: #C5F6DD !important;        /* o transparente si querés */
	}

	/* Botón del menú (la X) */
	.menu-toggle.main-header-menu-toggle {
	  display: flex !important;
	  align-items: center !important;        /* alinea verticalmente con el texto */
	  justify-content: center !important;
	  background: none !important;           /* sin fondo ni borde */
	  border: none !important;
	  box-shadow: none !important;
	  padding: 0 !important;
	  margin: 0 !important;
	}

	/* SVG de la X: centrado perfecto y un poco más arriba si es necesario */
	.menu-toggle.main-header-menu-toggle svg {
	  position: relative;
	  top: -1px; /* ajustá a -2px o 0px según tu ojo */
	  width: 18px !important;
	  height: 18px !important;
	}
}

.ast-primary-header-bar {
  border-bottom: 1px solid #000000 !important;
}

/* Evitar header transparente de Astra */
.site-header.ast-transparent {
  background-color: #ffffff !important;
}

/* Separar el contenido del header fijo */
.site-content {
  padding-top: 60px; /* igual que altura del header */
  flex: 1 0 auto;
}

/* Ocultar header y footer en la home */
body.home header.site-header,
body.home footer.site-footer {
  display: none !important;
}

.site-footer{
	display:flex;
}

/* ===========================
   MENÚ DE NAVEGACIÓN
=========================== */

/* Estado normal y activo */
.main-header-menu > .menu-item > a,
.main-header-menu > .menu-item.current-menu-item > a,
.main-header-menu > .menu-item.current_page_item > a {
  color: #000 !important;
  background-color: transparent !important;
  padding: 8px 14px;
  border-radius: 4px; /* opcional */
  transition: background 0.2s ease, color 0.2s ease;
}

/* Hover */
.main-header-menu > .menu-item > a:hover {
  background-color: #C5F6DD !important; /* verde claro */
  color: #000 !important;
}

.menu-link:hover,
.ast-header-navigation .menu-link:hover {
  border-radius: 0 !important;
}

/* ===========================
   SCROLLBARS PERSONALIZADOS
=========================== */

.left-column::-webkit-scrollbar,
.right-column::-webkit-scrollbar {
  width: 7px;
}

.left-column::-webkit-scrollbar-track,
.right-column::-webkit-scrollbar-track {
  background: #D7D7D7; /* gris claro */
}

.left-column::-webkit-scrollbar-thumb,
.right-column::-webkit-scrollbar-thumb {
  background: #A1A1A1; /* gris oscuro */
  border-radius: 3px;
}

.left-column::-webkit-scrollbar-button,
.right-column::-webkit-scrollbar-button {
  display: none;
}

/* ===========================
  HOME
=========================== */

body.home h1.titulo {
  color: #C8BC97 !important;
  margin: 0 !important;
}

body.home {
  margin: 0;              /* elimina posibles márgenes */
  padding: 0;
  overflow: hidden;       /* evita que aparezca scroll */
}

body.home .titulo-home {
  display: flex;
  flex-direction: column;       /* título arriba, botón abajo */
  justify-content: center;      /* centra verticalmente */
  align-items: center;          /* centra horizontalmente */
  min-height: 100vh;            /* ocupa toda la altura de la pantalla */
  text-align: center;           /* asegura que el h1 esté centrado */
}

/* Botón en home */
body.home .wp-block-button__link {
  color: #C8BC97 !important;   /* tipografía */
  background: transparent !important; /* fondo transparente */
  transition: all 0.3s ease;   /* animación suave */
  box-shadow: none !important;
}

body.home .wp-block-button__link:hover {
  color: #000000 !important;   /* tipografía negra al hover */
  background: transparent !important; /* sigue transparente */
}

/* ===========================
   RESET DE ASTRA EN PLANTILLA OBRAS
   (para que ocupe todo el ancho y no meta paddings)
=========================== */
.page-template-archivo .ast-container,
.page-template-page-obras .ast-container,
.single-obras .ast-container {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

.page-template-archivo .ast-container.ast-container,
.page-template-page-obras .ast-container.ast-container,
.single-obras .ast-container.ast-container {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-template-page-obras .ast-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

.page-template-single-obras {
  display: flex;
  flex-direction: row;
  width: 100vw;
  /* height: calc(100vh - 60px);  QUITAR */
  
  /* overflow: hidden;            QUITAR */
}

body:not(.home) .ast-container {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ===========================
   ITEMS DE LISTA DE OBRAS
=========================== */
.obra-item, 
.page-template-page-obras .post-item {
  display: block;
  cursor: pointer;
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid #eee;
  text-decoration: none;
  color: inherit;
  
}

.obra-item:hover,
.page-template-page-obras .post-item:hover {
  background-color: #f0f0f0;
}



.obra-item h3,
.page-template-page-obras .post-item h6 {
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.05em;
  margin: 0;
}

/* ====== OCULTAR ABOVE FOOTER EN OBRAS ====== */
/* Ocultar la fila "Above Footer" solo en obras */
body.single-obras .site-above-footer-wrap,
body.page-template-page-obras .site-above-footer-wrap {
  display: none !important;
}

/* ====== LAYOUT BASE (todas las páginas excepto home) ====== */
body:not(.home) .site-content {
  margin: 0;
  padding: 0;
}

.page-template-archivo,
.single-obras {
  display: flex;
  flex-direction: row;
  width: 100vw;
  height: 100vh;
}

/* LISTADO DE OBRAS (page-obras) */
.page-template-page-obras {
  display: flex;
  flex-direction: row;
  width: 100vw;
  height: 97vh;
  margin-top: 52px;
  overflow: hidden;
}

/* OBRA INDIVIDUAL (single-obras) */
.page-template-single-obras {
  display: flex;
  flex-direction: row;
  width: 100vw;
  height: 97vh;
  margin-top: 53px;
  overflow: hidden;
}




/* ====== COLUMNAS ====== */
.left-column {
  flex: 0 0 34%;
  background: #fff;
  overflow-y: auto;
  height: 100%;
  box-sizing: border-box;
  padding: 1rem;
  padding-left: 2rem;
  padding-right:2rem;
	padding-bottom:3rem;
	border-right: 1px solid black;
    border-left: 1px solid black;
}

.right-column {
  flex: 0 0 66%;
  overflow-y: auto;
  height: 100%;
  box-sizing: border-box;
  padding: 0;
}

.single-obra-right-column {
  padding: 1rem;
}




/* ====== COLORES SEGÚN PLANTILLA ====== */
/* Archivo: derecha verde */
.page-template-archivo .right-column {
  background: #C5F6DD;
}

/* Obras (listado): derecha verde */
.page-template-page-obras .right-column {
  background: #C5F6DD;
}

/* Obra individual: derecha blanca */
.single-obras .right-column {
  background: #fff;
}

/* ====== DETALLES ====== */
.left-column h3,
.left-column h5 {
  color: #000;
  margin: 0;
}

.left-column a {
  color: #000;
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  padding: 0.8rem 0.3rem 0.8rem 0.3rem;
  transition: background 0.2s ease;
}

.left-column a:hover {
  background-color: #C5F6DD;
}

.email,
.archivo-externo {
  color: black !important;
}

/* Previews de imágenes */
.right-column img,
#obra-right img.obra-preview {
  max-width: 100%;
  width:100vw;
  height: auto;
  object-fit: cover;
  display: block;
  margin-bottom: 1rem;
}

/* Items de lista de obras */
.obra-item {
  display: block;
  padding: 12px 10px;
  border-bottom: none;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}
.obra-item:hover { background: #fafafa; }
.obra-item.active { background: #f5f7fa; }

.single-obras .obra-title {
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;          /* Book */
  font-style: normal;        /* Book equivale a normal */
  font-size: 1.5rem;
  line-height: 100%;
  letter-spacing: 5%;        /* cuidado: algunos navegadores prefieren em, mejor 0.05em */
  background-color: #C5F6DD;  /* fondo amarillo */
  display: inline-block;     
  padding: 0.2em 0.4em;
  margin-top: 3rem; 
  margin-left: 0;    
}

.single-obras .obra-year {
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;          /* Book */
  font-style: normal;        /* Book equivale a normal */
  font-size: 1.5rem;
  line-height: 100%;
  letter-spacing: 5%;        /* cuidado: algunos navegadores prefieren em, mejor 0.05em */
  background-color: #C5F6DD;  /* fondo amarillo */
  display: inline-block;     /* para que el fondo solo cubra el texto */
  padding: 0.2em 0.4em;      /* un poco de aire alrededor */
}

.single-obras .obra-content {
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;          
  font-style: normal;       
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;        
  color: black;
  padding-left: 0;
  padding-right: 12px;
  
}

.page-template-single-obras .download-texto {
  display: block;
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 41px;
  letter-spacing: 5%;
  color: #C8BC97;
  background-color: transparent;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: opacity 0.3s ease;
  margin-top: 0.5rem; /* pequeño espacio debajo del año */
}

.download-texto:hover {
  color: #C6B98E; 
  opacity: 0.9;
  text-decoration-color: #C6B98E;
  text-decoration-style: solid;
  text-decoration: underline;
  background-color: transparent !important;
}


/* Modal (usado en Archivo) */
#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.6);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}
#modal-content {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#modal-content iframe {
  width: 100% !important;
  height: 100% !important;
  border: none;
  display: block;
}

/* X PARA CERRAR MODAL */



#overlay-close {
  position: absolute;
  top: 9rem;
  right: 1rem;
  width: 30px;
  height: 30px;
padding-right: 2.5rem;
  background: none;
  color: white;
  font-size: 26px;
  line-height: 26px;
  padding-top: 2rem;
  text-align: center;
  cursor: pointer;
  z-index: 10000;
  transition: background 0.2s, color 0.2s;
}
#overlay-close:hover {
  color: #C5F6DD;
}


/* ANTERIOR Y SIGUIENTE */
.obra-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 2rem;
  padding-top: 1rem;
  padding-bottom: 6rem; 
  border-top: 1px solid #ccc;
  align-items: center;
}

.obra-navigation a {
  font-family: "Futura Std Book", sans-serif;
  font-size: 14px;
  color: #000;
  text-decoration: none;
}

.obra-navigation a:hover {
  color: #555;
}



.disabled {
	color: lightgrey !important;
	padding: 0.8rem 0.3rem 0.8rem 0.3rem !important;
}
.disabled svg {
	fill: lightgrey !important;
}

/* FOOTER */

/* ===== FOOTER FIJO ===== */

/* Footer normal (al fondo si la página es corta) */
footer.site-footer {
  flex-shrink: 0;
  margin-top: auto;
  width: 100%;
  border-right: 1px solid black;
  border-bottom: 1px solid black;
  border-left: 1px solid black;
}

.single-obras footer.site-footer,
.page-template-page-obras footer.site-footer,
.page-template-archivo footer.site-footer {
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 96;
}

.single-obras .right-column,
.single-obras .left-column {
  padding-bottom: 120px; /* ajustá a la altura real del footer */
}


/* Ocultar footer en la home */
.home footer.site-footer {
  display: none;
}

/* Dejar espacio al contenido para que no quede tapado */
body:not(.home) {
  padding-bottom: 120px; /* ajustá según la altura real del footer */
}

/* Padding interno para que el texto no quede pegado a los bordes */
footer.site-footer > .site-above-footer-wrap .ast-builder-grid-row-container-inner {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* Opción 2: todas las franjas del footer a ancho total */
footer.site-footer > .site-above-footer-wrap,
footer.site-footer > .site-primary-footer-wrap,
footer.site-footer > .site-below-footer-wrap {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: none !important;
}

.site-footer {
  font-size: 0.64rem; /* equivale a 10.24px si 1rem = 16px */
}


footer.site-footer .ast-builder-grid-row-container-inner {
  padding-left: 2rem;
  padding-right: 2rem;
}

@media (min-width: 1021px) {
  #backToTop {
    display: none !important;
  }
}

/* ----------- MOBILE -------------- */
@media (max-width: 1021px) {
  /* Evita sangrías por 100vw / wrappers de Astra */
  body.page-template-page-obras .ast-container,
  body.page-template-page-obras .site-content,
  .page-template-page-obras {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
  }

 body {
    padding-top: 5rem; /* 100px = 6.25rem */
  }

		/* 🎨 Estilos para la página Home */
	body.home {
	  background-color: #C5F6DD !important; /* fondo verde claro */
	  color: #C8BC97 !important;           /* tipografía general */
	}

	/* Asegura que todos los textos hereden el color */
	body.home h1,
	body.home h2,
	body.home h3,
	body.home h4,
	body.home h5,
	body.home h6,
	body.home p,
	body.home a {
	  color: #C8BC97 !important;
      font-family: "Futura Std Book", sans-serif;
	  font-weight: 400;          
	  font-style: normal;  
      font-size: 1.95rem !important;
	}

	/* Botón "ENTRAR" */
	body.home .wp-block-button.gris-claro.entrar a.wp-block-button__link {
	  color: #C8BC97 !important;           /* color del texto */
	  background: transparent !important;  /* opcional: sin fondo */
      font-size: 1rem !important;
	  padding-top: 0; 
	}
	
	

  /* Asegura que el wrapper principal no empuje el contenido hacia abajo */
  body.home .site,
  body.home #content,
  body.home .site-content,
  body.home .ast-container {
    padding: 0 !important;
    margin: 0 !important;
    height: calc(100vh - 80px) !important; /* ajusta según tu header */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
	width: 100vw;
  }

  /* Centra el bloque dentro del área visible */
  body.home .titulo-home {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
	
  }


	.site-primary-footer-inner-wrap,
	.ast-builder-footer-grid-columns {
	  display: flex !important;
	  flex-direction: column !important;
	  align-items: center !important;
	  justify-content: center !important;
	  text-align: center !important;
	  margin: 0 !important; 
	}

	/* Asegura que cada sección ocupe todo el ancho del footer */
	.site-footer-section {
	  width: 100% !important;
	  margin: 0.25rem 0 !important;
	}

	/* Centra el texto interno */
	.site-footer-section p,
	.site-footer-section a {
	  text-align: center !important;
	  display: block !important;
      color: #A1A1A1 !important;
      line-height: 1.2 !important;
      margin: 0 !important;
	}


  /* La lista ocupa 100% y sin padding del contenedor */
  .page-template-page-obras .left-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 ;
	margin-top: 5rem !important;
    box-sizing: border-box;
  }

  /* Aire interno solo a los ítems */
  .page-template-page-obras .left-column .obra-item {
    padding: 1rem 0rem 1rem 0rem  !important;
  }

@media (max-width: 920px) {
  /* Solo el PRIMER <a.obra-item> dentro de #obras-list */
  #obras-list > a.obra-item:first-of-type {
    padding-top: 2rem !important;
    
  }
}
  /* LISTA (sin obra abierta) -> ocultar preview */
  .page-template-page-obras:not(.obra-open) .right-column {
    display: none !important;
  }

  /* DETALLE ABIERTO (obra-open) -> apilar y fotos primero */
  .page-template-page-obras.obra-open {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    overflow: visible !important;
  }
  .page-template-page-obras.obra-open .left-column,
  .page-template-page-obras.obra-open .right-column {
    width: 100% !important;
    flex: none !important;
    height: auto !important;
    overflow: visible !important;
    display: block !important;
  }
  .page-template-page-obras.obra-open .right-column {
    order: -1;              /* 📸 IMÁGENES ARRIBA */
    margin-bottom: 1.5rem;  /* separación con el texto */
  }

  h2.obra-title {
    margin-top: 0 !important;
  }


	body.single-obras,
	body.single-obras #content,
	body.single-obras .site-content,
	body.single-obras .ast-container,
	body.single-obras .page-template-single-obras {
	  margin-top: 0 !important;
		height:auto;
	}

  /* Fondo blanco solo en mobile para el detalle (single real o inyectado) */
  body.single-obras,
  body.single-obras .ast-container,
  body.single-obras .site-content,
  body.single-obras .page-template-single-obras,
  body.single-obras .page-template-single-obras .left-column,
  body.single-obras .page-template-single-obras .right-column,
  .page-template-page-obras.obra-open,
  .page-template-page-obras.obra-open .ast-container,
  .page-template-page-obras.obra-open .site-content,
  .page-template-page-obras.obra-open .right-column {
    background: #fff !important;
	margin-top: 0.8rem !important;
	  margin-bottom:-1rem !important;
  }
  .page-template-page-obras.obra-open .obra-image-wrapper {
    background: transparent !important;
  }

  /* Si usás el reflow por JS, ocultá la derecha después de mover cosas */
  .page-template-page-obras.obra-open.obra-reflow .right-column {
    display: none !important;
  }
}

/*
body.single-obras .site-footer,
body.single-obras .ast-footer-wrap,
body.single-obras footer {
	display: none !important;
	visibility: hidden !important;
}
*/


#backToTop {
	position: fixed;
	bottom: 2rem;      /* separación desde el borde inferior */
	right: 2rem;       /* separación desde el borde derecho */
	width: 3.5rem;     /* 56px */
	height: 3.5rem;    /* 56px */
	border-radius: 50%;
	background-color: #C5F6DD;
	border: none;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	z-index: 98;
	transition: transform 0.2s ease;
}

#backToTop:hover {
	transform: scale(1.1);
}

#backToTop svg {
	width: 2.3rem;   /* antes 1.4375rem */
	height: 1.9rem;
	fill: black; /* color de la flecha */
}

#ast-scroll-top:focus {
	outline: none !important;
	box-shadow: none !important;
}



@media (max-width: 1021px) {
 .page-template-single-obras {
    display: flex !important;
    flex-direction: row !important;
    height: auto !important;          /*  evita el recorte a 100vh */
    overflow: visible !important;   
	 padding-bottom: 0;
     
	/*  deja scrollear */
	}
	
  .page-template-single-obras .left-column,
  .page-template-single-obras .right-column {
        width: 100% !important;
        flex: none !important;
        height: 100%;
        overflow: scroll;
        padding: 0 2rem 4rem 2rem !important;
        display: block !important;
  }

  html, body,
  body.page-template-page-obras,
  .page-template-page-obras,
  .page-template-page-obras.obra-open,
  .page-template-page-obras.obra-open .ast-container,
  .page-template-page-obras.obra-open .site-content {
    height: auto !important;
    min-height: 100vh !important;
    overflow-y: visible !important;
    overflow-x: hidden !important;
  }

  /* --- Asegura estructura vertical scrolleable --- */
  .page-template-page-obras,
  .page-template-page-obras.obra-open {
    display: block !important;
    flex-direction: unset !important;
  }

  /* --- Espacio superior para no tapar el header --- */
  body.page-template-page-obras {
    padding-top: 6.25rem !important; /* 100px */
  }
	
	/* 🔧 La estructura principal pasa a una sola columna */
  .archivo-container,
  .archivo-container-display {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }

  /* 🧱 La columna izquierda ocupa todo el ancho */
  .left-column,
  .left-column-archivo {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    padding: 0 2rem 2rem 2rem !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
	position: relative;
	overflow-y: visible;
  }
	
  .left-column-archivo {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        padding: 0 2rem 4rem 2rem !important;
   }
	

  /* 🚫 Si existiera la derecha, que desaparezca igual */
  .right-column,
  #archivo-right {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  /* 🎥 Overlay centrado como ahora */
  #overlay {
    position: fixed !important;
    top: 0; left: 0;
    width: 100%; height: 100%;
    display: none; /* activado por JS */
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.7);
    z-index: 9999;
  }

    #modal-content {
    position: absolute !important;
    width: 21.5rem;   /* 344px */
    height: 12rem;    /* 192px */
    transform: rotate(0deg);
    opacity: 1;
    background: #fff;
    padding: 1rem;
    border-radius: 12px;
    overflow: auto;
  }


	h2.archivo-titulo {
		margin-top: 0 !important;
	  }
	
    .obra-item {
		padding: 0 !important;
	  }

	 h2.obra-title {
		margin-top: 6rem !important;
	  }
    
	.download-texto {
		padding: 0 1rem 1rem 0 !important;
	  }
	
    .obra-year  {
		margin-bottom: 0 !important;
	  }


/* === MENÚ MÓVIL SIN ESPACIO ARRIBA NI ABAJO === */
/* Header móvil fijo arriba (igual que antes) */
.ast-mobile-header-content {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999 !important;
  background-color: #C5F6DD !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

/* Menú desplegable con fondo verde claro */
.ast-builder-menu-1 .main-header-bar-navigation.toggle-on,
.ast-builder-menu-1 .site-navigation.toggled {
  position: fixed !important;
  top: 5rem !important; /* debajo del header móvil */
  left: 0;
  width: 100vw !important;
  height: calc(100vh - 3.5rem) !important;
  background-color: #C5F6DD !important;
  z-index: 9998 !important;
  overflow-y: auto !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Fondo verde claro para el menú móvil (Astra) */
.ast-mobile-popup-drawer.active,
.ast-mobile-header-wrap,
.ast-mobile-header-content,
.ast-offcanvas-overlay {
  background-color: #C5F6DD !important;
}

/* Fondo detrás del menú (opcional, si usás overlay semitransparente) */
.ast-mobile-popup-overlay {
  background-color: rgba(0, 0, 0, 0.2) !important;
}


  .ast-header-break-point .main-header-menu {
    background-color: transparent !important;
    border-top-width: 0;
  }



  /* Header móvil fijo con fondo verde */
  #ast-mobile-header .ast-primary-header {
    
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;
    border-bottom: 1px solid #00000010; /* línea muy sutil, opcional */
    transition: background-color 0.3s ease;
	height: 80px;
  }

  /* Asegura que el resto del menú tenga el mismo fondo */
  #ast-mobile-header .ast-mobile-header-content,
  #ast-mobile-header .main-header-bar-navigation,
  #ast-mobile-header .ast-main-header-wrap {
    background-color: #C5F6DD !important;
  }

  /* Si el menú cubre toda la pantalla, elimina fondos superpuestos */
  .ast-header-break-point .main-header-menu {
    background-color: transparent !important;
  }


/* 🔥 El ul que realmente centra todo: lo forzamos a apilar arriba */
.ast-builder-menu-1 .main-header-bar-navigation.toggle-on ul.ast-flex,
.ast-builder-menu-1 .site-navigation.toggled ul.ast-flex {
  display: flex !important;
  flex-direction: column !important;       /* apila los li verticalmente */
  justify-content: flex-start !important;  /* los coloca arriba */
  align-items: flex-start !important;      /* alineación izquierda */
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Ítems del menú */
.ast-builder-menu-1 .main-header-bar-navigation li {
  border-bottom: 1px solid #000 !important;
  width: 100% !important;
  margin: 0 !important;
  padding-top: 0 ;
  padding-left: 1rem ;
}

/* Enlaces */
.ast-builder-menu-1 .main-header-bar-navigation a {
  display: block !important;
  padding: 1rem 1.2rem !important;
  width: 100%;
  text-align: left !important;
  color: #000 !important;
  text-decoration: none !important;
  font-family: 'Futura Std Book', sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.2 !important;
  background: none !important;
  border: none !important;
  text-transform: uppercase;
}


/* Empuja el contenido general para que no quede oculto bajo el header */
body {
  padding-top: 6rem !important; /* misma altura que el header */
}

/* Permite ver el menú en todo momento */
html, body, .site-content, .ast-container {
  overflow: hidden;
}
	
	.page-id-39 .site-content{
		height:auto;
	}

}
/* === 🔧 CORRIGE ESPACIO GIGANTE BAJO EL FOOTER EN MOBILE (page-obras) === */
@media (max-width: 1021px) {
	.obra-image-modal{
		display:none;
	}
	
	.page-id-39 .site-content::-webkit-scrollbar {
	  display: none; /* Chrome, Safari */
	}

	.page-id-39 .site-content {
	  scrollbar-width: none;       /* Firefox */
	  -ms-overflow-style: none;    /* IE y Edge antiguos */
	}

  /* 1️⃣ Elimina cualquier alto forzado en Astra */
  body.page-template-page-obras,
  .page-template-page-obras,
  .page-template-page-obras .ast-container,
  .page-template-page-obras .site-content,
  .page-template-page-obras #content,
  .page-template-page-obras .hfeed.site {
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
  }

  /* 2️⃣ Borra posibles bloques transparentes del scroll-top */
  #ast-scroll-top {
    position: fixed !important;
    bottom: 1.5rem !important;
    right: 1.5rem !important;
    z-index: 9999 !important;
  }

  /* 3️⃣ El footer no debe generar margen visual */
  footer.site-footer,
  .ast-footer-wrap,
  #colophon {
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
  }

  /* 4️⃣ Asegura que no haya pseudo-elementos creando espacio */
  footer.site-footer::after,
  footer.site-footer::before,
  .ast-container::after,
  .ast-container::before {
    display: none !important;
    content: none !important;
  }

  /* 5️⃣ Si el body aún hereda margen del html, se fuerza a 0 */
  html, body {
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
	scrollbar-width: none;
  }
	
	.obra-navigation {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important; /* opcional: elimina también márgenes si hubiera */
  }

  /* Si los enlaces internos tienen relleno, podés compactarlos también */
  .obra-navigation .obra-nav-link {
    padding-bottom: 0 !important;
  }
	
	.archivo-bloque:first-of-type .archivo-titulo {
  padding-top: 6rem !important;
}
	 .obra-content {
    padding-top: 1.5rem;
  }
	
}

/* ----------- FIN MOBILE -------------- */

.archivo-container-display {
    width: 100% ;
	display: flex;
	flex-direction: row;
  }

.left-column-archivo {
    height: 100vh;
    padding-top: 4rem;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    padding-left: 3rem;
}

.left-column-archivo {
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* flow column, flex start */
}

/* Títulos de sección (VIDEOS, PUBLICACIONES, etc.) */
.archivo-titulo {
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;
  font-size: 1.5rem !important;
  line-height: 100%;
  letter-spacing: 5%;
  text-transform: uppercase;
  margin: 2rem 0 1rem;
  padding-bottom: 0.5rem; 
}


.archivo-bloque:first-of-type .archivo-titulo {
  padding-top: 3rem;
}

/* Subtítulos (ej. GABRIEL BAGGIO: CERAMISTA – ARTISTA VISUAL) */
.archivo-subtitulo {
  margin: 0.5rem 0;
  font-size: 1rem;
}

.archivo-subtitulo a {
  font-family: "Futura Std Book", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  text-transform: uppercase;
  line-height: 1;
  padding: 0.7rem 0.3rem 0.7rem 0rem;
  text-decoration: none;
  color: #000;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.3rem; /* espacio mínimo con la fuente */
}

/* Fuentes (ej: creadores, museo, etc.) */
.archivo-fuente {
  font-family: "Futura Std Book", sans-serif;
  color: #C8BC97;
  font-weight: 400;
  line-height: 1.3;
  font-size: 13px;
  margin-left: 0.2rem; /* pegado al subtítulo */
  text-transform: none;
}

.archivo-bloque {
  margin-bottom: 2.5rem;   /* separación con el siguiente */
  width: 100%;
}

.page-id-18 .site-content{
	padding-top:0 !important;
}

.page-id-18 h1 {
    font-family: 'Futura Std Book';
    font-weight: 400;
}

.page-id-18 .entrar {
	font-family: 'Futura Std Book';
    font-weight: 400;
}

.site-footer a {
	color: #a1a1a1;
}

.obra-image-title{
	font-size:0.8rem;
}

.obra-navigation{
	text-transform: uppercase;
}

.obra-nav-link{
	 display: flex;
    align-content: center;
    align-items: center;
}
.icon-arrow{
	margin: 0 0.3rem;
}

.ast-desktop .ast-primary-header-bar.main-header-bar, .ast-header-break-point #masthead .ast-primary-header-bar.main-header-bar {
    padding-left: 3rem;
    padding-right: 3rem;
}

@media (max-width: 1021px) {
  .ast-primary-header-bar.main-header-bar {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
}

.ast-custom-button{
	padding-right:0;
}

.site-title a {
    font-size: 1.2rem;
    display: block;
    font-family: 'Futura Std Book';
    font-weight: 400;
}

/*  MODAL  */



#ast-scroll-top,
#ast-scroll-top:focus,
#ast-scroll-top:focus-visible,
#ast-scroll-top:active {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
  -webkit-tap-highlight-color: transparent !important; /* quita el destello azul en móviles */
  -webkit-focus-ring-color: transparent !important; /* quita el foco azul en Edge/Chrome */
}

/* Pseudo-elementos posibles del botón */
#ast-scroll-top::before,
#ast-scroll-top::after {
  content: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* También forzamos el SVG a no generar borde interno */
#ast-scroll-top svg,
#ast-scroll-top svg:focus,
#ast-scroll-top svg:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
  -webkit-focus-ring-color: transparent !important;
}

#ast-scroll-top {
  display: none !important;
}

@media (min-width: 921px) and (max-width: 1021px) {
  #modal-content {
    border: 0.5rem solid white; 
  }

#obras-list.left-column {
  border: 1px solid #000;
	margin-top:6rem !important;
}

#obra-right.right-column {
  border: 1px solid #000;
  border-left: none;
}

.left-column {
  border: 1px solid #000; 
}

.right-column {
  border: 1px solid #000; 
}
}
@media (max-width: 1021px) {
  .ast-mobile-header-wrap .ast-main-header-wrap,
  .ast-mobile-header-wrap .main-navigation {
    border: 1px solid #000 !important;
    box-sizing: border-box;
	border-top: none !important;
  }
}

.obra-nav-link.disabled {
  pointer-events: none;
  opacity: 0.4;
  cursor: default;
  text-decoration: none;
}


/* === LIGHTBOX: ocultar en desktop, mostrar solo en mobile === */

/* 🔒 Ocultar todo el overlay y la navegación del lightbox en desktop */
@media (min-width: 921px) {
  .simple-lightbox,
  .sl-wrapper,
  .sl-overlay,
  .sl-image,
  .sl-navigation,
  .sl-counter {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* quitar el cursor de zoom */
  .obra-lightbox img {
    cursor: default !important;
  }
}

/* ✅ En mobile, mostrar normalmente */
@media (max-width: 920px) {
  .obra-lightbox img {
    cursor: zoom-in !important;
  }
}

:root {
  --header-h: 64px; /* ajustá a tu altura real */
}

/*
@media (max-width: 768px) {
  #ast-mobile-header .ast-primary-header {
    position: fixed;
    z-index: 10000;
  }

  .page-template-page-obras .left-column {
    margin-top: var(--header-h) !important;  
    max-height: calc(100vh - var(--header-h)) !important;
    overflow-y: auto !important;                   
    height: auto !important;                       
  }
}
*/
	
@media (max-width: 544px) {
    .ast-mobile-header-wrap .ast-primary-header-bar, .ast-primary-header-bar .site-primary-header-wrap {
        min-height: 70px !important;
		border:1px solid black;
    }
}
	
@media (min-width: 1020px) {
	.footer-widget-area[data-section="section-fb-html-1"] .ast-builder-html-element {
		text-align: left;
	}
    #ast-desktop-header {
        display: block !important;
    }
	.ast-inline-flex {
    -js-display: inline-flex;
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    align-content: center;
    }
	.ast-mobile-header-wrap .ast-primary-header-bar, .ast-primary-header-bar .site-primary-header-wrap {
		min-height: 30px !important;
	}
	.ast-builder-menu .main-navigation>ul {
		align-self: center;
	}
	.main-navigation ul {
		list-style: none;
		margin: 0;
		padding-left: 0;
		position: relative;
	}
	.ast-flex {
		-js-display: flex;
		display: flex
	;
		flex-wrap: wrap;
	}
}

.site-footer a {
  text-decoration: none !important;
  width: 74%;
  line-height: 1rem !important;
}

footer#colophon .ast-header-html[class*="inner-link-style-"] a {
  text-decoration: none !important;
  background-image: none !important;
  border-bottom: 0 !important;
  display: inline-block !important;
}



footer#colophon .footer-widget-area[data-section="section-fb-html-1"] .ast-builder-html-element p {
  display: inline-block !important;
  text-decoration: none !important;
  border: 0 !important;
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
}


@media (min-width: 1021px)
{
	.obra-image-modal{
		width:0;
	}
	
	body{
		    border: 1px solid black;
		border-bottom: none;
	}
	#modal-content{
    max-width: 40rem !important;
    max-height: 30rem !important;
	}
	#overlay-close{
		right: 20% !important;
	}
}

@media (max-width 1021px){
	.page-id-39 html,
.page-id-39 body {
  overflow: auto;              /* mantiene el scroll funcional */
  scrollbar-width: none;       /* Firefox */
  -ms-overflow-style: none;    /* IE/Edge legacy */
}

/* Chrome, Safari, Edge Chromium */
.page-id-39 html::-webkit-scrollbar,
.page-id-39 body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}
}

:focus {
  outline: none !important;
  box-shadow: none !important;
}

a,
button {
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important; /* móviles */
}

a:focus,
a:focus-visible,
a:active,
button:focus,
button:focus-visible,
button:active {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Quita el contorno interno en Firefox */
a::-moz-focus-inner,
button::-moz-focus-inner {
  border: 0 !important;
}