/*
Theme Name: Isegoría Consulores 1.1
Author: Julián Franco @jvlianfranco
Author URI: @jvlianfranco
Description:
Tested up to: 6.8
Requires PHP: 5.6
Version: 1.0
License: Free for personal and commercial use under the CCA 3.0 license
License URI: http://creativecommons.org/licenses/by/3.0/

*/
@import url("https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@100..900&display=swa");
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,700;1,100&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap");


* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Roboto Condensed', sans-serif;
    line-height: 2rem;
}


body {
    background:rgb(255, 255, 255);
    background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.3' filter='url(%23noiseFilter)'/%3E%3C/svg%3E") !important;
;
}
main{
    display: flex;
    flex-direction: column;
}
h1{
    display: none;
}
h2 {
    font-size: 3.2rem !important;
    /* text-shadow: -2px 2px #1a1a1a; */
    color: #fff!important;
    letter-spacing: 1px !important;
    text-shadow: 1px 1px 4px #1a1a1a;
}

/* h3{
    text-align: center;
} */
p::selection, li::selection, h2::selection, h3::selection, h4::selection, h5::selection {
    background: goldenrod;
    color: black;
    text-shadow: none

}

/* Firefox */
p::-moz-selection,li::-moz-selection, h2::-moz-selection, h3::-moz-selection,h4::-moz-selection, h5::-moz-selection {
    background: #daa520;
    color: black;
    text-shadow: none
}

nav {
    display: flex;
    flex-direction: row;
    justify-content: space-between !important;
    align-items: center;
    padding: 5px;
    position: relative;
    z-index: 2;
    box-shadow: 2px 2px 15px #000;

}

.navbar {
    display: flex !important;
    justify-content: space-between !important;
}

.nav-link{
    text-align: right;
    font-family: "Roboto Condensed" !important;

}
.container-fluid {
    justify-content: end !important;
    width: auto !important;
    margin: 5px !important;

}

/* .navbar-collapse{
    display: flex !important    ;
    justify-content: space-between !important;
} */
nav img {
    width: 140px;
    margin-left: 20px;
}

.nav-item .active {
    font-weight: bold;
}

.carousel {
    height: 400px;
    position: relative;
    z-index: 1;
    box-shadow: 0px 2px 10px #1a1a1a
}

.carousel-item {
    max-height: 400px;
}

.carousel img {
    object-fit: cover;
    top: -200px;
    position: relative;
    filter: grayscale(1);
    min-height: 600px;
}

.carousel-caption {
    left: 10% !important;
    text-align: left !important;
}

.carousel-caption p {
    margin-left: 15px !important;
    text-shadow: 2px 2px 5px #000 !important;
    font-size: 1.3rem !important;
    font-family: "Roboto Condensed" !important;

}

.carousel-caption h2 {
    font-size: 2rem !important;
    font-weight: bold !important;
    text-shadow: 2px 2px 5px #000 !important;
    color: goldenrod !important;
    margin-left: 15px !important;
    font-family: "Roboto Slab" !important;
}

/* .contenedor {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px 10px 10px 10px;
} */
.contenedor{
    padding: 40px 40px 40px 40px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:center;
    align-items: flex-start;
    gap:40px;
    background:rgb(255, 255, 255);
    background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.3' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
;
}


.inf

.contenedor img{
    width: 350px;
}
.nuestroTrabajo{
    width: 500px;
}
.nuestroTrabajo h2{
    color:#b98c1b !important;
    /* text-shadow: 3px 3px 0px #1a1a1a !important; */
    text-shadow: none;
    font-size: 3rem !important;
    font-weight: bold;
    margin-bottom: 15px !important;
}
.nuestroTrabajo p{
    text-align: left;
    font-size: 1.5rem;
    line-height: 1.8;
}
.titulo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/*Cards*/

