/**
 * Taxonomy archive drilldown: child category row + product loop layout.
 */

/* Obsolete Products: never show the category brochure band (#131 follow-up). */
.term-obsolete-products .elementor-element-1de6ec6a,
.term-discontinued-products .elementor-element-1de6ec6a {
	display: none !important;
}

/* Product category brochure cover — 16:9 frame for Content Doc column M assets. */
.tax-product_cat .elementor-element-4f6b0497.crane-brochure-cover,
.tax-product_cat .elementor-element-4f6b0497 {
	aspect-ratio: 16 / 9;
	min-height: 0 !important;
	height: auto;
	width: 100%;
}

.tax-product_cat .elementor-element-4f6b0497:not(.elementor-motion-effects-element-type-background),
.tax-product_cat .elementor-element-4f6b0497 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-size: contain !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}

/* #125 — empty hub/category card image fallback: brand light grey (not Druck #EDF9FF). */
.e-loop-item .elementor-element-825f625b,
.elementor-705 .elementor-element[class*='elementor-element-'][style*='EDF9FF'] {
	background-color: #e5e5e5 !important;
}

/* Archive heroes: full-bleed thumbnail/ACF background, boxed 1200px content. */
.tax-product_cat .elementor-element.crane-archive-hero,
.tax-product_industry .elementor-element.crane-archive-hero,
.tax-product_application .elementor-element.crane-archive-hero {
	width: 100% !important;
	max-width: 100%;
}

