/*------------------------------------------------------------------------ 
GENERAL  /////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

html, body {
	background-color:#000;
	color: var(--color-white);
	font-family:var(--font-main);
	font-weight:300;
	letter-spacing:0.18px;
	}


/* Font size
----------------------------------------*/
body,
.fs-normal  {
	 font-size: clamp(1.2rem, 1.4vw, 1.2rem)!important;
	}



:root {

	--font-main:'Lato', sans-serif;
	--font-second:'Lato', sans-serif;

	--color-main-darker:#222222;
	--color-main-dark:#666666;
	--color-main:#777777;
	--color-main-soft:#b2b2b2;
	--color-main-softer:#e8e8e8;

	--color-second-darker:#3f0e0f;
	--color-second-dark:#7c1a1b;
	--color-second:#ed3237;
	--color-second-soft:#f27173;
	--color-second-softer:#f7cdce;

	--color-neutro-darker:#222;
	--color-neutro-dark:#444;
	--color-neutro:#777;
	--color-neutro-soft:#ccc;
	--color-neutro-softer:#efeded;

	--color-ok:#55b88b;
	--color-ok-softer:#a9dac4;
	--color-caution:#edbc2a;
	--color-caution-softer:#f9f8ea;
	--color-warning:#fc6161;
	--color-warning-softer:#f2c9c9;

	}

/*-------------------------------------------------- 
---     INTERLINEADO   //////////////////////////
---------------------------------------------------*/
body, p{
	line-height: 1.4;
	}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.2;
	}


/*-------------------------------------------------- 
---     TITLES  //////////////////////////
---------------------------------------------------*/

[class*="title-1"] {
	color:var(--color-white);
	font-weight:500!important;
	font-size:1.5em;
	}

[class*="title-2"] {
	color:var(--color-white);
	font-weight:500!important;
	font-size:1.4em;
	}

[class*="title-3"] {
	color:var(--color-white);
	font-weight:500;
	font-size:1.1em;
	}




/*--------------------------------------------------- 
--- MENU TAB  //////////////////////////////////////
---------------------------------------------------*/
[class*="menu-tab"] input[type=radio],
[class*="menu-tab"] input[type=checkbox] {
   display: none;
   }

[class*="menu-tab"] label{
   cursor:pointer!important;
   }


[class*="menu-tab"] li input:checked  + label,
[class*="menu-tab"] li input:checked + label{
	color:var(--color-white);
	}


/* AUTORES */
body#autores:has(#tab-elizabeth:checked)  .content-elizabeth,
body#autores:has(#tab-victor:checked)  .content-victor,
/* ESTUDIO */
body#estudio-nuevo:has(#tab-elestudio:checked)  .content-elestudio,
body#estudio-nuevo:has(#tab-historia:checked)  .content-historia,
body#estudio-nuevo:has(#tab-filosofia:checked)  .content-filosofia,
body#estudio-nuevo:has(#tab-proceso:checked)  .content-proceso,
body#estudio-nuevo:has(#tab-servicios:checked)  .content-servicios,
body#estudio-nuevo:has(#tab-cliente:checked)  .content-cliente,
body#estudio-nuevo:has(#tab-vision:checked)  .content-vision {
	display:flex!important;
	}


/* AUTORES */
body#autores:has(#tab-elizabeth:checked) .panel-movil [class*="menu"] li.elizabeth > *,
body#autores:has(#tab-victor:checked)  .panel-movil [class*="menu"] li.victor > *,

/* ESTUDIO */
body#estudio-nuevo:has(#tab-elestudio:checked) .panel-movil [class*="menu"] li.elestudio > *,
body#estudio-nuevo:has(#tab-historia:checked)  .panel-movil [class*="menu"] li.historia > *,
body#estudio-nuevo:has(#tab-filosofia:checked) .panel-movil [class*="menu"] li.filosofia > *,
body#estudio-nuevo:has(#tab-proceso:checked)  .panel-movil [class*="menu"] li.proceso > *,
body#estudio-nuevo:has(#tab-servicios:checked) .panel-movil [class*="menu"] li.servicios > *,
body#estudio-nuevo:has(#tab-cliente:checked)  .panel-movil [class*="menu"] li.cliente > *,
body#estudio-nuevo:has(#tab-vision:checked) .panel-movil [class*="menu"] li.vision > *,

/* TRAZO */
body#trazo:has(#tab-origen:checked) .panel-movil [class*="menu"] li.origen > *,
body#trazo:has(#tab-linea:checked)  .panel-movil [class*="menu"] li.linea > *,
body#trazo:has(#tab-arte:checked)  .panel-movil [class*="menu"] li.arte > *,
body#trazo:has(#tab-autores:checked)  .panel-movil [class*="menu"] li.autoresdel > *{
	color:var(--color-white)!important;
	font-weight:400!important;
	}



/*-------------------------------------------------- 
---     FIJO    //////////////////////////
---------------------------------------------------*/
.fijo-desactivado {
	transition:all 0.2s;

	position:fixed;
	bottom:auto;
	left:0px;
	right:0px;
	top:0px;
	}
	@media only screen and (max-width:620px) {
	.fijo-desactivado {
	
	}}


.fijo-desactivado  + .salto {
	 transform: translateY(60px);
	}

/*-------------------------------------------------- 
---     HEADER OPACO   ///////////////////////
---------------------------------------------------*/
body.header-opaco header {
	transition:all 0.3s;
	background-color:rgba(34, 34, 34, 0.6);
	}
body.header-opaco header .vda{
	background-color:transparent!important;
	}
body.header-opaco header:hover {
	background-color:rgba(34, 34, 34, 1.0);
	}
body.header-opaco header:hover .vda{
	background-color:var(--color-black)!important;
	}


/*-------------------------------------------------- 
---     STICKY   //////////////////////////
---------------------------------------------------*/
.header-smart  {
	display:flex;
	flex-flow:row wrap;
	height:auto;
	transition: transform 0.3s ease, box-shadow 0.3s ease; 
	width:100%;
	z-index: 999;

	position: fixed;
	bottom:auto;
	top:0px;
	left:0px;
	right:0px;
	}



/* 2. Estado bajando: Se fija al top, pero se esconde la mitad (-50px) */
.header-smart.fijo-bajando {
    transform: translateY(-70px); /* Esconde exactamente la mitad superior */
    background-color:var(--color-neutro-darker)!important;
	}


body.estudio-nuevo .header-smart.fijo-subiendo header,
body.single-nuevo .header-smart.fijo-subiendo header{
   /* transform: translateY(-70px);  */
    background-color:rgba(34, 34, 34, 0.6)!important;
	}


/* 3. Estado subiendo: Se queda fijo al top, pero se despliega completa (0px) */
.header-smart.fijo-subiendo {
    position:fixed;
    transform: translateY(0); /* Muestra los 100px completos */
}


/*------------------------------------------------------------------------ 
BOX PROFILE  /////////////////////////////////////////////////////////
------------------------------------------------------------------------*/





