/* vars and globals ======================================== */
:root {
	/* Colors */
	--clr-yellow: #FFC300;
	--clr-blue: #003399;
	--clr-green: #006A44;
	--clr-red: #C1272D;
	--clr-black: #000000;
	--clr-gray: #808080;
	--clr-graydark: #404040;
	--clr-graylight: #D0D0D0;
	--clr-white: #ffffff;
	--clr-black00: #00000000;
	--clr-black10: #0000001A;
	--clr-black20: #00000033;
	--clr-black30: #0000004D;
	--clr-black40: #00000066;
	--clr-black50: #00000080;
	--clr-black60: #00000099;
	--clr-black70: #000000B3;
	--clr-black80: #000000CC;
	--clr-black90: #000000E6;
	--clr-white00: #ffffff00;
	--clr-white10: #ffffff1A;
	--clr-white20: #ffffff33;
	--clr-white30: #ffffff4D;
	--clr-white40: #ffffff66;
	--clr-white50: #ffffff80;
	--clr-white60: #ffffff99;
	--clr-white70: #ffffffB3;
	--clr-white80: #ffffffCC;
	--clr-white90: #ffffffE6;

	/* Typography Scale - Major Third (1.250) */
	--font-size-xs: 0.8rem;      /* 12.8px */
	--font-size-sm: 0.875rem;    /* 14px */
	--font-size-base: 1rem;      /* 16px - body text */
	--font-size-md: 1.125rem;    /* 18px */
	--font-size-lg: 1.25rem;     /* 20px - h3 */
	--font-size-xl: 1.563rem;    /* 25px - h2 */
	--font-size-2xl: 1.953rem;   /* 31.25px - h1 */
	--font-size-3xl: 2.441rem;   /* 39px - hero */

	/* Line Heights */
	--line-height-tight: 1.2;
	--line-height-base: 1.5;
	--line-height-relaxed: 1.75;

	/* Spacing Scale (based on 0.25rem / 4px) */
	--space-xs: 0.25rem;   /* 4px */
	--space-sm: 0.5rem;    /* 8px */
	--space-md: 1rem;      /* 16px */
	--space-lg: 1.5rem;    /* 24px */
	--space-xl: 2rem;      /* 32px */
	--space-2xl: 3rem;     /* 48px */
	--space-3xl: 4rem;     /* 64px */
}

* {
	font-family: "Fira Sans", Verdana, Geneva, Tahoma, sans-serif;
	font-optical-sizing: auto;
	text-rendering: optimizeSpeed;
	scrollbar-gutter: inherit;
}

html {
	scroll-behavior: smooth;
	--scroll-behavior: smooth;
	scrollbar-color: var(--clr-graylight) var(--clr-graydark);
	scrollbar-gutter: stable;
	scrollbar-width: auto;
}

/* html elements ======================================== */
body {
	background: var(--clr-black);
	color: var(--clr-white);
	font-size: var(--font-size-base);
	line-height: var(--line-height-base);
	padding: 0;
	margin: 0;
}

main {
	padding: var(--space-xl) var(--space-xl);
	margin: 0;
}

h1 {
	font-size: var(--font-size-2xl);
	line-height: var(--line-height-tight);
	color: var(--clr-yellow);
	margin: var(--space-xl) 0 var(--space-md) 0;
	padding: 0;
}

h2 {
	font-size: var(--font-size-xl);
	line-height: var(--line-height-tight);
	color: var(--clr-yellow);
	margin: var(--space-lg) 0 var(--space-sm) 0;
	padding: 0;
}

h3 {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-tight);
	color: var(--clr-yellow);
	margin: var(--space-md) 0 var(--space-sm) 0;
	padding: 0;
}

ul {
	margin: 0 0 var(--space-md) var(--space-lg);
	padding: 0;
	list-style: disc;
}

p {
	line-height: var(--line-height-base);
	margin: var(--space-md) 0;
	padding: 0;
}

a {
	color: var(--clr-yellow);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
	text-decoration-skip-ink: all;

	&:hover {
		text-decoration-thickness: 2px;
	}
}

cite {
	font-style: normal;
	text-align: left;
}

