@font-face {
	font-family: lato-regular;
	src: url("../site-resources/fonts/lato-regular.woff2");
}

@font-face {
	font-family: pacifico;
	src: url("../site-resources/fonts/pacifico.woff2");
}

:root {
	--background-color: #e0ffcd;
	--body-background-color: #ffebbb;
}

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

html {
	font-size: 16px;
}

body {
	height: 100vh;
	width: auto;
	background-color: var(--body-background-color);
	background-image: url("../img/site/assets/sakura.webp");
	display: grid;
	grid-template-columns: 14vw 60vw;
	grid-template-rows: 6vh 88vh 5vh;
	justify-content: center;
	overflow: hidden;
}

h1, h2, h3, h4, h5, h6, p, ul, figcaption {
	margin: 0.5rem;
}

main, nav {
	padding-top: 1rem;
	padding-bottom: 0.5rem;
	font-family: system-ui;
	letter-spacing: 0.05rem;
}


main {
	background-color: var(--background-color);
	height: 87vh;
	width: 60vw;
	padding-left: 2.5rem;
	overflow: auto;
	scrollbar-width: thin;
	scrollbar-color: #588c7388 #65eeb788;
	grid-column: 2/3;
	grid-row: 2/3;
	align-self: end;
}

header {
	background-color: var(--background-color);
	grid-row: 1/2;
	grid-column: 1/3;
	height: 6vh;
	width: 74vw;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	border-bottom: 10px solid;
	border-image-slice: 1;
	border-width: 5px;
	border-image-source: linear-gradient(to right, #D60270, #9B4F96, #0038A8);
	font-size: 1.4rem;
	margin-top: 0.5rem;
}

footer {
	background-color: var(--background-color);
	grid-row: 3/4;
	grid-column: 1/3;
	height: 5vh;
	width: 74vw;
	border-bottom-left-radius: 15px;
	border-bottom-right-radius: 15px;
	border-top: 10px solid;
	border-image-slice: 1;
	border-width: 5px;
	border-image-source: linear-gradient(to right, #595959, #CF7280, #EEDE77, #E8E8E8, #7BC2E0, #3BB07D, #595959);
	font-family: system-ui;
	font-size: 1.3rem;
	letter-spacing: 0.05rem;
}

header, footer {
	display: flex;
	justify-content: center;	
	align-items: center;
	flex-wrap: wrap;
	gap: 0.75rem;
}

nav {
	background-color: var(--background-color);
	grid-row: 2/3;
	grid-column: 1/2;
	justify-self: end;
	align-self: end;
	width: 14vw;
	height: 87vh;
	padding-left: 0.75rem;
	border-right: 10px solid;
	border-image-slice: 1;
	border-width: 5px;
	border-image-source: linear-gradient(to bottom, #FCF434, #FFFFFF, #9C59D1, #2C2C2C);
}

section {
	width: 55vw;
}

a {
	color: #6e5773;
	text-decoration: none;
}

a:visited {
	color: #9a47cb;
}

a:hover {
	color: #4f323b;
	text-decoration: underline;
}

ul {
	list-style-type: none;
}

nav ul li {
	padding-bottom: 0.5rem;
}

nav ul li a {
	font-size: 1.1rem;
}

main section {
	font-size: 1.1rem;
}

main section p {
	line-height: 1.25;
}

main section ul li {
	padding-bottom: 0.25rem;
}

.logo {
	font-family: pacifico;
	font-size: 1.35rem;
	letter-spacing: .1rem;
}

.motto {
	font-family: lato-regular;
	letter-spacing: .05rem;
}

.status {
	height: 120px;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

.status .statuslol_container .statuslol {
	background: var(--background-color) !important;
}

.picrew-gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2rem;
	margin: 1.75rem;
}

.picrew-gallery img {
	border: 4px solid #17b794;
	border-radius: 5%;
}

.picrew-gallery, .picrew-gallery-header {
	text-align: center;
}

.photo-gallery-header {
	text-align: center;
}

.photography-gallery {
	margin-top: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
}

.gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}

.gallery-text {
	text-align: center;
}

.gallery-text-left {
	text-align: left;
}