/**
 * Adaptix Networks 2027 design system for Avada 7.16.x.
 *
 * Apply the a27-* classes from Avada Builder's CSS Class field. Components are
 * scoped so that legacy pages remain predictable during the staged migration.
 */

:root {
	--a27-paper: #ffffff;
	--a27-wash: #f3f5f8;
	--a27-wash-soft: #f8faff;
	--a27-ink: #17222f;
	--a27-muted: #596573;
	--a27-line: #dfe4ea;
	--a27-blue: #155cfb;
	--a27-blue-hover: #104bcc;
	--a27-deep: #111e30;
	--a27-deep-line: #334155;
	--a27-on-dark: #d2dbea;
	--a27-muted-dark: #aab9cf;
	--a27-radius: 5px;
	--a27-content-width: 1200px;
	--a27-rail-width: min(var(--a27-content-width), 90%);
	--a27-breadcrumb-separator-gap: 4px;
	--a27-top-breadcrumb-eyebrow: 63px;
	--a27-top-eyebrow-h1: 20px;
	--a27-top-h1-lead: 25px;
	--a27-section-space: 76px;
}

/* v0.15.2.5 — Standard 2027 Top Geometry for the Family cohort. */
.fusion-body .a27-family-hero {
	--a27-family-hero-top-current: var(--a27-top-breadcrumb-eyebrow);
	--a27-family-eyebrow-h1-current: var(--a27-top-eyebrow-h1);
	--a27-family-title-top-current: 0px;
	--a27-family-h1-lead-current: var(--a27-top-h1-lead);
}

/*
 * v0.6.22 — semantic architecture icons.
 *
 * The icon now follows the Builder class instead of the column position, so
 * each service family can reuse the same architecture component safely.
 */
.fusion-body #main .a27-family-step.a27-family-step--globe > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c5 5 5 13 0 18-5-5-5-13 0-18Z'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--shield > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3-9 4v5c0 5 9 10 9 10s9-5 9-10V7l-9-4Z'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--backup > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11a9 9 0 1 1 2 7M3 4v7h7M12 7v5l3 2'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--check > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--phone > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2A19.8 19.8 0 0 1 3.1 5.2 2 2 0 0 1 5.1 3h3a2 2 0 0 1 2 1.7l.4 2.5a2 2 0 0 1-.6 1.8L8.6 10.3a16 16 0 0 0 5.1 5.1l1.3-1.3a2 2 0 0 1 1.8-.6l2.5.4a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--layers > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 10 5-10 5L2 8l10-5ZM2 12l10 5 10-5M2 16l10 5 10-5'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--lock > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 14v3'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--server > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M11 6.5h6M11 17.5h6'/%3E%3C/svg%3E") !important;
}

.fusion-body #main .a27-family-step.a27-family-step--mail > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 6 9 7 9-7'/%3E%3C/svg%3E") !important;
}

/* Service-family landing page: Infraestructura cloud (v0.6.19). */
.a27-family-hero,
.a27-family-section {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-family-hero > .fusion-row,
.a27-family-hero > .fusion-builder-row,
.a27-family-section > .fusion-row,
.a27-family-section > .fusion-builder-row {
	display: grid !important;
	flex: 0 0 var(--a27-rail-width);
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 24px;
	box-sizing: border-box;
	width: var(--a27-rail-width) !important;
	min-width: 0;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-family-hero > .fusion-row > .fusion-layout-column,
.a27-family-hero > .fusion-builder-row > .fusion-layout-column,
.a27-family-section > .fusion-row > .fusion-layout-column,
.a27-family-section > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-family-hero .fusion-text,
.a27-family-hero .fusion-text p,
.a27-family-section .fusion-text,
.a27-family-section .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
}

.a27-family-hero {
	padding-top: 49px !important;
	padding-bottom: 76px !important;
	background: var(--a27-paper) !important;
}

.a27-family-hero > .fusion-row,
.a27-family-hero > .fusion-builder-row {
	align-items: center;
	row-gap: 0;
}

.a27-family-hero-copy {
	grid-column: 1 / 9;
	width: auto !important;
	padding-right: 42px !important;
}

.a27-family-hero-copy .a27-eyebrow {
	margin-bottom: var(--a27-family-eyebrow-h1-current, 18px) !important;
}

.fusion-body #main .a27-family-title {
	max-width: 760px;
	margin: var(--a27-family-title-top-current, 0px) 0 var(--a27-family-h1-lead-current, 25px) !important;
}

.a27-family-title h1,
.a27-family-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: clamp(42px, 4.7vw, 64px) !important;
	font-weight: 500 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.055em !important;
}

.a27-family-lead,
.a27-family-lead p {
	max-width: 720px;
	color: var(--a27-muted) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
}

.a27-family-actions {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	box-sizing: border-box;
	width: 100% !important;
	margin-top: 31px !important;
	margin-right: 0 !important;
	margin-bottom: 0 !important;
	margin-left: 0 !important;
}

.a27-family-actions > .fusion-column-wrapper {
	display: flex !important;
	align-items: center !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	gap: 24px;
}

.a27-family-actions > .fusion-column-wrapper > div {
	margin: 0 !important;
}

.a27-family-scope,
.a27-family-scope p {
	margin-top: 28px !important;
	color: var(--a27-muted) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.65 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase;
}

.a27-family-brief {
	grid-column: 9 / -1;
	align-self: center;
	box-sizing: border-box;
	width: auto !important;
}

.a27-family-brief > .fusion-column-wrapper {
	box-sizing: border-box;
	padding: 27px 28px 20px !important;
	border: 1px solid var(--a27-line) !important;
	border-left: 3px solid var(--a27-blue) !important;
	background: var(--a27-wash-soft) !important;
}

.a27-family-brief .a27-eyebrow {
	margin-bottom: 13px !important;
}

.a27-family-brief-item,
.a27-family-brief-item p {
	color: var(--a27-ink) !important;
}

.a27-family-brief-item p {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr);
	align-items: baseline;
	gap: 12px;
	padding: 14px 0;
	border-top: 1px solid var(--a27-line);
}

.a27-family-brief-item span {
	color: var(--a27-blue);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.65;
}

.a27-family-brief-item strong {
	color: var(--a27-ink);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.45;
}

.a27-family-section {
	padding-top: 76px !important;
	padding-bottom: 76px !important;
	background: var(--a27-paper) !important;
}

.a27-family-section > .fusion-row,
.a27-family-section > .fusion-builder-row {
	align-items: stretch;
}

.a27-family-heading {
	grid-column: 1 / 9;
	width: auto !important;
	padding-bottom: 16px !important;
}

.a27-family-intro {
	grid-column: 9 / -1;
	align-self: end;
	justify-self: end;
	box-sizing: border-box;
	width: 350px !important;
	max-width: 100%;
	padding-bottom: 16px !important;
}

.a27-family-heading .a27-eyebrow,
.a27-family-support-heading .a27-eyebrow,
.a27-family-faq-heading .a27-eyebrow {
	margin-bottom: 12px !important;
}

.a27-family-section-title {
	margin: 0 !important;
}

.a27-family-section-title h2,
.a27-family-section-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 40.8px !important;
	font-weight: 500 !important;
	line-height: 1.16 !important;
	letter-spacing: -0.04em !important;
}

.a27-family-intro,
.a27-family-intro p {
	color: var(--a27-muted) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-family-architecture {
	background: var(--a27-deep) !important;
}

.a27-family-architecture .a27-family-heading {
	grid-column: 1 / 7;
}

.a27-family-architecture .a27-family-intro {
	grid-column: 8 / -1;
	width: 100% !important;
}

.a27-family-architecture .a27-family-section-title h2,
.a27-family-architecture .a27-family-section-title .fusion-title-heading,
.a27-family-architecture .a27-family-step h3,
.a27-family-architecture .a27-family-step .fusion-title-heading {
	color: #ffffff !important;
}

.a27-family-architecture .a27-family-intro,
.a27-family-architecture .a27-family-intro p,
.a27-family-architecture .a27-family-step .fusion-text,
.a27-family-architecture .a27-family-step .fusion-text p {
	color: var(--a27-muted-dark) !important;
}

.a27-family-step {
	grid-column: span 3;
	box-sizing: border-box;
	width: auto !important;
}

.a27-family-step > .fusion-column-wrapper {
	box-sizing: border-box;
	height: 100%;
	min-height: 190px;
	padding: 25px !important;
	border: 1px solid var(--a27-deep-line) !important;
	background: rgba(255, 255, 255, 0.025) !important;
}

.a27-family-index,
.a27-family-index p {
	margin-bottom: 25px !important;
	color: var(--a27-blue) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
}

.a27-family-step .fusion-title,
.a27-family-card .fusion-title {
	margin: 0 0 13px !important;
}

.a27-family-step h3,
.a27-family-step .fusion-title-heading,
.a27-family-card h3,
.a27-family-card .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.025em !important;
}

.a27-family-step .fusion-text,
.a27-family-step .fusion-text p,
.a27-family-card .fusion-text,
.a27-family-card .fusion-text p {
	color: var(--a27-muted) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-family-services {
	scroll-margin-top: 150px;
}

.a27-family-services .a27-service-card {
	grid-column: span 4;
	box-sizing: border-box;
	width: auto !important;
}

.a27-family-related {
	grid-column: 1 / -1;
	box-sizing: border-box;
	width: auto !important;
	margin-top: 0 !important;
}

.a27-family-related > .fusion-column-wrapper {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 190px 190px;
	align-items: center !important;
	gap: 0;
	box-sizing: border-box;
	padding: 0 12px 0 25px !important;
	border: 1px solid #c9d8f7 !important;
	border-left: 3px solid var(--a27-blue) !important;
	background: var(--a27-wash-soft) !important;
}

.a27-family-related > .fusion-column-wrapper > div {
	margin: 0 !important;
}

.a27-family-related-copy p {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 2px 22px;
	padding: 19px 20px 19px 0;
}

.a27-family-related-copy span {
	grid-row: 1 / 3;
	align-self: center;
	color: var(--a27-blue);
	font-size: 10px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.12em;
}

.a27-family-related-copy strong {
	color: var(--a27-ink);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
}

.a27-family-related-copy small {
	color: var(--a27-muted);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.55;
}

.fusion-body .a27-family-related-link {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	width: 100% !important;
	min-height: 66px !important;
	padding: 18px !important;
	border: 0 !important;
	border-left: 1px solid var(--a27-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
}

.fusion-body .a27-family-related-link .fusion-button-text {
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: inherit !important;
	font-weight: inherit !important;
}

.fusion-body .a27-family-related-link .awb-button__icon {
	margin: 0 !important;
	color: var(--a27-blue) !important;
}

.fusion-body .a27-family-related-link:hover,
.fusion-body .a27-family-related-link:focus-visible {
	background: #eef3fb !important;
	color: var(--a27-blue) !important;
}

.a27-family-usecases {
	border-top: 1px solid var(--a27-line);
}

.a27-family-card {
	grid-column: span 4;
	box-sizing: border-box;
	width: auto !important;
}

.a27-family-card > .fusion-column-wrapper {
	box-sizing: border-box;
	height: 100%;
	min-height: 218px;
	padding: 27px 0 0 !important;
	border-top: 1px solid var(--a27-line) !important;
}

.a27-family-card--compact {
	grid-column: span 3;
}

.a27-family-card--compact > .fusion-column-wrapper {
	min-height: 205px;
	padding: 25px !important;
	border: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
}

.a27-family-checklist {
	background: var(--a27-wash) !important;
}

.a27-family-support {
	border-top: 1px solid var(--a27-line);
}

.a27-family-support-heading {
	grid-column: 1 / 7;
	align-self: center;
	width: auto !important;
	padding-right: 35px !important;
}

.a27-family-support-panel {
	grid-column: 7 / -1;
	box-sizing: border-box;
	width: auto !important;
}

.a27-family-support-panel > .fusion-column-wrapper {
	box-sizing: border-box;
	padding: 35px !important;
	border: 1px solid #c9d8f7 !important;
	border-top: 3px solid var(--a27-blue) !important;
	background: var(--a27-wash-soft) !important;
}

.a27-family-support-panel .fusion-text,
.a27-family-support-panel .fusion-text p,
.a27-family-support-panel li {
	color: var(--a27-muted) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-family-support-panel ul {
	margin: 24px 0 28px !important;
	padding: 0 !important;
	list-style: none;
}

.a27-family-support-panel li {
	position: relative;
	padding: 11px 0 11px 26px;
	border-top: 1px solid var(--a27-line);
}

.a27-family-support-panel li::before {
	position: absolute;
	top: 17px;
	left: 2px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--a27-blue);
	content: '';
}

.a27-family-cases {
	border-top: 1px solid var(--a27-line);
}

.a27-family-cases-grid,
.a27-family-cases-end {
	grid-column: 1 / -1;
	width: auto !important;
}

.a27-family-cases-grid > .fusion-column-wrapper,
.a27-family-cases-grid .fusion-text,
.a27-family-cases-grid .fusion-text > p {
	width: 100%;
	margin: 0 !important;
}

.a27-family-cases-end {
	margin-top: 4px !important;
}

.a27-family-cases-end > .fusion-column-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	flex-direction: row !important;
}

.fusion-body .a27-family-cases .a27-case-all {
	display: inline-flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	width: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.65 !important;
}

.fusion-body .a27-family-cases .a27-case-all .fusion-button-text {
	color: inherit !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
}

.fusion-body .a27-family-cases .a27-case-all .awb-button__icon {
	margin: 0 !important;
	color: inherit !important;
}

.fusion-body .a27-family-cases .a27-case-all:hover,
.fusion-body .a27-family-cases .a27-case-all:focus-visible {
	color: var(--a27-blue) !important;
}

.a27-family-faq {
	border-top: 1px solid var(--a27-line);
}

.a27-family-faq-heading {
	grid-column: 1 / 5;
	width: auto !important;
	padding-right: 28px !important;
}

.a27-family-faq-column {
	grid-column: 5 / -1;
	width: auto !important;
}

.a27-family-faq-list,
.a27-family-faq-list .fusion-accordian,
.a27-family-faq-list .panel-group {
	width: 100%;
}

.a27-family-faq-column .fusion-accordian .fusion-panel,
.a27-family-faq-column .fusion-accordian .panel,
.a27-family-faq-column .fusion-accordion .fusion-panel,
.a27-family-faq-column .fusion-accordion .panel {
	margin: 0 !important;
	border: 0 !important;
	border-top: 1px solid var(--a27-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.a27-family-faq-column .fusion-accordian .fusion-panel:last-child,
.a27-family-faq-column .fusion-accordion .fusion-panel:last-child {
	border-bottom: 1px solid var(--a27-line) !important;
}

.a27-family-faq-column .panel-title {
	margin: 0 !important;
}

.a27-family-faq-column .panel-title a {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	min-height: 65px;
	padding: 17px 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
}

.a27-family-faq-column .panel-title a:hover,
.a27-family-faq-column .panel-title a:focus-visible {
	color: var(--a27-blue) !important;
}

.a27-family-faq-column .panel-title a .fa-fusion-box {
	order: 2;
	margin: 0 0 0 20px !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--a27-blue) !important;
}

.a27-family-faq-column .panel-body {
	padding: 0 52px 22px 0 !important;
	border: 0 !important;
	color: var(--a27-muted) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

/*
 * v0.6.16 — measured parity with the beta5 service-family template.
 *
 * Avada constrains even `hundred_percent="yes"` Containers to the content
 * rail when they live inside a normal Page.  The three colored bands therefore
 * need the same full-bleed treatment as the global CTA, while their direct Row
 * remains a centered 1200px rail.
 */
.fusion-body .a27-family-architecture,
.fusion-body .a27-family-usecases,
.fusion-body .a27-family-support {
	box-sizing: border-box;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
}

/* Hero: 780 / 350 columns, 70px gutter and responsive rhythm. */
.a27-family-hero {
	--a27-family-hero-top-current: 64px;
	--a27-family-eyebrow-h1-current: 18px;
	--a27-family-title-top-current: 0px;
	--a27-family-h1-lead-current: 25px;
	padding-top: var(--a27-family-hero-top-current) !important;
	padding-bottom: 70px !important;
}

.a27-family-hero > .fusion-row,
.a27-family-hero > .fusion-builder-row {
	grid-template-columns: minmax(0, 780.234px) minmax(0, 349.766px);
	column-gap: 70px;
}

.a27-family-hero-copy,
.a27-family-brief {
	grid-column: auto;
}

.a27-family-hero-copy {
	padding-right: 0 !important;
}

.a27-family-title h1,
.a27-family-title .fusion-title-heading {
	font-size: clamp(54px, 5.26vw, 72px) !important;
	line-height: 1.07 !important;
}

.a27-family-brief > .fusion-column-wrapper {
	padding: 30px !important;
	background: #f7f9fc !important;
}

/* Architecture: full-width dark field and 250px four-stage flow. */
.a27-family-architecture > .fusion-row,
.a27-family-architecture > .fusion-builder-row {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: 1px;
	row-gap: 48px;
}

.a27-family-architecture .a27-family-heading {
	grid-column: 1 / 3;
	justify-self: start;
	width: 508.5px !important;
	padding-bottom: 0 !important;
}

.a27-family-architecture .a27-family-intro {
	grid-column: 3 / -1;
	align-self: start;
	justify-self: end;
	width: 621.5px !important;
	padding-top: 27px !important;
	padding-bottom: 0 !important;
}

.a27-family-architecture .a27-family-section-title h2,
.a27-family-architecture .a27-family-section-title .fusion-title-heading {
	font-size: 54.52px !important;
	line-height: 1.2 !important;
	letter-spacing: -0.045em !important;
}

.a27-family-step {
	grid-column: span 1;
}

.a27-family-step > .fusion-column-wrapper {
	position: relative;
	min-height: 250px;
	padding: 26px 24px !important;
	border-color: #3c4d64 !important;
	background: #16253a !important;
}

.a27-family-step > .fusion-column-wrapper::after {
	position: absolute;
	top: 26px;
	right: 24px;
	width: 27px;
	height: 27px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	content: '';
}

.a27-family-step:nth-child(3) > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238aa5d2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M11 6.5h6M11 17.5h6'/%3E%3C/svg%3E");
}

.a27-family-step:nth-child(4) > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238aa5d2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 10 5-10 5L2 8l10-5ZM2 12l10 5 10-5M2 16l10 5 10-5'/%3E%3C/svg%3E");
}

.a27-family-step:nth-child(5) > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238aa5d2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 14v3'/%3E%3C/svg%3E");
}

.a27-family-step:nth-child(6) > .fusion-column-wrapper::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238aa5d2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11a9 9 0 1 1 2 7M3 4v7h7M12 7v5l3 2'/%3E%3C/svg%3E");
}

/* Service relationship band: restore the generous beta5 height. */
.a27-family-related > .fusion-column-wrapper {
	grid-template-columns: minmax(0, 1fr) 190px 190px;
	min-height: 143px;
	padding: 27px 30px !important;
	border: 0 !important;
	border-left: 3px solid var(--a27-blue) !important;
	background: #edf3ff !important;
}

.a27-family-related-copy p {
	padding: 0 24px 0 0;
}

.fusion-body .a27-family-related-link {
	min-height: 89px !important;
}

/* Scenario band: three equal white cards on the cool-gray full bleed. */
.a27-family-usecases {
	border-top: 0;
	background: #f6f8fb !important;
}

.a27-family-usecases > .fusion-row,
.a27-family-usecases > .fusion-builder-row {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 34px;
}

.a27-family-usecases .a27-family-heading {
	grid-column: 1 / 3;
	padding-bottom: 0 !important;
}

.a27-family-usecases .a27-family-intro {
	grid-column: 3;
	padding-bottom: 0 !important;
}

.a27-family-usecases .a27-family-card {
	grid-column: span 1;
}

.a27-family-usecases .a27-family-card > .fusion-column-wrapper {
	min-height: 237px;
	padding: 28px !important;
	border: 0 !important;
	background: var(--a27-paper) !important;
}

/* Decision criteria: white section with four cool-gray 245px cards. */
.a27-family-checklist {
	background: var(--a27-paper) !important;
}

.a27-family-checklist > .fusion-row,
.a27-family-checklist > .fusion-builder-row {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 34px;
}

.a27-family-checklist .a27-family-heading {
	grid-column: 1 / 4;
	padding-bottom: 0 !important;
}

.a27-family-checklist .a27-family-intro {
	grid-column: 4;
	padding-bottom: 0 !important;
}

.a27-family-checklist .a27-family-card--compact {
	grid-column: span 1;
}

.a27-family-checklist .a27-family-card--compact > .fusion-column-wrapper {
	min-height: 245px;
	padding: 27px 23px !important;
	border: 0 !important;
	background: var(--a27-wash) !important;
}

/* Operations: 504 / 616 columns on the blue-gray full-width band. */
.a27-family-support {
	border-top: 0;
	background: #edf2f8 !important;
}

.a27-family-support > .fusion-row,
.a27-family-support > .fusion-builder-row {
	grid-template-columns: 504px 616px;
	gap: 80px;
}

.a27-family-support-heading,
.a27-family-support-panel {
	grid-column: auto;
}

.a27-family-support-heading {
	width: 504px !important;
	padding-right: 0 !important;
}

.a27-family-support-heading .a27-family-section-title h2,
.a27-family-support-heading .a27-family-section-title .fusion-title-heading {
	font-size: 48px !important;
	line-height: 1.2 !important;
}

.a27-family-support-panel {
	width: 616px !important;
}

.a27-family-support-panel > .fusion-column-wrapper {
	padding: 34px !important;
	background: var(--a27-paper) !important;
}

/* Dynamic cases: beta5's bordered 250px cards, still fed by WordPress. */
.a27-family-cases {
	border-top: 0;
}

.a27-family-cases .a27-cases-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.a27-family-cases .a27-case-link {
	box-sizing: border-box;
	min-height: 250px;
	padding: 28px !important;
	border: 1px solid var(--a27-line) !important;
}

