/* Kiwi Treasure Casino — gloss.css */

:root {
	--site-main-color: #0a190f;
	--site-secondary: #c7ab50;
	--site-accent-dark: #af8b33;
	--site-page-bg: #0d2010;
	--site-surface-2: #122b17;
	--site-grad-light: #1a3c1c;
	--site-gradient-mid: #2dcc3e;
	--site-foreground: #ffffff;
	--site-text-secondary: #c8c5c2;
	--site-notice-bg: #dc2626;
	--site-color-hairline: rgba(255, 255, 255, 0.09);

	--site-heading-font: "Playfair Display", Georgia, serif;
	--site-font-text: "Outfit", -apple-system, "Segoe UI", Roboto, sans-serif;
	--site-weight-regular: 400;
	--site-font-medium: 500;
	--site-fw-bold: 700;

	--site-type-h1: clamp(2.4rem, 5vw, 3.7rem);
	--site-fs-h2: clamp(1.9rem, 3.4vw, 2.7rem);
	--site-text-h3: clamp(1.45rem, 2.2vw, 1.9rem);
	--site-size-h4: 1.3rem;
	--site-type-h5: 1.15rem;
	--site-fs-h6: 1rem;
	--site-size-body: 1.05rem;
	--site-type-small: 0.86rem;
	--site-line-tight: 1.12;
	--site-line-normal: 1.6;
	--site-line-loose: 1.8;
	--site-letter-tight: -0.01em;
	--site-tracking-wide: 0.14em;

	--site-gutter-xs: 6px;
	--site-spacing-sm: 12px;
	--site-gutter-md: 20px;
	--site-gutter-lg: 32px;
	--site-spacing-xl: 52px;
	--site-gap-2xl: 80px;
	--site-gap-3xl: 112px;

	--site-wrapper: 1440px;
	--site-prose-width: 720px;
	--site-gutter-desktop: 24px;

	--site-rounded-sm: 6px;
	--site-corner: 12px;
	--site-round-lg: 20px;
	--site-circle: 50%;
	--site-elevation-2: 0 10px 30px rgba(0, 0, 0, 0.35);
	--site-elevation-3: 0 24px 60px rgba(0, 0, 0, 0.45);

	--site-duration-fast: 0.15s;
	--site-transition-base: 0.28s;
	--site-speed-slow: 0.5s;
	--site-ease: cubic-bezier(0.22, 1, 0.36, 1);

	--site-header-height-desktop: 120px;
	--site-topbar-mobile: 80px;
}

*, *::before, *::after { box-sizing: border-box; }

html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}
html, body { overflow-x: clip; }

body {
	margin: 0;
	background: var(--site-page-bg);
	color: var(--site-foreground);
	font-family: var(--site-font-text);
	font-size: var(--site-size-body);
	line-height: var(--site-line-normal);
	font-weight: var(--site-weight-regular);
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
	font-family: var(--site-heading-font);
	line-height: var(--site-line-tight);
	letter-spacing: var(--site-letter-tight);
	margin: 0;
}

img { max-width: 100%; display: block; }

a { color: var(--site-secondary); text-decoration: none; }
a:hover { color: var(--site-accent-dark); }

p { margin: 0 0 var(--site-gutter-md); }

::selection { background: var(--site-secondary); color: var(--site-main-color); }

.skip-link {
	position: absolute;
	left: var(--site-gutter-md);
	top: -200px;
	z-index: 200;
	background: var(--site-secondary);
	color: var(--site-main-color);
	padding: 10px 16px;
	border-radius: var(--site-rounded-sm);
	font-weight: var(--site-fw-bold);
}
.skip-link:not(:focus) { top: -200px !important; }
.skip-link:focus { top: var(--site-spacing-sm); }

