/**
 * Reserved space + skeleton for HubSpot embeds (Faz 8 B2).
 * Heights from staging hubspot-cls.js before table (2026-09-26), +10px buffer.
 */

.hs-embed {
	position: relative;
	width: 100%;
	box-sizing: border-box;
}

/* Fallback by form id (prefix) when no layout card selector matches. */
.hs-embed[data-hs-form^="edb2e4e3"] {
	min-height: 725px;
}
.hs-embed[data-hs-form^="9ec3bb61"] {
	min-height: 695px;
}
.hs-embed[data-hs-form^="d15d7de1"] {
	min-height: 625px;
}
/* Download Resource form (reports, whitepapers): audit 24-F5 "no reserved height". */
.hs-embed[data-hs-form^="268fcf8c"] {
	min-height: 560px;
}

/* Layout-specific overrides (more accurate than form-id alone). */
.rqd-form-card .hs-embed {
	min-height: 725px; /* B1 EN iframe 715; ES card ~739 */
}
.product-form .hs-embed,
.page-hero__form-wrap .hs-embed {
	min-height: 695px; /* B1 product 682 */
}
.ctc-form-card .hs-embed,
.wbn-cta .hs-embed,
.rd-hero__form-wrap .hs-embed {
	min-height: 600px; /* B1 590 */
}
.ptr-form-card .hs-embed,
.uc-demo__card .hs-embed {
	min-height: 625px; /* B1 614 */
}
.evt-form-card .hs-embed,
.wdet-form-card .hs-embed {
	min-height: 800px; /* B1 788 */
}

@media (max-width: 767.98px) {
	.hs-embed[data-hs-form^="edb2e4e3"] {
		min-height: 855px;
	}
	.hs-embed[data-hs-form^="9ec3bb61"] {
		min-height: 965px;
	}
	.hs-embed[data-hs-form^="d15d7de1"] {
		min-height: 825px;
	}

	.rqd-form-card .hs-embed {
		min-height: 855px; /* B1 845 */
	}
	.product-form .hs-embed,
	.page-hero__form-wrap .hs-embed {
		min-height: 965px; /* B1 952 */
	}
	.ctc-form-card .hs-embed,
	.rd-hero__form-wrap .hs-embed,
	.ptr-form-card .hs-embed,
	.uc-demo__card .hs-embed,
	.evt-form-card .hs-embed,
	.wdet-form-card .hs-embed {
		min-height: 825px; /* B1 812 */
	}
	.wbn-cta .hs-embed {
		min-height: 800px; /* B1 788 */
	}
}

/* Neutral skeleton while HubSpot iframe mounts. */
.hs-embed.hs-embed--pending::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 8px;
	background: linear-gradient(
		90deg,
		rgba(148, 163, 184, 0.12) 0%,
		rgba(148, 163, 184, 0.22) 45%,
		rgba(148, 163, 184, 0.12) 90%
	);
	background-size: 200% 100%;
	animation: srpoc-hs-skeleton 1.2s ease-in-out infinite;
	pointer-events: none;
	z-index: 0;
}

.hs-embed.hs-embed--pending > * {
	position: relative;
	z-index: 1;
}

.hs-embed.hs-embed--ready {
	transition: opacity 0.2s ease;
}

@keyframes srpoc-hs-skeleton {
	0% {
		background-position: 100% 0;
	}
	100% {
		background-position: -100% 0;
	}
}

/* Dark hero cards: slightly stronger skeleton so it reads on dark panels. */
.page-hero--dark .hs-embed.hs-embed--pending::before,
.product-form--dark .hs-embed.hs-embed--pending::before {
	background: linear-gradient(
		90deg,
		rgba(255, 255, 255, 0.06) 0%,
		rgba(255, 255, 255, 0.14) 45%,
		rgba(255, 255, 255, 0.06) 90%
	);
	background-size: 200% 100%;
}

/* N15: message shown in the slot when the HubSpot form does not load (hubspot-forms.js).
 * The slot keeps its reserved min-height; colours follow the card (light or dark). */
.hs-embed .hs-embed__fallback {
	margin: 0;
	padding: 24px 4px;
	font-size: 1rem;
	line-height: 1.5;
	color: inherit;
}

.hs-embed .hs-embed__fallback a {
	color: inherit;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/*
 * Forms switched to their live counterparts on 14 Oct 2026 (contact, partner, webinar, ATI demo,
 * comparison pages, newsletter sign-up box): heights measured on staging (15 Oct, desktop 1366 /
 * iPhone 13) + 10px. Later in the file than the layout rules above, so they win.
 */
.hs-embed[data-hs-form^="e2cca89c"] { min-height: 820px; }
.hs-embed[data-hs-form^="b63cd17d"] { min-height: 530px; }
.hs-embed[data-hs-form^="99682b86"] { min-height: 554px; }
.hs-embed[data-hs-form^="5ac48574"] { min-height: 787px; }
.hs-embed[data-hs-form^="09ed07d2"] { min-height: 776px; }
.hs-embed[data-hs-form^="c5d75458"] { min-height: 166px; }
.rqd-form-card .hs-embed[data-hs-form^="edb2e4e3"] { min-height: 751px; }

@media (max-width: 767.98px) {
	.hs-embed[data-hs-form^="e2cca89c"] { min-height: 975px; }
	.hs-embed[data-hs-form^="b63cd17d"] { min-height: 636px; }
	.hs-embed[data-hs-form^="99682b86"] { min-height: 554px; }
	.hs-embed[data-hs-form^="5ac48574"] { min-height: 917px; }
	.hs-embed[data-hs-form^="09ed07d2"] { min-height: 882px; }
	.hs-embed[data-hs-form^="c5d75458"] { min-height: 166px; }
	.rqd-form-card .hs-embed[data-hs-form^="edb2e4e3"] { min-height: 857px; }
}