/*------------------------------------------------------------------------ 
MENU SECUNDARIO /////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.nav-secundario {
	align-items:center;
	align-content:center;
	background-color:var(--color-black);
	border-bottom:1px solid var(--color-neutro-dark);
	display:flex;
	flex-flow:row wrap;
	height:auto;
	min-height:60px;
	transition:all 0.2s;
	width:100%;
	z-index:99;
	}


.nav-secundario .menu-secundario{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	font-size:1em;
	gap:var(--gap);
	list-style:none;
	width:100%;
	}

.nav-secundario .menu-secundario li,
.nav-secundario .menu-secundario li > * {
	line-height:1.2em;
	}


.nav-secundario .menu-secundario li{
	color:var(--color-neutro-soft);
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	height:auto;
	list-style:none;
	width:auto;
	}

.nav-secundario .menu-secundario li > *{
	color:inherit;
	text-decoration:none;
	}

.nav-secundario .menu-secundario li a:hover{
	color:var(--color-white);
	}

.nav-secundario .menu-secundario li.nombre-proyecto *{
	color:var(--color-white);
	}


/*------------------------------------------------------------------------ 
MENU INTERIOR /////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.menu-interior input{
	display:none;
	}


.menu-interior{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	font-size:1em;
	justify-content:space-between!important;
	gap:var(--gap);
	list-style:none;
	margin-top:50px!important;
	width:100%;
	}

.menu-interior li,
.menu-interior li > * {
	line-height:1.2em;
	}

.menu-interior li.margen-izquierdo{
	margin-left:auto!important;
	}
.menu-interior li.margen-derecho{
	margin-right:auto!important;
	}

.menu-interior li{
	color:var(--color-neutro-soft);
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	height:auto;
	list-style:none;
	max-width:42%;
	width:auto!important;
	}

.menu-interior li > *,
.menu-interior li label,
.menu-interior li a{
	color:var(--color-neutro-soft);
	cursor:pointer;
	text-decoration:none;
	}

.menu-interior li a:hover,
.menu-interior li label:hover,
.menu-interior li > *:hover{
	color:var(--color-white)!important;
	}

.menu-interior li.nombre-proyecto *{
	color:var(--color-white);
	}


/*-------------------------------------------------- 
---     DEGRADADO   ///////////////////////
---------------------------------------------------*/
.degradado {
  height:160px;
  position:absolute;
  left:0px;
  right:0px;
  width:100%;
  z-index:10;
  } 

.degradado.top {
  background: linear-gradient(to bottom,  rgba(0,0,0,0.5) -10%,rgba(0,0,0,0) 100%);
  bottom:auto;
  top:0px;
  } 

.degradado.bottom {
  background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 110%);
  bottom:0px;
  top:auto;
  } 



/*------------------------------------------------------------------------ 
AUTORES  //////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#autores,
html:has(body#autores) {
  scroll-behavior: auto!important;
  }
  
.box-profile {
	display: flex;
	flex-flow:row wrap;
	gap:var(--gap);
	width:100%;
	}

.box-profile .profile-img{
	display: flex;
	flex-flow:row wrap;
	margin-bottom:10px;
	width:100%;
	}

.box-profile .profile-img img{
	max-width:100%;
	width:100%;
	}

.box-profile .profile-content{
	display: flex;
	flex-flow:row wrap;
	width:100%;
	}


body#autores .profile-img {
	padding-inline:60px;
	}

	@media only screen and (max-width:620px) {
	body#autores .profile-img {
		padding-inline:0px;
	}}


/*------------------------------------------------------------------------ 
SWIPER //////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
/*-------------------------------------------------- 
---     SWIPER   //////////////////////////

https://swiperjs.com/demos
---------------------------------------------------*/
.swiper {
	background-color:var(--color-black);
  width: 100%;
  height:100%;
  max-width: 100vw;

  }


.swiper-slide {
	background-color:var(--color-black);
  align-items:center;
  align-content:center;
  display:flex;
  flex-flow:row wrap;
  text-align: center;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 100vw;
  }

.swiper-slide picture{
  height:auto;
  position:absolute;
  bottom:0px;
  left:0px;
  right:0px;
  top:0px;
  width:auto;
  max-width: 100% !important;
  }

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position:center center;
  max-width: 100% !important;
  }


/* SW Alturas
------------------------------*/
.swiper.interior {
  height:70vh;
  }

.swiper.interior2 {
  height:66vh;
  }

.swiper.banner {
  height:66vh;
  }

.swiper.full {
  height:100vh;
  }



/* SW Contain
------------------------------*/
.swiper.img-contain picture  img,
.swiper.img-contain  img{
  object-fit:contain!important;
  }



/* SW cover
------------------------------*/
.swiper.img-cover  img{
  object-fit: cover;
  }


  /* Pagnation
------------------------------*/
.swiper-pagination {
  align-items:center;
  align-content:center;
  display:flex;
  flex-flow:row;
  justify-content:center;
  gap:4px;
  height:10px;
  padding: 0px;
  }

.swiper-pagination .swiper-pagination-bullet  {
  background:transparent;
  border:1px solid #5c5c5c;
  border:1px solid rgba(255, 255, 255, 0.7)!important;
  height:5px;
  opacity:1.0;
  margin:0px!important;
  padding:0px!important;
  width:5px!important;
  }


.swiper-pagination .swiper-pagination-bullet-active  {
  background-color:#fff!important;
  border:1px solid #ed3237;
  border:1px solid #fff;
  opacity:1.0;
  }

.swiper.gris .swiper-pagination .swiper-pagination-bullet  {
  background:transparent;
  border:1px solid var(--color-neutro)!important;
  }

.swiper.gris .swiper-pagination .swiper-pagination-bullet-active  {
  background-color:var(--color-neutro)!important;
  border:1px solid var(--color-neutro)!important;
  }

.swiper.gris .data {
	color:var(--color-neutro)!important;
	font-weight:400;
	}




  /* Botones next prev
------------------------------*/
.swiper > [class*="swiper-button"] {
	background-color:var(--color-neutro-darker)!important;
	border-radius:50%!important;
	color:var(--color-white);
	height:42px!important;
	transition:all 0.18s;
	opacity:0.6;
	padding:10px;
	width:42px!important;
	}

.swiper:hover > [class*="swiper-button"] {
	opacity:1;
	}


  /* Botones next prev
------------------------------*/
.swiper.banner .swiper-button-next {
	right:20px;
	}
.swiper.banner .swiper-button-prev {
	left:20px;
	}




@media only screen and (max-width:620px) {

.swiper > [class*="swiper-button"] {
	height:38px!important;
	opacity:0.8;
	width:38px!important;
	}

.swiper.banner [class*="swiper-button"] {
	opacity:0.4!important;
	}

  .swiper-pagination .swiper-pagination-bullet {
  border:1px solid rgba(255, 255, 255, 0.4)!important;
  }



}



/* Permite desplazamiento vertical y zoom nativo del navegador sobre Swiper */
.swiper{
    touch-action: pan-y pinch-zoom !important;
}

/*------------------------------------------------------------------------ 
INICIO  ///////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#index .mySwiper-banner .data {
	z-index:20;
}


/*------------------------------------------------------------------------ 
PROYECTOS  ///////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#p-proyectos div#container {
	margin-bottom:20px!important;
	}


/*------------------------------------------------------------------------ 
PROYECTO  ///////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#p-single .contenedor{
	padding-block-end:100px!important;
	}
	@media (width <= 620px) { body#p-single .contenedor {padding-block-end:80px!important;}}


body#p-single .swiper:not(.mySwiper-galeria0) div.data {
	bottom:50px;
	}


/*------------------------------------------------------------------------ 
ESTUDIO  //////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body.estudio-nuevo,
html:has(body#estudio-nuevo) {
  scroll-behavior: auto!important;
  }

.pleca-eslogan {
	background-color:var(--color-black-30);
	color:var(--color-white);
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	font-size:1em;
	height:40px;
	justify-content:center;
	width:100%;
}



/* SWIPER  */
body#estudio-nuevo .swiper-container {
	max-height:100vh!important;
	overflow:hidden;
	position:relative!important;
	top:0px!important;
	left:0px;
	right:0px;
	bottom:auto!important;
	z-index:99!important;
	display:none!important;
	}

body#estudio-nuevo:has(#tab-elestudio:checked) .swiper-container {
	display:flex!important;
	}


body#estudio-nuevo .swiper-container .degradado {
  height:200px;
  } 



.swiper div.data {
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	height:auto;
	width:auto;
	position:absolute;
	bottom:28px;
	top:auto;
	left:0px;
	right:0px;
	z-index:100;
	}


.swiper div.data [class*="eslogan"] {
	font-weight:300;
	margin-bottom:0px;
	letter-spacing:1px;
	text-align:center;
	}

.swiper div.data .eslogan {
	font-size:1.5em;
	font-weight:400;
	margin-bottom:6px;
	}

.swiper div.data .eslogan2 {
	font-size:1.3em;
	}