.cards {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    padding:10px 20px 10px 20px;
    justify-content:center;
    gap:20px
}
.subrayadoArticulosNegro{
    width: 120px;
    height: 40px;
    border-bottom: 1px  #1a1a1a solid;
    margin:0px;
    display: flex;
    justify-content: center;
}
.subrayadoArticulosAmarillo{
    width: 40%;
    height: 100%;
    border-bottom: 5px #b98c1b solid;
    position: relative;
    top: 3px;
}
.tituloCards{
    height: 40px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 10px 0 30px 0;
}
.tituloCards img{
    height: 60px;
    width: auto;
    
}
.tituloCards .barraIzquierda{
    height: 1px;
    background-color: #1a1a1a;
    width: 125px;
    
}
.tituloCards .barraDerecha{
    height: 1px;
    background-color: #1a1a1a;
    width: 125px;
    
}
.tituloCards i{
    color: #1a1a1a;
    font-size: 1.5rem !important;
    padding: 5px 8px 5px 8px;
}
.tituloCards h2{
width: 100%;
  font-family: "Roboto Slab" !important;
  text-align: center;
  font-size: 2rem !important;
  text-shadow: none !important;
  color: #1a1a1a !important;
  font-weight: 500 !important;
	}
.cards h2{
    width: 100%;
    font-family: "Roboto Slab";
    text-align: center;
  font-size: 2rem !important;
  text-shadow: none;
  color: #1a1a1a !important;
  font-weight: 500;

}

.card {
    width:300px !important;
    padding: 0;
    background-color:#f0f0f0;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.116);
    border-radius: 1px !important;
    flex-grow: 0.1;
}
.card a {
    display:flex !important;
    flex-direction: column;
}
.card p {
    font-family: "Roboto Condensed";
}
.imagenCard{
    overflow: hidden;
    margin:0 0 5px 0;
    height: 180px;
    border-radius: 1px 1px 0 0;
    width: 100%;
    filter: grayscale(1);
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.116);
    -webkit-transition:all .9s ease; /* Safari y Chrome */
    -moz-transition:all .9s ease; /* Firefox */
    -o-transition:all .9s ease; /* IE 9 */
    -ms-transition:all .9s ease; /* Opera */

}
.card img{
    object-fit: cover;
    width: 100%;
    height: 180px;

    -webkit-transition:all .9s ease; /* Safari y Chrome */
-moz-transition:all .9s ease; /* Firefox */
-o-transition:all .9s ease; /* IE 9 */
-ms-transition:all .9s ease; /* Opera */
width:100%;
    
   
    
}
.card:hover{
    background-color:#ffffffd0;
    filter: grayscale(0);
}
.card:hover .imagenCard{
    filter: grayscale(0);
}
.card:hover img{
    transform: perspective(1px);
    -webkit-transform:scale(1.25);
-moz-transform:scale(1.25);
-ms-transform:scale(1.25);
-o-transform:scale(1.25);
transform:scale(1.25);
filter: grayscale(0) !important;
}


