/**
 * Maestro – WordPress / Elementor additions.
 * The original design lives in style.css (unchanged). Only integration fixes here.
 */

/* ---------- Admin bar ---------- */
body.admin-bar .header-scroll {
	top: 32px;
}
@media (max-width: 782px) {
	body.admin-bar .header-scroll {
		top: 46px;
	}
}

/* ---------- Headings that became <h1> for SEO ---------- */
.dnews h1.box-title {
	margin: 0;
}

/* ---------- Elementor wrappers around Maestro widgets ----------
 * Every Maestro widget prints a full <section>; the Elementor container
 * around it must not add padding, gap or a max-width. */
.e-con.maestro-section,
.e-con.maestro-section > .e-con-inner {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--content-width: 100%;
	--container-max-width: 100%;
	padding: 0;
	max-width: 100%;
}
.elementor-section.maestro-section > .elementor-container {
	max-width: 100%;
}
.elementor-section.maestro-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
	padding: 0;
}
.elementor-widget[class*="elementor-widget-maestro-"] {
	width: 100%;
	max-width: 100%;
	margin-bottom: 0 !important;
}
.elementor-widget[class*="elementor-widget-maestro-"] > .elementor-widget-container {
	margin: 0;
	padding: 0;
}
/* Elementor's generic image rules must not override the design. */
.elementor [class*="elementor-widget-maestro-"] img {
	border-radius: 0;
	box-shadow: none;
}

/* ---------- Elementor editor ----------
 * Reveal animated elements immediately and keep the loading screen out of the way. */
.elementor-editor-active #loading,
.elementor-editor-preview #loading {
	display: none !important;
}
.elementor-editor-active .tk-ani {
	opacity: 1 !important;
	transform: none !important;
}
.maestro-editor-notice {
	padding: 24px;
	margin: 0;
	background: #f4eee8;
	border: 1px dashed #bb822c;
	color: #0b0202;
	font-size: 14px;
	text-align: center;
}

/* ---------- News list pagination ---------- */
.maestro-pagination {
	margin-top: 40px;
}
.maestro-pagination .nav-links {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
}
.maestro-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 10px;
	border: 1px solid #bb822c;
	color: #0b0202;
	font-size: 15px;
	text-decoration: none;
	transition: background 0.3s ease, color 0.3s ease;
}
.maestro-pagination .page-numbers.current,
.maestro-pagination .page-numbers:hover {
	background: #bb822c;
	color: #fff;
}
.maestro-pagination .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}
.maestro-empty {
	text-align: center;
	padding: 40px 0;
}
.news .box-select .select--dropdown li[data-url] {
	cursor: pointer;
}

/* ---------- Generic page / post content (Gutenberg) ---------- */
.maestro-page-content .box-content img,
.dnews .box-content img {
	max-width: 100%;
	height: auto;
}
.dnews .box-content .alignwide,
.dnews .box-content .alignfull {
	max-width: 100%;
}

/* ---------- Contact Form 7 inside Maestro forms ---------- */
.tk-form .wpcf7-form-control-wrap {
	display: block;
}
.tk-form .tk-form-checklist .wpcf7-form-control-wrap {
	display: inline;
}
.tk-form .wpcf7-not-valid-tip {
	margin-top: 6px;
	font-size: 13px;
}
.tk-form .wpcf7-response-output {
	margin: 20px 0 0;
	text-align: center;
}
.tk-form .wpcf7-spinner {
	display: block;
	margin: 10px auto 0;
}
