Casas prefabricadas Modularq

Diseños que hablan por sí solos

Descubre nuestras cuatro líneas de casas prefabricadas, cada una pensada para un estilo de vida distinto. Todos los proyectos son 100% personalizables.

Casas Glamping

El equilibrio perfecto entre naturaleza y confort. Nuestras casas Glamping están diseñadas para entornos campestres, ecoturísticos y retiros privados. Compactas, eficientes y con un diseño que se integra al paisaje.

Área: Desde 25 m²
Ambientes: 1–2 habitaciones
Ideal para: Ecoturismo y fincas
Cotizar Glamping
Casa Glamping Modularq

Casas Campestres

Amplios espacios, techos a dos aguas y materiales que evocan la calidez del campo. Las casas campestres de Modularq combinan funcionalidad familiar con una estética rústica contemporánea que se adapta a cualquier terreno.

Área: Desde 40 m²
Ambientes: 2–4 habitaciones
Ideal para: Familia y finca raíz
Cotizar Casa Campestre
Casa Campestre Modularq

Casas Mediterráneas

Líneas limpias, fachadas de alto impacto y espacios interiores generosos. Las casas mediterráneas de Modularq son nuestra línea premium de diseño moderno: perfectas para lotes urbanos y suburbanos que exigen elegancia y distinción.

Área: Desde 100 m²
Ambientes: 3–5 habitaciones
Ideal para: Lotes urbanos y suburbanos
Cotizar Casa Mediterránea
Casa Mediterránea Modularq

Casas tipo Evolution

Lo mejor de dos mundos: la sofisticación mediterránea con el alma campestre. Las casas tipo Evolution mezclan el 70% del carácter moderno mediterráneo con el 30% de la calidez campestre, creando proyectos únicos y de gran carácter.

Área: Desde 130 m²
Ambientes: 3–5 habitaciones
Estilo: 70% mediterránea / 30% campestre
Cotizar Casa Evolution
Casa tipo Evolution Modularq

¿Cuál es tu casa ideal?

Todos nuestros diseños son 100% personalizables. Cuéntanos tu idea y te hacemos una cotización sin compromiso.

// ============================================ // PORTAFOLIO: Lightbox // ============================================ (function () { const lightbox = document.getElementById('portfolioLightbox'); const lightboxImg = document.getElementById('lightboxImg'); const lightboxCaption = document.getElementById('lightboxCaption'); const closeBtn = lightbox.querySelector('.portfolio-lightbox__close'); const prevBtn = lightbox.querySelector('.portfolio-lightbox__prev'); const nextBtn = lightbox.querySelector('.portfolio-lightbox__next'); let currentImages = []; let currentIndex = 0; function openLightbox(category, index) { const items = document.querySelectorAll(`.portfolio-gallery__item[data-category="${category}"]`); currentImages = Array.from(items).map(item => ({ src: item.querySelector('img').src, alt: item.querySelector('img').alt, caption: item.querySelector('span') ? item.querySelector('span').textContent : '' })); currentIndex = index; showImage(currentIndex); lightbox.hidden = false; document.body.style.overflow = 'hidden'; closeBtn.focus(); } function closeLightbox() { lightbox.hidden = true; document.body.style.overflow = ''; } function showImage(idx) { const img = currentImages[idx]; lightboxImg.src = img.src; lightboxImg.alt = img.alt; lightboxCaption.textContent = img.caption; prevBtn.style.display = currentImages.length > 1 ? 'flex' : 'none'; nextBtn.style.display = currentImages.length > 1 ? 'flex' : 'none'; } function showPrev() { currentIndex = (currentIndex - 1 + currentImages.length) % currentImages.length; showImage(currentIndex); } function showNext() { currentIndex = (currentIndex + 1) % currentImages.length; showImage(currentIndex); } // Bind zoom buttons document.querySelectorAll('.portfolio-gallery__item').forEach(item => { item.querySelector('.portfolio-gallery__zoom').addEventListener('click', () => { openLightbox(item.dataset.category, parseInt(item.dataset.index, 10)); }); // Also allow clicking the image itself item.querySelector('img').addEventListener('click', () => { openLightbox(item.dataset.category, parseInt(item.dataset.index, 10)); }); }); closeBtn.addEventListener('click', closeLightbox); lightbox.querySelector('.portfolio-lightbox__backdrop').addEventListener('click', closeLightbox); prevBtn.addEventListener('click', showPrev); nextBtn.addEventListener('click', showNext); document.addEventListener('keydown', (e) => { if (lightbox.hidden) return; if (e.key === 'Escape') closeLightbox(); if (e.key === 'ArrowLeft') showPrev(); if (e.key === 'ArrowRight') showNext(); }); })();