.tax-product_cat .elementor-element.crane-archive-hero .e-con-inner,
.tax-product_industry .elementor-element.crane-archive-hero .e-con-inner,
.tax-product_application .elementor-element.crane-archive-hero .e-con-inner {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.tax-product_cat .elementor-element-6fa0df7 .elementor-heading-title,
.tax-product_industry .elementor-element-7b99062c .elementor-heading-title {
	color: #ffffff;
}

.tax-product_cat .elementor-element-15be2f1a,
.tax-product_cat .elementor-element-15be2f1a p,
.tax-product_industry .elementor-element-1c044669,
.tax-product_industry .elementor-element-1c044669 p {
	color: rgba(255, 255, 255, 0.92);
}

/* Loop holders must not stay legacy CSS grid (squeezes Loop Grid to one column). */
.tax-product_cat .elementor-element-3b6a2eb0,
.tax-product_cat .elementor-element-crane238cwrap,
.tax-product_industry .elementor-element-crane241cwrap,
.tax-product_application .elementor-element-crane241acwrap,
/* Products hub Industries We Serve (#162 follow-up): was a 4-col static card grid. */
.page-id-137 .elementor-element-76abd6a5 {
	display: flex !important;
	flex-direction: column;
	width: 100% !important;
	max-width: 100%;
	--display: flex;
	--width: 100%;
	--e-con-grid-template-columns: unset;
}

.page-id-137 .elementor-element-76abd6a5 .elementor-element-crane137ind,
.page-id-137 .elementor-element-crane137ind {
	width: 100% !important;
	max-width: 100%;
}

.page-id-137 .elementor-element-crane137ind .elementor-loop-container {
	width: 100%;
}

.tax-product_cat .elementor-element-crane238loop,
.tax-product_cat .elementor-element-crane238cgrid,
.tax-product_industry .elementor-element-crane241loop,
.tax-product_industry .elementor-element-crane241cgrid {
	width: 100% !important;
	max-width: 100%;
}

.tax-product_cat .elementor-element-crane238loop .elementor-loop-container,
.tax-product_cat .elementor-element-crane238cgrid .elementor-loop-container {
	width: 100%;
}

/* Product loop cards (template 1543): image + title link; CTAs stay separate buttons (#104). */
.elementor-1543 .elementor-element-6097a37b {
	display: flex;
	flex-direction: column;
}

.elementor-1543 .elementor-element-318aecf7[href] {
	display: block;
	text-decoration: none;
	color: inherit;
}

.elementor-1543 .elementor-element-318aecf7[href]:hover {
	opacity: 0.92;
}

.elementor-1543 .elementor-element-15b4a359 .elementor-heading-title a {
	color: inherit;
	text-decoration: none;
}

.elementor-1543 .elementor-element-15b4a359 .elementor-heading-title a:hover {
	text-decoration: underline;
}

/* Prevent loop-grid overflow: CTAs spilling into adjacent columns (#104). */
.tax-product_cat .elementor-loop-container .e-loop-item {
	min-width: 0;
}

.tax-product_cat .crane-archive-product-card {
	width: 100%;
	min-width: 0;
	max-width: 100%;
}

.tax-product_cat .crane-archive-product-card .elementor-element-crane609cta {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	width: 100% !important;
	max-width: 100%;
	gap: 8px 16px;
}

.tax-product_cat .crane-archive-product-card .elementor-element-crane609cta .elementor-button-wrapper {
	flex: 0 1 auto;
	min-width: 0;
}

.tax-product_cat .crane-archive-product-card .elementor-button-link {
	white-space: nowrap;
}

/* Sample Systems / OEM: products stay on category archive (#24). */
.tax-product_cat[class*="sample-systems"] .elementor-element-crane609view,
.tax-product_cat[class*="oem-moisture-solutions"] .elementor-element-crane609view {
	display: none !important;
}

/* Contact Us hidden by default on standard category archives (#112–113). */
.tax-product_cat .elementor-element-crane609contact {
	display: none !important;
}

/* Industry (+ application) featured-product loops: never show Contact Us CTA.
 * Related Products: PHP adds --hidden for non-OEM/Sample Systems cards (#166).
 * Keep Contact on OEM / Sample Systems category loops only (#112–113 / #143). */
.tax-product_industry .elementor-element-crane609contact,
.tax-product_application .elementor-element-crane609contact,
.elementor-element-crane609contact.crane-loop-contact--hidden {
	display: none !important;
}

/* OEM: Contact Us only (#112). */
.tax-product_cat[class*="oem-moisture-solutions"] .elementor-element-crane609sheet {
	display: none !important;
}

.tax-product_cat[class*="oem-moisture-solutions"] .elementor-element-crane609contact {
	display: inline-flex !important;
}

/* Sample Systems: Datasheet + Contact Us (#113). */
.tax-product_cat[class*="sample-systems"] .elementor-element-crane609contact {
	display: inline-flex !important;
}

/* Hide Datasheet CTA when product has no linked datasheet (cats + industries). */
.tax-product_cat .crane-loop-datasheet--empty,
.tax-product_industry .crane-loop-datasheet--empty,
.tax-product_application .crane-loop-datasheet--empty {
	display: none !important;
}

.tax-product_cat[class*="sample-systems"] .elementor-element-318aecf7[href],
.tax-product_cat[class*="oem-moisture-solutions"] .elementor-element-318aecf7[href] {
	pointer-events: none;
	cursor: default;
}

.tax-product_cat[class*="sample-systems"] .elementor-element-15b4a359 .elementor-heading-title,
.tax-product_cat[class*="oem-moisture-solutions"] .elementor-element-15b4a359 .elementor-heading-title {
	cursor: default;
}

/* Hub + archive category cards: cap description height */
.crane-hub-product-cat-card .elementor-widget-text-editor p,
.crane-loop-card-description .elementor-widget-text-editor p,
.crane-loop-card-description.elementor-widget-text-editor p {
	margin: 0;
}

.crane-hub-product-cat-card .elementor-widget-text-editor,
.crane-loop-card-description .elementor-widget-text-editor,
.crane-loop-card-description.elementor-widget-text-editor {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
}

/* Hide child-taxonomy row on leaf archives (category cards are for branches only) */
body.crane-term-is-leaf .crane-archive-children-row,
.crane-archive-children-row:not(:has(.e-loop-item)) {
	display: none !important;
}

/* Leaf archive with no products assigned to this term */
body.crane-term-no-products .crane-archive-products-row .elementor-loop-container:empty::after {
	content: "No products are assigned to this category yet. Try the parent category or use search.";
	display: block;
	padding: 24px 0;
	color: var(--e-global-color-text, #3f444b);
	font-family: Poppins, sans-serif;
	font-size: 14px;
	line-height: 1.5;
}

/* Industry case study — KAON interactive embed (#29). */
.tax-product_industry .crane-industry-kaon-embed {
	position: relative;
	width: 100%;
	min-height: 420px;
	background: #f4f6f8;
	border-radius: 4px;
	overflow: hidden;
}

.tax-product_industry .crane-industry-kaon-embed iframe {
	display: block;
	width: 100%;
	min-height: 420px;
	height: 70vh;
	max-height: 720px;
	border: 0;
}

.tax-product_industry .crane-industry-case-study-image img {
	display: block;
	width: 100%;
	height: auto;
}

.tax-product_industry .crane-industry-case-study-pdf__link {
	font-weight: 600;
	text-decoration: underline;
}

/* Industry expertise — dynamic repeater grid (2 columns). */
.tax-product_industry .crane-industry-expertise-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
	width: 100%;
}

.tax-product_industry .crane-industry-expertise-card {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
}

.tax-product_industry .crane-industry-expertise-card__title {
	margin: 0;
	color: #1a1a1a;
	font-family: Poppins, sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.tax-product_industry .crane-industry-expertise-card__body {
	color: #3f444b;
	font-family: Poppins, sans-serif;
	font-size: 14px;
	line-height: 1.6;
}

.tax-product_industry .crane-industry-expertise-card__body p {
	margin: 0 0 0.75em;
}

.tax-product_industry .crane-industry-expertise-card__body p:last-child {
	margin-bottom: 0;
}

.tax-product_industry .crane-industry-expertise-card__action {
	margin: 0;
}

.tax-product_industry .crane-industry-expertise-card__link {
	display: inline-block;
	padding: 14px 32px;
	border: 2px solid #1a1a1a;
	border-radius: 50px;
	background: #ffffff;
	color: #1a1a1a;
	font-family: Poppins, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.tax-product_industry .crane-industry-expertise-card__link:hover {
	opacity: 0.9;
}

/* Featured Products — full section white + dark headline. */
.tax-product_industry .elementor-element-3e3e72ad {
	background-color: #ffffff !important;
}

.tax-product_industry .elementor-element-7fef10c1 .elementor-heading-title {
	color: #1a1a1a !important;
}

/* Industry brochure card — single white card with media + copy. */
.tax-product_industry .crane-industry-brochure-card {
	width: 100%;
}

.tax-product_industry .crane-industry-brochure-card__inner {
	display: flex;
	flex-direction: row;
	gap: 0;
	overflow: hidden;
	border-radius: 16px;
	background: #ffffff;
}

.tax-product_industry .crane-industry-brochure-card__media {
	flex: 0 0 42%;
	min-width: 0;
}

.tax-product_industry .crane-industry-brochure-card--no-media .crane-industry-brochure-card__inner {
	display: block;
}

.tax-product_industry .crane-industry-brochure-card--no-media .crane-industry-brochure-card__content {
	padding: 24px;
}

.tax-product_industry .crane-industry-brochure-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
	padding: 20px;
}

.tax-product_industry .crane-industry-brochure-card__title {
	margin: 0;
	color: #1a1a1a;
	font-family: Poppins, sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.tax-product_industry .crane-industry-brochure-card__description {
	color: #3f444b;
	font-family: Poppins, sans-serif;
	font-size: 14px;
	line-height: 1.6;
}

.tax-product_industry .crane-industry-brochure-card__description p {
	margin: 0;
}

.tax-product_industry .crane-industry-brochure-card__action {
	margin: 8px 0 0;
}

.tax-product_industry .crane-industry-brochure-card__cta {
	color: #1a1a1a;
	font-family: Poppins, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
}

.tax-product_industry .crane-industry-brochure-card__cta:hover {
	text-decoration: underline;
}

@media (max-width: 767px) {
	.tax-product_industry .crane-industry-expertise-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.tax-product_industry .crane-industry-brochure-card__inner {
		flex-direction: column;
	}

	.tax-product_industry .crane-industry-brochure-card__media {
		flex-basis: auto;
	}
}

/* Product loop cards — View Product + Datasheet row (#71). */
.tax-product_cat .crane-archive-product-card .elementor-button-link {
	box-shadow: none;
}

.tax-product_cat .crane-archive-product-card .elementor-widget-text-editor {
	text-align: left;
}

/* #122 — Flare Management: hide child category row as CSS fallback */
body.crane-flare-management-products-only .crane-archive-children-row {
	display: none !important;
}