.card .autor{
    width: fit-content;
    background-color: #fff;
    font-family: "Roboto Slab" !important;
    border: 2px solid #b98c1b;
    padding: 5px 5px 5px 5px !important;
    align-self: end;
    position: relative;
    right: 15px;
    bottom: 20px;
    margin: 0 0 -20px 0;
 
}
.card .autor p{
    padding: 0px !important;
    font-size: small !important;
    line-height: normal !important;
    margin: 0px !important;
}
.card .autor strong{
    line-height: normal !important;
	font-family: "Roboto Condensed" !important;
	font-weight: bold
  
}
.card .fecha{
    font-family: "Roboto Condensed";
    font-size: 0.8em;
    color: #1a1a1ab0 !important;
    margin: 0px !important;
}
.card h3 {
    flex:100%;
    padding: 0;
    color: #daa520 !important;
    font-family: "Roboto Slab" !important;
	font-size:1.3rem
}
.card .card-text {
    flex:100%;
    padding: 0;
}
.card p {
    flex:70%;
    margin:0 0 5px 0;
    font-size: 0.9rem;
    padding: 0;
	line-height:1.5;
}
.card a {
    text-decoration: none;
    color:#1a1a1a
}
.card-body {
    padding:0px 22px 15px 25px !important;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

/*Sección informes*/
.separadorDiagonalNegroArriba {
    height: 107px;
    clip-path: polygon(0 30%, 100% 0, 100% 31%, 0 30%);
    background:rgb(26, 26, 26);
    background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.01' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    
}
.separadorDiagonalNegroAbajo {
    height: 107px;
    clip-path: polygon(0 30%, 100% 0, 100% 31%, 0 30%);
    background:rgb(26, 26, 26);
    background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.01' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    clip-path: polygon(0 0, 100% 0, 100% 2%, 0 30%);
    margin-top: -77px !important;
    margin-bottom: -30px
}



.contenedorNegro{
    background:rgb(26, 26, 26);
    background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.01' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    width: 100%;
    padding: 55px 20px 45px 20px !important;
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: start;
    /* background-image: url("./assets/3px-tile.png"); */
    background-repeat: repeat;
    color: #fff !important;
    height:fit-content;
    position: relative;
    top: -75px;
    gap:45px;
    flex-wrap: wrap;
}
.tituloSeccionInformes{
    width: 350px;
    border: 2px solid #fff;
    border-radius: 1px ;
}
.tituloSeccionInformes h2 {
    width: 100% !important;
    text-align: center;
    font-family: "Roboto Slab";
    font-weight: 350;
    font-size: 1.4rem !important;
    padding: 8px 0 8px 0;
    background-color: #fff !important;
    color: #1a1a1a !important;
    text-shadow: none !important;
}
.tituloSeccionInformes p{
    margin:15px;
    padding: 0px !important;
    font-family: "Roboto Condensed";
}
.contenedorInformes{
    display: flex;
    gap:28px;
    width: 500px;
    flex-direction: column;
}
.informe{
    display: flex;
    gap:28px;
    width: 90%;
    flex-direction: row;
    position: relative;
    margin-bottom: 20px;
}
.informe h5{
    font-family:  "Roboto Slab", "Times New Roman", Times, serif;  !important  ;
	font-weight: bold !important;
    width: fit-content !important;
    margin:0px !important}
.informe p{
    font-family: "Roboto Condensed";
    width: fit-content !important;
    margin: 5px 0 0 0 !important;
}
.imagenesInformes{
    position: absolute;
    z-index: 1;
}
.imagenesInformes img{
    margin:0 0 5px 0;
    object-fit: cover;
    height: 100px;
    border-radius: 1px 1px 0 0;
    width: 100px;
    filter: grayscale(1);
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.116);
    z-index: 1;
    position: absolute
}
.imagenesInformes .fondoImg{
    background-color: #b98c1b;
    width: 100px;
    height: 100px;
    position: relative;
    left: 8px;
    top:8px
}
.bodyInforme {
    padding: 20px 15px 0px 110px;
    border: 1px #ffffff69 solid;
    position: relative;
  top: 14px;
  left: 15px;
  display: flex;
  flex-direction:column;
  align-items: baseline
}
.bodyInforme a{
    position: relative !important;
  align-self: end;
  top: 20px !important;
  right: 30px !important;
  margin-top: -15px;
}
.informe:hover .bodyInforme {
    background-color: #ffffff11 
}
.btn-warning{
    background-color: #b98c1b !important;
    border-color: #b98c1b !important;
border-radius: 2px !important;
font-family: "Roboto Condensed" !important;

}
.btn-warning:hover{
    background-color: #daa520 !important;
    border-color: #daa520 !important;
}

/*Servicios*/