/* FAQ: 473 / 662 columns, 65px gutter and 70px native Avada rows. */
.a27-family-faq > .fusion-row,
.a27-family-faq > .fusion-builder-row {
	grid-template-columns: 472.906px 662.094px;
	gap: 65px;
}

.a27-family-faq-heading,
.a27-family-faq-column {
	grid-column: auto;
}

.a27-family-faq-heading {
	width: 472.906px !important;
	padding-right: 0 !important;
}

.a27-family-faq-heading .a27-family-section-title h2,
.a27-family-faq-heading .a27-family-section-title .fusion-title-heading {
	font-size: 32px !important;
	line-height: 1.2 !important;
}

.a27-family-faq-column {
	width: 662.094px !important;
}

.a27-family-faq-column .panel-title a {
	min-height: 70px;
	padding: 22px 0 !important;
}

@media (max-width: 1024px) {
	.a27-family-hero {
		--a27-family-eyebrow-h1-current: 18px;
		--a27-family-title-top-current: 10px;
		--a27-family-h1-lead-current: 15px;
	}

	.a27-family-title h1,
	.a27-family-title .fusion-title-heading {
		font-size: 54px !important;
	}

	.a27-family-hero-copy {
		grid-column: auto;
		padding-right: 16px !important;
	}

	.a27-family-brief {
		grid-column: auto;
	}

	.a27-family-hero > .fusion-row,
	.a27-family-hero > .fusion-builder-row {
		grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
		column-gap: 40px;
	}

	.a27-family-related > .fusion-column-wrapper {
		grid-template-columns: minmax(0, 1fr) 165px 165px;
	}

	.a27-family-related-copy p {
		grid-template-columns: minmax(0, 1fr);
		gap: 3px;
	}

	.a27-family-related-copy span {
		grid-row: auto;
	}
}

@media (max-width: 900px) {
	.a27-family-hero > .fusion-row,
	.a27-family-hero > .fusion-builder-row,
	.a27-family-section > .fusion-row,
	.a27-family-section > .fusion-builder-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a27-family-hero-copy,
	.a27-family-brief,
	.a27-family-heading,
	.a27-family-intro,
	.a27-family-architecture .a27-family-heading,
	.a27-family-architecture .a27-family-intro,
	.a27-family-support-heading,
	.a27-family-support-panel,
	.a27-family-cases-grid,
	.a27-family-cases-end,
	.a27-family-faq-heading,
	.a27-family-faq-column,
	.a27-family-related {
		grid-column: 1 / -1;
		justify-self: stretch;
		box-sizing: border-box;
		width: 100% !important;
		padding-right: 0 !important;
	}

	.a27-family-hero-copy,
	.a27-family-heading,
	.a27-family-architecture .a27-family-heading {
		padding-bottom: 0 !important;
	}

	.a27-family-brief {
		align-self: stretch;
		margin-top: 14px !important;
	}

	.a27-family-intro,
	.a27-family-architecture .a27-family-intro {
		max-width: 680px;
		margin: -6px 0 10px !important;
		padding-bottom: 0 !important;
	}

	.a27-family-step,
	.a27-family-card,
	.a27-family-card--compact,
	.a27-family-services .a27-service-card {
		grid-column: span 1;
	}

	.a27-family-related > .fusion-column-wrapper {
		grid-template-columns: minmax(0, 1fr) 180px 180px;
	}

	.a27-family-support-heading {
		margin-bottom: 10px !important;
	}
}

@media (max-width: 650px) {
	.a27-family-hero {
		--a27-family-hero-top-current: 38px;
		--a27-family-h1-lead-current: 10px;
		padding-top: var(--a27-family-hero-top-current) !important;
		padding-bottom: 55px !important;
	}

	.a27-family-section {
		padding-top: 55px !important;
		padding-bottom: 55px !important;
	}

	.a27-family-hero > .fusion-row,
	.a27-family-hero > .fusion-builder-row,
	.a27-family-section > .fusion-row,
	.a27-family-section > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.a27-family-title h1,
	.a27-family-title .fusion-title-heading {
		font-size: 42px !important;
	}

	.a27-family-lead,
	.a27-family-lead p {
		font-size: 17px !important;
	}

	.a27-family-actions > .fusion-column-wrapper {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 12px;
	}

	.a27-family-actions > .fusion-column-wrapper > div,
	.a27-family-actions .a27-button {
		width: 100% !important;
	}

	.a27-family-brief > .fusion-column-wrapper {
		padding: 24px 22px 16px !important;
	}

	.a27-family-section-title h2,
	.a27-family-section-title .fusion-title-heading {
		font-size: 32px !important;
	}

	.a27-family-step,
	.a27-family-card,
	.a27-family-card--compact,
	.a27-family-services .a27-service-card {
		grid-column: 1;
	}

	.a27-family-step > .fusion-column-wrapper,
	.a27-family-card > .fusion-column-wrapper,
	.a27-family-card--compact > .fusion-column-wrapper {
		min-height: 0;
	}

	.a27-family-related > .fusion-column-wrapper {
		grid-template-columns: minmax(0, 1fr);
		padding: 0 20px !important;
	}

	.a27-family-related-copy p {
		padding-right: 0;
	}

	.fusion-body .a27-family-related-link {
		border-top: 1px solid var(--a27-line) !important;
		border-left: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.a27-family-support-panel > .fusion-column-wrapper {
		padding: 26px !important;
	}

	.a27-family-cases .a27-cases-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
	}

	.a27-family-cases-end > .fusion-column-wrapper {
		justify-content: flex-start !important;
	}

	.a27-family-faq-heading {
		margin-bottom: 8px !important;
	}

	.a27-family-faq-column .panel-title a {
		font-size: 15px !important;
	}

	.a27-family-services {
		scroll-margin-top: 20px;
	}
}

/* Shared case-card geometry and color at every breakpoint. */
.fusion-body #main .a27-family-cases .a27-cases-grid,
.fusion-body #main .a27-cases-home .a27-cases-grid {
	gap: 25px;
}

.fusion-body #main .a27-family-cases .a27-cases-grid .a27-case-link,
.fusion-body #main .a27-cases-home .a27-cases-grid .a27-case-link {
	height: auto !important;
	min-height: 0 !important;
	padding: 27px !important;
	border: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
}

.fusion-body #main .a27-family-cases .a27-case-eyebrow,
.fusion-body #main .a27-cases-home .a27-case-eyebrow {
	display: block;
	width: 100%;
	margin-bottom: 20px;
	color: var(--a27-muted);
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.65;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.fusion-body #main .a27-family-cases .a27-case-title,
.fusion-body #main .a27-cases-home .a27-case-title,
.fusion-body #main .a27-family-cases .a27-case-meta,
.fusion-body #main .a27-cases-home .a27-case-meta {
	flex: 0 0 auto;
	width: 100%;
}

.fusion-body #main .a27-family-cases .a27-case-title,
.fusion-body #main .a27-cases-home .a27-case-title {
	font-size: 24px !important;
	line-height: 1.2 !important;
}

.fusion-body #main .a27-family-cases .a27-case-meta,
.fusion-body #main .a27-cases-home .a27-case-meta {
	margin-bottom: 0 !important;
	font-size: 14.4px !important;
	line-height: 1.65 !important;
}

.fusion-body #main .a27-family-cases .a27-case-cta,
.fusion-body #main .a27-cases-home .a27-case-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 23.09375px;
	margin-top: auto;
	color: var(--a27-ink);
}

.fusion-body #main .a27-family-cases .a27-case-cta-label,
.fusion-body #main .a27-cases-home .a27-case-cta-label {
	display: block;
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 23.1px;
}

.fusion-body #main .a27-family-cases .a27-case-cta .a27-case-arrow,
.fusion-body #main .a27-cases-home .a27-case-cta .a27-case-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 21px;
	height: 23.09375px;
	color: var(--a27-blue);
	font-size: 16px !important;
	line-height: 23.1px !important;
}

@media (min-width: 1025px) {
	.fusion-body #main .a27-cases-home .a27-cases-grid .a27-case-link {
		height: 250px !important;
		min-height: 250px !important;
	}
}

@media (max-width: 1024px) {
	.fusion-body #main .a27-family-cases .a27-cases-grid,
	.fusion-body #main .a27-cases-home .a27-cases-grid {
		gap: 0;
	}
}

.adaptix-2027-site {
	background: var(--a27-paper);
	color: var(--a27-ink);
}

/*
 * Avada applies its global content padding to #main before Builder renders the
 * first Container. A hero already owns its vertical rhythm, so retaining both
 * creates a large blank band below the header.
 */
body.adaptix-2027-site.a27-has-hero #main {
	padding-top: 0 !important;
	padding-right: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0 !important;
}

.adaptix-2027-site :focus-visible {
	outline: 2px solid var(--a27-blue);
	outline-offset: 4px;
}

/* Avada container primitives. */
.fusion-body #main.width-100 .post-content > .fusion-fullwidth[class*='a27-'] {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.fusion-body #main.width-100 .post-content > .fusion-fullwidth[class*='a27-'] {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.fusion-body #main.width-100 .post-content > .fusion-fullwidth[class*='a27-'] > .fusion-row,
.fusion-body #main.width-100 .post-content > .fusion-fullwidth[class*='a27-'] > .fusion-builder-row {
	flex: 0 0 var(--a27-rail-width) !important;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-section > .fusion-row,
.a27-section > .fusion-builder-row,
.a27-container,
.a27-header-inner,
.a27-footer-inner {
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-section {
	padding-top: var(--a27-section-space) !important;
	padding-bottom: var(--a27-section-space) !important;
}

.a27-section--compact {
	padding-top: 42px !important;
	padding-bottom: 42px !important;
}

.a27-section--wash {
	background: var(--a27-wash) !important;
}

.a27-section--deep {
	background: var(--a27-deep) !important;
	color: #ffffff;
}

.a27-section--deep h1,
.a27-section--deep h2,
.a27-section--deep h3,
.a27-section--deep h4 {
	color: #ffffff !important;
}

.a27-section--deep p {
	color: #b9c6d9;
}

/* Editorial typography. */
.a27-eyebrow,
.a27-eyebrow p {
	color: var(--a27-muted);
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.13em;
	line-height: 1.5;
	text-transform: uppercase;
}

.a27-section--deep .a27-eyebrow,
.a27-section--deep .a27-eyebrow p,
.a27-eyebrow--light,
.a27-eyebrow--light p {
	color: #9cbbff;
}

.a27-lead,
.a27-lead p {
	max-width: 700px;
	color: var(--a27-muted);
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.8;
}

.a27-accent,
.a27-scope em {
	color: var(--a27-blue);
	font-style: normal;
}

.a27-fine-print,
.a27-fine-print p {
	color: var(--a27-muted);
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.6;
}

.a27-page-title,
.a27-hero-title {
	max-width: 860px;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: clamp(40px, 5.3vw, 76px) !important;
	font-weight: 500 !important;
	letter-spacing: -0.055em !important;
	line-height: 1.04 !important;
}

.a27-page-title h1,
.a27-page-title h2,
.a27-hero-title h1,
.a27-hero-title h2 {
	font-size: inherit !important;
	font-weight: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
}

.a27-section-title {
	font-size: clamp(29px, 3vw, 41px) !important;
	font-weight: 500 !important;
	letter-spacing: -0.04em !important;
	line-height: 1.15 !important;
}

/* Buttons. Add the class to the Avada Button element. */
.fusion-button.a27-button,
.a27-button .fusion-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 50px;
	padding: 13px 20px !important;
	border: 1px solid transparent !important;
	border-radius: var(--a27-radius) !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	text-transform: none !important;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.fusion-button.a27-button .fusion-button-text,
.a27-button .fusion-button .fusion-button-text {
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
}

/*
 * Do not assign DM Sans to icons. The .fas class must retain Avada's Font
 * Awesome family or the arrow glyph is rendered as an empty square.
 */
.fusion-button.a27-button .awb-button__icon,
.a27-button .fusion-button .awb-button__icon {
	color: inherit !important;
}

.fusion-button.a27-button--primary,
.a27-button--primary .fusion-button {
	background: var(--a27-blue) !important;
	color: #ffffff !important;
}

.fusion-button.a27-button--primary:hover,
.a27-button--primary .fusion-button:hover {
	background: var(--a27-blue-hover) !important;
	transform: translateY(-1px);
}

.fusion-button.a27-button--secondary,
.a27-button--secondary .fusion-button {
	border-color: var(--a27-line) !important;
	background: var(--a27-paper) !important;
	color: var(--a27-ink) !important;
}

.fusion-button.a27-button--secondary:hover,
.a27-button--secondary .fusion-button:hover {
	background: var(--a27-wash) !important;
	border-color: var(--a27-line) !important;
}

.a27-text-link,
.a27-text-link a {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	color: var(--a27-ink);
	font-size: 14px;
	font-weight: 500;
}

.a27-text-link:hover,
.a27-text-link a:hover {
	color: var(--a27-blue);
}

/* Header Layout Builder blueprint. */
.a27-header-utility {
	min-height: 0 !important;
	padding-top: 12px !important;
	padding-bottom: 12px !important;
	background: var(--a27-paper) !important;
	color: var(--a27-muted);
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.65;
}

.a27-header-utility > .fusion-row,
.a27-header-utility > .fusion-builder-row,
.a27-header-main > .fusion-row,
.a27-header-main > .fusion-builder-row {
	display: flex;
	align-items: center;
	width: min(var(--a27-content-width), calc(100% - 48px)) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-header-utility .fusion-layout-column,
.a27-header-main .fusion-layout-column {
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	margin-bottom: 0 !important;
}

.a27-header-utility .fusion-text,
.a27-header-utility .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.a27-header-utility-menu .fusion-menu-element-list {
	min-height: 0 !important;
}

.a27-header-menu.a27-header-utility-menu .fusion-menu-element-list {
	display: flex !important;
	align-items: center;
	column-gap: 20px !important;
}

.a27-header-menu.a27-header-utility-menu .fusion-menu-element-list > li {
	margin: 0 !important;
}

.a27-header-menu.a27-header-utility-menu a {
	padding: 0 !important;
	background: transparent !important;
	color: var(--a27-muted) !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
}

.a27-header-menu.a27-header-utility-menu a:hover {
	color: var(--a27-blue) !important;
}

.a27-header-region {
	flex: 0 0 auto;
	width: auto !important;
	margin-left: 0 !important;
	color: var(--a27-muted);
	font-size: 12px;
	line-height: 1.65;
	white-space: nowrap;
}

.a27-header-utility-right > .fusion-column-wrapper {
	display: flex !important;
	align-items: center;
	justify-content: flex-end;
	flex-direction: row !important;
	gap: 25px !important;
}

.a27-header-utility-right > .fusion-column-wrapper > .fusion-text {
	flex: 0 0 auto;
	width: auto !important;
}

/* Compact cart link appended to the editable utility row. */
.a27-header-cart {
	flex: 0 0 17px !important;
	width: 17px !important;
	min-width: 17px !important;
}

.a27-header-cart,
.a27-header-cart p {
	margin: 0 !important;
	line-height: 1 !important;
}

.a27-header-cart-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 17px;
	height: 20px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-muted) !important;
	font-size: 15px;
	line-height: 1;
	text-decoration: none !important;
	transition: color 160ms ease;
}

.a27-header-cart-link:hover,
.a27-header-cart-link:focus-visible {
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-blue) !important;
}

.a27-header-cart-link:focus-visible {
	outline: 2px solid var(--a27-blue);
	outline-offset: 4px;
}

.a27-header-main {
	min-height: 100px;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-top: 1px solid var(--a27-line) !important;
	border-bottom: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-header-main > .fusion-row,
.a27-header-main > .fusion-builder-row {
	display: flex;
	align-items: center !important;
	min-height: 100px;
	position: relative;
	overflow: visible !important;
}

/* Keep the mega panel anchored to the complete 1200px Builder row. */
.a27-header-main .fusion-layout-column,
.a27-header-main .fusion-column-wrapper,
.a27-header-main .a27-header-nav-column,
.a27-header-main .a27-nav-component {
	position: static !important;
	overflow: visible !important;
}

.a27-header-main .a27-header-nav-column {
	flex: 1 1 auto;
}

/*
 * Avada Layout Sections add an intermediate wrapper on the public frontend.
 * Keep the header's first-level row constrained even when it is not a direct
 * child of the Container, while restoring full width inside the Mega Menu.
 */
body.adaptix-2027-site .a27-header-utility .fusion-row,
body.adaptix-2027-site .a27-header-utility .fusion-builder-row,
body.adaptix-2027-site .a27-header-main .fusion-row,
body.adaptix-2027-site .a27-header-main .fusion-builder-row {
	width: calc(100% - 48px) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

body.adaptix-2027-site .a27-header-main .a27-mega-menu > .fusion-row,
body.adaptix-2027-site .a27-header-main .a27-mega-menu > .fusion-builder-row {
	width: 100% !important;
}

.a27-header-logo img {
	width: 210px;
	max-width: 100%;
}

.a27-header-menu .fusion-menu-element-list {
	min-height: 24px !important;
	column-gap: 25px !important;
}

.a27-header-menu .fusion-menu-element-list > li {
	margin: 0 !important;
}

.a27-header-menu a {
	padding-right: 0 !important;
	padding-left: 0 !important;
	color: var(--a27-ink) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
}

body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li > a,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li > a > span {
	color: var(--a27-ink) !important;
}

body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li:hover > a,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li:hover > a > span,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li:focus-within > a,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li:focus-within > a > span,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li.expanded > a,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li.expanded > a > span,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li.current-menu-item > a,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li.current-menu-item > a > span,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li.current-menu-ancestor > a,
body.adaptix-2027-site .a27-header-main .a27-header-menu .fusion-menu-element-list > li.current-menu-ancestor > a > span {
	color: var(--a27-blue) !important;
}

.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button):hover > a,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button).hover > a,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button):focus-within > a,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button).expanded > a,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button).current-menu-item > a,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button).current-menu-ancestor > a,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled) .fusion-menu-element-list > li:not(.fusion-menu-item-button).current-menu-parent > a,
.a27-header-menu a:hover,
.a27-header-menu .current-menu-item > a,
.a27-header-menu .current-menu-ancestor > a,
.a27-header-menu li:hover > .fusion-open-nav-submenu,
.a27-header-menu li:hover > .fusion-open-nav-submenu::before,
.a27-header-menu li.expanded > .fusion-open-nav-submenu,
.a27-header-menu li.expanded > .fusion-open-nav-submenu::before {
	color: var(--a27-blue) !important;
}

.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled).direction-row > ul > li.menu-item-has-children:hover::after,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled).direction-row > ul > li.menu-item-has-children.hover::after,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled).direction-row > ul > li.menu-item-has-children:focus-within::after,
.fusion-body .a27-header-menu.fusion-menu-element-wrapper:not(.collapse-enabled).direction-row > ul > li.menu-item-has-children.expanded::after {
	border-top-color: var(--a27-blue) !important;
}

.fusion-button.a27-account-link,
.a27-account-link .fusion-button,
.a27-account-link > a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 10px 14px !important;
	border: 1px solid var(--a27-line) !important;
	border-radius: var(--a27-radius) !important;
	background: var(--a27-paper) !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	text-transform: none !important;
}

.fusion-button.a27-account-link .fusion-button-text,
.a27-account-link .fusion-button .fusion-button-text,
.a27-account-link > a .fusion-button-text {
	color: var(--a27-ink) !important;
}

.fusion-button.a27-account-link:hover,
.a27-account-link .fusion-button:hover,
.a27-account-link > a:hover {
	border-color: var(--a27-blue) !important;
	color: var(--a27-blue) !important;
}

.fusion-button.a27-account-link:hover .fusion-button-text,
.a27-account-link .fusion-button:hover .fusion-button-text,
.a27-account-link > a:hover .fusion-button-text {
	color: var(--a27-blue) !important;
}

/* Mega Menu Builder: Soluciones. */
.a27-mega-menu {
	width: min(var(--a27-content-width), calc(100vw - 48px)) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	background: var(--a27-paper) !important;
}

.a27-mega-menu > .fusion-row,
.a27-mega-menu > .fusion-builder-row {
	width: 100% !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-mega-top {
	padding: 26px 32px 23px !important;
	border-top: 3px solid var(--a27-blue);
	border-right: 1px solid var(--a27-line);
	border-bottom: 1px solid var(--a27-line);
	border-left: 1px solid var(--a27-line);
}

.a27-mega-top > .fusion-row,
.a27-mega-top > .fusion-builder-row {
	display: flex;
	align-items: center;
}

.a27-mega-kicker {
	color: var(--a27-ink);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.4;
}

.a27-mega-grid {
	padding: 25px 32px 32px !important;
	border-right: 1px solid var(--a27-line);
	border-bottom: 1px solid var(--a27-line);
	border-left: 1px solid var(--a27-line);
	box-shadow: 0 20px 35px rgba(23, 34, 47, 0.08) !important;
}

.a27-mega-grid > .fusion-row,
.a27-mega-grid > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 30px;
	align-items: stretch;
}

.a27-mega-grid > .fusion-row > .fusion-builder-column,
.a27-mega-grid > .fusion-builder-row > .fusion-builder-column {
	width: auto !important;
	margin-bottom: 0 !important;
	padding: 0;
	border: 0;
}

.a27-mega-index {
	display: none !important;
}

.fusion-button.a27-mega-heading,
.fusion-button.a27-mega-link,
.fusion-button.a27-mega-all {
	min-height: 0 !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-family: inherit !important;
	text-transform: none !important;
}

.fusion-button.a27-mega-heading {
	display: inline-flex !important;
	width: 100% !important;
	margin-bottom: 18px;
	padding: 0 !important;
	color: var(--a27-blue) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.5 !important;
	white-space: nowrap !important;
}

.fusion-button.a27-mega-heading::after {
	display: none !important;
	content: none !important;
}

.fusion-button.a27-mega-link {
	display: block !important;
	width: 100% !important;
	margin: 0 0 11px;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	white-space: nowrap !important;
}

.fusion-button.a27-mega-all {
	display: inline-flex !important;
	justify-content: flex-end;
	width: auto;
	padding: 0 !important;
	color: var(--a27-blue) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
}