.sr-only {
	position: absolute; width: 1px; height: 1px;
	padding: 0; margin: -1px; overflow: hidden;
	clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

@media (prefers-reduced-motion: reduce) {
	* { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
}

/* ---------- responsible-gaming banner ---------- */
.rg-banner {
	margin: 0;
	background: var(--site-notice-bg);
	color: #ffffff;
	text-align: center;
	font-size: var(--site-type-small);
	font-weight: var(--site-font-medium);
	letter-spacing: 0.02em;
	padding: 7px var(--site-gutter-md);
	min-height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ---------- header (HEAD-10, votos) ---------- */
.votos {
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--site-page-bg);
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	transition: background var(--site-transition-base) var(--site-ease), backdrop-filter var(--site-transition-base) var(--site-ease);
}
.votos.is-blurred {
	background: rgba(13, 32, 16, 0.82);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
.votos-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.votos-row { display: flex; align-items: center; }
.votos-row--top { min-height: 76px; justify-content: space-between; padding-top: var(--site-spacing-sm); }
.votos-row--bottom {
	min-height: 44px;
	gap: var(--site-gutter-lg);
	padding-bottom: var(--site-spacing-sm);
	border-top: 1px solid rgba(255, 255, 255, 0.05);
}
.votos-logo, .votos-logo img { flex-shrink: 0; }
.votos-logo { display: inline-flex; align-items: center; }
.votos-logo-pill {
	display: inline-flex;
	align-items: center;
	background: #ffffff;
	padding: 6px 14px;
	border-radius: var(--site-corner);
}
.votos-logo-img { height: 90px; width: auto; }
.rita-logo-img { height: 72px; width: auto; }

.votos-toggle {
	display: none;
	margin-left: auto !important;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 46px;
	height: 46px;
	background: transparent;
	border: 1px solid var(--site-color-hairline);
	border-radius: var(--site-rounded-sm);
	cursor: pointer;
	padding: 0 11px;
}
.votos-toggle-bar { display: block; height: 2px; width: 100%; background: var(--site-foreground); border-radius: 2px; }

.votos-nav { flex: 1 1 auto; }
.votos-nav-list {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-wrap: nowrap; align-items: center;
	gap: var(--site-gutter-lg);
}
.votos-link {
	font-family: var(--site-heading-font);
	font-weight: var(--site-font-medium);
	font-size: var(--site-fs-h6);
	color: var(--site-foreground);
	white-space: nowrap;
	transition: color var(--site-duration-fast) var(--site-ease);
}
.votos-link:hover { color: var(--site-secondary); }
.votos-link.is-active { color: var(--site-secondary); }
.votos-actions { margin-left: auto; display: flex; align-items: center; }
.votos-auth-btn {
	white-space: nowrap;
	flex-shrink: 0;
	background: var(--site-secondary);
	color: var(--site-main-color);
	font-weight: var(--site-fw-bold);
	font-size: var(--site-type-small);
	letter-spacing: 0.03em;
	padding-inline: var(--site-gutter-lg);
	padding-block: 11px;
	border-radius: var(--site-corner);
	transition: background var(--site-duration-fast) var(--site-ease), color var(--site-duration-fast) var(--site-ease);
}
.votos-auth-btn:hover { background: var(--site-accent-dark); color: var(--site-main-color); }

/* mobile drawer */
.votos-drawer {
	display: none;
	background: var(--site-surface-2);
	border-bottom: 1px solid var(--site-color-hairline);
}
.votos-drawer.is-open { display: block; }
.votos-drawer-list { list-style: none; margin: 0; padding: var(--site-spacing-sm) 0; }
.votos-drawer-list li { border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
.votos-drawer-link {
	display: block;
	padding: 14px var(--site-gutter-desktop);
	color: var(--site-foreground);
	font-family: var(--site-heading-font);
	font-size: var(--site-type-h5);
}
.votos-drawer-link:hover { color: var(--site-secondary); }

/* ---------- hero (HERO-02, modyze) ---------- */
.modyze { padding-block: var(--site-spacing-xl); }
.modyze-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
	display: grid;
	grid-template-columns: 55% 45%;
	gap: var(--site-gap-2xl);
	align-items: center;
	min-height: 480px;
}
.modyze-text { min-width: 0; }
.modyze-eyebrow {
	display: inline-block;
	font-family: var(--site-font-text);
	font-weight: var(--site-font-medium);
	font-size: var(--site-type-small);
	text-transform: uppercase;
	letter-spacing: var(--site-tracking-wide);
	color: var(--site-secondary);
	margin-bottom: var(--site-spacing-sm);
}
.modyze h1 { font-size: var(--site-type-h1); font-weight: var(--site-fw-bold); }
.modyze-subtitle {
	font-size: var(--site-type-h5);
	line-height: var(--site-line-normal);
	color: var(--site-text-secondary);
	max-width: 520px;
	margin-top: var(--site-gutter-md);
}
.modyze-actions { margin-top: var(--site-gutter-lg); display: flex; gap: var(--site-gutter-md); flex-wrap: wrap; }
.modyze-cta-primary, .modyze-cta-secondary {
	display: inline-flex; align-items: center; justify-content: center;
	height: 52px; padding-inline: var(--site-gutter-lg);
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold);
	text-transform: uppercase; letter-spacing: 0.06em; font-size: var(--site-fs-h6);
	border-radius: var(--site-corner);
	transition: background var(--site-duration-fast) var(--site-ease), color var(--site-duration-fast) var(--site-ease), border-color var(--site-duration-fast) var(--site-ease);
}
.modyze-cta-primary { background: var(--site-secondary); color: var(--site-main-color); }
.modyze-cta-primary:hover { background: var(--site-accent-dark); color: var(--site-main-color); }
.modyze-cta-secondary { background: transparent; border: 1px solid var(--site-text-secondary); color: var(--site-foreground); }
.modyze-cta-secondary:hover { border-color: var(--site-foreground); background: rgba(255, 255, 255, 0.05); color: var(--site-foreground); }
.modyze-figure {
	margin: 0; overflow: hidden; border-radius: var(--site-round-lg);
	aspect-ratio: 4 / 5; box-shadow: var(--site-elevation-3);
}
.modyze-img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--site-speed-slow) var(--site-ease); }
.modyze-figure:hover .modyze-img { transform: scale(1.04); }

