/* BIM service child — HiTech-style hero intro + offerings band */

.service-page-bim-implementation {
	--hh-child-text-min: 15px;
}

/* Hero intro (60/40 split) */
.service-page-bim-implementation .hh-service-hero-intro {
	padding: 36px 0 40px;
	background: #fff;
}

.service-page-bim-implementation .hh-service-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
	gap: 32px 40px;
	align-items: center;
}

.service-page-bim-implementation .hh-bim-page-tag,
.service-page-bim-implementation .hh-dx-page-tag {
	margin: 0 0 16px;
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 900;
	line-height: 1.35;
	color: #0b7fb2;
	letter-spacing: 0.02em;
}

.service-page-bim-implementation .hh-page-tag-latin {
	font-weight: 600;
}

.service-page-bim-implementation .hh-service-hero-title {
	margin: 0 0 18px;
	font-size: clamp(26px, 2.8vw, 36px);
	line-height: 1.28;
	font-weight: 700;
	color: #0f172a;
	letter-spacing: -0.01em;
}

.service-page-bim-implementation .hh-service-hero-title strong {
	color: #0b2a5b;
	font-weight: 900;
}

.service-page-bim-implementation .hh-service-hero-text {
	margin: 0 0 14px;
	font-size: var(--hh-child-text-min, 15px);
	line-height: 1.7;
	color: rgba(15, 23, 42, 0.78);
	font-weight: 500;
	max-width: 58ch;
}

.service-page-bim-implementation .hh-service-software-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 22px 0 20px;
}

.service-page-bim-implementation .hh-service-software-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 8px 18px;
	border: 1px solid rgba(15, 23, 42, 0.14);
	border-radius: 2px;
	background: linear-gradient(180deg, #fff 0%, #f3f5f9 100%);
	font-size: var(--hh-child-text-min, 15px);
	font-weight: 800;
	letter-spacing: 0.06em;
	color: #334155;
	text-transform: uppercase;
}

.service-page-bim-implementation .hh-service-hero-cta {
	margin: 8px 0 0;
}

.service-page-bim-implementation a.hh-btn.hh-btn-hero-orange {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 26px;
	border: 2px solid #f39200;
	background: #f39200;
	color: #fff;
	font-weight: 800;
	font-size: var(--hh-child-text-min, 15px);
	line-height: 1.35;
	text-decoration: none;
	cursor: pointer;
}

.service-page-bim-implementation a.hh-btn.hh-btn-hero-orange:hover {
	background: #e58500;
	border-color: #e58500;
	color: #fff;
	text-decoration: none;
	filter: none;
}

.service-page-bim-implementation .hh-service-hero-visual {
	margin: 0;
	padding: 14px;
	background: #fff;
	border-radius: 4px;
	box-shadow: 0 12px 36px rgba(15, 23, 42, 0.12);
}

.service-page-bim-implementation .hh-service-hero-visual img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	height: auto;
	object-fit: cover;
	object-position: center;
}

/* Navy divider */
.service-page-bim-implementation .hh-service-hero-divider {
	height: 6px;
	background: #0b2a5b;
}

/* Offerings band */
.service-page-bim-implementation .hh-service-offerings-band {
	padding: 40px 0 48px;
	background: #f3f5f9;
}

.service-page-bim-implementation .hh-service-offerings-title {
	margin: 0 0 28px;
	text-align: left;
	font-size: clamp(22px, 2.4vw, 30px);
	line-height: 1.35;
	font-weight: 700;
	color: #0f172a;
}

.service-page-bim-implementation .hh-service-offerings-title strong {
	color: #0b2a5b;
	font-weight: 900;
}

.service-page-bim-implementation .hh-offerings-grid--service {
	margin: 0 0 28px;
}

.service-page-bim-implementation .hh-check-list--dots li {
	position: relative;
	padding: 6px 0 6px 16px;
	border-bottom: none;
	color: rgba(15, 23, 42, 0.82);
	font-weight: 600;
	font-size: var(--hh-child-text-min, 15px);
	line-height: 1.5;
}