q {
	font-style: oblique;

	/* remove quotes */
	&::before,
	&::after {
		content: "";
	}
}

hr {
	margin-top: 1rem
}


/* buttons ======================================== */
button {
	cursor: pointer;
	display: inline-block;
	margin: 0;
	padding: var(--space-sm) var(--space-md);
	font-size: var(--font-size-base);
	line-height: var(--line-height-tight);
	background: inherit;
	color: var(--clr-white);
	border: 1px solid var(--clr-white);
	border-radius: 0;

	/* interaction */
	&:hover {
		background: var(--clr-yellow);
		color: var(--clr-black);
		border-color: var(--clr-yellow);

		&::before {
			background: var(--clr-black);
		}
	}

	/* primary */
	&.primary {
		color: var(--clr-yellow);
		border-color: var(--clr-yellow);

		&::before {
			background: var(--clr-yellow);
		}

		&:hover {
			background: var(--clr-yellow);
			color: var(--clr-black);
			border-color: var(--clr-yellow);

			&::before {
				background: var(--clr-black);
			}
		}
	}

	/* show button as text */
	&.text {
		border: 1px solid transparent;

		&:hover {
			border-color: var(--clr-yellow);
			color: var(--clr-black);
		}
	}

	/* show hide button text */
	&.nolabel {
		border: 1px solid transparent;

		span {
			display: none;
		}

		&::before {
			margin: 0;
		}
	}
}

/* icons ======================================== */
[class*='ico_'] {
	&::before {
		display: inline-block;
		content: '';
		height: 1em;
		width: 1em;
		vertical-align: middle;
		font-size: inherit;
		line-height: inherit;
		margin-right: 0.2rlh;
		mask-position: top left;
		box-sizing: border-box;
		mask-size: contain;
		color: inherit;
		background-color: var(--clr-white);
	}
}

/* for links */
a[class*='ico_'] {
	&::before {
		background: var(--clr-yellow);
	}
}

/* alignment for buttons */
button[class*='ico_'] {
	&::before {
		vertical-align: bottom;
	}
}

/* helpers ======================================== */
.grids {
	display: flex;
	column-gap: var(--space-md);

	.col {
		flex: 1;
		align-self: start;
	}

	.right {
		text-align: right;
	}
}

.page_head {
	padding-bottom: var(--space-md);
	margin-bottom: var(--space-md);
	border-bottom: 1px solid var(--clr-white80);
}

/* global loader ======================================== */
.loader {
	display: flex;
	align-items: center;

	&::before {
		display: inline-block;
		content: '';
		width: var(--space-md);
		height: var(--space-md);
		margin: 0 var(--space-md) 0 0;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='m29 8.3-2.5 1.5c1.1 1.8 1.6 3.9 1.6 6.2 0 6.9-5.3 12.2-12.1 12.2-6.9 0-12.1-5.3-12.1-12.2S9.1 3.8 16 3.8V1C7.5 1 1 7.5 1 16s6.5 15 15 15 15-6.5 15-15c0-2.9-.7-5.5-2-7.7' /%3E%3C/svg%3E");
		mask-size: cover;
		background-color: var(--clr-yellow);
		transform-origin: center center;
		animation: loader_rotation 3s infinite linear;
	}

	@keyframes loader_rotation {
		0% {
			transform: rotate(0deg) scale(0.1);
		}

		50% {
			transform: rotate(180deg) scale(2);
		}

		100% {
			transform: rotate(360deg) scale(0.1);
		}
	}

}

/* global popovers ======================================== */

/* body view when popover is opened */
body:has(.sidebar[popover]:popover-open) {
	overflow: hidden;
	filter: blur(2px) grayscale(1);
}

.sidebar[popover]:popover-open::backdrop {
	transition: 0.2s ease-out;
	/* opacity: 0.1; */
}

/* icons ======================================== */
.ico_collection::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M5.5 26H26V5.4h-2.4v18.2H5.5zM1 21.1h20V1H1zM9.8 31H31V9.7h-2.4v18.9H9.8z' /%3E%3C/svg%3E");
}

