/* cyrillic-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest/onest-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest/onest-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
	font-family: "Onest";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../fonts/onest/onest-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Onest";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../fonts/onest/onest-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--gi-bg: var(--wp--preset--color--surface, #f5f5f7);
	--gi-surface: var(--wp--preset--color--card, #ffffff);
	--gi-surface-soft: var(--wp--preset--color--surface-soft, #f6f6f8);
	--gi-surface-strong: var(--wp--preset--color--surface-strong, #efecf9);
	--gi-ink: var(--wp--preset--color--ink, #0c0c20);
	--gi-ink-soft: var(--wp--preset--color--ink-soft, #2b2a2f);
	--gi-text: var(--wp--preset--color--slate, #4d4d4d);
	--gi-text-soft: var(--wp--preset--color--slate-soft, #767676);
	--gi-border: rgba(12, 12, 32, 0.1);
	--gi-border-strong: rgba(84, 35, 231, 0.22);
	--gi-accent: var(--wp--preset--color--accent, #5423e7);
	--gi-accent-strong: var(--wp--preset--color--accent-strong, #4b1ed1);
	--gi-accent-soft: rgba(84, 35, 231, 0.1);
	--gi-teal: var(--wp--preset--color--teal, #7eedff);
	--gi-gold: var(--wp--preset--color--gold, #d78942);
	--gi-success: var(--wp--preset--color--success, #3da108);
	--gi-shadow-xs: var(--wp--custom--shadow--xs, 0 10px 24px rgba(12, 12, 32, 0.08));
	--gi-shadow-sm: var(--wp--custom--shadow--sm, 0 18px 40px rgba(12, 12, 32, 0.11));
	--gi-shadow-md: var(--wp--custom--shadow--md, 0 28px 62px rgba(12, 12, 32, 0.14));
	--gi-shadow-lg: var(--wp--custom--shadow--lg, 0 40px 94px rgba(12, 12, 32, 0.17));
	--gi-radius-xs: var(--wp--custom--radius--xs, 12px);
	--gi-radius-sm: var(--wp--custom--radius--sm, 16px);
	--gi-radius-md: var(--wp--custom--radius--md, 24px);
	--gi-radius-lg: var(--wp--custom--radius--lg, 32px);
	--gi-radius-pill: var(--wp--custom--radius--pill, 999px);
	--gi-shell: min(1280px, calc(100vw - 1.5rem));
	--gi-shell-narrow: min(760px, calc(100vw - 1.5rem));
	--gi-article-header-max: min(1020px, calc(100vw - 1.5rem));
	--gi-article-reading-max: min(780px, calc(100vw - 1.5rem));
	--gi-space-1: 0.5rem;
	--gi-space-2: 0.75rem;
	--gi-space-3: 1rem;
	--gi-space-4: 1.25rem;
	--gi-space-5: 1.5rem;
	--gi-space-6: 2rem;
	--gi-space-7: clamp(2rem, 3vw, 2.75rem);
	--gi-space-8: clamp(2.5rem, 4vw, 3.9rem);
	--gi-space-9: clamp(3.2rem, 5.5vw, 5.2rem);
	--gi-section-space: clamp(3.4rem, 5.6vw, 5.6rem);
	--gi-display: clamp(2.6rem, 4.1vw, 4.2rem);
	--gi-h1: clamp(2.15rem, 3.4vw, 3.35rem);
	--gi-h2: clamp(1.82rem, 2.6vw, 2.52rem);
	--gi-h3: clamp(1.24rem, 1.3vw, 1.52rem);
	--gi-grid-min-2: 20rem;
	--gi-grid-min-3: 17.25rem;
	--gi-grid-min-4: 14.5rem;
	--gi-grid-min-stat: 11rem;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: "Onest", "Segoe UI", sans-serif;
	font-size: 1rem;
	line-height: 1.64;
	color: var(--gi-text);
	background:
		radial-gradient(circle at 0 0, rgba(84, 35, 231, 0.08), transparent 36%),
		linear-gradient(180deg, #fff 0%, var(--gi-bg) 100%);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

body.menu-open {
	overflow: hidden;
	overscroll-behavior: none;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: var(--gi-accent);
	text-decoration: none;
	transition: color 0.2s ease, opacity 0.2s ease;
}

a:hover {
	color: var(--gi-accent-strong);
}

button,
input,
textarea,
select {
	font: inherit;
}

button {
	cursor: pointer;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	color: var(--gi-ink);
	line-height: 1.16;
	letter-spacing: -0.03em;
	text-wrap: balance;
}

h1 {
	font-size: var(--gi-h1);
}

h2 {
	font-size: var(--gi-h2);
}

h3 {
	font-size: var(--gi-h3);
}

p {
	margin: 0;
	text-wrap: pretty;
}

ul,
ol {
	padding-left: 1.2rem;
}

::selection {
	background: rgba(84, 35, 231, 0.18);
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	width: auto;
	height: auto;
	margin: 1rem;
	padding: 0.8rem 1rem;
	clip: auto;
	background: var(--gi-surface);
	border-radius: var(--gi-radius-pill);
	box-shadow: var(--gi-shadow-sm);
	color: var(--gi-ink);
	z-index: 999;
}

.gi-shell,
.alignwide > .wp-block-group__inner-container,
.alignwide.wp-block-group,
.alignwide.wp-block-columns {
	width: var(--gi-shell);
	max-width: 100%;
	margin-inline: auto;
}

.is-layout-constrained > .gi-shell,
.wp-block-group.is-layout-constrained > .gi-shell,
.wp-block-columns.is-layout-constrained > .gi-shell {
	width: min(var(--gi-shell), calc(100vw - 1.5rem));
	max-width: min(var(--gi-shell), calc(100vw - 1.5rem)) !important;
	margin-inline: auto !important;
}

.gi-shell.gi-article-shell {
	width: var(--gi-shell-narrow);
}

.gi-shell.gi-article-body-shell {
	width: var(--gi-article-reading-max);
}

.is-layout-constrained > .gi-shell.gi-article-shell,
.is-layout-constrained > .gi-shell.gi-article-body-shell,
.wp-block-group.is-layout-constrained > .gi-shell.gi-article-shell,
.wp-block-group.is-layout-constrained > .gi-shell.gi-article-body-shell,
.wp-block-columns.is-layout-constrained > .gi-shell.gi-article-shell,
.wp-block-columns.is-layout-constrained > .gi-shell.gi-article-body-shell {
	width: min(var(--gi-shell-narrow), calc(100vw - 1.5rem));
	max-width: min(var(--gi-shell-narrow), calc(100vw - 1.5rem)) !important;
}

.gi-kicker {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.45rem 0.8rem;
	border: 1px solid rgba(84, 35, 231, 0.22);
	border-radius: var(--gi-radius-pill);
	background: rgba(84, 35, 231, 0.08);
	color: var(--gi-accent-strong);
	font-size: 0.76rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.gi-button-row,
.wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
}

.site-header__cta,
.site-footer__cta,
.wp-block-button__link,
.wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.5rem;
	padding: 0.95rem 1.5rem;
	border: 1px solid transparent;
	border-radius: var(--gi-radius-pill);
	background: linear-gradient(180deg, #5d2ef0 0%, #4b1ed1 100%);
	box-shadow: 0 12px 24px rgba(84, 35, 231, 0.22);
	color: #fff;
	font-weight: 700;
	line-height: 1;
	transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
}

.site-header__cta:hover,
.site-footer__cta:hover,
.wp-block-button__link:hover,
.wp-element-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 32px rgba(84, 35, 231, 0.3);
	color: #fff;
}

.site-header__secondary-link,
.wp-block-button.is-style-outline .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.5rem;
	padding: 0.95rem 1.3rem;
	border: 2px solid var(--gi-ink);
	border-radius: var(--gi-radius-pill);
	background: #fff;
	color: var(--gi-ink);
	font-weight: 700;
}

.site-header__secondary-link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	border-color: var(--gi-accent);
	background: rgba(84, 35, 231, 0.06);
	color: var(--gi-accent-strong);
}

.wp-block-button.is-style-outline .wp-block-button__link {
	box-shadow: none;
}

.site-frame {
	min-height: 100vh;
}

.site-main {
	position: relative;
	z-index: 1;
}

.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 200;
	padding: 0;
	background: transparent;
	transition: padding 0.25s ease;
}

.admin-bar .site-header {
	top: 32px;
}

.site-header__inner {
	display: flex;
	align-items: center;
	gap: 0.95rem;
	min-height: 4.25rem;
	padding: 0.4rem 0.5rem 0.4rem 0.9rem;
	border: 1px solid rgba(227, 227, 227, 0.96);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: var(--gi-shadow-xs);
}

.site-header.is-scrolled .site-header__inner {
	border-color: rgba(12, 12, 32, 0.12);
	box-shadow: var(--gi-shadow-sm);
	background: #fff;
}

.site-header__brand {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	align-self: center;
	min-width: 0;
	max-width: min(100%, 16rem);
}

.site-brand {
	display: inline-flex;
	align-items: center;
	gap: 0.85rem;
	line-height: 1;
	color: var(--gi-ink);
	font-weight: 700;
	letter-spacing: -0.03em;
}

.site-brand--logo {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0;
	max-width: 100%;
}

.site-brand__image,
.site-brand--logo .custom-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: clamp(1.55rem, 2.1vw, 2.2rem);
	object-fit: contain;
	vertical-align: middle;
}

.site-brand:hover {
	color: var(--gi-ink);
}

.site-brand__mark {
	display: inline-flex;
	width: 1.35rem;
	height: 1.35rem;
	border-radius: 0.5rem;
	background:
		radial-gradient(circle at 30% 22%, rgba(223, 250, 75, 0.6), transparent 46%),
		linear-gradient(135deg, #7d5df7 0%, #5423e7 58%, #0c0c20 100%);
	box-shadow: 0 10px 24px rgba(84, 35, 231, 0.26);
}

.site-brand__name {
	font-size: 1rem;
}

@media (max-width: 781px) {
	.site-header__brand {
		max-width: min(100%, 12.4rem);
	}

	.site-brand__image,
	.site-brand--logo .custom-logo {
		max-height: 1.78rem;
	}
}

.site-navigation {
	display: none;
	flex: 1 1 auto;
	min-width: 0;
	justify-content: flex-start;
}

.site-menu,
.mobile-menu__list,
.site-footer__menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-menu {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}

.site-menu > li {
	position: relative;
	flex: 0 1 auto;
}

.site-menu a,
.mobile-menu__list a,
.site-footer__menu a {
	color: var(--gi-ink-soft);
	font-weight: 500;
}

.site-menu > li > a {
	display: inline-flex;
	align-items: center;
	min-height: 2.45rem;
	padding: 0.45rem 0.72rem;
	border-radius: var(--gi-radius-pill);
	font-size: 0.9rem;
	font-weight: 600;
	color: #0f1026;
	line-height: 1.2;
	letter-spacing: -0.01em;
	white-space: nowrap;
	transition: color 0.2s ease, background-color 0.2s ease;
}

.site-menu > .current-menu-item > a,
.site-menu > .current-menu-parent > a,
.site-menu > .current-menu-ancestor > a {
	color: var(--gi-ink);
	background: rgba(84, 35, 231, 0.08);
}

.site-menu .menu-item-has-children > a {
	gap: 0.45rem;
}

.site-menu .menu-item-has-children > a::after {
	content: "";
	width: 0.42rem;
	height: 0.42rem;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg) translateY(-1px);
	opacity: 0.55;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

.site-menu > li.site-menu__item--mega {
	position: relative;
}

.site-menu > li.site-menu__item--mega::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	height: 14px;
	z-index: 10;
}

.site-menu > li.site-menu__item--mega > .site-mega-panel {
	position: absolute;
	top: calc(100% + 12px);
	left: 50%;
	z-index: 1000;
	width: clamp(30rem, 54vw, 46rem);
	padding: 1rem;
	margin: 0;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: var(--gi-radius-lg);
	background: #fff;
	box-shadow: 0 20px 42px rgba(12, 16, 35, 0.15), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
	display: grid;
	gap: 0.8rem;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateX(-50%) translateY(8px);
	transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.site-mega-panel__heading {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gi-text-soft);
	text-align: left;
}

.site-mega-panel__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.site-mega-panel__item {
	margin: 0;
}

.site-mega-panel__link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 0.22rem;
	min-height: 4rem;
	padding: 0.86rem 0.92rem;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: var(--gi-radius-sm);
	background: linear-gradient(180deg, #fff 0%, #fcfcff 100%);
	color: var(--gi-ink);
	text-align: left;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.site-mega-panel__title {
	display: block;
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--gi-ink);
	line-height: 1.35;
}

.site-mega-panel__description {
	display: block;
	font-size: 0.82rem;
	line-height: 1.45;
	color: var(--gi-text-soft);
}

.site-mega-panel__link:hover,
.site-mega-panel__item.current-menu-item > .site-mega-panel__link,
.site-mega-panel__item.current-menu-parent > .site-mega-panel__link,
.site-mega-panel__item.current-menu-ancestor > .site-mega-panel__link {
	border-color: rgba(166, 150, 236, 0.78);
	background: rgba(84, 35, 231, 0.06);
	box-shadow: 0 12px 24px rgba(84, 35, 231, 0.12);
	transform: translateY(-1px);
}

.site-menu > li.site-menu__item--mega:hover > .site-mega-panel,
.site-menu > li.site-menu__item--mega:focus-within > .site-mega-panel,
.site-menu > li.site-menu__item--mega.is-open > .site-mega-panel {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}

.site-menu > li.site-menu__item--mega:hover > a::after,
.site-menu > li.site-menu__item--mega:focus-within > a::after,
.site-menu > li.site-menu__item--mega.is-open > a::after {
	transform: rotate(-135deg) translateY(-1px);
	opacity: 0.9;
}

.site-menu > li:not(.site-menu__item--mega) > .sub-menu {
	position: absolute;
	top: calc(100% + 0.8rem);
	left: 50%;
	z-index: 20;
	min-width: 16.25rem;
	padding: 0.55rem;
	margin: 0;
	list-style: none;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: var(--gi-radius-md);
	background: #fff;
	box-shadow: var(--gi-shadow-sm);
	display: grid;
	gap: 0.2rem;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate(-50%, 0.4rem);
	transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.site-menu > li:not(.site-menu__item--mega) > .sub-menu a {
	display: flex;
	align-items: center;
	min-height: 2.8rem;
	padding: 0.8rem 0.95rem;
	border-radius: var(--gi-radius-sm);
	font-size: 0.92rem;
	line-height: 1.4;
	white-space: normal;
}

.site-menu > li:not(.site-menu__item--mega) > .sub-menu a:hover,
.site-menu > li:not(.site-menu__item--mega) > .sub-menu .current-menu-item > a {
	background: rgba(84, 35, 231, 0.08);
	color: var(--gi-ink);
}

.site-menu > li:not(.site-menu__item--mega):hover > .sub-menu,
.site-menu > li:not(.site-menu__item--mega):focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate(-50%, 0);
}

@media (min-width: 782px) and (max-width: 1140px) {
	.site-menu > li.site-menu__item--mega > .site-mega-panel {
		width: min(36rem, calc(100vw - 4rem));
	}

	.site-mega-panel__list {
		grid-template-columns: minmax(0, 1fr);
	}
}

.site-menu a:hover,
.mobile-menu__list a:hover,
.site-footer__menu a:hover {
	color: var(--gi-accent-strong);
}

.site-menu > li > a:hover,
.site-menu > li > a:focus-visible {
	background: rgba(84, 35, 231, 0.08);
	color: #0f1026;
}

.site-header__actions {
	display: none;
	align-items: center;
	flex: 0 0 auto;
	gap: 0.62rem;
	margin-left: clamp(0.15rem, 0.8vw, 0.7rem);
}

.site-header__actions .site-header__secondary-link,
.site-header__actions .site-header__cta {
	min-height: 2.95rem;
	padding: 0.72rem 1.22rem;
	font-size: 0.9rem;
}

.site-nav-toggle,
.mobile-menu__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 6px 16px rgba(12, 12, 32, 0.08);
}

.site-nav-toggle span,
.mobile-menu__close span {
	display: block;
	width: 1rem;
	height: 2px;
	border-radius: 999px;
	background: var(--gi-ink);
}

.site-nav-toggle {
	flex-direction: column;
	gap: 0.28rem;
	margin-left: auto;
}

.mobile-menu {
	position: fixed;
	inset: 0;
	z-index: 120;
	padding:
		max(0.85rem, env(safe-area-inset-top))
		max(0.75rem, env(safe-area-inset-right))
		max(0.85rem, env(safe-area-inset-bottom))
		max(0.75rem, env(safe-area-inset-left));
	background: rgba(5, 5, 9, 0.36);
	overflow: hidden;
}

.mobile-menu[hidden] {
	display: none;
}

.mobile-menu__inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	max-height: 100%;
	padding: 1rem;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: var(--gi-radius-lg);
	background: #fff;
	box-shadow: var(--gi-shadow-lg);
	overflow: hidden;
}

.mobile-menu__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.mobile-menu__close {
	position: relative;
}

.mobile-menu__close span {
	position: absolute;
}

.mobile-menu__close span:first-child {
	transform: rotate(45deg);
}

.mobile-menu__close span:last-child {
	transform: rotate(-45deg);
}

.mobile-menu__body {
	flex: 1 1 auto;
	min-height: 0;
	margin-top: 1rem;
	padding-right: 0.2rem;
	padding-bottom: max(0.35rem, env(safe-area-inset-bottom));
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.mobile-menu__nav {
	margin-top: 0;
	min-width: 0;
}

.mobile-menu__list {
	display: grid;
	gap: 1.05rem;
	min-width: 0;
}

.mobile-menu__list li {
	min-width: 0;
}

.mobile-menu__list .sub-menu {
	display: grid;
	gap: 0.7rem;
	padding: 0.75rem 0 0 1rem;
	margin: 0;
	list-style: none;
	min-width: 0;
}

.mobile-menu.mobile-menu--enhanced .mobile-menu__list .menu-item-has-children {
	position: relative;
}

.mobile-menu.mobile-menu--enhanced .mobile-menu__list .menu-item-has-children > a {
	padding-right: 3.5rem;
}

.mobile-menu.mobile-menu--enhanced .mobile-menu__list .menu-item-has-children > .sub-menu {
	display: none;
	padding-top: 0.55rem;
	padding-left: 0.72rem;
}

.mobile-menu.mobile-menu--enhanced .mobile-menu__list .menu-item-has-children.is-open > .sub-menu {
	display: grid;
}

.mobile-submenu-toggle {
	position: absolute;
	top: 0.54rem;
	right: 0.56rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.3rem;
	height: 2.3rem;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: 999px;
	background: #fff;
	color: var(--gi-ink);
}

.mobile-submenu-toggle span {
	display: block;
	width: 0.48rem;
	height: 0.48rem;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg) translateY(-1px);
	transition: transform 0.2s ease;
}

.mobile-menu.mobile-menu--enhanced .mobile-menu__list .menu-item-has-children.is-open > .mobile-submenu-toggle span {
	transform: rotate(-135deg) translateY(-1px);
}

.mobile-menu__list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.95rem 1rem;
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: var(--gi-radius-sm);
	background: #fff;
	font-size: 1.05rem;
	min-width: 0;
	overflow-wrap: anywhere;
}

.mobile-menu__cta-group {
	margin-top: 1.2rem;
	display: grid;
	gap: 1rem;
	padding-top: 1.2rem;
	border-top: 1px solid rgba(227, 227, 227, 1);
}

.mobile-menu__cta-group p {
	color: var(--gi-text-soft);
}

.site-footer {
	margin-top: 0;
	padding: 0 0 1.8rem;
	background: #000;
	border-top: 0;
	color: rgba(255, 255, 255, 0.84);
}

.site-footer__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(1.5rem, 2.6vw, 2.2rem);
	max-width: 80rem;
	margin-inline: auto;
	padding-top: clamp(2.25rem, 4vw, 3.2rem);
	border-top: 1px solid rgba(46, 46, 46, 1);
}

.site-footer__column {
	display: grid;
	gap: 0.95rem;
	min-width: 0;
	align-content: start;
}

.site-footer__column--intro {
	gap: 1.2rem;
}

.site-footer__brand {
	display: inline-flex;
	width: fit-content;
	color: #fff;
	font-size: clamp(1.2rem, 1.4vw, 1.45rem);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.site-footer__brand:hover {
	color: #fff;
}

.site-footer__statement {
	max-width: 34ch;
	font-size: 0.98rem;
	line-height: 1.58;
	color: rgba(170, 170, 170, 0.94);
}

.site-footer__cta {
	width: fit-content;
	background: linear-gradient(180deg, #6b42ef 0%, #5423e7 100%);
	box-shadow: 0 14px 28px rgba(84, 35, 231, 0.28);
}

.site-footer__column h2 {
	font-size: 0.84rem;
	letter-spacing: -0.01em;
	text-transform: none;
	color: rgba(205, 205, 205, 0.95);
}

.site-footer__column--menu h2 {
	color: #fff;
	font-weight: 700;
	font-size: 0.95rem;
}

.site-footer__menu {
	display: grid;
	gap: 0.72rem;
}

.site-footer__menu a,
.site-footer__legal a {
	color: rgba(135, 135, 135, 1);
	font-size: 1rem;
	line-height: 1.45;
	font-weight: 500;
}

.site-footer__menu a:hover,
.site-footer__legal a:hover {
	color: #fff;
}

.site-footer__menu:empty {
	display: none;
}

.site-footer__menu--main {
	grid-template-columns: repeat(auto-fill, minmax(11.5rem, 1fr));
	column-gap: clamp(1rem, 2vw, 1.75rem);
}

.site-footer__bottom {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	max-width: 80rem;
	margin-inline: auto;
	margin-top: 2.7rem;
	padding-top: 1.8rem;
	border-top: 1px solid rgba(46, 46, 46, 1);
	font-size: 0.88rem;
	color: rgba(134, 134, 134, 0.95);
}

.site-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: 1.6rem;
}

.gi-page-header,
.gi-archive-intro {
	position: relative;
	padding: calc(var(--gi-section-space) + 1.25rem) 0 clamp(2.25rem, 4vw, 3.4rem);
}

.gi-blog-hero {
	padding: calc(var(--gi-section-space) + 1.25rem) 0 clamp(2.25rem, 4vw, 3.4rem);
}

.gi-blog-hero__grid {
	display: grid;
	gap: clamp(1.4rem, 3vw, 2.25rem);
	align-items: start;
}

.gi-blog-hero__intro {
	display: grid;
	gap: 0.95rem;
	padding: 0;
}

.site-main--blog .gi-blog-hero__intro.gi-archive-intro {
	padding: 0;
	align-self: start;
}

.gi-page-header .gi-shell,
.gi-archive-intro .gi-shell {
	display: grid;
	gap: 0.95rem;
}

.gi-archive-intro .gi-shell,
.gi-page-header .gi-shell {
	padding: clamp(1.25rem, 2.1vw, 2rem);
	border: 1px solid rgba(227, 227, 227, 1);
	border-radius: var(--gi-radius-lg);
	background: #fff;
	box-shadow: var(--gi-shadow-xs);
}

.gi-page-header p,
.gi-archive-intro p {
	max-width: 36rem;
	font-size: 1rem;
	color: var(--gi-text);
	line-height: 1.7;
}

.gi-page-header--article p,
.gi-page-header--case p {
	max-width: 42rem;
}

.gi-page-header--article {
	padding-bottom: clamp(1.8rem, 3.4vw, 3rem);
}

.gi-page-header--article .gi-article-header {
	width: var(--gi-article-header-max);
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	justify-items: center;
	text-align: center;
}

.gi-article-header__meta {
	display: grid;
	gap: 0.7rem;
	justify-items: center;
	width: min(100%, 48rem);
}

.gi-page-header--article .breadcrumbs {
	margin-bottom: 0;
}

.gi-page-header--article .breadcrumbs__list {
	justify-content: center;
	text-align: center;
}

.entry-meta--article {
	margin-bottom: 0;
	justify-items: center;
}

.entry-meta--article .gi-kicker {
	justify-self: center;
}

.entry-meta--article .entry-meta__line {
	justify-content: center;
}

.gi-article-header__title {
	max-width: 20ch;
	margin: 0;
	text-wrap: balance;
}

.gi-article-header__lead {
	max-width: 62ch;
	margin: 0;
	font-size: clamp(1.04rem, 1.2vw, 1.16rem);
	line-height: 1.75;
	color: var(--gi-text);
}

.gi-article-header__media {
	width: min(100%, 58rem);
	margin: clamp(0.35rem, 1.4vw, 0.9rem) 0 0;
}

.gi-article-header__image {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--gi-radius-md);
	box-shadow: var(--gi-shadow-md);
	border: 1px solid rgba(227, 227, 227, 1);
}

.gi-blog-hero__intro p {
	max-width: 32rem;
}

.breadcrumbs {
	margin-bottom: 0.45rem;
}

.breadcrumbs__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.55rem;
	padding: 0;
	margin: 0;
	list-style: none;
	font-size: 0.9rem;
	color: var(--gi-text-soft);
}

.breadcrumbs__item {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
}

.breadcrumbs__item:not(:last-child)::after {
	content: "/";
	color: rgba(118, 118, 118, 0.5);
}

.breadcrumbs a,
.breadcrumbs span {
	color: inherit;
}

.entry-meta {
	display: grid;
	gap: 0.75rem;
	margin-bottom: 1.5rem;
}

.entry-meta__line {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
	font-size: 0.95rem;
	color: var(--gi-text-soft);
}

.entry-content--article,
.entry-content--case {
	padding-bottom: var(--gi-space-8);
}

.entry-content--article {
	padding-top: clamp(0.5rem, 1.1vw, 1rem);
}

.entry-content--article > .gi-shell.gi-article-body-shell {
	text-align: left;
}

.entry-content--article > .gi-shell > *,
.entry-content--article .wp-block-group > .wp-block-group__inner-container > *,
.entry-content--article .wp-block-group.is-layout-constrained > * {
	max-width: 100%;
}

.entry-content--article h2,
.entry-content--article h3,
.entry-content--article h4,
.entry-content--article h5 {
	margin-top: 2.5rem;
	margin-bottom: 0.9rem;
}

.entry-content--article p + p,
.entry-content--article ul + p,
.entry-content--article p + ul,
.entry-content--article p + ol {
	margin-top: 1.15rem;
}

.entry-content--article ul,
.entry-content--article ol {
	margin: 1.15rem 0 0;
	color: var(--gi-text);
}

.entry-content--article .wp-block-table,
.entry-content--article .table-wrapper {
	margin: 1.45rem 0 0;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-md);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 242, 255, 0.84));
	box-shadow: var(--gi-shadow-xs);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.entry-content--article .wp-block-table table,
.entry-content--article .table-wrapper table,
.entry-content--article table {
	width: 100%;
	min-width: 36rem;
	margin: 0;
	border-collapse: separate;
	border-spacing: 0;
	background: transparent;
}

.entry-content--article .wp-block-table th,
.entry-content--article .wp-block-table td,
.entry-content--article .table-wrapper th,
.entry-content--article .table-wrapper td,
.entry-content--article table th,
.entry-content--article table td {
	padding: clamp(0.82rem, 1.2vw, 1.05rem) clamp(0.88rem, 1.3vw, 1.2rem);
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid rgba(145, 152, 184, 0.3);
}

.entry-content--article .wp-block-table th,
.entry-content--article .table-wrapper th,
.entry-content--article table th {
	background: rgba(84, 35, 231, 0.08);
	color: var(--gi-ink);
	font-weight: 700;
	letter-spacing: -0.01em;
}

.entry-content--article .wp-block-table td + td,
.entry-content--article .wp-block-table th + th,
.entry-content--article .table-wrapper td + td,
.entry-content--article .table-wrapper th + th,
.entry-content--article table td + td,
.entry-content--article table th + th {
	border-left: 1px solid rgba(145, 152, 184, 0.24);
}

.entry-content--article .wp-block-table tbody tr:nth-child(even) td,
.entry-content--article .table-wrapper tbody tr:nth-child(even) td,
.entry-content--article table tbody tr:nth-child(even) td {
	background: rgba(84, 35, 231, 0.03);
}

.entry-content--article .wp-block-table tbody tr:hover td,
.entry-content--article .table-wrapper tbody tr:hover td,
.entry-content--article table tbody tr:hover td {
	background: rgba(84, 35, 231, 0.06);
}

.entry-content--article .wp-block-table tbody tr:last-child td,
.entry-content--article .table-wrapper tbody tr:last-child td,
.entry-content--article table tbody tr:last-child td {
	border-bottom: 0;
}

.entry-content--article .wp-block-table figcaption,
.entry-content--article table caption {
	margin-top: 0.72rem;
	padding-inline: 0.2rem;
	font-size: 0.86rem;
	color: var(--gi-text-soft);
}

.entry-content--article blockquote,
.entry-content--case blockquote {
	margin: 2rem 0 1.75rem;
	padding: 1.6rem 1.8rem;
	border-left: 4px solid rgba(84, 35, 231, 0.32);
	border-radius: var(--gi-radius-sm);
	background: rgba(84, 35, 231, 0.06);
	color: var(--gi-ink-soft);
}

.entry-content--article :is(blockquote, .wp-block-quote) + :where(p, ul, ol, h2, h3, h4, h5, .wp-block-group),
.entry-content--case :is(blockquote, .wp-block-quote) + :where(p, ul, ol, h2, h3, h4, h5, .wp-block-group) {
	margin-top: 1.15rem;
}

.entry-content--article img,
.entry-content--case img {
	margin-top: 1.8rem;
	border-radius: var(--gi-radius-md);
	box-shadow: var(--gi-shadow-sm);
}

.gi-inline-cta {
	padding: 0 0 var(--gi-space-8);
}

.gi-inline-cta__inner,
.featured-post__card {
	display: grid;
	gap: 1rem;
	padding: clamp(1.45rem, 2.4vw, 2.1rem);
	border: 1px solid rgba(84, 35, 231, 0.2);
	border-radius: var(--gi-radius-lg);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 242, 255, 0.94));
	box-shadow: var(--gi-shadow-sm);
}

.featured-post {
	margin-bottom: var(--gi-space-7);
}

.featured-post__copy {
	display: grid;
	gap: 0.9rem;
}

.featured-post__copy h2 {
	font-size: clamp(1.55rem, 2vw, 2rem);
	max-width: 50ch;
}

.featured-post__copy p {
	max-width: 30rem;
}

.featured-post__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
	color: var(--gi-text-soft);
}

.gi-post-grid,
.related-posts .gi-post-grid {
	display: grid;
	gap: clamp(1rem, 1.8vw, 1.25rem);
}

.site-main--blog .gi-post-grid-wrap,
.site-main--archive .gi-post-grid-wrap,
.site-main--search .gi-post-grid-wrap {
	display: grid;
	gap: clamp(1.1rem, 2.4vw, 1.9rem);
	padding-bottom: clamp(2.8rem, 5vw, 4rem);
}

.site-main--blog .gi-post-grid,
.site-main--archive .gi-post-grid,
.site-main--search .gi-post-grid {
	gap: clamp(1rem, 2vw, 1.5rem);
}

.site-main--blog .navigation.pagination,
.site-main--archive .navigation.pagination,
.site-main--search .navigation.pagination {
	margin-top: clamp(1.2rem, 2.4vw, 2rem);
	display: flex;
	justify-content: center;
}

body.author .site-main--archive .navigation.pagination {
	margin-bottom: clamp(2.2rem, 4.5vw, 3.6rem);
}

.site-main--blog .navigation.pagination .nav-links,
.site-main--archive .navigation.pagination .nav-links,
.site-main--search .navigation.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
}

.site-main--blog .navigation.pagination .page-numbers,
.site-main--archive .navigation.pagination .page-numbers,
.site-main--search .navigation.pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.55rem;
	height: 2.55rem;
	padding: 0.5rem 0.82rem;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-pill);
	background: #fff;
	color: var(--gi-ink);
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.site-main--blog .navigation.pagination a.page-numbers:hover,
.site-main--archive .navigation.pagination a.page-numbers:hover,
.site-main--search .navigation.pagination a.page-numbers:hover {
	border-color: rgba(84, 35, 231, 0.35);
	background: rgba(84, 35, 231, 0.07);
	color: var(--gi-accent-strong);
}

.site-main--blog .navigation.pagination .page-numbers:focus-visible,
.site-main--archive .navigation.pagination .page-numbers:focus-visible,
.site-main--search .navigation.pagination .page-numbers:focus-visible {
	outline: none;
	border-color: rgba(84, 35, 231, 0.5);
	box-shadow: 0 0 0 3px rgba(84, 35, 231, 0.18);
}

.site-main--blog .navigation.pagination .page-numbers.current,
.site-main--archive .navigation.pagination .page-numbers.current,
.site-main--search .navigation.pagination .page-numbers.current {
	border-color: var(--gi-accent);
	background: linear-gradient(180deg, #5d2ef0 0%, #4b1ed1 100%);
	color: #fff;
	box-shadow: 0 12px 24px rgba(84, 35, 231, 0.2);
}

.site-main--blog .navigation.pagination .page-numbers.prev,
.site-main--blog .navigation.pagination .page-numbers.next,
.site-main--archive .navigation.pagination .page-numbers.prev,
.site-main--archive .navigation.pagination .page-numbers.next,
.site-main--search .navigation.pagination .page-numbers.prev,
.site-main--search .navigation.pagination .page-numbers.next {
	padding-inline: 1rem;
	min-width: auto;
}

.site-main--blog .navigation.pagination span.page-numbers.prev,
.site-main--blog .navigation.pagination span.page-numbers.next,
.site-main--archive .navigation.pagination span.page-numbers.prev,
.site-main--archive .navigation.pagination span.page-numbers.next,
.site-main--search .navigation.pagination span.page-numbers.prev,
.site-main--search .navigation.pagination span.page-numbers.next {
	opacity: 0.45;
	pointer-events: none;
}

.site-main--blog .navigation.pagination .page-numbers.dots,
.site-main--archive .navigation.pagination .page-numbers.dots,
.site-main--search .navigation.pagination .page-numbers.dots {
	min-width: auto;
	padding-inline: 0.25rem;
	border: 0;
	background: transparent;
	color: var(--gi-text-soft);
}

.site-main--single {
	--gi-article-header-max: min(1120px, calc(100vw - 1.5rem));
}

.site-main--single .gi-page-header--article .gi-article-header {
	width: min(100%, var(--gi-article-header-max));
}

.site-main--single .gi-article-header__meta {
	width: min(100%, 54rem);
}

.site-main--single .gi-article-header__title {
	max-width: min(24ch, 100%);
}

.site-main--single .gi-article-header__lead {
	max-width: 68ch;
}

.gi-card {
	position: relative;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-md);
	background: #fff;
	box-shadow: var(--gi-shadow-xs);
	overflow: hidden;
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.gi-card__link {
	display: block;
	height: 100%;
	color: inherit;
}

.gi-card__link:hover {
	color: inherit;
}

.gi-card__media img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.gi-card__body {
	display: grid;
	gap: 0.75rem;
	padding: 1.25rem 1.25rem 1.35rem;
}

.gi-card__label-group {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.8rem;
}

.gi-card__label,
.gi-card__meta {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.gi-card__label {
	color: var(--gi-accent-strong);
}

.gi-card__meta {
	color: var(--gi-text-soft);
}

.gi-card__title {
	font-size: clamp(1.08rem, 1vw, 1.24rem);
	line-height: 1.16;
}

.gi-card__description {
	color: var(--gi-text);
	font-size: 0.95rem;
	line-height: 1.66;
}

.gi-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	color: var(--gi-ink);
	font-weight: 600;
}

.gi-card__cta::after {
	content: "";
	width: 0.42rem;
	height: 0.42rem;
	border-top: 1.5px solid currentColor;
	border-right: 1.5px solid currentColor;
	transform: rotate(45deg);
}

.gi-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--gi-shadow-sm);
	border-color: var(--gi-border-strong);
}

.gi-case-single .entry-content--case > .gi-shell.gi-article-body-shell {
	text-align: left;
}

.gi-case-single .entry-content--case > .gi-shell.gi-article-body-shell > :first-child {
	margin-top: 0;
}

.gi-case-archive .gi-case-archive__empty {
	grid-column: 1 / -1;
	max-width: 36rem;
	color: var(--gi-text);
	line-height: 1.7;
}

.gi-case-archive .gi-case-archive__support {
	margin-top: clamp(1.5rem, 3vw, 2.4rem);
}

.gi-reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 0.55s ease, transform 0.55s ease;
}

.gi-reveal.is-visible {
	opacity: 1;
	transform: none;
}

.gi-section {
	padding: var(--gi-section-space) 0;
}

.gi-section-heading {
	display: grid;
	gap: 0.7rem;
	max-width: 36rem;
	margin-bottom: clamp(1.35rem, 2.4vw, 2rem);
}

.gi-section-heading p {
	color: var(--gi-text);
	max-width: 32rem;
	font-size: 0.98rem;
	line-height: 1.68;
}

.gi-hero {
	position: relative;
	padding: clamp(5.2rem, 7vw, 7rem) 0 var(--gi-section-space);
}

.gi-hero::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: min(40rem, 100%);
	background:
		radial-gradient(circle at 12% 24%, rgba(84, 35, 231, 0.1), transparent 38%),
		radial-gradient(circle at 88% 12%, rgba(84, 35, 231, 0.07), transparent 24%);
	pointer-events: none;
}

.gi-hero__inner,
.gi-service-page,
.gi-case-study-layout {
	position: relative;
	display: grid;
	gap: clamp(2rem, 4vw, 3.1rem);
}

.gi-hero__content {
	display: grid;
	gap: 0.95rem;
}

.gi-hero__title {
	font-size: var(--gi-display);
	max-width: 10.5ch;
}

.gi-hero__lead {
	max-width: 31rem;
	font-size: clamp(1rem, 1.1vw, 1.08rem);
	color: var(--gi-text);
	line-height: 1.68;
}

.gi-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
	margin-top: 0.1rem;
}

.gi-hero__meta {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
	margin-top: 0.55rem;
}

.gi-metric-chip,
.gi-signal-card,
.gi-proof-chip,
.gi-panel {
	padding: 1rem 1.05rem;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-sm);
	background: #fff;
	box-shadow: var(--gi-shadow-xs);
}

.gi-metric-chip strong,
.gi-panel strong {
	display: block;
	margin-bottom: 0.25rem;
	color: var(--gi-ink);
	font-size: 1.08rem;
}

.gi-signal-card {
	display: grid;
	gap: 0.7rem;
}

.gi-signal-card__label {
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--gi-accent-strong);
}

.gi-signal-card__value {
	color: var(--gi-ink);
	font-size: 1.02rem;
	font-weight: 600;
}

.gi-grid-2,
.gi-grid-3,
.gi-grid-4,
.gi-card-grid,
.gi-process-grid,
.gi-metric-grid,
.gi-story-stats,
.gi-proof-grid,
.gi-related-grid {
	display: grid;
	gap: clamp(1rem, 1.7vw, 1.2rem);
	align-items: stretch;
}

.gi-grid-2,
.gi-grid-3,
.gi-grid-4,
.gi-card-grid,
.gi-process-grid,
.gi-metric-grid,
.gi-story-stats,
.gi-proof-grid,
.gi-related-grid,
.gi-post-grid,
.gi-query-grid .wp-block-post-template,
.wp-block-query .wp-block-post-template {
	grid-template-columns: repeat(auto-fit, minmax(min(var(--gi-grid-min, var(--gi-grid-min-3)), 100%), 1fr));
}

.gi-grid-2 {
	--gi-grid-min: var(--gi-grid-min-2);
}

.gi-grid-3,
.gi-card-grid,
.gi-process-grid,
.gi-metric-grid,
.gi-proof-grid,
.gi-related-grid,
.gi-post-grid,
.gi-query-grid .wp-block-post-template,
.wp-block-query .wp-block-post-template {
	--gi-grid-min: var(--gi-grid-min-3);
}

.gi-grid-4 {
	--gi-grid-min: var(--gi-grid-min-4);
}

.gi-story-stats {
	--gi-grid-min: var(--gi-grid-min-stat);
}

.wp-block-columns.gi-grid-2,
.wp-block-columns.gi-grid-3,
.wp-block-columns.gi-grid-4,
.wp-block-columns.gi-card-grid,
.wp-block-columns.gi-process-grid,
.wp-block-columns.gi-metric-grid,
.wp-block-columns.gi-story-stats,
.wp-block-columns.gi-proof-grid,
.wp-block-columns.gi-related-grid {
	display: grid;
}

.wp-block-columns.gi-grid-2 > .wp-block-column,
.wp-block-columns.gi-grid-3 > .wp-block-column,
.wp-block-columns.gi-grid-4 > .wp-block-column,
.wp-block-columns.gi-card-grid > .wp-block-column,
.wp-block-columns.gi-process-grid > .wp-block-column,
.wp-block-columns.gi-metric-grid > .wp-block-column,
.wp-block-columns.gi-story-stats > .wp-block-column,
.wp-block-columns.gi-proof-grid > .wp-block-column,
.wp-block-columns.gi-related-grid > .wp-block-column,
.gi-grid-2 > *,
.gi-grid-3 > *,
.gi-grid-4 > *,
.gi-card-grid > *,
.gi-process-grid > *,
.gi-metric-grid > *,
.gi-story-stats > *,
.gi-proof-grid > *,
.gi-related-grid > *,
.gi-post-grid > *,
.gi-query-grid .wp-block-post-template > *,
.wp-block-query .wp-block-post-template > * {
	min-width: 0;
	margin: 0;
}

.gi-card-grid > * {
	height: 100%;
}

@media (min-width: 768px) and (max-width: 1179.98px) {
	.gi-process-grid--four {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1180px) {
	.gi-process-grid--four {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.gi-trust-strip {
	display: grid;
	gap: 0.85rem;
	padding: 1.15rem 1.25rem;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-lg);
	background: #fff;
	box-shadow: var(--gi-shadow-xs);
}

.gi-trust-strip__row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.gi-trust-pill {
	padding: 0.6rem 0.85rem;
	border-radius: var(--gi-radius-pill);
	background: var(--gi-surface-soft);
	color: var(--gi-ink-soft);
	font-size: 0.89rem;
	font-weight: 600;
}

.gi-process-step,
.gi-benefit-card,
.gi-service-card,
.gi-proof-card,
.gi-faq-card,
.gi-cta-card {
	height: 100%;
	padding: clamp(1.1rem, 1.4vw, 1.45rem);
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-md);
	background: #fff;
	box-shadow: var(--gi-shadow-xs);
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.gi-process-step {
	display: grid;
	gap: 0.8rem;
}

.gi-benefit-card,
.gi-service-card,
.gi-proof-card,
.gi-faq-card,
.gi-cta-card {
	display: grid;
	align-content: start;
	gap: 0.55rem;
}

.gi-process-step:hover,
.gi-benefit-card:hover,
.gi-service-card:hover,
.gi-proof-card:hover,
.gi-faq-card:hover,
.gi-cta-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--gi-shadow-sm);
	border-color: var(--gi-border-strong);
}

.gi-process-step__index {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.2rem;
	height: 2.2rem;
	border-radius: 999px;
	background: var(--gi-accent-soft);
	color: var(--gi-accent-strong);
	font-size: 0.86rem;
	font-weight: 700;
}

.gi-service-card h3,
.gi-benefit-card h3,
.gi-proof-card h3,
.gi-cta-card h3 {
	margin-bottom: 0.55rem;
}

.gi-service-card__list,
.gi-check-list {
	display: grid;
	gap: 0.7rem;
	padding: 0;
	margin: 0.95rem 0 0;
	list-style: none;
}

.gi-service-card__list li,
.gi-check-list li {
	display: flex;
	gap: 0.75rem;
	align-items: flex-start;
}

.gi-service-card__list li::before,
.gi-check-list li::before {
	content: "";
	display: inline-flex;
	width: 0.55rem;
	height: 0.55rem;
	margin-top: 0.45rem;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--gi-teal), var(--gi-accent));
	box-shadow: 0 0 0 5px rgba(84, 35, 231, 0.09);
	flex: 0 0 auto;
}

.gi-proof-grid .gi-proof-card,
.gi-metric-grid .gi-panel {
	position: relative;
	overflow: hidden;
}

.gi-proof-card::after,
.gi-panel::after,
.featured-post__card::after {
	content: "";
	position: absolute;
	inset: auto -4rem -4rem auto;
	width: 10rem;
	height: 10rem;
	background: radial-gradient(circle, rgba(84, 35, 231, 0.12), transparent 68%);
	pointer-events: none;
}

.gi-metric-grid .gi-panel {
	padding: 1.2rem 1.2rem 1.3rem;
}

.gi-metric-grid .gi-panel p {
	color: var(--gi-text-soft);
}

.gi-story-stats {
	display: grid;
	gap: 0.9rem;
	padding-top: 0.9rem;
}

.gi-story-stat {
	padding: 0.85rem 0;
	border-top: 1px solid var(--gi-border);
}

.gi-story-stat strong {
	display: block;
	color: var(--gi-ink);
	font-size: 1.55rem;
}

.gi-faq {
	display: grid;
	gap: 0.9rem;
}

.gi-faq details,
.wp-block-details {
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-sm);
	background: #fff;
	box-shadow: var(--gi-shadow-xs);
	overflow: clip;
}

.gi-faq summary,
.wp-block-details summary {
	padding: 1.05rem 1.15rem;
	font-weight: 600;
	color: var(--gi-ink);
	cursor: pointer;
	list-style: none;
}

.gi-faq details[open] summary,
.wp-block-details[open] summary {
	border-bottom: 1px solid var(--gi-border);
}

.gi-faq details > :not(summary),
.wp-block-details > :not(summary) {
	padding: 0 1.25rem 1.15rem;
}

.gi-final-cta,
.gi-cta-band {
	padding: var(--gi-section-space) 0;
}

.gi-cta-card {
	display: grid;
	gap: 1rem;
	border-color: rgba(84, 35, 231, 0.2);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 242, 255, 0.95));
}

.gi-service-page,
.gi-case-study-layout,
.entry-content--page > .wp-block-group,
.entry-content--case > .wp-block-group {
	padding-bottom: 0;
}

.entry-content--page > .wp-block-group.alignfull,
.entry-content--case > .wp-block-group.alignfull {
	padding-inline: 0;
}

.entry-content--page > .wp-block-group.gi-hero,
.entry-content--page > .wp-block-group.gi-section,
.entry-content--page > .wp-block-group.gi-final-cta,
.entry-content--page > .wp-block-group.gi-page-header,
.entry-content--page > .wp-block-group.gi-blog-hero,
.entry-content--case > .wp-block-group.gi-section,
.entry-content--case > .wp-block-group.gi-final-cta,
.entry-content--case > .wp-block-group.gi-page-header {
	width: 100%;
	max-width: none !important;
	margin-inline: 0;
}

.entry-content--page > .wp-block-group.gi-section > .gi-shell,
.entry-content--page > .wp-block-group.gi-final-cta > .gi-shell,
.entry-content--page > .wp-block-group.gi-page-header > .gi-shell,
.entry-content--page > .wp-block-group.gi-blog-hero > .gi-shell,
.entry-content--case > .wp-block-group.gi-section > .gi-shell,
.entry-content--case > .wp-block-group.gi-final-cta > .gi-shell,
.entry-content--case > .wp-block-group.gi-page-header > .gi-shell {
	width: min(var(--gi-shell), calc(100vw - 1.5rem));
	max-width: min(var(--gi-shell), calc(100vw - 1.5rem)) !important;
	margin-inline: auto !important;
}

.entry-content--page .alignfull,
.entry-content--case .alignfull,
.site-main--front .alignfull {
	margin-top: 0;
	margin-bottom: 0;
}

.entry-content--page .wp-block-group,
.entry-content--case .wp-block-group,
.site-main--front .wp-block-group {
	margin-top: 0;
	margin-bottom: 0;
}

.featured-post--hero {
	margin: 0;
}

.featured-post--hero .featured-post__card {
	height: 100%;
}

.gi-query-grid .wp-block-post-template,
.wp-block-query .wp-block-post-template {
	display: grid;
	gap: 1rem;
	padding: 0;
	margin: 0;
	list-style: none;
}

.gi-query-grid .wp-block-post-template > li,
.wp-block-query .wp-block-post-template > li {
	margin: 0;
	list-style: none;
}

.gi-query-grid .wp-block-post-date,
.wp-block-query .wp-block-post-date {
	color: var(--gi-text-soft);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.gi-query-grid .wp-block-post-title,
.wp-block-query .wp-block-post-title {
	margin: 0;
	font-size: 1.35rem;
}

.gi-query-grid .wp-block-post-title a,
.wp-block-query .wp-block-post-title a {
	color: var(--gi-ink);
}

.gi-query-grid .wp-block-post-title a:hover,
.wp-block-query .wp-block-post-title a:hover {
	color: var(--gi-accent-strong);
}

.gi-query-grid .wp-block-post-excerpt,
.wp-block-query .wp-block-post-excerpt {
	color: var(--gi-text);
}

.gi-query-grid .wp-block-post-excerpt__more-link,
.wp-block-query .wp-block-post-excerpt__more-link {
	display: inline-flex;
	margin-top: 0.8rem;
	color: var(--gi-ink);
	font-weight: 600;
}

.gi-related-links,
.gi-tag-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.gi-related-links a,
.gi-tag-row a {
	display: inline-flex;
	align-items: center;
	padding: 0.7rem 0.95rem;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-pill);
	background: #fff;
	color: var(--gi-ink-soft);
	font-weight: 500;
}

.gi-related-links a:hover,
.gi-tag-row a:hover {
	border-color: rgba(84, 35, 231, 0.24);
	color: var(--gi-accent-strong);
}

.gi-post-grid-wrap,
.related-posts,
.related-posts--case {
	padding-bottom: var(--gi-space-8);
}

.gi-404 {
	padding: clamp(8rem, 16vw, 12rem) 0;
}

.gi-404__inner {
	display: grid;
	gap: 1.2rem;
	max-width: 40rem;
}

.wp-block-columns {
	gap: 1rem;
}

.wp-block-group.has-background,
.wp-block-cover,
.wp-block-media-text {
	border-radius: var(--gi-radius-md);
	overflow: clip;
}

.wp-block-separator {
	border-color: rgba(227, 227, 227, 1);
}

.wp-block-quote {
	margin: 2rem 0 1.75rem;
	padding: 1.6rem 1.8rem;
	border-left: 4px solid rgba(84, 35, 231, 0.24);
	background: rgba(84, 35, 231, 0.06);
	border-radius: var(--gi-radius-sm);
}

.wp-block-code,
code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
textarea,
select {
	width: 100%;
	padding: 0.95rem 1rem;
	border: 1px solid var(--gi-border);
	border-radius: var(--gi-radius-sm);
	background: #fff;
	color: var(--gi-ink);
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible,
button:focus-visible,
a:focus-visible,
summary:focus-visible {
	outline: 3px solid rgba(84, 35, 231, 0.24);
	outline-offset: 3px;
}

@media (min-width: 782px) {
	.site-navigation {
		display: flex;
		align-items: center;
	}

	.site-header__actions {
		display: flex;
	}

	.site-nav-toggle {
		display: none;
	}

	.site-footer__inner {
		grid-template-columns: minmax(0, 1.3fr) repeat(3, minmax(0, 1fr));
		column-gap: clamp(1.4rem, 2.1vw, 2.25rem);
	}

	.site-footer__inner--main-menu {
		grid-template-columns: minmax(0, 1.3fr) minmax(0, 2.15fr);
	}

	.site-footer__bottom,
	.gi-inline-cta__inner,
	.featured-post__card {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
	}

	.gi-hero__meta {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	:root {
		--gi-shell: min(1280px, calc(100vw - 2.5rem));
		--gi-article-header-max: min(1040px, calc(100vw - 2.5rem));
		--gi-article-reading-max: min(800px, calc(100vw - 2.5rem));
	}

	.site-footer__inner {
		grid-template-columns: minmax(0, 1.8fr) repeat(3, minmax(0, 1fr));
		column-gap: clamp(1.2rem, 1.7vw, 2rem);
		align-items: start;
	}

	.site-footer__inner--main-menu {
		grid-template-columns: minmax(0, 1.55fr) minmax(0, 2.35fr);
	}

	.gi-hero__inner,
	.gi-service-page,
	.gi-case-study-layout {
		grid-template-columns: minmax(0, 1.1fr) minmax(22rem, 0.9fr);
		align-items: start;
	}

	.gi-blog-hero__grid {
		grid-template-columns: minmax(0, 0.9fr) minmax(22rem, 1fr);
		align-items: start;
	}

	.site-main--blog .gi-blog-hero__intro {
		padding-top: clamp(0.15rem, 0.6vw, 0.4rem);
	}

	.site-main--blog .gi-post-grid,
	.site-main--archive .gi-post-grid,
	.site-main--search .gi-post-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.site-main--single {
		--gi-article-header-max: min(1180px, calc(100vw - 2.5rem));
		--gi-article-reading-max: min(820px, calc(100vw - 2.5rem));
	}

	.site-main--single .gi-article-header__title {
		max-width: min(26ch, 100%);
	}

	.gi-hero__content {
		padding-right: 2rem;
	}

	.gi-page-header,
	.gi-archive-intro {
		padding-top: calc(var(--gi-section-space) + 2rem);
	}
}

@media (min-width: 782px) and (max-width: 1179px) {
	.site-header__secondary-link {
		display: none;
	}
}

@media (min-width: 782px) and (max-width: 960px) {
	.site-menu {
		gap: 0.8rem;
	}

	.site-menu > li > a {
		font-size: 0.9rem;
	}

	.site-main--blog .gi-post-grid,
	.site-main--archive .gi-post-grid,
	.site-main--search .gi-post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 959px) {
	.gi-hero__title {
		max-width: 50ch;
	}

	.gi-blog-hero {
		padding-bottom: clamp(2rem, 4vw, 2.8rem);
	}
}

@media (max-width: 781px) {
	.admin-bar .site-header {
		top: 46px;
	}

	.site-header {
		padding-top: 0;
	}

	.site-header__inner {
		min-height: 3.55rem;
		padding: 0.5rem 0.7rem 0.5rem 0.85rem;
	}

	.site-footer__prelude-title {
		max-width: 50ch;
	}

	.site-footer__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-footer__column--intro {
		grid-column: span 2;
	}

	.site-nav-toggle,
	.mobile-menu__close {
		width: 2.8rem;
		height: 2.8rem;
	}

	.gi-page-header,
	.gi-archive-intro {
		padding-top: calc(var(--gi-section-space) + 1rem);
	}

	.gi-hero {
		padding-top: calc(var(--gi-section-space) + 1rem);
	}

	.gi-article-header__title {
		max-width: 16ch;
	}

	.site-main--blog .gi-post-grid,
	.site-main--archive .gi-post-grid,
	.site-main--search .gi-post-grid {
		grid-template-columns: 1fr;
	}

	.entry-meta--article .entry-meta__line {
		gap: 0.65rem;
	}

	.entry-content--article .wp-block-table table,
	.entry-content--article .table-wrapper table,
	.entry-content--article table {
		min-width: 32rem;
	}

	.entry-content--article .wp-block-table th,
	.entry-content--article .wp-block-table td,
	.entry-content--article .table-wrapper th,
	.entry-content--article .table-wrapper td,
	.entry-content--article table th,
	.entry-content--article table td {
		padding: 0.75rem 0.8rem;
		font-size: 0.93rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}

	.gi-reveal {
		opacity: 1;
		transform: none;
	}
}

/* -------------------------------------------------------------
   Footer Prelude Layer
-------------------------------------------------------------- */

