/* Śląskie WOPR – Nagłówek strony */
.swns,.swns *,.swns *::before,.swns *::after{box-sizing:border-box}
.swns{position:relative;display:block;margin:0 0 var(--ns-after);padding:0;font-family:var(--ns-font);color:var(--ns-txt);-webkit-font-smoothing:antialiased;clear:both}
.swns-box{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(115deg,var(--ns-from) 0%,var(--ns-from) 35%,var(--ns-to) 100%)}
/* lekka poświata z lewej u góry */
.swns-box::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 90% at 12% 0%,rgba(255,255,255,.16),transparent 70%);pointer-events:none}
.swns--dots .swns-box::after{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.13) 1.2px,transparent 1.6px);background-size:22px 22px;-webkit-mask-image:linear-gradient(90deg,#000 0,rgba(0,0,0,.55) 55%,transparent 100%);mask-image:linear-gradient(90deg,#000 0,rgba(0,0,0,.55) 55%,transparent 100%);pointer-events:none}

/* karta */
.swns--card{padding:var(--ns-m) var(--ns-m) 0}
.swns--card .swns-box{border-radius:var(--ns-r);box-shadow:0 22px 44px -30px rgba(20,50,90,.55)}

.swns-in{position:relative;z-index:2;max-width:var(--ns-max);margin:0 auto;padding:var(--ns-pt) 24px var(--ns-pb)}
.swns--wave .swns-in{padding-bottom:calc(var(--ns-pb) + 34px)}
.swns--center .swns-in{text-align:center}

/* okruszki */
.swns-crumbs{margin:0 0 18px}
.swns.swns .swns-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;padding:0;list-style:none;font-size:15px;font-weight:600;line-height:1.4}
.swns--center .swns-crumbs ol{justify-content:center}
.swns.swns .swns-crumbs li{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;color:var(--ns-txt2)}
.swns.swns .swns-crumbs li::before{content:none}
.swns.swns .swns-crumbs a{color:var(--ns-txt2)!important;text-decoration:none!important;box-shadow:none;transition:color .2s}
.swns.swns .swns-crumbs a:hover{color:var(--ns-txt)!important;text-decoration:underline!important;text-underline-offset:4px}
.swns-crumbs svg{width:13px;height:13px;flex:none;opacity:.7}
.swns.swns .swns-crumbs [aria-current]{color:var(--ns-accl)}
.swns-crumbs a:focus-visible{outline:2px solid var(--ns-accl);outline-offset:3px;border-radius:4px}

/* tytuł */
.swns.swns .swns-title{margin:0;padding:0;max-width:22ch;font-family:inherit;font-size:clamp(30px,4.6vw,var(--ns-fs));font-weight:800;line-height:1.08;letter-spacing:-.015em;color:var(--ns-txt);text-transform:none;text-wrap:balance;text-shadow:0 2px 24px rgba(10,30,60,.18)}
.swns--center .swns-title{margin-left:auto!important;margin-right:auto!important}
.swns-line{display:block;width:96px;height:5px;margin:22px 0 0;border-radius:5px;background:var(--ns-accl);transform-origin:left;animation:swns-line .8s .15s cubic-bezier(.2,.8,.2,1) both}
.swns--center .swns-line{margin-left:auto;margin-right:auto;transform-origin:center}
@keyframes swns-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.swns.swns .swns-sub{margin:20px 0 0;padding:0;max-width:640px;font-size:18px;font-weight:500;line-height:1.6;color:var(--ns-txt2)}
.swns--center .swns-sub{margin-left:auto;margin-right:auto}

