
/* Reset CSS */
/** {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html,
body {
	background-color: #202020;
	color: #fff;
	margin: 15px;
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.63;
}*/

.grid-wrapper {
	display: grid;
	grid-gap: 30px;
	/*grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));*/
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-template-rows: 1fr 1fr 1fr 1fr;
	grid-auto-flow: dense;
}

.grid-wrapper img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	display: inline-block;
}

/* Main CSS */
.grid-wrapper > .grid-item {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;/*alineado abajo*/
	align-items: flex-start;
	/*align-items: center;*/
	text-align: left;
	background-color: #2d2d2d;
	padding: 30px;
	transition: 0.5s;
	position: relative; /*ojo con esto*/
}

.grid-wrapper > .grid-item.grid-item-cta {
	justify-content: center;/*alineado vertical centrado*/
}

/* https://stackoverflow.com/questions/51577807/responsive-css-grid-with-persistent-aspect-ratio */
/*.grid-wrapper > .grid-item:before {
    content: "";
    display: block;
    height: 0;
    width: 0;
    padding-bottom: calc(1/7 * 100%);
}*/

.grid-wrapper > .grid-item h3.caso-title {
	font-size: 24px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: normal;
    margin: 0 0 20px 0;
}

.grid-wrapper > .grid-item .caso-description {
	margin: 0;
    line-height: 1.3;
}

.grid-wrapper .grid-item .card-ods-icon {
	background: url("images/ods-icons/S-WEB-Goal-01-150x150.png") center center / cover no-repeat;
	width: 60px;
    height: 60px;
    position: absolute;
    right: 10px;
    top: 10px;
} 

/* nth-child counter */
.grid-wrapper {
	counter-reset: nthChild;
}

/*bloques alargados horizontales*/
.grid-item-1,
.grid-item-5,
.grid-item-7,
.grid-item-9 {
	grid-column: span 2;
	grid-row: span 1;
}
/*bloques de 1x1*/
.grid-item-2,
.grid-item-6,
.grid-item-8,
.grid-item-10 {
	grid-column: span 1;
	grid-row: span 1;
}
/*bloques alargados verticales*/
.grid-item-3,
.grid-item-4 {
	grid-column: span 1;
	grid-row: span 2;
	justify-content: flex-end; /*alineamos abajo para los verticales*/
}

/*bloques alargados horizontales*/
.grid-item-1 .card-info-box,
.grid-item-5 .card-info-box,
.grid-item-7 .card-info-box,
.grid-item-9 .card-info-box {
	width: 50%;
}
/*bloques alargados verticales*/
.grid-item-3 .card-info-box,
.grid-item-4 .card-info-box {
	/*min-height: 50%;*/
}

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

	.grid-wrapper > .grid-item {
		padding: 20px;
	}

	/*bloques alargados horizontales*/
	.grid-item-1 .card-info-box,
	.grid-item-5 .card-info-box,
	.grid-item-7 .card-info-box,
	.grid-item-9 .card-info-box {
		width: 70%;
	}

}

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

	.grid-item-1,
	.grid-item-2,
	.grid-item-3,
	.grid-item-4,
	.grid-item-5,
	.grid-item-6,
	.grid-item-7,
	.grid-item-8,
	.grid-item-9,
	.grid-item-10 {
	    grid-column: span 2;
	    grid-row: span 2;
	    height: auto;
	    min-height: 300px;
	}

	.grid-item-1 .card-info-box,
	.grid-item-2 .card-info-box,
	.grid-item-3 .card-info-box,
	.grid-item-4 .card-info-box,
	.grid-item-5 .card-info-box,
	.grid-item-6 .card-info-box,
	.grid-item-7 .card-info-box,
	.grid-item-8 .card-info-box,
	.grid-item-9 .card-info-box,
	.grid-item-10 .card-info-box {
	    width: 75%;
	}

}

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

	.grid-item-1,
	.grid-item-2,
	.grid-item-3,
	.grid-item-4,
	.grid-item-5,
	.grid-item-6,
	.grid-item-7,
	.grid-item-8,
	.grid-item-9,
	.grid-item-10 {
	    grid-column: span 4;
	    grid-row: span 4;
	    height: auto;
	    min-height: 260px;
	}

}