/* NOSOTROS */
.nosotros {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 0 30px 0;
}
.nosotros h2 {
    width: 100%;
    font-family: "Roboto Slab";
    text-align: center;
  font-size: 2rem !important;
  text-shadow: none;
  color: #1a1a1a !important;
  font-weight: 500;
}
.subrayadoNosotrosNegro{
    width: 120px;
    height: 40px;
    border-bottom: 1px  #1a1a1a solid;
    margin:-30px 0 20px 0;
    display: flex;
    justify-content: center;
}
.subrayadoNosotrosAmarillo{
    width: 40%;
    height: 100%;
    border-bottom: 5px #b98c1b solid;
    position: relative;
    top: 3px;
}
.contenedorCardsNosotros{
    display: flex;
    flex-direction: row;
    margin: 20px;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
  align-items: center;
   
}
.cardNosotros{
    width: 450px;
    height:245px;
    display: flex;
    background-color: #fff;
    flex-direction: row;
    justify-content: start;
    align-items: start;
    padding: 30px 15px 20px 20px;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.116);
    gap:20px;
    transition: transform 0.3s

}
.cardNosotros:hover{
    transform: scale(1.02);
}
.cardNosotros img{
    width: 125px;
    height: 125px;
    border-radius: 50%;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.24);
}
.bodyCardNosotros{
    display: flex;
    flex-direction: column;
    align-items: start !important;
    justify-content: start !important;
    height: 60%;
    margin: 10px 0 0 5px;
}
.cardNosotros .bodyCardNosotros h5{
    font-family: "Roboto Slab";
    font-size: 1.2rem;
    font-weight: 400;
}
.separadorCardNosotros{
    width: 70px;
    height: 10px;
    border-bottom: 1px #b98c1b solid;
    margin: 5px 0px 14px 5px !important;
}
.bodyCardNosotros p {
    font-family: "Roboto Condensed";
    font-size: 0.9em;
    margin: 0px !important

}
.redesCardNosotros{
    display: flex;
    flex-direction: row;
    gap: 5px;
    margin: 8px 0 0 0;
}
.redesCardNosotros .bi{
    color: #b98c1b !important;
}
.redesCardNosotros .bi:hover{
    color:#1a1a1a !important
}
.redesCardNosotros a{
    text-decoration: none !important;
}
/*Articulos lectura*/
.contenedorArticulos{
    padding: 40px 40px 40px 40px;
    height: 100% !important;
    max-width: 860px !important;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content:center;
    align-items: start;
    gap:10px;
    align-self: center;
}
.contenedorArticulos h1{
    font-family: "Roboto Slab", "Times New Roman", Times, serif;  !important  ;
    color: #1a1a1a !important;
    text-shadow: none;
    text-align: left;
    font-size: 3em !important;
	margin-bottom: -40px !important
}
.contenedorArticulos h5{
    font-family: "Roboto Slab";
    font-weight: 300 !important;
    color: #1a1a1a !important;
    text-shadow: none;
    text-align: left;
    font-size: 1.3em !important;
    margin: 0 0 10px 5px
}
.bodyArticulo iframe {
    position: relative;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    border: none;
    margin: 1.5rem 0;
}
.imagenDestacadaArticulo {
    width: 100%;
    object-fit: cover;
	margin-top:-50px !important

}
.contenedorArticulos p {
    font-family: "Roboto Condensed";
    font-size: 1.2em;
	margin-bottom:2.5rem !important;
}
.contenedorArticulos mark {
	       padding: 35px;
    background-color: #1a1a1a;
    font-family: "Roboto Slab";
    font-size: 1.4rem;
    color: #fff;
    line-height: 1.7;
    display: block;
    margin-bottom: 50px;
    box-shadow: 15px 15px 0px #d4aa00;
	
}
.contenedorArticulos .autorArticulo {
    display: flex;
    flex-direction: row;
    gap:10px;
    margin: 0 0 25px 0;
}
.contenedorArticulos .autorArticulo img{
    width: 55px;
    height: 55px;
    border-radius: 50%;
}
.datosAutor .nombreAutor{
    font-family: "Roboto Slab";
    font-size: 1em !important;
font-weight: 500 !important;
margin: 3px 0 -10px 0 !important;
}
.autorArticulo .fecha {
    color: #b98c1b;
    font-size: 0.9em !important;
    font-family: "Roboto Condensed";
    text-align: left;
    margin: 0 0 0px 0px;
    font-weight: 700;

}
.bodyArticulo{
    width: 90%;
    margin:0 0 0 10px

}
.bodyArticulo h3 {
	    margin: 55px 0 15px 0 !important;
    font-family: "Roboto Slab" !important;
    font-weight: bold;
}
.bodyArticulo a {
color: goldenrod;
  text-decoration: underline;
  font-weight: bold;
	}