.service-page-bim-implementation .hh-check-list--dots li::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(6px + 0.75em);
	transform: translateY(-50%);
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #94a3b8;
}

.service-page-bim-implementation .hh-check-list--dots li a {
	color: #0b2a5b;
}

.service-page-bim-implementation .hh-service-offerings-cta {
	margin: 0;
	text-align: center;
}

.service-page-bim-implementation a.hh-btn.hh-btn-offerings-quote {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: min(100%, 520px);
	padding: 14px 28px;
	border: 2px solid #0b7fb2;
	background: #fff;
	color: #0b2a5b;
	font-weight: 800;
	font-size: var(--hh-child-text-min, 15px);
	line-height: 1.35;
	text-decoration: none;
	cursor: pointer;
}

.service-page-bim-implementation a.hh-btn.hh-btn-offerings-quote:hover {
	background: #fff;
	border-color: #0b7fb2;
	color: #0b2a5b;
	text-decoration: none;
	filter: none;
}

/* Body sections below hero */
.service-page-bim-implementation .hh-service-body.section-industry-detail {
	padding-top: 32px;
}

/* Legacy full-width hero (other child pages) */
.service-page-bim-implementation .industry-hero-image {
	height: 320px;
	background-size: contain;
	background-repeat: no-repeat;
	background-color: #f3f5f9;
}

/* Workflow list with step detail (legacy list — kept for non-converted markup) */
.service-page-bim-implementation .hh-workflow-list li {
	display: grid;
	gap: 4px;
}

.service-page-bim-implementation .hh-workflow-step-detail {
	display: block;
	font-weight: 600;
	font-size: var(--hh-child-text-min, 15px);
	color: rgba(15, 23, 42, 0.68);
}

.service-page-bim-implementation .hh-deliverables-inline-note {
	margin: 8px 0 0;
	font-size: var(--hh-child-text-min, 15px);
	color: rgba(15, 23, 42, 0.62);
}

.service-page-bim-implementation .hh-seamless-cta-row {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}

.service-page-bim-implementation .hh-btn-light {
	background: #fff;
	border: 2px solid #fff;
	color: #0b2a5b;
	font-weight: 800;
}

.service-page-bim-implementation .hh-btn-light:hover {
	filter: brightness(0.98);
}

@media (max-width: 960px) {
	.service-page-bim-implementation .hh-service-hero-grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.service-page-bim-implementation .hh-service-hero-visual {
		max-width: 520px;
		margin-inline: auto;
	}

	.service-page-bim-implementation .hh-service-hero-text {
		max-width: none;
	}
}

@media (max-width: 640px) {
	.service-page-bim-implementation .hh-service-hero-intro {
		padding: 24px 0 28px;
	}

	.service-page-bim-implementation .hh-service-offerings-band {
		padding: 32px 0 40px;
	}

	.service-page-bim-implementation a.hh-btn.hh-btn-offerings-quote {
		min-width: 0;
		width: 100%;
	}
}

/* Section titles — left align (child pages) */
.service-page-bim-implementation .industry-copy [class$="-software-title"],
.service-page-bim-implementation .industry-copy [class$="-deliverables-title"] {
	text-align: left;
}

/* Software section — left align (child pages) */
.service-page-bim-implementation .industry-copy [class$="-software-rows"] {
	max-width: none;
	margin: 0;
}

.service-page-bim-implementation .industry-copy [class$="-software-group-label"] {
	text-align: left;
}