.ico_info::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M16 31c8.5 0 15-6.5 15-15S24.5 1 16 1 1 7.5 1 16s6.5 15 15 15m-2.2-5.5V12.7h4.4v12.9h-4.4zM16 10c-1.7 0-2.7-.9-2.7-2.4s1-2.4 2.7-2.4 2.7.9 2.7 2.4-1 2.4-2.7 2.4' /%3E%3C/svg%3E");
}

.ico_close::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='m30 4.6-2.8-2.8L2 27.4l2.8 2.8zM4.8 1.8 1.9 4.7l25.2 25.5 2.9-2.9z' /%3E%3C/svg%3E");
}

.ico_loading::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='m29 8.3-2.5 1.5c1.1 1.8 1.6 3.9 1.6 6.2 0 6.9-5.3 12.2-12.1 12.2-6.9 0-12.1-5.3-12.1-12.2S9.1 3.8 16 3.8V1C7.5 1 1 7.5 1 16s6.5 15 15 15 15-6.5 15-15c0-2.9-.7-5.5-2-7.7' /%3E%3C/svg%3E");
}

.ico_world::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M16 31c8.5 0 15-6.5 15-15S24.5 1 16 1 1 7.5 1 16s6.5 15 15 15M13.4 5.1l-.6.3-.1.5.5-.2zm-.2.9 1.1-.2-.2-.2.1-.3v-.5l.2-.5-.6.3v.5l-.2.2.1.2zm9.7 13.3-.2.1-.1.1-.5.6-.6.3-.1.1-.1.1v.9l-.3.7v.4l.2.2h.3l.3-.2.2-.5.7-1.4.2-.9.1-.1v-.1c0-.1.2-.1.2-.2h.2l-.3-.2zm-6.7-15-.2.1-.3.1c-.2.1-.6.3-.4.5.1.1.2.1.3.2 0 0 .1 0 .2.1s.2.1.2.2h-.5l-.2.1H15c-.5.3-.2.4-.8.6-.1 0-1 .2-1 .2l-.1.6s-.8-.2-1.1-.2c-.4 0-.5.2-.5.7 0 .1-.1.5 0 .6.2.2.6.3.7.3.3 0 .6-.2.8-.5.2-.2.2-.4.4-.5l.3-.1c.1 0 .5 0 .5-.2.1-.1.2-.1.3-.2h.7l1.1 1.4.5-.2-.6-1.1 1.4 1.1.4-.4s1.5.4 1.9.8c.6.5-1.1 1-1.1 1s-1.3-.4-1.3-.5c-.1 0-.4.3-.4.3s0 .1-.1.1l-2.7-1s-3.6 1.5-3.9 1.6c-.1.1-.2.1-.3.2-.8.6-1 1.5-1.2 2.5 0 0 0 .1-.1.1v.7h.1c.1.1.3.5.3.6.5 1.5 2.2 1.4 3.5.9.1 0 .2-.1.3-.1s.2 0 .3-.1c.2 0 .4.1.4.1v.1l.1.1v.1l.1.1h.3c.2 0 .3.1.5.3.2.5-.2 1.1.3 1.5l.2.2.2.3c.2.2.3.5.3.7s.1.4.1.4c0 .1.1.3 0 .3v.2c-.3.4-.5.8-.5 1.3.3.7.9 1.4.9 2.1v.1c0 .1.1.2.1.2s.1 0 .1.1h.1l.1.2.2.3c0 .1.1.2.1.3v.4s.1.1.1.2l.1.1h.5l.1-.1s.3-.1.6-.1l3.2-3.9.2-.3c.3-.6.5-1.2.5-1.8v-.2c-.4-1.3.7-2 1.9-2.6l.1-.2c.1-.3.2-.5.3-.8 0-.1 0-.2.1-.3.2-.2.2-.5.2-.6-.4.2-.7.1-1.1.2-.1.1-.2.1-.2.1 0-.1-.2-.1-.2-.1s-.2-.1-.3-.2-.2-.2-.3-.2c0 0-.2-.3-.2-.4l-.2-.2c-.3-.3-.4-.6-.6-.9-.3-.3-.5-.7-.8-1.1l-.2-.3-.2-.2c-.1-.2-.2-.2-.3-.3 0-.1 0-.1.1-.2.4-.2.3.4.5.3l.2.2c.1.1.1.2.2.2.1.2.2.2.2.3l.9 1.2.2.2.1.3c.2 1.1 1.4.5 2.1.3.4-.2.8-.4.9-.8.2-.8-.7-1.1-1.2-1.6l-1.3-.9c.3 0 .5.2.8.3.1.1.2.1.3.2.6.3 1.2.5 2 .4q.15 0 .3.3v.6l.2-.3c.1-.1.2-.2.2-.3.2-.5.2-1 .1-1.5 1.2 1.9 2 4.2 2 6.8 0 7-5.4 12.4-12.4 12.4-3.9 0-7.3-1.6-9.5-4.3v-3.3c.2-.7.6-1.4.7-2.1l.1-.2c.1-.2.2-.3.2-.5v-.7s-.1-.1-.1-.2c0 0-.2-.2-.4-.3l-2.3-2.2-.9-1.4C5 7.7 9.9 3.6 16 3.6c.6 0 1.2 0 1.9.2z' /%3E%3C/svg%3E");
}