/*---Footer---- */
footer {
    background:rgb(26, 26, 26);
    background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.01' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    height: 200px;
    padding: 40px;
    box-shadow: 1px -1px 10px #1a1a1a;
    font-size: 1.3rem;
    display: flex;
    justify-content:space-around;
    flex-direction: row;
    flex-wrap: wrap;
    align-items:center;
    gap: 20px;    
}

footer p {
    color: #fff;
    font-size: 1rem !important;
    margin: 0 !important;
    font-family: "Roboto Condensed" !important;

}
.footerLogo {
    width: 140px;
}
.redesSociales{
    display: flex;
    flex-direction: row;
    gap:10px
}
footer a{
   color: #f0f0eb;
	text-decoration:none
}
footer a:hover{
  color: goldenrod;
}



.redes:hover{
    color:#daa520 !important
}
    
.fieldsetContact {
    border:none;
    background-color:#1a1a1a;
    color:#fff;
    padding:30px;
    margin:0 0 20px 0;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}
#inputMenssage {
    height: 100px;
}
.inputContact {
    box-sizing: border-box;
    padding:5px;
    margin:0 0 20px;
    width:100%;
}
.inputContact:focus {
    outline: 0 none;
    box-shadow: 1px 1px 10px  goldenrod;
    border: 2px #fff solid;
}
.formContact p {
    margin:0;
}
.pMarginTop {
    margin:20px 0 0 0;
}
.pMarginButtom {
    margin:0 0 20px 0;
}
.buttonContact {
    background-color: goldenrod;
    color:#000;
    padding: 5px;
    width: 200px;
    border: none;
    box-shadow: 2px 2px 5px #000;
    font-size: 1.1rem;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    text-shadow: none;
}
.buttonContact:hover {
    background-color: rgb(199, 151, 30);
}
/* @media (max-width: 615px) {
 
    footer{
        justify-content: center;
        flex-direction: column;
    }
  } */
  @media (max-width: 960px){
    .nico {
        height: 210px !important;
    }
    
}
@media (max-width: 768px){
    .tituloSeccionInformes{
        width: 420px;
    }
	.videoArticulo {
		height:300px;
}
}

@media (max-width: 425px) {
    .card{
        width: 390px;
    }
    .cardNosotros{
        width: 400px;
        height:270px; 
    }
	.contenedorArticulos{
		    padding: 20px 15px 40px 15px !important;
	} 
	.contenedorArticulos h2 {
		    font-size: 2em !important;
	}
	.contenedorArticulos p{
		font-size: 1em;
	}
	.contenedorArticulos mark{
		    font-size: 1.3rem;
	}
        footer{
        justify-content: center;
    }


  }

@media (max-width: 375px) {
    .tituloCards .barraIzquierda{
        width: 75px;
        
    }
    .tituloCards .barraDerecha{
        width: 75px;
        
    }
    .card{
        width: 390px;
    }
    .nico{
        height: 220px !important;
    }
    .cardNosotros{
        width: 330px;
        height:335px;
    }
    .nico {
        height: 300px !important;
    }
   
    nav img {
        width: 115px;
    }
    .formContact{
        width: 99% !important;
     
    }
   
  }
  @media (max-width: 320px){
    .cardNosotros{
        width: 290px;
        height:460px ;
    }
	  .contenedorArticulos mark{
		    font-size: 1.2rem;
	}
    .nico{
        height: 330px !important;
    }
  }
  @media (min-width: 992px) {
    .navbar-expand-lg{
        height: 70px ;
    }
   
  }

/* ═══════════════════════════════════════════════════════════
   NUEVOS ESTILOS — Botón más artículos, filtro autor, nav
═══════════════════════════════════════════════════════════ */

