/*
	Theme Name: Pineda En Comú 2022
	Theme URI: https://jcpro.es/
	Description: HTML5 JCPRO Theme
	Version: 2.0.1
	Author: J.C.PRO
	Author URI: http://www.jcpro.es/
	Tags: Blank, HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

*{
    box-sizing: border-box;
}

.clearfix:before, .clearfix:after {
    content: " ";
    display: table;
    clear: both;
}
/* Inicio
--------------*/

html{
	font-size: 100%;
}
body{
	font-family: Roboto,Helvetica,Arial,sans-serif;
	font-size: calc(0.75em + 1vmin);
	margin: 0;
    padding: 0;
    width: 100%;
    color: #000;
    background: #fff;
}
img {
	max-width:100%;
	aspect-ratio: 1 / 1;
}
a {
	color: #000;
	text-decoration:none;
	overflow-wrap: break-word;
}
p{
	font-weight:300;
	text-align:justify;
}

h1{
	font-weight: 500;
	font-size: 200%;
	line-height: 1.2;
	padding: 2%;
	width: 100%;
}
h1.underline{
	width:100%;
	border-bottom: 3px solid #e43528;
}

/* Areas del Grid
-------------------*/
.wrapper {
	display: grid;
	width:100%;
	grid-template-areas: "redes" "header" "flex" "content" "news" "footer"
}

