.spa2-front-catalogue,.spa2-front-session-page{--spa-red:#a91717;--spa-ink:#111;--spa-muted:#666;--spa-line:#e8e8e8;max-width:1420px;margin:0 auto}.spa2-front-section{margin:52px 0}.spa2-front-section>h2,.spa2-front-section>h3{font-size:clamp(28px,4vw,52px);line-height:1.05;margin:0 0 24px}.spa2-front-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.spa2-front-card{overflow:hidden;background:#fff;border:1px solid var(--spa-line);border-radius:0}.spa2-front-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.spa2-front-card-body{padding:22px}.spa2-front-kicker{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--spa-red);margin-bottom:8px}.spa2-front-card h3{font-size:25px;line-height:1.1;margin:0 0 10px}.spa2-front-text,.spa2-front-card p{color:var(--spa-muted);line-height:1.65}.spa2-front-price{font-size:24px;font-weight:800;margin:10px 0}.spa2-front-meta{font-size:13px!important;margin:5px 0!important}.spa2-front-badge{display:inline-block;background:#111;color:#fff;padding:5px 8px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.spa2-front-btn{display:inline-block;margin-top:10px;padding:11px 16px;background:#111;color:#fff!important;text-decoration:none!important;font-weight:700}.spa2-front-list{border-top:1px solid var(--spa-line)}.spa2-front-line{display:flex;justify-content:space-between;gap:20px;padding:18px 2px;border-bottom:1px solid var(--spa-line)}.spa2-front-line strong{display:block;font-size:17px}.spa2-front-line small{display:block;color:var(--spa-muted);margin-top:5px;line-height:1.5}.spa2-front-line b{white-space:nowrap;font-size:18px}.spa2-front-hero{padding:28px 0 12px}.spa2-front-hero h2{font-size:clamp(42px,7vw,90px);line-height:.95;margin:0 0 22px}.spa2-front-hero p{max-width:780px;font-size:18px;line-height:1.7;color:var(--spa-muted)}.spa2-front-card.is-ephemeral{outline:1px dashed #b91c1c;outline-offset:-5px}@media(max-width:1100px){.spa2-front-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.spa2-front-grid{grid-template-columns:1fr}.spa2-front-line{flex-direction:column}.spa2-front-section{margin:36px 0}}