.fusion-button.a27-mega-heading .fusion-button-text {
	color: var(--a27-blue) !important;
}

.fusion-button.a27-mega-link .fusion-button-text {
	color: var(--a27-ink) !important;
}

.fusion-button.a27-mega-all .fusion-button-text {
	color: var(--a27-blue) !important;
}

.fusion-button.a27-mega-heading:hover,
.fusion-button.a27-mega-link:hover {
	border-color: transparent !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-blue) !important;
	transform: none !important;
}

.fusion-button.a27-mega-heading:hover .fusion-button-text,
.fusion-button.a27-mega-link:hover .fusion-button-text {
	color: var(--a27-blue) !important;
}

.fusion-button.a27-mega-all:hover {
	color: var(--a27-blue-hover) !important;
}

.fusion-button.a27-mega-all:hover .fusion-button-text {
	color: var(--a27-blue-hover) !important;
}

/*
 * v0.15.2.13 — Home has no visible breadcrumb and therefore owns a symmetric
 * hero rhythm instead of reserving a breadcrumb row that is not rendered.
 */
.a27-hero {
	padding-top: 72px !important;
	padding-bottom: 72px !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-hero p,
.a27-hero a,
.a27-hero .fusion-title-heading,
.a27-hero .fusion-button-text {
	font-family: 'DM Sans', Arial, sans-serif !important;
}

.a27-hero > .fusion-row,
.a27-hero > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 62px;
	align-items: center;
}

.a27-hero > .fusion-row > .fusion-layout-column,
.a27-hero > .fusion-builder-row > .fusion-layout-column {
	--awb-width-large: auto !important;
	--awb-width-medium: auto !important;
	--awb-width-small: auto !important;
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-hero .fusion-builder-row-inner {
	width: 100%;
}

.a27-hero-copy > .fusion-column-wrapper {
	align-items: flex-start;
}

.a27-hero-copy .a27-eyebrow,
.a27-hero-copy .a27-eyebrow p,
.a27-hero-copy .a27-lead,
.a27-hero-copy .a27-lead p,
.a27-human-note,
.a27-human-note p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.a27-hero-copy .a27-hero-title {
	margin-top: var(--a27-top-eyebrow-h1) !important;
	margin-bottom: var(--a27-top-h1-lead) !important;
}

.a27-hero-copy .a27-lead {
	max-width: 490px;
}

.a27-hero-actions {
	margin-top: 30px !important;
}

.a27-hero-actions > .fusion-column-wrapper {
	display: flex !important;
	align-items: center;
	flex-direction: row !important;
	flex-wrap: wrap;
	gap: 24px !important;
}

.a27-hero-actions .fusion-button-wrapper,
.a27-hero-actions > .fusion-column-wrapper > div {
	flex: 0 0 auto !important;
	width: auto !important;
	margin: 0 !important;
}

.a27-hero-actions .fusion-button {
	display: inline-flex !important;
	width: auto !important;
}

.fusion-button.a27-button--text,
.a27-button--text .fusion-button {
	gap: 15px !important;
	min-height: 0;
	padding: 0 !important;
	border-color: transparent !important;
	background: transparent !important;
	color: var(--a27-ink) !important;
	box-shadow: none !important;
}

.fusion-button.a27-button--text .fusion-button-text,
.fusion-button.a27-button--text .awb-button__icon,
.a27-button--text .fusion-button .fusion-button-text,
.a27-button--text .fusion-button .awb-button__icon {
	color: var(--a27-ink) !important;
}

.fusion-button.a27-button--text:hover,
.fusion-button.a27-button--text:focus-visible,
.a27-button--text .fusion-button:hover,
.a27-button--text .fusion-button:focus-visible {
	border-color: transparent !important;
	background: transparent !important;
	color: var(--a27-blue) !important;
	transform: none !important;
}

.fusion-button.a27-button--text:hover .fusion-button-text,
.fusion-button.a27-button--text:hover .awb-button__icon,
.fusion-button.a27-button--text:focus-visible .fusion-button-text,
.fusion-button.a27-button--text:focus-visible .awb-button__icon,
.a27-button--text .fusion-button:hover .fusion-button-text,
.a27-button--text .fusion-button:hover .awb-button__icon,
.a27-button--text .fusion-button:focus-visible .fusion-button-text,
.a27-button--text .fusion-button:focus-visible .awb-button__icon {
	color: var(--a27-blue) !important;
}

.a27-human-note {
	margin-top: 27px !important;
}

.a27-hero-visual > .fusion-column-wrapper {
	position: relative;
	overflow: hidden;
	border-radius: var(--a27-radius);
	background: var(--a27-wash);
}

.a27-hero-visual {
	align-self: start;
}

.a27-hero-image,
.a27-hero-image .fusion-imageframe,
.a27-hero-image img {
	display: block;
	width: 100%;
}

.a27-hero-image img {
	aspect-ratio: 1;
	height: auto !important;
	object-fit: cover;
}

.a27-hero-kicker,
.a27-hero-caption {
	position: absolute;
	z-index: 2;
	left: 25px;
	pointer-events: none;
}

.a27-hero-kicker {
	top: 20px;
}

.a27-hero-kicker,
.a27-hero-kicker p {
	color: var(--a27-muted);
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.11em;
	line-height: 1.5;
	text-transform: uppercase;
}

.a27-hero-caption {
	bottom: 20px;
}

.a27-hero-caption,
.a27-hero-caption p {
	color: var(--a27-ink);
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.45;
}

.a27-hero-kicker p,
.a27-hero-caption p {
	margin: 0 !important;
}

/* Homepage presence strip. Content remains as native Avada columns/text. */
.a27-presence {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-top: 1px solid var(--a27-line) !important;
	border-bottom: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-presence > .fusion-row,
.a27-presence > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: 165px repeat(5, max-content);
	column-gap: 23px;
	align-items: center;
	justify-content: space-between;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-top: 28px;
	padding-bottom: 28px;
}

.a27-presence > .fusion-row > .fusion-layout-column,
.a27-presence > .fusion-builder-row > .fusion-layout-column {
	--awb-width-large: auto !important;
	--awb-width-medium: auto !important;
	--awb-width-small: auto !important;
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-presence .fusion-text,
.a27-presence .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-presence-label,
.a27-presence-label p {
	color: var(--a27-muted);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.6;
}

.a27-presence-label strong {
	color: var(--a27-ink);
	font-weight: 500;
}

.a27-presence-city-name,
.a27-presence-city-name p {
	color: var(--a27-ink);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.65;
}

.a27-presence-region {
	margin-top: 4px !important;
}

.a27-presence-region,
.a27-presence-region p {
	color: var(--a27-muted);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.65;
	text-transform: uppercase;
}

@media (min-width: 901px) and (max-width: 1100px) {
	.a27-presence > .fusion-row,
	.a27-presence > .fusion-builder-row {
		grid-template-columns: 130px repeat(5, max-content);
		column-gap: 17px;
	}

	.a27-presence-city-name,
	.a27-presence-city-name p {
		font-size: 16px;
	}

	.a27-presence-region,
	.a27-presence-region p {
		letter-spacing: 0;
	}
}

.fusion-fullwidth.a27-blog-hero {
	position: relative;
	overflow: hidden;
	background: var(--a27-deep) !important;
	color: #ffffff;
}

.fusion-fullwidth.a27-blog-hero::before {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(17, 30, 48, 0.98) 0%, rgba(17, 30, 48, 0.9) 46%, rgba(17, 30, 48, 0.62) 100%);
	content: '';
	pointer-events: none;
}

.fusion-fullwidth.a27-blog-hero > .fusion-row {
	position: relative;
	z-index: 1;
}

.fusion-fullwidth.a27-blog-hero h1,
.fusion-fullwidth.a27-blog-hero h2 {
	color: #ffffff !important;
}

/* Cards and grids. */
.a27-card-grid > .fusion-row,
.a27-card-grid .fusion-builder-row-inner {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.a27-card,
.a27-card > .fusion-column-wrapper {
	height: 100%;
	border: 1px solid var(--a27-line);
	border-radius: var(--a27-radius);
	background: var(--a27-paper);
	box-shadow: none !important;
	transition: background-color 180ms ease, border-color 180ms ease;
}

.a27-card > .fusion-column-wrapper {
	padding: 29px !important;
}

.a27-card:hover,
.a27-card:hover > .fusion-column-wrapper {
	border-color: #9ab5f2;
	background: var(--a27-wash-soft);
}

.a27-card h3,
.a27-card h4 {
	margin-bottom: 13px !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	letter-spacing: -0.025em !important;
}

.a27-card p {
	color: var(--a27-muted);
}

.a27-card .fontawesome-icon,
.a27-card .fusion-li-icon,
.a27-card-icon {
	color: var(--a27-blue) !important;
}

/* "Para dimensionar" and other contextual information boxes. */
.a27-dimension-card,
.a27-dimension-card > .fusion-column-wrapper {
	border: 1px solid var(--a27-line);
	border-top: 3px solid var(--a27-blue);
	border-radius: var(--a27-radius);
	background: var(--a27-wash);
	box-shadow: none !important;
}

.a27-dimension-card > .fusion-column-wrapper {
	padding: 30px !important;
}

.a27-dimension-card .a27-eyebrow {
	color: var(--a27-blue);
}

.a27-dimension-card .fusion-separator {
	border-color: var(--a27-line) !important;
}

.a27-dimension-card--deep,
.a27-dimension-card--deep > .fusion-column-wrapper {
	border-color: #354359;
	border-top-color: var(--a27-blue);
	background: var(--a27-deep);
	color: #ffffff;
}

.a27-dimension-card--deep h2,
.a27-dimension-card--deep h3,
.a27-dimension-card--deep h4 {
	color: #ffffff !important;
}

.a27-dimension-card--deep p,
.a27-dimension-card--deep li {
	color: #b9c6d9;
}

.a27-numbered-row {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	gap: 10px;
	padding: 13px 0;
	border-top: 1px solid var(--a27-line);
}

.a27-numbered-row:first-child {
	border-top: 0;
}

.a27-numbered-row > :first-child {
	color: var(--a27-blue);
	font-size: 13px;
}

.a27-dimension-card--deep .a27-numbered-row {
	border-color: #354359;
}

/* Flat blog and case-study media. */
.a27-blog-card,
.a27-blog-cover,
.a27-case-card {
	box-shadow: none !important;
}

.a27-blog-card .fusion-imageframe,
.a27-blog-cover .fusion-imageframe,
.a27-case-card .fusion-imageframe {
	display: block;
	overflow: hidden;
	border: 0 !important;
	border-radius: var(--a27-radius);
	box-shadow: none !important;
}

.a27-blog-cover img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 570px;
	margin-right: auto;
	margin-left: auto;
	object-fit: contain;
}

/* Forms. */
.a27-form input:not([type='submit']),
.a27-form select,
.a27-form textarea {
	min-height: 48px;
	margin-top: 7px;
	padding: 11px 12px !important;
	border: 1px solid #c9d1dc !important;
	border-radius: 3px !important;
	background: #ffffff !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-size: 16px !important;
}

.a27-form textarea {
	min-height: 120px;
}

.a27-form input:focus,
.a27-form select:focus,
.a27-form textarea:focus {
	border-color: var(--a27-blue) !important;
	outline: 2px solid rgba(21, 92, 251, 0.15);
	outline-offset: 1px;
}

/* Footer Layout Builder blueprint. */
.a27-footer {
	padding-top: 48px !important;
	padding-bottom: 24px !important;
	background: var(--a27-deep) !important;
	color: var(--a27-on-dark);
}

.a27-footer h2,
.a27-footer h3,
.a27-footer h4 {
	color: #ffffff !important;
}

.a27-footer p,
.a27-footer a {
	color: var(--a27-muted-dark);
}

.a27-footer a:hover {
	color: #93b5ff;
}

.a27-footer-logo img {
	width: 195px;
	filter: brightness(0) invert(1);
}

.a27-footer-top {
	padding-bottom: 38px;
	border-bottom: 1px solid var(--a27-deep-line);
}

.a27-footer-grid > .fusion-row,
.a27-footer-grid .fusion-builder-row-inner {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 32px;
}

.a27-footer-grid h3,
.a27-footer-grid h4 {
	margin-bottom: 8px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
}

.a27-footer-grid a {
	font-size: 13px;
	line-height: 1.5;
}

.a27-footer-bottom {
	padding-top: 22px;
	border-top: 1px solid var(--a27-deep-line);
	color: var(--a27-muted-dark);
	font-size: 12px;
}

@media (max-width: 1024px) {
	:root {
		--a27-section-space: 56px;
	}

	.a27-hero > .fusion-row,
	.a27-hero > .fusion-builder-row {
		gap: 35px;
	}

	.a27-card-grid > .fusion-row,
	.a27-card-grid .fusion-builder-row-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a27-footer-grid > .fusion-row,
	.a27-footer-grid .fusion-builder-row-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.a27-hero-title,
	.a27-page-title {
		font-size: 56px !important;
	}

	.a27-hero-actions > .fusion-column-wrapper {
		align-items: flex-start;
		flex-direction: column !important;
		gap: 19px !important;
	}

	.a27-hero-copy .a27-lead {
		font-size: 16px;
	}

	.a27-presence > .fusion-row,
	.a27-presence > .fusion-builder-row {
		grid-template-columns: repeat(5, max-content);
		column-gap: 17px;
		row-gap: 22px;
		align-items: start;
		justify-content: space-between;
	}

	.a27-presence-label {
		grid-column: 1 / -1;
	}
}

@media (max-width: 800px) {
	.a27-header-main {
		min-height: 85px;
	}

	.a27-header-logo img {
		width: 173px !important;
	}

}

@media (max-width: 650px) {
	.a27-hero {
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}

	.a27-hero > .fusion-row,
	.a27-hero > .fusion-builder-row {
		display: flex !important;
		align-items: stretch;
		flex-direction: column;
		gap: 35px;
	}

	.a27-hero > .fusion-row > .fusion-layout-column,
	.a27-hero > .fusion-builder-row > .fusion-layout-column {
		width: 100% !important;
	}

	.a27-hero-title,
	.a27-page-title {
		font-size: clamp(46px, 10vw, 61px) !important;
	}

	.a27-hero-copy .a27-lead {
		font-size: 17px;
	}

	.a27-hero-actions > .fusion-column-wrapper {
		align-items: center;
		flex-direction: row !important;
		gap: 21px !important;
	}

	.a27-hero-image img {
		aspect-ratio: 1.22;
	}

	.a27-hero-kicker,
	.a27-hero-caption {
		left: 20px;
	}

	.a27-hero-kicker {
		top: 17px;
		letter-spacing: 0;
	}

	.a27-hero-caption {
		bottom: 17px;
	}

	.a27-presence > .fusion-row,
	.a27-presence > .fusion-builder-row {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 21px 16px;
		justify-content: stretch;
	}

	.a27-presence-label br {
		display: none;
	}

	.a27-presence-label strong {
		margin-left: 4px;
	}

	.a27-presence-city-name,
	.a27-presence-city-name p {
		font-size: 17px;
	}
}

@media (max-width: 640px) {
	:root {
		--a27-section-space: 45px;
	}

	.a27-container,
	.a27-header-inner,
	.a27-footer-inner {
		width: 90%;
	}

	.a27-card-grid > .fusion-row,
	.a27-card-grid .fusion-builder-row-inner,
	.a27-footer-grid > .fusion-row,
	.a27-footer-grid .fusion-builder-row-inner {
		grid-template-columns: 1fr;
	}

	.a27-card > .fusion-column-wrapper,
	.a27-dimension-card > .fusion-column-wrapper {
		padding: 25px !important;
	}

	.a27-lead {
		font-size: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.adaptix-2027-site *,
	.adaptix-2027-site *::before,
	.adaptix-2027-site *::after {
		scroll-behavior: auto !important;
		transition: none !important;
		animation: none !important;
	}
}

/*
 * Native beta5 header.
 *
 * Avada Layout Builder still controls where the header appears. The rendered
 * navigation deliberately avoids Avada's Menu Element and Mega Menu Builder,
 * whose inline state styles and layout wrappers otherwise reserve dropdown
 * height and override the beta5 hover color.
 */
body.adaptix-2027-site .fusion-tb-header {
	position: relative;
	z-index: 1000;
	overflow: visible !important;
}

/*
 * Keep the complete editable header (utility + principal navigation) visible
 * on desktop. Tablet and mobile retain their normal document flow.
 */
@media (min-width: 1025px) {
	body.adaptix-2027-site .fusion-tb-header {
		position: sticky;
		top: 0;
		z-index: 10010;
		background: var(--a27-paper);
		box-shadow: none !important;
	}

	body.admin-bar.adaptix-2027-site .fusion-tb-header {
		top: 32px;
	}
}

/* Keep the compact utility row inside its existing width below desktop. */
@media (max-width: 1024px) {
	.a27-header-region {
		display: none !important;
	}
}

.a27-native-header,
.a27-native-header *,
.a27-nav-component,
.a27-nav-component * {
	box-sizing: border-box;
}

.a27-native-header {
	position: relative;
	z-index: 1000;
	width: 100%;
	background: var(--a27-paper);
	color: var(--a27-ink);
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}

.a27-native-header a,
.a27-nav-component a {
	color: inherit;
	text-decoration: none;
}

.a27-native-header button,
.a27-native-header summary,
.a27-nav-component button,
.a27-nav-component summary {
	font: inherit;
	cursor: pointer;
}

.a27-nav-component {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: flex-end;
	color: var(--a27-ink);
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}

.a27-native-wrap {
	width: min(var(--a27-content-width), 90%);
	margin-right: auto;
	margin-left: auto;
}

.a27-native-icon {
	display: block;
	width: 21px;
	height: 21px;
	flex: 0 0 auto;
}

.a27-native-utility {
	background: var(--a27-paper);
	color: var(--a27-muted);
	font-size: 12px;
}

.a27-native-utility__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 12px;
	padding-bottom: 12px;
}

.a27-native-utility__links {
	display: flex;
	align-items: center;
	gap: 25px;
}

.fusion-body .a27-native-utility a:hover,
.fusion-body .a27-native-utility a:focus-visible {
	color: var(--a27-blue) !important;
}

.a27-native-site-header {
	position: relative;
	z-index: 20;
	overflow: visible;
	border-top: 1px solid var(--a27-line);
	border-bottom: 1px solid var(--a27-line);
	background: var(--a27-paper);
}

.a27-native-nav-shell {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 100px;
}

.a27-native-brand {
	display: block;
	flex: 0 0 210px;
}

.a27-native-brand img {
	display: block;
	width: 210px;
	max-width: 100%;
	height: auto;
}

.a27-native-menu-toggle {
	display: none;
}

.a27-native-nav {
	display: flex;
	align-items: center;
	gap: 25px;
	font-size: 14px;
}

.fusion-body .a27-native-nav > a:not(.a27-native-account-link),
.fusion-body .a27-native-mega > summary {
	color: var(--a27-ink) !important;
}

.fusion-body .a27-native-nav > a:not(.a27-native-account-link):hover,
.fusion-body .a27-native-nav > a:not(.a27-native-account-link):focus-visible,
.fusion-body .a27-native-nav > a.is-current,
.fusion-body .a27-native-nav > a[aria-current='page'],
.fusion-body .a27-native-mega > summary:hover,
.fusion-body .a27-native-mega > summary:focus-visible,
.fusion-body .a27-native-mega[open] > summary {
	color: var(--a27-blue) !important;
}

.a27-native-account-link {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 10px 14px;
	border: 1px solid var(--a27-line);
	border-radius: var(--a27-radius);
	white-space: nowrap;
}

.a27-native-account-link .a27-native-icon {
	width: 17px;
	height: 17px;
}

.fusion-body .a27-native-account-link:hover,
.fusion-body .a27-native-account-link:focus-visible {
	border-color: var(--a27-blue) !important;
	color: var(--a27-blue) !important;
}

.a27-native-mega > summary {
	display: flex;
	align-items: center;
	gap: 5px;
	padding-top: 30px;
	padding-bottom: 30px;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	list-style: none;
	white-space: nowrap;
	-webkit-appearance: none;
	appearance: none;
}

.a27-native-mega > summary::-webkit-details-marker {
	display: none;
}

/* Avoid the mouse-focus rectangle while preserving keyboard accessibility. */
.a27-native-mega > summary:focus,
.a27-native-mega > summary:focus-visible {
	outline: 0 !important;
	box-shadow: none !important;
}

.a27-native-header.is-keyboard-navigation .a27-native-mega > summary:focus,
.a27-nav-component.is-keyboard-navigation .a27-native-mega > summary:focus {
	outline: 2px solid var(--a27-blue) !important;
	outline-offset: 5px;
}

.a27-native-mega > summary .a27-native-icon {
	width: 16px;
	height: 16px;
	transition: transform 180ms ease;
}

.a27-native-mega[open] > summary .a27-native-icon {
	transform: rotate(180deg);
}

.a27-native-mega-panel {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 30;
	padding: 26px 32px 32px;
	border: 1px solid var(--a27-line);
	border-top: 3px solid var(--a27-blue);
	background: var(--a27-paper);
	box-shadow: 0 20px 35px rgba(23, 34, 47, 0.08);
}

.a27-native-mega-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 23px;
	margin-bottom: 25px;
	border-bottom: 1px solid var(--a27-line);
}

.a27-native-mega-top strong {
	font-weight: 500;
}

.a27-native-text-link {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	font-weight: 500;
}

.fusion-body .a27-native-mega-top a,
.fusion-body .a27-native-mega-heading {
	color: var(--a27-blue) !important;
}

.a27-native-mega-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 30px;
}

.a27-native-mega-group {
	display: flex;
	flex-direction: column;
	gap: 11px;
}

.a27-native-mega-group a {
	line-height: 1.5;
}

.a27-native-mega-heading {
	margin-bottom: 7px;
	font-weight: 600;
}

.fusion-body .a27-native-mega-group a:not(.a27-native-mega-heading) {
	color: var(--a27-ink) !important;
}

