/* ==========================================================================
   A&T Jagd – Ergänzungen zu theme.json
   ========================================================================== */

:root {
	--atj-moos: var(--wp--preset--color--moos, #15460b);
	--atj-tanne: var(--wp--preset--color--tanne, #0e2a08);
	--atj-messing: var(--wp--preset--color--messing, #8a5a17);
	--atj-messing-d: var(--wp--preset--color--messing-dunkel, #6b4410);
	--atj-leinen: var(--wp--preset--color--leinen, #f5f2ea);
	--atj-sand: var(--wp--preset--color--sand, #e9e3d5);
	--atj-rinde: var(--wp--preset--color--rinde, #1d2219);
	--atj-stein: var(--wp--preset--color--stein, #555c4f);
	--atj-hinweis: var(--wp--preset--color--hinweis, #fbf2df);
	--atj-gold: var(--wp--preset--color--gold, #e0b040);
	--atj-oliv: var(--wp--preset--color--oliv, #7d8b45);
	--atj-r-s: 6px;
	--atj-r-m: 10px;
	--atj-r-l: 16px;
	--atj-line: #ddd5c3;
	--atj-shadow: 0 1px 2px rgba(29, 34, 25, .06), 0 8px 24px -12px rgba(29, 34, 25, .18);
	--atj-shadow-lift: 0 2px 4px rgba(29, 34, 25, .06), 0 18px 40px -18px rgba(29, 34, 25, .32);
}

::selection { background: #d8e6cf; color: var(--atj-tanne); }

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--atj-messing);
	outline-offset: 2px;
	border-radius: 2px;
}

.screen-reader-text:focus { background: #fff; color: var(--atj-moos); }

.atj-muted { color: var(--atj-stein); }

/* --------------------------------------------------------------------------
   Ankündigungsleiste & Kopfbereich
   ----------------------------------------------------------------------- */

.atj-announce {
	font-size: var(--wp--preset--font-size--x-small);
	letter-spacing: .02em;
}
.atj-announce a { color: inherit; }

.atj-header {
	position: sticky;
	top: 0;
	z-index: 50;
	transition: box-shadow .2s ease;
}
body.admin-bar .atj-header { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { body.admin-bar .atj-header { top: 0; } }
.atj-header.is-scrolled { box-shadow: inset 0 -3px 0 var(--atj-gold), 0 8px 20px -14px rgba(29, 34, 25, .45); }

.atj-header {
	border-bottom: 1px solid var(--atj-line);
	box-shadow: inset 0 -3px 0 var(--atj-gold);
}
.atj-logo { margin: 0 !important; line-height: 0; }
.atj-logo img { height: auto; max-width: 100%; display: block; }
.atj-header .wp-block-site-title a,
.atj-header .wp-block-site-title { color: var(--atj-moos); }
.atj-brand-sub {
	color: #cfe0c6;
	font-size: var(--wp--preset--font-size--x-small);
	letter-spacing: .04em;
	margin: 0;
	line-height: 1.2;
}
.atj-header .wp-block-site-logo img { max-height: 56px; width: auto; }

.atj-header .wp-block-navigation a,
.atj-header .wp-block-navigation .wp-block-navigation-item__content {
	color: var(--atj-moos);
	text-decoration: none;
	padding: .55rem .2rem;
	border-bottom: 2px solid transparent;
}
.atj-header .wp-block-navigation a:hover,
.atj-header .wp-block-navigation .current-menu-item > a {
	border-bottom-color: var(--atj-gold);
	color: var(--atj-tanne);
}
.atj-header .wp-block-navigation__submenu-container {
	background: #fff !important;
	color: var(--atj-rinde) !important;
	border: 1px solid var(--atj-line) !important;
	border-radius: var(--atj-r-s);
	box-shadow: var(--atj-shadow-lift);
	padding: .4rem 0 !important;
	min-width: 230px !important;
}
.atj-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--atj-rinde) !important;
	padding: .55rem 1.1rem !important;
	border: 0 !important;
}
.atj-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--atj-leinen); color: var(--atj-moos) !important; }
.atj-header .wp-block-navigation__submenu-container .atj-nav-child .wp-block-navigation-item__content {
	padding: .3rem 1.1rem .3rem 2rem !important;
	font-size: .875rem;
	color: var(--atj-stein) !important;
}
/* Unterkategorien im Sortiment-Menü nur, wenn die Kurzlinks (Optik, Waffen …) ausgeblendet sind */
@media (min-width: 1261px) {
	.atj-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__submenu-container .atj-nav-child { display: none; }
}
.atj-header .wp-block-navigation__submenu-container .atj-nav-all .wp-block-navigation-item__content { border-top: 1px solid var(--atj-line) !important; margin-top: .3rem; font-weight: 600; color: var(--atj-moos) !important; }
.atj-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .atj-nav-child .wp-block-navigation-item__content { color: rgba(255, 255, 255, .72) !important; font-size: .9375rem; font-weight: 400; padding: .1rem 0 !important; }
.atj-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none;
	padding: 0 0 0 1rem !important;
}
.atj-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: #fff !important; }
.atj-header .wp-block-navigation__responsive-container-open,
.atj-header .wp-block-navigation__responsive-container-close { color: var(--atj-moos); }
.atj-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { color: #fff; }
.atj-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { color: #fff !important; }
.atj-header .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--atj-moos) !important;
	color: #fff !important;
	padding: 1.5rem;
}
.atj-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-size: 1.25rem;
	padding: .5rem 0;
}

/* Icons rechts: Suche, Konto, Warenkorb */
.atj-header-actions { gap: .25rem !important; }
.atj-header-actions .wp-block-search__button,
.atj-header .wc-block-mini-cart__button,
.atj-header .wp-block-woocommerce-customer-account a {
	color: var(--atj-moos) !important;
	background: transparent !important;
	border: 0 !important;
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.atj-header .wp-block-woocommerce-customer-account svg,
.atj-header .wc-block-customer-account svg,
.atj-header .wc-block-mini-cart__icon { width: 24px !important; height: 24px !important; color: var(--atj-moos); }
.atj-header .wp-block-woocommerce-customer-account svg { flex: 0 0 24px; }
.atj-header .wc-block-mini-cart__badge {
	background: var(--atj-gold) !important;
	color: var(--atj-tanne) !important;
	border-color: #fff !important;
	font-weight: 700;
}
.atj-header .wc-block-mini-cart__amount { color: var(--atj-moos); font-weight: 500; }
.atj-header .wp-block-search__button svg,
.atj-header .wc-block-mini-cart__icon { fill: currentColor; color: var(--atj-moos); }
.atj-header .wp-block-search.wp-block-search__button-behavior-expand .wp-block-search__input {
	border-radius: var(--atj-r-s);
	border: 1px solid var(--atj-line);
	min-height: 40px;
	padding: 0 .75rem;
}
.atj-header .wp-block-search__inside-wrapper { border: 0; background: transparent; }

/* --------------------------------------------------------------------------
   Blockstile
   ----------------------------------------------------------------------- */

.is-style-atj-eyebrow {
	font-size: var(--wp--preset--font-size--x-small) !important;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--atj-messing-d);
}

.is-style-atj-card {
	position: relative;
	background: #fff;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-m);
	box-shadow: var(--atj-shadow);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.is-style-atj-card:has(a):hover {
	transform: translateY(-3px);
	box-shadow: var(--atj-shadow-lift);
	border-color: #cbbf9f;
}
/* Ganze Karte klickbar über den Überschriften-Link */
.is-style-atj-card :is(h2, h3, h4) a { text-decoration: none; color: inherit; }
.is-style-atj-card :is(h2, h3, h4) a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
}
.is-style-atj-card :is(h2, h3, h4) a:focus-visible { outline: none; }
.is-style-atj-card:has(:is(h2, h3, h4) a:focus-visible) {
	outline: 3px solid var(--atj-messing);
	outline-offset: 3px;
}

.is-style-atj-topo {
	background-image: url("../img/hoehenlinien.svg");
	background-size: 800px 800px;
	background-repeat: repeat;
}

.wp-block-button.is-style-atj-messing .wp-block-button__link {
	background: var(--atj-messing);
	color: #fff;
}
.wp-block-button.is-style-atj-messing .wp-block-button__link:hover { background: var(--atj-messing-d); }

.wp-block-button.is-style-atj-hell .wp-block-button__link {
	background: #fff;
	color: var(--atj-moos);
}
.wp-block-button.is-style-atj-hell .wp-block-button__link:hover { background: #e3ecdc; color: var(--atj-tanne); }

.wp-block-button.is-style-outline .wp-block-button__link {
	border: 2px solid currentColor;
	background: transparent;
	color: var(--atj-moos);
	padding: calc(.85em - 2px) calc(1.5em - 2px);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--atj-moos); color: #fff; border-color: var(--atj-moos); }

ul.is-style-atj-check { list-style: none; padding-left: 0; }
ul.is-style-atj-check li {
	position: relative;
	padding-left: 2rem;
	margin-bottom: .55rem;
}
ul.is-style-atj-check li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .2em;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: 50%;
	background: currentColor;
	opacity: .14;
}
ul.is-style-atj-check li::after {
	content: "";
	position: absolute;
	left: .38rem;
	top: .43em;
	width: .42rem;
	height: .72rem;
	border: solid currentColor;
	border-width: 0 2.5px 2.5px 0;
	transform: rotate(40deg);
}

/* --------------------------------------------------------------------------
   Startseite
   ----------------------------------------------------------------------- */

.atj-hero { overflow: hidden; }
.atj-hero .wp-block-cover__image-background { object-position: 50% 100%; }
.atj-hero h1 { text-wrap: balance; }
.atj-hero .atj-hero-lead { max-width: 34rem; }
@media (max-width: 781px) {
	.atj-hero { min-height: 760px !important; }
}
.atj-hero .wp-block-button.is-style-outline .wp-block-button__link { background: rgba(255, 255, 255, .55); }

.atj-trust .wp-block-column { display: flex; gap: .9rem; align-items: flex-start; }
.atj-trust img { flex: 0 0 auto; }

.atj-cat-grid .atj-cat-icon { margin: 0; }
.atj-cat-grid .atj-cat-icon img { width: 52px; height: 52px; }
.atj-cat-grid h3 { margin: 0; }
.atj-cat-grid p { margin: 0; color: var(--atj-stein); }
.atj-cat-grid .is-style-atj-card::before {
	content: "→";
	position: absolute;
	top: 1.35rem;
	right: 1.5rem;
	font-size: 1.35rem;
	line-height: 1;
	color: var(--atj-messing);
	transition: transform .18s ease;
}
.atj-cat-grid .is-style-atj-card:hover::before { transform: translateX(4px); }
.atj-cat-grid .atj-cat-all { background: var(--atj-sand); border-style: dashed; box-shadow: none; }

.atj-step-no {
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	background: var(--atj-moos);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--wp--preset--font-family--roboto-slab);
	font-weight: 700;
	font-size: 1.25rem;
	margin: 0;
}

.atj-stat strong {
	display: block;
	font-family: var(--wp--preset--font-family--roboto-slab);
	font-size: clamp(1.5rem, 1.3rem + .8vw, 1.875rem);
	margin-bottom: .2rem;
	line-height: 1.05;
	color: #fff;
}

/* --------------------------------------------------------------------------
   Produktkarten (Produkt-Sammlung)
   ----------------------------------------------------------------------- */

.wc-block-product-template .wc-block-product,
.wc-block-product-template > li {
	background: #fff;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-m);
	padding: 0 0 1.1rem;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: box-shadow .18s ease, transform .18s ease;
}
.wc-block-product-template .wc-block-product:hover { box-shadow: var(--atj-shadow-lift); transform: translateY(-2px); }

.wc-block-product .wc-block-components-product-image {
	margin: 0 0 .9rem !important;
	background: #fff;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border-bottom: 1px solid #efeadf;
}
.wc-block-product .wc-block-components-product-image a,
.wc-block-product .wc-block-components-product-image img {
	width: 100%;
	height: 100%;
}
.wc-block-product .wc-block-components-product-image img {
	object-fit: contain;
	padding: 6%;
	box-sizing: border-box;
}
.wc-block-product .wp-block-post-title,
.wc-block-product .wp-block-woocommerce-product-price,
.wc-block-product .wc-block-components-product-button,
.wc-block-product .atj-restricted-hint,
.wc-block-product .wp-block-post-terms {
	padding-left: 1.1rem;
	padding-right: 1.1rem;
	text-align: left !important;
	justify-content: flex-start !important;
}
.wc-block-product .wp-block-post-terms {
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--atj-messing-d);
	margin: 0 0 .25rem;
}
.wc-block-product .wp-block-post-terms a { color: inherit; text-decoration: none; }
.wc-block-product .wp-block-post-title {
	font-family: var(--wp--preset--font-family--roboto);
	font-weight: 500;
	font-size: 1rem !important;
	line-height: 1.4;
	margin: 0 0 .5rem;
	color: var(--atj-rinde);
	flex: 1 1 auto;
}
.wc-block-product .wp-block-post-title a { color: inherit; }
.wc-block-product .wp-block-post-title { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: normal; word-break: normal; }
.wc-block-product .wp-block-woocommerce-product-price .wc-block-components-product-price { padding: 0; }
.wc-block-product .wp-block-post-title a:hover { color: var(--atj-moos); text-decoration: underline; }
.wc-block-product .wp-block-woocommerce-product-price { font-size: 1.25rem !important; margin: 0 0 .9rem !important; }
.wc-block-product .wc-block-components-product-button { margin: 0 !important; }
.wc-block-product .wc-block-components-product-button .wp-block-button__link,
.wc-block-product .wc-block-components-product-button__button {
	width: 100%;
	font-size: .9375rem;
	padding: .8em 1em;
	justify-content: center;
	min-height: 46px;
}
.wc-block-product .wc-block-components-product-button .added_to_cart {
	display: block;
	margin-top: .5rem;
	font-size: .875rem;
	text-align: center;
}

.wc-block-components-product-sale-badge,
.wc-block-components-product-sale-badge--align-right {
	background: var(--atj-messing) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-size: .75rem !important;
	font-weight: 700;
	letter-spacing: .04em;
	padding: .3em .8em !important;
	text-transform: uppercase;
}
.wc-block-components-product-price del { color: var(--atj-stein); font-weight: 400; }
.wc-block-components-product-price ins { text-decoration: none; }

/* Hinweis „Erlaubnispflichtig“ in Listen */
.atj-restricted-hint {
	margin: .55rem 0 0;
	font-size: .8125rem;
	font-weight: 500;
	color: var(--atj-messing-d);
	display: flex;
	align-items: center;
	gap: .4rem;
}
.atj-restricted-hint { align-items: flex-start; line-height: 1.35; }
.atj-restricted-hint::before {
	margin-top: .3em;
	content: "";
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	background: var(--atj-messing);
	flex: 0 0 auto;
}

/* Hinweiskasten */
.atj-restricted-notice {
	display: flex;
	gap: .85rem;
	align-items: flex-start;
	background: var(--atj-hinweis);
	border: 1px solid #e2c48a;
	border-left: 4px solid var(--atj-messing);
	border-radius: var(--atj-r-s);
	padding: 1rem 1.15rem;
	margin: 0 0 1.25rem;
	color: #4e3509;
	font-size: .9375rem;
	line-height: 1.5;
}
.atj-restricted-notice p { margin: 0; }
.atj-restricted-notice p + p { margin-top: .25rem; }
.atj-restricted-notice__title { font-weight: 700; color: #3f2a06; }
.atj-restricted-notice__icon { flex: 0 0 auto; color: var(--atj-messing); margin-top: 1px; }
.atj-restricted-notice--cart { margin-bottom: 2rem; }

/* --------------------------------------------------------------------------
   Kategorie- & Shopseite
   ----------------------------------------------------------------------- */

.atj-archive-head {
	border-bottom: 1px solid var(--atj-line);
}
.woocommerce-breadcrumb,
.wc-block-breadcrumbs {
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--atj-stein);
}
.woocommerce-breadcrumb a,
.wc-block-breadcrumbs a { color: var(--atj-stein); text-decoration: none; }
.woocommerce-breadcrumb a:hover,
.wc-block-breadcrumbs a:hover { color: var(--atj-moos); text-decoration: underline; }
.atj-crumb-sep { margin: 0 .5em; opacity: .55; }

.wc-block-catalog-sorting select,
.woocommerce-ordering select {
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-s);
	background-color: #fff;
	padding: .55rem 2rem .55rem .75rem;
	min-height: 44px;
	font: inherit;
	font-size: .9375rem;
}
.wp-block-woocommerce-product-results-count { color: var(--atj-stein); font-size: .9375rem; }
.wp-block-term-description { color: var(--atj-stein); max-width: 46rem; }

.atj-cat-chips { gap: .5rem !important; }
.atj-cat-chips .wp-block-button__link {
	background: #fff;
	color: var(--atj-moos);
	border: 1px solid var(--atj-line);
	border-radius: 999px;
	padding: .55em 1.1em;
	font-size: .9375rem;
	font-weight: 500;
}
.atj-cat-chips .wp-block-button__link:hover { background: var(--atj-moos); color: #fff; border-color: var(--atj-moos); }

/* Unterkategorien (z. B. Optik → Zielfernrohre, Bekleidung → Herren → Hosen) */
.atj-sub-chips + .atj-sub-chips { border-top: 0; padding-top: .15rem; }
.atj-sub-chips--3 a { background: #fff; border-color: var(--atj-line); }
.atj-sub-chips--3 a:hover { border-color: var(--atj-moos); }
.atj-sub-chips { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; margin: .35rem 0 0; padding: .6rem 0 0; border-top: 1px dashed var(--atj-line); }
.atj-sub-chips__label { font-size: .8125rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--atj-messing); margin-right: .35rem; }
.atj-sub-chips a {
	display: inline-block;
	padding: .4em .95em;
	border-radius: 999px;
	background: var(--atj-leinen);
	border: 1px solid transparent;
	color: var(--atj-moos);
	font-size: .875rem;
	font-weight: 500;
	text-decoration: none;
}
.atj-sub-chips a:hover { border-color: var(--atj-moos); }
.atj-sub-chips a[aria-current="page"] { background: var(--atj-oliv); color: #fff; }
.atj-sub-chips a:focus-visible { outline: 3px solid var(--atj-messing); outline-offset: 2px; }

.wp-block-query-pagination a,
.wp-block-query-pagination .page-numbers {
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--atj-r-s);
	text-decoration: none;
}
.wp-block-query-pagination .page-numbers.current { background: var(--atj-moos); color: #fff; }

/* --------------------------------------------------------------------------
   Produktseite
   ----------------------------------------------------------------------- */

.atj-product-gallery .woocommerce-product-gallery {
	background: #fff;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-m);
	padding: 1rem;
}
.atj-product-gallery .flex-control-thumbs li img { border-radius: var(--atj-r-s); }
.atj-product-summary .wp-block-post-title { margin-top: 0; }
.atj-product-summary .wp-block-woocommerce-product-price { font-size: 1.875rem !important; }
.atj-product-summary .wp-block-post-excerpt { color: #3a4135; }

.atj-product-summary form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	align-items: stretch;
	margin: 1.25rem 0;
}
.atj-product-summary form.cart .quantity input,
.wc-block-components-quantity-selector {
	min-height: 52px;
}
.atj-product-summary form.cart .quantity input.qty {
	width: 4.5rem;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-s);
	text-align: center;
	font: inherit;
	font-weight: 700;
	background: #fff;
}
.atj-product-summary form.cart .single_add_to_cart_button,
.atj-product-summary .wc-block-components-product-add-to-cart-button,
.atj-product-summary .wp-block-woocommerce-product-button .wp-block-button__link {
	flex: 1 1 220px;
	min-height: 52px;
	font-size: 1.0625rem;
}
/* Größen-/Variantenauswahl: Beschriftung über der Auswahlliste */
.atj-product-summary .variations { width: 100%; border-collapse: collapse; margin: .25rem 0 .75rem; }
.atj-product-summary .variations tr { display: flex; flex-direction: column; gap: .35rem; margin-bottom: .6rem; }
.atj-product-summary .variations td,
.atj-product-summary .variations th { display: block; padding: 0 !important; text-align: left; line-height: 1.4; }
.atj-product-summary .variations th label { font-weight: 600; font-size: .9375rem; color: var(--atj-rinde); }
.atj-product-summary .variations td.value { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
.atj-product-summary .variations select {
	width: 100%;
	max-width: 320px;
	min-height: 46px;
	height: auto !important;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-s);
	padding: .6rem 2.25rem .6rem .85rem !important;
	line-height: 1.4 !important;
	background-color: #fff;
	font: inherit;
	font-size: 1rem !important;
	color: var(--atj-rinde);
}
.atj-product-summary .variations select:hover { border-color: var(--atj-oliv); }
.atj-product-summary .reset_variations { font-size: .875rem; color: var(--atj-stein); }
.atj-product-summary .woocommerce-variation-price { margin: .25rem 0 .5rem; }
.atj-product-summary .woocommerce-variation-availability p { margin: 0 0 .5rem; }
.atj-product-summary .stock { font-weight: 500; }
.atj-product-summary .stock.in-stock { color: var(--atj-moos); }
.atj-product-summary .stock.out-of-stock { color: #9b2c1b; }

.atj-product-meta { font-size: .875rem; color: var(--atj-stein); }
.atj-product-meta a { color: var(--atj-stein); }

.atj-service-list {
	list-style: none;
	margin: 0;
	padding: 1rem 1.15rem;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-m);
	background: #fff;
	display: grid;
	gap: .6rem;
	font-size: .9375rem;
}
.atj-service-list li { display: flex; gap: .65rem; align-items: flex-start; }
.atj-service-list svg { flex: 0 0 auto; color: var(--atj-moos); margin-top: 2px; }

/* Reiter Beschreibung/Infos */
.wp-block-woocommerce-product-details .wc-tabs,
.woocommerce-tabs .tabs {
	display: flex;
	flex-wrap: wrap;
	gap: .25rem;
	border-bottom: 1px solid var(--atj-line);
	padding: 0;
	margin: 0 0 1.5rem;
	list-style: none;
}
.wp-block-woocommerce-product-details .wc-tabs li a,
.woocommerce-tabs .tabs li a {
	display: block;
	padding: .8rem 1.1rem;
	text-decoration: none;
	color: var(--atj-stein);
	font-weight: 500;
	border-bottom: 3px solid transparent;
	margin-bottom: -1px;
}
.wp-block-woocommerce-product-details .wc-tabs li.active a,
.woocommerce-tabs .tabs li.active a { color: var(--atj-moos); border-bottom-color: var(--atj-moos); }
.woocommerce-Tabs-panel h2:first-child { font-size: var(--wp--preset--font-size--large); }
.woocommerce-product-attributes { border-collapse: collapse; width: 100%; max-width: 46rem; }
.woocommerce-product-attributes th,
.woocommerce-product-attributes td { text-align: left; padding: .6rem .75rem; border-bottom: 1px solid var(--atj-line); }
.woocommerce-product-attributes th { width: 35%; font-weight: 500; }
.woocommerce-product-attributes td p { margin: 0; }

/* --------------------------------------------------------------------------
   Warenkorb & Kasse
   ----------------------------------------------------------------------- */

.atj-checkout-header { border-bottom: 1px solid var(--atj-line); box-shadow: inset 0 -3px 0 var(--atj-gold); }
.atj-checkout-header a { color: var(--atj-moos); }
.wc-block-cart,
.wc-block-checkout { margin-top: .5rem; }
.wc-block-components-sidebar .wc-block-components-totals-wrapper,
.wc-block-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
	background: #fff;
}
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
	background: #fff;
	border-radius: var(--atj-r-m);
}
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	min-height: 52px;
	border-radius: var(--atj-r-s) !important;
	font-weight: 700 !important;
}
.wc-block-components-text-input input,
.wc-block-components-combobox .components-combobox-control input,
.wc-block-components-textarea {
	border-radius: var(--atj-r-s) !important;
}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
	box-shadow: inset 0 0 0 2px var(--atj-moos) !important;
}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked {
	background: var(--atj-moos);
	border-color: var(--atj-moos);
}
.wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: #fff; }
/* Bestätigung der Erwerbsberechtigung hervorheben */
[class*="atj-jagd-erwerbsberechtigung"],
.atj-confirm {
	background: var(--atj-hinweis);
	border: 1px solid #e2c48a;
	border-radius: var(--atj-r-s);
	padding: .9rem 1rem !important;
	margin: 1rem 0 !important;
}
.atj-confirm label { font-size: .9375rem; line-height: 1.5; }

