/*
Theme Name: RequiSiT – Hello Elementor Child
Description: Update-sichere Ergänzungen für Theater RequiSiT auf Basis von Hello Elementor.
Author: Theater RequiSiT e.V.
Template: hello-elementor
Version: 1.0.1
Text Domain: requisit-hello-child
*/

/* Klassische WordPress-/Gutenberg-Beiträge; Elementor-Inhalte bleiben unberührt. */
.requisit-news-post {
	--requisit-content-width: 1140px;
	--requisit-text-width: 820px;
	--requisit-red: #d20a11;
	padding: clamp(42px, 6vw, 88px) 24px clamp(72px, 9vw, 130px);
}

.requisit-news-post__header,
.requisit-news-post__content,
.requisit-news-post__footer {
	width: min(100%, var(--requisit-content-width));
	margin-inline: auto;
}

.requisit-news-post__image {
	margin: 0 0 clamp(28px, 4vw, 54px);
}

.requisit-news-post__image img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	max-height: none !important;
	object-fit: contain !important;
	object-position: center center;
	border-radius: 0;
}

.requisit-news-post__title-wrap {
	width: min(100%, var(--requisit-text-width));
	margin-inline: auto;
}

.requisit-news-post .requisit-news-post__title {
	margin: 0;
	font-size: clamp(2rem, 4.3vw, 4rem);
	line-height: 1.08;
	letter-spacing: -0.025em;
	overflow-wrap: anywhere;
}

.requisit-news-post__content {
	padding-top: clamp(34px, 5vw, 68px);
}

.requisit-news-post__content > :where(p, h1, h2, h3, h4, h5, h6, ul, ol, blockquote, table, pre, .wp-block-buttons) {
	width: min(100%, var(--requisit-text-width));
	margin-inline: auto;
}

.requisit-news-post__content > :first-child {
	margin-top: 0;
}

.requisit-news-post__content > :last-child {
	margin-bottom: 0;
}

.requisit-news-post__content p,
.requisit-news-post__content li {
	font-size: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
	line-height: 1.75;
}

.requisit-news-post__content p {
	margin-top: 0;
	margin-bottom: 1.35em;
}

.requisit-news-post__content :where(h2, h3, h4) {
	line-height: 1.2;
	margin-top: 1.8em;
	margin-bottom: 0.65em;
}

.requisit-news-post__content h2 {
	font-size: clamp(1.65rem, 2.8vw, 2.5rem);
}

.requisit-news-post__content h3 {
	font-size: clamp(1.35rem, 2.2vw, 1.9rem);
}

.requisit-news-post__content :where(ul, ol) {
	padding-left: 1.4em;
	margin-top: 0;
	margin-bottom: 1.5em;
}

.requisit-news-post__content :where(.wp-block-image, .wp-block-gallery, .wp-block-cover, .wp-block-video, .wp-block-embed) {
	margin-top: clamp(30px, 4vw, 52px);
	margin-bottom: clamp(30px, 4vw, 52px);
}

.requisit-news-post__content img {
	height: auto;
}

.requisit-news-post__content a:not(.wp-block-button__link) {
	color: var(--requisit-red);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

.requisit-news-post__content .alignwide {
	width: min(100%, var(--requisit-content-width));
	max-width: var(--requisit-content-width);
	margin-inline: auto;
}

.requisit-news-post__content .alignfull {
	width: calc(100% + 48px);
	max-width: none;
	margin-left: -24px;
	margin-right: -24px;
}

.requisit-news-post__footer {
	width: min(100%, var(--requisit-text-width));
	margin-top: 44px;
}

@media (max-width: 767px) {
	.requisit-news-post {
		padding-inline: 20px;
	}

	.requisit-news-post__image {
		margin-inline: -20px;
	}

	.requisit-news-post__image img {
		width: calc(100% + 40px);
	}

	.requisit-news-post__content .alignfull {
		width: calc(100% + 40px);
		margin-left: -20px;
		margin-right: -20px;
	}
}