.fusion-body .a27-native-mega-group a:hover,
.fusion-body .a27-native-mega-group a:focus-visible {
	color: var(--a27-blue) !important;
}

@media (max-width: 1100px) {
	.a27-native-nav {
		gap: 17px;
		font-size: 13px;
	}

	.a27-native-brand {
		flex-basis: 177px;
	}

	.a27-native-brand img {
		width: 177px;
	}
}

@media (max-width: 900px) {
	/* Match beta5: the region label disappears before the mobile layout. */
	.a27-header-region {
		display: none !important;
	}

	.a27-header-utility > .fusion-row,
	.a27-header-utility > .fusion-builder-row {
		align-items: center !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: space-between !important;
	}

	.a27-header-utility-right > .fusion-column-wrapper,
	.a27-dynamic-menu--utility {
		flex-wrap: nowrap !important;
	}

	.a27-header-main,
	.a27-header-main > .fusion-row,
	.a27-header-main > .fusion-builder-row {
		min-height: 85px !important;
	}

	/*
	 * Avada sets both Builder columns to 100% on small screens. beta5 keeps
	 * brand and toggle in one non-wrapping row, so neutralize that stacking.
	 */
	.a27-header-main > .fusion-row,
	.a27-header-main > .fusion-builder-row {
		align-items: center !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: space-between !important;
		gap: 24px;
	}

	.a27-header-main > .fusion-row > .fusion-layout-column:first-child,
	.a27-header-main > .fusion-builder-row > .fusion-layout-column:first-child {
		--awb-width-small: auto !important;
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}

	.a27-header-main > .fusion-row > .a27-header-nav-column,
	.a27-header-main > .fusion-builder-row > .a27-header-nav-column {
		--awb-width-small: auto !important;
		flex: 1 1 auto !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}

	/* beta5: logo and toggle sit vertically centered in the 85px nav shell. */
	.a27-header-main > .fusion-row > .fusion-layout-column:first-child > .fusion-column-wrapper,
	.a27-header-main > .fusion-builder-row > .fusion-layout-column:first-child > .fusion-column-wrapper {
		min-height: 85px !important;
		justify-content: center !important;
	}

	.a27-header-main .a27-header-nav-column > .fusion-column-wrapper {
		min-height: 85px !important;
		align-items: center !important;
		justify-content: flex-end !important;
	}

	.a27-native-utility__links > span {
		display: none;
	}

	.a27-native-nav-shell {
		min-height: 85px;
	}

	.a27-native-menu-toggle {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 9px 13px;
		border: 1px solid var(--a27-line);
		border-radius: 4px;
		background: var(--a27-paper);
		color: var(--a27-ink);
		font-size: 14px;
	}

	.a27-native-nav {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		display: none;
		align-items: stretch;
		flex-direction: column;
		gap: 0;
		padding: 18px 24px 25px;
		border: 1px solid var(--a27-line);
		background: var(--a27-paper);
		box-shadow: 0 15px 22px rgba(23, 34, 47, 0.07);
		font-size: 15px;
	}

	.a27-native-nav.is-open {
		display: flex;
	}

	.a27-native-nav > a {
		padding: 12px 0;
	}

	.a27-native-nav .a27-native-account-link {
		padding: 12px 15px;
		margin-top: 10px;
	}

	.a27-native-mega > summary {
		justify-content: space-between;
		padding: 12px 0;
	}

	.a27-native-mega-panel {
		position: static;
		padding: 14px 0 20px;
		border: 0;
		box-shadow: none;
	}

	.a27-native-mega-top {
		display: none;
	}

	.a27-native-mega-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 25px;
	}

	.a27-native-mega-group {
		gap: 8px;
		font-size: 14px;
	}
}

@media (max-width: 650px) {
	.a27-header-utility {
		padding-top: 10px !important;
		padding-bottom: 10px !important;
	}

	.a27-header-utility > .fusion-row,
	.a27-header-utility > .fusion-builder-row {
		width: 90% !important;
		gap: 16px;
	}

	.a27-header-utility > .fusion-row > .fusion-layout-column:first-child,
	.a27-header-utility > .fusion-builder-row > .fusion-layout-column:first-child {
		--awb-width-small: auto !important;
		flex: 0 1 165px !important;
		width: auto !important;
		max-width: 165px !important;
		min-width: 0;
	}

	.a27-header-utility > .fusion-row > .a27-header-utility-right,
	.a27-header-utility > .fusion-builder-row > .a27-header-utility-right {
		--awb-width-small: auto !important;
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0;
	}

	.a27-header-utility > .fusion-row > .fusion-layout-column:first-child p,
	.a27-header-utility > .fusion-builder-row > .fusion-layout-column:first-child p {
		max-width: 165px;
		line-height: 1.4 !important;
	}

	.a27-header-utility-right > .fusion-column-wrapper {
		gap: 0 !important;
	}

	.a27-header-cart {
		margin-left: 16px !important;
	}

	.a27-dynamic-menu--utility {
		gap: 25px;
	}

	.a27-dynamic-menu--utility a:first-child {
		display: none;
	}

	.a27-header-main > .fusion-row,
	.a27-header-main > .fusion-builder-row {
		width: 90% !important;
	}

	.a27-native-utility__inner {
		min-height: 0;
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.a27-native-utility__inner > span {
		max-width: 165px;
		line-height: 1.4;
	}

	.a27-native-utility__links > a:first-child {
		display: none;
	}

	.a27-native-brand {
		flex-basis: 173px;
	}

	.a27-native-brand img {
		width: 173px;
	}

	.a27-native-mega-grid {
		grid-template-columns: 1fr;
	}

	.a27-native-nav {
		max-height: 75vh;
		padding: 14px 21px 23px;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Native beta5 footer. */
.a27-native-footer,
.a27-native-footer * {
	box-sizing: border-box;
}

.a27-native-footer {
	width: 100%;
	padding-top: 48px;
	padding-bottom: 24px;
	background: var(--a27-deep);
	color: var(--a27-on-dark);
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}

.fusion-body .a27-native-footer a {
	color: inherit;
	text-decoration: none;
}

.fusion-body .a27-native-footer a:hover,
.fusion-body .a27-native-footer a:focus-visible {
	color: #93b5ff !important;
}

.a27-native-footer-top {
	display: flex;
	justify-content: space-between;
	gap: 40px;
	padding-bottom: 38px;
	border-bottom: 1px solid var(--a27-deep-line);
}

.a27-native-footer-logo {
	display: block;
	width: 195px;
	max-width: 100%;
	height: auto;
	margin-bottom: 22px;
	filter: brightness(0) invert(1);
}

.a27-native-footer-top p {
	margin: 0;
	color: var(--a27-muted-dark);
	font-size: 14px;
}

.a27-native-footer-contact {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 9px;
	font-size: 15px;
}

.a27-native-footer-contact span {
	color: var(--a27-muted-dark);
	font-size: 13px;
}

.a27-native-footer-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 32px;
	padding-top: 36px;
	padding-bottom: 36px;
}

.a27-native-footer-group {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.a27-native-footer-group h3 {
	margin: 0 0 8px;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	line-height: 1.2 !important;
}

.fusion-body .a27-native-footer-group a {
	color: var(--a27-muted-dark) !important;
	font-size: 13px;
	line-height: 1.5;
}

.a27-native-footer-extra {
	display: flex;
	flex-wrap: wrap;
	gap: 13px 25px;
	padding-top: 10px;
	padding-bottom: 30px;
	font-size: 13px;
}

.a27-native-footer-bottom {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
	padding-top: 22px;
	border-top: 1px solid var(--a27-deep-line);
	color: var(--a27-muted-dark);
	font-size: 12px;
}

.a27-native-footer-bottom > nav {
	display: flex;
	gap: 22px;
	flex-wrap: wrap;
}

/* Dynamic WordPress menus used inside editable Avada Layout Sections. */
.a27-dynamic-menu {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 13px 25px;
}

.a27-dynamic-menu a {
	color: inherit;
	text-decoration: none;
}

.a27-dynamic-menu--utility {
	justify-content: flex-end;
	color: var(--a27-muted);
	font-size: 12px;
	line-height: 1.4;
}

.fusion-body .a27-dynamic-menu--utility a:hover,
.fusion-body .a27-dynamic-menu--utility a:focus-visible {
	color: var(--a27-blue) !important;
}

.a27-dynamic-menu--footer-support {
	padding-top: 10px;
	padding-bottom: 30px;
	color: var(--a27-on-dark);
	font-size: 13px;
}

.a27-dynamic-menu--footer-legal {
	gap: 13px 22px;
	color: var(--a27-muted-dark);
	font-size: 12px;
}

.fusion-body .a27-dynamic-menu--footer-support a,
.fusion-body .a27-dynamic-menu--footer-legal a,
.fusion-body .a27-footer-services-menu a {
	color: inherit !important;
}

.a27-native-footer-heading {
	margin-bottom: 8px;
	color: #ffffff !important;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.2;
}

.fusion-body .a27-footer-services-menu .a27-native-footer-heading {
	color: #ffffff !important;
}

.fusion-body .a27-footer-services-menu .a27-native-footer-group > a:not(.a27-native-footer-heading) {
	color: var(--a27-muted-dark) !important;
	font-size: 13px;
	line-height: 1.5;
}

/*
 * Editable footer blueprint. Each class belongs to a top-level Avada
 * Container; only menu lists are rendered by shortcodes.
 */
.a27-footer-section {
	/* beta5 .wrap: min(1200px, 90%) at every viewport width. */
	padding-right: 5% !important;
	padding-left: 5% !important;
	background: var(--a27-deep) !important;
	color: var(--a27-on-dark);
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}

.a27-footer-section,
.a27-footer-section * {
	box-sizing: border-box;
}

.a27-footer-section > .fusion-row,
.a27-footer-section > .fusion-builder-row {
	width: 100% !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

/* Avada can insert an intermediate Layout Section wrapper on the frontend. */
body.adaptix-2027-site .a27-footer-section .fusion-row,
body.adaptix-2027-site .a27-footer-section .fusion-builder-row {
	width: 100% !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

/* Avada adds a 20px column margin and percentage gutters by default. */
.a27-footer-section > .fusion-row > .fusion-layout-column,
.a27-footer-section > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	margin-right: 0 !important;
	margin-bottom: 0 !important;
	margin-left: 0 !important;
}

.a27-footer-section .fusion-text,
.a27-footer-section .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.a27-footer-section h2,
.a27-footer-section h3,
.a27-footer-section h4 {
	color: #ffffff !important;
}

.a27-footer-section p,
.a27-footer-section a {
	color: var(--a27-muted-dark);
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-footer-editable-top {
	padding-top: 48px !important;
	padding-bottom: 0 !important;
}

.a27-footer-editable-top > .fusion-row,
.a27-footer-editable-top > .fusion-builder-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0;
	padding-bottom: 38px;
	border-bottom: 1px solid var(--a27-deep-line);
}

.a27-footer-editable-top .a27-footer-logo,
.a27-footer-editable-top .a27-footer-logo img {
	display: block;
	width: 195px !important;
	max-width: 100%;
	height: auto;
}

.a27-footer-editable-top .a27-footer-logo {
	margin-bottom: 22px !important;
}

.a27-footer-editable-top .a27-footer-logo img {
	filter: brightness(0) invert(1);
}

.a27-footer-editable-top > .fusion-row > .fusion-layout-column:first-child .fusion-text,
.a27-footer-editable-top > .fusion-builder-row > .fusion-layout-column:first-child .fusion-text,
.a27-footer-editable-top > .fusion-row > .fusion-layout-column:first-child p,
.a27-footer-editable-top > .fusion-builder-row > .fusion-layout-column:first-child p {
	color: var(--a27-muted-dark) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-footer-editable-top .a27-footer-contact > .fusion-column-wrapper {
	display: flex !important;
	align-items: flex-end;
	flex-direction: column;
	gap: 9px;
	width: 100%;
	font-size: 15px !important;
	line-height: 1.65 !important;
}

.a27-footer-editable-top .a27-footer-contact .fusion-text {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 9px;
	width: 100%;
	text-align: right;
}

.a27-footer-editable-top .a27-footer-contact p,
.a27-footer-editable-top .a27-footer-contact a {
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.fusion-body .a27-footer-editable-top .a27-footer-contact a {
	color: var(--a27-on-dark) !important;
}

.a27-footer-editable-top .a27-footer-contact p:last-child,
.a27-footer-editable-top .a27-footer-contact .fusion-text:last-child,
.a27-footer-editable-top .a27-footer-contact .fusion-text:last-child p {
	color: var(--a27-muted-dark) !important;
	font-size: 13px !important;
}

.a27-footer-editable-services {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.a27-footer-editable-services .a27-native-footer-grid {
	padding-top: 36px;
	padding-bottom: 36px;
}

.a27-footer-editable-services .a27-native-footer-group {
	gap: 9px;
}

.fusion-body .a27-footer-editable-services .a27-native-footer-heading {
	margin-bottom: 8px;
	color: #ffffff !important;
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 15px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	line-height: 1.2 !important;
}

.fusion-body .a27-footer-editable-services .a27-native-footer-group > a:not(.a27-native-footer-heading) {
	color: var(--a27-muted-dark) !important;
	font-family: 'DM Sans', Arial, sans-serif;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
}

.a27-footer-editable-support {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.a27-footer-editable-support .fusion-text {
	line-height: 1.65 !important;
}

.a27-footer-editable-bottom {
	padding-top: 0 !important;
	padding-bottom: 24px !important;
}

.a27-footer-editable-bottom > .fusion-row,
.a27-footer-editable-bottom > .fusion-builder-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0;
	padding-top: 22px;
	border-top: 1px solid var(--a27-deep-line);
	color: var(--a27-muted-dark);
	font-size: 12px !important;
	line-height: 1.65 !important;
}

.a27-footer-editable-bottom .a27-footer-copyright p,
.a27-footer-editable-bottom .a27-footer-legal-column a {
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-footer-editable-bottom .a27-footer-legal-column > .fusion-column-wrapper {
	align-items: flex-end;
}

.a27-footer-editable-bottom .a27-footer-legal-column .fusion-text {
	width: 100%;
	text-align: right;
}

.a27-footer-editable-bottom .a27-dynamic-menu--footer-legal {
	justify-content: flex-end;
}

/* Footer links: these selectors intentionally follow all normal-color rules. */
.fusion-body .a27-footer-section .a27-dynamic-menu--footer-support a:hover,
.fusion-body .a27-footer-section .a27-dynamic-menu--footer-support a:focus-visible,
.fusion-body .a27-footer-section .a27-dynamic-menu--footer-legal a:hover,
.fusion-body .a27-footer-section .a27-dynamic-menu--footer-legal a:focus-visible,
.fusion-body .a27-footer-section .a27-footer-services-menu .a27-native-footer-group > a:hover,
.fusion-body .a27-footer-section .a27-footer-services-menu .a27-native-footer-group > a:focus-visible,
.fusion-body .a27-footer-section .a27-footer-contact a:hover,
.fusion-body .a27-footer-section .a27-footer-contact a:focus-visible {
	color: #93b5ff !important;
}

@media (max-width: 900px) {
	.a27-native-footer-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 28px;
	}
}

@media (max-width: 650px) {
	.a27-native-footer-top {
		flex-direction: column;
		gap: 28px;
	}

	.a27-footer-editable-top > .fusion-row,
	.a27-footer-editable-top > .fusion-builder-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 28px;
	}

	.a27-footer-editable-bottom > .fusion-row,
	.a27-footer-editable-bottom > .fusion-builder-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
	}

	.a27-native-footer-contact,
	.a27-footer-editable-top .a27-footer-contact > .fusion-column-wrapper {
		align-items: flex-start;
	}

	.a27-footer-editable-top .a27-footer-contact .fusion-text,
	.a27-footer-editable-bottom .a27-footer-legal-column .fusion-text {
		align-items: flex-start;
		text-align: left;
	}

	.a27-footer-editable-bottom .a27-footer-legal-column > .fusion-column-wrapper {
		align-items: flex-start;
	}

	.a27-footer-editable-bottom .a27-dynamic-menu--footer-legal {
		justify-content: flex-start;
	}

	.a27-native-footer-grid {
		gap: 28px 19px;
	}

	.a27-native-footer-group {
		min-width: 0;
	}

	.a27-native-footer-group a {
		overflow-wrap: anywhere;
	}

	.a27-native-footer-group h3 {
		font-size: 14px !important;
	}

	.a27-native-footer-extra {
		gap: 13px 20px;
	}

	.a27-native-footer-bottom > nav {
		gap: 13px;
	}
}

/* Homepage block 03: editable solution-family tabs and panels. */
.a27-solutions-intro,
.a27-solutions-tabs,
.a27-solutions-panels {
	padding-right: 0 !important;
	padding-left: 0 !important;
	background: var(--a27-paper) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-solutions-intro {
	padding-top: 76px !important;
	padding-bottom: 34px !important;
}

.a27-solutions-intro > .fusion-row,
.a27-solutions-intro > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 350px);
	gap: 48px;
	align-items: end;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-solutions-intro > .fusion-row > .fusion-layout-column,
.a27-solutions-intro > .fusion-builder-row > .fusion-layout-column,
.a27-solutions-tabs > .fusion-row > .fusion-layout-column,
.a27-solutions-tabs > .fusion-builder-row > .fusion-layout-column,
.a27-solutions-panels > .fusion-row > .fusion-layout-column,
.a27-solutions-panels > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-solutions-intro .fusion-text,
.a27-solutions-intro .fusion-text p,
.a27-solutions-tabs .fusion-text,
.a27-solutions-tabs .fusion-text p,
.a27-solutions-panels .fusion-text,
.a27-solutions-panels .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
}

.a27-solutions-heading .a27-eyebrow,
.a27-solutions-heading .a27-eyebrow p {
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	letter-spacing: 0.13em !important;
	text-transform: uppercase;
}

.a27-solutions-title {
	margin-top: 12px !important;
}

.a27-solutions-title h2,
.a27-solutions-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: clamp(29px, 3vw, 41px) !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.04em !important;
}

.a27-solutions-summary,
.a27-solutions-summary p {
	color: var(--a27-muted) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-solutions-tabs {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.a27-solutions-tabs > .fusion-row,
.a27-solutions-tabs > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	box-sizing: border-box;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	border-top: 1px solid var(--a27-line);
	border-bottom: 1px solid var(--a27-line);
}

.a27-solutions-tabs .a27-solution-tab {
	position: relative;
	box-sizing: border-box;
	width: 100% !important;
	padding: 24px 23px !important;
	border-right: 1px solid var(--a27-line);
	background: var(--a27-paper);
	cursor: pointer;
}

.a27-solutions-tabs .a27-solution-tab:last-child {
	border-right: 0;
}

.a27-solutions-tabs .a27-solution-tab:hover,
.a27-solutions-tabs .a27-solution-tab.is-active {
	background: var(--a27-wash);
}

.a27-solutions-tabs .a27-solution-tab.is-active::before {
	position: absolute;
	right: 23px;
	bottom: 0;
	left: 23px;
	height: 3px;
	background: var(--a27-blue);
	content: '';
}

.a27-solutions-tabs .a27-solution-tab:focus,
.a27-solutions-tabs .a27-solution-tab:focus-visible {
	outline: 0 !important;
	box-shadow: none !important;
}

.a27-solutions-tabs.is-keyboard-navigation .a27-solution-tab:focus,
.a27-solutions-tabs.is-keyboard-navigation .a27-solution-tab:focus-visible {
	z-index: 1;
	outline: 2px solid var(--a27-blue) !important;
	outline-offset: -3px;
}

.a27-solutions-tabs .a27-solution-tab-index {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 26px !important;
	color: var(--a27-muted);
}

.a27-solutions-tabs .a27-solution-tab-index,
.a27-solutions-tabs .a27-solution-tab-index p {
	font-size: 12px !important;
	line-height: 1.65 !important;
}

.a27-solution-tab-index::after {
	display: block;
	width: 22px;
	height: 22px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	content: '';
}

.a27-solution-tab--cloud .a27-solution-tab-index::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23596573' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M11 6.5h6M11 17.5h6'/%3E%3C/svg%3E");
}

.a27-solution-tab--security .a27-solution-tab-index::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23596573' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3-9 4v5c0 5 9 10 9 10s9-5 9-10V7l-9-4Z'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E");
}

.a27-solution-tab--communications .a27-solution-tab-index::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23596573' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2A19.8 19.8 0 0 1 3.1 5.2 2 2 0 0 1 5.1 3h3a2 2 0 0 1 2 1.7l.4 2.5a2 2 0 0 1-.6 1.8L8.6 10.3a16 16 0 0 0 5.1 5.1l1.3-1.3a2 2 0 0 1 1.8-.6l2.5.4a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E");
}

.a27-solution-tab--web .a27-solution-tab-index::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23596573' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c5 5 5 13 0 18-5-5-5-13 0-18Z'/%3E%3C/svg%3E");
}

.a27-solutions-tabs .a27-solution-tab-title {
	margin-bottom: 10px !important;
}

.a27-solutions-tabs .a27-solution-tab-title,
.a27-solutions-tabs .a27-solution-tab-title p {
	color: var(--a27-ink) !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: 1.65 !important;
}

.a27-solutions-tabs .a27-solution-tab-description,
.a27-solutions-tabs .a27-solution-tab-description p {
	color: var(--a27-muted) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
}

.a27-solutions-panels {
	padding-top: 25px !important;
	padding-bottom: 76px !important;
}

