/* =============================================
   Industry — plantilla sectorial
   Bloques: hero, body argumental con sidebar sticky,
   how-we-help, customer stories, stepper, engagement.
   ============================================= */

/* Neutraliza el padding del .site-main por encima del hero */
.site-main.industry,
.site-main.industries-hub {
	padding-block: 0;
}

/* ===== HERO (calcado de single-service) ===== */
.ind-hero {
	background: var(--z-color-bg-dark);
	color: var(--z-color-text-inverse, #fff);
	display: flex;
	flex-direction: column;
	position: relative;
	overflow: hidden;
}
.ind-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, transparent, rgba(88, 132, 241, 0.2));
	z-index: 0;
	pointer-events: none;
}
.ind-hero .hero__decoration--right {
	left: auto;
	right: -20%;
	bottom: -50%;
	transform: scale(5) translateZ(0);
}
.ind-hero__body {
	display: flex;
	align-items: center;
	padding-block: clamp(8rem, 14vw, 12rem) clamp(4rem, 8vw, 6rem);
	position: relative;
	z-index: 2;
}
.ind-hero__intro { max-width: 60rem; width: 100%; }
.ind-hero__title {
	font-family: var(--z-font-heading);
	font-size: clamp(2.5rem, 5vw, 4rem);
	font-weight: 800;
	color: #fff;
	line-height: 1.1;
	margin: 1rem 0 1.5rem;
	text-wrap: balance;
}
.ind-hero__title .hero__highlight { font-style: normal; }
.ind-hero__title-line {
	display: block;
}
.ind-hero__subtitle {
	font-size: 1rem;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.7;
	max-width: 40rem;
	margin: 0 0 2rem;
}
.ind-hero__actions { display: flex; gap: 0.75rem; flex-wrap: wrap; }

/* ===== BODY ARGUMENTAL ===== */
.ind-arg { background: var(--z-color-bg, #F7F7F7); padding-block: clamp(4rem, 8vw, 6rem); }
.ind-arg__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 20rem;
	gap: clamp(4rem, 7vw, 6rem);
	align-items: start;
}
.ind-arg__main { max-width: 44rem; }
.ind-arg__block { margin-bottom: 1.5rem; }
.ind-arg__block p {
	font-size: 1.0625rem;
	line-height: 1.7;
	color: var(--z-color-text, #1c2240);
}

/* Pregunta replanteada — pattern "is no longer X / is Y" */
.ind-arg__question {
	margin: 2.5rem 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 0;
	background: transparent;
	border: 0;
}
.ind-arg__question-old,
.ind-arg__question-new {
	margin: 0;
	padding: 1.25rem 1.5rem;
	border-radius: var(--z-radius, 12px);
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.ind-arg__question-old {
	background: rgba(28, 34, 64, 0.04);
	border: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.08));
}
.ind-arg__question-new {
	background: rgba(249, 115, 22, 0.06);
	border: 1px solid rgba(249, 115, 22, 0.25);
	border-left: 4px solid var(--z-color-orange, #f97316);
}
.ind-arg__question-tag {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.ind-arg__question-old .ind-arg__question-tag {
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.5));
}
.ind-arg__question-old .ind-arg__question-tag::before {
	content: '✕';
	font-size: 0.875rem;
	letter-spacing: 0;
	font-weight: 700;
}
.ind-arg__question-new .ind-arg__question-tag {
	color: var(--z-color-orange, #f97316);
}
.ind-arg__question-new .ind-arg__question-tag::before {
	content: '→';
	font-size: 1rem;
	letter-spacing: 0;
	font-weight: 700;
}
.ind-arg__question-text {
	font-size: 1.125rem;
	line-height: 1.5;
	font-weight: 500;
}
.ind-arg__question-old .ind-arg__question-text {
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.65));
	text-decoration: line-through;
	text-decoration-color: rgba(28, 34, 64, 0.3);
	text-decoration-thickness: 1px;
}
.ind-arg__question-new .ind-arg__question-text {
	color: var(--z-color-text, #1c2240);
	font-weight: 600;
}

/* H2/H3 headings dentro del body argumental */
.ind-arg__h2 {
	font-size: clamp(1.5rem, 2.5vw, 2rem);
	font-weight: 700;
	margin: 0 0 1.5rem;
	color: var(--z-color-text, #1c2240);
	text-wrap: balance;
}
.ind-arg__h3 {
	font-size: 1.25rem;
	font-weight: 700;
	margin: 2rem 0 1rem;
	color: var(--z-color-text, #1c2240);
}

/* Items / risks (lista de bloques con title + text) */
.ind-arg__items {
	display: grid;
	gap: 1.25rem;
	margin-top: 1.25rem;
}
.ind-arg__item {
	padding: 1.25rem;
	border-left: 3px solid var(--z-color-orange, #f97316);
	background: rgba(249, 115, 22, 0.04);
	border-radius: 0 var(--z-radius-sm, 6px) var(--z-radius-sm, 6px) 0;
}
.ind-arg__item h4 {
	font-size: 1rem;
	font-weight: 700;
	color: var(--z-color-text);
	margin: 0 0 0.5rem;
}
.ind-arg__item p {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.75));
	margin: 0;
}

/* Mitigation steps */
.ind-arg__steps {
	display: grid;
	gap: 1rem;
	margin-top: 1rem;
	counter-reset: step;
}
.ind-arg__step {
	display: grid;
	grid-template-columns: 2.25rem 1fr;
	gap: 1rem;
	align-items: start;
}
.ind-arg__step-num {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: var(--z-color-orange, #f97316);
	color: #fff;
	font-weight: 700;
	font-size: 0.9375rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.ind-arg__step h4 {
	font-size: 1rem;
	font-weight: 700;
	color: var(--z-color-text);
	margin: 0.25rem 0 0.5rem;
}
.ind-arg__step p {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.75));
	margin: 0;
}

/* Regulatory table */
.ind-reg { background: var(--z-color-bg, #F7F7F7); padding-block: clamp(4rem, 8vw, 6rem); }
.ind-reg__table-wrap {
	margin-top: 2rem;
	overflow-x: auto;
	border: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.08));
	border-radius: var(--z-radius, 12px);
}
.ind-reg__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}
.ind-reg__table thead { background: var(--z-color-bg, #F7F7F7); }
.ind-reg__table th,
.ind-reg__table td {
	text-align: left;
	padding: 1rem 1.25rem;
	vertical-align: top;
	border-bottom: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.06));
}
.ind-reg__table th {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.6));
}
.ind-reg__table td { line-height: 1.55; color: var(--z-color-text, #1c2240); }
.ind-reg__table td:first-child { font-weight: 600; }
.ind-reg__table tbody tr:last-child td { border-bottom: 0; }
.ind-reg__table tbody tr:hover { background: rgba(249, 115, 22, 0.03); }
@media (max-width: 768px) {
	.ind-reg__table { font-size: 0.875rem; }
	.ind-reg__table th, .ind-reg__table td { padding: 0.75rem 0.875rem; }
}

/* ===== SIDEBAR STICKY ===== */
.ind-arg__sidebar {
	position: sticky;
	top: 7rem;
}
.ind-sidebar { display: flex; flex-direction: column; gap: 1.5rem; }
.ind-sidebar__heading {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.55));
	margin: 0 0 0.75rem;
}