.swiper div.data .eslogan3 {
	font-size:1em;
	}

	@media only screen and (max-width:1600px) {
	.swiper div.data .eslogan {
	font-size:1.4em;
	}
	.swiper div.data .eslogan2 {
	font-size:1.2em;
	}}

	@media only screen and (max-width:720px) {
	.swiper div.data .eslogan {
	font-size:1.4em;
	}
	.swiper div.data .eslogan2 {
	font-size:1.2em;
	}}


	@media only screen and (max-width:620px) {
	.swiper div.data .eslogan {
	letter-spacing:0px;
	font-size:1.4em;
	}
	.swiper div.data .eslogan2 {
	font-size:1em;
	}}


	@media only screen and (max-width:580px) {
	.swiper div.data .eslogan{
	letter-spacing:0px;
	font-size:1.3em;
	}
	.swiper div.data .eslogan2{
	font-size:0.95em;
	}}


	@media only screen and (max-width:520px) {
	.swiper div.data .eslogan {
	font-size:1.2em;
	}
	.swiper div.data .eslogan2 {
	font-size:0.9em;
	}}


	@media only screen and (max-width:480px) {
	.swiper div.data .eslogan {
	font-size:0.96em;
	}
	.swiper div.data .eslogan2 {
	font-size:0.9em;
	letter-spacing:0px;
	}}


	@media only screen and (max-width:390px) {
	.swiper div.data .eslogan {
	font-size:0.9em;
	}
	.swiper div.data .eslogan2 {
	font-size:0.86em;
	}}


	@media only screen and (max-width:360px) {
	.swiper div.data .eslogan {
	font-size:0.84em;
	}
	.swiper div.data .eslogan2 {
	font-size:0.82em;
	}}

	@media only screen and (max-width:320px) {
	.swiper div.data .eslogan {
	font-size:0.7em;
	}
	.swiper div.data .eslogan2 {
	font-size:0.7em;
	}}







.swiper div.data [class*="title"] {
	font-size:1.2em;
	text-align:left;
	font-weight:400;
	}




.swiper div.data p{
	color:#fff;
	font-weight:300;
	font-size: 1.1em;
	line-height:1.2em;
	opacity:0.8;
	}
	@media only screen and (max-width:620px) {
	.swiper div.data p{
	font-size:1em;
	}}


/* CONTENT */
body.estudio-nuevo .content {
	padding-block-start:40px!important;
	padding-block-end:40px!important;
}




body#estudio-nuevo .tab-contenido  .imagen {
	display:flex;
	flex-flow:row wrap;
	height:auto;
	width:100%;
	}
body#estudio-nuevo .tab-contenido  .imagen img{
	max-width:100%;
	height:auto;
	width:100%;
	}



body.estudio-nuevo .content-in [class*="title-3"] {
	margin-bottom:20px;
	}


.content p [class*="subtitle"],
.content-in p[class*="subtitle"],
.content p b,
.content-in p b {
	font-weight:400!important;
	}


body#estudio-nuevo .swiper-container {
	position:relative!important;
	max-width:100vw;
	overflow-x: hidden!important;
	}

body#estudio-nuevo .enlace-fantasma {
	position: absolute;
	top: 0; left: 0; width: 100%; height: 100%;
	z-index: 1;
	}

body#estudio-nuevo .first {
	margin-top:70px!important;
	}



/*------------------------------------------------------------------------ 
PROYECTO SINGLE  ////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body.single-nuevo .first {
	margin-top:90px!important;
	}
	@media only screen and (max-width:620px) {
	body.single-nuevo .first{
	margin-top:70px!important;
	}
	}



body#p-single div.contenedor{
	margin:35px 0px 0px 0px;
	}
	@media only screen and (max-width:620px) {
	body#p-single div.contenedor{
	margin:0px 0px 20px 0px!important;
	}}


body#p-single div.title{
	align-items:center;
	align-content:center;
	display:flex!important;
	flex-flow:row wrap;
	flex-grow:99;
	float:left;
	gap:12px;
	padding:0px;
	height:auto;
	width:100%;
	}


body#p-single div.title h1{
	display:flex!important;
	flex-flow:row wrap;
	float:none!important;
	padding:0px!important;
	margin:0px!important;
	width:auto!important;
	}


body#p-single .content-in > ul.bar-social {
	color:var(--color-neutro-soft);
	justify-content:flex-end;
	gap:var(--gap);
	margin-bottom:60px;
	width:100%;
	}



/* BTN goto galeria solo mostrar en movil
----------------------------------------*/
.single-nuevo  .swiper .btn-special.goto {
	display:none;
	}
	@media (width <= 620px) {
	.single-nuevo  .swiper .btn-special.goto {
	display:flex!important;
	}
	}


/* Columna interior
----------------------------------------*/
.single-nuevo .content-wide {
	flex-flow:column wrap;
	}


.single-nuevo .content-wide .panel-cards{
	max-width:1300px!important;
	margin-left:auto;
	margin-right:auto;
	}


/* Galerias (not proyectos slider)
----------------------------------------*/
.single-nuevo .content-wide .panel-cards [class*="mySwiper-galeria"]{
	box-sizing: border-box;
	border-right:1px solid var(--color-neutro-darker);
	border-left:1px solid var(--color-neutro-darker);
	overflow:hidden;
	}

.single-nuevo .content-wide .panel-cards [class*="mySwiper-galeria"] .swiper-wrapper{
	padding-block-start:24px;
	padding-block-end:24px;
	}


.single-nuevo .content-wide .panel-cards [class*="mySwiper-galeria"] > ul.barra-menu {
	margin-bottom:0px!important;
}






/*  Hacemos que el boton pequeño aparezca si la galeria mide menso de 700px
y si el boton pequeño es visible no mostramos el grande
----------------------------------------*/


.mySwiper-galeria2 .btn-icon {
	display:none;
}


.mySwiper-galeria2 {
  container-type: inline-size;
  container-name: contenedor-principal;
}


@container contenedor-principal (max-width:700px) {

  .mySwiper-galeria2 .btn-icon {
    display: flex;
  }
  
	.mySwiper-galeria2  .btn-icon + .btn-text {
	display:none;
}

}






/* Datos del proyecto
----------------------------------------*/
.single-nuevo .tab-datos,
.single-nuevo .tab-autores {
	padding-block-start:30px!important;
	padding-block-end:30px!important;
	}

.single-nuevo .tab-datos,
.single-nuevo .tab-autores,
.single-nuevo .tab-datos .data-row,
.single-nuevo .tab-autores .data-row {
	align-items:flex-start;
	height:auto;
	gap:25px!important;
	flex-flow:row wrap;
	width:100%;
	}

.single-nuevo .tab-datos .data-row,
.single-nuevo .tab-autores .data-row{
	display:flex;
	}

.single-nuevo .tab-datos .data-row:empty,
.single-nuevo .tab-autores .data-row:empty{
	display:none!important;
	}


body:has(.mi-div:empty) article {
  display: none;
}

.single-nuevo .tab-datos:has(.data-row.datos-tres:empty)  hr.datos.externo.last{
	display:none!important;
	}


.single-nuevo .tab-datos .data-row hr,
.single-nuevo .tab-autores .data-row hr{
	display:none;
	}

	@media (width <= 620px) { 

   .single-nuevo .tab-autores .data-row hr.interno,
   .single-nuevo .tab-datos .data-row hr.interno{
   display:flex!important;
   }

   .single-nuevo .tab-autores hr.externo,
   .single-nuevo .tab-datos hr.externo {
   	display:none;
   }


 }


.single-nuevo .tab-datos p,
.single-nuevo .tab-autores p{
	display:flex;
	flex-flow:row wrap;
	flex-grow:9;
	font-size:1em;
	color:var(--color-white);
	min-width:260px;
	}


.single-nuevo .tab-datos p {
	width:40%;
	}
.single-nuevo .tab-autores p {
	width:30%;
	}


	@media (width <= 720px) { 
   .single-nuevo .tab-datos p,
   .single-nuevo .tab-autores p{
   width:100%;
   }}