/* ---------- page header (PHEAD-03, tyruv) ---------- */
.tyruv { background: var(--site-main-color); padding-block: var(--site-spacing-xl); }
.tyruv-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.tyruv-title { font-size: clamp(2.2rem, 6vw, 4rem); font-weight: var(--site-fw-bold); color: var(--site-foreground); }
.tyruv-desc { margin-top: var(--site-gutter-md); font-size: var(--site-type-h5); color: rgba(255, 255, 255, 0.72); max-width: 820px; }

/* ---------- prose (PROSE-06, nugi) ---------- */
.nugi { padding-block: var(--site-spacing-xl); }
.nugi-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.nugi-prose { max-width: var(--site-prose-width); margin-inline: auto; }
.nugi-prose h2 {
	font-size: var(--site-text-h3); font-weight: var(--site-fw-bold);
	text-align: center; margin-top: var(--site-gap-2xl); margin-bottom: var(--site-gutter-md);
	color: var(--site-foreground);
}
.nugi-prose h2:first-child { margin-top: 0; }
.nugi-prose p { font-size: var(--site-size-body); line-height: var(--site-line-loose); color: var(--site-text-secondary); }
.nugi-prose strong { color: var(--site-foreground); font-weight: var(--site-fw-bold); }
.nugi-prose ul, .nugi-prose ol { color: var(--site-text-secondary); line-height: var(--site-line-loose); padding-left: 1.3em; margin: 0 0 var(--site-gutter-md); }
.nugi-prose li { margin-bottom: var(--site-gutter-xs); }
.nugi-prose a { color: var(--site-secondary); text-decoration: underline; text-underline-offset: 3px; }
.nugi-prose a:hover { color: var(--site-accent-dark); }