.site-footer__prelude {
	display: grid;
	justify-items: center;
	gap: 1.3rem;
	padding: clamp(4.6rem, 9vw, 7.2rem) 0 clamp(3rem, 5vw, 4.8rem);
	text-align: center;
}

.site-footer__badge {
	width: 3.125rem;
	height: 3.125rem;
	border-radius: 999px;
	border: 1px solid rgba(149, 122, 255, 0.46);
	background:
		radial-gradient(circle at 30% 24%, rgba(223, 250, 75, 0.65), transparent 45%),
		linear-gradient(135deg, #7d5df7 0%, #5423e7 60%, #1f1443 100%);
	box-shadow: 0 12px 28px rgba(84, 35, 231, 0.34);
}

.site-footer__prelude-title {
	max-width: 16ch;
	color: #fff;
	font-size: clamp(2.05rem, 4.9vw, 3.6rem);
	line-height: 0.98;
	letter-spacing: -0.045em;
}

.site-footer__prelude-actions .site-footer__cta {
	min-height: 3.85rem;
	padding: 0.95rem 2.25rem;
	background: #dffa4b;
	border-color: #dffa4b;
	box-shadow: none;
	color: #0c0c20;
	font-size: 1.04rem;
	font-weight: 700;
}

.site-footer__prelude-actions .site-footer__cta:hover {
	background: #d2ec41;
	border-color: #d2ec41;
	color: #0c0c20;
	transform: none;
	box-shadow: none;
}

/* -------------------------------------------------------------
   Page-Specific Overrides: Landing Page (gi-page-id-2)
-------------------------------------------------------------- */

body.home.gi-page .site-header {
	padding: 0;
	background: transparent;
	border-bottom: 0;
	box-shadow: none;
}

body.home.gi-page .site-header .site-header__inner {
	min-height: 4.45rem;
	padding: 0.38rem 0.58rem 0.38rem 1rem;
	border: 1px solid rgba(218, 220, 232, 0.95);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 10px 26px rgba(12, 16, 35, 0.08);
}

body.home.gi-page .site-header.is-scrolled .site-header__inner {
	border-color: rgba(182, 186, 203, 0.9);
	background: #fff;
	box-shadow: 0 16px 34px rgba(12, 16, 35, 0.12);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-brand,
body.home.gi-page .site-header:not(.is-scrolled) .site-brand:hover,
body.home.gi-page .site-header:not(.is-scrolled) .site-menu > li > a,
body.home.gi-page .site-header:not(.is-scrolled) .site-header__secondary-link,
body.home.gi-page .site-header:not(.is-scrolled) .site-nav-toggle span {
	color: var(--gi-ink);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-nav-toggle span {
	background: var(--gi-ink);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-menu > .current-menu-item > a,
body.home.gi-page .site-header:not(.is-scrolled) .site-menu > .current-menu-parent > a,
body.home.gi-page .site-header:not(.is-scrolled) .site-menu > .current-menu-ancestor > a,
body.home.gi-page .site-header:not(.is-scrolled) .site-menu > li > a:hover,
body.home.gi-page .site-header:not(.is-scrolled) .site-menu > li > a:focus-visible {
	background: rgba(84, 35, 231, 0.1);
	color: var(--gi-ink);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-brand__mark {
	box-shadow: 0 8px 18px rgba(84, 35, 231, 0.26);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-nav-toggle {
	border-color: rgba(206, 209, 224, 0.95);
	background: #fff;
	box-shadow: 0 6px 16px rgba(12, 12, 32, 0.08);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-header__cta {
	background: linear-gradient(180deg, #6f4cf2 0%, #5423e7 100%);
	border-color: #5f35eb;
	color: #fff;
	box-shadow: 0 10px 22px rgba(84, 35, 231, 0.24);
}

body.home.gi-page .site-header:not(.is-scrolled) .site-header__cta:hover {
	background: linear-gradient(180deg, #7b5bf4 0%, #5d32ea 100%);
	border-color: #6d47ee;
	color: #fff;
}

body.home.gi-page .lp-page .gi-shell {
	width: min(80rem, calc(100vw - 3rem));
}

body.home.gi-page .lp-page .gi-section {
	padding: clamp(4.2rem, 7vw, 6.9rem) 0;
}

body.home.gi-page .lp-page .gi-section-heading {
	width: 100%;
	max-width: 72rem;
	margin-inline: auto;
	margin-bottom: clamp(1.6rem, 3vw, 2.7rem);
	text-align: center;
	gap: 1rem;
}

body.home.gi-page .lp-page .gi-section-heading h1,
body.home.gi-page .lp-page .gi-section-heading h2 {
	max-width: 100%;
	font-size: clamp(2.35rem, 5.1vw, 4.8rem);
	line-height: 0.98;
	letter-spacing: -0.048em;
	color: #0c0c20;
}

body.home.gi-page .lp-page .gi-section-heading p {
	max-width: 55rem;
	margin-inline: auto;
	font-size: clamp(1rem, 1.12vw, 1.15rem);
	line-height: 1.54;
	color: #575757;
}

body.home.gi-page .lp-page .lp-kicker {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin-inline: auto;
	padding: 0.42rem 0.8rem;
	border: 1px solid rgba(84, 35, 231, 0.22);
	border-radius: 999px;
	background: rgba(84, 35, 231, 0.08);
	font-size: 0.76rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: none;
	color: #5423e7;
}

body.home.gi-page .lp-page .lp-hero {
	position: relative;
	padding-top: clamp(4.4rem, 6.2vw, 6.4rem);
	padding-bottom: clamp(2.6rem, 4.2vw, 3.8rem);
	background-color: #16074f;
	background:
		radial-gradient(circle at 50% -14%, rgba(134, 104, 255, 0.5), transparent 54%),
		radial-gradient(circle at 14% 18%, rgba(85, 41, 228, 0.26), transparent 44%),
		linear-gradient(180deg, #14064a 0%, #35128f 50%, #5a34da 100%);
	overflow: hidden;
}

body.home.gi-page .lp-page .lp-hero.wp-block-group.has-background {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

/* WordPress block inline radius can override theme styles; force top corners off for hero. */
body.home.gi-page .lp-page :is(.lp-hero, .wp-block-group.lp-hero, .wp-block-cover.lp-hero) {
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

/* Remove top rounding for hero backgrounds across all public pages. */
body.gi-page :is(
	.gi-hero,
	.lp-hero,
	.gi-block-hero,
	.wp-block-group.gi-hero,
	.wp-block-group.lp-hero,
	.wp-block-group.gi-block-hero,
	.wp-block-cover.gi-hero,
	.wp-block-cover.lp-hero,
	.wp-block-cover.gi-block-hero
) {
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

body.home.gi-page .lp-page .lp-hero::before {
	display: none;
}

body.home.gi-page .lp-page .lp-hero .gi-section-heading {
	max-width: 74rem;
	margin-bottom: 0.35rem;
}

body.home.gi-page .lp-page .lp-hero :is(
	.lp-workconnect-panel.gix-ui,
	.gix-ui[data-ui-v2],
	.gi-ui-scene[data-ui-v2],
	.gi-ui-scene
) {
	display: none !important;
}

body.home.gi-page .lp-page .lp-hero .gi-section-heading h1,
body.home.gi-page .lp-page .lp-hero .gi-section-heading h2 {
	color: #fff;
	max-width: 14.5ch;
	margin-inline: auto;
	font-size: clamp(3rem, 6.7vw, 6rem);
	line-height: 0.94;
	letter-spacing: -0.055em;
}

body.home.gi-page .lp-page .lp-hero .gi-hero__lead {
	max-width: 55rem;
	color: rgba(245, 247, 255, 0.92);
	font-size: clamp(1.15rem, 1.42vw, 1.72rem);
	line-height: 1.42;
}

body.home.gi-page .lp-page .gi-button-row--centered {
	justify-content: center;
}

body.home.gi-page .lp-page .lp-hero .site-header__cta {
	min-height: 3.75rem;
	padding-inline: 2.25rem;
	background: #dffa4b;
	border-color: #dffa4b;
	box-shadow: none;
	color: #0c0c20;
}

body.home.gi-page .lp-page .lp-hero .site-header__cta:hover {
	background: #d2ec41;
	border-color: #d2ec41;
	color: #0c0c20;
	transform: none;
	box-shadow: none;
}

body.home.gi-page .lp-page .lp-hero .site-header__secondary-link {
	min-height: 3.75rem;
	padding-inline: 1.6rem;
	border-color: rgba(255, 255, 255, 0.4);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

body.home.gi-page .lp-page .lp-hero .site-header__secondary-link:hover {
	border-color: rgba(255, 255, 255, 0.66);
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
}

body.home.gi-page .lp-page .lp-hero__meta-grid {
	max-width: 66rem;
	margin-inline: auto;
	margin-top: clamp(1.9rem, 3.5vw, 3rem);
	gap: 1.15rem;
}

body.home.gi-page .lp-page .lp-hero-meta-card {
	display: grid;
	gap: 0.55rem;
	min-height: 8.1rem;
	padding: 1.08rem 1.2rem;
	border: 1px solid rgba(190, 175, 255, 0.52);
	border-radius: 1.3rem;
	background:
		linear-gradient(180deg, rgba(28, 18, 72, 0.48) 0%, rgba(18, 12, 40, 0.6) 100%);
	backdrop-filter: blur(8px);
	box-shadow: none;
	color: #fff;
}

body.home.gi-page .lp-page .lp-hero-meta-card h3 {
	margin: 0;
	font-size: 1.08rem;
	line-height: 1.26;
	color: #fff;
}

body.home.gi-page .lp-page .lp-workconnect-panel.gix-ui {
	margin-top: clamp(2rem, 3.6vw, 3rem);
	padding: clamp(1.28rem, 2.4vw, 1.95rem);
	border: 1px solid rgba(183, 170, 233, 0.52);
	border-radius: 1.95rem;
	background: linear-gradient(170deg, #ffffff 0%, #f7f6ff 55%, #f3f4fb 100%);
	box-shadow:
		0 24px 52px rgba(12, 16, 35, 0.12),
		0 1px 0 rgba(255, 255, 255, 0.9) inset;
	color: #0c0c20;
}

body.home.gi-page .lp-page .lp-workconnect-panel.gix-ui::before,
body.home.gi-page .lp-page .lp-workconnect-panel.gix-ui::after {
	display: block;
}

body.home.gi-page .lp-page .lp-workconnect-panel.gix-ui::before {
	opacity: 0.26;
	background:
		radial-gradient(circle at 16% 18%, rgba(107, 78, 239, 0.22), transparent 48%),
		radial-gradient(circle at 84% 24%, rgba(95, 182, 245, 0.2), transparent 52%);
}

body.home.gi-page .lp-page .lp-workconnect-panel.gix-ui::after {
	display: none;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-head,
body.home.gi-page .lp-page .lp-workconnect-panel .gix-surface {
	background: linear-gradient(180deg, #ffffff 0%, #fbfbff 100%);
	border-color: rgba(196, 200, 223, 0.62);
	border-radius: 1.2rem;
	box-shadow: 0 10px 24px rgba(12, 16, 35, 0.06);
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-head {
	padding: 0.95rem 1.18rem;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-surface {
	padding: 1.18rem;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-head__title,
body.home.gi-page .lp-page .lp-workconnect-panel .gix-kpi__value,
body.home.gi-page .lp-page .lp-workconnect-panel .gix-strong {
	color: #0c0c20;
	font-weight: 600;
	letter-spacing: -0.018em;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-kpi__label,
body.home.gi-page .lp-page .lp-workconnect-panel .gix-subtle {
	color: #6d7087;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-kpi {
	border-color: rgba(197, 200, 225, 0.72);
	background: linear-gradient(180deg, #ffffff 0%, #f8f9ff 100%);
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-pill,
body.home.gi-page .lp-page .lp-workconnect-panel .gix-badge {
	border-color: rgba(102, 73, 234, 0.28);
	background: rgba(96, 67, 230, 0.12);
	color: #4a26cc;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-line {
	background: #e7e9f4;
}

body.home.gi-page .lp-page .lp-workconnect-panel .gix-line > span {
	background: linear-gradient(90deg, #6d49f0 0%, #8a73ff 100%);
}

body.home.gi-page .lp-page .gi-grid-4,
body.home.gi-page .lp-page .gi-grid-3 {
	gap: 1.35rem;
}

body.home.gi-page .lp-page .gi-card {
	border-color: #e3e3e3;
	border-radius: 1.5rem;
	background: #fff;
	box-shadow: none;
}

body.home.gi-page .lp-page .gi-card:hover {
	transform: translateY(-2px);
	border-color: #d5d5df;
	box-shadow: 0 16px 34px rgba(12, 16, 35, 0.08);
}

body.home.gi-page .lp-page .gi-card__body {
	padding: 1.45rem 1.4rem 1.55rem;
	gap: 0.8rem;
}

body.home.gi-page .lp-page .gi-card__title {
	font-size: clamp(1.24rem, 1.5vw, 1.7rem);
	line-height: 1.16;
	letter-spacing: -0.03em;
	color: #0c0c20;
}

body.home.gi-page .lp-page .gi-card__description {
	font-size: 1rem;
	line-height: 1.6;
	color: #4d4d4d;
}

body.home.gi-page .lp-page .lp-confirmation,
body.home.gi-page .lp-page .lp-approach,
body.home.gi-page .lp-page .lp-process,
body.home.gi-page .lp-page .lp-why {
	background: #eef0f4;
}

body.home.gi-page .lp-page .lp-problem,
body.home.gi-page .lp-page .lp-services,
body.home.gi-page .lp-page .lp-effects,
body.home.gi-page .lp-page .lp-cases,
body.home.gi-page .lp-page .lp-knowledge,
body.home.gi-page .lp-page .lp-faq-section,
body.home.gi-page .lp-page .lp-audience {
	background: #fff;
}

body.home.gi-page .lp-page .lp-service-card {
	display: flex;
	flex-direction: column;
	border-color: #dfe2ef;
	background: linear-gradient(180deg, #ffffff 0%, #fcfcff 100%);
	box-shadow: 0 14px 30px rgba(12, 16, 35, 0.06);
}

body.home.gi-page .lp-page .lp-service-icon-box {
	position: relative;
	isolation: isolate;
	display: grid;
	place-items: center;
	width: 3.4rem;
	height: 3.4rem;
	border: 1px solid rgba(117, 93, 231, 0.32);
	border-radius: 1rem;
	background: linear-gradient(155deg, #ffffff 0%, #f4f1ff 55%, #ece7ff 100%);
	box-shadow:
		0 12px 26px rgba(84, 35, 231, 0.16),
		0 1px 0 rgba(255, 255, 255, 0.82) inset;
	color: #4f2be2;
	margin-bottom: 1.15rem;
}

body.home.gi-page .lp-page .lp-service-icon-box::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: radial-gradient(circle at 24% 20%, rgba(125, 93, 247, 0.34), transparent 60%);
	opacity: 0.46;
	z-index: -1;
}

body.home.gi-page .lp-page .lp-service-icon-box svg {
	width: 1.38rem;
	height: 1.38rem;
	display: block;
}

body.home.gi-page .lp-page .lp-service-icon-box svg path,
body.home.gi-page .lp-page .lp-service-icon-box svg circle,
body.home.gi-page .lp-page .lp-service-icon-box svg rect,
body.home.gi-page .lp-page .lp-service-icon-box svg line,
body.home.gi-page .lp-page .lp-service-icon-box svg polyline,
body.home.gi-page .lp-page .lp-service-icon-box svg polygon {
	stroke: currentColor;
	stroke-width: 1.85;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.home.gi-page .lp-page .lp-service-grid > .lp-service-card:nth-child(2) .lp-service-icon-box {
	color: #168b67;
	border-color: rgba(40, 183, 139, 0.36);
	background: linear-gradient(155deg, #ffffff 0%, #eefcf7 56%, #e1f6ee 100%);
	box-shadow:
		0 12px 24px rgba(33, 163, 123, 0.14),
		0 1px 0 rgba(255, 255, 255, 0.88) inset;
}

body.home.gi-page .lp-page .lp-service-grid > .lp-service-card:nth-child(3) .lp-service-icon-box {
	color: #0f7ca4;
	border-color: rgba(74, 174, 219, 0.38);
	background: linear-gradient(155deg, #ffffff 0%, #edf8ff 56%, #def1ff 100%);
	box-shadow:
		0 12px 24px rgba(45, 139, 183, 0.14),
		0 1px 0 rgba(255, 255, 255, 0.88) inset;
}

body.home.gi-page .lp-page .lp-service-card .gi-card__body {
	padding: 0;
	gap: 0.78rem;
}

body.home.gi-page .lp-page .lp-pillar-item,
body.home.gi-page .lp-page .lp-process-item {
	display: flex;
	align-items: flex-start;
	gap: 0.95rem;
	padding: 1.05rem 1.1rem;
	border: 1px solid #e1e4ef;
	border-radius: 1rem;
	background: linear-gradient(180deg, #ffffff 0%, #fafaff 100%);
	box-shadow: 0 8px 20px rgba(12, 16, 35, 0.05);
}

body.home.gi-page .lp-page .lp-pillar-icon,
body.home.gi-page .lp-page .lp-process-icon {
	display: inline-grid;
	place-items: center;
	flex: 0 0 auto;
	width: 2.8rem;
	height: 2.8rem;
	border: 1px solid rgba(98, 70, 233, 0.32);
	border-radius: 0.92rem;
	background: linear-gradient(160deg, #f8f4ff 0%, #ece5ff 100%);
	box-shadow:
		0 10px 20px rgba(84, 35, 231, 0.14),
		0 1px 0 rgba(255, 255, 255, 0.9) inset;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1;
	color: #4b1ed1;
}

body.home.gi-page .lp-page .lp-process-icon {
	border-color: rgba(69, 166, 207, 0.34);
	background: linear-gradient(160deg, #eef8ff 0%, #dff0ff 100%);
	box-shadow:
		0 10px 20px rgba(40, 140, 191, 0.14),
		0 1px 0 rgba(255, 255, 255, 0.9) inset;
	color: #0f7ca4;
}

body.home.gi-page .lp-page .lp-pillar-text h3,
body.home.gi-page .lp-page .lp-process-text h3 {
	margin: 0 0 0.3rem;
	font-size: 1.02rem;
	letter-spacing: -0.01em;
	color: #0c0c20;
}

body.home.gi-page .lp-page .lp-pillar-text p,
body.home.gi-page .lp-page .lp-process-text p {
	margin: 0;
	color: #555a70;
	line-height: 1.5;
}

body.home.gi-page .lp-page .lp-faq-section .gi-shell {
	display: grid;
	gap: clamp(1.5rem, 3vw, 2.4rem);
	align-items: start;
}

body.home.gi-page .lp-page .lp-faq-section .gi-section-heading {
	margin: 0;
	text-align: left;
}

body.home.gi-page .lp-page .lp-faq-section .gi-section-heading .lp-kicker {
	margin-inline: 0;
}

body.home.gi-page .lp-page .lp-faq-section .gi-faq {
	gap: 0;
	border-top: 1px solid #dcdcdc;
}

body.home.gi-page .lp-page .lp-faq__item {
	border: 0;
	border-bottom: 1px solid #dcdcdc;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.home.gi-page .lp-page .lp-faq__item summary {
	padding: 1.2rem 0;
	font-size: clamp(1rem, 1.2vw, 1.24rem);
	font-weight: 500;
	color: #0c0c20;
}

body.home.gi-page .lp-page .lp-faq__item p {
	padding: 0.2rem 0 1.2rem;
	color: #4d4d4d;
}

body.home.gi-page .lp-page .lp-final {
	position: relative;
	padding-top: clamp(5.4rem, 8.8vw, 8rem);
	padding-bottom: clamp(3.2rem, 6vw, 5rem);
	background: #000000;
}

body.home.gi-page .lp-page .lp-final::before {
	display: none;
}

body.home.gi-page .lp-page .lp-final .lp-kicker {
	border-color: rgba(161, 188, 255, 0.25);
	background: rgba(84, 35, 231, 0.24);
	color: rgba(223, 250, 75, 0.94);
}

body.home.gi-page .lp-page .lp-final__heading h2 {
	max-width: 50ch;
	margin-inline: auto;
	font-size: clamp(2.5rem, 5.4vw, 4.35rem);
	line-height: 0.96;
	color: #fff;
}

body.home.gi-page .lp-page .lp-final__heading p {
	color: rgba(205, 205, 205, 0.86);
}

body.home.gi-page .lp-page .lp-final .gi-cta-card {
	margin-top: 2rem;
	border: 0;
	background: transparent;
	box-shadow: none;
	padding: 0;
}

body.home.gi-page .lp-page .lp-final .site-header__cta {
	min-height: 3.85rem;
	padding-inline: 2.25rem;
	background: #dffa4b;
	border-color: #dffa4b;
	color: #0c0c20;
	box-shadow: none;
}

body.home.gi-page .lp-page [data-lp-fade] {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

@media (min-width: 960px) {
	body.home.gi-page .lp-page .lp-faq-section .gi-shell {
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.2fr);
	}
}

@media (max-width: 1023px) {
	body.home.gi-page .site-header {
		padding-top: 0;
	}

	body.home.gi-page .site-header:not(.is-scrolled) {
		background: transparent;
		border-bottom-color: transparent;
	}

	body.home.gi-page .site-header .site-header__inner {
		padding-left: 0.72rem;
		padding-right: 0.46rem;
	}

	body.home.gi-page .site-header:not(.is-scrolled) .site-brand,
	body.home.gi-page .site-header:not(.is-scrolled) .site-menu > li > a,
	body.home.gi-page .site-header:not(.is-scrolled) .site-nav-toggle span {
		color: var(--gi-ink);
	}

	body.home.gi-page .site-header:not(.is-scrolled) .site-nav-toggle {
		border-color: rgba(206, 209, 224, 0.95);
		background: #fff;
	}

	body.home.gi-page .site-header:not(.is-scrolled) .site-header__cta {
		background: linear-gradient(180deg, #6f4cf2 0%, #5423e7 100%);
		border-color: #5f35eb;
	}
}

@media (max-width: 959px) {
	body.home.gi-page .lp-page .gi-shell {
		width: min(80rem, calc(100vw - 2rem));
	}

	body.home.gi-page .lp-page .lp-hero__meta-grid,
	body.home.gi-page .lp-page .lp-pillar-flow-grid,
	body.home.gi-page .lp-page .lp-process-flow-grid,
	body.home.gi-page .lp-page .lp-why-matrix-grid {
		grid-template-columns: 1fr;
	}

	body.home.gi-page .lp-page .gi-grid-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	body.home.gi-page .lp-page .gi-section {
		padding: clamp(3.4rem, 11vw, 5rem) 0;
	}

	body.home.gi-page .lp-page .lp-hero {
		padding-top: calc(var(--gi-section-space) + 1.25rem);
	}

	body.home.gi-page .lp-page .gi-section-heading {
		max-width: min(100%, 43rem);
	}

	body.home.gi-page .lp-page .gi-section-heading p {
		max-width: min(100%, 34rem);
	}

	body.home.gi-page .lp-page .gi-grid-4,
	body.home.gi-page .lp-page .gi-grid-3 {
		grid-template-columns: 1fr;
	}

	body.home.gi-page .lp-page .lp-hero .gi-section-heading h1 {
		font-size: clamp(2.25rem, 11.8vw, 3.3rem);
	}

	body.home.gi-page .lp-page .lp-service-icon-box {
		width: 3.05rem;
		height: 3.05rem;
	}

	body.home.gi-page .lp-page .lp-pillar-icon,
	body.home.gi-page .lp-page .lp-process-icon {
		width: 2.55rem;
		height: 2.55rem;
	}
}

/* Global six-card normalization based on rendered direct children. */
.lp-page :is(
	.gi-grid-3,
	.lp-stepper-grid,
	.lp-bento-grid,
	.gi-list-cards,
	.lp-warning-list,
	.lp-dense-checklist
):not(.gi-faq):not(.lp-premium-faq):has(> :nth-child(6):last-child) {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 1180px) {
	.lp-page :is(
		.gi-grid-3,
		.lp-stepper-grid,
		.lp-bento-grid,
		.gi-list-cards,
		.lp-warning-list,
		.lp-dense-checklist
	):not(.gi-faq):not(.lp-premium-faq):has(> :nth-child(6):last-child) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 781px) {
	.lp-page :is(
		.gi-grid-3,
		.lp-stepper-grid,
		.lp-bento-grid,
		.gi-list-cards,
		.lp-warning-list,
		.lp-dense-checklist
	):not(.gi-faq):not(.lp-premium-faq):has(> :nth-child(6):last-child) {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* Growth Insider UX refinement layer (B2B hierarchy, accessibility, CTA clarity). */
:root {
	--gi-focus-ring: 0 0 0 3px rgba(84, 35, 231, 0.24);
	--gi-focus-ring-strong: 0 0 0 4px rgba(84, 35, 231, 0.3);
}

:where(.site-main--front, .site-main--service, .site-main--page, .site-main--single) :where(h2, h3, h4, p, li) {
	text-wrap: pretty;
}

:where(.entry-content--page, .entry-content--service, .entry-content--front, .entry-content--article, .entry-content--case) :where(p, li) {
	max-width: 72ch;
}

:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(h2, .gi-section-heading h2) {
	max-width: 24ch;
	line-height: 1.08;
}

:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(h3) {
	line-height: 1.14;
}

.site-header__cta,
.site-footer__cta,
.wp-block-button__link,
.wp-element-button {
	border-color: rgba(78, 31, 211, 0.9);
	background: linear-gradient(180deg, #5f33ee 0%, #4b1ed1 100%);
}

.site-header__cta:hover,
.site-footer__cta:hover,
.wp-block-button__link:hover,
.wp-element-button:hover {
	transform: translateY(-1px);
}

.site-header__cta:active,
.site-footer__cta:active,
.wp-block-button__link:active,
.wp-element-button:active {
	transform: translateY(0);
}

.site-header__secondary-link,
.wp-block-button.is-style-outline .wp-block-button__link {
	border-color: rgba(12, 12, 32, 0.4);
}

.site-header__secondary-link:focus-visible,
.site-header__cta:focus-visible,
.wp-block-button__link:focus-visible,
.wp-element-button:focus-visible,
.site-menu a:focus-visible,
.mobile-menu__list a:focus-visible,
.mobile-submenu-toggle:focus-visible,
.site-nav-toggle:focus-visible,
.mobile-menu__close:focus-visible {
	outline: none;
	box-shadow: var(--gi-focus-ring-strong);
}

.site-header__inner {
	border-color: rgba(12, 12, 32, 0.12);
}

.site-menu > li > a {
	color: color-mix(in srgb, var(--gi-ink) 88%, #2d2d45);
}

.site-menu > .current-menu-item > a,
.site-menu > .current-menu-parent > a,
.site-menu > .current-menu-ancestor > a {
	border: 1px solid rgba(84, 35, 231, 0.28);
}

.site-mega-panel__link {
	box-shadow: none;
}

.site-mega-panel__link:hover,
.site-mega-panel__item.current-menu-item > .site-mega-panel__link,
.site-mega-panel__item.current-menu-parent > .site-mega-panel__link,
.site-mega-panel__item.current-menu-ancestor > .site-mega-panel__link {
	box-shadow: 0 10px 22px rgba(84, 35, 231, 0.1);
}

.mobile-menu__list a {
	min-height: 3rem;
	font-size: 1rem;
}

.mobile-submenu-toggle {
	border-color: rgba(12, 12, 32, 0.14);
}

.gi-service-card {
	border-color: rgba(84, 35, 231, 0.2);
}

.gi-proof-card {
	border-color: rgba(12, 12, 32, 0.12);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 242, 255, 0.94));
}

.gi-process-step {
	border-left: 3px solid rgba(84, 35, 231, 0.2);
}

.gi-cta-card {
	border-color: rgba(84, 35, 231, 0.3);
}

.gi-faq summary,
.wp-block-details summary {
	padding-right: 3.2rem;
}

.gi-faq details[open],
.wp-block-details[open] {
	border-color: rgba(84, 35, 231, 0.18);
}

label {
	font-weight: 600;
	color: var(--gi-ink);
}

input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
textarea,
select {
	min-height: 3rem;
}

input::placeholder,
textarea::placeholder {
	color: color-mix(in srgb, var(--gi-text-soft) 88%, #9292a3);
}

input[aria-invalid="true"],
textarea[aria-invalid="true"],
select[aria-invalid="true"],
.wpcf7-not-valid {
	border-color: #c53030;
	box-shadow: 0 0 0 3px rgba(197, 48, 48, 0.14);
}

.wpcf7-not-valid-tip,
[data-form-error],
[role="alert"] {
	display: block;
	margin-top: 0.45rem;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #8a1f1f;
}

.wpcf7 form .wpcf7-response-output {
	margin: 0.9rem 0 0;
	padding: 0.8rem 0.9rem;
	border-radius: var(--gi-radius-sm);
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: rgba(61, 161, 8, 0.4);
	background: rgba(61, 161, 8, 0.08);
	color: #1f5f05;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
	border-color: rgba(197, 48, 48, 0.38);
	background: rgba(197, 48, 48, 0.08);
	color: #8a1f1f;
}

button[type="submit"][disabled],
input[type="submit"][disabled] {
	opacity: 0.72;
	cursor: not-allowed;
}

:where(h2, h3, [id]) {
	scroll-margin-top: 7.2rem;
}

@media (max-width: 781px) {
	:where(h2, h3, [id]) {
		scroll-margin-top: 5.8rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation: none !important;
		transition-duration: 0.01ms !important;
		transition-delay: 0ms !important;
		transform: none !important;
	}
}

.gi-structured-page .gi-page-header--structured {
	padding: clamp(2rem, 4vw, 4rem) 0 1rem;
}

.gi-structured-page .gi-page-header--structured p {
	max-width: 68ch;
}

.gi-section--structured {
	padding: clamp(1.4rem, 3vw, 2.6rem) 0;
}

.gi-section--structured .gi-shell {
	max-width: min(1120px, 92vw);
}

.gi-section--structured p {
	max-width: 74ch;
}

.gi-lead-form-wrap {
	border: 1px solid rgba(20, 30, 44, 0.1);
	border-radius: 16px;
	padding: clamp(1rem, 2.6vw, 1.6rem);
	background: #fff;
}

.gi-lead-form {
	display: grid;
	gap: 1rem;
}

.gi-lead-form__row {
	display: grid;
	gap: 0.4rem;
}

.gi-lead-form :where(input, textarea) {
	width: 100%;
	border: 1px solid rgba(20, 30, 44, 0.2);
	border-radius: 10px;
	padding: 0.7rem 0.8rem;
	font: inherit;
}

.gi-lead-form :where(input, textarea):focus-visible {
	outline: 2px solid #2254d1;
	outline-offset: 1px;
}

.gi-lead-form__row--consent label {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
}

.gi-lead-form__row--consent input {
	width: auto;
	margin-top: 0.2rem;
}

.gi-form-notice {
	border-radius: 10px;
	padding: 0.66rem 0.8rem;
	margin-bottom: 0.9rem;
}

.gi-form-notice--success {
	background: rgba(40, 130, 72, 0.1);
	border: 1px solid rgba(40, 130, 72, 0.32);
	color: #0d4b24;
}

.gi-form-notice--error {
	background: rgba(197, 48, 48, 0.08);
	border: 1px solid rgba(197, 48, 48, 0.32);
	color: #7c1b1b;
}

.gi-form-hp {
	position: absolute;
	left: -9999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.gi-marketing-page .gi-page-header--marketing {
	padding-top: calc(var(--gi-section-space) + 1.5rem);
}

.gi-marketing-page .gi-page-header--marketing .gi-section-heading {
	max-width: 74ch;
}

.gi-marketing-page .gi-page-header--marketing .gi-section-heading h1 {
	margin-top: 0.35rem;
}

.gi-marketing-page .gi-page-header--marketing .gi-button-row {
	margin-top: 1.2rem;
}

.gi-marketing-page .gi-section-heading {
	max-width: 74ch;
}

.gi-marketing-page .gi-section-heading + .gi-grid-2,
.gi-marketing-page .gi-section-heading + .gi-grid-3,
.gi-marketing-page .gi-section-heading + .gi-grid-4,
.gi-marketing-page .gi-section-heading + .gi-card-grid,
.gi-marketing-page .gi-section-heading + .gi-process-grid,
.gi-marketing-page .gi-section-heading + .gi-faq,
.gi-marketing-page .gi-section-heading + .gi-check-list {
	margin-top: 1.25rem;
}

.gi-marketing-page .gi-check-list {
	max-width: 68ch;
}

.gi-marketing-page .gi-check-list li {
	color: var(--gi-text);
}

.gi-marketing-page .gi-final-cta .gi-cta-card {
	max-width: 78ch;
}

.gi-marketing-page--legacy .gi-section {
	padding-top: clamp(1.5rem, 3vw, 2.4rem);
	padding-bottom: clamp(1.2rem, 2.2vw, 1.9rem);
}

@media (max-width: 900px) {
	.gi-marketing-page .gi-page-header--marketing {
		padding-top: calc(var(--gi-section-space) + 1rem);
	}

	.gi-marketing-page .gi-page-header--marketing .gi-button-row {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* --- premium-ui-blocks.css --- */

/**
 * Premium UI component library for Gutenberg Custom HTML blocks.
 * Namespace: gix-
 * Theme: Growth Insider
 */

.gix-ui {
	--gix-bg: #eff1f6;
	--gix-bg-soft: rgba(243, 245, 251, 0.92);
	--gix-surface: #ffffff;
	--gix-surface-strong: #fbfbfe;
	--gix-layer-1: rgba(255, 255, 255, 0.94);
	--gix-layer-2: rgba(249, 250, 254, 0.94);
	--gix-layer-3: rgba(244, 246, 251, 0.96);
	--gix-border: rgba(132, 105, 236, 0.32);
	--gix-border-soft: rgba(132, 105, 236, 0.2);
	--gix-divider: rgba(40, 45, 66, 0.1);
	--gix-text: var(--gi-ink, #0c0c20);
	--gix-text-soft: var(--gi-text, #4d4d4d);
	--gix-muted: rgba(95, 104, 130, 0.82);
	--gix-accent: var(--gi-accent, #5423e7);
	--gix-accent-strong: var(--gi-accent-strong, #4b1ed1);
	--gix-accent-2: var(--gi-teal, #7eedff);
	--gix-success: var(--gi-success, #3da108);
	--gix-warn: var(--gi-gold, #d78942);
	--gix-danger: #ff6f78;
	--gix-radius-xs: var(--gi-radius-xs, 12px);
	--gix-radius-sm: var(--gi-radius-sm, 16px);
	--gix-radius-md: var(--gi-radius-md, 24px);
	--gix-radius-lg: var(--gi-radius-lg, 32px);
	--gix-radius-pill: var(--gi-radius-pill, 999px);
	--gix-shadow-xs: 0 12px 24px rgba(18, 24, 38, 0.08);
	--gix-shadow-sm: 0 18px 36px rgba(18, 24, 38, 0.11);
	--gix-shadow-md: 0 26px 48px rgba(18, 24, 38, 0.14);
	--gix-space-1: var(--gi-space-1, 0.5rem);
	--gix-space-2: var(--gi-space-2, 0.75rem);
	--gix-space-3: var(--gi-space-3, 1rem);
	--gix-space-4: var(--gi-space-4, 1.25rem);
	--gix-space-5: var(--gi-space-5, 1.5rem);
	--gix-space-6: var(--gi-space-6, 2rem);
	--gix-space-7: var(--gi-space-7, clamp(2rem, 3vw, 2.75rem));
	position: relative;
	overflow: hidden;
	display: grid;
	gap: clamp(var(--gix-space-3), 1.9vw, var(--gix-space-5));
	padding: clamp(var(--gix-space-3), 2vw, var(--gix-space-6));
	border: 1px solid var(--gix-border);
	border-radius: calc(var(--gix-radius-md) + 2px);
	background:
		radial-gradient(circle at 12% 8%, rgba(84, 35, 231, 0.12), transparent 42%),
		radial-gradient(circle at 88% 12%, rgba(126, 237, 255, 0.11), transparent 36%),
		linear-gradient(180deg, var(--gix-surface-strong) 0%, var(--gix-bg) 100%);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.84) inset, var(--gix-shadow-md);
	backdrop-filter: none;
	color: var(--gix-text);
	font-family: "Onest", "Segoe UI", sans-serif;
	isolation: isolate;
}

.gix-ui.gix-ui--natural {
	gap: clamp(var(--gix-space-2), 1.6vw, var(--gix-space-4));
	padding: clamp(var(--gix-space-3), 1.6vw, var(--gix-space-5));
	border-color: rgba(132, 105, 236, 0.28);
	background:
		radial-gradient(circle at 10% 10%, rgba(84, 35, 231, 0.08), transparent 40%),
		linear-gradient(180deg, #ffffff 0%, #f1f3f9 100%);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset, var(--gix-shadow-sm);
}

.gix-ui.gix-ui--minimal {
	gap: clamp(0.7rem, 1.2vw, 0.95rem);
	padding: clamp(0.8rem, 1.2vw, 1rem);
	border-color: rgba(132, 105, 236, 0.22);
	background:
		radial-gradient(circle at 12% 8%, rgba(84, 35, 231, 0.06), transparent 36%),
		linear-gradient(180deg, #fafbfe 0%, #f2f4fa 100%);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.92) inset, var(--gix-shadow-xs);
}

.gix-ui::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(var(--gix-divider) 1px, transparent 1px) 0 0 / 100% 36px,
		linear-gradient(90deg, var(--gix-divider) 1px, transparent 1px) 0 0 / 32px 100%;
	opacity: 0.42;
	pointer-events: none;
}

.gix-ui.gix-ui--natural::before {
	opacity: 0.32;
}

.gix-ui.gix-ui--minimal::before {
	opacity: 0.24;
}

.gix-ui::after {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 50% 0%, rgba(84, 35, 231, 0.09), transparent 62%);
	opacity: 0.7;
	pointer-events: none;
}

.gix-ui.gix-ui--natural::after {
	opacity: 0.52;
}

.gix-ui.gix-ui--minimal::after {
	opacity: 0.36;
}

.gix-ui * {
	box-sizing: border-box;
}

.gix-ui p,
.gix-ui ul,
.gix-ui ol {
	margin: 0;
	padding: 0;
}

.gix-ui ul,
.gix-ui ol {
	list-style: none;
}

.gix-fit-hero {
	width: min(42rem, calc(100vw - 1.5rem));
	margin-inline: auto;
}

.gix-fit-section {
	width: min(var(--gi-shell, 1280px), calc(100vw - 1.5rem));
	margin-inline: auto;
}

.gix-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem;
	flex-wrap: wrap;
}

.gix-head__title {
	font-size: clamp(1rem, 1.4vw, 1.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.024em;
	color: var(--gix-text);
}

.gix-head__meta {
	color: var(--gix-muted);
	font-size: 0.74rem;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.gix-badge,
.gix-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.34rem 0.64rem;
	border-radius: var(--gix-radius-pill);
	border: 1px solid rgba(132, 105, 236, 0.24);
	background: rgba(255, 255, 255, 0.82);
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--gix-text-soft);
}

.gix-pill.is-accent {
	border-color: rgba(84, 35, 231, 0.4);
	background: rgba(84, 35, 231, 0.16);
	color: var(--gix-accent-strong);
}

.gix-dot {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: var(--gix-radius-pill);
	background: currentColor;
	display: inline-block;
}

.gix-dot.is-success {
	color: var(--gix-success);
}

.gix-dot.is-warn {
	color: var(--gix-warn);
}

.gix-dot.is-danger {
	color: var(--gix-danger);
}

.gix-dot.is-accent {
	color: var(--gix-accent);
}

.gix-surface {
	background: linear-gradient(180deg, var(--gix-layer-1), var(--gix-layer-3));
	border: 1px solid var(--gix-border-soft);
	border-radius: var(--gix-radius-sm);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.92) inset, var(--gix-shadow-xs);
	padding: clamp(0.78rem, 1.5vw, 1.08rem);
}

.gix-ui.gix-ui--minimal .gix-surface {
	padding: 0.66rem 0.72rem;
	border-radius: calc(var(--gix-radius-xs) + 2px);
	border-color: rgba(132, 105, 236, 0.18);
	background: linear-gradient(180deg, #ffffff 0%, #f5f7fd 100%);
	box-shadow: none;
}

.gix-subtle {
	color: var(--gix-text-soft);
	font-size: 0.84rem;
	line-height: 1.55;
}

.gix-strong {
	color: var(--gix-text);
	font-weight: 600;
}

.gix-mono {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
	font-size: 0.78rem;
	color: rgba(72, 80, 107, 0.82);
}

.gix-kpis {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.65rem;
}

.gix-kpi {
	padding: 0.62rem 0.7rem;
	border: 1px solid var(--gix-border-soft);
	border-radius: calc(var(--gix-radius-xs) + 2px);
	background: rgba(255, 255, 255, 0.88);
}

.gix-kpi__label {
	font-size: 0.69rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--gix-muted);
}

.gix-kpi__value {
	margin-top: 0.22rem;
	font-size: 0.98rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--gix-text);
}

.gix-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
}

.gix-line {
	height: 0.45rem;
	border-radius: var(--gix-radius-pill);
	background: rgba(135, 148, 186, 0.22);
	overflow: hidden;
}

.gix-line > span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgba(126, 237, 255, 0.72), rgba(84, 35, 231, 0.88));
}

.gix-fill-20 {
	width: 20%;
}

.gix-fill-30 {
	width: 30%;
}

.gix-fill-35 {
	width: 35%;
}

.gix-fill-40 {
	width: 40%;
}

.gix-fill-45 {
	width: 45%;
}

.gix-fill-50 {
	width: 50%;
}

.gix-fill-55 {
	width: 55%;
}

.gix-fill-60 {
	width: 60%;
}

.gix-fill-65 {
	width: 65%;
}

.gix-fill-70 {
	width: 70%;
}

.gix-fill-75 {
	width: 75%;
}

.gix-fill-80 {
	width: 80%;
}

.gix-fill-85 {
	width: 85%;
}

.gix-fill-90 {
	width: 90%;
}

.gix-fill-95 {
	width: 95%;
}

.gix-h-20 {
	height: 20%;
}

.gix-h-30 {
	height: 30%;
}

.gix-h-40 {
	height: 40%;
}

.gix-h-50 {
	height: 50%;
}

.gix-h-60 {
	height: 60%;
}

.gix-h-70 {
	height: 70%;
}

.gix-h-80 {
	height: 80%;
}

.gix-h-90 {
	height: 90%;
}

.gix-ui .is-float {
	animation: gix-float 6s ease-in-out infinite;
}

.gix-ui .is-pulse {
	animation: gix-pulse 2.7s ease-in-out infinite;
}

.gix-ui .is-scan {
	position: relative;
	overflow: hidden;
}

.gix-ui .is-scan::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent, rgba(84, 35, 231, 0.08), transparent);
	transform: translateY(-120%);
	animation: gix-scan 7s linear infinite;
}

/* Block 01 - Tworzenie stron - Hero-side launch panel */

.gix-web-launch__layout {
	display: grid;
	grid-template-columns: 1.05fr 1.4fr 1fr;
	gap: 0.7rem;
}

.gix-web-launch__menu li {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.5rem 0.56rem;
	border-radius: var(--gix-radius-xs);
	color: var(--gix-text-soft);
	font-size: 0.78rem;
}

.gix-web-launch__menu li + li {
	margin-top: 0.32rem;
}

.gix-web-launch__menu li.is-active {
	background: rgba(84, 35, 231, 0.1);
	border: 1px solid rgba(84, 35, 231, 0.28);
	color: var(--gix-text);
}

.gix-web-launch__canvas {
	display: grid;
	gap: 0.55rem;
}

.gix-web-launch__frame {
	padding: 0.62rem;
	border-radius: var(--gix-radius-xs);
	background: linear-gradient(180deg, var(--gix-layer-1), var(--gix-layer-3));
	border: 1px solid var(--gix-border-soft);
}

.gix-web-launch__frame-title {
	font-size: 0.74rem;
	color: var(--gix-muted);
	margin-bottom: 0.45rem;
}

.gix-web-launch__blocks {
	display: grid;
	gap: 0.42rem;
}

.gix-web-launch__bar {
	height: 0.48rem;
	border-radius: var(--gix-radius-pill);
	background: rgba(133, 151, 196, 0.24);
}

.gix-web-launch__bar:nth-child(1) {
	width: 90%;
}

.gix-web-launch__bar:nth-child(2) {
	width: 72%;
}

.gix-web-launch__bar:nth-child(3) {
	width: 54%;
}

.gix-web-launch__status li + li {
	margin-top: 0.6rem;
}

.gix-web-launch__status strong {
	display: block;
	font-size: 0.77rem;
	color: var(--gix-text-soft);
}

.gix-web-launch__status span {
	display: block;
	margin-top: 0.16rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gix-text);
}

/* Block 02 - Tworzenie stron - Compare panel */

.gix-web-compare__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.7rem;
}

.gix-web-compare__pane {
	position: relative;
	display: grid;
	gap: 0.55rem;
}

.gix-web-compare__pane::before {
	content: "";
	position: absolute;
	inset: auto 0 -0.35rem 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(84, 35, 231, 0.34), transparent);
}

.gix-web-compare__label {
	font-size: 0.72rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--gix-muted);
}

.gix-web-compare__pane.is-after {
	border-color: rgba(84, 35, 231, 0.26);
}

.gix-web-compare__item {
	display: grid;
	gap: 0.35rem;
}

.gix-web-compare__item p {
	font-size: 0.78rem;
	color: var(--gix-text-soft);
}

.gix-web-compare__delta {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.34rem 0.52rem;
	border-radius: 999px;
	border: 1px solid rgba(61, 161, 8, 0.28);
	background: rgba(61, 161, 8, 0.12);
	color: #2f8206;
	font-size: 0.69rem;
	font-weight: 600;
	width: fit-content;
}

/* Block 03 - Tworzenie stron - Readiness board */

.gix-web-readiness__top {
	display: grid;
	grid-template-columns: 1.15fr 1fr;
	gap: 0.7rem;
}

.gix-web-readiness__matrix {
	display: grid;
	gap: 0.45rem;
}

.gix-web-readiness__matrix li {
	display: grid;
	grid-template-columns: 6.5rem 1fr auto;
	align-items: center;
	gap: 0.55rem;
	font-size: 0.78rem;
	color: var(--gix-text-soft);
}

.gix-web-readiness__matrix em {
	font-style: normal;
	color: var(--gix-text);
}

.gix-web-readiness__flow {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.5rem;
}

.gix-web-readiness__step {
	padding: 0.52rem 0.58rem;
	border-radius: var(--gix-radius-xs);
	border: 1px solid var(--gix-border-soft);
	background: var(--gix-layer-2);
	font-size: 0.74rem;
	color: var(--gix-text-soft);
}

.gix-web-readiness__step strong {
	display: block;
	color: var(--gix-text);
	font-size: 0.79rem;
	margin-top: 0.2rem;
}

/* Block 04 - SEO insights panel */

.gix-seo-insights__grid {
	display: grid;
	grid-template-columns: 1.15fr 1fr;
	gap: 0.7rem;
}

.gix-seo-insights__bars {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	gap: 0.36rem;
	align-items: end;
	height: 7.2rem;
}

.gix-seo-insights__bars span {
	display: block;
	width: 100%;
	border-radius: var(--gix-radius-pill);
	background: linear-gradient(180deg, rgba(126, 237, 255, 0.86), rgba(84, 35, 231, 0.72));
	box-shadow: 0 0 0 1px rgba(84, 35, 231, 0.18) inset;
}

.gix-seo-insights__list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.6rem;
	padding: 0.42rem 0;
	font-size: 0.79rem;
	color: var(--gix-text-soft);
}

.gix-seo-insights__list li + li {
	border-top: 1px dashed var(--gix-divider);
}

.gix-seo-insights__list strong {
	color: var(--gix-text);
}

/* Block 05 - SEO audit workflow */

.gix-seo-audit__flow {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.5rem;
}

.gix-seo-audit__step {
	display: grid;
	gap: 0.4rem;
	padding: 0.55rem;
	border-radius: var(--gix-radius-xs);
	border: 1px solid var(--gix-border-soft);
	background: var(--gix-layer-2);
}

.gix-seo-audit__step code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.69rem;
	color: rgba(72, 80, 107, 0.88);
}

.gix-seo-audit__checks {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
}

.gix-seo-audit__checks li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.55rem;
	padding: 0.5rem 0.6rem;
	border-radius: var(--gix-radius-xs);
	border: 1px solid var(--gix-border-soft);
	background: var(--gix-layer-2);
	font-size: 0.78rem;
	color: var(--gix-text-soft);
}

.gix-seo-audit__checks strong {
	color: var(--gix-text);
	font-weight: 600;
}

/* Block 06 - SEO SERP console */

.gix-seo-serp__grid {
	display: grid;
	grid-template-columns: 1.35fr 0.9fr;
	gap: 0.7rem;
}

.gix-seo-serp__result + .gix-seo-serp__result {
	margin-top: 0.48rem;
}

.gix-seo-serp__result {
	padding: 0.58rem;
	border-radius: var(--gix-radius-xs);
	border: 1px solid var(--gix-border-soft);
	background: linear-gradient(180deg, var(--gix-layer-1), var(--gix-layer-3));
}

.gix-seo-serp__url {
	font-size: 0.72rem;
	color: #248a64;
}

.gix-seo-serp__title {
	margin-top: 0.2rem;
	font-size: 0.85rem;
	color: var(--gix-text);
}

.gix-seo-serp__snippet {
	margin-top: 0.16rem;
	font-size: 0.77rem;
	color: var(--gix-text-soft);
	line-height: 1.42;
}

.gix-seo-serp__positions li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0.38rem 0;
	font-size: 0.77rem;
	color: var(--gix-text-soft);
}

.gix-seo-serp__positions li + li {
	border-top: 1px dashed var(--gix-divider);
}

.gix-seo-serp__heat {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0.25rem;
	margin-top: 0.45rem;
}

.gix-seo-serp__heat span {
	height: 0.55rem;
	border-radius: var(--gix-radius-pill);
	background: rgba(130, 146, 187, 0.28);
}

.gix-seo-serp__heat span.is-hot {
	background: linear-gradient(90deg, rgba(126, 237, 255, 0.88), rgba(84, 35, 231, 0.9));
}

/* Block 07 - business systems orchestration flow */

.gix-sys-orchestration__flow {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.45rem;
	position: relative;
}

.gix-sys-orchestration__node {
	display: grid;
	gap: 0.32rem;
	padding: 0.54rem;
	border-radius: var(--gix-radius-xs);
	border: 1px solid var(--gix-border-soft);
	background: linear-gradient(180deg, var(--gix-layer-1), var(--gix-layer-2));
	font-size: 0.73rem;
	color: var(--gix-text-soft);
}

.gix-sys-orchestration__node strong {
	color: var(--gix-text);
	font-size: 0.78rem;
}

.gix-sys-orchestration__queue li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.55rem;
	padding: 0.38rem 0;
	font-size: 0.77rem;
	color: var(--gix-text-soft);
}

.gix-sys-orchestration__queue li + li {
	border-top: 1px dashed var(--gix-divider);
}

/* Block 08 - business systems dashboard */

.gix-sys-ops__grid {
	display: grid;
	grid-template-columns: 1.05fr 1fr;
	gap: 0.7rem;
}

.gix-sys-ops__chat {
	display: grid;
	gap: 0.5rem;
}

.gix-sys-ops__bubble {
	max-width: 92%;
	padding: 0.55rem 0.65rem;
	border-radius: var(--gix-radius-xs);
	font-size: 0.77rem;
	line-height: 1.46;
	border: 1px solid var(--gix-border-soft);
	color: var(--gix-text-soft);
	background: var(--gix-layer-2);
}

.gix-sys-ops__bubble.is-module {
	margin-left: auto;
	border-color: rgba(84, 35, 231, 0.28);
	background: rgba(84, 35, 231, 0.1);
	color: var(--gix-text);
}

.gix-sys-ops__integrations li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.58rem;
	padding: 0.43rem 0;
	font-size: 0.77rem;
	color: var(--gix-text-soft);
}

.gix-sys-ops__integrations li + li {
	border-top: 1px dashed var(--gix-divider);
}

/* Block 09 - operational decisions panel */

.gix-sys-intelligence__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.7rem;
}

.gix-sys-intelligence__scenario li {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.77rem;
	color: var(--gix-text-soft);
	padding: 0.36rem 0;
}

.gix-sys-intelligence__scenario li + li {
	border-top: 1px dashed var(--gix-divider);
}

.gix-sys-intelligence__confidence {
	display: grid;
	gap: 0.45rem;
}

.gix-sys-intelligence__confidence li {
	display: grid;
	gap: 0.28rem;
}

.gix-sys-intelligence__confidence p {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.75rem;
	color: var(--gix-text-soft);
}

.gix-sys-intelligence__recommend {
	display: grid;
	gap: 0.45rem;
}

.gix-sys-intelligence__recommend li {
	padding: 0.47rem 0.54rem;
	border-radius: var(--gix-radius-xs);
	border: 1px solid var(--gix-border-soft);
	background: var(--gix-layer-2);
	font-size: 0.76rem;
	color: var(--gix-text-soft);
}

/* Layout helpers used by multiple blocks */

.gix-stack {
	display: grid;
	gap: 0.7rem;
}

.gix-mini {
	font-size: 0.72rem;
	color: var(--gix-muted);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.gix-ui.gix-ui--minimal .gix-mini {
	font-size: 0.64rem;
	letter-spacing: 0.07em;
}

.gix-ui.gix-ui--minimal .gix-head__title {
	font-size: 0.86rem;
	font-weight: 600;
}

.gix-ui.gix-ui--minimal .gix-badge,
.gix-ui.gix-ui--minimal .gix-pill {
	padding: 0.24rem 0.46rem;
	font-size: 0.62rem;
}

.gix-ui.gix-ui--minimal .gix-kpi {
	padding: 0.5rem;
	border-radius: calc(var(--gix-radius-xs) - 1px);
}

.gix-ui.gix-ui--minimal .gix-kpi__label {
	font-size: 0.62rem;
}

.gix-ui.gix-ui--minimal .gix-kpi__value {
	font-size: 0.8rem;
}

.gix-ui.gix-ui--minimal .gix-line {
	height: 0.36rem;
}

.gix-ui.gix-ui--minimal .gix-subtle,
.gix-ui.gix-ui--minimal .gix-mono,
.gix-ui.gix-ui--minimal .gix-web-launch__menu li,
.gix-ui.gix-ui--minimal .gix-web-readiness__matrix li,
.gix-ui.gix-ui--minimal .gix-seo-insights__list li,
.gix-ui.gix-ui--minimal .gix-seo-serp__positions li,
.gix-ui.gix-ui--minimal .gix-sys-orchestration__queue li,
.gix-ui.gix-ui--minimal .gix-sys-intelligence__scenario li,
.gix-ui.gix-ui--minimal .gix-sys-ops__bubble {
	font-size: 0.72rem;
}

.gix-divider {
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--gix-divider), transparent);
}

/* Responsive */

@media (max-width: 1024px) {
	.gix-web-launch__layout,
	.gix-web-readiness__top,
	.gix-seo-insights__grid,
	.gix-seo-serp__grid,
	.gix-sys-ops__grid,
	.gix-sys-intelligence__grid {
		grid-template-columns: 1fr;
	}

	.gix-web-readiness__flow,
	.gix-seo-audit__flow,
	.gix-sys-orchestration__flow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.gix-ui {
		padding: 1rem;
		border-radius: calc(var(--gix-radius-sm) + 2px);
	}

	.gix-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gix-web-compare__grid,
	.gix-seo-audit__checks {
		grid-template-columns: 1fr;
	}

	.gix-web-readiness__flow,
	.gix-seo-audit__flow,
	.gix-sys-orchestration__flow {
		grid-template-columns: 1fr;
	}

	.gix-web-readiness__matrix li {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gix-ui::after,
	.gix-ui .is-float,
	.gix-ui .is-pulse,
	.gix-ui .is-scan::after {
		animation: none !important;
	}
}

@keyframes gix-shimmer {
	0% {
		transform: translateX(-115%);
	}
	62%,
	100% {
		transform: translateX(115%);
	}
}

@keyframes gix-float {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-4px);
	}
}

@keyframes gix-pulse {
	0%,
	100% {
		opacity: 0.88;
	}
	50% {
		opacity: 1;
	}
}

@keyframes gix-scan {
	0% {
		transform: translateY(-120%);
	}
	40%,
	100% {
		transform: translateY(120%);
	}
}



/* --- premium-system.css --- */

@layer gins.tokens, gins.base, gins.components, gins.pages, gins.utilities;

@layer gins.tokens {
	:root {
		--bg: var(--gi-bg, #f5f5f7);
		--surface: var(--gi-surface, #ffffff);
		--surface-2: var(--gi-surface-soft, #f6f6f8);
		--text: var(--gi-ink, #0c0c20);
		--muted: var(--gi-text-soft, #767676);
		--border: var(--gi-border, rgba(12, 12, 32, 0.1));
		--accent: var(--gi-accent, #5423e7);
		--accent-2: var(--gi-teal, #7eedff);
		--success: var(--gi-success, #3da108);
		--warning: var(--gi-gold, #d78942);
		--shadow: var(--gi-shadow-sm, 0 18px 40px rgba(12, 12, 32, 0.11));
		--radius: var(--gi-radius-md, 24px);
		--container: var(--gi-shell, min(1280px, calc(100vw - 1.5rem)));
		--section-space: clamp(3.8rem, 6.3vw, 6.2rem);
		--hero-space: clamp(6rem, 10vw, 9rem);
		--font-display: clamp(2.4rem, 4.8vw, 4.8rem);
		--font-h1: clamp(2.1rem, 3.7vw, 3.8rem);
		--font-h2: clamp(1.6rem, 2.6vw, 2.4rem);
		--font-h3: clamp(1.15rem, 1.5vw, 1.45rem);
		--space-2xs: 0.4rem;
		--space-xs: 0.6rem;
		--space-sm: 0.85rem;
		--space-md: 1.15rem;
		--space-lg: 1.55rem;
		--space-xl: 2.4rem;
		--space-2xl: clamp(2.8rem, 4.5vw, 4.2rem);
	}
}

@layer gins.base {
	html {
		scroll-padding-top: 5.8rem;
	}

	body {
		background:
			radial-gradient(circle at 8% 0%, rgba(84, 35, 231, 0.12), transparent 34%),
			radial-gradient(circle at 92% 8%, rgba(126, 237, 255, 0.14), transparent 25%),
			linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--bg) 94%, #edf1ff) 100%);
		color: var(--text);
	}

	.site-main--page,
	.site-main--service,
	.site-main--front {
		overflow-x: clip;
	}

	:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(.lp-page) {
		display: grid;
		gap: 0;
	}

	:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(.lp-page > section, .lp-page > .gi-section, .lp-page > .wp-block-group.gi-section) {
		padding-block: var(--section-space);
	}

	:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(.lp-page p) {
		max-width: 68ch;
	}

	:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(.lp-page h1) {
		font-size: var(--font-display);
		letter-spacing: -0.04em;
		line-height: 1.03;
	}

	:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(.lp-page h2) {
		font-size: var(--font-h2);
		letter-spacing: -0.03em;
	}

	:where(.entry-content--page, .entry-content--service, .entry-content--front) :where(.lp-page h3) {
		font-size: var(--font-h3);
		letter-spacing: -0.02em;
	}

	:focus-visible {
		outline: 3px solid color-mix(in srgb, var(--accent) 46%, #ffffff);
		outline-offset: 2px;
	}
}

@layer gins.components {
	.site-header {
		position: sticky;
		top: 0;
		z-index: 100;
		backdrop-filter: none;
		background: transparent;
		border-bottom: 0;
		transition: box-shadow 0.2s ease;
	}

	.site-header.is-scrolled {
		box-shadow: none;
		background: transparent;
	}

	.site-header__inner {
		min-height: 5.2rem;
		gap: clamp(0.65rem, 1.3vw, 1.25rem);
	}

	.site-navigation .site-menu {
		gap: 0.4rem;
	}

	.site-menu > li > a {
		font-size: 0.92rem;
		font-weight: 600;
		letter-spacing: 0;
	}

	.site-menu--fallback {
		display: flex;
		align-items: center;
		gap: 0.35rem;
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.site-menu--fallback > li > a {
		display: inline-flex;
		align-items: center;
		min-height: 2.35rem;
		padding: 0.46rem 0.74rem;
		border-radius: 12px;
		text-decoration: none;
		color: color-mix(in srgb, var(--text) 92%, #1f2138);
		font-size: 0.9rem;
		font-weight: 600;
		transition: background-color 0.2s ease, color 0.2s ease;
	}

	.site-menu--fallback > li > a:hover,
	.site-menu--fallback > li > a[aria-current="page"] {
		background: color-mix(in srgb, var(--accent) 14%, #ffffff);
		color: color-mix(in srgb, var(--accent) 90%, #2a1864);
	}

	.site-header__actions {
		display: none;
		align-items: center;
		gap: 0.55rem;
	}

	.site-header__actions .site-header__secondary-link,
	.site-header__actions .site-header__cta {
		min-height: 2.9rem;
		padding: 0.75rem 1.16rem;
	}

	.site-header__secondary-link {
		border: 1px solid color-mix(in srgb, var(--border) 80%, transparent);
		background: color-mix(in srgb, var(--surface) 92%, #f4f6ff);
		color: var(--text);
		font-weight: 600;
	}

	.site-header__secondary-link:hover {
		border-color: color-mix(in srgb, var(--accent) 30%, #ffffff);
		color: var(--text);
	}

	.site-header__cta {
		background: linear-gradient(180deg, color-mix(in srgb, var(--accent) 88%, #ffffff), color-mix(in srgb, var(--accent) 72%, #26155a));
		border: 1px solid color-mix(in srgb, var(--accent) 38%, #ffffff);
	}

	.mobile-menu__cta-group {
		gap: 0.72rem;
	}

	.mobile-menu__list--fallback {
		list-style: none;
		display: grid;
		gap: 0.34rem;
		margin: 0;
		padding: 0;
	}

	.mobile-menu__list--fallback > li > a {
		display: inline-flex;
		align-items: center;
		width: 100%;
		min-height: 2.75rem;
		padding: 0.7rem 0.8rem;
		border-radius: 12px;
		text-decoration: none;
		font-weight: 600;
		color: color-mix(in srgb, var(--text) 92%, #1f2138);
		background: color-mix(in srgb, #ffffff 96%, #f5f7ff);
		border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
	}

	.mobile-menu__list--fallback > li > a[aria-current="page"] {
		border-color: color-mix(in srgb, var(--accent) 34%, #ffffff);
		background: color-mix(in srgb, var(--accent) 10%, #ffffff);
		color: color-mix(in srgb, var(--accent) 90%, #2a1864);
	}

	.mobile-menu__cta-group .site-header__secondary-link,
	.mobile-menu__cta-group .site-header__cta {
		width: 100%;
	}

	.gi-section-heading {
		gap: var(--space-sm);
		max-width: 48rem;
		margin-bottom: clamp(1.5rem, 3vw, 2.4rem);
	}

	.gi-section-heading p {
		font-size: 1.02rem;
		line-height: 1.7;
		color: color-mix(in srgb, var(--muted) 90%, #31313f);
	}

	.gi-button-row,
	.wp-block-buttons {
		gap: 0.72rem;
	}

	.gi-button-row .site-header__cta,
	.gi-button-row .site-header__secondary-link,
	.wp-block-buttons .wp-block-button__link {
		min-height: 3.2rem;
	}

	.gi-link-dot {
		display: inline-flex;
		width: 0.94rem;
		height: 0.94rem;
		flex: 0 0 auto;
		border-radius: 999px;
		position: relative;
		vertical-align: middle;
		margin-inline: 0.14rem;
		border: 1px solid color-mix(in srgb, var(--accent) 22%, #ffffff);
		background: color-mix(in srgb, var(--accent) 14%, #f5f6ff);
		box-shadow: 0 4px 10px color-mix(in srgb, var(--accent) 16%, transparent);
	}

	.gi-link-dot::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: 0.42rem;
		height: 0.42rem;
		border-radius: 999px;
		transform: translate(-50%, -50%);
		background: color-mix(in srgb, var(--accent) 88%, #5c66ff);
	}

	.gi-reveal,
	[data-gi-animate] {
		opacity: 0;
		transform: translate3d(0, 16px, 0);
		transition: opacity 0.55s ease, transform 0.55s ease;
	}

	.gi-reveal.is-visible,
	[data-gi-animate].is-visible {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}

	.lp-page .gi-list-cards {
		list-style: none;
		padding: 0;
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
		gap: 0.75rem;
	}

	.lp-page .gi-list-cards > li {
		margin: 0;
		padding: 0.95rem 1rem;
		border: 1px solid color-mix(in srgb, var(--border) 90%, transparent);
		border-radius: 14px;
		background: color-mix(in srgb, var(--surface) 95%, #f6f8ff);
		box-shadow: 0 12px 28px rgba(13, 14, 38, 0.09);
	}

	.lp-page details.gi-premium-faq-item {
		border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
		border-radius: 16px;
		padding: 0.18rem 0.95rem;
		background: color-mix(in srgb, #ffffff 92%, #f8f8ff);
		box-shadow: 0 10px 24px rgba(12, 12, 32, 0.09);
	}

	.lp-page details.gi-premium-faq-item + details.gi-premium-faq-item {
		margin-top: 0.7rem;
	}

	.lp-page details.gi-premium-faq-item summary {
		cursor: pointer;
		padding: 1rem 0;
		font-weight: 600;
		list-style: none;
	}

	.lp-page details.gi-premium-faq-item summary::-webkit-details-marker {
		display: none;
	}

	.lp-page details.gi-premium-faq-item > p,
	.lp-page details.gi-premium-faq-item > div {
		padding: 0 0 1rem;
	}

	.gi-trust-strip {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
		gap: 0.68rem;
		margin-top: 1rem;
	}

	.gi-trust-strip__item {
		border: 1px solid color-mix(in srgb, var(--border) 90%, transparent);
		border-radius: 14px;
		padding: 0.72rem 0.82rem;
		font-size: 0.87rem;
		background: color-mix(in srgb, var(--surface) 94%, #f7f8ff);
		color: color-mix(in srgb, var(--text) 88%, #3f4258);
	}

	.gi-cta-banner {
		display: grid;
		gap: 0.85rem;
		padding: clamp(1.15rem, 2.8vw, 1.8rem);
		border-radius: 20px;
		background:
			radial-gradient(circle at 12% 12%, rgba(126, 237, 255, 0.24), transparent 34%),
			linear-gradient(140deg, color-mix(in srgb, var(--accent) 90%, #1f103f), #090a14);
		color: #f2f5ff;
		box-shadow: 0 20px 34px rgba(6, 6, 18, 0.25);
	}

	.gi-cta-banner a {
		color: #ffffff;
	}

	.gi-process-timeline {
		display: grid;
		gap: 0.85rem;
	}

	.gi-process-timeline__item {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 0.8rem;
		padding: 0.9rem 0.95rem;
		border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
		border-radius: 14px;
		background: color-mix(in srgb, #ffffff 96%, #f8f9ff);
		box-shadow: 0 12px 26px rgba(12, 14, 34, 0.08);
	}

	.gi-process-timeline__idx {
		inline-size: 1.8rem;
		block-size: 1.8rem;
		display: inline-grid;
		place-items: center;
		border-radius: 999px;
		background: color-mix(in srgb, var(--accent) 20%, #ffffff);
		color: color-mix(in srgb, var(--accent) 82%, #251453);
		font-size: 0.79rem;
		font-weight: 700;
	}

	.gi-capability-matrix {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
		gap: 0.72rem;
	}

	.gi-capability-matrix__card {
		border: 1px solid color-mix(in srgb, var(--border) 88%, transparent);
		border-radius: 16px;
		background: color-mix(in srgb, #ffffff 95%, #f7f8ff);
		padding: 0.96rem;
		display: grid;
		gap: 0.5rem;
		box-shadow: 0 12px 26px rgba(12, 14, 34, 0.08);
	}

	.gi-pricing-teaser {
		display: grid;
		gap: 0.78rem;
		padding: 1rem;
		border-radius: 16px;
		border: 1px solid color-mix(in srgb, var(--accent) 25%, #ffffff);
		background: color-mix(in srgb, var(--accent) 7%, #ffffff);
		box-shadow: 0 14px 30px rgba(16, 18, 40, 0.09);
	}

	.gi-estimate-logic {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
		gap: 0.6rem;
	}

	.gi-estimate-logic__factor {
		padding: 0.78rem;
		border-radius: 12px;
		border: 1px dashed color-mix(in srgb, var(--accent) 35%, #ffffff);
		background: color-mix(in srgb, #ffffff 94%, #f6f8ff);
		font-size: 0.88rem;
		box-shadow: 0 10px 24px rgba(12, 16, 35, 0.08);
	}

	.gi-ui-scene {
		position: relative;
		display: grid;
		gap: 0.7rem;
		padding: clamp(1rem, 2.1vw, 1.5rem);
		border: 1px solid color-mix(in srgb, var(--accent) 24%, #ffffff);
		border-radius: 20px;
		background:
			radial-gradient(circle at 85% 14%, rgba(126, 237, 255, 0.18), transparent 28%),
			linear-gradient(180deg, #fcfcff 0%, #f3f4fb 100%);
		box-shadow: var(--shadow);
		overflow: hidden;
	}

	.gi-ui-scene__header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.8rem;
		font-size: 0.82rem;
		color: color-mix(in srgb, var(--muted) 88%, #44475c);
	}

	.gi-ui-scene__title {
		font-weight: 700;
		letter-spacing: -0.01em;
		color: color-mix(in srgb, var(--text) 92%, #292d45);
	}

	.gi-ui-scene__grid {
		display: grid;
		grid-template-columns: repeat(12, minmax(0, 1fr));
		gap: 0.56rem;
	}

	.gi-ui-scene__card {
		grid-column: span 6;
		border: 1px solid color-mix(in srgb, var(--border) 88%, transparent);
		border-radius: 12px;
		padding: 0.72rem;
		background: color-mix(in srgb, #ffffff 96%, #f7f9ff);
	}

	.gi-ui-scene__line {
		height: 0.44rem;
		border-radius: 999px;
		background: rgba(139, 149, 182, 0.26);
		overflow: hidden;
	}

	.gi-ui-scene__line > span {
		display: block;
		height: 100%;
		border-radius: inherit;
		background: linear-gradient(90deg, color-mix(in srgb, var(--accent-2) 88%, #ffffff), color-mix(in srgb, var(--accent) 86%, #1f1047));
		transform-origin: left;
	}

	.gi-ui-scene__line.is-w30 > span { width: 30%; }
	.gi-ui-scene__line.is-w45 > span { width: 45%; }
	.gi-ui-scene__line.is-w60 > span { width: 60%; }
	.gi-ui-scene__line.is-w75 > span { width: 75%; }
	.gi-ui-scene__line.is-w90 > span { width: 90%; }

	.gi-ui-scene--workflow .gi-ui-scene__card,
	.gi-ui-scene--pipeline .gi-ui-scene__card,
	.gi-ui-scene--portal .gi-ui-scene__card {
		grid-column: span 4;
	}

	.gi-ui-scene--audit .gi-ui-scene__card,
	.gi-ui-scene--integration .gi-ui-scene__card {
		grid-column: span 12;
	}

	.gi-mobile-intent-bar {
		position: fixed;
		inset: auto 0 0;
		z-index: 130;
		padding: 0.55rem 0.72rem calc(0.55rem + env(safe-area-inset-bottom));
		background: color-mix(in srgb, #ffffff 92%, #eef1fb);
		border-top: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
		box-shadow: 0 -10px 22px rgba(10, 11, 26, 0.14);
	}

	.gi-mobile-intent-bar[hidden] {
		display: none;
	}

	.gi-mobile-intent-bar__inner {
		display: grid;
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
		gap: 0.48rem;
		max-width: min(48rem, 100%);
		margin-inline: auto;
	}

	.gi-mobile-intent-bar__secondary,
	.gi-mobile-intent-bar__primary {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 2.95rem;
		border-radius: 999px;
		font-size: 0.9rem;
		font-weight: 700;
		text-align: center;
		padding: 0.72rem 0.9rem;
	}

	.gi-mobile-intent-bar__secondary {
		border: 1px solid color-mix(in srgb, var(--border) 88%, transparent);
		background: color-mix(in srgb, #ffffff 94%, #f4f6ff);
		color: var(--text);
	}

	.gi-mobile-intent-bar__primary {
		border: 1px solid color-mix(in srgb, var(--accent) 34%, #ffffff);
		background: linear-gradient(180deg, color-mix(in srgb, var(--accent) 88%, #ffffff), color-mix(in srgb, var(--accent) 72%, #26155a));
		color: #ffffff;
	}

	.site-footer {
		background: linear-gradient(180deg, #05050b 0%, #080913 100%);
	}

	.site-footer__inner {
		padding-top: clamp(2.4rem, 4.5vw, 3.4rem);
	}

	.site-footer__statement {
		color: rgba(225, 226, 239, 0.82);
		max-width: 38ch;
	}

	:where(.lp-page form, .lp-page .wpcf7 form) {
		display: grid;
		gap: 0.8rem;
		padding: clamp(1rem, 2vw, 1.4rem);
		border-radius: 18px;
		border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
		background: color-mix(in srgb, #ffffff 94%, #f8f9ff);
		box-shadow: 0 10px 28px rgba(10, 12, 34, 0.06);
	}

	:where(.lp-page input, .lp-page textarea, .lp-page select) {
		width: 100%;
		min-height: 3rem;
		padding: 0.72rem 0.84rem;
		border-radius: 12px;
		border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
		background: #ffffff;
	}

	:where(.lp-page textarea) {
		min-height: 8rem;
		resize: vertical;
	}

	:where(.lp-page input:focus-visible, .lp-page textarea:focus-visible, .lp-page select:focus-visible) {
		outline: 2px solid color-mix(in srgb, var(--accent) 40%, #ffffff);
		outline-offset: 1px;
	}
}

@layer gins.pages {
	.lp-page .lp-hero {
		border-radius: clamp(24px, 2.4vw, 36px);
		background-color: #16074f;
		background:
			radial-gradient(circle at 15% 10%, rgba(122, 91, 246, 0.3), transparent 42%),
			radial-gradient(circle at 88% 14%, rgba(126, 237, 255, 0.2), transparent 34%),
			linear-gradient(180deg, #120548 0%, #32118c 54%, #5c37dd 100%);
		color: #f1f4ff;
		box-shadow: 0 30px 64px rgba(8, 10, 28, 0.32);
	}

	.lp-page .lp-hero :is(h1, h2, h3) {
		color: #f8faff;
	}

	.lp-page .lp-hero p {
		color: rgba(229, 236, 255, 0.86);
	}

	.lp-page .lp-hero .gi-button-row,
	.lp-page .lp-hero .wp-block-buttons {
		margin-top: clamp(1rem, 2.2vw, 1.6rem);
	}

	body:is(.gi-scope-home, .gi-scope-about, .gi-scope-process, .gi-scope-services-hub) .lp-page .lp-hero {
		padding-top: var(--hero-space);
	}

	body:is(.gi-scope-home, .gi-scope-services-hub, .gi-scope-pricing-hub) .lp-page .lp-final {
		position: relative;
		overflow: clip;
	}

	body:is(.gi-scope-home, .gi-scope-services-hub, .gi-scope-pricing-hub) .lp-page .lp-final::before {
		content: "";
		position: absolute;
		inset: -8% -5% auto;
		height: 88%;
		background:
			radial-gradient(circle at 16% 16%, rgba(84, 35, 231, 0.14), transparent 44%),
			radial-gradient(circle at 84% 10%, rgba(126, 237, 255, 0.14), transparent 30%);
		pointer-events: none;
	}

	body.gi-scope-blog .site-main--blog .gi-blog-hero {
		padding-top: clamp(5.6rem, 9vw, 8rem);
	}

	body.gi-scope-blog .featured-post__card {
		background: linear-gradient(170deg, #ffffff 0%, #f4f6ff 100%);
		border-color: color-mix(in srgb, var(--accent) 22%, #ffffff);
	}

	body:is(.gi-scope-webdev-main, .gi-scope-webdev-corporate, .gi-scope-webdev-landing, .gi-scope-webdev-redesign, .gi-scope-webdev-wordpress, .gi-scope-webdev-support) {
		--accent: #4c29d8;
	}

	body:is(.gi-scope-seo-main, .gi-scope-seo-poland, .gi-scope-seo-b2b, .gi-scope-seo-audit, .gi-scope-seo-technical, .gi-scope-seo-local) {
		--accent: #4a2fd0;
		--accent-2: #72e8ff;
	}

	body:is(.gi-scope-systems-main, .gi-scope-systems-crm, .gi-scope-systems-workflow, .gi-scope-systems-integration, .gi-scope-systems-dashboard, .gi-scope-systems-portal) {
		--accent: #3a2aa8;
		--accent-2: #8cf0e8;
	}

	body:is(.gi-scope-pricing-hub, .gi-scope-pricing-web, .gi-scope-pricing-seo, .gi-scope-pricing-systems) .lp-page .lp-pricing {
		background: color-mix(in srgb, var(--accent) 4%, #ffffff);
	}

	body:is(.gi-scope-pricing-hub, .gi-scope-pricing-web, .gi-scope-pricing-seo, .gi-scope-pricing-systems) .lp-page .gi-card,
	body:is(.gi-scope-pricing-hub, .gi-scope-pricing-web, .gi-scope-pricing-seo, .gi-scope-pricing-systems) .lp-page .lp-price-card {
		border-color: color-mix(in srgb, var(--accent) 22%, #ffffff);
		box-shadow: 0 16px 34px rgba(12, 12, 32, 0.08);
	}

	body.gi-scope-contact .lp-page .lp-hero {
		padding-bottom: clamp(2rem, 3.5vw, 3rem);
	}

	body.gi-scope-contact .lp-page .lp-contact-grid,
	body.gi-scope-contact .lp-page .lp-contact-shell {
		display: grid;
		gap: 1rem;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.5rem), 1fr));
	}

	.lp-page :is(.lp-surface-white, .lp-surface-soft, .lp-pricing, .lp-approach, .lp-services, .lp-process) :is(
		.gi-card,
		.lp-service-card,
		.lp-price-card,
		.gi-cta-card,
		.gi-proof-card,
		.gi-benefit-card,
		.gi-process-step
	) {
		border-color: color-mix(in srgb, var(--border) 80%, #d7deef);
		background:
			radial-gradient(circle at 12% 10%, rgba(114, 82, 242, 0.08), transparent 32%),
			linear-gradient(180deg, color-mix(in srgb, #ffffff 95%, #f4f7ff), color-mix(in srgb, #ffffff 88%, #edf2ff));
		box-shadow: 0 18px 40px rgba(12, 14, 34, 0.12);
	}

	.lp-page :is(.lp-surface-soft, .lp-approach, .lp-services, .lp-process) {
		position: relative;
		background: linear-gradient(180deg, #f7f8fd 0%, #f4f6fc 100%);
	}

	.lp-page :is(.lp-surface-soft, .lp-approach, .lp-services, .lp-process)::before {
		content: "";
		position: absolute;
		inset: 0;
		background:
			radial-gradient(circle at 8% 0%, rgba(84, 35, 231, 0.1), transparent 34%),
			radial-gradient(circle at 88% 100%, rgba(126, 237, 255, 0.12), transparent 30%);
		pointer-events: none;
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse) {
		position: relative;
		background:
			radial-gradient(circle at 15% 14%, rgba(89, 66, 226, 0.26), transparent 38%),
			radial-gradient(circle at 86% 20%, rgba(126, 237, 255, 0.16), transparent 30%),
			linear-gradient(180deg, #0a1029 0%, #070a18 58%, #000000 100%);
		color: rgba(240, 245, 255, 0.96);
	}

	.lp-page .lp-final {
		position: relative;
		background: #000000;
		color: rgba(240, 245, 255, 0.96);
	}

	.lp-page .lp-final::before,
	.lp-page .lp-final::after {
		display: none;
	}

	/* Non-hero dark sections must keep internal surfaces in dark mode. */
	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-card,
		.lp-service-card,
		.lp-price-card,
		.gi-cta-card,
		.gi-proof-card,
		.gi-benefit-card,
		.gi-process-step,
		.lp-stepper-grid > *,
		.lp-bento-grid > *
	) {
		background:
			radial-gradient(circle at 14% 10%, rgba(124, 196, 255, 0.08), transparent 50%),
			linear-gradient(165deg, rgba(13, 22, 48, 0.92), rgba(9, 15, 34, 0.92));
		border-color: color-mix(in srgb, #b5ccff 24%, transparent);
		box-shadow: 0 14px 32px rgba(2, 6, 19, 0.34);
		color: rgba(241, 246, 255, 0.96);
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-card,
		.lp-service-card,
		.lp-price-card,
		.gi-cta-card,
		.gi-proof-card,
		.gi-benefit-card,
		.gi-process-step,
		.lp-stepper-grid > *,
		.lp-bento-grid > *
	) :is(h2, h3, h4, strong, b) {
		color: rgba(247, 250, 255, 0.98);
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-card,
		.lp-service-card,
		.lp-price-card,
		.gi-cta-card,
		.gi-proof-card,
		.gi-benefit-card,
		.gi-process-step,
		.lp-stepper-grid > *,
		.lp-bento-grid > *
	) :is(p, li, span, small) {
		color: rgba(213, 224, 248, 0.92);
	}

	/* Non-hero dark sections: list-like points should be transparent rows. */
	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-list-cards > li,
		.lp-warning-list > li,
		.lp-dense-checklist > li,
		.gi-feature-list > li,
		.gi-check-list > li,
		.gi-service-card__list > li
	) {
		background: transparent;
		box-shadow: none;
		border-radius: 0;
		border-width: 0 0 1px;
		border-style: solid;
		border-color: color-mix(in srgb, #b8ccff 18%, transparent);
		padding-inline: 0;
		color: rgba(239, 245, 255, 0.96) !important;
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-list-cards > li,
		.lp-warning-list > li,
		.lp-dense-checklist > li,
		.gi-feature-list > li,
		.gi-check-list > li,
		.gi-service-card__list > li
	):last-child {
		border-bottom-color: transparent;
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-list-cards > li,
		.lp-warning-list > li,
		.lp-dense-checklist > li,
		.gi-feature-list > li,
		.gi-check-list > li,
		.gi-service-card__list > li
	) :is(h3, h4, strong, b) {
		color: rgba(248, 251, 255, 0.98) !important;
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-list-cards > li,
		.lp-warning-list > li,
		.lp-dense-checklist > li,
		.gi-feature-list > li,
		.gi-check-list > li,
		.gi-service-card__list > li
	) :is(p, span, small) {
		color: rgba(210, 224, 248, 0.92) !important;
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.gi-list-cards > li,
		.lp-warning-list > li,
		.lp-dense-checklist > li,
		.gi-feature-list > li,
		.gi-check-list > li,
		.gi-service-card__list > li
	) a {
		color: rgba(226, 238, 255, 0.96) !important;
	}

	.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero) :is(
		.lp-btn-inverse,
		.lp-btn-ghost-dark,
		.site-header__secondary-link.lp-btn-ghost-dark
	) {
		background: linear-gradient(160deg, rgba(57, 92, 204, 0.38), rgba(38, 65, 156, 0.34));
		border-color: color-mix(in srgb, #8fb6ff 34%, transparent);
		color: rgba(246, 250, 255, 0.98);
	}
}

@layer gins.utilities {
	/* Normalize six-card service grids to a stable 3x2 desktop layout. */
	body:is(
		.gi-scope-webdev-main,
		.gi-scope-webdev-corporate,
		.gi-scope-webdev-landing,
		.gi-scope-webdev-redesign,
		.gi-scope-webdev-wordpress,
		.gi-scope-webdev-support,
		.gi-scope-seo-main,
		.gi-scope-seo-poland,
		.gi-scope-seo-b2b,
		.gi-scope-seo-audit,
		.gi-scope-seo-technical,
		.gi-scope-seo-local,
		.gi-scope-systems-main,
		.gi-scope-systems-crm,
		.gi-scope-systems-workflow,
		.gi-scope-systems-integration,
		.gi-scope-systems-dashboard,
		.gi-scope-systems-portal
	) .lp-page :is(.gi-grid-3, .lp-stepper-grid, .lp-bento-grid, .lp-warning-list.gi-list-cards, .lp-dense-checklist.gi-list-cards):has(> :nth-child(6):last-child) {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(0.85rem, 1.6vw, 1.22rem);
	}

	@media (max-width: 1180px) {
		.site-navigation {
			display: none;
		}

		.site-header__actions {
			display: none;
		}

		body:is(
			.gi-scope-webdev-main,
			.gi-scope-webdev-corporate,
			.gi-scope-webdev-landing,
			.gi-scope-webdev-redesign,
			.gi-scope-webdev-wordpress,
			.gi-scope-webdev-support,
			.gi-scope-seo-main,
			.gi-scope-seo-poland,
			.gi-scope-seo-b2b,
			.gi-scope-seo-audit,
			.gi-scope-seo-technical,
			.gi-scope-seo-local,
			.gi-scope-systems-main,
			.gi-scope-systems-crm,
			.gi-scope-systems-workflow,
			.gi-scope-systems-integration,
			.gi-scope-systems-dashboard,
			.gi-scope-systems-portal
		) .lp-page :is(.gi-grid-3, .lp-stepper-grid, .lp-bento-grid, .lp-warning-list.gi-list-cards, .lp-dense-checklist.gi-list-cards):has(> :nth-child(6):last-child) {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}
	}

	@media (min-width: 1181px) {
		.site-header__actions {
			display: inline-flex;
		}

		.site-nav-toggle {
			display: none;
		}
	}

	@media (max-width: 781px) {
		html {
			scroll-padding-top: 4.8rem;
		}

		.gi-shell,
		.alignwide > .wp-block-group__inner-container,
		.alignwide.wp-block-group,
		.alignwide.wp-block-columns {
			width: min(100%, calc(100vw - 1rem));
		}

		.lp-page .gi-list-cards {
			grid-template-columns: minmax(0, 1fr);
		}

		.lp-page :is(.lp-hero, .gi-hero, .lp-final) :is(.wp-block-buttons, .gi-button-row, .lp-button-row) {
			display: flex;
			justify-content: center;
			align-items: center;
			text-align: center;
			width: 100%;
			margin-inline: auto;
		}

		.lp-page :is(.lp-hero, .gi-hero, .lp-final) :is(.wp-block-button, .site-header__cta, .lp-btn, .lp-btn-primary, .wp-block-button__link) {
			margin-inline: auto;
		}

		.gi-ui-scene__card,
		.gi-ui-scene--workflow .gi-ui-scene__card,
		.gi-ui-scene--pipeline .gi-ui-scene__card,
		.gi-ui-scene--portal .gi-ui-scene__card {
			grid-column: span 12;
		}

		.site-main,
		.site-footer {
			padding-bottom: 0;
		}

		.gi-mobile-intent-bar,
		.gi-mobile-intent-bar__inner,
		.gi-mobile-intent-bar__secondary,
		.gi-mobile-intent-bar__primary {
			display: none !important;
		}

		body:is(
			.gi-scope-webdev-main,
			.gi-scope-webdev-corporate,
			.gi-scope-webdev-landing,
			.gi-scope-webdev-redesign,
			.gi-scope-webdev-wordpress,
			.gi-scope-webdev-support,
			.gi-scope-seo-main,
			.gi-scope-seo-poland,
			.gi-scope-seo-b2b,
			.gi-scope-seo-audit,
			.gi-scope-seo-technical,
			.gi-scope-seo-local,
			.gi-scope-systems-main,
			.gi-scope-systems-crm,
			.gi-scope-systems-workflow,
			.gi-scope-systems-integration,
			.gi-scope-systems-dashboard,
			.gi-scope-systems-portal
		) .lp-page :is(.gi-grid-3, .lp-stepper-grid, .lp-bento-grid, .lp-warning-list.gi-list-cards, .lp-dense-checklist.gi-list-cards):has(> :nth-child(6):last-child) {
			grid-template-columns: minmax(0, 1fr);
		}
	}

	@media (prefers-reduced-motion: reduce) {
		html {
			scroll-behavior: auto;
		}

		.gi-reveal,
		[data-gi-animate],
		.gi-ui-scene__line > span,
		.site-header,
		.site-header__cta,
		.site-header__secondary-link,
		.site-menu > li > a,
		.gi-card,
		.gix-ui {
			transition-duration: 0.01ms !important;
			animation-duration: 0.01ms !important;
			animation-iteration-count: 1 !important;
			transform: none !important;
			opacity: 1 !important;
		}
	}
}


/* --- premium-scenes-v2.css --- */

/**
 * Premium scene system v2.
 *
 * Section-aware UI surfaces for gix/gi scenes.
 */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) {
	--ui-panel-bg: color-mix(in srgb, #ffffff 92%, #eef1fb);
	--ui-panel-bg-2: color-mix(in srgb, #ffffff 88%, #f3f5fb);
	--ui-panel-border: color-mix(in srgb, var(--accent, #5423e7) 22%, #d3dbf2);
	--ui-panel-text: color-mix(in srgb, var(--text, #0c0c20) 94%, #2c3146);
	--ui-panel-muted: color-mix(in srgb, var(--muted, #767676) 84%, #525a79);
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 94%, #6f5cff);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 90%, #9be5ff);
	--ui-panel-success: color-mix(in srgb, var(--success, #3da108) 90%, #56c41a);
	--ui-panel-warning: color-mix(in srgb, var(--warning, #d78942) 92%, #ebb16b);
	--ui-panel-glow: color-mix(in srgb, var(--ui-panel-accent) 18%, transparent);
	--ui-panel-shadow: 0 24px 52px rgba(9, 11, 30, 0.15);
	--ui-panel-radius: clamp(16px, 1.6vw, 24px);
	--ui-panel-gridline: color-mix(in srgb, var(--ui-panel-text) 11%, transparent);
	--ui-panel-chip-bg: color-mix(in srgb, #ffffff 82%, var(--ui-panel-accent) 18%);
	--ui-panel-chip-text: color-mix(in srgb, var(--ui-panel-text) 76%, var(--ui-panel-accent) 24%);
	--ui-scene-max: clamp(19rem, 36vw, 34rem);
	--ui-scene-pad: clamp(0.9rem, 1.8vw, 1.45rem);
	--ui-scene-gap: clamp(0.65rem, 1.3vw, 0.96rem);
	--ui-inset-row-inline: clamp(0.82rem, 1.2vw, 1.08rem);
	--ui-inset-row-block: clamp(0.62rem, 0.9vw, 0.8rem);
	--ui-inset-panel-inline: clamp(0.78rem, 1.1vw, 1.02rem);
	--ui-inset-panel-block: clamp(0.66rem, 0.92vw, 0.84rem);
	--ui-row-min-h: clamp(2.7rem, 3.9vw, 3.25rem);
	--ui-shift-x: 0;
	--ui-shift-y: 0;
	position: relative;
	display: grid;
	gap: var(--ui-scene-gap);
	inline-size: min(100%, var(--ui-scene-max));
	max-inline-size: 100%;
	min-inline-size: 0;
	padding: var(--ui-scene-pad);
	border: 1px solid var(--ui-panel-border);
	border-radius: var(--ui-panel-radius);
	background:
		radial-gradient(circle at 12% 10%, var(--ui-panel-glow), transparent 42%),
		radial-gradient(circle at 88% 14%, color-mix(in srgb, var(--ui-panel-accent-2) 14%, transparent), transparent 40%),
		linear-gradient(170deg, var(--ui-panel-bg) 0%, var(--ui-panel-bg-2) 100%);
	box-shadow: 0 24px 50px rgba(9, 11, 30, 0.16), var(--ui-panel-shadow);
	color: var(--ui-panel-text);
	overflow: hidden;
	isolation: isolate;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(var(--ui-panel-gridline) 1px, transparent 1px) 0 0 / 100% 34px,
		linear-gradient(90deg, var(--ui-panel-gridline) 1px, transparent 1px) 0 0 / 36px 100%;
	opacity: 0.28;
	pointer-events: none;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-role="hero"]::before {
	opacity: 0.14;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-size="ui-size-sm"]::before {
	opacity: 0.1;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])::after {
	content: "";
	position: absolute;
	inset: -18% -12%;
	background: radial-gradient(circle at 50% 24%, var(--ui-panel-glow), transparent 62%);
	opacity: 0.82;
	transform: translate3d(calc(var(--ui-shift-x) * 1px), calc(var(--ui-shift-y) * 1px), 0);
	transition: transform 0.4s ease;
	pointer-events: none;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) * {
	min-inline-size: 0;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-head,
	.gi-ui-scene__header
) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.6rem;
	flex-wrap: wrap;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-head__title,
	.gi-ui-scene__title
) {
	color: var(--ui-panel-text);
	font-weight: 700;
	letter-spacing: -0.014em;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-head__meta,
	.gix-subtle,
	.gix-mini,
	.gix-mono,
	.gi-ui-scene__header > span:last-child
) {
	color: var(--ui-panel-muted);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-badge,
	.gix-pill
) {
	border: 1px solid color-mix(in srgb, var(--ui-panel-accent) 28%, transparent);
	background: var(--ui-panel-chip-bg);
	color: var(--ui-panel-chip-text);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-surface,
	.gix-kpi,
	.gi-ui-scene__card,
	[class$="__card"],
	[class*="__card "],
	[class$="__module"],
	[class*="__module "],
	[class$="__node"],
	[class*="__node "],
	[class$="__pane"],
	[class*="__pane "],
	[class$="__tile"],
	[class*="__tile "],
	[class$="__item"],
	[class*="__item "]
) {
	border: 1px solid color-mix(in srgb, var(--ui-panel-border) 76%, transparent);
	border-radius: clamp(10px, 1vw, 14px);
	background: linear-gradient(
		180deg,
		color-mix(in srgb, var(--ui-panel-bg) 86%, #ffffff),
		color-mix(in srgb, var(--ui-panel-bg-2) 88%, #f7f8fd)
	);
	box-shadow: 0 10px 24px rgba(14, 17, 42, 0.12);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-surface,
	.gix-kpi,
	[class$="__card"],
	[class*="__card "],
	[class$="__module"],
	[class*="__module "],
	[class$="__pane"],
	[class*="__pane "],
	[class$="__tile"],
	[class*="__tile "]
) {
	padding: var(--ui-inset-panel-block) var(--ui-inset-panel-inline);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	[class$="__node"],
	[class*="__node "],
	[class$="__item"],
	[class*="__item "]
) {
	border-color: color-mix(in srgb, var(--ui-panel-border) 62%, transparent);
	box-shadow: 0 8px 18px rgba(12, 16, 38, 0.1);
	padding: var(--ui-inset-row-block) var(--ui-inset-row-inline);
	min-block-size: var(--ui-row-min-h);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	[class$="__row"],
	[class*="__row "],
	[class$="__track"],
	[class*="__track "],
	[class$="__lane"],
	[class*="__lane "]
) {
	padding: var(--ui-inset-row-block) var(--ui-inset-row-inline);
	min-block-size: var(--ui-row-min-h);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	[class$="__label"],
	[class*="__label "],
	[class$="__status"],
	[class*="__status "],
	[class$="__title"],
	[class*="__title "]
) {
	line-height: 1.34;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-line,
	.gi-ui-scene__line
) {
	background: color-mix(in srgb, var(--ui-panel-gridline) 88%, rgba(149, 156, 190, 0.18));
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	.gix-line > span,
	.gi-ui-scene__line > span
) {
	background: linear-gradient(90deg, var(--ui-panel-accent-2), var(--ui-panel-accent));
	transform-origin: left center;
	transform: scaleX(0.86);
	transition: transform 0.7s cubic-bezier(0.19, 0.8, 0.2, 1);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]).is-ui-in :where(
	.gix-line > span,
	.gi-ui-scene__line > span
) {
	transform: scaleX(1);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
	[class*="__grid"],
	[class*="__layout"],
	[class*="__flow"],
	[class*="__matrix"],
	.gix-kpis
) {
	inline-size: 100%;
	max-inline-size: 100%;
}

section :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
	justify-self: stretch;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-role="hero"] {
	--ui-scene-max: clamp(21rem, 47vw, 40rem);
	--ui-scene-pad: clamp(0.9rem, 1.6vw, 1.22rem);
	justify-self: end;
	align-self: center;
	z-index: 2;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-role="support"] {
	--ui-scene-max: clamp(18rem, 34vw, 30rem);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-role="mini"] {
	--ui-scene-max: clamp(13.8rem, 24vw, 19.6rem);
	--ui-scene-pad: clamp(0.66rem, 1.04vw, 0.88rem);
	--ui-scene-gap: clamp(0.46rem, 0.8vw, 0.64rem);
}

/* Tonal variants */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-tone="ui-tone-light"] {
	--ui-panel-bg: color-mix(in srgb, #ffffff 92%, #eef2fb);
	--ui-panel-bg-2: color-mix(in srgb, #ffffff 88%, #f3f5fc);
	--ui-panel-border: color-mix(in srgb, var(--accent, #5423e7) 16%, #d4dbef);
	--ui-panel-text: color-mix(in srgb, var(--text, #0c0c20) 94%, #212742);
	--ui-panel-muted: color-mix(in srgb, var(--muted, #767676) 85%, #505976);
	--ui-panel-glow: color-mix(in srgb, var(--accent-2, #7eedff) 17%, transparent);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-tone="ui-tone-light-premium"] {
	--ui-panel-bg: color-mix(in srgb, #ffffff 78%, #eef1ff);
	--ui-panel-bg-2: color-mix(in srgb, #f9fbff 74%, #e9ecff);
	--ui-panel-border: color-mix(in srgb, var(--accent, #5423e7) 24%, #c9d4f2);
	--ui-panel-chip-bg: color-mix(in srgb, #ffffff 72%, var(--ui-panel-accent) 28%);
	--ui-panel-glow: color-mix(in srgb, var(--ui-panel-accent) 18%, transparent);
	--ui-panel-shadow: 0 24px 52px rgba(11, 14, 37, 0.18);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-tone="ui-tone-dark-soft"] {
	--ui-panel-bg: color-mix(in srgb, #11142b 88%, #1b2243);
	--ui-panel-bg-2: color-mix(in srgb, #0f1328 92%, #20264a);
	--ui-panel-border: color-mix(in srgb, var(--accent-2, #7eedff) 28%, #394065);
	--ui-panel-text: #edf1ff;
	--ui-panel-muted: rgba(223, 231, 255, 0.72);
	--ui-panel-gridline: rgba(224, 234, 255, 0.11);
	--ui-panel-chip-bg: color-mix(in srgb, #151a35 70%, var(--ui-panel-accent) 30%);
	--ui-panel-chip-text: #e9efff;
	--ui-panel-glow: color-mix(in srgb, var(--accent-2, #7eedff) 24%, transparent);
	--ui-panel-shadow: 0 26px 52px rgba(3, 4, 14, 0.44);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-tone="ui-tone-dark"] {
	--ui-panel-bg: #090d1f;
	--ui-panel-bg-2: #10162c;
	--ui-panel-border: rgba(133, 177, 255, 0.34);
	--ui-panel-text: #f2f6ff;
	--ui-panel-muted: rgba(222, 231, 255, 0.72);
	--ui-panel-gridline: rgba(214, 227, 255, 0.12);
	--ui-panel-chip-bg: color-mix(in srgb, #13182f 66%, var(--ui-panel-accent) 34%);
	--ui-panel-chip-text: #eef2ff;
	--ui-panel-glow: color-mix(in srgb, var(--ui-panel-accent) 26%, transparent);
	--ui-panel-shadow: 0 24px 54px rgba(4, 6, 16, 0.5);
}

/* Scope-aware color alignment */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-scope^="gi-scope-webdev"] {
	--ui-panel-accent: color-mix(in srgb, #4c29d8 86%, #355fe0 14%);
	--ui-panel-accent-2: color-mix(in srgb, #7eedff 82%, #9ae7ff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-scope^="gi-scope-seo"] {
	--ui-panel-accent: color-mix(in srgb, #4a2fd0 82%, #396fda 18%);
	--ui-panel-accent-2: color-mix(in srgb, #72e8ff 86%, #8befff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-scope^="gi-scope-systems"] {
	--ui-panel-accent: color-mix(in srgb, #3a2aa8 78%, #2b73c7 22%);
	--ui-panel-accent-2: color-mix(in srgb, #8cf0e8 74%, #7ddcff 26%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-scope^="gi-scope-pricing"] {
	--ui-panel-accent: color-mix(in srgb, #4a2fd0 56%, #d78942 44%);
	--ui-panel-accent-2: color-mix(in srgb, #7eedff 54%, #eac285 46%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-scope="gi-scope-home"] {
	--ui-panel-accent: color-mix(in srgb, #5423e7 84%, #3d88ff 16%);
	--ui-panel-accent-2: color-mix(in srgb, #7eedff 86%, #9df5ff 14%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-tone^="ui-tone-dark"] :where(
	.gix-surface,
	.gix-kpi,
	.gi-ui-scene__card,
	[class$="__card"],
	[class*="__card "],
	[class$="__module"],
	[class*="__module "],
	[class$="__node"],
	[class*="__node "],
	[class$="__pane"],
	[class*="__pane "],
	[class$="__tile"],
	[class*="__tile "],
	[class$="__item"],
	[class*="__item "]
) {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03));
	border-color: color-mix(in srgb, var(--ui-panel-border) 84%, transparent);
	box-shadow: none;
}

/* Size system */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-size="ui-size-sm"] {
	--ui-scene-max: clamp(14.8rem, 25vw, 20.5rem);
	--ui-scene-pad: clamp(0.72rem, 1.2vw, 0.96rem);
	--ui-scene-gap: clamp(0.52rem, 1vw, 0.72rem);
	--ui-inset-row-inline: clamp(0.72rem, 1vw, 0.92rem);
	--ui-inset-row-block: clamp(0.54rem, 0.72vw, 0.7rem);
	--ui-inset-panel-inline: clamp(0.7rem, 0.96vw, 0.9rem);
	--ui-inset-panel-block: clamp(0.56rem, 0.8vw, 0.72rem);
	--ui-row-min-h: clamp(2.4rem, 3.3vw, 2.8rem);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-size="ui-size-md"] {
	--ui-scene-max: clamp(18rem, 31vw, 28rem);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-size="ui-size-lg"] {
	--ui-scene-max: clamp(20rem, 38vw, 34rem);
	--ui-scene-pad: clamp(0.9rem, 1.55vw, 1.22rem);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-size="ui-size-xl"] {
	--ui-scene-max: clamp(22rem, 49vw, 42rem);
	--ui-scene-pad: clamp(0.95rem, 1.8vw, 1.36rem);
	aspect-ratio: 16 / 10;
	min-block-size: clamp(15.2rem, 28vw, 22rem);
}

/* Section / layout balance */

.lp-hero :where(.gix-ui[data-ui-v2][data-ui-size="ui-size-xl"], .gi-ui-scene[data-ui-v2][data-ui-size="ui-size-xl"]) {
	align-self: center;
}

.lp-split-col :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]),
.lp-hero__visual :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
	inline-size: 100%;
	max-inline-size: min(100%, var(--ui-scene-max));
}

/* Width normalization for UI scenes injected instead of images. */
.lp-page :where(.gix-ui.gix-fit-hero[data-ui-v2], .gix-ui.gix-fit-section[data-ui-v2]) {
	inline-size: 100%;
	max-inline-size: 100%;
	width: 100%;
	margin-inline: 0;
}

.lp-page :is(.lp-hero__visual, .lp-split-col, .lp-side-col, .lp-sticky-col, .lp-contact-grid, .lp-contact-shell)
	:where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
	--ui-scene-max: 100%;
	inline-size: 100%;
	max-inline-size: 100%;
	width: 100%;
	justify-self: stretch;
	margin-inline: 0;
}

.lp-page :is(.gi-card, .lp-service-card, .lp-price-card, .lp-route-card, .lp-value-card)
	:where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
	--ui-scene-max: 100%;
	inline-size: 100%;
	max-inline-size: 100%;
	width: 100%;
	justify-self: stretch;
	margin-inline: 0;
}

.lp-page :where(.gix-ui.lp-ui-qa[data-ui-v2], .gix-ui.lp-contact-meta[data-ui-v2], .gix-ui.lp-form-surface[data-ui-v2]) {
	--ui-scene-max: 100%;
	inline-size: 100%;
	max-inline-size: 100%;
	width: 100%;
	margin-inline: 0;
}

body[class*="gi-scope-"] .lp-page .lp-hero__visual :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
	margin-inline: auto 0;
	overflow: visible !important;
}

@media (min-width: 900px) and (max-width: 1100px) {
	body[class*="gi-scope-"] .lp-page .lp-hero .lp-hero__grid {
		margin-top: 0.2rem;
	}
}

/* Variant tuning for stronger productized meaning */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="executive-stack"] {
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 92%, #5f4fff);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 92%, #8be9ff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="pricing-logic"] {
	--ui-panel-accent: color-mix(in srgb, var(--warning, #d78942) 78%, var(--accent, #5423e7) 22%);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 58%, #f2c586 42%);
	--ui-panel-chip-bg: color-mix(in srgb, #ffffff 74%, var(--ui-panel-warning) 26%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="analytics-proof"] {
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 84%, #3d88ff);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 92%, #89f4ff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="workflow-ops"] {
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 74%, #2d8dda 26%);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 84%, #89e7ff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="architecture-map"] {
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 78%, #2f61d9 22%);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 80%, #8fe6ff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="portal-shell"] {
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 70%, #2d84c9 30%);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 72%, #9be5ff);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="contact-proof"] {
	--ui-panel-accent: color-mix(in srgb, var(--accent, #5423e7) 66%, #2f7fd0 34%);
	--ui-panel-accent-2: color-mix(in srgb, var(--accent-2, #7eedff) 76%, #a2ecff);
	--ui-panel-radius: clamp(12px, 1.4vw, 18px);
}

/* Page/service differentiation */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-webdev-"] {
	--ui-panel-accent: color-mix(in srgb, #4c29d8 80%, #3567de 20%);
	--ui-panel-accent-2: color-mix(in srgb, #7eedff 82%, #9be8ff 18%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family="scene-corporate-site-architecture"] {
	--ui-panel-accent: color-mix(in srgb, #4f35d5 70%, #66a1ff 30%);
	--ui-panel-accent-2: color-mix(in srgb, #9fd9ff 62%, #c3ecff 38%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family="scene-landing-cro-map"] {
	--ui-panel-accent: color-mix(in srgb, #562de2 66%, #4f86ff 34%);
	--ui-panel-accent-2: color-mix(in srgb, #8cecff 58%, #c8f8ff 42%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family="scene-migration-safety"] {
	--ui-panel-accent: color-mix(in srgb, #4f33da 60%, #4ea2f2 40%);
	--ui-panel-accent-2: color-mix(in srgb, #8ff0ff 60%, #e8bd76 40%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-seo-"] {
	--ui-panel-accent: color-mix(in srgb, #3f59d7 48%, #00b67a 52%);
	--ui-panel-accent-2: color-mix(in srgb, #74ecff 64%, #9bf4d6 36%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family="scene-b2b-intent-funnel"],
:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family="scene-b2b-funnel-analytics"] {
	--ui-panel-accent: color-mix(in srgb, #4a2fd0 54%, #11b798 46%);
	--ui-panel-accent-2: color-mix(in srgb, #8ceeff 58%, #8cffcf 42%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-business-system"],
:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-crm-erp"],
:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-workflow"],
:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-api-"],
:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-dashboard-"],
:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-portal-"] {
	--ui-panel-accent: color-mix(in srgb, #3a2aa8 58%, #2097c5 42%);
	--ui-panel-accent-2: color-mix(in srgb, #8cf0e8 72%, #9fdcff 28%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family^="scene-pricing-"] {
	--ui-panel-accent: color-mix(in srgb, #4a2fd0 54%, #d78942 46%);
	--ui-panel-accent-2: color-mix(in srgb, #94e9ff 56%, #efc88d 44%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-family="scene-growth-stack"] {
	--ui-panel-accent: color-mix(in srgb, #5423e7 74%, #2e9be6 26%);
	--ui-panel-accent-2: color-mix(in srgb, #7eedff 86%, #a6ecff 14%);
}

/* Rescue overrides for scene components with hardcoded local styles */

body[class*="gi-scope-"] .lp-page :where(
	.gix-sys-map,
	.gix-site-anatomy,
	.gix-terminal,
	.gix-investment-board,
	.gix-cost-drivers,
	.gix-estimate-flow,
	.gix-diagnostic-card,
	.gix-action-matrix,
	.gix-dashboard,
	.gix-b2b-dashboard,
	.gix-b2b-pipeline,
	.gix-seo-arch,
	.gix-workflow-builder,
	.gix-process-compare,
	.gix-sla-monitor,
	.gix-unified-hub,
	.gix-rbac-board,
	.gix-portal-access,
	.gix-portal-ecosystem,
	.gix-self-service,
	.gix-configurator,
	.gix-scope-analyzer,
	.gix-seo-cost-arch
)[data-ui-v2] {
	background:
		radial-gradient(circle at 14% 12%, var(--ui-panel-glow), transparent 46%),
		linear-gradient(165deg, var(--ui-panel-bg), var(--ui-panel-bg-2)) !important;
	border-color: var(--ui-panel-border) !important;
	box-shadow: var(--ui-panel-shadow) !important;
	color: var(--ui-panel-text) !important;
}

body[class*="gi-scope-"] .lp-page :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
	box-shadow: var(--ui-panel-shadow);
}

.lp-page .gix-ui.lp-ui-hero-glass[data-ui-v2],
.lp-page .gix-ui.lp-ui-qa[data-ui-v2],
.lp-page .gix-ui.lp-contact-meta[data-ui-v2],
.lp-page .gix-ui.lp-form-surface[data-ui-v2] {
	box-shadow: var(--ui-panel-shadow) !important;
}

.lp-page .gix-ui.lp-ui-hero-glass[data-ui-v2] :is(.lp-ui-hero-glass__node-label, .lp-ui-hero-glass__node-status) {
	border: 0;
	box-shadow: none;
	background: transparent;
}

body[class*="gi-scope-"] .lp-page :where(.gix-ui[data-ui-v2]) :where(
	.gix-badge,
	.gix-pill
) {
	background: var(--ui-panel-chip-bg) !important;
	border-color: color-mix(in srgb, var(--ui-panel-accent) 30%, transparent) !important;
	color: var(--ui-panel-chip-text) !important;
}

body[class*="gi-scope-"] .lp-page :where(.gix-ui[data-ui-v2]) :where(
	.gix-site-layer__info strong,
	.gix-sys-node__data strong,
	.gix-path-text strong,
	.gix-driver-info span,
	.gix-summary-box strong,
	.gix-invest__title,
	.gix-site-anatomy__title,
	.gix-sys-map__title
) {
	color: var(--ui-panel-text) !important;
}

body[class*="gi-scope-"] .lp-page :where(.gix-ui[data-ui-v2]) :where(
	.gix-site-layer__info span,
	.gix-sys-node__data span,
	.gix-driver-info strong,
	.gix-summary-box span,
	.gix-path-text span,
	.gix-terminal__head span:first-child,
	.gix-im-label,
	.gix-head__meta
) {
	color: var(--ui-panel-muted) !important;
}

/* Keep scene sub-surfaces dark in non-hero dark sections. */
.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero)
	:where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2])
	:is(.gix-terminal__head, .gix-configurator__head, .gix-dm-header, .gix-eco-node, .gix-role-card, .gix-metric-box) {
	background: linear-gradient(165deg, rgba(14, 24, 49, 0.86), rgba(9, 16, 35, 0.86)) !important;
	border-color: color-mix(in srgb, #b8cdff 22%, transparent) !important;
	color: rgba(236, 243, 255, 0.94) !important;
	box-shadow: 0 12px 28px rgba(2, 7, 22, 0.32) !important;
}

.lp-page :is(section, .gi-section, .wp-block-group):is(.lp-surface-dark, .lp-heading-inverse, .lp-final):not(.lp-hero)
	:where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2])
	:is(.gix-metric-box, .gix-role-card) :is(span, small, strong, b) {
	color: rgba(232, 240, 255, 0.94);
}

body[class*="gi-scope-"] .lp-page :where(.gix-ui[data-ui-v2]) :where(
	.gix-sys-line,
	.gix-path-line,
	.gix-site-anatomy__scanner
) {
	background: linear-gradient(180deg, color-mix(in srgb, var(--ui-panel-accent) 62%, transparent), transparent) !important;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="terminal-proof"] :where(
	.gix-mono,
	code,
	pre
) {
	color: color-mix(in srgb, var(--ui-panel-accent-2) 70%, var(--ui-panel-text) 30%);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-variant="terminal-proof"] :where(
	.gix-head__title
) {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
	letter-spacing: -0.005em;
}

/* Motion refinement */

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-motion="tilt"] {
	transition: box-shadow 0.35s ease, border-color 0.35s ease;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-motion="tilt"].is-ui-hover {
	box-shadow: 0 24px 50px rgba(8, 11, 30, 0.18);
	border-color: color-mix(in srgb, var(--ui-panel-accent) 30%, transparent);
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) .is-float {
	animation-duration: 5.4s;
	animation-iteration-count: 2;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) .is-pulse {
	animation-duration: 2.2s;
	animation-iteration-count: 4;
}

:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) .is-scan::after {
	animation-duration: 4.8s;
	animation-iteration-count: 2;
}

/* Responsive */

@media (max-width: 1180px) {
	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-role="hero"] {
		--ui-scene-max: clamp(18rem, 72vw, 35rem);
		aspect-ratio: auto;
		min-block-size: clamp(14rem, 40vw, 20rem);
		justify-self: center;
	}
}

@media (max-width: 1024px) {
	.lp-page :where(.gix-ui.lp-form-surface[data-ui-v2], .gix-ui.lp-contact-meta[data-ui-v2]) {
		min-block-size: clamp(14rem, 42vw, 20rem);
		max-block-size: none;
		overflow: visible;
	}

	body[class*="gi-scope-"] .lp-page .lp-hero__visual :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
		--ui-scene-max: 100%;
		inline-size: 100%;
		max-inline-size: 100%;
		width: 100%;
		margin-inline: 0;
	}

	body[class*="gi-scope-"] .lp-page .lp-hero__visual[data-lp-fade="left"],
	body[class*="gi-scope-"] .lp-page .lp-hero__visual[data-lp-fade="right"] {
		transform: translateY(20px) !important;
	}

	body[class*="gi-scope-"] .lp-page .lp-hero__visual[data-lp-fade].is-visible {
		transform: translateY(0) !important;
	}
}

@media (max-width: 781px) {
	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) {
		--ui-scene-pad: clamp(0.8rem, 3.9vw, 1.04rem);
		--ui-scene-gap: clamp(0.62rem, 2.6vw, 0.84rem);
		--ui-inset-row-inline: clamp(0.72rem, 2.6vw, 0.9rem);
		--ui-inset-row-block: clamp(0.62rem, 2.3vw, 0.8rem);
		--ui-inset-panel-inline: clamp(0.7rem, 2.4vw, 0.88rem);
		--ui-inset-panel-block: clamp(0.62rem, 2.2vw, 0.82rem);
		--ui-row-min-h: clamp(2.72rem, 8.2vw, 3.24rem);
		--ui-scene-max: 100%;
		inline-size: 100%;
		aspect-ratio: auto !important;
		min-block-size: fit-content;
		max-block-size: none;
		overflow: visible;
	}

	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])::before {
		background:
			linear-gradient(var(--ui-panel-gridline) 1px, transparent 1px) 0 0 / 100% 28px,
			linear-gradient(90deg, var(--ui-panel-gridline) 1px, transparent 1px) 0 0 / 28px 100%;
		opacity: 0.2;
	}

	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])[data-ui-role="hero"] {
		--ui-scene-max: 100%;
		--ui-scene-pad: clamp(0.68rem, 2.7vw, 0.88rem);
		min-block-size: clamp(16.5rem, 56vw, 24rem);
		max-block-size: none;
		overflow: visible;
	}

	.lp-page :is(.lp-hero__visual, .lp-split-col, .lp-side-col, .lp-sticky-col)
		:where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
		--ui-scene-max: 100%;
		inline-size: 100%;
		max-inline-size: 100%;
		width: 100%;
		margin-inline: 0;
	}

	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
		.gix-row,
		[class$="__row"],
		[class*="__row "],
		[class$="__track"],
		[class*="__track "],
		[class$="__lane"],
		[class*="__lane "]
	) {
		gap: clamp(0.5rem, 1.8vw, 0.72rem);
	}

	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
		[class$="__label"],
		[class*="__label "],
		[class$="__status"],
		[class*="__status "],
		[class$="__title"],
		[class*="__title "]
	) {
		line-height: 1.4;
	}
}

@media (prefers-reduced-motion: reduce) {
	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]),
	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2])::after,
	:where(.lp-page .gix-ui[data-ui-v2], .lp-page .gi-ui-scene[data-ui-v2]) :where(
		.gix-line > span,
		.gi-ui-scene__line > span,
		.is-float,
		.is-pulse,
		.is-scan::after
	) {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transform: none !important;
	}
}

.lp-page :is(.lp-surface-white, .lp-surface-soft, .lp-pricing, .lp-approach, .lp-services, .lp-process) :is(
	.gi-card,
	.lp-service-card,
	.lp-price-card,
	.gi-cta-card,
	.gi-proof-card,
	.gi-benefit-card,
	.gi-process-step
) {
	border-color: color-mix(in srgb, var(--border, rgba(12, 12, 32, 0.1)) 80%, #d7deef);
	background: linear-gradient(180deg, color-mix(in srgb, #ffffff 95%, #f4f7ff), color-mix(in srgb, #ffffff 88%, #edf2ff));
	box-shadow: 0 12px 28px rgba(12, 14, 34, 0.06);
}

/* SEO service page: enforce 3 cards on row 1 and 2 full-width cards on row 2. */
body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md {
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md > .lp-bento-card {
	grid-column: span 2;
}

body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md > .lp-bento-card:nth-child(4),
body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md > .lp-bento-card:nth-child(5) {
	grid-column: span 3;
}

body.gi-page-id-302 .lp-page .lp-bento-grid:has(> .lp-bento-card:nth-child(5):last-child) {
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body.gi-page-id-302 .lp-page .lp-bento-grid:has(> .lp-bento-card:nth-child(5):last-child) > .lp-bento-card:nth-child(-n+3) {
	grid-column: span 2;
}

body.gi-page-id-302 .lp-page .lp-bento-grid:has(> .lp-bento-card:nth-child(5):last-child) > .lp-bento-card:nth-child(n+4) {
	grid-column: span 3;
}

@media (max-width: 1180px) {
	body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md > .lp-bento-card {
		grid-column: auto !important;
	}

	body.gi-page-id-302 .lp-page .lp-bento-grid:has(> .lp-bento-card:nth-child(5):last-child) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.gi-page-id-302 .lp-page .lp-bento-grid:has(> .lp-bento-card:nth-child(5):last-child) > .lp-bento-card {
		grid-column: auto !important;
	}
}

@media (max-width: 781px) {
	body.gi-page-id-302 .lp-page .lp-bento-grid.lp-mt-md {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.gi-page-id-302 .lp-page .lp-bento-grid:has(> .lp-bento-card:nth-child(5):last-child) {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* WordPress service page: enforce 3 cards on row 1 and 2 full-width cards on row 2. */
body.gi-page-id-254 .lp-page .lp-stepper-grid:has(> .lp-step-card:nth-child(5):last-child) {
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body.gi-page-id-254 .lp-page .lp-stepper-grid:has(> .lp-step-card:nth-child(5):last-child) > .lp-step-card:nth-child(-n+3) {
	grid-column: span 2;
}

body.gi-page-id-254 .lp-page .lp-stepper-grid:has(> .lp-step-card:nth-child(5):last-child) > .lp-step-card:nth-child(n+4) {
	grid-column: span 3;
}

@media (max-width: 1180px) {
	body.gi-page-id-254 .lp-page .lp-stepper-grid:has(> .lp-step-card:nth-child(5):last-child) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.gi-page-id-254 .lp-page .lp-stepper-grid:has(> .lp-step-card:nth-child(5):last-child) > .lp-step-card {
		grid-column: auto !important;
	}
}

@media (max-width: 781px) {
	body.gi-page-id-254 .lp-page .lp-stepper-grid:has(> .lp-step-card:nth-child(5):last-child) {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* Pricing systems page: force hero lead/support copy to white for readability. */
body:is(.gi-page-id-249, .gi-scope-pricing-systems) .lp-page .lp-hero :is(.lp-hero__lead, .lp-hero__support) {
	color: rgba(247, 250, 255, 0.96) !important;
}

body:is(.gi-page-id-249, .gi-scope-pricing-systems) .lp-page .lp-hero .lp-hero__support strong {
	color: #ffffff !important;
}

/* Pricing hub (/ceny/): keep "Engagement Lifecycle" UI in light mode. */
body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-estimate-flow {
	background:
		radial-gradient(circle at 12% 8%, rgba(84, 35, 231, 0.1), transparent 40%),
		linear-gradient(165deg, #ffffff 0%, #f5f7ff 100%) !important;
	border: 1px solid color-mix(in srgb, #5423e7 18%, #d7deef) !important;
	box-shadow: 0 18px 38px rgba(10, 13, 32, 0.12) !important;
	color: #0c0c20 !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-est-flow__head {
	color: rgba(12, 12, 32, 0.56) !important;
	border-bottom: 1px solid rgba(12, 12, 32, 0.12) !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-estimate-flow .gix-badge {
	background: color-mix(in srgb, #ffffff 86%, #e8edff) !important;
	border-color: color-mix(in srgb, #5423e7 26%, transparent) !important;
	color: color-mix(in srgb, #0c0c20 78%, #5423e7 22%) !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-line {
	background: rgba(12, 12, 32, 0.14) !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-line.is-done {
	background: #00b67a !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-icon {
	border-color: rgba(22, 31, 62, 0.26) !important;
	color: #0c0c20 !important;
	background: rgba(255, 255, 255, 0.95);
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-node.is-done .gix-path-icon {
	border-color: #00b67a !important;
	color: #ffffff !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-node.is-active .gix-path-icon {
	border-color: color-mix(in srgb, #5423e7 70%, #a38cff) !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-text strong {
	color: #0c0c20 !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-node.is-active .gix-path-text strong {
	color: color-mix(in srgb, #5423e7 86%, #3f2a9f) !important;
}

body:is(.gi-page-id-244, .gi-scope-pricing-hub) .lp-page .gix-path-text span {
	color: rgba(12, 12, 32, 0.56) !important;
}

/* Pricing websites page (/ceny/sayty/): white hero support copy. */
body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .lp-hero :is(.lp-hero__lead, .lp-hero__support) {
	color: rgba(247, 250, 255, 0.96) !important;
}

body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .lp-hero .lp-hero__support strong {
	color: #ffffff !important;
}

/* Pricing websites page (/ceny/sayty/): 5 price cards as 3 + 2 full-width row layout. */
body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .gix-pricing-matrix:has(> .gix-price-card:nth-child(5):last-child) {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .gix-pricing-matrix:has(> .gix-price-card:nth-child(5):last-child) > .gix-price-card:nth-child(-n+3) {
	grid-column: span 2 !important;
}

body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .gix-pricing-matrix:has(> .gix-price-card:nth-child(5):last-child) > .gix-price-card:nth-child(n+4) {
	grid-column: span 3 !important;
}

/* Fallback for engines that do not apply :has reliably. */
body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page #pricing-matrix .gix-pricing-matrix {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page #pricing-matrix .gix-pricing-matrix > .gix-price-card:nth-child(-n+3) {
	grid-column: span 2 !important;
}

body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page #pricing-matrix .gix-pricing-matrix > .gix-price-card:nth-child(n+4) {
	grid-column: span 3 !important;
}

@media (max-width: 1180px) {
	body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .gix-pricing-matrix:has(> .gix-price-card:nth-child(5):last-child),
	body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page #pricing-matrix .gix-pricing-matrix {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .gix-pricing-matrix:has(> .gix-price-card:nth-child(5):last-child) > .gix-price-card,
	body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page #pricing-matrix .gix-pricing-matrix > .gix-price-card {
		grid-column: auto !important;
	}
}

@media (max-width: 781px) {
	body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page .gix-pricing-matrix:has(> .gix-price-card:nth-child(5):last-child),
	body:is(.gi-page-id-248, .gi-scope-pricing-web) .lp-page #pricing-matrix .gix-pricing-matrix {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}


/* --- premium-mobile-rescue.css --- */

:root {
	--gi-mobile-header-offset: calc(3.9rem + env(safe-area-inset-top));
	--gi-mobile-cta-safe: calc(0.9rem + env(safe-area-inset-bottom));
}

@media (max-width: 1024px) {
	.lp-page .lp-hero {
		padding-top: max(clamp(5.7rem, 9vw, 7.1rem), calc(var(--gi-mobile-header-offset) + 0.45rem)) !important;
		padding-bottom: clamp(2rem, 6vw, 3.2rem) !important;
		min-height: auto !important;
	}

	.lp-page .lp-hero__grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: clamp(1.2rem, 4.6vw, 2.2rem) !important;
		align-items: start !important;
	}

	.lp-page :where(.lp-hero__content, .lp-hero__visual, .lp-split__main, .lp-split__side, .lp-split-col, .lp-side-col, .lp-sticky-col) {
		min-inline-size: 0;
		max-inline-size: 100%;
	}

	.lp-page :where(.lp-sticky-col, .lp-split__side, [class*="lp-sticky"], [class*="is-sticky"]) {
		position: static !important;
		top: auto !important;
		inset: auto !important;
	}

	.lp-page :where(.lp-split, .lp-split-layout, .lp-routing-layout, .lp-tech-layout, .lp-faq-layout, .lp-problem-solution-layout) {
		display: grid;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: clamp(1.2rem, 4.2vw, 2rem) !important;
	}

	.lp-page :where(.lp-grid-4-strict, .lp-bento-grid, .lp-stepper-grid, .gi-grid-3, .lp-route-grid, .gi-capability-matrix, .gi-estimate-logic) {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: clamp(0.72rem, 2.5vw, 1rem);
	}

	.lp-page .lp-hero :where(.gi-button-row, .wp-block-buttons, .lp-actions) {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.65rem;
		align-items: stretch;
	}

	.lp-page .lp-hero :where(.gi-button-row > *, .wp-block-buttons > *, .lp-actions > *) {
		min-width: 0;
	}

	.lp-page .lp-hero :where(.gix-ui[data-ui-v2], .gi-ui-scene[data-ui-v2]) {
		max-inline-size: 100%;
		inline-size: 100%;
		width: 100%;
		margin-inline: 0;
	}

	.lp-page .lp-hero :where(.gix-ui[data-ui-v2][data-ui-role="hero"], .gi-ui-scene[data-ui-v2][data-ui-role="hero"]) {
		max-block-size: none;
		min-block-size: clamp(17.2rem, 50vw, 25rem);
		overflow: visible;
	}

	.lp-page :is(.lp-surface-dark, .lp-final, .lp-heading-inverse):not(.lp-hero) .gi-list-cards > li {
		background: transparent;
		border-color: color-mix(in srgb, #b8ccff 18%, transparent);
		box-shadow: none;
		color: rgba(236, 242, 255, 0.92);
	}
}

@media (max-width: 781px) {
	.site-header {
		padding-top: env(safe-area-inset-top);
		border-bottom: 0;
		background: transparent !important;
		backdrop-filter: none;
	}

	.site-header__inner {
		min-height: 3.45rem;
		padding: 0.42rem 0.56rem 0.42rem 0.74rem;
		border-radius: 999px;
		border: 1px solid rgba(227, 227, 227, 0.95);
		background: color-mix(in srgb, #f8f9ff 94%, #ffffff);
		box-shadow: 0 8px 18px rgba(12, 12, 32, 0.08);
		gap: 0.56rem;
	}

	.site-header__brand {
		min-width: 0;
		max-width: calc(100% - 3rem);
	}

	.site-header__brand :where(a, .site-brand, .custom-logo-link) {
		display: inline-flex;
		align-items: center;
		max-width: 100%;
	}

	.site-nav-toggle,
	.mobile-menu__close {
		width: 2.65rem;
		height: 2.65rem;
		border-color: rgba(22, 34, 64, 0.18);
		background: #ffffff;
		box-shadow: 0 8px 18px rgba(12, 18, 38, 0.12);
	}

	.site-nav-toggle {
		margin-left: auto;
	}

	.site-nav-toggle span,
	.mobile-menu__close span {
		width: 0.92rem;
		background: #151d34;
	}

	.site-nav-toggle:hover,
	.site-nav-toggle:focus-visible,
	.mobile-menu__close:hover,
	.mobile-menu__close:focus-visible {
		border-color: rgba(20, 33, 62, 0.26);
		background: #ffffff;
		box-shadow: 0 10px 20px rgba(10, 17, 36, 0.16);
	}

	.mobile-menu {
		padding:
			max(0.72rem, env(safe-area-inset-top))
			max(0.6rem, env(safe-area-inset-right))
			max(0.72rem, env(safe-area-inset-bottom))
			max(0.6rem, env(safe-area-inset-left));
		background: rgba(8, 12, 24, 0.5);
	}

	.mobile-menu__inner {
		background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
		border: 1px solid rgba(19, 30, 56, 0.14);
		box-shadow: 0 26px 54px rgba(9, 14, 32, 0.2);
	}

	.mobile-menu__top {
		padding-bottom: 0.86rem;
		border-bottom: 1px solid rgba(20, 32, 60, 0.1);
	}

	.mobile-menu__list {
		gap: 0.72rem;
	}

	.mobile-menu__list a {
		min-height: 3rem;
		padding: 0.86rem 0.96rem;
		background: #ffffff;
		border-color: rgba(20, 33, 62, 0.14);
		color: #151d34;
		font-weight: 600;
	}

	.mobile-menu__list a:hover,
	.mobile-menu__list a:focus-visible,
	.mobile-menu__list .current-menu-item > a,
	.mobile-menu__list .current-menu-parent > a,
	.mobile-menu__list .current-menu-ancestor > a,
	.mobile-menu__list a[aria-current="page"] {
		background: color-mix(in srgb, var(--gi-accent) 7%, #ffffff);
		border-color: color-mix(in srgb, var(--gi-accent) 28%, #dce3f5);
		color: #101a33;
		box-shadow: 0 6px 14px rgba(73, 38, 180, 0.09);
	}

	.mobile-menu__list .sub-menu {
		padding-top: 0.52rem;
		padding-left: 0.88rem;
		margin-left: 0.24rem;
		border-left: 1px solid rgba(22, 34, 63, 0.12);
	}

	.mobile-submenu-toggle {
		background: #ffffff;
		border-color: rgba(20, 33, 62, 0.16);
		color: #151d34;
		box-shadow: 0 4px 10px rgba(14, 22, 46, 0.08);
	}

	.mobile-submenu-toggle:hover,
	.mobile-submenu-toggle:focus-visible {
		border-color: color-mix(in srgb, var(--gi-accent) 30%, #d4dcf3);
		background: color-mix(in srgb, var(--gi-accent) 5%, #ffffff);
		color: #101a33;
	}

	.mobile-menu__cta-group {
		border-top-color: rgba(20, 33, 62, 0.12);
		gap: 0.8rem;
	}

	.mobile-menu__cta-group p {
		color: #5b6785;
	}

	.mobile-menu__cta-group .site-header__secondary-link {
		border-color: rgba(20, 33, 62, 0.18);
		background: #ffffff;
		color: #101a33;
		box-shadow: 0 6px 14px rgba(12, 20, 41, 0.08);
	}

	.mobile-menu__cta-group .site-header__secondary-link:hover,
	.mobile-menu__cta-group .site-header__secondary-link:focus-visible {
		border-color: color-mix(in srgb, var(--gi-accent) 30%, #d7def2);
		background: color-mix(in srgb, var(--gi-accent) 6%, #ffffff);
		color: #101a33;
	}

	.mobile-menu__cta-group .site-header__cta {
		border-color: color-mix(in srgb, var(--gi-accent) 40%, #5a38d9);
		box-shadow: 0 10px 22px rgba(82, 40, 206, 0.24);
	}

	.lp-page .lp-hero :where(.gi-button-row, .wp-block-buttons, .lp-actions) {
		grid-template-columns: minmax(0, 1fr);
	}

	.lp-page .lp-hero :where(.site-header__cta, .wp-block-button__link, .lp-btn--primary):visited,
	.lp-page .lp-hero :where(.site-header__cta, .wp-block-button__link, .lp-btn--primary):hover,
	.lp-page .lp-hero :where(.site-header__cta, .wp-block-button__link, .lp-btn--primary):focus-visible {
		color: #ffffff;
	}

	.lp-page :where(.lp-grid-4-strict, .lp-bento-grid, .lp-stepper-grid, .gi-grid-3, .lp-route-grid, .gi-capability-matrix, .gi-estimate-logic, .lp-ui-map-grid, .gix-metrics-grid) {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lp-page .lp-ui-map-grid,
	.lp-page .gix-site-layer__grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.gi-mobile-intent-bar,
	.gi-mobile-intent-bar__inner,
	.gi-mobile-intent-bar__secondary,
	.gi-mobile-intent-bar__primary {
		display: none !important;
	}

	.site-main {
		padding-bottom: 0 !important;
	}

	body.has-mobile-intent-bar .site-main {
		padding-bottom: 0 !important;
	}

	.site-main > :last-child {
		margin-bottom: 0 !important;
	}

	.site-footer {
		margin-top: 0 !important;
		padding-bottom: 1.2rem !important;
	}
}

/* Production hardening: pricing pages visual consistency (applies on all breakpoints). */
body.gi-scope-pricing-web.gi-intent-bofu .lp-page .lp-hero :is(.lp-hero__lead, .lp-hero__support),
body.gi-scope-pricing-systems.gi-intent-bofu .lp-page .lp-hero :is(.lp-hero__lead, .lp-hero__support) {
	color: #ffffff !important;
}

body.gi-scope-pricing-web.gi-intent-bofu .lp-page .lp-hero .lp-hero__support strong,
body.gi-scope-pricing-systems.gi-intent-bofu .lp-page .lp-hero .lp-hero__support strong {
	color: #ffffff !important;
}

body.gi-scope-pricing-web.gi-intent-bofu .lp-page #pricing-matrix .gix-pricing-matrix {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body.gi-scope-pricing-web.gi-intent-bofu .lp-page #pricing-matrix .gix-pricing-matrix > .gix-price-card:nth-child(-n+3) {
	grid-column: span 2 !important;
}

body.gi-scope-pricing-web.gi-intent-bofu .lp-page #pricing-matrix .gix-pricing-matrix > .gix-price-card:nth-child(n+4) {
	grid-column: span 3 !important;
}

body.gi-scope-pricing-hub.gi-intent-bofu .lp-page .gix-estimate-flow {
	background:
		radial-gradient(circle at 12% 8%, rgba(84, 35, 231, 0.1), transparent 40%),
		linear-gradient(165deg, #ffffff 0%, #f5f7ff 100%) !important;
	border: 1px solid color-mix(in srgb, #5423e7 18%, #d7deef) !important;
	box-shadow: 0 18px 38px rgba(10, 13, 32, 0.12) !important;
	color: #0c0c20 !important;
}

body.gi-scope-pricing-hub.gi-intent-bofu .lp-page .gix-est-flow__head {
	color: rgba(12, 12, 32, 0.56) !important;
	border-bottom: 1px solid rgba(12, 12, 32, 0.12) !important;
}

body.gi-scope-pricing-hub.gi-intent-bofu .lp-page .gix-estimate-flow :is(.gix-path-text strong) {
	color: #0c0c20 !important;
}

body.gi-scope-pricing-hub.gi-intent-bofu .lp-page .gix-estimate-flow :is(.gix-path-text span) {
	color: rgba(12, 12, 32, 0.56) !important;
}

@media (max-width: 1180px) {
	body.gi-scope-pricing-web.gi-intent-bofu .lp-page #pricing-matrix .gix-pricing-matrix {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.gi-scope-pricing-web.gi-intent-bofu .lp-page #pricing-matrix .gix-pricing-matrix > .gix-price-card {
		grid-column: auto !important;
	}
}

@media (max-width: 781px) {
	body.gi-scope-pricing-web.gi-intent-bofu .lp-page #pricing-matrix .gix-pricing-matrix {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}


/* --- uxui-remediation.css --- */

/**
 * UX/UI remediation layer based on the 2026-05-10 Lazyweb audit.
 *
 * The existing site stores most page HTML in wp_posts.post_content. This file
 * provides shared styling for the inserted content modules and hardens legacy
 * reveal animations so content stays visible without JavaScript.
 */

:root {
	--gix-ink: #0b1020;
	--gix-muted: #536079;
	--gix-line: rgba(20, 31, 60, 0.12);
	--gix-soft: #f4f7fb;
	--gix-card: #ffffff;
	--gix-violet: #5423e7;
	--gix-blue: #1677ff;
	--gix-cyan: #16c7d9;
	--gix-green: #16a46b;
	--gix-lime: #dffa4b;
	--gix-amber: #d78942;
	--gix-shadow: 0 18px 38px rgba(11, 16, 32, 0.08);
}

/* Animation fallback: content is visible by default for no-JS, reduced motion and crawlers. */
.gi-reveal,
[data-gi-animate],
.lp-page [data-lp-fade] {
	opacity: 1 !important;
	transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.gi-reveal,
	[data-gi-animate],
	.lp-page [data-lp-fade],
	.gix-ui,
	.gi-ui-scene {
		opacity: 1 !important;
		transform: none !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

.gi-ux-panel {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--gix-line);
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(247, 250, 255, 0.92)),
		linear-gradient(90deg, rgba(84, 35, 231, 0.06), rgba(22, 199, 217, 0.08));
	box-shadow: var(--gix-shadow);
	color: var(--gix-ink);
}

.gi-ux-panel--dark {
	border-color: rgba(188, 202, 255, 0.22);
	background:
		radial-gradient(circle at 12% 10%, rgba(126, 237, 255, 0.18), transparent 34%),
		linear-gradient(145deg, #080b1a 0%, #13162f 58%, #1a1640 100%);
	color: #ffffff;
	box-shadow: 0 28px 60px rgba(7, 10, 24, 0.28);
}

.gi-ux-panel--dark :is(h1, h2, h3, h4) {
	color: #ffffff;
}

.gi-ux-panel--dark :is(p, span, li) {
	color: rgba(238, 243, 255, 0.78);
}

.gi-ux-kicker {
	display: inline-flex;
	align-items: center;
	gap: 0.42rem;
	width: fit-content;
	margin-bottom: 0.72rem;
	color: color-mix(in srgb, var(--gix-violet) 76%, var(--gix-blue));
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.gi-ux-panel--dark .gi-ux-kicker {
	color: var(--gix-lime);
}

.gi-ux-kicker::before {
	content: "";
	width: 0.48rem;
	height: 0.48rem;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 0 0.28rem color-mix(in srgb, currentColor 18%, transparent);
}

.gi-ux-split {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	gap: clamp(1rem, 3vw, 2rem);
	align-items: center;
}

.gi-ux-stack {
	display: grid;
	gap: clamp(0.82rem, 1.8vw, 1.12rem);
}

.gi-ux-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(0.82rem, 1.8vw, 1.12rem);
}

.gi-ux-card,
.gi-ux-chip,
.gi-ux-metric,
.gi-ux-route,
.gi-ux-price-card,
.gi-ux-step,
.gi-ux-resource-card {
	border: 1px solid var(--gix-line);
	border-radius: 8px;
	background: var(--gix-card);
	color: var(--gix-ink);
	box-shadow: 0 10px 24px rgba(12, 16, 34, 0.06);
}

.gi-ux-card,
.gi-ux-route,
.gi-ux-price-card,
.gi-ux-step,
.gi-ux-resource-card {
	padding: clamp(1rem, 2vw, 1.32rem);
}

.gi-ux-card h3,
.gi-ux-route h3,
.gi-ux-price-card h3,
.gi-ux-step h3,
.gi-ux-resource-card h3 {
	margin: 0 0 0.52rem;
	font-size: clamp(1.03rem, 1.4vw, 1.22rem);
	line-height: 1.24;
	letter-spacing: 0;
}

.gi-ux-card p,
.gi-ux-route p,
.gi-ux-price-card p,
.gi-ux-step p,
.gi-ux-resource-card p {
	margin: 0;
	color: var(--gix-muted);
}

.gi-ux-dashboard {
	display: grid;
	gap: 0.8rem;
	padding: clamp(1rem, 2vw, 1.32rem);
	border: 1px solid rgba(196, 211, 255, 0.24);
	border-radius: 8px;
	background:
		linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px) 0 0 / 100% 36px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px) 0 0 / 36px 100%,
		linear-gradient(160deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.04));
}

.gi-ux-dashboard__top {
	display: flex;
	justify-content: space-between;
	gap: 0.8rem;
	flex-wrap: wrap;
	padding-bottom: 0.8rem;
	border-bottom: 1px solid rgba(223, 234, 255, 0.16);
}

.gi-ux-dashboard__label {
	font-weight: 800;
	color: #fff;
}

.gi-ux-dashboard__status {
	color: var(--gix-lime);
	font-size: 0.82rem;
	font-weight: 800;
}

.gi-ux-lanes {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.72rem;
}

.gi-ux-lane {
	display: grid;
	gap: 0.54rem;
	padding: 0.78rem;
	border: 1px solid rgba(223, 234, 255, 0.16);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.06);
}

.gi-ux-lane strong {
	color: #fff;
	font-size: 0.94rem;
}

.gi-ux-lane span {
	color: rgba(238, 243, 255, 0.72);
	font-size: 0.82rem;
}

.gi-ux-meter {
	height: 0.42rem;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
}

.gi-ux-meter > span {
	display: block;
	width: var(--w, 68%);
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--gix-cyan), var(--gix-lime));
}

.gi-ux-metrics {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.72rem;
}

.gi-ux-metric {
	padding: 0.92rem;
}

.gi-ux-metric strong {
	display: block;
	color: var(--gix-ink);
	font-size: clamp(1.22rem, 2vw, 1.72rem);
	line-height: 1;
}

.gi-ux-metric span {
	display: block;
	margin-top: 0.34rem;
	color: var(--gix-muted);
	font-size: 0.86rem;
	line-height: 1.35;
}

.gi-ux-tabs,
.gi-ux-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.56rem;
}

.gi-ux-chip,
.gi-ux-tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.55rem;
	padding: 0.62rem 0.9rem;
	color: var(--gix-ink);
	font-weight: 760;
	text-decoration: none;
}

.gi-ux-chip.is-active,
.gi-ux-tabs a.is-active,
.gi-ux-tabs a:hover,
.gi-ux-tabs a:focus-visible {
	border-color: color-mix(in srgb, var(--gix-violet) 42%, var(--gix-line));
	background: color-mix(in srgb, #ffffff 82%, var(--gix-lime) 18%);
	color: var(--gix-ink);
}

.gi-ux-proof-router,
.gi-ux-service-router,
.gi-ux-service-proof,
.gi-ux-guided-pricing,
.gi-ux-contact-qualifier,
.gi-ux-resource-center,
.gi-ux-about-proof,
.gi-ux-process-proof {
	margin-top: clamp(1.4rem, 3vw, 2.4rem);
}

.gi-ux-proof-router__inner,
.gi-ux-service-router__inner,
.gi-ux-service-proof__inner,
.gi-ux-guided-pricing__inner,
.gi-ux-contact-qualifier__inner,
.gi-ux-resource-center__inner,
.gi-ux-about-proof__inner,
.gi-ux-process-proof__inner {
	padding: clamp(1.2rem, 3.4vw, 2.4rem);
}

.gi-ux-guided-pricing__cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
	margin-top: 1rem;
}

.gi-ux-price-card {
	display: grid;
	gap: 0.8rem;
}

.gi-ux-price-card.is-featured {
	border-color: color-mix(in srgb, var(--gix-violet) 40%, var(--gix-line));
	box-shadow: 0 16px 36px rgba(84, 35, 231, 0.13);
}

.gi-ux-price-card__range {
	color: var(--gix-violet);
	font-size: clamp(1.4rem, 2.2vw, 2rem);
	font-weight: 840;
	letter-spacing: 0;
}

.gi-ux-price-card ul,
.gi-ux-checklist {
	display: grid;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gi-ux-price-card li,
.gi-ux-checklist li {
	position: relative;
	padding-left: 1.25rem;
	color: var(--gix-muted);
}

.gi-ux-price-card li::before,
.gi-ux-checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.62em;
	width: 0.42rem;
	height: 0.42rem;
	border-radius: 50%;
	background: var(--gix-green);
}

.gi-ux-service-router__routes {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.9rem;
	margin-top: 1rem;
}

.gi-ux-service-proof__cols,
.gi-ux-process-proof__cols,
.gi-ux-about-proof__cols,
.gi-ux-contact-qualifier__cols {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
	margin-top: 1rem;
}

.gi-ux-resource-center__grid {
	display: grid;
	grid-template-columns: 1.2fr repeat(2, minmax(0, 1fr));
	gap: 0.9rem;
	margin-top: 1rem;
}

.gi-ux-resource-card.is-featured {
	background:
		radial-gradient(circle at 18% 16%, rgba(223, 250, 75, 0.32), transparent 34%),
		linear-gradient(145deg, #101428, #1a1d3e);
	color: #ffffff;
}

.gi-ux-resource-card.is-featured p {
	color: rgba(238, 243, 255, 0.76);
}

.gi-ux-action-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.72rem;
	align-items: center;
	margin-top: 1.1rem;
}

.gi-ux-link {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	padding: 0.72rem 1rem;
	border: 1px solid color-mix(in srgb, var(--gix-violet) 26%, var(--gix-line));
	border-radius: 8px;
	background: #ffffff;
	color: var(--gix-ink);
	font-weight: 800;
	text-decoration: none;
}

.gi-ux-link--primary {
	border-color: var(--gix-lime);
	background: var(--gix-lime);
	color: #08101e;
}

.gi-case-archive__proof {
	margin-top: -1.4rem;
	margin-bottom: clamp(1rem, 3vw, 2rem);
}

.gi-case-archive__proof-inner {
	padding: clamp(1rem, 2.6vw, 1.6rem);
}

.gi-case-archive__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.52rem;
	margin-top: 1rem;
}

.gi-card--case .gi-card__metric {
	display: inline-flex;
	width: fit-content;
	margin-bottom: 0.72rem;
	padding: 0.34rem 0.58rem;
	border-radius: 999px;
	background: color-mix(in srgb, var(--gix-lime) 48%, #ffffff);
	color: var(--gix-ink);
	font-size: 0.78rem;
	font-weight: 840;
}

.gi-article-progress {
	position: sticky;
	top: 0;
	z-index: 30;
	width: 100%;
	height: 0.22rem;
	background: rgba(84, 35, 231, 0.08);
}

.gi-article-progress__bar {
	display: block;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: left center;
	background: linear-gradient(90deg, var(--gix-violet), var(--gix-cyan));
}

.gi-article-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(13rem, 17rem);
	gap: clamp(1.2rem, 3vw, 2rem);
	align-items: start;
}

.gi-article-body-shell.gi-article-body-shell--with-toc {
	max-width: min(100% - 2rem, 1120px);
}

.gi-article-main {
	min-width: 0;
}

.gi-article-sidebar {
	position: sticky;
	top: 6.2rem;
	display: grid;
	gap: 0.9rem;
}

.gi-article-toc,
.gi-article-summary {
	padding: 1rem;
	border: 1px solid var(--gix-line);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(12, 16, 34, 0.06);
}

.gi-article-toc h2,
.gi-article-summary h2 {
	margin: 0 0 0.72rem;
	font-size: 0.96rem;
}

.gi-article-toc ol {
	display: grid;
	gap: 0.44rem;
	margin: 0;
	padding-left: 1.1rem;
}

.gi-article-toc a {
	color: var(--gix-muted);
	font-size: 0.9rem;
	text-decoration: none;
}

.gi-article-toc a:hover,
.gi-article-toc a:focus-visible {
	color: var(--gix-violet);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.gi-ux-mobile-cta {
	display: none;
}

@media (min-width: 1181px) {
	.site-navigation {
		min-width: 0;
	}

	.site-navigation .site-menu {
		width: 100%;
		min-width: 0;
		justify-content: flex-end;
		overflow: hidden;
	}

	.site-menu > li > a {
		max-width: clamp(5.2rem, 15vw, 14rem);
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.site-menu > li.menu-item-has-children > a {
		max-width: 9rem;
	}

	.site-header__actions {
		flex: 0 0 auto;
		margin-left: 0.4rem;
	}
}

@media (max-width: 1100px) {
	.gi-ux-split,
	.gi-article-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.gi-article-sidebar {
		position: static;
		order: -1;
	}
}

@media (max-width: 900px) {
	.gi-ux-grid,
	.gi-ux-guided-pricing__cards,
	.gi-ux-service-router__routes,
	.gi-ux-service-proof__cols,
	.gi-ux-process-proof__cols,
	.gi-ux-about-proof__cols,
	.gi-ux-contact-qualifier__cols,
	.gi-ux-resource-center__grid,
	.gi-ux-metrics,
	.gi-ux-lanes {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 781px) {
	.site-main {
		padding-bottom: calc(4.6rem + env(safe-area-inset-bottom)) !important;
	}

	.lp-page :is(.lp-hero, .gi-hero) {
		padding-bottom: clamp(4.8rem, 18vw, 6.4rem);
	}

	.gi-ux-mobile-cta {
		position: fixed;
		z-index: 80;
		left: 0.78rem;
		right: 0.78rem;
		bottom: calc(0.72rem + env(safe-area-inset-bottom));
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.62rem;
		align-items: center;
		padding: 0.62rem;
		border: 1px solid rgba(24, 34, 62, 0.14);
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.96);
		box-shadow: 0 18px 40px rgba(10, 14, 30, 0.22);
		backdrop-filter: blur(12px);
		opacity: 0;
		pointer-events: none;
		transform: translateY(calc(100% + 1rem));
		transition: opacity 180ms ease, transform 180ms ease;
	}

	.gi-ux-mobile-cta.is-visible {
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	.gi-ux-mobile-cta span {
		color: var(--gix-muted);
		font-size: 0.82rem;
		line-height: 1.2;
	}

	.gi-ux-mobile-cta strong {
		display: block;
		color: var(--gix-ink);
		font-size: 0.9rem;
		line-height: 1.15;
	}

	.gi-ux-mobile-cta a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 2.6rem;
		padding: 0.58rem 0.82rem;
		border-radius: 8px;
		background: var(--gix-lime);
		color: #08101e;
		font-size: 0.88rem;
		font-weight: 840;
		text-decoration: none;
		white-space: nowrap;
	}
}


/* --- frontend-completion-pass.css --- */

/*
 * Frontend completion pass.
 * Finalizes migrated marketing pages and navigation polish.
 */

:root {
	--gi-completion-card-radius: 18px;
	--gi-completion-card-border: rgba(12, 12, 32, 0.12);
	--gi-completion-card-shadow: 0 14px 34px rgba(12, 16, 35, 0.08);
	--gi-completion-card-shadow-hover: 0 22px 42px rgba(12, 16, 35, 0.12);
	--gi-completion-soft-bg: linear-gradient(180deg, #ffffff 0%, #fafbff 100%);
	--gi-completion-grid-gap: clamp(1rem, 2.2vw, 1.5rem);
	--gi-completion-hero-offset: clamp(6.7rem, 8.9vw, 8.4rem);
}

/* Remove decorative kicker/eyebrow labels from public marketing pages. */
.gi-marketing-page :is(
	.gi-kicker,
	.gi-ux-kicker,
	.gi-card__label,
	.lp-kicker,
	.lp-hero-kicker,
	.lp-final__kicker,
	.lp-proof-eyebrow,
	.gix-badge,
	.gix-price-eyebrow,
	.gix-price-badge,
	.lp-ui-hero-glass__badge
),
.gi-blog-resource-center :is(
	.gi-kicker,
	.gi-ux-kicker,
	.gi-card__label,
	.lp-kicker,
	.lp-hero-kicker,
	.lp-final__kicker,
	.lp-proof-eyebrow,
	.gix-badge,
	.gix-price-eyebrow,
	.gix-price-badge,
	.lp-ui-hero-glass__badge
),
.lp-page :is(
	.gi-kicker,
	.gi-ux-kicker,
	.gi-card__label,
	.lp-kicker,
	.lp-hero-kicker,
	.lp-final__kicker,
	.lp-proof-eyebrow,
	.gix-badge,
	.gix-price-eyebrow,
	.gix-price-badge,
	.lp-ui-hero-glass__badge
),
.site-mega-panel__heading {
	display: none !important;
}

.gi-marketing-page .gi-section-heading > :is(.gi-kicker, .gi-ux-kicker, .lp-kicker),
.gi-blog-resource-center .gi-section-heading > :is(.gi-kicker, .gi-ux-kicker, .lp-kicker) {
	margin: 0 !important;
	padding: 0 !important;
}

/* Hero spacing and rhythm under sticky header. */
.gi-marketing-page .lp-page .lp-hero {
	padding-top: var(--gi-completion-hero-offset) !important;
	padding-bottom: clamp(3.4rem, 6.2vw, 5.2rem) !important;
	margin-top: 0 !important;
}

.gi-marketing-page .lp-page .lp-hero :is(.lp-hero__title, h1) {
	margin-top: 0 !important;
	font-size: clamp(2rem, 4.1vw, 3.45rem) !important;
	line-height: 1.08 !important;
}

.gi-marketing-page .lp-page .lp-hero :is(.lp-hero__lead, .lp-hero__sub-lead, .lp-hero__support) {
	max-width: 70ch;
	font-size: clamp(1rem, 1.3vw, 1.15rem);
	line-height: 1.62;
}

.gi-marketing-page .lp-page .lp-hero__micro-proof {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
	margin-top: 1.45rem;
	font-size: 0.83rem;
	font-weight: 600;
	color: rgba(232, 236, 255, 0.82);
}

.gi-marketing-page .lp-page .lp-separator {
	width: 0.3rem;
	height: 0.3rem;
	border-radius: 50%;
	background: rgba(223, 250, 75, 0.82);
}

.lp-page .lp-heading-wide {
	max-width: min(72ch, 100%);
	margin-inline: auto;
}

.lp-page .lp-text-dense > p {
	margin-bottom: 1rem;
	max-width: 70ch;
}

.lp-page .lp-text-dense > p:last-child {
	margin-bottom: 0;
}

.lp-page .lp-text-inverse > p {
	color: rgba(244, 246, 255, 0.82);
}

/* Utility spacing used by source-restored templates. */
.lp-page .lp-mb-sm { margin-bottom: 0.8rem; }
.lp-page .lp-mt-none { margin-top: 0 !important; }
.lp-page .lp-mt-xs { margin-top: 0.5rem; }
.lp-page .lp-mt-sm { margin-top: 1rem; }
.lp-page .lp-mt-md { margin-top: 1.5rem; }
.lp-page .lp-mt-lg { margin-top: 2.25rem; }
.lp-page .lp-mt-xl { margin-top: 3rem; }

/* Shared card system for restored sections. */
.lp-page :is(
	.lp-interactive-card,
	.lp-route-card,
	.lp-pricing-card,
	.lp-step-card,
	.lp-model-feature,
	.lp-io-box,
	.lp-data-box,
	.lp-problem-item,
	.lp-warning-list__item,
	.lp-form-surface,
	.lp-ui-radar,
	.lp-ui-qa,
	.lp-tech-panel,
	.lp-founder-block,
	.lp-founder-card,
	.lp-ui-system-map
) {
	border: 1px solid var(--gi-completion-card-border);
	border-radius: var(--gi-completion-card-radius);
	background: var(--gi-completion-soft-bg);
	box-shadow: var(--gi-completion-card-shadow);
}

.lp-page :is(.lp-interactive-card, .lp-route-card, .lp-pricing-card):hover {
	transform: translateY(-2px);
	box-shadow: var(--gi-completion-card-shadow-hover);
	border-color: rgba(84, 35, 231, 0.26);
}

.lp-page .lp-interactive-card {
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.lp-page .lp-card-stack {
	display: grid;
	gap: var(--gi-completion-grid-gap);
}

.lp-page :is(.lp-grid-2-strict, .lp-grid-3-strict, .lp-services-grid, .lp-routing-grid, .lp-route-grid) {
	display: grid;
	gap: var(--gi-completion-grid-gap);
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 782px) {
	.lp-page :is(.lp-grid-2-strict, .lp-services-grid, .lp-route-grid, .lp-contact-grid) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lp-page :is(.lp-grid-3-strict, .lp-routing-grid) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Services cards and links. */
.lp-page .lp-service-card__body,
.lp-page .lp-route-card__content {
	padding: clamp(1.1rem, 2.5vw, 1.6rem);
}

.lp-page .lp-route-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100%;
	padding: 0;
	text-decoration: none;
	color: inherit;
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.lp-page .lp-route-card__action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.8rem;
	padding: 0.95rem 1.2rem 1.15rem;
	border-top: 1px solid rgba(12, 12, 32, 0.08);
	font-weight: 700;
	color: var(--gi-accent-strong);
}

.lp-page .lp-route-card__action::after {
	content: "->";
	font-size: 0.9rem;
}

.lp-page .lp-route-card--wide {
	grid-column: 1 / -1;
}

/* Problem and fit blocks. */
.lp-page .lp-problem-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.95rem;
}

@media (min-width: 782px) {
	.lp-page .lp-problem-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.lp-page .lp-problem-item {
	display: grid;
	grid-template-columns: 0.36rem minmax(0, 1fr);
	gap: 0;
	overflow: hidden;
}

.lp-page .lp-problem-marker {
	background: linear-gradient(180deg, rgba(84, 35, 231, 0.95), rgba(126, 237, 255, 0.9));
}

.lp-page .lp-problem-content {
	padding: 1rem 1rem 1.1rem;
}

.lp-page .lp-problem-content h3 {
	margin-bottom: 0.45rem;
	font-size: clamp(1rem, 1.4vw, 1.15rem);
}

.lp-page .lp-problem-content p {
	color: var(--gi-text);
	font-size: 0.95rem;
}

/* "Почему Growth Insider" styled feature list. */
.lp-page .lp-model-features {
	display: grid;
	gap: 0.9rem;
}

.lp-page .lp-model-feature {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.9rem;
	align-items: start;
	padding: 1rem 1.1rem;
	text-decoration: none;
	color: inherit;
}

.lp-page .lp-model-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 0.72rem;
	border: 1px solid rgba(84, 35, 231, 0.26);
	background: rgba(84, 35, 231, 0.09);
	color: var(--gi-accent-strong);
	font-weight: 800;
	font-size: 0.98rem;
	line-height: 1;
}

.lp-page .lp-model-content h3 {
	margin-bottom: 0.45rem;
	font-size: clamp(1rem, 1.5vw, 1.16rem);
}

.lp-page .lp-model-content p {
	color: var(--gi-text);
	font-size: 0.95rem;
	line-height: 1.56;
}

/* Diagnostic/proof panels. */
.lp-page .lp-ui-radar,
.lp-page .lp-tech-panel {
	padding: 1.15rem 1.2rem;
}

.lp-page .lp-ui-radar__body,
.lp-page .lp-tech-metrics {
	display: grid;
	gap: 0.9rem;
	margin-top: 0.9rem;
	padding-top: 0.9rem;
	border-top: 1px solid rgba(12, 12, 32, 0.09);
}

.lp-page .lp-ui-radar__metric-head,
.lp-page .lp-tech-metric__head {
	display: flex;
	justify-content: space-between;
	gap: 0.9rem;
	align-items: baseline;
	font-size: 0.9rem;
	color: var(--gi-text);
}

.lp-page .lp-ui-radar__metric-head strong,
.lp-page .lp-tech-metric__head strong {
	color: var(--gi-ink);
	font-size: 0.88rem;
	font-weight: 700;
}

.lp-page .lp-ui-radar__footer {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 0.85rem;
}

.lp-page .lp-ui-radar__tag {
	display: inline-flex;
	align-items: center;
	padding: 0.33rem 0.62rem;
	border-radius: 999px;
	border: 1px solid rgba(84, 35, 231, 0.18);
	background: rgba(84, 35, 231, 0.08);
	color: var(--gi-accent-strong);
	font-size: 0.75rem;
	font-weight: 600;
}

.lp-page .lp-ui-qa {
	padding: 1rem 1.2rem;
}

.lp-page .lp-ui-qa__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
	gap: 0.75rem;
}

.lp-page .lp-ui-qa__module {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.7rem;
	padding: 0.75rem 0.8rem;
	border: 1px solid rgba(12, 12, 32, 0.09);
	border-radius: 12px;
	background: #fff;
	font-size: 0.9rem;
}

.lp-page .lp-ui-qa__status {
	display: inline-flex;
	align-items: center;
	padding: 0.24rem 0.5rem;
	border-radius: 10px;
	background: rgba(61, 161, 8, 0.14);
	color: #23620c;
	font-size: 0.75rem;
	font-weight: 700;
}

.lp-page .lp-tech-metrics {
	display: grid;
	gap: 0.75rem;
}

.lp-page .lp-tech-metric {
	padding: 0.72rem 0.85rem;
	border: 1px solid rgba(12, 12, 32, 0.08);
	border-radius: 12px;
	background: #fff;
}

.lp-page .lp-tech-metric__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 0.7rem;
	font-size: 0.88rem;
}

.lp-page :is(.lp-problem-box, .lp-solution-box) {
	padding: 1rem 1.05rem;
	border-radius: var(--gi-completion-card-radius);
	border: 1px solid var(--gi-completion-card-border);
	background: #fff;
}

.lp-page .lp-side-list {
	display: grid;
	gap: 0.72rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lp-page .lp-side-item {
	padding: 0.85rem 0.95rem;
	border: 1px solid rgba(12, 12, 32, 0.09);
	border-radius: 12px;
	background: #fff;
}

.lp-page .lp-warning-list {
	display: grid;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lp-page .lp-warning-list__item {
	padding: 0.95rem 1rem;
}

.lp-page .lp-ui-map-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
	gap: 0.75rem;
}

.lp-page .lp-ui-map-node {
	padding: 0.72rem 0.8rem;
	border: 1px solid rgba(12, 12, 32, 0.08);
	border-radius: 12px;
	background: #fff;
}

.lp-page .lp-ui-map-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-weight: 700;
	color: var(--gi-accent-strong);
	text-decoration: none;
}

.lp-page .lp-ui-map-link::after {
	content: "->";
	font-size: 0.85rem;
}

.lp-page .lp-ui-map-caption {
	margin-top: 0.65rem;
	color: var(--gi-text);
	font-size: 0.9rem;
}

.lp-page .lp-route-arrow {
	color: var(--gi-accent-strong);
	font-size: 0.86rem;
}

/* Pricing and process cards. */
.lp-page .lp-pricing-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 0;
	text-decoration: none;
	color: inherit;
}

.lp-page .lp-pricing-card__head,
.lp-page .lp-pricing-card__body,
.lp-page .lp-pricing-card__foot {
	padding-inline: 1.15rem;
}

.lp-page .lp-pricing-card__head {
	padding-top: 1.2rem;
	padding-bottom: 0.9rem;
}

.lp-page .lp-pricing-card__body {
	padding-bottom: 1rem;
}

.lp-page .lp-pricing-card__foot {
	margin-top: auto;
	padding-top: 0.86rem;
	padding-bottom: 1rem;
	border-top: 1px solid rgba(12, 12, 32, 0.09);
	color: var(--gi-accent-strong);
	font-weight: 700;
}

.lp-page .lp-price-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.75rem;
}

.lp-page .lp-price-list li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 0.9rem;
	padding: 0.56rem 0.64rem;
	border-radius: 12px;
	background: rgba(84, 35, 231, 0.06);
	color: var(--gi-text);
	font-size: 0.93rem;
}

.lp-page .lp-price-list strong {
	color: var(--gi-ink);
	font-size: 0.92rem;
	font-weight: 700;
	white-space: nowrap;
}

.lp-page .lp-step-card {
	padding: 1.15rem 1.1rem;
}

.lp-page .lp-step-card__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	min-height: 2rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgba(84, 35, 231, 0.24);
	background: rgba(84, 35, 231, 0.08);
	color: var(--gi-accent-strong);
	font-weight: 800;
	font-size: 0.82rem;
	margin-bottom: 0.7rem;
}

/* Contact and lead form shell. */
.lp-page .lp-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1rem;
}

.lp-page .lp-contact-info-stack {
	display: grid;
	gap: 0.9rem;
}

.lp-page .lp-contact-title {
	font-size: clamp(1.06rem, 1.55vw, 1.28rem);
}

.lp-page .lp-form-surface {
	padding: 1rem;
}

.lp-page .lp-form-integration-point {
	margin-top: 0.8rem;
}

/* Founder blocks and support panels. */
.lp-page .lp-founder-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1rem;
	padding: 1rem;
}

.lp-page :is(.lp-founder-block, .lp-founder-card, .lp-founder-profile) {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}

.lp-page .lp-founder-avatar {
	flex: 0 0 auto;
	width: 3.4rem;
	height: 3.4rem;
	border-radius: 50%;
	overflow: hidden;
}

.lp-page .lp-avatar-image,
.lp-page .lp-founder-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lp-page :is(.lp-founder-info strong) {
	display: block;
}

.lp-page :is(.lp-founder-info span, .lp-founder-values p, .lp-value-card__content) {
	color: var(--gi-text);
}

.lp-page .lp-io-box,
.lp-page .lp-data-box {
	padding: 0.95rem 1rem;
}

.lp-page .lp-inline-link,
.lp-page .lp-card-link {
	color: var(--gi-accent-strong);
	font-weight: 700;
	text-decoration: none;
}

.lp-page .lp-inline-link:hover,
.lp-page .lp-card-link:hover {
	text-decoration: underline;
}

/* Final CTA section. */
.lp-page .lp-final {
	padding-block: clamp(3rem, 7vw, 5.5rem);
}

.lp-page .lp-final__card {
	max-width: min(72ch, 100%);
	margin-inline: auto;
	text-align: center;
}

.lp-page .lp-final__heading {
	max-width: 28ch;
	margin-inline: auto;
	margin-bottom: 0.9rem;
}

.lp-page .lp-final__lead {
	max-width: 66ch;
	margin-inline: auto;
}

.lp-page .lp-final__actions {
	margin-top: 1.2rem;
}

.lp-page .lp-button-row--centered {
	justify-content: center;
}

/* Buttons and focus polish. */
.lp-page :is(.lp-btn-accent, .lp-btn-lime, .lp-btn, .lp-btn-inverse, .lp-hero__secondary) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.15rem;
	padding: 0.75rem 1.2rem;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none;
}

.lp-page :is(a, button, input, textarea, select):focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(84, 35, 231, 0.26);
}

/* Header/nav completion removed - consolidated into redesign system. */