.single-nuevo .tab-datos p b,
.single-nuevo .tab-autores p b{
	font-size:0.9em;
	color:var(--color-neutro-soft);
	opacity:0.8!important;
	width:100%;
	}



/* Autores
----------------------------------------*/
.single-nuevo  .tab-datos .data-row .title,
.single-nuevo  .tab-autores .data-row .title{
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	font-weight:400;
	min-height:52px;
}


.single-nuevo  .content-autores  .link-uno{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	width:auto;
}


.single-nuevo  .content-autores  .link-arrow{
border:1px solid #222;
height:26px;
width:26px;
}




/*------------------------------------------------------------------------ 
INTERIORISMO  //////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#interiorismo .first {
	margin-top:160px;
}


body.interiorismo .swiper {
	aspect-ratio: 16 / 7;
	}



/*------------------------------------------------------------------------ 
TRAZO  //////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#trazo .first {
	margin-top:120px;
	}

body#trazo .content,
body#trazo .content .content-in {
	text-align:center;
	justify-content:center;
	}



body#trazo .contentdos:last-child,
body#trazo .contentdos.last {
	padding-block-end:0px!important;
	}

body#trazo .content.last {
	padding-block-start:60px!important;
	padding-block-end:120px!important;
	}


body#trazo .content p,
body#trazo .content .content-in p{
	text-align:center;
	}

body#trazo [class*="title-"],
body#trazo .content [class*="title-"] {
	font-size:1.2em;
	margin-bottom:8px;
	}


body#trazo [class*="subtitle"]{
	display:inline-block;
	margin-bottom:8px;
	}

* [class*="frase"]{
	font-size:1.2em!important;
	}


body#trazo .content-in div.autores-foto{
	max-width:500px;
	}




@media (width <= 620px) { 
   body#trazo  .content .swiper  {
   aspect-ratio: 4 / 3!important;
   }}


@media (width <= 420px) { 
   *  .frase {
   font-size:1.1em;
   }}








/*------------------------------------------------------------------------ 
CONTACTO  //////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#contacto-nuevo .panel-direccion{
	background-color:var(--color-black);
	justify-content:center;
	gap: var(--gap-large);
	padding-block-start:30px;
	padding-block-end:0px;
	}

/* txt */
body#contacto-nuevo .panel-direccion p,
body#contacto-nuevo .panel-direccion [class*="title"]{
	text-align:center;
	}

body#contacto-nuevo .panel-direccion [class*="title"]{
	color:var(--color-neutro)!important;
	font-weight:400!important;
	font-size:1em!important;
	}

body#contacto-nuevo .panel-direccion p span{
	color:var(--color-neutro);
	}

/* Boton */
body#contacto-nuevo .panel-direccion [class*="button"] span{
	font-size:clamp(1.2rem, 1.6rem, 1.8rem)!important;
	font-weight:500!important;
	}
body#contacto-nuevo .panel-direccion [class*="button"] .svg-icon {
	fill:var(--color-whatsapp)!important;
	}

/* formulario */
body#contacto-nuevo .panel-formulario{
	background-color:var(--color-neutro-darker);
	padding-block:40px 60px;
	}

body#contacto-nuevo .panel-formulario [class*="title"]{
	font-weight:400!important;
	}

body#contacto-nuevo form{
	gap:var(--gap-xlarge);
	}

body#contacto-nuevo .panel-formulario .button {
	background-color:var(--color-neutro-dark);
	}


body#contacto-nuevo form select option{
	background-color:var(--color-neutro-dark);
	}


@media only screen and (max-width:620px) {
	body#contacto-nuevo .panel-direccion p br.ls{
		display:none;
	}}



/* mapa */
.panel-mapa{
	background-color:var(--color-neutro-softer);
	height:auto;
	margin:0px;
	position:relative;
	padding-block:0px;
	aspect-ratio:2 / 1;
	margin-bottom:24px;
	}


.panel-mapa iframe {
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  
  min-width: 100%;
  min-height: 100%;
  
}
/*------------------------------------------------------------------------ 
PANEL MOVIL  ////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.panel-movil {
	color:var(--color-neutro-soft);
	}


/* button */
.panel-movil [class*="menu"] .button{
	color:var(--color-neutro-soft);
	font-weight:300!important;
	font-size:1.6em!important;
	padding-inline:0px!important;
	}

.panel-movil [class*="menu"] .button:hover{
	color:var(--color-white)!important;
	}


.panel-movil  [class*="swiper-button"] {
	background-color:transparent!important;
}


.panel-movil [class*="menu"] li input:checked  + label,
.panel-movil [class*="menu"] li input:checked + label{
	color:var(--color-white);
	}


/* button arrow */
.panel-movil [class*="menu"] .button b:not(.mas){
	font-size:0.9em;
	margin-right:2px;
	transform: rotate(-45deg);
	opacity:0.6;
	}


/* titulo */
.panel-movil [class*="menu-submenu"]  li.titulo{
	color:var(--color-neutro-soft);
	text-indent:16px;
	}

.panel-movil [class*="submenu-from"] li.titulo{
	text-indent:42px;
	}

/* mas */
.panel-movil ul li .mas{
	font-weight:400;
	font-size:0.8em;
	}



/* social bar */
.panel-movil ul.social-bar li a .svg-icon{
	height:22px!important;
	fill: var(--color-white);
	padding:0px;
	width:22px!important;
	}

/* btn close */
.panel-movil .btn-close-panel-movil{
	background-color:transparent!important;
	}



@media only screen and (max-width:1600px) {
	.panel-movil [class*="submenu-from"] li.titulo{
	text-indent:40px;
	}
	.panel-movil [class*="menu"] .button{
	font-size:1.2em!important;
	}}


@media only screen and (max-width:820px) {
	.panel-movil [class*="menu"] .button{
	font-size:1.2em!important;
	}}


@media only screen and (max-width:720px) {
	.panel-movil [class*="menu"] li.titulo{
	text-indent:0px;
	}
	.panel-movil [class*="submenu-from"] li.titulo{
	text-indent:24px;
	}
	.panel-movil [class*="menu"] .button{
	font-size:1.2em!important;
	}
	.panel-movil [class*="menu"] .button > span{
	padding-inline:0px!important;
	}
}


@media only screen and (max-width:620px) {
	.panel-movil [class*="menu"] .button span,
	.panel-movil [class*="menu"] .titulo{
	font-size:1.4rem!important;
	}

}


@media only screen and (max-width:520px) {
	.panel-movil [class*="menu"] .button span,
	.panel-movil [class*="menu"] .titulo{
	font-size:1.3rem!important;
	}

}



@media only screen and (max-width:480px) {
	.panel-movil [class*="menu"] .button span,
	.panel-movil [class*="menu"] .titulo{
	font-size:1.2rem!important;
	}
	.panel-movil [class*="submenu-from"] li.titulo{
	text-indent:20px;
	}
}

@media only screen and (max-width:420px) {
	.panel-movil [class*="menu"] .button span,
	.panel-movil [class*="menu"] .titulo{
	font-size:1.1rem!important;
	}
}



@media only screen and (max-width:360px) {
	.panel-movil [class*="menu"] .button span,
	.panel-movil [class*="menu"] .titulo{
	font-size:1rem!important;
	letter-spacing:0px;
	}

}








/*  Controlamos altura
----------------------------------------

@media (max-height: 1000px) {
	.panel-movil [class*="menu"] .button{
		height:40px!important;
	}
}

@media (max-height: 920px) {
	.panel-movil [class*="menu"] .button{
		height:36px!important;
	}
}

@media (max-height: 880px) {
	.panel-movil [class*="menu"] .button{
		height:32px!important;
	}
}

@media (max-height: 820px) {
	.panel-movil [class*="menu"] .button{
		height:30px!important;
	}
}

@media (max-height: 720px) {
	.panel-movil [class*="menu"] .button{
		height:32px!important;
	}
}

*/