.a27-solutions-panels > .fusion-row,
.a27-solutions-panels > .fusion-builder-row {
	display: block !important;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-solutions-panels .a27-solution-panel {
	box-sizing: border-box;
	width: 100% !important;
	padding: 40px 44px !important;
	border-radius: 5px;
	background: var(--a27-deep) !important;
	color: #ffffff;
}

.a27-solutions-panels .a27-solution-panel[hidden] {
	display: none !important;
}

.a27-solution-panel > .fusion-column-wrapper > .fusion-builder-row-inner {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	box-sizing: border-box;
	gap: 75px;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

.a27-solution-panel > .fusion-column-wrapper > .fusion-builder-row-inner > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	width: auto !important;
	margin: 0 !important;
}

.a27-solutions-panels .a27-eyebrow,
.a27-solutions-panels .a27-eyebrow p {
	color: #9cbbff !important;
}

.a27-solution-panel-title {
	margin-top: 14px !important;
	margin-bottom: 14px !important;
}

.a27-solution-panel-title h3,
.a27-solution-panel-title .fusion-title-heading {
	margin: 0 !important;
	color: #ffffff !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 29px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.03em !important;
}

.a27-solution-panel-text,
.a27-solution-panel-text p {
	color: #b9c6d9 !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-solution-panel-links > .fusion-column-wrapper {
	display: flex !important;
	justify-content: center !important;
	flex-direction: column !important;
}

.a27-solution-panel-links > .fusion-column-wrapper > div {
	width: 100%;
}

.fusion-body .a27-solutions-panels .a27-panel-link {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	width: 100% !important;
	padding: 11px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid #354359 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	text-align: left;
}

.fusion-body .a27-solutions-panels .a27-panel-link .fusion-button-text {
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
}

.fusion-body .a27-solutions-panels .a27-panel-link .awb-button__icon {
	color: inherit !important;
}

.a27-solution-panel-links > .fusion-column-wrapper > div:last-child .a27-panel-link {
	border-bottom: 0 !important;
}

.fusion-body .a27-solutions-panels .a27-panel-link:hover,
.fusion-body .a27-solutions-panels .a27-panel-link:focus-visible {
	color: #abc5ff !important;
}

@media (max-width: 900px) {
	.a27-solutions-intro {
		padding-top: 55px !important;
		padding-bottom: 34px !important;
	}

	.a27-solutions-intro > .fusion-row,
	.a27-solutions-intro > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr) minmax(240px, 290px);
		gap: 30px;
	}

	.a27-solutions-tabs .a27-solution-tab {
		padding: 20px 13px !important;
	}

	.a27-solutions-tabs .a27-solution-tab.is-active::before {
		right: 13px;
		left: 13px;
	}

	.a27-solutions-tabs .a27-solution-tab-title,
	.a27-solutions-tabs .a27-solution-tab-title p {
		font-size: 14px !important;
	}

	.a27-solutions-tabs .a27-solution-tab-description,
	.a27-solutions-tabs .a27-solution-tab-description p {
		font-size: 13px !important;
	}

	.a27-solutions-panels {
		padding-bottom: 55px !important;
	}

	.a27-solutions-panels .a27-solution-panel {
		padding: 30px !important;
	}

	.a27-solution-panel > .fusion-column-wrapper > .fusion-builder-row-inner {
		gap: 35px;
	}

	.a27-solution-panel-title h3,
	.a27-solution-panel-title .fusion-title-heading {
		font-size: 26px !important;
	}
}

@media (max-width: 650px) {
	.a27-solutions-intro {
		padding-top: 45px !important;
		padding-bottom: 26px !important;
	}

	.a27-solutions-intro > .fusion-row,
	.a27-solutions-intro > .fusion-builder-row {
		display: block !important;
	}

	.a27-solutions-summary {
		margin-top: 17px !important;
	}

	.a27-solutions-title h2,
	.a27-solutions-title .fusion-title-heading {
		font-size: 32px !important;
	}

	.a27-solutions-tabs > .fusion-row,
	.a27-solutions-tabs > .fusion-builder-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a27-solutions-tabs .a27-solution-tab {
		padding: 20px 17px !important;
	}

	.a27-solutions-tabs .a27-solution-tab:nth-child(2) {
		border-right: 0;
	}

	.a27-solutions-tabs .a27-solution-tab:nth-child(-n + 2) {
		border-bottom: 1px solid var(--a27-line);
	}

	.a27-solutions-tabs .a27-solution-tab.is-active::before {
		right: 17px;
		left: 17px;
	}

	.a27-solutions-tabs .a27-solution-tab-index {
		margin-bottom: 18px !important;
	}

	.a27-solutions-tabs .a27-solution-tab-title,
	.a27-solutions-tabs .a27-solution-tab-title p {
		font-size: 16px !important;
	}

	.a27-solutions-tabs .a27-solution-tab-description,
	.a27-solutions-tabs .a27-solution-tab-description p {
		font-size: 14px !important;
	}

	.a27-solutions-panels {
		padding-bottom: 45px !important;
	}

	.a27-solutions-panels .a27-solution-panel {
		padding: 27px !important;
	}

	.a27-solution-panel > .fusion-column-wrapper > .fusion-builder-row-inner {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.a27-solution-panel-title h3,
	.a27-solution-panel-title .fusion-title-heading {
		font-size: 27px !important;
	}
}

/* Homepage block 04: Adaptix approach. */
.a27-approach {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
	background: var(--a27-wash) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-approach > .fusion-row,
.a27-approach > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 34px;
	align-items: start;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-approach-heading {
	grid-column: 1 / -1;
	margin-bottom: 0 !important;
}

.a27-approach > .fusion-row > .fusion-layout-column,
.a27-approach > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-approach .fusion-text,
.a27-approach .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
}

.a27-approach-heading .a27-eyebrow {
	margin-bottom: 12px !important;
}

.a27-approach-title {
	margin: 0 !important;
}

.a27-approach-title h2,
.a27-approach-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 41px !important;
	font-weight: 500 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
}

.a27-approach-index,
.a27-approach-index p {
	margin-bottom: 14px !important;
	color: var(--a27-blue) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
}

.a27-approach-item-title {
	margin: 0 0 12px !important;
}

.a27-approach-item-title h3,
.a27-approach-item-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 21px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.025em !important;
}

.a27-approach-item-text,
.a27-approach-item-text p {
	color: var(--a27-muted) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

/* Homepage block 05: case studies. */
.a27-cases-home {
	padding-right: 0 !important;
	padding-left: 0 !important;
	background: var(--a27-paper) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-cases-home > .fusion-row,
.a27-cases-home > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 25px;
	align-items: stretch;
	width: var(--a27-rail-width) !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-cases-heading,
.a27-cases-dynamic,
.a27-cases-end {
	grid-column: 1 / -1;
}

.a27-cases-heading {
	margin-bottom: 34px !important;
}

.a27-cases-home > .fusion-row > .fusion-layout-column,
.a27-cases-home > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-cases-home .fusion-text,
.a27-cases-home .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
}

.a27-cases-heading .a27-eyebrow {
	margin-bottom: 12px !important;
}

.a27-cases-title {
	margin: 0 !important;
}

.a27-cases-title h2,
.a27-cases-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 41px !important;
	font-weight: 500 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
}

.a27-case-card > .fusion-column-wrapper,
.a27-case-card .a27-case-content {
	height: 100%;
}

.a27-cases-dynamic > .fusion-column-wrapper,
.a27-cases-dynamic .fusion-text,
.a27-cases-dynamic .fusion-text > p {
	width: 100%;
	margin: 0 !important;
}

.a27-cases-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 25px;
	width: 100%;
}

.a27-cases-grid .a27-case-card {
	min-width: 0;
	margin: 0;
}

.a27-cases-grid .a27-case-link {
	box-sizing: border-box;
	min-height: 166.84px;
}

.a27-case-link {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	height: 100%;
	padding: 28px 0;
	border-top: 1px solid var(--a27-line);
	color: var(--a27-ink) !important;
	text-decoration: none !important;
}

.a27-case-link h3 {
	margin: 0 0 12px !important;
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 25px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.025em !important;
}

.a27-case-link p {
	flex: 1;
	margin: 0 0 24px !important;
	color: var(--a27-muted) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-case-link .a27-case-arrow {
	color: var(--a27-blue);
	font-size: 16px;
	line-height: 1;
	transition: transform 180ms ease;
}

.a27-case-link:hover,
.a27-case-link:focus-visible {
	color: var(--a27-blue) !important;
}

.a27-case-link:hover .a27-case-arrow,
.a27-case-link:focus-visible .a27-case-arrow {
	transform: translateX(4px);
}

.a27-cases-end > .fusion-column-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	flex-direction: row !important;
}

.a27-cases-end {
	margin-top: 28px !important;
}

.fusion-body .a27-cases-home .a27-case-all {
	display: inline-flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	width: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	text-transform: none !important;
}

.fusion-body .a27-cases-home .a27-case-all .fusion-button-text {
	color: inherit !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

.fusion-body .a27-cases-home .a27-case-all .awb-button__icon {
	color: inherit !important;
}

.fusion-body .a27-cases-home .a27-case-all:hover,
.fusion-body .a27-cases-home .a27-case-all:focus-visible {
	color: var(--a27-blue) !important;
}

@media (max-width: 1100px) {
	.a27-approach > .fusion-row,
	.a27-approach > .fusion-builder-row {
		gap: 25px;
	}
}

@media (max-width: 650px) {
	.a27-approach > .fusion-row,
	.a27-approach > .fusion-builder-row,
	.a27-cases-home > .fusion-row,
	.a27-cases-home > .fusion-builder-row {
		grid-template-columns: 1fr;
	}

	.a27-approach-heading,
	.a27-cases-heading,
	.a27-cases-dynamic,
	.a27-cases-end {
		grid-column: 1;
	}

	.a27-cases-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.a27-approach-title h2,
	.a27-approach-title .fusion-title-heading,
	.a27-cases-title h2,
	.a27-cases-title .fusion-title-heading {
		font-size: 32px !important;
	}

	.a27-approach-heading {
		margin-bottom: 1px !important;
	}

	.a27-cases-heading {
		margin-bottom: 26px !important;
	}

	.a27-case-link,
	.a27-cases-grid .a27-case-link {
		min-height: 0;
		padding: 24px 0;
	}

	.a27-cases-end > .fusion-column-wrapper {
		justify-content: flex-start !important;
	}
}

/* Homepage blocks 04/05: Avada-rendered markup corrections (v0.6.4). */
.a27-approach {
	width: 100% !important;
	max-width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-shadow: 0 0 0 100vmax var(--a27-wash);
	clip-path: inset(0 -100vmax);
}

.a27-approach .a27-eyebrow,
.a27-approach .a27-eyebrow p,
.a27-cases-heading .a27-eyebrow,
.a27-cases-heading .a27-eyebrow p {
	line-height: 1.65 !important;
}

.a27-approach-title h2,
.a27-approach-title .fusion-title-heading,
.a27-cases-title h2,
.a27-cases-title .fusion-title-heading {
	font-size: 40.8px !important;
	line-height: 1.2 !important;
	letter-spacing: -0.04em !important;
}

.a27-approach .a27-approach-index {
	margin-bottom: 23px !important;
}

.a27-approach .a27-approach-index,
.a27-approach .a27-approach-index p {
	font-size: 12.8px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
	letter-spacing: 0.08em !important;
}

.a27-approach .a27-approach-item-title {
	margin-bottom: 13px !important;
}

.a27-approach .a27-approach-item-title h3,
.a27-approach .a27-approach-item-title .fusion-title-heading {
	font-size: 20.8px !important;
	line-height: 1.2 !important;
	letter-spacing: -0.025em !important;
}

.a27-approach + br {
	display: none !important;
}

.a27-cases-home > .fusion-row > .a27-cases-heading,
.a27-cases-home > .fusion-builder-row > .a27-cases-heading {
	margin-bottom: 34px !important;
}

.a27-cases-home > .fusion-row > .a27-cases-end,
.a27-cases-home > .fusion-builder-row > .a27-cases-end {
	margin-top: 28px !important;
}

.a27-case-link h3,
.a27-case-link .a27-case-title {
	display: block;
	margin: 0 0 12px !important;
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 24.8px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.025em !important;
}

.a27-case-link p,
.a27-case-link .a27-case-meta {
	display: block;
	flex: 1;
	margin: 0 0 24px !important;
	color: var(--a27-muted) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-case-link .a27-case-arrow {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 21px;
	height: 21px;
	font-size: 21px !important;
	line-height: 21px !important;
}

.a27-case-content > p:only-child {
	height: 100%;
	margin: 0 !important;
}

/*
 * Compatibility with the first pasted block: wpautop split the block-level
 * children into three anchors. This rebuilds the same visual card without
 * requiring the existing Avada content to be replaced.
 */
.a27-case-content:has(> a.a27-case-link) {
	display: flex;
	position: relative;
	flex-direction: column;
	box-sizing: border-box;
	min-height: 166.84px;
	padding: 28px 0;
	border-top: 1px solid var(--a27-line);
}

.a27-case-content > p:has(> a.a27-case-link:empty) {
	display: none !important;
}

.a27-case-content:has(> a.a27-case-link) > a.a27-case-link {
	display: block !important;
	height: auto;
	padding: 0 !important;
	border: 0 !important;
}

.a27-case-content:has(> a.a27-case-link) > a.a27-case-link::after {
	position: absolute;
	inset: 0;
	content: '';
}

.a27-case-content:has(> a.a27-case-link) > a.a27-case-link p {
	margin-bottom: 0 !important;
}

.a27-case-content:has(> a.a27-case-link) > p:last-child {
	height: 21px;
	margin: 24px 0 0 !important;
	line-height: 21px;
}

.a27-case-content:has(> a.a27-case-link) > p:last-child .a27-case-link {
	display: inline-flex !important;
	height: 21px;
	padding: 0 !important;
	border: 0 !important;
}

.fusion-body .a27-cases-home .a27-case-all {
	font-size: 14.4px !important;
	line-height: 1.65 !important;
}

.fusion-body .a27-cases-home .a27-case-all .awb-button__icon {
	font-size: 18.7px !important;
	line-height: 21px !important;
}

@media (max-width: 650px) {
	.a27-approach-title h2,
	.a27-approach-title .fusion-title-heading,
	.a27-cases-title h2,
	.a27-cases-title .fusion-title-heading {
		font-size: 32px !important;
	}

	.a27-case-content:has(> a.a27-case-link) {
		min-height: 0;
		padding: 24px 0;
	}
}

/*
 * v0.6.17 — service-family desktop parity.
 *
 * Keep each Avada Container on the 1200px content rail and paint only its
 * background to the viewport edges.  This avoids the 100vw/scrollbar mismatch
 * that widened the internal Grid in v0.6.16.
 */
.fusion-body #main .a27-family-architecture,
.fusion-body #main .a27-family-usecases,
.fusion-body #main .a27-family-support {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	clip-path: inset(0 -100vmax);
}

.fusion-body #main .a27-family-architecture {
	box-shadow: 0 0 0 100vmax #111e30;
}

.fusion-body #main .a27-family-usecases {
	box-shadow: 0 0 0 100vmax #f6f8fb;
}

.fusion-body #main .a27-family-support {
	box-shadow: 0 0 0 100vmax #edf2f8;
}

.fusion-body #main .a27-family-architecture > .fusion-row,
.fusion-body #main .a27-family-architecture > .fusion-builder-row,
.fusion-body #main .a27-family-usecases > .fusion-row,
.fusion-body #main .a27-family-usecases > .fusion-builder-row,
.fusion-body #main .a27-family-support > .fusion-row,
.fusion-body #main .a27-family-support > .fusion-builder-row {
	box-sizing: border-box;
	width: 100% !important;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.fusion-body #main .a27-family-hero-copy > .fusion-column-wrapper > .a27-family-scope {
	margin-top: 28px !important;
}

.fusion-body #main .a27-family-scope,
.fusion-body #main .a27-family-scope p {
	font-size: 13px !important;
	line-height: 1.65 !important;
}

@media (min-width: 1025px) {
	.a27-family-hero {
		--a27-family-eyebrow-h1-current: 20px;
		--a27-family-h1-lead-current: 26px;
	}

	.fusion-body #main .a27-family-hero-copy .a27-eyebrow,
	.fusion-body #main .a27-family-hero-copy .a27-eyebrow p {
		font-size: 12px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-hero-copy .a27-eyebrow {
		margin-bottom: 20px !important;
	}

	.fusion-body #main .a27-family-title {
		max-width: none;
		margin-bottom: var(--a27-family-h1-lead-current, 26px) !important;
	}

	.fusion-body #main .a27-family-title h1,
	.fusion-body #main .a27-family-title .fusion-title-heading {
		font-size: clamp(54px, 5.2vw, 72px) !important;
	}

	.fusion-body #main .a27-family-lead,
	.fusion-body #main .a27-family-lead p {
		line-height: 1.8 !important;
	}

	.fusion-body #main .a27-family-actions {
		margin-top: 30px !important;
	}

	.fusion-body #main .a27-family-actions > .fusion-column-wrapper {
		column-gap: 24px !important;
		row-gap: 24px !important;
	}

	.fusion-body #main .a27-family-actions .a27-button--primary {
		padding: 14px 20px !important;
		font-size: 14.4px !important;
		line-height: 1.5 !important;
	}

	.fusion-body #main .a27-family-actions .a27-button--text {
		font-size: 14.4px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-step,
	.fusion-body #main .a27-family-step > .fusion-column-wrapper {
		height: 250px !important;
		min-height: 250px !important;
	}

	.fusion-body #main .a27-family-support-panel,
	.fusion-body #main .a27-family-support-panel > .fusion-column-wrapper {
		height: 374.375px !important;
		min-height: 374.375px !important;
	}

	.fusion-body #main .a27-family-cases .a27-cases-grid .a27-case-link {
		height: 250px !important;
		min-height: 250px !important;
	}
}

/* Homepage block 04: exact full-bleed wash with a 1200px content rail (v0.6.5). */
.fusion-body .a27-approach {
	box-sizing: border-box;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: max(24px, calc((100vw - var(--a27-content-width)) / 2)) !important;
	padding-left: max(24px, calc((100vw - var(--a27-content-width)) / 2)) !important;
	background: var(--a27-wash) !important;
	box-shadow: none !important;
	clip-path: none !important;
}

/* Homepage block 06: final contact band (v0.6.6). */
.fusion-body .a27-contact-band {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding: 42px 0 !important;
	background: var(--a27-wash) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.fusion-body .a27-contact-band > .fusion-row,
.fusion-body .a27-contact-band > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 40px;
	box-sizing: border-box;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.fusion-body .a27-contact-band > .fusion-row > .fusion-layout-column,
.fusion-body .a27-contact-band > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0 !important;
	--awb-spacing-left-large: 0 !important;
	--awb-spacing-right-medium: 0 !important;
	--awb-spacing-left-medium: 0 !important;
	--awb-spacing-right-small: 0 !important;
	--awb-spacing-left-small: 0 !important;
	--awb-margin-bottom-large: 0 !important;
	--awb-margin-bottom-medium: 0 !important;
	--awb-margin-bottom-small: 0 !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-contact-copy {
	max-width: 480.3px;
}

.a27-contact-title {
	margin: 0 0 10px !important;
}

.a27-contact-title h2,
.a27-contact-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 31.2px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.04em !important;
}

.a27-contact-text,
.a27-contact-text p {
	margin: 0 !important;
	color: var(--a27-muted) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-contact-action > .fusion-column-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
}

.fusion-body .a27-contact-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	box-sizing: border-box;
	width: 265.56px !important;
	max-width: 100%;
	min-height: 51.6px;
	padding: 14px 20px !important;
	border: 1px solid transparent !important;
	border-radius: 5px !important;
	background: var(--a27-blue) !important;
	color: #fff !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 14.4px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	white-space: nowrap !important;
}

.fusion-body .a27-contact-button .fusion-button-text {
	color: inherit !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	white-space: nowrap !important;
}

/*
 * Avada adds margin-left to right-side icons. Together with the explicit gap
 * that extra margin made the label wrap and increased the button height.
 * The fixed 21px icon box matches the beta5 SVG without changing Font Awesome.
 */
.fusion-body .a27-contact-button .awb-button__icon {
	display: inline-flex !important;
	flex: 0 0 21px !important;
	align-items: center;
	justify-content: center;
	width: 21px !important;
	height: 21px !important;
	margin: 0 !important;
	color: inherit !important;
	font-size: 18px !important;
	line-height: 21px !important;
}

@media (max-width: 650px) {
	.fusion-body .a27-contact-band > .fusion-row,
	.fusion-body .a27-contact-band > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr);
		align-items: start;
		gap: 24px;
	}

	.a27-contact-copy {
		max-width: none;
	}

	.a27-contact-title h2,
	.a27-contact-title .fusion-title-heading {
		font-size: 27.2px !important;
	}

	.a27-contact-action > .fusion-column-wrapper {
		justify-content: flex-start !important;
	}
}

/* Solutions catalog page (v0.6.14). */
.a27-breadcrumbs,
.a27-catalog-hero,
.a27-catalog-section {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
	background: var(--a27-paper) !important;
	font-family: 'DM Sans', Arial, sans-serif;
}

.a27-breadcrumbs {
	padding-top: 30px !important;
	padding-bottom: 0 !important;
}

.a27-breadcrumbs > .fusion-row,
.a27-breadcrumbs > .fusion-builder-row,
.a27-catalog-hero > .fusion-row,
.a27-catalog-hero > .fusion-builder-row,
.a27-catalog-section > .fusion-row,
.a27-catalog-section > .fusion-builder-row {
	box-sizing: border-box;
	flex: 0 0 var(--a27-rail-width);
	width: var(--a27-rail-width) !important;
	min-width: 0;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-breadcrumbs > .fusion-row > .fusion-layout-column,
.a27-breadcrumbs > .fusion-builder-row > .fusion-layout-column,
.a27-catalog-hero > .fusion-row > .fusion-layout-column,
.a27-catalog-hero > .fusion-builder-row > .fusion-layout-column,
.a27-catalog-section > .fusion-row > .fusion-layout-column,
.a27-catalog-section > .fusion-builder-row > .fusion-layout-column {
	--awb-spacing-right-large: 0px !important;
	--awb-spacing-left-large: 0px !important;
	--awb-spacing-right-medium: 0px !important;
	--awb-spacing-left-medium: 0px !important;
	--awb-spacing-right-small: 0px !important;
	--awb-spacing-left-small: 0px !important;
	--awb-margin-bottom-large: 0px !important;
	--awb-margin-bottom-medium: 0px !important;
	--awb-margin-bottom-small: 0px !important;
	min-width: 0;
	margin: 0 !important;
}

.a27-breadcrumbs .fusion-breadcrumbs,
.a27-catalog-hero .fusion-text,
.a27-catalog-hero .fusion-text p,
.a27-catalog-section .fusion-text,
.a27-catalog-section .fusion-text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
}

