﻿.rckik-gallery { --rckik-gallery-columns:3; --rckik-gallery-gap:16px; }
.rckik-gallery-grid { display:grid; grid-template-columns:repeat(var(--rckik-gallery-columns), minmax(0, 1fr)); gap:var(--rckik-gallery-gap); }
.rckik-gallery-masonry { column-count:var(--rckik-gallery-columns); column-gap:var(--rckik-gallery-gap); }
.rckik-gallery-masonry .rckik-gallery-item { display:block; break-inside:avoid; margin:0 0 var(--rckik-gallery-gap); }
.rckik-gallery-item { position:relative; width:100%; padding:0; overflow:hidden; background:#f8fafc; border:0; border-radius:12px; cursor:pointer; }
.rckik-gallery-grid .rckik-gallery-item { aspect-ratio:4 / 3; }
.rckik-gallery-item img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .22s ease, filter .22s ease; }
.rckik-gallery-masonry .rckik-gallery-item img { height:auto; object-fit:contain; }
.rckik-gallery-item:hover img, .rckik-gallery-item:focus-visible img { transform:scale(1.035); filter:saturate(1.04); }
.rckik-gallery-caption { position:absolute; inset:auto 0 0; padding:18px; color:#fff; background:linear-gradient(180deg, transparent, rgba(15,23,42,.72)); font-size:14px; text-align:left; }
.rckik-gallery-modal .modal-content { background:#05070b; border:0; border-radius:14px; overflow:hidden; }
.rckik-gallery-modal .modal-body { padding:0; }
.rckik-gallery-modal img { display:block; width:100%; max-height:82vh; object-fit:contain; background:#05070b; }
.rckik-gallery-modal-caption { padding:14px 18px; color:#fff; background:#05070b; }
.rckik-gallery-nav { position:absolute; top:50%; z-index:2; display:grid; place-items:center; width:48px; height:48px; padding:0; color:#fff; background:rgba(5,7,11,.58); border:1px solid rgba(255,255,255,.18); border-radius:999px; transform:translateY(-50%); transition:background .16s ease, border-color .16s ease, transform .16s ease; }
.rckik-gallery-nav:hover, .rckik-gallery-nav:focus-visible { color:#fff; background:rgba(227,6,19,.9); border-color:rgba(255,255,255,.35); transform:translateY(-50%) scale(1.04); }
.rckik-gallery-nav-prev { left:18px; }
.rckik-gallery-nav-next { right:18px; }
.rckik-gallery-nav svg { width:24px; height:24px; }
.rckik-gallery-archive { --rckik-gallery-archive-columns:3; display:grid; grid-template-columns:repeat(var(--rckik-gallery-archive-columns), minmax(0, 1fr)); gap:22px; }
.rckik-gallery-archive-cols-1 { --rckik-gallery-archive-columns:1; }
.rckik-gallery-archive-cols-2 { --rckik-gallery-archive-columns:2; }
.rckik-gallery-archive-cols-3 { --rckik-gallery-archive-columns:3; }
.rckik-gallery-archive-cols-4 { --rckik-gallery-archive-columns:4; }
.rckik-gallery-card { min-width:0; }
.rckik-gallery-card-placeholder { display:block; aspect-ratio:16 / 9; width:100%; background:linear-gradient(135deg,#fff7f7,#f8fafc); }
.rckik-gallery-detail { display:grid; gap:24px; }
.rckik-gallery-back { display:inline-flex; width:max-content; gap:8px; align-items:center; color:#e30613; text-decoration:none; font-weight:600; }
.rckik-gallery-back:hover, .rckik-gallery-back:focus-visible { color:#ba0711; outline:none; }
.rckik-gallery-detail-head { display:grid; gap:6px; }
.rckik-gallery-detail-head p { margin:0; color:#e30613; font-size:12px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.rckik-gallery-detail-head h2 { margin:0; color:#111827; font-size:34px; line-height:1.12; }
@media (max-width: 991.98px) { .rckik-gallery { --rckik-gallery-columns:2 !important; } }
@media (max-width: 991.98px) { .rckik-gallery-archive { --rckik-gallery-archive-columns:2 !important; } }
@media (max-width: 767.98px) { .rckik-gallery-nav { width:42px; height:42px; } .rckik-gallery-nav-prev { left:10px; } .rckik-gallery-nav-next { right:10px; } }
@media (max-width: 575.98px) { .rckik-gallery, .rckik-gallery-archive { --rckik-gallery-columns:1 !important; --rckik-gallery-archive-columns:1 !important; } .rckik-gallery-detail-head h2 { font-size:28px; } }