.ico_love::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M30.7 10.9c0-4.4-2.9-7.8-7.4-7.8-2.8 0-5.3.8-7.3 4-2-3.2-4.5-4-7.3-4-4.5 0-7.4 3.4-7.4 7.8C1.3 16.1 6.2 22 16 28.8c9.8-6.7 14.7-12.6 14.7-17.9m-7.4-5.1c2.9 0 4.8 2.3 4.8 5.2 0 4.1-4 8.9-12.1 14.7C7.9 19.8 3.9 15 3.9 10.9c0-2.9 1.9-5.2 4.8-5.2 2.2 0 4.1 1.1 5.7 3.4.6.8 1.1 1.1 1.6 1.1s1.1-.3 1.6-1.1c1.5-2.2 3.3-3.3 5.7-3.3' /%3E%3C/svg%3E");
}

.ico_love_filled::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M30.7 10.9c0-4.4-2.9-7.8-7.4-7.8-2.8 0-5.3.8-7.3 4-2-3.2-4.5-4-7.3-4-4.5 0-7.4 3.4-7.4 7.8C1.3 16.1 6.2 22 16 28.8c9.8-6.7 14.7-12.6 14.7-17.9' /%3E%3C/svg%3E");
}

.ico_view::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M16 25.9c6.5 0 11.6-3.6 14.9-9.9-3.2-6.1-8.3-9.9-14.9-9.9C9.5 6.1 4.4 9.8 1.1 16c3.3 6.2 8.3 9.9 14.9 9.9m0-2.6c-5.5 0-9.8-3.3-12.6-8.3v2.1c2.7-5 7.1-8.3 12.6-8.3s9.9 3.4 12.6 8.3V15c-2.8 5-7.1 8.3-12.6 8.3m0-1.8c3.1 0 5.5-2.4 5.5-5.5s-2.4-5.5-5.5-5.5-5.5 2.4-5.5 5.5 2.4 5.5 5.5 5.5m1.2-5.7c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5' /%3E%3C/svg%3E");
}

.ico_external_link::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M21.9 16.9v11.5H3.7V10.2h11.1V7.6H1V31h23.6V16.9zM18 1v2.6h10.2l-.5-1.1L11 19l1.9 1.9L29.6 4.3l-1.2-.5V14H31V1z' /%3E%3C/svg%3E");
}

.ico_person::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M16 19.9c4.9 0 8.6-3.7 8.6-8.6 0-5.1-3.7-8.8-8.6-8.8-5.1 0-8.7 3.7-8.7 8.8 0 4.9 3.6 8.6 8.7 8.6m0 2.5c-4.9 0-10.9 2.3-12.6 7.6h25.2c-1.7-5.3-7.7-7.6-12.6-7.6' /%3E%3C/svg%3E");
}


.ico_chevron_right::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M21.6 14.3 5.5 31h6.4l14.6-15L11.9 1H5.5l16.1 16.7z' /%3E%3C/svg%3E");
}

.ico_chevron_left::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M10.4 14.3 26.5 31h-6.4L5.5 16 20.1 1h6.4L10.4 17.7z' /%3E%3C/svg%3E");
}

