/* Śląskie WOPR – Najnowsze galerie */
.swng,.swng *,.swng *::before,.swng *::after{box-sizing:border-box}
.swng{font-family:var(--ng-font);background:var(--ng-bg);padding:var(--ng-pad) 0;color:var(--ng-x);line-height:1.5;-webkit-font-smoothing:antialiased}
.swng-in{max-width:var(--ng-max);margin:0 auto;padding:0 var(--ng-px)}
.swng svg.swng-ico{width:15px;height:15px;flex:none;display:inline-block;vertical-align:-2px}
.swng a{text-decoration:none!important;box-shadow:none}
.swng a:focus-visible{outline:3px solid var(--ng-a);outline-offset:3px}

/* ---------- nagłówek sekcji (jak w Aktualnościach) ---------- */
.swng-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 30px;flex-wrap:wrap;margin:0 0 calc(var(--ng-gap) + 14px);padding-bottom:18px;border-bottom:1px solid var(--ng-line);position:relative}
.swng-head::after{content:"";position:absolute;left:0;bottom:-2px;width:70px;height:3px;border-radius:3px;background:var(--ng-a)}
.swng.swng .swng-eye{margin:0 0 6px;padding:0;color:var(--ng-a);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.swng.swng .swng-h{margin:0;padding:0;font-family:inherit;font-size:clamp(26px,3vw,38px);font-weight:800;line-height:1.1;letter-spacing:-.01em;color:var(--ng-t);text-transform:none}
.swng.swng .swng-lead{margin:10px 0 0;padding:0;max-width:640px;font-size:16px;line-height:1.55;color:var(--ng-x)}
.swng.swng .swng-all{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border:2px solid var(--ng-p);border-radius:999px;color:var(--ng-p);font-size:14px;font-weight:700;line-height:1.2;transition:background .2s,color .2s}
.swng.swng .swng-all:hover{background:var(--ng-p);color:#fff}
.swng-all .swng-ico{transition:transform .25s}
.swng-all:hover .swng-ico--arrow{transform:translateX(3px)}

/* ---------- siatka ---------- */
.swng-grid{display:grid;gap:var(--ng-gap);grid-template-columns:repeat(var(--ng-cols),minmax(0,1fr))}
/* mozaika do 4 galerii: duża z lewej, pozostałe jedna pod drugą z prawej */
.swng-grid--side{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr)}
.swng-grid--side > .swng-item--big{grid-row:span 3}
.swng-grid--side.swng-grid--n2 > .swng-item--big{grid-row:auto}
.swng-grid--side.swng-grid--n3 > .swng-item--big{grid-row:span 2}
/* mozaika 5+ galerii: duża 2×2 i po dwie małe obok */
.swng-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.swng-grid--four > .swng-item--big{grid-column:span 2;grid-row:span 2}

/* ---------- kafelek ---------- */
.swng-item{position:relative;display:flex;flex-direction:column;min-width:0;border-radius:var(--ng-r);color:inherit;isolation:isolate}
.swng-media{position:relative;display:block;overflow:hidden;border-radius:var(--ng-r);aspect-ratio:var(--ng-ratio);background:var(--ng-soft);line-height:0;flex:1 1 auto}
.swng-item--big .swng-media{aspect-ratio:auto;min-height:100%}
.swng--txt-below .swng-item--big .swng-media{min-height:0}
.swng.swng .swng-media img.swng-photo,.swng.swng .swng-media > img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;margin:0;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.swng-item:hover .swng-media img{transform:scale(1.06)}
.swng-noimg{position:absolute!important;inset:0;display:grid!important;place-items:center;background:radial-gradient(circle at 30% 20%,#fff 0,var(--ng-soft) 75%)}
.swng.swng .swng-noimg img{position:static;width:34%;height:auto;max-height:60%;object-fit:contain;opacity:.85;transform:none!important}

/* plakietki na zdjęciu */
.swng-badges{position:absolute;z-index:2;top:12px;left:12px;right:12px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;line-height:1.2;pointer-events:none}
.swng-tag{display:inline-block;max-width:70%;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ng-p);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 14px -6px rgba(0,0,0,.35)}
.swng-cnt{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:rgba(10,22,34,.55);color:#fff;font-size:12.5px;font-weight:700;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.swng-cnt .swng-ico{width:14px;height:14px}

/* podpis */
.swng-cap{display:flex;flex-direction:column;gap:8px;min-width:0}
.swng-date{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;line-height:1.3}
.swng.swng .swng-t{display:block;margin:0;font-size:var(--ng-ts);font-weight:700;line-height:1.28;letter-spacing:-.005em}
.swng-t > span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.swng.swng .swng-item--big .swng-t{font-size:clamp(20px,2.2vw,var(--ng-tb));font-weight:800;line-height:1.18}
.swng-open{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700}
.swng-open .swng-ico{transition:transform .25s}
.swng-item:hover .swng-open .swng-ico{transform:translateX(4px)}

/* tytuł NA zdjęciu */
.swng--txt-over .swng-cap{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:60px 20px 18px;color:#fff;border-radius:0 0 var(--ng-r) var(--ng-r);background:linear-gradient(180deg,transparent 0,var(--ng-sh2) 40%,var(--ng-sh) 100%);pointer-events:none}
.swng--txt-over .swng-item--big .swng-cap{padding:110px 30px 28px;gap:10px}
.swng--txt-over .swng-date{color:rgba(255,255,255,.88)}
.swng--txt-over .swng-t{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.25)}
.swng--txt-over .swng-open{color:#fff;max-height:0;opacity:0;margin-top:-8px;overflow:hidden;transition:max-height .35s,opacity .3s,margin .35s}
.swng--txt-over .swng-item:hover .swng-open,.swng--txt-over .swng-item:focus-visible .swng-open{max-height:24px;opacity:1;margin-top:0}
.swng--txt-over .swng-item--big .swng-open{max-height:24px;opacity:1;margin-top:0}
/* złota kreska nad tytułem przy dużej galerii */
.swng--txt-over .swng-item--big .swng-date::before{content:"";width:28px;height:3px;border-radius:3px;background:var(--ng-a);margin-right:6px}
.swng--txt-over .swng-item--big .swng-date .swng-ico{display:none}
/* delikatna ramka po najechaniu */
.swng-item::after{content:"";position:absolute;inset:0;z-index:3;border-radius:var(--ng-r);box-shadow:inset 0 0 0 0 var(--ng-a);transition:box-shadow .3s;pointer-events:none}
.swng--txt-over .swng-item:hover::after{box-shadow:inset 0 0 0 3px var(--ng-a)}
.swng-item{transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.swng-item:hover{transform:translateY(-3px)}
.swng--txt-over .swng-item{box-shadow:0 14px 30px -22px rgba(13,34,54,.6)}

/* tytuł POD zdjęciem */
.swng--txt-below .swng-cap{padding:14px 4px 4px;gap:6px}
.swng--txt-below .swng-date{color:var(--ng-x)}
.swng--txt-below .swng-date .swng-ico{color:var(--ng-p);opacity:.85}
.swng--txt-below .swng-t{color:var(--ng-t)}
.swng--txt-below .swng-t > span{background:linear-gradient(var(--ng-a),var(--ng-a)) left 100%/0 2px no-repeat;transition:background-size .45s cubic-bezier(.2,.8,.2,1),color .25s}
.swng--txt-below .swng-item:hover .swng-t > span{background-size:100% 2px;color:var(--ng-p)}
.swng--txt-below .swng-open{color:var(--ng-p)}
.swng--txt-below .swng-item--big .swng-media{aspect-ratio:auto}

/* ---------- przycisk na dole ---------- */
.swng-foot{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:calc(var(--ng-gap) + 22px);text-align:center}
.swng.swng .swng-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 30px;border-radius:999px;background:var(--ng-p);color:#fff;font-size:16px;font-weight:700;line-height:1.2;letter-spacing:.01em;box-shadow:0 14px 28px -14px var(--ng-p);transition:transform .25s,box-shadow .25s,background .25s}
.swng.swng .swng-btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px -14px var(--ng-p);background:color-mix(in srgb,var(--ng-p) 86%,#000)}
.swng-btn .swng-ico{width:18px;height:18px}
.swng-btn .swng-ico--arrow{transition:transform .25s}
.swng-btn:hover .swng-ico--arrow{transform:translateX(4px)}
.swng.swng .swng-stat{margin:0;padding:0;font-size:13.5px;font-weight:500;color:var(--ng-x)}
.swng-empty{padding:24px;border:2px dashed var(--ng-line);border-radius:14px;text-align:center}

/* ---------- laptop / tablet ---------- */
@media (max-width:1100px){
	.swng-grid{grid-template-columns:repeat(min(var(--ng-cols),3),minmax(0,1fr))}
	.swng-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
	.swng-grid--side{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
}
@media (max-width:900px){
	.swng-grid,.swng-grid--four,.swng-grid--side{grid-template-columns:repeat(2,minmax(0,1fr))}
	.swng-grid > .swng-item--big{grid-column:1 / -1;grid-row:auto!important}
	.swng.swng .swng-item--big .swng-media{aspect-ratio:16/10;min-height:0;flex:none}
	/* nieparzysta liczba małych – ostatnia na całą szerokość, bez dziury */
	.swng-grid--four > .swng-item:last-child:nth-child(even),
	.swng-grid--side > .swng-item:last-child:nth-child(even),
	.swng-grid:not(.swng-grid--four):not(.swng-grid--side) > .swng-item:last-child:nth-child(odd){grid-column:1 / -1}
	.swng-grid--four > .swng-item:last-child:nth-child(even) .swng-media,
	.swng-grid--side > .swng-item:last-child:nth-child(even) .swng-media,
	.swng-grid:not(.swng-grid--four):not(.swng-grid--side) > .swng-item:last-child:nth-child(odd) .swng-media{aspect-ratio:2/1}
}
/* ---------- telefon ---------- */
@media (max-width:600px){
	.swng-head{align-items:flex-start}
	.swng.swng .swng-lead{font-size:15px}
	.swng-grid{gap:12px}
	.swng-grid:not(.swng-grid--four):not(.swng-grid--side){grid-template-columns:1fr}
	.swng-grid:not(.swng-grid--four):not(.swng-grid--side) > .swng-item:last-child{grid-column:auto}
	.swng-item:not(.swng-item--big) .swng-tag{display:none}
	.swng-grid--four .swng-item:not(.swng-item--big) .swng-media,.swng-grid--side .swng-item:not(.swng-item--big) .swng-media{aspect-ratio:1/1}
	.swng-grid--four > .swng-item:last-child:nth-child(even) .swng-media,.swng-grid--side > .swng-item:last-child:nth-child(even) .swng-media{aspect-ratio:2/1}
	.swng--txt-over .swng-cap{padding:44px 12px 12px;gap:5px}
	.swng--txt-over .swng-item--big .swng-cap{padding:70px 18px 18px}
	.swng.swng .swng-item:not(.swng-item--big) .swng-t{font-size:14.5px;line-height:1.25}
	.swng-item:not(.swng-item--big) .swng-date{font-size:11.5px}
	.swng-item:not(.swng-item--big) .swng-date .swng-ico{display:none}
	.swng--txt-over .swng-item:not(.swng-item--big) .swng-open{display:none}
	.swng-badges{top:9px;left:9px;right:9px}
	.swng-cnt{padding:4px 9px;font-size:11.5px}
	.swng.swng .swng--txt-over .swng-item--big .swng-media,.swng.swng--txt-over .swng-item--big .swng-media{aspect-ratio:1/1}
	.swng.swng .swng-btn{width:100%;justify-content:center;padding:15px 20px;font-size:15px}
}
@media (hover:none){.swng-item:hover{transform:none}}
@media (prefers-reduced-motion:reduce){.swng *,.swng-item{transition:none!important}}
