/**
 * Site-wide interaction system.
 * Content stays visible when this file or motion.js does not run.
 */

:root {
	--sqhq-dur-fast: 180ms;
	--sqhq-dur-std: 280ms;
	--sqhq-dur-enter: 560ms;
	--sqhq-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--sqhq-lift: 2px;
	--sqhq-shadow-rest: 0 5px 22px rgba(8, 36, 63, 0.05);
	--sqhq-shadow-lift: 0 12px 28px rgba(8, 36, 63, 0.1);
	--sqhq-glow: 0 8px 18px rgba(255, 130, 31, 0.28);
}

html {
	scroll-behavior: smooth;
}

.sqhq-button,
.wp-block-button__link,
.sqhq-inquiry-panel .ff-btn-submit,
.sqhq-contact-form button[type="submit"],
.sqhq-nav a,
.sqhq-submenu-toggle,
.sqhq-footer a,
.sqhq-section-nav a,
.sqhq-title-banner__breadcrumb a,
.sqhq-feature-link a,
.sqhq-editorial-card a,
.sqhq-sitemap-list a,
.sqhq-slider__arrow,
.sqhq-slider__dot::after,
.sqhq-search input,
.sqhq-contact-form input,
.sqhq-contact-form textarea,
.sqhq-contact-form select,
.sqhq-inquiry-panel .ff-el-form-control,
.sqhq-editorial-faq summary,
.sqhq-showcase__panel,
.sqhq-showcase__trigger::after,
.sqhq-nav-toggle__bars,
.sqhq-nav-toggle__bars::before,
.sqhq-nav-toggle__bars::after {
	transition-duration: var(--sqhq-dur-fast);
	transition-timing-function: var(--sqhq-ease);
}

.sqhq-button,
.wp-block-button__link,
.sqhq-inquiry-panel .ff-btn-submit,
.sqhq-contact-form button[type="submit"] {
	transition-property: background-color, color, border-color, box-shadow, transform, opacity;
	transition-duration: var(--sqhq-dur-std);
}

.sqhq-button:focus-visible,
.wp-block-button__link:focus-visible,
.sqhq-inquiry-panel .ff-btn-submit:focus-visible,
.sqhq-contact-form button:focus-visible,
.sqhq-slider__arrow:focus-visible,
.sqhq-slider__dot:focus-visible {
	outline: 3px solid var(--sqhq-blue);
	outline-offset: 3px;
}

.sqhq-button.is-pending,
.wp-block-button__link.is-pending,
.ff-btn-submit.is-pending,
.sqhq-contact-form button.is-pending {
	cursor: progress;
	opacity: 0.72;
}

.sqhq-slide__actions .sqhq-button::after,
.sqhq-demo-band .wp-block-button__link::after,
.sqhq-footer__intro .sqhq-button span[aria-hidden],
.sqhq-footer__about a span[aria-hidden],
.sqhq-editorial-card a span[aria-hidden] {
	display: inline-block;
	transition: transform var(--sqhq-dur-fast) var(--sqhq-ease);
}

@media (hover: hover) and (pointer: fine) {
	.sqhq-button:not(.sqhq-button--ghost):hover,
	.wp-block-button__link:hover,
	.sqhq-inquiry-panel .ff-btn-submit:hover,
	.sqhq-contact-form button[type="submit"]:hover {
		transform: translateY(calc(var(--sqhq-lift) * -1));
		box-shadow: var(--sqhq-shadow-lift);
	}

	.sqhq-header .sqhq-button:hover,
	.sqhq-header__actions .wp-block-button__link:hover,
	.sqhq-features .wp-block-button__link:hover,
	.sqhq-footer__intro .sqhq-button:hover,
	.sqhq-slide__actions .sqhq-button:not(.sqhq-button--ghost):hover,
	.sqhq-inquiry-panel .ff-btn-submit:hover {
		box-shadow: var(--sqhq-glow);
	}

	.sqhq-button--ghost:hover {
		transform: none;
		box-shadow: none;
	}

	.sqhq-slide__actions .sqhq-button:hover::after,
	.sqhq-demo-band .wp-block-button__link:hover::after,
	.sqhq-editorial-card a:hover span[aria-hidden] {
		transform: translateX(4px);
	}

	.sqhq-footer__intro .sqhq-button:hover span[aria-hidden],
	.sqhq-footer__about a:hover span[aria-hidden] {
		transform: translate(2px, -2px);
	}
}

