/* ===== GLOBALS ========================= */
:root {
	/* primary colors with blends*/
	--clr-red: #c61213;
	--clr-red00: #c6121300;
	--clr-red10: #c6121310;
	--clr-red20: #c6121320;
	--clr-red30: #c6121330;
	--clr-red40: #c6121340;
	--clr-red50: #c6121350;
	--clr-red60: #c6121360;
	--clr-red70: #c6121370;
	--clr-red80: #c6121380;
	--clr-red90: #c6121390;

	/* utility colors */
	--clr-yellow: #FFC300;
	--clr-blue: #003399;
	--clr-green: #006A44;

	/* blends for white and black  */
	--clr-gray: #808080;
	--clr-graydark: #404040;
	--clr-graylight: #C0C0C0;

	--clr-black: #000000;
	--clr-black00: #00000000;
	--clr-black10: #00000010;
	--clr-black20: #00000020;
	--clr-black30: #00000030;
	--clr-black40: #00000040;
	--clr-black50: #00000050;
	--clr-black60: #00000060;
	--clr-black70: #00000070;
	--clr-black80: #00000080;
	--clr-black90: #00000090;

	--clr-white: #ffffff;
	--clr-white00: #ffffff00;
	--clr-white10: #ffffff10;
	--clr-white20: #ffffff20;
	--clr-white30: #ffffff30;
	--clr-white40: #ffffff40;
	--clr-white50: #ffffff50;
	--clr-white60: #ffffff60;
	--clr-white70: #ffffff70;
	--clr-white80: #ffffff80;
	--clr-white90: #ffffff90;
}

/* latin */
@font-face {
	font-family: 'Nunito';
	font-style: normal;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofINeaBTMnFcQ.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {

	font-family: 'Nunito';
	font-style: italic;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaNRs7nczIHNHI.woff2) format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@layer default {
	* {
		font-family: "Nunito", sans-serif;
		/* font-weight: auto; */
		/* font-style: auto; */
		/* font-size: inherit; */
		font-optical-sizing: auto;
		outline-color: var(--clr-red);
	}

	html {
		--scroll-behavior: smooth;
		scroll-behavior: smooth;
	}

	/* ===== ELEMENTS ========================= */
	body {
		background: var(--clr-white);
		color: var(--clr-black);
		margin: 0;
		padding: 1rem;
		font-weight: 300;
		font-size: 1em;
		line-height: 1.5em;
		--scroll-behavior: smooth;
		scroll-behavior: smooth;
		scrollbar-gutter: stable both-edges;
		scrollbar-width: 1rem;
	}

	p {
		margin: 0;
		padding-bottom: 1rlh;
		font-size: 1em;
		line-height: 1.5em;

	}

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

		&:hover,
		&:active,
		&:focus {
			background: var(--clr-red);
			color: var(--clr-white);
			text-decoration: none;
		}
	}

	cite,
	q,
	em {
		font-style: oblique;
		font-weight: 300;
	}

	abbr {
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-decoration-skip-ink: all;
		text-decoration-style: dotted;
		text-underline-offset: 3px;
		/* color: var(--clr-black); */
	}

	button {
		background: transparent;
		border: 1px solid var(--clr-red);
	}





	/* ===== HELPERS ========================= */
	.hidden {
		display: none;
		visibility: hidden;
		opacity: 0;
	}

	.test {
		background: lightyellow;
		border: 1px solid lightcoral;

		* {
			background: lightyellow;
			border: 1px solid lightcoral;
		}
	}
}

/* ===== LAYOUTS AND PRIORITIES ========================= */
@layer reset, default, small_screens, medium_screens, big_screens;

