/* =========================================================
   Deadlockownia - naglowek i stopka
   ========================================================= */

:root {
	--dl-zloty: #eebb60;
	--dl-zloty2: #c4963b;
	--dl-zloty-hi: #ffd07a;
	--dl-tlo0: #0a0a0c;
	--dl-tlo1: #0f0f12;
	--dl-tlo2: #16161a;
	--dl-txt: #f0f0f5;
	--dl-muted: #a8a8b3;
	--dl-h: 80px;
	--dl-h-mob: 70px;
}

/* ---------------------------------------------------------
   PODSTAWY STRONY
   Wczesniej te wartosci przychodzily z "kitu" Elementora, ktory
   ladowal sie na kazdej stronie tylko dlatego, ze HFE renderowalo
   naglowek jako szablon Elementora. Po przejsciu na wlasny naglowek
   Elementor laduje sie juz tylko na stronach nim zbudowanych, wiec
   baze trzyma motyw.
   --------------------------------------------------------- */
/* Sekcje na pelna szerokosc uzywaja 100vw, co potrafi wywolac poziomy pasek.
   Wczesniej gaszono to przez body{overflow-x:hidden}, ale to zamienia BODY
   w kontener przewijania (overflow: hidden auto) i psuje m.in. window.scrollY
   oraz animacje odpalane przy wejsciu elementu w kadr.
   Zamiast tego: html chowa nadmiar w poziomie, a body dostaje "clip",
   ktore przycina bez tworzenia kontenera przewijania. */
html { overflow-x: hidden; }
body { overflow-x: clip !important; }