/* Botón "Más artículos" */
.contenedorBotonMas {
width: 75%;
  display: flex;
  justify-content: right;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.btnMasArticulos {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: #111;
    font-weight: 700;
    font-size: 1rem;
    padding: 0.45rem 1rem;
    border-radius: 4px;
    text-decoration: none;
    transition: background-color 0.2s ease, transform 0.15s ease;
    border: 2px solid #111;
}

.btnMasArticulos:hover {
    background-color: #111;
    color: #f5c518;
    transform: translateY(-2px);
}

/* Filtro por autor */
.filtroAutores {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    padding: 0 0.5rem;
	justify-content: center;
}

.btnFiltroAutor {
 padding: 0.2rem 0.9rem;
  border: 2px solid #111;
  border-radius: 2px;
  font-size: 0.9em;
  font-weight: 600;
  color: #f0f0eb;
  background: #1a1a1a;
  text-decoration: none;
  transition: all 0.2s ease;
  cursor: pointer;
}

.btnFiltroAutor:hover,
.btnFiltroAutor.activo {
    background-color: #f5c518;
    color: #1a1a1a;
}

/* Navegación entre artículos */
.navegacionArticulos {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 2.5rem 0 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid #ddd;
}

.navegacionArticulos a {
    color: #111;
    font-weight: 600;
    text-decoration: none;
    font-size: 0.95rem;
}

.navegacionArticulos a:hover {
    color: #f5c518;
}

/* Botón volver */
.volverArticulos {
    margin: 1rem 0 2rem;
}

.btnVolver {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: #111;
    font-weight: 600;
    text-decoration: none;
    font-size: 0.95rem;
    border-bottom: 2px solid transparent;
    transition: border-color 0.2s;
}

.btnVolver:hover {
    border-color: #f5c518;
    color: #111;
}

/* Página de archivo / autor */
.contenedorArchivo,
.contenedorAutor {
    padding: 2rem 1rem;
}

/* Paginación */
.paginacionArticulos {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 2rem 0;
}

.paginacionArticulos .page-numbers {
    padding: 0.4rem 0.8rem;
    border: 2px solid #111;
    margin: 0 2px;
    text-decoration: none;
    color: #111;
    font-weight: 600;
    border-radius: 4px;
    transition: all 0.2s;
}

.paginacionArticulos .current,
.paginacionArticulos .page-numbers:hover {
    background: #111;
    color: #f5c518;
}

/* Encabezado de artículo individual */
.headerArticulo {
    margin-bottom: 1.5rem;
}
.headerArticulo h1{
	display: block !important;
}
.extractoArticulo {
    font-size: 1.1rem;
    color: #555;
    font-style: italic;
    margin: -10px 0 -10px 0;
}

/* Imagen destacada en single */
.imagenDestacadaArticulo {
    width: 100%;
    margin: 1.5rem 0;
}

.imagenDestacadaArticulo img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

/* Datos del autor en single */
.autorArticulo {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    padding: 0.75rem 1rem;
    border-radius: 6px;
}

.autorArticulo img {
    border-radius: 50%;
    width: 40px;
    height: 40px;
    object-fit: cover;
}

.datosAutor .nombreAutor {
    font-weight: 700;
    margin: 0;
    font-size: 0.95rem;
}

.datosAutor .fecha,
.datosAutor time {
    font-size: 0.85rem;
    color: #777;
    margin: 0;
}

/* lazy loading — evitar layout shift */
.imagenCard img,
.imagenesInformes img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
    width: 100%;
}

/* Enlace del autor en artículo individual */
.nombreAutor a {
    color: inherit;
    font-weight: 700;
    text-decoration: none;
    border-bottom: 2px solid #f5c518;
    transition: color 0.2s, border-color 0.2s;
}

.nombreAutor a:hover {
    color: #f5c518;
    border-color: transparent;
}

/* ═══════════════════════════════════════════════════════════
   SECCIÓN SERVICIOS
═══════════════════════════════════════════════════════════ */