/* ---------- image band / grid ---------- */
.imgband { padding-block: var(--site-gutter-md); }
.imgband-inner, .imggrid-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.imgband-figure { margin: 0; overflow: hidden; border-radius: var(--site-round-lg); box-shadow: var(--site-elevation-2); }
.imgband-img { width: 100%; height: auto; max-height: 460px; object-fit: cover; }
.imggrid { padding-block: var(--site-gutter-md); }
.imggrid-inner { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--site-gutter-lg); }
.imggrid-item { margin: 0; overflow: hidden; border-radius: var(--site-corner); box-shadow: var(--site-elevation-2); }
.imggrid-img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- items grid (GRID-12, davavy) ---------- */
.davavy { padding-block: var(--site-spacing-xl); }
.davavy-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.davavy-head { font-size: var(--site-fs-h2); font-weight: var(--site-fw-bold); margin-bottom: var(--site-gutter-lg); }
.davavy-list { display: flex; flex-direction: column; }
.davavy-item {
	display: flex; gap: var(--site-gutter-lg); align-items: flex-start;
	padding: var(--site-gutter-lg) 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.davavy-initial {
	flex-shrink: 0;
	width: 120px; height: 120px;
	display: flex; align-items: center; justify-content: center;
	background: var(--site-secondary);
	color: var(--site-main-color);
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold);
	font-size: var(--site-type-h1);
	border-radius: var(--site-corner);
}
.davavy-body { min-width: 0; }
.davavy-title { font-size: var(--site-size-h4); font-weight: var(--site-fw-bold); margin-bottom: var(--site-gutter-xs); }
.davavy-text { font-size: var(--site-size-body); line-height: var(--site-line-normal); color: var(--site-text-secondary); margin: 0; }

/* ---------- reviews (REV-08, vyleba) ---------- */
.vyleba { padding-block: var(--site-spacing-xl); background: var(--site-main-color); }
.vyleba-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.vyleba-head { font-size: var(--site-fs-h2); font-weight: var(--site-fw-bold); margin-bottom: var(--site-gutter-lg); }
.vyleba-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--site-gutter-lg); }
.vyleba-card {
	background: var(--site-surface-2);
	border: 1px solid var(--site-color-hairline);
	border-radius: var(--site-corner);
	padding: var(--site-gutter-lg);
}
.vyleba-top { display: flex; align-items: center; gap: var(--site-spacing-sm); margin-bottom: var(--site-gutter-md); }
.vyleba-avatar {
	width: 48px; height: 48px; flex-shrink: 0;
	display: flex; align-items: center; justify-content: center;
	background: var(--site-secondary); color: var(--site-main-color);
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold); font-size: var(--site-type-h5);
	border-radius: var(--site-circle);
}
.vyleba-meta { display: flex; flex-direction: column; }
.vyleba-author { font-weight: var(--site-font-medium); color: var(--site-foreground); }
.vyleba-stars { color: var(--site-secondary); font-size: var(--site-type-small); letter-spacing: 0.06em; }
.vyleba-text { font-size: var(--site-size-body); line-height: var(--site-line-normal); color: var(--site-text-secondary); margin: 0; }

/* ---------- faq (FAQ-06, telyza) ---------- */
.telyza { padding-block: var(--site-spacing-xl); }
.telyza-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.telyza-head { font-size: var(--site-fs-h2); font-weight: var(--site-fw-bold); margin-bottom: var(--site-gutter-lg); }
.telyza-toc {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--site-color-hairline);
	border-radius: var(--site-corner);
	padding: var(--site-gutter-lg);
	margin-bottom: var(--site-gap-2xl);
}
.telyza-toc-list { margin: 0; padding-left: 1.4em; color: var(--site-text-secondary); }
.telyza-toc-list li { margin-bottom: var(--site-gutter-xs); }
.telyza-toc-link { color: var(--site-text-secondary); }
.telyza-toc-link:hover { color: var(--site-secondary); }
.telyza-list { margin: 0; }
.telyza-q {
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold);
	font-size: var(--site-size-h4); color: var(--site-foreground);
	margin-top: var(--site-spacing-xl); scroll-margin-top: calc(var(--site-header-height-desktop) + var(--site-gutter-md));
}
.telyza-a { margin: var(--site-spacing-sm) 0 0; }
.telyza-a p { color: var(--site-text-secondary); line-height: var(--site-line-loose); margin: 0; }