/* 成果物サンプル・参考資料 — shared layout (BIM/DX child pages) */
.service-page-bim-implementation .industry-copy [class$="-deliverables"] {
	margin: 28px 0 36px;
	padding: 32px 24px 28px;
	background: #f3f5f9;
	border: 1px solid rgba(15, 23, 42, 0.08);
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-title"] {
	margin: 0 0 12px;
	font-size: clamp(20px, 2.4vw, 26px);
	font-weight: 900;
	text-align: left;
	color: #0b2a5b;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-note"] {
	margin: 0 0 20px;
	padding: 12px 16px;
	font-size: var(--hh-child-text-min, 15px);
	line-height: 1.65;
	text-align: left;
	color: rgba(15, 23, 42, 0.72);
	background: rgba(255, 255, 255, 0.72);
	border-left: 3px solid #0b7fb2;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-note"] strong {
	font-weight: 800;
	color: #0b2a5b;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-grid"] {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin: 0 0 20px;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-col"] {
	padding: 18px 20px;
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	text-align: left;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-col-label"] {
	margin: 0 0 12px;
	font-size: var(--hh-child-text-min, 15px);
	font-weight: 800;
	color: #0b2a5b;
	letter-spacing: 0.04em;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-list"] {
	list-style: none;
	padding: 0;
	margin: 0;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-list"] li {
	position: relative;
	padding: 10px 0 10px 22px;
	font-size: var(--hh-child-text-min, 15px);
	line-height: 1.55;
	color: rgba(15, 23, 42, 0.82);
	border-bottom: 1px solid rgba(2, 6, 23, 0.06);
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-list"] li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-list"] li::before {
	content: "›";
	position: absolute;
	left: 0;
	top: 10px;
	color: #0b7fb2;
	font-weight: 900;
}

.service-page-bim-implementation .industry-copy .hh-deliverables-ref {
	font-weight: 800;
	color: #0b2a5b;
}

.service-page-bim-implementation .industry-copy .hh-deliverables-desc {
	font-weight: 500;
	color: rgba(15, 23, 42, 0.72);
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-download"] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 20px;
	margin: 0;
	padding: 18px 20px;
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-left: 4px solid #0b7fb2;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-download-icon"] {
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	color: #0b7fb2;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-download-icon"] svg {
	width: 100%;
	height: 100%;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-download-body"] {
	flex: 1 1 220px;
	min-width: 0;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-download-label"] {
	margin: 0 0 4px;
	font-size: var(--hh-child-text-min, 15px);
	font-weight: 800;
	color: rgba(11, 42, 91, 0.55);
	letter-spacing: 0.06em;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables-download-name"] {
	margin: 0;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.4;
	color: #0b2a5b;
	word-break: break-word;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables"] a[class$="-deliverables-download-btn"] {
	all: unset;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 12px 22px;
	border: 2px solid #f39200;
	border-radius: 0;
	background: #f39200;
	color: #fff;
	font-size: var(--hh-child-text-min, 15px);
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
	cursor: pointer;
	white-space: nowrap;
}

.service-page-bim-implementation .industry-copy [class$="-deliverables"] a[class$="-deliverables-download-btn"]:hover {
	background: #e58500;
	border-color: #e58500;
	color: #fff;
}

@media (max-width: 768px) {
	.service-page-bim-implementation .industry-copy [class$="-deliverables-grid"] {
		grid-template-columns: 1fr;
	}

	.service-page-bim-implementation .industry-copy [class$="-deliverables-download"] {
		flex-direction: column;
		align-items: stretch;
	}

	.service-page-bim-implementation .industry-copy [class$="-deliverables"] a[class$="-deliverables-download-btn"] {
		width: 100%;
	}
}

/* Minimum body text — per-page overrides (higher specificity than page-specific CSS) */
.service-page-bim-implementation.industry-page.industry-page-building-products .breadcrumbs,
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-software-group-label"],
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-deliverables-note"],
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-deliverables-col-label"],
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-deliverables-download-label"],
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-case-copy"],
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-deliverables-list"] li,
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-deliverables"] a[class*="-download-btn"],
.service-page-bim-implementation.industry-page.industry-page-building-products .industry-main .industry-copy [class*="-seamless"] a.hh-btn {
	font-size: var(--hh-child-text-min, 15px);
}