.seccionServicios {
    padding: 0.5rem 1.5rem 3.5rem;
	align-items: center;
  display: flex;
  flex-direction: column;
}
.seccionServicios h2 {
    width: 100%;
    font-family: "Roboto Slab";
    text-align: center;
  font-size: 2rem !important;
  text-shadow: none;
  color: #1a1a1a !important;
  font-weight: 500;
}
.gridServicios {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
    max-width: 1100px;
    margin: 2rem auto 0;
}

.servicioCard {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1.5rem 1.25rem;
    border: 2px solid #e8e8e8;
    border-radius: 6px;
    background: #fafafa;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.servicioCard:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

/* Tarjetas alternadas con fondo oscuro */
.servicioCard--destacado {
    background: #111;
    border-color: #111;
    color: #fff;
}

.servicioCard--destacado h3 {
    color: #f5c518;
}

.servicioCard--destacado p {
    color: #ccc;
}

.servicioIcono {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.servicioIcono img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: none;
}

.servicioCard--destacado .servicioIcono img {
    filter: brightness(0) invert(1);
}

.servicioBody h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.4rem;
    color: #111;
}

.servicioBody p {
    font-size: 0.88rem;
    line-height: 1.55;
    margin: 0;
    color: #555;
}

.servicioBodyNegro h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.4rem;
    color: #f0f0eb;
}

.servicioBodyNegro p {
    font-size: 0.88rem;
    line-height: 1.55;
    margin: 0;
    color: #f0f0eb ;
}

.separadorServiciosNosotros {
    margin-top: 0;
}

@media (max-width: 768px) {
    .gridServicios {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 480px) {
    .gridServicios {
        grid-template-columns: 1fr;
    }
}


/* ═══════════════════════════════════════════════════════════
   TEXTO INTRODUCTORIO — NOSOTROS
═══════════════════════════════════════════════════════════ */

.textoNosotros {
    max-width: 720px;
    margin: 1.5rem 1rem 2.5rem;
    padding: 0 1rem;
    text-align: center;
    position: relative;
}

.textoNosotros::before,
.textoNosotros::after {
    content: '"';
    font-size: 4rem;
    line-height: 0;
    position: absolute;
    color: #f5c518;
    font-family: Georgia, serif;
    opacity: 0.5;
}

.textoNosotros::before {
    top: 1.2rem;
    left: 0;
}

.textoNosotros::after {
    content: '"';
    bottom: -0.5rem;
    right: 0;
}

.textoNosotros p {
    font-size: 1rem;
    line-height: 1.75;
    color: #333;
    font-style: italic;
    padding: 0 2rem;
}


/* ═══════════════════════════════════════════════════════════
   SECCIÓN PRENSA
═══════════════════════════════════════════════════════════ */

.contenedorPrensaNegro {
    padding-bottom: 2rem;
}
.contenedorPrensaNegro h2 {
    width: 100%;
    font-family: "Roboto Slab";
    text-align: center;
  font-size: 2rem !important;
  text-shadow: none;
  color: #ffffff !important;
  font-weight: 500;
}

.contenedorPrensaCards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
    max-width: 1100px;
    margin: 1.5rem auto 0;
    padding: 0 1rem;
}

