/* top nav */
nav {
	position: relative;
	margin: 0 auto 1.5rem;
	display: grid;
	grid-template: "logo nav";
	grid-template-rows: 7rem;
	grid-template-columns: 7rem auto;
	background-image: url("/greenhouse.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 2rem .25rem .25rem 2rem;
}

nav a {
	margin: 0;
}

nav a:not(:has(img)) {
	display: inline-block;
	text-decoration: none;
	font-size: 1.2rem;
	padding: .1rem .25rem;
	border: solid .125rem var(--color-accent);
	border-radius: .25rem;
	background-color: var(--color-bg);
}

@media (any-hover: hover) {
	nav a:not(:has(img)):hover {
		color: var(--color-bg);
		background-color: var(--color-text-alt);
		border-color: var(--color-accent-flipped);
		outline: .125rem solid var(--color-accent);
		outline-offset: 0;
	}
}

nav a:not(:has(img)):focus-visible {
	outline: solid .125rem var(--color-accent);
	outline-offset: .125rem;
}

#skip {
	left: -999px;
	position: absolute;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	z-index: -99;
}

#skip:focus-visible {
	left: -6rem;
	width: auto;
	height: auto;
	overflow: auto;
	z-index: 999;
}

@media (max-width: 750px) {
	#skip:focus-visible {
		left: 5rem;
	}
}

nav img {
	max-height: 100%;
	margin: 0;
	border-radius: 2rem;
	border: .2rem solid var(--color-accent);
}

@media (any-hover: hover) {
	nav img:hover {
		border-color: var(--color-accent-flipped);
		outline-offset: 0;
		outline: .2rem solid var(--color-accent);
	}
}

nav a:has(img) {
	grid-area: logo;
	justify-self: start;
}

nav a:has(img):focus-visible {
	border-radius: 2rem;
	outline-offset: .2rem;
	outline: .2rem solid var(--color-accent);
}

nav a:has(img):focus-visible img {
	outline: none;
}

nav ul {
	grid-area: nav;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-flow: column nowrap;
}

nav li {
	list-style: none;
}

/* footer */
footer {
	width: 95%;
	margin: 0 auto;
	padding: 1rem 0;
	display: flex;
	justify-content: center;
}

@media (max-width: 750px) {
	footer {
		flex-flow: column;
	}
}

footer p {
	background-color: var(--color-text);
	color: var(--color-bg);
	text-align: center;
	font-size: .9rem;
	padding: .25rem;
}

@media (min-width: 751px) {
	footer p:nth-child(2)::before {
		content: "● " / "";
	}
	footer p:nth-child(2)::after {
		content: " ●" / "";
	}
}

footer a {
	color: var(--color-bg);
	text-decoration-color: var(--color-accent-flipped);
}

footer a:focus-visible {
	outline-color: var(--color-accent-flipped);
}