/* ===== Default small screens (< 400px) ========================= */
@layer small_screens {
	body {
		padding: 0;
		min-width: 300px;
	}

	button {
		background: transparent;
		border: 1px solid transparent;
		cursor: pointer;
	}

	.container {
		margin: 0;
		padding: 0;
	}

	/* HEADER */
	header {
		position: sticky;
		top: 0;
		left: 0;
		z-index: 1000;
		margin: 0;
		padding: 0.8rem 1rem;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		background: var(--clr-white);
		border-bottom: 1px solid var(--clr-graylight);

		/* navigation block */
		nav {
			display: contents;
		}

		/* logo block  */
		#logo {
			display: block;
			height: 3rem;
			aspect-ratio: 3/4;
			margin: 0 1rem 0 0;
			padding: 0;
			background-image: url('nrb-logo.svg');
			background-repeat: no-repeat;
			background-position: cover;

			span {
				display: none;
			}

		}

		/* nav */
		ul {
			margin: 0;
			padding: 0;
			list-style: none;
			display: flex;
			justify-content: flex-end;
			align-items: flex-start;
			align-content: space-evenly;
			flex-wrap: wrap;
			column-gap: 1rem;

			a {
				text-decoration: none;
			}

		}

	}

	/* CONTENT */
	main {
		display: block;
		margin: 0;
		padding: 0 1rem;
	}

	/* intro block */
	section.intro {
		margin: 0;
		padding: 1rem 0 2rem 0;

		.content {
			display: block;
			margin: 0;
			padding: 0;
			height: 3lh;
			overflow: hidden;
			scrollbar-width: none;
			text-overflow: ellipsis ' [...]';
			background: linear-gradient(0deg, var(--clr-white) 0%, var(--clr-black) 100%);
			background-clip: text;
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;

			p {
				text-wrap-style: pretty;
			}
		}

		label {
			font-weight: 100;
			display: block;
			width: 100%;
			text-align: center;
			color: var(--clr-red);
			text-decoration: underline;
			text-decoration-thickness: 1px;
			text-decoration-skip-ink: all;
			text-decoration-style: dotted;
			text-underline-offset: 3px;

			&::before {
				content: 'More';
			}
		}

		#toggler {
			&:checked~.content {
				height: fit-content;
				background: none;
				background-clip: initial;
				-webkit-background-clip: initial;
				-webkit-text-fill-color: var(--clr-black);
			}
		}

		#toggler:checked~label::before {
			content: 'Less';
		}
	}

	/* catalog */
	section.catalog {
		&>ul {
			list-style: none;
			margin: 0;
			padding: 0;
			width: 100%;
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: space-between;
			row-gap: 2rem;
			column-gap: 1rem;

			&>li {
				width: calc(50% - 0.6rem);
				margin: 0;
				padding: 0;
			}
		}
	}

	/* details: description, media and metadata */
	article.book_details {
		position: fixed;
		max-height: 90vh;
		max-width: 90vw;
		margin: auto;
		padding: 0;
		overflow: hidden;
		border: 1px solid var(--clr-graylight);

		&::backdrop {
			opacity: 0.8;
			pointer-events: none;
		}

		/* popover header */
		.header {
			position: sticky;
			top: 0;
			margin: 0;
			padding: 1rem 1rem;
			display: flex;
			flex-direction: row;
			align-items: flex-start;
			justify-content: space-between;
			background: var(--clr-white);
			border-bottom: 1px solid var(--clr-graylight);

			h2 {
				/* font-size: 0.8rem; */
				font-weight: 700;
				line-height: 1.4em;

				&.soldout::after {
					content: 'sold out';
					display: inline-block;
					color: var(--clr-red);
					vertical-align: super;
					padding: 0 0.1rem;
					font-weight: 100;
					line-height: 1em;
				}
			}
		}

		/* popover content */
		.content {
			margin: 0;
			padding: 1rem;
			max-height: 80vh;
			overflow-y: scroll;

			/* content elements */
			iframe {
				border: 2px solid var(--clr-red);
				margin: 0 0 1rlh 0;
				padding: 0;
				width: 100%;
				min-height: 40vh;
				display: block;
			}

			img {
				max-inline-size: 100%;
				display: block;
				margin: 0 0 1rem 0;
				padding: 0;
			}
		}

		/* book metadata  */
		ul.metadata {
			margin: 0;
			padding: 2rem 0 4rem 0;
			list-style: none;
			display: flex;
			flex-direction: column;

			li {
				display: inline-block;
				padding-bottom: 0.8rem;
				flex-grow: 1;
			}

			i {
				display: block;
				color: var(--clr-black90);
			}
		}

		/* popover footer */
		.footer {
			position: sticky;
			bottom: 0;
			margin: 0;
			padding: 1rem;
			display: flex;
			flex-direction: row;
			gap: 2rem;
			justify-content: space-between;
			background: var(--clr-white);
			border-top: 1px solid var(--clr-graylight);
		}

		/* buttons */
		button {
			white-space: nowrap;
			border: none;
			font-size: 0.8rem;
			display: inline-block;

			span {
				display: none;
			}

			&:has(span) {
				margin-left: 2rem;
				margin-right: -0.4rem;
			}
		}
	}

	/* footer */
	footer {
		display: block;
		margin: 3rem 0 0 0;
		/* background: red; */
		padding: 2rem 0.8rem;

		display: flex;
		flex-direction: column;
		row-gap: 1rlh;
		justify-content: space-between;

		border-top: 1px solid var(--clr-graylight);

		p {
			text-align: center;
			text-wrap-style: stable;
			margin: 0;
			padding: 0;

			&:last-child {
				text-align: center;
			}
		}

		/* animation egs */
		.ico_logo:hover {
			display: inline-block;
			animation: pulse 1s infinite;
			transform: scale(1.5);
		}
	}
}