.ico_grow::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='m13.1 20.3-1.4-1.4-7.8 7.7v-6.5h-2V30h9.9v-2H5.4zM20.2 2v2h6.4l-7.7 7.7 1.4 1.4 7.8-7.7v6.5h2V2z' /%3E%3C/svg%3E");
}

.ico_shrink::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M30.1 3.4 28.6 2l-7.7 7.7V3.3h-2v9.8h9.9v-1.9h-6.5zM3.2 18.9v1.9h6.5l-7.8 7.8L3.4 30l7.7-7.7v6.4h2v-9.8z' /%3E%3C/svg%3E");
}

.ico_play::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M29 16 5.8 1v30z' /%3E%3C/svg%3E");
}

.ico_pause::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.0.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M7 3h6v26H7zm12 0h6v26h-6z' /%3E%3C/svg%3E");
}

.ico_pictures::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='m15.4 21-2.1-5.4-4 4.7zm1.8-8.5c0 .9-.7 1.7-1.6 1.7s-1.7-.8-1.7-1.7.8-1.7 1.6-1.7c1 .1 1.7.8 1.7 1.7m-.2 7.8 4.9.5-2.3-7.3-4.1 3.1zM4.9 7.6l23.5 2.3L27 24.5 3.5 22.2zm24.2 19.3 1.8-19.1-28-2.7-1.8 19.1zM3.7 9.3l-3.7 1 2.3 8.8zm24.9-.8-1.4-5.3L13 6.9zm-.3 14.2 3.7-1-2.5-9.6zm-24.9.5 1.4 5.6 15.4-4z' /%3E%3C/svg%3E");
}

.ico_time::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='m20.5 23.1.9-1.2-4.5-3.6-.6-6.7h-1.5l-.6 8.3zm-5-17.5c-1 0-1.5-.7-1.5-1.5s.6-1.5 1.7-1.5 1.7.7 1.7 1.5-.6 1.5-1.5 1.5zm-2.1 1h4.4c1.1-.7 1.5-1.6 1.5-2.7 0-1.6-1.3-3.4-3.7-3.4s-3.7 1.8-3.7 3.4q0 1.65 1.5 2.7m12.5 6.2 3.3-3.3L25.7 6l-3.3 3.3zM2.7 18.6c0 7.3 5.4 12.9 12.9 12.9 7.6 0 12.9-5.4 12.9-12.9s-5.3-13-12.9-13c-7.5 0-12.9 5.6-12.9 13m23.1 0c0 6-4.2 10.3-10.2 10.3S5.4 24.6 5.4 18.6 9.7 8.3 15.6 8.3s10.2 4.2 10.2 10.3' /%3E%3C/svg%3E");
}

.ico_chevron_down::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M17.7 22.6.9 4.2v6.7L16 27.8 31.1 11V4.3L14.3 22.6zm0 0L.9 4.2v6.7L16 27.8 31.1 11V4.3L14.3 22.6z' /%3E%3C/svg%3E");
}

.ico_location::before {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3E%3Cpath d='M12.3 11c0 2.1 1.7 3.7 3.7 3.7s3.7-1.7 3.7-3.7-1.6-3.7-3.7-3.7S12.3 9 12.3 11m2.9 20c-3-4.4-5.6-8.5-7.3-12.1-1.5-3-2.1-5.6-2.1-7.9C5.7 5.5 10.1 1 16 1s10.3 4.6 10.3 10c0 2.3-.7 4.9-2.1 7.9-1.7 3.6-4.3 7.7-7.3 12.1z' /%3E%3C/svg%3E");
}

/*
.ico_lkt_lt::before {
	mask-image: var(--svg-lkt-lt);
}

.ico_lkt_en::before {
	mask-image: var(--svg-lkt-en);
}

.ico_lkt_lpa_lt::before {
	mask-image: var(--svg-lkt-lpa-lt);
}

.ico_lkt_lpa_en::before {
	mask-image: var(--svg-lkt-lpa-en);
	height: 2rem;
}

.ico_facebook::before {
	mask-image: var(--svg-facebook);
}

.ico_instagram::before {
	mask-image: var(--svg-instagram);
}

.ico_youtube::before {
	mask-image: var(--svg-youtube);
} */