/* mostramos solo 16 
@media (max-height: 920px) {
		.panel-movil .submenu-from-proyectos li:not(.titulo) {
		display:none;
	}
	.panel-movil .submenu-from-proyectos li:nth-child(-n + 16){
		display:flex;
	}
}



/* mostramos solo 16 
@media (max-height: 760px) {
		.panel-movil .submenu-from-proyectos li:not(.titulo) {
		display:none;
	}
	.panel-movil .submenu-from-proyectos li:nth-child(-n + 14){
		display:flex;
	}
}

/* mostramos solo 12 
@media (max-height: 720px) {
	.panel-movil .submenu-from-proyectos li:not(.titulo) {
	display:none;
	}
	.panel-movil .submenu-from-proyectos li:nth-child(-n + 12){
	display:flex;
	}
}

/* mostramos solo 12 
@media (max-height: 680px) {
	.panel-movil .submenu-from-proyectos li:not(.titulo) {
	display:none;
	}
	.panel-movil .submenu-from-proyectos li:nth-child(-n + 12){
	display:flex;
	}
}


/* mostramos solo 10 
@media (max-height: 620px) {
	.panel-movil .submenu-from-proyectos li:not(.titulo) {
	display:none;
	}
	.panel-movil .submenu-from-proyectos li:nth-child(-n + 10){
	display:flex;
	}
}
*/

[class*="img-from"] {
	background-color:rgba(0, 0, 0, 1.0);
	display:none;
	height:100dvh;
	min-height:100dvh;
	transition:all 0.4s;
	width:50vw;
	z-index:999!important;

	position:fixed;
	bottom:0px;
	left:0vw;
	right:50%;
	top:0px;
}


[class*="img-from"] picture img,
[class*="img-from"] img{
	height:100%;
	transition:all 0.4s;
	opacity: 0;
	object-fit:cover;
	visibility: hidden;
	will-change: opacity;
	width:100%;
}



@media (width <= 620px) {

	[class*="img-from"] {
		display:none!important;
	}

}


[class*="img-from-trazo"] picture img,
[class*="img-from-trazo"] img{
	object-fit:contain;
}


/*------------------------------------------------------------------------ 
PANEL CARDS  ////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.panel-cards {
	background-color:var(--color-black);
	flex-flow:row wrap;
	height:auto;
	width:100%;
	}


.panel-cards:last-child {
	padding-block-end:24px;
	}


* .item-row {
	display:flex;
	flex-flow:row wrap;
	overflow:hidden;
	width:100%;
	}


.panel-cards{
	gap:24px;
	/*padding-bottom:24px;*/
	}

* .item-row {
	gap:24px;
	}


.panel-cards.gap-1,
.panel-cards .item-row.gap-1 {
	gap:1px!important;
	}



.subir-barra-studio {
	margin-top:-23px;
}



[class*="barra-final"] {

	margin-top:-23px!important;
	transform:translateY(23px);

}


/*------------------------------------------------ 
--- 620  --- 
------------------------------------------------*/
[class*="bajar-barra-escritorio"] {

	margin-top:-23px!important;
	transform:translateY(23px);

}




@media (width <= 620px) { 

	* [class*="bajar-barra"]:not(.bajar-barra-escritorio){
	margin-top:-23px!important;
	transform:translateY(23px);
	}

[class*="barra-final"] {

	margin-top:-23px!important;
	transform:translateY(0px);

}


[class*="barra-final"] + .item-row{
	display:none;
	margin-top:-23px!important;

}


}


/* -------------------------------------
---   CARD PROYECTOS /////////////////
-------------------------------------*/
.card-proyectos {
	background-color:var(--color-neutro-darker);
	display:flex;
	flex-flow:row wrap;
	flex-grow:9;
	padding-block-end:16px;
	width:40%;
	}

/* Card galerias de proyecto individal
----------------------------------------*/
.card-proyectos.galeria {
	background-color:var(--color-black)!important;
	padding-block-start:0px;
	padding-block-end:0px;
	} 



/* Barra menu
----------------------------------------*/
ul.barra-menu,
.card-proyectos ul.barra-menu{
	background-color:var(--color-neutro-darker);
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	gap:24px;
	padding-inline:24px!important;
	width:100%;
	}


/* Barra top */
ul.barra-menu:not(.bottom) {
	height:100px!important;
	padding-top:30px;
	max-height:100px;
	}

/* Barra bottom */
ul.barra-menu.bottom {
	margin-top:8px;
	height:60px!important;
	max-height:60px;
	}







ul.barra-menu [class*="title"],
.card-proyectos ul.barra-menu [class*="title"]{
	color:var(--color-neutro-softer);
	font-weight:400;
	font-size:1.1em;
	max-width: calc(100% - 100px);
	width:auto;

   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
}
	@media (width <= 620px) {
	ul.barra-menu [class*="title"],
	.card-proyectos ul.barra-menu [class*="title"]{
	font-size:1em;
	}
	}

ul.barra-menu li,
ul.barra-menu li a,
.card-proyectos ul.barra-menu li,
.card-proyectos ul.barra-menu li a{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	margin:0px;
	padding:0px;
	}


ul.barra-menu li,
.card-proyectos  ul.barra-menu li{
	align-content:center;
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	gap:32px!important;
	margin:0px!important;
	min-width:26px;
	padding:0px!important;
	color:inherit;
	}	

	@media (width <= 620px) {
	ul.barra-menu li,
	.card-proyectos  ul.barra-menu li {
		gap:18px!important;
		}
	}

ul.barra-menu li.link,
.card-proyectos  ul.barra-menu li.link{
	margin-left:auto!important;
	}

ul.barra-menu li.link {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	}

ul.barra-menu .separator{
	background-color:var(--color-neutro-soft);
	height:22px!important;
	min-width:1px!important;

	display:none;
	}



ul.barra-menu li[class*="title"],
.card-proyectos  ul.barra-menu li[class*="title"]{
	margin-right:auto;
	}



ul.barra-menu li.link a,
.card-proyectos  ul.barra-menu li.link a,
.link-arrow{
	color:var(--color-neutro-soft);
	display:flex;
	flex-flow:row wrap;
	border-radius:50%;
	aspect-ratio: 1 / 1;
	font-size:1.2em;
	justify-content:center;
	/*transform: rotate(-45deg);*/
	height:32px;
	margin-right:10px;
	text-decoration:none;
	width:32px;
	transform: rotate(-45deg);
	}



 ul.barra-menu li .svg-icon,
.card-proyectos ul.barra-menu li .svg-icon{
	aspect-ratio: 1 / 1;
	fill:var(--color-white);
	height:30px;
	width:30px;
	}


ul.barra-menu li .svg-icon.left,
.card-proyectos ul.barra-menu li .svg-icon.left{
	transform: scaleX(-1);
	}

ul.barra-menu li a,
.card-proyectos ul.barra-menu li a{
	color:inherit;
} 

ul.barra-menu li a:hover,
.card-proyectos ul.barra-menu li a:hover{
	color:var(--color-white);
} 


/* Imagen 
----------------------------------------*/
.card-proyectos .imagen{
	display:flex;
	flex-flow:row wrap;
	aspect-ratio: 3 / 2; /* altura default */
	height:auto;
	min-height:100px;
	max-height:calc( 100vh - 180px);
	position:relative;
	width:100%;
	}



/* 2 / 1
----------------------------------------*/
.swiper.aspect-ratio-10-4 .swiper-slide,
.swiper.aspect-ratio-10-4-to-1-1 .swiper-slide,
.swiper.aspect-ratio-10-4-to-3-2 .swiper-slide {
	overflow:hidden;
	aspect-ratio: 10 / 4!important;
	}


/* 2 / 1
----------------------------------------*/
.swiper.aspect-ratio-2-1 .swiper-slide,
.swiper.aspect-ratio-2-1-to-1-1 .swiper-slide,
.swiper.aspect-ratio-2-1-to-3-2 .swiper-slide,