/* ---------- cta (CTA-10, fesu) ---------- */
.fesu { padding-block: var(--site-spacing-xl); text-align: center; }
.fesu-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.fesu-statement {
	margin: 0 auto; max-width: 900px;
	font-family: var(--site-heading-font); font-style: italic; font-weight: var(--site-fw-bold);
	font-size: var(--site-type-h1); line-height: var(--site-line-tight); color: var(--site-foreground);
}
.fesu-statement p { margin: 0; }
.fesu-sub { margin: var(--site-gutter-lg) auto 0; max-width: 580px; color: var(--site-text-secondary); line-height: var(--site-line-loose); }
.fesu-link {
	display: inline-block; margin-top: var(--site-gutter-lg);
	font-family: var(--site-heading-font); font-size: var(--site-type-h5);
	text-transform: uppercase; letter-spacing: var(--site-tracking-wide);
	color: var(--site-secondary); text-decoration: underline; text-underline-offset: 5px;
}
.fesu-link:hover { color: var(--site-accent-dark); }

/* ---------- byline (BYLINE-04, xobar) ---------- */
.xobar { padding-block: var(--site-spacing-xl); }
.xobar-quote {
	max-width: 640px; margin: 0 auto; text-align: center;
	border-top: 1px solid var(--site-color-hairline);
	border-bottom: 1px solid var(--site-color-hairline);
	padding-block: var(--site-spacing-xl);
}
.xobar-quote > p {
	font-family: var(--site-heading-font); font-style: italic; font-size: var(--site-size-h4);
	color: var(--site-foreground); line-height: var(--site-line-normal); margin: 0 0 var(--site-gutter-md);
}
.xobar-attr { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--site-spacing-sm); }
.xobar-portrait { width: 40px; height: 40px; border-radius: var(--site-circle); object-fit: cover; }
.xobar-name { font-style: normal; }
.xobar-name a { color: var(--site-secondary); font-weight: var(--site-fw-bold); }
.xobar-name a:hover { color: var(--site-accent-dark); }
.xobar-role { font-size: var(--site-type-small); font-style: italic; color: var(--site-text-secondary); }

/* ---------- author card (AUTH-06, tykera) ---------- */
.tykera { padding-block: var(--site-spacing-xl); background: linear-gradient(135deg, var(--site-main-color), var(--site-page-bg)); }
.tykera-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
	display: grid; grid-template-columns: 280px 1fr; gap: var(--site-gap-2xl); align-items: center;
}
.tykera-portrait { margin: 0; width: 280px; }
.tykera-portrait img { width: 280px; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--site-round-lg); box-shadow: var(--site-elevation-3); }
.tykera-body { min-width: 0; }
.tykera-eyebrow { display: block; font-family: var(--site-font-text); font-size: var(--site-type-small); text-transform: uppercase; letter-spacing: var(--site-tracking-wide); color: var(--site-secondary); margin-bottom: var(--site-spacing-sm); }
.tykera-name { font-size: clamp(2.5rem, 6vw, 4rem); font-weight: var(--site-fw-bold); color: var(--site-foreground); }
.tykera-bio { font-size: var(--site-type-h5); line-height: var(--site-line-normal); color: rgba(255, 255, 255, 0.82); max-width: 560px; margin-top: var(--site-gutter-md); }
.tykera-expertise { margin: var(--site-gutter-lg) 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: var(--site-spacing-sm); }
.tykera-exp-item { background: rgba(255, 255, 255, 0.06); border: 1px solid var(--site-color-hairline); border-radius: var(--site-rounded-sm); padding: 8px 14px; font-size: var(--site-type-small); color: var(--site-foreground); }

