main {
    position: relative;
    background-image: url('../img/fundo-branco-urb-grill.webp');
    background-color: #F0EFEB;
    overflow: hidden;
    padding: 10px;
}
main::before {
    content: "\e901";
    font-family: 'icomoon';
    position: absolute;
    font-size: 84rem;
    color: #ff0000;
    filter: opacity(.04);
    bottom: 0;
    left: 64px;
    transform: translateY(34%);
    pointer-events: none;
    font-weight: 500;
}
main h1 {
    text-align: center;
    font-weight: 700;
    font-size: 2.15rem;
    margin: 32px 0 85px 0;
}
img.image {
    opacity: 1;
    transition: all 2.6s ease;
}
img.image.active {
    opacity: 1;
}
h2 span,
main h1 span {
    position: relative;
}
h2 span::before,
main h1 span::before {
    content: "\e901";
    font-family: 'icomoon';
    position: absolute;
    font-size: 2.6rem;
    left: -64px;
    bottom: 8px;
    font-weight: 500;
}
main .description {
    margin-bottom: 128px;
}
main .description .img-wrapper {
    width: 353px;
    height: 418px;
    float: left;
    margin-right: 20px;
    position: relative;
}
main .description .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
main .text {
    font-size: 1.4rem;
}
main .text h2 {
    font-size: 1.9rem;
    margin-bottom: 10px;
}
main .text h4 {
    margin-top: 25px;
    margin-bottom: 0;
}
main .text p strong{
}
main .text li {
    margin-bottom: 20px;
    list-style-type: disc;
    list-style-position: inside;
}
section.gallery {
    background-color: #232323;
    color: #F0EFEB;
}
section.gallery h2 {
    text-align: center;
    padding: 66px 0 36px 0;
    font-weight: 700;
    font-size: 2.15rem;
}
section.gallery h2 i {
    font-size: 2.8rem;
    margin-right: 30px;
}
/* Main CSS */
.grid-wrapper a {
	display: flex;
	justify-content: center;
	align-items: center;
}
.grid-wrapper a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    transform: scale(1);
    transition: all .4s ease-in-out;
}
.grid-wrapper a img:hover {
    z-index: 2;
    transform: scale(1.2);
}
.grid-wrapper {
	display: grid;
	grid-gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	grid-auto-rows: 200px;
	grid-auto-flow: dense;
    padding: 0 10px 64px 10px;
}
.grid-wrapper .wide {
	grid-column: span 2;
}
.grid-wrapper .tall2 {
	grid-row: span 1.5;

}
.grid-wrapper .tall {
	grid-row: span 2;
}
.grid-wrapper .big {
	grid-column: span 2;
	grid-row: span 2;
}
@media(max-width: 640px) {
    h2 span::before,
    main h1 span::before {
        left: 50%;
        transform: translateX(-50%);
        bottom: 112%;
    }
    main .description {
        display: flex;
        flex-direction: column;
    }
    main .description .img-wrapper {
        max-width: 353px;
        width: 100%;
        height: auto;
        margin-bottom: 32px;
    }
}
@media(max-width: 480px) {
    .grid-wrapper .tall {
        grid-row: span 1;
    }
    .grid-wrapper .wide {
        grid-column: span 1;
    }
}