.card-proyectos.contacto .imagen,
.card-proyectos .imagen.aspect-ratio-2-1,
.card-proyectos .imagen.aspect-ratio-2-1-to-1-1,
.card-proyectos .imagen.aspect-ratio-2-1-to-auto{
	overflow:hidden;
	aspect-ratio: 2 / 1!important;
	}


/* 16 / 9
----------------------------------------*/
.swiper.aspect-ratio-16-9 .swiper-slide,
.swiper.aspect-ratio-16-9-to-1-1 .swiper-slide,

.card-proyectos .imagen.aspect-ratio-16-9,
.card-proyectos .imagen.aspect-ratio-16-9-to-1-1,
.card-proyectos .imagen.aspect-ratio-16-9-to-auto{
	overflow:hidden;
	aspect-ratio: 16 / 9!important;
	}


/* 3 / 2
----------------------------------------*/
.swiper.aspect-ratio-3-2 .swiper-slide,
.swiper.aspect-ratio-3-2-to-1-1 .swiper-slide,

.card-proyectos .imagen.aspect-ratio-3-2,
.card-proyectos .imagen.aspect-ratio-3-2-to-1-1{
	aspect-ratio: 3 / 2!important;
	}

/* 1 / 1
----------------------------------------*/
.swiper.aspect-ratio-1-1 .swiper-slide,
.card-proyectos .imagen.aspect-ratio-1-1 {
	aspect-ratio: 1 / 1!important;
	}







@media (width <= 620px) {

		.card-proyectos .imagen.aspect-ratio-2-1-to-auto,
		.card-proyectos .imagen.aspect-ratio-16-9-to-auto{
		aspect-ratio:auto!important;
		height:56vh!important;
		}		


		.swiper.aspect-ratio-10-4-to-1-1 .swiper-slide,
		.swiper.aspect-ratio-2-1-to-1-1 .swiper-slide,
		.card-proyectos .imagen.aspect-ratio-2-1-to-1-1,
		.card-proyectos .imagen.aspect-ratio-16-9-to-1-1,
		.card-proyectos .imagen.aspect-ratio-3-2-to-1-1{
		aspect-ratio: 1 / 1!important;
		}	

		.swiper.aspect-ratio-2-1-to-3-2 .swiper-slide,
		.card-proyectos .imagen.aspect-ratio-2-1-to-3-2,
		.card-proyectos .imagen.aspect-ratio-16-9-to-3-2,
		.card-proyectos .imagen.aspect-ratio-3-2-to-3-2{
		aspect-ratio: 3 / 2!important;
		}		


	}








.card-proyectos .imagen picture{
	overflow:hidden;
	position:absolute;
	bottom:0px;
	left:0px;
	top:0px;
	right:0px;
	}

.card-proyectos .imagen > img,
.card-proyectos .imagen picture > img{
	height:100%;
	object-fit:cover;
	transition:all 0.2s;
	width:100%;
	}


.card-proyectos .imagen.contain > img,
.card-proyectos .imagen.contain picture > img{
	object-fit:contain!important;
	}


.card-proyectos:not(.contacto, .proyecto, .no-hover) .imagen:hover > img,
.card-proyectos:not(.contacto, .proyecto, .no-hover) .imagen:hover picture > img,
.card-index:hover > img,
.card-index:hover picture > img{
	transform: scale(1.04)!important;
	}




/* Parrafo
----------------------------------------*/
.card-proyectos p {
  background-color: var(--color-neutro-darker);
  padding-inline: 24px;
  min-height:56px;
  height:auto;
  width: 100%;
  
  /* El combo mágico para las 2 líneas */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}




/* Parrafo
----------------------------------------*/
.row-space-top {
	margin-top:24px;
}


/* linea negra si ul barra esta antes de la imagen
----------------------------------------*/
ul.barra-menu:has(+ .swiper-wrapper){
	margin-bottom:24px;
}


.mySwiper-proyectos ul.barra-menu:has(+ .swiper-wrapper){
	margin-bottom:24px!important;
}


/* -------------------------------------
---   ZIG  /////////////////
-------------------------------------*/
.panel-cards .item-row.zig .col-txt{
	order:1;
	}
.panel-cards .item-row.zig .col-img{
	order:2;
	}


	@media (width <= 920px) {

.panel-cards .item-row.zig .col-txt{
	order:2;
	}
.panel-cards .item-row.zig .col-img{
	order:1;
	}

}



.row-card {
	gap:24px;
	}

.row-card .col{
	flex-grow:9!important;
	}

.row-card .col-txt {
	background-color:var(--color-neutro-darker);
	}


.row-card  .col-img{
	display:flex;
	flex-flow:row wrap;
	aspect-ratio: 3 / 2!important;
	height:auto;
	min-height:100px;
	max-height:calc( 100vh - 180px);
	position:relative;
	width:100%;
	}


.row-card .col .title{
	font-size:1.1em!important;
	}

@media (width <= 920px) {

.row-card {
	gap:0px!important;
	}

.row-card .col{
	width:100%!important;
	}

.row-card .col:has(p){
	padding-inline:24px!important;
	}


}


/* -------------------------------------
---   SWIPER /////////////////
-------------------------------------*/
.item-row:has( > .col) {
	gap:24px;
	}

.item-row .mySwiper-galeria4 .imagen,
.item-row .mySwiper-galeria5 .imagen {
	aspect-ratio: 3 / 2;
	}

@media (width <= 620px) {

.item-row:has( > .col){
	gap:1px;
	}

.item-row .col {
	width:100%!important;
	}

.item-row .mySwiper-galeria4 .imagen,
.item-row .mySwiper-galeria5 .imagen {
	aspect-ratio: 2 / 1;
	}

}


.panel-cards .swiper,
.panel-cards .swiper .swiper-wrapper{
	height:auto;
	}


.panel-cards .swiper-slide{
	display:flex;
	flex-flow:row wrap;
	flex-grow:9;
	background-color:var(--color-neutro-darker);
	height:auto;
	width:auto;
	}

.panel-cards .swiper-slide .card-proyectos {
	width:100%!important;
	}

.swiper-cards ul.barra-menu [class*="swiper-button"]{
	background-color:transparent!important;
	height:26px!important;
	padding:4px!important;
	margin:0px!important;
	width:26px!important;

	position:relative!important;
	bottom:auto!important;
	left:auto!important;
	right:auto!important;
	top:auto!important;
	}


.swiper-cards:has(ul.barra-menu) > [class*="swiper-button"]{
	margin-top:22px!important
	}






/*------------------------------------------------ 
--- No. SLIDERS --- 
------------------------------------------------*/

/* Dos sliders visibles
----------------------------------------*/
@media (width <= 2600px) { 
	.panel-cards .swiper-slide {
		width:55%;
	}
}

/* Dos sliders visibles
----------------------------------------*/
@media (width <= 1800px) { 
	.panel-cards .swiper-slide {
		width:55%;
	}
}

/* Slide y cards al 100% 
----------------------------------------*/
@media (width <= 920px) { 
		.panel-cards .swiper-slide,
		.card-proyectos,
		.panel-cards .swiper-slide .card-proyectos {
		width:100%;
		}

/* Eliminamos espacio en barra
----------------------------------------*/
	.swiper-cards .swiper-wrapper{
	margin-top:0px;
	}

}





/*------------------------------------------------ 
--- 920  --- 
------------------------------------------------*/
@media (width <= 920px) { 

	.card-proyectos.contacto .imagen{
	aspect-ratio: 3 / 2;
	}

}


/*------------------------------------------------ 
--- 620  --- 
------------------------------------------------*/
@media (width <= 620px) { 

	.panel-cards {
		padding-bottom:0px;
	}

	.panel-cards .swiper-slide .card-proyectos,
	.card-proyectos {
	width:100%!important;
	}

.panel-cards .item-row:last-child {
		gap:1px;
	}

	.card-proyectos.last {
	border-bottom:0px solid var(--color-black)!important;
	}

	.card-proyectos .imagen{
	aspect-ratio: 3 / 2;
	}


}




        
/*------------------------------------------------------------------------ 
FOOTER  //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.footer-barra {
	align-content:center;
	background-color:var(--color-neutro-darker);
	display:flex;
	flex-flow:row wrap;
	font-weight:400;
	height:70px;
	padding-inline:24px;
	width:100%;
	}

.item-row .footer-barra{
	height:100px;
	}

.item-row .footer-barra.top{
	padding-top:30px;
	margin-top:24px;
	}


/* Title
------------------------------*/
footer .title {
	color:var(--color-main);
	font-family:var(--font-main);
	font-size:1em;
	font-weight:bold;
	text-align:left;
	text-transform:uppercase;
	width:100%;
	}