.a27-breadcrumbs .fusion-breadcrumbs,
.a27-breadcrumbs .a27-breadcrumbs-line {
	color: var(--a27-muted) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-breadcrumbs .fusion-breadcrumbs .breadcrumb_last {
	color: var(--a27-muted) !important;
}

.a27-breadcrumbs .fusion-breadcrumbs a,
.a27-breadcrumbs .a27-breadcrumbs-line a {
	color: var(--a27-muted) !important;
	text-decoration: none !important;
}

.a27-breadcrumbs .fusion-breadcrumbs a:hover,
.a27-breadcrumbs .fusion-breadcrumbs a:focus-visible,
.a27-breadcrumbs .a27-breadcrumbs-line a:hover,
.a27-breadcrumbs .a27-breadcrumbs-line a:focus-visible {
	color: var(--a27-blue) !important;
}

.a27-catalog-hero {
	padding-top: var(--a27-top-breadcrumb-eyebrow) !important;
	padding-bottom: 59px !important;
}

.a27-catalog-hero > .fusion-row,
.a27-catalog-hero > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 403px);
	gap: 72px;
	align-items: center;
}

.a27-catalog-hero-copy,
.a27-catalog-map {
	width: auto !important;
}

.a27-catalog-map {
	align-self: center;
}

.a27-catalog-hero-copy .a27-eyebrow {
	margin-bottom: var(--a27-top-eyebrow-h1) !important;
}

.fusion-body .a27-catalog-title {
	max-width: 690px;
	margin: 0 0 var(--a27-top-h1-lead) !important;
}

.a27-catalog-title h1,
.a27-catalog-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: clamp(42px, 5vw, 68.15px) !important;
	font-weight: 500 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.055em !important;
}

.a27-catalog-lead,
.a27-catalog-lead p {
	max-width: 650px;
	color: var(--a27-muted) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.8 !important;
}

.a27-catalog-map > .fusion-column-wrapper {
	box-sizing: border-box;
	padding: 12px !important;
	border: 1px solid var(--a27-line) !important;
	background: var(--a27-wash-soft) !important;
}

.a27-catalog-map > .fusion-column-wrapper > div {
	width: 100%;
}

.fusion-body .a27-catalog-map-link {
	display: grid !important;
	grid-template-columns: 40px minmax(0, 1fr) 22px;
	align-items: center;
	column-gap: 14px;
	box-sizing: border-box;
	width: 100% !important;
	min-height: 0 !important;
	padding: 16px 13px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--a27-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	text-align: left;
}

.fusion-body .a27-catalog-map-link::before {
	display: block;
	box-sizing: border-box;
	width: 38px;
	height: 38px;
	border: 1px solid #c9d8f7;
	background-color: var(--a27-paper);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px 20px;
	content: '';
}

.fusion-body .a27-catalog-map-link--cloud::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M11 6.5h6M11 17.5h6'/%3E%3C/svg%3E");
}

.fusion-body .a27-catalog-map-link--security::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3-9 4v5c0 5 9 10 9 10s9-5 9-10V7l-9-4Z'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E");
}

.fusion-body .a27-catalog-map-link--communications::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2A19.8 19.8 0 0 1 3.1 5.2 2 2 0 0 1 5.1 3h3a2 2 0 0 1 2 1.7l.4 2.5a2 2 0 0 1-.6 1.8L8.6 10.3a16 16 0 0 0 5.1 5.1l1.3-1.3a2 2 0 0 1 1.8-.6l2.5.4a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E");
}

.fusion-body .a27-catalog-map-link--web::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c5 5 5 13 0 18-5-5-5-13 0-18Z'/%3E%3C/svg%3E");
}

.a27-catalog-map > .fusion-column-wrapper > div:last-child .a27-catalog-map-link {
	border-bottom: 0 !important;
}

.fusion-body .a27-catalog-map-link .fusion-button-text {
	display: flex !important;
	align-items: baseline;
	gap: 13px;
	min-width: 0;
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	line-height: 1 !important;
}

.fusion-body .a27-catalog-map-index {
	flex: 0 0 auto;
	color: var(--a27-blue) !important;
	font-size: 11.52px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.fusion-body .a27-catalog-map-label {
	min-width: 0;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 15.2px !important;
	font-weight: 500 !important;
	line-height: 1.65 !important;
}

.fusion-body .a27-catalog-map-link .awb-button__icon {
	margin: 0 !important;
	color: var(--a27-blue) !important;
	font-family: 'Font Awesome 5 Free' !important;
	font-weight: 900 !important;
	justify-self: end;
}

.fusion-body .a27-catalog-map-link:hover,
.fusion-body .a27-catalog-map-link:focus-visible {
	background: #eef3fb !important;
	color: var(--a27-blue) !important;
}

.fusion-body .a27-catalog-map-link:hover .awb-button__icon,
.fusion-body .a27-catalog-map-link:focus-visible .awb-button__icon {
	color: var(--a27-blue) !important;
}

.a27-catalog-section {
	padding-top: 76px !important;
	padding-bottom: 76px !important;
	border-top: 1px solid var(--a27-line);
	scroll-margin-top: 150px;
}

.a27-catalog-section > .fusion-row,
.a27-catalog-section > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 22px;
	align-items: stretch;
}

.a27-catalog-section .a27-catalog-heading {
	grid-column: 1 / 9;
	box-sizing: border-box;
	width: max-content !important;
	max-width: 802px;
	margin: 0 !important;
	padding-bottom: 12px !important;
}

.a27-catalog-section .a27-catalog-summary {
	grid-column: 9 / -1;
	align-self: end;
	justify-self: end;
	box-sizing: border-box;
	width: 350px !important;
	max-width: 100%;
	margin: 0 !important;
	padding-bottom: 12px !important;
}

.a27-catalog-heading .a27-eyebrow,
.a27-catalog-heading .a27-eyebrow p {
	margin-bottom: 12px !important;
	line-height: 1.65 !important;
}

.a27-catalog-heading-title {
	margin: 0 !important;
}

.a27-catalog-heading-title h2,
.a27-catalog-heading-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 40.8px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.04em !important;
}

.a27-catalog-summary,
.a27-catalog-summary p {
	color: var(--a27-muted) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-catalog-section .a27-service-card {
	grid-column: span 4;
	box-sizing: border-box;
	width: auto !important;
}

.a27-service-card > .fusion-column-wrapper {
	display: flex !important;
	position: relative;
	flex-direction: column !important;
	box-sizing: border-box;
	height: 100%;
	min-height: 255px !important;
	padding: 29px !important;
	border: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
	transition: border-color 180ms ease, background-color 180ms ease;
}

.a27-service-card > .fusion-column-wrapper::before {
	display: block;
	flex: 0 0 27px;
	width: 27px;
	height: 27px;
	margin-bottom: 29px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	content: '';
}

.a27-service-card--server > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M11 6.5h6M11 17.5h6'/%3E%3C/svg%3E");
}

.a27-service-card--folder > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7V5a2 2 0 0 1 2-2h5l2 3h7a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7ZM7 12h10M7 16h6'/%3E%3C/svg%3E");
}

.a27-service-card--layers > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 10 5-10 5L2 8l10-5ZM2 12l10 5 10-5M2 16l10 5 10-5'/%3E%3C/svg%3E");
}

.a27-service-card--shield > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3-9 4v5c0 5 9 10 9 10s9-5 9-10V7l-9-4Z'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E");
}

.a27-service-card--backup > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11a9 9 0 1 1 2 7M3 4v7h7M12 7v5l3 2'/%3E%3C/svg%3E");
}

.a27-service-card--mail > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 6 9 7 9-7'/%3E%3C/svg%3E");
}

.a27-service-card--phone > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2A19.8 19.8 0 0 1 3.1 5.2 2 2 0 0 1 5.1 3h3a2 2 0 0 1 2 1.7l.4 2.5a2 2 0 0 1-.6 1.8L8.6 10.3a16 16 0 0 0 5.1 5.1l1.3-1.3a2 2 0 0 1 1.8-.6l2.5.4a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E");
}

.a27-service-card--globe > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c5 5 5 13 0 18-5-5-5-13 0-18Z'/%3E%3C/svg%3E");
}

.a27-service-card--lock > .fusion-column-wrapper::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23155cfb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 14v3'/%3E%3C/svg%3E");
}

.a27-service-card:hover > .fusion-column-wrapper,
.a27-service-card:focus-within > .fusion-column-wrapper {
	border-color: var(--a27-blue) !important;
	background: var(--a27-wash-soft) !important;
}

.a27-service-card-title {
	margin: 0 0 13px !important;
}

.a27-service-card-title h3,
.a27-service-card-title .fusion-title-heading {
	margin: 0 !important;
	color: var(--a27-ink) !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: 21.6px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.025em !important;
}

.a27-service-card-text,
.a27-service-card-text p {
	color: var(--a27-muted) !important;
	font-size: 15.2px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
}

.a27-service-card > .fusion-column-wrapper > div:last-child {
	margin-top: auto;
}

.fusion-body .a27-service-card-link {
	display: inline-flex !important;
	position: static;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	width: 100% !important;
	min-height: 0 !important;
	margin-top: 26px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--a27-ink) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.65 !important;
	text-align: left;
}

.fusion-body .a27-service-card-link::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	content: '';
}

.fusion-body .a27-service-card-link .fusion-button-text {
	color: inherit !important;
	font-family: 'DM Sans', Arial, sans-serif !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

.fusion-body .a27-service-card-link .awb-button__icon {
	margin: 0 !important;
	color: var(--a27-blue) !important;
	transition: transform 180ms ease;
}

.a27-service-card:hover .a27-service-card-title h3,
.a27-service-card:focus-within .a27-service-card-title h3,
.a27-service-card:hover .a27-service-card-link,
.a27-service-card:focus-within .a27-service-card-link {
	color: var(--a27-blue) !important;
}

.a27-service-card:hover .a27-service-card-link .awb-button__icon,
.a27-service-card:focus-within .a27-service-card-link .awb-button__icon {
	transform: translateX(4px);
}

@media (max-width: 1024px) {
	.a27-catalog-hero > .fusion-row,
	.a27-catalog-hero > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr) minmax(290px, 340px);
		gap: 42px;
	}

	.a27-catalog-title h1,
	.a27-catalog-title .fusion-title-heading {
		font-size: 56px !important;
	}
}

@media (max-width: 900px) {
	.a27-catalog-section > .fusion-row,
	.a27-catalog-section > .fusion-builder-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a27-catalog-section .a27-catalog-heading,
	.a27-catalog-section .a27-catalog-summary {
		grid-column: 1 / -1;
		justify-self: stretch;
		box-sizing: border-box;
		width: 100% !important;
		padding-bottom: 0 !important;
	}

	.a27-catalog-section .a27-catalog-heading {
		margin-bottom: 0 !important;
	}

	.a27-catalog-section .a27-catalog-summary {
		max-width: 650px;
		margin-top: -4px !important;
		margin-bottom: 12px !important;
	}

	.a27-catalog-section .a27-service-card {
		grid-column: span 1;
	}
}

@media (max-width: 760px) {
	.a27-breadcrumbs {
		padding-top: 24px !important;
	}

	.a27-catalog-hero {
		padding-bottom: 52px !important;
	}

	.a27-catalog-hero > .fusion-row,
	.a27-catalog-hero > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr);
		gap: 34px;
		align-items: start;
	}

	.a27-catalog-title h1,
	.a27-catalog-title .fusion-title-heading {
		font-size: 48px !important;
	}

	.a27-catalog-map > .fusion-column-wrapper {
		padding: 8px !important;
	}

	.fusion-body .a27-catalog-map-link {
		min-height: 62px;
		padding: 13px !important;
	}
}

@media (max-width: 650px) {
	.a27-catalog-title h1,
	.a27-catalog-title .fusion-title-heading {
		font-size: 42px !important;
	}

	.a27-catalog-lead,
	.a27-catalog-lead p {
		font-size: 17px !important;
	}

	.a27-catalog-section {
		padding-top: 55px !important;
		padding-bottom: 55px !important;
		scroll-margin-top: 20px;
	}

	.a27-catalog-section > .fusion-row,
	.a27-catalog-section > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.a27-catalog-section .a27-catalog-heading,
	.a27-catalog-section .a27-catalog-summary,
	.a27-catalog-section .a27-service-card {
		grid-column: 1;
	}

	.a27-catalog-section .a27-catalog-summary {
		margin-bottom: 10px !important;
	}

	.a27-catalog-heading-title h2,
	.a27-catalog-heading-title .fusion-title-heading {
		font-size: 32px !important;
	}

	.a27-service-card > .fusion-column-wrapper {
		min-height: 235px !important;
		padding: 25px !important;
	}

	.a27-service-card > .fusion-column-wrapper::before {
		margin-bottom: 23px;
	}
}

/* v0.6.18 — Avada FAQ rendered like the beta5 details/summary pattern. */
.fusion-body #main .a27-family-faq .a27-eyebrow,
.fusion-body #main .a27-family-faq .a27-eyebrow p {
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.65 !important;
}

.fusion-body #main .a27-family-faq .a27-eyebrow {
	margin-bottom: 14px !important;
}

.fusion-body #main .a27-family-faq-column .panel-title a {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-direction: row !important;
	gap: 25px !important;
	line-height: 1.65 !important;
}

.fusion-body #main .a27-family-faq-column .fusion-toggle-heading {
	order: 1;
	flex: 1 1 auto;
	margin: 0 !important;
	text-align: left;
}

.fusion-body #main .a27-family-faq-column .fusion-toggle-icon-wrapper {
	display: block !important;
	order: 2;
	flex: 0 0 21px;
	width: 21px;
	height: 21px;
	margin: 0 !important;
	background-color: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / 21px 21px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / 21px 21px no-repeat;
	transition: transform 180ms ease;
}

.fusion-body #main .a27-family-faq-column .fusion-toggle-icon-wrapper .fa-fusion-box {
	display: none !important;
}

.fusion-body #main .a27-family-faq-column .panel-title a[aria-expanded='true'] .fusion-toggle-icon-wrapper {
	transform: rotate(180deg);
}

/*
 * v0.6.21 — measured desktop parity pass against beta5.
 *
 * This is deliberately scoped to the service-family template. It corrects
 * Avada's generated flex/grid wrappers without changing the editable Builder
 * elements or their content.
 */
@media (min-width: 1025px) {
	/* Shared section-title rhythm: 12px eyebrow + 1.2 heading line-height. */
	.fusion-body #main .a27-family-section .a27-eyebrow,
	.fusion-body #main .a27-family-section .a27-eyebrow p {
		color: var(--a27-muted) !important;
		font-size: 12px !important;
		font-weight: 500 !important;
		line-height: 1.65 !important;
		letter-spacing: 0.13em !important;
	}

	.fusion-body #main .a27-family-section .a27-family-heading,
	.fusion-body #main .a27-family-section .a27-family-intro {
		padding-bottom: 0 !important;
	}

	.fusion-body #main .a27-family-section .a27-family-section-title h2,
	.fusion-body #main .a27-family-section .a27-family-section-title .fusion-title-heading {
		line-height: 1.2 !important;
	}

	.fusion-body #main .a27-family-architecture .a27-eyebrow,
	.fusion-body #main .a27-family-support .a27-eyebrow,
	.fusion-body #main .a27-family-faq .a27-eyebrow {
		margin-bottom: 14px !important;
	}

	.fusion-body #main .a27-family-architecture .a27-eyebrow,
	.fusion-body #main .a27-family-architecture .a27-eyebrow p {
		color: #96b6f8 !important;
	}

	/* Hero brief: beta5 uses a blue top rule, not a blue left rail. */
	.fusion-body #main .a27-family-brief > .fusion-column-wrapper {
		border: 1px solid var(--a27-line) !important;
		border-top: 3px solid var(--a27-blue) !important;
	}

	.fusion-body #main .a27-family-brief .a27-eyebrow,
	.fusion-body #main .a27-family-brief .a27-eyebrow p {
		font-size: 12px !important;
		font-weight: 500 !important;
		line-height: 1.65 !important;
		letter-spacing: 0.13em !important;
	}

	.fusion-body #main .a27-family-brief .a27-eyebrow {
		margin-bottom: 22px !important;
	}

	.fusion-body #main .a27-family-brief-item:last-child p {
		padding-bottom: 0;
	}

	.fusion-body #main .a27-family-actions .fusion-button-text {
		font-size: inherit !important;
		line-height: inherit !important;
	}

	.fusion-body #main .a27-family-actions .awb-button__icon,
	.fusion-body #main .a27-service-card-link .awb-button__icon,
	.fusion-body #main .a27-family-related-link .awb-button__icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 21px;
		width: 21px;
		height: 21px;
		margin: 0 !important;
	}

	/* Architecture: two-column introduction followed by one bordered flow. */
	.fusion-body #main .a27-family-architecture .a27-family-intro {
		align-self: stretch !important;
		max-width: none !important;
		padding-top: 0 !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-intro > .fusion-column-wrapper {
		flex: 1 1 auto;
		height: 100%;
		min-height: 100%;
		justify-content: flex-end !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-intro,
	.fusion-body #main .a27-family-architecture .a27-family-intro p {
		color: #bac6d6 !important;
	}

	.fusion-body #main .a27-family-step {
		position: relative;
		height: 252px !important;
		min-height: 252px !important;
		padding-top: 1px;
		padding-bottom: 1px;
		background: #3c4d64;
	}

	.fusion-body #main .a27-family-step > .fusion-column-wrapper {
		box-sizing: border-box;
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
		height: 250px !important;
		min-height: 250px !important;
		border: 0 !important;
		background: #16253a !important;
	}

	.fusion-body #main .a27-family-step:not(:last-child)::after {
		position: absolute;
		top: 32px;
		right: -10px;
		z-index: 2;
		display: grid;
		place-items: center;
		width: 20px;
		height: 20px;
		border-radius: 50%;
		background: var(--a27-blue);
		color: #fff;
		font-family: 'DM Sans', Arial, sans-serif;
		font-size: 12px;
		font-weight: 400;
		line-height: 1.65;
		content: '\2192';
	}

	.fusion-body #main .a27-family-step > .fusion-column-wrapper::after {
		position: static;
		order: -1;
		flex: 0 0 44px;
		width: 44px;
		height: 44px;
		margin: 0 0 28px;
		background-position: left center;
		background-size: 27px 27px;
	}

	.fusion-body #main .a27-family-step:nth-child(3) > .fusion-column-wrapper::after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M11 6.5h6M11 17.5h6'/%3E%3C/svg%3E");
	}

	.fusion-body #main .a27-family-step:nth-child(4) > .fusion-column-wrapper::after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 10 5-10 5L2 8l10-5ZM2 12l10 5 10-5M2 16l10 5 10-5'/%3E%3C/svg%3E");
	}

	.fusion-body #main .a27-family-step:nth-child(5) > .fusion-column-wrapper::after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 14v3'/%3E%3C/svg%3E");
	}

	.fusion-body #main .a27-family-step:nth-child(6) > .fusion-column-wrapper::after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9c2ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11a9 9 0 1 1 2 7M3 4v7h7M12 7v5l3 2'/%3E%3C/svg%3E");
	}

	.fusion-body #main .a27-family-architecture .a27-family-index {
		margin-bottom: 14px !important;
		color: #8090a7 !important;
		font-size: 12px !important;
		font-weight: 400 !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-index p {
		margin: 0 !important;
		color: inherit !important;
		font: inherit !important;
		line-height: inherit !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-step .fusion-title {
		margin-bottom: 12px !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-step h3,
	.fusion-body #main .a27-family-architecture .a27-family-step .fusion-title-heading {
		font-size: 20.8px !important;
		line-height: 1.2 !important;
		letter-spacing: -0.025em !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-step > .fusion-column-wrapper > .fusion-text:last-child,
	.fusion-body #main .a27-family-architecture .a27-family-step > .fusion-column-wrapper > .fusion-text:last-child p {
		color: #b8c4d4 !important;
		font-size: 14.4px !important;
		line-height: 1.65 !important;
	}

	/* Services: beta5's 22px card gutters and stacked related-service links. */
	.fusion-body #main .a27-family-services > .fusion-row,
	.fusion-body #main .a27-family-services > .fusion-builder-row {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		column-gap: 22px;
		row-gap: 34px;
	}

	.fusion-body #main .a27-family-services .a27-service-card,
	.fusion-body #main .a27-family-services .a27-service-card > .fusion-column-wrapper {
		height: 254.625px !important;
		min-height: 254.625px !important;
	}

	.fusion-body #main .a27-family-related {
		margin-top: -10px !important;
	}

	.fusion-body #main .a27-family-related > .fusion-column-wrapper {
		grid-template-columns: minmax(0, 682.5px) minmax(0, 409.5px);
		grid-template-rows: 42.765625px 41.765625px;
		align-content: center;
		column-gap: 45px;
		row-gap: 0;
		height: 143.0625px;
		min-height: 143.0625px;
		padding: 27px 30px !important;
	}

	.fusion-body #main .a27-family-related > .fusion-column-wrapper > div:first-child {
		grid-row: 1 / 3;
		align-self: center;
	}

	.fusion-body #main .a27-family-related > .fusion-column-wrapper > div:nth-child(2),
	.fusion-body #main .a27-family-related > .fusion-column-wrapper > div:nth-child(3) {
		grid-column: 2;
		width: 100%;
		height: 100%;
	}

	.fusion-body #main .a27-family-related-copy p {
		display: block;
		padding: 0;
	}

	.fusion-body #main .a27-family-related-copy span,
	.fusion-body #main .a27-family-related-copy strong,
	.fusion-body #main .a27-family-related-copy small {
		display: block;
	}

	.fusion-body #main .a27-family-related-copy span {
		color: var(--a27-muted);
		font-size: 12px;
		font-weight: 500;
		line-height: 1.65;
		letter-spacing: 0.13em;
	}

	.fusion-body #main .a27-family-related-copy strong {
		margin: 8px 0;
		font-size: 22.4px;
		line-height: 1.2;
		letter-spacing: -0.025em;
	}

	.fusion-body #main .a27-family-related-copy small {
		font-size: 16px;
		line-height: 1.65;
	}

	.fusion-body #main .a27-family-related-link {
		height: 100% !important;
		min-height: 0 !important;
		padding: 9px 0 !important;
		border: 0 !important;
		font-size: 14.4px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-related-link .awb-button__icon {
		color: var(--a27-ink) !important;
	}

	.fusion-body #main .a27-family-related-link:hover .awb-button__icon,
	.fusion-body #main .a27-family-related-link:focus-visible .awb-button__icon {
		color: var(--a27-blue) !important;
	}

	.fusion-body #main .a27-family-related > .fusion-column-wrapper > div:nth-child(2) .a27-family-related-link {
		border-bottom: 1px solid #cbd8f0 !important;
	}

	/* Scenarios: framed white cards with the blue beta5 top rule. */
	.fusion-body #main .a27-family-usecases {
		position: relative;
		border-top: 1px solid var(--a27-line) !important;
		border-bottom: 1px solid var(--a27-line) !important;
	}

	.fusion-body #main .a27-family-usecases::before,
	.fusion-body #main .a27-family-usecases::after,
	.fusion-body #main .a27-family-support::before,
	.fusion-body #main .a27-family-support::after {
		position: absolute;
		left: 50%;
		z-index: 2;
		width: 100vw;
		height: 1px;
		transform: translateX(-50%);
		background: var(--a27-line);
		content: '';
		pointer-events: none;
	}

	.fusion-body #main .a27-family-usecases::before,
	.fusion-body #main .a27-family-support::before {
		top: -1px;
	}

	.fusion-body #main .a27-family-usecases::after,
	.fusion-body #main .a27-family-support::after {
		bottom: -1px;
	}

	.fusion-body #main .a27-family-usecases .a27-family-card,
	.fusion-body #main .a27-family-usecases .a27-family-card > .fusion-column-wrapper {
		height: 236.890625px !important;
		min-height: 236.890625px !important;
	}

	.fusion-body #main .a27-family-usecases .a27-family-card > .fusion-column-wrapper {
		box-sizing: border-box;
		border: 1px solid var(--a27-line) !important;
		border-top: 3px solid var(--a27-blue) !important;
	}

	.fusion-body #main .a27-family-usecases .a27-family-index {
		margin-bottom: 42px !important;
		color: var(--a27-blue) !important;
		font-size: 12px !important;
		font-weight: 400 !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-usecases .a27-family-index p {
		margin: 0 !important;
		color: inherit !important;
		font: inherit !important;
		line-height: inherit !important;
	}

	.fusion-body #main .a27-family-usecases .a27-family-card .fusion-title {
		margin-bottom: 13px !important;
	}

	.fusion-body #main .a27-family-usecases .a27-family-card h3,
	.fusion-body #main .a27-family-usecases .a27-family-card .fusion-title-heading {
		font-size: 23.2px !important;
		line-height: 1.2 !important;
		letter-spacing: -0.025em !important;
	}

	/* Decision criteria: dark top rule and compact blue indices. */
	.fusion-body #main .a27-family-checklist .a27-family-intro {
		justify-self: end;
		width: 350px !important;
		max-width: 350px !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-card--compact,
	.fusion-body #main .a27-family-checklist .a27-family-card--compact > .fusion-column-wrapper {
		height: 245.109375px !important;
		min-height: 245.109375px !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-card--compact > .fusion-column-wrapper {
		box-sizing: border-box;
		border: 0 !important;
		border-top: 2px solid var(--a27-ink) !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-index {
		margin-bottom: 34px !important;
		color: var(--a27-blue) !important;
		font-size: 12.8px !important;
		font-weight: 400 !important;
		line-height: 1.65 !important;
		letter-spacing: 0.08em !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-index p {
		margin: 0 !important;
		color: inherit !important;
		font: inherit !important;
		line-height: inherit !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-card .fusion-title {
		margin-bottom: 11px !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-card h3,
	.fusion-body #main .a27-family-checklist .a27-family-card .fusion-title-heading {
		line-height: 1.2 !important;
	}

	/* Operations: full-bleed separator lines and neutral panel border. */
	.fusion-body #main .a27-family-support {
		position: relative;
		border-top: 1px solid var(--a27-line) !important;
		border-bottom: 1px solid var(--a27-line) !important;
	}

	.fusion-body #main .a27-family-support-panel > .fusion-column-wrapper {
		border-right-color: var(--a27-line) !important;
		border-bottom-color: var(--a27-line) !important;
		border-left-color: var(--a27-line) !important;
	}

	.fusion-body #main .a27-family-support-heading .a27-accent {
		color: inherit !important;
	}

	.fusion-body #main .a27-family-support-panel .fusion-text > p {
		margin-bottom: 24px !important;
		font-size: 16.8px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-support-panel ul {
		margin: 0 0 26px !important;
		padding: 0 0 0 22px !important;
		list-style: outside disc !important;
	}

	.fusion-body #main .a27-family-support-panel li {
		padding: 6px 0 !important;
		border-top: 0 !important;
		font-size: 16px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-support-panel li::before {
		display: none !important;
	}

	/* Dynamic portfolio cards styled as beta5 family-case cards. */
	.fusion-body #main .a27-family-cases > .fusion-row,
	.fusion-body #main .a27-family-cases > .fusion-builder-row {
		row-gap: 34px;
	}

	.fusion-body #main .a27-family-cases-end {
		margin-top: -6px !important;
	}

	.fusion-body #main .a27-family-cases-end,
	.fusion-body #main .a27-family-cases-end > .fusion-column-wrapper,
	.fusion-body #main .a27-family-cases-end > .fusion-column-wrapper > div {
		height: 23.765625px;
		min-height: 23.765625px;
		line-height: 0;
	}

	.fusion-body #main .a27-family-cases .a27-case-title,
	.fusion-body #main .a27-family-cases .a27-case-meta {
		flex: 0 0 auto;
		width: 100%;
	}

	.fusion-body #main .a27-family-cases .a27-case-meta {
		margin-bottom: 0 !important;
		font-size: 14.4px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-family-cases .a27-case-all {
		font-size: 14.4px !important;
		line-height: 1.65 !important;
	}
}