/* ---------- contact form (FORM-08, lisa) ---------- */
.lisa { padding-block: var(--site-spacing-xl); }
.lisa-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.lisa-wrap { max-width: var(--site-prose-width); margin-inline: auto; }
.lisa-intro { color: var(--site-text-secondary); line-height: var(--site-line-loose); margin-bottom: var(--site-gutter-lg); }
.lisa-form { background: var(--site-surface-2); border: 1px solid var(--site-color-hairline); padding: var(--site-spacing-xl); border-radius: var(--site-corner); }
.lisa-field { margin-bottom: var(--site-gutter-lg); }
.lisa-label { display: block; margin-bottom: var(--site-gutter-xs); font-weight: var(--site-font-medium); color: var(--site-foreground); }
.lisa-input, .lisa-textarea {
	width: 100%; padding: 13px 16px; font-family: inherit; font-size: var(--site-size-body);
	color: var(--site-foreground); background: var(--site-page-bg);
	border: 1px solid var(--site-color-hairline); border-radius: var(--site-rounded-sm);
}
.lisa-input:focus, .lisa-textarea:focus { outline: 2px solid var(--site-secondary); outline-offset: 1px; border-color: var(--site-secondary); }
.lisa-textarea { resize: vertical; }
.lisa-submit {
	width: 100%; height: 72px; cursor: pointer;
	background: var(--site-secondary); color: var(--site-main-color);
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold);
	text-transform: uppercase; letter-spacing: 0.06em; font-size: var(--site-size-h4);
	border: none; border-radius: var(--site-corner);
	transition: background var(--site-duration-fast) var(--site-ease), color var(--site-duration-fast) var(--site-ease);
}
.lisa-submit:hover { background: var(--site-accent-dark); color: var(--site-main-color); }
.lisa-success { margin-top: var(--site-gutter-lg); padding: var(--site-gutter-md); background: rgba(45, 204, 62, 0.12); border: 1px solid var(--site-gradient-mid); border-radius: var(--site-rounded-sm); color: var(--site-foreground); }

/* ---------- legal (LEGAL-03, tixan) ---------- */
.tixan { padding-block: var(--site-spacing-xl); }
.tixan-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
	display: grid; grid-template-columns: 240px 1fr; gap: var(--site-gap-2xl); align-items: start;
}
.tixan-toc { position: sticky; top: calc(var(--site-header-height-desktop) + var(--site-gutter-md)); background: var(--site-surface-2); border: 1px solid var(--site-color-hairline); border-radius: var(--site-corner); padding: var(--site-gutter-md); }
.tixan-toc-head { font-size: var(--site-fs-h6); text-transform: uppercase; letter-spacing: var(--site-tracking-wide); color: var(--site-secondary); margin-bottom: var(--site-spacing-sm); }
.tixan-toc-list { margin: 0; padding-left: 1.2em; font-size: var(--site-type-small); color: var(--site-text-secondary); }
.tixan-toc-list li { margin-bottom: var(--site-gutter-xs); }
.tixan-toc-link { color: var(--site-text-secondary); }
.tixan-toc-link:hover { color: var(--site-secondary); }
.tixan-content { max-width: var(--site-prose-width); }
.tixan-section { margin-bottom: var(--site-spacing-xl); scroll-margin-top: calc(var(--site-header-height-desktop) + var(--site-gutter-md)); }
.tixan-heading { font-size: var(--site-text-h3); font-weight: var(--site-fw-bold); margin-bottom: var(--site-spacing-sm); color: var(--site-foreground); }
.tixan-para { color: var(--site-text-secondary); line-height: var(--site-line-loose); }
.tixan-para a { text-decoration: underline; }
.tixan-support { margin-top: var(--site-gap-2xl); padding: var(--site-gutter-lg); background: var(--site-surface-2); border-radius: var(--site-corner); border: 1px solid var(--site-color-hairline); }
.tixan-support-head { font-size: var(--site-size-h4); font-weight: var(--site-fw-bold); margin-bottom: var(--site-spacing-sm); }
.tixan-support-list { margin: 0; padding-left: 1.2em; color: var(--site-text-secondary); line-height: var(--site-line-loose); }
.tixan-disclaimer { margin-top: var(--site-gutter-lg); font-size: var(--site-type-small); font-style: italic; color: var(--site-text-secondary); }

