/*╭─────────────────────────────────────────────────────────╮
	│              Here is the Global settings.               │
	╰─────────────────────────────────────────────────────────╯
*/

@import "https://www.nerdfonts.com/assets/css/webfont.css";


/*╭──────────────────────────────────────────────────────────╮
	│                     APP LATIN FONTS.                     │
	╰──────────────────────────────────────────────────────────╯
*/

@font-face {
	font-family: 'Big Shoulders Stencil Display';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_3E__L3bm.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Big Shoulders Stencil Display';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_3E__L3bm.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Mitr';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/mitr/v11/pxiLypw5ucZF-Tw4MQ.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Mitr';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/mitr/v11/pxiLypw5ucZF-Tw4MQ.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Mitr';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8c8bJJfecg.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Saira Semi Condensed';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRX8MaOY.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Saira Semi Condensed';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRX8MaOY.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Saira Semi Condensed';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXf_S_MRiXk.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Saira Semi Condensed';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url(https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXe3TfMRiXk.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


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


:root {
	color-scheme: light dark;
	--font-title: clamp(5cqw, 14ch, 5rem);
	--fonts: clamp(1rem, .7cqw, 1cqw);
	--fonts: 1rem;
	--color1: #03e9f4;
	--color2: #162789;
	--color3: #FC007A;
	--color4: #FFFFFF30;
	--color5: #333;
	--color6: #00ff00;
	--color7: #6B3A00;
	--color8: #B80056;
	--color9: #141E30;
	--color10: #243B55;
	--color11: #B8005670;
	--color12: #F5DEB3;
	--box: #57420C;
	--pure-red: #FF0000;
	--light-blue1: #CCDBDC;
	--light-blue2: #9AD1D4;
	--light-blue3: #80CED7;
	--dark-blue: #00547A;
	--dark-blue1: #003852;
	--dark-blue2: #002A3D;
	--dark-blue3: #002A3D50;
	--font-weight: 600;
	--colg: 2rem;
	--colg-mobile: 1rem;
	--rowg: 2rem;
	--rowg-mobile: 1rem;
	--bord3: .3rem;
	--bord-default: 2rem;
	--mob-col: #12111385;
	--gradient: linear-gradient(270deg, var(--bg-col), var(--dark-blue2));
	--gradient1: linear-gradient(90deg, var(--bg-col), var(--dark-blue1));
	--shadow1: .3rem .3rem .6rem var(--iframes-bg),
	-.2rem -.2rem .5rem white;
	--inner-shadow1: inset .2rem .2rem .5rem var(--pressed),
	-.2rem -.2rem .5rem var(--iframes-bg);
	--inner-shadow-light: inset .1rem .1rem .5rem var(--color5),
	inset -.1rem -.1rem .5rem var(--iframes-bg);
	--inner-shadow-dark: inset .2rem .2rem .5rem var(--pressed),
	-.2rem -.2rem .5rem var(--iframes-bg);

/*╭────────────────╮
	│ 	main setup   │
	╰────────────────╯
*/
	--state: running;
	--gold: goldenrod;
	--yellow-select: #EFECBBBE;
	--hover-bg: #A39D29;
	--bg-col: #BEBBBB;
	--iframes-bg: #96979C;
	--table-line: #96979C30;
	--add-col: #0B8325;
	--measure: #2DD751;
	--result-col: #BF5E30;
	--dark: #121113;
	--back-gray: #222725;
	--menu-col: #00C2DD;
	--pressed: #77797E;
	--blueprint1: #FFFFFF80;
	--blueprint2: #FFFFFF47;
	--speed: 50s;
	--easing: cubic-bezier(.8, .2, .2, .8);
	scroll-behavior: smooth;
}


:focus::afater {
	-webkit-transform: scaleX(1);
	transform:scaleX(1);
	background:var(--gradient);
	box-shadow: var(--shadow1);
}


.light-mode {
	background-color: var(--bg-col);
	transition: all 1s linear;
	--table-font: var(--pressed);
	--table-bg: var(--light-blue1);
	--inner-shadow: var(--inner-shadow-dark);
	--input-bg: var(--bg-col);
	--input-font-col: var(--mob-col);
	--selection-bg: transparent;
	--crate-btn-col: var(--color3);
	--p__color--mode: var(--back-gray);
	--pack-works: var(--light-blue2);
	--work-hover: var(--yellow-select);
	--stroke: var(--box);
	--background-select: var(--bg-col);
	--background-option: white;
	--popup: var(--color5);
}


.dark-mode {
	background-color: var(--color5);
	transition: all 1s linear;
	--table-bg: var(--table-line);
	--table-font: var(--light-blue1);
	--p__color--mode: white;
	--inner-shadow: var(--inner-shadow-light);
	--input-bg: var(--iframes-bg);
	--input-font-col: white;
	--selection-bg: var(--add-col);
	--crate-btn-col: var(--iframes-bg);
	--pack-works: var(--iframes-bg);
	--work-hover: var(--pressed);
	--stroke: var(--color1);
	--background-select: var(--color5);
	--popup: white;
}


body {
	box-sizing: border-box;
	font-family: Saira Semi Condensed, Mitr, sans-serif;
	font-size: var(--fonts);
	background: var(--dark-blue1);
	height: 90dvh;
	height: 90vh;
	scroll-behavior: smooth;
	transition: all 1s ease-in-out;
	position: relative;
}


h2 {
	font-size: var(--font-title);
	font-weight: 500;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}


h1, h2, h3, h5 {
	color: white;
}


h4 {
	display: flex;
	flex-direction: column;
	inset: 0;
	text-align: center;
	text-shadow: 5px 3px 4px var(--color5);
	font-size: calc(var(--font-title) / 1.5 );
	padding: 0;
	color: white;
	text-transform: uppercase;
	margin: -.6rem 0 2rem 0;
	position: relative;
}


h5 {
	inset: 0;
	text-align: left;
	font-size: calc(var(--font-title) / 4.8 );
	font-weight: 700;
	color: var(--color1);
	text-shadow: 5px 3px 4px var(--color5);
	text-transform: uppercase;
	position: relative;
	margin: 0;
	padding: 0;
	&::before {
		content: "";
		background: var(--color3);
		color: var(--color3);
		margin-right: .4ch;
		border-radius: 1ch;
		background-image: linear-gradient(45deg, #00000000, #00000085),
			radial-gradient(circle at top left, transparent, #00000085);
		background-origin: border-box;
		background-clip: content-box, border-box;
	}
}


iframe {
	text-align: center;
	border: .05rem solid var(--iframes-bg);
	border-radius: 1.2rem;
	transition: 500ms ease-in-out;
	animation-name: fill-pane 2s ease;
	animation-fill-mode: both;
	animation-delay: 1s;
	&:hover {
		border: none;
		box-shadow: var(--shadow1);
		cursor: pointer;
	}
	&:focus-within {
		outline: .1rem solid var(--dark-blue);
	}
}


p, a {
	background: transparent;
	text-align-last: left;
	line-height: 1.5cqh;
	font-size: var(--fonts);
	font-family: 'Mitr', sans-serif;
	font-weight: 200;
	color: white;
	text-indent: 1cqw;
	text-shadow: unset;
	text-wrap: balance;
}


button:disabled,
button[disabled] {
	cursor: not-allowed;
	filter: blur(.3rem);
}


ul, li {
	position: relative;
	margin: 0;
	list-style: inside;
	list-style-type: circle;
	list-style-type: circle;
	background: transparent;
	text-align-last: left;
	line-height: clamp(1rem, 1ch, 1cqw);
	font-size: var(--fonts);
	font-family: 'Mitr', sans-serif;
	font-weight: 500;
	color: white;
	text-wrap: pretty;
}


li {
	text-align: left;
	font-family: Mitr, sans-serif;
	font-size: var(--fonts);
	font-weight: 400;
	text-wrap: pretty;
	color: white;
	line-height: 1.6cqw;
}


label {
	position: relative;
	color: var(--iframes-bg);
	font-size: calc(var(--fonts) + .2rem);
}


input {
	box-shadow: var(--inner-shadow);
	background-color: var(--input-bg);
	border-radius: .3rem;
	border: transparent;
	outline: none;
	border-bottom: .05rem solid white;
	border-right: .05rem solid white;
	& {
		text-align: center;
		font-family: Mitr, sans-serif;
		font-size: calc(var(--fonts) + .1rem);
		font-weight: 400;
		color: var(--input-font-col);
	}
	&:focus {
		left: 0;
		color: white;
		font-size: var(--fonts);
		transition: .5s ease-in-out;
		&::placeholder {
			opacity: 0;
		}
	}
	&::placeholder {
		opacity: .45;
		font-weight: 300;
		font-style: italic;
		font-size: .8rem;
		color: var(--table-font);
	}
}


dialog::backdrop {
	background: var(--color9);
	backdrop-filter: blur(1rem);
}


select {
	display: block;
}


::-webkit-scrollbar {
	width: .4rem;
	height: .4rem;
}


::-webkit-scrollbar-track {
	background: white;
	border-radius: 10vw;
	margin-block: .2rem;
}


::-webkit-scrollbar-thumb {
	background: var(--pressed);
	border-radius: 10vh;
	border: .1rem solid white;
}


section {
	inset: 0;
	position: relative;
	scroll-snap-align: start;
	scroll-snap-stop: always;
	& div {
		& h1, h2 {
			text-align: center;
			font-size: 2cqw;
			padding: 0;
			margin: 0;
			opacity: 1;
		}
		& h1 {
			b {
				font-family: 'Mitr';
				font-weight: 700;
				font-size: var(--font-title);
				color: var(--color3);
			}
		}
		& h3 {
			text-align: center;
			font-size: var(--font-title);
			padding: 0;
			color: white;
			text-transform: uppercase;
		}
		& h2 {
			text-align: center;
			font-size: calc(var(--font-title) / 3.9);
			text-transform: uppercase;
		}
		& p {
			place-self: center;
			display: initial;
			font-size: 2ch;
			opacity: 1;
			word-spacing: 0;
			padding: auto;
			margin: 0;
			& + h2 {
				margin-top: .1ch;
			}
		}
		& span {
			flex-grow: 1;
		}
		& mark {
			padding: .2rem 2ch;
		}
	}
}


header {
	grid-area: header;
}


svg {
	inset: 0;
	position: relative;
	height: 90dvh;
	width: 100%;
	place-self: center;
	transition: all 2s ease-in-out;
	perspective: 40rem;
	background: radial-gradient(#00000000, #00000085),
		linear-gradient(90deg, var(--color4), var(--color5));
	scroll-snap-align: start;
	scroll-snap-stop: always;
	& {
		scroll-timeline-axis: y;
		scroll-timeline-axis: vertical;
		animation: 20s alternate infinite box-shape, 1s svg-back-ground linear forwards;
		animation-timeline: view(auto);
		animation-timeline: auto;
		animation-range: 30% contain;
		animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
		animation-play-state: running;
		transition: animation 3s ease-in-out;
	}
	&:hover {
		animation-play-state: paused;
		cursor: progress;
	}
}


/*
 * ╭─────────────────────────────────────────────────────────╮
 * │                       Home setup                        │
 * ╰─────────────────────────────────────────────────────────╯
*/

.container__home {
	container-name: home;
	container-type: inline-size;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(57rem, 1fr), 1dvw));
	grid-template-rows: auto;
	row-gap: 9cqh;
	column-gap: 7cqw;
	height: max(90dvh);
	inset: 0;
	position: relative;
	scroll-behavior: smooth;
	scroll-snap-type: y mandatory;
	scroll-padding: 0;
	overflow-y: scroll;
	overflow-x: hidden;
	& {
		background-image:
			linear-gradient(var(--blueprint1) .01px, transparent 1px),
			linear-gradient(90deg, var(--blueprint1) .01px, transparent 1px),
			linear-gradient(var(--blueprint2) .01px, transparent 1px),
			linear-gradient(90deg, var(--blueprint2) .01px, transparent 1px);
		background-size: 100px 100px, 100px 100px, 20px 20px, 20px 20px;
		background-position: center;
		background-attachment: fixed;
		background-color:
			color-mix(in srgb, var(--dark-blue), black 0%);
		border: solid .1rem var(--light-blue3);
		box-shadow: inset 0 0 20rem var(--dark);
		filter: drop-shadow(0 0 .01rem var(--dark-blue1));
	}
	& .info__container {
		container-name: info;
		container-type: inline-size;
	}
	& section > div {
		scale: .2;
		border: .1rem solid var(--color4);
		box-shadow: var(--shadow1);
		border-radius: var(--bord-default);
		padding: 2cqw;
		background: radial-gradient(#00000000, #00000085);
		place-self: center stretch;
		animation: show-up linear forwards;
		animation-timeline: view();
		animation-range: 1% 50%;
		animation-timing-function: ease-in-out;
		filter: drop-shadow(0 0 3rem white);
		position: relative;
		inset: 0;
		height: fit-content;
		perspective: 30cqw;
		& .content__indent > li {
			color: white;
			list-style: none;
			font-weight: 300;
			& mark {
				font-style: italic;
				font-weight: 700;
				background: var(--color1);
				color: white;
				padding: .1rem 1ch;
				opacity: .85;
				border-radius: .4rem;
				text-shadow: 4px 3px 5px var(--color5);
				box-shadow: 6px 4px 5px var(--color5);
			}
			& i {
				color: var(--color1);
			}
		}
		& a {
			color: var(--color3);
			font-weight: 700;
			text-decoration: none;
			text-shadow: 6px 4px 5px var(--color5);
			opacity: .9;
			&:visited {
				color: var(--color12);
				text-decoration: underline;
			}
		}
	}
	& .info-content, .tubes, .same-size, .sculptures, .huge-canvas, .diff-sizes {
		inset: 0;
		position: relative;
		& h4, h3 {
			font-size: calc(var(--font-title) / 2.5);
		}
	}
	.hero {
		grid-area: 1 / 1 / 1 / 11;
	}
	.info {
		grid-area: 2 / 1 / 2 / 11;
	}
	.utils {
		grid-area: 4 / 1 / 4 / 11;
	}
	.tubes {
		grid-area: 5 / 1 / 5 / 11;
		--slide: 1;
		inset: 0;
		position: relative;
		padding: 0;
		& .content-tubes {
			grid-area: 2 / 8 / 1 / 10;
			position: relative;
			inset: 0;
			&::before {
				content: "";
				position: absolute;
				inset: 0;
				background-repeat: no-repeat;
				background-position: center;
				background-image: url(./images/formao-removebg-preview.png);
				/*background-image: url(https://ottocratesolver.com/otto/app/images/formao-removebg-preview.png);*/
				filter: blur(.2rem);
				background-size: 25cqh;
				z-index: -1;
				opacity: .7;
			}
		}
	}
	.same-size {
		grid-area: 6 / 1 / 6 / 11;
		--slide: 2;
		inset: 0;
		& .content-same-sizes {
			grid-area: 1 / 3 / 1 / 5;
			position: relative;
			&::before {
				content: "";
				position: absolute;
				inset: 0;
				background-repeat: no-repeat;
				background-position: center;
				background-image: url(./images/disc-blade-removebg-preview.png);
				background-size: 25cqh;
				filter: blur(.2rem);
				z-index: -1;
				opacity: .7;
			}
		}
	}
	.sculptures {
		grid-area: 7 / 1 / 7 / 11;
		--slide: 3;
		inset: 0;
		& .content-sculptures {
			grid-area: 1 / 8 / 1 / 10;
			position: relative;
			backdrop-filter: unset;
			&::after {
				content: "";
				position: absolute;
				inset: 0;
				background-repeat: no-repeat;
				background-position: center;
				background-image: url(./images/jig-saw-removebg-preview.png);
				filter: blur(.2rem);
				background-size: 25cqh;
				z-index: -1;
				border: unset;
				opacity: .7;
			}
		}
	}
	.huge-canvas {
		grid-area: 8 / 1 / 8 / 11;
		--slide: 4;
		& .content-huge-canvas {
			grid-area: 1 / 3 / 1 / 5;
			position: relative;
			&::before {
				content: "";
				position: absolute;
				inset: 0;
				background-repeat: no-repeat;
				background-position: center;
				background-image: url(./images/clamp-tool-removebg-preview.png);
				background-size: 20cqh;
				filter: blur(.2rem);
				z-index: -1;
				opacity: .7;
			}
		}
	}
	.diff-sizes {
		grid-area: 9 / 1 / 9 / 11;
		--slide: 5;
		inset: 0;
		& .content-diff-sizes {
			grid-area: 1 / 8 / 1 / 10;
			position: relative;
			&::before {
				content: "";
				position: absolute;
				inset: 0;
				background-repeat: no-repeat;
				background-position: center;
				background-image: url(./images/tape-measure-removebg-preview.png);
				background-size: 30cqh;
				/*filter: contrast(.5);*/
				filter: blur(.2rem);
				z-index: -1;
				opacity: .7;
			}
		}
	}
	.end__up {
		grid-area: 10 / 1 / 10 / 11;
	}
	footer {
		grid-area: 11 / 1 / 11 / 11;
	}
}


.guide__metric {
	--ruler-num-c: #888;
	--ruler-num-fz: 10px;
	--ruler-num-pi: .10ch;
	--ruler-unit: 1px;
	--ruler-x: 1;
	--ruler-y: 1;

	--ruler1-bdw: 1px;
	--ruler1-c: #BBB;
	--ruler1-h: 10px;
	--ruler1-space: 4;

	--ruler2-bdw: 1px;
	--ruler2-c: #BBB;
	--ruler2-h: 20px;
	--ruler2-space: 1;
	--ruler3-space: 50;

	inset: 0;
	position: relative;
	overflow: clip;
	&::before {
		inset: 0;
		content: "";
		position: fixed;
		background-image:
			linear-gradient(90deg, var(--ruler1-c) 0 var(--ruler1-bdw), transparent 0),
			linear-gradient(90deg, var(--ruler2-c) 0 var(--ruler2-bdw), transparent 0),
			linear-gradient(0deg, var(--ruler1-c) 0 var(--ruler1-bdw), transparent 0),
			linear-gradient(0deg, var(--ruler2-c) 0 var(--ruler2-bdw), transparent 0);
		background-position: 0 0;
		background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
		background-size:
			calc(var(--ruler-unit) * var(--ruler1-space) * var(--ruler-x)) var(--ruler1-h),
			calc(var(--ruler-unit) * var(--ruler3-space) * var(--ruler-x)) var(--ruler2-h),
			var(--ruler1-h) calc(var(--ruler-unit) * var(--ruler1-space) * var(--ruler-y)),
			var(--ruler2-h) calc(var(--ruler-unit) * var(--ruler3-space) * var(--ruler-y));
		filter: drop-shadow(0 0 3rem white);
		opacity: .4;
	}
	& .ruler-x, .ruler-y {
		inset: 0;
		color: var(--ruler-num-c);
		counter-reset: d 0;
		display: flex;
		font-size: var(--ruler-num-fz);
		line-height: 1;
		margin: 0;
		padding: 0;
		position: fixed;
		z-index: -10;
	}
	& .ruler-x {
		height: var(--ruler2-h);
		width: 100%;
		inset-block-start: 0;
		inset-inline-start: calc(var(--ruler-unit) * var(--ruler3-space));
	}
	& .ruler-y {
		flex-direction: column;
		height: 100%;
		inset-block-start: calc(var(--ruler-unit) * var(--ruler3-space));
		inset-inline-start: 0;
		width: var(--ruler2-h);
	}
	& .ruler-x li {
		align-self: flex-end;
	}
	& .ruler-x li, .ruler-y li {
		list-style: none;
		counter-increment: d var(--ruler2-space);
		flex: 0 0 calc(var(--ruler-unit) * var(--ruler3-space));
		opacity: .3;
		padding: 0;
	}
	& .ruler-x li::before {
		inset: 0 0 0 -.21cqw;
		content: counter(d)"";
		position: absolute;
		line-height: 1;
		padding-inline-start: var(--ruler-num-pi);
		overflow: visible;
		padding-top: 3px;
	}
	& .ruler-y li::before {
		inset: 0;
		content: counter(d)"";
		display: block;
		padding-inline-end: var(--ruler-num-pi);
		transform: rotate(-90deg);
		transform-origin: 100% 0%;
		text-align: end;
		width: 100%;
		padding-left: 15px;
	}
}




.slider {
	--width-slide: 200dvw;
	--height-slide: 90dvh;
	grid-area: 4 / 1 / 4 / 11;
	padding: 1rem;
	display: flex;
	padding: 1rem;
	& .list {
		display: flex;
		position: relative;
		min-width: calc(var(--width-slide));
		& section {
			width: 100%;
			height: 100%;
			position: absolute;
			left: 100%;
			animation: autoSlide 30s linear infinite;
			animation-delay: calc((20s / 10) * (var(--slide) - 1));
		}
	}
}


.sub__grid {
	display: grid;
	grid-template-columns: repeat(11, 1fr);
	grid-template-rows: 1fr;
	& .svg__left {
		grid-area: 1 / 3 / 1 / 7;
		place-self: center stretch;
	}
	& .svg__right {
		grid-area: 2 / 6 / 1 / 10;
		place-self: center stretch;
	}
	& .text-content > p {
		font-size: 1rem;
		opacity: 1;
	}
	& .text-content {
		display: flex;
		flex-direction: column;
	}
}


nav {
	border: solid .1rem var(--color4);
	border-radius: .3rem;
	padding: .6rem;
	margin: 1cqh 0;
	backdrop-filter: blur(.1rem);
	inset: 0;
	& .nav__bar {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-evenly;
		align-items: center;
		column-gap: 1cqw;
		& > li {
			border: solid .1rem #FFFFFF30;
			border-radius: var(--bord3);
			padding: .5ch;
			& > a {
				padding: 1rem;
			}
			&:hover {
				box-shadow: 0 0 1rem #FFFFFF50;
			}
		}
		& > * {
			flex-basis: 1;
			flex-grow: 100%;
		}
	}
	& span {
		flex-grow: 1;
		padding: 1rem;
	}
	& .frame__turner {
		inset: 0;
		position: relative;
		perspective: clamp(7rem, 10cqw, 5cqw);
	}
	& ul, li {
		padding: unset;
		list-style: none;
	}
	& .nav-logo {
		animation: unset;
		aspect-ratio: 1;
		border: unset;
		height: auto;
		width: clamp(3rem, 2.4cqw, 3cqw);
		fill: none;
		cursor: pointer;
		background-color: transparent;
		box-shadow: none;
		background: unset;
		filter: none;
		aspect-ratio: 1;
		&:hover {
			box-shadow: 0 0 1rem #FFFFFF50;
		}
	}
}


.hero {
	inset: 0;
	animation: fade-out ease-in-out;
	animation-timeline: view();
	animation-range: exit 1rem;
	animation-timing-function: ease-in-out;
	transform: animation 1s ease;
	& .logo {
		grid-area: 1 / 2 / 1 / 9;
		background-color: transparent;
		background: unset;
		filter: unset;
		backdrop-filter: none;
		box-shadow: none;
		filter: unset;
		z-index: -1;
		inset: 0;
		position: relative;
	}
	& .main-card {
		animation: unset;
		scale: 1;
		grid-area: 1 / 8 / 1 / 11;
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: space-even;
		height: minmax(1cqh, 70%);
		mix-blend-mode: unset;
		backdrop-filter: unset;
		border: .1rem solid var(--color4);
		opacity: .9;
		border-radius: var(--bord-default);
		background-blend-mode: multiply;
		background: var(--dark-blue1);
		box-shadow: unset;
		line-height: 12ch;
		& h1 {
			font-weight: 100;
			text-align: left;
			font-size: var(--font-title);
			font-style: italic;
			line-height: clamp(6cqw, 25cqw, 7rem);
			& b {
				font-style: normal;
				text-shadow: 6px 4px 5px var(--color4);
			}
		}
		& h2 {
			color: var(--color12);
			font-size: calc(var(--font-title) - 3.8cqw);
			&::after {
				content: "";
				inset: 0% 0 15cqh 36.2%;
				position: absolute;
				width: 56%;
				box-sizing: content-box;
				transform: rotate3d(0, 0, 0, 90deg);
				border-radius: .1rem;
				background: var(--color3);
				z-index: -5;
				opacity: .4;
			}
		}
		& p {
			color: var(--color1);
			text-align: center;
			text-indent: 0;
			font-size: var(--fonts);
		}
		&::before {
			content: "";
			position: absolute;
			inset: 0;
			background-repeat: no-repeat;
			background-position: center;
			background-image: url(./images/ampulheta-removebg-preview.png);
			background-size: clamp(15cqw, 75ch, 15rem);
			mix-blend-mode: difference;
			opacity: .1;
			z-index: -1;
		}
	}
}


.svg__logo--eye {
	-webkit-animation: 800ms ease-in-out infinite alternate eye-blink;
	animation: 800ms ease-in-out infinite alternate eye-blink;
	transition-timing-function: animation 300ms cubic-bezier(0.6, 0.04, 0.98, 0.335);
	cursor: pointer;
}


.svg__logo__bkg {
	fill-opacity: .7;
	width: 100%;
	height: 100%;
}


.info {
	&::before {
		content: "";
		position: absolute;
		inset: 0;
		background-repeat: no-repeat;
		background-position: center;
		background-image: url(./images/compass-removebg-preview.png);
		background-size: 12cqw;
		object-fit: cover;
		box-shadow: 6px 4px 5px var(--color5);
		filter: drop-shadow(0 0 3rem white);
		z-index: -10;
		opacity: .9;
	}
}


.info, .utils, .dilemma, .end__up {
	inset: 0;
	z-index: -1;
	padding: 1rem;
	border-radius: unset;
	& .info-content {
		height: fit-content;
		grid-area: 1 / 1 / 1 / 12;
		position: relative;
		& .about-content {
			display: flex;
			flex-direction: row;
			justify-content: space-evenly;
			column-gap: 3rem;
			padding: 2ch;
			z-index: 10;
			& div {
				mix-blend-mode: difference;
				border-radius: 1rem;
				padding: 3rem;
				z-index: 10;
				flex-basis: 50%;
				inset: 0;
				position: relative;
				background-origin: content-box;
				perspective: 140rem;
				& li {
					font-style: italic;
					color: var(--color1);
					& mark {
						font-weight: 500;
						background-color: transparent;
						color: var(--color1);
						opacity: .8;
						padding: 0;
						margin: 0;
					}
				}
				& b {
					font-family: 'Mitr';
					font-weight: 700;
					font-style: normal;
					font-size: calc(var(--fonts) + 4cqw);
					opacity: .9;
					color: var(--color1);
				}
				& .empty-time {
					-webkit-text-stroke: .2rem var(--color3);
					-webkit-text-fill-color: transparent;
					font-style: italic;
					inset: 0;
					position: absolute;
					font-size: 10rem;
					padding: 0;
					margin: 0;
					&:hover::before {
						content: "TIME!";
						position: relative;
						inset: -5cqw 0 0 3ch;
						z-index: -1;
						cursor: pointer;
					}
				}
				& .otto-color {
					color: var(--color1);
					font-size: calc(var(--fonts) + .3cqw);
				}
				inset: 0;
				& .retention {
					color: var(--color3);
					text-shadow: 3px 2px 1px var(--color5);
					font-size: calc(var(--fonts) + .5ch);
					font-style: italic;
				}
				& .otto-name {
					position: relative;
					font-size: calc(var(--fonts) + 2cqw);
					inset: 0;
					&::before {
						content: "Otto";
						position: relative;
					}
				}
				&:hover {
					z-index: 1;
					box-shadow: var(--shadow1);
					opacity: 1;
					transition: all 2s ease-in-out;
					transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
					filter: drop-shadow(0 0 .01rem var(--dark-blue1));
					& .empty-time {
						-webkit-text-stroke: .1rem var(--color1);
						-webkit-text-fill-color: var(--color1);
						font-style: italic;
						transition: all 3s ease-in-out;
					}
					& li > mark {
						text-shadow: 6px 4px 5px var(--color5);
						transform: scaleZ(20rem);
						transition: all 800ms ease-in-out;
					}
				}
				&::after {
					content: "";
					position: absolute;
					inset: 0;
					border-radius: 1rem;
					padding: .5rem;
					background-image: linear-gradient(45deg, #00000000, #00000085),
						radial-gradient(circle at top left, transparent, #00000085);
					background-origin: border-box;
					background-clip: content-box, border-box;
					mix-blend-mode: difference;
					z-index: -1;
				}
			}
		}
	}
}


.utils {
	& .info-content {
		opacity: .3;
		&::before {
			background-repeat: no-repeat;
			background-position: center;
			filter: hue-rotate(90deg);
			z-index: -10;
		}
		& .solve__content {
			& p::first-letter {
				font-size: 4rem;
			}
			& div::before {
				content: "";
				background-size: 3cqw;
				background-repeat: no-repeat;
				background-position: center;
				float: left;
				height: 8cqh;
				width: 4cqw;
				font-size: 3rem;
				shape-outside: circle();
				clip-path: circle();
				background-color: var(--light-blue1);
				padding: 1rem;
				margin: 1rem;
				border: solid 1rem solid;
				border-radius: 50%;
			}
			& div:nth-of-type(1)::before {
				background-image: url(./images/chat.svg);
			}
			& div:nth-of-type(2) {
				filter: drop-shadow(0 0 3rem var(--color11));
				inset: 0;
				position: relative;
				&::before {
					content: "";
					inset: 1cqh 0 0 8cqw;
					background-color: unset;
				}
				&::after {
					content: "";
					inset: 0;
					background-repeat: no-repeat;
					background-position: center;
					background-image: url(./images/lose-removebg-preview.png);
					object-fit: cover;
					filter: drop-shadow(0 0 3rem var(--gold));
					background-size: 10rem;
					background-size: clamp(25cqw, 30ch, 20rem);
					object-fit: cover;
					clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
					clip-path: polygon(0 12%, 100% 0, 100% 80%, 0 100%);
					z-index: 2;
					aspect-ratio: auto-fit;
				}
			}
			& div:nth-of-type(3)::before {
				background-image: url(./images/lamp.svg);
			}
			& div:hover {
				filter: drop-shadow(0 0 .5rem var(--color1));
			}
		}
	}
}


.end__up {
	inset: 0;
	position: relative;
	& .time__info {
		display: grid;
		grid-template-columns: [start-col] 50% [mid] minmax(50%, 1fr);
		grid-template-rows: [start-row] 1fr [sec-row] auto [end-row] auto;
		column-gap: 1cqh;
		justify-items: center;
		align-items: center;
		place-self: center;
		& h5 {
			font-size: 6cqw;
			flex-grow: 3;
			grid-area: 2 / 1 / 2 / 1;
			place-content: center;
			inset: 0;
			line-height: .9;
			position: relative;
			&::after {
				content: "";
				inset: 0;
				position: absolute;
				height: auto;
				width: 100%;
				background: linear-gradient(270deg, var(--dark), var(--color3), var(--color1));
				animation: gradient-fx 2s infinite;
				clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
				clip-path: polygon(0 12%, 100% 0, 100% 80%, 0 100%);
				z-index: -1;
			}
		}
		& p {
			color: var(--color3);
			font-size: 2cqw;
			font-weight: 100;
			font-style: italic;
			grid-column: mid;
			line-height: .9;
			text-align: left;
			width: 100%;
			inset: 0;
			position: relative;
			text-shadow: 6px 4px 5px var(--color5);
			&::before {
				content: "";
				inset: 0;
				position: absolute;
				left: 20%;
				height: auto;
				width: 100%;
				border-bottom: 3px solid var(--color3);
				clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
				clip-path: polygon(0 12%, 100% 0, 100% 80%, 0 100%);
			}
		}
		&::after {
			displAy: none;
		}
	}
}


footer {
	scroll-snap-align: start;
	scroll-snap-stop: always;
	gap: 3ch;
	& > div {
		padding: 0 23cqw;
	}
	& {
		display: grid;
		grid-template-columns: repeat(10 1fr);
		grid-template-rows: 1fr .3fr;
	}
	& .end__page {
		& p {
			text-shadow: 3px 4px 1px var(--color5);
		}
		& li {
			font-style: italic;
			color: var(--color1);
			& mark {
				font-weight: 500;
				background-color: transparent;
				color: var(--color1);
				opacity: .8;
			}
		}
		& a {
			color: var(--color1);
			font-weight: 700;
			text-decoration: none;
			opacity: .9;
			&:visited {
				color: var(--color12);
				text-decoration: underline;
			}
		}
		& > b {
			font-family: 'Mitr';
			font-weight: 700;
			font-style: normal;
			font-size: calc(var(--fonts) + 4cqw);
			opacity: .9;
			color: var(--color1);
		}
		& {
			border: .1rem solid var(--color4);
			box-shadow: var(--shadow1);
			border-radius: var(--bord-default);
			background: radial-gradient(#00000000, #00000085);
			padding: 3rem;
			& li {
				color: var(--dark-blue2);
				list-style: none;
				font-weight: 300;
				& mark {
					font-style: italic;
					background: var(--color1);
					color: white;
					padding: .1rem 1ch;
					opacity: .9;
					border-radius: .4rem;
					text-shadow: none;
					box-shadow: 6px 4px 5px var(--color5);
				}
				& i {
					color: var(--color3);
				}
			}
		}
		& div {
			& .otto-color {
				color: var(--color1);
				font-size: calc(var(--fonts) + .3cqw);
			}
		}
		&::before {
			content: "";
			position: absolute;
			inset: 0;
			background-repeat: no-repeat;
			background-image: url(./images/metric-tools-removebg-preview.png);
			background-position: top 50% right;
			mix-blend-mode: overlay;
			filter: drop-shadow(0 0 1rem white);
			overflow: clip;
			z-index: -10;
			opacity: .9;
			visibility: visible;
		}
		&::after {
			content: "";
			position: absolute;
			inset: 0;
			background-repeat: no-repeat;
			background-image: url(./images/sharpper-removebg-preview.png);
			background-position: bottom 40% left;
			mix-blend-mode: overlay;
			transform: translateX(0%) translateY(30%);
			filter: drop-shadow(0 0 1rem white);
			overflow: clip;
			z-index: -10;
			opacity: .3;
			visibility: visible;
		}
	}
	& .start-footer {
		grid-area: 1 / 1 / 1 / 11;
		inset: 0;
		position: relative;
		&::before {
			content: "";
			position: absolute;
			inset: 0;
			background-repeat: no-repeat;
			background-image: url(./images/furadeira-removebg-preview.png);
			background-position: center;
			filter: hue-rotate(90deg);
			transform: translateX(7%) translateY(35%);
			filter: drop-shadow(0 0 1rem white);
			mix-blend-mode: overlay;
			object-fit: cover;
			overflow: hidden;
			z-index: -1;
			opacity: .2;
		}
		&::after {
			content: "";
			position: absolute;
			inset: 0;
			background-repeat: no-repeat;
			background-image: url(./images/BLADE.png);
			filter: drop-shadow(0 0 1rem white);
			mix-blend-mode: overlay;
			overflow: clip;
			z-index: -10;
		}
	}
	& .footer-content {
		grid-area: 2 / 1 / 2 / 11;
		background: radial-gradient(var(--dark-blue), var(--dark));
		border-radius: 1rem 1rem 0 0;
		padding: 1.8rem;
		inset: 0;
		width: max(95%);
		place-self: center;
		& svg {
			height: 10cqw;
			inset: 0;
			background-color: transparent;
			background: unset;
			filter: unset;
			backdrop-filter: none;
			box-shadow: none;
			filter: unset;
			animation: none;
			text-align: center;
		}
		& {
			display: flex;
			flex-flow: row;
			gap: 3cqw;
		}
		& .bottom__logo {
			inset: 0;
			position: relative;
			display: flex;
			flex-direction: column;
			text-align: center;
			& > p {
				justify-content: center;
			}
			&::before {
				content: "Technology making the future easier.";
				inset: 0;
				top: 95%;
				position: absolute;
				font-size: var(--fonts);
				font-family: 'Mitr', sans-serif;
				font-weight: 200;
				color: var(--color3);
				text-indent: 1cqw;
				text-shadow: unset;
				text-wrap: nowrap;
			}
		}
		& div {
			flex: 1 100%;
			align-content: end;
			text-align: center;
			background-color: transparent;
			background: unset;
			filter: unset;
			backdrop-filter: none;
			box-shadow: none;
			filter: unset;
			& p {
				font-size: .6cqw;
				line-height: 0;
			}
			& .note {
				font-size: .6cqw;
				color: var(--color1);
			}
			& i {
				font-size: .8cqw;
				text-shadow: 3px 3px 4px var(--color5);
			}
			& a {
				color: var(--color3);
				font-weight: 700;
				text-decoration: none;
				text-shadow: 3px 2px 2px var(--color5);
				opacity: .9;
				&:visited {
					color: var(--color12);
					text-decoration: underline;
				}
			}
		}
	}
	& dialog {
		background-color: var(--dark-blue);
		width: 60%;
		height: 80%;
		flex-direction: column;
		flex-wrap: nowrap;
		text-align: center;
		border-radius: 1rem;
		position: absolute;
		overflow: scroll;
		z-index: 10;
		& h3 {
			font-size: 2rem;
		}
		& > form {
			padding: 2rem 15%;
			& ol > li {
				list-style-type: counter;
				color: var(--color3);
				list-style-position: initial;
				margin-top: 2rem;
				& b {
					color: var(--color1);
				}
			}
			& ol {
				padding: 0 10%;
			}
		}
		& .out__side{
			line-height: 1.4rem;
			text-indent: 0;
			text-align: start;
			padding: 1rem 0%;
			font-size: 1.2rem;
		}
	}
}

@keyframes turning {
	to {
		transform: rotateY(360deg);
		transform-style: preserve-3d;
	}
}


@keyframes blade {
	to {
		transform: rotateZ(360deg);
		transform-style: preserve-3d;
	}
}


@keyframes autoSlide {
	from {
		left: 100%;
	}
	to {
		left: calc(var(--width-slide) * -1);
	}
}


@keyframes border-waves {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: scale(1.05);
		opacity: 0;
	}
}


@keyframes eye-blink {
	0% {
		fill: none;
	}
	50% {
		fill-opacity: .5;
	}
	100% {
		fill: var(--color3);
		fill-opacity: 1;
		filter: drop-shadow(0 0 4rem crimson);
		box-shadow: 15px 13px 6px var(--color3);
	}
}


@keyframes show-up {
	to {
		scale: 1;
		opacity: 1;
	}
}


@keyframes zoomer {
	from {
		scale: 1;
		opacity: 1;
	}
	to {
		scale: 0;
		opacity: 0;
	}
}


@keyframes fade-out {
	20%, 100% {
		opacity: 0;
	}
}


@keyframes svg-back-ground {
	0% {
		transform: scaleX(0);
		opacity: 0;
		background: unset;
		border-radius: .2rem;
	}
	100% {
		opacity: 1;
	}
}


@keyframes gradient-fx {
 0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}


@keyframes box-shape {
	0%{
		background: transparent;
		clip-path: polygon(-70% 50%, 50% 100%, 170% 50%, 50% 0);
	}
	25% {
		border: solid 1px var(--color1);
		clip-path: polygon(0% 50%, 50% 100%, 100% 50%, 50% 0);
	}
	50% {
		clip-path: polygon(100% 25%, 50% 0%, 50% 100%, 100% 75%);
	}
	75% {
		border: solid 1px var(--color3);
		clip-path: polygon(50% 0%, 100% 50%, 99% 100%, 0% 50%);
	}
	100% {
		background: radial-gradient(#00000000, #00000085);
		clip-path: polygon(50% 100%, 100% 75%, 100% 25%, 50% 0%);
	}
}


@keyframes waves {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: scale(1.5);
		opacity: 0;
	}
}


/*
 * ╭─────────────────────────────────────────────────────────╮
 * │                Main media query portrait                │
 * ╰─────────────────────────────────────────────────────────╯
*/
@media (width <= 80rem) and (orientation: portrait) {
	.container__home {
		scroll-snap-type: unset;
		grid-template-columns: 1fr;
		grid-auto-rows: auto;
		row-gap: 3cqw;
		place-self: center;
		& .hero {
			animation: unset;
			height: min(50%);
			& .main-card {
				& h2 {
					font-size: 2.5ch;
				}
				& p {
					font-size: .8rem;
				}
			}
		}
		& .info, .utils {
			& .info-content {
				& .about-content {
	 				& div {
						& .empty-time {
							inset: 0;
							position: absolute;
							font-size: calc(var(--font-title) - 1.5ch);
							&:hover::before {
								position: relative;
								inset: 0;
								top: -12cqw;
								left: 35cqw;
							}
						}
					}
				}
				& > div {
					display: flex;
					flex-direction: column;
					flex-basis: 1;
					padding: 1rem;
					gap: 5cqw;
					& li {
						line-height: 1.5rem;
					}
				}
				& div {
					padding: 0;
					&::after {
						background-image: unset;
					}
					& p {
						line-height: .1rem;
					}
				}
			}
		}
		& .tubes,
		.same-size,
		.sculptures,
		.huge-canvas,
		.diff-sizes,
		footer {
			display: flex;
			flex-direction: column;
			width: 100%;
			& li {
				line-height: .5ch;
			}
			& .footer-content {
				& svg {
					height: 10rem;
				}
			}
		}
	}
	& .end__up {
		& .info-content {
			& .about-content {
				display: flex;
				flex-direction: column;
				flex-grow: 1;
				gap: 5ch;
				& li {
					line-height: 1.5rem;
				}
				& div {
					padding: 0;
					&::after {
						background-image: unset;
					}
				}
				& .time__info {
					grid-template-columns: 1fr;
					place-self: center;
					& h5 {
						font-size: 10ch;
					}
					& p {
						font-size: 3ch;
						inset: 0;
						position: relative;
						&::before {
							content: '';
							inset: 0;
							position: absolute;
							width: 20ch;
							border-bottom: 1px solid var(--color1);
						}
					}
				}
			}
		}
	}
	footer {
		gap: 3cqw;
		& h4 {
			font-size: 5ch;
		}
		& .start-footer {
			padding: 1ch;
			& p {
				line-height: 1.5ch;
			}
		}
		& .footer-content {
			flex-direction: column;
			padding: 0 10%;
			& svg {
				height: 100%;
			}
			& div {
				flex-direction: column;
				align-content: center;
				& P {
					font-size: .6rem;
					text-wrap: nowrap;
					text-align: center;
				}
				& i {
					font-size: 1rem;
				}
				& .note {
					font-size: calc(var(--fonts) - .5ch)
				}
			}
			& .bottom__logo::before {
				font-size: .8rem;
				text-align: left;
			}
		}
	}
	.sub__grid {
		display: unset;
	}
}


@media (width <= 1280px) and (orientation: landscape) {
	p {
		line-height: 1.4ch;
	}
	.container__home {
		border: 3px solid var(--color1);
		grid-auto-rows: auto;
		& section > div {
			padding: 1.5cqw;
			& li {
				line-height: 1.5rem;
			}
		}
		& .hero {
			animation: unset;
			& .main-card {
				height: 80%;
				& h1 {
					line-height: 1.7ch;
					& b{
						font-size: 5cqw;
					}
				}
				& h2 {
					font-size: 1.7ch;
				}
				& p {
					font-size: 1.2ch;
				}
				& h2 + p {
					margin-top: 10cqh;
				}
			}
		}
		& .info, .utils {
			& h3 {
				margin-top:0;
				margin-bottom: 1rem;
				font-size: 3ch;
			}
			& .info-content {
				& .about-content {
					& div {
						padding: 2.5cqw;
						& .empty-time {
							inset: 0;
							position: absolute;
							&:hover::before {
								position: relative;
								inset: 0;
								top: -4cqw;
								left: 15cqw;
								font-size: 5rem;
							}
						}
					}
				}
			}
		}
		& .utils {
			& .info-content {
				& .solve__content {
					height: 70cqh;
					width: 100%;
					& div {
						line-height: 2.5cqh;
						& > p {
							font-size: 1cqw;
							& .retention {
								font-size: .8cqw;
							}
						}
					}
				}
			}
		}
		& .tubes,
		.same-size,
		.sculptures,
		.huge-canvas,
		.diff-sizes {
			& ul {
				padding-left: 1.5cqw;
			}
		}
		& .end__up {
			& .info-content {
				& .about-content {
					& .time__info {
						padding: 0;
					}
				}
			}
		}
	}
	& footer {
		.footer-content {
			& div {
				& p > a {
					font-size: .7rem;
				}
			}
		}
	}
}

@media (height <= 25rem) {
	.info__container {
		inset: 0;
		position: relative;
		& .text-content {
			padding: 2rem;
			width: 17rem;
			border: 2px solid red;
			font-size: 2cqw;
		}
		h4 {
			&::before {
				content: "";
				inset: 0;
				position: absolute;
				padding-top: 0;
				margin-top: -2cqw;
				height: 160%;
				width: 115%;
				box-sizing: border-box;
				background-color: var(--color1);
				border-radius: 0rem 2rem 0 3rem;
				z-index: -5;
				opacity: .4;
				box-shadow: inset 6px 4px 5px var(--color8);
				overflow: hidden;
			}
		}
	}
	& footer {
		& .footer-content {
			& div {
				& .note {
					font-size: 2ch;
				}
			}
		}
	}
}


@media (height > 66rem) {
	.container__home {
		& section > div {
			padding: 4rem;
			& p {
				font-size: 1rem;
			}
		}
	}
}
/*
 * ╭─────────────────────────────────────────────────────────╮
 * │                 home container content.                 │
 * ╰─────────────────────────────────────────────────────────╯
*/
@container home (height <= 720px) {
	.container__home > * {
		h4 {
			&::before {
				content: "";
				inset: 0;
				position: absolute;
				padding-top: 0;
				margin-top: 2cqw;
				height: auto;
				width: 2cqh;
				box-sizing: border-box;
				background-color: var(--color1);
				border-radius: 0rem 2rem 0 3rem;
				z-index: -5;
				opacity: .4;
				box-shadow: inset 6px 4px 5px var(--color8);
				overflow: hidden;
			}
		}
	}
}


/*
 * ╭─────────────────────────────────────────────────────────╮
 * │                 info container content.                 │
 * ╰─────────────────────────────────────────────────────────╯
*/
@container info (width > 1920px) {
	.info__container {
		inset: 0;
		position: relative;
		& .text-content {
			li {
				font-size: 2rem;
				text-wrap: nowrap;
			}
		}
		h4 {
			&::before {
				content: "";
				inset: 0;
				position: absolute;
				padding-top: 0;
				margin-top: -8%;
				height: 150%;
				width: 110%;
				box-sizing: border-box;
				background-color: var(--color1);
				border-radius: 0rem 2rem 0 3rem;
				z-index: -5;
				opacity: .4;
				box-shadow: inset 6px 4px 5px var(--color8);
				overflow: hidden;
			}
		}
	}
}


@container info (width <= 1920px) {
	.info__container {
		inset: 0;
		position: relative;
		& .text-content {
			padding: 2cqw;
			& li {
				text-wrap: nowrap;
			}
		}
		h4 {
			margin: 0;
			margin-bottom: 1rem;
			padding: 0;
			&::before {
				content: "";
				inset: 0;
				position: absolute;
				padding-top: 0;
				margin-top: -14%;
				height: 180%;
				width: 114%;
				box-sizing: border-box;
				background-color: var(--color1);
				border-radius: 0rem 2rem 0 3rem;
				z-index: -5;
				opacity: .4;
				box-shadow: inset 6px 4px 5px var(--color8);
				overflow: hidden;
			}
		}
	}
}

@container info (width <= 1280px) {
	.info__container {
		inset: 0;
		position: relative;
		& .text-content {
			padding: 2rem;
			width: 21rem;
			border: 2px solid red;
			font-size: 6cqw;
			& li {
				line-height: 4cqh;
				text-wrap: nowrap;
			}
		}
		h4 {
			&::before {
				content: "";
				inset: 0;
				position: absolute;
				margin-top: -12%;
				height: 180%;
				width: 112%;
				box-sizing: border-box;
				background-color: var(--color1);
				border-radius: 0rem 2rem 0 3rem;
				z-index: -5;
				opacity: .4;
				box-shadow: inset 6px 4px 5px var(--color8);
				overflow: hidden;
			}
		}
	}
}
