/* CSS Document */

:root {
	--dokument-bg: #f6f3fb;
	--dokument-surface: #fff;
	--dokument-ink: #21182f;
	--dokument-muted: #71687c;
	--dokument-purple: #7047a8;
	--dokument-purple-dark: #4b2d72;
	--dokument-purple-soft: #ebe3f5;
	--dokument-line: rgba(75, 45, 114, 0.13);
}

.dokument-page,
.dokument-page .body,
.dokument-main { background: var(--dokument-bg); }
.dokument-main { overflow: hidden; }
.dokument-page .main { margin-bottom: 0; }

.dokument-hero-wrapper,
.dokument-hero-slide { height: 100vh; min-height: 650px; }
.dokument-hero-slide { background-position: center; background-repeat: no-repeat; background-size: cover; }
.dokument-hero-slide::before { background: linear-gradient(90deg, rgba(12,8,17,.84) 0%, rgba(22,13,31,.57) 48%, rgba(20,13,28,.14) 100%) !important; }
.dokument-hero-content { max-width: 720px; padding: 0 0 clamp(6.5rem, 12vh, 9.5rem); color: #fff; }
.dokument-hero-content .lag-hero-kicker { display: flex; align-items: center; gap: 12px; margin: 0 0 .8rem; color: #d4a5f3; font-size: .72rem; font-weight: 800; letter-spacing: .18em; line-height: 1.2; text-transform: uppercase; }
.dokument-hero-content .lag-hero-kicker::before { content: ""; display: block; flex: 0 0 24px; width: 24px; height: 3px; border-radius: 99px; background: #a65bd4; }
.dokument-hero-content h1 { margin: .45rem 0 1rem; color: #fff; font-size: clamp(3.25rem, 7vw, 6.8rem); font-weight: 800; line-height: .94; letter-spacing: -.055em; }
.dokument-hero-content p { max-width: 620px; margin: 0; color: rgba(255,255,255,.78); font-size: clamp(1.1rem, 2vw, 1.45rem); }

.dokument-content { padding: 100px 0 90px; }
.dokument-intro { max-width: 760px; margin-bottom: 48px; }
.dokument-eyebrow,
.home-sponsor-label { display: inline-block; font-size: .78rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.dokument-eyebrow { margin-bottom: 12px; color: var(--dokument-purple); }
.dokument-intro h2 { margin: 0 0 16px; color: var(--dokument-ink); font-size: clamp(2.4rem, 4vw, 4rem); font-weight: 800; line-height: 1; letter-spacing: -.045em; }
.dokument-intro p { margin: 0; color: var(--dokument-muted); font-size: 1.05rem; line-height: 1.8; }

.dokument-accordion { display: grid; gap: 14px; }
.dokument-panel { border: 1px solid var(--dokument-line); border-radius: 20px; background: rgba(255,255,255,.72); box-shadow: 0 12px 34px rgba(54,35,76,.055); overflow: hidden; }
.dokument-panel-heading { margin: 0; }
.dokument-toggle { display: flex; align-items: center; width: 100%; padding: 21px 24px; border: 0; background: linear-gradient(135deg, #674092, #4b2d72); color: #fff; font-family: inherit; font-size: 1.05rem; font-weight: 700; line-height: 1.35; text-align: left; transition: .2s ease; }
.dokument-toggle.collapsed { background: rgba(255,255,255,.86); color: var(--dokument-ink); }
.dokument-toggle:focus-visible { outline: 3px solid rgba(112,71,168,.28); outline-offset: -3px; }
.dokument-toggle-icon { display: grid; flex: 0 0 auto; place-items: center; width: 42px; height: 42px; margin-right: 16px; border-radius: 12px; background: rgba(255,255,255,.14); color: #fff; }
.dokument-toggle.collapsed .dokument-toggle-icon { background: var(--dokument-purple-soft); color: var(--dokument-purple); }
.dokument-chevron { margin-left: auto; font-size: .8rem; transform: rotate(180deg); transition: transform .25s ease; }
.dokument-toggle.collapsed .dokument-chevron { transform: rotate(0); }
.dokument-panel-body { padding: 18px 26px 26px; }

.dokument-year { margin: 24px 0 8px; color: var(--dokument-purple); font-size: .75rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.dokument-year:first-child { margin-top: 6px; }
.dokument-row { display: flex; align-items: center; gap: 17px; padding: 17px 4px; border-bottom: 1px solid var(--dokument-line); }
.dokument-row:last-child { border-bottom: 0; }
.dokument-feature-row { padding: 10px 4px; }
.dokument-file-icon { display: grid; flex: 0 0 auto; place-items: center; width: 46px; height: 46px; border-radius: 13px; background: var(--dokument-purple-soft); color: var(--dokument-purple); font-size: 1.15rem; }
.dokument-file-info { min-width: 0; margin-right: auto; }
.dokument-file-info strong,
.dokument-file-info span { display: block; }
.dokument-file-info strong { color: var(--dokument-ink); font-size: .98rem; font-weight: 700; line-height: 1.45; }
.dokument-file-info span { margin-top: 2px; color: var(--dokument-muted); font-size: .8rem; }
.dokument-btn { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 9px; min-width: 156px; padding: 11px 17px; border-radius: 999px; background: var(--dokument-purple-dark); color: #fff !important; font-size: .8rem; font-weight: 700; text-decoration: none !important; box-shadow: 0 8px 18px rgba(75,45,114,.14); transition: .2s ease; }
.dokument-btn:hover { background: #382052; transform: translateY(-2px); }
.dokument-btn i { font-size: .72rem; }
.dokument-empty { margin: 8px 0 0; padding: 24px; border-radius: 14px; background: var(--dokument-purple-soft); color: var(--dokument-muted); text-align: center; }

.home-sponsors { padding: 3rem 0; background: var(--dokument-bg); }
.home-sponsor-label { display: block; margin-bottom: 1.5rem; color: #9b929f; font-size: .67rem; letter-spacing: .2em; text-align: center; }
.home-sponsors .owl-carousel img { max-height: 78px; object-fit: contain; filter: grayscale(1); opacity: .6 !important; transition: .2s; }
.home-sponsors .owl-carousel a:hover img { filter: none; opacity: 1 !important; }
.dokument-page #footer { margin-top: 0 !important; }

@media (max-width: 767px) {
	.dokument-hero-wrapper,
	.dokument-hero-slide { height: 100svh; min-height: 560px; }
	.dokument-hero-slide::before { background: linear-gradient(0deg, rgba(13,8,18,.9) 0%, rgba(19,12,26,.6) 58%, rgba(19,12,26,.2) 100%) !important; }
	.dokument-hero-content { padding: 0 0 5.8rem; }
	.dokument-hero-content h1 { font-size: clamp(2.75rem, 14vw, 4.4rem); }
	.dokument-content { padding: 62px 0 58px; }
	.dokument-intro { margin-bottom: 34px; }
	.dokument-panel { border-radius: 16px; }
	.dokument-toggle { padding: 17px 16px; font-size: .95rem; }
	.dokument-toggle-icon { width: 38px; height: 38px; margin-right: 12px; }
	.dokument-panel-body { padding: 13px 17px 19px; }
	.dokument-row { align-items: flex-start; flex-wrap: wrap; gap: 12px; padding: 17px 0; }
	.dokument-file-info { width: calc(100% - 58px); margin-right: 0; }
	.dokument-btn { width: 100%; margin-left: 58px; }
	.home-sponsors { padding: 38px 0 50px; }
}

@media (max-width: 420px) {
	.dokument-file-icon { width: 42px; height: 42px; }
	.dokument-file-info { width: calc(100% - 54px); }
	.dokument-btn { margin-left: 0; }
}
