/**
 * Hub & shell pages — FAQ / News / KB lists, company, contact, quote.
 * Homepage-aligned spacing, cards, and mobile rhythm (content unchanged).
 */

/* ── Page shell (list templates + contact) ─────────────────────── */
body.jcproto-layout-resource .jcproto-page-shell,
body.jcproto-layout-contact .jcproto-page-shell,
body.jcproto-layout-quote .jcproto-page-shell,
body.jcproto-layout-company .jcproto-page-shell {
	padding-top: clamp(0.75rem, 2vw, 1.25rem);
	padding-bottom: clamp(2rem, 4vw, 3.5rem);
}

body.jcproto-layout-resource .jcproto-page-shell .jcproto-page-title,
body.jcproto-layout-contact .jcproto-page-shell .jcproto-page-title,
body.jcproto-layout-quote .jcproto-page-shell .jcproto-page-title,
body.jcproto-layout-company .jcproto-page-shell .jcproto-page-title {
	font-family: var(--jcproto-font-display, inherit);
	font-size: clamp(1.625rem, 2.6vw, 2.125rem);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: var(--jcproto-text, #0a0a0a);
	margin: 0 0 clamp(1rem, 2vw, 1.5rem);
}

body.jcproto-layout-resource .jcproto-page-shell .jcproto-breadcrumb,
body.jcproto-layout-contact .jcproto-page-shell .jcproto-breadcrumb,
body.jcproto-layout-quote .jcproto-page-shell .jcproto-breadcrumb,
body.jcproto-layout-company .jcproto-page-shell .jcproto-breadcrumb {
	margin-bottom: clamp(0.5rem, 1.5vw, 1rem);
}

/* ── FAQ list layout ─────────────────────────────────────────── */
body.jcproto-layout-resource .jcproto-faq-layout {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: flex-start;
}

body.jcproto-layout-resource .jcproto-faq-sidebar {
	flex: 0 0 100%;
	max-width: 100%;
}

body.jcproto-layout-resource .jcproto-faq-main {
	flex: 1 1 100%;
	min-width: 0;
}

@media (min-width: 992px) {
	body.jcproto-layout-resource .jcproto-faq-sidebar {
		flex: 0 0 calc(25% - 1rem);
		max-width: calc(25% - 1rem);
	}

	body.jcproto-layout-resource .jcproto-faq-main {
		flex: 1 1 calc(75% - 1rem);
	}
}

body.jcproto-layout-resource .jcproto-faq-main .sitewidget-hd > h2 {
	font-family: var(--jcproto-font-display, inherit);
	font-size: clamp(1.25rem, 2vw, 1.5rem);
	font-weight: 700;
	margin-bottom: 1rem;
}

body.jcproto-layout-resource .jcproto-faq-item,
body.jcproto-layout-resource .jcproto-faq-list details {
	border: 1px solid var(--jcproto-border, #e0e0e0);
	border-radius: var(--jcproto-radius, 8px);
	margin-bottom: 10px;
	background: #fff;
	box-shadow: var(--jcproto-shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.06));
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.jcproto-layout-resource .jcproto-faq-item:hover,
body.jcproto-layout-resource .jcproto-faq-list details:hover {
	border-color: var(--jcproto-primary, #0a0a0a);
	box-shadow: var(--jcproto-shadow-md, 0 4px 16px rgba(0, 0, 0, 0.08));
}

/* ── Company pages — section rhythm ──────────────────────────── */
body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:not(.jcproto-inner-hero) {
	padding-top: clamp(1.5rem, 3vw, 2.5rem);
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
}

body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero + .outerContainer {
	padding-top: clamp(2rem, 3vw, 3rem);
}

body.jcproto-layout-company .jcproto-legacy-body-wrap .sitewidget-pictureNew .picture-wrap,
body.jcproto-layout-company .jcproto-legacy-body-wrap .sitewidget-touchgraphicslider {
	margin-bottom: clamp(1rem, 2vw, 1.5rem);
}

/* ── Resource sub-pages — section rhythm ─────────────────────── */
body.jcproto-layout-resource .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:not(.jcproto-inner-hero) {
	padding-top: clamp(1.25rem, 2.5vw, 2rem);
	padding-bottom: clamp(1.25rem, 2.5vw, 2rem);
}

body.jcproto-layout-resource .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero + .outerContainer {
	padding-top: clamp(2rem, 3vw, 3rem);
}

/* ── Industry pages — section rhythm ─────────────────────────── */
body.jcproto-layout-industry .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:not(.jcproto-inner-hero):not(:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child)) {
	padding-top: clamp(1.25rem, 2.5vw, 2rem);
	padding-bottom: clamp(1.25rem, 2.5vw, 2rem);
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero + .outerContainer {
	padding-top: clamp(2rem, 3vw, 3rem);
}

/* ── Article list cards (news / knowledge base) ──────────────── */
body.jcproto-layout-resource .articlelist-liststyle20 .fix li,
body.jcproto-layout-resource .jcproto-page-shell .articlelist-liststyle20 .fix li {
	margin-bottom: 16px;
	padding: clamp(12px, 2vw, 16px);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

body.jcproto-layout-resource .articlelist-liststyle20 .fix li:hover,
body.jcproto-layout-resource .jcproto-page-shell .articlelist-liststyle20 .fix li:hover {
	transform: translateY(-2px);
}

body.jcproto-layout-resource .articlelist-liststyle20 .article-column-links img,
body.jcproto-layout-resource .jcproto-page-shell .articlelist-liststyle20 .article-column-links img {
	border-radius: var(--jcproto-radius, 8px);
}

/* ── Contact / quote forms ───────────────────────────────────── */
body.jcproto-layout-contact .jcproto-contact-layout,
body.jcproto-layout-quote .jcproto-contact-layout {
	display: grid;
	gap: clamp(1.5rem, 3vw, 2.5rem);
}

@media (min-width: 992px) {
	body.jcproto-layout-contact .jcproto-contact-layout--split,
	body.jcproto-layout-quote .jcproto-contact-layout--split {
		grid-template-columns: 1fr 1fr;
		align-items: start;
	}
}

/* ── Strip legacy blue inline styles in heroes & CTAs ────────── */
body.jcproto-layout-industry .jcproto-legacy-body-wrap .jcproto-inner-hero .ls-l.asl-btn > a[style*="rgb(14, 106, 237)"],
body.jcproto-layout-resource .jcproto-legacy-body-wrap .jcproto-inner-hero .ls-l.asl-btn > a[style*="rgb(14, 106, 237)"],
body.jcproto-layout-company .jcproto-legacy-body-wrap .jcproto-inner-hero .ls-l.asl-btn > a[style*="rgb(14, 106, 237)"] {
	background: var(--jcproto-primary, #0a0a0a) !important;
	border-color: var(--jcproto-primary, #0a0a0a) !important;
}

/* ── Company / about — widget-composed dark hero bands ─────────── */
body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero {
	background: linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%) !important;
	padding-top: clamp(2.5rem, 5vw, 4rem) !important;
	padding-bottom: clamp(2.5rem, 5vw, 4rem) !important;
}

body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero .sitewidget-text .sitewidget-bd,
body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero .sitewidget-text .sitewidget-bd span,
body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero .sitewidget-hd h1,
body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero .sitewidget-hd h2 {
	color: #fff !important;
	font-family: var(--jcproto-font-display, inherit);
}

body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero .backstage-component-btn {
	background: #fff !important;
	color: var(--jcproto-primary, #0a0a0a) !important;
	border-color: #fff !important;
	font-weight: 600 !important;
	border-radius: var(--jcproto-radius, 8px) !important;
}

body.jcproto-layout-company .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer.jcproto-inner-hero.jcproto-widget-hero .backstage-component-btn:hover {
	background: #f0f0f0 !important;
	color: var(--jcproto-primary, #0a0a0a) !important;
}

/* ── Instant quote / contact — breathing room on legacy quote blocks ─ */
body.jcproto-layout-quote .jcproto-legacy-body-wrap .qin18464,
body.jcproto-layout-contact .jcproto-legacy-body-wrap .qin18464 {
	margin-top: clamp(1rem, 2vw, 1.5rem);
}

body.jcproto-layout-quote .jcproto-legacy-body-wrap .qin18464 .content .form-box,
body.jcproto-layout-contact .jcproto-legacy-body-wrap .qin18464 .content .form-box {
	border-radius: var(--jcproto-radius-lg, 12px);
	box-shadow: var(--jcproto-shadow-md, 0 4px 16px rgba(0, 0, 0, 0.1));
}

/* ── Medical device application grid (3× col-md-4 rows only) ─── */
body.jcproto-layout-industry .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:has(.sitewidget-title-20230508152811) {
	padding-bottom: clamp(0.5rem, 1vw, 0.75rem) !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) + .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) {
	margin-top: 0 !important;
	padding-top: 0.625rem !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child):not(:has(+ .outerContainer > .container > .row > .col-md-4:first-child)):not(:has(+ .outerContainer > .container > .row > .col-md-12:only-child .sitewidget-olul-liststyle)) {
	padding-bottom: clamp(1.25rem, 2.5vw, 2rem) !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) > .container > .row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(10px, 1.5vw, 14px);
	margin-left: 0;
	margin-right: 0;
	width: 100% !important;
	max-width: 100% !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) > .container > .row::before,
body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) > .container > .row::after {
	display: none !important;
	content: none !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) [class*="col-md-4"] {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) [class*="sitewidget-text"] {
	background: var(--jcproto-surface, #f4f4f4) !important;
	border-radius: var(--jcproto-radius, 8px) !important;
	border-left: 0 !important;
	margin: 0 !important;
	padding: 12px 14px !important;
	height: 100%;
	display: flex;
	align-items: center;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(> .container > .row > .col-md-4:first-child):has(> .container > .row > .col-md-4:nth-child(2)):has(> .container > .row > .col-md-4:nth-child(3):last-child) [class*="sitewidget-text"] .sitewidget-bd {
	max-width: none !important;
	line-height: 1.4 !important;
}

body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(.sitewidget-title-20230508152811) .sitewidget-placeHolder-20230508163807,
body.jcproto-layout-industry .jcproto-legacy-body-wrap .outerContainer:has(.sitewidget-title-20230508152811) .sitewidget-placeHolder-20250925184226 {
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}