.cardPrensa {
    background: #1a1a1a;
    border: 1px solid #333;
    border-radius: 6px;
    overflow: hidden;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.cardPrensa:hover {
    transform: translateY(-3px);
    border-color: #f5c518;
}

.cardPrensa > a {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

.imagenPrensa {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    flex-shrink: 0;
}

.imagenPrensa img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.cardPrensa:hover .imagenPrensa img {
    transform: scale(1.04);
}

.bodyPrensa {
    padding: 1rem 1.1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    flex-grow: 1;
}

.bodyPrensa h3 {
    font-size: 0.95rem;
    font-weight: 700;
    color: #fff;
    margin: 0;
    line-height: 1.35;
}

.bodyPrensa p {
    font-size: 0.82rem;
    color: #aaa;
    margin: 0;
    line-height: 1.5;
    flex-grow: 1;
}

.leerMasPrensa {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: 0.6rem;
    font-size: 0.8rem;
    font-weight: 700;
    color: #f5c518;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.sinContenido {
    color: #aaa;
    font-style: italic;
    padding: 1rem;
}

@media (max-width: 768px) {
    .contenedorPrensaCards {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 480px) {
    .contenedorPrensaCards {
        grid-template-columns: 1fr;
    }
}

/* ═══════════════════════════════════════════════════════════
   PRENSA — versión blanca (reemplaza fondo negro anterior)
═══════════════════════════════════════════════════════════ */

.seccionPrensaBlanca {
    padding: 3rem 1.5rem 3.5rem;
    background-color: #fff;
}

/* Reutiliza el mismo estilo de título que Nosotros */
.seccionPrensaBlanca h2 {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 0.3rem;
}

.seccionPrensaBlanca .contenedorPrensaCards {
    max-width: 1100px;
    margin: 2rem auto 0;
    padding: 0 1rem;
}

/* Cards con fondo claro para contrastar con el blanco de la sección */
.seccionPrensaBlanca .cardPrensa {
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    color: #111;
}

.seccionPrensaBlanca .cardPrensa:hover {
    border-color: #111;
    box-shadow: 0 4px 16px rgba(0,0,0,0.10);
}

.seccionPrensaBlanca .bodyPrensa h3 {
    color: #111;
}

.seccionPrensaBlanca .bodyPrensa p {
    color: #555;
}

.seccionPrensaBlanca .leerMasPrensa {
    color: #111;
    font-weight: 700;
}

.seccionPrensaBlanca .leerMasPrensa:hover {
    color: #f5c518;
}

/* ═══════════════════════════════════════════════════════════
   HEADER STICKY — aparece al scrollear hacia arriba
═══════════════════════════════════════════════════════════ */

header {
    position: relative;
    z-index: 1000;
    transition: box-shadow 0.25s ease;
}

header.header--sticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-100%);
    transition: transform 0.3s ease, box-shadow 0.25s ease;
}

header.header--sticky.header--visible {
    transform: translateY(0);
}

/* ═══════════════════════════════════════════════════════════
   HEADER STICKY
═══════════════════════════════════════════════════════════ */

.headerSticky {
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.10);
}

/* Compensar que el sticky no desplace el contenido */
main {
    scroll-margin-top: 70px;
}

/* Que los anchors de sección no queden tapados por el header */
#articulos, #informes, #servicios, #prensa, #nosotros {
    scroll-margin-top: 75px;
}


/* ═══════════════════════════════════════════════════════════
   IMÁGENES DE PRENSA — evitar pixelado
   WordPress genera 'thumbnail' en 150x150px (recortado).
   Forzamos object-fit: cover con tamaños grandes en CSS
   para que nunca se estire un recorte pequeño.
═══════════════════════════════════════════════════════════ */

.imagenPrensa {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    flex-shrink: 0;
    background: #222;
}

.imagenPrensa img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
    /* Nunca escalar hacia arriba una imagen pequeña con nitidez falsa */
    image-rendering: auto;
}

.cardPrensa:hover .imagenPrensa img {
    transform: scale(1.04);
}

/* Título de Prensa: mismo estilo que Nosotros pero sobre fondo oscuro */
.tituloSeccionPrensaNosotros {
    text-align: left;
    padding: 0 1.5rem;
    margin-bottom: 1.5rem;
	display: flex;
  flex-direction: column;
  align-items: center;
}

.tituloSeccionPrensaNosotros h2 {
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.3rem;
}

/* ═══════════════════════════════════════════════════════════
   HEADER — ocultar al bajar, deslizar al subir
═══════════════════════════════════════════════════════════ */

.headerSticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
	background-color:#fff;
	background-image: url("data:image/svg+xml,%3C!-- svg: first layer --%3E%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.3' filter='url(%23noiseFilter)'/%3E%3C/svg%3E") !important;
    z-index: 2000;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.10);
    transform: translateY(0);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.headerSticky.header--oculto {
    transform: translateY(-100%);
}

.headerSticky.header--visible {
    transform: translateY(0);
}

/* Compensar el espacio que ocupa el header fixed */
body {
    padding-top: 70px;
}
