/* Landing pública: fotos impresas y fotos imantadas.
 * Mantiene la misma base visual responsive de las landing SEO de Speedcopy. */
@import url("impresion-digital-landing.css?v=20260913");

.photos-hero-visual,
.photos-feature figure,
.photos-showcase figure {
    margin: 0;
}

.photos-hero-visual {
    overflow: hidden;
    border: 1px solid rgba(173, 85, 37, .18);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 38px rgba(56, 40, 28, .12);
}

.photos-hero-visual img,
.photos-feature img,
.photos-showcase img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.photos-hero-visual img { aspect-ratio: 4 / 3; }

.photos-hero-visual figcaption,
.photos-showcase figcaption {
    padding: 13px 17px;
    color: #5a514a;
    font-size: 14px;
    font-weight: 700;
}

.photos-feature {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 42px;
    align-items: center;
}

.photos-feature figure {
    overflow: hidden;
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(56, 40, 28, .11);
}

.photos-feature img { aspect-ratio: 4 / 3; }

.photos-showcase {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 22px;
}

.photos-showcase figure {
    overflow: hidden;
    border: 1px solid #e7ddd2;
    border-radius: 14px;
    background: #fff;
}

.photos-showcase img { aspect-ratio: 4 / 3; }

@media (max-width: 991px) {
    .photos-feature { grid-template-columns: 1fr; gap: 30px; }
}

@media (max-width: 767px) {
    .photos-showcase { grid-template-columns: 1fr; }
    .photos-hero-visual figcaption,
    .photos-showcase figcaption { padding: 12px 15px; }
}
