{% extends "base.html.twig" %}
{% block stylesheets %}
<style>
.carousel-caption {
top: 50%;
transform: translateY(-50%);
bottom: auto;
}
.btn-custom {
background-color: transparent;
border: 1px solid rgb(0, 0, 0, 0.3);
color: rgb(0, 0, 0, 0.7);
padding: 0.5rem 1rem;
text-decoration: none;
}
.card-img-overlay {
top: auto;
}
.btn-card {
background-color: #FFF;
padding: 0.5rem 1rem;
text-decoration: none;
color: rgb(0, 0, 0, 0.7);
border-radius: 0;
transition: 0.3s ease-in-out;
}
.btn-card:hover {
background-color: #FFF;
color: rgb(0, 0, 0, 0.7);
font-weight: bold;
transition: 0.3s ease-in-out;
}
.card {
border: none;
}
.card-img-top {
border-radius: 0;
}
.border-right {
border-right: 1px solid #dee2e6;
}
.carousel-indicators-custom {
position: absolute;
right: 0;
left: 0;
top: 0;
z-index: 2;
display: flex;
justify-content: space-around;
padding: 0;
margin-right: 15%;
margin-top: 4rem;
margin-left: 15%;
}
.btn-indicator {
background-color: transparent;
border: none;
color: #FFF;
padding: 0.5rem 1rem;
margin: 0 0.5rem;
border-radius: 0;
transition: 0.3s ease-in-out;
}
.btn-indicator.active {
font-weight: bold;
transition: 0.3s ease-in-out;
}
.carousel-control-prev-icon {
opacity: 1;
}
.carousel-control-next-icon {
opacity: 1;
}
.description {
text-align: justify;
padding: 1rem 3rem;
font-size: 18px;
}
.flex-center {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
gap: 0.5rem;
}
.title-header {
font-weight: bold;
text-transform: uppercase;
font-size: 50px;
}
</style>
{% endblock %}
{% block body %}
{# ------------------------------------------ Carousel ------------------------------------------ #}
<div id="newsCarousel" class="carousel slide carousel-fade" data-bs-ride="carousel">
<div class="carousel-indicators">
<button type="button" data-bs-target="#newsCarousel" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#newsCarousel" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#newsCarousel" data-bs-slide-to="2" aria-label="Slide 3"></button>
</div>
<div class="carousel-inner bg-black">
{% if carouselImages|length > 0 %}
{% for carousel in carouselImages %}
<div {% if loop.first %}class="carousel-item active"{% else %}class="carousel-item"{% endif %}>
<img src="{{ carousel.file.path }}" class="d-block w-100 opacity-50" alt="{{ carousel.description }}">
<div class="carousel-caption d-none d-md-block">
<h1 class="title-header">Crea el hogar de tus sueños, comenzando por el piso</h1>
</div>
</div>
{% endfor %}
{% endif %}
{# <div class="carousel-item active">
<img src="{{ asset('assets/img/Carousel/News/img1.png')}}" class="d-block w-100" alt="img1">
<div class="carousel-caption d-none d-md-block">
<h1 class="title-header">Crea el hogar de tus sueños, comenzando por el piso.</h1>
</div>
</div>
<div class="carousel-item">
<img src="{{ asset('assets/img/Carousel/News/img2.png')}}" class="d-block w-100" alt="img2">
<div class="carousel-caption d-none d-md-block">
<h1 class="title-header">Crea el hogar de tus sueños, comenzando por el piso.</h1>
</div>
</div>
<div class="carousel-item">
<img src="{{ asset('assets/img/Carousel/News/img3.png')}}" class="d-block w-100" alt="img3">
<div class="carousel-caption d-none d-md-block">
<h1 class="title-header">Crea el hogar de tus sueños, comenzando por el piso.</h1>
</div>
</div> #}
</div>
<button class="carousel-control-prev" type="button" data-bs-target="#newsCarousel" data-bs-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="visually-hidden">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-bs-target="#newsCarousel" data-bs-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="visually-hidden">Next</span>
</button>
</div>
{# ------------------------------------------ Carousel ------------------------------------------ #}
{# ------------------------------------------ Cards ------------------------------------------ #}
<section class="container mt-5">
<div class="row">
<div class="d-flex justify-content-between align-items-center">
<h4 class="fw-normal">Estilos Únicos</h4>
<a href="{{ path('catalog') }}" class="btn-custom">Catálogo <i class="fa-solid fa-arrow-right"></i></a>
</div>
</div>
<hr class="mt-3">
<div class="row row-cols-1 row-cols-lg-3 mt-3 gy-4">
<div class="col">
<div class="card">
<img src="{{ asset('assets/img/Card/img1.png')}}" class="card-img-top" alt="...">
<div class="card-img-overlay d-grid gap-2">
<a href="#" type="button" class="btn btn-card">Shakhir gray</a>
</div>
</div>
</div>
<div class="col">
<div class="card">
<img src="{{ asset('assets/img/Card/img2.png')}}" class="card-img-top" alt="...">
<div class="card-img-overlay d-grid gap-2">
<a href="#" type="button" class="btn btn-card">Pulse Antique</a>
</div>
</div>
</div>
<div class="col">
<div class="card">
<img src="{{ asset('assets/img/Card/img3.png')}}" class="card-img-top" alt="...">
<div class="card-img-overlay d-grid gap-2">
<a href="#" type="button" class="btn btn-card">Arenite Natural</a>
</div>
</div>
</div>
</div>
</section>
{# ------------------------------------------ Cards ------------------------------------------ #}
{# ------------------------------------------ Main Description ------------------------------------------ #}
<section class="container">
<hr class="mt-3 mb-5">
<div class="row">
<div class="col-md-8 border-right description">
Los azulejos dan calidez y un sentimiento más hogareño. A su vez,
aportan más profundidad a la estancia donde se puede revestir las
paredes, dando un acabado mucho más elegante, haciendo que todo el
hogar tenga un sentido y un estilo compacto de pertenencia. Cada
vez son más y más las personas que se suman a decorar sus hogares
con los azulejos de salón, permitiendo renovar y dar algo de frescura
a la habitación más concurrida.
</div>
<div class="col-md-4 flex-center">
<h3>10, 000+</h3>
<h4>Clientes felices</h4>
<a href="{{ path('contact') }}" class="btn-custom">Contacto</a>
</div>
</div>
<hr class="mt-5">
</section>
{# ------------------------------------------ Main Description ------------------------------------------ #}
{# ------------------------------------------ Second Carousel ------------------------------------------ #}
{# <div id="designsCarousel" class="carousel slide carousel-fade">
<div class="carousel-indicators-custom">
<button type="button" class="btn-indicator fs-5 active" data-bs-target="#designsCarousel" data-bs-slide-to="0" aria-current="true" aria-label="Slide 1">Naunces</button>
<button type="button" class="btn-indicator fs-5" data-bs-target="#designsCarousel" data-bs-slide-to="1" aria-label="Slide 2">Verity</button>
<button type="button" class="btn-indicator fs-5" data-bs-target="#designsCarousel" data-bs-slide-to="2" aria-label="Slide 3">Ullise</button>
</div>
<div class="carousel-inner">
<div class="carousel-item active">
<img src="{{ asset('assets/img/Carousel/Designs/img4.png')}}" class="d-block w-100" alt="img4">
</div>
<div class="carousel-item">
<img src="{{ asset('assets/img/Carousel/Designs/img5.png')}}" class="d-block w-100" alt="img5">
</div>
<div class="carousel-item">
<img src="{{ asset('assets/img/Carousel/Designs/img6.png')}}" class="d-block w-100" alt="img6">
</div>
</div>
<button class="carousel-control-prev" type="button" data-bs-target="#designsCarousel" data-bs-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="visually-hidden">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-bs-target="#designsCarousel" data-bs-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="visually-hidden">Next</span>
</button>
</div> #}
{# ------------------------------------------ Second Carousel ------------------------------------------ #}
{% endblock %}
{% block javascripts %}
<script>
// Carousel btn indicators active animation
let btnIndicators = document.querySelectorAll('.btn-indicator');
btnIndicators.forEach((btn) => {
btn.addEventListener('click', () => {
btnIndicators.forEach((btn) => {
btn.classList.remove('active');
});
btn.classList.add('active');
});
});
// Corousel control prev and next on click change active indicator
let carouselControlPrev = document.querySelector('.carousel-control-prev');
let carouselControlNext = document.querySelector('.carousel-control-next');
carouselControlPrev.addEventListener('click', () => {
let activeBtn = document.querySelector('.btn-indicator.active');
if (activeBtn) {
activeBtn.classList.remove('active');
if (activeBtn.previousElementSibling) {
activeBtn.previousElementSibling.classList.add('active');
} else {
btnIndicators[btnIndicators.length - 1].classList.add('active');
}
}
});
carouselControlNext.addEventListener('click', () => {
let activeBtn = document.querySelector('.btn-indicator.active');
if (activeBtn.classList.contains('active')) {
activeBtn.classList.remove('active');
if (activeBtn.nextElementSibling) {
activeBtn.nextElementSibling.classList.add('active');
} else {
btnIndicators[0].classList.add('active');
}
return;
}
});
</script>
{% endblock %}