/* ---------- error (ERR-03, foseri) ---------- */
.foseri { padding-block: var(--site-gap-2xl); }
.foseri-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
}
.foseri-card { max-width: 600px; margin-inline: auto; text-align: center; }
.foseri-title { font-size: var(--site-fs-h2); font-weight: var(--site-fw-bold); margin-bottom: var(--site-gutter-md); }
.foseri-text { color: var(--site-text-secondary); line-height: var(--site-line-loose); margin-bottom: var(--site-gutter-lg); }
.foseri-btn {
	display: inline-flex; align-items: center; height: 44px; padding-inline: var(--site-gutter-lg);
	background: var(--site-secondary); color: var(--site-main-color);
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold); text-transform: uppercase; letter-spacing: 0.05em;
	border-radius: var(--site-corner);
	transition: background var(--site-duration-fast) var(--site-ease), color var(--site-duration-fast) var(--site-ease);
}
.foseri-btn:hover { background: var(--site-accent-dark); color: var(--site-main-color); }

/* ---------- footer (FOOT-07, rita) ---------- */
.rita { background: var(--site-main-color); }
.rita-inner {
	max-width: calc(var(--site-wrapper) + 2 * var(--site-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--site-gutter-desktop);
	display: grid; grid-template-columns: 2fr 1fr; gap: 0;
}
.rita-content { padding-block: var(--site-gap-2xl); padding-right: var(--site-gap-2xl); }
.rita-logo { display: inline-flex; margin-bottom: var(--site-gutter-lg); }
.rita-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--site-gutter-lg); margin-bottom: var(--site-gutter-lg); }
.rita-nav-heading, .rita-legal-heading { font-size: var(--site-fs-h6); text-transform: uppercase; letter-spacing: var(--site-tracking-wide); color: var(--site-secondary); margin-bottom: var(--site-spacing-sm); }
.rita-nav-list, .rita-legal-list { list-style: none; margin: 0; padding: 0; }
.rita-nav-list li, .rita-legal-list li { margin-bottom: var(--site-gutter-xs); }
.rita-nav-link { color: var(--site-text-secondary); font-size: var(--site-size-body); }
.rita-nav-link:hover { color: var(--site-secondary); }
.rita-disclaimer { font-size: var(--site-type-small); color: var(--site-text-secondary); line-height: var(--site-line-normal); max-width: 640px; margin-bottom: var(--site-gutter-md); }
.rita-copy { display: block; font-size: var(--site-type-small); color: var(--site-text-secondary); }
.rita-backtop { display: inline-block; margin-top: var(--site-gutter-md); font-size: var(--site-type-small); color: var(--site-secondary); text-transform: uppercase; letter-spacing: var(--site-tracking-wide); }
.rita-backtop:hover { color: var(--site-accent-dark); }
.rita-accent-block { background: var(--site-secondary); display: flex; align-items: center; justify-content: center; padding: var(--site-spacing-xl); }
.rita-nav { margin: 0; }
.rita-accent-label {
	font-family: var(--site-heading-font); font-weight: var(--site-fw-bold);
	font-size: var(--site-fs-h2); text-transform: uppercase; letter-spacing: var(--site-letter-tight);
	background: var(--site-secondary); color: var(--site-main-color);
	writing-mode: vertical-rl; transform: rotate(180deg); white-space: nowrap;
}