.sqhq-button:not(.sqhq-button--ghost):active,
.wp-block-button__link:active,
.sqhq-header__actions .wp-block-button__link:active,
.sqhq-features .wp-block-button__link:active,
.sqhq-inquiry-panel .ff-btn-submit:active,
.sqhq-contact-form button[type="submit"]:active {
	transform: translateY(1px);
	box-shadow: none;
}

.sqhq-search input,
.sqhq-contact-form input:not([type="checkbox"]):not([type="hidden"]):not([type="submit"]),
.sqhq-contact-form textarea,
.sqhq-contact-form select,
.sqhq-inquiry-panel .ff-el-form-control {
	transition-property: border-color, box-shadow, background-color;
}

.sqhq-nav__list > li > a {
	position: relative;
}

.sqhq-nav__list > li > a::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -0.35rem;
	height: 2px;
	background: var(--sqhq-blue);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform var(--sqhq-dur-std) var(--sqhq-ease);
}

.sqhq-nav a {
	transition-property: color, background-color;
}

@media (hover: hover) and (pointer: fine) {
	.sqhq-nav__list > li:hover > a::before,
	.sqhq-nav__list > li:focus-within > a::before {
		transform: scaleX(1);
	}
}

.sqhq-nav__list > li.current-menu-item > a::before,
.sqhq-nav__list > li.current-menu-ancestor > a::before,
.sqhq-nav__list > li > a:focus-visible::before {
	transform: scaleX(1);
}

.sqhq-submenu-toggle::after {
	transition: transform var(--sqhq-dur-fast) var(--sqhq-ease);
}

.sqhq-header.is-enhanced .is-submenu-open > .sqhq-submenu-toggle::after {
	transform: translateY(2px) rotate(225deg);
}

@media (min-width: 960px) {
	.sqhq-header.is-enhanced .sqhq-nav .sub-menu {
		display: block;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(6px);
		transition: opacity var(--sqhq-dur-std) var(--sqhq-ease), transform var(--sqhq-dur-std) var(--sqhq-ease), visibility 0s linear var(--sqhq-dur-std);
	}

	.sqhq-header.is-enhanced .is-submenu-open > .sub-menu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: none;
		transition-delay: 0s;
	}
}

.sqhq-nav .sub-menu a {
	transition: background-color var(--sqhq-dur-fast) var(--sqhq-ease), color var(--sqhq-dur-fast) var(--sqhq-ease);
}

.sqhq-feature-card,
.sqhq-editorial-card,
.sqhq-card,
.sqhq-sitemap-section,
.sqhq-editorial-step,
.sqhq-app-view__frame,
.sqhq-product,
.sqhq-showcase__photo,
.sqhq-dashboard-capture__image a,
.sqhq-slide__card {
	transition: transform var(--sqhq-dur-std) var(--sqhq-ease), box-shadow var(--sqhq-dur-std) var(--sqhq-ease), border-color var(--sqhq-dur-std) var(--sqhq-ease);
}

.sqhq-feature-card::before,
.sqhq-highlights .sqhq-highlight h3::before,
.sqhq-editorial-card::before,
.sqhq-showcase__trigger::before {
	transition: transform var(--sqhq-dur-std) var(--sqhq-ease), background-color var(--sqhq-dur-std) var(--sqhq-ease), width var(--sqhq-dur-std) var(--sqhq-ease);
}

@media (hover: hover) and (pointer: fine) {
	.sqhq-feature-card:hover,
	.sqhq-editorial-card:hover,
	.sqhq-card:hover,
	.sqhq-sitemap-section:hover {
		transform: translateY(calc(var(--sqhq-lift) * -1));
		border-color: #b7d0e6;
		box-shadow: var(--sqhq-shadow-lift);
	}

	.sqhq-feature-card:hover::before,
	.sqhq-highlight:hover h3::before {
		transform: translateY(-3px);
		background-color: #d7ecff;
	}

	.sqhq-editorial-card:hover::before {
		width: 42px;
	}

	.sqhq-editorial-step:hover {
		border-top-color: var(--sqhq-blue);
	}

	.sqhq-app-view:hover .sqhq-app-view__frame,
	.sqhq-product:hover,
	.sqhq-showcase__photo:hover,
	.sqhq-slide__card:hover {
		border-color: #9ec4e4;
		box-shadow: 0 16px 36px rgba(8, 36, 63, 0.12);
	}

	.sqhq-dashboard-capture__image a:hover {
		transform: translateY(calc(var(--sqhq-lift) * -1));
		border-color: #9ec4e4;
	}

	.sqhq-dashboard-capture__image a img {
		transition: transform 520ms var(--sqhq-ease);
	}

	.sqhq-dashboard-capture__image a:hover img {
		transform: scale(1.015);
	}
}

