/* NCF Sticky Mobile CTA
 * The bar is display:none here; the plugin injects the media query that turns it on
 * below the configured breakpoint, so the desktop never loads or paints it.
 * Colors match the site's Forminator submit button (#097BAA) and Open Sans body font. */

:root {
	--ncf-cta-h: 60px;                 /* bar height, excluding the iPhone home-indicator inset */
	--ncf-cta-bg: #097baa;
	--ncf-cta-bg-press: #076a93;
	--ncf-cta-fg: #ffffff;
	--ncf-cta-divider: rgba(255, 255, 255, 0.28);
	--ncf-cta-ring: #ffd166;
}

.ncf-cta {
	display: none;                     /* enabled by the injected media query */
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 99990;                    /* above Avada, below Jivo's full-screen chat window */
	height: calc(var(--ncf-cta-h) + env(safe-area-inset-bottom, 0px));
	padding-bottom: env(safe-area-inset-bottom, 0px);
	background: var(--ncf-cta-bg);
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.18);
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	transform: translateY(0);
	transition: transform 0.22s ease;
	will-change: transform;
	-webkit-tap-highlight-color: transparent;
}

/* Slides out of the way while a form field has focus (keyboard open) or on scroll-down. */
.ncf-cta.is-hidden {
	transform: translateY(calc(100% + 12px));
	box-shadow: none;
}

.ncf-cta__btn {
	flex: 1 1 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: var(--ncf-cta-h);      /* 60px tall, well over the 44px minimum tap target */
	color: var(--ncf-cta-fg) !important;
	text-decoration: none !important;
	font-size: 16px;                   /* "Get a Free Quote" plus icon fits one line at 375 px with room to spare */
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	user-select: none;
	-webkit-user-select: none;
}

.ncf-cta__btn + .ncf-cta__btn {
	border-left: 1px solid var(--ncf-cta-divider);
}

.ncf-cta__btn:active {
	background: var(--ncf-cta-bg-press);
}

.ncf-cta__btn:focus-visible {
	outline: 3px solid var(--ncf-cta-ring);
	outline-offset: -4px;
}

.ncf-cta__icon {
	width: 22px;
	height: 22px;
	flex: 0 0 auto;
}

/* Narrow Android phones (360 px): keep both labels on one line. */
@media (max-width: 369px) {
	.ncf-cta__btn { font-size: 15px; gap: 7px; }
	.ncf-cta__icon { width: 20px; height: 20px; }
}

/* Brief highlight on the form the Get a Free Quote button scrolled to. */
.ncf-cta-target {
	scroll-margin-top: 90px;           /* clears Avada's sticky mobile header */
}

.ncf-cta-target.ncf-cta-flash {
	animation: ncf-cta-flash 1.6s ease-out 1;
}

@keyframes ncf-cta-flash {
	0%   { box-shadow: 0 0 0 4px rgba(9, 123, 170, 0.55); }
	100% { box-shadow: 0 0 0 4px rgba(9, 123, 170, 0); }
}

@media (prefers-reduced-motion: reduce) {
	.ncf-cta { transition: none; }
	.ncf-cta-target.ncf-cta-flash { animation: none; }
}

/* Never print the bar. */
@media print {
	.ncf-cta { display: none !important; }
}