/* ---------- cookie banner (COOK-06, safe) ---------- */
.safe {
	position: fixed; left: 50%; bottom: var(--site-gutter-md); transform: translateX(-50%);
	z-index: 150; width: min(940px, calc(100vw - 2 * var(--site-gutter-md)));
	background: var(--site-surface-2); border: 1px solid var(--site-color-hairline);
	border-radius: var(--site-corner); box-shadow: var(--site-elevation-3);
}
.safe[hidden] { display: none; }
.safe-inner { display: flex; align-items: center; gap: var(--site-gutter-lg); padding: var(--site-gutter-md) var(--site-gutter-lg); flex-wrap: wrap; }
.safe-msg { margin: 0; flex: 1 1 320px; font-size: var(--site-type-small); color: var(--site-text-secondary); line-height: var(--site-line-normal); }
.safe-actions { display: flex; align-items: center; gap: var(--site-spacing-sm); flex-wrap: wrap; }
.safe-prefs { font-size: var(--site-type-small); color: var(--site-secondary); text-decoration: underline; text-underline-offset: 3px; }
.safe-prefs:hover { color: var(--site-accent-dark); }
.safe-decline, .safe-accept {
	cursor: pointer; font-family: inherit; font-size: var(--site-type-small); font-weight: var(--site-font-medium);
	padding: 10px 18px; border-radius: var(--site-rounded-sm); border: 1px solid var(--site-secondary);
}
.safe-decline { background: transparent; color: var(--site-foreground); }
.safe-decline:hover { background: rgba(255, 255, 255, 0.06); }
.safe-accept { background: var(--site-secondary); color: var(--site-main-color); font-weight: var(--site-fw-bold); border-color: var(--site-secondary); }
.safe-accept:hover { background: var(--site-accent-dark); border-color: var(--site-accent-dark); }

/* ============ RESPONSIVE ============ */
@media (max-width: 1024px) {
	.modyze-inner { grid-template-columns: 1fr; gap: var(--site-spacing-xl); }
	.modyze-figure { aspect-ratio: 16 / 9; order: 2; }
	.vyleba-grid { grid-template-columns: repeat(2, 1fr); }
	.tixan-inner { grid-template-columns: 1fr; gap: var(--site-gutter-lg); }
	.tixan-toc { position: static; top: auto; }
	.tixan-content { max-width: none; }
	.tykera-inner { grid-template-columns: 220px 1fr; gap: var(--site-spacing-xl); }
	.votos-logo-img { height: 78px; }
}

@media (max-width: 1023px) {
	.votos-row--bottom { display: none; }
	.votos-row--top { min-height: var(--site-topbar-mobile); padding-block: var(--site-spacing-sm); }
	.votos-toggle { display: flex; }
	.votos-logo-img { height: 60px; }
	.rita-logo-img { height: 60px; }
	.modyze { padding-block: var(--site-spacing-xl); }
	.modyze-figure { aspect-ratio: 16 / 10; }
	.davavy-item { flex-direction: column; }
	.davavy-initial { width: 80px; height: 80px; font-size: var(--site-fs-h2); }
	.vyleba-grid { grid-template-columns: 1fr; }
	.imggrid-inner { grid-template-columns: 1fr; }
	.tykera-inner { grid-template-columns: 1fr; }
	.tykera-portrait, .tykera-portrait img { width: 100%; max-width: 320px; }
	.rita-inner { grid-template-columns: 1fr; }
	.rita-cols { grid-template-columns: 1fr 1fr; }
	.rita-content { padding-right: var(--site-gutter-desktop); }
	.rita-accent-block { padding: var(--site-gutter-lg); }
	.rita-accent-label { writing-mode: horizontal-tb; transform: none; font-size: var(--site-text-h3); }
	.telyza-q { scroll-margin-top: calc(var(--site-topbar-mobile) + var(--site-gutter-md)); }
	.tixan-section, .tixan-toc { scroll-margin-top: calc(var(--site-topbar-mobile) + var(--site-gutter-md)); }
}

@media (max-width: 720px) {
	.safe, .safe-inner { padding: 12px 14px !important; gap: 8px !important; font-size: 13px !important; line-height: 1.35 !important; }
	.safe-actions { width: 100%; }
	.safe-decline, .safe-accept { flex: 1 1 auto; padding: 8px 14px !important; font-size: 12px !important; min-height: 36px !important; }
}