/* ===== Mobile, tablets, laptops screens ========================= */
@layer medium_screens {

	/* @media (min-width: 400px) and (max-width: 799px) { */
	@media (min-width: 400px) {
		header {
			padding: 1rem;

			#logo {
				vertical-align: text-bottom;
				/* width: fit-content; */
				height: 80px;
				margin: 0 1rem -2rem 0;
				background-image: url('nrb-logotype.svg');
				background-repeat: no-repeat;

				span {
					display: none;
				}
			}
		}

		/* cover-thumb with title */
		button.book_cover {
			img {
				max-inline-size: 100%;
				transform: scale(0.9);
				transition: all 0.4s ease-out;
			}

			&:hover {
				img {
					transform: scale(1);
				}
			}
		}

		/* details: description, media and metadata */
		article.book_details {
			max-height: 90vh;
			max-width: 70ch;
		}

		/* popover content */
		.content {
			margin: 0;
			padding: 1rem;
			max-height: 80vh;
			overflow-y: scroll;

			/* content elements */
			iframe {
				border: 2px solid var(--clr-red);
				margin: 0 0 1rlh 0;
				padding: 0;
				width: 100%;
				min-height: 40vh;
				display: block;
			}

			figure {
				display: block;
				margin: 0 0 1rem 0;
				padding: 0;
			}
		}

		/* book metadata  */
		.metadata {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			column-gap: 1rem;
			row-gap: 1.6rem;

			li {
				flex-grow: 1;
				display: inline-block;
				width: calc(40% - 1rem);
				margin: 0;
				padding-bottom: 0.8rem;
			}

			i {
				display: block;
				margin-right: 0.2rem;
			}
		}

		/* footer */
		footer {
			display: block;
			margin: 3rem 0 0 0;
			padding: 2rem 0.8rem;
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			row-gap: 1rlh;
			/* column-gap: 2rlh; */

			border-top: 1px solid var(--clr-graylight);

			p {
				text-align: left;
				width: calc(50% - 1rlh);
				margin: 0;
				padding: 0;

				&:last-child {
					margin-top: 1rlh;
					flex-grow: 1;
					text-align: center;
				}
			}
		}
	}
}