/*
 * v0.6.23 — closing parity pass and five-stage communications flow.
 *
 * Keep the service-family component content-driven: beta5 lets scenario,
 * criteria and operations cards size from their copy. Previous fixed heights
 * added empty space on shorter families and hid the natural extra line on
 * communications.
 */
@media (min-width: 1025px) {
	.fusion-body #main .a27-family-services > .fusion-row,
	.fusion-body #main .a27-family-services > .fusion-builder-row {
		row-gap: 22px;
	}

	.fusion-body #main .a27-family-usecases .a27-family-card,
	.fusion-body #main .a27-family-usecases .a27-family-card > .fusion-column-wrapper {
		height: 230px !important;
		min-height: 230px !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-card--compact {
		height: auto !important;
		min-height: 0 !important;
	}

	.fusion-body #main .a27-family-checklist .a27-family-card--compact > .fusion-column-wrapper {
		height: 100% !important;
		min-height: 0 !important;
	}

	.fusion-body #main .a27-family-support-panel,
	.fusion-body #main .a27-family-support-panel > .fusion-column-wrapper {
		height: auto !important;
		min-height: 0 !important;
	}

	.fusion-body #main .a27-family-architecture--five > .fusion-row,
	.fusion-body #main .a27-family-architecture--five > .fusion-builder-row {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.fusion-body #main .a27-family-architecture--five .a27-family-step,
	.fusion-body #main .a27-family-architecture--five .a27-family-step > .fusion-column-wrapper {
		height: auto !important;
		min-height: 266.046875px !important;
	}
}

/*
 * On narrower desktop windows beta5 lets the 45/55 introduction columns
 * contract. Using their fluid widths prevents the security heading from
 * holding a desktop-only 508px measure and restores the intended third line.
 */
@media (min-width: 1051px) and (max-width: 1333px) {
	.fusion-body #main .a27-family-architecture .a27-family-heading {
		width: calc(45% - 31.5px) !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-intro {
		width: calc(55% - 38.5px) !important;
	}
}

@media (min-width: 901px) and (max-width: 1050px) {
	.fusion-body #main .a27-family-architecture .a27-family-heading {
		width: calc(45% - 20.25px) !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-intro {
		width: calc(55% - 24.75px) !important;
	}

	.fusion-body #main .a27-family-architecture .a27-family-section-title h2,
	.fusion-body #main .a27-family-architecture .a27-family-section-title .fusion-title-heading {
		font-size: clamp(34.4px, 4vw, 55.2px) !important;
	}
}

/*
 * v0.6.24 — final family-template rhythm and title measure.
 *
 * The architecture heading only missed the reference wrapping by a few
 * pixels. Match beta5's tracking and give the title a stable 500px measure;
 * this also prevents Avada's wider desktop column from swallowing a line.
 */
@media (min-width: 1025px) {
	.fusion-body #main .a27-family-architecture .a27-family-section-title h2,
	.fusion-body #main .a27-family-architecture .a27-family-section-title .fusion-title-heading {
		width: 100% !important;
		max-width: 500px !important;
		letter-spacing: -0.04em !important;
	}

	/* beta5 uses 34px before the service cards, 22px between card rows and
	 * 24px before the related-service panel. Avada places them in one grid,
	 * so margins supply the two unequal gaps without changing the markup. */
	.fusion-body #main .a27-family-services .a27-service-card:nth-child(3),
	.fusion-body #main .a27-family-services .a27-service-card:nth-child(4),
	.fusion-body #main .a27-family-services .a27-service-card:nth-child(5) {
		margin-top: 12px !important;
	}

	.fusion-body #main .a27-family-services .a27-family-related {
		margin-top: 2px !important;
	}

	/* Five-stage families carry longer scenario copy than cloud/security. */
	body:has(.a27-family-hero--communications) #main .a27-family-usecases .a27-family-card,
	body:has(.a27-family-hero--communications) #main .a27-family-usecases .a27-family-card > .fusion-column-wrapper {
		height: 236.890625px !important;
		min-height: 236.890625px !important;
	}

	body:has(.a27-family-hero--web) #main .a27-family-usecases .a27-family-card,
	body:has(.a27-family-hero--web) #main .a27-family-usecases .a27-family-card > .fusion-column-wrapper {
		height: 264.734375px !important;
		min-height: 264.734375px !important;
	}
}
/*
 * v0.14.0 — reusable components for the historical Infraestructura page.
 *
 * The declarations marked !important replace Avada custom-property/inline
 * geometry and earlier certified family rules that are themselves important.
 * Scope is component-based: no page ID, slug, DOM position or viewport-width
 * breakout is used.
 */
/* v0.15.2.11 — complete Standard 2027 Top Geometry for /infraestructura/. */
.a27-infra-hero {
	padding-top: var(--a27-top-breadcrumb-eyebrow) !important;
	padding-bottom: 31px !important;
}

.a27-infra-hero > .fusion-row,
.a27-infra-hero > .fusion-builder-row {
	grid-template-columns: minmax(0, 725px) minmax(0, 403px);
	column-gap: 72px;
}

.a27-infra-hero-map > .fusion-column-wrapper {
	position: relative;
	overflow: hidden;
	padding: 27px 28px !important;
	border: 1px solid var(--a27-line) !important;
	background: #f7f9fc !important;
}

.a27-infra-hero-map > .fusion-column-wrapper::after {
	position: absolute;
	right: -90px;
	bottom: -130px;
	width: 330px;
	height: 245px;
	background: url('../images/background-blue.png') center / contain no-repeat;
	content: '';
	opacity: 0.12;
	pointer-events: none;
}

.a27-infra-hero .a27-family-title h1,
.a27-infra-hero .a27-family-title .fusion-title-heading {
	font-size: clamp(54px, 5vw, 72px) !important;
	line-height: 1.1 !important;
}

.a27-infra-hero .a27-family-lead {
	max-width: 650px;
}

.a27-infra-map-content > .a27-eyebrow {
	margin: 0 0 25px !important;
}

.a27-infra-region-line {
	display: flex;
	align-items: center;
	gap: 13px;
	color: var(--a27-muted);
	font-size: 10.88px;
	font-weight: 400;
	line-height: 17.952px;
	letter-spacing: 0.12em;
}

.a27-infra-region-line > span:first-child {
	display: flex;
	flex: 1;
	align-items: center;
	gap: 13px;
}

.a27-infra-region-line > span:first-child::after {
	flex: 1;
	height: 1px;
	background: #b7c5dc;
	content: '';
}

.a27-infra-hero-nodes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin: 15px 0;
}

.a27-infra-hero-nodes > div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	min-height: 0;
	padding: 12px 13px;
	border-bottom: 0;
	border-left: 3px solid var(--a27-blue);
	background: var(--a27-paper);
}

.a27-infra-hero-nodes > .a27-infra-node--last {
	border-bottom: 0;
}

.a27-infra-hero-nodes strong,
.a27-infra-operations-node strong {
	color: var(--a27-ink);
	font-size: 14.72px;
	font-weight: 600;
	line-height: 1.65;
}

.a27-infra-hero-nodes small,
.a27-infra-operations-node small {
	color: var(--a27-muted);
	font-size: 11.2px;
	line-height: 1.65;
	margin-top: 2px;
}

.a27-infra-operations-node {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 10px minmax(0, 1fr);
	grid-template-rows: auto auto;
	align-items: center;
	column-gap: 12px;
	min-height: 0;
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--a27-line);
}

.a27-infra-operations-node::before {
	grid-row: 1 / 3;
	grid-column: 1;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--a27-blue);
	box-shadow: 0 0 0 5px #dbe6ff;
	content: '';
}

.a27-infra-operations-node strong {
	grid-row: 1;
	grid-column: 2;
}

.a27-infra-operations-node small {
	grid-row: 2;
	grid-column: 2;
}

.a27-infra-hero-note {
	margin: 20px 0 0 !important;
	color: var(--a27-muted) !important;
	font-size: 12px !important;
	line-height: 20px !important;
}

.a27-infra-actions {
	box-sizing: border-box;
	padding: 0 0 58px !important;
	background: var(--a27-paper);
}

.a27-infra-actions > .fusion-row,
.a27-infra-actions > .fusion-builder-row {
	display: grid !important;
	flex: 0 0 var(--a27-rail-width);
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	align-items: end;
	column-gap: 35px;
	box-sizing: border-box;
	width: var(--a27-rail-width) !important;
	min-width: 0;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-infra-actions .a27-family-actions,
.a27-infra-actions .a27-infra-action-note {
	--awb-margin-top-large: 0px !important;
	--awb-margin-top-medium: 0px !important;
	--awb-margin-top-small: 0px !important;
	width: auto !important;
	margin: 0 !important;
}

.a27-infra-actions .a27-infra-action-note {
	align-self: end;
	text-align: right;
}

.a27-infra-actions .a27-fine-print,
.a27-infra-actions .a27-fine-print p {
	margin: 0 !important;
	color: var(--a27-muted) !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

.a27-infra-locations {
	border-top: 1px solid var(--a27-line);
	border-bottom: 1px solid var(--a27-line);
	background: #f7f9fc !important;
}

.a27-infra-locations > .fusion-row,
.a27-infra-locations > .fusion-builder-row,
.a27-infra-services > .fusion-row,
.a27-infra-services > .fusion-builder-row,
.a27-infra-resilience > .fusion-row,
.a27-infra-resilience > .fusion-builder-row {
	flex: 0 0 var(--a27-rail-width);
	width: var(--a27-rail-width) !important;
	min-width: 0;
	max-width: var(--a27-content-width) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.a27-infra-locations .a27-infra-dc-card {
	grid-column: span 3;
	width: auto !important;
}

.a27-infra-locations > .fusion-row,
.a27-infra-locations > .fusion-builder-row {
	column-gap: 18px;
}

.a27-infra-locations .a27-infra-dc-card > .fusion-column-wrapper {
	box-sizing: border-box;
	min-height: 282px;
	padding: 26px 23px !important;
	border: 1px solid var(--a27-line) !important;
	border-top: 3px solid var(--a27-blue) !important;
	background: var(--a27-paper) !important;
}

.a27-infra-card-top,
.a27-infra-card-top p {
	margin: 0 !important;
}

.a27-infra-card-top p {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.a27-infra-card-top span {
	color: var(--a27-muted);
	font-size: 12px;
}

.a27-infra-card-top strong {
	padding: 5px 9px;
	border-radius: 20px;
	background: #edf3ff;
	color: var(--a27-blue);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.a27-infra-dc-card .fusion-title {
	margin: 13px 0 15px !important;
}

.a27-infra-dc-card .fusion-title-heading {
	font-size: 32px !important;
	line-height: 1.2 !important;
	letter-spacing: -0.04em !important;
}

.a27-infra-office {
	grid-column: 1 / -1;
}

.a27-family-related.a27-infra-office > .fusion-column-wrapper {
	display: block !important;
	min-height: 0 !important;
	padding: 23px 26px !important;
	border: 1px solid var(--a27-line) !important;
	border-left: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
}

.a27-infra-office .a27-family-related-copy p {
	display: grid !important;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.7fr);
	grid-template-rows: auto auto;
	align-items: center;
	gap: 7px 45px;
	padding: 0;
}

.a27-infra-office .a27-family-related-copy span {
	grid-row: 1;
	grid-column: 1;
}

.a27-infra-office .a27-family-related-copy strong {
	grid-row: 2;
	grid-column: 1;
	font-size: 22px;
}

.a27-infra-office .a27-family-related-copy small {
	grid-row: 1 / 3;
	grid-column: 2;
	font-size: 15px;
}

.a27-infra-capabilities > .fusion-row,
.a27-infra-capabilities > .fusion-builder-row {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 0;
	row-gap: 0;
}

.a27-infra-capabilities .a27-family-heading {
	grid-column: 1 / 3;
	padding-bottom: 69px !important;
}

.a27-infra-capabilities .a27-family-intro {
	grid-column: 3;
	padding-bottom: 69px !important;
}

.a27-infra-capabilities .a27-infra-layer-card {
	grid-column: span 1;
	width: auto !important;
}

.a27-infra-capabilities .a27-infra-layer-card > .fusion-column-wrapper {
	display: grid !important;
	grid-template-columns: 45px minmax(0, 1fr);
	grid-template-rows: auto 1fr;
	align-items: start;
	column-gap: 20px;
	box-sizing: border-box;
	min-height: 165px !important;
	padding: 27px !important;
	border: 1px solid var(--a27-line) !important;
	background: var(--a27-paper) !important;
}

.a27-infra-capabilities .a27-infra-layer-card > .fusion-column-wrapper::before {
	grid-row: 1 / 3;
	grid-column: 1;
	box-sizing: border-box;
	width: 45px;
	height: 45px;
	margin: 0;
	padding: 10px;
	background-color: #edf3ff;
	background-size: 24px;
	border-radius: 4px;
}

.a27-infra-capabilities .a27-service-card-title,
.a27-infra-capabilities .a27-service-card-text {
	grid-column: 2;
}

.a27-infra-capabilities .a27-service-card-title {
	margin-bottom: 9px !important;
}

.a27-infra-capabilities .a27-service-card-title .fusion-title-heading {
	font-size: 20px !important;
}

.a27-infra-capabilities .a27-service-card-text {
	margin-top: 0 !important;
	color: var(--a27-muted) !important;
	font-size: 15px !important;
	line-height: 24.75px !important;
}

.a27-infra-resilience {
	background: var(--a27-deep) !important;
}

.a27-infra-resilience > .fusion-row,
.a27-infra-resilience > .fusion-builder-row {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 1px;
	row-gap: 20px;
}

.a27-infra-resilience .a27-family-heading {
	grid-column: 1;
	padding-bottom: 28px !important;
}

.a27-infra-resilience .a27-family-intro {
	grid-column: 2 / -1;
	align-self: end;
	width: auto !important;
	padding-bottom: 28px !important;
}

.a27-infra-resilience .a27-family-section-title .fusion-title-heading,
.a27-infra-resilience .a27-infra-scenario .fusion-title-heading {
	color: #ffffff !important;
}

.a27-infra-resilience .a27-family-section-title .fusion-title-heading {
	font-size: clamp(35px, 4vw, 56px) !important;
}

.a27-infra-resilience .a27-family-intro,
.a27-infra-resilience .a27-family-intro p,
.a27-infra-resilience .a27-infra-scenario .fusion-text,
.a27-infra-resilience .a27-infra-scenario .fusion-text p {
	color: #bcc7d6 !important;
}

.a27-infra-resilience .a27-infra-scenario {
	grid-column: span 1;
	box-sizing: border-box;
	height: 222px !important;
	min-height: 222px !important;
	margin-top: 32px !important;
	padding: 1px 0 !important;
	width: auto !important;
}

.a27-infra-resilience .a27-infra-scenario::after,
.a27-infra-resilience .a27-infra-scenario > .fusion-column-wrapper::after {
	display: none !important;
	content: none !important;
}

.a27-infra-resilience .a27-infra-scenario > .fusion-column-wrapper {
	height: 220px !important;
	min-height: 220px !important;
	padding: 32px !important;
	border: 1px solid #415066 !important;
	background: #16253a !important;
}

.a27-infra-resilience .a27-family-index,
.a27-infra-resilience .a27-family-index p {
	margin-bottom: 42px !important;
	color: #8fb2fc !important;
	font-size: 12px !important;
	line-height: 19.8px !important;
}

.a27-infra-resilience .a27-infra-scenario .fusion-title {
	margin-bottom: 13px !important;
}

.a27-infra-resilience .a27-infra-scenario .fusion-title-heading {
	font-size: 21.6px !important;
	line-height: 25.92px !important;
	letter-spacing: -0.54px !important;
}

.a27-infra-resilience .a27-infra-scenario .fusion-text,
.a27-infra-resilience .a27-infra-scenario .fusion-text p {
	color: #b8c5d8 !important;
	font-size: 15px !important;
	line-height: 24.75px !important;
}

.a27-infra-resilience .a27-infra-scope-note {
	grid-column: 1 / -1;
	width: auto !important;
}

.a27-infra-resilience .a27-infra-scope-note,
.a27-infra-resilience .a27-infra-scope-note p {
	margin: 0 !important;
	color: #9eacc0 !important;
	font-size: 13px !important;
}

.a27-infra-criteria .a27-infra-criterion > .fusion-column-wrapper {
	padding: 27px 24px !important;
	border-top: 2px solid var(--a27-ink) !important;
}

.a27-infra-criteria > .fusion-row,
.a27-infra-criteria > .fusion-builder-row {
	column-gap: 22px;
}

.a27-infra-criteria .a27-family-index,
.a27-infra-criteria .a27-family-index p {
	margin-bottom: 35px !important;
}

.a27-infra-criteria .a27-infra-criterion .fusion-title {
	margin-bottom: 12px !important;
}

.a27-infra-services {
	background: #f8f9fb !important;
}

.a27-infra-operations {
	background: var(--a27-paper) !important;
}

.a27-infra-operations > .fusion-row,
.a27-infra-operations > .fusion-builder-row {
	grid-template-columns: minmax(0, 474px) minmax(0, 641px);
	gap: 85px;
}

.a27-infra-operations .a27-family-support-heading,
.a27-infra-operations .a27-family-support-panel {
	grid-column: auto;
	width: auto !important;
}

.a27-infra-operations .a27-family-support-heading {
	align-self: start;
	padding-right: 0 !important;
}

.a27-infra-operations .a27-family-support-heading .fusion-title-heading {
	font-size: clamp(28.8px, 3vw, 40.8px) !important;
	line-height: 1.2 !important;
}

.a27-infra-operations .a27-family-support-panel > .fusion-column-wrapper {
	box-sizing: border-box;
	padding: 34px !important;
	border: 1px solid var(--a27-line) !important;
	border-top: 3px solid var(--a27-blue) !important;
	background: var(--a27-paper) !important;
}

.a27-infra-operations .a27-family-support-panel .fusion-text,
.a27-infra-operations .a27-family-support-panel .fusion-text p,
.a27-infra-operations .a27-family-support-panel li {
	color: var(--a27-muted) !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
}

.a27-infra-operations .a27-family-support-panel ul {
	margin: 24px 0 30px !important;
}

.a27-infra-operations .a27-family-support-panel .a27-text-link {
	font-size: 14.4px !important;
	line-height: 23.76px !important;
}

.a27-infra-cases {
	border-top: 1px solid var(--a27-line);
	border-bottom: 1px solid var(--a27-line);
	background: #f7f9fc !important;
}

@media (max-width: 1000px) {
	.a27-infra-hero > .fusion-row,
	.a27-infra-hero > .fusion-builder-row {
		grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
		column-gap: 42px;
	}

	.a27-infra-locations .a27-infra-dc-card,
	.a27-infra-capabilities .a27-infra-layer-card,
	.a27-infra-criteria .a27-infra-criterion {
		grid-column: span 2;
	}

	.a27-infra-locations > .fusion-row,
	.a27-infra-locations > .fusion-builder-row,
	.a27-infra-capabilities > .fusion-row,
	.a27-infra-capabilities > .fusion-builder-row,
	.a27-infra-criteria > .fusion-row,
	.a27-infra-criteria > .fusion-builder-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a27-infra-locations .a27-family-heading,
	.a27-infra-capabilities .a27-family-heading,
	.a27-infra-criteria .a27-family-heading {
		grid-column: 1;
	}

	.a27-infra-locations .a27-family-intro,
	.a27-infra-capabilities .a27-family-intro,
	.a27-infra-criteria .a27-family-intro {
		grid-column: 2;
	}

	.a27-infra-operations > .fusion-row,
	.a27-infra-operations > .fusion-builder-row {
		grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
		gap: 45px;
	}
}

@media (max-width: 700px) {
	.a27-infra-hero > .fusion-row,
	.a27-infra-hero > .fusion-builder-row,
	.a27-infra-actions > .fusion-row,
	.a27-infra-actions > .fusion-builder-row,
	.a27-infra-locations > .fusion-row,
	.a27-infra-locations > .fusion-builder-row,
	.a27-infra-capabilities > .fusion-row,
	.a27-infra-capabilities > .fusion-builder-row,
	.a27-infra-resilience > .fusion-row,
	.a27-infra-resilience > .fusion-builder-row,
	.a27-infra-criteria > .fusion-row,
	.a27-infra-criteria > .fusion-builder-row,
	.a27-infra-operations > .fusion-row,
	.a27-infra-operations > .fusion-builder-row {
		grid-template-columns: minmax(0, 1fr);
		gap: 22px;
	}

	.a27-infra-actions {
		padding-bottom: 40px !important;
	}

	.a27-infra-actions .a27-infra-action-note {
		text-align: left;
	}

	.a27-infra-locations .a27-family-heading,
	.a27-infra-locations .a27-family-intro,
	.a27-infra-locations .a27-infra-dc-card,
	.a27-infra-capabilities .a27-family-heading,
	.a27-infra-capabilities .a27-family-intro,
	.a27-infra-capabilities .a27-infra-layer-card,
	.a27-infra-resilience .a27-family-heading,
	.a27-infra-resilience .a27-family-intro,
	.a27-infra-resilience .a27-infra-scenario,
	.a27-infra-criteria .a27-family-heading,
	.a27-infra-criteria .a27-family-intro,
	.a27-infra-criteria .a27-infra-criterion,
	.a27-infra-operations .a27-family-support-heading,
	.a27-infra-operations .a27-family-support-panel {
		grid-column: 1;
	}

	.a27-infra-locations .a27-infra-dc-card > .fusion-column-wrapper,
	.a27-infra-capabilities .a27-infra-layer-card > .fusion-column-wrapper,
	.a27-infra-resilience .a27-infra-scenario > .fusion-column-wrapper {
		height: auto !important;
		min-height: 0 !important;
	}

	.a27-infra-resilience .a27-infra-scenario {
		height: auto !important;
		min-height: 0 !important;
		margin-top: 0 !important;
	}

	.a27-infra-office .a27-family-related-copy p {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto;
		gap: 7px;
	}

	.a27-infra-office .a27-family-related-copy span,
	.a27-infra-office .a27-family-related-copy strong,
	.a27-infra-office .a27-family-related-copy small {
		grid-row: auto;
		grid-column: 1;
	}

	.a27-infra-operations .a27-family-support-panel > .fusion-column-wrapper {
		padding: 26px 23px !important;
	}
}

/* v0.14.2 — replace measured Avada winning rules for shared components. */
.fusion-body #main .a27-infra-hero .a27-family-title h1,
.fusion-body #main .a27-infra-hero .a27-family-title .fusion-title-heading {
	font-size: clamp(54px, 5vw, 72px) !important;
}

.fusion-body #main .a27-infra-hero-map > .fusion-column-wrapper {
	position: relative;
	overflow: hidden;
	min-height: 403px !important;
	border: 1px solid var(--a27-line) !important;
}

.fusion-body #main .a27-infra-map-content > .a27-eyebrow {
	margin: 0 0 25px !important;
}

.fusion-body #main .a27-infra-hero-note {
	margin: 20px 0 0 !important;
}

