/* Módulo «portada» del front: se carga solo si la página trae sus clases (App\Core\View\CssFront::MODULOS). */
.editorial-story { --story-tint: var(--historia-base-fondo, #e9f2f1); --story-accent: var(--historia-base-acento, #235d59); margin: 0; padding: clamp(1.5rem, 4vw, 3.4rem); border: 1px solid var(--color-borde); border-radius: calc(var(--radio, 10px) * 2.2); background: linear-gradient(125deg, var(--story-tint), var(--color-fondo) 72%); }
.editorial-story--warm { --story-tint: var(--historia-calida-fondo, #f6eee6); --story-accent: var(--historia-calida-acento, #8a4e2d); }
.editorial-story--sage { --story-tint: var(--historia-salvia-fondo, #edf3eb); --story-accent: var(--historia-salvia-acento, #43654a); }
.editorial-story--sky { --story-tint: var(--historia-cielo-fondo, #eaf2f8); --story-accent: var(--historia-cielo-acento, #315f7a); }
.editorial-story--sand { --story-tint: var(--historia-arena-fondo, #f4f0e7); --story-accent: var(--historia-arena-acento, #72603a); }
.editorial-story__top { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(180px, .75fr); align-items: end; gap: clamp(1rem, 4vw, 3rem); }
.editorial-story__eyebrow { display: block; margin: 0 0 .85rem; color: var(--story-accent); font-size: .76rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.editorial-story__lead { max-width: 65ch; margin: 0; color: var(--color-texto-suave); font-size: 1.05rem; line-height: 1.65; }
.editorial-story__aside { margin: 0; padding: 1.2rem 1.35rem; border-left: 3px solid var(--story-accent); color: var(--color-texto); font-weight: 600; line-height: 1.55; }
.editorial-story__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-top: 2rem; padding: 0; list-style: none; }
.editorial-story__links { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.6rem; }
.editorial-story--categoria { padding: clamp(1.4rem, 3vw, 2.4rem); }
@media (max-width: 680px) {
.editorial-story__top { grid-template-columns: 1fr; }
.editorial-story__aside { padding: .3rem 0 .3rem 1rem; }
.editorial-story__facts { grid-template-columns: 1fr; margin-top: 1.35rem; }
}
.landing-home { color: var(--editorial-texto, #172337); background: var(--color-fondo, #fff); }
.landing-home__hero-wrap { padding-top: clamp(4px, .7vw, 10px); }
.landing-home__hero { display: grid; grid-template-columns: 1fr 0.94fr; min-height: 470px; background: var(--editorial-hero-fondo, #edf2f4); overflow: hidden; border-radius: 16px; }
.landing-home__hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(34px, 5vw, 62px); }
.landing-home__eyebrow { display: block; margin-bottom: 18px; color: var(--editorial-etiqueta, #536b79); font-size: .78rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.landing-home__hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 26px; margin-top: 28px; }
.landing-home__button { display: inline-flex; justify-content: space-between; align-items: center; gap: 30px; min-height: 50px; padding: 12px 20px; color: var(--editorial-boton-texto, #fff); background: var(--editorial-boton-fondo, #123449); border-radius: var(--boton-radio, 7px); font-weight: 700; text-decoration: none; transition: background .18s ease, transform var(--boton-animacion-duracion, 220ms) ease, filter var(--boton-animacion-duracion, 220ms) ease; }
.landing-home__button:hover { background: var(--editorial-boton-hover, #205671); color: var(--editorial-boton-texto, #fff); transform: var(--boton-hover-transform, none); filter: var(--boton-hover-filter, none); }
.landing-home__text-link { color: var(--editorial-enlace, #17394b); font-weight: 700; text-decoration: none; border-bottom: 1px solid var(--editorial-acento, #829da8); padding: 5px 0; }
.landing-home__hero-note { margin-top: 34px; font-size: .8rem; color: var(--editorial-texto-suave, #5b7180); }
.landing-home__hero-visual { position: relative; display: block; min-height: 470px; overflow: hidden; background: var(--editorial-imagen-fondo, #e5e2dc); }
.landing-home__hero-caption { position: absolute; right: 24px; bottom: 24px; display: flex; flex-direction: column; gap: 2px; padding: 15px 20px; min-width: 205px; color: var(--editorial-texto, #213044); background: color-mix(in srgb, var(--color-flotante) 90%, transparent); backdrop-filter: blur(8px); border-radius: 6px; }
.landing-home__hero-cifras { display: grid; align-content: center; gap: 14px; padding: clamp(26px, 4vw, 54px); background: color-mix(in srgb, var(--color-primario) 9%, var(--editorial-hero-fondo, #edf2f4)); }
.landing-home__cifra { display: grid; gap: 4px; padding: 20px 24px; border: 1px solid var(--color-borde, #e4e9ec); border-radius: var(--radio, 14px); background: color-mix(in srgb, var(--color-flotante, #fff) 92%, transparent); }
.landing-home__cifra strong { color: var(--color-primario); font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.1; letter-spacing: -.02em; }
.landing-home__cifra span { color: var(--editorial-texto-suave, var(--color-texto-suave)); font-size: .92rem; }
.landing-home__assurance-wrap { padding-top: 18px; }
.landing-home__assurance { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--color-borde, #e4e9ec); border-radius: 18px; background: var(--editorial-seccion-fondo, #f7f9fa); overflow: hidden; }
.landing-home__assurance-item { display: flex; align-items: center; gap: 14px; min-width: 0; padding: 20px clamp(18px, 2.4vw, 30px); }
.landing-home__assurance-item + .landing-home__assurance-item { border-left: 1px solid var(--color-borde, #e4e9ec); }
.landing-home__assurance-icono { flex: 0 0 auto; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; color: var(--color-primario); background: color-mix(in srgb, var(--color-primario) 13%, var(--color-fondo, #fff)); }
.landing-home__section { padding-top: clamp(58px, 7vw, 104px); padding-bottom: clamp(60px, 7vw, 108px); }
.landing-home__section-heading { display: flex; justify-content: space-between; align-items: end; gap: 34px; margin-bottom: 34px; }
.landing-home__categorias .categoria-card { min-width: 0; }
.landing-home__banda-wrap { margin-top: clamp(28px, 4vw, 48px); }
.landing-home__banda { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.1rem 2rem; padding: clamp(1.4rem, 3vw, 2.2rem) clamp(1.4rem, 4vw, 3rem); border-radius: 16px; background: var(--editorial-banda-fondo, #e8edf1); color: var(--editorial-banda-texto, #152b3a); }
.landing-home__banda .landing-home__button { flex: 0 0 auto; }
.landing-home__section--productos { background: var(--editorial-seccion-fondo, #f5f7f7); }
.landing-home__productos .producto-card { min-width: 0; }
.landing-home__spotlight-wrap { margin-top: clamp(54px, 7vw, 100px); margin-bottom: clamp(54px, 7vw, 100px); }
.landing-home__spotlight { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: stretch; overflow: hidden; border-radius: 16px; background: var(--editorial-hero-fondo, #edf2f4); }
.landing-home__spotlight-visual { display: block; min-height: 390px; overflow: hidden; background: var(--editorial-imagen-fondo, #e5e2dc); }
.landing-home__spotlight-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(34px, 5vw, 74px); }
.landing-home__guide { padding-top: clamp(56px, 7vw, 94px); padding-bottom: clamp(58px, 7vw, 98px); background: var(--editorial-seccion-fondo, #f5f7f7); }
.landing-home__guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.landing-home__guide-grid article > span { margin-bottom: 1.3rem; color: var(--editorial-acento, #8da7b4); font-size: .76rem; font-weight: 800; letter-spacing: .1em; }
.landing-home__closing { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 64px; margin-bottom: 64px; padding: clamp(36px, 5vw, 68px); border-radius: 14px; background: var(--editorial-cierre-fondo, #15394c); }
.landing-home__closing .landing-home__eyebrow { color: var(--editorial-cierre-texto-suave, var(--editorial-cierre-texto, #a9c6d2)); }
.landing-home__button--light { flex: 0 0 auto; color: var(--editorial-cierre-fondo, #15394c); background: var(--editorial-cierre-texto, #fff); }
@media (prefers-reduced-motion: reduce) {
.landing-home__button, .landing-home__button:hover { transition-duration: 0ms; transform: none; filter: none; }
}
.landing-home__button--light:hover { color: var(--editorial-cierre-fondo, #15394c); background: color-mix(in srgb, var(--editorial-cierre-texto, #fff) 88%, var(--editorial-cierre-fondo, #15394c)); }
@media (max-width: 900px) {
.landing-home__hero { grid-template-columns: 1fr; }
.landing-home__hero-cifras { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0 30px 34px; background: transparent; }
.landing-home__hero-copy { padding: 42px 30px; }
.landing-home__hero-visual { min-height: 360px; max-height: 480px; }
.landing-home__assurance { grid-template-columns: 1fr; }
.landing-home__assurance-item { padding: 14px 18px; }
.landing-home__assurance-item + .landing-home__assurance-item { border-left: 0; border-top: 1px solid var(--color-borde, #e4e9ec); }
.landing-home__section-heading { display: block; }
.landing-home__spotlight { grid-template-columns: 1fr; }
.landing-home__spotlight-visual { min-height: 300px; max-height: 420px; }
.landing-home__guide-grid { grid-template-columns: 1fr; }
.landing-home__guide-grid article { min-height: 0; }
.landing-home__closing { display: block; }
}
@media (max-width: 640px) {
.landing-home__hero-cifras { grid-template-columns: 1fr; }
}
@media (max-width: 440px) {
.landing-home__hero-wrap { padding-inline: 12px; }
.landing-home__hero-visual { min-height: 310px; }
.landing-home__hero-note { margin-top: 32px; }
.landing-home__categorias { gap: 10px; }
}
.nosotros-editorial__hero { padding: clamp(1.7rem, 5vw, 4rem); border-radius: 20px; background: linear-gradient(135deg, var(--cms-hero-inicio, #edf3ef), var(--cms-hero-fin, #f7f4ec) 80%); }
.nosotros-editorial__eyebrow { display: block; margin-bottom: .8rem; color: var(--cms-acento, #42644d); font-size: .78rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.nosotros-editorial__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.4rem 0 2rem; }
.nosotros-editorial__grid article { padding: clamp(1.3rem, 2vw, 2rem); border: 1px solid var(--color-borde); border-radius: 14px; }
.nosotros-editorial__relato { max-width: 75ch; margin: 0 0 2rem; }
.nosotros-editorial__cierre { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.5rem 0; border-top: 1px solid var(--color-borde); }
@media (max-width: 720px) {
.nosotros-editorial__grid { grid-template-columns: 1fr; }
}
/* `{{catalogo:marcas}}`: lista simple de enlaces (el bloque que la usa decide columnas, tamaño y color). */
.landing-home__marcas { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.landing-home__marcas a { text-decoration: none; }