.redes {
	grid-area: redes;
	background: linear-gradient(135deg,#e43528 0,#79325e 60%);
	height: 50px;
	width: 100%;
    position: fixed;
    top: 0;
    left: 0;
	z-index: 99;
}

.header{
	grid-area: header;
}

.flex{
	grid-area: flex;
	display:none;
}
.content{
	grid-area: content;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: flex-start;
	align-items: flex-start;
	padding: 4%;
}
.news{
	grid-area: news;
	background-color: brown;
	height: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	align-items: center;
}

.footer{
	grid-area: footer;
	background: linear-gradient(135deg,#e43528 0,#79325e 60%);
	border-top: 2px solid white;
	
}

/* Redes Ico
----------------*/
.redes02{
    width:100%;
    
}
.redes-ico{
	display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-content: center;
    align-items: center;
	min-height:50px;
}

.redes-items{
	order: 0;
    flex: 0 1 auto;
    align-self: auto;
	list-style: none;
    margin-left: 5vw;
    padding: 2px;
    color: #fff;
	font-size:32px;
}

.redes-items a{
	color: white;
}

.redes-items a:hover{
	color: rgba(237, 107, 159);
}

/* Header
------------*/
.logo{
	display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-around;
    align-content: center;
    align-items: center;	
}

.logo-img{
	width: 100%;
height: auto;
max-height: 200px;
margin-top: 25px;
}

.header-logo{
	width: 100%;
	padding: 3%;
	
}

.logo-img-mov{
	
}

/*------------------------------------*\
	Menú MOV
\*------------------------------------*/
/*Damos estilos al menú*/
.menu-movil{
	display:block;
	z-index: 100;
	position: fixed;
	top: 0;
}

.nav-mov-menu a{color:#fff;}
.nav-mov-menu a:hover{color:#fff;}
.nav-mov-menu ul{list-style:none; padding: 5%;}
.nav-mov-menu li{padding: 15px;border-bottom: 2px solid #fff;}

.nav-mov-menu {
  position:absolute;
  width:80vw;
  height:100vh;
  top:0;
  left:-80vw; /*Ocultamos el menú en la parte izquierda para que no se vea a menos que pulsemos sobre la hamburguesa*/
  padding-top:47px;
  background: linear-gradient(135deg,#e43528 0,#79325e 60%);
  border-right:6px solid #fff;
  transition:all .5s ease; /*Damos a la caja del menú una transición para que tenga un desplazamiento suave*/
  z-index: 9999;
  font-size:18px;
}
   /*Estilos de los li del menú*/
   .nav-mov-menu__item {
     display:block;
     width:96%;
     margin:0 auto;
     line-height:2;
     position:relative; /*Le damos una posición relativa para posteriormente añadirle el triangulo que indica que se está en la página actual del menú*/
     border-bottom:.5px solid rgba(59, 62, 61, 1);
     border-top:.5px solid rgba(59, 62, 61, 1);
     background-color:transparent;
     font-family: 'Roboto', sans-serif;
     text-align:center;
     color:#FFF;
   }
  /*Estos son los estilos de la hamburguesa del menú que abre y cierra el mismo*/
  .menu-toogle {
    position:absolute; /*Lo posicionamos absolutamente para poder darle una posición y poder moverlo según el menú esté abierto o cerrado*/
    width: 50px;
    line-height:1.1;
    text-align:center;
    top:0px; /*Le damos una posición top y left en donde queramos que se encuentre la hamburguesa del menú*/
    left: 0px; 
    border-radius:3px;
    background-color: #db352c;
	-webkit-box-shadow: -10px 0px 13px -7px #000000, 10px 0px 13px -7px #000000, -8px 5px 15px 5px rgba(0,0,0,0); 
	box-shadow: -10px 0px 13px -7px #000000, 10px 0px 13px -7px #000000, -8px 5px 15px 5px rgba(0,0,0,0);
    transition: all .5s ease; /*Añadimos una transición para que realice un desplazamineto suave*/
    z-index:9999;
  }

 /*Estos son los estilos que le dan la funcionalidad al menú*/
    /*El checkbox según esté activado o no hará que el menú aparezca o desaparezca*/
    .checkbox {
      display:none; /*Ocultamos el checkbox pues no nos interesa que se vea*/
    }
    .checkbox:checked ~ .nav-mov-menu {
      left:0px; /*Le quitamos el left negativo para que el menú vuelva a su posición original*/
      position:fixed; /* Fijamos el menú lateral para que se desplace cuando hagamos scroll*/
    }
    .checkbox:checked ~ .main-w {
      margin-left:200px; /*Cuando el checkbox asigna un margen al contenedor principal para que se desplace junto con el menú*/
    }
    .checkbox:checked ~ .menu-toogle { 
	  left:80vw;
      position:fixed; /*Fijamos la hamburgues para que se desplace junto con el menú*/
    }
.fa-bars, .fa-times{
	color:white;
	font-style: normal;
    font-weight: normal;
	font-size:40px;
	padding:5px;
}

.preitems-menu-mov{
	width: 80vw;
	position: fixed;
	bottom: 25px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	align-content: flex-start;
	align-items: flex-start;
}
	
.items-menu-mov{
	padding: 3vw;
	color: #fff;
	font-size: 200%;
}
/* Header Menu
---------------*/
/* Header Menu
---------------*/

.header-menu{
	display:none;
	width:100%;
}

.main-nav{
	min-height: 50px;
	display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: center;
align-content: center;
align-items: center;
}

.main-nav ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-content: stretch;
    align-items: center;
    list-style: none;
}
.main-nav ul li {
    
}
.main-nav li ul {
    display: none;
}
.main-nav ul li a {
    display: block;
    text-decoration: none;
    color: #444;
    padding: 5px 15px 5px 15px;
    background: #fff;
    margin-left: 10px;
    white-space: nowrap;
}
.main-nav ul li a:hover {
	background: #e43528;
	color: #fff;
	transition:all .8s ease;
}
.main-nav li:hover ul {
    display: block;
    position: absolute;
}
.main-nav li:hover li {
    float: none;
    font-size: 15px;
}
.main-nav li:hover a { background: #fff;}
.main-nav li:hover li a:hover {background: #fff;
}



/* Loop
---------------*/
article{
	width:100%;
	padding: 2%;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: flex-start;
	align-items: center;
	
}
article2{
	width:100%;
	padding: 2%;
    display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: flex-start;
	align-items: center;
	
}

.main-date{
	width:100%;
	border-top: 3px solid #e43528;
	text-align: right;
	min-height: 40px;
}
.fecha{
	margin-top: 5px;
}

.post-img-index{
	max-height: 20em;
    overflow: hidden;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.imagen-index{
	object-fit: cover;
    display: block;
}

.subtitulo{
	font-size: 150%;
	line-height: 1.2;
	margin: 8px 0px;
	text-align: center;
}
.p-main{
	font-size:120%;
	margin-bottom: 25px;
}

.view-article{
	/*font-size: 140%;
	padding: 3%;
	background-color: #e43528;*/
	display:none;
}
.view-article a{
	color:#fff;
	font-weight: 500;
}

.more-link{
	width: 100%;
margin: 15px 0px;
}

a.more-link-mes{
	text-transform: uppercase;
text-align: center;
color: #e43528;
padding: .9em;
background: #fff;
border: 1px solid #e43528;
transition: all .3s ease;
border-radius: 6px;
display: block;
}

/* Single
---------------*/
h1.titulos {
	font-size: 150%;
	line-height: 1.2;
	text-align: center;
}
.contenido ul{
	list-style: disclosure-closed;
  margin-left: 25px;
	text-align:justify;
	margin-bottom: 20px;
	line-height: 1.2
}

.contenido li{
	padding: 2%;
}
.contenido p{
	line-height: 1.3;
	font-size: 110%;
	padding:2%;
}


/* Pagination
---------------*/
.pagination{
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: center;
align-content: center;
align-items: center;
/*font-size: 140%;*/
height: 80px;
}

.line-red{
	width: 100%;
	height: 5px;
	border-bottom: 3px solid #e43528;
}

.pagination {
	
}

.page-numbers {
    padding: 10px;
	border: 2px solid #e43528;
	margin: 2px;
}

.pagination span.current{
	background-color: #e43528 ;
	color: #fff;
}

.dedos{
	font-weight: 900;
  color: #e43528;
  font-size: 100%;
}

.pagination>.dots{
	display:none;
}

/* 404
---------------*/
.h1-sub-error{
	text-align: center;
	margin-bottom: 25px;
}
.h2-sub-error{
	font-size: 120%;
line-height: 1.3;
margin: 25px 0px;
text-align: justify;
}

.h2-bondia{
	font-size: 160%;
text-align: center;
}


/* Formularios
---------------*/
.wpcf7{
	/*max-width: 300px!important;*/
	width: 98%;
}

.wpcf7 input[type="text"], input[type="email"], .wpcf7 input[type="tel"]{
	/*width: 80vw!important;
	max-width: 650px;*/
}

.wpcf7 input[type]{
	width: calc(100% - 20px);
}

.wpcf7 span{
/*width:100%;*/
margin-top: 15px!important;
}

.wpcf7 [type="checkbox"], [type="radio"]{
	width: 20px!important;
	height: 20px!important;
}

.wpcf7 [type="submit"]{
	padding: 4%;
	background-color: #e43528;
	border-radius: 15px;
	color: white;
}

/* Formulario Questionari
--------------------------*/

.h2-questionari{
	margin-bottom: 25px;
}

.questionari-wrap{
	margin-bottom: 25px;
	border-bottom: 1px solid #e43528;
}

.p-red{
	color: #9d0000;
	font-size: 100%;
    padding: 1.5%;
}

.p-blue{
	color: #3400a1;
	font-size: 100%;
    padding: 1.5%;
}

.pre-verificar{
	margin-bottom: 15px;
}

.pre-verificar > .wpcf7-form-control-wrap > .wpcf7-form-control {
	width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-content: center;
    align-items: center;	
}

.pre-verificar > .wpcf7-form-control-wrap > .wpcf7-form-control span {
	width: auto;
}


/* News
---------------*/
.facebook, .twitter{
	padding: 20px;
}

iframe{
	width:100%;
}


/* Footer
---------------*/

.info-block{
	width: 100%;
	padding: 5px;
	min-height: 100px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-content: space-around;
	align-items: center;
}
.footer-item{
	color:#fff;
	width: 33%;
	text-align: center;
	padding: 3%;
}

.footer-item a{
	color: #fff;
}

.copyright{
color: #fff;
padding: 0px 50px 15px 50px;
text-align: center;
font-size: 80%;
line-height: 1.3;
}
.copyright a{
	color:#fff;
	text-decoration: underline;
}

/*---------------------------------------
		Programa electoral 2023
----------------------------------------*/
.subtitul-programa {
	font-size:48px;
	color:#611b70;
	margin-bottom: 40px;
	text-align:center;

}

.titulo-programa {
	font-size:28px;
	color:#611b70;
	font-weight: 600;
	margin-bottom: 20px;

}

.ul-programa{
	font-size: 24px;
	list-style: none!important;
	margin-bottom: 30px!important;
	line-height: 1.3!important;
	margin-left: 0px!important;
    text-align: left!important;
}

.img-single {
	aspect-ratio: auto;
}



/*---------------------------------------
		Media Query
----------------------------------------*/

@media (min-width: 780px){
	.menu-movil{display:none}
	.header-menu{display:block}
	article{width:50%;}
	.post-img-index{max-height:8em;}
	.pagination{justify-content:center;}
	.line-red{margin-bottom: 20px;}
	.page-numbers{margin:10px;}
	img {aspect-ratio: 2 / 1;}
	.wp-block-gallery img { aspect-ratio: 1 / 1;}
}

@media (min-width: 1024px){
	article{width:32%;}
	.wpcf7 {max-width: 1024px!important;}
}