.fusion-body #main .a27-infra-resilience .a27-infra-scenario {
	box-sizing: border-box;
	height: 222px !important;
	min-height: 222px !important;
	margin-top: 31px !important;
	padding: 1px 0 !important;
}

.fusion-body #main .a27-infra-resilience .a27-infra-scenario > .fusion-column-wrapper {
	box-sizing: border-box !important;
	height: 220px !important;
	min-height: 220px !important;
	padding: 32px !important;
}

.fusion-body #main .a27-infra-resilience .a27-family-index {
	margin-bottom: 42px !important;
	color: #8fb2fc !important;
	font-size: 12px !important;
	line-height: 19.8px !important;
}

.fusion-body #main .a27-infra-resilience .a27-family-index p {
	margin-bottom: 0 !important;
	color: #8fb2fc !important;
	font-size: 12px !important;
	line-height: 19.8px !important;
}

.fusion-body #main .a27-infra-criteria .a27-family-index {
	margin-bottom: 35px !important;
}

.fusion-body #main .a27-infra-criteria .a27-family-index p {
	margin-bottom: 0 !important;
}

.fusion-body #main .a27-infra-criteria .a27-infra-criterion .fusion-title {
	margin-bottom: 12px !important;
}

.fusion-body #main .a27-infra-actions .a27-family-actions,
.fusion-body #main .a27-infra-actions .a27-infra-action-note {
	--awb-margin-top-large: 0px !important;
	--awb-margin-top-medium: 0px !important;
	--awb-margin-top-small: 0px !important;
	margin-top: 0 !important;
}

.fusion-body #main .a27-infra-locations .a27-family-heading,
.fusion-body #main .a27-infra-locations .a27-family-intro {
	padding-bottom: 16px !important;
}

.fusion-body #main .a27-infra-locations,
.fusion-body #main .a27-infra-cases {
	border-top: 1px solid var(--a27-line) !important;
	border-bottom: 1px solid var(--a27-line) !important;
}

.fusion-body #main .a27-infra-locations {
	padding-bottom: 75.5px !important;
}

.fusion-body #main .a27-infra-locations .a27-infra-card-top {
	margin: 0 0 40px !important;
}

.fusion-body #main .a27-infra-locations .a27-infra-card-top p {
	margin: 0 !important;
}

.fusion-body #main .a27-infra-office {
	height: 102px !important;
	margin-top: 0 !important;
}

.fusion-body #main .a27-infra-locations > .fusion-row,
.fusion-body #main .a27-infra-locations > .fusion-builder-row {
	row-gap: 18px;
}

.fusion-body #main .a27-family-related.a27-infra-office > .fusion-column-wrapper {
	display: block !important;
	height: 102px !important;
	min-height: 0 !important;
	padding: 23px 26px !important;
}

.fusion-body #main .a27-infra-office .a27-family-related-copy p {
	display: grid !important;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.7fr);
	grid-template-rows: auto auto;
	gap: 7px 45px;
	padding: 0 !important;
}

.fusion-body #main .a27-infra-office .a27-family-related-copy span {
	grid-row: 1;
	grid-column: 1;
}

.fusion-body #main .a27-infra-office .a27-family-related-copy strong {
	grid-row: 2;
	grid-column: 1;
	margin: 0 !important;
}

.fusion-body #main .a27-infra-office .a27-family-related-copy small {
	grid-row: 1 / 3;
	grid-column: 2;
}

.fusion-body #main .a27-infra-capabilities .a27-family-heading,
.fusion-body #main .a27-infra-capabilities .a27-family-intro {
	padding-bottom: 35px !important;
}

.fusion-body #main .a27-infra-resilience {
	padding-bottom: 76.64px !important;
}

.fusion-body #main .a27-infra-criteria {
	padding-bottom: 76px !important;
}

.fusion-body #main .a27-infra-operations {
	padding-bottom: 78px !important;
}

.fusion-body #main .a27-infra-cases {
	padding-top: 69px !important;
	padding-bottom: 67.125px !important;
}

@media (max-width: 700px) {
	.fusion-body #main .a27-infra-office,
	.fusion-body #main .a27-family-related.a27-infra-office > .fusion-column-wrapper {
		height: auto !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-infra-scenario,
	.fusion-body #main .a27-infra-resilience .a27-infra-scenario > .fusion-column-wrapper {
		height: auto !important;
		min-height: 0 !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-infra-scenario {
		margin-top: 0 !important;
	}
}

/*
 * v0.14.11 — tablet parity for the Infraestructura component family.
 *
 * Between the desktop rail and the 650px mobile breakpoint, Avada's flex
 * growth still stretched Builder rows to the preview edges. Beta5 keeps the
 * shared 90% rail and switches section rhythm to 55px at this width.
 */
@media (min-width: 651px) and (max-width: 900px) {
	.fusion-body #main .a27-breadcrumbs > .fusion-row,
	.fusion-body #main .a27-breadcrumbs > .fusion-builder-row,
	.fusion-body #main .a27-infra-hero > .fusion-row,
	.fusion-body #main .a27-infra-hero > .fusion-builder-row,
	.fusion-body #main .a27-infra-actions > .fusion-row,
	.fusion-body #main .a27-infra-actions > .fusion-builder-row,
	.fusion-body #main .a27-infra-locations > .fusion-row,
	.fusion-body #main .a27-infra-locations > .fusion-builder-row,
	.fusion-body #main .a27-infra-capabilities > .fusion-row,
	.fusion-body #main .a27-infra-capabilities > .fusion-builder-row,
	.fusion-body #main .a27-infra-resilience > .fusion-row,
	.fusion-body #main .a27-infra-resilience > .fusion-builder-row,
	.fusion-body #main .a27-infra-criteria > .fusion-row,
	.fusion-body #main .a27-infra-criteria > .fusion-builder-row,
	.fusion-body #main .a27-infra-services > .fusion-row,
	.fusion-body #main .a27-infra-services > .fusion-builder-row,
	.fusion-body #main .a27-infra-operations > .fusion-row,
	.fusion-body #main .a27-infra-operations > .fusion-builder-row,
	.fusion-body #main .a27-infra-cases > .fusion-row,
	.fusion-body #main .a27-infra-cases > .fusion-builder-row,
	.fusion-body #main .a27-infra-faq > .fusion-row,
	.fusion-body #main .a27-infra-faq > .fusion-builder-row {
		flex: 0 0 var(--a27-rail-width);
		width: var(--a27-rail-width) !important;
		min-width: 0;
		max-width: var(--a27-content-width) !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.fusion-body #main .a27-infra-hero .a27-family-title h1,
	.fusion-body #main .a27-infra-hero .a27-family-title .fusion-title-heading {
		font-size: clamp(40px, 5vw, 45px) !important;
	}

	.fusion-body #main .a27-infra-locations,
	.fusion-body #main .a27-infra-capabilities,
	.fusion-body #main .a27-infra-resilience,
	.fusion-body #main .a27-infra-criteria,
	.fusion-body #main .a27-infra-services,
	.fusion-body #main .a27-infra-operations,
	.fusion-body #main .a27-infra-cases,
	.fusion-body #main .a27-infra-faq {
		padding-top: 55px !important;
		padding-bottom: 55px !important;
	}
}

/*
 * v0.14.9 — mobile parity for the Infraestructura component family.
 *
 * Avada makes each Builder row a growing flex item. On narrow screens that
 * growth overrode the certified 90% rail and stretched every section to the
 * viewport edges. These component-scoped rules restore Beta5's mobile rail,
 * typography and content-driven vertical rhythm without page selectors.
 */
@media (max-width: 650px) {
	:root {
		--a27-rail-width: calc(100% - 48px);
		--a27-top-breadcrumb-eyebrow: 33px;
		--a27-top-eyebrow-h1: 20px;
		--a27-top-h1-lead: 20px;
	}

	.fusion-body #main .a27-breadcrumbs > .fusion-row,
	.fusion-body #main .a27-breadcrumbs > .fusion-builder-row,
	.fusion-body #main .a27-infra-hero > .fusion-row,
	.fusion-body #main .a27-infra-hero > .fusion-builder-row,
	.fusion-body #main .a27-infra-actions > .fusion-row,
	.fusion-body #main .a27-infra-actions > .fusion-builder-row,
	.fusion-body #main .a27-infra-locations > .fusion-row,
	.fusion-body #main .a27-infra-locations > .fusion-builder-row,
	.fusion-body #main .a27-infra-capabilities > .fusion-row,
	.fusion-body #main .a27-infra-capabilities > .fusion-builder-row,
	.fusion-body #main .a27-infra-resilience > .fusion-row,
	.fusion-body #main .a27-infra-resilience > .fusion-builder-row,
	.fusion-body #main .a27-infra-criteria > .fusion-row,
	.fusion-body #main .a27-infra-criteria > .fusion-builder-row,
	.fusion-body #main .a27-infra-services > .fusion-row,
	.fusion-body #main .a27-infra-services > .fusion-builder-row,
	.fusion-body #main .a27-infra-operations > .fusion-row,
	.fusion-body #main .a27-infra-operations > .fusion-builder-row,
	.fusion-body #main .a27-infra-cases > .fusion-row,
	.fusion-body #main .a27-infra-cases > .fusion-builder-row,
	.fusion-body #main .a27-infra-faq > .fusion-row,
	.fusion-body #main .a27-infra-faq > .fusion-builder-row {
		flex: 0 0 var(--a27-rail-width);
		width: var(--a27-rail-width) !important;
		min-width: 0;
		max-width: var(--a27-content-width) !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.fusion-body #main .a27-breadcrumbs {
		padding-top: 24px !important;
	}

	.fusion-body #main .a27-infra-hero {
		padding-top: 33px !important;
		padding-bottom: 36px !important;
	}

	.fusion-body #main .a27-infra-hero > .fusion-row,
	.fusion-body #main .a27-infra-hero > .fusion-builder-row {
		gap: 30px;
	}

	.fusion-body #main .a27-infra-hero .a27-family-hero-copy {
		padding-right: 0 !important;
	}

	.fusion-body #main .a27-infra-hero .a27-family-title h1,
	.fusion-body #main .a27-infra-hero .a27-family-title .fusion-title-heading {
		font-size: 43.2px !important;
		line-height: 1.12 !important;
		letter-spacing: -0.045em !important;
	}

	.fusion-body #main .a27-infra-hero .a27-family-lead,
	.fusion-body #main .a27-infra-hero .a27-family-lead p {
		font-size: 16px !important;
		line-height: 1.65 !important;
	}

	.fusion-body #main .a27-infra-hero-map {
		margin-top: 0 !important;
	}

	.fusion-body #main .a27-infra-hero-map > .fusion-column-wrapper {
		min-height: 0 !important;
	}

	.fusion-body #main .a27-infra-hero-nodes {
		grid-template-columns: minmax(0, 1fr);
	}

	.fusion-body #main .a27-infra-actions {
		margin-top: 0 !important;
		padding-bottom: 40px !important;
	}

	.fusion-body #main .a27-infra-actions > .fusion-row,
	.fusion-body #main .a27-infra-actions > .fusion-builder-row {
		gap: 20px;
	}

	.fusion-body #main .a27-infra-actions .a27-family-actions > .fusion-column-wrapper {
		align-items: center !important;
		flex-flow: row wrap !important;
		gap: 24px !important;
	}

	.fusion-body #main .a27-infra-actions .a27-family-actions > .fusion-column-wrapper > div,
	.fusion-body #main .a27-infra-actions .a27-family-actions .a27-button {
		width: auto !important;
	}

	.fusion-body #main .a27-infra-locations,
	.fusion-body #main .a27-infra-capabilities,
	.fusion-body #main .a27-infra-resilience,
	.fusion-body #main .a27-infra-criteria,
	.fusion-body #main .a27-infra-services,
	.fusion-body #main .a27-infra-operations,
	.fusion-body #main .a27-infra-cases,
	.fusion-body #main .a27-infra-faq {
		padding-top: 45px !important;
		padding-bottom: 45px !important;
	}

	.fusion-body #main .a27-infra-locations > .fusion-row,
	.fusion-body #main .a27-infra-locations > .fusion-builder-row,
	.fusion-body #main .a27-infra-capabilities > .fusion-row,
	.fusion-body #main .a27-infra-capabilities > .fusion-builder-row,
	.fusion-body #main .a27-infra-criteria > .fusion-row,
	.fusion-body #main .a27-infra-criteria > .fusion-builder-row,
	.fusion-body #main .a27-infra-cases > .fusion-row,
	.fusion-body #main .a27-infra-cases > .fusion-builder-row {
		gap: 18px;
	}

	.fusion-body #main .a27-infra-locations .a27-family-heading,
	.fusion-body #main .a27-infra-capabilities .a27-family-heading,
	.fusion-body #main .a27-infra-resilience .a27-family-heading,
	.fusion-body #main .a27-infra-criteria .a27-family-heading,
	.fusion-body #main .a27-infra-services .a27-family-heading,
	.fusion-body #main .a27-infra-cases .a27-family-heading {
		padding-bottom: 0 !important;
	}

	.fusion-body #main .a27-infra-locations .a27-family-intro,
	.fusion-body #main .a27-infra-capabilities .a27-family-intro,
	.fusion-body #main .a27-infra-criteria .a27-family-intro,
	.fusion-body #main .a27-infra-cases .a27-family-intro {
		margin: 0 0 8px !important;
		padding-bottom: 0 !important;
	}

	.fusion-body #main .a27-infra-services > .fusion-row,
	.fusion-body #main .a27-infra-services > .fusion-builder-row {
		gap: 16px;
	}

	.fusion-body #main .a27-infra-services .a27-family-intro {
		margin: 0 0 10px !important;
		padding-bottom: 0 !important;
	}

	.fusion-body #main .a27-family-related.a27-infra-office > .fusion-column-wrapper {
		padding: 23px !important;
	}

	.fusion-body #main .a27-infra-resilience > .fusion-row,
	.fusion-body #main .a27-infra-resilience > .fusion-builder-row {
		gap: 0;
	}

	.fusion-body #main .a27-infra-resilience .a27-family-heading {
		margin-bottom: 22px !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-family-intro {
		margin: 0 0 32px !important;
		padding-bottom: 0 !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-infra-scenario > .fusion-column-wrapper {
		padding: 27px !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-family-index {
		margin-bottom: 25px !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-family-index p {
		margin-bottom: 0 !important;
	}

	.fusion-body #main .a27-infra-resilience .a27-infra-scope-note {
		margin-top: 20px !important;
	}

	.fusion-body #main .a27-infra-operations > .fusion-row,
	.fusion-body #main .a27-infra-operations > .fusion-builder-row {
		gap: 28px;
	}

	.fusion-body #main .a27-infra-faq > .fusion-row,
	.fusion-body #main .a27-infra-faq > .fusion-builder-row {
		gap: 26px;
	}
}