body {
	background-color: var(--dl-tlo0);
	color: #cdcdcd;
	padding-top: var(--dl-h);
}
body h1, body h2, body h3, body h4, body h5, body h6 { color: #fff; }

/* ---------------------------------------------------------
   TLO STRONY (2026-09-29)
   Karol: "tlo jest dosc sztywne, plaskie... chce nadac charakteru, ale nie
   przesadzac". Trzy warstwy na stalym #0a0a0c, kazda ledwo widoczna:
   1) poswiaty w kolorach dwoch patronow z gry - bursztynowa Amber Hand
      z lewego gornego rogu i szafirowa Sapphire Flame z prawego dolnego,
      plus winieta przyciemniajaca brzegi,
   2) ziarno filmowe (szum SVG, ok. 3%) - zabiera "plastikowosc" koloru,
   3) wzor art deco (romby z rombem w srodku, klimat gry) - widoczny przy
      brzegach ekranu, pod tekstem na srodku prawie znika (maska).
   Warstwy sa przypiete do okna (position: fixed) i leza pod trescia
   (z-index -1). Karty, hero i stopka maja wlasne, nieprzezroczyste tla,
   wiec czytelnosc sie nie zmienia.
   --------------------------------------------------------- */
body::before,
body::after {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
}
body::before {
	background:
		radial-gradient(55% 50% at 0% 0%, rgba(238, 150, 60, .14), transparent 72%),
		radial-gradient(55% 50% at 100% 100%, rgba(70, 110, 255, .12), transparent 72%),
		radial-gradient(130% 90% at 50% 45%, transparent 55%, rgba(0, 0, 0, .5) 100%),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url%28%23n%29'/%3E%3C/svg%3E");
}
body::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23eebb60' stroke-width='1'%3E%3Cpath d='M36 0L72 36L36 72L0 36Z'/%3E%3Cpath d='M36 10L62 36L36 62L10 36Z' stroke-opacity='.45'/%3E%3C/g%3E%3Cpath d='M36 32l4 4-4 4-4-4z' fill='%23eebb60'/%3E%3C/svg%3E");
	background-size: 72px 72px;
	opacity: .1;
	-webkit-mask-image: radial-gradient(80% 70% at 50% 50%, transparent 30%, #000 100%);
	mask-image: radial-gradient(80% 70% at 50% 50%, transparent 30%, #000 100%);
}

.skip-link.screen-reader-text {
	position: absolute; left: -9999px; top: 0; z-index: 100000;
	background: var(--dl-zloty); color: #0a0a0c; padding: 10px 18px;
	font-family: 'Rajdhani', system-ui, sans-serif; font-weight: 700;
}
.skip-link.screen-reader-text:focus { left: 8px; top: 8px; }

/* --- BAZA NAGLOWKA --- */
.dl-header-container {
	position: fixed; top: 0; left: 0; width: 100%; height: var(--dl-h);
	background: linear-gradient(180deg, rgba(15,15,18,.95) 0%, rgba(22,22,26,.85) 100%);
	backdrop-filter: blur(15px);
	border-bottom: 1px solid rgba(238,187,96,.3);
	box-shadow: 0 4px 30px rgba(0,0,0,.7), 0 1px 10px rgba(238,187,96,.05);
	z-index: 9999; display: flex; align-items: center; justify-content: center;
}
.dl-header-inner {
	width: 100%; max-width: 1340px; padding: 0 30px; gap: 30px;
	display: flex; justify-content: space-between; align-items: center;
}

/* --- LOGO --- */
.dl-logo { display: flex; align-items: center; gap: 12px; text-decoration: none; transition: transform .3s ease; }
.dl-logo img { height: 45px; width: auto; filter: drop-shadow(0 0 6px rgba(238,187,96,.4)); transition: filter .3s ease; }
.dl-logo-text {
	font-family: 'Rajdhani', system-ui, sans-serif; font-size: 23px; font-weight: 800;
	color: var(--dl-txt); text-transform: uppercase; letter-spacing: 1.5px;
	text-shadow: 0 2px 4px rgba(0,0,0,.8); white-space: nowrap;
}
.dl-logo:hover { transform: scale(1.02); }
.dl-logo:hover img { filter: drop-shadow(0 0 12px rgba(238,187,96,.8)); }

/* --- MENU --- */
/* align-items: center wyrownuje zwykle linki z rozwijanymi guzikami - guzik jest
   wyzszy o strzalke, wiec bez tego tekst siedzi w innej linii. */
.dl-nav ul { display: flex; align-items: center; gap: 24px; list-style: none; margin: 0; padding: 0; }
.dl-nav li { display: flex; align-items: center; }
.dl-nav a {
	font-family: 'Rajdhani', system-ui, sans-serif; font-size: 16px; font-weight: 600;
	color: var(--dl-muted); text-transform: uppercase; text-decoration: none;
	letter-spacing: 1px; position: relative; padding: 8px 0; transition: color .3s ease;
	white-space: nowrap;
}
.dl-nav a::before, .dl-nav a::after {
	position: absolute; opacity: 0; color: var(--dl-zloty);
	transition: .3s cubic-bezier(.175,.885,.32,1.275);
}
.dl-nav a::before { content: '['; left: -15px; transform: translateX(10px); }
.dl-nav a::after { content: ']'; right: -15px; transform: translateX(-10px); }
.dl-nav a:hover { color: #fff; text-shadow: 0 0 8px rgba(255,255,255,.3); }
.dl-nav a:hover::before, .dl-nav a:hover::after { opacity: 1; transform: translateX(0); }

/* pozycja wyrozniona w menu - pelny zloty guzik (nadpisana nizej na spokojniejsza) */
.dl-nav .dl-nav-wyroz a {
	color: #0a0a0c; background: linear-gradient(135deg, var(--dl-zloty), var(--dl-zloty2));
	padding: 7px 18px;
	clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
	box-shadow: 0 4px 16px rgba(238,187,96,.18); transition: all .25s ease;
}
.dl-nav .dl-nav-wyroz a::before, .dl-nav .dl-nav-wyroz a::after { content: none !important; }
.dl-nav .dl-nav-wyroz a:hover {
	color: #0a0a0c; background: linear-gradient(135deg, var(--dl-zloty-hi), #d8a845);
	box-shadow: 0 0 20px rgba(238,187,96,.5); transform: translateY(-1px);
}

/* --- AKCJE PO PRAWEJ: szukaj + Discord --- */
.dl-header-akcje { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }

/* Guzik Discorda w kolorach Discorda, z logo - tak jak na calej stronie
   ("fioletowy = Discord"). Zloto zostaje akcentem strony, nie Discorda. */
.dl-header-container .dl-cta-btn {
	display: inline-flex; align-items: center; gap: 9px;
	font-family: 'Rajdhani', system-ui, sans-serif; font-weight: 700; text-transform: uppercase;
	font-size: 15px; letter-spacing: 1.4px; color: #fff; white-space: nowrap;
	background: #5865f2;
	padding: 10px 20px; text-decoration: none; border: none;
	clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
	transition: background .2s, transform .2s;
}
.dl-header-container .dl-cta-btn svg { width: 20px; height: 20px; flex: 0 0 auto; }
.dl-header-container .dl-cta-btn:hover { background: #4752c4; color: #fff; transform: translateY(-1px); }

/* --- SZUKAJ: guzik w naglowku --- */
.dl-header-container .dl-szukaj-btn,
.dl-header-container .dl-szukaj-btn:hover,
.dl-header-container .dl-szukaj-btn:focus,
.dl-header-container .dl-szukaj-btn:active {
	/* hello-elementor maluje kazdy <button> na rozowo - gasimy wszystkie stany */
	display: inline-flex; align-items: center; gap: 10px;
	height: 40px; padding: 0 10px 0 13px;
	font-family: 'Rajdhani', system-ui, sans-serif; font-size: 14.5px; font-weight: 600;
	letter-spacing: .4px; text-transform: none;
	color: var(--dl-muted) !important;
	background: rgba(255,255,255,.04) !important;
	border: 1px solid rgba(255,255,255,.12) !important;
	border-radius: 0; box-shadow: none !important; cursor: pointer;
	transition: border-color .2s, color .2s;
}
.dl-header-container .dl-szukaj-btn:hover,
.dl-header-container .dl-szukaj-btn[aria-expanded="true"] { color: #fff !important; border-color: rgba(238,187,96,.5) !important; }
.dl-header-container .dl-szukaj-btn:focus-visible { outline: 1px solid var(--dl-zloty); outline-offset: 3px; }
.dl-szukaj-btn svg { width: 18px; height: 18px; flex: 0 0 auto; color: var(--dl-zloty); }
.dl-szukaj-btn-tekst { min-width: 64px; text-align: left; }
.dl-szukaj-btn kbd, .dl-szukaj-stopka kbd {
	font-family: 'Rajdhani', system-ui, sans-serif; font-size: 11.5px; font-weight: 700;
	letter-spacing: .5px; color: #8a8a96; background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.12); border-radius: 3px; padding: 1px 6px; box-shadow: none;
}

/* --- SZUKAJ: okno --- */
.dl-szukaj { position: fixed; inset: 0; z-index: 10000; }
.dl-szukaj[hidden] { display: none; }
.dl-szukaj-tlo { position: absolute; inset: 0; background: rgba(5,5,7,.72); backdrop-filter: blur(3px); }
.dl-szukaj-okno {
	position: relative; width: min(640px, calc(100vw - 32px)); margin: 96px auto 0;
	display: flex; flex-direction: column; max-height: calc(100vh - 130px);
	font-family: 'Rajdhani', system-ui, sans-serif;
	background: linear-gradient(180deg, #16161c, #0e0e12);
	border: 1px solid rgba(238,187,96,.3);
	box-shadow: 0 30px 80px rgba(0,0,0,.7);
	clip-path: polygon(14px 0, 100% 0, 100% calc(100% - 14px), calc(100% - 14px) 100%, 0 100%, 0 14px);
	animation: dl-menu-in .18s ease;
}
.dl-szukaj-pole { display: flex; align-items: center; gap: 12px; padding: 0 14px 0 18px; border-bottom: 1px solid rgba(255,255,255,.08); margin: 0; }
.dl-szukaj-pole > svg { width: 20px; height: 20px; flex: 0 0 auto; color: var(--dl-zloty); }
.dl-szukaj-pole input[type="search"] {
	flex: 1; min-width: 0; height: 60px; padding: 0; margin: 0;
	font-family: inherit; font-size: 18px; font-weight: 600; color: #fff;
	background: transparent !important; border: 0 !important; outline: none !important; box-shadow: none !important;
	-webkit-appearance: none; appearance: none;
}
.dl-szukaj-pole input::placeholder { color: #6f6f7a; font-weight: 500; }
.dl-szukaj-pole input::-webkit-search-cancel-button { display: none; }
.dl-szukaj .dl-szukaj-zamknij,
.dl-szukaj .dl-szukaj-zamknij:hover,
.dl-szukaj .dl-szukaj-zamknij:focus {
	flex: 0 0 auto; padding: 3px 8px; font-family: inherit; font-size: 12px; font-weight: 700; letter-spacing: .5px;
	color: #8a8a96 !important; background: rgba(255,255,255,.06) !important;
	border: 1px solid rgba(255,255,255,.12) !important; border-radius: 3px; box-shadow: none !important; cursor: pointer;
}
.dl-szukaj-wyniki { overflow-y: auto; padding: 8px; overscroll-behavior: contain; }
.dl-szukaj-grupa { padding: 12px 12px 6px; font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; color: var(--dl-zloty); }
.dl-szukaj-poz {
	display: flex; align-items: center; gap: 13px; padding: 8px 12px;
	text-decoration: none !important; border-left: 2px solid transparent;
}
.dl-szukaj-poz.aktywny { background: rgba(238,187,96,.09); border-left-color: var(--dl-zloty); }
.dl-szukaj-poz img { width: 36px; height: 36px; flex: 0 0 auto; object-fit: cover; object-position: center 15%; background: #0d0d11; }
.dl-szukaj-ik { width: 36px; height: 36px; flex: 0 0 auto; display: grid; place-items: center; color: var(--dl-muted); background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
.dl-szukaj-ik svg { width: 18px; height: 18px; }
.dl-szukaj-tekst { min-width: 0; display: flex; flex-direction: column; }
.dl-szukaj-tekst b { font-size: 16px; font-weight: 700; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dl-szukaj-tekst span { font-size: 13.5px; color: var(--dl-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dl-szukaj-stopka { display: flex; gap: 18px; padding: 10px 18px; border-top: 1px solid rgba(255,255,255,.08); font-size: 12.5px; color: #74747f; }
.dl-szukaj-stopka span { display: inline-flex; align-items: center; gap: 5px; }
body.dl-szukaj-otwarte { overflow: hidden; }

/* --- HAMBURGER --- */
.dl-burger {
	display: none; width: 44px; height: 40px; padding: 9px 8px;
	background: transparent; border: 1px solid rgba(238,187,96,.35); cursor: pointer;
	flex-direction: column; justify-content: space-between; flex: 0 0 auto;
	clip-path: polygon(7px 0, 100% 0, 100% calc(100% - 7px), calc(100% - 7px) 100%, 0 100%, 0 7px);
	transition: border-color .25s, background .25s;
}
.dl-burger:hover { border-color: var(--dl-zloty); background: rgba(238,187,96,.08); }
.dl-burger span {
	display: block; width: 100%; height: 2px; background: var(--dl-zloty);
	transition: transform .3s ease, opacity .2s ease;
}
.dl-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(9px) rotate(45deg); }
.dl-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.dl-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }

/* --- MENU MOBILNE --- */
.dl-menu-mobilne {
	position: fixed; top: var(--dl-h-mob); left: 0; right: 0; z-index: 9998;
	background: linear-gradient(180deg, rgba(12,12,15,.99), rgba(16,16,20,.99));
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(238,187,96,.3);
	box-shadow: 0 18px 40px rgba(0,0,0,.6);
	padding: 14px 18px 22px;
	max-height: calc(100vh - var(--dl-h-mob)); overflow-y: auto;
	transform-origin: top;
	animation: dl-menu-in .22s ease;
}
.dl-menu-mobilne[hidden] { display: none; }
@keyframes dl-menu-in { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: none; } }
.dl-menu-mobilne ul { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 4px; }
.dl-menu-mobilne a {
	display: block; padding: 15px 14px;
	font-family: 'Rajdhani', system-ui, sans-serif; font-size: 18px; font-weight: 700;
	text-transform: uppercase; letter-spacing: 1.4px; color: var(--dl-txt); text-decoration: none;
	border-left: 2px solid transparent; transition: background .2s, border-color .2s, color .2s;
}
.dl-menu-mobilne a:hover, .dl-menu-mobilne a:focus {
	background: rgba(238,187,96,.08); border-left-color: var(--dl-zloty); color: var(--dl-zloty);
}
.dl-menu-mobilne .dl-mob-wyroznione a {
	color: #0a0a0c; background: linear-gradient(135deg, var(--dl-zloty), var(--dl-zloty2));
	border-left-color: transparent;
	clip-path: polygon(9px 0, 100% 0, 100% calc(100% - 9px), calc(100% - 9px) 100%, 0 100%, 0 9px);
}
.dl-mob-discord {
	display: flex; align-items: center; justify-content: center; gap: 10px;
	padding: 14px; background: #5865f2; color: #fff; text-decoration: none;
	font-family: 'Rajdhani', system-ui, sans-serif; font-weight: 700;
	text-transform: uppercase; letter-spacing: 1.2px; font-size: 15px;
	transition: filter .2s;
}
.dl-mob-discord:hover { filter: brightness(1.12); color: #fff; }
.dl-mob-discord svg { width: 20px; height: 20px; flex: 0 0 auto; }
body.dl-menu-otwarte { overflow: hidden; }

/* --- RESPONSYWNOSC --- */
@media (max-width: 1100px) {
	.dl-nav ul { gap: 18px; }
	.dl-nav a { font-size: 15px; letter-spacing: .5px; }
	/* ciasno: guzik szukania bez podpisu */
	.dl-szukaj-btn-tekst, .dl-szukaj-btn kbd { display: none; }
	.dl-header-container .dl-szukaj-btn { padding: 0 11px; }
}
@media (max-width: 950px) {
	body { padding-top: var(--dl-h-mob); }
	.dl-header-container { height: var(--dl-h-mob); }
	.dl-header-inner { padding: 0 15px; gap: 12px; }
	.dl-nav { display: none; }
	.dl-header-container .dl-cta-btn { display: none; }
	.dl-burger { display: flex; }
	.dl-header-akcje { margin-left: auto; }
	.dl-szukaj-okno { margin-top: 82px; max-height: calc(100vh - 100px); }
	.dl-szukaj-stopka { display: none; }
	.dl-logo img { height: 35px; }
	.dl-logo-text { font-size: 20px; }
}
@media (max-width: 380px) {
	.dl-logo-text { font-size: 17px; letter-spacing: 1px; }
}

/* =========================================================
   STOPKA
   W systemie dl-g (tokeny, kontener i etykieta z mu-plugins/dl-system).
   Linki buduja sie z dl_menu_pozycje(), wiec nazwy zawsze pasuja do menu.
   ========================================================= */
.dl-footer {
	padding: 72px 0 0;
	margin-top: 64px;
	background: linear-gradient(180deg, #0d0d10, #0a0a0c);
	border-top: 1px solid rgba(255, 255, 255, .07);
	color: var(--dl-muted);
}
/* strony z sekcji systemu koncza sie wlasnym odstepem */
body.dl-pelna .dl-footer, body.home .dl-footer { margin-top: 0; }

.dl-footer-siatka {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, .8fr) minmax(0, .8fr) minmax(0, 1.25fr);
	gap: 48px;
	align-items: start;
}
.dl-footer-logo { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 16px; text-decoration: none; }
.dl-footer-logo img { width: 40px; height: 40px; filter: drop-shadow(0 0 6px rgba(238,187,96,.35)); }
.dl-footer-logo span { font-size: 21px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; color: var(--dl-txt); }
.dl-footer-opis { margin: 0 0 20px; max-width: 42ch; font-size: 15.5px; line-height: 1.6; color: var(--dl-muted); }

.dl-footer-kol .dl-g-etykieta { margin-bottom: 16px; }
.dl-footer-linki { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.dl-footer-linki a {
	font-size: 15.5px; font-weight: 600; color: var(--dl-muted); text-decoration: none;
	transition: color .16s;
}
.dl-footer-linki a:hover { color: var(--dl-zloty); }

.dl-footer-discord {
	display: flex; flex-direction: column; gap: 6px;
	padding: 24px;
	background: linear-gradient(180deg, rgba(88,101,242,.14), rgba(88,101,242,.04));
	border: 1px solid rgba(88,101,242,.35);
	clip-path: polygon(16px 0, 100% 0, 100% calc(100% - 16px), calc(100% - 16px) 100%, 0 100%, 0 16px);
}
.dl-footer-discord b { font-size: 18px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; color: #fff; }
.dl-footer-discord span { font-size: 14.5px; line-height: 1.5; color: #b9bbd9; margin-bottom: 12px; }
.dl-footer-discord .dl-g-btn { justify-content: center; padding: 13px 18px; font-size: 14px; }

.dl-social { display: flex; gap: 10px; }
.dl-social-ikona {
	width: 40px; height: 40px; display: grid; place-items: center;
	border: 1px solid rgba(255,255,255,.12); color: var(--dl-muted);
	transition: color .2s, border-color .2s;
}
.dl-social-ikona svg { width: 19px; height: 19px; }
.dl-social-ikona:hover { color: var(--dl-zloty); border-color: rgba(238,187,96,.5); }

.dl-footer-dol {
	display: flex; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap;
	margin-top: 56px; padding: 22px 0 26px;
	border-top: 1px solid rgba(255,255,255,.07);
	font-size: 13.5px; color: #74747f;
}

@media (max-width: 1080px) {
	.dl-footer-siatka { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px 32px; }
	.dl-footer-marka, .dl-footer-discord { grid-column: 1 / -1; }
	.dl-footer-discord { max-width: 520px; }
}
@media (max-width: 760px) {
	.dl-footer { padding-top: 56px; margin-top: 48px; }
	.dl-footer-siatka { gap: 36px 20px; }
	.dl-footer-dol { flex-direction: column; margin-top: 40px; }
}

@media (prefers-reduced-motion: reduce) {
	.dl-menu-mobilne, .dl-szukaj-okno { animation: none; }
	.dl-logo, .dl-header-container .dl-cta-btn, .dl-burger span, .dl-footer-linki a { transition: none; }
}

/* =========================================================
   MENU GRUPOWANE (rozwijane) - skaluje sie na kolejne strony
   ========================================================= */
.dl-nav-grupa { position: relative; }
.dl-nav-przycisk {
	display: inline-flex; align-items: center; gap: 7px;
	font-family: 'Rajdhani', system-ui, sans-serif; font-size: 16px; font-weight: 600;
	color: var(--dl-muted); text-transform: uppercase; letter-spacing: 1px;
	background: none; border: none; padding: 8px 0; cursor: pointer;
	transition: color .25s;
}
.dl-nav-przycisk:hover, .dl-nav-grupa:hover .dl-nav-przycisk,
.dl-nav-przycisk[aria-expanded="true"] { color: #fff; }
.dl-strzalka {
	width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px); transition: transform .25s, border-color .25s;
}
.dl-nav-przycisk:hover .dl-strzalka, .dl-nav-grupa:hover .dl-strzalka { border-color: var(--dl-zloty); }
.dl-nav-przycisk[aria-expanded="true"] .dl-strzalka { transform: rotate(225deg) translateY(-2px); border-color: var(--dl-zloty); }

.dl-podmenu {
	position: absolute; top: calc(100% + 14px); left: 50%; transform: translateX(-50%) translateY(-8px);
	min-width: 268px; padding: 8px;
	background: linear-gradient(180deg, #15151b, #0d0d11);
	border: 1px solid rgba(238,187,96,.28);
	box-shadow: 0 18px 44px rgba(0,0,0,.65);
	opacity: 0; visibility: hidden; pointer-events: none;
	transition: opacity .2s ease, transform .2s ease, visibility .2s;
	z-index: 10;
	clip-path: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px);
}
/* mostek, zeby myszka nie "gubila" menu w drodze w dol */
.dl-nav-grupa::after {
	content: ''; position: absolute; top: 100%; left: 0; right: 0; height: 16px;
}
.dl-nav-grupa:hover .dl-podmenu,
.dl-nav-grupa:focus-within .dl-podmenu,
.dl-nav-przycisk[aria-expanded="true"] + .dl-podmenu {
	opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.dl-podmenu a {
	display: block; padding: 11px 14px; text-decoration: none;
	border-left: 2px solid transparent; transition: background .18s, border-color .18s;
}
.dl-podmenu a::before, .dl-podmenu a::after { content: none !important; }
.dl-podmenu a b {
	display: block; font-size: 15.5px; font-weight: 700; color: #f0f0f5;
	text-transform: uppercase; letter-spacing: 1px; margin-bottom: 2px;
}
.dl-podmenu a span { display: block; font-size: 13.5px; color: var(--dl-muted); letter-spacing: .2px; }
.dl-podmenu a:hover { background: rgba(238,187,96,.09); border-left-color: var(--dl-zloty); }
.dl-podmenu a:hover b { color: var(--dl-zloty); }

/* grupy w menu mobilnym */
.dl-menu-mobilne .dl-mob-grupa { display: block; }
.dl-menu-mobilne .dl-mob-tytul {
	display: block; padding: 14px 14px 7px; font-size: 12px; font-weight: 700;
	text-transform: uppercase; letter-spacing: 2.4px; color: var(--dl-zloty);
	border-bottom: 1px solid rgba(238,187,96,.2); margin-bottom: 4px;
}
.dl-menu-mobilne .dl-mob-grupa a { padding-left: 24px; font-size: 16.5px; }

/* --- POPRAWKI 2026-08-18 --- */
/* hello-elementor stylizuje kazdy <button> (rozowe tlo #CC3366 na hover).
   Przycisk grupy w menu to <button>, wiec trzeba zgasic wszystkie stany. */
.dl-nav .dl-nav-przycisk,
.dl-nav .dl-nav-przycisk:hover,
.dl-nav .dl-nav-przycisk:focus,
.dl-nav .dl-nav-przycisk:active,
.dl-nav .dl-nav-przycisk[aria-expanded="true"] {
	background: none !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
	color: var(--dl-muted) !important;
	outline: none;
	text-shadow: none !important;
}
.dl-nav .dl-nav-przycisk:hover,
.dl-nav .dl-nav-przycisk[aria-expanded="true"],
.dl-nav-grupa:hover .dl-nav-przycisk { color: #fff !important; }
.dl-nav .dl-nav-przycisk:focus-visible { outline: 1px solid var(--dl-zloty); outline-offset: 4px; }

/* Wyrozniona pozycja: spokojniejsza obwodka zamiast pelnego zlota,
   zeby nie konkurowala z guzikiem Discorda */
.dl-nav .dl-nav-wyroz a {
	color: var(--dl-zloty) !important;
	background: rgba(238,187,96,.08) !important;
	border: 1px solid rgba(238,187,96,.45);
	padding: 6px 16px;
	box-shadow: none;
}
.dl-nav .dl-nav-wyroz a:hover {
	color: #0a0a0c !important;
	background: linear-gradient(135deg, var(--dl-zloty), var(--dl-zloty2)) !important;
	border-color: transparent;
	box-shadow: 0 4px 16px rgba(238,187,96,.25);
	transform: none;
}

/* ---------------------------------------------------------
   STRONA GLOWNA (szablon front-page.php)
   Motyw nadrzedny przycina .site-main do 1140 px, a sekcje
   glownej same wychodza na pelna szerokosc, wiec limit zdejmujemy.
   --------------------------------------------------------- */
body .site-main.dl-glowna {
	max-width: none;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}