.ind-sidebar__toc ul, .ind-sidebar__related ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.ind-sidebar__toc a, .ind-sidebar__related a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 0.9375rem;
	color: var(--z-color-text, #1c2240);
	text-decoration: none;
	padding: 0.5rem 0;
	border-bottom: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.08));
	transition: color var(--z-transition);
}
.ind-sidebar__toc a:hover, .ind-sidebar__related a:hover { color: var(--z-color-orange, #f97316); }
.ind-sidebar__arrow { opacity: 0.4; transition: opacity var(--z-transition), transform var(--z-transition); }
.ind-sidebar a:hover .ind-sidebar__arrow { opacity: 1; transform: translateX(3px); }
.ind-sidebar__toc a.is-active { color: var(--z-color-orange, #f97316); font-weight: 600; }

.ind-sidebar__cta {
	background: var(--z-color-bg-dark, #0b1024);
	color: #fff;
	padding: 1.25rem;
	border-radius: var(--z-radius, 12px);
}
.ind-sidebar__cta-text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: rgba(255,255,255,0.85);
	margin: 0 0 1rem;
}
.z-btn--full { width: 100%; justify-content: center; }

/* ===== HOW WE HELP CARDS ===== */
.ind-help { background: var(--z-color-bg, #F7F7F7); padding-block: clamp(4rem, 8vw, 6rem); }
.ind-help .hero__preheader { display: block; margin-bottom: 0.75rem; }
.ind-help .z-section-heading {
	margin-bottom: 1rem;
}
.ind-help__subtitle {
	max-width: 48rem;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.7));
	font-size: 1.0625rem;
	line-height: 1.6;
	margin: 0.5rem 0 0;
}
.ind-help__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 1.25rem;
	margin-top: 3rem;
}
.ind-help__card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1.75rem 1.5rem;
	background: #fff;
	border: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.06));
	border-radius: var(--z-radius, 12px);
	color: var(--z-color-text, #1c2240);
	text-decoration: none;
	transition: transform var(--z-transition), border-color var(--z-transition), box-shadow var(--z-transition);
}
.ind-help__card:hover {
	transform: translateY(-3px);
	border-color: var(--z-color-orange, #f97316);
	box-shadow: 0 8px 24px rgba(28, 34, 64, 0.06);
}
.ind-help__icon {
	font-size: 2rem;
	color: var(--z-color-orange, #f97316);
	font-variation-settings: 'wght' 500;
}
.ind-help__card-title { font-size: 1.0625rem; font-weight: 700; margin: 0; }
.ind-help__card-desc {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.7));
	margin: 0;
	flex: 1;
}
.ind-help__arrow { color: var(--z-color-orange, #f97316); font-size: 1.25rem; align-self: flex-end; }

/* ===== CUSTOMER STORIES ===== */
.ind-cases { background: var(--z-color-bg, #F7F7F7); padding-block: clamp(4rem, 8vw, 6rem); }
.ind-cases__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
	gap: 1.5rem;
	margin-top: 2rem;
}
.ind-cases__card {
	background: #fff;
	border-radius: var(--z-radius, 12px);
	overflow: hidden;
	text-decoration: none;
	color: var(--z-color-text, #1c2240);
	border: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.06));
	transition: transform var(--z-transition), border-color var(--z-transition);
}
.ind-cases__card:hover { transform: translateY(-3px); border-color: var(--z-color-orange); }
.ind-cases__thumb img { width: 100%; height: 12rem; object-fit: cover; display: block; }
.ind-cases__card-title { font-size: 1.0625rem; font-weight: 700; margin: 1rem 1.25rem 0.5rem; }
.ind-cases__card-desc {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.7));
	margin: 0 1.25rem 1.25rem;
}

/* ===== STEPPER (Where to start) ===== */
.ind-steps { background: var(--z-color-bg-dark, #0b1024); color: #fff; padding-block: clamp(4rem, 8vw, 6rem); }
.ind-steps .z-section-heading { color: #fff; }
.ind-steps .hero__preheader { color: var(--z-color-orange, #f97316); }

.ind-stepper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
	margin-top: 2rem;
	position: relative;
}
.ind-stepper__step {
	position: relative;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.12);
	border-radius: var(--z-radius, 12px);
	padding: 1.75rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.ind-stepper__num {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: var(--z-color-orange, #f97316);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 0.9375rem;
	margin-bottom: 0.25rem;
}
.ind-stepper__title { font-size: 1.125rem; font-weight: 700; margin: 0; color: #fff; }
.ind-stepper__subtitle {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--z-color-orange, #f97316);
}
.ind-stepper__desc {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: rgba(255,255,255,0.7);
	margin: 0.25rem 0 0.75rem;
	flex: 1;
}
.ind-stepper__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--z-color-orange, #f97316);
	text-decoration: none;
	transition: gap var(--z-transition);
}
.ind-stepper__cta:hover { gap: 0.85rem; }

/* connector lines between steps */
.ind-stepper__connector {
	display: none;
}

/* ===== ENGAGEMENT MODULATION (2-col: texto + 3 stages) ===== */
.ind-eng {
	background: var(--z-color-bg-dark, #0b1024);
	color: #fff;
	padding-block: clamp(4rem, 8vw, 6rem);
}
.ind-eng .hero__preheader { color: var(--z-color-orange, #f97316); }

.ind-eng__layout {
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: clamp(2rem, 5vw, 4rem);
	align-items: center;
}

.ind-eng__intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.25rem;
}
.ind-eng__title {
	font-size: clamp(1.75rem, 3.5vw, 2.5rem);
	font-weight: 800;
	line-height: 1.15;
	color: #fff;
	margin: 0.25rem 0 0;
	text-wrap: balance;
}
.ind-eng__text {
	font-size: 1.0625rem;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.78);
	margin: 0;
	max-width: 36rem;
}

/* Lista vertical de stages con flechas entre cada uno */
.ind-eng__stages {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}
.ind-eng__stage {
	position: relative;
	display: grid;
	grid-template-columns: 3rem 1fr;
	gap: 1rem;
	align-items: center;
	padding: 1.25rem 1.5rem;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: var(--z-radius, 12px);
	transition: transform var(--z-transition), border-color var(--z-transition), background var(--z-transition);
}
.ind-eng__stage:hover {
	transform: translateX(4px);
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(249, 115, 22, 0.4);
}
.ind-eng__stage-icon {
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(249, 115, 22, 0.15);
	color: var(--z-color-orange, #f97316);
	border-radius: 50%;
	font-size: 1.5rem;
	font-variation-settings: 'wght' 500;
	flex-shrink: 0;
}
.ind-eng__stage-label {
	font-size: 1.0625rem;
	font-weight: 700;
	color: #fff;
	margin: 0 0 0.25rem;
}
.ind-eng__stage-desc {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.7);
	margin: 0;
}
@media (max-width: 1024px) {
	.ind-eng__layout { grid-template-columns: 1fr; }
}

/* ===== HUB (archive) ===== */
.ind-hub-hero {
	position: relative;
	background: var(--z-color-bg-dark, #0b1024);
	color: #fff;
	padding-block: clamp(8rem, 14vw, 12rem) clamp(3rem, 6vw, 4rem);
	overflow: hidden;
}
.ind-hub-hero__body { position: relative; z-index: 2; max-width: 56rem; }
.ind-hub-hero__title {
	font-size: clamp(2.5rem, 5.5vw, 4rem);
	font-weight: 700;
	line-height: 1.1;
	margin: 1rem 0 1.25rem;
	color: #fff;
}
.ind-hub-hero__subtitle { font-size: 1.125rem; line-height: 1.55; color: rgba(255,255,255,0.78); max-width: 44rem; }

/* HUB body argumental */
.ind-hub-arg { background: var(--z-color-bg, #F7F7F7); padding-block: clamp(4rem, 8vw, 6rem); }
.ind-hub-arg__layout {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: clamp(2.5rem, 5vw, 4.5rem);
	align-items: center;
}
.ind-hub-arg__main p {
	font-size: 1.0625rem;
	line-height: 1.7;
	color: var(--z-color-text, #1c2240);
	margin: 0 0 1.25rem;
}
.ind-hub-arg__main p:last-child { margin-bottom: 0; }

.ind-hub-arg__question {
	border-left: 3px solid var(--z-color-orange, #f97316);
	background: #fff;
	padding: 1.75rem 1.75rem;
	margin: 0;
	border-radius: 0 var(--z-radius-sm, 6px) var(--z-radius-sm, 6px) 0;
	box-shadow: 0 2px 12px rgba(11, 16, 36, 0.04);
}
.ind-hub-arg__question p {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--z-color-text);
	margin: 0 0 1.25rem;
	font-style: normal;
}
.ind-hub-arg__question p:last-child { margin-bottom: 0; }
.ind-hub-arg__question p strong {
	display: block;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--z-color-orange, #f97316);
	margin-bottom: 0.5rem;
	font-weight: 700;
}
.ind-hub-arg__question p em {
	font-style: italic;
	color: var(--z-color-text);
}
.ind-hub-arg__closer {
	margin-top: clamp(2.5rem, 5vw, 4rem);
	padding-top: clamp(1.5rem, 3vw, 2rem);
	border-top: 1px solid rgba(11, 16, 36, 0.08);
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.75));
	max-width: var(--z-container-narrow);
}

/* HUB closing block */
.ind-hub-closing {
	background: var(--z-color-bg-dark, #0b1024);
	color: #fff;
	padding-block: clamp(4rem, 8vw, 6rem);
	text-align: center;
}
.ind-hub-closing__trust {
	font-size: 0.875rem;
	color: rgba(255,255,255,0.65);
	letter-spacing: 0.04em;
	margin: 0 0 1.5rem;
}
.ind-hub-closing__line {
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 700;
	color: #fff;
	max-width: 44rem;
	margin: 0 auto 2.5rem;
	text-wrap: balance;
	line-height: 1.3;
}
.ind-hub-closing__cta {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
}
.ind-hub-closing__cta p {
	font-size: 1rem;
	color: rgba(255,255,255,0.78);
	margin: 0;
}

.ind-hub-grid { background: var(--z-color-bg, #F7F7F7); padding-block: clamp(4rem, 8vw, 6rem); }
.ind-hub__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
	gap: 1.25rem;
}
.ind-hub__card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1.75rem;
	background: #fff;
	border: 1px solid var(--z-color-border, rgba(28, 34, 64, 0.06));
	border-radius: var(--z-radius, 12px);
	color: var(--z-color-text, #1c2240);
	text-decoration: none;
	transition: transform var(--z-transition), border-color var(--z-transition);
}
.ind-hub__card:hover { transform: translateY(-3px); border-color: var(--z-color-orange, #f97316); }
.ind-hub__card-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.ind-hub__card-pill {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--z-color-orange, #f97316);
}
.ind-hub__card-arrow { color: var(--z-color-orange, #f97316); font-size: 1.25rem; }
.ind-hub__card-title { font-size: 1.25rem; font-weight: 700; margin: 0; }
.ind-hub__card-desc {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--z-color-text-light, rgba(28, 34, 64, 0.7));
	margin: 0;
}

/* Closing CTA del hub: dar aire respecto al footer */
.industries-hub .service-cta {
	padding-bottom: clamp(5rem, 9vw, 8rem);
}

/* =============================================
   RESPONSIVE
   ============================================= */

/* Tablet horizontal y por debajo (~1024px) */
@media (max-width: 1024px) {
	/* Body argumental: una columna, sidebar pasa debajo */
	.ind-arg__layout {
		grid-template-columns: 1fr;
		gap: 3rem;
	}
	.ind-arg__main { max-width: none; }
	.ind-arg__sidebar { position: static; }
	/* En tablet/móvil ocultamos el ToC (la página no es tan larga para necesitarlo) */
	.ind-arg__sidebar .ind-sidebar__toc { display: none; }

	/* Engagement: vertical */
	.ind-eng__layout { grid-template-columns: 1fr; gap: 2rem; }

	/* Stepper Where to start: vertical */
	.ind-stepper { grid-template-columns: 1fr; }

	/* Cards grid Hub: 2 cols */
	.ind-hub__grid { grid-template-columns: repeat(2, 1fr); }
}

/* Móvil (~768px y por debajo) */
@media (max-width: 768px) {
	/* Hero — reducir padding y tipografía un punto */
	.ind-hero__body {
		padding-block: clamp(6rem, 18vw, 9rem) clamp(3rem, 8vw, 4rem);
	}
	.ind-hero__title {
		font-size: clamp(2rem, 8vw, 2.75rem);
	}
	.ind-hero__subtitle { font-size: 0.9375rem; }
	.ind-hero__actions { width: 100%; }
	.ind-hero__actions .z-btn { width: 100%; justify-content: center; }

	/* Hub hero */
	.ind-hub-hero__title { font-size: clamp(2rem, 8vw, 2.75rem); }
	.ind-hub-hero__subtitle { font-size: 1rem; }

	/* Body argumental — bloques más compactos */
	.ind-arg { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-arg__h2 { font-size: clamp(1.375rem, 5vw, 1.75rem); }
	.ind-arg__h3 { font-size: 1.125rem; margin-top: 1.5rem; }
	.ind-arg__item { padding: 1rem 1.125rem; }
	.ind-arg__item h4 { font-size: 0.9375rem; }
	.ind-arg__item p { font-size: 0.875rem; }

	/* Question blocks */
	.ind-arg__question-old,
	.ind-arg__question-new { padding: 1rem 1.125rem; }
	.ind-arg__question-text { font-size: 1rem; }

	/* Mitigation steps */
	.ind-arg__step {
		grid-template-columns: 2rem 1fr;
		gap: 0.75rem;
	}
	.ind-arg__step-num { width: 2rem; height: 2rem; font-size: 0.875rem; }

	/* Sidebar (cuando se apila) — más compacta y CTA visible */
	.ind-sidebar { gap: 1.25rem; }
	.ind-sidebar__cta { padding: 1rem; }

	/* How we help */
	.ind-help { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-help__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
		margin-top: 2rem;
	}
	.ind-help__card { padding: 1.25rem; }

	/* Regulatory table — ya tiene su responsive interno */

	/* Customer stories */
	.ind-cases { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-cases__grid { grid-template-columns: 1fr; }

	/* Stepper Where to start */
	.ind-steps { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-stepper__step { padding: 1.25rem; }

	/* Engagement */
	.ind-eng { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-eng__title { font-size: clamp(1.5rem, 6vw, 2rem); }
	.ind-eng__stage { padding: 1rem 1.125rem; gap: 0.875rem; }
	.ind-eng__stage-icon { width: 2.5rem; height: 2.5rem; font-size: 1.25rem; }
	.ind-eng__stage-label { font-size: 1rem; }
	.ind-eng__stage-desc { font-size: 0.875rem; }

	/* Hub grid: 1 col */
	.ind-hub__grid { grid-template-columns: 1fr; }
	.ind-hub-arg { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-hub-arg__main p { font-size: 1rem; }
	.ind-hub-arg__layout { grid-template-columns: 1fr; gap: 2rem; }
	.ind-hub-arg__aside { position: static; }

	/* Closing hub */
	.ind-hub-closing { padding-block: clamp(3rem, 8vw, 4rem); }
	.ind-hub-closing__line { font-size: clamp(1.25rem, 5vw, 1.625rem); }
}