/* ozdoba po prawej */
.swns-deco{position:absolute;z-index:1;top:0;right:0;height:100%;width:min(58%,820px);pointer-events:none}
.swns--center .swns-deco{opacity:.55}
.swns-deco--ribbons path{fill:none;stroke-linecap:round}
.swns-deco--ribbons .r1{stroke:url(#swns-gold);stroke-width:26}
.swns-deco--ribbons .r2{stroke:#9fd0f5;stroke-width:22;opacity:.55}
.swns-deco--ribbons .r3{stroke:#fff;stroke-width:30;opacity:.12}
.swns-deco--ribbons .r4{stroke:#fff;stroke-width:3;opacity:.35}
.swns-deco--ribbons path{stroke-dasharray:1400;stroke-dashoffset:1400;animation:swns-draw 1.6s cubic-bezier(.3,.7,.2,1) forwards}
.swns-deco--ribbons .r2{animation-delay:.12s}
.swns-deco--ribbons .r3{animation-delay:.24s}
.swns-deco--ribbons .r4{animation-delay:.36s}
@keyframes swns-draw{to{stroke-dashoffset:0}}
.swns-deco--rings circle{fill:none;stroke:#fff}
.swns-deco--rings .g1 > circle:first-child{opacity:.14}
.swns-deco--rings .g2 > circle:first-child{opacity:.1}
.swns-deco--rings .seg{stroke:var(--ns-accl);opacity:.35}

/* fala na dole */
.swns-wave{position:absolute;z-index:3;left:0;right:0;bottom:-1px;width:100%;height:60px;display:block}
.swns-wave .w1{fill:var(--ns-page)}
.swns-wave .w2{fill:var(--ns-page);opacity:.35}

/* ---------- tablet ---------- */
@media (max-width:900px){
	.swns-deco{width:75%;opacity:.55}
	.swns.swns .swns-sub{font-size:17px}
}
/* ---------- telefon ---------- */
@media (max-width:600px){
	.swns--card{padding:min(var(--ns-m),12px) min(var(--ns-m),12px) 0}
	.swns--card .swns-box{border-radius:min(var(--ns-r),22px)}
	.swns-in{padding:var(--ns-pm) 20px calc(var(--ns-pm) + 4px)}
	.swns--wave .swns-in{padding-bottom:calc(var(--ns-pm) + 30px)}
	.swns.swns .swns-title{font-size:var(--ns-fsm);max-width:none}
	.swns.swns .swns-crumbs ol{font-size:13.5px}
	.swns-crumbs{margin-bottom:12px}
	.swns-line{width:70px;height:4px;margin-top:16px}
	.swns.swns .swns-sub{margin-top:14px;font-size:15.5px}
	.swns-deco{width:100%;opacity:.35}
	.swns-wave{height:34px}
}
@media (prefers-reduced-motion:reduce){.swns-line,.swns-deco path{animation:none!important;stroke-dashoffset:0!important}}
@media print{.swns-deco,.swns-wave{display:none}.swns-box{background:none}.swns{color:#000}}

/* ---------- koło ratunkowe ---------- */
.swns-buoy{position:absolute;z-index:2;top:50%;right:max(5%,calc((100% - var(--ns-max)) / 2 + 30px));width:var(--ns-bs);height:var(--ns-bs);margin-top:calc(var(--ns-bs) / -2);pointer-events:none;filter:drop-shadow(0 18px 22px rgba(8,30,56,.35))}
.swns--wave .swns-buoy{margin-top:calc(var(--ns-bs) / -2 - 14px)}
.swns-buoy svg{display:block;width:100%;height:100%;overflow:visible}
.swns-buoy .ring{fill:none;stroke:#fff;stroke-width:38}
.swns-buoy .band{fill:none;stroke:var(--ns-buoy);stroke-width:38}
.swns-buoy .shade{fill:none;stroke:url(#swns-buoy-sh);stroke-width:38}
.swns-buoy .edge{fill:none;stroke:rgba(11,37,64,.16);stroke-width:1.2}
.swns-buoy .rope{fill:none;stroke:var(--ns-accl);stroke-width:4.2;stroke-linecap:round;stroke-dasharray:7 2.2}
.swns-buoy .knot{fill:var(--ns-accl);stroke:rgba(11,37,64,.25);stroke-width:1}
.swns-buoy .gloss{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;opacity:.55}
.swns--bob .swns-buoy svg{animation:swns-bob 6s ease-in-out infinite;transform-origin:50% 50%}
@keyframes swns-bob{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-9px) rotate(5deg)}}
/* wstęgi za kołem – spokojniejsze */
.swns--deco-buoy .swns-deco--ribbons :is(.r2,.r3,.r4){opacity:.3}
.swns--deco-buoy .swns-deco--ribbons .r1{stroke-width:18}
.swns--center .swns-buoy{opacity:.35}
@media (max-width:1100px){.swns-buoy{--ns-bs:min(var(--ns-bs),200px)}}
@media (max-width:900px) and (min-width:601px){.swns-buoy{right:-30px;opacity:.6}}
@media (max-width:600px){
	.swns-buoy{width:118px;height:118px;margin-top:0!important;top:-26px;right:-26px;opacity:1;filter:drop-shadow(0 8px 10px rgba(8,30,56,.3))}
	.swns--card .swns-buoy{top:-22px;right:-22px}
	:is(.swns--deco-buoy,.swns--deco-buoy_only) .swns-crumbs{padding-right:70px}
	:is(.swns--deco-buoy,.swns--deco-buoy_only) .swns-title{padding-right:44px!important}
	.swns--center .swns-buoy{opacity:1}
}
@media (prefers-reduced-motion:reduce){.swns-buoy svg{animation:none!important}}
