body {
	@apply lg:flex;
	@apply lg:flex-col;
	@apply lg:min-h-screen;

	> header, > main, > section, > footer {
		.container:not(.hero-content) {
			@apply h-full;
			@apply py-4;
			@apply lg:bg-base-200;
		}
	}

	> main, > section {
		@apply lg:flex;
		@apply lg:flex-col;
		@apply lg:flex-1;

		.container {
			@apply lg:flex-1;
		}
	}

	> footer {
		@apply text-center;
	}
}

form {
	.alert {
		@apply hidden;
	}

	input:not([type=submit]), select, textarea {
		@apply w-full;
	}
}

input:not(.btn), select, textarea, button:not(.btn) {
	@apply my-2;

	+ .alert {
		@apply mt-0;
	}
}

p {
	&:not(:last-child) {
		@apply mb-4;
	}
}

.hero {
	@apply relative;
	@apply z-2;

	.hero-background {
		@apply absolute;
		@apply top-0;
		@apply left-0;
		@apply w-full;
		@apply h-full;
		@apply z-3;

		img, picture, figure, video {
			@apply absolute;
			@apply top-1/2;
			@apply left-1/2;
			@apply -translate-x-1/2;
			@apply -translate-y-1/2;
			@apply w-full;
			@apply h-full;
			@apply object-cover;
			@apply z-4;
		}
	}

	.hero-overlay {
		@apply z-5;
	}

	.hero-content {
		@apply text-center;
		@apply text-neutral-content;
		@apply z-6;
	}
}

.alert {
	@apply my-2;
	@apply rounded-sm;
}

.input {
	input {
		@apply border-none;
		@apply bg-transparent;

		&:focus {
			@apply outline-none;
		}
	}
}

.captcha {
	@apply my-2;
}

.grid {
	&.standard {
		@apply grid-cols-1;
		@apply lg:grid-cols-12;
		@apply gap-8;

		> section, > article {
			@apply lg:col-span-8;
			@apply xl:col-span-9;
		}

		> aside {
			@apply lg:col-span-4;
			@apply xl:col-span-3;
		}
	}

}

.grid {
	> aside {
		hr {
			@apply mt-6;
			@apply mb-4;
			@apply border-base-300;
		}

		form {
			input[type=search], select {
				@apply w-full;
			}

			.actions {
				@apply mt-4;
				@apply flex;
				@apply justify-between;
			}
		}
	}
}

.featured-media {
	@apply lg:max-h-64;
	@apply lg:overflow-hidden;

	> * {
		@apply w-full;
		@apply h-auto;
	}
}

.posts {
	.post {
		@apply mb-4;
		@apply p-4;
		@apply bg-base-300;
	}
}

.post {
	h1, h2, h3, h4, h5, h6 {
		@apply my-4;
	}

	h1, h2 {
		&:has(+ .published) {
			@apply mt-0;
			@apply mb-2;

			+ .published {
				@apply mb-4;

				&:has(+ .categories) {
					@apply mb-2;

					+ .categories {
						@apply mb-4;
					}
				}
			}
		}
	}

	.actions {
		@apply mt-4;
		@apply flex;
		@apply justify-end;
	}
}

.categories {
	.category {
		@apply badge;
		@apply badge-accent;
		@apply badge-sm;
	}
}

.team-members {
	@apply grid;
	@apply grid-cols-2;
	@apply lg:grid-cols-3;
	@apply xl:grid-cols-4;
	@apply gap-4;

	.card {
		@apply bg-base-100;

		.card-body {
			@apply text-center;
		}

		h2 {
			@apply mb-2;
			@apply text-2xl;
		}

		p {
			@apply mb-1;
		}

		figure, figure > *, figure a > * {
			@apply w-full;
			@apply aspect-square;
			@apply object-cover;
		}
	}
}

.positions {
	@apply grid;
	@apply grid-cols-2;
	@apply gap-4;
	@apply md:grid-cols-3;
	@apply lg:grid-cols-5;
	@apply xl:grid-cols-6;

	.card {
		@apply bg-base-100;
	}
}

.gallery {
	&.grid {
		@apply gap-4;
		@apply grid-cols-2;
		@apply md:grid-cols-3;
		@apply lg:grid-cols-4;
		@apply xl:grid-cols-5;
	}

	&.masonry {
		@apply relative;

		.masonry-sizer, .masonry-item {
			@apply w-full;
			@apply lg:w-1/3;
			@apply xl:w-1/4;
			@apply 2xl:w-1/5;
		}

		.masonry-item {
			@apply p-2;

			&.landscape {
				@apply w-full;
				@apply lg:w-2/3;
				@apply xl:w-1/2;
				@apply 2xl:w-2/5;
			}

			* {
				@apply block;
				@apply w-full;
				@apply lg:w-auto;
			}
		}

		.masonry-sizer {
			@apply h-0;
		}
	}

	img, figure, picture, video {
		@apply rounded-sm;
		@apply shadow-sm;
	}

	.gallery-item {
		@apply rounded-sm;
		@apply shadow-sm;

		img, figure, picture, video {
			@apply rounded-none;
			@apply shadow-none;
		}
	}
}

.ginlined-content {
	> * {
		@apply w-full;
		@apply h-full;
		@apply object-contain;
	}
}
