/**
 * Site-wide mobile / tablet overrides (≤1199px, ≤991px, ≤767px).
 * Desktop rules stay in layout + legacy files; this layer loads last.
 * Hero stack layout: inner-hero-mobile.css
 */

/* ── Base: spacing, overflow, media ───────────────────────────── */
@media (max-width: 991px) {
	.jcproto-legacy-body-wrap {
		overflow-x: clip;
	}

	.jcproto-legacy-body-wrap .sitewidget-bd,
	.jcproto-legacy-body-wrap .entry-content {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.jcproto-legacy-body-wrap img,
	.jcproto-legacy-body-wrap video,
	.jcproto-legacy-body-wrap iframe {
		max-width: 100%;
		height: auto;
	}

	.jcproto-legacy-body-wrap table {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.jcproto-legacy-body-wrap pre {
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.jcproto-has-legacy-body .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:not(:first-child):not(.jcproto-inner-hero) {
		padding-top: clamp(1.5rem, 4vw, 2rem);
		padding-bottom: clamp(1.5rem, 4vw, 2rem);
	}

	body.jcproto-has-legacy-body .jcproto-legacy-body-wrap #backstage-bodyArea > .outerContainer:not(.jcproto-inner-hero) + .outerContainer:not(.jcproto-inner-hero) {
		padding-top: clamp(1rem, 3vw, 1.5rem);
	}

	body.jcproto-has-legacy-body .jcproto-legacy-body-wrap #backstage-bodyArea > .siteblocks-setting-wrap {
		padding-top: clamp(1.25rem, 3vw, 1.75rem);
		padding-bottom: clamp(1.25rem, 3vw, 1.75rem);
	}

	.jcproto-legacy-body-wrap .qiaoxin15564 .main,
	.jcproto-legacy-body-wrap .blockCon15564 .main {
		flex-direction: column;
		gap: 24px;
	}

	.jcproto-legacy-body-wrap .row:has(> [class*="col-md-3"]:nth-child(4):last-child) {
		grid-template-columns: 1fr;
	}

	.jcproto-legacy-body-wrap .bookmark18444 {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.jcproto-legacy-body-wrap .siteblocks-setting-wrap:has(.bookmark18444) .siteblocks-container {
		padding-left: clamp(1rem, 4vw, 1.5rem);
		padding-right: clamp(1rem, 4vw, 1.5rem);
	}
}

@media (max-width: 767px) {
	.jcproto-legacy-body-wrap .row > [class*="col-md-"],
	.jcproto-legacy-body-wrap .row > [class*="col-lg-"] {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
	}
}

/* ── Material / capability grids ──────────────────────────────── */
@media (max-width: 1199px) {
	.jcproto-legacy-body-wrap .box-container#cEfUAgPhCsbt:not(.jcproto-material-box--enhanced),
	.jcproto-legacy-body-wrap .box-container#eRfAKBaCiglt:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .jcproto-material-grid,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .jcproto-material-grid,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="4"]:not(.jcproto-material-box--enhanced) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 991px) {
	.jcproto-legacy-body-wrap .box-container#cEfUAgPhCsbt:not(.jcproto-material-box--enhanced),
	.jcproto-legacy-body-wrap .box-container#eRfAKBaCiglt:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .jcproto-material-grid,
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced):has(> .container-column .sitewidget-bd a[href*="/capabilities/"]),
	body.jcproto-layout-material .jcproto-legacy-body-wrap .jcproto-material-grid,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="4"]:not(.jcproto-material-box--enhanced) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.jcproto-legacy-body-wrap .box-container#cEfUAgPhCsbt:not(.jcproto-material-box--enhanced) > .container-column,
	.jcproto-legacy-body-wrap .box-container#eRfAKBaCiglt:not(.jcproto-material-box--enhanced) > .container-column,
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced):has(> .container-column .sitewidget-bd a[href*="/capabilities/"]) > .container-column,
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#eRfAKBaCiglt:not(.jcproto-material-box--enhanced) > .container-column {
		border-right: 0 !important;
		border-bottom: 1px solid var(--jcproto-border, #e0e0e0);
	}

	.jcproto-legacy-body-wrap .box-container#cEfUAgPhCsbt:not(.jcproto-material-box--enhanced) > .container-column:last-of-type,
	.jcproto-legacy-body-wrap .box-container#eRfAKBaCiglt:not(.jcproto-material-box--enhanced) > .container-column:last-of-type,
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced):has(> .container-column .sitewidget-bd a[href*="/capabilities/"]) > .container-column:last-of-type,
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#eRfAKBaCiglt:not(.jcproto-material-box--enhanced) > .container-column:last-of-type {
		border-bottom: 0;
	}

	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced) > .container-column,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="4"]:not(.jcproto-material-box--enhanced) > .container-column {
		border-right: 0 !important;
		border-bottom: 0 !important;
		margin-bottom: 12px !important;
	}

	body.jcproto-layout-industry .jcproto-legacy-body-wrap .service-section,
	body.jcproto-layout-capability .jcproto-legacy-body-wrap .service-section {
		padding-left: 0;
		padding-right: 0;
	}

	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 {
		grid-template-columns: 1fr;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap .jcproto-dark-band .picture-wrap .img-default-bgc,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .jcproto-dark-band .picture-wrap .img-default-bgc {
		max-width: 100% !important;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 > .container > .row {
		flex-wrap: wrap;
		min-height: 0;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 #column_1776155199777,
	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 #column_1776336752298 {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 #column_1776155199777 {
		padding: 1.75rem 1.25rem;
		order: 1;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 #column_1776336752298 {
		order: 2;
		min-height: 240px;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 #column_1776336752298 img {
		min-height: 240px;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1776155199778 .sitewidget-title-20260422180607 h1 {
		max-width: none;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1684762395184 > .container > .row > [class*="col-"] {
		margin-bottom: 1rem;
	}

	body.jcproto-layout-capability .jcproto-legacy-body-wrap #outerContainer_1684762395184 > .container > .row > [class*="col-"]:last-child {
		margin-bottom: 0;
	}

	body.jcproto-layout-resource .jcproto-faq-layout {
		flex-direction: column;
		gap: 24px;
	}
}

@media (max-width: 639px) {
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .jcproto-material-grid,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .jcproto-material-grid,
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-material .jcproto-legacy-body-wrap .box-container[data-layout-style="4"]:not(.jcproto-material-box--enhanced) {
		grid-template-columns: 1fr !important;
	}
}

/* Industry capability bands — single column on tablet/mobile (wins over 2-col rule above) */
@media (max-width: 991px) {
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container[data-layout-style="1"]:not(.jcproto-material-box--enhanced):has(> .container-column .sitewidget-bd a[href*="/capabilities/"]),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#cEfUAgPhCsbt:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#TUAKfgPWNhCj:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#fmfKpVuWsYFE:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#kipKAVPlcNvO:not(.jcproto-material-box--enhanced),
	body.jcproto-layout-industry .jcproto-legacy-body-wrap .box-container#sbUAuZiQmptd:not(.jcproto-material-box--enhanced) {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 768px) {
	body.jcproto-layout-resource .jcproto-page-shell .container,
	body.jcproto-layout-company .jcproto-page-shell .container,
	body.jcproto-layout-contact .jcproto-page-shell .container,
	body.jcproto-layout-quote .jcproto-page-shell .container {
		padding-left: clamp(12px, 4vw, 20px);
		padding-right: clamp(12px, 4vw, 20px);
	}
}

@media (max-width: 767px) {
	body.jcproto-layout-contact .jcproto-article--contact .wpcf7-form,
	body.jcproto-layout-contact .jcproto-article--contact form,
	body.jcproto-layout-contact .jcproto-article--contact .sitewidget-bd form,
	body.jcproto-layout-quote .jcproto-article--contact .wpcf7-form,
	body.jcproto-layout-quote .jcproto-article--contact form,
	body.jcproto-layout-quote .jcproto-article--contact .sitewidget-bd form {
		padding: 1rem;
	}
}

/* ── prodTabList: accordion tabs + carousel (home + inner) ─────── */
@media screen and (max-width: 1024px) {
	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-nav {
		display: none !important;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .tab-container {
		border-top: 1px solid var(--jcproto-border, #e2e8f0);
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .tab-container-inner {
		border-bottom: 1px solid var(--jcproto-border, #e2e8f0);
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-accordion-title {
		display: block;
		margin: 0;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-accordion-title .r-tabs-anchor {
		display: block;
		line-height: 48px;
		padding: 0 40px 0 16px;
		color: var(--jcproto-text-muted, #64748b);
		font-size: 15px;
		text-align: center;
		text-decoration: none;
		position: relative;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-accordion-title .r-tabs-anchor::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 18px;
		width: 8px;
		height: 8px;
		margin-top: -2px;
		border-right: 2px solid #94a3b8;
		border-bottom: 2px solid #94a3b8;
		transform: translateY(-50%) rotate(45deg);
		transition: transform 0.2s ease;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-accordion-title.r-tabs-state-active .r-tabs-anchor {
		color: var(--jcproto-text, #0a0a0a);
		font-weight: 600;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-accordion-title.r-tabs-state-active .r-tabs-anchor::after {
		transform: translateY(-50%) rotate(-135deg);
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .r-tabs-panel {
		padding: 12px 8px 18px;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList-cont .owl-item {
		padding: 0 6px;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList-cont .prodTabList-prodName {
		font-size: 13px;
		line-height: 1.4;
	}

	.jcproto-legacy-body-wrap .sitewidget-prodTabList .jcproto-prodtab-owl-mount > .owl-controls {
		margin-top: 10px;
	}
}

@media screen and (max-width: 640px) {
	.jcproto-legacy-body-wrap .sitewidget-prodTabList-cont.owl-carousel:not(.owl-loaded):not(:has(.owl-wrapper-outer)) > li {
		flex: 0 0 calc(50% - 8px) !important;
		width: calc(50% - 8px) !important;
		max-width: calc(50% - 8px) !important;
	}
}
