/* Static catalogue layer — keeps the original Jimis Store visual language. */
@font-face {
    font-family: 'Cooper Black';
    src: url('../assets/fonts/CooperBlackStd.woff2') format('woff2'),
         url('../assets/fonts/CooperBlackStd.woff') format('woff');
    font-display: swap;
}

body { background: #fffaf8; }

.catalogue-header-actions { display:flex; align-items:center; gap:8px; }
.catalogue-header-actions a { color:#2d2a2a; width:42px; height:42px; display:flex; align-items:center; justify-content:center; border-radius:50%; text-decoration:none; transition:all .3s ease; }
.catalogue-header-actions a:hover { background:#ffb7c5; color:#ff6b8f; transform:translateY(-1px); }

.catalogue-hero { padding: 5.5rem 0 4rem; position:relative; overflow:hidden; }
.catalogue-hero::before { content:""; position:absolute; width:420px; height:420px; border-radius:50%; background:rgba(255,183,197,.16); top:-180px; right:-120px; }
.catalogue-hero .container { position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center; }
.catalogue-kicker { font-family:'Montserrat',sans-serif; text-transform:uppercase; letter-spacing:3px; font-size:.78rem; color:#ff6b8f; font-weight:700; margin-bottom:1rem; }
.catalogue-title { font-family:'Cooper Black','Impact','Arial Black',sans-serif; font-size:clamp(2.6rem,5vw,4.7rem); line-height:1.03; color:#2d2a2a; margin:0 0 1.2rem; }
.catalogue-title .gradient-text { background:linear-gradient(135deg,#ff6b8f,#ffb7c5); -webkit-background-clip:text; background-clip:text; color:transparent; }
.catalogue-subtitle { max-width:620px; color:#666; font-size:1.05rem; line-height:1.8; margin-bottom:1.8rem; }
.catalogue-note { display:inline-flex; align-items:center; gap:9px; font-family:'Montserrat',sans-serif; font-size:.85rem; color:#777; }
.catalogue-note i { color:#ff6b8f; }
.catalogue-hero-art { min-height:360px; border-radius:28px; background:linear-gradient(145deg,#ffd1dc,#fff0f3); display:flex; align-items:center; justify-content:center; position:relative; box-shadow:0 18px 50px rgba(255,107,143,.13); overflow:hidden; }
.catalogue-hero-art::before,.catalogue-hero-art::after { content:""; position:absolute; border:1px solid rgba(255,107,143,.28); border-radius:50%; }
.catalogue-hero-art::before { width:290px; height:290px; }
.catalogue-hero-art::after { width:190px; height:190px; }
.catalogue-gem { position:relative; z-index:1; font-size:7rem; color:#ff6b8f; filter:drop-shadow(0 12px 20px rgba(255,107,143,.25)); animation: catalogueFloat 3s ease-in-out infinite; }
@keyframes catalogueFloat { 0%,100%{transform:translateY(0) rotate(-4deg)} 50%{transform:translateY(-12px) rotate(4deg)} }

.catalogue-section-intro { text-align:center; max-width:760px; margin:0 auto 2.2rem; }
.catalogue-section-intro p { color:#777; line-height:1.8; }
.catalogue-filters { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-bottom:2.4rem; }
.catalogue-filter { border:1px solid #f0c4cf; background:#fff; color:#555; border-radius:999px; padding:.65rem 1rem; font-family:'Montserrat',sans-serif; font-size:.85rem; font-weight:600; cursor:pointer; transition:.25s ease; }
.catalogue-filter:hover,.catalogue-filter.active { background:#ffb7c5; border-color:#ffb7c5; color:#2d2a2a; transform:translateY(-1px); }
.catalogue-sort { display:flex; justify-content:flex-end; margin-bottom:1.2rem; }
.catalogue-sort select { border:1px solid #eee; border-radius:10px; padding:.65rem .8rem; background:#fff; color:#555; font-family:'Montserrat',sans-serif; }

.catalogue-card .product-info { padding-bottom:1.2rem; }
.catalogue-card .product-description { color:#777; font-size:.86rem; line-height:1.6; margin:.45rem 0 .7rem; }
.catalogue-card .product-price { margin-bottom:0; }
.catalogue-card .catalogue-card-footer { margin-top:.8rem; padding-top:.8rem; border-top:1px solid #f4e4e8; display:flex; justify-content:space-between; gap:10px; align-items:center; }
.catalogue-ref { font-family:'Montserrat',sans-serif; font-size:.72rem; color:#999; letter-spacing:.8px; }
.catalogue-availability { font-size:.72rem; color:#6c8a72; font-family:'Montserrat',sans-serif; }

.catalogue-info-strip { background:#fff0f3; padding:4rem 0; margin-top:2rem; }
.catalogue-info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }
.catalogue-info-card { background:#fff; border-radius:18px; padding:1.6rem; text-align:center; box-shadow:0 8px 25px rgba(45,42,42,.05); }
.catalogue-info-card i { color:#ff6b8f; font-size:1.5rem; margin-bottom:.8rem; }
.catalogue-info-card h3 { font-family:'Alice','Georgia',serif; margin:.2rem 0 .5rem; color:#2d2a2a; }
.catalogue-info-card p { color:#777; line-height:1.65; font-size:.9rem; margin:0; }

.catalogue-page-title { padding:4rem 0 2rem; text-align:center; }
.catalogue-page-title h1 { font-family:'Cooper Black','Impact','Arial Black',sans-serif; color:#2d2a2a; margin-bottom:.7rem; }
.catalogue-page-title p { color:#777; max-width:650px; margin:0 auto; line-height:1.7; }

.static-content { padding:3rem 0 5rem; }
.static-content .content-card { background:#fff; border-radius:20px; padding:2rem; box-shadow:0 8px 30px rgba(45,42,42,.05); margin-bottom:1.3rem; }
.static-content h2 { font-family:'Alice','Georgia',serif; color:#2d2a2a; margin-top:0; }
.static-content p,.static-content li { color:#666; line-height:1.8; }
.static-content ul { padding-left:1.2rem; }

.catalogue-empty { text-align:center; padding:4rem 1rem; color:#777; }
.catalogue-empty i { font-size:2.5rem; color:#ffb7c5; margin-bottom:1rem; }

@media (max-width: 768px) {
    .catalogue-hero { padding:3.5rem 0 2.5rem; }
    .catalogue-hero .container { grid-template-columns:1fr; gap:2rem; }
    .catalogue-hero-art { min-height:260px; }
    .catalogue-gem { font-size:5.5rem; }
    .catalogue-info-grid { grid-template-columns:1fr; }
    .catalogue-sort { justify-content:center; }
}