/* ===== Big screens ========================= */
@layer big_screens {
	@media (min-width: 800px) {

		/* intro block */
		section.intro {
			margin: 0;
			padding: 2rem 0 2rem 0;

			.content {
				display: flex;
				margin: 0;
				padding: 0;
				flex-direction: row;
				gap: 2rem;
				height: auto;
				overflow: auto;
				background: none;
				background-clip: none;
				-webkit-background-clip: none;
				-webkit-text-fill-color: var(--clr-black);

				p {
					text-wrap-style: pretty;
					max-width: 65ch;
				}
			}

			label {
				display: none;
			}
		}

		/* catalog */
		section.catalog {
			>ul {
				list-style: none;
				margin: 0;
				padding: 0;
				width: 100%;
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				justify-content: space-between;
				row-gap: 2rem;
				column-gap: 1rem;

				li {
					width: calc(30% - 0.6rem);
					margin: 0;
					padding: 0;
				}
			}
		}

		/* book metadata  */
		.metadata {
			margin: 0 0 3rem 0;
			padding: 0;
			display: flex;
			flex-direction: row;
			gap: 2rem;
			flex-wrap: wrap;
			list-style: none;

			li {
				flex-grow: 1;
				display: inline-block;
			}

			i {
				display: block;
				color: var(--clr-black90);
			}
		}
	}
}


/* ===== POPUPS SETTING ========================= */
[popover] {
	opacity: 0;
	pointer-events: all;
	/* transition:
		opacity 0.5s,
		translate 0.5s,
		overlay 0.5s allow-discrete,
		display 0.5s allow-discrete; */

	&::backdrop {
		/* opacity: 0.6; */
	}

	&:popover-open {
		opacity: 1;
	}
}

body:has([popover]:popover-open) {
	opacity: 0.6;
	filter: blur(2px) invert(1) grayscale(1);
	/* transition:
		opacity 0.2s,
		translate 0.2s,
		overlay 0.2s allow-discrete,
		display 0.2s allow-discrete; */

	/* disable scrolling */
	overflow: hidden;
	background: var(--clr-black);
	pointer-events: none;
}

@starting-style {
	[popover]:popover-open {
		opacity: 0;
		/* transition:
			opacity 0.2s,
			translate 0.2s,
			overlay 0.2s allow-discrete,
			display 0.2s allow-discrete; */
	}
}


/* ===== ANIMATIONS ========================= */
@keyframes pulse {
	0% {
		transform: scale(0.8);
	}

	70% {
		transform: scale(1);
	}

	100% {
		transform: scale(0.8);
	}
}

/* ===== ICONS ========================= */
[class*='ico_'] {
	position: relative;

	&:hover {
		color: var(--clr-red);
	}

	&::before,
	&::after {
		content: '';
		display: inline-block;
		height: 1.2em;
		width: 1.2em;
		margin-right: 0.2em;
		vertical-align: middle;
		mask-size: 90% 90%;
		mask-repeat: no-repeat;
		background-color: var(--clr-black);
		opacity: 0.8;
	}

	&::after {
		margin-right: 0;
		margin-left: 0.2em;
	}

	&:hover::after,
	&:hover::before {
		background: var(--clr-red);
		opacity: 1;
	}
}

.ico_none {
	display: inline-block;
	height: 1.2em;
	width: 1.2em;
	cursor: default;
	pointer-events: none;
	outline: none;

	&::after {
		content: none;
	}

	&::before {
		content: none;
	}
}

