/* Trigger button sits inline wherever the shortcode is placed — no extra
   wrapper styling needed, it inherits .btn.btn-g from the page's own kit. */
.a4c-fcg {
	display: inline-block;
}

/* Compact offer banner (lighter than the page's own 124px-padded .s
   sections — this is a teaser, not a full section) placed before the hero
   video. Uses the "kit-4" template's own local custom properties (--warm,
   --amber, --ink2) rather than the generic theme.json palette, since that's
   what this specific landing page template already runs on. */
.ibt-kit-4 .a4c-free-offer {
	background: var(--warm, #f7eedb);
	padding: 56px 0;
}

.ibt-kit-4 .a4c-free-offer .eye {
	color: var(--amber, #d97d0d);
}

.ibt-kit-4 .a4c-free-offer h2 {
	max-width: 820px;
	margin: 14px 0 18px;
}

.ibt-kit-4 .a4c-free-offer > .w > p:not(.eye) {
	max-width: 720px;
	margin: 0 0 24px;
	color: var(--ink2, #646c70);
}

.ibt-kit-4 .a4c-free-offer .a4c-fcg {
	margin-top: 4px;
}

.a4c-fcg-overlay {
	position: fixed;
	inset: 0;
	background: rgba(23, 32, 38, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	z-index: 99999;
}

.a4c-fcg-modal {
	position: relative;
	background: #fff;
	border-radius: var(--r, 14px);
	padding: 36px 32px;
	width: 100%;
	max-width: 440px;
	max-height: 90vh;
	overflow-y: auto;
	box-shadow: 0 30px 80px rgba(23, 59, 90, 0.28);
}

.a4c-fcg-close {
	position: absolute;
	top: 14px;
	inset-inline-end: 14px;
	width: 32px;
	height: 32px;
	border: none;
	background: transparent;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	color: var(--ink2, #646c70);
}

.a4c-fcg-step h3 {
	margin: 0 0 16px;
	font-size: 22px;
}

.a4c-fcg-step p {
	margin: 0 0 18px;
	color: var(--ink2, #646c70);
}

.a4c-fcg-step label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 14px;
}

.a4c-fcg-step input[type="text"],
.a4c-fcg-step input[type="email"],
.a4c-fcg-step input[type="tel"] {
	display: block;
	width: 100%;
	margin-top: 6px;
	padding: 12px 14px;
	font-size: 16px;
	font-weight: 400;
	border: 1px solid var(--line, #c7d3dc);
	border-radius: 8px;
	background: #fff;
}

.a4c-fcg-step input:focus {
	outline: none;
	border-color: var(--gold, #f2b544);
	box-shadow: 0 0 0 3px rgba(242, 181, 68, 0.25);
}

.a4c-fcg-turnstile {
	margin: 4px 0 18px;
}

.a4c-fcg-hp-wrap {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

.a4c-fcg-step button[type="submit"] {
	width: 100%;
	border: none;
	cursor: pointer;
	font: inherit;
}

.a4c-fcg-step button[type="submit"]:disabled {
	opacity: 0.6;
	cursor: default;
}

.a4c-fcg-resend {
	display: block;
	width: 100%;
	margin-top: 12px;
	background: none;
	border: none;
	color: var(--b1, #255378);
	font-size: 14px;
	text-decoration: underline;
	cursor: pointer;
}

.a4c-fcg-error {
	color: #b43636;
	background: #fbeaea;
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 14px;
}

.a4c-fcg-step-success h3 {
	text-align: center;
	margin: 12px 0;
}