.wc-block-components-notice-banner.is-info,
.woocommerce-info { border-color: var(--atj-moos); }

/* --------------------------------------------------------------------------
   Fußbereich
   ----------------------------------------------------------------------- */

.atj-footer,
.atj-footer p { color: #d3dacb; }
.atj-footer a { color: #fff; text-decoration-color: rgba(255, 255, 255, .35); text-underline-offset: 3px; }
.atj-footer a:hover { color: #e7c98f; text-decoration-color: currentColor; }
.atj-footer h2,
.atj-footer h3 { color: #fff; }
.atj-footer-heading {
	font-family: var(--wp--preset--font-family--roboto) !important;
	font-size: .8125rem !important;
	font-weight: 700 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #e7c98f !important;
	margin-bottom: .9rem !important;
}
.atj-footer-links { list-style: none; padding: 0; margin: 0; display: grid; gap: .45rem; }
.atj-footer-links a { text-decoration: none; }
.atj-footer-links a:hover { text-decoration: underline; }
.atj-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .14); font-size: .875rem; }
.atj-pay-badges { display: flex; flex-wrap: wrap; gap: .4rem; list-style: none; margin: 0; padding: 0; }
.atj-pay-badges li {
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 4px;
	padding: .2rem .55rem;
	font-size: .75rem;
	font-weight: 500;
	color: #fff;
}

/* --------------------------------------------------------------------------
   Sonstiges
   ----------------------------------------------------------------------- */

.wp-block-search__input { border-radius: var(--atj-r-s); }
.atj-404-code {
	font-family: var(--wp--preset--font-family--roboto-slab);
	font-size: clamp(5rem, 4rem + 6vw, 9rem);
	line-height: 1;
	color: var(--atj-sand);
	font-weight: 700;
	margin: 0;
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

@media print {
	.atj-announce, .atj-header, .atj-footer { display: none !important; }
}

/* Vorlagenteile ohne Abstand zum Inhalt */
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part,
.wp-site-blocks > main { margin-top: 0; }

/* --------------------------------------------------------------------------
   Handy
   ----------------------------------------------------------------------- */
@media (max-width: 600px) {
	.atj-announce .wp-block-group { justify-content: center !important; }
	.atj-announce p:last-child { display: none; }
	.atj-announce p { text-align: center; }
	.atj-brand-sub { display: none; }
	.atj-header .wp-block-site-title { font-size: 1.375rem; white-space: nowrap; }

	.atj-hero { min-height: 0 !important; padding-bottom: 350px !important; }
	.atj-hero img.wp-block-cover__image-background { object-position: 72% 100%; }
	.atj-hero .wp-block-buttons .wp-block-button { width: 100%; }
	.atj-hero .wp-block-buttons .wp-block-button__link { width: 100%; }

	.atj-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: .75rem !important; }
	.atj-cat-grid .is-style-atj-card { padding: 1rem !important; }
	.atj-cat-grid .is-style-atj-card::before { display: none; }
	.atj-cat-grid .atj-cat-icon img { width: 36px; height: 36px; }
	.atj-cat-grid h3 { font-size: 1rem !important; hyphens: auto; }
	.atj-cat-grid p { font-size: .8125rem !important; }

	.wc-block-product .wp-block-post-title,
	.wc-block-product .wp-block-woocommerce-product-price,
	.wc-block-product .wc-block-components-product-button,
	.wc-block-product .atj-restricted-hint,
	.wc-block-product .wp-block-post-terms { padding-left: .8rem; padding-right: .8rem; }
	.wc-block-product .wc-block-components-product-button .wp-block-button__link { font-size: .875rem; padding: .7em .5em; }
}
.atj-header .wp-block-woocommerce-customer-account a { padding: 0 !important; }
.atj-archive-head .wp-block-term-description,
.atj-archive-head .atj-restricted-notice { margin-left: 0 !important; margin-right: 0 !important; }
.atj-archive-head .wp-block-term-description p { margin: 0; }
.atj-restricted-notice--archive { max-width: 46rem; margin: .5rem 0 .25rem !important; }
.atj-restricted-notice a { color: #3f2a06; font-weight: 500; }
.atj-cat-chips .wp-block-button__link[aria-current="page"] { background: var(--atj-moos); color: #fff; border-color: var(--atj-moos); }

.atj-product-gallery .woocommerce-product-gallery { margin: 0 !important; width: 100% !important; float: none !important; }
.atj-product-summary .is-style-atj-eyebrow a { color: inherit; text-decoration: none; }
.atj-product-summary .is-style-atj-eyebrow a:hover { text-decoration: underline; }
.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce-tabs ul.tabs { padding: 0 !important; overflow: visible !important; }
.woocommerce-tabs ul.tabs li {
	border: 0 !important;
	background: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 0 !important;
}
.woocommerce-tabs .panel { margin: 0 0 1rem; max-width: 46rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.tabs li a { padding: .8rem 1.1rem !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li:first-child a { padding-left: 0 !important; }
.atj-product-summary .atj-restricted-notice { margin-top: .5rem; }
/* Logo auf grünem Grund weiß */
.atj-logo-weiss .atj-footer .atj-logo img { filter: brightness(0) invert(1); opacity: .92; }
@media (max-width: 600px) {
	.atj-header .atj-logo img { width: 118px !important; }
}

/* Starterpakete */
.wc-block-product .atj-starter-excerpt {
	padding: 0 1.1rem;
	margin: 0 0 .75rem;
	font-size: .875rem;
	line-height: 1.45;
	color: var(--atj-stein);
}
.wc-block-product .atj-starter-excerpt .wp-block-post-excerpt__more-text { display: none; }
.atj-starter .wc-block-product { border-top: 3px solid var(--atj-gold); }
@media (max-width: 600px) {
	.wc-block-product .atj-starter-excerpt { padding: 0 .8rem; }
}
.wc-block-product:has(.atj-starter-excerpt) .wp-block-post-title { flex: 0 0 auto; }
.wc-block-product .atj-starter-excerpt { flex: 1 1 auto; }

/* --------------------------------------------------------------------------
   Buchungskalender
   ----------------------------------------------------------------------- */
.atj-booking {
	background: #fff;
	border: 1px solid var(--atj-line);
	border-radius: var(--atj-r-l);
	box-shadow: var(--atj-shadow);
	padding: clamp(1.1rem, .6rem + 2vw, 2.25rem);
}
.atj-booking [hidden] { display: none !important; }
.atj-booking__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: clamp(1.25rem, .5rem + 3vw, 3rem);
}
@media (max-width: 781px) { .atj-booking__grid { grid-template-columns: 1fr; } }
.atj-booking__step {
	display: flex;
	align-items: center;
	gap: .6rem;
	font-weight: 700;
	color: var(--atj-moos);
	margin-bottom: 1rem;
	font-family: var(--wp--preset--font-family--roboto-slab);
	font-size: 1.125rem;
}
.atj-booking__step span {
	width: 1.9rem;
	height: 1.9rem;
	border-radius: 50%;
	background: var(--atj-gold);
	color: var(--atj-tanne);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: .95rem;
}
.atj-booking__cal-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: .5rem; }
.atj-booking__month { margin: 0; font-size: 1.25rem; color: var(--atj-rinde); }
.atj-booking__nav {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid var(--atj-line);
	background: #fff;
	color: var(--atj-moos);
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
}
.atj-booking__nav:hover:not(:disabled) { background: var(--atj-leinen); }
.atj-booking__nav:disabled { opacity: .35; cursor: default; }
.atj-booking__weekdays,
.atj-booking__days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .35rem; }
.atj-booking__weekdays span {
	text-align: center;
	font-size: .75rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--atj-stein);
	padding: .3rem 0;
}
.atj-booking__days[aria-busy="true"] { opacity: .45; }
.atj-day {
	aspect-ratio: 4 / 3;
	min-height: 40px;
	border-radius: var(--atj-r-s);
	border: 1px solid transparent;
	background: transparent;
	font: inherit;
	font-weight: 500;
	color: #a3a69a;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.atj-day--pad { visibility: hidden; }
.atj-day--free {
	background: var(--atj-laub, #e3ecdc);
	color: var(--atj-tanne);
	font-weight: 700;
	cursor: pointer;
	border-color: #cddbc3;
}
.atj-day--free:hover { background: #d3e3c8; border-color: var(--atj-moos); }
.atj-day.is-selected { background: var(--atj-moos); color: #fff; border-color: var(--atj-moos); }
.atj-day--today::after {
	content: "";
	position: absolute;
	bottom: 5px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--atj-gold);
}
.atj-day--holiday { text-decoration: line-through; }
.atj-booking__legend { font-size: .8125rem; color: var(--atj-stein); margin: .9rem 0 0; display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.atj-dot { width: .8rem; height: .8rem; border-radius: 3px; display: inline-block; }
.atj-dot--free { background: var(--atj-laub, #e3ecdc); border: 1px solid #cddbc3; }
.atj-dot--none { background: #f1efe9; border: 1px solid #e3dfd4; margin-left: .6rem; }
.atj-booking__hint { color: var(--atj-stein); margin: 0 0 .9rem; }
.atj-booking__hint--day { color: var(--atj-rinde); font-weight: 700; }
.atj-booking__slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(6.5rem, 1fr)); gap: .5rem; }
.atj-slot {
	min-height: 46px;
	border-radius: var(--atj-r-s);
	border: 1px solid var(--atj-line);
	background: #fff;
	color: var(--atj-moos);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}
.atj-slot:hover { border-color: var(--atj-moos); background: var(--atj-leinen); }
.atj-slot.is-selected { background: var(--atj-moos); color: #fff; border-color: var(--atj-moos); }
.atj-booking__form {
	margin-top: clamp(1.25rem, .5rem + 2vw, 2.25rem);
	padding-top: clamp(1.25rem, .5rem + 2vw, 2rem);
	border-top: 1px solid var(--atj-line);
}
.atj-booking__chosen {
	background: var(--atj-leinen);
	border-left: 4px solid var(--atj-gold);
	border-radius: var(--atj-r-s);
	padding: .8rem 1rem;
	margin: 0 0 1.25rem;
}
.atj-booking__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .25rem 1.25rem; }
@media (max-width: 600px) { .atj-booking__fields { grid-template-columns: 1fr; } }
.atj-booking__fields p { margin: 0 0 .75rem; }
.atj-booking__full { grid-column: 1 / -1; }
.atj-booking__fields label { display: block; font-weight: 500; margin-bottom: .3rem; font-size: .9375rem; }
.atj-booking__fields input[type=text],
.atj-booking__fields input[type=email],
.atj-booking__fields input[type=tel],
.atj-booking__fields select,
.atj-booking__fields textarea {
	width: 100%;
	box-sizing: border-box;
	min-height: 46px;
	border: 1px solid #cfc7b4;
	border-radius: var(--atj-r-s);
	padding: .6rem .8rem;
	font: inherit;
	background: #fff;
	color: var(--atj-rinde);
}
.atj-booking__fields [aria-invalid="true"] { border-color: #9b2c1b; box-shadow: 0 0 0 1px #9b2c1b; }
.atj-booking__consent label { display: flex; gap: .6rem; align-items: flex-start; font-weight: 400; line-height: 1.5; }
.atj-booking__consent input { width: 1.2rem; height: 1.2rem; margin-top: .15rem; accent-color: var(--atj-moos); flex: 0 0 auto; }
.atj-booking__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.atj-booking__error { color: #9b2c1b; font-weight: 500; min-height: 1em; margin: .25rem 0 .75rem; }
.atj-booking__actions { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; align-items: center; margin: 0; }
.atj-booking__actions .wp-element-button { min-height: 52px; }
.atj-booking__back { background: none; border: 0; color: var(--atj-moos); text-decoration: underline; font: inherit; cursor: pointer; min-height: 44px; }
.atj-booking__done { text-align: center; padding: 1.5rem .5rem; color: var(--atj-moos); outline: none; }
.atj-booking__done h3 { margin: .5rem 0; }
.atj-booking__done p { color: var(--atj-rinde); max-width: 34rem; margin: .5rem auto; }
.atj-booking__fail { grid-column: 1 / -1; color: #9b2c1b; }
.atj-booking--storno h2 { margin-top: 0; }

/* Kopfbereich: Termin-Button */
.atj-header-cta .wp-block-button__link {
	padding: .6em 1.1em !important;
	font-size: .9375rem !important;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	background: var(--atj-moos);
	color: #fff !important;
	white-space: nowrap;
}
.atj-header-cta .wp-block-button__link:hover { background: var(--atj-tanne); }
.atj-header .atj-nav-mobile-only { display: none !important; }
.atj-header .wp-block-navigation__responsive-container.is-menu-open .atj-nav-mobile-only { display: flex !important; }
@media (max-width: 781px) { .atj-header .atj-header-cta { display: none !important; } }
.atj-outline-hell .wp-block-button__link { color: #fff !important; border-color: rgba(255,255,255,.7) !important; }
.atj-outline-hell .wp-block-button__link:hover { background: rgba(255,255,255,.12) !important; color: #fff !important; border-color: #fff !important; }
/* Kurzlinks: nur auf großen Bildschirmen, im Handymenü stecken sie im „Sortiment“. */
.atj-header .wp-block-navigation__responsive-container.is-menu-open .atj-nav-shortcut { display: none !important; }
@media (max-width: 1260px) { .atj-header .atj-nav-shortcut:not(.atj-nav-starter) { display: none !important; } }
.atj-header .wp-block-navigation__responsive-container.is-menu-open .atj-nav-mobile-only .wp-block-navigation-item__content {
	margin-top: 1rem;
	border: 2px solid var(--atj-gold) !important;
	border-radius: var(--atj-r-s);
	padding: .6rem 1.2rem !important;
}

/* ------------------------------------------------------------------
 * Produktanfrage („Auf Anfrage“ / „Wir besorgen es gern“)
 * ---------------------------------------------------------------- */
.atj-price-request { font-family: var(--wp--preset--font-family--roboto-slab, inherit); color: var(--atj-moos); font-weight: 700; }
.wc-block-components-product-price .atj-price-request { font-size: .9em; }
.atj-anfrage {
	margin: .5rem 0 1rem;
	background: #fff;
	border: 1px solid var(--atj-line);
	border-top: 4px solid var(--atj-gold);
	border-radius: var(--atj-r-m);
	padding: clamp(1rem, .6rem + 1.5vw, 1.6rem);
	box-shadow: var(--atj-shadow);
	scroll-margin-top: 110px;
}
.atj-anfrage__badge {
	display: inline-block;
	margin: 0 0 .5rem;
	padding: .2rem .65rem;
	border-radius: 999px;
	background: var(--atj-hinweis);
	color: var(--atj-messing-d);
	font-size: .8125rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.atj-anfrage__title { font-size: clamp(1.2rem, 1rem + .6vw, 1.45rem) !important; margin: 0 0 .4rem !important; color: var(--atj-moos); }
.atj-anfrage__intro { margin: 0 0 1.1rem; color: var(--atj-stein); }
.atj-anfrage__intro a { color: var(--atj-moos); font-weight: 600; }
.atj-anfrage .atj-booking__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 600px), (min-width: 782px) and (max-width: 1100px) { .atj-anfrage .atj-booking__fields { grid-template-columns: 1fr; } }
.atj-anfrage .atj-booking__consent { font-size: .875rem; }
.atj-anfrage__note { font-size: .8125rem; color: var(--atj-stein); }
.atj-anfrage .atj-booking__actions .wp-element-button { min-width: 200px; }
.atj-anfrage__flash { border-radius: var(--atj-r-s); padding: .75rem 1rem; margin: 0 0 .75rem; font-weight: 500; }
.atj-anfrage__flash--ok { background: #e6efe0; color: var(--atj-moos); }
.atj-anfrage__flash--err { background: #f8e3df; color: #9b2c1b; }

/* ------------------------------------------------------------------
 * Newsletter-Band über dem Fußbereich
 * ---------------------------------------------------------------- */
.atj-newsletter { background: var(--atj-sand); border-top: 1px solid var(--atj-line); padding: clamp(2rem, 1.2rem + 3vw, 3.25rem) var(--wp--style--root--padding-right, 1.25rem) clamp(2rem, 1.2rem + 3vw, 3.25rem) var(--wp--style--root--padding-left, 1.25rem); }
.atj-newsletter__inner { max-width: 1240px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 1.25rem 3rem; align-items: center; }
@media (max-width: 860px) { .atj-newsletter__inner { grid-template-columns: 1fr; } }
.atj-newsletter__eyebrow { margin: 0 0 .35rem; font-size: .8125rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--atj-messing); }
.atj-newsletter__title { margin: 0 0 .5rem !important; font-size: clamp(1.35rem, 1.1rem + .9vw, 1.75rem) !important; color: var(--atj-moos); }
.atj-newsletter__text p:last-child { margin: 0; color: var(--atj-stein); }
.atj-newsletter__row { display: flex; flex-wrap: wrap; gap: .6rem; }
.atj-newsletter__row input { flex: 1 1 180px; min-height: 50px; box-sizing: border-box; border: 1px solid #cfc7b4; border-radius: var(--atj-r-s); padding: .6rem .9rem; font: inherit; background: #fff; color: var(--atj-rinde); }
.atj-newsletter__row input[type=email] { flex-basis: 240px; }
.atj-newsletter__row input[aria-invalid="true"] { border-color: #9b2c1b; box-shadow: 0 0 0 1px #9b2c1b; }
.atj-newsletter__row .wp-element-button { min-height: 50px; padding-left: 1.6rem; padding-right: 1.6rem; flex: 0 0 auto; }
@media (max-width: 520px) { .atj-newsletter__row .wp-element-button { flex: 1 1 100%; } }
.atj-newsletter__legal { margin: .6rem 0 0; font-size: .8125rem; color: var(--atj-stein); }
.atj-newsletter__legal a { color: var(--atj-stein); }
.atj-newsletter__msg { margin: .5rem 0 0; font-weight: 500; min-height: 1em; }
.atj-newsletter__msg.is-ok { color: var(--atj-moos); background: #e6efe0; padding: .8rem 1rem; border-radius: var(--atj-r-s); }
.atj-newsletter__msg.is-error { color: #9b2c1b; }
.atj-newsletter__admin { max-width: 1240px; margin: 1.25rem auto 0; padding: .7rem 1rem; background: var(--atj-hinweis); border: 1px dashed var(--atj-messing); border-radius: var(--atj-r-s); font-size: .875rem; }
.atj-newsletter__row[hidden], .atj-newsletter__form [hidden] { display: none !important; }

/* ------------------------------------------------------------------
 * Rechtstexte und Widerrufsfunktion
 * ---------------------------------------------------------------- */
mark.atj-missing { background: #fff1c2; color: #6b4410; padding: 0 .25em; border-radius: 3px; font-weight: 600; }
.atj-legal-note { background: var(--atj-hinweis); border: 1px dashed var(--atj-messing); border-radius: var(--atj-r-s); padding: .75rem 1rem !important; margin-bottom: 1.5rem; }
.atj-legal-note p { margin: 0; font-size: .9375rem; }
.atj-legal h2 { font-size: 1.15rem !important; margin: 1.75rem 0 .4rem !important; }
.atj-legal p { margin: 0 0 .5rem; }

.atj-widerruf-btn {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	min-height: 44px;
	padding: .45rem 1rem;
	border: 1.5px solid var(--atj-gold);
	border-radius: 999px;
	color: #fff !important;
	font-weight: 600;
	font-size: .9375rem;
	text-decoration: none !important;
	background: rgba(224, 176, 64, .12);
}
.atj-widerruf-btn:hover, .atj-widerruf-btn:focus-visible { background: var(--atj-gold); color: var(--atj-tanne) !important; }
.atj-widerruf { max-width: 46rem; }
.atj-widerruf__form { margin-top: 1.25rem; padding: clamp(1rem, .6rem + 1.5vw, 1.6rem); background: #fff; border: 1px solid var(--atj-line); border-radius: var(--atj-r-m); }
.atj-widerruf__hint { display: block; margin-top: .3rem; color: var(--atj-stein); font-size: .8125rem; }
.atj-widerruf__legal { font-size: .875rem; color: var(--atj-stein); margin: .25rem 0 1rem; }
.atj-widerruf__confirm { min-width: 220px; }
.atj-widerruf--done { background: #e6efe0; border-left: 4px solid var(--atj-moos); border-radius: var(--atj-r-s); padding: 1.1rem 1.25rem; }
.atj-widerruf--done h2 { margin-top: 0 !important; font-size: 1.3rem !important; }
.atj-widerruf__summary { display: grid; grid-template-columns: max-content 1fr; gap: .3rem 1rem; margin: .75rem 0; }
.atj-widerruf__summary dt { font-weight: 600; }
.atj-widerruf__summary dd { margin: 0; }

/* ------------------------------------------------------------------
 * Ratgeber & Downloads
 * ---------------------------------------------------------------- */
.atj-ratgeber-head h1 { margin: .25rem 0 .5rem !important; }
.atj-ratgeber-head p.has-stein-color { max-width: 44rem; }
.atj-ratgeber-list .is-style-atj-card { overflow: hidden; height: 100%; }
.atj-ratgeber-list .is-style-atj-card > .wp-block-group:first-child { padding-top: 1.4rem; }
.atj-ratgeber-list .wp-block-post-featured-image { margin: 0 !important; width: 100%; }
.atj-ratgeber-list .wp-block-post-featured-image img { border-radius: 0 !important; }
.atj-ratgeber-list .wp-block-post-title { margin: 0 !important; font-size: 1.15rem !important; line-height: 1.3; }
.atj-ratgeber-list .wp-block-post-title a { text-decoration: none; }
.atj-ratgeber-list .wp-block-post-excerpt { margin: 0; color: var(--atj-stein); }
.atj-ratgeber-list .wp-block-post-excerpt__more-link { font-weight: 600; color: var(--atj-moos); }
.atj-ratgeber-teaser { border-top: 1px solid var(--atj-line); }
.atj-ratgeber-back { border-top: 1px solid var(--atj-line); padding-top: 1rem; }
.atj-ratgeber-back a { color: var(--atj-moos); font-weight: 600; text-decoration: none; }
.atj-ratgeber-back a:hover { text-decoration: underline; }

.atj-downloads { list-style: none; margin: 1.25rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 30rem), 1fr)); gap: 1rem; }
.atj-download { display: grid; grid-template-columns: auto 1fr auto; gap: .9rem 1.1rem; align-items: center; background: #fff; border: 1px solid var(--atj-line); border-radius: var(--atj-r-m); padding: 1.1rem 1.25rem; box-shadow: var(--atj-shadow); }
.atj-download__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: var(--atj-r-s); background: var(--atj-leinen); color: var(--atj-moos); }
.atj-download__rubrik { margin: 0 0 .15rem; font-size: .75rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--atj-messing); }
.atj-download__title { margin: 0 !important; font-size: 1.05rem !important; line-height: 1.3; }
.atj-download__text { margin: .3rem 0 0; font-size: .875rem; color: var(--atj-stein); }
.atj-download__meta { margin: .35rem 0 0; font-size: .75rem; font-weight: 600; color: var(--atj-stein); letter-spacing: .04em; }
.atj-download__btn { white-space: nowrap; min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 560px) { .atj-download { grid-template-columns: auto 1fr; } .atj-download__btn { grid-column: 1 / -1; justify-content: center; } }
.atj-downloads__empty { color: var(--atj-stein); }
.atj-ratgeber-head p.has-stein-color { margin-left: 0 !important; }
.atj-landing { margin-bottom: 0 !important; }
.atj-landing + footer, .atj-landing + .wp-block-template-part { margin-block-start: 0 !important; }
.atj-landing > .wp-block-post-content > .alignfull:last-child { margin-bottom: 0; }
.wp-site-blocks > .atj-newsletter, .wp-site-blocks > .atj-newsletter + footer { margin-block-start: 0 !important; }