.ico_logo {
	&::after {
		content: none;
	}

	&::before {
		background-color: var(--clr-red);
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 61.5 81.12'%3E%3Cpath d='m33.43 80.31 3.4-.14c-1.27-.24-2.44-.76-3.47-1.77l.07 1.91ZM19.03 1.19l-2.95.12.08 2.21s.31-1.41 2.86-2.33Z'/%3E%3Cpath d='M26.41 7.38s-.74-3.51-4.35-3.34c-4.14.19-5.71 4.44-5.71 4.44l.62 16.62-4.08.17L12 1.48l-.47.02C4.93 1.79-.25 7.75 0 14.75l1.24 33.03c.54 6.78 1.34 14.32 1.64 14.48.26.2.33.68.09 1.06-.47.92-.63 3.22-.24 4.16.17.58.42.46.98-.47.43-.66.59-1.57.42-2.04-.22-.42-.09-1.17.19-1.6.43-.6.31-1.02-.57-1.89-1.25-1.38-1.5-2.7-.39-2.27.46.14.99-.31 1.41-1.23.7-1.41.7-1.46.79-.25.03.8.4 1.37 1.06 1.5 1.01.22 1.16 1.55.15 1.38-.25-.04-.59.4-.71.99-.17.8-.06 1.01.48.78.79-.35 1.06 1.5.28 2.06-.88.62-.42 2.2 1.09 3.62 1.5 1.42 2.6 1.38 2.55-.11-.02-.42-.68-.87-1.54-1-.81-.18-1.52-.52-1.53-.79-.02-.53 1.48-.43 3.16.24.76.29.86.12.7-1.25-.15-1.22-.46-1.68-1.37-1.91-1.16-.27-1.22-.48-1.05-2.61.22-2.03.05-2.55-1.2-3.88-1.41-1.64-2.68-2.07-2.64-.9.05 1.22-.91-.28-1.33-2.12-.42-1.74-.37-1.74.9-1.47 1.21.27 1.31.16 1.25-1.28-.07-1.86.65-2.58 1.74-1.67.52.4.75 1.24.64 2.26-.11 1.12.23 2.22 1.03 3.36 1 1.39 1.13 2.08.83 3.37-.3 1.39-.13 1.92.92 3.15.73.82 1.32 1.86 1.34 2.28.02.42.53.72 1.28.69 1.35-.06 1.68.67.65 1.41-1.12.84-2.26 5.14-1.27 4.94.2-.06.85-.09 1.5-.06 1.4 0 .99 1.07-.41 1.13-1.15.05-1.25 1.38-.08 1.81.41.14.62.51.48.83-.56 1.03-1.48.59-2.19-.97-.76-1.56-2.97-3.06-4.47-3-.4.02-.77-.39-.79-.98-.05-1.27-2.12-1.82-2.83-.73-.28.44-.82.83-1.12.84-.18 0-.29.1-.36.27L1.24 47.77l.79 21.1c.26 7 5.87 12.51 12.47 12.23l14.68-.62-2.73-73.1h-.04ZM4.76 36.82c.25-.01.56.19.67.5.11.31-.18.59-.63.61-.45.02-.76-.23-.67-.56s.38-.55.63-.56Zm1.38 10.85c-.3.12-.93.68-1.31 1.22-1.72 2.3-2.62.75-2.51-4.25.04-1.65.36-3.74.73-4.55q.69-1.57 1.35 0c.33.84.53 2.1.35 2.75-.17.86 0 1.22.5 1.2.85-.04 1.67 3.28.89 3.63Zm1.27 23.85c-.29.17-.7.08-.86-.23-.53-.77.1-1.33.78-.67.36.36.38.68.08.9Zm2.77 5.39c-1.55.07-1.67-.51-.37-1.84.53-.55.97-.73.99-.41.01.32.18.9.35 1.37.27.63.03.85-.97.89Zm8.1-10.02c.28-.6.71-1.09.96-1.1.7-.03.63.72-.04 1.49-.91 1.05-1.47.81-.92-.39Zm-3.17 1.94c-.65.03-.3-1.21.44-1.51.35-.12.5.08.32.62-.13.48-.52.87-.77.88Zm4.56 4.46c-.25 1.23-.4 2.78-.45 5.33-.06 1.12-2.22.78-3.17-.56-1.1-1.44-1.22-1.86-.31-1.53.61.19 3.16-2.37 2.89-2.89-.27-.41.43-1.83.88-1.84.3-.01.37.57.16 1.48Zm.05-11c-.4.02-.76-.18-.77-.5 0-.27.33-.55.73-.56.4-.02.76.23.77.5.01.32-.33.55-.73.56Zm5.93 7.29c-.27.86-.96 1.05-1.88.5-.56-.35-.62-.61-.19-1.11.67-.77 2.29-.31 2.07.6ZM44.73 68.21c-.19-5.15-3.14-9.21-6.58-9.06-3.44.15-5.81 4.43-5.61 9.58.19 5.15 2.97 8.22 6.41 8.08 3.44-.15 5.98-3.44 5.78-8.59Zm-3.47 5.29c-1.4 1.49-2.29 1.59-2.34.21-.02-.58.31-1.08.71-1.09 1-.04.91-1.1-.17-1.85-.77-.61-.68-.66.98-.68 1.55-.01 1.86.19 1.89 1.09.02.64-.44 1.67-1.06 2.33Z'/%3E%3Cpath d='M59.46 12.24C59.2 5.23 53.59-.27 46.99.01L26.43.88C30.37 2.39 30.7 7.2 30.7 7.2l.71 18.87.02.46c.22-.41 1.37-2.52 2.62-3.15 1.23-.63 4.02-.25 5.45.78q-.15 1.28-.99 3.82c-6.21-2.59-6.85 4.91-6.85 4.91l.96 25.73c1.6-1.83 3.67-2.97 5.97-3.07 5.35-.23 9.9 5.28 10.16 12.3.23 6.07-2.85 10.81-7.14 12.12l8.37-.35c6.59-.28 11.78-6.24 11.51-13.24l-2.03-54.13Zm-1.66 5.91c.02.42-.17.8-.47.82-.25.01-.51-.35-.53-.77-.02-.42.22-.81.47-.82.3-.01.51.35.53.77Zm-1.66 7.56q1.15 1.23.15 1.27c-.7.03-1.18.58-1.54 1.66-.44 1.56-.97 2.17-1.01 1.11 0-.27-.57-.51-1.27-.48-.7.03-1.26-.21-1.27-.48-.01-.32.51-1.19 1.18-1.96s1.2-1.49 1.19-1.59-.58-.83-1.31-1.59c-1.46-1.59-1.7-2.53-.61-3.06.39-.18.72-.83.7-1.41-.03-.74.31-1.08 1.01-1.11.75-.03.94-.25.72-.88-.17-.47-.19-1.05-.05-1.38.38-.65 1.8 2.63 2.25 5.22.18.9.51 1.68.76 1.67s.46.19.47.46-.39.39-.94.25c-1.51-.36-1.72.92-.41 2.3Zm.53 7.63c.4-.02.56.3.43.78-.18.43-.57.82-.97.84-.4.02-.56-.3-.43-.78.18-.43.57-.82.97-.84Zm-2.82-.46c-2.3 1.48-3.96 1.23-2.27-.38.39-.34.62-.93.56-1.19-.06-.32.17-.7.52-.82.54-.24.6-.08.18.84-.46.98-.41 1.13.59 1.09.9.02 1.01.12.42.46Zm.54 14.38c.3-.01.51.35.53.77.02.42-.17.8-.47.82-.25.01-.51-.35-.53-.77-.02-.42.22-.81.47-.82ZM50.21 29.1c.31.15.52.51.53.83.05 1.22-1.59.39-2.3-1.18-1.04-2.4-2.17-3.26-3.09-2.37-.92.89.21 2.81 1.49 2.38.45-.13.85-.04.86.23.03.85-2.33.63-3.46-.28-.73-.66-1-1.29-.83-2.09.34-1.61 1.43-1.97 3.26-1.04 1.68.83 2.92.57 2.88-.71-.04-1.06 1.26-1.06 1.7-.02q.44 1.1-.65 1.46c-1.04.31-1.32 2.23-.4 2.78Zm.21 5.63c.04 1.01-1.93.51-2.73-.74-.85-1.24-.8-1.35.11-2.5q.96-1.21 1.01.17c.03.74.41 1.63.82 1.98.41.35.78.82.79 1.08Zm-8.3-18.5c.38-.44 1.31.37 1.34 1.17.02.42-.17.75-.42.76-.5.02-1.26-1.54-.92-1.93Zm.06 8.37c-.43.5-1.03.47-1.35-.1-.16-.26.03-.59.42-.82.74-.35 1.46.31.93.92Zm1.24-4.41c.3.09.57.4.58.67 0 .27-.23.59-.52.71-.3.12-.56-.19-.58-.67s.22-.81.52-.71Zm1.84-5.55c.09-.38.47-.82.82-.94.39-.18.6.03.47.46-.09.38-.47.82-.82.94-.39.18-.6-.03-.47-.46Zm2.35 5.27c1.2 0 1.83.88 1.58 2.22-.17.75-.59 1.67-.98 2.01-.48.5-.69.4-.97-.6-.42-1.74-.29-3.6.36-3.63Zm-.3-1.26c-.01-.37.31-1.02.7-1.41.63-.61.73-.46.78.71.03.85-.2 1.39-.7 1.41-.4.02-.76-.29-.78-.71Zm3.79-.38c.16.21.13.74-.15 1.28-.33.65-.52.71-.84.25-.43-.67.47-2.04.99-1.53ZM49.55 2.23c.34-.39.73-.56.94-.41.16.21.23.68.14 1.16-.08.59-.32.7-.89.36-.61-.35-.62-.61-.19-1.11Zm-4.64 5.51c-.03-.74.28-1.82.66-2.42.66-.98.76-.99 1.25-.16.53.88.68.87 1.8-.02 1.17-.85 1.37-.86 2.65-.11 1.23.69 1.58.68 2.3.06.87-.73.87-.78-.1-1.27-.72-.39-.77-.55-.22-.63.4-.02 1.11.22 1.52.47.67.45.48.78-.92 2.16-1.59 1.61-1.64 1.72-.7 2.58.88.81.93.81 1.98-.62 1.47-2.14 1.88-1.94 1.63.78-.15 1.44-.06 2.5.3 2.7.26.15.53.83.56 1.52.02.64-.29 1.66-.67 2.26-.66.98-.67.93-.78-.71-.06-1.49-.27-1.74-1.58-2.01-1.76-.3-2.39-.96-1.62-1.84.86-.99.6-1.46-1-1.39-1.45.06-2.02-.61-1.05-1.28.68-.51.53-1.88-.22-1.85-.9.04-1.97 2.26-1.95 4.07.05 1.22-.14 1.55-.8 1.47-.55-.08-.89.2-.87.73.02.42-.17.8-.47.82-.25.01-.51-.35-.53-.77a.802.802 0 0 0-.83-.76c-.6.03-.76-.29-.54-1.15.12-.7.23-1.87.2-2.61Zm-.36-5.56c.21.2.12.58-.17.91-.34.39-.64.4-.85.09-.37-.62.55-1.46 1.01-1Zm-2.3 4.03c1.69-1.67 2.18-1.79 1.83-.45-.17.7-.35 1.34-.4 1.35 0 .05-.54.29-1.13.47-1.33.53-1.51-.2-.3-1.37Zm-1.01 3.87c.1 0 .47.46.79 1.03.48.83.44 1.04-.21 1.07-.4.02-.77-.45-.79-1.03s.06-1.07.21-1.07Zm-6.59 5.8c-.1.11-.99.41-1.93.61q-1.73.45-.12-.53c.88-.52 1.72-.82 1.93-.61.16.15.22.42.12.53Zm1.17-3.45c-.14.32-.68.51-1.13.53-2.36-.17-3.62-.43-3.63-.86 0-.27.64-.4 1.49-.28 1.71.3 2.98-.6 2.92-2.09-.05-1.33.88-1.84 1.33-.69.17.52.7 1.35 1.12 1.87.73.82.68.87-.52.93-.7.03-1.44.33-1.58.6Zm2.88 4.77c-2.24.31-2.62-.58-.88-2.2q1.06-1 1.4.1c.34 1.1.39 1.05.89-.41.63-1.94 1.19-1.54.82.6-.2 1.39-.49 1.62-2.23 1.9Zm-.21 19.57c0-.27.43-.55.98-.57.55-.02 1.01.22 1.02.49.01.32-.43.55-.98.57-.55.02-1.01-.17-1.02-.49Zm.68 8.9c-.11-.37.41-1.13 1.19-1.64.73-.56 1.35-1.44 1.38-1.92-.02-.58.29-.33.78.71.39.94.63 2.05.5 2.53-.31.97-3.46 1.26-3.84.32Zm4.11 2.8c-.36 1.08-1.31 1.12-2.65.16-.83-.66-.88-.81-.25-1.32 1.41-1.07 3.34-.3 2.9 1.15Zm2.13-7.21c.71.24 1.28.8 1.3 1.22.02.53-.47.76-1.57.76q-1.65-.04-1.7-5.3t-1.19-4.95c-.59.18-1.53.54-2.07.78-.69.35-.84.25-.77-.5.08-.53.51-1.14.9-1.37.39-.23 1.23-.69 1.81-1.03 1.52-.91 1.47-.97 1.9 1.41.5 2.69 3.2 5.39 4.52 4.43 1.02-.73 1.69-.28 1.33.9-.36 1.08-3.01 1.19-3.85.11-.63-.66-.77-.55-1.32.96-.77 2.16-.77 2.05.7 2.58Zm4.96 35.3c-.5.13-1.3.05-1.76-.19-.82-.44-.82-.55-.06-1.54 1.05-1.37 1.4-1.33 2.11.18.49 1.04.45 1.31-.29 1.55Zm1.34-22.06c-.76 1.04-1.66 1.19-1.44.27.14-.38.62-.82 1.17-.95.79-.19.85-.09.28.68Zm-.26-12.38c-.25.01-.84.35-1.22.74-1.83 1.83-2.59 1.65-1.26-.37.33-.55.92-.84 1.18-.63.31.15.7-.08.83-.51.13-.48.47-.87.77-.88.65-.03.36 1.63-.29 1.66Zm-.29-4.98c.31-1.13 1.73-1.77 2.36-1.16.47.46.48.83 0 1.49-.43.6-.46.98 0 1.54.42.46.43.83.14 1.06-.54.39-2.73-2.17-2.51-2.92Zm3.18 14.16c-1.51 1.23-2.11.99-.92-.39.58-.66 1.21-1.01 1.42-.8.21.2-.02.74-.51 1.19Zm2.3-9.5c-.62.93-1.39 1.71-1.74 1.72-.95.04-.86-.23.82-2.16 1.82-2.1 2.38-1.85.92.44Zm-.99-4.96c-.17-.47-.19-.95-.09-1.11.43-.5 1.91.34 1.94 1.09.04 1.01-1.41 1.02-1.85.03Zm3.58-6.05c-.1.11-.79.41-1.53.65-1.14.37-1.29.27-1.08-.7.13-.64.45-1.29.7-1.46.49-.39 2.29 1.07 1.91 1.51Zm-.51-8.16c-.4.02-.76-.18-.77-.5 0-.27.33-.55.73-.56.4-.02.76.23.77.5.01.32-.33.55-.73.56Z'/%3E%3Cpath d='M46.53 9.75c.65-.08 1.14-.42 1.07-.74-.23-.79-1.82-.56-2.04.25-.13.48.18.68.97.49ZM1.25 47.78z'/%3E %3C/svg%3E");
	}
}

.ico_close {
	&::after {
		content: none;
	}

	&::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_left {
	&::after {
		content: none;
	}

	&::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_right {
	&::before {
		content: none;
	}

	&::after {
		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_external {
	&::after {
		content: none;
	}

	&::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");

	}

}