/*                                       
-----------------------------------------  820 ---
--------------------------------------------------*/
@media (width <= 820px) { 

	div.footer-all {
	background-color:transparent;
	}

	div.footer-all  div.footer-menu {
	background-color:transparent;
	}

	div.footer-all .bar-logo {
	width:100%;
	}

	div.footer-all > footer{
	background-color:transparent;
	}

	div.footer-all .bar-logo,
	div.footer-all div.footer-menu ul.menu,
	div.footer-all > footer p,
	div.footer-all > footer ul.bar-social{
	background-color:var(--color-neutro-darker);
	}
}


/*                                       
-----------------------------------------  520 ---
--------------------------------------------------*/
@media (width <= 420px) { 

	div.footer-all  div.footer-menu ul.menu{
	gap:8px;
	}

	div.footer-all  div.footer-menu ul.menu li a{
	font-size:0.9em;
	}


}



/*------------------------------------------------------------------------ 
INDEX  (test )////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/


/*  Special button
----------------------------------------*/
body.index .mySwiper-banner > a.go-to,
.btn-special,
.btn-icon{
	align-items:center!important;
	align-content:center!important;
	background-color:var(--color-black-60);
	border:1px solid var(--color-white-80);
	border-radius:999px;
	color:var(--color-white);
	cursor:pointer;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	font-size:0.8em;
	height:32px;
	opacity:0.8;
	overflow:hidden;
	padding:0px 16px;
	transition:all 0.3s;
	text-decoration:none;
	width:180px;
	z-index:99;
  }

.btn-icon{
	height:36px!important;
	padding:2px 2px!important;
	width:36px!important;
  }

.btn-icon .svg-icon{
	fill: var(--color-white);
	height:36px;
	width:36px;
  }




/*  Swiper go-to
----------------------------------------*/
body.index .mySwiper-banner > a.go-to{
	background-color:var(--color-black-30)!important;
	height:80px!important;
	opacity:0.6;
	padding:4px 4px!important;
	width:30px!important;
	z-index:99;

  position:absolute;
  botton:auto;
  top:46%;
  left:auto;
  right:30px;
  }



body.index .mySwiper-banner > a.go-to span{
	background-color:var(--color-white);
	height:20px;
	margin-top:12px;
	width:1px;
  }

body.index .mySwiper-banner > a.go-to .svg-icon{
	background-color:transparent!important;
	aspect-ratio:1 / 1;
	fill:var(--color-white);
	margin-top:-12px;
	max-width:40px;
	padding:0px;
	transform: rotate(90deg);
	width:100%;
  }





body.index .mySwiper-banner > a.go-to:hover,
.btn-special:hover{
	opacity:1;
  }




/*  Swiper data
----------------------------------------*/
body.index .swiper-slide div.data{
  height:auto;
  text-align:center;
  width:100%;
  z-index:10;
  position:absolute;
  bottom:56px!important;
  }

body.index .swiper-slide div.data > *{
  color:var(--color-white);
  font-size:1.2em;
  font-weight:300;
  height:auto;
  line-height:22px;
  margin:0px;
  padding:0px;
  width:100%;
  }

body.index .swiper-slide div.data h3 {
  font-weight:400;
  }
body.index .swiper-slide div.data h2 {
  opacity:0.8;
  }


body.index .swiper-pagination {
	bottom:40px!important;
  }




 @media only screen and (max-width:620px) {
  body.index .swiper-slide div.data {
  bottom:32px!important;
  }
  body.index .swiper-pagination{
  bottom:14px!important;
  }}




/*  Swiper banner
----------------------------------------*/
body.index .mySwiper-banner {
	height:100vh!important;
	position:relative!important;
	}


.swiper.proyectos-single{
	min-height:70vh!important;
	position:relative!important;
	}


.mySwiper-banner {
	height:100vh!important;
	position:relative!important;
	}


.panel-index {
	display:flex;
	flex-flow:row wrap;
	gap:24px;
	height:auto;
	justify-content:flex-start;
	padding-block-start:24px;
	padding-block-end:24px;
	padding-inline:24px;
	width:100%;
	}

.panel-index .item-row,
.row-card {
	align-items:stretch;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	gap:24px;
	height:auto;
	width:100%;
	}




.panel-index .item-row .card-index.estudio + .col {
	order:1;
	}
.panel-index .item-row .card-index.estudio {
	order:2;
	}

.panel-index .item-row .card-index.interiorismo + .col {
	order:1;
	}
.panel-index .item-row .card-index.interiorismo {
	order:2;
	}

 @media only screen and (max-width:720px) {
.panel-index .item-row .card-index.estudio + .col {
	order:2;
	}
.panel-index .item-row .card-index.estudio {
	order:1;
	}

.panel-index .item-row .card-index.interiorismo + .col {
	order:2;
	}
.panel-index .item-row .card-index.interiorismo {
	order:1;
	}
}




/*  Cols
----------------------------------------*/
.panel-index .item-row .col,
.row-card .col{
	align-items:center;
	align-content:center;
	background-color:var(--color-neutro-darker);
	display:flex;
	flex-flow:row wrap;
	flex-grow:0;
	justify-content:flex-start;
	min-height:200px;
	height:auto;
	position:relative;
	width:30%;
	}


/*  Tamaño ancho columnas
----------------------------------------*/
/* 3 iguales  */
.panel-index .item-row .col{
	width: calc((100% - 48px) / 3);
	}

/* col 2x  */
.panel-index .item-row .col-2x{
	width: calc(((100% - 48px) / 3) * 2 + 24px);
	}


@media (width <= 720px) {
	.panel-index .item-row .col {
		width:100%!important;
	}
}


/*  Textos
----------------------------------------*/
.panel-index .item-row .col:has(p),
.row-card .col:has(p)  {
	padding-block:12px;
	padding-inline:32px;
}

.panel-index .item-row .col p,
.row-card .col p{
	height:auto;
	width:100%;
}


@media (width <= 620px) {
.panel-index .item-row .col:has(p) {
	display:none;
}}


/*  Titulos
----------------------------------------*/
.panel-index .item-row .col .title,
.row-card .col .title{
	height: auto;
	font-size:1.1rem;
	font-weight:400;
	margin:0;
	width:100%;
	z-index:99;
	padding:0;
	position:absolute;

	bottom:20px;
	left:20px;
	right:auto;
	top:auto;
 }


/*  Card index (col)
----------------------------------------*/
.panel-index .item-row .card-index,
.item-row .card-index{
	color:inherit;
	transition:all 0.2s;
	cursor:pointer;
 }


.panel-index .item-row .card-index img,
.item-row .card-index img{
	transition:all 0.2s;
 }


.panel-index .item-row .card-index .degradado.bottom,
.item-row .card-index .degradado.bottom{
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 50%, rgba(0,0,0,0.4) 100%)!important;
  height:auto!important;
  width:100%;

  position:absolute;
  bottom:0px;
  left:0px;
  right:0px;
  top:0px;
  z-index:10;
  } 



/*  Imagens
----------------------------------------*/
.panel-index .item-row .img-cover{
	min-height:320px;
 }

.panel-index .item-row .img-cover picture{
	opacity:0.9;
 }



.panel-index .item-row.uno .img-cover {
	aspect-ratio:4 / 1;
 }


.panel-index .item-row.dos .img-cover,
.panel-index .item-row.tres .img-cover {
	aspect-ratio:2 / 1;
 }