.sqhq-showcase__panel {
	transition: background-color var(--sqhq-dur-std) var(--sqhq-ease), border-color var(--sqhq-dur-std) var(--sqhq-ease), box-shadow var(--sqhq-dur-std) var(--sqhq-ease);
}

.sqhq-showcase__trigger::after {
	transition: transform var(--sqhq-dur-fast) var(--sqhq-ease);
}

.sqhq-editorial-faq summary:hover,
.sqhq-editorial-faq details[open] > summary {
	color: var(--sqhq-blue);
}

.sqhq-section-nav a {
	position: relative;
	text-decoration: none;
}

.sqhq-section-nav a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform var(--sqhq-dur-std) var(--sqhq-ease);
}

.sqhq-section-nav a:hover::after,
.sqhq-section-nav a:focus-visible::after {
	transform: scaleX(1);
	text-decoration: none;
}

.sqhq-title-banner__breadcrumb a {
	text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor);
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 0 1px;
	transition: background-size var(--sqhq-dur-std) var(--sqhq-ease), color var(--sqhq-dur-fast) var(--sqhq-ease);
}

.sqhq-title-banner__breadcrumb a:hover,
.sqhq-title-banner__breadcrumb a:focus-visible {
	background-size: 100% 1px;
	text-decoration: none;
}

.sqhq-footer__base a {
	display: inline-block;
}

@media (hover: hover) and (pointer: fine) {
	.sqhq-footer__base a:hover {
		transform: translateY(-2px);
	}
}

.sqhq-contact-form input:not([type="checkbox"]):not([type="submit"]):hover,
.sqhq-contact-form textarea:hover,
.sqhq-contact-form select:hover,
.sqhq-inquiry-panel .ff-el-form-control:hover,
.sqhq-search input:hover {
	border-color: #8eabc4;
}

.sqhq-contact-form input[aria-invalid="true"],
.sqhq-contact-form textarea[aria-invalid="true"],
.sqhq-contact-form select[aria-invalid="true"],
.sqhq-inquiry-panel .ff-el-is-error .ff-el-form-control,
.sqhq-inquiry-panel .ff-el-group.error .ff-el-form-control {
	border-color: #b42318;
	background: #fff8f7;
}

.sqhq-inquiry-panel .error,
.sqhq-inquiry-panel .text-danger {
	color: #842d21;
}

.sqhq-contact-success,
.sqhq-inquiry-panel .ff-message-success {
	animation: sqhq-fade-in var(--sqhq-dur-enter) var(--sqhq-ease);
}

.sqhq-slider__dot::after {
	transition: width var(--sqhq-dur-std) var(--sqhq-ease), background-color var(--sqhq-dur-std) var(--sqhq-ease);
}

@media (hover: hover) and (pointer: fine) {
	.sqhq-slider__arrow:hover {
		background: #08243f;
		transform: translateY(-1px);
	}

	.sqhq-slider__arrow:active {
		transform: translateY(0);
	}
}

@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
	.sqhq-slide:not([hidden]) .sqhq-slide__media img {
		animation: sqhq-settle 12s var(--sqhq-ease) both;
	}

	.sqhq-slide:not([hidden]) .sqhq-status-cards {
		animation: sqhq-float 9s ease-in-out infinite;
	}
}

html.sqhq-motion .sqhq-reveal {
	opacity: 0;
	translate: 0 14px;
}

html.sqhq-motion .sqhq-reveal.is-in {
	opacity: 1;
	translate: 0 0;
	transition: opacity var(--sqhq-dur-enter) var(--sqhq-ease), translate var(--sqhq-dur-enter) var(--sqhq-ease);
	transition-delay: var(--sqhq-stagger, 0ms);
}

@keyframes sqhq-fade-in {
	from {
		opacity: 0;
		translate: 0 8px;
	}
	to {
		opacity: 1;
		translate: 0 0;
	}
}

@keyframes sqhq-settle {
	from {
		transform: scale(1.025);
	}
	to {
		transform: scale(1);
	}
}

@keyframes sqhq-float {
	0%,
	100% {
		translate: 0 0;
	}
	50% {
		translate: 0 -4px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.sqhq-slide__media img,
	.sqhq-status-cards,
	.sqhq-contact-success,
	.sqhq-inquiry-panel .ff-message-success {
		animation: none;
	}

	html.sqhq-motion .sqhq-reveal,
	html.sqhq-motion .sqhq-reveal.is-in {
		opacity: 1;
		translate: none;
		transition: none;
	}
}