@media (width <= 1200px) {
.panel-index .item-row.uno .img-cover {
	aspect-ratio:6 / 2;
 }
.panel-index .item-row.dos .img-cover,
.panel-index .item-row.tres .img-cover {
	aspect-ratio:3 / 2;
 }
}




@media (width <= 920px) {
.panel-index .item-row.uno .img-cover {
	aspect-ratio:2 / 1;
 }
.panel-index .item-row.dos .img-cover,
.panel-index .item-row.tres .img-cover {
	aspect-ratio:1 / 1;
 }
}



@media (width <= 720px) {
.panel-index .item-row .img-cover {
	aspect-ratio:3 / 2!important;
 }
}



@media (width <= 620px) {
.panel-index .item-row .img-cover {
	aspect-ratio: 2 / 1!important;
 }
}


@media (width <= 380px) {
.panel-index .item-row .img-cover {
	aspect-ratio: 3 / 2!important;
 }
}



.panel-index .item-row.cliente .img-cover picture img {
	object-position:50% 80%;
 }


.panel-index .item-row.filosofia .img-cover picture img {
	object-position:50% 70%;
 }


.panel-index .item-row.vision .img-cover picture img {
	object-position:50% 60%;
 }


.panel-index .item-row p.top,
.panel-index .item-row p.bottom{
	padding-inline:32px;
	position:absolute;
	left:0px;
	right:0px;
	width:auto;
	}

.panel-index .item-row p.bottom{
	bottom:32px;
}

.panel-index .item-row p.top{
	top:32px;
}

/*------------------------------------------------------------------------ 
INDEX  //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
body#index-eliminar footer{
	background-color:transparent!important;
	justify-content:center;
	z-index:100!important;

	position:absolute!important;
	bottom:42px;
	left:0px;
	right:0px;
	}

body#index-eliminar footer p{
	justify-content:center;
	text-align:center;
	padding-block-start:0px;
	padding-block-end:0px;
	}

/*                                       
-----------------------------------------  820 ---
--------------------------------------------------*/
@media (width <= 820px) { 

	body#index-eliminar footer {
	bottom:60px;
	}

/*
	body#index-eliminar footer p{
	position:absolute;
	bottom:60px;
	}

*/

	body#index-eliminar footer hr {
	display:none;
	}
	}


@media (width <= 620px) { 

	body#index-eliminar footer {
	display:none!important;
	}
	}





/*------------------------------------------------------------------------ 
ROW GALERIA OPEN   ///////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*  ROW Galeria al aplicar show
----------------------------------------*/
[class*="row-galeria"].show {
	align-content:center;
	align-items:center;
	background-color:var(--color-black);
  display: flex;
  justify-content:center;
  max-width:100vw!important;
  padding-inline:0vw;
  width:100vw;
  height: 100vh;

  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99999!important;
}


/*  NO mostrar esta galeria al abrir
----------------------------------------*/
body:has(.row-galeria-2.show)  .row-galeria-2 .col-galeria-5 {
	display:none!important;
	}

/* Galerias a la mitad
----------------------------------------*/
.row-galeria-2.show .col-galeria-2 {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	height:100vh;
	width:100vw;

	position:absolute;
	bottom:0px;
	left: 0px;
	top:0px;
	right:0px;
	}



/*  SWIPER galeria abierta
----------------------------------------*/
[class*="row-galeria"].show .swiper {
	overflow:hidden;
	border:0px!important;
	width:100%;
}


[class*="row-galeria"].show .swiper .swiper-wrapper{
	padding:0px!important;
	padding-top:0px!important;
}



[class*="row-galeria"].show .swiper .aspect-ratio-16-9-to-auto,
[class*="row-galeria"].show .swiper .aspect-ratio-1-1 {
	height:100vh!important;
	max-height:100vh;
	}



/*  botones
----------------------------------------*/
 [class*="row-galeria"].show .swiper [class*="swiper-button"]{
 	background-color:var(--color-white)!important;
 	color: var(--color-black)!important;
 	height:46px!important;
	margin:0px!important;
	width:46px!important;
	}

[class*="row-galeria"].show .swiper [class*="swiper-button-prev"]{
	left:20px!important;
	}

[class*="row-galeria"].show .swiper [class*="swiper-button-next"]{
	right:20px!important;
	}



[class*="row-galeria"].show .swiper .swiper-pagination {
	bottom:30px!important;
	}



/*  btn open
----------------------------------------*/
[class*="row-galeria"].show .swiper [class*="open-row-galeria"],
[class*="row-galeria"].show .swiper [class*="data"]{
	display:none!important;
	}

@media (width <= 620px) {
	.swiper	[class*="open-row-galeria"],
	.swiper .data .btn-special.abrir,
	.mySwiper-galeriamain .data .btn-special.goto{
	display:none!important;
	}
}





/*  btn close
----------------------------------------*/
[class*="row-galeria"] .swiper .btn-close-row-galeria{
	background-color:var(--color-white);
	display:none!important;
	height:38px;
	width:38px;
	position:absolute;
	bottom:auto;
	left:auto;
	right:20px!important;
	top:20px;
	z-index:999;
	}

[class*="row-galeria"] .swiper .btn-close-row-galeria .svg-icon{
	fill:var(--color-black);
	}


body:has([class*="row-galeria"].show) .swiper .btn-close-row-galeria{
	display:flex!important;
	}




/*  ocultamos
----------------------------------------*/
.panel-cards [class*="row-galeria"].show .barra-menu,
.panel-cards [class*="row-galeria"].show .col > .item-row, /*para galeria a la mitad*/

body:has([class*="row-galeria"].show) header,
body:has([class*="row-galeria"].show) .header-smart {
	display:none;
	}



/*  swiper-pagination
----------------------------------------*/
.swiper .swiper-pagination.solo-full {
	background-color:var(--color-white-60);
	border-radius:999px;
	display:none;
	padding:16px;
	left: 50%;
  transform: translateX(-50%);
	margin-left:auto;
	margin-right:auto;
	width:auto;
	} 

[class*="row-galeria"].show .swiper .swiper-pagination.solo-full{
	display:flex;
	}


[class*="row-galeria"].show .swiper .swiper-pagination.solo-full .swiper-pagination-bullet{
	background-color:var(--color-white-20)!important;
	border:1px solid var(--color-black-60)!important;
	height:6px!important;
	width:6px!important;
	}


[class*="row-galeria"].show .swiper .swiper-pagination.solo-full .swiper-pagination-bullet-active{
	background-color:var(--color-black)!important;
	}




/*  sgaleria padding full
----------------------------------------*/
[class*="row-galeria"].show .swiper.padding-full .swiper-slide img{
	padding-block:8vw!important;
	}


@media (width <= 1600px) { 

	[class*="row-galeria"].show .swiper .swiper-pagination.solo-full .swiper-pagination-bullet{
		height:5px!important;
		width:5px!important;
		}

 }





/*------------------------------------------------------------------------ 
INPUTS  //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
[class^="button"],
[class*="--buttons"] [class^="button"]{
	font-weight:600;
	}


/* Fondo y borde
------------------------------*/
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]),
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]):focus,
textarea,
textarea:focus,
seelct,
select:focus,
div.input,
div.input > span,

/* box search */
div.box-search,

/* div.select */
div.select {
	color:var(--color-white);
	border:1px solid var(--color-neutro-dark)!important;
	background-color:var(--color-neutro-dark);
	}


/* Default Border radius
------------------------------*/
form.inputs input[type=text],
form.inputs input[type=number],
form.inputs input[type=password],
form.inputs input[type=email],
form.inputs input[type=tel],
form.inputs input[type=search],
form.inputs select,
form.inputs div.input,

/*inputs*/
input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel],
input[type=search],
select,
textarea,

/* div input */
div.input,

/* box search */
div.box-search,

/* div select */
div.select,

/* botones */
[class*="button"]:not([class*="--buttons"]),
[class*="--buttons"] [class*="button"],

div.checkbox-set input[type=checkbox] + label span{
	border-radius:0px;
	}
