@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@600;700;800,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@600;700,800,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@600;700,800,900&display=swap');

/* =========================================================
   ZIRE THEME + MARKETING SITE
   Canonical public-site stylesheet.
   Retains only the shared theme foundation, header and footer
   from the original stylesheet; homepage styles use the latest
   Zire marketing design system below.
   ========================================================= */

:root {
    /* Brand */
    --zire-blue: #315efb;
    --zire-blue-hover: #254de0;
    --zire-blue-dark: #254de0;
    --zire-purple: #7657e8;
    --zire-blue-soft: #eef2ff;
    --zire-blue-border: #dfe6ff;

    /* Neutral */
    --zire-white: #ffffff;
    --zire-bg: #ffffff;
    --zire-bg-soft: #f7f9ff;
    --zire-bg-dark: #10141d;
    --zire-surface: #f7f9ff;
    --zire-surface-2: #f1f3f8;
    --zire-dark: #11141b;
    --zire-ink: #11141b;
    --zire-text: #667184;
    --zire-muted: #8b94a3;
    --zire-muted-light: #9aa2ae;
    --zire-border: #e8ebf2;
    --zire-border-dark: #d9deea;

    /* Status */
    --zire-success: #07885f;
    --zire-success-soft: #eaf8f2;
    --zire-warning: #b7791f;
    --zire-danger: #d14343;

    /* Radius */
    --zire-radius-xs: 6px;
    --zire-radius-sm: 10px;
    --zire-radius-md: 16px;
    --zire-radius-lg: 22px;
    --zire-radius-xl: 28px;

    /* Shadows */
    --zire-shadow-xs: 0 1px 2px rgba(17, 20, 27, .04);
    --zire-shadow-sm: 0 1px 3px rgba(17, 20, 27, .05), 0 4px 12px rgba(17, 20, 27, .03);
    --zire-shadow-md: 0 2px 4px rgba(17, 20, 27, .04), 0 12px 32px rgba(17, 20, 27, .07);
    --zire-shadow-lg: 0 4px 8px rgba(17, 20, 27, .04), 0 24px 64px rgba(17, 20, 27, .10);
    --zire-shadow-soft: 0 18px 50px rgba(28, 42, 75, .06);
    --zire-shadow-card: 0 24px 60px rgba(28, 42, 75, .085);

    /* Layout */
    --zire-container: 1320px;
    --zire-container-padding: 24px;
    --zire-content-width: 1320px;
    --zire-text-width: 760px;
    --zire-section-space: 112px;
    --zire-section-space-mobile: 76px;

    /* Motion */
    --zire-transition: 180ms cubic-bezier(.2, .8, .2, 1);
    --zire-ease-out: cubic-bezier(.2, .8, .2, 1);
}

/* =========================================================
   SHARED THEME FOUNDATION / HEADER / FOOTER
   ========================================================= */

/* =========================================================
   RESET / GLOBAL
   ========================================================= */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--zire-bg);
	color: var(--zire-ink);
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3 {
	font-family: 'Montserrat', Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}


a {
	color: inherit;
	text-decoration: none;
}

img,
svg {
	display: block;
	max-width: 100%;
}

button,
input,
textarea,
select {
	font: inherit;
}

::selection {
	background: var(--zire-blue);
	color: #fff;
}


/* =========================================================
   TYPOGRAPHY
   ========================================================= */

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	color: var(--zire-dark);
	font-weight: 650;
	line-height: 1.08;
	letter-spacing: -0.035em;
}

p {
	margin-top: 0;
}

.zire-eyebrow {
	color: var(--zire-blue);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.zire-muted {
	color: var(--zire-muted);
}


/* =========================================================
   LAYOUT
   ========================================================= */

.zire-container {
	width: min(
		calc(100% - (var(--zire-container-padding) * 2)),
		var(--zire-container)
	);
	margin-inline: auto;
}

.wp-site-blocks > * {
	margin-block-start: 0;
}

.zire-main {
	min-height: 70vh;
}


/* =========================================================
   HEADER
   ========================================================= */

/*.zire-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	width: 100%;
	background: rgba(255, 255, 255, 0.88);
	border-bottom: 1px solid rgba(230, 232, 236, 0.85);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}*/

.zire-brand__logo {
	width: 110px;
}

.zire-header {
	position: fixed;
top: 0;
left: 0;
right: 0;
	z-index: 1000;

	width: 100%;

	background:
		linear-gradient(
			90deg,
			rgba(49, 94, 251, 0.035),
			rgba(118, 87, 232, 0.025),
			rgba(255, 255, 255, 0)
		);
	background: transparent;

	border-bottom: 0;

	backdrop-filter: none;
	-webkit-backdrop-filter: none;

	transition:
		background 220ms ease,
		backdrop-filter 220ms ease,
		box-shadow 220ms ease;
}

.zire-header {
	will-change: background, backdrop-filter, box-shadow;
}

.zire-header::after {
	content: "";

	position: absolute;

	left: 50%;
	bottom: 0;

	width: min(1240px, calc(100% - 56px));
	height: 1px;

	transform: translateX(-50%);

	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(49, 94, 251, 0.12) 18%,
			rgba(118, 87, 232, 0.10) 82%,
			transparent
		);

	transition:
		opacity 220ms ease,
		background 220ms ease;
}

.zire-header.is-scrolled {
	background:
		rgba(255, 255, 255, 0.86);

	backdrop-filter:
		blur(18px)
		saturate(145%);

	-webkit-backdrop-filter:
		blur(18px)
		saturate(145%);

	box-shadow:
		0 8px 30px
		rgba(22, 31, 52, 0.055);
}


.zire-header.is-scrolled::after {
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(215, 220, 230, 0.65) 18%,
			rgba(215, 220, 230, 0.65) 82%,
			transparent
		);
}

.zire-header .zire-button--primary {
	border:
		1px
		solid
		rgba(49, 94, 251, 0.22);

	background:
		linear-gradient(
			135deg,
			#315efb 0%,
			#6557ee 58%,
			#7657e8 100%
		);

	color: #ffffff;

	box-shadow:
		0 7px 20px
		rgba(49, 94, 251, 0.16);
}


.zire-header .zire-button--primary:hover {
	background:
		linear-gradient(
			135deg,
			#2853ec 0%,
			#5d4de2 58%,
			#6c4ddd 100%
		);

	color: #ffffff;

	box-shadow:
		0 10px 25px
		rgba(49, 94, 251, 0.22);
}

.admin-bar .zire-header {
	top: 32px;
}

.zire-header__inner {
	display: grid !important;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	width: min(
		calc(100% - (var(--zire-container-padding) * 2)),
		var(--zire-container)
	);
	min-height: 72px;
	margin-inline: auto;
	gap: 42px;
}


/* Logo */

.zire-brand {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	white-space: nowrap;
}

.zire-brand__mark {
	display: grid;
	width: 29px;
	height: 29px;
	place-items: center;
	background: var(--zire-dark);
	border-radius: 8px;
	color: #fff;
	font-size: 15px;
	font-weight: 750;
	letter-spacing: -0.05em;
}

.zire-brand__name {
	color: var(--zire-dark);
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: -0.045em;
}


/* Navigation */

.zire-nav {
	justify-self: start;
}

.zire-nav__list {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	gap: 32px;
	list-style: none;
}

.zire-nav__link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #454A53;
	font-size: 0.9rem;
	font-weight: 500;
	transition: color var(--zire-transition);
}

.zire-nav__link:hover {
	color: var(--zire-dark);
}

.zire-nav__chevron {
	width: 11px;
	height: 11px;
	opacity: 0.55;
}

/* =========================================================
   HEADER MEGA MENUS
   ========================================================= */

.zire-nav__item {
	position: relative;
}


.zire-nav__item--mega {
	padding:
		24px
		0;
}


.zire-nav__item--mega > .zire-nav__link {
	position: relative;
	z-index: 2;
}


.zire-nav__item--mega:hover > .zire-nav__link,
.zire-nav__item--mega:focus-within > .zire-nav__link {
	color: var(--zire-dark);
}


.zire-nav__item--mega:hover .zire-nav__chevron,
.zire-nav__item--mega:focus-within .zire-nav__chevron {
	transform: rotate(180deg);
}


.zire-nav__chevron {
	transition:
		transform 160ms ease,
		opacity 160ms ease;
}


/* Dropdown shell */

.zire-mega {
	position: absolute;

	top: calc(100% - 7px);
	left: 0;

	z-index: 1100;

	display: grid;

	visibility: hidden;
	opacity: 0;

	transform:
		translateY(8px);

	pointer-events: none;

	border:
		1px
		solid
		rgba(26, 36, 58, .09);

	border-radius: 18px;

	background:
		rgba(255, 255, 255, .98);

	box-shadow:
		0 28px 70px rgba(28, 40, 72, .14),
		0 4px 14px rgba(28, 40, 72, .045);

	backdrop-filter:
		blur(18px);

	-webkit-backdrop-filter:
		blur(18px);

	transition:
		opacity 160ms ease,
		transform 160ms ease,
		visibility 160ms ease;
}


.zire-nav__item--mega:hover > .zire-mega,
.zire-nav__item--mega:focus-within > .zire-mega {
	visibility: visible;
	opacity: 1;

	transform:
		translateY(0);

	pointer-events: auto;
}


/* Platform menu */

.zire-mega--platform {
	width: 870px;

	grid-template-columns:
		225px
		minmax(0, 1fr);
}


.zire-mega--providers {
	width: 720px;

	grid-template-columns:
		235px
		minmax(0, 1fr);
}



/* Intro panel */

.zire-mega__intro {
	padding:
		30px
		27px;

	border-right:
		1px
		solid
		#edf0f5;

	border-radius:
		17px
		0
		0
		17px;

	background:
		linear-gradient(
			145deg,
			#f7f9ff 0%,
			#fbfbff 55%,
			#f8f6ff 100%
		);
}


.zire-mega__eyebrow {
	display: block;

	margin-bottom: 12px;

	color: #315efb;

	font-size: 12px;
	font-weight: 800;

	line-height: 1;

	letter-spacing: .075em;
	text-transform: uppercase;
}


.zire-mega__intro > strong {
	display: block;

	margin-bottom: 11px;

	color: #151922;

	font-size: 17px;
	font-weight: 720;

	line-height: 1.32;

	letter-spacing: -.4px;
}


.zire-mega__intro p {
	margin:
		0
		0
		19px;

	color: #70798a;

	font-size: 12px;

	line-height: 1.6;
}


.zire-mega__overview {
	display: inline-flex;

	align-items: center;

	gap: 7px;

	color: #315efb;

	font-size: 13px;
	font-weight: 750;
}


.zire-mega__overview span {
	transition:
		transform 160ms ease;
}


.zire-mega__overview:hover span {
	transform:
		translateX(3px);
}


/* Feature columns */

.zire-mega__columns {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 18px;

	padding:
		27px
		25px;
}


.zire-mega__column {
	min-width: 0;
}


.zire-mega__heading {
	display: block;

	margin:
		0
		0
		9px;

	color: #7f8898;
	font-size: 12px;
	font-weight: 800;

	letter-spacing: .09em;

	text-transform: uppercase;
}


.zire-mega__heading--second {
	margin-top: 21px;
}


.zire-mega__column > a {
	display: block;

	margin:
		0
		0
		5px;

	padding:
		9px
		10px;

	border-radius: 9px;

	transition:
		background 150ms ease,
		transform 150ms ease;
}


.zire-mega__column > a:hover {
	background: #f7f9ff;

	transform:
		translateX(2px);
}


.zire-mega__column strong {
	display: block;

	margin-bottom: 2px;

	color: #202631;

	font-size: 12px;
	font-weight: 700;

	line-height: 1.25;
}


.zire-mega__column small {
	display: block;

	color: #838b99;

	font-size: 12px;

	line-height: 1.4;
}

/* =========================================================
   RESOURCES MEGA MENU
   ========================================================= */

.zire-mega--resources {
	width: 930px;

	grid-template-columns:
		225px
		minmax(0, 1fr);
}


.zire-mega__resource-columns {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 18px;

	padding:
		27px
		25px;
}


.zire-mega__resource-column {
	min-width: 0;
}


.zire-mega__resource-column > a {
	display: grid;

	grid-template-columns:
		30px
		minmax(0, 1fr);

	align-items: start;

	gap: 10px;

	margin-bottom: 4px;

	padding:
		9px
		10px;

	border-radius: 10px;

	transition:
		background 150ms ease,
		transform 150ms ease;
}


.zire-mega__resource-column > a:hover {
	background: #f7f9ff;

	transform:
		translateX(2px);
}


.zire-mega__resource-icon {
	width: 28px;
	height: 28px;

	display: flex;

	align-items: center;
	justify-content: center;

	border:
		1px
		solid
		#e4e9f5;

	border-radius: 8px;

	background: #f7f9ff;

	color: #315efb;
}


.zire-mega__resource-icon--video {
	background: #f4efff;

	border-color: #e8e0ff;

	color: #7357e8;
}


.zire-mega__resource-icon svg {
	width: 15px;
	height: 15px;
}


.zire-mega__resource-column strong {
	display: block;

	margin-bottom: 2px;

	color: #202631;

	font-size: 12px;
	font-weight: 700;

	line-height: 1.3;
}


.zire-mega__resource-column small {
	display: block;

	color: #838b99;

	font-size: 12px;

	line-height: 1.4;
}


/* =========================================================
   PRICING MEGA MENU
   ========================================================= */

.zire-mega--pricing {
	width: 810px;

	grid-template-columns:
		225px
		minmax(0, 1fr);
}


.zire-mega__pricing-content {
	display: flex;

	flex-direction: column;

	padding:
		24px;
}


.zire-mega__pricing-plans {
	display: grid;

	grid-template-columns:
		repeat(
			3,
			minmax(0, 1fr)
		);

	gap: 10px;
}


.zire-mega__plan {
	display: flex;

	flex-direction: column;

	min-height: 165px;

	padding:
		16px;

	border:
		1px
		solid
		#e7eaf1;

	border-radius: 12px;

	background: #ffffff;

	transition:
		border-color 150ms ease,
		box-shadow 150ms ease,
		transform 150ms ease;
}


.zire-mega__plan:hover {
	border-color:
		#d9e0f5;

	box-shadow:
		0 9px 24px
		rgba(37, 55, 100, .07);

	transform:
		translateY(-2px);
}


.zire-mega__plan--featured {
	border-color:
		rgba(49, 94, 251, .24);

	background:
		linear-gradient(
			145deg,
			#fbfcff,
			#f8f7ff
		);
}


.zire-mega__plan-top {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 10px;

	margin-bottom: 10px;
}


.zire-mega__plan-top > strong {
	color: #1b202b;

	font-size: 13px;
	font-weight: 750;
}


.zire-mega__plan-top > strong em {
	display: inline-flex;

	margin-left: 4px;

	padding:
		3px
		5px;

	border-radius: 999px;

	background:
		#eef2ff;

	color:
		#315efb;

	font-size: 10px;
	font-style: normal;
	font-weight: 800;

	letter-spacing: .05em;

	text-transform: uppercase;

	vertical-align: middle;
}


.zire-mega__plan-top > span {
	color: #171c26;

	font-size: 15px;
	font-weight: 750;

	white-space: nowrap;
}


.zire-mega__plan-top > span span {
	margin-left: 1px;

	color: #9aa1ad;

	font-size: 10px;
	font-weight: 600;
}


.zire-mega__plan > small {
	display: block;

	flex: 1;

	color: #7c8594;

	font-size: 12px;

	line-height: 1.5;
}


.zire-mega__plan-action {
	display: block;

	margin-top: 15px;

	color: #315efb;

	font-size: 12px;
	font-weight: 750;
}


.zire-mega__pricing-other {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 20px;

	margin-top: 15px;

	padding:
		13px
		3px
		0;

	border-top:
		1px
		solid
		#edf0f4;

	color: #979eaa;

	font-size: 12px;
}


.zire-mega__pricing-other > div {
	display: flex;

	align-items: center;

	gap: 8px;
}


.zire-mega__pricing-other a {
	color: #687181;

	font-weight: 700;

	transition:
		color 150ms ease;
}


.zire-mega__pricing-other a:hover {
	color: #315efb;
}


.zire-mega__pricing-other > div > span {
	color: #c5cad3;
}


/* Provider menu */

.zire-mega__provider-grid {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 7px;

	padding:
		24px
		24px;
}


.zire-mega__provider-grid > a {
	display: flex;

	align-items: center;

	gap: 11px;

	min-width: 0;

	padding:
		12px;

	border:
		1px
		solid
		transparent;

	border-radius: 11px;

	transition:
		background 150ms ease,
		border-color 150ms ease,
		transform 150ms ease;
}


.zire-mega__provider-grid > a:hover {
	border-color:
		#e7eaf2;

	background:
		#fafbff;

	transform:
		translateY(-1px);
}


.zire-mega__provider-icon {
	width: 34px;
	height: 34px;

	flex:
		0
		0
		34px;

	display: flex;

	align-items: center;
	justify-content: center;

	border:
		1px
		solid
		#e8ebf2;

	border-radius: 9px;

	background: #ffffff;

	color: #222936;

	font-size: 15px;
	font-weight: 800;
}

.zire-mega__provider-icon img {
	width: 20px;
	height: 20px;

	object-fit: contain;
}

.zire-mega__provider-grid strong {
	display: block;

	margin-bottom: 1px;

	color: #202631;

	font-size: 12px;
	font-weight: 700;
}


.zire-mega__provider-grid small {
	display: block;

	color: #9299a6;

	font-size: 12px;
}

.zire-mega--resources {
	left: -180px;
}

.zire-mega--pricing {
	left: -115px;
}


/* Header actions */

.zire-header__actions {
	display: flex;
	align-items: center;
	justify-self: end;
	gap: 10px;
}

.zire-login {
	padding: 9px 12px;
	color: #454A53;
	font-size: 0.9rem;
	font-weight: 550;
	transition: color var(--zire-transition);
}

.zire-login:hover {
	color: var(--zire-dark);
}


/* =========================================================
   BUTTONS
   ========================================================= */

.zire-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	padding: 10px 17px;
	border: 1px solid transparent;
	border-radius: var(--zire-radius-sm);
	cursor: pointer;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1;
	transition:
		background var(--zire-transition),
		border-color var(--zire-transition),
		box-shadow var(--zire-transition),
		transform var(--zire-transition);
}

.zire-button:hover {
	transform: translateY(-1px);
}

.zire-button--primary {
	background: var(--zire-dark);
	color: #fff;
	box-shadow: 0 1px 2px rgba(13, 15, 20, 0.15);
}

.zire-button--primary:hover {
	background: #20232A;
	box-shadow: var(--zire-shadow-sm);
}

.zire-button--blue {
	background: var(--zire-blue);
	color: #fff;
	box-shadow: 0 1px 2px rgba(49, 94, 251, 0.25);
}

.zire-button--blue:hover {
	background: var(--zire-blue-hover);
	box-shadow: 0 6px 18px rgba(49, 94, 251, 0.18);
}

.zire-button--secondary {
	background: #fff;
	border-color: var(--zire-border-dark);
	color: var(--zire-text);
	box-shadow: var(--zire-shadow-xs);
}

.zire-button--secondary:hover {
	border-color: #C9CDD4;
	box-shadow: var(--zire-shadow-sm);
}


/* =========================================================
   GENERIC CARD
   ========================================================= */

.zire-card {
	background: #fff;
	border: 1px solid var(--zire-border);
	border-radius: var(--zire-radius-lg);
	box-shadow: var(--zire-shadow-xs);
}


/* =========================================================
   FOOTER
   ========================================================= */

.zire-footer {
	position: relative;
	overflow: hidden;
	margin-top: 0;
	padding: 72px 0 0;

	background: #0d0f14;
	color: #9298a3;

	border-top: 1px solid rgba(255, 255, 255, 0.05);
}


/* Decorative Zire shape */

.zire-footer__shape {
	position: absolute;
	z-index: 0;

	width: 1100px;
	height: 900px;

	right: -430px;
	bottom: -470px;

	border-radius: 50%;

	background:
		radial-gradient(
			circle at 42% 40%,
			rgba(49, 94, 251, .42) 0%,
			rgba(49, 94, 251, .28) 28%,
			rgba(72, 84, 225, .16) 45%,
			rgba(118, 87, 232, .08) 58%,
			rgba(49, 94, 251, 0) 74%
		);

	filter: blur(22px);

	pointer-events: none;
}


/* Main layout */

.zire-footer__main {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: minmax(280px, 1.2fr) minmax(520px, 1.8fr);

	gap: 90px;

	padding-bottom: 72px;
}


/* Brand area */

.zire-footer__brand {
	max-width: 460px;
}

.zire-footer__logo {
	display: inline-flex;
	align-items: center;

	gap: 9px;

	margin-bottom: 32px;

	color: #ffffff;

	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: -0.04em;
}

.zire-footer__logo-mark {
	display: grid;

	width: 30px;
	height: 30px;

	place-items: center;

	background: #ffffff;
	color: #0d0f14;

	border-radius: 8px;

	font-size: 0.9rem;
	font-weight: 750;
}

.zire-footer__brand h2 {
	margin: 0 0 18px;

	color: #ffffff;

	font-size: clamp(2rem, 3vw, 3rem);
	font-weight: 800;

	letter-spacing: -0.045em;
	line-height: 1.05;
}

.zire-footer__brand h2 span {
	color: #8fa2ff;
}

.zire-footer__brand p {
	max-width: 420px;

	margin: 0 0 28px;

	color: #9298a3;

	font-size: 0.92rem;
	line-height: 1.7;
}

.zire-footer__cta {
	background: #ffffff;
	color: #0d0f14;

	box-shadow: none;
}

.zire-footer__cta:hover {
	background: #f1f3f7;
	color: #0d0f14;
}


/* Link columns */

.zire-footer__links {
	display: grid;
	grid-template-columns: repeat(4, minmax(105px, 1fr));

	gap: 34px;
	padding-top: 100px;
}

.zire-footer__column {
	display: flex;
	flex-direction: column;

	gap: 11px;
}

.zire-footer__column h3 {
	margin: 0 0 9px;

	color: #ffffff;

	font-size: 0.75rem;
	font-weight: 650;

	letter-spacing: 0.025em;
}

.zire-footer__column a {
	width: fit-content;

	color: #9298a3;

	font-size: 0.82rem;

	transition:
		color 160ms ease,
		transform 160ms ease;
}

.zire-footer__column a:hover {
	color: #ffffff;
	transform: translateX(2px);
}


/* Supported platforms */

.zire-footer__platforms {
	position: relative;
	z-index: 1;

	display: flex;
	align-items: center;
	justify-content: space-between;

	gap: 30px;

	padding: 27px 0;

	border-top: 1px solid rgba(255, 255, 255, 0.07);
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);

	color: #656b75;

	font-size: 0.72rem;
}

.zire-footer__platforms > span {
	text-transform: uppercase;

	letter-spacing: 0.07em;
	font-weight: 600;
}

.zire-footer__platforms > div {
	display: flex;
	align-items: center;

	gap: 26px;
}

.zire-footer__platforms > div span {
	color: #8f959f;

	font-size: 0.74rem;
	font-weight: 550;
}


/* Bottom row */

.zire-footer__bottom {
	position: relative;
	z-index: 1;

	display: flex;
	align-items: center;
	justify-content: space-between;

	min-height: 84px;

	color: #646a74;

	font-size: 0.72rem;
}

.zire-footer__bottom p {
	margin: 0;
}

.zire-footer__bottom-links {
	display: flex;

	gap: 24px;
}

.zire-footer__bottom-links a {
	color: #777d87;

	transition: color 160ms ease;
}

.zire-footer__bottom-links a:hover {
	color: #ffffff;
}


/* =========================================================
   FOOTER RESPONSIVE
   ========================================================= */

@media (max-width: 1000px) {

	.zire-footer__main {
		grid-template-columns: 1fr;

		gap: 58px;
	}

	.zire-footer__links {
		grid-template-columns: repeat(4, 1fr);
	}
}


@media (max-width: 700px) {

	.zire-footer {
		padding-top: 68px;
	}

	.zire-footer__links {
		grid-template-columns: repeat(2, 1fr);

		gap: 42px 28px;
	}

	.zire-footer__platforms {
		align-items: flex-start;
		flex-direction: column;

		gap: 14px;
	}

	.zire-footer__platforms > div {
		flex-wrap: wrap;

		gap: 13px 22px;
	}

	.zire-footer__bottom {
		align-items: flex-start;
		flex-direction: column;

		justify-content: center;

		gap: 10px;

		padding: 24px 0;
	}

	.zire-footer__shape {
		right: -520px;
	}
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

	.zire-header__inner {
		grid-template-columns: auto 1fr auto;
		min-height: 66px;
		gap: 16px;
	}

	.zire-nav {
		display: none;
	}

	.zire-header__actions {
		grid-column: 3;
	}

	.zire-login {
		display: none;
	}
}

@media (max-width: 782px) {

	.admin-bar .zire-header {
		top: 46px;
	}
}

@media (max-width: 600px) {

	:root {
		--zire-container-padding: 20px;
	}

	.zire-brand__mark {
		width: 27px;
		height: 27px;
	}

	.zire-brand__name {
		font-size: 1.15rem;
	}

	.zire-header__actions .zire-button {
		min-height: 38px;
		padding: 9px 13px;
		font-size: 0.84rem;
	}
}

/* ==========================================================
   ZIRE MARKETING FOUNDATION + HOMEPAGE POLISH
   Keep this file self-contained for staging. When merged into
   style.css, retain the :root tokens, shared primitives and the
   homepage-specific rules below.
   ========================================================== */

/* ==========================================================
   EXISTING HOMEPAGE COMPONENT STYLES
   ========================================================== */

.zire-home-hero {
    position: relative;
    overflow: hidden;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        92px
        24px
        105px;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #fbfcff 68%,
            #f6f8ff 100%
        );

    isolation: isolate;
	
	
}


.zire-home-hero__inner {
    position: relative;
    z-index: 2;

    width: min(1380px, 100%);

    margin:
        0
        auto;

    display: grid;

    grid-template-columns:
        minmax(0, 1.02fr)
        minmax(520px, .98fr);

    gap: 82px;

    align-items: center;
}


/* Background effects */

.zire-home-hero__glow {
    position: absolute;

    border-radius: 999px;

    filter: blur(10px);

    pointer-events: none;
}


.zire-home-hero__glow--one {
    width: 620px;
    height: 620px;

    right: -190px;
    top: -220px;

    background:
        radial-gradient(
            circle,
            rgba(66, 99, 255, .17) 0%,
            rgba(66, 99, 255, .05) 48%,
            transparent 72%
        );
}


.zire-home-hero__glow--two {
    width: 430px;
    height: 430px;

    left: -220px;
    bottom: -245px;

    background:
        radial-gradient(
            circle,
            rgba(124, 58, 237, .12) 0%,
            transparent 70%
        );
}


/* Hero copy */

.zire-home-hero__eyebrow {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    margin-bottom: 24px;

    padding:
        8px
        13px;

    border:
        1px
        solid
        rgba(49, 94, 251, .16);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .055);

    color: #315efb;

    font-size: 13px;
    font-weight: 700;

    line-height: 1;
}


.zire-home-hero__eyebrow-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #315efb;

    box-shadow:
        0
        0
        0
        4px
        rgba(49, 94, 251, .10);
}


.zire-home-hero h1 {
    max-width: 760px;

    margin:
        0
        0
        25px;

    color: #10131a;

    font-size:
        clamp(
            54px,
            5.1vw,
            82px
        );

    font-weight: 720;

    line-height: .99;

    letter-spacing: -4.2px;
}


.zire-home-hero h1 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #315efb 0%,
            #6e50ec 52%,
            #9648d8 100%
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-home-hero__lead {
    max-width: 680px;

    margin:
        0
        0
        31px;

    color: #565f70;

    font-size: 19px;

    line-height: 1.65;
}


/* CTA buttons */

.zire-home-hero__actions {
    display: flex;

    flex-wrap: wrap;

    gap: 12px;

    margin-bottom: 17px;
}


.zire-home-hero__button {
    min-height: 52px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    padding:
        0
        21px;

    border-radius: 11px;

    font-size: 15px;
    font-weight: 700;

    text-decoration: none;

    transition:
        transform .16s ease,
        box-shadow .16s ease,
        background .16s ease,
        border-color .16s ease;
}


.zire-home-hero__button:hover {
    transform: translateY(-2px);
}


.zire-home-hero__button--primary {
    border:
        1px
        solid
        #315efb;

    background: #315efb;

    color: #ffffff;

    box-shadow:
        0
        10px
        28px
        rgba(49, 94, 251, .20);
}


.zire-home-hero__button--primary:hover {
    background: #254de0;

    color: #ffffff;
}


.zire-home-hero__button--secondary {
    border:
        1px
        solid
        #dfe3ec;

    background:
        rgba(255, 255, 255, .8);

    color: #171b24;
}


.zire-home-hero__button--secondary:hover {
    border-color: #c9cfda;

    background: #ffffff;

    color: #171b24;
}


.zire-home-hero__trial {
    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 7px;

    color: #6d7584;

    font-size: 13px;
}


.zire-home-hero__trial > span:first-child {
    color: #0e9f6e;

    font-weight: 800;
}


.zire-home-hero__trial-separator {
    color: #c3c8d1;
}


/* Right-hand product visual */

.zire-home-hero__visual {
    position: relative;
}


.zire-home-hero__platform-label {
    margin-bottom: 12px;

    color: #7c8494;

    text-align: center;

    font-size: 12px;
    font-weight: 650;

    letter-spacing: .02em;
}


.zire-home-hero__platforms {
    display: grid;

    grid-template-columns:
        repeat(
            5,
            minmax(0, 1fr)
        );

    gap: 8px;

    margin-bottom: 14px;
}


.zire-home-platform {
    height: 61px;

    display: flex;

    align-items: center;
    justify-content: center;

    padding: 12px;

    border:
        1px
        solid
        rgba(21, 30, 48, .09);

    border-radius: 11px;

    background:
        rgba(255, 255, 255, .82);

    box-shadow:
        0
        5px
        15px
        rgba(25, 37, 62, .035);

    backdrop-filter: blur(7px);
}


.zire-home-platform img {
    display: block;

    max-width: 100%;
    max-height: 28px;

    width: auto;
    height: auto;

    object-fit: contain;
}


/* Dashboard card */

.zire-home-dashboard {
    position: relative;

    padding: 26px;

    border:
        1px
        solid
        rgba(17, 28, 48, .10);

    border-radius: 18px;

    background:
        rgba(255, 255, 255, .94);

    box-shadow:
        0
        35px
        80px
        rgba(24, 38, 70, .13),
        0
        2px
        8px
        rgba(24, 38, 70, .04);

    backdrop-filter: blur(12px);
}


.zire-home-dashboard::before {
    content: "";

    position: absolute;

    inset: -1px;

    border-radius: inherit;

    padding: 1px;

    background:
        linear-gradient(
            145deg,
            rgba(49, 94, 251, .28),
            rgba(255, 255, 255, 0) 35%,
            rgba(122, 80, 236, .14)
        );

    -webkit-mask:
        linear-gradient(#fff 0 0)
        content-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite: xor;

    mask-composite: exclude;

    pointer-events: none;
}


.zire-home-dashboard__top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 14px;
}


.zire-home-dashboard__label {
    display: block;

    margin-bottom: 5px;

    color: #727b8b;

    font-size: 12px;
    font-weight: 650;
}


.zire-home-dashboard__score {
    color: #121722;

    font-size: 43px;
    font-weight: 750;

    line-height: 1;

    letter-spacing: -2px;
}


.zire-home-dashboard__score small {
    color: #9299a7;

    font-size: 17px;
    font-weight: 600;

    letter-spacing: 0;
}


.zire-home-dashboard__change {
    padding:
        6px
        9px;

    border-radius: 999px;

    background: #eaf8f2;

    color: #07885f;

    font-size: 13px;
    font-weight: 750;
}


/* Chart */

.zire-home-dashboard__chart {
    position: relative;

    height: 215px;

    margin-top: 14px;

    overflow: visible;
}


.zire-home-dashboard__grid {
    position: absolute;

    inset: 0;

    overflow: hidden;

    border-radius: 12px;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0,
            transparent 52px,
            rgba(25, 37, 60, .07) 53px,
            transparent 54px
        );
}


.zire-home-dashboard__chart svg {
    position: relative;

    z-index: 2;

    width: 100%;
    height: 100%;
}


/* Floating cards */

.zire-hero-float {
    position: absolute;

    z-index: 6;

    border:
        1px
        solid
        rgba(21, 30, 48, .10);

    border-radius: 12px;

    background:
        rgba(255, 255, 255, .97);

    box-shadow:
        0
        16px
        40px
        rgba(26, 39, 70, .14),
        0
        2px
        7px
        rgba(26, 39, 70, .04);

    backdrop-filter: blur(10px);
}


/* Recommendation floating card */

.zire-hero-float--article {
    left: 17px;
  bottom: 111px;
    width: 255px;

    display: grid;

    grid-template-columns:
        36px
        minmax(0, 1fr)
        20px;

    align-items: center;

    gap: 10px;

    padding:
        11px
        12px;
}


.zire-hero-float__icon {
    width: 36px;
    height: 36px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 9px;

    font-size: 17px;
    font-weight: 800;
}


.zire-hero-float__icon--purple {
    background:
        linear-gradient(
            135deg,
            #f1edff,
            #e8e5ff
        );

    color: #6945dc;
}


.zire-hero-float__body {
    min-width: 0;

    display: flex;

    flex-direction: column;
}


.zire-hero-float__eyebrow {
    display: block;

    margin-bottom: 3px;

    color: #9299a7;

    font-size: 12px;
    font-weight: 750;

    line-height: 1.2;

    text-transform: uppercase;

    letter-spacing: .045em;
}


.zire-hero-float__body strong {
    overflow: hidden;

    color: #151a24;

    font-size: 12px;
    font-weight: 750;

    line-height: 1.3;

    white-space: nowrap;

    text-overflow: ellipsis;
}


.zire-hero-float__meta {
    overflow: hidden;

    margin-top: 2px;

    color: #7e8796;

    font-size: 12px;

    white-space: nowrap;

    text-overflow: ellipsis;
}


.zire-hero-float__arrow {
    color: #315efb;

    font-size: 14px;
    font-weight: 750;
}


/* Competitor floating KPI */

.zire-hero-float--competitor {
    top: 18px;

    right: 17px;

    width: 148px;

    padding:
        11px
        12px;
}


.zire-hero-float__competitor-top {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 8px;
}


.zire-hero-float__competitor-top
.zire-hero-float__eyebrow {
    margin: 0;
}


.zire-hero-float__up {
    padding:
        3px
        5px;

    border-radius: 999px;

    background: #eaf8f2;

    color: #07885f;

    font-size: 11px;
    font-weight: 800;
}


.zire-hero-float__competitor-score {
    display: flex;

    align-items: baseline;

    gap: 2px;

    margin-top: 7px;
}


.zire-hero-float__competitor-score strong {
    color: #151a24;

    font-size: 25px;
    font-weight: 760;

    line-height: 1;

    letter-spacing: -1px;
}


.zire-hero-float__competitor-score span {
    color: #989fac;

    font-size: 12px;
    font-weight: 650;
}


.zire-hero-float__mini-bar {
    height: 4px;

    overflow: hidden;

    margin-top: 8px;

    border-radius: 999px;

    background: #edf0f5;
}


.zire-hero-float__mini-bar span {
    display: block;

    width: 54%;
    height: 100%;

    border-radius: inherit;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7659eb
        );
}


/* Bottom KPI row */

.zire-home-dashboard__stats {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 9px;

    margin-top: 8px;
}


.zire-home-dashboard__stats > div {
    padding:
        13px
        14px;

    border:
        1px
        solid
        #e9ecf2;

    border-radius: 10px;

    background: #fafbfc;
}


.zire-home-dashboard__stats strong {
    display: block;

    margin-bottom: 4px;

    color: #161b26;

    font-size: 18px;
}


.zire-home-dashboard__stats span {
    color: #858d9b;

    font-size: 13px;
}


/* Tablet */

@media (max-width: 1100px) {

    .zire-home-hero {
        padding-top: 72px;
    }


    .zire-home-hero__inner {
        grid-template-columns: 1fr;

        gap: 56px;
    }


    .zire-home-hero__copy,
    .zire-home-hero h1,
    .zire-home-hero__visual {
        max-width: 820px;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-home-hero {
        padding:
            55px
            18px
            68px;
    }


    .zire-home-hero h1 {
        font-size: 48px;

        letter-spacing: -2.8px;
    }


    .zire-home-hero__lead {
        font-size: 17px;
    }


    .zire-home-hero__actions {
        flex-direction: column;

        align-items: stretch;
    }


    .zire-home-hero__button {
        width: 100%;
    }


    .zire-home-hero__platforms {
        grid-template-columns:
            repeat(
                2,
                1fr
            );
    }


    .zire-home-platform:last-child {
        grid-column: span 2;
    }


    .zire-home-dashboard {
        padding: 19px;
    }


    .zire-home-dashboard__chart {
        height: 275px;
    }


    .zire-hero-float--article {
        left: 8px;

        bottom: 12px;

        width: calc(100% - 16px);
    }


    .zire-hero-float--competitor {
        top: 10px;

        right: 8px;

        width: 135px;
    }


    .zire-home-dashboard__stats {
        grid-template-columns: 1fr;
    }

}

.zire-how {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        110px
        24px
        120px;

    overflow: hidden;

    background: #ffffff;
}


.zire-how__inner {
    width: min(1320px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-how__heading {
    max-width: 780px;

    margin:
        0
        auto
        62px;

    text-align: center;
}


.zire-how__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .05em;
}


.zire-how__heading h2 {
    margin:
        0
        0
        19px;

    color: #11141b;

    font-size:
        clamp(
            43px,
            4.5vw,
            66px
        );

    font-weight: 740;

    line-height: 1.02;

    letter-spacing: -3px;
}


.zire-how__heading h2 span {
    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-how__heading p {
    max-width: 700px;

    margin:
        0
        auto;

    color: #657084;

    font-size: 18px;

    line-height: 1.65;
}


/* Steps */

.zire-how__steps {
    display: grid;

    grid-template-columns:
        1fr
        90px
        1fr
        90px
        1fr;

    align-items: center;

    margin-bottom: 32px;
}


.zire-how-step {
    display: flex;

    align-items: flex-start;

    gap: 13px;

    padding:
        17px
        18px;

    border:
        1px
        solid
        transparent;

    border-radius: 13px;

    background: transparent;

    text-align: left;

    cursor: pointer;

    transition:
        background .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}


.zire-how-step:hover {
    background: #fafbff;

    transform: translateY(-1px);
}


.zire-how-step.is-active {
    border-color:
        rgba(49, 94, 251, .15);

    background:
        rgba(49, 94, 251, .045);

    box-shadow:
        0
        7px
        22px
        rgba(37, 56, 105, .05);
}


.zire-how-step__number {
    width: 31px;
    height: 31px;

    flex:
        0
        0
        31px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 9px;

    background: #f0f2f7;

    color: #858e9d;

    font-size: 13px;
    font-weight: 800;
}


.zire-how-step.is-active
.zire-how-step__number {
    background: #315efb;

    color: #ffffff;
}


.zire-how-step__content {
    display: flex;

    flex-direction: column;

    gap: 4px;
}


.zire-how-step__content strong {
    color: #151922;

    font-size: 15px;
    font-weight: 750;
}


.zire-how-step__content span {
    color: #778090;

    font-size: 12px;

    line-height: 1.45;
}


.zire-how__connector {
    height: 1px;

    background: #e6e9ef;
}


.zire-how__connector span {
    display: block;

    width: 0%;
    height: 100%;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7558e8
        );

    transition:
        width .35s ease;
}


.zire-how__connector.is-active span {
    width: 100%;
}


/* Product shell */

.zire-how__product {
    position: relative;

    min-height: 560px;

    overflow: hidden;

    border:
        1px
        solid
        rgba(20, 30, 50, .09);

    border-radius: 24px;

    background:
        linear-gradient(
            145deg,
            #fbfcff,
            #f7f8fd
        );

    box-shadow:
        0
        30px
        80px
        rgba(27, 39, 70, .10);

    isolation: isolate;
}


.zire-how__product-glow {
    position: absolute;

    z-index: -1;

    width: 570px;
    height: 570px;

    right: -150px;
    top: -230px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .16),
            transparent 68%
        );
}


/* Panels */

.zire-how-panel {
    position: absolute;

    inset: 0;

    display: grid;

    grid-template-columns:
        .78fr
        1.22fr;

    gap: 56px;

    align-items: center;

    padding:
        62px
        62px;

    opacity: 0;

    visibility: hidden;

    transform:
        translateY(14px)
        scale(.99);

    transition:
        opacity .28s ease,
        transform .28s ease,
        visibility .28s ease;
}


.zire-how-panel.is-active {
    opacity: 1;

    visibility: visible;

    transform:
        translateY(0)
        scale(1);
}


.zire-how-panel__tag {
    display: inline-flex;

    margin-bottom: 16px;

    padding:
        6px
        10px;

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .07);

    color: #315efb;

    font-size: 13px;
    font-weight: 750;
}


.zire-how-panel__copy h3 {
    margin:
        0
        0
        15px;

    color: #121720;

    font-size: 37px;
    font-weight: 730;

    line-height: 1.06;

    letter-spacing: -1.8px;
}


.zire-how-panel__copy p {
    margin:
        0
        0
        23px;

    color: #687283;

    font-size: 16px;

    line-height: 1.65;
}


.zire-how-panel__copy ul {
    display: grid;

    gap: 11px;

    margin: 0;

    padding: 0;

    list-style: none;
}


.zire-how-panel__copy li {
    position: relative;

    padding-left: 25px;

    color: #3d4553;

    font-size: 14px;

    line-height: 1.5;
}


.zire-how-panel__copy li::before {
    content: "✓";

    position: absolute;

    left: 0;
    top: 0;

    width: 17px;
    height: 17px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 12px;
    font-weight: 850;
}


/* Product screen */

.zire-how-screen {
    overflow: hidden;

    border:
        1px
        solid
        rgba(20, 30, 50, .10);

    border-radius: 17px;

    background: #ffffff;

    box-shadow:
        0
        24px
        55px
        rgba(30, 42, 75, .12);
}


.zire-how-screen__bar {
    height: 45px;

    display: flex;

    align-items: center;

    gap: 13px;

    padding:
        0
        16px;

    border-bottom:
        1px
        solid
        #edf0f4;

    background: #fbfcfe;

    color: #747d8c;

    font-size: 13px;
    font-weight: 650;
}


.zire-how-screen__dots {
    display: flex;

    gap: 5px;
}


.zire-how-screen__dots span {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #d7dbe3;
}


/* Track screen */

.zire-how-track {
    padding: 23px;
}


.zire-how-prompt {
    padding: 15px;

    border:
        1px
        solid
        #eceff4;

    border-radius: 11px;

    background: #fafbfe;
}


.zire-how-prompt span {
    display: block;

    margin-bottom: 5px;

    color: #8c94a2;

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;
}


.zire-how-prompt strong {
    color: #18202c;

    font-size: 13px;
    font-weight: 700;
}


.zire-how-provider-row {
    display: grid;

    grid-template-columns:
        repeat(
            4,
            1fr
        );

    gap: 8px;

    margin:
        13px
        0;
}


.zire-how-provider-row div {
    padding:
        10px
        11px;

    border:
        1px
        solid
        #eceff4;

    border-radius: 9px;

    background: #ffffff;
}


.zire-how-provider-row span {
    display: block;

    margin-bottom: 3px;

    color: #8a92a0;

    font-size: 12px;
}


.zire-how-provider-row strong {
    color: #171e29;

    font-size: 15px;
}


.zire-how-chart {
    position: relative;

    height: 205px;

    overflow: hidden;

    border:
        1px
        solid
        #edf0f4;

    border-radius: 11px;

    background: #fcfdff;
}


.zire-how-chart__grid {
    position: absolute;

    inset: 0;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0,
            transparent 49px,
            rgba(20, 30, 50, .06) 50px,
            transparent 51px
        );
}


.zire-how-chart svg {
    position: relative;

    z-index: 2;

    width: 100%;
    height: 100%;
}


/* Understand screen */

.zire-how-intelligence {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            1fr
        );

    gap: 11px;

    padding: 23px;
}


.zire-how-score-card,
.zire-how-source-card,
.zire-how-gap-card {
    border:
        1px
        solid
        #eceff4;

    border-radius: 11px;

    background: #ffffff;
}


.zire-how-score-card {
    padding: 16px;
}


.zire-how-score-card > span {
    display: block;

    margin-bottom: 7px;

    color: #88909d;

    font-size: 12px;
}


.zire-how-score-card strong {
    display: block;

    margin-bottom: 10px;

    color: #171e29;

    font-size: 25px;
    font-weight: 750;
}


.zire-how-progress {
    height: 5px;

    overflow: hidden;

    border-radius: 999px;

    background: #edf0f4;
}


.zire-how-progress span {
    display: block;

    height: 100%;

    border-radius: inherit;

    background: #315efb;
}


.zire-how-progress--purple span {
    background: #7858e9;
}


.zire-how-source-card {
    grid-column: span 2;

    padding: 16px;
}


.zire-how-source-card__head {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom: 9px;

    color: #6f7887;

    font-size: 12px;
    font-weight: 700;
}


.zire-how-source-card__head small {
    color: #9ba2ae;

    font-size: 12px;
}


.zire-how-source-row {
    display: flex;

    align-items: center;
    justify-content: space-between;

    padding:
        9px
        0;

    border-top:
        1px
        solid
        #f0f2f5;

    color: #7e8795;

    font-size: 12px;
}


.zire-how-source-row > div {
    display: flex;

    align-items: center;

    gap: 8px;
}


.zire-how-source-row strong {
    color: #222a36;

    font-size: 12px;
    font-weight: 650;
}


.zire-how-source-row__icon {
    width: 22px;
    height: 22px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 6px;

    background: #f2f4f7;

    color: #566070;

    font-size: 11px;
    font-weight: 800;
}


.zire-how-gap-card {
    grid-column: span 2;

    display: flex;

    align-items: center;

    gap: 11px;

    padding: 13px 14px;

    border-color:
        rgba(245, 158, 11, .18);

    background: #fffaf0;
}


.zire-how-gap-card__icon {
    width: 28px;
    height: 28px;

    flex:
        0
        0
        28px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 8px;

    background: #fff1c9;

    color: #b97800;

    font-size: 13px;
    font-weight: 850;
}


.zire-how-gap-card small {
    display: block;

    margin-bottom: 2px;

    color: #a57a23;

    font-size: 11px;

    text-transform: uppercase;

    font-weight: 750;
}


.zire-how-gap-card strong {
    color: #564521;

    font-size: 12px;

    line-height: 1.4;
}


/* Improve */

.zire-how-actions {
    display: grid;

    gap: 10px;

    padding: 23px;
}


.zire-how-action-card {
    display: grid;

    grid-template-columns:
        39px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 11px;

    padding:
        12px
        13px;

    border:
        1px
        solid
        #e9edf3;

    border-radius: 11px;

    background: #ffffff;

    transition:
        transform .18s ease,
        box-shadow .18s ease;
}


.zire-how-action-card:hover {
    transform:
        translateX(3px);

    box-shadow:
        0
        8px
        22px
        rgba(27, 39, 70, .07);
}


.zire-how-action-card--active {
    border-color:
        rgba(49, 94, 251, .18);

    background:
        rgba(49, 94, 251, .025);
}


.zire-how-action-card__icon {
    width: 39px;
    height: 39px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 9px;

    font-size: 14px;
    font-weight: 850;
}


.zire-how-action-card__icon--blue {
    background: #eaf0ff;

    color: #315efb;
}


.zire-how-action-card__icon--purple {
    background: #f0ebff;

    color: #7353df;
}


.zire-how-action-card__icon--green {
    background: #eaf8f2;

    color: #07885f;
}


.zire-how-action-card__icon--orange {
    background: #fff3df;

    color: #b96a00;
}


.zire-how-action-card small {
    display: block;

    margin-bottom: 2px;

    color: #9299a6;

    font-size: 11px;

    font-weight: 750;

    text-transform: uppercase;
}


.zire-how-action-card strong {
    display: block;

    margin-bottom: 2px;

    color: #1a212d;

    font-size: 13px;
    font-weight: 700;
}


.zire-how-action-card > div:nth-child(2) > span {
    display: block;

    color: #818a98;

    font-size: 12px;
}


.zire-how-action-card__arrow {
    color: #315efb;

    font-size: 15px;
}


.zire-how-action-card__status {
    padding:
        5px
        7px;

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .08);

    color: #315efb;

    font-size: 11px;
    font-weight: 750;
}


/* Responsive */

@media (max-width: 1050px) {

    .zire-how__steps {
        grid-template-columns: 1fr;

        gap: 7px;
    }


    .zire-how__connector {
        display: none;
    }


    .zire-how-panel {
        grid-template-columns: 1fr;

        gap: 35px;

        padding:
            45px
            42px;
    }


    .zire-how__product {
        min-height: 850px;
    }

}


@media (max-width: 680px) {

    .zire-how {
        padding:
            75px
            18px
            85px;
    }


    .zire-how__heading {
        margin-bottom: 42px;
    }


    .zire-how__heading h2 {
        font-size: 43px;

        letter-spacing: -2px;
    }


    .zire-how__heading p {
        font-size: 16px;
    }


    .zire-how-panel {
        padding:
            28px
            20px;
    }


    .zire-how-panel__copy h3 {
        font-size: 30px;
    }


    .zire-how__product {
        min-height: 900px;
    }


    .zire-how-provider-row {
        grid-template-columns:
            repeat(
                2,
                1fr
            );
    }


    .zire-how-intelligence {
        grid-template-columns: 1fr;
    }


    .zire-how-source-card,
    .zire-how-gap-card {
        grid-column: auto;
    }

}

.zire-features {
    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        115px
        24px
        125px;

    background:
        linear-gradient(
            180deg,
            #f8faff 0%,
            #ffffff 100%
        );
}


.zire-features__inner {
    width: min(1320px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-features__heading {
    max-width: 810px;

    margin:
        0
        auto
        62px;

    text-align: center;
}


.zire-features__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .05em;
}


.zire-features__heading h2 {
    margin:
        0
        0
        18px;

    color: #11141b;

    font-size:
        clamp(
            42px,
            4.4vw,
            64px
        );

    font-weight: 740;

    line-height: 1.03;

    letter-spacing: -3px;
}


.zire-features__heading h2 span {

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-features__heading p {
    max-width: 730px;

    margin:
        0
        auto;

    color: #657084;

    font-size: 18px;

    line-height: 1.65;
}


/* Bento grid */

.zire-features__grid {
    display: grid;

    grid-template-columns:
        repeat(
            12,
            minmax(0, 1fr)
        );

    gap: 18px;
}


.zire-feature {
    position: relative;

    overflow: hidden;

    padding: 30px;

    border:
        1px
        solid
        rgba(20, 30, 50, .09);

    border-radius: 22px;

    background:
        rgba(255, 255, 255, .96);

    box-shadow:
        0
        18px
        50px
        rgba(28, 42, 75, .06);
}


.zire-feature::before {
    content: "";

    position: absolute;

    width: 300px;
    height: 300px;

    right: -130px;
    top: -150px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .08),
            transparent 68%
        );

    pointer-events: none;
}


.zire-feature--visibility {
    grid-column: span 8;

    min-height: 490px;

    display: grid;

    grid-template-columns:
        .8fr
        1.2fr;

    gap: 35px;

    align-items: center;
}


.zire-feature--prompts,
.zire-feature--competitors {
    grid-column: span 4;
}


.zire-feature--actions {
    grid-column: span 8;

    min-height: 455px;

    display: grid;

    grid-template-columns:
        .8fr
        1.2fr;

    gap: 34px;

    align-items: center;
}


.zire-feature--citations {
    grid-column: span 5;
}


.zire-feature--reports {
    grid-column: span 7;
}


/* Generic content */

.zire-feature__icon {
    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 18px;

    border-radius: 11px;

    font-size: 17px;
    font-weight: 850;
}


.zire-feature__icon--blue {
    background: #eaf0ff;
    color: #315efb;
}


.zire-feature__icon--purple {
    background: #f0ebff;
    color: #7455df;
}


.zire-feature__icon--orange {
    background: #fff2e2;
    color: #c56e00;
}


.zire-feature__icon--green {
    background: #eaf8f2;
    color: #07885f;
}


.zire-feature__icon--teal {
    background: #e8f8f7;
    color: #118b84;
}


.zire-feature__icon--pink {
    background: #fbeaf5;
    color: #b84186;
}


.zire-feature__eyebrow {
    margin-bottom: 8px;

    color: #315efb;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .055em;
}


.zire-feature h3 {
    max-width: 480px;

    margin:
        0
        0
        11px;

    color: #151922;

    font-size: 27px;
    font-weight: 730;

    line-height: 1.12;

    letter-spacing: -1.2px;
}


.zire-feature p {
    max-width: 490px;

    margin:
        0
        0
        18px;

    color: #6e7787;

    font-size: 14px;

    line-height: 1.65;
}


.zire-feature__link {
    color: #315efb;

    font-size: 12px;
    font-weight: 750;

    text-decoration: none;
}


.zire-feature__link:hover {
    text-decoration: underline;
}


/* Visibility UI */

.zire-feature-visibility-ui {
    padding: 19px;

    border:
        1px
        solid
        #e8ebf2;

    border-radius: 16px;

    background: #ffffff;

    box-shadow:
        0
        20px
        42px
        rgba(30, 43, 75, .09);
}


.zire-feature-visibility-ui__top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 10px;
}


.zire-feature-visibility-ui__top span {
    display: block;

    margin-bottom: 3px;

    color: #858e9d;

    font-size: 12px;
}


.zire-feature-visibility-ui__top strong {
    color: #171e29;

    font-size: 32px;

    line-height: 1;
}


.zire-feature-visibility-ui__top small {
    color: #999fac;

    font-size: 12px;
}


.zire-feature-positive {
    padding:
        5px
        7px;

    border-radius: 999px;

    background: #eaf8f2;

    color: #07885f !important;

    font-size: 12px !important;
    font-weight: 800;
}


.zire-feature-chart {
    position: relative;

    height: 200px;

    overflow: hidden;

    border:
        1px
        solid
        #edf0f4;

    border-radius: 11px;

    background: #fcfdff;
}


.zire-feature-chart__grid {
    position: absolute;

    inset: 0;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0,
            transparent 48px,
            rgba(20, 30, 50, .06) 49px,
            transparent 50px
        );
}


.zire-feature-chart svg {
    position: relative;

    z-index: 2;

    width: 100%;
    height: 100%;
}


.zire-feature-visibility-ui__stats {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 8px;

    margin-top: 9px;
}


.zire-feature-visibility-ui__stats div {
    padding: 9px;

    border-radius: 8px;

    background: #f8f9fc;
}


.zire-feature-visibility-ui__stats strong {
    display: block;

    margin-bottom: 2px;

    color: #17202c;

    font-size: 14px;
}


.zire-feature-visibility-ui__stats span {
    color: #8b93a0;

    font-size: 11px;
}


/* Prompt tracking */

.zire-feature-prompt-ui {
    display: grid;

    gap: 8px;

    margin-top: 25px;
}


.zire-feature-prompt-ui__item {
    display: grid;

    grid-template-columns:
        10px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 9px;

    padding: 12px;

    border:
        1px
        solid
        #eceff4;

    border-radius: 10px;

    background: #fafbfc;
}


.zire-feature-status {
    width: 7px;
    height: 7px;

    border-radius: 50%;
}


.zire-feature-status--green {
    background: #18a879;
}


.zire-feature-status--amber {
    background: #e7a72e;
}


.zire-feature-prompt-ui__item strong {
    display: block;

    margin-bottom: 2px;

    color: #1d2530;

    font-size: 12px;
}


.zire-feature-prompt-ui__item span {
    color: #8b93a0;

    font-size: 11px;
}


.zire-feature-prompt-ui__item b {
    color: #315efb;

    font-size: 12px;
}


/* Competitors */

.zire-feature-competitors-ui {
    display: grid;

    gap: 14px;

    margin-top: 24px;
}


.zire-feature-competitor > div:first-child {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom: 6px;
}


.zire-feature-competitor span {
    color: #727c8b;

    font-size: 12px;
}


.zire-feature-competitor strong {
    color: #1c2430;

    font-size: 13px;
}


.zire-feature-bar {
    height: 6px;

    overflow: hidden;

    border-radius: 999px;

    background: #edf0f4;
}


.zire-feature-bar span {
    display: block;

    height: 100%;

    border-radius: inherit;

    background: #315efb;
}


.zire-feature-bar--purple span {
    background: #7557e5;
}


.zire-feature-bar--orange span {
    background: #e7962f;
}


/* Actions */

.zire-feature-actions-ui {
    display: grid;

    gap: 9px;
}


.zire-feature-action {
    display: grid;

    grid-template-columns:
        38px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 10px;

    padding:
        11px
        12px;

    border:
        1px
        solid
        #e9edf3;

    border-radius: 10px;

    background: #ffffff;
}


.zire-feature-action--active {
    background:
        rgba(49, 94, 251, .03);

    border-color:
        rgba(49, 94, 251, .16);
}


.zire-feature-action__icon {
    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 9px;

    font-size: 13px;
    font-weight: 850;
}


.zire-feature-action__icon--blue {
    background: #eaf0ff;
    color: #315efb;
}


.zire-feature-action__icon--purple {
    background: #f0ebff;
    color: #7455df;
}


.zire-feature-action__icon--green {
    background: #eaf8f2;
    color: #07885f;
}


.zire-feature-action__icon--orange {
    background: #fff2df;
    color: #bf6f00;
}


.zire-feature-action small {
    display: block;

    margin-bottom: 2px;

    color: #969daa;

    font-size: 10px;

    font-weight: 800;

    text-transform: uppercase;
}


.zire-feature-action strong {
    display: block;

    margin-bottom: 2px;

    color: #1b222d;

    font-size: 12px;
}


.zire-feature-action div > span {
    color: #858e9c;

    font-size: 11px;
}


.zire-feature-action > b {
    color: #315efb;

    font-size: 13px;
}


.zire-feature-action__badge {
    padding:
        4px
        6px;

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .08);

    color: #315efb;

    font-size: 11px;
    font-weight: 750;
}


/* Citation sources */

.zire-feature-source-ui {
    display: grid;

    gap: 7px;

    margin-top: 24px;
}


.zire-feature-source-ui > div {
    display: grid;

    grid-template-columns:
        27px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 8px;

    padding:
        10px
        11px;

    border:
        1px
        solid
        #edf0f4;

    border-radius: 9px;

    background: #fafbfc;
}


.zire-feature-source-icon {
    width: 27px;
    height: 27px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 7px;

    background: #eef1f5;

    color: #596272;

    font-size: 12px;
    font-weight: 800;
}


.zire-feature-source-ui strong {
    color: #27303d;

    font-size: 12px;
}


.zire-feature-source-ui b {
    color: #6e7786;

    font-size: 12px;
}


/* Reports */

.zire-feature-report-ui {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 9px;

    margin-top: 28px;
}


.zire-feature-report-ui div {
    padding:
        15px
        14px;

    border:
        1px
        solid
        #e9edf3;

    border-radius: 11px;

    background: #fafbfc;
}


.zire-feature-report-ui span {
    display: block;

    margin-bottom: 6px;

    color: #8a92a0;

    font-size: 12px;
}


.zire-feature-report-ui strong {
    color: #18202b;

    font-size: 20px;
}


/* Tablet */

@media (max-width: 1050px) {

    .zire-feature--visibility,
    .zire-feature--actions {
        grid-template-columns: 1fr;
    }


    .zire-feature--visibility,
    .zire-feature--actions,
    .zire-feature--prompts,
    .zire-feature--competitors,
    .zire-feature--citations,
    .zire-feature--reports {
        grid-column: span 12;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-features {
        padding:
            80px
            18px
            90px;
    }


    .zire-features__heading h2 {
        font-size: 42px;

        letter-spacing: -2px;
    }


    .zire-features__heading p {
        font-size: 16px;
    }


    .zire-feature {
        padding: 23px;

        border-radius: 18px;
    }


    .zire-feature h3 {
        font-size: 24px;
    }


    .zire-feature-visibility-ui__stats,
    .zire-feature-report-ui {
        grid-template-columns: 1fr;
    }

}

.zire-improve {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        118px
        24px
        120px;

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            #0e1118 0%,
            #121722 55%,
            #10141d 100%
        );

    isolation: isolate;
}


.zire-improve__inner {
    position: relative;

    z-index: 2;

    width: min(1380px, 100%);

    margin:
        0
        auto;
}


/* Background */

.zire-improve__glow {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}


.zire-improve__glow--one {
    width: 650px;
    height: 650px;

    right: -260px;
    top: -270px;

    background:
        radial-gradient(
            circle,
            rgba(74, 92, 255, .19),
            transparent 68%
        );
}


.zire-improve__glow--two {
    width: 530px;
    height: 530px;

    left: -270px;
    bottom: -250px;

    background:
        radial-gradient(
            circle,
            rgba(126, 72, 218, .13),
            transparent 68%
        );
}


/* Heading */

.zire-improve__heading {
    max-width: 900px;

    margin-bottom: 60px;
}


.zire-improve__eyebrow {
    display: inline-flex;

    margin-bottom: 19px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(130, 145, 255, .2);

    border-radius: 999px;

    background:
        rgba(92, 110, 255, .08);

    color: #9caaff;

    font-size: 13px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-improve__heading h2 {
    max-width: 880px;

    margin:
        0
        0
        20px;

    color: #ffffff;

    font-size:
        clamp(
            45px,
            5vw,
            70px
        );

    font-weight: 730;

    line-height: 1;

    letter-spacing: -3.4px;
}


.zire-improve__heading h2 span {
    background:
        linear-gradient(
            90deg,
            #8fa2ff,
            #b994ff
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-improve__heading p {
    max-width: 790px;

    margin: 0;

    color: #959dab;

    font-size: 18px;

    line-height: 1.68;
}


/* Cards */

.zire-improve__flow {
    display: grid;

    grid-template-columns:
        repeat(
            10,
            minmax(0, 1fr)
        );

    gap: 15px;
}


.zire-improve-card {
    position: relative;

    overflow: hidden;

    grid-column: span 2;

    min-height: 480px;

    display: flex;

    flex-direction: column;

    padding:
        24px
        22px
        22px;

    border:
        1px
        solid
        rgba(255, 255, 255, .09);

    border-radius: 19px;

    background:
        rgba(255, 255, 255, .045);

    box-shadow:
        inset
        0
        1px
        0
        rgba(255, 255, 255, .035);

    transition:
        transform .22s ease,
        border-color .22s ease,
        background .22s ease,
        box-shadow .22s ease;
}


.zire-improve-card:hover {
    transform: translateY(-6px);

    border-color:
        rgba(255, 255, 255, .15);

    background:
        rgba(255, 255, 255, .062);

    box-shadow:
        0
        22px
        45px
        rgba(0, 0, 0, .18);
}


.zire-improve-card::before {
    content: "";

    position: absolute;

    width: 210px;
    height: 210px;

    top: -120px;
    right: -90px;

    border-radius: 50%;

    opacity: .18;

    pointer-events: none;
}


.zire-improve-card--blue::before {
    background: #315efb;
}


.zire-improve-card--purple::before {
    background: #8055e8;
}


.zire-improve-card--green::before {
    background: #12a378;
}


.zire-improve-card--orange::before {
    background: #e48a2b;
}


.zire-improve-card--pink::before {
    background: #c64a91;
}


/* Card headers */

.zire-improve-card__top {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom: 29px;
}


.zire-improve-card__number {
    color: #727c8d;

    font-size: 12px;
    font-weight: 750;
}


.zire-improve-card__type {
    padding:
        5px
        8px;

    border:
        1px
        solid
        rgba(255, 255, 255, .08);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .035);

    color: #949dac;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .05em;
}


.zire-improve-card__icon {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 11px;

    font-size: 16px;
    font-weight: 850;
}


.zire-improve-card--blue
.zire-improve-card__icon {
    background:
        rgba(75, 105, 255, .15);

    color: #88a0ff;
}


.zire-improve-card--purple
.zire-improve-card__icon {
    background:
        rgba(132, 88, 232, .15);

    color: #b59bff;
}


.zire-improve-card--green
.zire-improve-card__icon {
    background:
        rgba(18, 163, 120, .15);

    color: #76d6b8;
}


.zire-improve-card--orange
.zire-improve-card__icon {
    background:
        rgba(228, 138, 43, .15);

    color: #efb26c;
}


.zire-improve-card--pink
.zire-improve-card__icon {
    background:
        rgba(198, 74, 145, .15);

    color: #e590bf;
}


.zire-improve-card h3 {
    margin:
        0
        0
        12px;

    color: #f6f8fb;

    font-size: 21px;
    font-weight: 700;

    line-height: 1.18;

    letter-spacing: -.7px;
}


.zire-improve-card > p {
    margin:
        0
        22px
        24px
        0;

    color: #9099a7;

    font-size: 13px;

    line-height: 1.65;
}


/* Job example */

.zire-improve-job {
    margin-top: auto;

    padding: 14px;

    border:
        1px
        solid
        rgba(255, 255, 255, .075);

    border-radius: 12px;

    background:
        rgba(5, 8, 14, .33);

    box-shadow:
        inset
        0
        1px
        0
        rgba(255, 255, 255, .025);
}


.zire-improve-job__head {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 8px;

    margin-bottom: 9px;
}


.zire-improve-job__head > span:first-child {
    color: #6f7988;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .055em;
}


.zire-improve-job__priority,
.zire-improve-job__new,
.zire-improve-job__channel {
    padding:
        3px
        5px;

    border-radius: 999px;

    font-size: 12px;
    font-weight: 800;
}


.zire-improve-job__priority {
    background:
        rgba(239, 90, 90, .11);

    color: #ef9696;
}


.zire-improve-job__new {
    background:
        rgba(108, 92, 231, .13);

    color: #b6a8ff;
}


.zire-improve-job__channel {
    background:
        rgba(35, 167, 122, .13);

    color: #82dabb;
}


.zire-improve-job strong {
    display: block;

    min-height: 37px;

    color: #dce1e8;

    font-size: 12px;
    font-weight: 650;

    line-height: 1.45;
}


.zire-improve-job__signals {
    display: flex;

    flex-wrap: wrap;

    gap: 5px;

    margin-top: 10px;
}


.zire-improve-job__signals span {
    padding:
        4px
        6px;

    border-radius: 6px;

    background:
        rgba(255, 255, 255, .045);

    color: #77818f;

    font-size:12px;
}


/* Bottom CTA */

.zire-improve__bottom {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 30px;

    margin-top: 22px;

    padding:
        21px
        23px;

    border:
        1px
        solid
        rgba(255, 255, 255, .08);

    border-radius: 16px;

    background:
        rgba(255, 255, 255, .035);
}


.zire-improve__bottom-copy {
    display: flex;

    align-items: center;

    gap: 13px;
}


.zire-improve__bottom-icon {
    width: 37px;
    height: 37px;

    flex:
        0
        0
        37px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background:
        rgba(48, 190, 139, .12);

    color: #6ad4ae;

    font-size: 13px;
    font-weight: 850;
}


.zire-improve__bottom-copy strong {
    display: block;

    margin-bottom: 3px;

    color: #f4f6f9;

    font-size: 13px;
    font-weight: 700;
}


.zire-improve__bottom-copy span {
    color: #8892a0;

    font-size: 13px;

    line-height: 1.45;
}


.zire-improve__button {
    flex:
        0
        0
        auto;

    min-height: 45px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    padding:
        0
        16px;

    border:
        1px
        solid
        rgba(139, 155, 255, .22);

    border-radius: 10px;

    background:
        rgba(84, 104, 255, .12);

    color: #c8d0ff;

    font-size: 12px;
    font-weight: 700;

    text-decoration: none;

    transition:
        background .18s ease,
        transform .18s ease;
}


.zire-improve__button:hover {
    background:
        rgba(84, 104, 255, .20);

    color: #ffffff;

    transform: translateY(-1px);
}


/* Tablet */

@media (max-width: 1150px) {

    .zire-improve__flow {
        grid-template-columns:
            repeat(
                2,
                1fr
            );
    }


    .zire-improve-card {
        grid-column: auto;

        min-height: 440px;
    }


    .zire-improve-card:last-child {
        grid-column: span 2;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-improve {
        padding:
            80px
            18px
            85px;
    }


    .zire-improve__heading {
        margin-bottom: 42px;
    }


    .zire-improve__heading h2 {
        font-size: 43px;

        letter-spacing: -2px;
    }


    .zire-improve__heading p {
        font-size: 16px;
    }


    .zire-improve__flow {
        grid-template-columns: 1fr;
    }


    .zire-improve-card,
    .zire-improve-card:last-child {
        grid-column: auto;

        min-height: 410px;
    }


    .zire-improve__bottom {
        flex-direction: column;

        align-items: stretch;
    }


    .zire-improve__button {
        width: 100%;
    }

}

.zire-platforms-section {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        112px
        24px
        118px;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8faff 100%
        );
}


.zire-platforms-section__inner {
    width: min(1320px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-platforms-section__heading {
    max-width: 850px;

    margin:
        0
        auto
        58px;

    text-align: center;
}


.zire-platforms-section__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 13px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-platforms-section__heading h2 {
    margin:
        0
        0
        19px;

    color: #11141b;

    font-size:
        clamp(
            44px,
            4.7vw,
            68px
        );

    font-weight: 735;

    line-height: 1.01;

    letter-spacing: -3.2px;
}


.zire-platforms-section__heading h2 span {

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-platforms-section__heading p {
    max-width: 760px;

    margin:
        0
        auto;

    color: #667184;

    font-size: 18px;

    line-height: 1.67;
}


/* Showcase */

.zire-platforms-showcase {
    position: relative;

    overflow: hidden;

    padding:
        28px
        30px
        34px;

    border:
        1px
        solid
        rgba(20, 30, 50, .09);

    border-radius: 25px;

    background:
        rgba(255, 255, 255, .94);

    box-shadow:
        0
        28px
        75px
        rgba(28, 42, 75, .08);

    isolation: isolate;
}


.zire-platforms-showcase__glow {
    position: absolute;

    z-index: -1;

    width: 560px;
    height: 560px;

    right: -190px;
    top: -260px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .12),
            transparent 68%
        );
}


/* Logos */

.zire-platforms-showcase__logos {
    display: grid;

    grid-template-columns:
        repeat(
            5,
            minmax(0, 1fr)
        );

    gap: 10px;

    margin-bottom: 32px;
}


.zire-platform-logo {
    min-height: 86px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding:
        14px
        12px;

    border:
        1px
        solid
        #e9edf3;

    border-radius: 14px;

    background:
        linear-gradient(
            180deg,
            #ffffff,
            #fafbfe
        );

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}


.zire-platform-logo:hover {
    transform:
        translateY(-3px);

    border-color:
        rgba(49, 94, 251, .17);

    box-shadow:
        0
        10px
        26px
        rgba(27, 39, 70, .06);
}


.zire-platform-logo img {
    display: block;

    max-width: 125px;
    max-height: 31px;

    width: auto;
    height: auto;

    object-fit: contain;
}


.zire-platform-logo span {
    color: #7b8493;

    font-size: 12px;
    font-weight: 650;
}


/* Main content */

.zire-platforms-showcase__content {
    display: grid;

    grid-template-columns:
        .85fr
        1.15fr;

    gap: 60px;

    align-items: center;

    padding:
        20px
        15px
        8px;
}


.zire-platforms-showcase__label {
    display: inline-block;

    margin-bottom: 11px;

    color: #315efb;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .055em;
}


.zire-platforms-showcase__copy h3 {
    max-width: 500px;

    margin:
        0
        0
        14px;

    color: #151a23;

    font-size: 33px;
    font-weight: 725;

    line-height: 1.08;

    letter-spacing: -1.6px;
}


.zire-platforms-showcase__copy p {
    max-width: 520px;

    margin:
        0
        0
        23px;

    color: #6d7788;

    font-size: 14px;

    line-height: 1.65;
}


.zire-platforms-showcase__points {
    display: grid;

    gap: 10px;
}


.zire-platforms-showcase__points div {
    display: flex;

    align-items: center;

    gap: 9px;

    color: #434c5a;

    font-size: 12px;
}


.zire-platforms-showcase__points span {
    width: 19px;
    height: 19px;

    flex:
        0
        0
        19px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 12px;
    font-weight: 850;
}


/* Report mockup */

.zire-platforms-report {
    overflow: hidden;

    border:
        1px
        solid
        #e6eaf1;

    border-radius: 17px;

    background: #ffffff;

    box-shadow:
        0
        21px
        48px
        rgba(28, 42, 75, .09);
}


.zire-platforms-report__top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;

    padding:
        18px
        19px;

    border-bottom:
        1px
        solid
        #edf0f4;
}


.zire-platforms-report__top span:first-child {
    display: block;

    margin-bottom: 3px;

    color: #9299a5;

    font-size: 12px;

    text-transform: uppercase;

    font-weight: 750;
}


.zire-platforms-report__top strong {
    color: #1e2632;

    font-size: 13px;
}


.zire-platforms-report__badge {
    padding:
        5px
        8px;

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .07);

    color: #315efb;

    font-size: 11px;
    font-weight: 750;
}


.zire-platforms-report__rows {
    padding:
        7px
        18px;
}


.zire-platforms-report__row {
    display: grid;

    grid-template-columns:
        120px
        minmax(0, 1fr)
        38px;

    align-items: center;

    gap: 14px;

    min-height: 54px;

    border-bottom:
        1px
        solid
        #f0f2f5;
}


.zire-platforms-report__row:last-child {
    border-bottom: 0;
}


.zire-platforms-report__provider {
    display: flex;

    align-items: center;

    gap: 8px;
}


.zire-platforms-report__provider img {
    width: 21px;
    height: 21px;

    object-fit: contain;
}


.zire-platforms-report__provider span {
    color: #3b4553;

    font-size: 12px;
    font-weight: 650;
}


.zire-platforms-report__row strong {
    color: #222a35;

    font-size: 12px;

    text-align: right;
}


.zire-platforms-report__bar {
    height: 6px;

    overflow: hidden;

    border-radius: 999px;

    background: #edf0f4;
}


.zire-platforms-report__bar span {
    display: block;

    height: 100%;

    border-radius: inherit;

    background: #315efb;
}


.zire-platforms-report__bar--gemini span {
    background:
        linear-gradient(
            90deg,
            #5f72e9,
            #976bdc
        );
}


.zire-platforms-report__bar--claude span {
    background: #d37b5d;
}


.zire-platforms-report__bar--perplexity span {
    background: #18958e;
}


.zire-platforms-report__bar--grok span {
    background: #262c35;
}


.zire-platforms-report__footer {
    padding:
        12px
        18px;

    border-top:
        1px
        solid
        #edf0f4;

    background: #fafbfc;
}


.zire-platforms-report__footer span {
    color: #949ba7;

    font-size: 11px;

    line-height: 1.4;
}


/* Bottom strip */

.zire-platforms-section__bottom {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;

    margin-top: 22px;

    padding:
        19px
        22px;

    border:
        1px
        solid
        #e9edf3;

    border-radius: 15px;

    background: #ffffff;
}


.zire-platforms-section__bottom strong {
    display: block;

    margin-bottom: 3px;

    color: #1d2430;

    font-size: 12px;
}


.zire-platforms-section__bottom span {
    color: #7c8594;

    font-size: 12px;
}


.zire-platforms-section__button {
    flex:
        0
        0
        auto;

    min-height: 43px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    padding:
        0
        15px;

    border-radius: 10px;

    background: #315efb;

    color: #ffffff;

    font-size: 12px;
    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0
        9px
        22px
        rgba(49, 94, 251, .16);

    transition:
        transform .18s ease,
        background .18s ease;
}


.zire-platforms-section__button:hover {
    transform: translateY(-1px);

    background: #254de0;

    color: #ffffff;
}


/* Tablet */

@media (max-width: 1000px) {

    .zire-platforms-showcase__content {
        grid-template-columns: 1fr;

        gap: 38px;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-platforms-section {
        padding:
            78px
            18px
            85px;
    }


    .zire-platforms-section__heading h2 {
        font-size: 43px;

        letter-spacing: -2px;
    }


    .zire-platforms-section__heading p {
        font-size: 16px;
    }


    .zire-platforms-showcase {
        padding:
            20px
            17px
            24px;
    }


    .zire-platforms-showcase__logos {
        grid-template-columns:
            repeat(
                2,
                1fr
            );
    }


    .zire-platform-logo:last-child {
        grid-column:
            span
            2;
    }


    .zire-platforms-showcase__content {
        padding:
            10px
            0
            0;
    }


    .zire-platforms-showcase__copy h3 {
        font-size: 28px;
    }


    .zire-platforms-report__row {
        grid-template-columns:
            100px
            minmax(0, 1fr)
            34px;

        gap: 9px;
    }


    .zire-platforms-section__bottom {
        flex-direction: column;

        align-items: stretch;
    }


    .zire-platforms-section__button {
        width: 100%;
    }

}

.zire-audience {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        110px
        24px
        120px;

    background: #ffffff;
}


.zire-audience__inner {
    width: min(1320px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-audience__heading {
    max-width: 850px;

    margin:
        0
        auto
        58px;

    text-align: center;
}


.zire-audience__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 13px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-audience__heading h2 {
    margin:
        0
        0
        19px;

    color: #11141b;

    font-size:
        clamp(
            44px,
            4.5vw,
            66px
        );

    font-weight: 735;

    line-height: 1.02;

    letter-spacing: -3px;
}


.zire-audience__heading h2 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-audience__heading p {
    max-width: 750px;

    margin:
        0
        auto;

    color: #677285;

    font-size: 18px;

    line-height: 1.65;
}


/* Grid */

.zire-audience__grid {
    display: grid;

    grid-template-columns:
        repeat(
            12,
            minmax(0, 1fr)
        );

    gap: 18px;
}


.zire-audience-card {
    position: relative;

    overflow: hidden;

    grid-column: span 4;

    min-height: 390px;

    padding: 29px;

    border:
        1px
        solid
        rgba(20, 30, 50, .09);

    border-radius: 21px;

    background:
        linear-gradient(
            180deg,
            #ffffff,
            #fafbfe
        );

    box-shadow:
        0
        17px
        46px
        rgba(28, 42, 75, .055);

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}


.zire-audience-card:hover {
    transform:
        translateY(-4px);

    border-color:
        rgba(49, 94, 251, .14);

    box-shadow:
        0
        24px
        58px
        rgba(28, 42, 75, .085);
}


.zire-audience-card::before {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    right: -140px;
    top: -150px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .075),
            transparent 68%
        );

    pointer-events: none;
}


.zire-audience-card--large {
    grid-column: span 8;

    display: grid;

    grid-template-columns:
        .85fr
        1.15fr;

    align-items: center;

    gap: 40px;

    min-height: 410px;
}


.zire-audience-card--wide {
    grid-column: span 8;

    display: grid;

    grid-template-columns:
        .85fr
        1.15fr;

    align-items: center;

    gap: 40px;

    min-height: 390px;
}


/* Generic content */

.zire-audience-card__icon {
    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 18px;

    border-radius: 11px;

    font-size: 16px;
    font-weight: 850;
}


.zire-audience-card__icon--blue {
    background: #eaf0ff;

    color: #315efb;
}


.zire-audience-card__icon--purple {
    background: #f0ebff;

    color: #7455df;
}


.zire-audience-card__icon--green {
    background: #eaf8f2;

    color: #07885f;
}


.zire-audience-card__icon--orange {
    background: #fff2df;

    color: #c07408;
}


.zire-audience-card__label {
    display: block;

    margin-bottom: 8px;

    color: #315efb;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .055em;
}


.zire-audience-card h3 {
    max-width: 500px;

    margin:
        0
        0
        12px;

    color: #151a23;

    font-size: 27px;
    font-weight: 725;

    line-height: 1.12;

    letter-spacing: -1.2px;
}


.zire-audience-card p {
    max-width: 520px;

    margin:
        0
        0
        21px;

    color: #6e7889;

    font-size: 14px;

    line-height: 1.65;
}


/* Brand points */

.zire-audience-card__points {
    display: flex;

    flex-wrap: wrap;

    gap: 7px;
}


.zire-audience-card__points span {
    padding:
        6px
        8px;

    border:
        1px
        solid
        #e8ecf2;

    border-radius: 8px;

    background: #fafbfc;

    color: #697383;

    font-size: 12px;
    font-weight: 650;
}


/* Brand UI */

.zire-audience-brand-ui {
    padding: 18px;

    border:
        1px
        solid
        #e7ebf1;

    border-radius: 15px;

    background: #ffffff;

    box-shadow:
        0
        18px
        42px
        rgba(29, 42, 75, .08);
}


.zire-audience-brand-ui__top {
    display: flex;

    align-items: flex-end;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 20px;
}


.zire-audience-brand-ui__top > span {
    color: #858e9d;

    font-size: 12px;
    font-weight: 650;
}


.zire-audience-brand-ui__top strong {
    color: #18202b;

    font-size: 31px;

    line-height: 1;
}


.zire-audience-brand-ui__top small {
    color: #9ba2ae;

    font-size: 13px;
}


.zire-audience-brand-ui__bars {
    display: grid;

    gap: 14px;
}


.zire-audience-brand-ui__bars > div {
    display: grid;

    grid-template-columns:
        75px
        minmax(0, 1fr)
        34px;

    align-items: center;

    gap: 10px;
}


.zire-audience-brand-ui__bars span {
    color: #697383;

    font-size: 12px;
}


.zire-audience-brand-ui__bars strong {
    color: #2b3441;

    font-size: 12px;

    text-align: right;
}


.zire-audience-brand-ui__bars div > div {
    height: 6px;

    overflow: hidden;

    border-radius: 999px;

    background: #edf0f4;
}


.zire-audience-brand-ui__bars i {
    display: block;

    height: 100%;

    border-radius: inherit;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #705be7
        );
}


/* SEO mini */

.zire-audience-mini {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-top: 28px;

    padding: 14px;

    border:
        1px
        solid
        #e8ecf2;

    border-radius: 11px;

    background: #fafbfc;
}


.zire-audience-mini span:first-child {
    display: block;

    margin-bottom: 4px;

    color: #9299a6;

    font-size: 11px;

    text-transform: uppercase;

    font-weight: 750;
}


.zire-audience-mini strong {
    color: #242c38;

    font-size: 13px;
}


.zire-audience-mini__badge {
    padding:
        5px
        7px;

    border-radius: 999px;

    background: #fff2dd;

    color: #b56f06;

    font-size: 11px;
    font-weight: 750;
}


/* Agency */

.zire-audience-agency {
    display: grid;

    gap: 8px;

    margin-top: 24px;
}


.zire-audience-agency > div {
    display: flex;

    align-items: center;

    gap: 9px;

    padding:
        10px
        11px;

    border:
        1px
        solid
        #e9edf3;

    border-radius: 9px;

    background: #fafbfc;
}


.zire-audience-agency__dot {
    width: 8px;
    height: 8px;

    flex:
        0
        0
        8px;

    border-radius: 50%;

    background: #315efb;
}


.zire-audience-agency__dot--purple {
    background: #7858e5;
}


.zire-audience-agency__dot--orange {
    background: #e49731;
}


.zire-audience-agency strong {
    display: block;

    margin-bottom: 2px;

    color: #27303c;

    font-size: 12px;
}


.zire-audience-agency span {
    color: #8c94a1;

    font-size: 11px;
}


/* Action UI */

.zire-audience-action-ui {
    overflow: hidden;

    border:
        1px
        solid
        #e7ebf1;

    border-radius: 15px;

    background: #ffffff;

    box-shadow:
        0
        18px
        42px
        rgba(29, 42, 75, .08);
}


.zire-audience-action-ui__head {
    display: flex;

    align-items: center;
    justify-content: space-between;

    padding:
        14px
        15px;

    border-bottom:
        1px
        solid
        #edf0f4;
}


.zire-audience-action-ui__head span {
    color: #6e7785;

    font-size: 12px;
    font-weight: 700;
}


.zire-audience-action-ui__head small {
    padding:
        4px
        6px;

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .07);

    color: #315efb;

    font-size: 10px;
    font-weight: 750;
}


.zire-audience-action-row {
    display: grid;

    grid-template-columns:
        34px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 10px;

    padding:
        11px
        13px;

    border-bottom:
        1px
        solid
        #f0f2f5;
}


.zire-audience-action-row:last-child {
    border-bottom: 0;
}


.zire-audience-action-row__icon {
    width: 34px;
    height: 34px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 8px;

    font-size: 12px;
    font-weight: 850;
}


.zire-audience-action-row__icon--blue {
    background: #eaf0ff;

    color: #315efb;
}


.zire-audience-action-row__icon--purple {
    background: #f0ebff;

    color: #7555df;
}


.zire-audience-action-row__icon--green {
    background: #eaf8f2;

    color: #07885f;
}


.zire-audience-action-row strong {
    display: block;

    margin-bottom: 2px;

    color: #242c38;

    font-size: 12px;
}


.zire-audience-action-row span {
    color: #8c94a2;

    font-size: 11px;
}


.zire-audience-action-row b {
    color: #315efb;

    font-size: 12px;
}


/* Tablet */

@media (max-width: 1050px) {

    .zire-audience-card,
    .zire-audience-card--large,
    .zire-audience-card--wide {
        grid-column: span 12;
    }


    .zire-audience-card--large,
    .zire-audience-card--wide {
        grid-template-columns: 1fr;

        gap: 30px;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-audience {
        padding:
            78px
            18px
            88px;
    }


    .zire-audience__heading h2 {
        font-size: 42px;

        letter-spacing: -2px;
    }


    .zire-audience__heading p {
        font-size: 16px;
    }


    .zire-audience-card {
        min-height: auto;

        padding: 23px;

        border-radius: 18px;
    }


    .zire-audience-card h3 {
        font-size: 24px;
    }

}

.zire-pricing {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        115px
        24px
        120px;

    background:
        linear-gradient(
            180deg,
            #f8faff 0%,
            #ffffff 100%
        );
}




.zire-pricing__inner {
    width: min(1380px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-pricing__heading {
    max-width: 850px;

    margin:
        0
        auto
        62px;

    text-align: center;
}


.zire-pricing__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 13px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-pricing__heading h2 {
    margin:
        0
        0
        19px;

    color: #11141b;

    font-size:
        clamp(
            44px,
            4.6vw,
            67px
        );

    font-weight: 735;

    line-height: 1.01;

    letter-spacing: -3.2px;
}


.zire-pricing__heading h2 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
	padding-bottom: 10px;
}


.zire-pricing__heading p {
    max-width: 760px;

    margin:
        0
        auto;

    color: #687386;

    font-size: 18px;

    line-height: 1.67;
}


/* Grid */

.zire-pricing__grid {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap: 18px;

    align-items: start;
}


/* Cards */

.zire-price-card {
    position: relative;

    padding:
        31px
        29px
        29px;

    border:
        1px
        solid
        rgba(20, 30, 50, .10);

    border-radius: 22px;

    background: #ffffff;

    box-shadow:
        0
        20px
        54px
        rgba(28, 42, 75, .065);
}


.zire-price-card--featured {
    border-color:
        rgba(49, 94, 251, .34);

    box-shadow:
        0
        28px
        70px
        rgba(49, 94, 251, .12);

    transform:
        translateY(-13px);
}


.zire-price-card--managed {
    border-color:
        rgba(102, 71, 199, .20);

    background:
        linear-gradient(
            180deg,
            #ffffff,
            #fbfaff
        );
}


/* Popular */

.zire-price-card__popular {
    position: absolute;

    top: -14px;
    left: 50%;

    transform:
        translateX(-50%);

    padding:
        7px
        12px;

    border-radius: 999px;

    background: #315efb;

    color: #ffffff;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .06em;

    box-shadow:
        0
        8px
        22px
        rgba(49, 94, 251, .24);
}


/* Top */

.zire-price-card__top {
    min-height: 92px;
}


.zire-price-card__plan {
    display: block;

    margin-bottom: 8px;

    color: #315efb;

    font-size: 13px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-price-card--managed
.zire-price-card__plan {
    color: #7555df;
}


.zire-price-card h3 {
    max-width: 340px;

    margin: 0;

    color: #171c25;

    font-size: 24px;
    font-weight: 725;

    line-height: 1.14;

    letter-spacing: -1px;
}


/* Pricing */

.zire-price-card__price {
    display: flex;

    align-items: baseline;

    gap: 6px;

    margin:
        22px
        0
        16px;
}


.zire-price-card__price strong {
    color: #111720;

    font-size: 49px;
    font-weight: 750;

    line-height: 1;

    letter-spacing: -2.5px;
}


.zire-price-card__price span {
    color: #8b94a2;

    font-size: 12px;
    font-weight: 600;
}


.zire-price-card__intro {
    min-height: 91px;

    margin:
        0
        0
        21px;

    color: #6d7788;

    font-size: 13px;

    line-height: 1.63;
}


/* Buttons */

.zire-price-card__button {
    min-height: 49px;

    width: 100%;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    padding:
        0
        15px;

    border-radius: 10px;

    font-size: 12px;
    font-weight: 750;

    text-decoration: none;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}


.zire-price-card__button:hover {
    transform: translateY(-1px);
}


.zire-price-card__button--secondary {
    border:
        1px
        solid
        #dce1e9;

    background: #ffffff;

    color: #1e2632;
}


.zire-price-card__button--secondary:hover {
    border-color: #cbd2dd;

    color: #1e2632;
}


.zire-price-card__button--primary {
    border:
        1px
        solid
        #315efb;

    background: #315efb;

    color: #ffffff;

    box-shadow:
        0
        10px
        25px
        rgba(49, 94, 251, .18);
}


.zire-price-card__button--primary:hover {
    background: #264ee0;

    color: #ffffff;
}


.zire-price-card__button--managed {
    border:
        1px
        solid
        #7555df;

    background:
        linear-gradient(
            90deg,
            #684ad2,
            #7959e5
        );

    color: #ffffff;

    box-shadow:
        0
        10px
        25px
        rgba(104, 74, 210, .17);
}


.zire-price-card__button--managed:hover {
    color: #ffffff;
}


/* Divider */

.zire-price-card__divider {
    height: 1px;

    margin:
        27px
        0
        23px;

    background: #edf0f4;
}


.zire-price-card__includes,
.zire-price-card__section-label {
    display: block;

    margin-bottom: 14px;

    color: #777f8e;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .065em;
}


/* Core feature list */

.zire-price-card__features {
    display: grid;

    gap: 14px;

    margin:
        0
        27px
        0
        0;

    padding: 0;

    list-style: none;
}


.zire-price-card__features li {
    display: flex;

    align-items: flex-start;

    gap: 10px;
}


.zire-price-card__check {
    width: 20px;
    height: 20px;

    flex:
        0
        0
        20px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-top: 1px;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 12px;
    font-weight: 850;
}


.zire-price-card__check--managed {
    background: #f0ebff;

    color: #7455df;
}


.zire-price-card__features strong {
    display: block;

    margin-bottom: 2px;

    color: #262e3a;

    font-size: 13px;
    font-weight: 700;
}


.zire-price-card__features small {
    display: block;

    color: #8a92a0;

    font-size: 12px;

    line-height: 1.45;
}


/* Platform areas */

.zire-price-card__platforms {
    display: grid;

    gap: 9px;

    margin-top: 27px;
}


.zire-price-platform {
    display: grid;

    grid-template-columns:
        31px
        minmax(0, 1fr);

    align-items: center;

    gap: 9px;

    padding:
        10px
        11px;

    border:
        1px
        solid
        #eaedf2;

    border-radius: 10px;

    background: #fafbfc;
}


.zire-price-platform img {
    width: 27px;
    height: 27px;

    object-fit: contain;
}


.zire-price-platform strong {
    display: block;

    margin-bottom: 2px;

    color: #27303c;

    font-size: 12px;
}


.zire-price-platform small {
    display: block;

    color: #8d95a2;

    font-size: 11px;

    line-height: 1.4;
}


.zire-price-platform__symbol {
    width: 27px;
    height: 27px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 7px;

    font-size: 13px;
    font-weight: 850;
}


.zire-price-platform__symbol--google {
    background:
        linear-gradient(
            135deg,
            #e8f0fe,
            #f7e8ff
        );

    color: #476be5;
}


.zire-price-platform__symbol--copilot {
    background:
        linear-gradient(
            135deg,
            #e9f4ff,
            #eee9ff
        );

    color: #5558d9;
}


/* Feature lines */

.zire-price-feature-line {
    display: flex;

    align-items: center;

    gap: 8px;

    color: #505967;

    font-size: 12px;
}


.zire-price-feature-line span {
    color: #0b956a;

    font-weight: 850;
}


/* Pro allowance */

.zire-price-card__pro-note {
    margin-top: 26px;

    padding: 14px;

    border:
        1px
        solid
        rgba(49, 94, 251, .13);

    border-radius: 11px;

    background:
        rgba(49, 94, 251, .045);
}


.zire-price-card__pro-note strong {
    display: block;

    margin-bottom: 3px;

    color: #315efb;

    font-size: 12px;
}


.zire-price-card__pro-note span {
    color: #758092;

    font-size: 12px;
}


/* Managed callout */

.zire-price-managed-box {
    margin-top: 27px;

    padding: 16px;

    border:
        1px
        solid
        rgba(117, 85, 223, .14);

    border-radius: 12px;

    background:
        rgba(117, 85, 223, .045);
}


.zire-price-managed-box > span {
    display: block;

    margin-bottom: 6px;

    color: #7555df;

    font-size: 11px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-price-managed-box strong {
    display: block;

    margin-bottom: 6px;

    color: #282137;

    font-size: 13px;

    line-height: 1.45;
}


.zire-price-managed-box p {
    margin: 0;

    color: #7a718b;

    font-size: 12px;

    line-height: 1.5;
}


/* Trial strip */

.zire-pricing__trial {
    max-width: 820px;

    display: flex;

    align-items: center;

    gap: 14px;

    margin:
        34px
        auto
        0;

    padding:
        17px
        20px;

    border:
        1px
        solid
        #e7ebf1;

    border-radius: 14px;

    background: #ffffff;

    box-shadow:
        0
        10px
        30px
        rgba(28, 42, 75, .045);
}


.zire-pricing__trial-icon {
    width: 37px;
    height: 37px;

    flex:
        0
        0
        37px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #eaf8f2;

    color: #07885f;

    font-size: 13px;
    font-weight: 850;
}


.zire-pricing__trial strong {
    display: block;

    margin-bottom: 3px;

    color: #252d38;

    font-size: 13px;
}


.zire-pricing__trial span {
    color: #808997;

    font-size: 12px;

    line-height: 1.5;
}


/* Tablet */

@media (max-width: 1050px) {

    .zire-pricing__grid {
        grid-template-columns: 1fr;
    }


    .zire-price-card {
        max-width: 720px;

        width: 100%;

        margin:
            0
            auto;
    }


    .zire-price-card--featured {
        transform: none;

        margin-top: 18px;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-pricing {
        padding:
            80px
            18px
            88px;
    }


    .zire-pricing__heading h2 {
        font-size: 42px;

        letter-spacing: -2px;
    }


    .zire-pricing__heading p {
        font-size: 16px;
    }


    .zire-price-card {
        padding:
            26px
            22px;

        border-radius: 18px;
    }


    .zire-price-card__top,
    .zire-price-card__intro {
        min-height: auto;
    }


    .zire-price-card__price strong {
        font-size: 45px;
    }


    .zire-pricing__trial {
        align-items: flex-start;
    }

}

.zire-compare {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        112px
        24px
        115px;

    overflow: hidden;

    background: #ffffff;
}


.zire-compare__inner {
    width: min(1320px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-compare__heading {
    max-width: 850px;

    margin:
        0
        auto
        56px;

    text-align: center;
}


.zire-compare__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 13px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-compare__heading h2 {
    margin:
        0
        0
        19px;

    color: #11141b;

    font-size:
        clamp(
            44px,
            4.5vw,
            66px
        );

    font-weight: 735;

    line-height: 1.01;

    letter-spacing: -3px;
}


.zire-compare__heading h2 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-compare__heading p {
    max-width: 760px;

    margin:
        0
        auto;

    color: #687386;

    font-size: 18px;

    line-height: 1.67;
}


/* Main panel */

.zire-compare__panel {
    position: relative;

    display: grid;

    grid-template-columns:
        .72fr
        1.28fr;

    gap: 50px;

    align-items: center;

    padding:
        45px;

    overflow: hidden;

    border:
        1px
        solid
        rgba(20, 30, 50, .09);

    border-radius: 24px;

    background:
        linear-gradient(
            145deg,
            #fafbff,
            #f7f9fd
        );

    box-shadow:
        0
        28px
        72px
        rgba(28, 42, 75, .08);
}


.zire-compare__panel::before {
    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    left: -220px;
    top: -250px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .12),
            transparent 68%
        );

    pointer-events: none;
}


/* Intro */

.zire-compare__intro {
    position: relative;

    z-index: 2;
}


.zire-compare__label {
    display: block;

    margin-bottom: 11px;

    color: #315efb;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .055em;
}


.zire-compare__intro h3 {
    max-width: 450px;

    margin:
        0
        0
        15px;

    color: #151a23;

    font-size: 35px;
    font-weight: 725;

    line-height: 1.06;

    letter-spacing: -1.7px;
}


.zire-compare__intro p {
    max-width: 460px;

    margin:
        0
        0
        25px;

    color: #6d7788;

    font-size: 14px;

    line-height: 1.67;
}


.zire-compare__link {
    min-height: 46px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    padding:
        0
        15px;

    border-radius: 10px;

    background: #315efb;

    color: #ffffff;

    font-size: 13px;
    font-weight: 750;

    text-decoration: none;

    box-shadow:
        0
        10px
        24px
        rgba(49, 94, 251, .17);

    transition:
        transform .18s ease,
        background .18s ease;
}


.zire-compare__link:hover {
    transform: translateY(-1px);

    background: #264ee0;

    color: #ffffff;
}


/* Table */

.zire-compare-table {
    position: relative;

    z-index: 2;

    overflow: hidden;

    border:
        1px
        solid
        #e5e9f0;

    border-radius: 16px;

    background: #ffffff;

    box-shadow:
        0
        18px
        45px
        rgba(28, 42, 75, .07);
}


.zire-compare-table__head,
.zire-compare-table__row {
    display: grid;

    grid-template-columns:
        minmax(0, 1.7fr)
        .6fr
        .8fr;

    align-items: center;
}


.zire-compare-table__head {
    min-height: 54px;

    border-bottom:
        1px
        solid
        #e9edf2;

    background: #f8f9fc;

    color: #7f8896;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .05em;
}


.zire-compare-table__head > div,
.zire-compare-table__row > div {
    padding:
        0
        15px;
}


.zire-compare-table__zire,
.zire-compare-table__other {
    display: flex;

    align-items: center;
    justify-content: center;

    min-height: inherit;

    text-align: center;
}


.zire-compare-table__zire {
    background:
        rgba(49, 94, 251, .025);
}


.zire-compare-table__brand {
    padding:
        5px
        9px;

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .08);

    color: #315efb;

    font-size: 12px;
    font-weight: 850;

    text-transform: none;

    letter-spacing: 0;
}


.zire-compare-table__row {
    min-height: 52px;

    border-bottom:
        1px
        solid
        #edf0f4;
}


.zire-compare-table__row:last-child {
    border-bottom: 0;
}


.zire-compare-table__feature {
    color: #3d4654;

    font-size: 12px;
    font-weight: 650;
}


.zire-compare-table__feature > span {
    display: block;

    margin-bottom: 2px;
}


.zire-compare-table__feature small {
    display: block;

    color: #959ca8;

    font-size: 11px;
    font-weight: 500;

    line-height: 1.35;
}


.zire-compare-table__row--highlight {
    min-height: 62px;
}


.zire-compare-table__row--highlight
.zire-compare-table__feature {
    color: #202834;
}


.zire-compare-check {
    width: 23px;
    height: 23px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 12px;
    font-weight: 850;
}


.zire-compare-check--muted {
    background: #f0f2f5;

    color: #87909d;
}


.zire-compare-check--strong {
    background:
        rgba(49, 94, 251, .09);

    color: #315efb;
}


.zire-compare-limited {
    padding:
        5px
        8px;

    border-radius: 999px;

    background: #f4f2ea;

    color: #8b7b4f;

    font-size: 11px;
    font-weight: 750;
}


.zire-compare-dash {
    color: #b0b6c0;

    font-size: 16px;
}


/* Bottom message */

.zire-compare__bottom {
    max-width: 900px;

    display: flex;

    align-items: center;

    gap: 13px;

    margin:
        24px
        auto
        0;

    padding:
        17px
        20px;

    border:
        1px
        solid
        #e8ecf2;

    border-radius: 14px;

    background: #ffffff;
}


.zire-compare__bottom-icon {
    width: 38px;
    height: 38px;

    flex:
        0
        0
        38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background:
        rgba(49, 94, 251, .075);

    color: #315efb;

    font-size: 13px;
    font-weight: 850;
}


.zire-compare__bottom strong {
    display: block;

    margin-bottom: 3px;

    color: #252d38;

    font-size: 13px;
}


.zire-compare__bottom span {
    color: #808997;

    font-size: 12px;

    line-height: 1.5;
}


/* Tablet */

@media (max-width: 1000px) {

    .zire-compare__panel {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .zire-compare__intro {
        max-width: 650px;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-compare {
        padding:
            78px
            18px
            86px;
    }


    .zire-compare__heading h2 {
        font-size: 42px;

        letter-spacing: -2px;
    }


    .zire-compare__heading p {
        font-size: 16px;
    }


    .zire-compare__panel {
        padding:
            27px
            18px;

        border-radius: 18px;
    }


    .zire-compare__intro h3 {
        font-size: 29px;
    }


    .zire-compare-table {
        overflow-x: auto;
    }


    .zire-compare-table__head,
    .zire-compare-table__row {
        min-width: 590px;
    }


    .zire-compare__bottom {
        align-items: flex-start;
    }

}

.zire-faq {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        110px
        24px
        115px;

    background:
        linear-gradient(
            180deg,
            #f8faff 0%,
            #ffffff 100%
        );
}


.zire-faq__inner {
    width: min(1240px, 100%);

    margin:
        0
        auto;
}


/* Heading */

.zire-faq__heading {
    max-width: 830px;

    margin:
        0
        auto
        58px;

    text-align: center;
}


.zire-faq__eyebrow {
    display: inline-flex;

    margin-bottom: 17px;

    padding:
        7px
        12px;

    border:
        1px
        solid
        rgba(49, 94, 251, .14);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .05);

    color: #315efb;

    font-size: 13px;
    font-weight: 750;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-faq__heading h2 {
    margin:
        0
        0
        19px;

    color: #11141b;

    font-size:
        clamp(
            44px,
            4.4vw,
            65px
        );

    font-weight: 735;

    line-height: 1.02;

    letter-spacing: -3px;
}


.zire-faq__heading h2 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #315efb,
            #7657e8
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
	padding-bottom: 10px;
}


.zire-faq__heading p {
    max-width: 730px;

    margin:
        0
        auto;

    color: #687386;

    font-size: 18px;

    line-height: 1.67;
}


/* Layout */

.zire-faq__layout {
    display: grid;

    grid-template-columns:
        .72fr
        1.28fr;

    gap: 60px;

    align-items: start;
}


/* Intro */

.zire-faq__intro {
    position: sticky;

    top: 30px;

    padding:
        31px
        29px;

    border:
        1px
        solid
        rgba(20, 30, 50, .09);

    border-radius: 20px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #fafbff
        );

    box-shadow:
        0
        20px
        50px
        rgba(28, 42, 75, .06);
}


.zire-faq__label {
    display: block;

    margin-bottom: 10px;

    color: #315efb;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-faq__intro h3 {
    margin:
        0
        0
        14px;

    color: #171c25;

    font-size: 29px;
    font-weight: 725;

    line-height: 1.09;

    letter-spacing: -1.3px;
}


.zire-faq__intro p {
    margin:
        0
        0
        22px;

    color: #707a8a;

    font-size: 13px;

    line-height: 1.68;
}


.zire-faq__link {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #315efb;

    font-size: 13px;
    font-weight: 750;

    text-decoration: none;
}


.zire-faq__link:hover {
    text-decoration: underline;
}


/* FAQs */

.zire-faq__items {
    display: grid;

    gap: 10px;
}


.zire-faq-item {
    overflow: hidden;

    border:
        1px
        solid
        #e7ebf1;

    border-radius: 13px;

    background: #ffffff;

    transition:
        border-color .18s ease,
        box-shadow .18s ease;
}


.zire-faq-item[open] {
    border-color:
        rgba(49, 94, 251, .19);

    box-shadow:
        0
        10px
        30px
        rgba(28, 42, 75, .055);
}


.zire-faq-item summary {
    min-height: 64px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding:
        0
        18px;

    color: #252d39;

    font-size: 13px;
    font-weight: 700;

    cursor: pointer;

    list-style: none;

    user-select: none;
}


.zire-faq-item summary::-webkit-details-marker {
    display: none;
}


.zire-faq-item__icon {
    width: 28px;
    height: 28px;

    flex:
        0
        0
        28px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 8px;

    background: #f1f3f7;

    color: #788291;

    font-size: 17px;
    font-weight: 400;

    transition:
        transform .2s ease,
        background .2s ease,
        color .2s ease;
}


.zire-faq-item[open]
.zire-faq-item__icon {
    transform: rotate(45deg);

    background:
        rgba(49, 94, 251, .08);

    color: #315efb;
}


.zire-faq-item__content {
    padding:
        0
        64px
        19px
        18px;
}


.zire-faq-item__content p {
    margin: 0;

    color: #6e7889;

    font-size: 12px;

    line-height: 1.7;
}


/* Tablet */

@media (max-width: 960px) {

    .zire-faq__layout {
        grid-template-columns: 1fr;

        gap: 30px;
    }


    .zire-faq__intro {
        position: relative;

        top: auto;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-faq {
        padding:
            78px
            18px
            85px;
    }


    .zire-faq__heading h2 {
        font-size: 42px;

        letter-spacing: -2px;
    }


    .zire-faq__heading p {
        font-size: 16px;
    }


    .zire-faq__intro {
        padding:
            25px
            22px;

        border-radius: 17px;
    }


    .zire-faq__intro h3 {
        font-size: 25px;
    }


    .zire-faq-item summary {
        min-height: 61px;

        padding:
            0
            14px;

        font-size: 12px;
    }


    .zire-faq-item__content {
        padding:
            0
            52px
            17px
            14px;
    }

}

.zire-final-cta {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        70px
        24px
        76px;

    overflow: hidden;

    background: #ffffff;
}


.zire-final-cta__inner {
    position: relative;

    width: min(1320px, 100%);

    min-height: 525px;

    display: grid;

    grid-template-columns:
        .88fr
        1.12fr;

    align-items: center;

    gap: 55px;

    margin:
        0
        auto;

    padding:
        67px
        66px;

    overflow: hidden;

    border-radius: 28px;

    background:
        linear-gradient(
            135deg,
            #2345d6 0%,
            #315efb 43%,
            #654cd9 100%
        );

    box-shadow:
        0
        32px
        85px
        rgba(49, 94, 251, .22);

    isolation: isolate;
}


/* Background glows */

.zire-final-cta__glow {
    position: absolute;

    z-index: -1;

    border-radius: 50%;

    pointer-events: none;
}


.zire-final-cta__glow--one {
    width: 600px;
    height: 600px;

    right: -250px;
    top: -280px;

    background:
        radial-gradient(
            circle,
            rgba(255, 255, 255, .16),
            transparent 68%
        );
}


.zire-final-cta__glow--two {
    width: 430px;
    height: 430px;

    left: -210px;
    bottom: -250px;

    background:
        radial-gradient(
            circle,
            rgba(149, 119, 255, .38),
            transparent 68%
        );
}


/* Copy */

.zire-final-cta__content {
    position: relative;

    z-index: 3;
}


.zire-final-cta__eyebrow {
    display: inline-flex;

    margin-bottom: 18px;

    padding:
        7px
        11px;

    border:
        1px
        solid
        rgba(255, 255, 255, .17);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .09);

    color: #dfe5ff;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-final-cta__content h2 {
    max-width: 620px;

    margin:
        0
        0
        20px;

    color: #ffffff;

    font-size:
        clamp(
            43px,
            4.3vw,
            63px
        );

    font-weight: 735;

    line-height: 1;

    letter-spacing: -3px;
}


.zire-final-cta__content h2 span {
    color: #cdd6ff;
}


.zire-final-cta__content > p {
    max-width: 580px;

    margin:
        0
        0
        28px;

    color:
        rgba(255, 255, 255, .76);

    font-size: 16px;

    line-height: 1.68;
}


/* CTA buttons */

.zire-final-cta__actions {
    display: flex;

    flex-wrap: wrap;

    gap: 10px;
}


.zire-final-cta__button {
    min-height: 50px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    padding:
        0
        18px;

    border-radius: 11px;

    font-size: 12px;
    font-weight: 750;

    text-decoration: none;

    transition:
        transform .18s ease,
        background .18s ease,
        box-shadow .18s ease;
}


.zire-final-cta__button:hover {
    transform:
        translateY(-2px);
}


.zire-final-cta__button--primary {
    background: #ffffff;

    color: #254ce3;

    box-shadow:
        0
        12px
        28px
        rgba(18, 31, 102, .18);
}


.zire-final-cta__button--primary:hover {
    background: #f7f8ff;

    color: #254ce3;
}


.zire-final-cta__button--secondary {
    border:
        1px
        solid
        rgba(255, 255, 255, .23);

    background:
        rgba(255, 255, 255, .08);

    color: #ffffff;
}


.zire-final-cta__button--secondary:hover {
    background:
        rgba(255, 255, 255, .14);

    color: #ffffff;
}


/* Meta */

.zire-final-cta__meta {
    display: flex;

    flex-wrap: wrap;

    gap:
        10px
        17px;

    margin-top: 20px;
}


.zire-final-cta__meta > span {
    display: flex;

    align-items: center;

    gap: 6px;

    color:
        rgba(255, 255, 255, .68);

    font-size: 12px;
    font-weight: 600;
}


.zire-final-cta__meta i {
    width: 16px;
    height: 16px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        rgba(255, 255, 255, .12);

    color: #ffffff;

    font-style: normal;

    font-size: 10px;
    font-weight: 850;
}


/* Product visual */

.zire-final-cta__visual {
    position: relative;

    min-height: 365px;

    display: flex;

    align-items: center;
    justify-content: center;
}


.zire-final-cta-card {
    position: relative;

    width: min(530px, 100%);

    padding: 21px;

    border:
        1px
        solid
        rgba(255, 255, 255, .22);

    border-radius: 18px;

    background:
        rgba(255, 255, 255, .12);

    box-shadow:
        0
        24px
        58px
        rgba(15, 28, 100, .20);

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}


.zire-final-cta-card__top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;
}


.zire-final-cta-card__top span:first-child {
    display: block;

    margin-bottom: 3px;

    color:
        rgba(255, 255, 255, .62);

    font-size: 12px;

    text-transform: uppercase;

    font-weight: 750;
}


.zire-final-cta-card__top strong {
    color: #ffffff;

    font-size: 12px;
}


.zire-final-cta-card__status {
    padding:
        5px
        8px;

    border-radius: 999px;

    background:
        rgba(132, 255, 208, .13);

    color: #b6f3d8;

    font-size: 11px;
    font-weight: 800;
}


.zire-final-cta-card__score {
    display: flex;

    align-items: baseline;

    gap: 5px;

    margin:
        17px
        0
        8px;
}


.zire-final-cta-card__score strong {
    color: #ffffff;

    font-size: 38px;
    font-weight: 750;

    line-height: 1;
}


.zire-final-cta-card__score span {
    color:
        rgba(255, 255, 255, .53);

    font-size: 13px;
}


/* Chart */

.zire-final-cta-chart {
    position: relative;

    height: 175px;

    overflow: hidden;

    border:
        1px
        solid
        rgba(255, 255, 255, .10);

    border-radius: 11px;

    background:
        rgba(8, 21, 90, .12);
}


.zire-final-cta-chart__grid {
    position: absolute;

    inset: 0;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0,
            transparent 42px,
            rgba(255, 255, 255, .08) 43px,
            transparent 44px
        );
}


.zire-final-cta-chart svg {
    position: relative;

    z-index: 2;

    width: 100%;
    height: 100%;
}


/* Stats */

.zire-final-cta-card__stats {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 8px;

    margin-top: 10px;
}


.zire-final-cta-card__stats div {
    padding:
        9px
        10px;

    border:
        1px
        solid
        rgba(255, 255, 255, .08);

    border-radius: 9px;

    background:
        rgba(255, 255, 255, .06);
}


.zire-final-cta-card__stats span {
    display: block;

    margin-bottom: 3px;

    color:
        rgba(255, 255, 255, .57);

    font-size: 10px;
}


.zire-final-cta-card__stats strong {
    color: #ffffff;

    font-size: 13px;
}


/* Floating cards */

.zire-final-cta-float {
    position: absolute;

    z-index: 4;

    display: flex;

    align-items: center;

    gap: 9px;

    padding:
        10px
        12px;

    border:
        1px
        solid
        rgba(255, 255, 255, .24);

    border-radius: 11px;

    background:
        rgba(255, 255, 255, .94);

    box-shadow:
        0
        15px
        35px
        rgba(19, 31, 102, .18);
}


.zire-final-cta-float--action {
    left: -28px;
    bottom: 38px;
}


.zire-final-cta-float--success {
    right: -18px;
    top: 37px;
}


.zire-final-cta-float__icon,
.zire-final-cta-float__check {
    width: 30px;
    height: 30px;

    flex:
        0
        0
        30px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 8px;

    font-size: 13px;
    font-weight: 850;
}


.zire-final-cta-float__icon {
    background: #eaf0ff;

    color: #315efb;
}


.zire-final-cta-float__check {
    background: #eaf8f2;

    color: #07885f;
}


.zire-final-cta-float small {
    display: block;

    margin-bottom: 2px;

    color: #929aa7;

    font-size: 10px;

    text-transform: uppercase;

    font-weight: 800;
}


.zire-final-cta-float strong {
    display: block;

    color: #1f2733;

    font-size: 12px;
}


/* Tablet */

@media (max-width: 1000px) {

    .zire-final-cta__inner {
        grid-template-columns: 1fr;

        gap: 45px;

        padding:
            56px
            48px;
    }


    .zire-final-cta__content {
        max-width: 730px;
    }


    .zire-final-cta__visual {
        max-width: 650px;

        width: 100%;

        margin:
            0
            auto;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .zire-final-cta {
        padding:
            45px
            18px
            55px;
    }


    .zire-final-cta__inner {
        min-height: auto;

        padding:
            42px
            22px
            38px;

        border-radius: 22px;
    }


    .zire-final-cta__content h2 {
        font-size: 42px;

        letter-spacing: -2px;
    }


    .zire-final-cta__content > p {
        font-size: 15px;
    }


    .zire-final-cta__actions {
        display: grid;

        grid-template-columns: 1fr;
    }


    .zire-final-cta__button {
        width: 100%;
    }


    .zire-final-cta__meta {
        display: grid;

        grid-template-columns: 1fr;
    }


    .zire-final-cta__visual {
        min-height: auto;

        padding:
            25px
            0;
    }


    .zire-final-cta-card__stats {
        grid-template-columns: 1fr;
    }


    .zire-final-cta-float {
        position: relative;

        inset: auto;

        margin-top: 10px;
    }

}

/* Shared homepage primitives */
.zire-section {
    position: relative;
}

.zire-container {
    width: min(var(--zire-content-width), calc(100% - 48px));
    margin-inline: auto;
}

.zire-section-heading {
    margin-bottom: 60px;
}

.zire-eyebrow {
    border-color: rgba(49, 94, 251, .14);
    color: var(--zire-blue);
}

.zire-how,
.zire-features,
.zire-improve,
.zire-platforms-section,
.zire-audience,
.zire-pricing,
.zire-compare,
.zire-faq {
    padding-top: var(--zire-section-space);
    padding-bottom: var(--zire-section-space);
}

.zire-section--white {
    background: var(--zire-bg);
}

.zire-section--soft,
.zire-features,
.zire-audience,
.zire-faq {
    background: linear-gradient(180deg, #f8faff 0%, var(--zire-bg-soft) 100%);
}

/* Give adjacent light sections clearer rhythm without hard borders. */
.zire-how,
.zire-platforms-section,
.zire-compare {
    box-shadow: inset 0 1px 0 rgba(17, 20, 27, .018);
}

.zire-improve {
    isolation: isolate;
}

.zire-improve::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 58px;
    background: linear-gradient(180deg, rgba(16, 20, 29, 0), rgba(16, 20, 29, .04));
    pointer-events: none;
}

/* More consistent display typography across all marketing sections. */
.zire-how__heading h2,
.zire-features__heading h2,
.zire-platforms-section__heading h2,
.zire-audience__heading h2,
.zire-pricing__heading h2,
.zire-compare__heading h2,
.zire-faq__heading h2 {
    color: var(--zire-ink);
    line-height: 1.015;
}

.zire-how__heading p,
.zire-features__heading p,
.zire-platforms-section__heading p,
.zire-audience__heading p,
.zire-pricing__heading p,
.zire-compare__heading p,
.zire-faq__heading p {
    color: var(--zire-text);
}

/* Hero polish */
.zire-home-hero {
    padding-top: 96px;
    padding-bottom: 112px;
	padding-top: 168px;
	padding-bottom: 112px;
}

.zire-home-hero__inner {
    width: min(var(--zire-content-width), calc(100% - 48px));
}

.zire-home-dashboard,
.zire-how__product,
.zire-feature,
.zire-platforms-showcase,
.zire-audience-card,
.zire-price-card,
.zire-compare__panel,
.zire-faq__intro {
    border-color: var(--zire-border);
}

.zire-home-dashboard__stats > div,
.zire-feature-report-ui div,
.zire-how-score-card {
    transition: transform .28s var(--zire-ease-out), box-shadow .28s var(--zire-ease-out), border-color .28s ease;
}

.zire-home-dashboard__stats > div:hover,
.zire-feature-report-ui div:hover,
.zire-how-score-card:hover {
    transform: translateY(-2px);
    border-color: rgba(49, 94, 251, .16);
    box-shadow: 0 10px 26px rgba(28, 42, 75, .06);
}

/* How it works: make the three-stage navigation feel more deliberate. */
.zire-how__steps {
    max-width: 1180px;
    margin-inline: auto;
    margin-bottom: 36px;
}

.zire-how-step {
    min-height: 78px;
}

.zire-how-step.is-active {
    border-color: rgba(49, 94, 251, .18);
    background: linear-gradient(180deg, rgba(49, 94, 251, .055), rgba(49, 94, 251, .025));
}

/* Bento hierarchy: make the two differentiating cards read first. */
.zire-feature--visibility,
.zire-feature--actions {
    box-shadow: 0 24px 64px rgba(28, 42, 75, .085);
}

.zire-feature--visibility::after,
.zire-feature--actions::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
    pointer-events: none;
}

.zire-feature--prompts,
.zire-feature--competitors,
.zire-feature--citations,
.zire-feature--reports {
    box-shadow: 0 14px 40px rgba(28, 42, 75, .045);
}

/* Dark differentiation section */
.zire-improve__heading {
    margin-bottom: 58px;
}

.zire-improve-card {
    transition: transform .32s var(--zire-ease-out), border-color .32s ease, background .32s ease, box-shadow .32s ease;
}

.zire-improve-card:hover {
    transform: translateY(-7px);
}

/* Platform section gets breathing room after the dark band. */
.zire-platforms-section {
    padding-top: 124px;
}

.zire-platform-logo {
    transition: transform .26s var(--zire-ease-out), border-color .26s ease, box-shadow .26s ease;
}

/* Audience: quieter than the feature sections. */
.zire-audience-card {
    box-shadow: 0 12px 34px rgba(28, 42, 75, .04);
}

.zire-audience-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 48px rgba(28, 42, 75, .075);
}

/* Pricing */
.zire-pricing {
    background: linear-gradient(180deg, var(--zire-bg-soft) 0%, #ffffff 92%);
}

.zire-price-card--featured {
    box-shadow: 0 30px 74px rgba(49, 94, 251, .13);
}

.zire-price-card__button,
.zire-home-hero__button,
.zire-compare__link,
.zire-platforms-section__button,
.zire-improve__button,
.zire-final-cta__button {
    will-change: transform;
}

/* Comparison table: separate basic monitoring from Zire's execution layer. */
.zire-compare-table__group {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    padding: 11px 15px;
    border-bottom: 1px solid #e9edf2;
    background: linear-gradient(90deg, rgba(49, 94, 251, .065), rgba(118, 87, 232, .03));
}

.zire-compare-table__group--monitoring {
    background: #fbfcfe;
}

.zire-compare-table__group span {
    color: #344052;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.zire-compare-table__group small {
    color: #8b94a3;
    font-size: 11px;
}

.zire-compare-table__row--highlight {
    background: linear-gradient(90deg, rgba(49, 94, 251, .022), rgba(118, 87, 232, .012));
}

/* FAQ: keep it calmer than the product-heavy sections. */
.zire-faq__items {
    gap: 9px;
}

.zire-faq-item summary {
    transition: color .2s ease, background .2s ease;
}

.zire-faq-item[open] summary {
    color: var(--zire-blue);
    background: rgba(49, 94, 251, .012);
}

/* Final CTA */
.zire-final-cta {
    padding-top: 82px;
    padding-bottom: 84px;
}

.zire-final-cta__inner {
    width: min(var(--zire-content-width), calc(100% - 48px));
}

/* ==========================================================
   MOTION SYSTEM
   JS adds .zire-motion-ready only when animation support loads,
   so content never remains hidden if JavaScript fails.
   ========================================================== */

.zire-motion-ready [data-zire-reveal],
.zire-motion-ready .zire-reveal-card {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
    transition:
        opacity .62s var(--zire-ease-out),
        transform .62s var(--zire-ease-out);
    transition-delay: var(--zire-delay, 0ms);
}

.zire-motion-ready [data-zire-reveal="left"] {
    transform: translate3d(-20px, 0, 0);
}

.zire-motion-ready [data-zire-reveal="right"] {
    transform: translate3d(20px, 0, 0);
}

.zire-motion-ready [data-zire-reveal="scale"] {
    transform: scale(.965);
}

.zire-motion-ready [data-zire-reveal].is-visible,
.zire-motion-ready .zire-reveal-card.is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

/* Small cards pop into place rather than dramatically flying in. */
.zire-motion-ready .zire-home-platform,
.zire-motion-ready .zire-platform-logo {
    transform: translateY(8px) scale(.96);
}

.zire-motion-ready .zire-home-platform.is-visible,
.zire-motion-ready .zire-platform-logo.is-visible {
    transform: translateY(0) scale(1);
}

/* Bars load from zero to their existing target widths. */
.zire-motion-ready .zire-animated-bar {
    transform-origin: left center;
    transform: scaleX(0);
    transition: transform .9s var(--zire-ease-out) var(--zire-bar-delay, 120ms);
    will-change: transform;
}

.zire-motion-ready .zire-animated-bar.is-bar-visible {
    transform: scaleX(1);
}

/* SVG chart paths are prepared in JS with stroke-dash values. */
.zire-motion-ready .zire-chart-line {
    transition: stroke-dashoffset 1.25s var(--zire-ease-out) var(--zire-chart-delay, 120ms);
}

/* Filled chart areas gently fade in behind the drawn line. */
.zire-motion-ready [data-zire-chart] path[fill]:not([fill="none"]) {
    opacity: 0;
    transition: opacity .7s ease .25s;
}

.zire-motion-ready [data-zire-chart].is-chart-visible path[fill]:not([fill="none"]) {
    opacity: 1;
}

@keyframes zireKpiSettle {
    0% { transform: scale(.96); }
    55% { transform: scale(1.025); }
    100% { transform: scale(1); }
}

.zire-motion-ready [data-zire-kpis].is-kpi-visible > div {
    animation: zireKpiSettle .52s var(--zire-ease-out) both;
}

.zire-motion-ready [data-zire-kpis].is-kpi-visible > div:nth-child(2) { animation-delay: 75ms; }
.zire-motion-ready [data-zire-kpis].is-kpi-visible > div:nth-child(3) { animation-delay: 150ms; }

@keyframes zireCtaPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.025); }
}

.zire-motion-ready [data-zire-cta-pulse].is-cta-pulsed {
    animation: zireCtaPulse .52s var(--zire-ease-out) 1;
}

/* A small rise for final CTA floating cards after the main visual lands. */
.zire-motion-ready .zire-final-cta-float {
    transition: transform .5s var(--zire-ease-out), opacity .5s ease;
}

/* Focus states: better conversion/accessibility, consistent brand feel. */
.zire-home-hero__button:focus-visible,
.zire-how-step:focus-visible,
.zire-feature__link:focus-visible,
.zire-improve__button:focus-visible,
.zire-platforms-section__button:focus-visible,
.zire-price-card__button:focus-visible,
.zire-compare__link:focus-visible,
.zire-faq__link:focus-visible,
.zire-final-cta__button:focus-visible,
.zire-faq-item summary:focus-visible {
    outline: 3px solid rgba(49, 94, 251, .24);
    outline-offset: 3px;
}

@media (max-width: 680px) {
    :root {
        --zire-section-space: var(--zire-section-space-mobile);
    }

    .zire-container,
    .zire-home-hero__inner,
    .zire-final-cta__inner {
        width: min(100%, calc(100% - 36px));
    }

    .zire-how,
    .zire-features,
    .zire-improve,
    .zire-platforms-section,
    .zire-audience,
    .zire-pricing,
    .zire-compare,
    .zire-faq {
        padding-top: var(--zire-section-space-mobile);
        padding-bottom: var(--zire-section-space-mobile);
    }

    .zire-section-heading {
        margin-bottom: 42px;
    }

    .zire-platforms-section {
        padding-top: 82px;
    }

    .zire-compare-table__group {
        min-width: 590px;
    }
}



/* ==========================================================
   HOMEPAGE POLISH V2: GAUGE, MULTI-PLATFORM TREND + TYPE TEST
   ========================================================== */

/* Montserrat on major display headings only; product/UI copy stays unchanged. */
.zire-home-hero h1,
.zire-how__heading h2,
.zire-features__heading h2,
.zire-improve__heading h2,
.zire-platforms-section__heading h2,
.zire-audience__heading h2,
.zire-pricing__heading h2,
.zire-compare__heading h2,
.zire-faq__heading h2,
.zire-final-cta__content h2 {
    font-family: "Montserrat", Arial, sans-serif;
	
}

.zire-home-hero h1 {
    letter-spacing: -3.4px;
}

.zire-how__heading h2,
.zire-features__heading h2,
.zire-improve__heading h2,
.zire-platforms-section__heading h2,
.zire-audience__heading h2,
.zire-pricing__heading h2,
.zire-compare__heading h2,
.zire-faq__heading h2,
.zire-final-cta__content h2 {
    letter-spacing: -2.5px;
}

/* How It Works: current-state gauge replaces another rising line chart. */
.zire-how-gauge { overflow:hidden; margin-top:14px; border:1px solid #edf0f4; border-radius:13px; background:linear-gradient(180deg,#fff,#fbfcff); }
.zire-how-gauge__top { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:13px 15px; border-bottom:1px solid #edf0f4; }
.zire-how-gauge__top > div > span { display:block; margin-bottom:2px; color:#9199a7; font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.05em; }
.zire-how-gauge__top > div > strong { display:block; color:#242c38; font-size:13px; font-weight:700; }
.zire-how-gauge__status { padding:5px 8px; border-radius:999px; background:rgba(49,94,251,.075); color:#315efb; font-size:11px; font-weight:750; }
.zire-how-gauge__body { display:grid; grid-template-columns:minmax(230px,.95fr) 1.05fr; align-items:center; gap:14px; padding:15px 18px 17px; }
.zire-how-gauge__dial { position:relative; min-height:155px; display:flex; align-items:center; justify-content:center; }
.zire-how-gauge__dial svg { position:absolute; width:220px; max-width:100%; height:auto; overflow:visible; }
.zire-how-gauge__track, .zire-how-gauge__value { fill:none; stroke-width:15; stroke-linecap:round; }
.zire-how-gauge__track { stroke:#edf0f5; }
.zire-how-gauge__value { stroke:url(#zireGaugeGradient); stroke-dasharray:100; stroke-dashoffset:100; transition:stroke-dashoffset 1.15s var(--zire-ease-out) .12s; filter:drop-shadow(0 5px 7px rgba(49,94,251,.14)); }
.zire-how-gauge__score { position:relative; z-index:2; display:grid; grid-template-columns:auto auto; align-items:baseline; justify-content:center; margin-top:26px; }
.zire-how-gauge__score strong { color:#171d27; font-size:39px; font-weight:760; line-height:1; letter-spacing:-2px; }
.zire-how-gauge__score > span { margin-left:3px; color:#969eab; font-size:12px; font-weight:650; }
.zire-how-gauge__score small { grid-column:span 2; margin-top:6px; color:#858e9d; font-size:11px; font-weight:650; text-align:center; }
.zire-how-gauge__metrics { display:grid; gap:7px; }
.zire-how-gauge__metrics > div { display:grid; grid-template-columns:9px 48px minmax(0,1fr); align-items:center; gap:8px; padding:9px 10px; border:1px solid #edf0f4; border-radius:9px; background:#fafbfc; }
.zire-how-gauge__dot { width:7px; height:7px; border-radius:50%; }
.zire-how-gauge__dot--blue { background:#315efb; }
.zire-how-gauge__dot--purple { background:#7657e8; }
.zire-how-gauge__dot--green { background:#16857e; }
.zire-how-gauge__metrics strong { color:#242c38; font-size:13px; font-weight:750; }
.zire-how-gauge__metrics small { color:#7e8795; font-size:12px; }

/* Features: richer multi-platform trend instead of a duplicate single-line chart. */
.zire-feature-trend { margin-top:7px; padding-bottom:20px; }
.zire-feature-trend__head { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:10px; }
.zire-feature-trend__head > div > span { display:block; margin-bottom:2px; color:#929aa7; font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.05em; }
.zire-feature-trend__head strong { color:#232b37; font-size:13px; }
.zire-feature-trend__period { padding:5px 8px; border:1px solid #e8ecf2; border-radius:999px; background:#fafbfc; color:#7e8795; font-size:11px; font-weight:650; }
.zire-feature-trend__legend { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:10px; }
.zire-feature-trend__legend-item { display:inline-flex; align-items:center; gap:5px; padding:5px 7px; border:1px solid #e7ebf2; border-radius:999px; background:#fff; color:#657081; font-size:11px; font-weight:650; }
.zire-feature-trend__legend-item i { width:6px; height:6px; border-radius:50%; background:#315efb; }
.zire-feature-trend__legend-item--chatgpt i { background:#6847e8; }
.zire-feature-trend__legend-item--gemini i { background:#e1b415; }
.zire-feature-trend__legend-item--perplexity i { background:#16857e; }
.zire-feature-trend__chart { position:relative; height:190px; margin-left:24px; border:1px solid #edf0f4; border-radius:11px; background:#fcfdff; }
.zire-feature-trend__grid { position:absolute; inset:0; border-radius:inherit; background:repeating-linear-gradient(to bottom,transparent 0,transparent 61px,rgba(20,30,50,.065) 62px,transparent 63px); }
.zire-feature-trend__chart svg { position:relative; z-index:2; width:100%; height:100%; }
.zire-feature-trend__axis { position:absolute; z-index:3; top:0; bottom:0; left:-27px; display:flex; flex-direction:column; justify-content:space-between; padding:0 0 2px; color:#9aa2ae; font-size:11px; }
.zire-feature-trend__dates { position:absolute; left:0; right:0; bottom:-19px; display:flex; justify-content:space-between; color:#9aa2ae; font-size:11px; }

@media (max-width:680px) {
    .zire-how-gauge__body { grid-template-columns:1fr; }
    .zire-how-gauge__dial { min-height:165px; }
    .zire-feature-trend__legend { gap:5px; }
    .zire-feature-trend__legend-item { font-size:11px; }
}

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

    .zire-motion-ready [data-zire-reveal],
    .zire-motion-ready .zire-reveal-card,
    .zire-motion-ready .zire-animated-bar,
    .zire-motion-ready .zire-chart-line,
    .zire-motion-ready [data-zire-chart] path,
    .zire-motion-ready [data-zire-kpis] > div,
    .zire-motion-ready [data-zire-cta-pulse] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
        animation: none !important;
        stroke-dasharray: none !important;
        stroke-dashoffset: 0 !important;
    }
}

/* ==========================================================
   PRICING PAGE
   ========================================================== */


/* ==========================================================
   PRICING HERO
   ========================================================== */

.zire-pricing-page {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    overflow: hidden;

    background: #ffffff;
}


.zire-pricing-hero {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        158px
        24px
        78px;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #fbfcff 62%,
            #f6f8ff 100%
        );

    isolation: isolate;
}


.zire-pricing-hero__content {
    position: relative;
    z-index: 2;

    max-width: 900px;

    margin:
        0
        auto;

    text-align: center;
}


.zire-pricing-hero__eyebrow {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    margin-bottom: 25px;

    padding:
        8px
        13px;

    border:
        1px
        solid
        rgba(49, 94, 251, .16);

    border-radius: 999px;

    background:
        rgba(49, 94, 251, .055);

    font-size: 13px;
}


.zire-pricing-hero__eyebrow > span {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--zire-blue);

    box-shadow:
        0
        0
        0
        4px
        rgba(49, 94, 251, .10);
}


.zire-pricing-hero h1 {
    max-width: 850px;

    margin:
        0
        auto
        23px;

    color: #10131a;

    font-size:
        clamp(
            52px,
            5vw,
            76px
        );

    font-weight: 720;

    line-height: .99;

    letter-spacing: -4px;
}


.zire-pricing-hero h1 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #315efb 0%,
            #6e50ec 52%,
            #9648d8 100%
        );

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
}


.zire-pricing-hero__content > p {
    max-width: 720px;

    margin:
        0
        auto
        24px;

    color: #5d6676;

    font-size: 18px;

    line-height: 1.68;
}


.zire-pricing-hero__trial {
    display: inline-flex;

    flex-wrap: wrap;

    align-items: center;
    justify-content: center;

    gap: 7px;

    color: #737c8c;

    font-size: 13px;
}


.zire-pricing-hero__trial strong {
    color: #343b47;

    font-weight: 700;
}


.zire-pricing-hero__trial-check {
    display: inline-grid;

    width: 20px;
    height: 20px;

    place-items: center;

    margin-right: 2px;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 13px;
    font-weight: 800;
}


.zire-pricing-hero__trial i {
    width: 3px;
    height: 3px;

    margin:
        0
        4px;

    border-radius: 50%;

    background: #b8bfca;
}


.zire-pricing-hero__glow {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    z-index: 0;
}


.zire-pricing-hero__glow--one {
    width: 620px;
    height: 620px;

    right: -220px;
    top: -270px;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .15),
            rgba(49, 94, 251, .04) 48%,
            transparent 70%
        );
}


.zire-pricing-hero__glow--two {
	width: 500px;
	height: 500px;
	left: -180px;
	top: -190px;
	bottom: auto;

	background:
		radial-gradient(
			circle,
			rgba(118, 87, 232, .18) 0%,
			rgba(118, 87, 232, .09) 42%,
			transparent 72%
		);
}


/* ==========================================================
   PRICING CARDS
   ========================================================== */

.zire-pricing-plans-section {
    position: relative;

    padding:
        16px
        0
        112px;

    background:
        linear-gradient(
            180deg,
            #f6f8ff 0%,
            #ffffff 42%
        );
}


.zire-pricing-plans {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    align-items: stretch;

    gap: 18px;
}


.zire-pricing-card {
    position: relative;

    display: flex;
    flex-direction: column;

    min-width: 0;

    padding:
        31px
        29px
        30px;

    border:
        1px
        solid
        #e3e7ef;

    border-radius: 20px;

    background:
        rgba(255, 255, 255, .97);

    box-shadow:
        0
        2px
        4px
        rgba(17, 20, 27, .025),
        0
        18px
        48px
        rgba(28, 42, 75, .055);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}


.zire-pricing-card:hover {
    transform: translateY(-3px);

    border-color: #d8deea;

    box-shadow:
        0
        3px
        8px
        rgba(17, 20, 27, .035),
        0
        25px
        60px
        rgba(28, 42, 75, .075);
}


.zire-pricing-card--featured {
    z-index: 2;

    border:
        1px
        solid
        rgba(49, 94, 251, .34);

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #fbfcff 100%
        );

    box-shadow:
        0
        3px
        8px
        rgba(49, 94, 251, .04),
        0
        26px
        68px
        rgba(49, 94, 251, .11);
}


.zire-pricing-card--featured::before {
    content: "";

    position: absolute;

    inset: -1px;

    z-index: -1;

    border-radius: inherit;

    background:
        linear-gradient(
            145deg,
            rgba(49, 94, 251, .28),
            transparent 38%,
            rgba(118, 87, 232, .14)
        );

    opacity: .5;

    pointer-events: none;
}


.zire-pricing-card--managed {
    background:
        linear-gradient(
            180deg,
            #ffffff,
            #fcfbff
        );
}


.zire-pricing-card__popular {
    position: absolute;

    left: 50%;
    top: -14px;

    transform: translateX(-50%);

    padding:
        7px
        13px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #315efb,
            #7657e8
        );

    color: #ffffff;

    box-shadow:
        0
        7px
        20px
        rgba(49, 94, 251, .21);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: .065em;
    text-transform: uppercase;

    white-space: nowrap;
}


.zire-pricing-card__top {
    min-height: 104px;
}


.zire-pricing-card__plan {
    margin-bottom: 10px;

    color: #2b313d;

    font-size: 18px;
    font-weight: 720;

    letter-spacing: -.025em;
}


.zire-pricing-card__plan--featured {
    color: var(--zire-blue);
}


.zire-pricing-card__plan--managed {
    color: #7551d5;
}


.zire-pricing-card__top h2 {
    max-width: 330px;

    margin: 0;

    color: #687181;

    font-size: 13px;
    font-weight: 500;

    line-height: 1.58;

    letter-spacing: 0;
}


.zire-pricing-card__price {
    display: flex;

    align-items: flex-end;

    min-height: 68px;

    margin-top: 13px;

    color: #11151d;
}


.zire-pricing-card__currency {
    align-self: flex-start;

    margin:
        10px
        3px
        0
        0;

    color: #444c5b;

    font-size: 19px;
    font-weight: 650;
}


.zire-pricing-card__price strong {
    font-size: 54px;
    font-weight: 730;

    line-height: 1;

    letter-spacing: -3px;
}


.zire-pricing-card__period {
    margin:
        0
        0
        6px
        8px;

    color: #8a92a0;

    font-size: 12px;
}


.zire-pricing-card__trial {
    margin:
        8px
        0
        20px;

    color: #16845f;

    font-size: 13px;
    font-weight: 700;
}


.zire-pricing-card__trial--featured {
    color: var(--zire-blue);
}


.zire-pricing-card__trial--managed {
    color: #7657e8;
}


.zire-pricing-card__button {
    width: 100%;

    min-height: 48px;

    border-radius: 10px;

    font-size: 13px;
    font-weight: 700;
}


.zire-pricing-card__button--secondary {
    border:
        1px
        solid
        #dce1e9;

    background: #ffffff;

    color: #242a35;
}


.zire-pricing-card__button--secondary:hover {
    border-color: #cbd2dd;

    background: #fafbfc;

    color: #11151d;
}


.zire-pricing-card__button--featured {
    border:
        1px
        solid
        rgba(49, 94, 251, .16);

    background:
        linear-gradient(
            135deg,
            #315efb 0%,
            #6357ed 60%,
            #7657e8 100%
        );

    color: #ffffff;

    box-shadow:
        0
        10px
        25px
        rgba(49, 94, 251, .18);
}


.zire-pricing-card__button--featured:hover {
    background:
        linear-gradient(
            135deg,
            #2853ec,
            #5d4de2 60%,
            #6c4ddd
        );

    color: #ffffff;

    box-shadow:
        0
        13px
        30px
        rgba(49, 94, 251, .24);
}


.zire-pricing-card__button--managed {
    border:
        1px
        solid
        #222630;

    background: #161a22;

    color: #ffffff;

    box-shadow:
        0
        8px
        20px
        rgba(17, 20, 27, .13);
}


.zire-pricing-card__button--managed:hover {
    background: #252a34;

    color: #ffffff;
}


.zire-pricing-card__divider {
    height: 1px;

    margin:
        28px
        0
        25px;

    background: #edf0f4;
}


.zire-pricing-card__included > strong {
    display: block;

    margin-bottom: 18px;

    color: #343b47;

    font-size: 13px;
    font-weight: 750;
}


.zire-pricing-card__included ul {
    display: grid;

    gap: 16px;

    margin: 0;
    padding: 0;

    list-style: none;
}


.zire-pricing-card__included li {
    display: grid;

    grid-template-columns:
        20px
        minmax(0, 1fr);

    gap: 10px;

    align-items: flex-start;
}


.zire-pricing-card__included li > span {
    display: grid;

    width: 19px;
    height: 19px;

    place-items: center;

    margin-top: 1px;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 11px;
    font-weight: 900;
}


.zire-pricing-card--featured
.zire-pricing-card__included
li > span {
    background: #edf2ff;

    color: #315efb;
}


.zire-pricing-card__included li strong {
    display: block;

    color: #343a46;

    font-size: 12px;
    font-weight: 650;

    line-height: 1.4;
}


.zire-pricing-card__included li small {
    display: block;

    margin-top: 2px;

    color: #8a92a0;

    font-size: 12px;

    line-height: 1.45;
}


.zire-pricing-card__highlight-feature {
    margin:
        0
        -8px;

    padding:
        9px
        8px;

    border-radius: 9px;

    background:
        rgba(49, 94, 251, .045);
}


/* ==========================================================
   REASSURANCE
   ========================================================== */

.zire-pricing-reassurance {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap: 0;

    max-width: 990px;

    margin:
        34px
        auto
        0;

    padding:
        21px
        25px;

    border:
        1px
        solid
        #eaedf2;

    border-radius: 14px;

    background:
        rgba(255, 255, 255, .88);

    box-shadow:
        0
        8px
        30px
        rgba(28, 42, 75, .035);
}


.zire-pricing-reassurance > div {
    position: relative;

    display: grid;

    grid-template-columns:
        25px
        minmax(0, 1fr);

    align-items: center;

    padding:
        2px
        24px;
}


.zire-pricing-reassurance > div + div {
    border-left:
        1px
        solid
        #e9ecf1;
}


.zire-pricing-reassurance > div > span {
    grid-row:
        1
        / 3;

    display: grid;

    width: 21px;
    height: 21px;

    place-items: center;

    border-radius: 50%;

    background: #eef3ff;

    color: #315efb;

    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}


.zire-pricing-reassurance strong {
    color: #383f4c;

    font-size: 13px;
    font-weight: 700;
}


.zire-pricing-reassurance small {
    margin-top: 2px;

    color: #8a92a0;

    font-size: 11px;

    line-height: 1.4;
}


/* ==========================================================
   SHARED PRICING SECTION HEADING
   ========================================================== */

.zire-pricing-section-heading {
    max-width: 760px;

    margin-bottom: 48px;
}


.zire-pricing-section-heading .zire-eyebrow {
    margin-bottom: 13px;
}


.zire-pricing-section-heading h2 {
    margin:
        0
        0
        17px;

    color: #11151d;

    font-size:
        clamp(
            38px,
            4vw,
            56px
        );

    font-weight: 710;

    line-height: 1.04;

    letter-spacing: -2.6px;
}


.zire-pricing-section-heading h2 span {
    color: #315efb;
}


.zire-pricing-section-heading > p {
    max-width: 680px;

    margin: 0;

    color: #687181;

    font-size: 16px;

    line-height: 1.68;
}


/* ==========================================================
   COMPARISON
   ========================================================== */

.zire-pricing-comparison-section {
    padding:
        112px
        0;

    background: #f8f9ff;
}


.zire-pricing-comparison {
    overflow: hidden;

    border:
        1px
        solid
        #e3e7ee;

    border-radius: 18px;

    background: #ffffff;

    box-shadow: 0 18px 50px rgba(118, 87, 232, .14);
}


.zire-pricing-comparison__head,
.zire-pricing-comparison__row,
.zire-pricing-comparison__actions {
    display: grid;

    grid-template-columns:
        minmax(290px, 1.8fr)
        repeat(
            3,
            minmax(130px, .75fr)
        );
}


.zire-pricing-comparison__head {
    border-bottom:
        1px
        solid
        #e7eaf0;

    background: #ffffff;
}


.zire-pricing-comparison__head > div {
    min-height: 84px;

    display: flex;

    align-items: center;
    justify-content: center;

    flex-direction: column;

    gap: 4px;

    padding:
        16px
        18px;

    border-left:
        1px
        solid
        #edf0f4;

    color: #737c8b;

    font-size: 13px;
}


.zire-pricing-comparison__head > div:first-child {
    align-items: flex-start;

    border-left: 0;

    color: #2f3641;

    font-size: 13px;
    font-weight: 700;
}


.zire-pricing-comparison__head strong {
    color: #252b35;

    font-size: 13px;
    font-weight: 750;
}


.zire-pricing-comparison__head span {
    color: #8e96a3;

    font-size: 12px;
}


.zire-pricing-comparison .is-pro {
    background:
        rgba(49, 94, 251, .032);
}


.zire-pricing-comparison__head .is-pro strong {
    color: #315efb;
}


.zire-pricing-comparison__group {
    padding:
        13px
        20px;

    border-bottom:
        1px
        solid
        #e8ebf0;

    background: #f7f8fb;

    color: #858d9b;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: .075em;

    text-transform: uppercase;
}


.zire-pricing-comparison__row {
    border-bottom:
        1px
        solid
        #edf0f3;
}


.zire-pricing-comparison__row > div {
    min-height: 63px;

    display: flex;

    align-items: center;
    justify-content: center;

    padding:
        13px
        18px;

    border-left:
        1px
        solid
        #edf0f3;

    color: #555e6c;

    text-align: center;

    font-size: 13px;
    font-weight: 600;
}


.zire-pricing-comparison__row > div:first-child {
    align-items: flex-start;
    justify-content: center;

    flex-direction: column;

    border-left: 0;

    text-align: left;
}


.zire-pricing-comparison__row > div:first-child strong {
    color: #353c48;

    font-size: 13px;
    font-weight: 650;
}


.zire-pricing-comparison__row > div:first-child small {
    margin-top: 2px;

    color: #9199a5;

    font-size: 11px;

    line-height: 1.4;
}


.zire-pricing-check {
    display: grid;

    width: 22px;
    height: 22px;

    place-items: center;

    border-radius: 50%;

    background: #eaf8f2;

    color: #07885f;

    font-size: 12px;
    font-weight: 900;
}


.zire-pricing-comparison .is-pro .zire-pricing-check {
    background: #eaf0ff;

    color: #315efb;
}


.zire-pricing-minus {
    color: #bcc2cb;

    font-weight: 500;
}


.zire-pricing-comparison__actions > div {
    display: flex;

    align-items: center;
    justify-content: center;

    min-height: 86px;

    padding:
        17px;

    border-left:
        1px
        solid
        #edf0f3;
}


.zire-pricing-comparison__actions > div:first-child {
    border-left: 0;
}


.zire-pricing-comparison__actions .zire-button {
    min-width: 128px;

    font-size: 13px;
}


/* ==========================================================
   PLAN CHOOSER
   ========================================================== */

.zire-pricing-chooser-section {
    padding:
        52px
        0;

    background: #ffffff;
}


.zire-pricing-chooser {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap: 16px;
}


.zire-pricing-chooser > article {
    display: grid;

    grid-template-columns:
        48px
        minmax(0, 1fr);

    gap: 17px;

    min-height: 250px;

    padding: 27px;

    border:
        1px
        solid
        #e5e8ee;

    border-radius: 16px;

    background: #ffffff;

    box-shadow:
        0
        9px
        30px
        rgba(28, 42, 75, .035);
}


.zire-pricing-chooser__pro {
    border-color:
        rgba(49, 94, 251, .19) !important;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f9fbff
        ) !important;
}


.zire-pricing-chooser__number {
    display: grid;

    width: 42px;
    height: 42px;

    place-items: center;

    border-radius: 11px;

    background: #f1f4fa;

    color: #7c8594;

    font-size: 12px;
    font-weight: 800;
}


.zire-pricing-chooser__pro
.zire-pricing-chooser__number {
    background: #edf2ff;

    color: #315efb;
}


.zire-pricing-chooser article > div:last-child > span {
    display: block;

    margin-bottom: 8px;

    color: #8b93a0;

    font-size: 11px;
    font-weight: 750;

    letter-spacing: .055em;

    text-transform: uppercase;
}


.zire-pricing-chooser h3 {
    margin:
        0
        0
        11px;

    color: #202630;

    font-size: 18px;
    font-weight: 680;

    line-height: 1.25;

    letter-spacing: -.4px;
}


.zire-pricing-chooser p {
    margin:
        0
        0
        18px;

    color: #717a89;

    font-size: 14px;

    line-height: 1.6;
}


.zire-pricing-chooser a {
    color: #315efb;

    font-size: 13px;
    font-weight: 700;
}


/* ==========================================================
   FAQ
   ========================================================== */

.zire-pricing-faq-section {
    padding:
        112px
        0;

    background: #f8f9ff;
}


.zire-pricing-faq-layout {
    display: grid;

    grid-template-columns:
        minmax(280px, .72fr)
        minmax(0, 1.28fr);

    gap: 90px;

    align-items: start;
}


.zire-pricing-faq-intro {
    position: sticky;

    top: 115px;
}


.zire-pricing-faq-intro .zire-eyebrow {
    margin-bottom: 14px;
}


.zire-pricing-faq-intro h2 {
    max-width: 460px;

    margin:
        0
        0
        17px;

    color: #11151d;

    font-size:
        clamp(
            34px,
            3.5vw,
            48px
        );

    font-weight: 710;

    line-height: 1.06;

    letter-spacing: -2px;
}


.zire-pricing-faq-intro p {
    max-width: 420px;

    margin:
        0
        0
        24px;

    color: #717a89;

    font-size: 15px;

    line-height: 1.65;
}


.zire-pricing-faq {
    overflow: hidden;

    border:
        1px
        solid
        #e4e8ee;

    border-radius: 16px;

    background: #ffffff;

    box-shadow:
        0
        12px
        36px
        rgba(28, 42, 75, .04);
}


.zire-pricing-faq details {
    border-bottom:
        1px
        solid
        #e9ecf1;
}


.zire-pricing-faq details:last-child {
    border-bottom: 0;
}


.zire-pricing-faq summary {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding:
        21px
        23px;

    color: #343b46;

    cursor: pointer;

    list-style: none;

    font-size: 13px;
    font-weight: 650;
}


.zire-pricing-faq summary::-webkit-details-marker {
    display: none;
}


.zire-pricing-faq summary > span {
    display: grid;

    flex:
        0
        0
        25px;

    width: 25px;
    height: 25px;

    place-items: center;

    border-radius: 50%;

    background: #f2f4f8;

    color: #7d8694;

    font-size: 16px;
    font-weight: 500;

    transition:
        transform .18s ease,
        background .18s ease,
        color .18s ease;
}


.zire-pricing-faq details[open]
summary > span {
    transform: rotate(45deg);

    background: #edf2ff;

    color: #315efb;
}


.zire-pricing-faq details > div {
    padding:
        0
        62px
        21px
        23px;
}


.zire-pricing-faq details p {
    max-width: 680px;

    margin: 0;

    color: #747d8b;

    font-size: 14px;

    line-height: 1.7;
}


/* ==========================================================
   PRICING FINAL CTA
   ========================================================== */

.zire-pricing-final {
    position: relative;

    width: 100vw;
    max-width: none;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    padding:
        90px
        24px;

    overflow: hidden;

    background:
        linear-gradient(
            125deg,
            #111622 0%,
            #17213b 42%,
            #20204c 100%
        );

    isolation: isolate;
}


.zire-pricing-final__inner {
    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 70px;
}


.zire-pricing-final__inner > div:first-child {
    max-width: 720px;
}


.zire-pricing-final__eyebrow {
    display: inline-flex;

    margin-bottom: 18px;

    padding:
        7px
        11px;

    border:
        1px
        solid
        rgba(255, 255, 255, .14);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .07);

    color: #cfd8ff;

    font-size: 12px;
    font-weight: 750;

    letter-spacing: .06em;

    text-transform: uppercase;
}


.zire-pricing-final h2 {
    margin:
        0
        0
        18px;

    color: #ffffff;

    font-size:
        clamp(
            39px,
            4vw,
            59px
        );

    font-weight: 720;

    line-height: 1.02;

    letter-spacing: -2.8px;
}


.zire-pricing-final h2 span {
    display: block;

    color: #aebcff;
}


.zire-pricing-final p {
    max-width: 610px;

    margin: 0;

    color:
        rgba(255, 255, 255, .69);

    font-size: 14px;

    line-height: 1.68;
}


.zire-pricing-final__actions {
    flex:
        0
        0
        280px;

    display: flex;

    align-items: center;

    flex-direction: column;

    gap: 12px;
}


.zire-pricing-final__button {
    display: inline-flex;

    width: 100%;
    min-height: 54px;

    align-items: center;
    justify-content: center;

    gap: 12px;

    padding:
        0
        22px;

    border-radius: 11px;

    background: #ffffff;

    color: #111622;

    box-shadow:
        0
        14px
        35px
        rgba(0, 0, 0, .18);

    font-size: 14px;
    font-weight: 750;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}


.zire-pricing-final__button:hover {
    transform: translateY(-2px);

    background: #f4f6fb;

    color: #111622;

    box-shadow:
        0
        17px
        42px
        rgba(0, 0, 0, .23);
}


.zire-pricing-final__actions > span {
    color:
        rgba(255, 255, 255, .55);

    text-align: center;

    font-size: 11px;
}


.zire-pricing-final__glow {
    position: absolute;

    z-index: 0;

    border-radius: 50%;

    pointer-events: none;
}


.zire-pricing-final__glow--one {
    width: 620px;
    height: 620px;

    right: -250px;
    top: -310px;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .40),
            transparent 66%
        );
}


.zire-pricing-final__glow--two {
    width: 520px;
    height: 520px;

    left: -270px;
    bottom: -330px;

    background:
        radial-gradient(
            circle,
            rgba(118, 87, 232, .35),
            transparent 67%
        );
}


/* ==========================================================
   PRICING RESPONSIVE
   ========================================================== */

@media (max-width: 1050px) {

    .zire-pricing-plans {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }


    .zire-pricing-card--managed {
        grid-column:
            1
            / -1;

        width: min(
            100%,
            640px
        );

        justify-self: center;
    }


    .zire-pricing-comparison {
        overflow-x: auto;
    }


    .zire-pricing-comparison__head,
    .zire-pricing-comparison__row,
    .zire-pricing-comparison__actions {
        min-width: 850px;
    }


    .zire-pricing-faq-layout {
        gap: 55px;
    }

}


@media (max-width: 850px) {

    .zire-pricing-hero {
        padding-top: 135px;
    }


    .zire-pricing-hero h1 {
        font-size:
            clamp(
                45px,
                9vw,
                64px
            );

        letter-spacing: -3px;
    }


    .zire-pricing-plans {
        grid-template-columns: 1fr;

        gap: 22px;
    }


    .zire-pricing-card--managed {
        grid-column: auto;

        width: 100%;
    }


    .zire-pricing-reassurance {
        grid-template-columns: 1fr;

        gap: 0;
    }


    .zire-pricing-reassurance > div {
        padding:
            13px
            4px;
    }


    .zire-pricing-reassurance > div + div {
        border-top:
            1px
            solid
            #e9ecf1;

        border-left: 0;
    }


    .zire-pricing-chooser {
        grid-template-columns: 1fr;
    }


    .zire-pricing-faq-layout {
        grid-template-columns: 1fr;

        gap: 42px;
    }


    .zire-pricing-faq-intro {
        position: static;
    }


    .zire-pricing-final__inner {
        align-items: flex-start;

        flex-direction: column;

        gap: 34px;
    }


    .zire-pricing-final__actions {
        flex-basis: auto;

        width: min(
            100%,
            320px
        );

        align-items: flex-start;
    }

}


@media (max-width: 600px) {

    .zire-pricing-hero {
        padding:
            118px
            20px
            61px;
    }


    .zire-pricing-hero h1 {
        font-size: 43px;

        letter-spacing: -2.4px;
    }


    .zire-pricing-hero__content > p {
        font-size: 16px;
    }


    .zire-pricing-hero__trial {
        gap: 6px;

        font-size: 13px;
    }


    .zire-pricing-hero__trial i {
        display: none;
    }


    .zire-pricing-plans-section,
    .zire-pricing-comparison-section,
    .zire-pricing-chooser-section,
    .zire-pricing-faq-section {
        padding:
            76px
            0;
    }


    .zire-pricing-plans-section {
        padding-top: 10px;
    }


    .zire-pricing-card {
        padding:
            28px
            23px;
    }


    .zire-pricing-card__top {
        min-height: 0;

        margin-bottom: 12px;
    }


    .zire-pricing-section-heading {
        margin-bottom: 34px;
    }


    .zire-pricing-section-heading h2 {
        font-size: 38px;

        letter-spacing: -2px;
    }


    .zire-pricing-chooser > article {
        grid-template-columns: 1fr;

        min-height: 0;
    }


    .zire-pricing-faq-intro h2 {
        font-size: 36px;

        letter-spacing: -1.7px;
    }


    .zire-pricing-faq summary {
        padding:
            19px
            18px;
    }


    .zire-pricing-faq details > div {
        padding:
            0
            49px
            19px
            18px;
    }


    .zire-pricing-final {
        padding:
            72px
            20px;
    }


    .zire-pricing-final h2 {
        font-size: 39px;

        letter-spacing: -2px;
    }

}

/* ==========================================================
   PRICING PAGE - POLISH
   ========================================================== */


/* Pricing hero sits naturally below fixed navigation */

.zire-pricing-hero {
    padding-top: 118px;
    padding-bottom: 62px;
}


/* Reused homepage pricing cards */

.zire-pricing-page-plans {
    position: relative;

    padding:
        25px
        0
        104px;

    background:
        linear-gradient(
            180deg,
            #f6f8ff 0%,
            #ffffff 34%
        );
}


/* Slightly improve readability on pricing page */

.zire-pricing-page .zire-price-card__features small,
.zire-pricing-page .zire-price-platform small,
.zire-pricing-page .zire-price-feature-line,
.zire-pricing-page .zire-price-card__pro-note span,
.zire-pricing-page .zire-price-managed-box p {
    font-size: 13px;
}


.zire-pricing-page .zire-price-card__features strong,
.zire-pricing-page .zire-price-platform strong,
.zire-pricing-page
.zire-pricing-comparison__row
> div:first-child
small,
.zire-pricing-page
.zire-pricing-reassurance
small {
    font-size: 13px;
}


/* Trial + payment reassurance */

.zire-pricing-page-trust {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 35px;

    max-width: 1050px;

    margin:
        36px
        auto
        0;

    padding:
        18px
        22px;

    border:
        1px
        solid
        #e5e9f0;

    border-radius: 14px;

    background: #ffffff;

    box-shadow:
        0
        10px
        30px
        rgba(28, 42, 75, .045);
}


.zire-pricing-page-trust__copy {
    display: flex;

    align-items: center;

    gap: 13px;
}


.zire-pricing-page-trust__copy strong {
    display: block;

    margin-bottom: 2px;

    color: #28303b;

    font-size: 12px;
    font-weight: 700;
}


.zire-pricing-page-trust__copy span {
    display: block;

    color: #778190;

    font-size: 13px;

    line-height: 1.5;
}


.zire-pricing-page-trust__payment {
    display: flex;

    flex:
        0
        0
        auto;

    align-items: center;

    gap: 15px;

    padding-left: 25px;

    border-left:
        1px
        solid
        #e8ebf0;
}


.zire-pricing-page-trust__payment > span {
    max-width: 115px;

    color: #8a929f;

    text-align: right;

    font-size: 11px;

    line-height: 1.35;
}


.zire-pricing-page-trust__payment img {
    width: auto;
    height: 29px;

    max-width: 230px;

    object-fit: contain;
}


/* Do not leave a gap before the footer */

.zire-pricing-page {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}


.zire-pricing-final {
    margin-bottom: 0 !important;
}


@media (max-width: 850px) {

    .zire-pricing-page-trust {
        align-items: flex-start;
        flex-direction: column;

        gap: 18px;
    }


    .zire-pricing-page-trust__payment {
        width: 100%;

        justify-content: flex-start;

        padding:
            17px
            0
            0;

        border-top:
            1px
            solid
            #e8ebf0;

        border-left: 0;
    }


    .zire-pricing-page-trust__payment > span {
        text-align: left;
    }

}


@media (max-width: 600px) {

    .zire-pricing-hero {
        padding-top: 103px;
        padding-bottom: 52px;
    }


    .zire-pricing-page-plans {
        padding-top: 18px;
        padding-bottom: 76px;
    }


    .zire-pricing-page-trust__payment {
        align-items: flex-start;
        flex-direction: column;
    }


    .zire-pricing-page-trust__payment img {
        max-width: 100%;
    }

}

/* ==========================================================
   PRICING - EXPLORE PLATFORM
   ========================================================== */

.zire-pricing-platform-section {
    padding:
        112px
        0;

    background: #ffffff;
}


.zire-pricing-platform {
    position: relative;

    display: grid;

    grid-template-columns:
        minmax(0, .82fr)
        minmax(520px, 1.18fr);

    align-items: center;

    gap: 80px;

    padding:
        58px
        60px;

    overflow: hidden;

    border:
        1px
        solid
        #e5e9f1;

    border-radius: 22px;

    background:
        linear-gradient(
            135deg,
            #f9fbff 0%,
            #ffffff 55%,
            #f7f5ff 100%
        );

    box-shadow:
        0
        22px
        65px
        rgba(28, 42, 75, .06);
}


.zire-pricing-platform::before {
    content: "";

    position: absolute;

    right: -230px;
    top: -250px;

    width: 580px;
    height: 580px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(49, 94, 251, .10),
            transparent 67%
        );

    pointer-events: none;
}


.zire-pricing-platform__copy {
    position: relative;

    z-index: 2;
}


.zire-pricing-platform__copy .zire-eyebrow {
    margin-bottom: 14px;
}


.zire-pricing-platform__copy h2 {
    margin:
        0
        0
        17px;

    color: #11151d;

    font-size:
        clamp(
            37px,
            3.5vw,
            51px
        );

    font-weight: 710;

    line-height: 1.04;

    letter-spacing: -2.4px;
}


.zire-pricing-platform__copy h2 span {
    display: block;

    color: #315efb;
}


.zire-pricing-platform__copy > p {
    max-width: 520px;

    margin:
        0
        0
        28px;

    color: #697383;

    font-size: 14px;

    line-height: 1.7;
}


.zire-pricing-platform__features {
    display: grid;

    gap: 17px;

    margin-bottom: 30px;
}


.zire-pricing-platform__features > div {
    display: grid;

    grid-template-columns:
        34px
        minmax(0, 1fr);

    gap: 12px;
}


.zire-pricing-platform__features > div > span {
    display: grid;

    width: 31px;
    height: 31px;

    place-items: center;

    border-radius: 9px;

    background: #edf2ff;

    color: #315efb;

    font-size: 11px;
    font-weight: 800;
}


.zire-pricing-platform__features strong {
    display: block;

    margin-bottom: 2px;

    color: #343b47;

    font-size: 12px;
}


.zire-pricing-platform__features small {
    display: block;

    color: #818a98;

    font-size: 13px;

    line-height: 1.5;
}


/* Product preview */

.zire-pricing-platform__visual {
    position: relative;

    z-index: 2;

    display: block;

    color: inherit;
}


.zire-pricing-platform-screen {
    overflow: hidden;

    border:
        1px
        solid
        rgba(26, 36, 56, .11);

    border-radius: 17px;

    background: #ffffff;

    box-shadow:
        0
        30px
        75px
        rgba(25, 40, 75, .14);
}


.zire-pricing-platform-screen__bar {
    display: flex;

    align-items: center;

    justify-content: space-between;

    min-height: 46px;

    padding:
        0
        18px;

    border-bottom:
        1px
        solid
        #edf0f4;

    background: #fafbfc;

    color: #7b8493;

    font-size: 12px;
    font-weight: 650;
}


.zire-pricing-platform-screen__bar > div {
    display: flex;

    gap: 5px;
}


.zire-pricing-platform-screen__bar i {
    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #d7dce4;
}


.zire-pricing-platform-screen__body {
    padding: 25px;
}


.zire-pricing-platform-screen__score {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;
}


.zire-pricing-platform-screen__score span {
    display: block;

    margin-bottom: 5px;

    color: #76808e;

    font-size: 12px;
}


.zire-pricing-platform-screen__score strong {
    color: #121722;

    font-size: 35px;

    letter-spacing: -2px;
}


.zire-pricing-platform-screen__score strong small {
    color: #a0a7b2;

    font-size: 12px;
    font-weight: 500;
}


.zire-pricing-platform-screen__score em {
    padding:
        5px
        7px;

    border-radius: 6px;

    background: #eaf8f2;

    color: #07885f;

    font-size: 11px;
    font-style: normal;
    font-weight: 700;
}


.zire-pricing-platform-screen__chart {
    height: 160px;

    margin:
        18px
        0;

    overflow: hidden;

    border-radius: 10px;

    background:
        linear-gradient(
            to bottom,
            transparent 32%,
            #edf0f5 33%,
            transparent 34%,
            transparent 65%,
            #edf0f5 66%,
            transparent 67%
        );
}


.zire-pricing-platform-screen__chart svg {
    width: 100%;
    height: 100%;
}


.zire-pricing-platform-screen__stats {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 8px;
}


.zire-pricing-platform-screen__stats > div {
    padding: 12px;

    border:
        1px
        solid
        #edf0f4;

    border-radius: 9px;

    background: #fafbfc;
}


.zire-pricing-platform-screen__stats strong {
    display: block;

    color: #242b36;

    font-size: 15px;
}


.zire-pricing-platform-screen__stats span {
    display: block;

    margin-top: 2px;

    color: #8b93a0;

    font-size: 11px;
}


.zire-pricing-platform-screen__action {
    display: grid;

    grid-template-columns:
        34px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 10px;

    margin-top: 13px;

    padding: 13px;

    border:
        1px
        solid
        #e4e9ff;

    border-radius: 10px;

    background: #f6f8ff;
}


.zire-pricing-platform-screen__action > span {
    display: grid;

    width: 31px;
    height: 31px;

    place-items: center;

    border-radius: 8px;

    background: #e8edff;

    color: #315efb;
}


.zire-pricing-platform-screen__action small {
    display: block;

    margin-bottom: 2px;

    color: #80899a;

    font-size: 10px;

    text-transform: uppercase;

    letter-spacing: .05em;
}


.zire-pricing-platform-screen__action strong {
    display: block;

    color: #343b48;

    font-size: 12px;
}


.zire-pricing-platform-screen__action b {
    color: #315efb;

    font-size: 14px;
}


@media (max-width: 1000px) {

    .zire-pricing-platform {
        grid-template-columns: 1fr;

        gap: 48px;

        padding:
            48px;
    }

}


@media (max-width: 600px) {

    .zire-pricing-platform-section {
        padding:
            76px
            0;
    }


    .zire-pricing-platform {
        padding:
            31px
            23px;

        border-radius: 17px;
    }


    .zire-pricing-platform__copy h2 {
        font-size: 37px;

        letter-spacing: -1.8px;
    }


    .zire-pricing-platform-screen__body {
        padding: 18px;
    }

}

/* Pricing readability polish */

.zire-pricing-page .zire-price-card__features small,
.zire-pricing-page .zire-price-platform small,
.zire-pricing-page .zire-price-feature-line,
.zire-pricing-page .zire-price-card__pro-note span,
.zire-pricing-page .zire-price-managed-box p {
    font-size: 13px;
}


.zire-pricing-page .zire-price-card__features strong,
.zire-pricing-page .zire-price-platform strong {
    font-size: 12px;
}


.zire-pricing-page .zire-pricing-comparison__row > div {
    font-size: 11.5px;
}

/* ==========================================================
   ZIRE AUTH / LOGIN
   ========================================================== */

body.zire-auth-page {
    margin: 0;

    min-height: 100vh;

    background: #ffffff;
}


body.zire-auth-page .wp-site-blocks {
    min-height: 100vh;
}


.zire-auth-main {
    width: 100%;

    min-height: 100vh;

    margin: 0 !important;
    padding: 0 !important;
}


.zire-auth-main > .wp-block-post-content {
    width: 100%;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}


.zire-auth-shell {
    display: grid;

    grid-template-columns:
        minmax(480px, .94fr)
        minmax(500px, 1.06fr);

    width: 100%;

    min-height: 100vh;

    background: #ffffff;
}


/* ==========================================================
   LEFT BRAND PANEL
   ========================================================== */

.zire-auth-brand {
    position: relative;

    display: flex;
    flex-direction: column;

    min-height: 100vh;

    padding:
        38px
        clamp(42px, 5vw, 78px)
        34px;

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            #101625 0%,
            #17213d 50%,
            #25235c 100%
        );

    color: #ffffff;

    isolation: isolate;
}


.zire-auth-brand::after {
    content: "";

    position: absolute;

    inset: 0;

    z-index: -1;

    background:
        linear-gradient(
            120deg,
            rgba(255, 255, 255, .025),
            transparent 42%
        );

    pointer-events: none;
}


.zire-auth-brand__glow {
    position: absolute;

    z-index: -1;

    border-radius: 50%;

    pointer-events: none;
}


.zire-auth-brand__glow--one {
    width: 650px;
    height: 650px;

    right: -350px;
    top: -300px;

    background:
        radial-gradient(
            circle,
            rgba(76, 106, 255, .42),
            transparent 68%
        );
}


.zire-auth-brand__glow--two {
    width: 540px;
    height: 540px;

    left: -310px;
    bottom: -330px;

    background:
        radial-gradient(
            circle,
            rgba(126, 84, 232, .36),
            transparent 67%
        );
}


/* Logo */

.zire-auth-logo {
    position: relative;

    z-index: 2;

    display: inline-flex;

    align-items: center;

    gap: 9px;

    width: fit-content;

    color: #ffffff;
}


.zire-auth-logo:hover {
    color: #ffffff;
}


.zire-auth-logo__mark {
    display: grid;

    width: 31px;
    height: 31px;

    place-items: center;

    border-radius: 8px;

    background: #ffffff;

    color: #111622;

    font-size: 14px;
    font-weight: 800;
}


.zire-auth-logo__name {
    font-size: 20px;
    font-weight: 700;

    letter-spacing: -.045em;
}


/* Main content */

.zire-auth-brand__content {
    position: relative;

    z-index: 2;

    width: 100%;

    max-width: 620px;

    margin:
        auto
        0;

    padding:
        45px
        0;
}


.zire-auth-brand__eyebrow {
    display: inline-flex;

    margin-bottom: 19px;

    padding:
        7px
        10px;

    border:
        1px
        solid
        rgba(255, 255, 255, .13);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .07);

    color: #cbd5ff;

    font-size: 12px;
    font-weight: 750;

    letter-spacing: .06em;

    text-transform: uppercase;
}


.zire-auth-brand h1 {
    max-width: 570px;

    margin:
        0
        0
        19px;

    color: #ffffff;

    font-size:
        clamp(
            44px,
            4vw,
            61px
        );

    font-weight: 720;

    line-height: .99;

    letter-spacing: -3px;
}


.zire-auth-brand h1 span {
    display: block;

    color: #aebcff;
}


.zire-auth-brand__content > p {
    max-width: 540px;

    margin:
        0
        0
        30px;

    color:
        rgba(255, 255, 255, .69);

    font-size: 14px;

    line-height: 1.7;
}


/* Product visual */

.zire-auth-product-card {
    max-width: 560px;

    padding: 22px;

    border:
        1px
        solid
        rgba(255, 255, 255, .13);

    border-radius: 16px;

    background:
        rgba(255, 255, 255, .095);

    box-shadow:
        0
        30px
        70px
        rgba(0, 0, 0, .15);

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}


.zire-auth-product-card__header {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 20px;
}


.zire-auth-product-card__header span {
    display: block;

    margin-bottom: 3px;

    color:
        rgba(255, 255, 255, .55);

    font-size: 11px;

    text-transform: uppercase;

    letter-spacing: .06em;
}


.zire-auth-product-card__header strong {
    display: block;

    color: #ffffff;

    font-size: 12px;
}


.zire-auth-product-card__status {
    padding:
        5px
        8px;

    border-radius: 999px;

    background:
        rgba(79, 211, 155, .13);

    color: #8fe0bd !important;

    font-size: 10px !important;
    font-weight: 750;
}


.zire-auth-product-card__score {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;
}


.zire-auth-product-card__score strong {
    display: block;

    color: #ffffff;

    font-size: 34px;

    line-height: 1;

    letter-spacing: -2px;
}


.zire-auth-product-card__score strong small {
    color:
        rgba(255, 255, 255, .43);

    font-size: 13px;
    font-weight: 500;
}


.zire-auth-product-card__score > div > span {
    display: block;

    margin-top: 5px;

    color:
        rgba(255, 255, 255, .48);

    font-size: 11px;
}


.zire-auth-product-card__change {
    padding:
        5px
        7px;

    border-radius: 6px;

    background:
        rgba(76, 211, 156, .12);

    color: #86ddb8;

    font-size: 11px;
    font-weight: 750;
}


.zire-auth-product-card__chart {
    height: 145px;

    margin:
        15px
        0;

    overflow: hidden;

    border-radius: 8px;

    background:
        linear-gradient(
            to bottom,
            transparent 32%,
            rgba(255, 255, 255, .07) 33%,
            transparent 34%,
            transparent 65%,
            rgba(255, 255, 255, .07) 66%,
            transparent 67%
        );
}


.zire-auth-product-card__chart svg {
    width: 100%;
    height: 100%;
}


.zire-auth-product-card__stats {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 8px;
}


.zire-auth-product-card__stats > div {
    padding:
        10px
        11px;

    border:
        1px
        solid
        rgba(255, 255, 255, .08);

    border-radius: 8px;

    background:
        rgba(255, 255, 255, .045);
}


.zire-auth-product-card__stats strong {
    display: block;

    color: #ffffff;

    font-size: 13px;
}


.zire-auth-product-card__stats span {
    display: block;

    margin-top: 1px;

    color:
        rgba(255, 255, 255, .45);

    font-size: 10px;
}


/* Left feature reassurance */

.zire-auth-brand__features {
    display: grid;

    gap: 8px;

    margin-top: 23px;

    color:
        rgba(255, 255, 255, .64);

    font-size: 12px;
}


.zire-auth-brand__features span::first-letter {
    color: #8ddfbb;
}


.zire-auth-brand__footer {
    position: relative;

    z-index: 2;

    color:
        rgba(255, 255, 255, .35);

    font-size: 11px;
}


/* ==========================================================
   RIGHT FORM PANEL
   ========================================================== */

.zire-auth-form-panel {
    display: flex;

    align-items: center;
    justify-content: center;

    min-height: 100vh;

    padding:
        52px
        clamp(40px, 6vw, 100px);

    background: #ffffff;
}


.zire-auth-form-wrap {
    width: 100%;
    max-width: 440px;
}


.zire-auth-back {
    display: inline-flex;

    margin-bottom: 55px;

    color: #8a929f;

    font-size: 13px;
    font-weight: 600;

    transition:
        color .18s ease,
        transform .18s ease;
}


.zire-auth-back:hover {
    transform: translateX(-2px);

    color: #303743;
}


.zire-auth-form-heading {
    margin-bottom: 33px;
}


.zire-auth-form-heading__eyebrow {
    display: block;

    margin-bottom: 8px;

    color: #315efb;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: .07em;

    text-transform: uppercase;
}


.zire-auth-form-heading h2 {
    margin:
        0
        0
        9px;

    color: #11151d;

    font-size: 34px;
    font-weight: 710;

    line-height: 1.08;

    letter-spacing: -1.5px;
}


.zire-auth-form-heading p {
    max-width: 390px;

    margin: 0;

    color: #77808e;

    font-size: 13px;

    line-height: 1.6;
}


/* Form */

.zire-auth-form {
    display: grid;

    gap: 20px;
}


.zire-auth-field {
    display: grid;

    gap: 8px;
}


.zire-auth-field label {
    color: #3a414c;

    font-size: 13px;
    font-weight: 700;
}


.zire-auth-field__label-row {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;
}


.zire-auth-field__label-row a {
    color: #315efb;

    font-size: 12px;
    font-weight: 650;
}


.zire-auth-field input {
    width: 100%;
    height: 50px;

    padding:
        0
        14px;

    outline: none;

    border:
        1px
        solid
        #dfe3ea;

    border-radius: 10px;

    background: #ffffff;

    color: #151a22;

    box-shadow:
        0
        1px
        2px
        rgba(17, 20, 27, .02);

    font-size: 13px;

    transition:
        border-color .18s ease,
        box-shadow .18s ease;
}


.zire-auth-field input::placeholder {
    color: #a6adb8;
}


.zire-auth-field input:focus {
    border-color:
        rgba(49, 94, 251, .65);

    box-shadow:
        0
        0
        0
        3px
        rgba(49, 94, 251, .09);
}


/* Remember */

.zire-auth-remember {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    width: fit-content;

    color: #727b89;

    cursor: pointer;

    font-size: 12px;
}


.zire-auth-remember input {
    width: 15px;
    height: 15px;

    margin: 0;

    accent-color: #315efb;
}


/* Submit */

.zire-auth-submit {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    width: 100%;
    height: 51px;

    margin-top: 2px;

    border:
        1px
        solid
        #315efb;

    border-radius: 10px;

    background:
        linear-gradient(
            135deg,
            #315efb 0%,
            #6157ec 58%,
            #7657e8 100%
        );

    color: #ffffff;

    box-shadow:
        0
        10px
        25px
        rgba(49, 94, 251, .18);

    cursor: pointer;

    font-size: 13px;
    font-weight: 700;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}


.zire-auth-submit:hover {
    transform: translateY(-1px);

    box-shadow:
        0
        14px
        31px
        rgba(49, 94, 251, .24);
}


/* Register CTA */

.zire-auth-register {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 5px;

    margin-top: 27px;

    color: #858d9a;

    font-size: 13px;
}


.zire-auth-register a {
    color: #315efb;

    font-weight: 700;
}


.zire-auth-security {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    margin-top: 35px;

    padding-top: 22px;

    border-top:
        1px
        solid
        #eceff3;

    color: #959ca7;
}


.zire-auth-security > span {
    color: #07885f;

    font-size: 12px;
    font-weight: 800;
}


.zire-auth-security p {
    margin: 0;

    font-size: 11px;

    line-height: 1.45;
}


/* ==========================================================
   AUTH RESPONSIVE
   ========================================================== */

@media (max-width: 1000px) {

    .zire-auth-shell {
        grid-template-columns:
            minmax(390px, .9fr)
            minmax(450px, 1.1fr);
    }


    .zire-auth-brand {
        padding:
            34px
            42px;
    }


    .zire-auth-brand h1 {
        font-size: 45px;

        letter-spacing: -2.4px;
    }

}


@media (max-width: 820px) {

    .zire-auth-shell {
        grid-template-columns: 1fr;
    }


    .zire-auth-brand {
        min-height: auto;

        padding:
            27px
            28px
            34px;
    }


    .zire-auth-brand__content {
        padding:
            42px
            0
            20px;
    }


    .zire-auth-brand h1 {
        max-width: 520px;
    }


    .zire-auth-product-card,
    .zire-auth-brand__features,
    .zire-auth-brand__footer {
        display: none;
    }


    .zire-auth-form-panel {
        min-height: auto;

        padding:
            52px
            28px
            70px;
    }


    .zire-auth-form-wrap {
        max-width: 520px;
    }


    .zire-auth-back {
        margin-bottom: 38px;
    }

}


@media (max-width: 520px) {

    .zire-auth-brand {
        padding:
            23px
            21px
            31px;
    }


    .zire-auth-brand__content {
        padding:
            33px
            0
            5px;
    }


    .zire-auth-brand__eyebrow {
        font-size: 11px;
    }


    .zire-auth-brand h1 {
        margin-bottom: 13px;

        font-size: 37px;

        letter-spacing: -2px;
    }


    .zire-auth-brand__content > p {
        margin-bottom: 0;

        font-size: 12px;
    }


    .zire-auth-form-panel {
        padding:
            42px
            21px
            60px;
    }


    .zire-auth-back {
        margin-bottom: 32px;
    }


    .zire-auth-form-heading h2 {
        font-size: 31px;
    }
}

.zire-auth-error {
	margin-bottom: 20px;

	padding:
		12px
		14px;

	border:
		1px
		solid
		rgba(209, 67, 67, .18);

	border-radius: 9px;

	background:
		rgba(209, 67, 67, .055);

	color: #b83e3e;

	font-size: 13px;
	font-weight: 600;

	line-height: 1.5;
}

.zire-auth-success {
	margin-bottom: 20px;

	padding:
		12px
		14px;

	border:
		1px
		solid
		rgba(7, 136, 95, .18);

	border-radius: 9px;

	background:
		rgba(7, 136, 95, .055);

	color: #087457;

	font-size: 13px;
	font-weight: 600;

	line-height: 1.5;
}

/* =========================================================
   GOOGLE SIGN IN
   ========================================================= */

.zire-google-signin {
	margin-bottom: 21px;
}


.zire-google-signin__button {
	width: 100%;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
}


.zire-google-signin__error {
	display: none;

	margin-top: 10px;

	padding:
		10px
		12px;

	border:
		1px solid rgba(209, 67, 67, .18);

	border-radius: 9px;

	background:
		rgba(209, 67, 67, .055);

	color: #b83e3e;

	font-size: 13px;
	font-weight: 600;

	line-height: 1.5;
}


.zire-google-signin__error:not(:empty) {
	display: block;
}


.zire-auth-divider {
	display: flex;

	align-items: center;

	gap: 12px;

	margin:
		21px
		0;
}


.zire-auth-divider::before,
.zire-auth-divider::after {
	content: '';

	flex: 1;

	height: 1px;

	background: rgba(21, 34, 57, .10);
}


.zire-auth-divider span {
	color: #9aa3b2;

	font-size: 11px;
	font-weight: 700;

	letter-spacing: .08em;
}

/* =========================================================
   REGISTER PLAN
   ========================================================= */

.zire-register-plan {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;

	margin-bottom: 22px;
	padding: 15px 16px;

	border: 1px solid rgba(54, 89, 255, .14);
	border-radius: 10px;

	background: rgba(54, 89, 255, .035);
}


.zire-register-plan > div:first-child {
	display: flex;
	flex-direction: column;
	gap: 3px;
}


.zire-register-plan span {
	color: #7c8799;

	font-size: 12px;
	font-weight: 600;
}


.zire-register-plan strong {
	color: #17223a;

	font-size: 14px;
	font-weight: 700;
}


.zire-register-plan__price {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 3px;
}


.zire-register-plan__price-main {
	display: flex;
	align-items: baseline;
	gap: 3px;
}


.zire-register-plan__price small {
	color: #5368d9;

	font-size: 11px;
	font-weight: 700;

	white-space: nowrap;
}


.zire-register-plan__price strong {
	font-size: 18px;
}

.zire-auth-link-button {
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	font: inherit;
	color: inherit;
	cursor: pointer;
	text-decoration: none;
}

.zire-auth-link-button:hover {
	text-decoration: underline;
}

/* =========================================================
   PLATFORM HUB
   ========================================================= */


/* =========================================================
   HERO
   ========================================================= */

.zire-platform-hero {
	position: relative;
	overflow: hidden;

	width: 100vw;
	max-width: none;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		150px
		24px
		105px;

	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#fbfcff 68%,
			#f6f8ff 100%
		);

	isolation: isolate;
}


.zire-platform-hero__glow {
	position: absolute;

	border-radius: 999px;

	pointer-events: none;
}


.zire-platform-hero__glow--one {
	width: 650px;
	height: 650px;

	right: -190px;
	top: -250px;

	background:
		radial-gradient(
			circle,
			rgba(49, 94, 251, .15),
			rgba(49, 94, 251, .045) 48%,
			transparent 70%
		);
}


.zire-platform-hero__glow--two {
	width: 470px;
	height: 470px;

	left: -230px;
	bottom: -250px;

	background:
		radial-gradient(
			circle,
			rgba(118, 87, 232, .11),
			transparent 70%
		);
}


.zire-platform-hero__inner {
	position: relative;
	z-index: 2;

	display: grid;

	grid-template-columns:
		minmax(0, .92fr)
		minmax(540px, 1.08fr);

	align-items: center;

	gap: 84px;
}


.zire-platform-hero__eyebrow {
	display: inline-flex;

	align-items: center;

	gap: 8px;

	margin-bottom: 22px;

	padding:
		7px
		11px;

	border:
		1px
		solid
		rgba(49, 94, 251, .15);

	border-radius: 999px;

	background:
		rgba(49, 94, 251, .05);

	font-size: 13px;
}


.zire-platform-hero__eyebrow > span {
	width: 7px;
	height: 7px;

	border-radius: 50%;

	background: #315efb;

	box-shadow:
		0 0 0 4px rgba(49, 94, 251, .09);
}


.zire-platform-hero h1 {
	max-width: 720px;

	margin:
		0
		0
		25px;

	font-size:
		clamp(
			52px,
			5vw,
			78px
		);

	font-weight: 740;

	line-height: .99;

	letter-spacing: -4px;
}


.zire-platform-hero h1 span {
	display: block;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
}


.zire-platform-hero__lead {
	max-width: 700px;

	margin:
		0
		0
		30px;

	color: #5f697a;

	font-size: 18px;

	line-height: 1.7;
}


.zire-platform-hero__actions {
	display: flex;

	flex-wrap: wrap;

	gap: 11px;

	margin-bottom: 16px;
}


.zire-platform-hero__button {
	min-height: 52px;

	display: inline-flex;

	align-items: center;
	justify-content: center;

	gap: 10px;

	padding:
		0
		21px;

	border:
		1px
		solid
		transparent;

	border-radius: 11px;

	font-size: 14px;
	font-weight: 700;

	transition:
		transform .16s ease,
		box-shadow .16s ease,
		background .16s ease,
		border-color .16s ease;
}


.zire-platform-hero__button:hover {
	transform: translateY(-2px);
}


.zire-platform-hero__button--primary {
	background:
		linear-gradient(
			135deg,
			#315efb,
			#7058e8
		);

	color: #ffffff;

	box-shadow:
		0 10px 28px
		rgba(49, 94, 251, .19);
}


.zire-platform-hero__button--primary:hover {
	color: #ffffff;
}


.zire-platform-hero__button--secondary {
	border-color: #dfe4ed;

	background: #ffffff;

	color: #171b24;
}


.zire-platform-hero__trial {
	display: flex;

	align-items: center;

	gap: 7px;

	color: #747d8c;

	font-size: 12px;
}


.zire-platform-hero__trial > span {
	color: #07885f;

	font-weight: 800;
}


.zire-platform-hero__trial i {
	color: #c3c8d1;

	font-style: normal;
}


/* Hero product visual */

.zire-platform-hero__visual {
	position: relative;
}


.zire-platform-hero__screen {
	position: relative;

	padding: 26px;

	border:
		1px
		solid
		rgba(21, 30, 48, .10);

	border-radius: 19px;

	background:
		rgba(255, 255, 255, .95);

	box-shadow:
		0 35px 85px
		rgba(24, 38, 70, .13);

	backdrop-filter: blur(12px);
}


.zire-platform-hero__screen-head,
.zire-platform-hero__score-row {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 20px;
}


.zire-platform-hero__screen-head {
	margin-bottom: 26px;
}


.zire-platform-hero__screen-head > div span,
.zire-platform-hero__score-row > div > span {
	display: block;

	margin-bottom: 3px;

	color: #8d95a3;

	font-size: 12px;
	font-weight: 700;

	text-transform: uppercase;

	letter-spacing: .045em;
}


.zire-platform-hero__screen-head strong {
	color: #1a202b;

	font-size: 13px;
}


.zire-platform-hero__live {
	display: flex;

	align-items: center;

	gap: 6px;

	padding:
		6px
		9px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 11px;
	font-weight: 750;
}


.zire-platform-hero__live span {
	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: #07885f;
}


.zire-platform-hero__score-row {
	align-items: center;
}


.zire-platform-hero__score-row strong {
	color: #151a24;

	font-size: 43px;

	line-height: 1;

	letter-spacing: -2px;
}


.zire-platform-hero__score-row strong small {
	color: #9ba2ae;

	font-size: 15px;

	letter-spacing: 0;
}


.zire-platform-hero__change {
	padding:
		6px
		9px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 12px;
	font-weight: 750;
}


.zire-platform-hero__chart {
	position: relative;

	height: 205px;

	margin-top: 15px;
}


.zire-platform-hero__grid {
	position: absolute;

	inset: 0;

	overflow: hidden;

	border-radius: 12px;

	background:
		repeating-linear-gradient(
			to bottom,
			transparent 0,
			transparent 50px,
			rgba(25, 37, 60, .065) 51px,
			transparent 52px
		);
}


.zire-platform-hero__chart svg {
	position: relative;
	z-index: 2;

	width: 100%;
	height: 100%;
}


.zire-platform-hero__metrics {
	display: grid;

	grid-template-columns:
		repeat(3, 1fr);

	gap: 9px;

	margin-top: 10px;
}


.zire-platform-hero__metrics > div {
	padding:
		12px
		13px;

	border:
		1px
		solid
		#e9ecf2;

	border-radius: 10px;

	background: #fafbfc;
}


.zire-platform-hero__metrics strong {
	display: block;

	color: #171d27;

	font-size: 16px;
}


.zire-platform-hero__metrics span {
	color: #8b93a0;

	font-size: 11px;
}


.zire-platform-hero__float {
	position: absolute;
	z-index: 5;

	border:
		1px
		solid
		#e6eaf1;

	border-radius: 11px;

	background: #ffffff;

	box-shadow:
		0 15px 36px
		rgba(28, 40, 72, .13);
}


.zire-platform-hero__float--prompt {
	left: -45px;
	bottom: 95px;

	width: 245px;

	padding:
		12px
		14px;
}


.zire-platform-hero__float--prompt span,
.zire-platform-hero__float--prompt small {
	display: block;

	color: #929aa7;

	font-size: 11px;
}


.zire-platform-hero__float--prompt strong {
	display: block;

	margin:
		3px
		0;

	color: #202631;

	font-size: 13px;

	line-height: 1.35;
}


.zire-platform-hero__float--action {
	right: -34px;
	top: 110px;

	display: flex;

	align-items: center;

	gap: 10px;

	padding:
		11px
		12px;
}


.zire-platform-hero__float-icon {
	width: 31px;
	height: 31px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #f0ebff;

	color: #7357e8;
}


.zire-platform-hero__float--action small {
	display: block;

	color: #929aa7;

	font-size: 10px;

	text-transform: uppercase;

	font-weight: 750;
}


.zire-platform-hero__float--action strong {
	display: block;

	color: #1e2530;

	font-size: 12px;
}


/* =========================================================
   PROVIDER STRIP
   ========================================================= */

.zire-platform-providers {
	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	border-top:
		1px
		solid
		#edf0f5;

	border-bottom:
		1px
		solid
		#edf0f5;

	background: #ffffff;
}


.zire-platform-providers__inner {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 40px;

	min-height: 105px;
}


.zire-platform-providers__label {
	flex: 0 0 auto;

	color: #8a92a0;

	font-size: 13px;
	font-weight: 700;
}


.zire-platform-providers__logos {
	flex: 1;

	display: grid;

	grid-template-columns:
		repeat(5, 1fr);

	gap: 10px;
}


.zire-platform-providers__logos a {
	height: 54px;

	display: flex;

	align-items: center;
	justify-content: center;

	padding:
		12px
		16px;

	border:
		1px
		solid
		#e9edf3;

	border-radius: 10px;

	background: #ffffff;

	transition:
		transform .16s ease,
		box-shadow .16s ease,
		border-color .16s ease;
}


.zire-platform-providers__logos a:hover {
	transform: translateY(-2px);

	border-color: #dce2f0;

	box-shadow:
		0 8px 22px
		rgba(31, 44, 80, .07);
}


.zire-platform-providers__logos img {
	max-width: 105px;
	max-height: 25px;

	object-fit: contain;
}


/* =========================================================
   MONITOR
   ========================================================= */

.zire-platform-monitor {
	position: relative;

	overflow: hidden;

	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		118px
		24px
		60px;

	background:
		linear-gradient(
			180deg,
			#ffffff,
			#fafbff
		);
}


.zire-platform-monitor__glow {
	position: absolute;

	width: 620px;
	height: 620px;

	right: -240px;
	top: 190px;

	border-radius: 50%;

	background:
		radial-gradient(
			circle,
			rgba(49, 94, 251, .075),
			transparent 68%
		);

	pointer-events: none;
}


.zire-platform-monitor__inner {
	position: relative;
	z-index: 2;
}


.zire-platform-monitor__heading {
	max-width: 860px;

	margin-bottom: 67px;
}


.zire-platform-section-label {
	display: inline-flex;

	align-items: center;

	gap: 8px;

	margin-bottom: 17px;

	color: #315efb;

	font-size: 13px;
	font-weight: 800;

	letter-spacing: .065em;

	text-transform: uppercase;
}


.zire-platform-section-label > span {
	width: 28px;
	height: 28px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #eef2ff;

	font-size: 11px;
}


.zire-platform-monitor__heading h2 {
	max-width: 820px;

	margin:
		0
		0
		19px;

	font-size:
		clamp(
			44px,
			4.5vw,
			66px
		);

	font-weight: 735;

	line-height: 1.02;

	letter-spacing: -3px;
}


.zire-platform-monitor__heading h2 span {
	color: #315efb;
}


.zire-platform-monitor__heading > p {
	max-width: 760px;

	margin: 0;

	color: #687283;

	font-size: 17px;

	line-height: 1.7;
}


.zire-platform-monitor__layout {
	display: grid;

	grid-template-columns:
		.78fr
		1.22fr;

	align-items: center;

	gap: 78px;
}


/* Feature links */

.zire-platform-monitor__features {
	display: grid;

	gap: 6px;
}


.zire-platform-monitor__feature {
	display: grid;

	grid-template-columns:
		39px
		minmax(0, 1fr);

	gap: 13px;

	padding:
		15px;

	border:
		1px
		solid
		transparent;

	border-radius: 12px;

	transition:
		background .16s ease,
		border-color .16s ease,
		transform .16s ease;
}


.zire-platform-monitor__feature:hover {
	border-color: #e4e8f1;

	background: #ffffff;

	transform: translateX(4px);
}


.zire-platform-monitor__icon {
	width: 39px;
	height: 39px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#eef2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 14px;
	font-weight: 800;
}


.zire-platform-monitor__feature strong {
	display: block;

	margin-bottom: 4px;

	color: #1d2430;

	font-size: 14px;
	font-weight: 740;
}


.zire-platform-monitor__feature p {
	max-width: 390px;

	margin:
		0
		0
		5px;

	color: #7a8392;

	font-size: 13px;

	line-height: 1.5;
}


.zire-platform-monitor__feature div > span {
	color: #315efb;

	font-size: 12px;
	font-weight: 700;
}


/* Monitor visual */

.zire-platform-monitor-ui {
	overflow: hidden;

	border:
		1px
		solid
		rgba(24, 34, 54, .10);

	border-radius: 18px;

	background: #ffffff;

	box-shadow:
		0 28px 65px
		rgba(28, 41, 73, .10);
}


.zire-platform-monitor-ui__head {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 20px;

	padding:
		19px
		21px;

	border-bottom:
		1px
		solid
		#edf0f4;
}


.zire-platform-monitor-ui__head > div span {
	display: block;

	color: #9199a6;

	font-size: 11px;

	text-transform: uppercase;

	font-weight: 750;
}


.zire-platform-monitor-ui__head strong {
	display: block;

	margin-top: 2px;

	color: #1d2430;

	font-size: 13px;
}


.zire-platform-monitor-ui__status {
	display: flex;

	align-items: center;

	gap: 6px;

	color: #07885f;

	font-size: 11px;
	font-weight: 700;
}


.zire-platform-monitor-ui__status span {
	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: #07885f;
}


.zire-platform-monitor-ui__prompt {
	margin: 20px;

	padding:
		16px;

	border:
		1px
		solid
		#e9edf3;

	border-radius: 11px;

	background: #fafbfe;
}


.zire-platform-monitor-ui__prompt-top {
	display: flex;

	justify-content: space-between;

	margin-bottom: 5px;

	color: #929aa7;

	font-size: 11px;
}


.zire-platform-monitor-ui__prompt strong {
	color: #202733;

	font-size: 12px;
}


.zire-platform-monitor-ui__results {
	display: grid;

	padding:
		0
		20px;
}


.zire-platform-monitor-result {
	display: grid;

	grid-template-columns:
		minmax(140px, 1fr)
		105px
		42px;

	align-items: center;

	gap: 15px;

	padding:
		13px
		3px;

	border-top:
		1px
		solid
		#edf0f4;
}


.zire-platform-monitor-result__provider {
	display: flex;

	align-items: center;

	gap: 9px;

	color: #2a313d;

	font-size: 13px;
	font-weight: 700;
}


.zire-platform-monitor-result__provider img {
	width: 20px;
	height: 20px;

	object-fit: contain;
}


.zire-platform-monitor-result__yes,
.zire-platform-monitor-result__no {
	width: fit-content;

	padding:
		4px
		7px;

	border-radius: 999px;

	font-size: 10px;
	font-weight: 750;
}


.zire-platform-monitor-result__yes {
	background: #eaf8f2;

	color: #07885f;
}


.zire-platform-monitor-result__no {
	background: #f2f4f7;

	color: #858d9a;
}


.zire-platform-monitor-result > strong {
	color: #202733;

	text-align: right;

	font-size: 13px;
}


.zire-platform-monitor-ui__bottom {
	display: grid;

	grid-template-columns:
		repeat(3, 1fr);

	gap: 1px;

	margin-top: 14px;

	border-top:
		1px
		solid
		#edf0f4;

	background: #edf0f4;
}


.zire-platform-monitor-ui__bottom > div {
	padding:
		17px;

	background: #fafbfc;
}


.zire-platform-monitor-ui__bottom span {
	display: block;

	margin-bottom: 4px;

	color: #8c94a2;

	font-size: 11px;
}


.zire-platform-monitor-ui__bottom strong {
	color: #1c232e;

	font-size: 18px;
}


.zire-platform-monitor-ui__bottom strong small {
	color: #a0a7b3;

	font-size: 11px;
}


/* =========================================================
   MONITOR → UNDERSTAND FLOW
   ========================================================= */

.zire-platform-flow {
	position: relative;

	max-width: 880px;

	margin:
		90px
		auto
		0;

	padding:
		10px
		0
		50px;

	text-align: center;
}


.zire-platform-flow__line {
	position: absolute;

	left: 50%;
	top: 0;

	width: 1px;
	height: 100%;

	background:
		linear-gradient(
			to bottom,
			rgba(49, 94, 251, .06),
			rgba(49, 94, 251, .42),
			rgba(118, 87, 232, .18)
		);
}


.zire-platform-flow__signals {
	position: relative;
	z-index: 2;

	display: flex;

	flex-wrap: wrap;

	justify-content: center;

	gap: 8px;

	margin-bottom: 35px;
}


.zire-platform-flow__signals span {
	padding:
		7px
		10px;

	border:
		1px
		solid
		#e1e6f2;

	border-radius: 999px;

	background: #ffffff;

	box-shadow:
		0 6px 16px
		rgba(30, 44, 78, .045);

	color: #667084;

	font-size: 11px;
	font-weight: 700;
}


.zire-platform-flow__destination {
	position: relative;
	z-index: 2;

	display: inline-flex;

	flex-direction: column;

	align-items: center;

	padding:
		12px
		19px;

	border:
		1px
		solid
		#e0e6f3;

	border-radius: 13px;

	background: #ffffff;

	box-shadow:
		0 10px 28px
		rgba(30, 44, 78, .065);
}


.zire-platform-flow__destination span {
	color: #315efb;

	font-size: 10px;
	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: .07em;
}


.zire-platform-flow__destination strong {
	margin:
		2px
		0
		4px;

	color: #202733;

	font-size: 13px;
}


.zire-platform-flow__destination div {
	color: #7657e8;

	font-size: 15px;
}


/* =========================================================
   PLATFORM RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

	.zire-platform-hero__inner,
	.zire-platform-monitor__layout {
		grid-template-columns: 1fr;
	}


	.zire-platform-hero__copy,
	.zire-platform-hero__visual {
		max-width: 820px;
	}


	.zire-platform-monitor__features {
		grid-template-columns:
			1fr
			1fr;
	}

}


@media (max-width: 700px) {

	.zire-platform-hero {
		padding:
			125px
			18px
			76px;
	}


	.zire-platform-hero h1 {
		font-size: 47px;

		letter-spacing: -2.8px;
	}


	.zire-platform-hero__lead {
		font-size: 16px;
	}


	.zire-platform-hero__actions {
		flex-direction: column;
	}


	.zire-platform-hero__button {
		width: 100%;
	}


	.zire-platform-hero__float {
		display: none;
	}


	.zire-platform-hero__metrics {
		grid-template-columns: 1fr;
	}


	.zire-platform-providers__inner {
		align-items: flex-start;

		flex-direction: column;

		padding:
			25px
			0;
	}


	.zire-platform-providers__logos {
		width: 100%;

		grid-template-columns:
			1fr
			1fr;
	}


	.zire-platform-providers__logos a:last-child {
		grid-column: span 2;
	}


	.zire-platform-monitor {
		padding:
			82px
			18px
			40px;
	}


	.zire-platform-monitor__heading h2 {
		font-size: 43px;

		letter-spacing: -2px;
	}


	.zire-platform-monitor__features {
		grid-template-columns: 1fr;
	}


	.zire-platform-monitor-result {
		grid-template-columns:
			1fr
			auto;
	}


	.zire-platform-monitor-result > strong {
		display: none;
	}


	.zire-platform-monitor-ui__bottom {
		grid-template-columns: 1fr;
	}

}

/* =========================================================
   PLATFORM PAGE V2 — INTRO + OVERVIEW
   ========================================================= */


.zire-platform-intro {
	position: relative;

	overflow: hidden;

	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		145px
		24px
		120px;

	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#fbfcff 64%,
			#f6f8ff 100%
		);

	isolation: isolate;
}


.zire-platform-intro__glow {
	position: absolute;

	border-radius: 50%;

	pointer-events: none;
}


.zire-platform-intro__glow--one {
	width: 720px;
	height: 720px;

	right: -290px;
	top: -330px;

	background:
		radial-gradient(
			circle,
			rgba(49, 94, 251, .13),
			rgba(49, 94, 251, .035) 47%,
			transparent 70%
		);
}


.zire-platform-intro__glow--two {
	width: 560px;
	height: 560px;

	left: -300px;
	bottom: -300px;

	background:
		radial-gradient(
			circle,
			rgba(118, 87, 232, .10),
			transparent 69%
		);
}


.zire-platform-intro__inner {
	position: relative;
	z-index: 2;
}


/* Hero copy */

.zire-platform-intro__copy {
	max-width: 960px;

	margin:
		0
		auto;

	text-align: center;
}


.zire-platform-intro__eyebrow {
	display: inline-flex;

	align-items: center;

	gap: 8px;

	margin-bottom: 20px;

	padding:
		7px
		11px;

	border:
		1px
		solid
		rgba(49, 94, 251, .15);

	border-radius: 999px;

	background:
		rgba(49, 94, 251, .05);

	font-size: 12px;
}


.zire-platform-intro__eyebrow > span {
	width: 7px;
	height: 7px;

	border-radius: 50%;

	background: #315efb;

	box-shadow:
		0 0 0 4px
		rgba(49, 94, 251, .08);
}


.zire-platform-intro h1 {
	max-width: 930px;

	margin:
		0
		auto
		22px;

	color: #11141b;

	font-size:
		clamp(
			52px,
			5.1vw,
			76px
		);

	font-weight: 740;

	line-height: 0.99;

	letter-spacing: -4px;
}


.zire-platform-intro h1 span {
	display: block;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	padding-bottom: 10px;
}


.zire-platform-intro__copy > p {
	max-width: 780px;

	margin:
		0
		auto
		27px;

	color: #697386;

	font-size: 18px;

	line-height: 1.7;
}


.zire-platform-intro__actions {
	display: flex;

	justify-content: center;
	flex-wrap: wrap;

	gap: 10px;

	margin-bottom: 15px;
}


.zire-platform-intro__button {
	min-height: 50px;

	display: inline-flex;

	align-items: center;
	justify-content: center;

	gap: 9px;

	padding:
		0
		20px;

	border:
		1px
		solid
		transparent;

	border-radius: 10px;

	font-size: 13px;
	font-weight: 700;

	transition:
		transform .18s ease,
		box-shadow .18s ease,
		border-color .18s ease;
}


.zire-platform-intro__button:hover {
	transform:
		translateY(-2px);
}


.zire-platform-intro__button--primary {
	background:
		linear-gradient(
			135deg,
			#315efb,
			#7058e8
		);

	color: #ffffff;

	box-shadow:
		0 10px 28px
		rgba(49, 94, 251, .19);
}


.zire-platform-intro__button--primary:hover {
	color: #ffffff;
}


.zire-platform-intro__button--secondary {
	border-color: #dfe4ed;

	background: #ffffff;

	color: #171b24;
}


.zire-platform-intro__trial {
	display: flex;

	align-items: center;
	justify-content: center;

	gap: 7px;

	color: #818a99;

	font-size: 14px;
}


.zire-platform-intro__trial > span {
	color: #07885f;

	font-weight: 800;
}


.zire-platform-intro__trial i {
	color: #c4cad4;

	font-style: normal;
}


/* Overview shell */

.zire-platform-overview-wrap {
	position: relative;

	max-width: 1180px;

	margin:
		62px
		auto
		0;
}


.zire-platform-overview-wrap::before {
	content: "";

	position: absolute;

	left: 8%;
	right: 8%;
	bottom: -40px;

	height: 120px;

	border-radius: 50%;

	background:
		rgba(63, 88, 217, .13);

	filter:
		blur(55px);

	pointer-events: none;
}


.zire-platform-overview {
	position: relative;

	padding:
		27px;

	border:
		1px
		solid
		rgba(27, 37, 58, .10);

	border-radius: 22px;

	background:
		rgba(255, 255, 255, .98);

	box-shadow:
		0 38px 90px
		rgba(26, 39, 73, .13);
}


/* Heading */

.zire-platform-overview__top {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 30px;

	margin-bottom: 22px;
}


.zire-platform-overview__eyebrow,
.zire-platform-overview__card-head span,
.zire-platform-overview__providers-head > div > span {
	display: block;

	margin-bottom: 3px;

	color: #929aaa;

	font-size: 11px;
	font-weight: 800;

	letter-spacing: .07em;

	text-transform: uppercase;
}


.zire-platform-overview__top h2 {
	margin:
		0
		0
		4px;

	color: #1a202b;

	font-size: 19px;

	letter-spacing: -.6px;
}


.zire-platform-overview__top p {
	max-width: 560px;

	margin: 0;

	color: #7e8797;

	font-size: 12px;
}


.zire-platform-overview__status {
	display: inline-flex;

	align-items: center;

	gap: 6px;

	padding:
		6px
		9px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 11px;
	font-weight: 750;
}


.zire-platform-overview__status > span {
	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: #07885f;
}


/* KPI row */

.zire-platform-overview__kpis {
	display: grid;

	grid-template-columns:
		repeat(
			4,
			minmax(0, 1fr)
		);

	gap: 10px;

	margin-bottom: 12px;
}


.zire-platform-overview__kpi {
	padding:
		15px
		16px;

	border:
		1px
		solid
		#e9edf3;

	border-radius: 12px;

	background:
		linear-gradient(
			145deg,
			#ffffff,
			#fafbfe
		);
}


.zire-platform-overview__kpi-head {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 10px;

	margin-bottom: 9px;

	color: #7d8695;

	font-size: 11px;
	font-weight: 700;
}


.zire-platform-overview__kpi-head small {
	color: #979faa;

	font-size: 10px;
}


.zire-platform-overview__kpi-head .zire-platform-overview__up {
	color: #07885f;
}


.zire-platform-overview__kpi > strong {
	display: block;

	margin-bottom: 3px;

	color: #171d27;

	font-size: 25px;

	line-height: 1;

	letter-spacing: -1px;
}


.zire-platform-overview__kpi > strong small {
	color: #a0a7b3;

	font-size: 12px;

	letter-spacing: 0;
}


.zire-platform-overview__kpi > span {
	color: #969eaa;

	font-size: 12px;
}


/* Main area */

.zire-platform-overview__main {
	display: grid;

	grid-template-columns:
		minmax(0, 1.55fr)
		minmax(280px, .65fr);

	gap: 12px;
}


.zire-platform-overview__chart-card,
.zire-platform-overview__activity {
	padding:
		18px;

	border:
		1px
		solid
		#e9edf3;

	border-radius: 14px;

	background: #ffffff;
}


.zire-platform-overview__card-head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 20px;

	margin-bottom: 12px;
}


.zire-platform-overview__card-head strong {
	display: block;

	color: #202733;

	font-size: 12px;
}


.zire-platform-overview__legend {
	display: flex;

	align-items: center;

	gap: 12px;

	color: #929aa7;

	font-size: 10px;
}


.zire-platform-overview__legend span {
	display: flex;

	align-items: center;

	gap: 5px;
}


.zire-platform-overview__legend-dot {
	width: 7px;
	height: 7px;

	border-radius: 50%;
}


.zire-platform-overview__legend-dot--brand {
	background: #315efb;
}


.zire-platform-overview__legend-dot--competitor {
	background: #7657e8;
}


.zire-platform-overview__legend-dot--benchmark {
	background: #c6ccd8;
}


/* Better chart */

.zire-platform-overview__chart {
	position: relative;

	height: 255px;

	overflow: hidden;

	border-radius: 10px;
}


.zire-platform-overview__chart-grid {
	position: absolute;

	inset: 0;

	background:
		linear-gradient(
			to right,
			rgba(28, 42, 70, .045) 1px,
			transparent 1px
		),
		linear-gradient(
			to bottom,
			rgba(28, 42, 70, .055) 1px,
			transparent 1px
		);

	background-size:
		14.285% 100%,
		100% 25%;
}


.zire-platform-overview__chart svg {
	position: absolute;

	inset:
		12px
		0
		21px;

	width: 100%;
	height: calc(100% - 33px);
}


.zire-platform-overview__chart-label {
	position: absolute;

	bottom: 0;

	color: #a0a7b2;

	font-size: 12px;
}


.zire-platform-overview__chart-label--start {
	left: 0;
}


.zire-platform-overview__chart-label--end {
	right: 0;
}


/* Activity */

.zire-platform-overview__activity-list {
	display: grid;
}


.zire-platform-overview__activity-list > div {
	display: grid;

	grid-template-columns:
		31px
		minmax(0, 1fr)
		auto;

	align-items: center;

	gap: 9px;

	padding:
		11px
		0;

	border-top:
		1px
		solid
		#edf0f4;
}


.zire-platform-overview__activity-icon {
	width: 30px;
	height: 30px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background:
		linear-gradient(
			145deg,
			#eef2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 13px;
	font-weight: 800;
}


.zire-platform-overview__activity-list strong {
	display: block;

	color: #262d38;

	font-size: 12px;
}


.zire-platform-overview__activity-list div div span {
	display: block;

	color: #9199a7;

	font-size: 11px;
}


.zire-platform-overview__activity-list small {
	padding:
		3px
		6px;

	border-radius: 999px;

	background: #f4f6f9;

	color: #858e9c;

	font-size: 10px;
	font-weight: 700;
}


.zire-platform-overview__recommendation {
	display: grid;

	grid-template-columns:
		34px
		minmax(0, 1fr)
		auto;

	align-items: center;

	gap: 10px;

	margin-top: 12px;

	padding:
		12px;

	border:
		1px
		solid
		rgba(49, 94, 251, .13);

	border-radius: 10px;

	background:
		linear-gradient(
			135deg,
			#f6f8ff,
			#f8f5ff
		);
}


.zire-platform-overview__recommendation-icon {
	width: 34px;
	height: 34px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: #ede9ff;

	color: #7357e8;
}


.zire-platform-overview__recommendation div span {
	display: block;

	color: #786ca5;

	font-size: 10px;
	font-weight: 800;

	text-transform: uppercase;
}


.zire-platform-overview__recommendation strong {
	display: block;

	margin:
		2px
		0;

	color: #252b36;

	font-size: 11px;
}


.zire-platform-overview__recommendation small {
	display: block;

	color: #9097a4;

	font-size: 11px;
}


.zire-platform-overview__recommendation > span {
	color: #315efb;

	font-size: 13px;
}


/* Providers */

.zire-platform-overview__providers-head {
	display: flex;

	align-items: flex-end;
	justify-content: space-between;

	gap: 25px;

	margin:
		23px
		0
		12px;
}


.zire-platform-overview__providers-head strong {
	display: block;

	color: #202733;

	font-size: 12px;
}


.zire-platform-overview__providers-head p {
	margin:
		2px
		0
		0;

	color: #8a93a1;

	font-size: 10px;
}


.zire-platform-overview__providers-head > a {
	color: #315efb;

	font-size: 11px;
	font-weight: 700;
}


.zire-platform-overview__providers {
	display: grid;

	grid-template-columns:
		repeat(
			5,
			minmax(0, 1fr)
		);

	gap: 9px;
}


.zire-platform-overview__providers > a {
	padding:
		13px;

	border:
		1px
		solid
		#e7ebf2;

	border-radius: 11px;

	background: #ffffff;

	transition:
		transform .18s ease,
		box-shadow .18s ease,
		border-color .18s ease;
}


.zire-platform-overview__providers > a:hover {
	transform:
		translateY(-2px);

	border-color: #dce2ef;

	box-shadow:
		0 8px 24px
		rgba(28, 42, 72, .07);
}


.zire-platform-overview__provider-top {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 9px;

	margin-bottom: 11px;
}


.zire-platform-overview__provider-top > span {
	display: flex;

	align-items: center;

	gap: 7px;

	color: #2a313d;

	font-size: 13px;
	font-weight: 750;
}


.zire-platform-overview__provider-top img {
	width: 17px;
	height: 17px;

	object-fit: contain;
}


.zire-platform-overview__provider-top strong {
	color: #1d2430;

	font-size: 12px;
}


.zire-platform-overview__bar {
	height: 4px;

	overflow: hidden;

	margin-bottom: 8px;

	border-radius: 999px;

	background: #edf0f5;
}


.zire-platform-overview__bar > span {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


.zire-platform-overview__providers > a > small {
	color: #9aa2af;

	font-size: 11px;
}


/* Responsive */

@media (max-width: 1050px) {

	.zire-platform-overview__main {
		grid-template-columns: 1fr;
	}


	.zire-platform-overview__kpis {
		grid-template-columns:
			1fr
			1fr;
	}


	.zire-platform-overview__providers {
		grid-template-columns:
			repeat(
				3,
				1fr
			);
	}

}


@media (max-width: 700px) {

	.zire-platform-intro {
		padding:
			125px
			18px
			80px;
	}


	.zire-platform-intro h1 {
		font-size: 46px;

		letter-spacing: -2.5px;
	}


	.zire-platform-intro__copy > p {
		font-size: 15px;
	}


	.zire-platform-intro__actions {
		flex-direction: column;
	}


	.zire-platform-intro__button {
		width: 100%;
	}


	.zire-platform-overview {
		padding: 16px;
	}


	.zire-platform-overview__top {
		flex-direction: column;
	}


	.zire-platform-overview__kpis {
		grid-template-columns: 1fr;
	}


	.zire-platform-overview__legend {
		display: none;
	}


	.zire-platform-overview__providers {
		grid-template-columns:
			1fr
			1fr;
	}


	.zire-platform-overview__providers > a:last-child {
		grid-column:
			span
			2;
	}

}

/* =========================================================
   PLATFORM OVERVIEW — TRAVELLING BORDER
   ========================================================= */

.zire-platform-overview {
	position: relative;
	z-index: 1;

	border:
		1px
		solid
		rgba(27, 37, 58, .10);

	border-radius: 22px;

	background:
		rgba(255, 255, 255, .98);
	
	position: relative;
  overflow: hidden;
  border: 1.5px solid transparent;
  border-radius: 18px;
  background: linear-gradient(#fff,#fff) padding-box, linear-gradient( 135deg, #9aafff, #c3b5ff, #8066ea ) border-box;
  box-shadow: 0 31px 78px rgba(35,50,84,.115), 0 9px 29px rgba(49,94,251,.055);

}




.zire-platform-overview-wrap.is-visible
.zire-platform-overview::before {
	animation:
		zire-platform-border-travel
		1.8s
		cubic-bezier(.22, .7, .25, 1)
		.2s
		1
		forwards;
}




@media (prefers-reduced-motion: reduce) {

	.zire-platform-overview-wrap.is-visible
	.zire-platform-overview::before {
		animation: none;
	}

}

/* =========================================================
   PLATFORM OVERVIEW — SVG TRAVELLING BORDER
   ========================================================= */

.zire-platform-overview {
	position: relative;

	overflow: visible;
}


.zire-platform-overview__animated-border {
	position: absolute;

	inset: -3px;

	z-index: 5;

	width: calc(100% + 6px);
	height: calc(100% + 6px);

	overflow: visible;

	pointer-events: none;
}


/* Shared border setup */

.zire-platform-overview__border-line,
.zire-platform-overview__border-glow {
	fill: none;

	stroke:
		url(#zirePlatformBorderGradient);

	stroke-linecap: round;

	stroke-dasharray:
		34
		66;

	stroke-dashoffset: 100;

	opacity: 0;
}


/* Crisp border */

.zire-platform-overview__border-line {
	stroke-width: 2.2;
}


/* Glow behind it */

.zire-platform-overview__border-glow {
	stroke-width: 5;

	filter:
		url(#zirePlatformBorderGlow);

	opacity: 0;
}


/* Start once when existing reveal animation fires */

.zire-platform-overview-wrap.is-visible
.zire-platform-overview__border-line {
	animation:
		zire-overview-border-run
		3.6s
		cubic-bezier(.25, .6, .3, 1)
		.25s
		1
		forwards;
}


.zire-platform-overview-wrap.is-visible
.zire-platform-overview__border-glow {
	animation:
		zire-overview-border-glow-run
		3.6s
		cubic-bezier(.25, .6, .3, 1)
		.25s
		1
		forwards;
}


@keyframes zire-overview-border-run {

	0% {
		stroke-dashoffset: 100;
		opacity: 0;
	}

	7%,
	90% {
		opacity: 1;
	}

	100% {
		stroke-dashoffset: 0;
		opacity: 0;
	}

}


@keyframes zire-overview-border-glow-run {

	0% {
		stroke-dashoffset: 100;
		opacity: 0;
	}

	10% {
		opacity: .42;
	}

	85% {
		opacity: .32;
	}

	100% {
		stroke-dashoffset: 0;
		opacity: 0;
	}

}


@media (prefers-reduced-motion: reduce) {

	.zire-platform-overview__border-line,
	.zire-platform-overview__border-glow {
		animation: none !important;
		opacity: 0;
	}

}

/* =========================================================
   PLATFORM — DARK MONITOR SECTION
   ========================================================= */

.zire-platform-monitor-dark {
	position: relative;

	overflow: hidden;

	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		120px
		24px;

	background:
		linear-gradient(
			145deg,
			#101625 0%,
			#17213d 50%,
			#25235c 100%
		);

	color: #ffffff;

	isolation: isolate;
}


/* Glows */

.zire-platform-monitor-dark__glow {
	position: absolute;

	z-index: -2;

	border-radius: 50%;

	pointer-events: none;
}


.zire-platform-monitor-dark__glow--one {
	width: 720px;
	height: 720px;

	right: -330px;
	top: -280px;

	background:
		radial-gradient(
			circle,
			rgba(76, 106, 255, .38),
			transparent 68%
		);
}


.zire-platform-monitor-dark__glow--two {
	width: 620px;
	height: 620px;

	left: -350px;
	bottom: -370px;

	background:
		radial-gradient(
			circle,
			rgba(126, 84, 232, .32),
			transparent 68%
		);
}


/* Abstract star */

.zire-platform-monitor-dark__shape {
	position: absolute;

	left: -110px;
	top: 170px;

	z-index: -1;

	width: 610px;

	opacity: .16;

	pointer-events: none;

	filter:
		drop-shadow(
			0 0 45px
			rgba(81, 97, 255, .15)
		);
}


/* Layout */

.zire-platform-monitor-dark__inner {
	display: grid;

	grid-template-columns:
		minmax(0, .82fr)
		minmax(520px, 1.18fr);

	align-items: center;

	gap: 88px;
}


/* Copy */

.zire-platform-monitor-dark__eyebrow {
	display: inline-flex;

	align-items: center;

	gap: 11px;

	margin-bottom: 22px;

	color: #b4c1ff;

	font-size: 12px;
	font-weight: 800;

	letter-spacing: .08em;

	text-transform: uppercase;
}

.zire-platform-monitor-dark__eyebrow > span {
	width: 40px;
	height: 40px;

	display: flex;

	align-items: center;
	justify-content: center;

	border: 0;

	border-radius: 10px;

	background: #ffffff;

	color: #18213a;

	box-shadow:
		0 9px 25px
		rgba(0, 0, 0, .16);

	font-size: 13px;
	font-weight: 800;
}


.zire-platform-monitor-dark h2 {
	max-width: 650px;

	margin:
		0
		0
		20px;

	color: #ffffff;

	font-size:
		clamp(
			46px,
			4.7vw,
			68px
		);

	font-weight: 735;

	line-height: 1.01;

	letter-spacing: -3px;
}


.zire-platform-monitor-dark h2 span {
	display: block;

	color: #9eafff;
}


.zire-platform-monitor-dark__lead {
	max-width: 585px;

	margin:
		0
		0
		32px;

	color:
		rgba(255, 255, 255, .65);

	font-size: 16px;

	line-height: 1.7;
}


/* Feature rows */

.zire-platform-monitor-dark__features {
	display: grid;

	gap: 7px;

	max-width: 580px;
}


.zire-platform-monitor-dark__features > a {
	display: grid;

	grid-template-columns:
		40px
		minmax(0, 1fr)
		auto;

	align-items: center;

	gap: 12px;

	padding:
		12px
		13px;

	border:
		1px
		solid
		rgba(255, 255, 255, .075);

	border-radius: 11px;

	background:
		rgba(255, 255, 255, .038);

	transition:
		transform .17s ease,
		background .17s ease,
		border-color .17s ease;
}


.zire-platform-monitor-dark__features > a:hover {
	transform:
		translateX(4px);

	border-color:
		rgba(255, 255, 255, .14);

	background:
		rgba(255, 255, 255, .065);
}


.zire-platform-monitor-dark__feature-icon {
	width: 39px;
	height: 39px;

	display: flex;

	align-items: center;
	justify-content: center;

	border:
		1px
		solid
		rgba(147, 165, 255, .15);

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			rgba(49, 94, 251, .16),
			rgba(118, 87, 232, .13)
		);

	color: #a9b9ff;

	font-size: 15px;
	font-weight: 900;
}


.zire-platform-monitor-dark__features strong {
	display: block;

	margin-bottom: 2px;

	color: #ffffff;

	font-size: 12px;
	font-weight: 700;
}


.zire-platform-monitor-dark__features small {
	display: block;

	color:
		rgba(255, 255, 255, .45);

	font-size: 13px;

	line-height: 1.4;
}


.zire-platform-monitor-dark__features > a > span:last-child {
	color: #8298ff;

	font-size: 15px;

	transition:
		transform .17s ease;
}


.zire-platform-monitor-dark__features > a:hover > span:last-child {
	transform:
		translateX(3px);
}


/* Right visual */

.zire-platform-monitor-dark__visual {
	position: relative;

	padding:
		15px
		0;
}


.zire-platform-monitor-panel {
	overflow: hidden;

	border:
		1px
		solid
		rgba(255, 255, 255, .10);

	border-radius: 18px;

	background:
		rgba(255, 255, 255, .965);

	box-shadow:
		0 38px 90px
		rgba(0, 0, 0, .24);

	color: #1b2230;
}


.zire-platform-monitor-panel__head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 20px;

	padding:
		20px
		22px;

	border-bottom:
		1px
		solid
		#ebedf2;
}


.zire-platform-monitor-panel__head > div:first-child > span {
	display: block;

	margin-bottom: 3px;

	color: #969eaa;

	font-size: 10px;
	font-weight: 800;

	letter-spacing: .07em;

	text-transform: uppercase;
}


.zire-platform-monitor-panel__head strong {
	display: block;

	color: #222a36;

	font-size: 13px;
}


.zire-platform-monitor-panel__live {
	display: flex;

	align-items: center;

	gap: 6px;

	padding:
		5px
		8px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 10px;
	font-weight: 750;
}


.zire-platform-monitor-panel__live span {
	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: #07885f;
}


/* Prompt */

.zire-platform-monitor-panel__prompt {
	margin:
		20px
		20px
		6px;

	padding:
		15px;

	border:
		1px
		solid
		#e7ebf1;

	border-radius: 10px;

	background: #fafbfe;
}


.zire-platform-monitor-panel__prompt > div {
	display: flex;

	justify-content: space-between;

	gap: 20px;

	margin-bottom: 5px;

	color: #9199a5;

	font-size: 10px;
}


.zire-platform-monitor-panel__prompt strong {
	color: #222a35;

	font-size: 13px;
}


/* Provider rows */

.zire-platform-monitor-panel__providers {
	padding:
		0
		20px;
}


.zire-platform-monitor-provider {
	display: grid;

	grid-template-columns:
		minmax(130px, 1fr)
		100px
		45px;

	align-items: center;

	gap: 14px;

	padding:
		12px
		2px;

	border-top:
		1px
		solid
		#edf0f4;
}


.zire-platform-monitor-provider > div {
	display: flex;

	align-items: center;

	gap: 9px;

	color: #2a313d;

	font-size: 12px;
	font-weight: 700;
}


.zire-platform-monitor-provider img {
	width: 19px;
	height: 19px;

	object-fit: contain;
}


.zire-platform-monitor-provider > span {
	width: fit-content;

	padding:
		4px
		7px;

	border-radius: 999px;

	font-size: 10px;
	font-weight: 750;
}


.zire-platform-monitor-provider > .is-positive {
	background: #eaf8f2;

	color: #07885f;
}


.zire-platform-monitor-provider > .is-muted {
	background: #f1f3f6;

	color: #89919d;
}


.zire-platform-monitor-provider > strong {
	text-align: right;

	color: #222a36;

	font-size: 12px;
}


/* Bottom metrics */

.zire-platform-monitor-panel__summary {
	display: grid;

	grid-template-columns:
		repeat(
			3,
			1fr
		);

	gap: 1px;

	margin-top: 12px;

	border-top:
		1px
		solid
		#e9edf2;

	background: #e9edf2;
}


.zire-platform-monitor-panel__summary > div {
	padding:
		15px
		17px;

	background: #fafbfc;
}


.zire-platform-monitor-panel__summary span {
	display: block;

	margin-bottom: 3px;

	color: #939ba8;

	font-size: 10px;
}


.zire-platform-monitor-panel__summary strong {
	color: #202733;

	font-size: 17px;
}


.zire-platform-monitor-panel__summary strong small {
	color: #9da5b1;

	font-size: 10px;
}


/* Floating UI */

.zire-platform-monitor-float {
	position: absolute;

	z-index: 5;

	border:
		1px
		solid
		rgba(255, 255, 255, .09);

	border-radius: 11px;

	background:
		rgba(22, 29, 48, .90);

	box-shadow:
		0 22px 50px
		rgba(0, 0, 0, .28);

	backdrop-filter:
		blur(14px);

	color: #ffffff;
}


.zire-platform-monitor-float--source {
	left: -38px;
	top: 92px;

	width: 175px;

	padding: 12px;
}


.zire-platform-monitor-float--competitor {
	right: -28px;
	bottom: 95px;

	width: 160px;

	padding: 12px;
}


.zire-platform-monitor-float > span {
	display: block;

	margin-bottom: 3px;

	color:
		rgba(255, 255, 255, .45);

	font-size: 10px;
	font-weight: 750;

	text-transform: uppercase;

	letter-spacing: .05em;
}


.zire-platform-monitor-float strong {
	display: block;

	color: #ffffff;

	font-size: 13px;
}


.zire-platform-monitor-float small {
	display: block;

	margin-top: 2px;

	color:
		rgba(255, 255, 255, .45);

	font-size: 10px;
}


.zire-platform-monitor-float--competitor strong {
	font-size: 22px;
}


.zire-platform-monitor-float--competitor strong small {
	display: inline;

	font-size: 10px;
}


.zire-platform-monitor-float--competitor > div {
	height: 4px;

	margin-top: 8px;

	overflow: hidden;

	border-radius: 999px;

	background:
		rgba(255, 255, 255, .10);
}


.zire-platform-monitor-float--competitor > div span {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#627cff,
			#a88dff
		);
}


/* Responsive */

@media (max-width: 1050px) {

	.zire-platform-monitor-dark__inner {
		grid-template-columns: 1fr;
	}


	.zire-platform-monitor-dark__copy {
		max-width: 760px;
	}


	.zire-platform-monitor-dark__visual {
		max-width: 820px;
	}

}


@media (max-width: 700px) {

	.zire-platform-monitor-dark {
		padding:
			82px
			18px;
	}


	.zire-platform-monitor-dark h2 {
		font-size: 44px;

		letter-spacing: -2px;
	}


	.zire-platform-monitor-dark__lead {
		font-size: 15px;
	}


	.zire-platform-monitor-float {
		display: none;
	}


	.zire-platform-monitor-provider {
		grid-template-columns:
			1fr
			auto;
	}


	.zire-platform-monitor-provider > strong {
		display: none;
	}


	.zire-platform-monitor-panel__summary {
		grid-template-columns: 1fr;
	}

}

/* =========================================================
   MONITOR — PRODUCT CARD GRID
   ========================================================= */

.zire-platform-monitor-grid {
	display: grid;

	grid-template-columns:
		minmax(220px, .72fr)
		minmax(400px, 1.28fr);

	grid-template-rows:
		.9fr
		1.1fr;

	gap: 15px;

	align-items: stretch;

	min-height: 570px;
}


/*
 * Uneven composition:
 *
 * Share of Voice = upper left
 * Provider card   = lower left
 * Trend           = large right card spanning both
 */

.zire-platform-monitor-card--share {
	grid-column: 1;
	grid-row: 1;
}


.zire-platform-monitor-card--provider {
	grid-column: 1;
	grid-row: 2;
}


.zire-platform-monitor-card--trend {
	grid-column: 2;
	grid-row:
		1
		/
		3;
}


/* Shared card */

.zire-platform-monitor-card {
	min-width: 0;

	padding: 19px;

	border: 2px solid var(--zire-blue);

	border-radius: 16px;

	background:
		linear-gradient(
			#ffffff,
			#ffffff
		)
		padding-box,

		linear-gradient(
			135deg,
			rgba(112, 140, 255, .72),
			rgba(154, 124, 244, .45),
			rgba(49, 94, 251, .16)
		)
		border-box;

	box-shadow:
		0 24px 60px
		rgba(0, 0, 0, .18);

	color: #1d2430;
	
}


.zire-platform-monitor-card__heading {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 15px;
}


.zire-platform-monitor-card__heading > div > span {
	display: block;

	margin-bottom: 2px;

	color: #949ca9;

	font-size: 12px;
	font-weight: 800;

	letter-spacing: .07em;

	text-transform: uppercase;
}


.zire-platform-monitor-card__heading strong {
	display: block;

	color: #1d2430;

	font-size: 15px;
}


.zire-platform-monitor-card__heading > small {
	padding:
		4px
		7px;

	border:
		1px
		solid
		#e6eaf1;

	border-radius: 999px;

	color: #315efb;

	font-size: 12px;
	width: 84px;
  text-align: center;
	background: linear-gradient( 145deg, #eef2ff, #f2edff );
}


.zire-platform-monitor-card__intro {
	margin:
		5px
		0
		17px;

	color: #737d8c;

	font-size: 13px;

	line-height: 1.5;
}


/* =========================================================
   SHARE OF VOICE
   ========================================================= */

.zire-platform-share {
	display: grid;

	grid-template-columns:
		112px
		minmax(0, 1fr);

	align-items: center;

	gap: 15px;
}


.zire-platform-share__donut {
	position: relative;

	width: 105px;
	height: 105px;
}


.zire-platform-share__donut svg {
	width: 100%;
	height: 100%;

	transform:
		rotate(-90deg);
}


.zire-platform-share__track,
.zire-platform-share__value {
	fill: none;

	stroke-width: 9;
}


.zire-platform-share__track {
	stroke: #edf0f5;
}


.zire-platform-share__value {
	stroke: #315efb;

	stroke-linecap: butt;
}


.zire-platform-share__donut > div {
	position: absolute;

	inset: 0;

	display: flex;

	flex-direction: column;

	align-items: center;
	justify-content: center;

	text-align: center;
}


.zire-platform-share__donut strong {
	color: #151c2b;

	font-size: 25px;

	line-height: 1;
}


.zire-platform-share__donut span {
	margin-top: 4px;

	color: #8490a2;

	font-size: 10px;
}


.zire-platform-share__competitors {
	display: grid;
}


.zire-platform-share__competitors > div {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 12px;

	padding:
		7px
		0;

	border-bottom:
		1px
		solid
		#edf0f4;
}


.zire-platform-share__competitors > div:last-child {
	border-bottom: 0;
}


.zire-platform-share__competitors span {
	color: #586273;

	font-size: 11px;
}


.zire-platform-share__competitors strong {
	color: #1e2632;

	font-size: 10px;
}


/* =========================================================
   TREND CARD
   ========================================================= */

.zire-platform-monitor-card--trend {
	padding:
		20px
		21px;
}


.zire-platform-trend__legend {
	display: flex;

	flex-wrap: wrap;

	gap: 5px;

	margin:
		5px
		0
		17px;
}


.zire-platform-trend__legend > span {
	display: flex;

	align-items: center;

	gap: 5px;

	padding:
		4px
		7px;

	border:
		1px
		solid
		#e4e8f0;

	border-radius: 999px;

	background: #fafbfe;

	color: #667184;

	font-size: 12px;
	font-weight: 700;
}


.zire-platform-trend__legend i {
	width: 6px;
	height: 6px;

	border-radius: 50%;
}


.zire-platform-trend__legend .is-overall i {
	background: #315efb;
}


.zire-platform-trend__legend .is-chatgpt i {
	background: #6380ff;
}


.zire-platform-trend__legend .is-claude i {
	background: #db7954;
}


.zire-platform-trend__legend .is-gemini i {
	background: #d7ac13;
}


.zire-platform-trend__legend .is-perplexity i {
	background: #16877e;
}


.zire-platform-trend__legend .is-grok i {
	background: #273247;
}


.zire-platform-trend {
	position: relative;

	min-height: 425px;
}


.zire-platform-trend__grid {
	position: absolute;

	inset:
		0
		0
		24px;

	border-radius: 10px;

	background:
		linear-gradient(
			to right,
			rgba(38, 49, 72, .045) 1px,
			transparent 1px
		),
		linear-gradient(
			to bottom,
			rgba(38, 49, 72, .055) 1px,
			transparent 1px
		);

	background-size:
		12.5% 100%,
		100% 25%;
}


.zire-platform-trend svg {
	position: absolute;

	inset:
		8px
		0
		26px;

	width: 100%;
	height: calc(100% - 34px);
}


.zire-platform-trend__date {
	position: absolute;

	bottom: 0;

	color: #9ca4b0;

	font-size: 12px;
}


.zire-platform-trend__date--start {
	left: 0;
}


.zire-platform-trend__date--end {
	right: 0;
}


/* =========================================================
   PROVIDER CARD
   ========================================================= */

.zire-platform-provider-card__top {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 15px;

	margin-bottom: 13px;
}


.zire-platform-provider-card__top > div {
	display: flex;

	align-items: center;

	gap: 8px;
}


.zire-platform-provider-card__top img {
	width: 21px;
	height: 21px;

	object-fit: contain;
}


.zire-platform-provider-card__top > div strong {
	color: #1d2430;

	font-size: 12px;
}


.zire-platform-provider-card__top > strong {
	color: #151b25;

	font-size: 21px;
}


.zire-platform-provider-card__bar {
	height: 6px;

	overflow: hidden;

	margin-bottom: 14px;

	border-radius: 999px;

	background: #e9edf2;
}


.zire-platform-provider-card__bar span {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


.zire-platform-provider-card__metrics {
	display: grid;

	grid-template-columns:
		repeat(
			3,
			1fr
		);

	gap: 7px;

	margin-bottom: 13px;
}


.zire-platform-provider-card__metrics > div {
	padding:
		10px
		8px;

	border-radius: 9px;

	background:
		linear-gradient(
			145deg,
			#f6f8fc,
			#fafbfe
		);
}


.zire-platform-provider-card__metrics > div:nth-child(1) {
	border-top:
		2px
		solid
		#6380ff;
}


.zire-platform-provider-card__metrics > div:nth-child(2) {
	border-top:
		2px
		solid
		#9a7cf4;
}


.zire-platform-provider-card__metrics > div:nth-child(3) {
	border-top:
		2px
		solid
		#64cdb2;
}


.zire-platform-provider-card__metrics span {
	display: block;

	margin-bottom: 4px;

	color: #737c89;

	font-size: 10px;

	text-transform: uppercase;

	font-weight: 700;
}


.zire-platform-provider-card__metrics strong {
	color: #1d2430;

	font-size: 13px;
}


.zire-platform-monitor-card--provider > small {
	color: #969eaa;

	font-size: 12px;
}


/* Responsive */

@media (max-width: 800px) {

	.zire-platform-monitor-grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}


	.zire-platform-monitor-card--share,
	.zire-platform-monitor-card--trend,
	.zire-platform-monitor-card--provider {
		grid-column: 1;
		grid-row: auto;
	}

}

/* =========================================================
   PLATFORM — UNDERSTAND + IMPROVE
   ========================================================= */

.zire-platform-intelligence {
	position: relative;

	overflow: hidden;

	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		125px
		24px
		85px;

	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f9faff 26%,
			#f5f7ff 55%,
			#f8f7ff 78%,
			#ffffff 100%
		);

	isolation: isolate;
}


.zire-platform-intelligence__glow {
	position: absolute;

	z-index: -1;

	border-radius: 50%;

	pointer-events: none;
}


.zire-platform-intelligence__glow--one {
	width: 760px;
	height: 760px;

	right: -410px;
	top: 260px;

	background:
		radial-gradient(
			circle,
			rgba(49, 94, 251, .09),
			transparent 68%
		);
}


.zire-platform-intelligence__glow--two {
	width: 700px;
	height: 700px;

	left: -390px;
	bottom: 200px;

	background:
		radial-gradient(
			circle,
			rgba(118, 87, 232, .08),
			transparent 68%
		);
}


/* =========================================================
   SHARED STAGE
   ========================================================= */

.zire-platform-stage {
	position: relative;
	z-index: 2;

	display: grid;

	grid-template-columns:
		minmax(500px, 1.08fr)
		minmax(0, .92fr);

	align-items: center;

	gap: 95px;
}


.zire-platform-stage--improve {
	grid-template-columns:
		minmax(0, .86fr)
		minmax(540px, 1.14fr);

	margin-top: 115px;
}


.zire-platform-stage__copy {
	min-width: 0;
}


.zire-platform-stage__eyebrow {
	display: inline-flex;

	align-items: center;

	gap: 12px;

	margin-bottom: 23px;

	color: #315efb;

	font-size: 12px;
	font-weight: 800;

	letter-spacing: .08em;

	text-transform: uppercase;
}


.zire-platform-stage__eyebrow > span {
	width: 40px;
	height: 40px;

	display: flex;

	align-items: center;
	justify-content: center;

	border:
		1px
		solid
		#dce3ff;

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#ffffff,
			#f2f5ff
		);

	box-shadow:
		0 8px 24px
		rgba(44, 64, 122, .08);

	color: #315efb;

	font-size: 13px;
}


.zire-platform-stage h2 {
	max-width: 690px;

	margin:
		0
		0
		22px;

	color: #121722;

	font-size:
		clamp(
			46px,
			4.7vw,
			68px
		);

	font-weight: 735;

	line-height: 1.02;

	letter-spacing: -3px;
}


.zire-platform-stage h2 span {
	display: block;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
}


.zire-platform-stage__lead {
	max-width: 650px;

	margin:
		0
		0
		31px;

	color: #687386;

	font-size: 16px;

	line-height: 1.72;
}


/* Feature links */

.zire-platform-stage__links {
	display: grid;

	gap: 9px;

	max-width: 610px;
}


.zire-platform-stage__links > a {
	display: grid;

	grid-template-columns:
		43px
		minmax(0, 1fr)
		auto;

	align-items: center;

	gap: 13px;

	padding:
		14px;

	border:
		1px
		solid
		#e2e6ef;

	border-radius: 12px;

	background:
		rgba(255, 255, 255, .77);

	box-shadow:
		0 7px 24px
		rgba(31, 47, 84, .035);

	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease,
		background .18s ease;
}


.zire-platform-stage__links > a:hover {
	transform:
		translateX(4px);

	border-color:
		#ccd7ff;

	background: #ffffff;

	box-shadow:
		0 10px 30px
		rgba(31, 47, 84, .07);
}


.zire-platform-stage__link-icon {
	width: 42px;
	height: 42px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 13px;
	font-weight: 800;
}


.zire-platform-stage__links strong {
	display: block;

	margin-bottom: 2px;

	color: #202733;

	font-size: 13px;
}


.zire-platform-stage__links small {
	display: block;

	color: #7d8796;

	font-size: 13px;

	line-height: 1.45;
}


.zire-platform-stage__links > a > span:last-child {
	color: #315efb;

	font-size: 14px;
}


/* Note */

.zire-platform-stage__note {
	display: flex;

	align-items: flex-start;

	gap: 11px;

	max-width: 600px;

	margin-top: 22px;

	padding:
		13px
		15px;

	border:
		1px
		solid
		rgba(49, 94, 251, .11);

	border-radius: 11px;

	background:
		rgba(241, 244, 255, .63);
}


.zire-platform-stage__note > span {
	color: #7657e8;

	font-size: 13px;
}


.zire-platform-stage__note p {
	margin: 0;

	color: #687386;

	font-size: 13px;

	line-height: 1.55;
}


.zire-platform-stage__note strong {
	color: #30394a;
}


/* =========================================================
   UNDERSTAND VISUAL
   ========================================================= */

.zire-platform-understand-visual {
	position: relative;

	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 13px;
}


.zire-platform-intel-card {
	position: relative;

	padding: 19px;

	border:
		1.5px
		solid
		transparent;

	border-radius: 16px;

	background:
		linear-gradient(
			#ffffff,
			#ffffff
		)
		padding-box,

		linear-gradient(
			135deg,
			#8ca5ff 0%,
			#b49dff 42%,
			#7657e8 72%,
			#7e97ff 100%
		)
		border-box;

	box-shadow:
		0 20px 50px
		rgba(34, 48, 83, .09);

	color: #1c2431;
}


.zire-platform-intel-card--score {
	grid-column:
		1
		/
		3;
}


.zire-platform-intel-card__head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 20px;

	margin-bottom: 18px;
}


.zire-platform-intel-card__head span,
.zire-platform-intel-card__label {
	display: block;

	margin-bottom: 3px;

	color: #8b95a5;

	font-size: 11px;
	font-weight: 800;

	letter-spacing: .065em;

	text-transform: uppercase;
}


.zire-platform-intel-card__head strong {
	display: block;

	color: #1e2632;

	font-size: 14px;
}


.zire-platform-intel-card__head small {
	padding:
		4px
		7px;

	border-radius: 999px;

	background: #f4f6fa;

	color: #838d9b;

	font-size: 10px;
}


/* Score */

.zire-platform-score-layout {
	display: grid;

	grid-template-columns:
		165px
		1fr;

	align-items: center;

	gap: 28px;
}


.zire-platform-score-ring {
	position: relative;

	width: 145px;
	height: 145px;
}


.zire-platform-score-ring svg {
	width: 100%;
	height: 100%;

	transform:
		rotate(-90deg);
}


.zire-platform-score-ring__track,
.zire-platform-score-ring__value {
	fill: none;

	stroke-width: 9;
}


.zire-platform-score-ring__track {
	stroke: #ebeff5;
}


.zire-platform-score-ring__value {
	stroke: #315efb;

	stroke-linecap: round;
}


.zire-platform-score-ring > div {
	position: absolute;

	inset: 0;

	display: flex;

	flex-direction: column;

	align-items: center;
	justify-content: center;
}


.zire-platform-score-ring > div > strong {
	color: #141b29;

	font-size: 32px;

	line-height: 1;
}


.zire-platform-score-ring > div > strong small {
	color: #929ba9;

	font-size: 12px;
}


.zire-platform-score-ring > div > span {
	margin-top: 5px;

	color: #778294;

	font-size: 11px;
}


.zire-platform-score-breakdown {
	display: grid;

	gap: 14px;
}


.zire-platform-score-breakdown > div {
	display: grid;

	grid-template-columns:
		1fr
		auto;

	gap: 5px;
}


.zire-platform-score-breakdown span {
	color: #697486;

	font-size: 12px;
}


.zire-platform-score-breakdown strong {
	color: #202733;

	font-size: 13px;
}


.zire-platform-score-breakdown i {
	grid-column:
		1
		/
		3;

	height: 5px;

	overflow: hidden;

	border-radius: 999px;

	background: #edf0f5;
}


.zire-platform-score-breakdown i span {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


/* Competitor gap */

.zire-platform-gap-head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 13px;

	margin:
		9px
		0
		15px;
}


.zire-platform-gap-head strong {
	display: block;

	color: #1d2531;

	font-size: 17px;
}


.zire-platform-gap-head div:first-child span {
	display: block;

	margin-top: 2px;

	color: #838d9c;

	font-size: 10px;
}


.zire-platform-gap-change {
	padding:
		4px
		7px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 10px;
	font-weight: 750;
}


.zire-platform-gap-row {
	display: grid;

	grid-template-columns:
		84px
		1fr
		25px;

	align-items: center;

	gap: 8px;

	padding:
		7px
		0;
}


.zire-platform-gap-row > span {
	color: #616d7f;

	font-size: 10px;
}


.zire-platform-gap-row > div {
	height: 5px;

	overflow: hidden;

	border-radius: 999px;

	background: #edf0f5;
}


.zire-platform-gap-row i {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


.zire-platform-gap-row > strong {
	color: #252c37;

	font-size: 10px;

	text-align: right;
}


/* Sources */

.zire-platform-sources-title {
	display: block;

	margin:
		8px
		0
		12px;

	color: #202733;

	font-size: 13px;
}


.zire-platform-source-row {
	display: grid;

	grid-template-columns:
		27px
		1fr
		auto;

	align-items: center;

	gap: 8px;

	padding:
		9px
		0;

	border-top:
		1px
		solid
		#edf0f4;
}


.zire-platform-source-row__rank {
	width: 25px;
	height: 25px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 7px;

	background: #f0f3ff;

	color: #315efb;

	font-size: 10px;
	font-weight: 800;
}


.zire-platform-source-row > div strong {
	display: block;

	color: #303845;

	font-size: 10px;
}


.zire-platform-source-row > div span {
	display: block;

	color: #949ca8;

	font-size: 10px;
}


.zire-platform-source-row > strong {
	color: #222a35;

	font-size: 11px;

	text-align: right;
}


.zire-platform-source-row > strong small {
	display: block;

	color: #9aa2ae;

	font-size: 10px;
	font-weight: 500;
}


/* Floating insight */

.zire-platform-intel-insight {
	position: absolute;

	left: 50%;

	bottom: -38px;

	transform:
		translateX(-50%);

	width: 310px;

	display: grid;

	grid-template-columns:
		36px
		1fr;

	align-items: center;

	gap: 10px;

	padding:
		12px;

	border:
		1px
		solid
		#dfe5f5;

	border-radius: 12px;

	background:
		rgba(255, 255, 255, .96);

	box-shadow:
		0 16px 38px
		rgba(34, 49, 86, .13);
}


.zire-platform-intel-insight > span {
	width: 35px;
	height: 35px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: #eeeaff;

	color: #7657e8;
}


.zire-platform-intel-insight small {
	display: block;

	color: #8c75dd;

	font-size: 10px;
	font-weight: 800;

	text-transform: uppercase;
}


.zire-platform-intel-insight strong {
	display: block;

	margin-top: 2px;

	color: #252d39;

	font-size: 11px;
}


/* =========================================================
   INSIGHT → ACTION FLOW
   ========================================================= */

.zire-platform-insight-flow {
	position: relative;

	z-index: 2;

	max-width: 1040px;

	margin:
		145px
		auto
		0;

	padding:
		36px
		40px;

	border:
		1px
		solid
		#e0e5f2;

	border-radius: 22px;

	background:
		linear-gradient(
			135deg,
			rgba(247, 249, 255, .94),
			rgba(247, 244, 255, .94)
		);

	box-shadow:
		0 24px 60px
		rgba(35, 50, 88, .07);
}


.zire-platform-insight-flow__line {
	position: absolute;

	left: 8%;
	right: 8%;

	top: 50%;

	height: 1px;

	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(49, 94, 251, .28),
			rgba(118, 87, 232, .35),
			rgba(49, 94, 251, .24),
			transparent
		);
}


.zire-platform-insight-flow__label {
	position: absolute;

	left: 50%;
	top: -13px;

	transform:
		translateX(-50%);

	padding:
		6px
		10px;

	border:
		1px
		solid
		#dfe5f3;

	border-radius: 999px;

	background: #ffffff;

	color: #315efb;

	font-size: 11px;
	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: .07em;
}


.zire-platform-insight-flow__items {
	position: relative;
	z-index: 2;

	display: flex;

	justify-content: center;

	flex-wrap: wrap;

	gap: 7px;

	margin-bottom: 24px;
}


.zire-platform-insight-flow__items > div,
.zire-platform-insight-flow__output span {
	padding:
		7px
		10px;

	border:
		1px
		solid
		#dfe4ef;

	border-radius: 999px;

	background: #ffffff;

	color: #657084;

	font-size: 11px;
	font-weight: 700;

	box-shadow:
		0 5px 15px
		rgba(35, 48, 78, .04);
}


.zire-platform-insight-flow__core {
	position: relative;
	z-index: 3;

	width: fit-content;

	max-width: 460px;

	margin:
		0
		auto;

	padding:
		17px
		25px;

	border:
		1.5px
		solid
		transparent;

	border-radius: 15px;

	background:
		linear-gradient(
			#ffffff,
			#ffffff
		)
		padding-box,

		linear-gradient(
			135deg,
			#315efb,
			#a48cf5,
			#7657e8
		)
		border-box;

	text-align: center;

	box-shadow:
		0 15px 38px
		rgba(47, 65, 115, .11);
}


.zire-platform-insight-flow__core > div {
	width: 38px;
	height: 38px;

	display: flex;

	align-items: center;
	justify-content: center;

	margin:
		0
		auto
		7px;

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#eee9ff
		);

	color: #7657e8;
}


.zire-platform-insight-flow__core strong {
	display: block;

	color: #202733;

	font-size: 12px;
}


.zire-platform-insight-flow__core small {
	display: block;

	margin-top: 3px;

	color: #8993a2;

	font-size: 10px;
}


.zire-platform-insight-flow__output {
	position: relative;
	z-index: 2;

	display: flex;

	justify-content: center;

	flex-wrap: wrap;

	gap: 7px;

	margin-top: 24px;
}


.zire-platform-insight-flow__output span {
	border-color:
		#d8e0ff;

	color: #315efb;

	background: #f8f9ff;
}


/* =========================================================
   IMPROVE VISUAL
   ========================================================= */

.zire-platform-improve-visual {
	position: relative;
}


.zire-platform-improve-window {
	padding: 20px;

	border:
		1.5px
		solid
		transparent;

	border-radius: 18px;

	background:
		linear-gradient(
			#ffffff,
			#ffffff
		)
		padding-box,

		linear-gradient(
			135deg,
			#849fff 0%,
			#b59cff 44%,
			#7657e8 77%,
			#7e98ff 100%
		)
		border-box;

	box-shadow:
		0 28px 68px
		rgba(36, 51, 88, .12);
}


.zire-platform-improve-window__head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 20px;

	margin-bottom: 16px;
}


.zire-platform-improve-window__head > div > span {
	display: block;

	color: #9099a7;

	font-size: 11px;
	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: .07em;
}


.zire-platform-improve-window__head strong {
	display: block;

	margin-top: 2px;

	color: #202733;

	font-size: 14px;
}


.zire-platform-improve-window__count {
	padding:
		5px
		8px;

	border-radius: 999px;

	background: #eef8f3;

	color: #07885f;

	font-size: 11px;
	font-weight: 750;
}


/* Primary recommendation */

.zire-platform-recommendation-primary {
	padding: 17px;

	border:
		1px
		solid
		#e1e6f2;

	border-radius: 13px;

	background:
		linear-gradient(
			135deg,
			#fbfcff,
			#f8f6ff
		);
}


.zire-platform-recommendation-primary__top {
	display: grid;

	grid-template-columns:
		39px
		1fr
		auto;

	align-items: center;

	gap: 11px;
}


.zire-platform-recommendation-primary__icon {
	width: 39px;
	height: 39px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 10px;

	background:
		#eee9ff;

	color: #7657e8;

	font-size: 14px;
}


.zire-platform-recommendation-primary__top div span {
	display: block;

	color: #7c69c7;

	font-size: 10px;
	font-weight: 800;

	text-transform: uppercase;
}


.zire-platform-recommendation-primary__top div strong {
	display: block;

	margin-top: 2px;

	color: #202733;

	font-size: 12px;
}


.zire-platform-recommendation-primary__top > small {
	padding:
		4px
		7px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 10px;
	font-weight: 750;
}


.zire-platform-recommendation-primary > p {
	margin:
		13px
		0;

	color: #6f7989;

	font-size: 12px;

	line-height: 1.55;
}


.zire-platform-recommendation-primary__signals {
	display: flex;

	flex-wrap: wrap;

	gap: 6px;

	margin-bottom: 12px;
}


.zire-platform-recommendation-primary__signals span {
	padding:
		5px
		7px;

	border:
		1px
		solid
		#e0e5ef;

	border-radius: 999px;

	background: #ffffff;

	color: #667185;

	font-size: 10px;
	font-weight: 700;
}


.zire-platform-recommendation-primary__action {
	display: grid;

	grid-template-columns:
		1fr
		auto;

	align-items: center;

	gap: 4px
		12px;

	padding:
		10px
		12px;

	border-radius: 9px;

	background:
		linear-gradient(
			135deg,
			#eef2ff,
			#f2edff
		);
}


.zire-platform-recommendation-primary__action > span:first-child {
	grid-column:
		1
		/
		3;

	color: #7460c5;

	font-size: 10px;
	font-weight: 800;

	text-transform: uppercase;
}


.zire-platform-recommendation-primary__action strong {
	color: #303847;

	font-size: 12px;
}


.zire-platform-recommendation-primary__action > span:last-child {
	color: #315efb;
}


/* Lower cards */

.zire-platform-improve-window__lower {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 10px;

	margin-top: 10px;
}


.zire-platform-improve-small-card {
	padding: 14px;

	border:
		1px
		solid
		#e6eaf1;

	border-radius: 11px;

	background: #ffffff;
}


.zire-platform-improve-small-card > div:first-child {
	display: flex;

	align-items: center;

	gap: 8px;

	margin-bottom: 9px;
}


.zire-platform-improve-small-card > div:first-child > span {
	width: 28px;
	height: 28px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	font-size: 12px;
	font-weight: 800;
}


.zire-platform-improve-small-card .is-blue {
	background: #edf2ff;

	color: #315efb;
}


.zire-platform-improve-small-card .is-purple {
	background: #f0ebff;

	color: #7657e8;
}


.zire-platform-improve-small-card > div:first-child small {
	color: #87909f;

	font-size: 10px;
	font-weight: 750;

	text-transform: uppercase;
}


.zire-platform-improve-small-card > strong {
	display: block;

	color: #222a35;

	font-size: 13px;
}


.zire-platform-improve-small-card > p {
	margin:
		6px
		0
		10px;

	color: #838c99;

	font-size: 12px;

	line-height: 1.5;
}


.zire-platform-improve-progress > span {
	color: #8e97a4;

	font-size: 10px;
}


.zire-platform-improve-progress > strong {
	float: right;

	color: #313946;

	font-size: 11px;
}


.zire-platform-improve-progress > div {
	clear: both;

	height: 5px;

	margin-top: 5px;

	overflow: hidden;

	border-radius: 999px;

	background: #edf0f5;
}


.zire-platform-improve-progress i {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


.zire-platform-improve-sources {
	display: flex;

	flex-wrap: wrap;

	gap: 5px;
}


.zire-platform-improve-sources span {
	padding:
		4px
		6px;

	border-radius: 6px;

	background: #f3f5f9;

	color: #687386;

	font-size: 10px;
}


/* Content score */

.zire-platform-content-score {
	display: grid;

	grid-template-columns:
		minmax(130px, .8fr)
		1fr
		auto;

	align-items: center;

	gap: 15px;

	margin-top: 10px;

	padding:
		13px
		14px;

	border:
		1px
		solid
		#e5e9f1;

	border-radius: 10px;

	background: #fafbfc;
}


.zire-platform-content-score > div:first-child span {
	display: block;

	color: #8e97a5;

	font-size: 10px;
	font-weight: 750;

	text-transform: uppercase;
}


.zire-platform-content-score > div:first-child strong {
	display: block;

	margin-top: 2px;

	color: #29313d;

	font-size: 11px;
}


.zire-platform-content-score__bar > span {
	color: #1f2631;

	font-size: 13px;
	font-weight: 750;
}


.zire-platform-content-score__bar > span small {
	color: #929ba8;

	font-size: 10px;
}


.zire-platform-content-score__bar > div {
	height: 5px;

	margin-top: 5px;

	overflow: hidden;

	border-radius: 999px;

	background: #e9edf2;
}


.zire-platform-content-score__bar i {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


.zire-platform-content-score__change {
	padding:
		5px
		7px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 10px;
	font-weight: 750;
}


/* Floating confirmation */

.zire-platform-improve-float {
	position: absolute;

	right: -27px;
	bottom: -46px;

	display: flex;

	align-items: center;

	gap: 9px;

	padding:
		11px
		13px;

	border:
		1px
		solid
		#dfe5f0;

	border-radius: 11px;

	background:
		rgba(255, 255, 255, .97);

	box-shadow:
		0 18px 42px
		rgba(37, 51, 84, .14);
}


.zire-platform-improve-float > span {
	width: 31px;
	height: 31px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #eaf8f2;

	color: #07885f;
}


.zire-platform-improve-float small {
	display: block;

	color: #9098a5;

	font-size: 10px;

	text-transform: uppercase;
}


.zire-platform-improve-float strong {
	display: block;

	color: #252d38;

	font-size: 11px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

	.zire-platform-stage,
	.zire-platform-stage--improve {
		grid-template-columns: 1fr;

		gap: 70px;
	}


	.zire-platform-stage--understand
	.zire-platform-stage__copy {
		grid-row: 1;
	}


	.zire-platform-stage--understand
	.zire-platform-understand-visual {
		grid-row: 2;
	}


	.zire-platform-stage__copy {
		max-width: 800px;
	}


	.zire-platform-understand-visual,
	.zire-platform-improve-visual {
		max-width: 820px;
	}

}


@media (max-width: 700px) {

	.zire-platform-intelligence {
		padding:
			85px
			18px
			95px;
	}


	.zire-platform-stage h2 {
		font-size: 44px;

		letter-spacing: -2px;
	}


	.zire-platform-stage__lead {
		font-size: 15px;
	}


	.zire-platform-understand-visual {
		grid-template-columns: 1fr;
	}


	.zire-platform-intel-card--score {
		grid-column: 1;
	}


	.zire-platform-score-layout {
		grid-template-columns: 1fr;

		justify-items: center;
	}


	.zire-platform-score-breakdown {
		width: 100%;
	}


	.zire-platform-intel-insight {
		position: relative;

		left: auto;
		bottom: auto;

		transform: none;

		width: 100%;

		grid-column: 1;
	}


	.zire-platform-insight-flow {
		margin-top: 80px;

		padding:
			35px
			18px;
	}


	.zire-platform-improve-window__lower,
	.zire-platform-content-score {
		grid-template-columns: 1fr;
	}


	.zire-platform-improve-float {
		display: none;
	}

}

/* =========================================================
   UNDERSTAND — CONTENT INTELLIGENCE
   ========================================================= */

.zire-platform-understand-visual {
	position: relative;

	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 14px;
}


.zire-platform-understand-card {
	min-width: 0;

	padding: 20px;

	border:
		1.5px
		solid
		transparent;

	border-radius: 16px;

	background:
		linear-gradient(
			#ffffff,
			#ffffff
		)
		padding-box,

		linear-gradient(
			135deg,
			#89a3ff,
			#b29aff 48%,
			#7657e8 78%,
			#829aff
		)
		border-box;

	box-shadow:
		0 20px 48px
		rgba(38, 52, 88, .09);
}


.zire-platform-understand-card--winning {
	grid-column:
		1
		/
		3;
}


.zire-platform-understand-card__head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 16px;

	margin-bottom: 15px;
}


.zire-platform-understand-card__head > div > span {
	display: block;

	margin-bottom: 3px;

	color: #7c86a0;

	font-size: 12px;
	font-weight: 800;

	letter-spacing: .06em;

	text-transform: uppercase;
}


.zire-platform-understand-card__head strong {
	display: block;

	color: #202733;

	font-size: 14px;

	line-height: 1.35;
}


.zire-platform-understand-card__count {
	padding:
		5px
		8px;

	border-radius: 999px;

	background: #eef2ff;

	color: #315efb;

	font-size: 11px;
	font-weight: 750;

	white-space: nowrap;
}


/* Prompt */

.zire-platform-understand-prompt {
	padding:
		11px
		13px;

	margin-bottom: 12px;

	border:
		1px
		solid
		#e3e8f2;

	border-radius: 10px;

	background:
		linear-gradient(
			135deg,
			#f8faff,
			#faf8ff
		);
}


.zire-platform-understand-prompt span {
	display: block;

	margin-bottom: 3px;

	color: #8b75d7;

	font-size: 11px;

	font-weight: 800;

	text-transform: uppercase;
}


.zire-platform-understand-prompt strong {
	color: #303847;

	font-size: 12px;
}


/* Winning content */

.zire-platform-winning-list {
	display: grid;
}


.zire-platform-winning-list > div {
	display: grid;

	grid-template-columns:
		30px
		minmax(0, 1fr)
		auto;

	align-items: center;

	gap: 10px;

	padding:
		10px
		0;

	border-top:
		1px
		solid
		#edf0f4;
}


.zire-platform-winning-list__rank {
	width: 28px;
	height: 28px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #eef2ff;

	color: #315efb;

	font-size: 11px;
	font-weight: 800;
}


.zire-platform-winning-list div div strong {
	display: block;

	color: #242c37;

	font-size: 13px;
}


.zire-platform-winning-list div div span {
	display: block;

	margin-top: 2px;

	color: #858f9f;

	font-size: 12px;
}


.zire-platform-winning-list > div > span:last-child {
	color: #667184;

	font-size: 12px;

	font-weight: 700;
}


/* Strategy */

.zire-platform-strategy-grid {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 8px;
}


.zire-platform-strategy-grid > div {
	padding: 11px;

	border:
		1px
		solid
		#e7eaf1;

	border-radius: 10px;

	background:
		#fafbfe;
}


.zire-platform-strategy-grid > div > span {
	display: inline-flex;

	margin-bottom: 7px;

	padding:
		4px
		6px;

	border-radius: 6px;

	background: #edf2ff;

	color: #315efb;

	font-size: 11px;
	font-weight: 800;
}


.zire-platform-strategy-grid strong {
	display: block;

	color: #29313e;

	font-size: 13px;
}


.zire-platform-strategy-grid small {
	display: block;

	margin-top: 3px;

	color: #8993a2;

	font-size: 12px;

	line-height: 1.4;
}


/* Formats */

.zire-platform-format-pills {
	display: flex;

	flex-wrap: wrap;

	gap: 7px;
}


.zire-platform-format-pills > span {
	display: flex;

	align-items: center;

	gap: 6px;

	padding:
		7px
		9px;

	border:
		1px
		solid
		#e0e5f1;

	border-radius: 999px;

	background: #fafbff;

	color: #4f5a6c;

	font-size: 11px;
	font-weight: 700;
}


.zire-platform-format-pills small {
	padding:
		2px
		5px;

	border-radius: 999px;

	background: #edf2ff;

	color: #315efb;

	font-size: 10px;
}


.zire-platform-format-summary {
	display: grid;

	grid-template-columns:
		32px
		1fr;

	align-items: center;

	gap: 9px;

	margin-top: 15px;

	padding:
		11px;

	border-radius: 10px;

	background:
		linear-gradient(
			135deg,
			#eef2ff,
			#f1edff
		);
}


.zire-platform-format-summary > span {
	width: 31px;
	height: 31px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #ffffff;

	color: #7657e8;
}


.zire-platform-format-summary p {
	margin: 0;

	color: #596477;

	font-size: 12px;

	line-height: 1.5;
}

/* =========================================================
   UNDERSTAND → IMPROVE TRANSITION
   ========================================================= */

.zire-platform-transition {
	position: relative;

	z-index: 2;

	max-width: 1160px;

	margin:
		135px
		auto
		30px;
}
.zire-platform-transition__shape {
	position: absolute;

	right: -208px;
  top: 17%;
	width: 430px;
	height: 430px;

	transform:
		translateY(-50%);

	opacity: .22;

	pointer-events: none;

	z-index: 0;
}



.zire-platform-transition__line,
.zire-platform-transition__side,
.zire-platform-transition__core {
	position: relative;
	z-index: 2;
}

.zire-platform-transition {
	position: relative;

	z-index: 2;

	max-width: 1160px;

	margin:
		135px
		auto
		30px;
}


.zire-platform-transition__track {
	position: relative;

	display: grid;

	grid-template-columns:
		1fr
		340px
		1fr;

	align-items: center;

	gap: 38px;

	padding:
		45px
		46px;

	border:
		1px
		solid
		#dfe5f2;

	border-radius: 24px;

	background:
		linear-gradient(
			135deg,
			rgba(248, 250, 255, .97),
			rgba(245, 243, 255, .98)
		);

	box-shadow:
		0 25px 65px
		rgba(38, 53, 93, .08);

	overflow: hidden;

	isolation: isolate;
}

/* subtle colour field */

.zire-platform-transition__track::before {
	content: "";

	position: absolute;

	width: 520px;
	height: 520px;

	left: 50%;
	top: 50%;

	transform:
		translate(-50%, -50%);

	border-radius: 50%;

	background:
		radial-gradient(
			circle,
			rgba(92, 102, 255, .13),
			rgba(118, 87, 232, .055) 42%,
			transparent 70%
		);

	pointer-events: none;
}


/* horizontal connection */

.zire-platform-transition__line {
	position: absolute;

	left: 10%;
	right: 10%;

	top: 50%;

	height: 2px;

	background:
		linear-gradient(
			90deg,
			transparent,
			#7c95ff 20%,
			#315efb 42%,
			#7657e8 58%,
			#a087ef 80%,
			transparent
		);

	opacity: .5;
}


/* side groups */

.zire-platform-transition__side {
	position: relative;

	z-index: 2;
}


.zire-platform-transition__side--output {
	text-align: right;
}


.zire-platform-transition__step {
	display: inline-flex;

	align-items: center;
	justify-content: center;

	width: 35px;
	height: 35px;

	margin-bottom: 9px;

	border-radius: 9px;

	background: #ffffff;

	border:
		1px
		solid
		#dce3f5;

	color: #315efb;

	font-size: 12px;
	font-weight: 800;

	box-shadow:
		0 7px 20px
		rgba(37, 54, 93, .07);
}


.zire-platform-transition__side > strong {
	display: block;

	margin-bottom: 13px;

	color: #28313e;

	font-size: 13px;
}


.zire-platform-transition__pills {
	display: flex;

	flex-wrap: wrap;

	gap: 7px;
	margin-top: 35px;
}


.zire-platform-transition__side--output
.zire-platform-transition__pills {
	justify-content: flex-end;
}


.zire-platform-transition__pills span {
	padding:
		7px
		9px;

	border:
		1px
		solid
		#dde3ef;

	border-radius: 999px;

	background:
		rgba(255, 255, 255, .95);

	color: #5c687a;

	font-size: 12px;
	font-weight: 700;

	box-shadow:
		0 5px 14px
		rgba(38, 52, 86, .04);
}


/* central Zire intelligence */

.zire-platform-transition__core {
	position: relative;

	z-index: 4;

	padding:
		25px
		24px;

	border:
		1.5px
		solid
		transparent;

	border-radius: 18px;

	background:
		linear-gradient(
			#ffffff,
			#ffffff
		)
		padding-box,

		linear-gradient(
			135deg,
			#315efb,
			#9c82f2,
			#7657e8
		)
		border-box;

	box-shadow:
		0 20px 46px
		rgba(53, 64, 127, .13);

	text-align: center;
}


.zire-platform-transition__diamond {
	width: 48px;
	height: 48px;

	display: flex;

	align-items: center;
	justify-content: center;

	margin:
		0
		auto
		10px;

	transform:
		rotate(45deg);

	border-radius: 12px;

	background:
		linear-gradient(
			135deg,
			#315efb,
			#7657e8
		);

	box-shadow:
		0 10px 28px
		rgba(76, 84, 218, .23);
}


.zire-platform-transition__diamond span {
	transform:
		rotate(-45deg);

	color: #ffffff;

	font-size: 17px;
}


.zire-platform-transition__core > small {
	display: block;

	margin-bottom: 4px;

	color: #7657e8;

	font-size: 12px;
	font-weight: 800;

	letter-spacing: .06em;

	text-transform: uppercase;
}


.zire-platform-transition__core > strong {
	display: block;

	color: #202733;

	font-size: 17px;

	line-height: 1.3;
}


.zire-platform-transition__core p {
	margin:
		7px
		0
		0;

	color: #758092;

	font-size: 13px;

	line-height: 1.55;
}


/* downward handoff */

.zire-platform-transition__next {
	position: relative;

	width: fit-content;

	margin:
		25px
		auto
		0;

	display: flex;

	align-items: center;

	gap: 8px;

	color: #315efb;

	font-size: 13px;
	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: .07em;
}


.zire-platform-transition__next > span {
	width: 32px;
	height: 32px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #ffffff;

	border:
		1px
		solid
		#dbe2f4;
}


.zire-platform-transition__next > div {
	font-size: 16px;

	color: #7657e8;
}


/* Responsive */

@media (max-width: 900px) {

	.zire-platform-transition__track {
		grid-template-columns: 1fr;

		text-align: center;
	}


	.zire-platform-transition__line {
		top: 10%;
		bottom: 10%;

		left: 50%;

		width: 2px;
		height: auto;
	}


	.zire-platform-transition__side--output {
		text-align: center;
	}


	.zire-platform-transition__pills,
	.zire-platform-transition__side--output
	.zire-platform-transition__pills {
		justify-content: center;
	}

}


@media (max-width: 700px) {

	.zire-platform-understand-visual {
		grid-template-columns: 1fr;
	}


	.zire-platform-understand-card--winning {
		grid-column: 1;
	}


	.zire-platform-strategy-grid {
		grid-template-columns: 1fr;
	}


	.zire-platform-transition {
		margin-top: 85px;
	}


	.zire-platform-transition__track {
		padding:
			35px
			18px;

		gap: 28px;
	}

}

/* =========================================================
   MORE PLATFORM FEATURES
   ========================================================= */

.zire-platform-more {
	position: relative;

	z-index: 2;

	padding:
		85px
		0
		30px;

	background: transparent;

	isolation: isolate;
}


.zire-platform-more__glow {
	position: absolute;

	z-index: -1;

	border-radius: 50%;

	pointer-events: none;
}


.zire-platform-more__glow--one {
	width: 620px;
	height: 620px;

	right: -350px;
	top: -210px;

	background:
		radial-gradient(
			circle,
			rgba(49, 94, 251, .08),
			transparent 68%
		);
}


.zire-platform-more__glow--two {
	width: 580px;
	height: 580px;

	left: -330px;
	bottom: -300px;

	background:
		radial-gradient(
			circle,
			rgba(118, 87, 232, .07),
			transparent 68%
		);
}


.zire-platform-more__heading {
	max-width: 810px;

	margin-bottom: 55px;
}


.zire-platform-more__heading h2 {
	margin:
		17px
		0
		18px;

	color: #121722;

	font-size:
		clamp(
			44px,
			4.5vw,
			64px
		);

	font-weight: 735;

	line-height: 1.03;

	letter-spacing: -3px;
}


.zire-platform-more__heading h2 span {
	display: block;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
}


.zire-platform-more__heading > p {
	max-width: 700px;

	margin: 0;

	color: #687386;

	font-size: 16px;

	line-height: 1.7;
}


/* Grid */

.zire-platform-more__grid {
	display: grid;

	grid-template-columns:
		repeat(
			3,
			minmax(0, 1fr)
		);

	gap: 15px;
}


.zire-platform-feature-card {
	position: relative;

	display: flex;
	flex-direction: column;

	min-height: 365px;

	padding: 23px;

	border:
		1px
		solid
		#e2e6ef;

	border-radius: 16px;

	background:
		rgba(255, 255, 255, .94);

	box-shadow:
		0 16px 42px
		rgba(35, 49, 82, .055);

	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}


.zire-platform-feature-card:hover {
	transform:
		translateY(-4px);

	border-color:
		#cad5ff;

	box-shadow:
		0 22px 52px
		rgba(35, 49, 82, .09);
}


.zire-platform-feature-card__top {
	display: flex;

	align-items: center;
	justify-content: space-between;

	margin-bottom: 18px;
}


.zire-platform-feature-card__icon {
	width: 42px;
	height: 42px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#eef2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 14px;
	font-weight: 800;
}


.zire-platform-feature-card__arrow {
	color: #315efb;

	font-size: 14px;
}


.zire-platform-feature-card h3 {
	margin:
		0
		0
		8px;

	color: #1e2530;

	font-size: 19px;
}


.zire-platform-feature-card > p {
	margin:
		0
		0
		22px;

	color: #707b8c;

	font-size: 13px;

	line-height: 1.6;
}


/* Shared mini UI */

.zire-platform-mini {
	margin-top: auto;

	padding: 14px;

	border:
		1px
		solid
		#e7eaf1;

	border-radius: 11px;

	background:
		linear-gradient(
			145deg,
			#fafbfe,
			#f7f8fc
		);
}


/* Topics */

.zire-platform-mini--topics {
	display: flex;

	flex-wrap: wrap;

	gap: 6px;
}


.zire-platform-mini--topics > span {
	padding:
		5px
		7px;

	border-radius: 999px;

	background: #ffffff;

	border:
		1px
		solid
		#e1e6ef;

	color: #617086;

	font-size: 12px;
	font-weight: 700;
}


.zire-platform-mini__topic-score {
	width: 100%;

	display: flex;

	align-items: flex-end;
	justify-content: space-between;

	margin-top: 12px;

	padding-top: 11px;

	border-top:
		1px
		solid
		#e5e9f0;
}


.zire-platform-mini__topic-score strong {
	color: #202733;

	font-size: 18px;
}


.zire-platform-mini__topic-score small {
	color: #8792a2;

	font-size: 11px;
}


/* Competitors */

.zire-platform-mini--competitors {
	display: grid;

	gap: 11px;
}


.zire-platform-mini--competitors > div {
	display: grid;

	grid-template-columns:
		80px
		1fr
		25px;

	align-items: center;

	gap: 8px;
}


.zire-platform-mini--competitors span {
	color: #606c7d;

	font-size: 12px;
}


.zire-platform-mini--competitors i {
	height: 5px;

	overflow: hidden;

	border-radius: 999px;

	background: #e8ecf2;
}


.zire-platform-mini--competitors b {
	display: block;

	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


.zire-platform-mini--competitors strong {
	font-size: 11px;
}


/* Sources */

.zire-platform-mini--sources {
	display: grid;
}


.zire-platform-mini--sources > div {
	display: grid;

	grid-template-columns:
		26px
		1fr
		auto;

	align-items: center;

	gap: 8px;

	padding:
		8px
		0;

	border-bottom:
		1px
		solid
		#e7eaf0;
}


.zire-platform-mini--sources > div:last-child {
	border-bottom: 0;
}


.zire-platform-mini--sources > div > span {
	width: 25px;
	height: 25px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 7px;

	background: #edf2ff;

	color: #315efb;

	font-size: 10px;
	font-weight: 800;
}


.zire-platform-mini--sources strong {
	color: #303845;

	font-size: 13px;
}


.zire-platform-mini--sources small {
	color: #657184;

	font-size: 11px;
	font-weight: 700;
}


/* Google */

.zire-platform-mini__search-result {
	padding:
		11px;

	border:
		1px
		solid
		#dde5ff;

	border-radius: 9px;

	background:
		#ffffff;
}


.zire-platform-mini__search-result span {
	display: block;

	color: #315efb;

	font-size: 10px;
	font-weight: 800;

	text-transform: uppercase;
}


.zire-platform-mini__search-result strong {
	display: block;

	margin:
		4px
		0
		2px;

	color: #27303c;

	font-size: 13px;
}


.zire-platform-mini__search-result small {
	color: #8791a1;

	font-size: 10px;
}


.zire-platform-mini__search-row {
	display: flex;

	align-items: center;
	justify-content: space-between;

	margin-top: 10px;

	padding:
		10px;

	border-radius: 8px;

	background: #eef2ff;
}


.zire-platform-mini__search-row span {
	color: #637086;

	font-size: 12px;
}


.zire-platform-mini__search-row strong {
	color: #315efb;

	font-size: 13px;
}


/* Actions */

.zire-platform-mini--actions {
	display: grid;

	gap: 8px;
}


.zire-platform-mini--actions > div {
	display: grid;

	grid-template-columns:
		28px
		1fr;

	align-items: center;

	gap: 9px;
}


.zire-platform-mini--actions > div > span {
	width: 27px;
	height: 27px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 7px;

	background: #eef2ff;

	color: #315efb;

	font-size: 10px;
	font-weight: 800;
}


.zire-platform-mini--actions > div > .is-done {
	background: #eaf8f2;

	color: #07885f;
}


.zire-platform-mini--actions strong {
	display: block;

	color: #303844;

	font-size: 13px;
}


.zire-platform-mini--actions small {
	display: block;

	color: #9099a6;

	font-size: 11px;
}


/* Reports */

.zire-platform-mini__report-kpis {
	display: grid;

	grid-template-columns:
		repeat(3, 1fr);

	gap: 7px;
}


.zire-platform-mini__report-kpis > div {
	padding: 8px;

	border-radius: 8px;

	background: #ffffff;
}


.zire-platform-mini__report-kpis strong {
	display: block;

	color: #202733;

	font-size: 13px;
}


.zire-platform-mini__report-kpis span {
	color: #8b95a3;

	font-size: 12px;
}


.zire-platform-mini--reports svg {
	width: 100%;
	height: 65px;

	margin-top: 9px;
}


/* =========================================================
   FAQ
   ========================================================= */

.zire-platform-faq {
	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		105px
		24px
		75px;

	background: #ffffff;
}


.zire-platform-faq__layout {
	display: grid;

	grid-template-columns:
		.72fr
		1.28fr;

	align-items: start;

	gap: 100px;
}


.zire-platform-faq__heading {
	position: sticky;

	top: 125px;
}


.zire-platform-faq__heading h2 {
	margin:
		17px
		0;

	color: #141923;

	font-size:
		clamp(
			42px,
			4.3vw,
			61px
		);

	font-weight: 735;

	line-height: 1.03;

	letter-spacing: -3px;
}


.zire-platform-faq__heading h2 span {
	display: block;

	color: #315efb;
}


.zire-platform-faq__heading > p {
	max-width: 470px;

	color: #707a8a;

	font-size: 15px;

	line-height: 1.7;
}


.zire-platform-faq__items {
	border-top:
		1px
		solid
		#e4e8ef;
}


.zire-platform-faq details {
	border-bottom:
		1px
		solid
		#e4e8ef;
}


.zire-platform-faq summary {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 20px;

	padding:
		20px
		3px;

	cursor: pointer;

	color: #202732;

	font-size: 14px;
	font-weight: 700;

	list-style: none;
}


.zire-platform-faq summary::-webkit-details-marker {
	display: none;
}


.zire-platform-faq summary > span {
	width: 28px;
	height: 28px;

	display: flex;

	align-items: center;
	justify-content: center;

	flex: 0 0 auto;

	border-radius: 8px;

	background: #f0f3ff;

	color: #315efb;

	font-size: 15px;

	transition:
		transform .2s ease;
}


.zire-platform-faq details[open] summary > span {
	transform:
		rotate(45deg);
}


.zire-platform-faq details > div {
	padding:
		0
		50px
		20px
		3px;
}


.zire-platform-faq details p {
	max-width: 760px;

	margin: 0;

	color: #717c8c;

	font-size: 15px;

	line-height: 1.7;
}


/* =========================================================
   FINAL CTA
   ========================================================= */

.zire-platform-final {
	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding:
		15px
		24px
		85px;

	background: #ffffff;
}


.zire-platform-final__card {
	position: relative;

	overflow: hidden;

	display: grid;

	grid-template-columns:
		1fr
		auto;

	align-items: center;

	gap: 70px;

	padding:
		62px
		68px;

	border-radius: 24px;

	background:
		linear-gradient(
			145deg,
			#101625 0%,
			#17213d 50%,
			#25235c 100%
		);

	box-shadow:
		0 28px 70px
		rgba(17, 26, 50, .18);

	color: #ffffff;

	isolation: isolate;
}


.zire-platform-final__glow {
	position: absolute;

	z-index: -1;

	border-radius: 50%;

	pointer-events: none;
}


.zire-platform-final__glow--one {
	width: 500px;
	height: 500px;

	right: -220px;
	top: -300px;

	background:
		radial-gradient(
			circle,
			rgba(67, 97, 255, .45),
			transparent 68%
		);
}


.zire-platform-final__glow--two {
	width: 450px;
	height: 450px;

	left: -260px;
	bottom: -310px;

	background:
		radial-gradient(
			circle,
			rgba(118, 87, 232, .32),
			transparent 68%
		);
}


.zire-platform-final__shape {
	position: absolute;

	right: 80px;
	top: 50%;

	width: 370px;
	height: 370px;

	transform:
		translateY(-50%);

	opacity: .08;

	pointer-events: none;

	z-index: -1;
}


.zire-platform-final__copy {
	max-width: 740px;
}


.zire-platform-final__eyebrow {
	display: block;

	margin-bottom: 12px;

	color: #aab8ff;

	font-size: 12px;
	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: .075em;
}


.zire-platform-final h2 {
	margin:
		0
		0
		15px;

	color: #ffffff;

	font-size:
		clamp(
			38px,
			4vw,
			56px
		);

	font-weight: 735;

	line-height: 1.03;

	letter-spacing: -2.5px;
}


.zire-platform-final h2 span {
	color: #9eafff;
}


.zire-platform-final__copy p {
	max-width: 680px;

	margin: 0;

	color:
		rgba(255, 255, 255, .62);

	font-size: 15px;

	line-height: 1.7;
}


.zire-platform-final__action {
	position: relative;
	z-index: 2;

	min-width: 250px;

	text-align: center;
}


.zire-platform-final__action > a {
	min-height: 52px;

	display: flex;

	align-items: center;
	justify-content: center;

	gap: 10px;

	padding:
		0
		21px;

	border-radius: 10px;

	background: #ffffff;

	color: #182030;

	font-size: 12px;
	font-weight: 750;

	box-shadow:
		0 12px 30px
		rgba(0, 0, 0, .18);

	transition:
		transform .18s ease,
		box-shadow .18s ease;
}


.zire-platform-final__action > a:hover {
	transform:
		translateY(-2px);

	box-shadow:
		0 16px 35px
		rgba(0, 0, 0, .22);
}


.zire-platform-final__action small {
	display: block;

	margin-top: 10px;

	color:
		rgba(255, 255, 255, .48);

	font-size: 13px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

	.zire-platform-more__grid {
		grid-template-columns:
			1fr
			1fr;
	}


	.zire-platform-faq__layout {
		grid-template-columns: 1fr;

		gap: 55px;
	}


	.zire-platform-faq__heading {
		position: static;

		max-width: 700px;
	}


	.zire-platform-final__card {
		grid-template-columns: 1fr;

		gap: 35px;
	}


	.zire-platform-final__action {
		max-width: 330px;

		text-align: left;
	}

}


@media (max-width: 700px) {

	.zire-platform-more {
		padding:
			85px
			18px
			75px;
	}


	.zire-platform-more__heading h2,
	.zire-platform-faq__heading h2 {
		font-size: 42px;

		letter-spacing: -2px;
	}


	.zire-platform-more__grid {
		grid-template-columns: 1fr;
	}


	.zire-platform-feature-card {
		min-height: 330px;
	}


	.zire-platform-faq {
		padding:
			80px
			18px;
	}


	.zire-platform-faq summary {
		font-size: 13px;
	}


	.zire-platform-final {
		padding:
			0
			18px
			65px;
	}


	.zire-platform-final__card {
		padding:
			42px
			26px;

		border-radius: 18px;
	}


	.zire-platform-final__shape {
		right: -160px;

		opacity: .07;
	}

}

/* =========================================================
   AI VISIBILITY PAGE — PAGE-SPECIFIC STYLES ONLY
   Shared typography, buttons, stage layouts, feature cards,
   FAQs and final CTA reuse the existing Platform page CSS.
   ========================================================= */

/* The shared .zire-platform-intro supplies the hero background,
   hero typography, buttons and trial line. */
.zire-av-top {
	padding-bottom: 120px;
}


.zire-av-overview-wrap {
	max-width: 1180px;
	margin: 65px auto 0;
}

.zire-av-overview {
	padding: 27px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 38px 90px rgba(26, 39, 73, .13);
}

.zire-av-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 22px;
}

.zire-av-overview__head > div:first-child > span,
.zire-av-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-av-overview__head strong {
	color: #1d2430;
	font-size: 17px;
}

.zire-av-overview__head p,
.zire-av-card-head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-av-overview__live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-av-overview__live span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}

/* KPI */

.zire-av-overview__kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 12px;
}

.zire-av-overview__kpis > div {
	position: relative;
	padding: 15px;
	border: 1px solid #e7ebf1;
	border-radius: 11px;
	background: #fafbfe;
}

.zire-av-overview__kpis > div > span {
	display: block;
	margin-bottom: 8px;
	color: #768193;
	font-size: 12px;
}

.zire-av-overview__kpis > div > strong {
	color: #171d27;
	font-size: 25px;
	letter-spacing: -1px;
}

.zire-av-overview__kpis > div > strong small {
	color: #9da5b2;
	font-size: 11px;
}

.zire-av-overview__kpis > div > small {
	display: block;
	margin-top: 4px;
	color: #929aa7;
	font-size: 11px;
}

.zire-av-overview .is-positive {
	color: #07885f !important;
}

/* Overview main */

.zire-av-overview__main {
	display: grid;
	grid-template-columns: 1.5fr .7fr;
	gap: 12px;
}

.zire-av-overview__chart-card,
.zire-av-overview__summary {
	padding: 18px;
	border: 1px solid #e7ebf1;
	border-radius: 13px;
	background: #ffffff;
}

.zire-av-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 12px;
}

.zire-av-card-head strong {
	color: #202733;
	font-size: 12px;
}

.zire-av-card-head > small {
	padding: 4px 7px;
	border: 1px solid #e3e7ee;
	border-radius: 999px;
	color: #828c9a;
	font-size: 10px;
	white-space: nowrap;
}

/* Hero provider chart */

.zire-av-provider-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 3px 0 14px;
}

.zire-av-provider-legend > span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 8px;
	border: 1px solid #dfe5ef;
	border-radius: 999px;
	background: #fafbfe;
	color: #586477;
	font-size: 11px;
	font-weight: 700;
}

.zire-av-provider-legend i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
}

.zire-av-provider-legend .is-overall i { background: #315efb; }
.zire-av-provider-legend .is-chatgpt i { background: #6380ff; }
.zire-av-provider-legend .is-claude i { background: #db7954; }
.zire-av-provider-legend .is-gemini i { background: #d7ac13; }
.zire-av-provider-legend .is-perplexity i { background: #16877e; }
.zire-av-provider-legend .is-grok i { background: #273247; }

.zire-av-chart {
	position: relative;
	height: 270px;
}

.zire-av-chart--providers {
	height: 300px;
}

.zire-av-chart__grid,
.zire-av-progress-chart__grid {
	position: absolute;
	inset: 0 0 22px;
	background:
		linear-gradient(to right, rgba(35, 48, 71, .045) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 14.285% 100%, 100% 25%;
}

.zire-av-chart svg {
	position: absolute;
	inset: 6px 0 22px;
	width: 100%;
	height: calc(100% - 28px);
}

.zire-av-chart__start,
.zire-av-chart__end {
	position: absolute;
	bottom: 0;
	color: #9ba3af;
	font-size: 10px;
}

.zire-av-chart__start { left: 0; }
.zire-av-chart__end { right: 0; }

/* Summary */

.zire-av-summary-list {
	display: grid;
}

.zire-av-summary-list > div {
	display: grid;
	grid-template-columns: 32px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 11px 0;
	border-top: 1px solid #edf0f4;
}

.zire-av-summary-icon {
	width: 31px;
	height: 31px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: linear-gradient(145deg, #edf2ff, #f1edff);
	color: #315efb;
}

.zire-av-summary-list strong {
	display: block;
	color: #2b333e;
	font-size: 12px;
}

.zire-av-summary-list small {
	display: block;
	color: #9099a6;
	font-size: 11px;
}

.zire-av-summary-list > div > span:last-child {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f2f4f7;
	color: #7b8594;
	font-size: 10px;
	font-weight: 700;
}

.zire-av-overview__opportunity {
	display: grid;
	grid-template-columns: 32px 1fr auto;
	align-items: center;
	gap: 9px;
	margin-top: 12px;
	padding: 11px;
	border: 1px solid #dfe5f5;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef2ff, #f2edff);
}

.zire-av-overview__opportunity > span:first-child { color: #7657e8; }

.zire-av-overview__opportunity small {
	display: block;
	color: #816fce;
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 800;
}

.zire-av-overview__opportunity strong {
	color: #313946;
	font-size: 11px;
}

/* =========================================================

/* =========================================================
   AI PROVIDERS
   ========================================================= */

.zire-av-providers {
	padding-top: 115px;
}

.zire-av-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-av-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-av-providers__heading .zire-platform-intro__eyebrow {
	margin-bottom: 20px;
}

.zire-av-providers__heading h2 {
	margin-left: auto;
	margin-right: auto;
}

.zire-av-providers__heading .zire-platform-stage__lead {
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.zire-av-providers__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 12px;
}

.zire-av-providers__grid > a {
	min-height: 270px;
	display: flex;
	flex-direction: column;
	padding: 20px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 14px 36px rgba(34, 48, 80, .05);
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.zire-av-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34, 48, 80, .09);
}

.zire-av-providers__grid > a > div {
	height: 46px;
	display: flex;
	align-items: center;
	margin-bottom: 14px;
}

.zire-av-providers__grid img {
	max-width: 105px;
	max-height: 28px;
}

.zire-av-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 19px;
}

.zire-av-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 13px;
	line-height: 1.6;
}

.zire-av-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-av-providers__more {
	margin-top: 22px;
	text-align: center;
}

.zire-av-providers__more a {
	color: #315efb;
	font-size: 15px;
	font-weight: 750;
}


/* =========================================================
   AI VISIBILITY SCORE — UNIQUE VISUAL
   Dark section shell/copy reuse .zire-platform-monitor-dark.
   ========================================================= */

.zire-av-score__shape {
	left: auto;
	right: -120px;
	top: 50%;
	width: 510px;
	transform: translateY(-50%);
	opacity: .12;
}


.zire-av-score__points {
	display: grid;
	gap: 8px;
	margin: 28px 0;
}

.zire-av-score__points > div {
	display: grid;
	grid-template-columns: 38px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .038);
}

.zire-av-score__points > div > span {
	width: 37px;
	height: 37px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98, 121, 255, .15);
	color: #aab8ff;
}

.zire-av-score__points strong {
	display: block;
	color: #ffffff;
	font-size: 13px;
}

.zire-av-score__points small {
	display: block;
	color: rgba(255, 255, 255, .43);
	font-size: 11px;
}

.zire-av-score__link {
	color: #aebaff;
	font-size: 13px;
	font-weight: 750;
}

.zire-av-score-card {
	padding: 24px;
	border: 2px solid var(--zire-blue);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 35px 80px rgba(0, 0, 0, .22);
	color: #1c2430;
}

.zire-av-score-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 22px;
}

.zire-av-score-card__head span {
	display: block;
	color: #8c96a5;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-av-score-card__head strong {
	color: #232b36;
	font-size: 13px;
}

.zire-av-score-card__head > small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #f1f3f7;
	color: #818b9a;
	font-size: 10px;
}

.zire-av-score-card__main {
	display: grid;
	grid-template-columns: 190px 1fr;
	align-items: center;
	gap: 30px;
}

.zire-av-score-ring {
	position: relative;
	width: 180px;
	height: 180px;
}

.zire-av-score-ring svg {
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}

.zire-av-score-ring__track,
.zire-av-score-ring__value {
	fill: none;
	stroke-width: 10;
}

.zire-av-score-ring__track { stroke: #ebeff4; }
.zire-av-score-ring__value { stroke: #315efb; stroke-linecap: round; }

.zire-av-score-ring > div {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.zire-av-score-ring strong {
	color: #161c29;
	font-size: 38px;
}

.zire-av-score-ring strong small {
	color: #9aa2af;
	font-size: 12px;
}

.zire-av-score-ring span {
	color: #758092;
	font-size: 11px;
}

.zire-av-score-card__breakdown {
	display: grid;
	gap: 13px;
}

.zire-av-score-card__breakdown > div {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 5px;
}

.zire-av-score-card__breakdown span {
	color: #687486;
	font-size: 11px;
}

.zire-av-score-card__breakdown strong {
	font-size: 12px;
}

.zire-av-score-card__breakdown i {
	grid-column: 1 / 3;
	height: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: #ebeff4;
}

.zire-av-score-card__breakdown b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-av-score-card__trend {
	display: grid;
	grid-template-columns: 1fr auto 1fr auto;
	align-items: center;
	gap: 14px;
	margin-top: 22px;
	padding: 14px;
	border-radius: 10px;
	background: linear-gradient(135deg, #f4f6ff, #f6f3ff);
}

.zire-av-score-card__trend > div > span {
	display: block;
	color: #8993a2;
	font-size: 10px;
}

.zire-av-score-card__trend strong {
	font-size: 18px;
}

.zire-av-score-card__trend .is-positive {
	color: #315efb;
}

.zire-av-score-card__change {
	padding: 5px 8px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 10px;
	font-weight: 750;
}

/* =========================================================
   LIGHT CONTENT AREA
   Stage typography/layout reuse .zire-platform-stage.
   ========================================================= */

.zire-av-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background: linear-gradient(180deg, #ffffff 0%, #f8faff 34%, #f5f7ff 67%, #ffffff 100%);
	isolation: isolate;
}

.zire-av-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-av-main__glow--one {
	width: 720px;
	height: 720px;
	right: -400px;
	top: 450px;
	background: radial-gradient(circle, rgba(49, 94, 251, .08), transparent 68%);
}

.zire-av-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 350px;
	background: radial-gradient(circle, rgba(118, 87, 232, .07), transparent 68%);
}

.zire-av-section + .zire-av-section {
	margin-top: 90px;
}

.zire-av-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-av-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255, 255, 255, .77);
}

.zire-av-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg, #edf2ff, #f2edff);
	color: #315efb;
}

.zire-av-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-av-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-av-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


.zire-av-signals-visual {
	display: grid;
	grid-template-columns: 1.12fr .88fr;
	gap: 12px;
}

.zire-av-signal-card,
.zire-av-prompt-card,
.zire-av-progress-card {
	padding: 19px;
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#ffffff, #ffffff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35, 50, 86, .09);
}

.zire-av-signal-card--main,
.zire-av-signal-card--voice {
	grid-column: 1 / 3;
}

.zire-av-signal-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zire-av-signal-stats > div {
	padding: 12px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-av-signal-stats span {
	display: block;
	color: #778294;
	font-size: 11px;
}

.zire-av-signal-stats strong {
	display: block;
	margin: 4px 0;
	font-size: 19px;
}

.zire-av-signal-stats small {
	color: #919aa8;
	font-size: 10px;
}

.zire-av-voice {
	display: grid;
	grid-template-columns: 125px 1fr;
	align-items: center;
	gap: 25px;
}

.zire-av-voice__ring {
	position: relative;
	width: 115px;
	height: 115px;
}

.zire-av-voice__ring svg {
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}

.zire-av-voice__track,
.zire-av-voice__value {
	fill: none;
	stroke-width: 9;
}

.zire-av-voice__track { stroke: #ebeff4; }
.zire-av-voice__value { stroke: #315efb; }

.zire-av-voice__ring > div {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.zire-av-voice__ring strong { font-size: 22px; }
.zire-av-voice__ring span { color: #8490a1; font-size: 10px; }

.zire-av-voice__brands {
	display: grid;
}

.zire-av-voice__brands > div {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	border-bottom: 1px solid #edf0f4;
}

.zire-av-voice__brands span,
.zire-av-voice__brands strong {
	font-size: 11px;
}

/* =========================================================
   PROMPT VISIBILITY — MULTI CARD
   ========================================================= */

.zire-av-prompt-grid {
	display: grid;
	grid-template-columns: 1fr .82fr;
	gap: 12px;
}

.zire-av-prompt-card--main {
	grid-row: 1 / 3;
}

.zire-av-prompt-card__head {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e9edf2;
}

.zire-av-prompt-card__head span {
	display: block;
	color: #8b95a4;
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 800;
}

.zire-av-prompt-card__head strong {
	color: #222a35;
	font-size: 12px;
}

.zire-av-prompt-card__head > small {
	color: #8892a2;
	font-size: 10px;
	white-space: nowrap;
}

.zire-av-prompt-results > div {
	display: grid;
	grid-template-columns: 1fr 100px 40px;
	align-items: center;
	gap: 12px;
	padding: 12px 2px;
	border-bottom: 1px solid #edf0f4;
}

.zire-av-prompt-results > div > span:first-child {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 700;
}

.zire-av-prompt-results img {
	width: 19px;
	height: 19px;
	object-fit: contain;
}

.zire-av-prompt-results strong {
	width: fit-content;
	padding: 4px 7px;
	border-radius: 999px;
	font-size: 10px;
}

.zire-av-prompt-results .is-positive {
	background: #eaf8f2;
	color: #07885f;
}

.zire-av-prompt-results .is-muted {
	background: #f1f3f6;
	color: #858e9b;
}

.zire-av-prompt-results small {
	text-align: right;
	font-size: 11px;
}

.zire-av-prompt-mini {
	padding: 18px;
	border: 1.5px solid transparent;
	border-radius: 15px;
	background:
		linear-gradient(#ffffff, #ffffff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 18px 45px rgba(35, 50, 86, .08);
}

.zire-av-prompt-mini > span {
	display: block;
	margin-bottom: 6px;
	color: #8791a1;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.zire-av-prompt-mini--status > strong {
	display: block;
	color: #202733;
	font-size: 26px;
	line-height: 1;
}

.zire-av-prompt-mini--status > small {
	display: block;
	margin-top: 6px;
	color: #798495;
	font-size: 12px;
	line-height: 1.45;
}

.zire-av-prompt-mini--status > div {
	height: 6px;
	margin-top: 18px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-av-prompt-mini--status i {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-av-prompt-mini--gap > strong {
	display: block;
	margin-bottom: 16px;
	color: #29313d;
	font-size: 12px;
	line-height: 1.45;
}

.zire-av-prompt-gap {
	display: grid;
	gap: 10px;
}

.zire-av-prompt-gap > div {
	display: grid;
	grid-template-columns: 82px 1fr 25px;
	align-items: center;
	gap: 8px;
}

.zire-av-prompt-gap span {
	color: #667284;
	font-size: 11px;
}

.zire-av-prompt-gap i {
	height: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-av-prompt-gap b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-av-prompt-gap strong {
	font-size: 11px;
}

/* =========================================================
   DIAMOND BREAK
   ========================================================= */

.zire-av-light-divider {
	position: relative;
	height: 80px;
	margin: 35px 0 -15px;
	pointer-events: none;
}

.zire-av-light-divider svg {
	position: absolute;
	left: -114px;
	top: 215%;
	width: 390px;
	height: 390px;
	transform: translateY(-50%);
	opacity: .13;
}

/* =========================================================
   PROGRESS — MULTI CARD
   ========================================================= */

.zire-av-progress-grid {
	display: grid;
	grid-template-columns: 1fr .72fr;
	gap: 12px;
}

.zire-av-progress-card--chart {
	grid-row: 1 / 3;
}

.zire-av-progress-chart {
	position: relative;
	height: 265px;
}

.zire-av-progress-chart svg {
	position: absolute;
	inset: 6px 0 10px;
	width: 100%;
	height: calc(100% - 16px);
}

.zire-av-progress-mini {
	padding: 18px;
	border: 1.5px solid transparent;
	border-radius: 15px;
	background:
		linear-gradient(#ffffff, #ffffff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 18px 45px rgba(35, 50, 86, .08);
}

.zire-av-progress-mini > span {
	display: block;
	margin-bottom: 12px;
	color: #8792a1;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .06em;
}

.zire-av-progress-mini--score > div {
	display: flex;
	align-items: center;
	gap: 12px;
}

.zire-av-progress-mini--score strong {
	color: #7d8795;
	font-size: 28px;
}

.zire-av-progress-mini--score .is-current {
	color: #315efb;
}

.zire-av-progress-mini--score i {
	color: #9aa3b0;
	font-style: normal;
}

.zire-av-progress-mini--score small {
	display: block;
	margin-top: 8px;
	color: #07885f;
	font-size: 12px;
	font-weight: 700;
}

.zire-av-progress-mini--wins {
	display: grid;
	align-content: start;
	gap: 9px;
}

.zire-av-progress-mini--wins > span {
	margin-bottom: 3px;
}

.zire-av-progress-mini--wins > div {
	display: grid;
	grid-template-columns: 28px 1fr;
	align-items: center;
	gap: 9px;
	padding: 7px 0;
	border-top: 1px solid #edf0f4;
}

.zire-av-progress-mini--wins > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-av-progress-mini--wins p {
	margin: 0;
	color: #788394;
	font-size: 11px;
}

.zire-av-progress-mini--wins strong {
	color: #27303b;
	font-size: 13px;
}


.zire-av-more-full {
	margin-top: 90px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-av-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-av-mini-recommendation > strong {
	display: block;
	margin: 10px 0 4px;
	color: #28313d;
	font-size: 13px;
}

.zire-av-mini-recommendation > small {
	color: #858f9f;
	font-size: 10px;
}


/* =========================================================
   RESPONSIVE — AI VISIBILITY-SPECIFIC VISUALS
   Shared Platform components already carry their own breakpoints.
   ========================================================= */

@media (max-width: 1050px) {

	.zire-av-overview__main {
		grid-template-columns: 1fr;
	}

	.zire-av-providers__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.zire-av-section--signals .zire-platform-stage__copy,
	.zire-av-section--progress .zire-platform-stage__copy {
		grid-row: 1;
	}

	.zire-av-section--signals .zire-av-signals-visual,
	.zire-av-section--progress .zire-av-progress-visual {
		grid-row: 2;
	}

	.zire-av-section--signals .zire-av-signals-visual,
	.zire-av-section--prompts .zire-av-prompt-visual,
	.zire-av-section--progress .zire-av-progress-visual {
		max-width: 820px;
	}
}

@media (max-width: 850px) {

	.zire-av-prompt-grid,
	.zire-av-progress-grid {
		grid-template-columns: 1fr;
	}

	.zire-av-prompt-card--main,
	.zire-av-progress-card--chart {
		grid-row: auto;
	}
}

@media (max-width: 700px) {

	.zire-av-overview {
		padding: 16px;
	}

	.zire-av-overview__kpis {
		grid-template-columns: 1fr 1fr;
	}

	.zire-av-provider-legend {
		gap: 5px;
	}

	.zire-av-providers {
		padding-top: 85px;
	}

	.zire-av-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-av-main {
		padding: 85px 18px 90px;
	}

	.zire-av-signal-card--main,
	.zire-av-signal-card--voice {
		grid-column: 1;
	}

	.zire-av-signals-visual,
	.zire-av-voice,
	.zire-av-signal-stats,
	.zire-av-score-card__main {
		grid-template-columns: 1fr;
	}

	.zire-av-score-ring,
	.zire-av-voice__ring {
		margin: 0 auto;
	}

	.zire-av-prompt-results > div {
		grid-template-columns: 1fr auto;
	}

	.zire-av-prompt-results > div > small {
		display: none;
	}

	.zire-av-light-divider {
		height: 45px;
	}

	.zire-av-light-divider svg {
		
		width: 330px;
		height: 330px;
	}
}

.zire-av-signals-visual,
.zire-av-prompt-visual, .zire-av-progress-visual {
	position: relative;
	z-index: 1;
}


.zire-av-signals-visual::before,
.zire-av-prompt-visual::before, .zire-av-progress-visual::before {
	content: "";

	position: absolute;

	left: 50%;
	top: 50%;

	width: 620px;
	height: 420px;

	transform:
		translate(-50%, -50%);

	border-radius: 50%;

	background:
		rgba(49, 94, 251, .22);

	filter:
		blur(90px);

	z-index: -1;

	pointer-events: none;
}

.zire-av-light-shape-two {
	position: absolute;

	right: -120px;
	top: 40%;

	width: 420px;
	height: 420px;

	opacity: .12;

	pointer-events: none;

	z-index: 0;
}

/* =========================================================
   PROMPT TRACKING PAGE — PAGE-SPECIFIC STYLES ONLY

   Shared hero typography/buttons, stage layouts, dark section,
   feature cards, FAQs and final CTA reuse the Platform CSS.

   IMPORTANT:
   Page-specific visual text does not go below 9px.
   ========================================================= */


/* =========================================================
   HERO + TOP AREA
   ========================================================= */

.zire-pt-top {
	padding-bottom: 120px;
}


/* Decorative diamond */

.zire-pt-top-shape-wrap {
	position: relative;
}

.zire-pt-top-shape {
	position: absolute;
	right: -130px;
	top: -99px;
	width: 430px;
	height: 430px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO PRODUCT WINDOW
   ========================================================= */

.zire-pt-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-pt-overview {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 38px 90px rgba(26, 39, 73, .13);
}


/* Header */

.zire-pt-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 22px;
}

.zire-pt-overview__head > div:first-child > span,
.zire-pt-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: var(--zire-blue, #315efb);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-pt-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-pt-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-pt-overview__live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-pt-overview__live > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* KPIs */

.zire-pt-overview__kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 12px;
}

.zire-pt-overview__kpis > div {
	padding: 15px;
	border: 1px solid #e7ebf1;
	border-radius: 11px;
	background: #fafbfe;
}

.zire-pt-overview__kpis > div > span {
	display: block;
	margin-bottom: 8px;
	color: #768193;
	font-size: 12px;
}

.zire-pt-overview__kpis > div > strong {
	display: block;
	color: #171d27;
	font-size: 25px;
	letter-spacing: -1px;
}

.zire-pt-overview__kpis > div > strong small {
	color: #9da5b2;
	font-size: 11px;
}

.zire-pt-overview__kpis > div > small {
	display: block;
	margin-top: 4px;
	color: #929aa7;
	font-size: 11px;
}


/* Main application area */

.zire-pt-overview__body {
	display: grid;
	grid-template-columns: 310px 1fr;
	min-height: 520px;
	overflow: hidden;
	border: 1px solid #e7ebf1;
	border-radius: 14px;
	background: #fff;
}


/* Prompt sidebar */

.zire-pt-overview__prompt-list {
	border-right: 1px solid #e7ebf1;
	background: #fbfcfe;
}

.zire-pt-overview__prompt-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 17px 17px 13px;
	border-bottom: 1px solid #edf0f4;
}

.zire-pt-overview__prompt-head span {
	display: block;
	color: #7d8796;
	font-size: 11px;
}

.zire-pt-overview__prompt-head strong {
	display: block;
	margin-top: 3px;
	color: #252d39;
	font-size: 12px;
}

.zire-pt-overview__prompt-head > span {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-pt-prompt-search {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 13px;
	padding: 10px 11px;
	border: 1px solid #e2e7ee;
	border-radius: 8px;
	background: #fff;
	color: #929ba8;
	font-size: 11px;
}

.zire-pt-prompt-items {
	display: grid;
}

.zire-pt-prompt-items > div {
	position: relative;
	display: grid;
	grid-template-columns: 27px 1fr;
	gap: 9px;
	padding: 15px 14px;
	border-top: 1px solid #edf0f4;
	background: #fff;
}

.zire-pt-prompt-items > div.is-active {
	background: linear-gradient(90deg, #eef3ff, #f6f8ff);
	box-shadow: inset 3px 0 0 #315efb;
}

.zire-pt-prompt-icon {
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-pt-prompt-items strong {
	display: block;
	color: #2a323e;
	font-size: 12px;
	line-height: 1.45;
}

.zire-pt-prompt-items > div > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 7px;
}

.zire-pt-prompt-items > div > div > div span,
.zire-pt-prompt-items > div > div > div small {
	padding: 3px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #7f8998;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-pt-prompt-items > div.is-active > i {
	position: absolute;
	right: 12px;
	top: 12px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* Selected prompt */

.zire-pt-overview__detail {
	padding: 18px;
}

.zire-pt-selected-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 25px;
	padding-bottom: 17px;
	border-bottom: 1px solid #e9edf2;
}

.zire-pt-selected-head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.zire-pt-selected-head strong {
	display: block;
	max-width: 670px;
	margin: 5px 0;
	color: #1e2530;
	font-size: 16px;
	line-height: 1.35;
}

.zire-pt-selected-head small {
	color: #8d96a4;
	font-size: 11px;
}

.zire-pt-selected-head button {
	padding: 8px 10px;
	border: 0;
	border-radius: 7px;
	background: #f0f2f5;
	color: #2b333e;
	font-size: 11px;
	font-weight: 700;
}


/* Tabs */

.zire-pt-overview-tabs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 13px;
	overflow: hidden;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fafbfc;
}

.zire-pt-overview-tabs > span {
	position: relative;
	padding: 11px 12px;
	border-right: 1px solid #e9edf2;
	color: #697587;
	font-size: 11px;
	font-weight: 700;
}

.zire-pt-overview-tabs > span:last-child {
	border-right: 0;
}

.zire-pt-overview-tabs > span.is-active {
	background: #fff;
	color: #315efb;
}

.zire-pt-overview-tabs > span.is-active::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	background: #315efb;
}


/* Provider strip */

.zire-pt-provider-strip {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 7px;
	margin-top: 12px;
}

.zire-pt-provider-strip > div {
	min-width: 0;
	padding: 10px;
	border: 1px solid #e4e8ee;
	border-radius: 9px;
	background: #fff;
}

.zire-pt-provider-strip > div.is-selected {
	border-color: #315efb;
	box-shadow: inset 0 0 0 1px #315efb;
}

.zire-pt-provider-strip img {
	width: 19px;
	height: 19px;
	display: block;
	margin-bottom: 7px;
	object-fit: contain;
}

.zire-pt-provider-strip strong {
	display: block;
	overflow: hidden;
	color: #29313c;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.zire-pt-provider-strip small {
	display: block;
	margin-top: 4px;
	overflow: hidden;
	color: #07885f;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}


/* Result card */

.zire-pt-result-card {
	margin-top: 12px;
	overflow: hidden;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	background: #fff;
}

.zire-pt-result-card__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 13px;
	border-bottom: 1px solid #e8ecf1;
}

.zire-pt-result-card__heading span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-result-card__heading strong {
	display: block;
	margin-top: 3px;
	color: #252d38;
	font-size: 13px;
}

.zire-pt-result-card__heading small {
	color: #929ba8;
	font-size: 11px;
}

.zire-pt-result-signals {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	border-bottom: 1px solid #e8ecf1;
}

.zire-pt-result-signals > div {
	padding: 11px 12px;
	border-right: 1px solid #e8ecf1;
}

.zire-pt-result-signals > div:last-child {
	border-right: 0;
}

.zire-pt-result-signals span {
	display: block;
	margin-bottom: 5px;
	color: #8992a0;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-pt-result-signals strong {
	color: #27303c;
	font-size: 12px;
}

.zire-pt-result-signals .is-positive {
	color: #07885f;
}

.zire-pt-result-row {
	padding: 11px 12px;
	border-bottom: 1px solid #edf0f4;
}

.zire-pt-result-row:last-child {
	border-bottom: 0;
}

.zire-pt-result-row > span {
	display: block;
	margin-bottom: 8px;
	color: #8c95a2;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-result-row > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.zire-pt-result-row b {
	padding: 4px 7px;
	border: 1px solid #e3e7ed;
	border-radius: 999px;
	background: #fbfcfd;
	color: #667182;
	font-size: 11px;
	font-weight: 600;
}


/* =========================================================
   PLATFORM PROVIDERS
   ========================================================= */

.zire-pt-providers {
	padding-top: 110px;
}

.zire-pt-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-pt-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-pt-providers__heading .zire-platform-intro__eyebrow {
	margin-bottom: 20px;
}

.zire-pt-providers__heading h2 {
	margin-left: auto;
	margin-right: auto;
	max-width: 900px
}

.zire-pt-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.zire-pt-providers__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 11px;
}

.zire-pt-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 14px 36px rgba(34, 48, 80, .05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-pt-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34, 48, 80, .09);
}

.zire-pt-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-pt-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-pt-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-pt-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-pt-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK DAILY MONITORING
   ========================================================= */

.zire-pt-daily__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-pt-daily__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-pt-daily__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .038);
}

.zire-pt-daily__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98, 121, 255, .15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-pt-daily__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-pt-daily__points small {
	display: block;
	color: rgba(255, 255, 255, .43);
	font-size: 11px;
}


/* Daily run card */

.zire-pt-run-card {
	padding: 23px;
	border: 2px solid var(--zire-blue, #315efb);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0, 0, 0, .22);
	color: #1c2430;
}

.zire-pt-run-card__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-pt-run-card__head > div > span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-run-card__head > div > strong {
	display: block;
	margin-top: 4px;
	color: #252d38;
	font-size: 13px;
}

.zire-pt-run-card__head > small {
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 5px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 700;
}

.zire-pt-run-card__head > small > span {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #07885f;
}

.zire-pt-run-card__date {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	padding: 14px 0;
}

.zire-pt-run-card__date > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-pt-run-card__date span {
	display: block;
	color: #8993a2;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-pt-run-card__date strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-pt-run-providers {
	display: grid;
}

.zire-pt-run-providers > div {
	display: grid;
	grid-template-columns: 28px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 10px 2px;
	border-top: 1px solid #edf0f4;
}

.zire-pt-run-providers img,
.zire-pt-run-google {
	width: 23px;
	height: 23px;
	object-fit: contain;
}

.zire-pt-run-providers strong {
	display: block;
	color: #29313c;
	font-size: 12px;
}

.zire-pt-run-providers small {
	display: block;
	margin-top: 2px;
	color: #8b95a4;
	font-size: 11px;
}

.zire-pt-run-providers .is-complete {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 700;
}

.zire-pt-run-card__history {
	margin-top: 13px;
	padding: 13px;
	border-radius: 10px;
	background: linear-gradient(135deg, #f3f6ff, #f7f3ff);
}

.zire-pt-run-card__history > div:first-child {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}

.zire-pt-run-card__history span {
	color: #768193;
	font-size: 11px;
}

.zire-pt-run-card__history strong {
	color: #07885f;
	font-size: 11px;
}

.zire-pt-run-history-bars {
	height: 55px;
	display: flex;
	align-items: end;
	gap: 6px;
}

.zire-pt-run-history-bars i {
	flex: 1;
	min-width: 3px;
	border-radius: 3px 3px 1px 1px;
	background: linear-gradient(180deg, #7657e8, #315efb);
	opacity: .8;
}


/* =========================================================
   MAIN LIGHT AREA
   ========================================================= */

.zire-pt-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-pt-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-pt-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 390px;
	background: radial-gradient(circle, rgba(49, 94, 251, .08), transparent 68%);
}

.zire-pt-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 500px;
	background: radial-gradient(circle, rgba(118, 87, 232, .07), transparent 68%);
}

.zire-pt-section + .zire-pt-section {
	margin-top: 90px;
}


/* =========================================================
   COMPACT COPY SECTIONS
   ========================================================= */

.zire-pt-compact-copy {
	position: relative;
	align-self: center;
}

.zire-pt-compact-copy .zire-pt-copy-points {
	margin-top: 28px;
}

.zire-pt-compact-diamond {
	position: absolute;
	width: 392px;
	height: 392px;

	top: -219px;
	left: -105px;

	margin: 0;
	overflow: visible;
	pointer-events: none;
	z-index: 0;
}
.zire-pt-compact-diamond svg {
	width: 100%;
	height: 100%;

	transform: none;
	opacity: .22;
}

.zire-pt-discovery-copy {
	padding-left: 12px;
}


/* Shared copy point cards */

.zire-pt-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-pt-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255, 255, 255, .77);
}

.zire-pt-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg, #edf2ff, #f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-pt-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-pt-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-pt-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   ANSWER / PROMPT DETAIL VISUAL
   ========================================================= */

.zire-pt-answer-visual,
.zire-pt-signals-visual,
.zire-pt-topics-visual,
.zire-pt-discovery-visual,
.zire-pt-content-visual {
	position: relative;
	z-index: 1;
}

.zire-pt-answer-visual::before,
.zire-pt-signals-visual::before,
.zire-pt-topics-visual::before,
.zire-pt-discovery-visual::before,
.zire-pt-content-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 610px;
	height: 410px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(49, 94, 251, .18);
	filter: blur(90px);
	z-index: -1;
	pointer-events: none;
}

.zire-pt-answer-visual {
	display: grid;
	grid-template-columns: 1fr .72fr;
	gap: 12px;
}

.zire-pt-product-window,
.zire-pt-signal-card,
.zire-pt-topic-window,
.zire-pt-discovery-window,
.zire-pt-content-window {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35, 50, 86, .09);
}

.zire-pt-product-window {
	grid-row: 1 / 3;
	padding: 19px;
}

.zire-pt-product-window__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e8ecf1;
}

.zire-pt-product-window__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-product-window__head strong {
	display: block;
	margin-top: 4px;
	color: #252d38;
	font-size: 12px;
}

.zire-pt-product-window__head > small {
	color: #8e97a5;
	font-size: 11px;
	white-space: nowrap;
}

.zire-pt-product-tabs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 12px;
	overflow: hidden;
	border: 1px solid #e5e9ef;
	border-radius: 8px;
}

.zire-pt-product-tabs > span {
	padding: 8px;
	background: #fafbfc;
	color: #7b8594;
	font-size: 11px;
	text-align: center;
}

.zire-pt-product-tabs > span.is-active {
	background: #eef3ff;
	color: #315efb;
	font-weight: 750;
}

.zire-pt-answer-provider-row {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 6px;
	margin-top: 11px;
}

.zire-pt-answer-provider-row > div {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 8px;
	border: 1px solid #e4e8ef;
	border-radius: 7px;
}

.zire-pt-answer-provider-row > div.is-active {
	border-color: #315efb;
	background: #f7f9ff;
}

.zire-pt-answer-provider-row img {
	width: 16px;
	height: 16px;
	object-fit: contain;
}

.zire-pt-answer-provider-row span {
	overflow: hidden;
	color: #586375;
	font-size: 11px;
	font-weight: 700;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.zire-pt-answer-signals {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	margin-top: 11px;
	overflow: hidden;
	border: 1px solid #e7ebf1;
	border-radius: 8px;
}

.zire-pt-answer-signals > div {
	padding: 9px;
	border-right: 1px solid #e7ebf1;
}

.zire-pt-answer-signals > div:last-child {
	border-right: 0;
}

.zire-pt-answer-signals span {
	display: block;
	color: #929aa7;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-pt-answer-signals strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}

.zire-pt-answer-signals .is-positive {
	color: #07885f;
}

.zire-pt-answer-body {
	margin-top: 11px;
	padding: 12px;
	border-radius: 8px;
	background: #f8f9fb;
}

.zire-pt-answer-body > span {
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-answer-body p {
	margin: 8px 0 0;
	color: #7d8795;
	font-size: 11px;
	line-height: 1.65;
}

.zire-pt-answer-mini {
	padding: 17px;
	border: 1.5px solid transparent;
	border-radius: 15px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 18px 45px rgba(35, 50, 86, .08);
}

.zire-pt-answer-mini > span {
	display: block;
	margin-bottom: 9px;
	color: #8791a1;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-answer-mini--competitors > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.zire-pt-answer-mini--competitors b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #f1f3f7;
	color: #697486;
	font-size: 11px;
	font-weight: 650;
}

.zire-pt-answer-mini--competitors small {
	display: block;
	margin-top: 10px;
	color: #8a94a3;
	font-size: 11px;
}

.zire-pt-answer-mini--history > div {
	display: flex;
	align-items: center;
	gap: 10px;
}

.zire-pt-answer-mini--history strong {
	color: #8a93a1;
	font-size: 27px;
}

.zire-pt-answer-mini--history .is-current {
	color: #315efb;
}

.zire-pt-answer-mini--history i {
	color: #9ca5b1;
	font-style: normal;
}

.zire-pt-answer-mini--history small {
	display: block;
	margin-top: 8px;
	color: #07885f;
	font-size: 11px;
	font-weight: 700;
}


/* =========================================================
   SIGNAL VISUAL
   ========================================================= */

.zire-pt-signals-visual {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 12px;
}

.zire-pt-signal-card {
	padding: 19px;
}

.zire-pt-signal-card--main {
	grid-row: 1 / 3;
}

.zire-pt-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 13px;
}

.zire-pt-card-head strong {
	display: block;
	color: #252d38;
	font-size: 12px;
}

.zire-pt-card-head > small {
	padding: 4px 7px;
	border: 1px solid #e3e7ee;
	border-radius: 999px;
	color: #858f9e;
	font-size: 11px;
}

.zire-pt-signal-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zire-pt-signal-stats > div {
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-pt-signal-stats span {
	display: block;
	color: #788394;
	font-size: 11px;
}

.zire-pt-signal-stats strong {
	display: block;
	margin: 4px 0;
	font-size: 18px;
}

.zire-pt-signal-stats small {
	color: #929aa7;
	font-size: 11px;
}

.zire-pt-signal-chart {
	position: relative;
	height: 165px;
	margin-top: 17px;
}

.zire-pt-signal-chart > div {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 25%;
}

.zire-pt-signal-chart svg {
	position: absolute;
	inset: 5px 0;
	width: 100%;
	height: calc(100% - 10px);
}

.zire-pt-brand-bars {
	display: grid;
	gap: 10px;
}

.zire-pt-brand-bars > div {
	display: grid;
	grid-template-columns: 80px 1fr 30px;
	align-items: center;
	gap: 7px;
}

.zire-pt-brand-bars span,
.zire-pt-brand-bars strong {
	font-size: 11px;
}

.zire-pt-brand-bars span {
	color: #687486;
}

.zire-pt-brand-bars strong {
	text-align: right;
}

.zire-pt-brand-bars i {
	height: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-pt-brand-bars b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-pt-source-list {
	display: grid;
}

.zire-pt-source-list > div {
	display: grid;
	grid-template-columns: 26px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-pt-source-list > div > span {
	width: 25px;
	height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-pt-source-list strong {
	font-size: 11px;
}

.zire-pt-source-list small {
	color: #8a94a3;
	font-size: 11px;
}


/* =========================================================
   TOPICS
   ========================================================= */

.zire-pt-topic-window {
	padding: 20px;
}

.zire-pt-topic-window__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
	margin-bottom: 14px;
}

.zire-pt-topic-window__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-topic-window__head strong {
	display: block;
	margin-top: 4px;
	color: #26303b;
	font-size: 12px;
}

.zire-pt-topic-window__head > small {
	padding: 4px 7px;
	border: 1px solid #e2e7ed;
	border-radius: 999px;
	color: #8791a1;
	font-size: 11px;
}

.zire-pt-topic-grid {
	display: grid;
	gap: 8px;
}

.zire-pt-topic-grid > div {
	display: grid;
	grid-template-columns: 34px 1fr 34px;
	align-items: center;
	gap: 10px;
	padding: 11px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-pt-topic-grid > div.is-active {
	border-color: #ced8ff;
	background: linear-gradient(135deg, #f4f7ff, #f8f6ff);
}

.zire-pt-topic-number {
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-pt-topic-grid strong {
	display: block;
	font-size: 12px;
}

.zire-pt-topic-grid small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-pt-topic-grid > div > span {
	text-align: right;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}

.zire-pt-topic-grid i {
	grid-column: 2 / 4;
	height: 5px;
	margin-top: -2px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-pt-topic-grid i b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-pt-topic-summary {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin-top: 13px;
}

.zire-pt-topic-summary > div {
	padding: 10px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-pt-topic-summary span {
	display: block;
	color: #8b95a4;
	font-size: 11px;
}

.zire-pt-topic-summary strong {
	display: block;
	margin-top: 4px;
	color: #2d3540;
	font-size: 11px;
}


/* =========================================================
   PROMPT DISCOVERY
   ========================================================= */

.zire-pt-discovery-window {
	padding: 20px;
}

.zire-pt-discovery-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 13px;
}

.zire-pt-discovery-head > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-discovery-head strong {
	display: block;
	margin-top: 3px;
	font-size: 13px;
}

.zire-pt-discovery-head .is-complete {
	padding: 5px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 700;
}

.zire-pt-scan-url {
	display: grid;
	grid-template-columns: 32px 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 11px;
	border: 1px solid #e2e7ee;
	border-radius: 9px;
	background: #fafbfe;
}

.zire-pt-scan-url > span:first-child {
	width: 31px;
	height: 31px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
}

.zire-pt-scan-url small {
	display: block;
	color: #9099a6;
	font-size: 11px;
}

.zire-pt-scan-url strong {
	display: block;
	margin-top: 2px;
	font-size: 11px;
}

.zire-pt-scan-url > span:last-child {
	color: #7e8897;
	font-size: 11px;
}

.zire-pt-discovery-summary {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin: 10px 0;
}

.zire-pt-discovery-summary > div {
	padding: 10px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-pt-discovery-summary strong {
	display: block;
	font-size: 17px;
}

.zire-pt-discovery-summary span {
	display: block;
	margin-top: 3px;
	color: #8c95a3;
	font-size: 11px;
}

.zire-pt-recommended-prompts {
	display: grid;
}

.zire-pt-recommended-prompts > div {
	display: grid;
	grid-template-columns: 25px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 10px 1px;
	border-top: 1px solid #edf0f4;
}

.zire-pt-recommended-prompts > div > span:first-child {
	width: 22px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #dce2eb;
	border-radius: 6px;
	color: transparent;
	font-size: 11px;
}

.zire-pt-recommended-prompts > div.is-selected > span:first-child {
	border-color: #315efb;
	background: #315efb;
	color: #fff;
}

.zire-pt-recommended-prompts strong {
	display: block;
	color: #303844;
	font-size: 11px;
	line-height: 1.4;
}

.zire-pt-recommended-prompts small {
	display: block;
	margin-top: 3px;
	color: #929aa7;
	font-size: 11px;
}

.zire-pt-recommended-prompts b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 750;
	white-space: nowrap;
}

.zire-pt-discovery-action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	margin-top: 11px;
	padding: 10px;
	border-radius: 9px;
	background: linear-gradient(135deg, #f1f4ff, #f5f1ff);
}

.zire-pt-discovery-action > span {
	color: #727d8e;
	font-size: 11px;
}

.zire-pt-discovery-action button {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 7px 10px;
	border: 0;
	border-radius: 7px;
	background: #315efb;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
}


/* =========================================================
   LIGHT DIAMOND
   ========================================================= */

.zire-pt-light-divider {
	position: relative;
	height: 80px;
	margin: 35px 0 -15px;
	pointer-events: none;
}

.zire-pt-light-divider svg {
	position: absolute;
	right: -115px;
	top: 112%;
	width: 390px;
	height: 390px;
	transform: translateY(-50%);
	opacity: .13;
}


/* =========================================================
   CITED CONTENT
   ========================================================= */

.zire-pt-content-window {
	padding: 20px;
}

.zire-pt-content-window__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 14px;
}

.zire-pt-content-window__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-content-window__head strong {
	display: block;
	margin-top: 3px;
	color: #28313c;
	font-size: 12px;
}

.zire-pt-content-window__head > small {
	padding: 4px 7px;
	border: 1px solid #e3e7ee;
	border-radius: 999px;
	color: #87919f;
	font-size: 11px;
}

.zire-pt-content-types {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.zire-pt-content-types > div {
	padding: 11px;
	border-radius: 9px;
	background: #f8f9fb;
}

.zire-pt-content-types > div > div {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 7px;
}

.zire-pt-content-types span {
	color: #5f6b7d;
	font-size: 11px;
}

.zire-pt-content-types strong {
	font-size: 11px;
}

.zire-pt-content-types i {
	display: block;
	height: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-pt-content-types b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-pt-content-types small {
	display: block;
	margin-top: 6px;
	color: #969eaa;
	font-size: 11px;
}

.zire-pt-winning-pattern {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	margin-top: 11px;
	padding: 12px;
	border: 1px solid #dce4ff;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f4f0ff);
}

.zire-pt-winning-pattern > div {
	display: grid;
	grid-template-columns: 30px 1fr;
	align-items: center;
	gap: 9px;
}

.zire-pt-winning-pattern > div > span {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-pt-winning-pattern small {
	display: block;
	color: #8574c7;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-winning-pattern strong {
	display: block;
	margin-top: 3px;
	color: #354052;
	font-size: 11px;
}

.zire-pt-winning-pattern > span {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 750;
	white-space: nowrap;
}

.zire-pt-content-source-row {
	margin-top: 11px;
	padding-top: 11px;
	border-top: 1px solid #edf0f4;
}

.zire-pt-content-source-row > span {
	display: block;
	margin-bottom: 8px;
	color: #8b95a4;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-pt-content-source-row > div {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.zire-pt-content-source-row b {
	padding: 5px 7px;
	border: 1px solid #e2e7ed;
	border-radius: 999px;
	background: #fafbfc;
	color: #697486;
	font-size: 11px;
	font-weight: 650;
}


/* =========================================================
   CONNECTED PLATFORM
   ========================================================= */

.zire-pt-more-full {
	margin-top: 90px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-pt-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-pt-mini-recommendation > strong {
	display: block;
	margin: 10px 0 4px;
	color: #28313d;
	font-size: 13px;
}

.zire-pt-mini-recommendation > small {
	color: #858f9f;
	font-size: 11px;
}

.zire-pt-google-feature-icon img {
	width: 21px;
	height: 21px;
	object-fit: contain;
}


/* =========================================================
   RESPONSIVE
   Shared Platform elements already have their own breakpoints.
   ========================================================= */

@media (max-width: 1120px) {

	.zire-pt-providers__grid,
	.zire-pt-provider-strip {
		grid-template-columns: repeat(3, 1fr);
	}

	.zire-pt-overview__body {
		grid-template-columns: 260px 1fr;
	}

}


@media (max-width: 1050px) {

	.zire-pt-section--signals .zire-platform-stage__copy {
		grid-row: 1;
	}

	.zire-pt-section--signals .zire-pt-signals-visual {
		grid-row: 2;
	}

	.zire-pt-answer-visual,
	.zire-pt-signals-visual,
	.zire-pt-topics-visual,
	.zire-pt-discovery-visual,
	.zire-pt-content-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-pt-overview__body {
		grid-template-columns: 1fr;
	}

	.zire-pt-overview__prompt-list {
		border-right: 0;
		border-bottom: 1px solid #e7ebf1;
	}

	.zire-pt-prompt-items {
		grid-template-columns: 1fr 1fr;
	}

	.zire-pt-answer-visual,
	.zire-pt-signals-visual {
		grid-template-columns: 1fr;
	}

	.zire-pt-product-window,
	.zire-pt-signal-card--main {
		grid-row: auto;
	}

}


@media (max-width: 700px) {

	.zire-pt-overview {
		padding: 16px;
	}

	.zire-pt-overview__kpis {
		grid-template-columns: 1fr 1fr;
	}

	.zire-pt-prompt-items {
		grid-template-columns: 1fr;
	}

	.zire-pt-overview-tabs,
	.zire-pt-provider-strip,
	.zire-pt-result-signals {
		grid-template-columns: 1fr 1fr;
	}

	.zire-pt-result-signals > div {
		border-bottom: 1px solid #e8ecf1;
	}

	.zire-pt-providers {
		padding-top: 85px;
	}

	.zire-pt-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-pt-main {
		padding: 85px 18px 90px;
	}

	.zire-pt-answer-provider-row,
	.zire-pt-answer-signals {
		grid-template-columns: 1fr 1fr;
	}

	.zire-pt-signal-stats,
	.zire-pt-topic-summary,
	.zire-pt-discovery-summary,
	.zire-pt-content-types {
		grid-template-columns: 1fr;
	}

	.zire-pt-light-divider {
		height: 45px;
	}

	.zire-pt-light-divider svg {
		width: 330px;
		height: 330px;
	}

	.zire-pt-top-shape {
		display: none;
	}


}

@media (max-width: 700px) {
	.zire-pt-compact-diamond {
		width: 280px;
		height: 280px;
		top: -185px;
		left: -80px;
	}
}

/* =========================================================
   COMPETITOR TRACKING — PAGE-SPECIFIC CSS ONLY

   Reuses Platform:
   - Hero
   - Typography
   - Buttons
   - Dark section
   - Stage layouts
   - Connected feature cards
   - FAQ
   - Final CTA
   - Existing JS reveal/chart hooks

   Minimum visual text size: 9px
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-ct-top {
	padding-bottom: 120px;
}

.zire-ct-top-shape-wrap {
	position: relative;
}

.zire-ct-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   OVERVIEW
   ========================================================= */

.zire-ct-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-ct-overview {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 38px 90px rgba(26, 39, 73, .13);
}

.zire-ct-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 22px;
}

.zire-ct-overview__head > div:first-child > span,
.zire-ct-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: var(--zire-blue, #315efb);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-ct-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-ct-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-ct-live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-ct-live > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* KPIs */

.zire-ct-overview__kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 12px;
}

.zire-ct-overview__kpis > div {
	padding: 15px;
	border: 1px solid #e7ebf1;
	border-radius: 11px;
	background: #fafbfe;
}

.zire-ct-overview__kpis > div > span {
	display: block;
	margin-bottom: 8px;
	color: #768193;
	font-size: 12px;
}

.zire-ct-overview__kpis > div > strong {
	display: block;
	color: #171d27;
	font-size: 25px;
	letter-spacing: -1px;
}

.zire-ct-overview__kpis > div > small {
	display: block;
	margin-top: 4px;
	color: #929aa7;
	font-size: 11px;
}


/* Main body */

.zire-ct-overview__body {
	display: grid;
	grid-template-columns: 300px 1fr;
	min-height: 570px;
	overflow: hidden;
	border: 1px solid #e7ebf1;
	border-radius: 14px;
	background: #fff;
}


/* Competitor sidebar */

.zire-ct-overview__competitors {
	border-right: 1px solid #e7ebf1;
	background: #fbfcfe;
}

.zire-ct-overview__competitor-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 17px 17px 13px;
	border-bottom: 1px solid #edf0f4;
}

.zire-ct-overview__competitor-head span {
	display: block;
	color: #7d8796;
	font-size: 11px;
}

.zire-ct-overview__competitor-head strong {
	display: block;
	margin-top: 3px;
	color: #252d39;
	font-size: 12px;
}

.zire-ct-overview__competitor-head > span {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-ct-overview__competitor-list {
	display: grid;
}

.zire-ct-overview__competitor-list > div {
	position: relative;
	display: grid;
	grid-template-columns: 30px 1fr;
	gap: 10px;
	padding: 15px 14px;
	border-top: 1px solid #edf0f4;
	background: #fff;
}

.zire-ct-overview__competitor-list > div.is-active {
	background: linear-gradient(90deg, #eef3ff, #f6f8ff);
	box-shadow: inset 3px 0 0 #315efb;
}

.zire-ct-company-icon {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-ct-overview__competitor-list strong {
	display: block;
	color: #2a323e;
	font-size: 12px;
}

.zire-ct-overview__competitor-list > div > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 7px;
}

.zire-ct-overview__competitor-list > div > div > div span,
.zire-ct-overview__competitor-list > div > div > div small {
	padding: 3px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #7f8998;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-ct-overview__competitor-list > div.is-active > i {
	position: absolute;
	right: 12px;
	top: 12px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* Detail */

.zire-ct-overview__detail {
	padding: 18px;
}

.zire-ct-selected-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 25px;
	padding-bottom: 16px;
	border-bottom: 1px solid #e9edf2;
}

.zire-ct-selected-head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.zire-ct-selected-head strong {
	display: block;
	margin: 5px 0;
	color: #1e2530;
	font-size: 16px;
}

.zire-ct-selected-head small {
	color: #8d96a4;
	font-size: 11px;
}

.zire-ct-selected-head button {
	padding: 8px 10px;
	border: 0;
	border-radius: 7px;
	background: #f0f2f5;
	color: #2b333e;
	font-size: 11px;
	font-weight: 700;
}


/* Provider row */

.zire-ct-provider-strip {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 7px;
	margin-top: 12px;
}

.zire-ct-provider-strip > div {
	min-width: 0;
	padding: 10px;
	border: 1px solid #e4e8ee;
	border-radius: 9px;
	background: #fff;
}

.zire-ct-provider-strip > div.is-selected {
	border-color: #315efb;
	box-shadow: inset 0 0 0 1px #315efb;
}

.zire-ct-provider-strip img {
	width: 19px;
	height: 19px;
	display: block;
	margin-bottom: 7px;
	object-fit: contain;
}

.zire-ct-provider-strip strong {
	display: block;
	color: #29313c;
	font-size: 11px;
}

.zire-ct-provider-strip small {
	display: block;
	margin-top: 4px;
	color: #07885f;
	font-size: 11px;
}


/* Signal row */

.zire-ct-overview-signals {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 7px;
	margin-top: 12px;
}

.zire-ct-overview-signals > div {
	padding: 11px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fafbfe;
}

.zire-ct-overview-signals span {
	display: block;
	color: #8b95a4;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-ct-overview-signals strong {
	display: block;
	margin-top: 5px;
	color: #252d38;
	font-size: 12px;
}


/* Lower */

.zire-ct-overview-lower {
	display: grid;
	grid-template-columns: 1.3fr .7fr;
	gap: 10px;
	margin-top: 12px;
}

.zire-ct-overview-chart,
.zire-ct-overview-insights > div {
	border: 1px solid #e5e9ef;
	border-radius: 11px;
	background: #fff;
}

.zire-ct-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px;
	border-bottom: 1px solid #edf0f4;
}

.zire-ct-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-ct-card-head > small {
	color: #8993a2;
	font-size: 11px;
}

.zire-ct-chart-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 11px;
	padding: 10px 13px 0;
}

.zire-ct-chart-legend span {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #788393;
	font-size: 11px;
}

.zire-ct-chart-legend i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
}

.zire-ct-chart-legend .is-brand {
	background: #315efb;
}

.zire-ct-chart-legend .is-a {
	background: #7657e8;
}

.zire-ct-chart-legend .is-b {
	background: #18a08e;
}

.zire-ct-chart {
	position: relative;
	height: 165px;
	padding: 10px 13px 25px;
}

.zire-ct-chart > div {
	position: absolute;
	inset: 10px 13px 25px;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 33.333%;
}

.zire-ct-chart svg {
	position: relative;
	width: 100%;
	height: 120px;
}

.zire-ct-chart-axis {
	display: flex;
	justify-content: space-between;
	color: #929ba8;
	font-size: 11px;
}

.zire-ct-overview-insights {
	display: grid;
	gap: 8px;
}

.zire-ct-overview-insights > div {
	padding: 12px;
}

.zire-ct-overview-insights span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-overview-insights strong {
	display: block;
	margin-top: 5px;
	color: #303844;
	font-size: 12px;
	line-height: 1.5;
}

.zire-ct-overview-insights small {
	display: block;
	margin-top: 5px;
	color: #8d96a4;
	font-size: 11px;
}

.zire-ct-overview-insights > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 8px;
}

.zire-ct-overview-insights b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef1f5;
	color: #707b8c;
	font-size: 11px;
}

.zire-ct-overview-insights .is-highlight {
	background: linear-gradient(135deg, #eef3ff, #f6f2ff);
}


/* =========================================================
   AI PROVIDERS
   ========================================================= */

.zire-ct-providers {
	padding-top: 110px;
}

.zire-ct-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-ct-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-ct-providers__heading h2,
.zire-ct-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-ct-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-ct-providers__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 11px;
}

.zire-ct-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 14px 36px rgba(34, 48, 80, .05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-ct-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34, 48, 80, .09);
}

.zire-ct-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-ct-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-ct-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-ct-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-ct-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-ct-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-ct-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-ct-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .038);
}

.zire-ct-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98, 121, 255, .15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-ct-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-ct-dark__points small {
	display: block;
	color: rgba(255, 255, 255, .43);
	font-size: 11px;
}


/* Podium window */

.zire-ct-podium-window {
	padding: 23px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0, 0, 0, .22);
	color: #1c2430;
}

.zire-ct-podium-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-ct-podium-head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-podium-head strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-ct-podium-head small {
	color: #8f98a5;
	font-size: 11px;
}

.zire-ct-podium {
	height: 265px;
	display: flex;
	align-items: end;
	justify-content: center;
	gap: 12px;
	padding: 28px 10px 0;
}

.zire-ct-podium-place {
	width: 29%;
	text-align: center;
}

.zire-ct-podium-brand {
	margin-bottom: 9px;
	padding: 10px;
	border: 1px solid #e5e9ef;
	border-radius: 11px;
	background: #fafbfe;
}

.zire-ct-podium-brand.is-your-brand {
	border-color: #bfcaff;
	background: linear-gradient(135deg, #f1f5ff, #f6f2ff);
}

.zire-ct-podium-brand span {
	display: block;
	color: #7e8898;
	font-size: 11px;
	font-weight: 800;
}

.zire-ct-podium-brand strong {
	display: block;
	margin: 5px 0 2px;
	color: #28313c;
	font-size: 23px;
}

.zire-ct-podium-brand small {
	color: #07885f;
	font-size: 11px;
}

.zire-ct-podium-block {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top: 14px;
	border-radius: 10px 10px 0 0;
	background: linear-gradient(180deg, #e8edff, #dbe3ff);
}

.zire-ct-podium-block span {
	color: #315efb;
	font-size: 23px;
	font-weight: 800;
}

.zire-ct-podium-place--first .zire-ct-podium-block {
	height: 118px;
	background: linear-gradient(180deg, #e9e3ff, #d8ceff);
}

.zire-ct-podium-place--second .zire-ct-podium-block {
	height: 88px;
}

.zire-ct-podium-place--third .zire-ct-podium-block {
	height: 62px;
}

.zire-ct-trophy {
	height: 26px;
	margin-bottom: 4px;
	color: #7657e8;
	font-size: 21px;
}

.zire-ct-podium-progress {
	padding: 13px;
	border-radius: 10px;
	background: linear-gradient(135deg, #f3f6ff, #f7f3ff);
}

.zire-ct-podium-progress > div:first-child {
	display: flex;
	justify-content: space-between;
}

.zire-ct-podium-progress span,
.zire-ct-podium-progress small {
	color: #7c8696;
	font-size: 11px;
}

.zire-ct-podium-progress strong {
	font-size: 12px;
}

.zire-ct-podium-progress__track {
	height: 7px;
	margin: 9px 0;
	overflow: hidden;
	border-radius: 999px;
	background: #e2e7f0;
}

.zire-ct-podium-progress__track i {
	display: block;
	width: 82%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-ct-podium-footer {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin-top: 11px;
}

.zire-ct-podium-footer > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-ct-podium-footer span {
	display: block;
	color: #8a94a3;
	font-size: 11px;
}

.zire-ct-podium-footer strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}


/* =========================================================
   MAIN LIGHT AREA
   ========================================================= */

.zire-ct-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-ct-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-ct-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 440px;
	background: radial-gradient(circle, rgba(49, 94, 251, .08), transparent 68%);
}

.zire-ct-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 480px;
	background: radial-gradient(circle, rgba(118, 87, 232, .07), transparent 68%);
}

.zire-ct-section + .zire-ct-section {
	margin-top: 92px;
}


/* =========================================================
   SHARED PRODUCT VISUAL STYLE
   ========================================================= */

.zire-ct-visual {
	position: relative;
	z-index: 1;
}

.zire-ct-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(49, 94, 251, .18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-ct-signal-window,
.zire-ct-small-window,
.zire-ct-content-window,
.zire-ct-content-support > div,
.zire-ct-growth-window,
.zire-ct-actions-window,
.zire-ct-actions-mini > div {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35, 50, 86, .09);
}


/* Shared copy cards */

.zire-ct-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-ct-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255, 255, 255, .77);
}

.zire-ct-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg, #edf2ff, #f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-ct-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-ct-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-ct-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   SIGNAL VISUAL
   ========================================================= */

.zire-ct-signals-visual {
	display: grid;
	grid-template-columns: 1.12fr .88fr;
	gap: 12px;
}

.zire-ct-signal-window {
	padding: 0 0 16px;
}

.zire-ct-signal-metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding: 0 17px;
}

.zire-ct-signal-metrics > div {
	padding: 12px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-ct-signal-metrics span {
	display: block;
	color: #788394;
	font-size: 11px;
}

.zire-ct-signal-metrics strong {
	display: block;
	margin: 4px 0;
	font-size: 18px;
}

.zire-ct-signal-metrics small {
	color: #929aa7;
	font-size: 11px;
}

.zire-ct-signal-chart {
	position: relative;
	height: 190px;
	margin: 17px 17px 0;
}

.zire-ct-signal-chart > div {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 25%;
}

.zire-ct-signal-chart svg {
	position: absolute;
	inset: 5px 0;
	width: 100%;
	height: calc(100% - 10px);
}

.zire-ct-signals-side {
	display: grid;
	gap: 12px;
}

.zire-ct-small-window {
	padding-bottom: 15px;
}

.zire-ct-provider-ranks {
	display: grid;
	padding: 0 15px;
}

.zire-ct-provider-ranks > div {
	display: grid;
	grid-template-columns: 23px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ct-provider-ranks img {
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.zire-ct-provider-ranks span,
.zire-ct-provider-ranks strong {
	font-size: 11px;
}

.zire-ct-provider-ranks span {
	color: #687486;
}

.zire-ct-provider-ranks strong {
	color: #315efb;
}

.zire-ct-brand-bars {
	display: grid;
	gap: 10px;
	padding: 0 15px;
}

.zire-ct-brand-bars > div {
	display: grid;
	grid-template-columns: 80px 1fr 28px;
	align-items: center;
	gap: 7px;
}

.zire-ct-brand-bars span,
.zire-ct-brand-bars strong {
	font-size: 11px;
}

.zire-ct-brand-bars i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-ct-brand-bars b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #7657e8, #315efb);
}

.zire-ct-brand-bars .is-brand b {
	background: linear-gradient(90deg, #315efb, #557cff);
}


/* =========================================================
   CONTENT VISUAL
   ========================================================= */

.zire-ct-content-visual {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 12px;
}

.zire-ct-content-window {
	padding-bottom: 16px;
}

.zire-ct-content-prompt {
	margin: 0 17px 12px;
	padding: 12px;
	border: 1px solid #e4e8ef;
	border-radius: 9px;
	background: #f8f9fb;
}

.zire-ct-content-prompt span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-content-prompt strong {
	display: block;
	margin-top: 5px;
	font-size: 12px;
}

.zire-ct-source-winners {
	display: grid;
	padding: 0 17px;
}

.zire-ct-source-winners > div {
	display: grid;
	grid-template-columns: 28px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 11px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ct-source-rank {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-ct-source-winners strong {
	display: block;
	font-size: 12px;
}

.zire-ct-source-winners small,
.zire-ct-source-meta small {
	color: #8d96a4;
	font-size: 11px;
}

.zire-ct-source-meta {
	text-align: right;
}

.zire-ct-source-meta strong {
	color: #315efb;
}

.zire-ct-content-bottom {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	padding: 12px 17px 0;
}

.zire-ct-content-bottom > div:first-child {
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-ct-content-bottom > div:first-child > span {
	display: block;
	margin-bottom: 8px;
	color: #7e8898;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-format-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.zire-ct-format-tags b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #fff;
	color: #697486;
	font-size: 11px;
}

.zire-ct-pattern-card {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f4f0ff);
}

.zire-ct-pattern-card > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-ct-pattern-card small {
	display: block;
	color: #806fc0;
	font-size: 11px;
}

.zire-ct-pattern-card strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.45;
}

.zire-ct-content-support {
	display: grid;
	gap: 12px;
}

.zire-ct-content-support > div {
	padding: 17px;
}

.zire-ct-content-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-content-support > div > strong {
	display: block;
	margin: 7px 0 5px;
	font-size: 13px;
}

.zire-ct-content-support > div > small {
	color: #838d9d;
	font-size: 11px;
	line-height: 1.55;
}

.zire-ct-gap-meter {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 6px;
	margin-top: 14px;
}

.zire-ct-gap-meter i {
	height: 22px;
	border-radius: 6px;
	background: linear-gradient(135deg, #315efb, #7657e8);
}

.zire-ct-gap-meter i.is-missing {
	border: 1px dashed #bac3d3;
	background: transparent;
}

.zire-ct-source-advantage {
	display: grid;
	gap: 8px;
	margin-top: 14px;
}

.zire-ct-source-advantage > div {
	display: grid;
	grid-template-columns: 80px 1fr;
	align-items: center;
	gap: 8px;
}

.zire-ct-source-advantage span {
	color: #687486;
	font-size: 11px;
}

.zire-ct-source-advantage i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9edf2;
}

.zire-ct-source-advantage b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* =========================================================
   GROWTH / TAKEOVER VISUAL
   ========================================================= */

.zire-ct-growth-window {
	padding-bottom: 16px;
}

.zire-ct-growth-journey {
	display: grid;
	grid-template-columns: 1fr 90px 1fr;
	gap: 10px;
	align-items: center;
	padding: 0 17px 15px;
}

.zire-ct-growth-before,
.zire-ct-growth-now {
	display: grid;
	gap: 6px;
}

.zire-ct-growth-before > span,
.zire-ct-growth-now > span {
	display: block;
	color: #7f8998;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-growth-before > div,
.zire-ct-growth-now > div {
	position: relative;
	display: grid;
	grid-template-columns: 27px 1fr auto;
	align-items: center;
	gap: 7px;
	padding: 9px;
	border: 1px solid #e4e8ee;
	border-radius: 8px;
	background: #fafbfe;
}

.zire-ct-growth-before > div.is-brand,
.zire-ct-growth-now > div.is-brand {
	border-color: #c7d2ff;
	background: linear-gradient(135deg, #f1f5ff, #f7f4ff);
}

.zire-ct-growth-before i,
.zire-ct-growth-now i {
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eef2f7;
	color: #315efb;
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
}

.zire-ct-growth-before strong,
.zire-ct-growth-now strong,
.zire-ct-growth-before b,
.zire-ct-growth-now b {
	font-size: 11px;
}

.zire-ct-growth-arrow {
	text-align: center;
}

.zire-ct-growth-arrow span {
	display: block;
	color: #07885f;
	font-size: 17px;
	font-weight: 800;
}

.zire-ct-growth-arrow i {
	display: block;
	margin: 4px 0;
	color: #315efb;
	font-size: 20px;
	font-style: normal;
}

.zire-ct-growth-arrow small {
	color: #8a94a3;
	font-size: 11px;
}

.zire-ct-growth-crown {
	position: absolute;
	right: -4px;
	top: -14px;
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 13px;
	box-shadow: 0 6px 16px rgba(49, 94, 251, .2);
}

.zire-ct-growth-chart {
	position: relative;
	height: 160px;
	margin: 0 17px;
	padding-bottom: 12px;
}

.zire-ct-growth-chart > div {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 33.333%;
}

.zire-ct-growth-chart svg {
	position: relative;
	width: 100%;
	height: 145px;
}

.zire-ct-growth-wins {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding: 12px 17px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ct-growth-wins > div {
	display: grid;
	grid-template-columns: 30px 1fr;
	gap: 8px;
	align-items: center;
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-ct-growth-wins > div > span {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
}

.zire-ct-growth-wins strong {
	display: block;
	font-size: 11px;
}

.zire-ct-growth-wins small {
	display: block;
	margin-top: 2px;
	color: #8c95a3;
	font-size: 11px;
}


/* =========================================================
   ACTIONS
   ========================================================= */

.zire-ct-actions-visual {
	display: grid;
	grid-template-columns: 1.2fr .8fr;
	gap: 12px;
}

.zire-ct-actions-window {
	padding-bottom: 15px;
}

.zire-ct-actions-list {
	display: grid;
	padding: 0 17px;
}

.zire-ct-actions-list > div {
	display: grid;
	grid-template-columns: 30px 1fr auto;
	gap: 9px;
	align-items: center;
	padding: 12px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ct-action-number {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-ct-actions-list strong {
	display: block;
	font-size: 12px;
}

.zire-ct-actions-list small {
	display: block;
	margin-top: 3px;
	color: #8b95a4;
	font-size: 11px;
	line-height: 1.45;
}

.zire-ct-actions-list b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
	white-space: nowrap;
}

.zire-ct-actions-summary {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding: 12px 17px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ct-actions-summary > div {
	padding: 10px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-ct-actions-summary span {
	display: block;
	color: #8b95a4;
	font-size: 11px;
}

.zire-ct-actions-summary strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-ct-actions-mini {
	display: grid;
	gap: 12px;
}

.zire-ct-actions-mini > div {
	padding: 17px;
}

.zire-ct-actions-mini > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-actions-mini > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 12px;
	line-height: 1.5;
}

.zire-ct-actions-mini > div > small {
	color: #8791a1;
	font-size: 11px;
	line-height: 1.5;
}

.zire-ct-actions-mini > div.is-positive {
	background:
		linear-gradient(#f8fffc, #f8fffc) padding-box,
		linear-gradient(135deg, #81dac1, #8ca5ff, #7657e8) border-box;
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-ct-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-ct-mini-prompts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zire-ct-mini-prompts > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-ct-mini-prompts strong {
	display: block;
	font-size: 16px;
}

.zire-ct-mini-prompts span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-ct-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ct-mini-recommendation > strong {
	display: block;
	margin: 10px 0 4px;
	color: #28313d;
	font-size: 13px;
}

.zire-ct-mini-recommendation > small {
	color: #858f9f;
	font-size: 11px;
}

.zire-ct-google-feature-icon img {
	width: 21px;
	height: 21px;
	object-fit: contain;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-ct-providers__grid,
	.zire-ct-provider-strip {
		grid-template-columns: repeat(3, 1fr);
	}

	.zire-ct-overview__body {
		grid-template-columns: 260px 1fr;
	}

	.zire-ct-overview-lower {
		grid-template-columns: 1fr;
	}

}


@media (max-width: 1050px) {

	.zire-ct-signals-visual,
	.zire-ct-content-visual,
	.zire-ct-actions-visual {
		grid-template-columns: 1fr;
	}

	.zire-ct-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-ct-overview__body {
		grid-template-columns: 1fr;
	}

	.zire-ct-overview__competitors {
		border-right: 0;
		border-bottom: 1px solid #e7ebf1;
	}

	.zire-ct-overview-signals {
		grid-template-columns: repeat(2, 1fr);
	}

	.zire-ct-podium-footer,
	.zire-ct-growth-wins,
	.zire-ct-actions-summary,
	.zire-ct-growth-journey {
		grid-template-columns: 1fr;
	}

	.zire-ct-growth-arrow {
		padding: 8px 0;
	}

}


@media (max-width: 700px) {

	.zire-ct-overview {
		padding: 16px;
	}

	.zire-ct-overview__kpis,
	.zire-ct-provider-strip,
	.zire-ct-overview-signals {
		grid-template-columns: 1fr 1fr;
	}

	.zire-ct-providers {
		padding-top: 85px;
	}

	.zire-ct-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-ct-main {
		padding: 85px 18px 90px;
	}

	.zire-ct-signal-metrics,
	.zire-ct-content-bottom {
		grid-template-columns: 1fr;
	}

	.zire-ct-podium {
		height: 235px;
		gap: 6px;
		padding-left: 0;
		padding-right: 0;
	}

	.zire-ct-podium-brand {
		padding: 7px 4px;
	}

	.zire-ct-podium-brand strong {
		font-size: 18px;
	}

	.zire-ct-podium-brand span {
		font-size: 11px;
	}

	.zire-ct-actions-list > div {
		grid-template-columns: 30px 1fr;
	}

	.zire-ct-actions-list b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-ct-top-shape {
		display: none;
	}

}

.zire-av-light-shape-three {
 
	position: absolute;

	left: 62px;
  top: 15%;

	width: 420px;
	height: 420px;

	opacity: .12;

	pointer-events: none;

	z-index: 0;
}

.zire-av-light-shape-four {
	position: absolute;

	right: 38px;
  top: 73%;

	width: 420px;
	height: 420px;

	opacity: .12;

	pointer-events: none;

	z-index: 0;
}


/* =========================================================
   CITATION TRACKING — PAGE-SPECIFIC CSS ONLY

   REUSES EXISTING PLATFORM CSS FOR:
   - Hero
   - Buttons
   - Typography
   - Dark feature section
   - Stage layouts
   - Connected feature cards
   - FAQs
   - Final CTA
   - Reveal/chart JS hooks

   Minimum visual text size: 9px
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-cit-top {
	padding-bottom: 120px;
}

.zire-cit-top-shape-wrap {
	position: relative;
}

.zire-cit-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO OVERVIEW
   ========================================================= */

.zire-cit-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-cit-overview {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 38px 90px rgba(26, 39, 73, .13);
}

.zire-cit-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 22px;
}

.zire-cit-overview__head > div:first-child > span,
.zire-cit-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-cit-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-cit-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-cit-live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-cit-live > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* KPIs */

.zire-cit-overview__kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 12px;
}

.zire-cit-overview__kpis > div {
	padding: 15px;
	border: 1px solid #e7ebf1;
	border-radius: 11px;
	background: #fafbfe;
}

.zire-cit-overview__kpis span {
	display: block;
	margin-bottom: 8px;
	color: #768193;
	font-size: 12px;
}

.zire-cit-overview__kpis strong {
	display: block;
	color: #171d27;
	font-size: 25px;
	letter-spacing: -1px;
}

.zire-cit-overview__kpis small {
	display: block;
	margin-top: 4px;
	color: #929aa7;
	font-size: 11px;
}


/* Body */

.zire-cit-overview__body {
	display: grid;
	grid-template-columns: 300px 1fr;
	min-height: 580px;
	overflow: hidden;
	border: 1px solid #e7ebf1;
	border-radius: 14px;
	background: #fff;
}


/* Source sidebar */

.zire-cit-overview__sources {
	border-right: 1px solid #e7ebf1;
	background: #fbfcfe;
}

.zire-cit-overview__sources-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 17px 17px 13px;
	border-bottom: 1px solid #edf0f4;
}

.zire-cit-overview__sources-head span {
	display: block;
	color: #7d8796;
	font-size: 11px;
}

.zire-cit-overview__sources-head strong {
	display: block;
	margin-top: 3px;
	color: #252d39;
	font-size: 12px;
}

.zire-cit-overview__sources-head > span {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-cit-overview__source-list {
	display: grid;
}

.zire-cit-overview__source-list > div {
	position: relative;
	display: grid;
	grid-template-columns: 31px 1fr;
	gap: 10px;
	padding: 15px 14px;
	border-top: 1px solid #edf0f4;
	background: #fff;
}

.zire-cit-overview__source-list > div.is-active {
	background: linear-gradient(90deg, #eef3ff, #f6f8ff);
	box-shadow: inset 3px 0 0 #315efb;
}

.zire-cit-overview__source-list > div.is-your-site {
	background: #f8fffc;
}

.zire-cit-source-icon {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-cit-overview__source-list strong {
	display: block;
	color: #2a323e;
	font-size: 12px;
}

.zire-cit-overview__source-list > div > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 7px;
}

.zire-cit-overview__source-list > div > div > div span,
.zire-cit-overview__source-list > div > div > div small {
	padding: 3px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #7f8998;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-cit-overview__source-list > div.is-active > i {
	position: absolute;
	right: 12px;
	top: 12px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* Detail */

.zire-cit-overview__detail {
	padding: 18px;
}

.zire-cit-selected-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 25px;
	padding-bottom: 16px;
	border-bottom: 1px solid #e9edf2;
}

.zire-cit-selected-head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-selected-head strong {
	display: block;
	margin: 5px 0;
	color: #1e2530;
	font-size: 16px;
}

.zire-cit-selected-head small {
	color: #8d96a4;
	font-size: 11px;
}

.zire-cit-selected-badge {
	padding: 7px 9px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
	white-space: nowrap;
}


/* Provider strip */

.zire-cit-provider-strip {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 7px;
	margin-top: 12px;
}

.zire-cit-provider-strip > div {
	min-width: 0;
	padding: 10px;
	border: 1px solid #e4e8ee;
	border-radius: 9px;
	background: #fff;
}

.zire-cit-provider-strip > div.is-selected {
	border-color: #315efb;
	box-shadow: inset 0 0 0 1px #315efb;
}

.zire-cit-provider-strip img {
	width: 19px;
	height: 19px;
	display: block;
	margin-bottom: 7px;
	object-fit: contain;
}

.zire-cit-provider-strip strong,
.zire-cit-provider-strip small {
	display: block;
	font-size: 11px;
}

.zire-cit-provider-strip strong {
	color: #29313c;
}

.zire-cit-provider-strip small {
	margin-top: 4px;
	color: #07885f;
}


/* Metrics */

.zire-cit-overview-signals {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 7px;
	margin-top: 12px;
}

.zire-cit-overview-signals > div {
	padding: 11px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fafbfe;
}

.zire-cit-overview-signals span {
	display: block;
	color: #8b95a4;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-cit-overview-signals strong {
	display: block;
	margin-top: 5px;
	color: #252d38;
	font-size: 12px;
}


/* Overview lower */

.zire-cit-overview-lower {
	display: grid;
	grid-template-columns: 1.3fr .7fr;
	gap: 10px;
	margin-top: 12px;
}

.zire-cit-overview-chart,
.zire-cit-overview-insights > div {
	border: 1px solid #e5e9ef;
	border-radius: 11px;
	background: #fff;
}

.zire-cit-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-cit-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-cit-card-head > small {
	color: #8993a2;
	font-size: 11px;
}

.zire-cit-chart-legend {
	display: flex;
	gap: 12px;
	padding: 10px 13px 0;
}

.zire-cit-chart-legend span {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #788393;
	font-size: 11px;
}

.zire-cit-chart-legend i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
}

.zire-cit-chart-legend .is-your-site {
	background: #315efb;
}

.zire-cit-chart-legend .is-market {
	background: #7657e8;
}

.zire-cit-chart {
	position: relative;
	height: 165px;
	padding: 10px 13px 25px;
}

.zire-cit-chart > div {
	position: absolute;
	inset: 10px 13px 25px;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 33.333%;
}

.zire-cit-chart svg {
	position: relative;
	width: 100%;
	height: 120px;
}

.zire-cit-chart-axis {
	display: flex;
	justify-content: space-between;
	color: #929ba8;
	font-size: 11px;
}

.zire-cit-overview-insights {
	display: grid;
	gap: 8px;
}

.zire-cit-overview-insights > div {
	padding: 12px;
}

.zire-cit-overview-insights span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-overview-insights strong {
	display: block;
	margin-top: 5px;
	color: #303844;
	font-size: 12px;
	line-height: 1.5;
}

.zire-cit-overview-insights small {
	display: block;
	margin-top: 4px;
	color: #8d96a4;
	font-size: 11px;
}

.zire-cit-overview-insights .is-highlight {
	background: linear-gradient(135deg, #eef3ff, #f6f2ff);
}


/* =========================================================
   PROVIDERS
   ========================================================= */

.zire-cit-providers {
	padding-top: 110px;
}

.zire-cit-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-cit-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-cit-providers__heading h2,
.zire-cit-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-cit-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-cit-providers__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 11px;
}

.zire-cit-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 14px 36px rgba(34, 48, 80, .05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-cit-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34, 48, 80, .09);
}

.zire-cit-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-cit-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-cit-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-cit-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-cit-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-cit-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-cit-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-cit-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .038);
}

.zire-cit-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98, 121, 255, .15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-cit-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-cit-dark__points small {
	display: block;
	color: rgba(255, 255, 255, .43);
	font-size: 11px;
}


/* Evidence window */

.zire-cit-evidence-window {
	padding: 23px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0, 0, 0, .22);
	color: #1c2430;
}

.zire-cit-evidence-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-cit-evidence-head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-evidence-head strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-cit-evidence-head small {
	color: #8791a0;
	font-size: 11px;
}

.zire-cit-evidence-prompt {
	margin-top: 13px;
	padding: 11px 12px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-evidence-prompt span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-evidence-prompt strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-cit-evidence-map {
	position: relative;
	height: 320px;
	margin-top: 12px;
}

.zire-cit-evidence-lines {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	pointer-events: none;
}

.zire-cit-evidence-lines path {
	fill: none;
	stroke: #cbd4ff;
	stroke-width: 2;
	stroke-dasharray: 5 5;
}

.zire-cit-evidence-source,
.zire-cit-evidence-answer {
	position: absolute;
	z-index: 1;
	border: 1px solid #e1e6ef;
	border-radius: 11px;
	background: #fff;
	box-shadow: 0 10px 25px rgba(32, 48, 80, .07);
}

.zire-cit-evidence-source {
	width: 41%;
	display: grid;
	grid-template-columns: 28px 1fr;
	gap: 8px;
	align-items: center;
	padding: 10px;
}

.zire-cit-evidence-source > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-cit-evidence-source strong {
	display: block;
	font-size: 11px;
}

.zire-cit-evidence-source small {
	display: block;
	margin-top: 2px;
	color: #8c95a3;
	font-size: 11px;
}

.zire-cit-evidence-source.is-your-site {
	border-color: #9fd8c7;
	background: #f8fffc;
}

.zire-cit-evidence-source--one {
	left: 0;
	top: 28px;
}

.zire-cit-evidence-source--two {
	right: 0;
	top: 28px;
}

.zire-cit-evidence-source--three {
	left: 0;
	bottom: 28px;
}

.zire-cit-evidence-source--four {
	right: 0;
	bottom: 28px;
}

.zire-cit-evidence-answer {
	width: 38%;
	left: 31%;
	top: 96px;
	padding: 14px;
	text-align: center;
	border-color: #aebdff;
	background: linear-gradient(135deg, #f5f7ff, #f7f3ff);
}

.zire-cit-evidence-answer > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-evidence-answer strong {
	display: block;
	margin-top: 7px;
	font-size: 12px;
	line-height: 1.5;
}

.zire-cit-evidence-answer > div {
	display: flex;
	justify-content: center;
	gap: 5px;
	margin-top: 9px;
}

.zire-cit-evidence-answer b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #747f90;
	font-size: 11px;
}

.zire-cit-evidence-footer {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	margin-top: 9px;
}

.zire-cit-evidence-footer > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-evidence-footer > div.is-positive {
	background: #f0faf6;
}

.zire-cit-evidence-footer span {
	display: block;
	color: #8a94a3;
	font-size: 11px;
}

.zire-cit-evidence-footer strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}


/* =========================================================
   MAIN LIGHT WRAPPER
   ========================================================= */

.zire-cit-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-cit-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-cit-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 440px;
	background: radial-gradient(circle, rgba(49, 94, 251, .08), transparent 68%);
}

.zire-cit-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 480px;
	background: radial-gradient(circle, rgba(118, 87, 232, .07), transparent 68%);
}

.zire-cit-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-cit-main-shape--one {
	right: -145px;
	top: 760px;
}

.zire-cit-main-shape--two {
	left: -140px;
	bottom: 1070px;
}

.zire-cit-section {
	position: relative;
	z-index: 1;
}

.zire-cit-section + .zire-cit-section {
	margin-top: 92px;
}


/* =========================================================
   SHARED VISUAL STYLE
   ========================================================= */

.zire-cit-visual {
	position: relative;
	z-index: 1;
}

.zire-cit-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(49, 94, 251, .18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-cit-pages-window,
.zire-cit-pattern-window,
.zire-cit-pattern-support > div,
.zire-cit-brief-window,
.zire-cit-brief-support > div,
.zire-cit-growth-window,
.zire-cit-growth-side > div {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35, 50, 86, .09);
}


/* Copy point cards */

.zire-cit-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-cit-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255, 255, 255, .77);
}

.zire-cit-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg, #edf2ff, #f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-cit-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-cit-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-cit-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   CITED PAGES
   ========================================================= */

.zire-cit-pages-window {
	padding-bottom: 16px;
}

.zire-cit-page-summary {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-cit-page-summary > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-page-summary span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-cit-page-summary strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-cit-page-list {
	display: grid;
	padding: 0 17px;
}

.zire-cit-page-list > div {
	display: grid;
	grid-template-columns: 30px 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #edf0f4;
}

.zire-cit-page-list > div.is-your-page {
	margin: 2px -8px;
	padding: 11px 8px;
	border: 1px solid #b9c8ff;
	border-radius: 9px;
	background: linear-gradient(135deg, #f3f6ff, #f8f4ff);
}

.zire-cit-page-rank {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-cit-page-details strong {
	display: block;
	font-size: 12px;
}

.zire-cit-page-details small {
	display: block;
	margin-top: 2px;
	color: #8b95a4;
	font-size: 11px;
}

.zire-cit-page-details > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 6px;
}

.zire-cit-page-details b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #727d8e;
	font-size: 11px;
}

.zire-cit-page-count {
	text-align: right;
}

.zire-cit-page-count strong {
	display: block;
	color: #315efb;
	font-size: 14px;
}

.zire-cit-page-count span {
	display: block;
	color: #8b95a4;
	font-size: 11px;
}

.zire-cit-page-footer {
	display: grid;
	grid-template-columns: 31px 1fr;
	gap: 9px;
	align-items: center;
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f4f0ff);
}

.zire-cit-page-footer > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-cit-page-footer strong {
	display: block;
	font-size: 11px;
}

.zire-cit-page-footer small {
	display: block;
	margin-top: 2px;
	color: #828c9b;
	font-size: 11px;
}


/* =========================================================
   PATTERNS
   ========================================================= */

.zire-cit-patterns-visual {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 12px;
}

.zire-cit-pattern-window {
	padding-bottom: 16px;
}

.zire-cit-pattern-score {
	margin: 0 17px 12px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-pattern-score > div:first-child {
	display: flex;
	justify-content: space-between;
}

.zire-cit-pattern-score span,
.zire-cit-pattern-score small {
	color: #7e8998;
	font-size: 11px;
}

.zire-cit-pattern-score strong {
	color: #07885f;
	font-size: 12px;
}

.zire-cit-pattern-score__bar {
	height: 6px;
	margin: 8px 0;
	overflow: hidden;
	border-radius: 999px;
	background: #e6eaf0;
}

.zire-cit-pattern-score__bar i {
	display: block;
	width: 88%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-cit-pattern-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	padding: 0 17px;
}

.zire-cit-pattern-grid > div {
	padding: 11px;
	border: 1px solid #e6eaf0;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-cit-pattern-number {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-cit-pattern-grid strong {
	display: block;
	margin-top: 8px;
	font-size: 12px;
}

.zire-cit-pattern-grid small {
	display: block;
	margin-top: 4px;
	color: #8892a1;
	font-size: 11px;
	line-height: 1.5;
}

.zire-cit-format-strip {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 7px;
	padding: 12px 17px 0;
}

.zire-cit-format-strip > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-cit-format-strip span {
	display: block;
	color: #84909f;
	font-size: 11px;
}

.zire-cit-format-strip strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-cit-pattern-support {
	display: grid;
	gap: 12px;
}

.zire-cit-pattern-support > div {
	padding: 17px;
}

.zire-cit-pattern-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-pattern-support > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 13px;
	line-height: 1.45;
}

.zire-cit-pattern-support > div > small {
	color: #858f9f;
	font-size: 11px;
	line-height: 1.5;
}

.zire-cit-missing-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 13px;
}

.zire-cit-missing-tags b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
}


/* =========================================================
   CONTENT BRIEF
   ========================================================= */

.zire-cit-content-visual {
	display: grid;
	grid-template-columns: 1.18fr .82fr;
	gap: 12px;
}

.zire-cit-brief-window {
	padding-bottom: 16px;
}

.zire-cit-brief-prompt {
	margin: 0 17px 12px;
	padding: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #f8f9fb;
}

.zire-cit-brief-prompt > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-brief-prompt > strong {
	display: block;
	margin-top: 5px;
	font-size: 12px;
}

.zire-cit-brief-prompt > div {
	display: flex;
	gap: 5px;
	margin-top: 7px;
}

.zire-cit-brief-prompt b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #737e8f;
	font-size: 11px;
}

.zire-cit-brief-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	padding: 0 17px;
}

.zire-cit-brief-columns > div {
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-brief-columns > div > span {
	display: block;
	margin-bottom: 8px;
	color: #7d8797;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-brief-columns ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.zire-cit-brief-columns li {
	position: relative;
	padding: 5px 0 5px 16px;
	color: #667284;
	font-size: 11px;
	border-top: 1px solid #e6eaf0;
}

.zire-cit-brief-columns li:first-child {
	border-top: 0;
}

.zire-cit-brief-columns li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: #315efb;
	font-weight: 800;
}

.zire-cit-page-plan strong {
	display: block;
	font-size: 13px;
}

.zire-cit-page-plan small {
	display: block;
	margin-top: 5px;
	color: #818b9b;
	font-size: 11px;
	line-height: 1.5;
}

.zire-cit-page-plan > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 9px;
}

.zire-cit-page-plan b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #737e8e;
	font-size: 11px;
}

.zire-cit-brief-priority {
	display: grid;
	grid-template-columns: 32px 1fr auto;
	align-items: center;
	gap: 9px;
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-cit-brief-priority > span {
	width: 31px;
	height: 31px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-cit-brief-priority small {
	display: block;
	color: #826fc2;
	font-size: 11px;
}

.zire-cit-brief-priority strong {
	display: block;
	margin-top: 2px;
	font-size: 11px;
}

.zire-cit-brief-priority > b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #fff;
	color: #7657e8;
	font-size: 11px;
	white-space: nowrap;
}

.zire-cit-brief-support {
	display: grid;
	gap: 12px;
}

.zire-cit-brief-support > div {
	padding: 17px;
}

.zire-cit-brief-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-brief-support > div > strong {
	display: block;
	margin: 8px 0 4px;
	font-size: 13px;
}

.zire-cit-brief-support > div > small {
	color: #868f9e;
	font-size: 11px;
	line-height: 1.5;
}

.zire-cit-coverage-ring {
	width: 95px;
	height: 95px;
	margin: 14px auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, #fff 57%, transparent 58%),
		conic-gradient(#315efb 0 36%, #e8ecf2 36% 100%);
}

.zire-cit-coverage-ring strong {
	font-size: 18px;
}

.zire-cit-coverage-ring span {
	color: #8993a2 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	text-transform: none !important;
}

.zire-cit-check-list {
	display: grid;
	gap: 6px;
	margin-top: 12px;
}

.zire-cit-check-list b {
	padding: 7px;
	border-radius: 7px;
	background: #f0faf6;
	color: #527566;
	font-size: 11px;
	font-weight: 650;
}

.zire-cit-check-list b.is-missing {
	background: #f4f1ff;
	color: #7657e8;
}


/* =========================================================
   CITATION GROWTH
   ========================================================= */

.zire-cit-growth-visual {
	display: grid;
	grid-template-columns: 1.2fr .8fr;
	gap: 12px;
}

.zire-cit-growth-window {
	padding-bottom: 16px;
}

.zire-cit-growth-kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-cit-growth-kpis > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-growth-kpis span {
	display: block;
	color: #84909f;
	font-size: 11px;
}

.zire-cit-growth-kpis strong {
	display: block;
	margin: 4px 0;
	font-size: 16px;
}

.zire-cit-growth-kpis small {
	color: #07885f;
	font-size: 11px;
	font-weight: 700;
}

.zire-cit-growth-chart {
	position: relative;
	height: 190px;
	margin: 0 17px;
}

.zire-cit-growth-chart > div {
	position: absolute;
	inset: 0 0 22px;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 33.333%;
}

.zire-cit-growth-chart svg {
	position: relative;
	width: 100%;
	height: 165px;
}

.zire-cit-growth-milestones {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding: 12px 17px 0;
	border-top: 1px solid #edf0f4;
}

.zire-cit-growth-milestones > div {
	display: grid;
	grid-template-columns: 28px 1fr;
	gap: 8px;
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-cit-growth-milestones > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-cit-growth-milestones strong {
	display: block;
	font-size: 11px;
}

.zire-cit-growth-milestones small {
	display: block;
	margin-top: 3px;
	color: #8993a2;
	font-size: 11px;
	line-height: 1.45;
}

.zire-cit-growth-side {
	display: grid;
	gap: 12px;
}

.zire-cit-growth-side > div {
	padding: 17px;
}

.zire-cit-growth-side > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-growth-side > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 13px;
}

.zire-cit-growth-side > div > small {
	color: #858f9f;
	font-size: 11px;
}

.zire-cit-growth-side > div.is-positive {
	background:
		linear-gradient(#f8fffc, #f8fffc) padding-box,
		linear-gradient(135deg, #81dac1, #8ca5ff, #7657e8) border-box;
}

.zire-cit-mini-stat {
	display: flex;
	align-items: baseline;
	gap: 6px;
	margin: 12px 0;
}

.zire-cit-mini-stat b {
	color: #315efb;
	font-size: 25px;
}

.zire-cit-mini-stat span {
	color: #8791a0 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	text-transform: none !important;
}

.zire-cit-provider-gain {
	display: grid;
	grid-template-columns: 32px 1fr;
	gap: 9px;
	align-items: center;
	margin-top: 13px;
	padding: 10px;
	border-radius: 9px;
	background: #fff;
}

.zire-cit-provider-gain img {
	width: 29px;
	height: 29px;
	object-fit: contain;
}

.zire-cit-provider-gain b {
	display: block;
	font-size: 12px;
}

.zire-cit-provider-gain small {
	display: block;
	margin-top: 2px;
	color: #7f8998;
	font-size: 11px;
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-cit-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-cit-mini-prompts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zire-cit-mini-prompts > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-cit-mini-prompts strong {
	display: block;
	font-size: 16px;
}

.zire-cit-mini-prompts span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-cit-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-cit-mini-recommendation > strong {
	display: block;
	margin: 10px 0 4px;
	color: #28313d;
	font-size: 13px;
}

.zire-cit-mini-recommendation > small {
	color: #858f9f;
	font-size: 11px;
}

.zire-cit-google-feature-icon img {
	width: 21px;
	height: 21px;
	object-fit: contain;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-cit-providers__grid,
	.zire-cit-provider-strip {
		grid-template-columns: repeat(3, 1fr);
	}

	.zire-cit-overview__body {
		grid-template-columns: 260px 1fr;
	}

	.zire-cit-overview-lower {
		grid-template-columns: 1fr;
	}

}


@media (max-width: 1050px) {

	.zire-cit-patterns-visual,
	.zire-cit-content-visual,
	.zire-cit-growth-visual {
		grid-template-columns: 1fr;
	}

	.zire-cit-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-cit-overview__body {
		grid-template-columns: 1fr;
	}

	.zire-cit-overview__sources {
		border-right: 0;
		border-bottom: 1px solid #e7ebf1;
	}

	.zire-cit-overview-signals {
		grid-template-columns: repeat(2, 1fr);
	}

	.zire-cit-evidence-map {
		height: auto;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}

	.zire-cit-evidence-source,
	.zire-cit-evidence-answer {
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
		width: auto;
	}

	.zire-cit-evidence-answer {
		grid-column: 1 / 3;
	}

	.zire-cit-evidence-lines {
		display: none;
	}

	.zire-cit-growth-kpis,
	.zire-cit-growth-milestones {
		grid-template-columns: 1fr 1fr;
	}

}


@media (max-width: 700px) {

	.zire-cit-overview {
		padding: 16px;
	}

	.zire-cit-overview__kpis,
	.zire-cit-provider-strip,
	.zire-cit-overview-signals {
		grid-template-columns: 1fr 1fr;
	}

	.zire-cit-providers {
		padding-top: 85px;
	}

	.zire-cit-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-cit-main {
		padding: 85px 18px 90px;
	}

	.zire-cit-section + .zire-cit-section {
		margin-top: 72px;
	}

	.zire-cit-page-summary,
	.zire-cit-pattern-grid,
	.zire-cit-format-strip,
	.zire-cit-brief-columns,
	.zire-cit-growth-kpis,
	.zire-cit-growth-milestones,
	.zire-cit-evidence-footer {
		grid-template-columns: 1fr;
	}

	.zire-cit-page-list > div {
		grid-template-columns: 30px 1fr;
	}

	.zire-cit-page-count {
		grid-column: 2;
		text-align: left;
	}

	.zire-cit-evidence-map {
		grid-template-columns: 1fr;
	}

	.zire-cit-evidence-answer {
		grid-column: auto;
	}

	.zire-cit-brief-priority {
		grid-template-columns: 32px 1fr;
	}

	.zire-cit-brief-priority > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-cit-main-shape {
		width: 260px;
		height: 260px;
	}

	.zire-cit-top-shape {
		display: none;
	}

}

/* =========================================================
   GOOGLE SEARCH TRACKING — PAGE-SPECIFIC CSS ONLY

   REUSES EXISTING PLATFORM CSS FOR:
   - Hero
   - Buttons
   - Typography
   - Stage layouts
   - Dark section
   - Connected features
   - FAQs
   - Final CTA
   - Reveal/chart hooks

   Minimum visual text size: 9px
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-gst-top {
	padding-bottom: 120px;
}

.zire-gst-top-shape-wrap {
	position: relative;
}

.zire-gst-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO OVERVIEW
   ========================================================= */

.zire-gst-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-gst-overview {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255,255,255,.98);
	box-shadow: 0 38px 90px rgba(26,39,73,.13);
}

.zire-gst-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 18px;
}

.zire-gst-overview__head > div:first-child > span,
.zire-gst-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-gst-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-gst-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-gst-live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-gst-live > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* Overview tabs */

.zire-gst-overview-tabs {
	display: inline-flex;
	gap: 6px;
	margin-bottom: 13px;
	padding: 4px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-gst-overview-tabs > div {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 7px 10px;
	border-radius: 7px;
	color: #707b8c;
	font-size: 11px;
	font-weight: 700;
}

.zire-gst-overview-tabs > div.is-active {
	background: #fff;
	color: #315efb;
	box-shadow: 0 4px 12px rgba(32,47,78,.06);
}

.zire-gst-overview-tabs img {
	width: 16px;
	height: 16px;
	object-fit: contain;
}

.zire-gst-overview-tabs > div > span {
	width: 16px;
	height: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #fff;
	color: #202936;
	font-size: 11px;
	font-weight: 800;
}


/* KPI row */

.zire-gst-overview__kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 12px;
}

.zire-gst-overview__kpis > div {
	padding: 15px;
	border: 1px solid #e7ebf1;
	border-radius: 11px;
	background: #fafbfe;
}

.zire-gst-overview__kpis span {
	display: block;
	margin-bottom: 8px;
	color: #768193;
	font-size: 12px;
}

.zire-gst-overview__kpis strong {
	display: block;
	color: #171d27;
	font-size: 25px;
	letter-spacing: -1px;
}

.zire-gst-overview__kpis small {
	display: block;
	margin-top: 4px;
	color: #929aa7;
	font-size: 11px;
}


/* Main overview body */

.zire-gst-overview__body {
	display: grid;
	grid-template-columns: 1.35fr .65fr;
	gap: 10px;
}

.zire-gst-overview-chart,
.zire-gst-health-card,
.zire-gst-overview-opportunity,
.zire-gst-prompt-snapshot {
	border: 1px solid #e5e9ef;
	border-radius: 12px;
	background: #fff;
}

.zire-gst-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-gst-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-gst-card-head > small {
	color: #8993a2;
	font-size: 11px;
}


/* Chart */

.zire-gst-chart-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	padding: 10px 17px 0;
}

.zire-gst-chart-legend span {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #788393;
	font-size: 11px;
}

.zire-gst-chart-legend i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
}

.zire-gst-chart-legend .is-overview {
	background: #315efb;
}

.zire-gst-chart-legend .is-mention {
	background: #7657e8;
}

.zire-gst-chart-legend .is-organic {
	background: #18a08e;
}

.zire-gst-chart {
	position: relative;
	height: 220px;
	padding: 10px 17px 26px;
}

.zire-gst-chart > div {
	position: absolute;
	inset: 10px 17px 26px;
	background:
		linear-gradient(to bottom, rgba(35,48,71,.05) 1px, transparent 1px);
	background-size: 100% 25%;
}

.zire-gst-chart svg {
	position: relative;
	width: 100%;
	height: 180px;
}

.zire-gst-chart-axis {
	display: flex;
	justify-content: space-between;
	color: #929ba8;
	font-size: 11px;
}


/* Health */

.zire-gst-overview-side {
	display: grid;
	gap: 10px;
}

.zire-gst-health-card {
	overflow: hidden;
}

.zire-gst-health-status {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	margin: 13px;
	padding: 12px;
	border-radius: 10px;
	background: linear-gradient(135deg,#f4f7ff,#f8f5ff);
}

.zire-gst-health-status > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #fff;
}

.zire-gst-health-status img {
	width: 23px;
	height: 23px;
	object-fit: contain;
}

.zire-gst-health-status strong {
	display: block;
	font-size: 12px;
}

.zire-gst-health-status small {
	display: block;
	margin-top: 3px;
	color: #84909f;
	font-size: 11px;
	line-height: 1.45;
}

.zire-gst-health-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	padding: 0 13px 13px;
}

.zire-gst-health-grid > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-gst-health-grid span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-gst-health-grid strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-gst-overview-opportunity {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: center;
	gap: 9px;
	padding: 12px;
	background: linear-gradient(135deg,#eef3ff,#f6f2ff);
}

.zire-gst-overview-opportunity > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: linear-gradient(135deg,#315efb,#7657e8);
	color: #fff;
}

.zire-gst-overview-opportunity small {
	display: block;
	color: #7666b6;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-overview-opportunity strong {
	display: block;
	margin-top: 3px;
	color: #424c60;
	font-size: 11px;
	line-height: 1.5;
}


/* Prompt snapshot */

.zire-gst-prompt-snapshot {
	display: grid;
	grid-template-columns: 1.8fr repeat(4, .7fr);
	gap: 0;
	margin-top: 10px;
	overflow: hidden;
}

.zire-gst-prompt-snapshot > div {
	padding: 11px 12px;
	border-right: 1px solid #edf0f4;
}

.zire-gst-prompt-snapshot > div:last-child {
	border-right: 0;
}

.zire-gst-prompt-snapshot span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-gst-prompt-snapshot strong {
	display: block;
	margin-top: 4px;
	color: #28313d;
	font-size: 11px;
	line-height: 1.4;
}

.zire-gst-prompt-state.is-positive strong {
	color: #07885f;
}


/* =========================================================
   PROVIDER ROW
   ========================================================= */

.zire-gst-providers {
	padding-top: 110px;
}

.zire-gst-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-gst-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-gst-providers__heading h2,
.zire-gst-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-gst-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-gst-providers__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 11px;
}

.zire-gst-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255,255,255,.92);
	box-shadow: 0 14px 36px rgba(34,48,80,.05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-gst-providers__grid > a.is-google {
	border-color: #b9c6ff;
	box-shadow:
		0 14px 36px rgba(34,48,80,.06),
		inset 0 2px 0 #315efb;
}

.zire-gst-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34,48,80,.09);
}

.zire-gst-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-gst-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-gst-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-gst-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-gst-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-gst-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-gst-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-gst-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 10px;
	background: rgba(255,255,255,.038);
}

.zire-gst-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98,121,255,.15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-gst-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-gst-dark__points small {
	display: block;
	color: rgba(255,255,255,.43);
	font-size: 11px;
}


/* Dual result window */

.zire-gst-query-window {
	padding: 23px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0,0,0,.22);
	color: #1c2430;
}

.zire-gst-query-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-gst-query-head > div {
	display: flex;
	align-items: center;
	gap: 8px;
}

.zire-gst-query-head img {
	width: 21px;
	height: 21px;
	object-fit: contain;
}

.zire-gst-query-head span {
	color: #758092;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-query-head small {
	color: #8c95a3;
	font-size: 11px;
}

.zire-gst-query-search {
	display: grid;
	grid-template-columns: 30px 1fr 25px;
	align-items: center;
	gap: 9px;
	margin-top: 13px;
	padding: 11px 12px;
	border: 1px solid #dfe4ec;
	border-radius: 999px;
}

.zire-gst-query-search > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #f4f5f8;
	color: #303844;
	font-size: 12px;
	font-weight: 800;
}

.zire-gst-query-search strong {
	font-size: 12px;
}

.zire-gst-query-search i {
	color: #315efb;
	font-style: normal;
	font-size: 13px;
}

.zire-gst-query-results {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: 12px;
}

.zire-gst-query-overview,
.zire-gst-query-organic {
	padding: 13px;
	border: 1px solid #e4e8ef;
	border-radius: 12px;
	background: #fbfcfe;
}

.zire-gst-query-label {
	display: grid;
	grid-template-columns: 30px 1fr auto;
	align-items: center;
	gap: 8px;
	padding-bottom: 10px;
	border-bottom: 1px solid #e8ecf2;
}

.zire-gst-query-label > span {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-gst-query-label strong {
	display: block;
	font-size: 12px;
}

.zire-gst-query-label small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-gst-query-label > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-gst-ai-answer {
	padding: 11px 0;
}

.zire-gst-ai-answer p {
	margin: 0;
	color: #697486;
	font-size: 11px;
	line-height: 1.6;
}

.zire-gst-ai-brands {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 9px;
}

.zire-gst-ai-brands span {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef1f5;
	color: #6d7889;
	font-size: 11px;
}

.zire-gst-ai-brands span.is-brand {
	background: #edf2ff;
	color: #315efb;
	font-weight: 750;
}

.zire-gst-ai-sources {
	display: grid;
	gap: 6px;
}

.zire-gst-ai-sources > div {
	display: grid;
	grid-template-columns: 24px 1fr;
	align-items: center;
	gap: 7px;
	padding: 7px;
	border-radius: 7px;
	background: #fff;
}

.zire-gst-ai-sources > div.is-brand {
	border: 1px solid #bdcaff;
	background: #f4f7ff;
}

.zire-gst-ai-sources span {
	width: 23px;
	height: 23px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-gst-ai-sources strong {
	font-size: 11px;
}

.zire-gst-serp-list {
	display: grid;
	padding-top: 5px;
}

.zire-gst-serp-list > div {
	position: relative;
	display: grid;
	grid-template-columns: 25px 1fr;
	gap: 7px;
	padding: 7px 0;
	border-top: 1px solid #edf0f4;
}

.zire-gst-serp-list > div:first-child {
	border-top: 0;
}

.zire-gst-serp-list > div.is-brand {
	margin: 2px -6px;
	padding: 7px 6px;
	border: 1px solid #bdcaff;
	border-radius: 8px;
	background: #f4f7ff;
}

.zire-gst-serp-list i {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #eef1f5;
	color: #697486;
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
}

.zire-gst-serp-list span {
	display: block;
	color: #07885f;
	font-size: 11px;
}

.zire-gst-serp-list strong {
	display: block;
	margin-top: 2px;
	font-size: 11px;
}

.zire-gst-serp-list small {
	display: block;
	margin-top: 2px;
	color: #8c95a3;
	font-size: 11px;
}

.zire-gst-serp-list > div > b {
	position: absolute;
	right: 5px;
	top: 7px;
	color: #07885f;
	font-size: 11px;
}

.zire-gst-query-footer {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
	margin-top: 11px;
}

.zire-gst-query-footer > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-gst-query-footer span {
	display: block;
	color: #8892a1;
	font-size: 11px;
}

.zire-gst-query-footer strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-gst-query-footer strong.is-positive {
	color: #07885f;
}


/* =========================================================
   LIGHT WRAPPER
   ========================================================= */

.zire-gst-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-gst-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-gst-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 480px;
	background: radial-gradient(circle,rgba(49,94,251,.08),transparent 68%);
}

.zire-gst-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 520px;
	background: radial-gradient(circle,rgba(118,87,232,.07),transparent 68%);
}

.zire-gst-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-gst-main-shape--one {
	right: -140px;
	top: 780px;
}

.zire-gst-main-shape--two {
	left: -145px;
	bottom: 980px;
}

.zire-gst-section {
	position: relative;
	z-index: 1;
}

.zire-gst-section + .zire-gst-section {
	margin-top: 92px;
}


/* =========================================================
   SHARED PRODUCT VISUALS
   ========================================================= */

.zire-gst-visual {
	position: relative;
	z-index: 1;
}

.zire-gst-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-gst-ai-window,
.zire-gst-ai-support > div,
.zire-gst-organic-window,
.zire-gst-landscape-window,
.zire-gst-landscape-support > div,
.zire-gst-progress-window,
.zire-gst-progress-side > div {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#b49dff,#7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35,50,86,.09);
}


/* Shared copy list */

.zire-gst-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-gst-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255,255,255,.77);
}

.zire-gst-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-gst-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-gst-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}


/* =========================================================
   AI OVERVIEW VISUAL
   ========================================================= */

.zire-gst-ai-visual {
	display: grid;
	grid-template-columns: 1.18fr .82fr;
	gap: 12px;
}

.zire-gst-ai-window {
	padding-bottom: 16px;
}

.zire-gst-ai-window__prompt {
	margin: 0 17px 12px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-gst-ai-window__prompt span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-ai-window__prompt strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-gst-ai-window__answer {
	margin: 0 17px 12px;
	padding: 13px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	background: #fbfcfe;
}

.zire-gst-ai-window__answer-head {
	display: grid;
	grid-template-columns: 31px 1fr auto;
	align-items: center;
	gap: 8px;
	padding-bottom: 10px;
	border-bottom: 1px solid #e8ecf2;
}

.zire-gst-ai-window__answer-head > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
}

.zire-gst-ai-window__answer-head strong {
	display: block;
	font-size: 12px;
}

.zire-gst-ai-window__answer-head small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-gst-ai-window__answer-head > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-gst-ai-window__answer p {
	margin: 11px 0;
	color: #6f7a8a;
	font-size: 11px;
	line-height: 1.65;
}

.zire-gst-ai-window__brand-row {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 7px;
}

.zire-gst-ai-window__brand-row > div {
	padding: 8px;
	border-radius: 8px;
	background: #f5f7fa;
}

.zire-gst-ai-window__brand-row span {
	display: block;
	color: #8a94a3;
	font-size: 11px;
}

.zire-gst-ai-window__brand-row strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-gst-ai-window__brand-row .is-positive strong {
	color: #07885f;
}

.zire-gst-ai-window__sources {
	display: grid;
	padding: 0 17px;
}

.zire-gst-ai-window__sources > div {
	display: grid;
	grid-template-columns: 28px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-gst-ai-window__sources > div.is-brand {
	margin: 2px -7px;
	padding: 9px 7px;
	border: 1px solid #bdcaff;
	border-radius: 8px;
	background: #f4f7ff;
}

.zire-gst-ai-window__sources > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-gst-ai-window__sources strong {
	display: block;
	font-size: 11px;
}

.zire-gst-ai-window__sources small {
	display: block;
	margin-top: 2px;
	color: #8c95a3;
	font-size: 11px;
}

.zire-gst-ai-window__sources > div > b {
	color: #315efb;
	font-size: 11px;
}

.zire-gst-ai-support {
	display: grid;
	gap: 12px;
}

.zire-gst-ai-support > div {
	padding: 17px;
}

.zire-gst-ai-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-ai-support > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 15px;
}

.zire-gst-ai-support > div > small {
	color: #858f9f;
	font-size: 11px;
	line-height: 1.5;
}

.zire-gst-coverage-dots {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	gap: 6px;
	margin: 14px 0;
}

.zire-gst-coverage-dots i {
	height: 13px;
	border-radius: 4px;
	background: linear-gradient(135deg,#315efb,#7657e8);
}

.zire-gst-coverage-dots i.is-empty {
	border: 1px dashed #c6cedb;
	background: transparent;
}

.zire-gst-inclusion-bar {
	height: 9px;
	margin: 15px 0;
	overflow: hidden;
	border-radius: 999px;
	background: #e8ecf2;
}

.zire-gst-inclusion-bar i {
	display: block;
	width: 42%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}


/* =========================================================
   ORGANIC VISUAL
   ========================================================= */

.zire-gst-organic-window {
	padding-bottom: 16px;
}

.zire-gst-organic-summary {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-gst-organic-summary > div {
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-gst-organic-summary span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-gst-organic-summary strong {
	display: block;
	margin: 4px 0;
	font-size: 16px;
}

.zire-gst-organic-summary small {
	color: #8b95a4;
	font-size: 11px;
}

.zire-gst-ranking-list {
	display: grid;
	padding: 0 17px;
}

.zire-gst-ranking-list > div {
	display: grid;
	grid-template-columns: 30px 1fr 70px 40px;
	align-items: center;
	gap: 9px;
	padding: 11px 0;
	border-top: 1px solid #edf0f4;
}

.zire-gst-ranking-list > div.is-top {
	margin: 2px -7px;
	padding: 10px 7px;
	border: 1px solid #bdcaff;
	border-radius: 9px;
	background: #f4f7ff;
}

.zire-gst-rank-number {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-gst-ranking-list strong {
	display: block;
	font-size: 11px;
}

.zire-gst-ranking-list small {
	display: block;
	margin-top: 2px;
	color: #8b95a4;
	font-size: 11px;
}

.zire-gst-rank-current {
	text-align: center;
}

.zire-gst-rank-current span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-gst-rank-current strong {
	display: block;
	margin-top: 2px;
	color: #315efb;
	font-size: 13px;
}

.zire-gst-ranking-list > div > b {
	font-size: 11px;
	color: #8993a2;
	text-align: right;
}

.zire-gst-ranking-list > div > b.is-up {
	color: #07885f;
}

.zire-gst-organic-change {
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f6f2ff);
}

.zire-gst-organic-change > div:first-child {
	display: flex;
	justify-content: space-between;
}

.zire-gst-organic-change span,
.zire-gst-organic-change small {
	color: #7d8797;
	font-size: 11px;
}

.zire-gst-organic-change strong {
	color: #315efb;
	font-size: 12px;
}

.zire-gst-organic-change__bar {
	height: 7px;
	margin: 8px 0;
	border-radius: 999px;
	background: #dfe5f3;
	overflow: hidden;
}

.zire-gst-organic-change__bar i {
	display: block;
	width: 77%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}


/* =========================================================
   LANDSCAPE VISUAL
   ========================================================= */

.zire-gst-landscape-visual {
	display: grid;
	grid-template-columns: 1.18fr .82fr;
	gap: 12px;
}

.zire-gst-landscape-window {
	padding-bottom: 16px;
}

.zire-gst-landscape-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	padding: 0 17px 12px;
}

.zire-gst-landscape-columns > div {
	padding: 11px;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-gst-landscape-title span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-landscape-title strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-gst-landscape-bars {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.zire-gst-landscape-bars > div {
	display: grid;
	grid-template-columns: 80px 1fr 30px;
	align-items: center;
	gap: 7px;
}

.zire-gst-landscape-bars span,
.zire-gst-landscape-bars strong {
	font-size: 11px;
}

.zire-gst-landscape-bars i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e1e6ee;
}

.zire-gst-landscape-bars b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#7657e8,#315efb);
}

.zire-gst-landscape-bars .is-brand b {
	background: #315efb;
}

.zire-gst-source-list {
	display: grid;
	margin-top: 10px;
}

.zire-gst-source-list > div {
	display: grid;
	grid-template-columns: 26px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #e5e9ef;
}

.zire-gst-source-list > div > span {
	width: 25px;
	height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-gst-source-list strong,
.zire-gst-source-list b {
	font-size: 11px;
}

.zire-gst-source-list > div.is-brand {
	color: #315efb;
}

.zire-gst-serp-opportunity {
	display: grid;
	grid-template-columns: 31px 1fr auto;
	align-items: center;
	gap: 9px;
	margin: 0 17px;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-gst-serp-opportunity > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-gst-serp-opportunity small {
	display: block;
	color: #7e6abd;
	font-size: 11px;
}

.zire-gst-serp-opportunity strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.45;
}

.zire-gst-serp-opportunity > b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #fff;
	color: #07885f;
	font-size: 11px;
	white-space: nowrap;
}

.zire-gst-landscape-support {
	display: grid;
	gap: 12px;
}

.zire-gst-landscape-support > div {
	padding: 17px;
}

.zire-gst-landscape-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-landscape-support > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 14px;
}

.zire-gst-landscape-support > div > small {
	color: #858f9f;
	font-size: 11px;
	line-height: 1.5;
}

.zire-gst-overlap-circles {
	position: relative;
	height: 92px;
	margin-top: 13px;
}

.zire-gst-overlap-circles i {
	position: absolute;
	top: 0;
	width: 86px;
	height: 86px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
}

.zire-gst-overlap-circles i:first-child {
	left: calc(50% - 70px);
	background: rgba(49,94,251,.16);
	color: #315efb;
}

.zire-gst-overlap-circles i:last-child {
	left: calc(50% - 16px);
	background: rgba(118,87,232,.14);
	color: #7657e8;
}

.zire-gst-theme-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 12px 0;
}

.zire-gst-theme-tags b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #eef1f5;
	color: #6c7788;
	font-size: 11px;
}


/* =========================================================
   PROGRESS
   ========================================================= */

.zire-gst-progress-visual {
	display: grid;
	grid-template-columns: 1.2fr .8fr;
	gap: 12px;
}

.zire-gst-progress-window {
	padding-bottom: 16px;
}

.zire-gst-progress-kpis {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-gst-progress-kpis > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-gst-progress-kpis span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-gst-progress-kpis strong {
	display: block;
	margin: 4px 0;
	font-size: 13px;
}

.zire-gst-progress-kpis small {
	color: #07885f;
	font-size: 11px;
	font-weight: 700;
}

.zire-gst-progress-chart {
	position: relative;
	height: 190px;
	margin: 0 17px;
}

.zire-gst-progress-chart > div {
	position: absolute;
	inset: 0 0 22px;
	background:
		linear-gradient(to bottom,rgba(35,48,71,.05) 1px,transparent 1px);
	background-size: 100% 33.333%;
}

.zire-gst-progress-chart svg {
	position: relative;
	width: 100%;
	height: 165px;
}

.zire-gst-progress-events {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
	padding: 12px 17px 0;
	border-top: 1px solid #edf0f4;
}

.zire-gst-progress-events > div {
	display: grid;
	grid-template-columns: 28px 1fr;
	gap: 8px;
	padding: 9px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-gst-progress-events > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-gst-progress-events strong {
	display: block;
	font-size: 11px;
}

.zire-gst-progress-events small {
	display: block;
	margin-top: 3px;
	color: #8993a2;
	font-size: 11px;
	line-height: 1.4;
}

.zire-gst-progress-side {
	display: grid;
	gap: 12px;
}

.zire-gst-progress-side > div {
	padding: 17px;
}

.zire-gst-progress-side > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-progress-side > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 16px;
}

.zire-gst-progress-side > div > small {
	color: #858f9f;
	font-size: 11px;
	line-height: 1.5;
}

.zire-gst-progress-side > div.is-positive {
	background:
		linear-gradient(#f8fffc,#f8fffc) padding-box,
		linear-gradient(135deg,#81dac1,#8ca5ff,#7657e8) border-box;
}

.zire-gst-position-ladder {
	display: flex;
	align-items: end;
	gap: 6px;
	margin-top: 15px;
}

.zire-gst-position-ladder i {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px 6px 2px 2px;
	background: linear-gradient(180deg,#315efb,#7657e8);
	color: #fff;
	font-size: 11px;
	font-style: normal;
}

.zire-gst-position-ladder i:nth-child(1) {
	height: 28px;
	opacity: .42;
}

.zire-gst-position-ladder i:nth-child(2) {
	height: 38px;
	opacity: .54;
}

.zire-gst-position-ladder i:nth-child(3) {
	height: 49px;
	opacity: .68;
}

.zire-gst-position-ladder i:nth-child(4) {
	height: 60px;
	opacity: .82;
}

.zire-gst-position-ladder i:nth-child(5) {
	height: 73px;
}

.zire-gst-google-gain {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 9px;
	margin-top: 14px;
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-gst-google-gain img {
	width: 30px;
	height: 30px;
	object-fit: contain;
}

.zire-gst-google-gain b {
	display: block;
	font-size: 12px;
}

.zire-gst-google-gain small {
	display: block;
	margin-top: 2px;
	font-size: 11px;
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-gst-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-gst-mini-prompts {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
}

.zire-gst-mini-prompts > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-gst-mini-prompts strong {
	display: block;
	font-size: 16px;
}

.zire-gst-mini-prompts span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-gst-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #f0ebff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-gst-mini-recommendation > strong {
	display: block;
	margin: 10px 0 4px;
	color: #28313d;
	font-size: 13px;
}

.zire-gst-mini-recommendation > small {
	color: #858f9f;
	font-size: 11px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-gst-providers__grid {
		grid-template-columns: repeat(3,1fr);
	}

	.zire-gst-overview__body {
		grid-template-columns: 1fr;
	}

	.zire-gst-prompt-snapshot {
		grid-template-columns: 1.5fr repeat(2,1fr);
	}

}


@media (max-width: 1050px) {

	.zire-gst-ai-visual,
	.zire-gst-landscape-visual,
	.zire-gst-progress-visual {
		grid-template-columns: 1fr;
	}

	.zire-gst-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-gst-query-results,
	.zire-gst-landscape-columns {
		grid-template-columns: 1fr;
	}

	.zire-gst-progress-kpis,
	.zire-gst-progress-events,
	.zire-gst-ai-window__brand-row {
		grid-template-columns: 1fr 1fr;
	}

}


@media (max-width: 700px) {

	.zire-gst-overview {
		padding: 16px;
	}

	.zire-gst-overview__kpis,
	.zire-gst-prompt-snapshot {
		grid-template-columns: 1fr 1fr;
	}

	.zire-gst-prompt-snapshot > div:first-child {
		grid-column: 1 / 3;
	}

	.zire-gst-providers {
		padding-top: 85px;
	}

	.zire-gst-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-gst-main {
		padding: 85px 18px 90px;
	}

	.zire-gst-section + .zire-gst-section {
		margin-top: 72px;
	}

	.zire-gst-query-footer,
	.zire-gst-organic-summary,
	.zire-gst-progress-kpis,
	.zire-gst-progress-events {
		grid-template-columns: 1fr;
	}

	.zire-gst-ranking-list > div {
		grid-template-columns: 30px 1fr 50px;
	}

	.zire-gst-ranking-list > div > b {
		grid-column: 2;
		text-align: left;
	}

	.zire-gst-serp-opportunity {
		grid-template-columns: 31px 1fr;
	}

	.zire-gst-serp-opportunity > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-gst-main-shape {
		width: 260px;
		height: 260px;
	}

	.zire-gst-top-shape {
		display: none;
	}

}

/* =========================================================
   RECOMMENDATIONS — PAGE-SPECIFIC CSS ONLY

   REUSES PLATFORM CSS FOR:
   - Hero / typography / buttons
   - Stage layouts
   - Dark section
   - Connected feature cards
   - FAQs
   - Final CTA
   - Reveal/chart hooks

   Minimum visual text size: 9px
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-rec-top {
	padding-bottom: 120px;
}

.zire-rec-top-shape-wrap {
	position: relative;
}

.zire-rec-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO RECOMMENDATIONS WINDOW
   ========================================================= */

.zire-rec-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-rec-overview {
	padding: 26px;
	border: 1px solid rgba(27,37,58,.10);
	border-radius: 22px;
	background: rgba(255,255,255,.98);
	box-shadow: 0 38px 90px rgba(26,39,73,.13);
}

.zire-rec-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 15px;
}

.zire-rec-overview__head > div:first-child > span,
.zire-rec-card-head > div > span,
.zire-rec-section-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-rec-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-rec-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-rec-live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-rec-live > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* Tabs */

.zire-rec-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}

.zire-rec-tabs > div {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 7px 10px;
	border: 1px solid #e5e9ef;
	border-radius: 999px;
	background: #fff;
	color: #778293;
	font-size: 11px;
	font-weight: 700;
}

.zire-rec-tabs > div.is-active {
	border-color: #c6d1ff;
	background: #eef3ff;
	color: #315efb;
}

.zire-rec-tabs span {
	padding: 2px 5px;
	border-radius: 999px;
	background: #f0f2f6;
	font-size: 11px;
}


/* Body */

.zire-rec-overview__body {
	display: grid;
	grid-template-columns: 38% 62%;
	min-height: 660px;
	overflow: hidden;
	border: 1px solid #e6eaf0;
	border-radius: 14px;
	background: #fff;
}


/* Recommendation list */

.zire-rec-list {
	border-right: 1px solid #e6eaf0;
	background: #fbfcfe;
}

.zire-rec-list__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 15px;
	border-bottom: 1px solid #e9edf2;
}

.zire-rec-list__head strong {
	display: block;
	font-size: 13px;
}

.zire-rec-list__head span {
	display: block;
	margin-top: 2px;
	color: #8b95a4;
	font-size: 11px;
}

.zire-rec-list__head > span {
	margin-top: 0;
	color: #315efb;
	font-weight: 750;
}

.zire-rec-list__items {
	display: grid;
}

.zire-rec-list__items > div {
	display: grid;
	grid-template-columns: 45px 1fr 35px;
	align-items: start;
	gap: 9px;
	padding: 14px 13px;
	border-top: 1px solid #edf0f4;
	background: #fff;
}

.zire-rec-list__items > div.is-active {
	background: linear-gradient(90deg,#eef3ff,#f8f7ff);
	box-shadow: inset 3px 0 0 #315efb;
}

.zire-rec-list__items strong {
	display: block;
	color: #28313d;
	font-size: 12px;
	line-height: 1.45;
}

.zire-rec-list__items > div > div:nth-child(2) > div {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 7px;
}

.zire-rec-list__items > div > div:nth-child(2) span {
	padding: 3px 5px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #788393;
	font-size: 11px;
}

.zire-rec-list__items > div > b {
	color: #315efb;
	font-size: 13px;
	text-align: right;
}

.zire-rec-priority {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 23px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
}

.zire-rec-priority.is-high {
	background: #fff0ef;
	color: #d6574e;
}

.zire-rec-priority.is-medium {
	background: #fff7df;
	color: #a77b14;
}


/* Detail */

.zire-rec-detail {
	padding: 18px;
}

.zire-rec-detail__head {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e9edf2;
}

.zire-rec-detail__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 6px;
}

.zire-rec-detail__meta span {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #738091;
	font-size: 11px;
}

.zire-rec-detail__meta span.is-high {
	background: #fff0ef;
	color: #d6574e;
}

.zire-rec-detail__head h3 {
	margin: 0;
	color: #202833;
	font-size: 16px;
	line-height: 1.35;
}

.zire-rec-opportunity-score {
	min-width: 88px;
	text-align: right;
}

.zire-rec-opportunity-score span {
	display: block;
	color: #8892a1;
	font-size: 11px;
}

.zire-rec-opportunity-score strong {
	color: #202833;
	font-size: 27px;
}

.zire-rec-opportunity-score small {
	color: #929ba8;
	font-size: 11px;
}


/* Why */

.zire-rec-why {
	margin-top: 12px;
	padding: 12px;
	border-radius: 10px;
	background: linear-gradient(135deg,#f3f6ff,#f7f3ff);
}

.zire-rec-why > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-why p {
	margin: 6px 0 0;
	color: #637084;
	font-size: 12px;
	line-height: 1.55;
}


/* Associated prompt */

.zire-rec-associated {
	margin-top: 12px;
	padding: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
}

.zire-rec-associated > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-associated > strong {
	display: block;
	margin-top: 5px;
	font-size: 13px;
}

.zire-rec-associated__stats {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 7px;
	margin-top: 10px;
}

.zire-rec-associated__stats > div {
	padding: 8px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rec-associated__stats span {
	display: block;
	color: #8791a0;
	font-size: 11px;
}

.zire-rec-associated__stats strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}


/* Winning content */

.zire-rec-winning,
.zire-rec-strategy {
	margin-top: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	overflow: hidden;
}

.zire-rec-section-head {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 12px;
	border-bottom: 1px solid #edf0f4;
}

.zire-rec-section-head strong {
	display: block;
	font-size: 12px;
}

.zire-rec-section-head small {
	color: #8d96a4;
	font-size: 11px;
}

.zire-rec-winning__list {
	display: grid;
	padding: 0 12px;
}

.zire-rec-winning__list > div {
	display: grid;
	grid-template-columns: 28px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-rec-winning__list > div:first-child {
	border-top: 0;
}

.zire-rec-winning__list > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-rec-winning__list strong {
	display: block;
	font-size: 11px;
}

.zire-rec-winning__list small {
	display: block;
	margin-top: 2px;
	color: #8b95a4;
	font-size: 11px;
}

.zire-rec-winning__list > div > b {
	color: #315efb;
	font-size: 11px;
}


/* Strategy */

.zire-rec-strategy__grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 7px;
	padding: 12px;
}

.zire-rec-strategy__grid > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rec-strategy__grid span {
	display: inline-flex;
	padding: 3px 5px;
	border-radius: 999px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-rec-strategy__grid strong {
	display: block;
	margin-top: 7px;
	font-size: 11px;
}

.zire-rec-strategy__grid small {
	display: block;
	margin-top: 3px;
	color: #8791a0;
	font-size: 11px;
	line-height: 1.4;
}


/* Create */

.zire-rec-create {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 12px;
	padding: 12px;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-rec-create span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-create strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rec-create small {
	display: block;
	margin-top: 3px;
	color: #8791a0;
	font-size: 11px;
}

.zire-rec-create button {
	padding: 9px 12px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg,#315efb,#7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 750;
	white-space: nowrap;
}


/* =========================================================
   PROVIDERS
   ========================================================= */

.zire-rec-providers {
	padding-top: 110px;
}

.zire-rec-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-rec-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-rec-providers__heading h2,
.zire-rec-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-rec-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-rec-providers__grid {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	gap: 11px;
}

.zire-rec-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255,255,255,.92);
	box-shadow: 0 14px 36px rgba(34,48,80,.05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-rec-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34,48,80,.09);
}

.zire-rec-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-rec-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-rec-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-rec-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-rec-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-rec-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-rec-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-rec-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 10px;
	background: rgba(255,255,255,.038);
}

.zire-rec-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98,121,255,.15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-rec-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-rec-dark__points small {
	display: block;
	color: rgba(255,255,255,.43);
	font-size: 11px;
}


/* Flow visual */

.zire-rec-flow-window {
	padding: 22px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0,0,0,.22);
	color: #1c2430;
}

.zire-rec-flow-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-rec-flow-head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-flow-head strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-rec-flow-head small {
	color: #d6574e;
	font-size: 11px;
	font-weight: 750;
}

.zire-rec-flow {
	padding-top: 12px;
}

.zire-rec-flow-step {
	display: grid;
	grid-template-columns: 34px 1fr;
	gap: 9px;
	padding: 10px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	background: #fbfcfe;
}

.zire-rec-flow-step__number {
	width: 33px;
	height: 33px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-rec-flow-step__body > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-flow-step__body > strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rec-flow-step__body > div:not(.zire-rec-flow-evidence):not(.zire-rec-gap-row) {
	display: flex;
	gap: 5px;
	margin-top: 7px;
}

.zire-rec-flow-step__body b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef1f5;
	color: #717c8d;
	font-size: 11px;
}

.zire-rec-flow-arrow {
	padding: 3px 0;
	text-align: center;
	color: #8da1ff;
	font-size: 14px;
}

.zire-rec-flow-evidence {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 6px;
	margin-top: 8px;
}

.zire-rec-flow-evidence > div {
	padding: 8px;
	border-radius: 7px;
	background: #f1f4f9;
}

.zire-rec-flow-evidence strong {
	display: block;
	color: #315efb;
	font-size: 12px;
}

.zire-rec-flow-evidence small {
	display: block;
	margin-top: 2px;
	color: #7f8998;
	font-size: 11px;
}

.zire-rec-gap-row {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 6px;
	margin-top: 8px;
}

.zire-rec-gap-row > div {
	padding: 7px;
	border-radius: 7px;
	background: #f4f5f8;
}

.zire-rec-gap-row span {
	display: block;
	color: #697486;
	font-size: 11px;
}

.zire-rec-gap-row b {
	display: inline-flex;
	margin-top: 4px;
}

.zire-rec-gap-row b.is-missing {
	background: #fff0ef;
	color: #d6574e;
}

.zire-rec-gap-row b.is-partial {
	background: #fff7df;
	color: #a77b14;
}

.zire-rec-flow-result {
	display: grid;
	grid-template-columns: 37px 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 11px;
	border-radius: 10px;
	background: linear-gradient(135deg,#eef3ff,#f6f2ff);
}

.zire-rec-flow-result__icon {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(135deg,#315efb,#7657e8);
	color: #fff;
}

.zire-rec-flow-result span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-flow-result strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-rec-flow-result small {
	display: block;
	margin-top: 3px;
	color: #7d8797;
	font-size: 11px;
}

.zire-rec-flow-result > b {
	color: #315efb;
	font-size: 20px;
}


/* =========================================================
   MAIN LIGHT
   ========================================================= */

.zire-rec-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-rec-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-rec-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 470px;
	background: radial-gradient(circle,rgba(49,94,251,.08),transparent 68%);
}

.zire-rec-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 500px;
	background: radial-gradient(circle,rgba(118,87,232,.07),transparent 68%);
}

.zire-rec-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-rec-main-shape--one {
	right: -145px;
	top: 720px;
}

.zire-rec-main-shape--two {
	left: -145px;
	bottom: 930px;
}

.zire-rec-section {
	position: relative;
	z-index: 1;
}

.zire-rec-section + .zire-rec-section {
	margin-top: 92px;
}


/* =========================================================
   SHARED PRODUCT VISUAL
   ========================================================= */

.zire-rec-visual {
	position: relative;
	z-index: 1;
}

.zire-rec-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-rec-types-window,
.zire-rec-evidence-window,
.zire-rec-evidence-support > div,
.zire-rec-priority-window,
.zire-rec-job-window,
.zire-rec-job-progress {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#b49dff,#7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35,50,86,.09);
}

.zire-rec-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-rec-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-rec-card-head > small {
	color: #8993a2;
	font-size: 11px;
}


/* Copy points */

.zire-rec-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-rec-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255,255,255,.77);
}

.zire-rec-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-rec-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-rec-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-rec-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   TYPES
   ========================================================= */

.zire-rec-types-window {
	padding-bottom: 16px;
}

.zire-rec-type-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-rec-type-grid > div {
	display: grid;
	grid-template-columns: 36px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-rec-type-grid > div.is-primary {
	border-color: #bdcaff;
	background: linear-gradient(135deg,#f3f6ff,#f7f4ff);
}

.zire-rec-type-icon {
	width: 35px;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #edf2ff;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-rec-type-grid strong {
	display: block;
	font-size: 12px;
}

.zire-rec-type-grid small {
	display: block;
	margin-top: 3px;
	color: #8993a2;
	font-size: 11px;
	line-height: 1.45;
}

.zire-rec-type-grid > div > b {
	color: #315efb;
	font-size: 14px;
}

.zire-rec-type-summary {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
	padding: 0 17px;
}

.zire-rec-type-summary > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rec-type-summary span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rec-type-summary strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}


/* =========================================================
   EVIDENCE
   ========================================================= */

.zire-rec-evidence-visual {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 12px;
}

.zire-rec-evidence-window {
	padding-bottom: 16px;
}

.zire-rec-evidence-prompt {
	margin: 0 17px 12px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-rec-evidence-prompt > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-evidence-prompt > strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rec-evidence-prompt > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 7px;
}

.zire-rec-evidence-prompt b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #717c8d;
	font-size: 11px;
}

.zire-rec-evidence-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	padding: 0 17px;
}

.zire-rec-evidence-columns > div {
	padding: 11px;
	border-radius: 9px;
	background: #fbfcfe;
	border: 1px solid #e7ebf1;
}

.zire-rec-evidence-title span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-evidence-title strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rec-evidence-sources {
	display: grid;
	margin-top: 10px;
}

.zire-rec-evidence-sources > div {
	display: grid;
	grid-template-columns: 27px 1fr auto;
	align-items: center;
	gap: 7px;
	padding: 8px 0;
	border-top: 1px solid #e8ecf2;
}

.zire-rec-evidence-sources i {
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
}

.zire-rec-evidence-sources strong {
	display: block;
	font-size: 11px;
}

.zire-rec-evidence-sources small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rec-evidence-sources b {
	color: #07885f;
	font-size: 11px;
}

.zire-rec-pattern-bars {
	display: grid;
	gap: 9px;
	margin-top: 11px;
}

.zire-rec-pattern-bars > div {
	display: grid;
	grid-template-columns: 90px 1fr 28px;
	align-items: center;
	gap: 7px;
}

.zire-rec-pattern-bars span,
.zire-rec-pattern-bars strong {
	font-size: 11px;
}

.zire-rec-pattern-bars i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-rec-pattern-bars b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-rec-evidence-gap {
	display: grid;
	grid-template-columns: 32px 1fr;
	align-items: center;
	gap: 9px;
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-rec-evidence-gap > span {
	width: 31px;
	height: 31px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-rec-evidence-gap small {
	display: block;
	color: #7657e8;
	font-size: 11px;
}

.zire-rec-evidence-gap strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.5;
}

.zire-rec-evidence-support {
	display: grid;
	gap: 12px;
}

.zire-rec-evidence-support > div {
	padding: 17px;
}

.zire-rec-evidence-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-evidence-support > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 14px;
}

.zire-rec-evidence-support > div > small {
	color: #858f9f;
	font-size: 11px;
	line-height: 1.5;
}

.zire-rec-confidence {
	height: 8px;
	margin: 13px 0;
	border-radius: 999px;
	background: #e6eaf0;
	overflow: hidden;
}

.zire-rec-confidence i {
	display: block;
	width: 91%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-rec-mini-prompts {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 12px;
}

.zire-rec-mini-prompts b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #eef1f5;
	color: #6f7a8b;
	font-size: 11px;
}


/* =========================================================
   PRIORITY
   ========================================================= */

.zire-rec-priority-window {
	padding-bottom: 16px;
}

.zire-rec-priority-board {
	padding: 0 17px;
}

.zire-rec-priority-board__top {
	display: grid;
	grid-template-columns: 150px 1fr;
	gap: 15px;
	align-items: center;
	padding: 12px;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-rec-score-ring {
	width: 125px;
	height: 125px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center,#fff 57%,transparent 58%),
		conic-gradient(#315efb 0 86%,#e6eaf0 86% 100%);
}

.zire-rec-score-ring > div {
	display: flex;
	align-items: baseline;
}

.zire-rec-score-ring strong {
	font-size: 26px;
}

.zire-rec-score-ring span {
	color: #8a94a3;
	font-size: 11px;
}

.zire-rec-score-ring small {
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-rec-score-breakdown {
	display: grid;
	gap: 9px;
}

.zire-rec-score-breakdown > div {
	display: grid;
	grid-template-columns: 105px 1fr 28px;
	align-items: center;
	gap: 7px;
}

.zire-rec-score-breakdown span,
.zire-rec-score-breakdown strong {
	font-size: 11px;
}

.zire-rec-score-breakdown i {
	height: 6px;
	border-radius: 999px;
	background: #e4e8ee;
	overflow: hidden;
}

.zire-rec-score-breakdown b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-rec-priority-rankings {
	display: grid;
	margin-top: 12px;
}

.zire-rec-priority-rankings > div {
	display: grid;
	grid-template-columns: 30px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-rec-priority-rankings > div > span {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-rec-priority-rankings strong {
	display: block;
	font-size: 12px;
}

.zire-rec-priority-rankings small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-rec-priority-rankings > div > b {
	color: #a77b14;
	font-size: 13px;
}

.zire-rec-priority-rankings > div > b.is-high {
	color: #d6574e;
}


/* =========================================================
   ACTION / JOB
   ========================================================= */

.zire-rec-action-visual {
	display: grid;
	grid-template-columns: 1.2fr .8fr;
	gap: 12px;
}

.zire-rec-job-window {
	padding-bottom: 16px;
}

.zire-rec-job-status {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-rec-job-meta {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-rec-job-meta > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rec-job-meta span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rec-job-meta strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}

.zire-rec-job-brief {
	margin: 0 17px;
	padding: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
}

.zire-rec-job-title span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-job-title strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rec-job-checks {
	display: grid;
	gap: 7px;
	margin-top: 10px;
}

.zire-rec-job-checks > div {
	display: grid;
	grid-template-columns: 24px 1fr;
	align-items: center;
	gap: 7px;
	padding: 7px;
	border-radius: 7px;
	background: #f7f8fb;
}

.zire-rec-job-checks span {
	width: 23px;
	height: 23px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
}

.zire-rec-job-checks strong {
	font-size: 11px;
}

.zire-rec-job-target {
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-rec-job-target > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-job-target > strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rec-job-target > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 8px;
}

.zire-rec-job-target b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #6e798a;
	font-size: 11px;
}

.zire-rec-job-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
	margin: 12px 17px 0;
	padding-top: 12px;
	border-top: 1px solid #edf0f4;
}

.zire-rec-job-footer > div > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rec-job-footer > div > div {
	display: flex;
	gap: 5px;
	margin-top: 5px;
}

.zire-rec-job-footer b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef1f5;
	color: #6e798a;
	font-size: 11px;
}

.zire-rec-job-footer button {
	padding: 8px 11px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg,#315efb,#7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 750;
}

.zire-rec-job-progress {
	display: grid;
	grid-template-columns: 1fr 35px 1fr;
	align-items: center;
	padding: 20px 15px;
}

.zire-rec-job-progress > div:not(.zire-rec-job-progress__arrow) {
	padding: 15px;
	border-radius: 10px;
	background: #f7f8fb;
	text-align: center;
}

.zire-rec-job-progress > div.is-after {
	background: linear-gradient(135deg,#eef3ff,#f4f0ff);
}

.zire-rec-job-progress span {
	display: block;
	color: #8993a2;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-rec-job-progress strong {
	display: block;
	margin: 7px 0;
	font-size: 22px;
}

.zire-rec-job-progress small {
	color: #858f9f;
	font-size: 11px;
}

.zire-rec-job-progress__arrow {
	color: #315efb;
	text-align: center;
	font-size: 18px;
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-rec-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-rec-mini-stats {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
}

.zire-rec-mini-stats > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rec-mini-stats strong {
	display: block;
	font-size: 16px;
}

.zire-rec-mini-stats span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-rec-google-icon img {
	width: 21px;
	height: 21px;
	object-fit: contain;
}

.zire-rec-mini-action > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rec-mini-action > strong {
	display: block;
	margin: 10px 0 8px;
	font-size: 13px;
}

.zire-rec-mini-action > div {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 8px;
}

.zire-rec-mini-action i {
	height: 6px;
	border-radius: 999px;
	background: #e6eaf0;
	overflow: hidden;
}

.zire-rec-mini-action b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-rec-mini-action small {
	color: #315efb;
	font-size: 11px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-rec-providers__grid {
		grid-template-columns: repeat(3,1fr);
	}

	.zire-rec-overview__body {
		grid-template-columns: 34% 66%;
	}

	.zire-rec-strategy__grid {
		grid-template-columns: 1fr 1fr;
	}

}


@media (max-width: 1050px) {

	.zire-rec-evidence-visual,
	.zire-rec-action-visual {
		grid-template-columns: 1fr;
	}

	.zire-rec-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-rec-overview__body {
		grid-template-columns: 1fr;
	}

	.zire-rec-list {
		border-right: 0;
		border-bottom: 1px solid #e6eaf0;
	}

	.zire-rec-flow-evidence,
	.zire-rec-gap-row,
	.zire-rec-associated__stats {
		grid-template-columns: 1fr 1fr;
	}

	.zire-rec-evidence-columns {
		grid-template-columns: 1fr;
	}

	.zire-rec-priority-board__top {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.zire-rec-score-breakdown {
		width: 100%;
	}

}


@media (max-width: 700px) {

	.zire-rec-overview {
		padding: 16px;
	}

	.zire-rec-tabs {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.zire-rec-detail__head {
		flex-direction: column;
	}

	.zire-rec-opportunity-score {
		text-align: left;
	}

	.zire-rec-associated__stats,
	.zire-rec-strategy__grid,
	.zire-rec-type-grid,
	.zire-rec-type-summary,
	.zire-rec-job-meta {
		grid-template-columns: 1fr;
	}

	.zire-rec-create {
		flex-direction: column;
		align-items: flex-start;
	}

	.zire-rec-providers {
		padding-top: 85px;
	}

	.zire-rec-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-rec-main {
		padding: 85px 18px 90px;
	}

	.zire-rec-section + .zire-rec-section {
		margin-top: 72px;
	}

	.zire-rec-flow-evidence,
	.zire-rec-gap-row {
		grid-template-columns: 1fr;
	}

	.zire-rec-flow-result {
		grid-template-columns: 37px 1fr;
	}

	.zire-rec-flow-result > b {
		grid-column: 2;
	}

	.zire-rec-score-breakdown > div {
		grid-template-columns: 95px 1fr 25px;
	}

	.zire-rec-job-progress {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.zire-rec-job-progress__arrow {
		transform: rotate(90deg);
	}

	.zire-rec-job-footer {
		flex-direction: column;
		align-items: flex-start;
	}

	.zire-rec-top-shape {
		display: none;
	}

	.zire-rec-main-shape {
		width: 260px;
		height: 260px;
	}

}

/* =========================================================
   CONTENT OPTIMISATION — PAGE-SPECIFIC CSS ONLY

   REUSES EXISTING PLATFORM CSS:
   - zire-platform-intro
   - zire-platform-stage
   - zire-platform-monitor-dark
   - zire-platform-more
   - zire-platform-feature-card
   - zire-platform-faq
   - zire-platform-final
   - existing reveal hooks

   No new JS required.
   Minimum visual text size: 9px.
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-co-top {
	padding-bottom: 120px;
}

.zire-co-top-shape-wrap {
	position: relative;
}

.zire-co-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO WORKSPACE
   ========================================================= */

.zire-co-workspace-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-co-workspace {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 38px 90px rgba(26, 39, 73, .13);
}

.zire-co-workspace__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 16px;
}

.zire-co-workspace__head > div:first-child > span,
.zire-co-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-co-workspace__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-co-workspace__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-co-live {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-co-live > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* STATUS NAV */

.zire-co-status-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}

.zire-co-status-nav > div {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 7px 10px;
	border: 1px solid #e5e9ef;
	border-radius: 999px;
	background: #fff;
	color: #758092;
	font-size: 11px;
	font-weight: 700;
}

.zire-co-status-nav > div.is-active {
	border-color: #c8d3ff;
	background: #eef3ff;
	color: #315efb;
}

.zire-co-status-nav span {
	padding: 2px 5px;
	border-radius: 999px;
	background: #f0f2f6;
	font-size: 11px;
}


/* BODY */

.zire-co-workspace__body {
	display: grid;
	grid-template-columns: 35% 65%;
	min-height: 690px;
	overflow: hidden;
	border: 1px solid #e5e9ef;
	border-radius: 14px;
	background: #fff;
}


/* LEFT */

.zire-co-action-list {
	border-right: 1px solid #e5e9ef;
	background: #fbfcfe;
}

.zire-co-action-list__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 15px;
	border-bottom: 1px solid #e9edf2;
}

.zire-co-action-list__head strong {
	display: block;
	font-size: 13px;
}

.zire-co-action-list__head span {
	display: block;
	margin-top: 2px;
	color: #8b95a4;
	font-size: 11px;
}

.zire-co-action-list__head > span {
	color: #315efb;
	font-weight: 750;
}

.zire-co-action-items {
	display: grid;
}

.zire-co-action-items > div {
	display: grid;
	grid-template-columns: 45px 1fr 32px;
	align-items: start;
	gap: 9px;
	padding: 14px 13px;
	border-top: 1px solid #edf0f4;
	background: #fff;
}

.zire-co-action-items > div.is-active {
	background: linear-gradient(90deg, #eef3ff, #f8f6ff);
	box-shadow: inset 3px 0 0 #315efb;
}

.zire-co-action-items strong {
	display: block;
	color: #28313d;
	font-size: 12px;
	line-height: 1.45;
}

.zire-co-action-items p {
	margin: 4px 0 0;
	color: #8a94a3;
	font-size: 11px;
	line-height: 1.45;
}

.zire-co-action-items > div > div:nth-child(2) > div {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 7px;
}

.zire-co-action-items > div > div:nth-child(2) span {
	padding: 3px 5px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #768193;
	font-size: 11px;
}

.zire-co-action-items > div > b {
	color: #315efb;
	font-size: 13px;
	text-align: right;
}

.zire-co-job-priority {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 23px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
}

.zire-co-job-priority.is-high {
	background: #fff0ef;
	color: #d6574e;
}

.zire-co-job-priority.is-medium {
	background: #fff7df;
	color: #a77b14;
}


/* RIGHT JOB */

.zire-co-job-detail {
	padding: 18px;
}

.zire-co-job-detail__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e9edf2;
}

.zire-co-job-detail__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 6px;
}

.zire-co-job-detail__meta span {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #718091;
	font-size: 11px;
}

.zire-co-job-detail__meta span.is-high {
	background: #fff0ef;
	color: #d6574e;
}

.zire-co-job-detail__head h3 {
	margin: 0;
	color: #202833;
	font-size: 16px;
	line-height: 1.35;
}

.zire-co-job-score {
	min-width: 85px;
	text-align: right;
}

.zire-co-job-score span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-job-score strong {
	color: #202833;
	font-size: 27px;
}

.zire-co-job-score small {
	color: #929ba8;
	font-size: 11px;
}


/* RECOMMENDATION */

.zire-co-job-recommendation {
	margin-top: 12px;
	padding: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
}

.zire-co-job-section-label {
	margin-bottom: 5px;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-job-recommendation > strong {
	display: block;
	font-size: 13px;
}

.zire-co-job-recommendation > p {
	margin: 5px 0 0;
	color: #6d7889;
	font-size: 11px;
	line-height: 1.55;
}

.zire-co-why {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: center;
	gap: 9px;
	margin-top: 10px;
	padding: 10px;
	border-radius: 8px;
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-co-why > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-co-why strong {
	display: block;
	font-size: 11px;
}

.zire-co-why small {
	display: block;
	margin-top: 3px;
	color: #7f8998;
	font-size: 11px;
}


/* ASSOCIATED PROMPT */

.zire-co-associated-prompt {
	margin-top: 12px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-co-associated-prompt > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-associated-prompt > strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-co-associated-prompt > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 8px;
}

.zire-co-associated-prompt b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #fff;
	color: #748091;
	font-size: 11px;
}


/* GENERATED */

.zire-co-generated {
	margin-top: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	overflow: hidden;
}

.zire-co-generated__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
	padding: 11px 12px;
	border-bottom: 1px solid #edf0f4;
}

.zire-co-generated__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-generated__head strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-co-generated__head small {
	color: #8993a2;
	font-size: 11px;
}

.zire-co-document {
	margin: 12px;
	padding: 14px;
	border: 1px solid #e8ecf2;
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 7px 20px rgba(35, 50, 86, .05);
}

.zire-co-document__title strong {
	display: block;
	font-size: 12px;
	line-height: 1.4;
}

.zire-co-document__title span {
	display: block;
	margin-top: 3px;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-document__text {
	margin-top: 11px;
	padding-top: 11px;
	border-top: 1px solid #edf0f4;
}

.zire-co-document__text p {
	margin: 0;
	color: #6d7889;
	font-size: 11px;
	line-height: 1.55;
}

.zire-co-document__text h4 {
	margin: 10px 0 6px;
	font-size: 12px;
}

.zire-co-document__checks {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 5px;
}

.zire-co-document__checks span {
	position: relative;
	padding: 6px 6px 6px 19px;
	border-radius: 6px;
	background: #f7f8fb;
	color: #707b8c;
	font-size: 11px;
}

.zire-co-document__checks span::before {
	content: "✓";
	position: absolute;
	left: 7px;
	color: #315efb;
	font-weight: 800;
}

.zire-co-generated__footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
	padding: 0 12px 12px;
}

.zire-co-generated__footer > div > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-generated__footer > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 5px;
}

.zire-co-generated__footer b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef1f5;
	color: #6d7889;
	font-size: 11px;
}

.zire-co-generated__footer button,
.zire-co-job-actions button {
	padding: 8px 11px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 750;
}


/* JOB FOOTER */

.zire-co-job-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
	margin-top: 12px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-co-job-actions span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-job-actions strong {
	display: block;
	margin-top: 3px;
	color: #315efb;
	font-size: 11px;
}


/* =========================================================
   PROVIDER ROW
   ========================================================= */

.zire-co-providers {
	padding-top: 110px;
}

.zire-co-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-co-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-co-providers__heading h2,
.zire-co-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-co-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-co-providers__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 11px;
}

.zire-co-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 14px 36px rgba(34, 48, 80, .05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-co-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34, 48, 80, .09);
}

.zire-co-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-co-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-co-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-co-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-co-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-co-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-co-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-co-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .038);
}

.zire-co-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98, 121, 255, .15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-co-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-co-dark__points small {
	display: block;
	color: rgba(255, 255, 255, .43);
	font-size: 11px;
}


/* FLOW WINDOW */

.zire-co-flow-window {
	padding: 22px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0, 0, 0, .22);
	color: #1c2430;
}

.zire-co-flow-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-co-flow-head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-flow-head strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-co-flow-head small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
}

.zire-co-flow-prompt {
	margin-top: 12px;
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-co-flow-prompt span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-flow-prompt strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-co-flow-timeline {
	display: grid;
	margin-top: 12px;
}

.zire-co-flow-timeline > div {
	display: grid;
	grid-template-columns: 31px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-co-flow-timeline > div > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #eef1f5;
	color: #768193;
	font-size: 11px;
	font-weight: 800;
}

.zire-co-flow-timeline > div.is-complete > span {
	background: #eaf8f2;
	color: #07885f;
}

.zire-co-flow-timeline > div.is-active > span {
	background: #edf2ff;
	color: #315efb;
}

.zire-co-flow-timeline strong {
	display: block;
	font-size: 12px;
}

.zire-co-flow-timeline small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-flow-timeline > div > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #768193;
	font-size: 11px;
}

.zire-co-flow-timeline > div.is-complete > b {
	background: #eaf8f2;
	color: #07885f;
}

.zire-co-flow-timeline > div.is-active > b {
	background: #eef3ff;
	color: #315efb;
}

.zire-co-flow-draft {
	display: grid;
	grid-template-columns: 1fr 75px;
	align-items: center;
	gap: 12px;
	margin-top: 10px;
	padding: 11px;
	border-radius: 10px;
	background: linear-gradient(135deg, #eef3ff, #f6f2ff);
}

.zire-co-flow-draft span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-flow-draft strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-co-flow-draft small {
	display: block;
	margin-top: 3px;
	color: #7e8998;
	font-size: 11px;
}

.zire-co-flow-score {
	padding: 10px;
	border-radius: 9px;
	background: #fff;
	text-align: center;
}

.zire-co-flow-score strong {
	color: #315efb;
	font-size: 20px;
}

.zire-co-flow-score span {
	color: #8993a2;
	font-size: 11px;
	font-weight: 600;
	text-transform: none;
}


/* =========================================================
   LIGHT MAIN WRAPPER
   ========================================================= */

.zire-co-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-co-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-co-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 470px;
	background: radial-gradient(circle, rgba(49, 94, 251, .08), transparent 68%);
}

.zire-co-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 500px;
	background: radial-gradient(circle, rgba(118, 87, 232, .07), transparent 68%);
}

.zire-co-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-co-main-shape--one {
	right: -145px;
	top: 740px;
}

.zire-co-main-shape--two {
	left: -145px;
	bottom: 910px;
}

.zire-co-section {
	position: relative;
	z-index: 1;
}

.zire-co-section + .zire-co-section {
	margin-top: 92px;
}


/* =========================================================
   SHARED PRODUCT VISUAL
   ========================================================= */

.zire-co-visual {
	position: relative;
	z-index: 1;
}

.zire-co-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(49, 94, 251, .18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-co-editor-window,
.zire-co-editor-support > div,
.zire-co-improve-window,
.zire-co-channel-card,
.zire-co-manage-window {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35, 50, 86, .09);
}

.zire-co-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-co-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-co-card-head > small {
	color: #8993a2;
	font-size: 11px;
}


/* COPY POINTS */

.zire-co-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-co-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255, 255, 255, .77);
}

.zire-co-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg, #edf2ff, #f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-co-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-co-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}


/* =========================================================
   CREATE CONTENT
   ========================================================= */

.zire-co-create-visual {
	display: grid;
	grid-template-columns: 1.18fr .82fr;
	gap: 12px;
}

.zire-co-editor-window {
	padding-bottom: 16px;
}

.zire-co-editor-target {
	display: grid;
	grid-template-columns: 1.4fr .6fr;
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-co-editor-target > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-co-editor-target span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-editor-target strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}

.zire-co-editor-evidence {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-co-editor-evidence > div {
	padding: 9px;
	border: 1px solid #e7ebf1;
	border-radius: 8px;
}

.zire-co-editor-evidence span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-editor-evidence > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 5px;
}

.zire-co-editor-evidence b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
}

.zire-co-editor-evidence strong {
	display: block;
	margin-top: 5px;
	font-size: 11px;
}

.zire-co-editor-document {
	margin: 0 17px;
	padding: 15px;
	border: 1px solid #e4e9f0;
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(35, 50, 86, .05);
}

.zire-co-editor-document h3 {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
}

.zire-co-editor-document p,
.zire-co-editor-document li {
	color: #697486;
	font-size: 11px;
	line-height: 1.55;
}

.zire-co-editor-document p {
	margin: 9px 0;
}

.zire-co-editor-document h4 {
	margin: 11px 0 5px;
	font-size: 12px;
}

.zire-co-editor-document ul {
	margin: 0;
	padding-left: 17px;
}

.zire-co-editor-faq {
	margin-top: 12px;
	padding: 10px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-co-editor-faq span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-editor-faq strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}

.zire-co-editor-faq small {
	display: block;
	margin-top: 3px;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-editor-footer {
	display: flex;
	justify-content: flex-end;
	gap: 7px;
	padding: 12px 17px 0;
}

.zire-co-editor-footer button {
	padding: 8px 11px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 750;
}

.zire-co-editor-footer button.is-secondary {
	border: 1px solid #dce2eb;
	background: #fff;
	color: #354050;
}

.zire-co-editor-support {
	display: grid;
	gap: 12px;
}

.zire-co-editor-support > div {
	padding: 17px;
}

.zire-co-editor-support > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-editor-support > div > strong {
	display: block;
	margin: 8px 0 5px;
	font-size: 15px;
}

.zire-co-editor-support > div > small {
	color: #858f9f;
	font-size: 11px;
	line-height: 1.5;
}

.zire-co-coverage-bar {
	height: 8px;
	margin: 13px 0;
	border-radius: 999px;
	background: #e6eaf0;
	overflow: hidden;
}

.zire-co-coverage-bar i {
	display: block;
	width: 80%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-co-small-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 12px 0;
}

.zire-co-small-tags b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #eef1f5;
	color: #6f7a8b;
	font-size: 11px;
}


/* =========================================================
   IMPROVE CONTENT
   ========================================================= */

.zire-co-improve-window {
	padding-bottom: 16px;
}

.zire-co-page-found {
	display: grid;
	grid-template-columns: 37px 1fr auto;
	align-items: center;
	gap: 10px;
	margin: 0 17px 12px;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-co-page-found__icon {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #fff;
	color: #315efb;
}

.zire-co-page-found span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-page-found strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-co-page-found small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-page-found > b {
	color: #315efb;
	font-size: 17px;
}

.zire-co-before-after {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	padding: 0 17px 12px;
}

.zire-co-before-after > div {
	padding: 11px;
	border: 1px solid #e6eaf0;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-co-before-after > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-before-after > div > strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-co-signal-list {
	display: grid;
	gap: 6px;
	margin-top: 10px;
}

.zire-co-signal-list > div {
	display: grid;
	grid-template-columns: 25px 1fr;
	align-items: center;
	gap: 7px;
	padding: 7px;
	border-radius: 7px;
	background: #f4f5f8;
}

.zire-co-signal-list > div > span {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	font-size: 11px;
	font-weight: 800;
}

.zire-co-signal-list .is-good > span {
	background: #eaf8f2;
	color: #07885f;
}

.zire-co-signal-list .is-missing > span {
	background: #f0ebff;
	color: #7657e8;
}

.zire-co-signal-list strong {
	font-size: 11px;
}

.zire-co-improve-preview {
	display: grid;
	gap: 7px;
	margin-top: 10px;
}

.zire-co-improve-preview > div {
	padding: 8px;
	border-radius: 7px;
	background: #f7f8fb;
}

.zire-co-improve-preview small {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 750;
}

.zire-co-improve-preview strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}

.zire-co-improve-preview p {
	margin: 4px 0 0;
	color: #808a99;
	font-size: 11px;
	line-height: 1.45;
}

.zire-co-improve-score {
	margin: 0 17px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-co-improve-score > div:first-child {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.zire-co-improve-score span,
.zire-co-improve-score small {
	color: #818c9b;
	font-size: 11px;
}

.zire-co-improve-score > div:first-child > div {
	display: flex;
	align-items: center;
	gap: 7px;
}

.zire-co-improve-score strong {
	font-size: 13px;
}

.zire-co-improve-score > div:first-child > div strong:last-child {
	color: #07885f;
}

.zire-co-improve-score i {
	color: #315efb;
	font-style: normal;
}

.zire-co-improve-score__bar {
	height: 7px;
	margin: 8px 0;
	overflow: hidden;
	border-radius: 999px;
	background: #e3e7ee;
}

.zire-co-improve-score__bar i {
	display: block;
	width: 91%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* =========================================================
   CHANNELS
   ========================================================= */

.zire-co-channel-visual {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.zire-co-channel-card {
	padding: 16px;
}

.zire-co-channel-card--social {
	grid-row: span 2;
}

.zire-co-channel-card__head {
	display: grid;
	grid-template-columns: 35px 1fr auto;
	align-items: center;
	gap: 9px;
	padding-bottom: 11px;
	border-bottom: 1px solid #edf0f4;
}

.zire-co-channel-card__head > span {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #edf2ff;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-co-channel-card__head strong {
	display: block;
	font-size: 12px;
}

.zire-co-channel-card__head small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-channel-card__head > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-co-social-preview {
	margin-top: 12px;
	padding: 13px;
	border: 1px solid #e6eaf0;
	border-radius: 10px;
	background: #fbfcfe;
}

.zire-co-social-brand {
	display: grid;
	grid-template-columns: 32px 1fr;
	align-items: center;
	gap: 8px;
}

.zire-co-social-brand > span {
	width: 31px;
	height: 31px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
}

.zire-co-social-brand strong,
.zire-co-social-brand small {
	display: block;
	font-size: 11px;
}

.zire-co-social-brand small {
	color: #8993a2;
}

.zire-co-social-preview p {
	margin: 12px 0;
	color: #515d6e;
	font-size: 12px;
	line-height: 1.6;
}

.zire-co-social-points {
	display: grid;
	gap: 5px;
}

.zire-co-social-points span {
	padding: 6px;
	border-radius: 6px;
	background: #f1f3f7;
	color: #697486;
	font-size: 11px;
}

.zire-co-video-preview {
	display: grid;
	grid-template-columns: .8fr 1.2fr;
	gap: 9px;
	margin-top: 12px;
}

.zire-co-video-screen {
	position: relative;
	min-height: 130px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(135deg, #151d35, #24255b);
}

.zire-co-video-play {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, .14);
	color: #fff;
	font-size: 13px;
}

.zire-co-video-screen > span {
	position: absolute;
	right: 7px;
	bottom: 7px;
	padding: 3px 5px;
	border-radius: 5px;
	background: rgba(0, 0, 0, .5);
	color: #fff;
	font-size: 11px;
}

.zire-co-video-scenes {
	display: grid;
	gap: 5px;
}

.zire-co-video-scenes > div {
	display: grid;
	grid-template-columns: 25px 1fr;
	align-items: center;
	gap: 7px;
	padding: 7px;
	border-radius: 7px;
	background: #f7f8fb;
}

.zire-co-video-scenes span {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-co-video-scenes strong {
	font-size: 11px;
}

.zire-co-email-preview {
	display: grid;
	gap: 7px;
	margin-top: 12px;
	padding: 11px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-co-email-preview > div {
	display: grid;
	grid-template-columns: 55px 1fr;
	gap: 7px;
	padding-bottom: 6px;
	border-bottom: 1px solid #e6eaf0;
}

.zire-co-email-preview span {
	color: #8993a2;
	font-size: 11px;
}

.zire-co-email-preview strong {
	font-size: 11px;
}

.zire-co-email-preview p {
	margin: 2px 0 0;
	color: #6d7889;
	font-size: 11px;
	line-height: 1.55;
}


/* =========================================================
   MANAGE ACTIONS
   ========================================================= */

.zire-co-manage-window {
	padding-bottom: 16px;
}

.zire-co-manage-tabs {
	display: flex;
	gap: 6px;
	padding: 0 17px 12px;
}

.zire-co-manage-tabs > div {
	padding: 6px 8px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #707b8c;
	font-size: 11px;
}

.zire-co-manage-tabs > div.is-active {
	background: #eef3ff;
	color: #315efb;
}

.zire-co-manage-tabs span {
	margin-left: 3px;
	font-weight: 800;
}

.zire-co-manage-list {
	display: grid;
	padding: 0 17px;
}

.zire-co-manage-list > div {
	display: grid;
	grid-template-columns: 35px 1fr 110px;
	align-items: center;
	gap: 9px;
	padding: 11px 0;
	border-top: 1px solid #edf0f4;
}

.zire-co-manage-list > div.is-complete {
	margin: 2px -7px;
	padding: 10px 7px;
	border: 1px solid #a9dbc9;
	border-radius: 9px;
	background: #f8fffc;
}

.zire-co-manage-type {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #edf2ff;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-co-manage-list span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-co-manage-list strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-co-manage-list small {
	display: block;
	margin-top: 3px;
	color: #8993a2;
	font-size: 11px;
}

.zire-co-manage-progress {
	display: grid;
	grid-template-columns: 1fr 30px;
	align-items: center;
	gap: 7px;
}

.zire-co-manage-progress i {
	height: 6px;
	border-radius: 999px;
	background: #e3e7ee;
	overflow: hidden;
}

.zire-co-manage-progress b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-co-manage-progress span {
	color: #315efb;
	font-size: 11px;
	text-align: right;
}

.zire-co-complete-badge {
	padding: 5px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
	text-align: center;
}

.zire-co-completion {
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-co-completion > div:first-child {
	display: flex;
	justify-content: space-between;
	gap: 15px;
}

.zire-co-completion span,
.zire-co-completion small {
	color: #7f8998;
	font-size: 11px;
}

.zire-co-completion strong {
	font-size: 11px;
}

.zire-co-completion__bar {
	height: 7px;
	margin: 8px 0;
	border-radius: 999px;
	background: #dfe4ef;
	overflow: hidden;
}

.zire-co-completion__bar i {
	display: block;
	width: 73%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-co-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-co-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #fff0ef;
	color: #d6574e;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-co-mini-recommendation > strong {
	display: block;
	margin: 10px 0 4px;
	color: #28313d;
	font-size: 13px;
}

.zire-co-mini-recommendation > small {
	color: #858f9f;
	font-size: 11px;
}

.zire-co-mini-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zire-co-mini-stats > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-co-mini-stats strong {
	display: block;
	font-size: 16px;
}

.zire-co-mini-stats span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-co-google-icon img {
	width: 21px;
	height: 21px;
	object-fit: contain;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-co-providers__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.zire-co-workspace__body {
		grid-template-columns: 32% 68%;
	}

}


@media (max-width: 1050px) {

	.zire-co-create-visual {
		grid-template-columns: 1fr;
	}

	.zire-co-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-co-workspace__body {
		grid-template-columns: 1fr;
	}

	.zire-co-action-list {
		border-right: 0;
		border-bottom: 1px solid #e5e9ef;
	}

	.zire-co-before-after,
	.zire-co-channel-visual {
		grid-template-columns: 1fr;
	}

	.zire-co-channel-card--social {
		grid-row: auto;
	}

	.zire-co-editor-target,
	.zire-co-editor-evidence {
		grid-template-columns: 1fr;
	}

	.zire-co-manage-list > div {
		grid-template-columns: 35px 1fr;
	}

	.zire-co-manage-progress,
	.zire-co-complete-badge {
		grid-column: 2;
	}

}


@media (max-width: 700px) {

	.zire-co-workspace {
		padding: 16px;
	}

	.zire-co-status-nav {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.zire-co-job-detail__head {
		flex-direction: column;
	}

	.zire-co-job-score {
		text-align: left;
	}

	.zire-co-document__checks {
		grid-template-columns: 1fr;
	}

	.zire-co-generated__footer,
	.zire-co-job-actions {
		flex-direction: column;
		align-items: flex-start;
	}

	.zire-co-flow-draft {
		grid-template-columns: 1fr;
	}

	.zire-co-flow-score {
		justify-self: start;
	}

	.zire-co-providers {
		padding-top: 85px;
	}

	.zire-co-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-co-main {
		padding: 85px 18px 90px;
	}

	.zire-co-section + .zire-co-section {
		margin-top: 72px;
	}

	.zire-co-video-preview {
		grid-template-columns: 1fr;
	}

	.zire-co-completion > div:first-child {
		flex-direction: column;
		gap: 4px;
	}

	.zire-co-top-shape {
		display: none;
	}

	.zire-co-main-shape {
		width: 260px;
		height: 260px;
	}

}

/* =========================================================
   REPORTS — PAGE-SPECIFIC CSS ONLY

   REUSES EXISTING PLATFORM CSS:
   - zire-platform-intro
   - zire-platform-stage
   - zire-platform-monitor-dark
   - zire-platform-more
   - zire-platform-feature-card
   - zire-platform-faq
   - zire-platform-final
   - existing data-zire-reveal animations

   No new JS required.
   Minimum visual text size: 9px.
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-rpt-top {
	padding-bottom: 120px;
}

.zire-rpt-top-shape-wrap {
	position: relative;
}

.zire-rpt-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO REPORT
   ========================================================= */

.zire-rpt-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-rpt-overview {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 38px 90px rgba(26, 39, 73, .13);
}

.zire-rpt-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 16px;
}

.zire-rpt-overview__head > div:first-child > span,
.zire-rpt-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-rpt-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-rpt-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-rpt-report-controls {
	display: flex;
	align-items: center;
	gap: 7px;
}

.zire-rpt-report-controls > span {
	padding: 7px 10px;
	border: 1px solid #dfe4eb;
	border-radius: 8px;
	background: #fff;
	color: #687487;
	font-size: 11px;
	font-weight: 700;
}

.zire-rpt-report-controls button {
	padding: 8px 11px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 750;
}


/* KPI ROW */

.zire-rpt-kpis {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 9px;
	margin-bottom: 11px;
}

.zire-rpt-kpis > div {
	padding: 14px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	background: #fafbfe;
}

.zire-rpt-kpis > div:nth-child(1) {
	border-top: 2px solid #315efb;
}

.zire-rpt-kpis > div:nth-child(2) {
	border-top: 2px solid #7657e8;
}

.zire-rpt-kpis > div:nth-child(3) {
	border-top: 2px solid #16a085;
}

.zire-rpt-kpis > div:nth-child(4) {
	border-top: 2px solid #7f8fa6;
}

.zire-rpt-kpis > div:nth-child(5) {
	border-top: 2px solid #315efb;
}

.zire-rpt-kpis > div > span {
	display: block;
	margin-bottom: 7px;
	color: #778293;
	font-size: 11px;
}

.zire-rpt-kpis > div > strong {
	display: block;
	color: #171d27;
	font-size: 23px;
	letter-spacing: -.8px;
}

.zire-rpt-kpis small {
	display: block;
	margin-top: 5px;
	color: #929ba8;
	font-size: 11px;
	line-height: 1.4;
}

.zire-rpt-kpis small span {
	display: inline;
	margin-right: 3px;
}

.zire-rpt-kpis .is-positive {
	color: #07885f;
	font-weight: 750;
}


/* MAIN HERO BODY */

.zire-rpt-overview__body {
	display: grid;
	grid-template-columns: 1.38fr .62fr;
	gap: 10px;
}

.zire-rpt-trend-card,
.zire-rpt-platform-card,
.zire-rpt-prompt-window,
.zire-rpt-topic-window,
.zire-rpt-sov-window,
.zire-rpt-competitor-table,
.zire-rpt-source-mix,
.zire-rpt-domains-window,
.zire-rpt-source-detail,
.zire-rpt-activity-window,
.zire-rpt-export-window,
.zire-rpt-history-window {
	border: 1.5px solid transparent;
	border-radius: 15px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, #8ca5ff, #b49dff, #7657e8) border-box;
	box-shadow: 0 18px 44px rgba(35, 50, 86, .07);
}

.zire-rpt-overview .zire-rpt-trend-card,
.zire-rpt-overview .zire-rpt-platform-card {
	border: 1px solid #e5e9ef;
	background: #fff;
	box-shadow: none;
}

.zire-rpt-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-rpt-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-rpt-card-head > small {
	color: #8993a2;
	font-size: 11px;
}


/* HERO CHART */

.zire-rpt-chart-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	padding: 10px 17px 0;
}

.zire-rpt-chart-legend span {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #788393;
	font-size: 11px;
}

.zire-rpt-chart-legend i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
}

.zire-rpt-chart-legend .is-mentioned {
	background: #315efb;
}

.zire-rpt-chart-legend .is-recommended {
	background: #7657e8;
}

.zire-rpt-chart-legend .is-cited {
	background: #16a085;
}

.zire-rpt-trend-chart {
	position: relative;
	height: 245px;
	padding: 5px 17px 27px;
}

.zire-rpt-chart-grid {
	position: absolute;
	inset: 5px 17px 27px;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .055) 1px, transparent 1px);
	background-size: 100% 25%;
}

.zire-rpt-trend-chart svg {
	position: relative;
	width: 100%;
	height: 205px;
}

.zire-rpt-chart-axis {
	display: flex;
	justify-content: space-between;
	color: #929ba8;
	font-size: 11px;
}


/* HERO PLATFORM */

.zire-rpt-platform-list {
	display: grid;
	padding: 2px 13px 13px;
}

.zire-rpt-platform-list > div {
	display: grid;
	grid-template-columns: 28px 1fr 78px;
	align-items: center;
	gap: 8px;
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-rpt-platform-list > div:first-child {
	border-top: 0;
}

.zire-rpt-platform-list img {
	width: 24px;
	height: 24px;
	object-fit: contain;
}

.zire-rpt-platform-list strong {
	display: block;
	font-size: 11px;
}

.zire-rpt-platform-list span {
	display: block;
	margin-top: 2px;
	color: #8a94a3;
	font-size: 11px;
}

.zire-rpt-platform-score {
	text-align: right;
}

.zire-rpt-platform-score strong {
	font-size: 13px;
}

.zire-rpt-platform-score i {
	display: block;
	height: 5px;
	margin-top: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: #e6eaf0;
}

.zire-rpt-platform-score b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* HERO LOWER */

.zire-rpt-overview-lower {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-top: 10px;
}

.zire-rpt-overview-lower > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-rpt-overview-lower span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-overview-lower strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-rpt-overview-lower small {
	display: block;
	margin-top: 3px;
	color: #315efb;
	font-size: 11px;
}


/* =========================================================
   PROVIDERS
   ========================================================= */

.zire-rpt-providers {
	padding-top: 110px;
}

.zire-rpt-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-rpt-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-rpt-providers__heading h2,
.zire-rpt-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-rpt-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-rpt-providers__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 11px;
}

.zire-rpt-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 14px 36px rgba(34, 48, 80, .05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-rpt-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34, 48, 80, .09);
}

.zire-rpt-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-rpt-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-rpt-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-rpt-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-rpt-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK
   ========================================================= */

.zire-rpt-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-rpt-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-rpt-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .038);
}

.zire-rpt-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98, 121, 255, .15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-rpt-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-rpt-dark__points small {
	display: block;
	color: rgba(255, 255, 255, .43);
	font-size: 11px;
}


/* SCORECARD */

.zire-rpt-scorecard {
	padding: 22px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0, 0, 0, .22);
	color: #1c2430;
}

.zire-rpt-scorecard__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-rpt-scorecard__head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rpt-scorecard__head strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-rpt-scorecard__head small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-rpt-scorecard__main {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 16px;
	padding: 15px 0;
}

.zire-rpt-main-score {
	display: grid;
	grid-template-columns: 126px 1fr;
	align-items: center;
	gap: 14px;
}

.zire-rpt-score-ring {
	width: 120px;
	height: 120px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, #fff 58%, transparent 59%),
		conic-gradient(#315efb 0 42%, #e5e9ef 42% 100%);
}

.zire-rpt-score-ring > div {
	display: flex;
	align-items: baseline;
}

.zire-rpt-score-ring strong {
	font-size: 27px;
}

.zire-rpt-score-ring > div span {
	color: #8a94a3;
	font-size: 11px;
}

.zire-rpt-score-ring small {
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-rpt-main-score > div:last-child > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-main-score > div:last-child > strong {
	display: block;
	margin: 5px 0;
	color: #07885f;
	font-size: 15px;
}

.zire-rpt-main-score > div:last-child > small {
	color: #7e8998;
	font-size: 11px;
	line-height: 1.45;
}

.zire-rpt-score-signals {
	display: grid;
	gap: 9px;
	align-content: center;
}

.zire-rpt-score-signals > div {
	display: grid;
	grid-template-columns: 100px 1fr 35px;
	align-items: center;
	gap: 8px;
}

.zire-rpt-score-signals span,
.zire-rpt-score-signals strong {
	font-size: 11px;
}

.zire-rpt-score-signals i {
	height: 6px;
	border-radius: 999px;
	background: #e5e9ef;
	overflow: hidden;
}

.zire-rpt-score-signals b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-rpt-scorecard-chart {
	position: relative;
	height: 180px;
	padding-top: 5px;
	border-top: 1px solid #edf0f4;
}

.zire-rpt-scorecard-chart > div:first-child {
	position: absolute;
	inset: 5px 0 24px;
	background:
		linear-gradient(to bottom, rgba(35, 48, 71, .05) 1px, transparent 1px);
	background-size: 100% 33.333%;
}

.zire-rpt-scorecard-chart svg {
	position: relative;
	width: 100%;
	height: 150px;
}

.zire-rpt-scorecard-chart > div:last-child {
	display: flex;
	justify-content: space-between;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-scorecard__footer {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin-top: 5px;
}

.zire-rpt-scorecard__footer > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rpt-scorecard__footer span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-scorecard__footer strong {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}


/* =========================================================
   MAIN LIGHT WRAPPER
   ========================================================= */

.zire-rpt-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-rpt-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-rpt-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 500px;
	background: radial-gradient(circle, rgba(49, 94, 251, .08), transparent 68%);
}

.zire-rpt-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 600px;
	background: radial-gradient(circle, rgba(118, 87, 232, .07), transparent 68%);
}

.zire-rpt-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-rpt-main-shape--one {
	right: -145px;
	top: 840px;
}

.zire-rpt-main-shape--two {
	left: -145px;
	bottom: 950px;
}

.zire-rpt-section {
	position: relative;
	z-index: 1;
}

.zire-rpt-section + .zire-rpt-section {
	margin-top: 92px;
}


/* VISUAL BLUR */

.zire-rpt-visual {
	position: relative;
	z-index: 1;
}

.zire-rpt-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(49, 94, 251, .18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}


/* COPY POINTS */

.zire-rpt-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-rpt-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255, 255, 255, .77);
}

.zire-rpt-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg, #edf2ff, #f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-rpt-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-rpt-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-rpt-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   PROMPTS + TOPICS
   ========================================================= */

.zire-rpt-prompt-visual {
	display: grid;
	grid-template-columns: 1.18fr .82fr;
	gap: 12px;
}

.zire-rpt-prompt-window,
.zire-rpt-topic-window {
	padding-bottom: 15px;
}

.zire-rpt-prompt-table-head {
	display: grid;
	grid-template-columns: 1.7fr repeat(3, .55fr);
	gap: 8px;
	padding: 0 17px 8px;
	color: #8791a0;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-rpt-prompt-table {
	display: grid;
	padding: 0 17px;
}

.zire-rpt-prompt-table > div {
	display: grid;
	grid-template-columns: 1.7fr repeat(3, .55fr);
	align-items: center;
	gap: 8px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-rpt-prompt-table strong {
	display: block;
	font-size: 11px;
	line-height: 1.4;
}

.zire-rpt-prompt-table small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-prompt-table > div > b {
	justify-self: start;
	padding: 4px 6px;
	border-radius: 999px;
	font-size: 11px;
}

.zire-rpt-prompt-table b.is-blue {
	background: #edf2ff;
	color: #315efb;
}

.zire-rpt-prompt-table b.is-purple {
	background: #f1edff;
	color: #7657e8;
}

.zire-rpt-prompt-table b.is-green {
	background: #eaf8f2;
	color: #07885f;
}


/* TOPICS */

.zire-rpt-topic-bars {
	display: grid;
	gap: 12px;
	padding: 2px 17px 15px;
}

.zire-rpt-topic-bars > div {
	display: grid;
	grid-template-columns: 105px 1fr 35px;
	align-items: center;
	gap: 8px;
}

.zire-rpt-topic-bars span,
.zire-rpt-topic-bars strong {
	font-size: 11px;
}

.zire-rpt-topic-bars i {
	height: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-rpt-topic-bars b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-rpt-topic-insight {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: center;
	gap: 9px;
	margin: 0 17px;
	padding: 10px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-rpt-topic-insight > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-rpt-topic-insight small {
	display: block;
	color: #7657e8;
	font-size: 11px;
}

.zire-rpt-topic-insight strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.45;
}


/* =========================================================
   COMPETITORS
   ========================================================= */

.zire-rpt-competitor-visual {
	display: grid;
	gap: 12px;
}

.zire-rpt-sov-window {
	padding-bottom: 16px;
}

.zire-rpt-sov-main {
	display: grid;
	grid-template-columns: 155px 1fr;
	align-items: center;
	gap: 15px;
	padding: 0 17px;
}

.zire-rpt-sov-ring {
	width: 135px;
	height: 135px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, #fff 59%, transparent 60%),
		conic-gradient(#315efb 0 24%, #e5e9ef 24% 100%);
}

.zire-rpt-sov-ring > div {
	text-align: center;
}

.zire-rpt-sov-ring strong {
	display: block;
	font-size: 22px;
}

.zire-rpt-sov-ring span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-sov-list {
	display: grid;
	gap: 10px;
}

.zire-rpt-sov-list > div {
	display: grid;
	grid-template-columns: 90px 1fr 30px;
	align-items: center;
	gap: 8px;
}

.zire-rpt-sov-list span,
.zire-rpt-sov-list strong {
	font-size: 11px;
}

.zire-rpt-sov-list i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-rpt-sov-list b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* COMPETITOR TABLE */

.zire-rpt-competitor-table {
	padding: 15px 17px;
}

.zire-rpt-competitor-table__head,
.zire-rpt-competitor-table__rows > div {
	display: grid;
	grid-template-columns: 1.4fr repeat(3, .65fr);
	gap: 9px;
	align-items: center;
}

.zire-rpt-competitor-table__head {
	padding-bottom: 8px;
	color: #8791a0;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-rpt-competitor-table__rows > div {
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-rpt-competitor-table__rows > div.is-brand {
	margin: 2px -7px;
	padding: 9px 7px;
	border: 1px solid #bdcaff;
	border-radius: 8px;
	background: #f4f7ff;
}

.zire-rpt-competitor-table strong,
.zire-rpt-competitor-table b {
	font-size: 11px;
}

.zire-rpt-competitor-table b {
	color: #315efb;
}


/* =========================================================
   CITATION REPORTING
   ========================================================= */

.zire-rpt-citation-visual {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 12px;
}

.zire-rpt-source-detail {
	grid-column: 1 / 3;
}


/* SOURCE MIX */

.zire-rpt-source-mix {
	padding-bottom: 15px;
}

.zire-rpt-source-mix__body {
	display: grid;
	grid-template-columns: 145px 1fr;
	align-items: center;
	gap: 12px;
	padding: 0 17px;
}

.zire-rpt-source-ring {
	width: 125px;
	height: 125px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, #fff 58%, transparent 59%),
		conic-gradient(
			#315efb 0 40%,
			#7657e8 40% 61%,
			#16a085 61% 76%,
			#f09a42 76% 86%,
			#9aa4b1 86% 100%
		);
}

.zire-rpt-source-ring > div {
	text-align: center;
}

.zire-rpt-source-ring strong {
	display: block;
	font-size: 18px;
}

.zire-rpt-source-ring span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-source-types {
	display: grid;
	gap: 8px;
}

.zire-rpt-source-types > div {
	display: grid;
	grid-template-columns: 9px 1fr auto;
	align-items: center;
	gap: 7px;
}

.zire-rpt-source-types i {
	width: 8px;
	height: 8px;
	border-radius: 50%;
}

.zire-rpt-source-types .is-blue {
	background: #315efb;
}

.zire-rpt-source-types .is-purple {
	background: #7657e8;
}

.zire-rpt-source-types .is-green {
	background: #16a085;
}

.zire-rpt-source-types .is-orange {
	background: #f09a42;
}

.zire-rpt-source-types .is-grey {
	background: #9aa4b1;
}

.zire-rpt-source-types span,
.zire-rpt-source-types strong {
	font-size: 11px;
}


/* DOMAINS */

.zire-rpt-domains-window {
	padding-bottom: 15px;
}

.zire-rpt-domain-bars {
	display: grid;
	gap: 11px;
	padding: 0 17px;
}

.zire-rpt-domain-bars > div {
	display: grid;
	grid-template-columns: 100px 1fr 28px;
	align-items: center;
	gap: 8px;
}

.zire-rpt-domain-bars span,
.zire-rpt-domain-bars strong {
	font-size: 11px;
}

.zire-rpt-domain-bars i {
	height: 7px;
	border-radius: 999px;
	background: #e5e9ef;
	overflow: hidden;
}

.zire-rpt-domain-bars b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: #315efb;
}

.zire-rpt-domain-bars > div.is-brand b {
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* SOURCE DETAIL */

.zire-rpt-source-detail {
	padding: 15px 17px;
}

.zire-rpt-source-detail__title {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
	padding-bottom: 11px;
}

.zire-rpt-source-detail__title span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rpt-source-detail__title strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-rpt-source-detail__title small {
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-source-detail__head,
.zire-rpt-source-detail__rows > div {
	display: grid;
	grid-template-columns: 1.4fr .8fr .55fr .55fr;
	align-items: center;
	gap: 8px;
}

.zire-rpt-source-detail__head {
	padding: 7px 0;
	color: #8993a2;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-rpt-source-detail__rows > div {
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-rpt-source-detail__rows > div.is-brand {
	margin: 2px -7px;
	padding: 9px 7px;
	border: 1px solid #bdcaff;
	border-radius: 8px;
	background: #f4f7ff;
}

.zire-rpt-source-detail strong,
.zire-rpt-source-detail span,
.zire-rpt-source-detail b {
	font-size: 11px;
}

.zire-rpt-source-detail span {
	color: #7f8998;
}

.zire-rpt-source-detail b {
	color: #315efb;
}


/* =========================================================
   ACTIVITY
   ========================================================= */

.zire-rpt-activity-window {
	padding-bottom: 16px;
}

.zire-rpt-activity-kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	padding: 0 17px 12px;
}

.zire-rpt-activity-kpis > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-rpt-activity-kpis span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-activity-kpis strong {
	display: block;
	margin: 4px 0;
	font-size: 15px;
}

.zire-rpt-activity-kpis small {
	color: #7e8998;
	font-size: 11px;
}

.zire-rpt-activity-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	padding: 0 17px;
}

.zire-rpt-activity-columns > div {
	padding: 11px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-rpt-activity-title span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rpt-activity-title strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-rpt-mix-list {
	display: grid;
	gap: 9px;
	margin-top: 12px;
}

.zire-rpt-mix-list > div {
	display: grid;
	grid-template-columns: 100px 1fr 25px;
	align-items: center;
	gap: 7px;
}

.zire-rpt-mix-list span,
.zire-rpt-mix-list strong {
	font-size: 11px;
}

.zire-rpt-mix-list i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-rpt-mix-list b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}


/* ACTION STATUS */

.zire-rpt-action-status {
	display: grid;
	margin-top: 8px;
}

.zire-rpt-action-status > div {
	display: grid;
	grid-template-columns: 28px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #e8ecf2;
}

.zire-rpt-action-status > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-rpt-action-status strong {
	display: block;
	font-size: 11px;
}

.zire-rpt-action-status small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-action-status > div > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
}

.zire-rpt-action-status > div.is-complete > span,
.zire-rpt-action-status > div.is-complete > b {
	background: #eaf8f2;
	color: #07885f;
}

.zire-rpt-activity-insight {
	display: grid;
	grid-template-columns: 32px 1fr;
	align-items: center;
	gap: 9px;
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-rpt-activity-insight > span {
	width: 31px;
	height: 31px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #315efb;
}

.zire-rpt-activity-insight small {
	display: block;
	color: #7657e8;
	font-size: 11px;
}

.zire-rpt-activity-insight strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.45;
}


/* =========================================================
   EXPORT / HISTORY
   ========================================================= */

.zire-rpt-export-visual {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 12px;
}

.zire-rpt-export-window {
	display: grid;
	grid-template-columns: 52px 1fr;
	gap: 13px;
	padding: 18px;
}

.zire-rpt-export-icon {
	width: 51px;
	height: 51px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 13px;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 18px;
}

.zire-rpt-export-window > div:last-child > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rpt-export-window > div:last-child > strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-rpt-export-window p {
	margin: 7px 0 0;
	color: #748091;
	font-size: 11px;
	line-height: 1.55;
}

.zire-rpt-export-options {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 7px;
	margin-top: 13px;
}

.zire-rpt-export-options > div {
	padding: 8px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rpt-export-options span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-export-options strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-rpt-export-window button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 13px;
	padding: 8px 11px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg, #315efb, #7657e8);
	color: #fff;
	font-size: 11px;
	font-weight: 750;
}


/* HISTORY */

.zire-rpt-history-window {
	padding: 17px;
}

.zire-rpt-history-window > div:first-child > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rpt-history-window > div:first-child > strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-rpt-history-periods {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 7px;
	margin-top: 13px;
}

.zire-rpt-history-periods > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
	text-align: center;
}

.zire-rpt-history-periods span,
.zire-rpt-history-periods small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-rpt-history-periods strong {
	display: block;
	margin: 5px 0;
	font-size: 17px;
}

.zire-rpt-history-periods > div:first-child {
	background: linear-gradient(135deg, #eef3ff, #f5f0ff);
}

.zire-rpt-history-periods > div:first-child strong {
	color: #315efb;
}

.zire-rpt-history-change {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 10px;
	padding: 9px;
	border-radius: 8px;
	background: #eaf8f2;
}

.zire-rpt-history-change span {
	color: #557468;
	font-size: 11px;
}

.zire-rpt-history-change strong {
	color: #07885f;
	font-size: 12px;
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-rpt-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-rpt-mini-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zire-rpt-mini-stats > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rpt-mini-stats strong {
	display: block;
	font-size: 16px;
}

.zire-rpt-mini-stats span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-rpt-mini-recommendation > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-rpt-mini-recommendation > strong {
	display: block;
	margin: 9px 0 7px;
	font-size: 12px;
}

.zire-rpt-mini-recommendation > div {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 7px;
}

.zire-rpt-mini-recommendation i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-rpt-mini-recommendation b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #315efb, #7657e8);
}

.zire-rpt-mini-recommendation small {
	color: #315efb;
	font-size: 11px;
}

.zire-rpt-mini-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.zire-rpt-mini-actions > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-rpt-mini-actions span {
	display: block;
	color: #848e9d;
	font-size: 11px;
}

.zire-rpt-mini-actions strong {
	display: block;
	margin-top: 4px;
	font-size: 16px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-rpt-kpis,
	.zire-rpt-providers__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.zire-rpt-overview__body {
		grid-template-columns: 1fr;
	}

}


@media (max-width: 1050px) {

	.zire-rpt-prompt-visual,
	.zire-rpt-citation-visual,
	.zire-rpt-export-visual {
		grid-template-columns: 1fr;
	}

	.zire-rpt-source-detail {
		grid-column: auto;
	}

	.zire-rpt-visual {
		max-width: 820px;
	}

}


@media (max-width: 900px) {

	.zire-rpt-scorecard__main {
		grid-template-columns: 1fr;
	}

	.zire-rpt-main-score {
		max-width: 480px;
	}

	.zire-rpt-sov-main {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.zire-rpt-sov-list {
		width: 100%;
	}

	.zire-rpt-activity-columns {
		grid-template-columns: 1fr;
	}

}


@media (max-width: 700px) {

	.zire-rpt-overview {
		padding: 16px;
	}

	.zire-rpt-overview__head {
		flex-direction: column;
	}

	.zire-rpt-kpis,
	.zire-rpt-overview-lower,
	.zire-rpt-activity-kpis,
	.zire-rpt-scorecard__footer {
		grid-template-columns: 1fr 1fr;
	}

	.zire-rpt-providers {
		padding-top: 85px;
	}

	.zire-rpt-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-rpt-main {
		padding: 85px 18px 90px;
	}

	.zire-rpt-section + .zire-rpt-section {
		margin-top: 72px;
	}

	.zire-rpt-prompt-table-head {
		display: none;
	}

	.zire-rpt-prompt-table > div {
		grid-template-columns: 1fr repeat(3, auto);
	}

	.zire-rpt-source-mix__body {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.zire-rpt-source-types {
		width: 100%;
	}

	.zire-rpt-source-detail__head {
		display: none;
	}

	.zire-rpt-source-detail__rows > div {
		grid-template-columns: 1fr auto auto;
	}

	.zire-rpt-source-detail__rows > div > span {
		grid-column: 1;
	}

	.zire-rpt-export-options,
	.zire-rpt-history-periods,
	.zire-rpt-export-window {
		grid-template-columns: 1fr;
	}

	.zire-rpt-main-score {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	.zire-rpt-score-signals > div {
		grid-template-columns: 90px 1fr 30px;
	}

	.zire-rpt-top-shape {
		display: none;
	}

	.zire-rpt-main-shape {
		width: 260px;
		height: 260px;
	}

}


@media (max-width: 480px) {

	.zire-rpt-kpis,
	.zire-rpt-overview-lower,
	.zire-rpt-activity-kpis,
	.zire-rpt-scorecard__footer {
		grid-template-columns: 1fr;
	}

	.zire-rpt-report-controls {
		flex-wrap: wrap;
	}

}

/* =========================================================
   AI VISIBILITY SCORE — PAGE-SPECIFIC CSS ONLY

   REUSES EXISTING PLATFORM CSS:
   - zire-platform-intro
   - zire-platform-stage
   - zire-platform-monitor-dark
   - zire-platform-more
   - zire-platform-feature-card
   - zire-platform-faq
   - zire-platform-final
   - existing reveal/chart hooks

   No new JS required.
   Minimum visual text size: 9px.
   ========================================================= */


/* =========================================================
   TOP
   ========================================================= */

.zire-score-top {
	padding-bottom: 120px;
}

.zire-score-top-shape-wrap {
	position: relative;
}

.zire-score-top-shape {
	position: absolute;
	right: -145px;
	top: -135px;
	width: 440px;
	height: 440px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO SCORE OVERVIEW
   ========================================================= */

.zire-score-overview-wrap {
	max-width: 1190px;
	margin: 65px auto 0;
}

.zire-score-overview {
	padding: 26px;
	border: 1px solid rgba(27, 37, 58, .10);
	border-radius: 22px;
	background: rgba(255,255,255,.98);
	box-shadow: 0 38px 90px rgba(26,39,73,.13);
}

.zire-score-overview__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 15px;
}

.zire-score-overview__head > div:first-child > span,
.zire-score-card-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.zire-score-overview__head strong {
	display: block;
	color: #1d2430;
	font-size: 17px;
}

.zire-score-overview__head p {
	margin: 3px 0 0;
	color: #8992a0;
	font-size: 13px;
	line-height: 1.45;
}

.zire-score-status {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-score-status > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* MAIN */

.zire-score-overview__main {
	display: grid;
	grid-template-columns: .86fr 1.14fr;
	gap: 10px;
}

.zire-score-main-card,
.zire-score-signal-grid > div,
.zire-score-trend {
	border: 1px solid #e5e9ef;
	border-radius: 12px;
	background: #fff;
}

.zire-score-main-card {
	display: grid;
	grid-template-columns: 175px 1fr;
	align-items: center;
	gap: 18px;
	padding: 22px;
}


/* RING */

.zire-score-main-card__ring {
	width: 155px;
	height: 155px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center,#fff 59%,transparent 60%),
		conic-gradient(#315efb 0 42%,#e6eaf0 42% 100%);
}

.zire-score-main-card__ring > div {
	display: flex;
	align-items: baseline;
}

.zire-score-main-card__ring strong {
	color: #171d27;
	font-size: 36px;
	letter-spacing: -1.5px;
}

.zire-score-main-card__ring span {
	color: #8993a2;
	font-size: 12px;
}

.zire-score-main-card__ring small {
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-score-main-card__copy > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-score-main-card__copy > strong {
	display: block;
	margin-top: 5px;
	color: #202833;
	font-size: 16px;
}

.zire-score-main-card__copy > p {
	margin: 7px 0 0;
	color: #748091;
	font-size: 12px;
	line-height: 1.55;
}

.zire-score-change {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 13px;
	padding: 9px;
	border-radius: 8px;
	background: #eaf8f2;
}

.zire-score-change > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #fff;
	color: #07885f;
	font-size: 12px;
}

.zire-score-change strong {
	display: block;
	color: #07885f;
	font-size: 12px;
}

.zire-score-change small {
	display: block;
	margin-top: 2px;
	color: #688579;
	font-size: 11px;
}


/* SIGNAL GRID */

.zire-score-signal-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
}

.zire-score-signal-grid > div {
	padding: 14px;
	border-top-width: 2px;
}

.zire-score-signal-grid > div.is-recommend {
	border-top-color: #7657e8;
}

.zire-score-signal-grid > div.is-citation {
	border-top-color: #16a085;
}

.zire-score-signal-grid > div.is-mention {
	border-top-color: #315efb;
}

.zire-score-signal-grid__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 6px;
	min-height: 34px;
}

.zire-score-signal-grid__top > span {
	color: #727e8f;
	font-size: 11px;
	font-weight: 700;
}

.zire-score-signal-grid__top > b {
	padding: 3px 5px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #7e8998;
	font-size: 11px;
	white-space: nowrap;
}

.zire-score-signal-grid > div > strong {
	display: block;
	margin-top: 9px;
	color: #1c2430;
	font-size: 24px;
}

.zire-score-signal-grid > div > small {
	display: block;
	min-height: 42px;
	margin-top: 4px;
	color: #8993a2;
	font-size: 11px;
	line-height: 1.45;
}

.zire-score-signal-grid > div > i {
	display: block;
	height: 6px;
	margin-top: 12px;
	overflow: hidden;
	border-radius: 999px;
	background: #e6eaf0;
}

.zire-score-signal-grid > div > i > b {
	display: block;
	height: 100%;
	border-radius: inherit;
}

.zire-score-signal-grid .is-recommend > i > b {
	background: #7657e8;
}

.zire-score-signal-grid .is-citation > i > b {
	background: #16a085;
}

.zire-score-signal-grid .is-mention > i > b {
	background: #315efb;
}


/* HERO TREND */

.zire-score-trend {
	margin-top: 10px;
	padding: 15px 17px 13px;
}

.zire-score-trend__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
}

.zire-score-trend__head > div:first-child > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-score-trend__head > div:first-child > strong {
	display: block;
	margin-top: 3px;
	font-size: 13px;
}

.zire-score-trend__head > div:last-child {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #778293;
	font-size: 11px;
}

.zire-score-trend__head > div:last-child > span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #315efb;
}

.zire-score-trend__head i {
	margin-left: 8px;
	padding: 4px 6px;
	border-radius: 999px;
	background: #f1f3f7;
	color: #7c8796;
	font-size: 11px;
	font-style: normal;
}

.zire-score-trend__chart {
	position: relative;
	height: 225px;
	margin-top: 8px;
}

.zire-score-chart-grid {
	position: absolute;
	inset: 0 0 24px;
	background:
		linear-gradient(to bottom,rgba(35,48,71,.055) 1px,transparent 1px);
	background-size: 100% 25%;
}

.zire-score-trend__chart svg {
	position: relative;
	width: 100%;
	height: 195px;
}

.zire-score-chart-axis {
	display: flex;
	justify-content: space-between;
	color: #8993a2;
	font-size: 11px;
}


/* HERO FOOT */

.zire-score-overview__foot {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	gap: 8px;
	margin-top: 10px;
}

.zire-score-overview__foot > div {
	padding: 10px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-score-overview__foot span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-overview__foot strong {
	display: block;
	margin-top: 4px;
	color: #252d38;
	font-size: 13px;
}


/* =========================================================
   PROVIDERS
   ========================================================= */

.zire-score-providers {
	padding-top: 110px;
}

.zire-score-providers__stage {
	grid-template-columns: 1fr;
	gap: 0;
	justify-items: center;
}

.zire-score-providers__heading {
	max-width: 900px;
	margin: 0 auto 45px;
	text-align: center;
}

.zire-score-providers__heading h2,
.zire-score-providers__heading .zire-platform-stage__lead {
	margin-left: auto;
	margin-right: auto;
}

.zire-score-providers__heading .zire-platform-stage__lead {
	max-width: 760px;
}

.zire-score-providers__grid {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	gap: 11px;
}

.zire-score-providers__grid > a {
	min-height: 260px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: rgba(255,255,255,.92);
	box-shadow: 0 14px 36px rgba(34,48,80,.05);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}

.zire-score-providers__grid > a:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 19px 45px rgba(34,48,80,.09);
}

.zire-score-providers__grid > a > div {
	height: 44px;
	display: flex;
	align-items: center;
	margin-bottom: 13px;
}

.zire-score-providers__grid img {
	max-width: 92px;
	max-height: 27px;
	object-fit: contain;
}

.zire-score-providers__grid h3 {
	margin: 0 0 8px;
	color: #1e2530;
	font-size: 18px;
}

.zire-score-providers__grid p {
	margin: 0 0 18px;
	color: #707b8c;
	font-size: 12px;
	line-height: 1.58;
}

.zire-score-providers__grid > a > span {
	margin-top: auto;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-score-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .12;
}

.zire-score-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 28px;
}

.zire-score-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 10px;
	background: rgba(255,255,255,.038);
}

.zire-score-dark__points > div.is-primary {
	border-color: rgba(137,151,255,.26);
	background: rgba(98,121,255,.09);
}

.zire-score-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98,121,255,.15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-score-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-score-dark__points small {
	display: block;
	color: rgba(255,255,255,.43);
	font-size: 11px;
}

.zire-score-dark__points > div > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: rgba(255,255,255,.07);
	color: rgba(255,255,255,.60);
	font-size: 11px;
	white-space: nowrap;
}

.zire-score-dark__points > div.is-primary > b {
	background: rgba(118,87,232,.20);
	color: #c0b7ff;
}


/* SCORE MODEL */

.zire-score-model-window {
	padding: 22px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0,0,0,.22);
	color: #1c2430;
}

.zire-score-model-window__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-score-model-window__head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-score-model-window__head strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}

.zire-score-model-window__head small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef3ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-score-model-main {
	display: grid;
	grid-template-columns: 160px 1fr;
	align-items: center;
	gap: 16px;
	padding: 17px 0;
}

.zire-score-model-ring {
	width: 140px;
	height: 140px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center,#fff 59%,transparent 60%),
		conic-gradient(#315efb 0 42%,#e5e9ef 42% 100%);
}

.zire-score-model-ring > div {
	display: flex;
	align-items: baseline;
}

.zire-score-model-ring strong {
	font-size: 30px;
}

.zire-score-model-ring span {
	color: #8993a2;
	font-size: 11px;
}

.zire-score-model-ring small {
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-score-model-signals {
	display: grid;
	gap: 7px;
}

.zire-score-model-signals > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 9px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-score-model-signals > div > div {
	display: grid;
	grid-template-columns: 29px 1fr;
	align-items: center;
	gap: 8px;
}

.zire-score-model-signals > div > div > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eef1f5;
	color: #6f7a8a;
	font-size: 11px;
	font-weight: 800;
}

.zire-score-model-signals > div.is-recommend > div > span {
	background: #f0ebff;
	color: #7657e8;
}

.zire-score-model-signals > div.is-citation > div > span {
	background: #eaf8f2;
	color: #07885f;
}

.zire-score-model-signals > div.is-mention > div > span {
	background: #edf2ff;
	color: #315efb;
}

.zire-score-model-signals strong {
	display: block;
	font-size: 11px;
}

.zire-score-model-signals small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-model-signals > div > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #748091;
	font-size: 11px;
}

.zire-score-model-context {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 7px;
	padding-top: 13px;
	border-top: 1px solid #edf0f4;
}

.zire-score-model-context > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-score-model-context span,
.zire-score-model-context small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-model-context strong {
	display: block;
	margin: 5px 0 3px;
	font-size: 15px;
}

.zire-score-model-note {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: center;
	gap: 9px;
	margin-top: 10px;
	padding: 10px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-score-model-note > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-score-model-note p {
	margin: 0;
	color: #707b8c;
	font-size: 11px;
	line-height: 1.5;
}


/* =========================================================
   MAIN LIGHT SECTION
   ========================================================= */

.zire-score-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 120px 24px 110px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 31%,
			#f5f7ff 67%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-score-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-score-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 520px;
	background: radial-gradient(circle,rgba(49,94,251,.08),transparent 68%);
}

.zire-score-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 620px;
	background: radial-gradient(circle,rgba(118,87,232,.07),transparent 68%);
}

.zire-score-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-score-main-shape--one {
	right: -145px;
	top: 760px;
}

.zire-score-main-shape--two {
	left: -145px;
	bottom: 950px;
}

.zire-score-section {
	position: relative;
	z-index: 1;
}

.zire-score-section + .zire-score-section {
	margin-top: 92px;
}


/* =========================================================
   SHARED VISUAL STYLE
   ========================================================= */

.zire-score-visual {
	position: relative;
	z-index: 1;
}

.zire-score-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-score-signal-window,
.zire-score-prompt-window,
.zire-score-platform-window,
.zire-score-history-window,
.zire-score-benchmark-window {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#b49dff,#7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35,50,86,.09);
}

.zire-score-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-score-card-head strong {
	display: block;
	color: #252d38;
	font-size: 13px;
}

.zire-score-card-head > small {
	color: #8993a2;
	font-size: 11px;
}


/* COPY POINTS */

.zire-score-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 27px;
}

.zire-score-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255,255,255,.77);
}

.zire-score-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-score-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 12px;
}

.zire-score-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 12px;
}

.zire-score-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 24px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   SIGNAL VISUAL
   ========================================================= */

.zire-score-signal-window {
	padding-bottom: 16px;
}

.zire-score-signal-big {
	margin: 0 17px 10px;
	padding: 14px;
	border-radius: 10px;
	background: linear-gradient(135deg,#f5f2ff,#fbfaff);
	border: 1px solid #ded6ff;
}

.zire-score-signal-big > div:first-child {
	display: flex;
	align-items: center;
	gap: 10px;
}

.zire-score-signal-big__icon {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: #7657e8;
	color: #fff;
	font-size: 12px;
}

.zire-score-signal-big > div:first-child > div > span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-score-signal-big > div:first-child > div > strong {
	display: block;
	margin-top: 2px;
	font-size: 22px;
}

.zire-score-signal-big > div:first-child > div > small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-signal-big__badge {
	display: inline-flex;
	margin-top: 10px;
	padding: 4px 7px;
	border-radius: 999px;
	background: #fff;
	color: #7657e8;
	font-size: 11px;
	font-weight: 750;
}

.zire-score-signal-big__bar {
	height: 7px;
	margin-top: 10px;
	border-radius: 999px;
	background: #e7e2f5;
	overflow: hidden;
}

.zire-score-signal-big__bar i {
	display: block;
	width: 68%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-score-signal-big p {
	margin: 8px 0 0;
	color: #707b8c;
	font-size: 11px;
	line-height: 1.5;
}

.zire-score-signal-small-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	padding: 0 17px 10px;
}

.zire-score-signal-small-grid > div {
	display: grid;
	grid-template-columns: 37px 1fr;
	gap: 9px;
	padding: 11px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-score-small-icon {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	font-size: 12px;
	font-weight: 800;
}

.zire-score-small-icon.is-cited {
	background: #eaf8f2;
	color: #07885f;
}

.zire-score-small-icon.is-mentioned {
	background: #edf2ff;
	color: #315efb;
}

.zire-score-signal-small-grid > div > div > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-signal-small-grid > div > div > strong {
	display: block;
	margin: 3px 0;
	font-size: 16px;
}

.zire-score-signal-small-grid > div > div > small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-signal-small-grid > div > i {
	grid-column: 1 / 3;
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-score-signal-small-grid > div > i > b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-score-signal-context {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 7px;
	padding: 0 17px;
}

.zire-score-signal-context > div {
	padding: 8px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-score-signal-context span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-signal-context strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}


/* =========================================================
   PROMPTS
   ========================================================= */

.zire-score-prompt-window {
	padding-bottom: 16px;
}

.zire-score-prompt-list {
	display: grid;
	padding: 0 17px 10px;
}

.zire-score-prompt-list > div {
	display: grid;
	grid-template-columns: 34px 1fr 65px;
	align-items: center;
	gap: 9px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-score-prompt-list > div.is-strong {
	margin: 2px -7px;
	padding: 9px 7px;
	border: 1px solid #b8dcca;
	border-radius: 9px;
	background: #f8fffb;
}

.zire-score-prompt-list > div.is-gap {
	margin: 2px -7px;
	padding: 9px 7px;
	border: 1px solid #e6ddff;
	border-radius: 9px;
	background: #faf8ff;
}

.zire-score-prompt-number {
	width: 33px;
	height: 33px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-score-prompt-list strong {
	display: block;
	font-size: 11px;
	line-height: 1.4;
}

.zire-score-prompt-list > div > div:nth-child(2) > div {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 5px;
}

.zire-score-prompt-list > div > div:nth-child(2) span {
	padding: 3px 5px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #788393;
	font-size: 11px;
}

.zire-score-prompt-result {
	text-align: right;
}

.zire-score-prompt-result span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-prompt-result strong {
	display: block;
	margin-top: 3px;
	color: #315efb;
	font-size: 13px;
}

.is-gap .zire-score-prompt-result strong {
	color: #7657e8;
}

.zire-score-prompt-summary {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 7px;
	padding: 0 17px;
}

.zire-score-prompt-summary > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-score-prompt-summary span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-prompt-summary strong {
	display: block;
	margin-top: 4px;
	font-size: 13px;
}


/* =========================================================
   PROVIDER PERFORMANCE
   ========================================================= */

.zire-score-platform-window {
	padding-bottom: 16px;
}

.zire-score-platform-score {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	gap: 7px;
	padding: 0 17px 13px;
}

.zire-score-platform-score > div {
	padding: 9px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-score-platform-score img {
	width: 24px;
	height: 24px;
	object-fit: contain;
	margin-bottom: 8px;
}

.zire-score-platform-score strong {
	display: block;
	font-size: 11px;
}

.zire-score-platform-score span {
	display: block;
	min-height: 27px;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
	line-height: 1.35;
}

.zire-score-platform-score > div > b {
	display: block;
	margin-top: 8px;
	color: #315efb;
	font-size: 17px;
}

.zire-score-platform-chart {
	margin: 0 17px;
	padding: 12px;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-score-platform-chart__legend {
	display: flex;
	gap: 12px;
	margin-bottom: 12px;
}

.zire-score-platform-chart__legend span {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #778293;
	font-size: 11px;
}

.zire-score-platform-chart__legend span:first-child i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #315efb;
}

.zire-score-platform-chart__legend span:last-child i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #cfd6e3;
}

.zire-score-platform-bars {
	display: grid;
	gap: 10px;
}

.zire-score-platform-bars > div {
	display: grid;
	grid-template-columns: 76px 1fr 25px;
	align-items: center;
	gap: 8px;
}

.zire-score-platform-bars span,
.zire-score-platform-bars strong {
	font-size: 11px;
}

.zire-score-platform-bars > div > div {
	position: relative;
	height: 8px;
	border-radius: 999px;
	background: #e6eaf0;
	overflow: hidden;
}

.zire-score-platform-bars i,
.zire-score-platform-bars b {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	border-radius: inherit;
}

.zire-score-platform-bars i {
	background: #315efb;
	z-index: 2;
}

.zire-score-platform-bars b {
	background: #cfd6e3;
	z-index: 1;
}


/* =========================================================
   HISTORY
   ========================================================= */

.zire-score-history-window {
	padding-bottom: 16px;
}

.zire-score-history-change {
	display: flex;
	align-items: baseline;
	gap: 4px;
}

.zire-score-history-change span {
	color: #07885f;
	font-size: 16px;
	font-weight: 800;
}

.zire-score-history-change small {
	color: #8993a2;
	font-size: 11px;
}

.zire-score-history-chart {
	position: relative;
	height: 260px;
	margin: 0 17px;
}

.zire-score-history-grid {
	position: absolute;
	inset: 0 0 25px;
	background:
		linear-gradient(to bottom,rgba(35,48,71,.055) 1px,transparent 1px);
	background-size: 100% 25%;
}

.zire-score-history-chart svg {
	position: relative;
	width: 100%;
	height: 225px;
}

.zire-score-history-axis {
	display: flex;
	justify-content: space-between;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-history-milestones {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 7px;
	margin: 10px 17px 0;
}

.zire-score-history-milestones > div {
	display: grid;
	grid-template-columns: 28px 1fr auto;
	align-items: center;
	gap: 7px;
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-score-history-milestones > div > span {
	width: 27px;
	height: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-score-history-milestones small {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-history-milestones strong {
	display: block;
	margin-top: 2px;
	font-size: 11px;
}

.zire-score-history-milestones > div > b {
	color: #07885f;
	font-size: 12px;
}


/* =========================================================
   BENCHMARK
   ========================================================= */

.zire-score-benchmark-window {
	padding-bottom: 16px;
}

.zire-score-ranking {
	display: grid;
	padding: 0 17px;
}

.zire-score-ranking > div {
	display: grid;
	grid-template-columns: 38px 1fr 150px 35px;
	align-items: center;
	gap: 9px;
	padding: 11px 0;
	border-top: 1px solid #edf0f4;
}

.zire-score-ranking > div.is-brand {
	margin: 2px -7px;
	padding: 10px 7px;
	border: 1px solid #bdcaff;
	border-radius: 9px;
	background: #f3f6ff;
}

.zire-score-ranking > div.is-first {
	background: linear-gradient(90deg,#fffdf5,#fff);
}

.zire-score-rank {
	position: relative;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #eef1f5;
	color: #758091;
	font-size: 12px;
	font-weight: 800;
}

.is-brand .zire-score-rank {
	background: #edf2ff;
	color: #315efb;
}

.is-first .zire-score-rank {
	background: #fff5d7;
	color: #aa7b13;
}

.zire-score-rank > b {
	position: absolute;
	right: -4px;
	top: -5px;
	color: #d59a13;
	font-size: 12px;
}

.zire-score-ranking strong {
	display: block;
	font-size: 12px;
}

.zire-score-ranking small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-rank-bar i {
	display: block;
	height: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-score-rank-bar b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-score-ranking > div > strong:last-child {
	color: #315efb;
	font-size: 13px;
	text-align: right;
}

.zire-score-gap-card {
	display: grid;
	grid-template-columns: 37px 1fr auto;
	align-items: center;
	gap: 10px;
	margin: 12px 17px 0;
	padding: 11px;
	border-radius: 10px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-score-gap-card__icon {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #fff;
	color: #7657e8;
}

.zire-score-gap-card span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-score-gap-card strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-score-gap-card small {
	display: block;
	margin-top: 3px;
	color: #788393;
	font-size: 11px;
}

.zire-score-gap-card__change {
	padding: 8px;
	border-radius: 8px;
	background: #fff;
	text-align: center;
}

.zire-score-gap-card__change span {
	color: #8993a2;
	font-size: 11px;
	text-transform: none;
}

.zire-score-gap-card__change strong {
	color: #07885f;
	font-size: 14px;
}


/* =========================================================
   CONNECTED FEATURES
   ========================================================= */

.zire-score-more-full {
	margin-top: 95px;
	padding: 0 0 15px;
	background: transparent;
}

.zire-score-mini-stats {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
}

.zire-score-mini-stats > div {
	padding: 11px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-score-mini-stats strong {
	display: block;
	font-size: 16px;
}

.zire-score-mini-stats span {
	display: block;
	margin-top: 3px;
	color: #848e9d;
	font-size: 11px;
}

.zire-score-mini-rec > span {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: #fff0ef;
	color: #d6574e;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-score-mini-rec > strong {
	display: block;
	margin: 9px 0 7px;
	font-size: 12px;
}

.zire-score-mini-rec > div {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 7px;
}

.zire-score-mini-rec i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-score-mini-rec b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-score-mini-rec small {
	color: #315efb;
	font-size: 11px;
}

.zire-score-mini-report {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 7px;
}

.zire-score-mini-report > div {
	padding: 10px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-score-mini-report span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-score-mini-report strong {
	display: block;
	margin-top: 4px;
	font-size: 15px;
}

.zire-score-mini-report > div.is-positive {
	background: #eaf8f2;
}

.zire-score-mini-report > div.is-positive strong {
	color: #07885f;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1120px) {

	.zire-score-providers__grid {
		grid-template-columns: repeat(3,1fr);
	}

	.zire-score-overview__main {
		grid-template-columns: .78fr 1.22fr;
	}

	.zire-score-platform-score {
		grid-template-columns: repeat(3,1fr);
	}

}


@media (max-width: 1050px) {

	.zire-score-overview__main {
		grid-template-columns: 1fr;
	}

	.zire-score-visual {
		max-width: 820px;
	}

	.zire-score-history-milestones {
		grid-template-columns: 1fr;
	}

}


@media (max-width: 900px) {

	.zire-score-main-card {
		grid-template-columns: 155px 1fr;
	}

	.zire-score-signal-grid {
		grid-template-columns: 1fr;
	}

	.zire-score-model-main {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.zire-score-model-signals {
		width: 100%;
	}

	.zire-score-ranking > div {
		grid-template-columns: 38px 1fr 100px 35px;
	}

}


@media (max-width: 700px) {

	.zire-score-overview {
		padding: 16px;
	}

	.zire-score-overview__head {
		flex-direction: column;
	}

	.zire-score-main-card {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	.zire-score-change {
		text-align: left;
	}

	.zire-score-overview__foot,
	.zire-score-model-context,
	.zire-score-signal-context,
	.zire-score-prompt-summary {
		grid-template-columns: 1fr 1fr;
	}

	.zire-score-providers {
		padding-top: 85px;
	}

	.zire-score-providers__grid {
		grid-template-columns: 1fr;
	}

	.zire-score-main {
		padding: 85px 18px 90px;
	}

	.zire-score-section + .zire-score-section {
		margin-top: 72px;
	}

	.zire-score-dark__points > div {
		grid-template-columns: 39px 1fr;
	}

	.zire-score-dark__points > div > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-score-signal-small-grid {
		grid-template-columns: 1fr;
	}

	.zire-score-platform-score {
		grid-template-columns: 1fr 1fr;
	}

	.zire-score-ranking > div {
		grid-template-columns: 38px 1fr 35px;
	}

	.zire-score-rank-bar {
		grid-column: 2 / 4;
		width: 100%;
	}

	.zire-score-gap-card {
		grid-template-columns: 37px 1fr;
	}

	.zire-score-gap-card__change {
		grid-column: 2;
		justify-self: start;
	}

	.zire-score-top-shape {
		display: none;
	}

	.zire-score-main-shape {
		width: 260px;
		height: 260px;
	}

}


@media (max-width: 480px) {

	.zire-score-overview__foot,
	.zire-score-model-context,
	.zire-score-signal-context,
	.zire-score-prompt-summary,
	.zire-score-platform-score,
	.zire-score-mini-report {
		grid-template-columns: 1fr;
	}

	.zire-score-prompt-list > div {
		grid-template-columns: 34px 1fr;
	}

	.zire-score-prompt-result {
		grid-column: 2;
		text-align: left;
	}

}

/* =========================================================
   AI PROVIDER TEMPLATE — CHATGPT
   PAGE-SPECIFIC CSS

   REUSES EXISTING:
   - .zire-container
   - .zire-eyebrow
   - .zire-platform-intro
   - .zire-platform-stage
   - .zire-platform-monitor-dark
   - .zire-platform-faq
   - .zire-platform-final
   - existing data-zire-reveal JS
   - existing data-zire-chart JS

   No new JS required.
   No visual text below 9px.
   ========================================================= */


/* =========================================================
   CONSISTENT HEADING SCALE
   ========================================================= */

.zire-provider-centred-heading {
	max-width: 880px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.zire-provider-centred-heading h2,
.zire-provider-main .zire-platform-stage__copy h2 {
	font-size: clamp(38px, 3.7vw, 54px);
	line-height: 1.01;
	letter-spacing: -.04em;
	font-weight: 900;
}

.zire-provider-centred-heading h2 {
	max-width: 880px;
	margin: 17px auto 0;
}

.zire-provider-centred-heading h2 span {
	display: block;
	color: #315efb;
}

.zire-provider-centred-heading > p {
	max-width: 720px;
	margin: 18px auto 0;
	color: #707b8c;
	font-size: 16px;
	line-height: 1.7;
}


/* =========================================================
   HERO
   ========================================================= */

.zire-provider-top {
	padding-bottom: 112px;
}

.zire-provider-brand {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 21px;
	padding: 8px 13px;
	border: 1px solid #e0e5ed;
	border-radius: 999px;
	background: rgba(255,255,255,.8);
	box-shadow: 0 8px 26px rgba(34,48,80,.05);
}

.zire-provider-brand__logo {
	display: block;
	width: 96px;
	max-height: 28px;
	object-fit: contain;
}

.zire-provider-brand > span {
	padding-left: 10px;
	border-left: 1px solid #e1e5eb;
	color: #687487;
	font-size: 12px;
	font-weight: 700;
}

.zire-provider-top-shape-wrap {
	position: relative;
}

.zire-provider-top-shape {
	position: absolute;
	right: -150px;
	top: -115px;
	width: 445px;
	height: 445px;
	opacity: .12;
	pointer-events: none;
}


/* =========================================================
   HERO ANSWER VISUAL
   ========================================================= */

.zire-provider-hero-visual-wrap {
	position: relative;
	max-width: 1160px;
	margin: 58px auto 0;
}

.zire-provider-hero-visual-wrap::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 53%;
	width: 820px;
	height: 460px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.12);
	filter: blur(105px);
	pointer-events: none;
}

.zire-provider-answer-window {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border: 1.5px solid transparent;
	border-radius: 22px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#9cb0ff,#d0c0ff,#7657e8) border-box;
	box-shadow: 0 38px 90px rgba(26,39,73,.13);
}

.zire-provider-answer-window__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 17px 21px;
	border-bottom: 1px solid #e9edf2;
}

.zire-provider-answer-window__provider {
	display: flex;
	align-items: center;
	gap: 10px;
}

.zire-provider-answer-window__provider img {
	width: 29px;
	height: 29px;
	object-fit: contain;
}

.zire-provider-answer-window__provider strong {
	display: block;
	color: #202833;
	font-size: 12px;
}

.zire-provider-answer-window__provider span {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-answer-window__status {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-provider-answer-window__status > span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* HERO QUESTION */

.zire-provider-question {
	display: grid;
	grid-template-columns: 37px 1fr;
	align-items: center;
	gap: 11px;
	max-width: 700px;
	margin: 20px auto 16px;
	padding: 13px;
	border-radius: 13px;
	background: #f6f7fa;
}

.zire-provider-question__avatar {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #202832;
	color: #fff;
	font-size: 11px;
	font-weight: 750;
}

.zire-provider-question span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-question strong {
	display: block;
	margin-top: 3px;
	color: #222b37;
	font-size: 12px;
}


/* HERO ANSWER */

.zire-provider-answer {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: 12px;
	max-width: 980px;
	margin: 0 auto;
	padding: 0 20px 22px;
}

.zire-provider-answer__avatar {
	width: 39px;
	height: 39px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #e2e6ec;
	border-radius: 50%;
	background: #fff;
}

.zire-provider-answer__avatar img {
	width: 23px;
	height: 23px;
}

.zire-provider-answer__content {
	min-width: 0;
}

.zire-provider-answer__intro p {
	margin: 3px 0 12px;
	color: #596577;
	font-size: 12px;
	line-height: 1.55;
}


/* HERO RESULTS */

.zire-provider-result {
	display: grid;
	grid-template-columns: 35px 1fr 65px;
	gap: 10px;
	align-items: start;
	margin-top: 8px;
	padding: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 10px;
	background: #fff;
}

.zire-provider-result.is-brand {
	border-color: #aebeff;
	background: linear-gradient(135deg,#f6f8ff,#fbfaff);
}

.zire-provider-result__rank {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #eef1f5;
	color: #788393;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-result.is-brand .zire-provider-result__rank {
	background: #eaf0ff;
	color: #315efb;
}

.zire-provider-result__title {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

.zire-provider-result__title strong {
	font-size: 12px;
}

.zire-provider-result__title span {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-provider-result p {
	margin: 5px 0 0;
	color: #778293;
	font-size: 11px;
	line-height: 1.45;
}

.zire-provider-result__reasons {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 7px;
}

.zire-provider-result__reasons span {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eef1f5;
	color: #778293;
	font-size: 11px;
}

.zire-provider-result__visibility {
	text-align: right;
}

.zire-provider-result__visibility span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-result__visibility strong {
	display: block;
	margin-top: 4px;
	color: #315efb;
	font-size: 13px;
}


/* HERO SOURCES */

.zire-provider-answer-sources {
	margin-top: 12px;
	padding: 12px;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-provider-answer-sources__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
}

.zire-provider-answer-sources__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-answer-sources__head strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-provider-answer-sources__head small {
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-answer-source-list {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 7px;
	margin-top: 10px;
}

.zire-provider-answer-source-list > div {
	display: grid;
	grid-template-columns: 27px 1fr;
	align-items: center;
	gap: 7px;
	padding: 8px;
	border: 1px solid #e6eaf0;
	border-radius: 8px;
	background: #fff;
}

.zire-provider-answer-source-list > div.is-brand {
	border-color: #bdcaff;
}

.zire-provider-answer-source-list > div > span {
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-answer-source-list strong,
.zire-provider-answer-source-list small {
	display: block;
	font-size: 11px;
}

.zire-provider-answer-source-list small {
	margin-top: 2px;
	color: #8993a2;
}

.zire-provider-answer-source-list > div > b {
	grid-column: 2;
	justify-self: start;
	padding: 3px 5px;
	border-radius: 999px;
	background: #eef1f5;
	color: #758091;
	font-size: 11px;
}

.zire-provider-answer-source-list > div.is-brand > b {
	background: #eaf8f2;
	color: #07885f;
}


/* HERO KPIS */

.zire-provider-answer-kpis {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	border-top: 1px solid #e9edf2;
	background: #fafbfc;
}

.zire-provider-answer-kpis > div {
	padding: 12px 16px;
	border-left: 1px solid #e9edf2;
}

.zire-provider-answer-kpis > div:first-child {
	border-left: 0;
}

.zire-provider-answer-kpis span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-answer-kpis strong {
	display: block;
	margin-top: 4px;
	color: #202833;
	font-size: 13px;
}


/* =========================================================
   DISCOVERY
   ========================================================= */

.zire-provider-discovery {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 105px 24px 108px;
	background: #fff;
}

.zire-provider-discovery__heading {
	margin-bottom: 44px;
}

.zire-provider-discovery-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 12px;
}

.zire-provider-discovery-card {
	position: relative;
	min-height: 338px;
	padding: 20px;
	border: 1px solid #e0e5ed;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 17px 45px rgba(34,48,80,.055);
}

.zire-provider-discovery-card__number {
	position: absolute;
	right: 17px;
	top: 17px;
	color: #a5adba;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
}

.zire-provider-discovery-card__icon {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	border-radius: 11px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-provider-discovery-card h3 {
	margin: 0;
	color: #202833;
	font-size: 17px;
}

.zire-provider-discovery-card > p {
	min-height: 80px;
	margin: 9px 0 17px;
	color: #748091;
	font-size: 14px;
	line-height: 1.6;
}

.zire-provider-discovery-card__mini {
	display: grid;
	gap: 6px;
}

.zire-provider-discovery-card__mini > div {
	display: grid;
	grid-template-columns: 27px 1fr;
	align-items: center;
	gap: 7px;
	padding: 7px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-provider-discovery-card__mini span {
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-provider-discovery-card__mini strong {
	font-size: 11px;
}

.zire-provider-question-mini {
	padding: 11px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f6f2ff);
}

.zire-provider-question-mini span,
.zire-provider-question-mini small {
	display: block;
	font-size: 11px;
}

.zire-provider-question-mini span {
	color: #7657e8;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-question-mini strong {
	display: block;
	margin: 5px 0;
	font-size: 12px;
	line-height: 1.45;
}

.zire-provider-question-mini small {
	color: #7f8998;
}

.zire-provider-content-stack {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.zire-provider-content-stack span {
	padding: 7px 9px;
	border: 1px solid #dfe4eb;
	border-radius: 999px;
	background: #fbfcfe;
	color: #657184;
	font-size: 11px;
	font-weight: 700;
}

.zire-provider-authority-mini {
	display: grid;
	gap: 10px;
}

.zire-provider-authority-mini > div {
	display: grid;
	gap: 5px;
}

.zire-provider-authority-mini span {
	font-size: 11px;
}

.zire-provider-authority-mini i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-provider-authority-mini b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-provider-discovery-note {
	display: grid;
	grid-template-columns: 35px 1fr;
	align-items: center;
	gap: 10px;
	max-width: 900px;
	margin: 25px auto 0;
	padding: 12px 14px;
	border: 1px solid #dce4ff;
	border-radius: 10px;
	background: #f7f9ff;
}

.zire-provider-discovery-note > span {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #edf2ff;
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-provider-discovery-note p {
	margin: 0;
	color: #6c7788;
	font-size: 12px;
	line-height: 1.5;
}


/* =========================================================
   DARK SECTION
   ========================================================= */

.zire-provider-dark__shape {
	left: auto;
	right: -125px;
	top: 50%;
	width: 520px;
	transform: translateY(-50%);
	opacity: .11;
}

.zire-provider-dark__points {
	display: grid;
	gap: 8px;
	margin-top: 26px;
}

.zire-provider-dark__points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 10px;
	background: rgba(255,255,255,.038);
}

.zire-provider-dark__points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(98,121,255,.15);
	color: #aab8ff;
	font-size: 13px;
	font-weight: 750;
}

.zire-provider-dark__points strong {
	display: block;
	color: #fff;
	font-size: 13px;
}

.zire-provider-dark__points small {
	display: block;
	color: rgba(255,255,255,.45);
	font-size: 13px;
	line-height: 1.45;
}


/* JOURNEY */

.zire-provider-journey-window {
	padding: 22px;
	border: 2px solid #315efb;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 35px 80px rgba(0,0,0,.22);
	color: #1c2430;
}

.zire-provider-journey-window__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid #e7ebf1;
}

.zire-provider-journey-window__head > div {
	display: flex;
	align-items: center;
	gap: 9px;
}

.zire-provider-journey-window__head img {
	width: 27px;
	height: 27px;
}

.zire-provider-journey-window__head span {
	display: block;
	color: #8791a0;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-journey-window__head strong {
	display: block;
	margin-top: 3px;
	font-size: 13px;
}

.zire-provider-journey-window__head > small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-provider-journey {
	display: grid;
	margin-top: 7px;
}

.zire-provider-journey > div {
	display: grid;
	grid-template-columns: 34px 1fr auto;
	align-items: center;
	gap: 9px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-provider-journey > div.is-primary {
	margin: 3px -8px;
	padding: 10px 8px;
	border: 1px solid #bdcaff;
	border-radius: 9px;
	background: #f3f6ff;
}

.zire-provider-journey__step {
	width: 33px;
	height: 33px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #eef1f5;
	color: #758091;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-journey .is-primary .zire-provider-journey__step {
	background: #e9efff;
	color: #315efb;
}

.zire-provider-journey span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-journey strong {
	display: block;
	margin-top: 2px;
	font-size: 11px;
}

.zire-provider-journey > div > b {
	padding: 4px 6px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #707b8c;
	font-size: 11px;
}

.zire-provider-journey .is-primary > b {
	background: #eaf8f2;
	color: #07885f;
}

.zire-provider-journey-summary {
	display: grid;
	grid-template-columns: 1fr 1fr .72fr;
	gap: 7px;
	margin-top: 10px;
	padding-top: 12px;
	border-top: 1px solid #edf0f4;
}

.zire-provider-journey-summary > div {
	padding: 9px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-provider-journey-summary span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-journey-summary strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-provider-journey-summary i {
	display: block;
	height: 5px;
	margin-top: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-provider-journey-summary i b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-provider-journey-summary .is-positive {
	background: #eaf8f2;
}

.zire-provider-journey-summary .is-positive strong {
	color: #07885f;
}


/* =========================================================
   MAIN LIGHT WRAPPER
   ========================================================= */

.zire-provider-main {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 105px 24px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 28%,
			#f5f7ff 73%,
			#ffffff 100%
		);
	isolation: isolate;
}

.zire-provider-main__glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
}

.zire-provider-main__glow--one {
	width: 720px;
	height: 720px;
	right: -410px;
	top: 500px;
	background: radial-gradient(circle,rgba(49,94,251,.08),transparent 68%);
}

.zire-provider-main__glow--two {
	width: 680px;
	height: 680px;
	left: -390px;
	bottom: 650px;
	background: radial-gradient(circle,rgba(118,87,232,.07),transparent 68%);
}

.zire-provider-main-shape {
	position: absolute;
	width: 390px;
	height: 390px;
	opacity: .13;
	pointer-events: none;
	z-index: 0;
}

.zire-provider-main-shape--one {
	right: -145px;
	top: 820px;
}

.zire-provider-main-shape--two {
	left: -145px;
	bottom: 1100px;
}

.zire-provider-section {
	position: relative;
	z-index: 1;
}

.zire-provider-section + .zire-provider-section {
	margin-top: 82px;
}


/* =========================================================
   SHARED VISUAL STYLE
   ========================================================= */

.zire-provider-visual {
	position: relative;
	z-index: 1;
}

.zire-provider-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 430px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.18);
	filter: blur(92px);
	z-index: -1;
	pointer-events: none;
}

.zire-provider-site-window,
.zire-provider-evidence-prompt,
.zire-provider-evidence-card,
.zire-provider-pattern-card,
.zire-provider-progress-window,
.zire-provider-winning-window {
	border: 1.5px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#b49dff,#7657e8) border-box;
	box-shadow: 0 20px 50px rgba(35,50,86,.09);
}

.zire-provider-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-provider-card-head > div > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-card-head strong {
	display: block;
	margin-top: 3px;
	color: #252d38;
	font-size: 13px;
}

.zire-provider-card-head > small {
	color: #8993a2;
	font-size: 11px;
}


/* COPY POINTS */

.zire-provider-copy-points {
	display: grid;
	gap: 8px;
	margin-top: 25px;
}

.zire-provider-copy-points > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e2e7ef;
	border-radius: 10px;
	background: rgba(255,255,255,.77);
}

.zire-provider-copy-points > div > span {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}

.zire-provider-copy-points strong {
	display: block;
	color: #27303b;
	font-size: 13px;
}

.zire-provider-copy-points small {
	display: block;
	color: #858f9f;
	font-size: 13px;
	line-height: 1.45;
}

.zire-provider-inline-link {
	display: inline-flex;
	gap: 8px;
	margin-top: 22px;
	color: #315efb;
	font-size: 13px;
	font-weight: 750;
}


/* =========================================================
   WEBSITE OPTIMISATION
   ========================================================= */

.zire-provider-site-window {
	padding-bottom: 16px;
}

.zire-provider-site-score {
	display: grid;
	grid-template-columns: 150px 1fr;
	align-items: center;
	gap: 15px;
	padding: 0 17px 14px;
	padding-top: 20px;
}

.zire-provider-site-score__ring {
	width: 130px;
	height: 130px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center,#fff 59%,transparent 60%),
		conic-gradient(#315efb 0 82%,#e5e9ef 82% 100%);
}

.zire-provider-site-score__ring > div {
	display: flex;
	align-items: baseline;
}

.zire-provider-site-score__ring strong {
	font-size: 26px;
}

.zire-provider-site-score__ring span {
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-site-score__ring small {
	color: #315efb;
	font-size: 11px;
	font-weight: 750;
}

.zire-provider-site-score__signals {
	display: grid;
	gap: 9px;
}

.zire-provider-site-score__signals > div {
	display: grid;
	grid-template-columns: 95px 1fr 45px;
	align-items: center;
	gap: 8px;
}

.zire-provider-site-score__signals span,
.zire-provider-site-score__signals strong {
	font-size: 11px;
}

.zire-provider-site-score__signals i {
	height: 6px;
	border-radius: 999px;
	background: #e5e9ef;
	overflow: hidden;
}

.zire-provider-site-score__signals b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-provider-technical-checks {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 7px;
	padding: 0 17px;
}

.zire-provider-technical-checks > div {
	display: grid;
	grid-template-columns: 31px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 9px;
	border: 1px solid #e6eaf0;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-provider-technical-checks > div > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-technical-checks .is-good > span {
	background: #eaf8f2;
	color: #07885f;
}

.zire-provider-technical-checks .is-warning > span {
	background: #fff6df;
	color: #ac7c0d;
}

.zire-provider-technical-checks strong {
	display: block;
	font-size: 11px;
}

.zire-provider-technical-checks small {
	display: block;
	margin-top: 2px;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-technical-checks > div > b {
	padding: 4px 6px;
	border-radius: 999px;
	font-size: 11px;
}

.zire-provider-technical-checks .is-good > b {
	background: #eaf8f2;
	color: #07885f;
}

.zire-provider-technical-checks .is-warning > b {
	background: #fff6df;
	color: #9d7310;
}

.zire-provider-site-opportunity {
	display: grid;
	grid-template-columns: 34px 1fr auto;
	align-items: center;
	gap: 9px;
	margin: 12px 17px 0;
	padding: 10px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-provider-site-opportunity > span {
	width: 33px;
	height: 33px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-provider-site-opportunity small {
	display: block;
	color: #7657e8;
	font-size: 11px;
}

.zire-provider-site-opportunity strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-provider-site-opportunity > b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #fff0ef;
	color: #d6574e;
	font-size: 11px;
}


/* =========================================================
   ANSWER EVIDENCE
   ========================================================= */

.zire-provider-evidence-visual {
	display: grid;
	grid-template-columns: .72fr 1.28fr;
	gap: 11px;
}

.zire-provider-evidence-prompt {
	grid-column: 1 / 3;
	padding: 15px;
}

.zire-provider-evidence-prompt__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.zire-provider-evidence-prompt__head > span {
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-evidence-prompt__head img {
	width: 23px;
	height: 23px;
}

.zire-provider-evidence-prompt > strong {
	display: block;
	max-width: 80%;
	margin-top: 7px;
	font-size: 12px;
	line-height: 1.45;
}

.zire-provider-evidence-prompt > div:last-child {
	display: flex;
	gap: 5px;
	margin-top: 9px;
}

.zire-provider-evidence-prompt > div:last-child span {
	padding: 4px 7px;
	border-radius: 999px;
	background: #f0f2f6;
	color: #748091;
	font-size: 11px;
}

.zire-provider-brand-ranking {
	display: grid;
	padding: 0 17px 15px;
}

.zire-provider-brand-ranking > div {
	display: grid;
	grid-template-columns: 30px 1fr 75px 35px;
	align-items: center;
	gap: 7px;
	padding: 9px 0;
	border-top: 1px solid #edf0f4;
}

.zire-provider-brand-ranking > div.is-brand {
	margin: 2px -6px;
	padding: 8px 6px;
	border: 1px solid #bdcaff;
	border-radius: 8px;
	background: #f4f7ff;
}

.zire-provider-brand-ranking > div > span {
	width: 29px;
	height: 29px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eef1f5;
	color: #758091;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-brand-ranking strong,
.zire-provider-brand-ranking small {
	display: block;
	font-size: 11px;
}

.zire-provider-brand-ranking small {
	color: #8993a2;
}

.zire-provider-brand-ranking i {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-provider-brand-ranking i b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-provider-brand-ranking > div > strong:last-child {
	color: #315efb;
	text-align: right;
}

.zire-provider-pattern-card {
	padding-bottom: 15px;
}

.zire-provider-pattern-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 7px;
	padding: 0 17px 12px;
	padding-top: 15px;
}

.zire-provider-pattern-grid > div {
	padding: 10px;
	border-radius: 8px;
	background: #f7f8fb;
}

.zire-provider-pattern-grid strong {
	display: block;
	color: #315efb;
	font-size: 13px;
}

.zire-provider-pattern-grid span {
	display: block;
	margin-top: 3px;
	color: #778293;
	font-size: 11px;
}

.zire-provider-pattern-insight {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: center;
	gap: 8px;
	margin: 0 17px;
	padding: 9px;
	border-radius: 8px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-provider-pattern-insight > span {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-provider-pattern-insight p {
	margin: 0;
	color: #748091;
	font-size: 11px;
	line-height: 1.45;
}


/* =========================================================
   HOW ZIRE HELPS
   ========================================================= */

.zire-provider-how {
	position: relative;
	z-index: 1;
	margin-top: 105px;
	padding-bottom: 115px;
}

.zire-provider-how__heading {
	margin-bottom: 48px;
}

.zire-provider-how-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 13px;
}

.zire-provider-how-card {
	position: relative;
	min-height: 345px;
	display: flex;
	flex-direction: column;
	padding: 20px;
	border: 1px solid #dfe4ec;
	border-radius: 15px;
	background: rgba(255,255,255,.94);
	box-shadow: 0 18px 45px rgba(34,48,80,.06);
	transition:
		transform .2s ease,
		box-shadow .2s ease,
		border-color .2s ease;
}

.zire-provider-how-card:hover {
	transform: translateY(-4px);
	border-color: #cbd6ff;
	box-shadow: 0 23px 54px rgba(34,48,80,.10);
}

.zire-provider-how-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 18px;
}

.zire-provider-how-card__header > span {
	color: #315efb;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .06em;
}

.zire-provider-how-card__icon {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 11px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 13px;
	font-weight: 800;
}

.zire-provider-how-card h3 {
	margin: 0;
	color: #202833;
	font-size: 18px;
	line-height: 1.2;
}

.zire-provider-how-card > p {
	min-height: 67px;
	margin: 9px 0 17px;
	color: #748091;
	font-size: 13px;
	line-height: 1.6;
}

.zire-provider-how-ui {
	margin-top: auto;
	min-height: 134px;
	padding: 12px;
	border: 1px solid #e5e9ef;
	border-radius: 11px;
	background: linear-gradient(180deg,#fafbfe,#f5f7fb);
}


/* HOW — PROMPT */

.zire-provider-how-ui__label {
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-how-ui--prompt > strong {
	display: block;
	margin: 8px 0 18px;
	font-size: 12px;
	line-height: 1.45;
}

.zire-provider-how-ui__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.zire-provider-how-ui__footer span,
.zire-provider-how-ui__footer b {
	padding: 4px 7px;
	border-radius: 999px;
	font-size: 11px;
}

.zire-provider-how-ui__footer span {
	background: #eef1f5;
	color: #748091;
}

.zire-provider-how-ui__footer b {
	background: #eaf8f2;
	color: #07885f;
}


/* HOW — SIGNALS */

.zire-provider-how-ui--signals {
	display: grid;
	gap: 10px;
}

.zire-provider-how-ui--signals > div {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 7px;
}

.zire-provider-how-ui--signals span,
.zire-provider-how-ui--signals strong {
	font-size: 11px;
}

.zire-provider-how-ui--signals i {
	grid-column: 1 / 3;
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e4e8ef;
}

.zire-provider-how-ui--signals b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}


/* HOW — RANKING */

.zire-provider-how-ui--ranking {
	display: grid;
	padding-top: 8px;
}

.zire-provider-how-ui--ranking > div {
	display: grid;
	grid-template-columns: 29px 1fr auto;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #e5e9ef;
}

.zire-provider-how-ui--ranking > div:first-child {
	border-top: 0;
}

.zire-provider-how-ui--ranking > div > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eef1f5;
	color: #748091;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-how-ui--ranking strong,
.zire-provider-how-ui--ranking b {
	font-size: 11px;
}

.zire-provider-how-ui--ranking .is-first > span {
	background: #fff4d3;
	color: #9d7411;
}

.zire-provider-how-ui--ranking .is-brand {
	margin: 1px -6px;
	padding: 7px 6px;
	border: 1px solid #bdcaff;
	border-radius: 8px;
	background: #f3f6ff;
}

.zire-provider-how-ui--ranking .is-brand > span {
	background: #e9efff;
	color: #315efb;
}

.zire-provider-how-ui--ranking b {
	color: #315efb;
}


/* HOW — SOURCES */

.zire-provider-how-ui--sources {
	display: grid;
}

.zire-provider-how-ui--sources > div {
	display: grid;
	grid-template-columns: 29px 1fr;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #e6eaf0;
}

.zire-provider-how-ui--sources > div:first-child {
	border-top: 0;
}

.zire-provider-how-ui--sources > div > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-how-ui--sources strong,
.zire-provider-how-ui--sources small {
	display: block;
	font-size: 11px;
}

.zire-provider-how-ui--sources small {
	margin-top: 2px;
	color: #8993a2;
}


/* HOW — ACTION */

.zire-provider-how-ui--action > div:first-child {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.zire-provider-how-ui--action span {
	padding: 4px 7px;
	border-radius: 999px;
	background: #fff0ef;
	color: #d6574e;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-how-ui--action b {
	color: #315efb;
	font-size: 11px;
}

.zire-provider-how-ui--action > strong {
	display: block;
	margin-top: 11px;
	font-size: 12px;
}

.zire-provider-how-ui--action p {
	margin: 6px 0 0;
	color: #8993a2;
	font-size: 11px;
	line-height: 1.45;
}


/* HOW — TREND */

.zire-provider-how-ui--trend {
	position: relative;
	overflow: hidden;
}

.zire-provider-how-ui--trend > div:first-child {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}

.zire-provider-how-ui--trend span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-how-ui--trend strong {
	color: #315efb;
	font-size: 15px;
}

.zire-provider-how-ui--trend strong i {
	margin: 0 4px;
	font-style: normal;
	font-size: 11px;
}

.zire-provider-how-ui--trend svg {
	width: 100%;
	height: 77px;
	margin-top: 7px;
}


/* =========================================================
   FULL-WIDTH PROGRESS FEATURE
   ========================================================= */

.zire-provider-progress-feature {
	position: relative;
	z-index: 1;
	padding: 0 0 105px;
}

.zire-provider-progress-feature__heading {
	display: grid;
	grid-template-columns: 1.08fr .92fr;
	gap: 90px;
	align-items: end;
	margin-bottom: 42px;
}

.zire-provider-progress-feature__title h2 {
	max-width: 650px;
	margin: 17px 0 0;
	font-size: clamp(38px, 3.7vw, 54px);
	line-height: 1.01;
	letter-spacing: -.04em;
	font-weight: 900;
}

.zire-provider-progress-feature__title h2 span {
	display: block;
	color: #315efb;
}

.zire-provider-progress-feature__intro {
	max-width: 520px;
	padding-bottom: 3px;
}

.zire-provider-progress-feature__intro > p {
	margin: 0;
	color: #707b8c;
	font-size: 15px;
	line-height: 1.7;
}

.zire-provider-progress-feature__points {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 20px;
}

.zire-provider-progress-feature__points span {
	padding: 7px 10px;
	border: 1px solid #dfe5ee;
	border-radius: 999px;
	background: rgba(255,255,255,.75);
	color: #647084;
	font-size: 12px;
	font-weight: 650;
}

.zire-provider-progress-visual--wide {
	width: 100%;
	max-width: none;
}

.zire-provider-progress-visual--wide::before {
	width: 850px;
	height: 430px;
}

.zire-provider-progress-visual--wide .zire-provider-progress-window {
	width: 100%;
}

.zire-provider-progress-window {
	overflow: hidden;
}

.zire-provider-progress-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 16px 18px;
	border-bottom: 1px solid #edf0f4;
}

.zire-provider-progress-head > div:first-child > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-progress-head > div:first-child > strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-provider-progress-head__period {
	padding: 5px 8px;
	border: 1px solid #e1e5eb;
	border-radius: 999px;
	color: #7b8695;
	font-size: 11px;
}

.zire-provider-progress-body {
	display: grid;
	grid-template-columns: 205px 1fr;
}

.zire-provider-progress-score {
	padding: 19px 16px;
	border-right: 1px solid #edf0f4;
	background: linear-gradient(180deg,#fbfcff,#f7f9ff);
}

.zire-provider-progress-score > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
	text-transform: uppercase;
}

.zire-provider-progress-score__number {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-top: 7px;
}

.zire-provider-progress-score__number strong {
	font-size: 30px;
	letter-spacing: -1px;
}

.zire-provider-progress-score__number small {
	padding: 4px 6px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
	font-weight: 750;
}

.zire-provider-progress-score > p {
	margin: 10px 0 15px;
	color: #7b8695;
	font-size: 11px;
	line-height: 1.5;
}

.zire-provider-progress-score__metrics {
	display: grid;
	gap: 7px;
}

.zire-provider-progress-score__metrics > div {
	padding: 8px;
	border-radius: 8px;
	background: #fff;
	border: 1px solid #e8ecf2;
}

.zire-provider-progress-score__metrics span,
.zire-provider-progress-score__metrics small {
	display: block;
	font-size: 11px;
}

.zire-provider-progress-score__metrics span {
	color: #8993a2;
}

.zire-provider-progress-score__metrics strong {
	display: block;
	margin: 3px 0;
	font-size: 12px;
}

.zire-provider-progress-score__metrics small {
	color: #07885f;
}

.zire-provider-progress-chart-wrap {
	padding: 15px 17px 8px;
}

.zire-provider-progress-chart-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 6px;
}

.zire-provider-progress-chart-legend span {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #788393;
	font-size: 11px;
}

.zire-provider-progress-chart-legend i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
}

.zire-provider-progress-chart-legend .is-blue {
	background: #315efb;
}

.zire-provider-progress-chart-legend .is-purple {
	background: #7657e8;
}

.zire-provider-progress-chart-legend .is-green {
	background: #16a085;
}

.zire-provider-progress-chart {
	position: relative;
	height: 250px;
}

.zire-provider-progress-grid {
	position: absolute;
	inset: 0 0 25px;
	background:
		linear-gradient(to bottom,rgba(35,48,71,.055) 1px,transparent 1px);
	background-size: 100% 25%;
}

.zire-provider-progress-chart svg {
	position: relative;
	width: 100%;
	height: 220px;
}

.zire-provider-progress-axis {
	display: flex;
	justify-content: space-between;
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-progress-events {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 7px;
	padding: 12px 17px 16px;
	border-top: 1px solid #edf0f4;
}

.zire-provider-progress-events > div {
	display: grid;
	grid-template-columns: 29px 1fr auto;
	align-items: center;
	gap: 7px;
	padding: 9px;
	border-radius: 9px;
	background: #f7f8fb;
}

.zire-provider-progress-events > div > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #eaf8f2;
	color: #07885f;
	font-size: 11px;
}

.zire-provider-progress-events small,
.zire-provider-progress-events strong {
	display: block;
	font-size: 11px;
}

.zire-provider-progress-events small {
	color: #8993a2;
}

.zire-provider-progress-events > div > b {
	color: #07885f;
	font-size: 11px;
}


/* =========================================================
   CONTENT STRATEGY — TRUE 50 / 50 LAYOUT
   ========================================================= */

/*
   IMPORTANT:
   No absolute positioning is used here.
   Both cards are normal grid children.
*/

.zire-provider-overlap-section {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 24px;
	align-items: stretch;
	width: 100%;
	min-height: 0;
	padding: 55px 0 110px;
}


/* LEFT COPY CARD */

.zire-provider-overlap-section__copy {
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	z-index: 2;
	width: 100%;
	max-width: none;
	height: 100%;
	margin: 0;
	padding: 34px 35px;
	box-sizing: border-box;
	border: 1px solid #e0e5ed;
	border-radius: 18px;
	background: rgba(255,255,255,.97);
	box-shadow: 0 20px 50px rgba(33,48,82,.09);
	backdrop-filter: blur(8px);
}

.zire-provider-overlap-section__copy h2 {
	margin: 17px 0 0;
	font-size: clamp(34px, 3vw, 46px);
	line-height: 1.02;
	letter-spacing: -.04em;
	font-weight: 900;
}

.zire-provider-overlap-section__copy h2 span {
	display: block;
	color: #315efb;
}

.zire-provider-overlap-section__copy > p {
	margin: 17px 0 0;
	color: #707b8c;
	font-size: 13px;
	line-height: 1.65;
}


/* LEFT CARD POINTS */

.zire-provider-overlap-points {
	display: grid;
	gap: 7px;
	margin-top: 23px;
}

.zire-provider-overlap-points > div {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 9px;
	padding: 9px 10px;
	border: 1px solid #e5e9ef;
	border-radius: 9px;
	background: #fbfcfe;
}

.zire-provider-overlap-points span {
	width: 33px;
	height: 33px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
}

.zire-provider-overlap-points strong {
	font-size: 12px;
}


/* RIGHT VISUAL CARD */

.zire-provider-overlap-section__visual {
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	z-index: 1;
	width: 100%;
	max-width: none;
	height: 100%;
	margin: 0;
	box-sizing: border-box;
}


/*
   Keeps the glow behind the right card,
   but does not interfere with either card.
*/

.zire-provider-overlap-section__visual::before {
	width: 620px;
	height: 470px;
	opacity: .78;
}


/*
   The visual itself stretches to exactly the
   same grid row height as the left card.
*/

.zire-provider-overlap-section__visual .zire-provider-winning-window {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	min-height: 100%;
	box-sizing: border-box;
}


/* =========================================================
   WINNING SOURCE PATTERNS
   ========================================================= */

.zire-provider-winning-window {
	overflow: hidden;
}

.zire-provider-winning-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 16px 18px;
	border-bottom: 1px solid #edf0f4;
}

.zire-provider-winning-head > div:first-child > span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-winning-head > div:first-child > strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-provider-winning-head > div:last-child {
	text-align: right;
}

.zire-provider-winning-head > div:last-child strong {
	display: block;
	color: #315efb;
	font-size: 18px;
}

.zire-provider-winning-head > div:last-child span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}


/* WINNING PROMPT */

.zire-provider-winning-prompt {
	margin: 13px 17px 0;
	padding: 12px;
	border-radius: 10px;
	background: linear-gradient(135deg,#eef3ff,#f6f2ff);
}

.zire-provider-winning-prompt > div {
	display: flex;
	align-items: center;
	gap: 7px;
}

.zire-provider-winning-prompt img {
	width: 21px;
	height: 21px;
}

.zire-provider-winning-prompt span {
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-winning-prompt > strong {
	display: block;
	margin-top: 7px;
	font-size: 12px;
}


/*
   Because this whole visual is now half-page width,
   stack the two intelligence panels vertically.
   It keeps everything readable and creates a similar
   height to the copy card.
*/

.zire-provider-winning-body {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	padding: 12px 17px;
	flex: 1;
}

.zire-provider-winning-sources,
.zire-provider-winning-patterns {
	padding: 11px;
	border: 1px solid #e7ebf1;
	border-radius: 10px;
	background: #fbfcfe;
}

.zire-provider-winning-label {
	margin-bottom: 8px;
	color: #8993a2;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}


/* WINNING SOURCES */

.zire-provider-winning-sources > div:not(.zire-provider-winning-label) {
	display: grid;
	grid-template-columns: 29px 1fr auto;
	align-items: center;
	gap: 7px;
	padding: 8px 0;
	border-top: 1px solid #e8ecf2;
}

.zire-provider-winning-sources > div:nth-child(2) {
	border-top: 0;
}

.zire-provider-winning-sources > div > span {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	background: #edf2ff;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-provider-winning-sources strong,
.zire-provider-winning-sources small {
	display: block;
	font-size: 11px;
}

.zire-provider-winning-sources small {
	margin-top: 2px;
	color: #8993a2;
}

.zire-provider-winning-sources > div > b {
	color: #315efb;
	font-size: 13px;
}


/* WINNING PATTERNS */

.zire-provider-winning-patterns > div:not(.zire-provider-winning-label) {
	margin-top: 10px;
}

.zire-provider-winning-patterns > div > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 7px;
}

.zire-provider-winning-patterns span,
.zire-provider-winning-patterns strong {
	font-size: 11px;
}

.zire-provider-winning-patterns i {
	display: block;
	height: 7px;
	margin-top: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-provider-winning-patterns i b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}


/* WINNING INSIGHT */

.zire-provider-winning-insight {
	display: grid;
	grid-template-columns: 36px 1fr auto;
	align-items: center;
	gap: 10px;
	margin: 0 17px 16px;
	padding: 11px;
	border-radius: 10px;
	background: linear-gradient(135deg,#eef3ff,#f4efff);
}

.zire-provider-winning-insight__icon {
	width: 35px;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #fff;
	color: #7657e8;
	font-size: 13px;
}

.zire-provider-winning-insight span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-provider-winning-insight strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.45;
}

.zire-provider-winning-insight small {
	display: block;
	margin-top: 3px;
	color: #788393;
	font-size: 11px;
}

.zire-provider-winning-insight__score {
	min-width: 73px;
	padding: 9px;
	border-radius: 9px;
	background: #fff;
	text-align: center;
}

.zire-provider-winning-insight__score span {
	color: #8993a2;
	font-size: 11px;
	text-transform: none;
}

.zire-provider-winning-insight__score strong {
	color: #315efb;
	font-size: 18px;
}


/* =========================================================
   OTHER AI PLATFORMS
   ========================================================= */

.zire-provider-platforms {
	position: relative;
	z-index: 1;
	margin-top: 80px;
}

.zire-provider-platforms__heading {
	margin-bottom: 45px;
}

.zire-provider-platforms-grid {
	display: grid;
	gap: 12px;
}

.zire-provider-platforms-grid--five {
	grid-template-columns: repeat(5,1fr);
}

.zire-provider-platform-card {
	min-height: 295px;
	display: flex;
	flex-direction: column;
	padding: 18px;
	border: 1px solid #dfe4ec;
	border-radius: 15px;
	background: rgba(255,255,255,.94);
	box-shadow: 0 18px 45px rgba(34,48,80,.06);
	transition:
		transform .2s ease,
		box-shadow .2s ease,
		border-color .2s ease;
}

.zire-provider-platform-card:hover {
	transform: translateY(-5px);
	border-color: #c6d2ff;
	box-shadow: 0 25px 58px rgba(34,48,80,.11);
}

.zire-provider-platform-card__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 54px;
}

.zire-provider-platform-card__logo {
	height: 48px;
	display: flex;
}

.zire-provider-platform-card__logo img {
	display: block;
	width: auto;
	max-width: 118px;
	max-height: 34px;
	object-fit: contain;
	object-position: left center;
}

.zire-provider-platform-card__top > span {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: #edf2ff;
	color: #315efb;
	font-size: 13px;
	transition: transform .2s ease;
}

.zire-provider-platform-card:hover .zire-provider-platform-card__top > span {
	transform: translateX(3px);
}

.zire-provider-platform-card h3 {
	margin: 18px 0 0;
	color: #202833;
	font-size: 19px;
}

.zire-provider-platform-card > p {
	margin: 9px 0 17px;
	color: #748091;
	font-size: 12px;
	line-height: 1.6;
}

.zire-provider-platform-card__mini {
	margin-top: auto;
	padding: 10px;
	border-radius: 10px;
	background: #f7f8fb;
}

.zire-provider-platform-card__mini > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.zire-provider-platform-card__mini span {
	color: #8993a2;
	font-size: 11px;
}

.zire-provider-platform-card__mini strong {
	font-size: 12px;
}

.zire-provider-platform-card__mini i {
	display: block;
	height: 6px;
	margin-top: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-provider-platform-card__mini b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-provider-platform-card__link {
	display: block;
	margin-top: 15px;
	color: #315efb;
	font-size: 12px;
}

.zire-provider-platforms-footer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: fit-content;
	max-width: 100%;
	margin: 24px auto 0;
	padding: 12px 18px;
	border: 1px solid #dfe5f1;
	border-radius: 999px;
	background: rgba(255,255,255,.8);
	box-shadow: 0 10px 30px rgba(34,48,80,.04);
}

.zire-provider-platforms-footer span,
.zire-provider-platforms-footer strong,
.zire-provider-platforms-footer a {
	font-size: 12px;
}

.zire-provider-platforms-footer span {
	color: #8993a2;
}

.zire-provider-platforms-footer a {
	color: #315efb;
	font-weight: 750;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1180px) {

	.zire-provider-platforms-grid--five {
		grid-template-columns: repeat(3,1fr);
	}

}


@media (max-width: 1120px) {

	.zire-provider-discovery-grid,
	.zire-provider-how-grid {
		grid-template-columns: repeat(2,1fr);
	}

}


@media (max-width: 1000px) {

	.zire-provider-evidence-visual {
		grid-template-columns: 1fr;
	}

	.zire-provider-evidence-prompt {
		grid-column: auto;
	}

	.zire-provider-progress-feature__heading {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.zire-provider-progress-feature__intro {
		max-width: 700px;
	}

	.zire-provider-progress-body {
		grid-template-columns: 1fr;
	}

	.zire-provider-progress-score {
		border-right: 0;
		border-bottom: 1px solid #edf0f4;
	}

	.zire-provider-progress-score__metrics {
		grid-template-columns: 1fr 1fr;
	}

}


/*
   IMPORTANT:
   Content Strategy remains 50/50 down to 821px.
   It only stacks below 820px.
*/

@media (max-width: 820px) {

	.zire-provider-overlap-section {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 40px 0 90px;
	}

	.zire-provider-overlap-section__copy,
	.zire-provider-overlap-section__visual {
		width: 100%;
		height: auto;
	}

	.zire-provider-overlap-section__visual .zire-provider-winning-window {
		height: auto;
		min-height: 0;
	}

}


@media (max-width: 800px) {

	.zire-provider-answer-source-list {
		grid-template-columns: 1fr;
	}

	.zire-provider-answer-kpis {
		grid-template-columns: repeat(3,1fr);
	}

	.zire-provider-site-score {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.zire-provider-site-score__signals {
		width: 100%;
	}

	.zire-provider-technical-checks,
	.zire-provider-progress-events {
		grid-template-columns: 1fr;
	}

	.zire-provider-platforms-grid--five {
		grid-template-columns: repeat(2,1fr);
	}

}


@media (max-width: 700px) {

	.zire-provider-centred-heading h2,
	.zire-provider-main .zire-platform-stage__copy h2,
	.zire-provider-progress-feature__title h2 {
		font-size: clamp(34px, 9vw, 46px);
	}

	.zire-provider-overlap-section__copy h2 {
		font-size: clamp(33px, 9vw, 44px);
	}

	.zire-provider-centred-heading > p {
		font-size: 13px;
	}

	.zire-provider-top {
		padding-bottom: 88px;
	}

	.zire-provider-top-shape {
		display: none;
	}

	.zire-provider-answer {
		grid-template-columns: 32px 1fr;
		padding-left: 13px;
		padding-right: 13px;
	}

	.zire-provider-result {
		grid-template-columns: 34px 1fr;
	}

	.zire-provider-result__visibility {
		grid-column: 2;
		text-align: left;
	}

	.zire-provider-answer-kpis {
		grid-template-columns: 1fr 1fr;
	}

	.zire-provider-discovery {
		padding: 82px 18px 88px;
	}

	.zire-provider-discovery-grid,
	.zire-provider-how-grid,
	.zire-provider-platforms-grid--five {
		grid-template-columns: 1fr;
	}

	.zire-provider-discovery-card,
	.zire-provider-how-card,
	.zire-provider-platform-card {
		min-height: auto;
	}

	.zire-provider-dark__shape {
		width: 340px;
		right: -170px;
	}

	.zire-provider-journey > div {
		grid-template-columns: 34px 1fr;
	}

	.zire-provider-journey > div > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-provider-journey-summary {
		grid-template-columns: 1fr;
	}

	.zire-provider-main {
		padding: 82px 18px 88px;
	}

	.zire-provider-section + .zire-provider-section {
		margin-top: 70px;
	}

	.zire-provider-how {
		margin-top: 85px;
		padding-bottom: 90px;
	}

	.zire-provider-progress-feature {
		padding-bottom: 85px;
	}

	.zire-provider-progress-feature__intro > p {
		font-size: 13px;
	}

	.zire-provider-winning-insight {
		grid-template-columns: 36px 1fr;
	}

	.zire-provider-winning-insight__score {
		grid-column: 2;
		justify-self: start;
	}

	.zire-provider-platforms {
		margin-top: 60px;
	}

	.zire-provider-platforms-footer {
		flex-direction: column;
		border-radius: 14px;
		text-align: center;
	}

}


@media (max-width: 480px) {

	.zire-provider-brand {
		flex-wrap: wrap;
	}

	.zire-provider-question {
		grid-template-columns: 1fr;
	}

	.zire-provider-question__avatar {
		display: none;
	}

	.zire-provider-answer-kpis,
	.zire-provider-progress-score__metrics {
		grid-template-columns: 1fr;
	}

	.zire-provider-site-opportunity {
		grid-template-columns: 34px 1fr;
	}

	.zire-provider-site-opportunity > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-provider-pattern-grid {
		grid-template-columns: 1fr;
	}

	.zire-provider-overlap-section__copy {
		padding: 26px 22px;
	}

}

/* =========================================================
   GEMINI PROVIDER PAGE
   Additional provider-specific styling only.
   ========================================================= */


/* HERO FULL GEMINI WORDMARK */

.zire-provider--gemini .zire-provider-brand__logo--gemini {
	width: 116px;
	max-width: 116px;
	max-height: 30px;
	object-fit: contain;
	object-position: left center;
}


/* =========================================================
   GEMINI LOGO INSIDE PRODUCT VISUALS
   ========================================================= */

/*
   The standard provider template assumes a fairly square icon
   in several places. Gemini uses its wider wordmark, so these
   small overrides prevent it being squeezed into 29 x 29.
*/

.zire-provider-answer-window__provider .zire-provider-gemini-wordmark {
	width: 82px;
	height: 27px;
	max-width: 82px;
	object-fit: contain;
	object-position: left center;
}


/* Gemini answer avatar */

.zire-provider-answer__avatar--gemini {
	border-radius: 11px;
}

.zire-provider-answer__avatar--gemini img {
	width: 32px;
	height: 26px;
	object-fit: contain;
}


/* Small Gemini logos used in evidence / journey visuals */

.zire-provider-gemini-small {
	display: block;
	width: 70px !important;
	max-width: 70px !important;
	height: 25px !important;
	object-fit: contain !important;
	object-position: left center !important;
}


/* Dark journey header has slightly more room for Gemini logo */

.zire-provider-journey-window__head .zire-provider-gemini-small {
	width: 74px !important;
	max-width: 74px !important;
}


/* Evidence visual */

.zire-provider-evidence-prompt__head .zire-provider-gemini-small {
	width: 76px !important;
	max-width: 76px !important;
}


/* Content strategy visual */

.zire-provider-winning-prompt .zire-provider-gemini-small {
	width: 72px !important;
	max-width: 72px !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {

	.zire-provider--gemini .zire-provider-brand__logo--gemini {
		width: 100px;
		max-width: 100px;
	}

	.zire-provider-gemini-small {
		width: 62px !important;
		max-width: 62px !important;
	}

}

/* =========================================================
   CLAUDE PROVIDER PAGE
   Provider-specific styling only.
   ========================================================= */


/* =========================================================
   HERO CLAUDE LOGO
   ========================================================= */

.zire-provider--claude .zire-provider-brand__logo--claude {
	width: 108px;
	max-width: 108px;
	max-height: 30px;
	object-fit: contain;
	object-position: left center;
}


/* =========================================================
   CLAUDE LOGOS INSIDE PRODUCT VISUALS
   ========================================================= */

/*
   Claude's asset is a horizontal wordmark, whereas several
   provider-template components normally expect a square icon.
*/

.zire-provider-answer-window__provider .zire-provider-claude-wordmark {
	width: 76px;
	max-width: 76px;
	height: 27px;
	object-fit: contain;
	object-position: left center;
}


/* Answer avatar */

.zire-provider-answer__avatar--claude {
	border-radius: 11px;
}

.zire-provider-answer__avatar--claude img {
	width: 31px;
	height: 25px;
	object-fit: contain;
}


/* Small Claude logos used throughout visuals */

.zire-provider-claude-small {
	display: block;
	width: 68px !important;
	max-width: 68px !important;
	height: 24px !important;
	object-fit: contain !important;
	object-position: left center !important;
}


/* Dark research visual */

.zire-provider-journey-window__head .zire-provider-claude-small {
	width: 72px !important;
	max-width: 72px !important;
}


/* Evidence visual */

.zire-provider-evidence-prompt__head .zire-provider-claude-small {
	width: 72px !important;
	max-width: 72px !important;
}


/* Content strategy visual */

.zire-provider-winning-prompt .zire-provider-claude-small {
	width: 68px !important;
	max-width: 68px !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {

	.zire-provider--claude .zire-provider-brand__logo--claude {
		width: 94px;
		max-width: 94px;
	}

	.zire-provider-claude-small {
		width: 60px !important;
		max-width: 60px !important;
	}

}

/* =========================================================
   PERPLEXITY PROVIDER PAGE
   Provider-specific styling only.
   ========================================================= */


/* =========================================================
   HERO PERPLEXITY LOGO
   ========================================================= */

.zire-provider--perplexity .zire-provider-brand__logo--perplexity {
	width: 118px;
	max-width: 118px;
	max-height: 30px;
	object-fit: contain;
	object-position: left center;
}


/* =========================================================
   PERPLEXITY LOGOS INSIDE PRODUCT VISUALS
   ========================================================= */

.zire-provider-answer-window__provider .zire-provider-perplexity-wordmark {
	width: 91px;
	max-width: 91px;
	height: 27px;
	object-fit: contain;
	object-position: left center;
}


/* Answer avatar */

.zire-provider-answer__avatar--perplexity {
	border-radius: 11px;
}

.zire-provider-answer__avatar--perplexity img {
	width: 32px;
	height: 25px;
	object-fit: contain;
}


/* Small logos used throughout visuals */

.zire-provider-perplexity-small {
	display: block;
	width: 78px !important;
	max-width: 78px !important;
	height: 25px !important;
	object-fit: contain !important;
	object-position: left center !important;
}


/* Dark citation journey */

.zire-provider-journey-window__head .zire-provider-perplexity-small {
	width: 82px !important;
	max-width: 82px !important;
}


/* Citation intelligence visual */

.zire-provider-evidence-prompt__head .zire-provider-perplexity-small {
	width: 82px !important;
	max-width: 82px !important;
}


/* Content strategy visual */

.zire-provider-winning-prompt .zire-provider-perplexity-small {
	width: 78px !important;
	max-width: 78px !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {

	.zire-provider--perplexity .zire-provider-brand__logo--perplexity {
		width: 104px;
		max-width: 104px;
	}

	.zire-provider-perplexity-small {
		width: 68px !important;
		max-width: 68px !important;
	}

}

/* =========================================================
   GROK PROVIDER PAGE
   Provider-specific styling only.
   ========================================================= */


/* =========================================================
   HERO GROK LOGO
   ========================================================= */

.zire-provider--grok .zire-provider-brand__logo--grok {
	width: 92px;
	max-width: 92px;
	max-height: 30px;
	object-fit: contain;
	object-position: left center;
}


/* =========================================================
   GROK LOGOS INSIDE PRODUCT VISUALS
   ========================================================= */

.zire-provider-answer-window__provider .zire-provider-grok-wordmark {
	width: 65px;
	max-width: 65px;
	height: 27px;
	object-fit: contain;
	object-position: left center;
}


/* Answer avatar */

.zire-provider-answer__avatar--grok {
	border-radius: 11px;
}

.zire-provider-answer__avatar--grok img {
	width: 29px;
	height: 25px;
	object-fit: contain;
}


/* Small logos used throughout visuals */

.zire-provider-grok-small {
	display: block;
	width: 60px !important;
	max-width: 60px !important;
	height: 25px !important;
	object-fit: contain !important;
	object-position: left center !important;
}


/* Dark journey */

.zire-provider-journey-window__head .zire-provider-grok-small {
	width: 64px !important;
	max-width: 64px !important;
}


/* Source intelligence visual */

.zire-provider-evidence-prompt__head .zire-provider-grok-small {
	width: 64px !important;
	max-width: 64px !important;
}


/* Content strategy visual */

.zire-provider-winning-prompt .zire-provider-grok-small {
	width: 60px !important;
	max-width: 60px !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {

	.zire-provider--grok .zire-provider-brand__logo--grok {
		width: 82px;
		max-width: 82px;
	}

	.zire-provider-grok-small {
		width: 54px !important;
		max-width: 54px !important;
	}

}

/* =========================================================
   GOOGLE AI OVERVIEWS
   Provider-specific styling only.
   ========================================================= */


/* =========================================================
   HERO GOOGLE SEARCH LOGO
   ========================================================= */

.zire-provider--google-aio .zire-provider-brand__logo--google-aio {
	width: 36px;
	max-width: 36px;
	height: 36px;
	max-height: 36px;
	object-fit: contain;
	object-position: center;
}


/*
   The Google Search asset is an icon rather than a wide
   provider wordmark, so give the brand pill slightly more
   visual balance.
*/

.zire-provider--google-aio .zire-provider-brand {
	padding-left: 10px;
}

.zire-provider--google-aio .zire-provider-brand > span {
	margin-left: 1px;
}


/* =========================================================
   GOOGLE SEARCH ICON IN PRODUCT VISUALS
   ========================================================= */

.zire-provider-google-search-logo {
	display: block;
	width: 28px !important;
	max-width: 28px !important;
	height: 28px !important;
	object-fit: contain !important;
}


/* HERO ANSWER AVATAR */

.zire-provider-answer__avatar--google-aio {
	border-radius: 11px;
}

.zire-provider-answer__avatar--google-aio img {
	width: 25px;
	height: 25px;
	object-fit: contain;
}


/* SMALL GOOGLE SEARCH ICONS */

.zire-provider-google-small {
	display: block;
	width: 25px !important;
	max-width: 25px !important;
	height: 25px !important;
	object-fit: contain !important;
	object-position: center !important;
}


/* Dark query-fan-out visual */

.zire-provider-journey-window__head .zire-provider-google-small {
	width: 27px !important;
	max-width: 27px !important;
	height: 27px !important;
}


/* Evidence visual */

.zire-provider-evidence-prompt__head .zire-provider-google-small {
	width: 26px !important;
	max-width: 26px !important;
	height: 26px !important;
}


/* Winning-pattern visual */

.zire-provider-winning-prompt .zire-provider-google-small {
	width: 24px !important;
	max-width: 24px !important;
	height: 24px !important;
}


/* =========================================================
   CODE TOKEN INSIDE DISCOVERY NOTE
   ========================================================= */

.zire-provider--google-aio + .zire-provider-discovery
.zire-provider-discovery-note code {
	padding: 2px 5px;
	border-radius: 5px;
	background: #edf2ff;
	color: #315efb;
	font-family: inherit;
	font-size: 11px;
	font-weight: 750;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {

	.zire-provider--google-aio .zire-provider-brand__logo--google-aio {
		width: 32px;
		max-width: 32px;
		height: 32px;
	}

	.zire-provider-google-small {
		width: 23px !important;
		max-width: 23px !important;
		height: 23px !important;
	}

}

/* =========================================================
   AI PLATFORMS HUB
   /ai-platforms/
   ========================================================= */


/* =========================================================
   SHARED HUB HEADING
   ========================================================= */

.zire-ai-hub-heading {
	max-width: 880px;
	margin: 0 auto 46px;
	text-align: center;
}

.zire-ai-hub-heading h2 {
	max-width: 860px;
	margin: 17px auto 0;
	color: #202833;
	font-size: clamp(38px, 3.7vw, 54px);
	line-height: 1.02;
	letter-spacing: -.04em;
	font-weight: 900;
}

.zire-ai-hub-heading h2 span {
	display: block;
	color: #315efb;
}

.zire-ai-hub-heading > p {
	max-width: 720px;
	margin: 18px auto 0;
	color: #707b8c;
	font-size: 18px;
	line-height: 1.7;
}


/* =========================================================
   HERO
   ========================================================= */

.zire-ai-hub-hero {
	position: relative;
	padding-bottom: 112px;
	overflow: hidden;
}

.zire-ai-hub-hero__copy {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}

.zire-ai-hub-hero__copy .zire-eyebrow {
	justify-content: center;
}

.zire-ai-hub-hero__copy h1 {
	max-width: 900px;
	margin: 20px auto 0;
	color: #202833;
	font-size: clamp(56px, 6.4vw, 92px);
	line-height: .96;
	letter-spacing: -.055em;
}

.zire-ai-hub-hero__copy h1 span {
	display: block;
	color: #315efb;
}

.zire-ai-hub-hero__copy > p {
	max-width: 760px;
	margin: 24px auto 0;
	color: #697588;
	font-size: 19px;
	line-height: 1.7;
}

.zire-ai-hub-hero__copy .zire-platform-intro__actions {
	justify-content: center;
}


/* HERO PROVIDER LOGOS */

.zire-ai-hub-hero__logos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 34px;
}

.zire-ai-hub-hero__logos > div {
	min-width: 115px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 9px 14px;
	border: 1px solid #e2e6ec;
	border-radius: 10px;
	background: rgba(255,255,255,.78);
	box-shadow: 0 8px 24px rgba(34,48,80,.04);
}

.zire-ai-hub-hero__logos img {
	display: block;
	width: auto;
	max-width: 91px;
	max-height: 23px;
	object-fit: contain;
}


/* =========================================================
   HERO VISIBILITY MATRIX
   ========================================================= */

.zire-ai-hub-matrix-wrap {
	position: relative;
	max-width: 1110px;
	margin: 58px auto 0;
}

.zire-ai-hub-matrix-wrap::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 53%;
	width: 850px;
	height: 500px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.14);
	filter: blur(110px);
	pointer-events: none;
}

.zire-ai-hub-matrix {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border: 1.5px solid transparent;
	border-radius: 21px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#baa5ff,#7657e8) border-box;
	box-shadow: 0 36px 85px rgba(34,48,80,.12);
}

.zire-ai-hub-matrix__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 17px 20px;
	border-bottom: 1px solid #e9edf2;
}

.zire-ai-hub-matrix__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ai-hub-matrix__head strong {
	display: block;
	margin-top: 3px;
	color: #202833;
	font-size: 12px;
}

.zire-ai-hub-matrix__status {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eaf8f2;
	color: #07885f !important;
	font-size: 11px !important;
	font-weight: 750;
	text-transform: none !important;
}

.zire-ai-hub-matrix__status span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #07885f;
}


/* SUMMARY */

.zire-ai-hub-matrix__summary {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 8px;
	padding: 14px 16px;
	border-bottom: 1px solid #edf0f4;
	background: #fafbfe;
}

.zire-ai-hub-matrix__summary > div {
	padding: 12px;
	border: 1px solid #e7ebf1;
	border-radius: 10px;
	background: #fff;
}

.zire-ai-hub-matrix__summary > div.is-primary {
	border-color: #bdcaff;
	background: linear-gradient(135deg,#f2f5ff,#f8f5ff);
}

.zire-ai-hub-matrix__summary span,
.zire-ai-hub-matrix__summary small {
	display: block;
	font-size: 11px;
}

.zire-ai-hub-matrix__summary span {
	color: #8993a2;
}

.zire-ai-hub-matrix__summary strong {
	display: block;
	margin-top: 4px;
	color: #202833;
	font-size: 19px;
}

.zire-ai-hub-matrix__summary .is-primary strong {
	color: #315efb;
}

.zire-ai-hub-matrix__summary small {
	margin-top: 3px;
	color: #07885f;
}


/* PLATFORM ROWS */

.zire-ai-hub-matrix__platforms {
	padding: 4px 17px;
}

.zire-ai-hub-matrix__platforms > div {
	display: grid;
	grid-template-columns: 190px 1fr 50px;
	align-items: center;
	gap: 15px;
	padding: 11px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ai-hub-matrix__platforms > div:first-child {
	border-top: 0;
}

.zire-ai-hub-matrix__provider {
	display: flex;
	align-items: center;
	gap: 10px;
}

.zire-ai-hub-matrix__provider img {
	width: auto;
	max-width: 75px;
	max-height: 22px;
	object-fit: contain;
	object-position: left center;
}

.zire-ai-hub-matrix__provider strong {
	font-size: 12px;
}

.zire-ai-hub-matrix__bar {
	display: grid;
	grid-template-columns: 1fr 39px;
	align-items: center;
	gap: 9px;
}

.zire-ai-hub-matrix__bar i {
	height: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: #e5e9ef;
}

.zire-ai-hub-matrix__bar b {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,#315efb,#7657e8);
}

.zire-ai-hub-matrix__bar strong {
	font-size: 11px;
	text-align: right;
}

.zire-ai-hub-matrix__platforms > div > span {
	justify-self: end;
	font-size: 11px;
	font-weight: 750;
}

.zire-ai-hub-matrix__platforms .is-up {
	color: #07885f;
}


/* MATRIX FOOTER */

.zire-ai-hub-matrix__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 13px 17px;
	border-top: 1px solid #edf0f4;
	background: linear-gradient(135deg,#f6f8ff,#faf8ff);
}

.zire-ai-hub-matrix__footer span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ai-hub-matrix__footer strong {
	display: block;
	margin-top: 3px;
	font-size: 12px;
}

.zire-ai-hub-matrix__footer a {
	flex: 0 0 auto;
	color: #315efb;
	font-size: 12px;
	font-weight: 750;
}


/* =========================================================
   PROVIDER HUB
   ========================================================= */

.zire-ai-hub-providers {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 108px 24px 112px;
	background:
		linear-gradient(
			180deg,
			#fff 0%,
			#f8faff 50%,
			#fff 100%
		);
}

.zire-ai-hub-provider-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 14px;
}

.zire-ai-hub-provider-card {
	min-height: 360px;
	display: flex;
	flex-direction: column;
	padding: 22px;
	border: 1px solid #dfe4ec;
	border-radius: 16px;
	background: rgba(255,255,255,.95);
	box-shadow: 0 17px 46px rgba(34,48,80,.055);
	text-decoration: none;
	transition:
		transform .2s ease,
		border-color .2s ease,
		box-shadow .2s ease;
}

.zire-ai-hub-provider-card:hover {
	transform: translateY(-5px);
	border-color: #c6d2ff;
	box-shadow: 0 25px 60px rgba(34,48,80,.10);
}

.zire-ai-hub-provider-card__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	min-height: 45px;
}

.zire-ai-hub-provider-card__top > span {
	color: #a1a9b6;
	font-size: 11px;
	font-weight: 800;
}

.zire-ai-hub-provider-card__logo {
	height: 38px;
	display: flex;
	align-items: center;
}

.zire-ai-hub-provider-card__logo img {
	display: block;
	width: auto;
	max-width: 118px;
	max-height: 30px;
	object-fit: contain;
	object-position: left center;
}

.zire-ai-hub-provider-card__logo--google img {
	width: 29px;
	height: 29px;
}

.zire-ai-hub-provider-card h3 {
	margin: 21px 0 0;
	color: #202833;
	font-size: 22px;
	letter-spacing: -.02em;
}

.zire-ai-hub-provider-card > p {
	margin: 9px 0 19px;
	color: #748091;
	font-size: 15px;
	line-height: 1.65;
}

.zire-ai-hub-provider-card__focus {
	margin-top: auto;
	padding: 12px;
	border: 1px solid #e7ebf1;
	border-radius: 10px;
	background: #f8f9fc;
}

.zire-ai-hub-provider-card__focus > span {
	display: block;
	color: #8993a2;
	font-size: 11px;
	font-weight: 750;
	text-transform: uppercase;
}

.zire-ai-hub-provider-card__focus > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 8px;
}

.zire-ai-hub-provider-card__focus b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #edf2ff;
	color: #56677f;
	font-size: 13px;
	font-weight: 700;
}

.zire-ai-hub-provider-card__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 17px;
	color: #315efb;
	font-size: 14px;
}

.zire-ai-hub-provider-card__link span {
	transition: transform .2s ease;
}

.zire-ai-hub-provider-card:hover .zire-ai-hub-provider-card__link span {
	transform: translateX(4px);
}


/* =========================================================
   BENEFITS — DARK
   ========================================================= */

.zire-ai-hub-benefits {
	position: relative;
	overflow: hidden;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 110px 24px 115px;
	background:
		linear-gradient(145deg,#0d1423 0%,#111a2d 55%,#101729 100%);
}

.zire-ai-hub-benefits__glow {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}

.zire-ai-hub-benefits__glow--one {
	width: 650px;
	height: 650px;
	left: -280px;
	top: -330px;
	background: rgba(49,94,251,.13);
	filter: blur(90px);
}

.zire-ai-hub-benefits__glow--two {
	width: 580px;
	height: 580px;
	right: -270px;
	bottom: -330px;
	background: rgba(118,87,232,.12);
	filter: blur(90px);
}

.zire-ai-hub-benefits__shape {
	position: absolute;
	right: -120px;
	top: 15%;
	width: 430px;
	height: 430px;
	opacity: .11;
	pointer-events: none;
}

.zire-ai-hub-benefits__heading {
	position: relative;
	z-index: 1;
	max-width: 850px;
}

.zire-ai-hub-benefits__eyebrow {
	display: flex;
	align-items: center;
	gap: 9px;
	color: #99a9c3;
	font-size: 12px;
	font-weight: 750;
	text-transform: uppercase;
}

.zire-ai-hub-benefits__eyebrow span {
	width: 20px;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg,#4f75ff,#8f70eb);
}

.zire-ai-hub-benefits__heading h2 {
	max-width: 830px;
	margin: 18px 0 0;
	color: #fff;
	font-size: clamp(40px,4vw,57px);
	line-height: 1.01;
	letter-spacing: -.045em;
	font-weight: 900;
}

.zire-ai-hub-benefits__heading h2 span {
	display: block;
	color: #8fa6ff;
}

.zire-ai-hub-benefits__heading p {
	max-width: 690px;
	margin: 19px 0 0;
	color: rgba(255,255,255,.55);
	font-size: 16px;
	line-height: 1.7;
}

.zire-ai-hub-benefits-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 10px;
	margin-top: 50px;
}

.zire-ai-hub-benefits-grid > div {
	min-height: 210px;
	padding: 21px;
	border: 1px solid rgba(255,255,255,.085);
	border-radius: 14px;
	background: rgba(255,255,255,.04);
	backdrop-filter: blur(10px);
}

.zire-ai-hub-benefits-grid > div > span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 9px;
	background: rgba(90,113,255,.14);
	color: #9aabff;
	font-size: 12px;
	font-weight: 800;
}

.zire-ai-hub-benefits-grid h3 {
	margin: 22px 0 0;
	color: #fff;
	font-size: 17px;
}

.zire-ai-hub-benefits-grid p {
	margin: 9px 0 0;
	color: rgba(255,255,255,.48);
	font-size: 13px;
	line-height: 1.65;
}


/* =========================================================
   HOW TO APPEAR
   ========================================================= */

.zire-ai-hub-appear {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 110px 24px 120px;
	background:
		linear-gradient(180deg,#fff,#f7f9ff 60%,#fff);
}

.zire-ai-hub-appear-layout {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 72px;
	align-items: center;
}


/* STEPS */

.zire-ai-hub-appear-steps {
	display: grid;
	gap: 8px;
}

.zire-ai-hub-appear-steps > div {
	display: grid;
	grid-template-columns: 45px 1fr;
	gap: 13px;
	padding: 15px;
	border: 1px solid transparent;
	border-radius: 11px;
}

.zire-ai-hub-appear-steps > div.is-active {
	border-color: #c9d4ff;
	background: #f5f7ff;
}

.zire-ai-hub-appear-steps > div > span {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 12px;
	font-weight: 800;
}

.zire-ai-hub-appear-steps h3 {
	margin: 2px 0 0;
	color: #202833;
	font-size: 16px;
}

.zire-ai-hub-appear-steps p {
	margin: 6px 0 0;
	color: #758091;
	font-size: 13px;
	line-height: 1.6;
}


/* VISUAL */

.zire-ai-hub-appear-visual {
	position: relative;
}

.zire-ai-hub-appear-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 500px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.16);
	filter: blur(90px);
	pointer-events: none;
}

.zire-ai-hub-evidence-window {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border: 1.5px solid transparent;
	border-radius: 17px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#b49dff,#7657e8) border-box;
	box-shadow: 0 25px 60px rgba(34,48,80,.1);
}

.zire-ai-hub-evidence-window__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 15px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-ai-hub-evidence-window__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ai-hub-evidence-window__head strong {
	display: block;
	margin-top: 3px;
	font-size: 13px;
}

.zire-ai-hub-evidence-window__head small {
	color: #8993a2;
	font-size: 11px;
}

.zire-ai-hub-evidence-prompt {
	margin: 13px 17px;
	padding: 12px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f1ff);
}

.zire-ai-hub-evidence-prompt span {
	display: block;
	color: #7657e8;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ai-hub-evidence-prompt strong {
	display: block;
	margin-top: 5px;
	font-size: 12px;
}

.zire-ai-hub-evidence-results {
	padding: 0 17px;
}

.zire-ai-hub-evidence-results > div {
	display: grid;
	grid-template-columns: 73px 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 10px 0;
	border-top: 1px solid #edf0f4;
}

.zire-ai-hub-evidence-results img {
	display: block;
	width: auto;
	max-width: 69px;
	max-height: 21px;
	object-fit: contain;
	object-position: left center;
}

.zire-ai-hub-evidence-results strong,
.zire-ai-hub-evidence-results small {
	display: block;
	font-size: 11px;
}

.zire-ai-hub-evidence-results small {
	margin-top: 2px;
	color: #8993a2;
}

.zire-ai-hub-evidence-results b {
	padding: 5px 7px;
	border-radius: 999px;
	font-size: 11px;
}

.zire-ai-hub-evidence-results .is-positive {
	background: #eaf8f2;
	color: #07885f;
}

.zire-ai-hub-evidence-results .is-warning {
	background: #fff2df;
	color: #9a7110;
}

.zire-ai-hub-evidence-insight {
	display: grid;
	grid-template-columns: 35px 1fr auto;
	align-items: center;
	gap: 9px;
	margin: 13px 17px 16px;
	padding: 10px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-ai-hub-evidence-insight > span {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
	font-size: 13px;
}

.zire-ai-hub-evidence-insight small {
	display: block;
	color: #7657e8;
	font-size: 11px;
}

.zire-ai-hub-evidence-insight strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-ai-hub-evidence-insight > b {
	color: #315efb;
	font-size: 13px;
}


/* =========================================================
   PLATFORM SIGNALS
   ========================================================= */

.zire-ai-hub-signals {
	padding: 105px 0 110px;
}

.zire-ai-hub-signals-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 12px;
}

.zire-ai-hub-signals-grid > div {
	min-height: 260px;
	padding: 20px;
	border: 1px solid #e0e5ed;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 16px 42px rgba(34,48,80,.05);
}

.zire-ai-hub-signals-grid img {
	display: block;
	width: auto;
	max-width: 105px;
	max-height: 28px;
	object-fit: contain;
	object-position: left center;
}

.zire-ai-hub-signals-grid h3 {
	margin: 22px 0 0;
	color: #202833;
	font-size: 18px;
}

.zire-ai-hub-signals-grid > div > strong {
	display: block;
	margin-top: 5px;
	color: #315efb;
	font-size: 14px;
}

.zire-ai-hub-signals-grid p {
	margin: 11px 0 0;
	color: #758091;
	font-size: 14px;
	line-height: 1.65;
}


/* =========================================================
   HOW ZIRE HELPS
   ========================================================= */

.zire-ai-hub-zire {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 110px 24px 115px;
	background:
		linear-gradient(180deg,#f8faff 0%,#f4f6ff 50%,#fff 100%);
}

.zire-ai-hub-zire-layout {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	gap: 55px;
	align-items: center;
}


/* DASHBOARD */

.zire-ai-hub-zire-visual {
	position: relative;
}

.zire-ai-hub-zire-visual::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 620px;
	height: 500px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: rgba(49,94,251,.17);
	filter: blur(90px);
	pointer-events: none;
}

.zire-ai-hub-dashboard {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border: 1.5px solid transparent;
	border-radius: 17px;
	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(135deg,#8ca5ff,#b49dff,#7657e8) border-box;
	box-shadow: 0 25px 60px rgba(34,48,80,.1);
}

.zire-ai-hub-dashboard__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	padding: 15px 17px;
	border-bottom: 1px solid #edf0f4;
}

.zire-ai-hub-dashboard__head span {
	display: block;
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.zire-ai-hub-dashboard__head strong {
	display: block;
	margin-top: 3px;
	font-size: 13px;
}

.zire-ai-hub-dashboard__head small {
	color: #8993a2;
	font-size: 11px;
}

.zire-ai-hub-dashboard__score {
	display: grid;
	grid-template-columns: 150px 1fr;
	gap: 16px;
	align-items: center;
	padding: 17px;
}

.zire-ai-hub-dashboard__ring {
	width: 128px;
	height: 128px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		radial-gradient(circle at center,#fff 59%,transparent 60%),
		conic-gradient(#315efb 0 54%,#e5e9ef 54% 100%);
}

.zire-ai-hub-dashboard__ring > div {
	display: flex;
	align-items: baseline;
}

.zire-ai-hub-dashboard__ring strong {
	font-size: 27px;
}

.zire-ai-hub-dashboard__ring span {
	color: #8993a2;
	font-size: 11px;
}

.zire-ai-hub-dashboard__ring small {
	color: #315efb;
	font-size: 11px;
}

.zire-ai-hub-dashboard__metrics {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 7px;
}

.zire-ai-hub-dashboard__metrics > div {
	padding: 10px;
	border: 1px solid #e7ebf1;
	border-radius: 8px;
	background: #f8f9fc;
}

.zire-ai-hub-dashboard__metrics span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-ai-hub-dashboard__metrics strong {
	display: block;
	margin-top: 4px;
	font-size: 12px;
}

.zire-ai-hub-dashboard__chart {
	margin: 0 17px;
	padding: 13px;
	border: 1px solid #e7ebf1;
	border-radius: 10px;
	background: #fbfcfe;
}

.zire-ai-hub-dashboard__chart-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.zire-ai-hub-dashboard__chart-head span {
	display: block;
	color: #8993a2;
	font-size: 11px;
}

.zire-ai-hub-dashboard__chart-head strong {
	display: block;
	margin-top: 2px;
	color: #07885f;
	font-size: 13px;
}

.zire-ai-hub-dashboard__chart-head small {
	color: #8993a2;
	font-size: 11px;
}

.zire-ai-hub-dashboard__chart svg {
	width: 100%;
	height: 130px;
	margin-top: 7px;
}

.zire-ai-hub-dashboard__action {
	display: grid;
	grid-template-columns: 35px 1fr auto;
	align-items: center;
	gap: 9px;
	margin: 13px 17px 16px;
	padding: 10px;
	border-radius: 9px;
	background: linear-gradient(135deg,#eef3ff,#f5f0ff);
}

.zire-ai-hub-dashboard__action > span {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #fff;
	color: #7657e8;
}

.zire-ai-hub-dashboard__action small {
	display: block;
	color: #7657e8;
	font-size: 11px;
}

.zire-ai-hub-dashboard__action strong {
	display: block;
	margin-top: 3px;
	font-size: 11px;
}

.zire-ai-hub-dashboard__action > b {
	padding: 5px 7px;
	border-radius: 999px;
	background: #fff0ef;
	color: #d6574e;
	font-size: 11px;
}


/* ZIRE FEATURE LIST */

.zire-ai-hub-zire-features {
	display: grid;
	gap: 8px;
}

.zire-ai-hub-zire-features > div {
	display: grid;
	grid-template-columns: 42px 1fr;
	align-items: start;
	gap: 11px;
	padding: 12px;
	border: 1px solid #e2e6ed;
	border-radius: 10px;
	background: rgba(255,255,255,.85);
}

.zire-ai-hub-zire-features > div > span {
	width: 41px;
	height: 41px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: linear-gradient(145deg,#edf2ff,#f2edff);
	color: #315efb;
	font-size: 11px;
	font-weight: 800;
}

.zire-ai-hub-zire-features h3 {
	margin: 1px 0 0;
	color: #202833;
	font-size: 14px;
}

.zire-ai-hub-zire-features p {
	margin: 5px 0 0;
	color: #788393;
	font-size: 13px;
	line-height: 1.55;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

	.zire-ai-hub-provider-grid,
	.zire-ai-hub-signals-grid,
	.zire-ai-hub-benefits-grid {
		grid-template-columns: repeat(2,1fr);
	}

	.zire-ai-hub-appear-layout,
	.zire-ai-hub-zire-layout {
		grid-template-columns: 1fr;
		gap: 45px;
	}

}


@media (max-width: 800px) {

	.zire-ai-hub-hero__copy h1 {
		font-size: clamp(50px,11vw,72px);
	}

	.zire-ai-hub-matrix__summary {
		grid-template-columns: 1fr 1fr;
	}

	.zire-ai-hub-matrix__platforms > div {
		grid-template-columns: 130px 1fr 42px;
	}

	.zire-ai-hub-matrix__provider {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
	}

}


@media (max-width: 700px) {

	.zire-ai-hub-heading h2,
	.zire-ai-hub-benefits__heading h2 {
		font-size: clamp(34px,9vw,46px);
	}

	.zire-ai-hub-hero {
		padding-bottom: 85px;
	}

	.zire-ai-hub-hero__copy > p {
		font-size: 16px;
	}

	.zire-ai-hub-hero__logos > div {
		min-width: 95px;
	}

	.zire-ai-hub-providers,
	.zire-ai-hub-benefits,
	.zire-ai-hub-appear,
	.zire-ai-hub-zire {
		padding-left: 18px;
		padding-right: 18px;
	}

	.zire-ai-hub-provider-grid,
	.zire-ai-hub-signals-grid,
	.zire-ai-hub-benefits-grid {
		grid-template-columns: 1fr;
	}

	.zire-ai-hub-provider-card {
		min-height: auto;
	}

	.zire-ai-hub-matrix__footer {
		flex-direction: column;
		align-items: flex-start;
	}

	.zire-ai-hub-dashboard__score {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.zire-ai-hub-dashboard__metrics {
		width: 100%;
	}

}


@media (max-width: 520px) {

	.zire-ai-hub-matrix__summary {
		grid-template-columns: 1fr;
	}

	.zire-ai-hub-matrix__platforms > div {
		grid-template-columns: 1fr;
		gap: 7px;
	}

	.zire-ai-hub-matrix__provider {
		flex-direction: row;
		align-items: center;
	}

	.zire-ai-hub-matrix__platforms > div > span {
		justify-self: start;
	}

	.zire-ai-hub-appear-steps > div {
		grid-template-columns: 38px 1fr;
		padding: 12px;
	}

	.zire-ai-hub-appear-steps > div > span {
		width: 37px;
		height: 37px;
	}

	.zire-ai-hub-evidence-results > div {
		grid-template-columns: 62px 1fr;
	}

	.zire-ai-hub-evidence-results > div > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-ai-hub-evidence-insight,
	.zire-ai-hub-dashboard__action {
		grid-template-columns: 35px 1fr;
	}

	.zire-ai-hub-evidence-insight > b,
	.zire-ai-hub-dashboard__action > b {
		grid-column: 2;
		justify-self: start;
	}

	.zire-ai-hub-dashboard__metrics {
		grid-template-columns: 1fr;
	}

}

/* =========================================================
   ZIRE MANAGED AI VISIBILITY
   FULL REPLACEMENT CSS
   ========================================================= */


/* =========================================================
   FULL-WIDTH SECTIONS
   ========================================================= */

.zire-managed-hero,
.zire-managed-month,
.zire-managed-signup,
.zire-managed-included,
.zire-managed-why,
.zire-managed-evidence,
.zire-managed-after,
.zire-managed-specialist {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	box-sizing: border-box;
}


/* =========================================================
   SHARED MANAGED TYPOGRAPHY
   ========================================================= */

.zire-managed-heading {
	max-width: 880px;
	margin: 0 auto 50px;
	text-align: center;
}

.zire-managed-heading h2,
.zire-managed-evidence__copy h2,
.zire-managed-included__copy h2,
.zire-managed-specialist__copy h2,
.zire-managed-after__copy h2 {
	margin: 18px 0 0;

	color: #131922;

	font-size: clamp(40px, 3.9vw, 56px);
	font-weight: 850;
	line-height: 1.01;
	letter-spacing: -.045em;
}

.zire-managed-heading h2 span,
.zire-managed-evidence__copy h2 span,
.zire-managed-included__copy h2 span,
.zire-managed-specialist__copy h2 span,
.zire-managed-after__copy h2 span {
	display: block;
	color: #315efb;
}

.zire-managed-heading > p {
	max-width: 720px;
	margin: 18px auto 0;

	color: #69768a;

	font-size: 14px;
	line-height: 1.72;
}


/* =========================================================
   EYEBROWS
   ========================================================= */

.zire-managed-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;

	min-height: 29px;
	padding: 0 12px;

	border: 1px solid #cad5ff;
	border-radius: 999px;

	background:
		linear-gradient(
			135deg,
			#f4f7ff,
			#f7f3ff
		);

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
	margin-bottom: 20px;

	box-shadow: 0 6px 18px rgba(49,94,251,.05);
}

.zire-managed-eyebrow > span {
	width: 7px;
	height: 7px;

	border: 2px solid #cbd6ff;
	border-radius: 50%;

	background: #315efb;

	box-sizing: border-box;
}

.zire-managed-eyebrow--dark {
	border-color: rgba(142,160,255,.25);

	background: rgba(96,115,255,.10);

	color: #9fb0ff;

	box-shadow: none;
}

.zire-managed-eyebrow--dark > span {
	border-color: rgba(159,176,255,.25);
	background: #8ea1ff;
}


/* =========================================================
   MANAGED BUTTONS
   Used lower down the page.
   Hero buttons use existing .zire-home-hero classes.
   ========================================================= */

.zire-managed-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	min-height: 50px;
	padding: 0 22px;

	border: 1px solid transparent;
	border-radius: 10px;

	font-size: 12px;
	font-weight: 800;

	text-decoration: none;

	cursor: pointer;

	box-sizing: border-box;

	transition:
		transform .2s ease,
		box-shadow .2s ease,
		border-color .2s ease;
}

.zire-managed-button:hover {
	transform: translateY(-2px);
}

.zire-managed-button--primary {
	background:
		linear-gradient(
			135deg,
			#315efb,
			#7657e8
		);

	color: #fff;

	box-shadow: 0 14px 30px rgba(49,94,251,.22);
}

.zire-managed-button--primary:hover {
	box-shadow: 0 18px 38px rgba(49,94,251,.29);
}

.zire-managed-button--secondary {
	border-color: #d7dee9;

	background: rgba(255,255,255,.9);

	color: #171e28;
}


/* =========================================================
   HERO
   Reuses .zire-home-hero typography/buttons
   ========================================================= */

.zire-managed-hero {
	position: relative;
	overflow: hidden;

	padding-top: 152px;
	padding-bottom: 100px;

	background:
		linear-gradient(
			145deg,
			#ffffff 0%,
			#fbfcff 48%,
			#f3f6ff 100%
		);

	isolation: isolate;
}


/* HERO GRID */

.zire-managed-hero__inner {
	display: grid;
	grid-template-columns: 1.04fr .96fr;
	gap: 72px;

	align-items: center;
}

.zire-managed-hero__copy {
	max-width: 700px;
}


/*
 * Do NOT set font-size/font-weight/line-height here.
 * Those now come from .zire-home-hero h1.
 */

.zire-managed-hero__copy h1 {
	max-width: 710px;
}


/* Managed body copy */

.zire-managed-hero__copy > p {
	max-width: 640px;
	margin-top: 27px;
}


/* Existing homepage button classes style the buttons */

.zire-managed-hero__actions {
	margin-top: 31px;
}


/* HERO META */

.zire-managed-hero__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;

	margin-top: 19px;

	color: #748095;

	font-size: 13px;
}

.zire-managed-hero__meta span:first-child {
	color: #07885f;
}

.zire-managed-hero__meta i {
	color: #c4cad3;
	font-style: normal;
}


/* HERO GLOWS */

.zire-managed-hero__glow {
	position: absolute;
	z-index: -1;

	border-radius: 50%;

	pointer-events: none;
}

.zire-managed-hero__glow--one {
	width: 700px;
	height: 700px;

	right: -250px;
	top: -300px;

	background: rgba(49,94,251,.13);

	filter: blur(100px);
}

.zire-managed-hero__glow--two {
	width: 550px;
	height: 550px;

	left: -320px;
	bottom: -300px;

	background: rgba(118,87,232,.08);

	filter: blur(100px);
}


/* =========================================================
   HERO PACKAGE CARD
   ========================================================= */

.zire-managed-hero__package-wrap {
	position: relative;
}

.zire-managed-hero__package-wrap::before {
	content: "";

	position: absolute;

	left: 50%;
	top: 51%;

	width: 620px;
	height: 560px;

	transform: translate(-50%,-50%);

	border-radius: 50%;

	background: rgba(49,94,251,.16);

	filter: blur(100px);

	pointer-events: none;
}


.zire-managed-package-card {
	position: relative;
	z-index: 1;

	overflow: hidden;

	max-width: 565px;
	margin-left: auto;

	border: 1.5px solid transparent;
	border-radius: 20px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#88a2ff,
			#c1adff,
			#7657e8
		) border-box;

	box-shadow:
		0 35px 90px rgba(34,48,80,.13),
		0 8px 30px rgba(49,94,251,.07);
}


.zire-managed-package-card__glow {
	position: absolute;

	top: -170px;
	right: -130px;

	width: 330px;
	height: 330px;

	border-radius: 50%;

	background: rgba(49,94,251,.13);

	filter: blur(70px);

	pointer-events: none;
}


/* PACKAGE HEADER */

.zire-managed-package-card__head {
	position: relative;

	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;

	padding: 20px 22px 4px;
}


.zire-managed-package-card__badge {
	display: inline-flex;

	padding: 6px 9px;

	border-radius: 999px;

	background: #edf2ff;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}


.zire-managed-package-card__head h2 {
	margin: 10px 0 0;

	color: #202833;

	font-size: 21px;
	font-weight: 850;
	letter-spacing: -.025em;
}


.zire-managed-package-card__status {
	display: flex;
	align-items: center;
	gap: 6px;

	margin-top: 4px;

	padding: 6px 9px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 12px;
	font-weight: 800;
}

.zire-managed-package-card__status span {
	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: #07885f;
}


/* PACKAGE INTRO */

.zire-managed-package-card__intro {
	position: relative;

	margin: 8px 22px 0;

	color: #6e798a;

	font-size: 13px;
	line-height: 1.55;
}


/* PRICE */

.zire-managed-package-card__price {
	position: relative;

	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 15px;

	margin-top: 1px;

	padding: 8px 22px 13px;
}

.zire-managed-package-card__price > div {
	display: flex;
	align-items: baseline;
	gap: 6px;
}

.zire-managed-package-card__price strong {
	color: #171d27;

	font-size: 46px;
	font-weight: 900;
	letter-spacing: -.055em;
}

.zire-managed-package-card__price span {
	color: #8993a2;
	font-size: 13px;
}

.zire-managed-package-card__price small {
	color: #8993a2;
	font-size: 12px;
}


/* SPECIALIST */

.zire-managed-package-card__specialist {
	display: grid;
	grid-template-columns: 42px 1fr;
	gap: 11px;

	margin: 0 16px;

	padding: 12px;

	border: 1px solid #d9e0ff;
	border-radius: 11px;

	background:
		linear-gradient(
			135deg,
			#f1f4ff,
			#f6f2ff
		);
}


.zire-managed-package-card__specialist-icon {
	width: 41px;
	height: 41px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: #fff;

	color: #7657e8;

	font-size: 13px;

	box-shadow: 0 7px 18px rgba(34,48,80,.06);
}


.zire-managed-package-card__specialist span,
.zire-managed-package-card__specialist strong,
.zire-managed-package-card__specialist small {
	display: block;
}

.zire-managed-package-card__specialist span {
	color: #315efb;

	font-size: 12px;
	font-weight: 800;
}

.zire-managed-package-card__specialist strong {
	margin-top: 2px;

	color: #26303d;

	font-size: 13px;
}

.zire-managed-package-card__specialist small {
	margin-top: 3px;

	color: #7a8595;

	font-size: 12px;
	line-height: 1.4;
}


/* DIVIDER */

.zire-managed-package-card__divider {
	height: 1px;

	margin-top: 13px;

	background: #edf0f4;
}


/* INCLUDED LABEL */

.zire-managed-package-card__label {
	padding: 13px 22px 5px;

	color: #858f9f;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
	letter-spacing: .06em;
}


/* PACKAGE FEATURES */

.zire-managed-package-card__features {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;

	padding: 4px 16px 12px;
}

.zire-managed-package-card__features > div {
	display: grid;
	grid-template-columns: 27px 1fr;
	align-items: center;
	gap: 7px;

	min-height: 48px;

	padding: 7px 8px;

	border: 1px solid #e2e7ef;
	border-radius: 9px;

	background: #fbfcfe;
}

.zire-managed-package-card__features > div:last-child {
	grid-column: 1 / -1;
}


.zire-managed-package-card__features i {
	width: 26px;
	height: 26px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;

	background: #efeaff;

	color: #7657e8;

	font-size: 12px;
	font-style: normal;
	font-weight: 850;
}


.zire-managed-package-card__features strong,
.zire-managed-package-card__features small {
	display: block;
}

.zire-managed-package-card__features strong {
	color: #293240;

	font-size: 12px;
	line-height: 1.25;
}

.zire-managed-package-card__features small {
	margin-top: 1px;

	color: #8993a2;

	font-size: 12px;
	line-height: 1.25;
}


/* CARD FOOTER */

.zire-managed-package-card__footer {
	padding: 9px 18px 12px;

	border-top: 1px solid #edf0f4;

	background: #fafbfe;

	color: #8993a2;

	font-size: 12px;
	text-align: center;
}


/* =========================================================
   FIRST MONTH
   ========================================================= */

.zire-managed-month {
	position: relative;
	overflow: hidden;

	padding: 110px 24px 120px;

	background:
		linear-gradient(
			180deg,
			#fff 0%,
			#f8faff 58%,
			#fff 100%
		);
}


.zire-managed-light-glow {
	position: absolute;

	border-radius: 50%;

	pointer-events: none;
}

.zire-managed-light-glow--one {
	width: 600px;
	height: 600px;

	right: -320px;
	top: 120px;

	background: rgba(49,94,251,.09);

	filter: blur(100px);
}


.zire-managed-light-diamond {
	position: absolute;

	right: -145px;
	top: 145px;

	width: 370px;
	height: 370px;

	opacity: .08;

	pointer-events: none;
}


/* TIMELINE */

.zire-managed-timeline {
	position: relative;

	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 15px;
}

.zire-managed-timeline__line {
	position: absolute;

	left: 12%;
	right: 12%;
	top: 27px;

	height: 2px;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);

	opacity: .23;
}

.zire-managed-timeline article {
	position: relative;
	z-index: 1;
}


.zire-managed-timeline__number {
	width: 54px;
	height: 54px;

	display: flex;
	align-items: center;
	justify-content: center;

	margin: 0 auto 18px;

	border: 6px solid #f8faff;
	border-radius: 50%;

	background:
		linear-gradient(
			135deg,
			#315efb,
			#7657e8
		);

	color: #fff;

	font-size: 12px;
	font-weight: 850;

	box-shadow: 0 9px 24px rgba(49,94,251,.22);
}


.zire-managed-timeline__card {
	position: relative;

	overflow: hidden;

	min-height: 322px;

	padding: 20px;

	border: 1.5px solid transparent;
	border-radius: 15px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#dce5ff,
			#d9d4ff,
			#c7b9ff
		) border-box;

	box-shadow: 0 18px 46px rgba(34,48,80,.065);
}

.zire-managed-timeline__card::before {
	content: "";

	position: absolute;

	right: -60px;
	top: -70px;

	width: 150px;
	height: 150px;

	border-radius: 50%;

	background: rgba(49,94,251,.08);

	filter: blur(45px);
}


.zire-managed-timeline__icon {
	position: relative;

	width: 40px;
	height: 40px;

	display: flex;
	align-items: center;
	justify-content: center;

	margin-bottom: 20px;

	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 12px;
}


.zire-managed-timeline__card > span {
	position: relative;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}


.zire-managed-timeline__card h3 {
	position: relative;

	margin: 10px 0 0;

	color: #202833;

	font-size: 18px;
	font-weight: 800;
	letter-spacing: -.02em;
}


.zire-managed-timeline__card p {
	position: relative;

	margin: 10px 0 0;

	color: #707c8e;

	font-size: 13px;
	line-height: 1.65;
}


.zire-managed-timeline__tags {
	position: relative;

	display: flex;
	flex-wrap: wrap;
	gap: 5px;

	margin-top: 20px;
}

.zire-managed-timeline__tags b {
	padding: 5px 7px;

	border-radius: 999px;

	background: #edf2ff;

	color: #5f6f88;

	font-size: 12px;
	font-weight: 700;
}


/* =========================================================
   SIGNUP
   ========================================================= */

.zire-managed-signup {
	position: relative;

	/*
	 * Important:
	 * clip keeps decorative overflow hidden without creating
	 * a scroll container that breaks position:sticky.
	 */
	overflow: clip;

	padding: 110px 24px 120px;

	background:
		linear-gradient(
			180deg,
			#f8faff,
			#f3f6ff 60%,
			#fff
		);
}


.zire-managed-signup__glow {
	position: absolute;

	left: -260px;
	top: 340px;

	width: 600px;
	height: 600px;

	border-radius: 50%;

	background: rgba(118,87,232,.08);

	filter: blur(100px);

	pointer-events: none;
}


.zire-managed-signup__layout {
	display: grid;
	grid-template-columns: minmax(0,1.18fr) minmax(340px,.82fr);
	gap: 28px;

	align-items: start;
}


/* =========================================================
   FORM
   ========================================================= */

.zire-managed-form-wrap {
	position: relative;

	overflow: hidden;

	border: 1.5px solid transparent;
	border-radius: 18px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#d8e1ff,
			#d7d0ff,
			#c1b2ff
		) border-box;

	box-shadow: 0 24px 62px rgba(34,48,80,.075);
}


.zire-managed-form {
	padding: 29px;
}


.zire-managed-form__section {
	padding: 27px 0;

	border-top: 1px solid #edf0f4;
}

.zire-managed-form__section:first-child {
	padding-top: 0;

	border-top: 0;
}


.zire-managed-form__section-head {
	display: grid;
	grid-template-columns: 40px 1fr;
	align-items: center;
	gap: 11px;

	margin-bottom: 18px;
}

.zire-managed-form__section-head > span {
	width: 39px;
	height: 39px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-form__section-head strong,
.zire-managed-form__section-head small {
	display: block;
}

.zire-managed-form__section-head strong {
	color: #202833;
	font-size: 12px;
}

.zire-managed-form__section-head small {
	margin-top: 2px;

	color: #8993a2;

	font-size: 12px;
}


/* FORM GRID */

.zire-managed-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.zire-managed-form label {
	display: block;
}

.zire-managed-form label.is-full {
	grid-column: 1 / 3;
}

.zire-managed-form label > span {
	display: block;

	margin-bottom: 7px;

	color: #4f5a6b;

	font-size: 13px;
	font-weight: 700;
}


.zire-managed-form input,
.zire-managed-form textarea {
	width: 100%;

	box-sizing: border-box;

	border: 1px solid #dce2eb;
	border-radius: 9px;

	background: #fbfcfe;

	color: #202833;

	font-family: inherit;
	font-size: 13px;

	outline: none;

	transition:
		border-color .18s ease,
		box-shadow .18s ease,
		background .18s ease;
}

.zire-managed-form input {
	height: 47px;
	padding: 0 13px;
}

.zire-managed-form textarea {
	padding: 12px 13px;

	line-height: 1.55;

	resize: vertical;
}

.zire-managed-form input:focus,
.zire-managed-form textarea:focus {
	border-color: #99adff;

	background: #fff;

	box-shadow: 0 0 0 3px rgba(49,94,251,.08);
}

.zire-managed-form input::placeholder,
.zire-managed-form textarea::placeholder {
	color: #a2abb8;
}


/* =========================================================
   PROMPT SELECTOR
   ========================================================= */

.zire-managed-prompt-choice > input {
	position: absolute;

	width: 1px;
	height: 1px;

	opacity: 0;

	pointer-events: none;
}


.zire-managed-prompt-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;

	padding: 4px;

	border: 1px solid #dbe1ea;
	border-radius: 11px;

	background: #f4f6fa;
}


.zire-managed-prompt-tabs label {
	margin: 0;

	padding: 11px 13px;

	border-radius: 8px;

	color: #727e8f;

	font-size: 13px;
	font-weight: 800;
	text-align: center;

	cursor: pointer;
}


#managed-prompts-enter:checked
~ .zire-managed-prompt-tabs
label[for="managed-prompts-enter"],

#managed-prompts-zire:checked
~ .zire-managed-prompt-tabs
label[for="managed-prompts-zire"] {
	background: #fff;

	color: #315efb;

	box-shadow: 0 4px 13px rgba(34,48,80,.09);
}


.zire-managed-prompt-panel {
	display: none;

	margin-top: 16px;
}

#managed-prompts-enter:checked
~ .zire-managed-prompt-panel--enter,
#managed-prompts-zire:checked
~ .zire-managed-prompt-panel--zire {
	display: block;
}


/* PROMPT HELP */

.zire-managed-prompt-help {
	display: grid;
	grid-template-columns: 31px 1fr;
	align-items: start;
	gap: 9px;

	margin-top: 9px;

	padding: 10px;

	border: 1px solid #dce4ff;
	border-radius: 9px;

	background: #f3f6ff;
}

.zire-managed-prompt-help > span {
	width: 30px;
	height: 30px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 7px;

	background: #fff;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-prompt-help p {
	margin: 1px 0 0;

	color: #718096;

	font-size: 12px;
	line-height: 1.55;
}


/* CHOOSE PROMPTS FOR ME */

.zire-managed-prompt-recommend {
	display: grid;
	grid-template-columns: 49px 1fr;
	gap: 14px;

	padding: 18px;

	border: 1px solid #c8d4ff;
	border-radius: 11px;

	background:
		linear-gradient(
			135deg,
			#f2f6ff,
			#f7f2ff
		);
}

.zire-managed-prompt-recommend__icon {
	width: 48px;
	height: 48px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 11px;

	background: #fff;

	color: #315efb;

	font-size: 14px;

	box-shadow: 0 8px 20px rgba(34,48,80,.06);
}

.zire-managed-prompt-recommend > div:last-child > span {
	display: block;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}

.zire-managed-prompt-recommend h4 {
	margin: 7px 0 0;

	color: #202833;

	font-size: 14px;
	line-height: 1.35;
}

.zire-managed-prompt-recommend p {
	margin: 8px 0 0;

	color: #748091;

	font-size: 13px;
	line-height: 1.6;
}

.zire-managed-prompt-recommend > div:last-child > div {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;

	margin-top: 13px;
}

.zire-managed-prompt-recommend > div:last-child > div span {
	padding: 5px 7px;

	border-radius: 999px;

	background: #fff;

	color: #5f6f85;

	font-size: 12px;
}

.zire-managed-prompt-recommend small {
	display: block;

	margin-top: 15px;
	padding-top: 12px;

	border-top: 1px solid #dde3f2;

	color: #6c788b;

	font-size: 12px;
	line-height: 1.55;
}


/* =========================================================
   CHECKOUT SUMMARY INSIDE FORM
   ========================================================= */

.zire-managed-form__checkout {
	margin-top: 4px;

	padding: 21px;

	border-radius: 12px;

	background:
		linear-gradient(
			145deg,
			#111827,
			#151b2c
		);

	color: #fff;
}


.zire-managed-form__checkout-price {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;

	padding-bottom: 16px;

	border-bottom: 1px solid rgba(255,255,255,.10);
}

.zire-managed-form__checkout-price span {
	display: block;

	color: rgba(255,255,255,.49);

	font-size: 12px;
}

.zire-managed-form__checkout-price strong {
	display: flex;
	align-items: baseline;
	gap: 4px;

	margin-top: 3px;

	color: #fff;

	font-size: 27px;
}

.zire-managed-form__checkout-price strong small {
	color: rgba(255,255,255,.48);

	font-size: 12px;
}

.zire-managed-form__checkout-price > b {
	padding: 6px 8px;

	border-radius: 999px;

	background: rgba(123,94,238,.16);

	color: #c9c0ff;

	font-size: 12px;
}


.zire-managed-form__checkout ul {
	display: grid;
	gap: 8px;

	margin: 16px 0;
	padding: 0;

	list-style: none;
}

.zire-managed-form__checkout li {
	position: relative;

	padding-left: 18px;

	color: rgba(255,255,255,.61);

	font-size: 12px;
}

.zire-managed-form__checkout li::before {
	content: "✓";

	position: absolute;
	left: 0;

	color: #77ddb4;
}


.zire-managed-form__submit {
	width: 100%;

	border: 0;
}


.zire-managed-form__secure {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;

	margin-top: 11px;
}

.zire-managed-form__secure span,
.zire-managed-form__secure p {
	font-size: 12px;
}

.zire-managed-form__secure p {
	margin: 0;

	color: rgba(255,255,255,.44);
}


/* =========================================================
   STICKY SIGNUP PRICE CARD
   ========================================================= */

.zire-managed-signup-summary {
	position: sticky;
	top: 110px;

	align-self: start;

	overflow: hidden;

	border: 1.5px solid transparent;
	border-radius: 17px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#a9baff,
			#d5cbff,
			#baa8ff
		) border-box;

	box-shadow: 0 22px 58px rgba(34,48,80,.075);
}


/* TOP */

.zire-managed-signup-summary__top {
	padding: 24px;
}

.zire-managed-signup-summary__top > span {
	display: inline-flex;

	padding: 6px 9px;

	border-radius: 999px;

	background: #edf2ff;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}

.zire-managed-signup-summary__top h3 {
	margin: 13px 0 0;

	color: #202833;

	font-size: 21px;
	font-weight: 850;
}

.zire-managed-signup-summary__top p {
	margin: 8px 0 0;

	color: #748091;

	font-size: 13px;
	line-height: 1.6;
}

.zire-managed-signup-summary__top > div {
	display: flex;
	align-items: baseline;
	gap: 6px;

	margin-top: 17px;
}

.zire-managed-signup-summary__top > div strong {
	color: #171d27;

	font-size: 44px;
	font-weight: 900;
	letter-spacing: -.045em;
}

.zire-managed-signup-summary__top > div span {
	color: #8993a2;

	font-size: 13px;
}


/* SPECIALIST */

.zire-managed-signup-summary__specialist {
	display: grid;
	grid-template-columns: 39px 1fr;
	gap: 10px;

	margin: 0 18px;

	padding: 12px;

	border: 1px solid #d9e0ff;
	border-radius: 10px;

	background:
		linear-gradient(
			135deg,
			#eef3ff,
			#f5f0ff
		);
}

.zire-managed-signup-summary__specialist > div {
	width: 38px;
	height: 38px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: #fff;

	color: #7657e8;
}

.zire-managed-signup-summary__specialist p {
	margin: 0;

	color: #778293;

	font-size: 12px;
	line-height: 1.5;
}

.zire-managed-signup-summary__specialist strong {
	display: block;

	margin-bottom: 3px;

	color: #242d39;

	font-size: 13px;
}


/* STEPS */

.zire-managed-signup-summary__steps {
	display: grid;
	gap: 7px;

	margin: 18px;

	padding-top: 17px;

	border-top: 1px solid #edf0f4;
}

.zire-managed-signup-summary__steps > div {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 9px;

	padding: 10px;

	border: 1px solid #e5e9f0;
	border-radius: 9px;

	background: #fbfcfe;
}

.zire-managed-signup-summary__steps > div > span {
	width: 33px;
	height: 33px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #edf2ff;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-signup-summary__steps strong,
.zire-managed-signup-summary__steps small {
	display: block;
}

.zire-managed-signup-summary__steps strong {
	color: #293240;

	font-size: 13px;
}

.zire-managed-signup-summary__steps small {
	margin-top: 2px;

	color: #8993a2;

	font-size: 12px;
}


/* TRUST */

.zire-managed-signup-summary__trust {
	display: grid;
	gap: 7px;

	padding: 15px 19px 19px;

	border-top: 1px solid #edf0f4;

	background: #fafbfe;
}

.zire-managed-signup-summary__trust span {
	color: #69778a;

	font-size: 12px;
}


/* =========================================================
   DARK INCLUDED SECTION
   ========================================================= */

.zire-managed-included {
	position: relative;

	overflow: hidden;

	padding: 115px 24px 120px;

	background:
		linear-gradient(
			145deg,
			#0c1322 0%,
			#111a2d 56%,
			#101827 100%
		);

	color: #fff;

	isolation: isolate;
}


.zire-managed-included__glow {
	position: absolute;
	z-index: -1;

	border-radius: 50%;

	pointer-events: none;
}


.zire-managed-included__glow--one {
	width: 730px;
	height: 730px;

	left: -330px;
	top: -390px;

	background: rgba(49,94,251,.24);

	filter: blur(100px);
}


.zire-managed-included__glow--two {
	width: 560px;
	height: 560px;

	right: -270px;
	bottom: -310px;

	background: rgba(118,87,232,.13);

	filter: blur(95px);
}


.zire-managed-included__diamond {
	position: absolute;

	left: -100px;
	bottom: -80px;

	width: 410px;
	height: 410px;

	opacity: .12;

	pointer-events: none;
}


.zire-managed-included__layout {
	display: grid;
	grid-template-columns: .88fr 1.12fr;
	gap: 72px;

	align-items: center;
}


/* DARK COPY */

.zire-managed-included__copy h2 {
	max-width: 620px;

	color: #fff;
}

.zire-managed-included__copy h2 span {
	color: #91a8ff;
}

.zire-managed-included__copy > p {
	max-width: 580px;

	margin: 20px 0 0;

	color: rgba(255,255,255,.55);

	font-size: 14px;
	line-height: 1.72;
}


/* SPECIALIST DARK CARD */

.zire-managed-included__specialist {
	display: grid;
	grid-template-columns: 46px 1fr;
	gap: 13px;

	margin-top: 29px;

	padding: 15px;

	border: 1px solid rgba(150,169,255,.16);
	border-radius: 12px;

	background: rgba(99,118,255,.07);

	backdrop-filter: blur(10px);
}

.zire-managed-included__specialist > div {
	width: 45px;
	height: 45px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 10px;

	background: rgba(113,133,255,.14);

	color: #abb9ff;

	font-size: 13px;
}

.zire-managed-included__specialist p {
	margin: 0;

	color: rgba(255,255,255,.58);

	font-size: 13px;
	line-height: 1.6;
}

.zire-managed-included__specialist strong {
	display: block;

	margin-bottom: 4px;

	color: #fff;

	font-size: 12px;
}


/* INCLUDED GRID */

.zire-managed-included__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
}

.zire-managed-included__grid > div {
	position: relative;

	min-height: 170px;

	padding: 17px;

	border: 1px solid rgba(138,156,255,.15);
	border-radius: 12px;

	background:
		linear-gradient(
			145deg,
			rgba(255,255,255,.055),
			rgba(255,255,255,.025)
		);

	backdrop-filter: blur(12px);
}


.zire-managed-included__grid > div > span {
	position: absolute;

	right: 14px;
	top: 14px;

	color: rgba(255,255,255,.23);

	font-size: 12px;
	font-weight: 850;
}


.zire-managed-included__icon {
	width: 38px;
	height: 38px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: rgba(100,119,255,.14);

	color: #9fb0ff;

	font-size: 12px;
}


.zire-managed-included__grid h3 {
	margin: 16px 0 0;

	color: #fff;

	font-size: 15px;
	font-weight: 800;
}

.zire-managed-included__grid p {
	margin: 7px 0 0;

	color: rgba(255,255,255,.46);

	font-size: 12px;
	line-height: 1.6;
}


/* WIDE FINAL CARD */

.zire-managed-included__grid .is-wide {
	grid-column: 1 / 3;

	display: grid;
	grid-template-columns: 40px 1fr auto;
	align-items: center;
	gap: 12px;

	min-height: auto;
}

.zire-managed-included__grid .is-wide > span {
	display: none;
}

.zire-managed-included__grid .is-wide h3 {
	margin: 0;
}

.zire-managed-included__grid .is-wide > b {
	padding: 6px 9px;

	border-radius: 999px;

	background: rgba(102,209,167,.10);

	color: #72d7ac;

	font-size: 12px;
}


/* =========================================================
   WHY ZIRE MANAGED
   ========================================================= */

.zire-managed-why {
	position: relative;

	overflow: hidden;

	padding: 110px 24px 120px;

	background:
		linear-gradient(
			180deg,
			#fff 0%,
			#f8faff 52%,
			#fff 100%
		);
}


.zire-managed-why__glow {
	position: absolute;

	left: -300px;
	bottom: -290px;

	width: 600px;
	height: 600px;

	border-radius: 50%;

	background: rgba(49,94,251,.08);

	filter: blur(100px);
}


.zire-managed-why-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 13px;
}


.zire-managed-why-grid > div {
	position: relative;

	overflow: hidden;

	min-height: 265px;

	padding: 20px;

	border: 1.5px solid transparent;
	border-radius: 14px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#e0e7ff,
			#ded8ff,
			#d3c7ff
		) border-box;

	box-shadow: 0 18px 45px rgba(34,48,80,.055);
}

.zire-managed-why-grid > div::before {
	content: "";

	position: absolute;

	right: -70px;
	top: -70px;

	width: 160px;
	height: 160px;

	border-radius: 50%;

	background: rgba(49,94,251,.07);

	filter: blur(45px);
}


.zire-managed-why-card__top {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: space-between;
}

.zire-managed-why-card__top > span {
	color: #9aa4b3;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-why-card__top > div {
	width: 38px;
	height: 38px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 12px;
}


.zire-managed-why-grid h3 {
	position: relative;

	margin: 25px 0 0;

	color: #202833;

	font-size: 18px;
	font-weight: 800;
}

.zire-managed-why-grid p {
	position: relative;

	margin: 9px 0 0;

	color: #707c8d;

	font-size: 13px;
	line-height: 1.65;
}


.zire-managed-why-card__mini {
	position: relative;

	display: flex;
	flex-wrap: wrap;
	gap: 5px;

	margin-top: 19px;
}

.zire-managed-why-card__mini span {
	padding: 5px 7px;

	border-radius: 999px;

	background: #edf2ff;

	color: #62718a;

	font-size: 12px;
}


/* =========================================================
   EVIDENCE-LED OPTIMISATION
   ========================================================= */

.zire-managed-evidence {
	padding: 110px 24px 120px;

	background: #fff;
}


.zire-managed-evidence__layout {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	gap: 75px;

	align-items: center;
}


.zire-managed-evidence__visual {
	position: relative;
}

.zire-managed-evidence__visual::before {
	content: "";

	position: absolute;

	left: 50%;
	top: 50%;

	width: 610px;
	height: 500px;

	transform: translate(-50%,-50%);

	border-radius: 50%;

	background: rgba(49,94,251,.16);

	filter: blur(95px);
}


/* EVIDENCE CARD */

.zire-managed-evidence-card {
	position: relative;
	z-index: 1;

	overflow: hidden;

	border: 1.5px solid transparent;
	border-radius: 17px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#8ca5ff,
			#b49dff,
			#7657e8
		) border-box;

	box-shadow: 0 25px 65px rgba(34,48,80,.10);
}


.zire-managed-evidence-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;

	padding: 16px 18px;

	border-bottom: 1px solid #edf0f4;
}

.zire-managed-evidence-card__head span {
	display: block;

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}

.zire-managed-evidence-card__head strong {
	display: block;

	margin-top: 3px;

	font-size: 13px;
}

.zire-managed-evidence-card__head > b {
	color: #315efb;

	font-size: 15px;
}


/* PROMPT */

.zire-managed-evidence-card__prompt {
	margin: 14px 18px;

	padding: 12px;

	border-radius: 9px;

	background:
		linear-gradient(
			135deg,
			#eef3ff,
			#f5f0ff
		);
}

.zire-managed-evidence-card__prompt span {
	display: block;

	color: #7657e8;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}

.zire-managed-evidence-card__prompt strong {
	display: block;

	margin-top: 5px;

	font-size: 13px;
}


/* COMPARISON */

.zire-managed-evidence-card__comparison {
	padding: 0 18px;
}

.zire-managed-evidence-card__comparison > div {
	display: grid;
	grid-template-columns: 32px 1fr auto;
	align-items: center;
	gap: 9px;

	padding: 11px 0;

	border-top: 1px solid #edf0f4;
}

.zire-managed-evidence-card__comparison > div.is-brand {
	margin: 2px -7px;

	padding: 10px 7px;

	border: 1px solid #becbff;
	border-radius: 9px;

	background: #f4f7ff;
}

.zire-managed-evidence-card__comparison > div > span {
	width: 31px;
	height: 31px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 7px;

	background: #eef1f5;

	color: #758091;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-evidence-card__comparison strong,
.zire-managed-evidence-card__comparison small {
	display: block;
}

.zire-managed-evidence-card__comparison strong {
	font-size: 12px;
}

.zire-managed-evidence-card__comparison small {
	margin-top: 2px;

	color: #8993a2;

	font-size: 12px;
}

.zire-managed-evidence-card__comparison > div > b {
	color: #315efb;

	font-size: 13px;
}


/* VISIBILITY GAP */

.zire-managed-evidence-card__gap {
	margin: 14px 18px;

	padding: 13px;

	border: 1px solid #e2e7ef;
	border-radius: 9px;

	background: #fafbfe;
}

.zire-managed-evidence-card__gap span {
	display: block;

	color: #8993a2;

	font-size: 12px;
	text-transform: uppercase;
}

.zire-managed-evidence-card__gap strong {
	display: block;

	margin-top: 3px;

	font-size: 13px;
}

.zire-managed-evidence-card__gap ul {
	display: grid;
	gap: 7px;

	margin: 11px 0 0;
	padding: 0;

	list-style: none;
}

.zire-managed-evidence-card__gap li {
	position: relative;

	padding-left: 17px;

	color: #748091;

	font-size: 12px;
}

.zire-managed-evidence-card__gap li::before {
	content: "✓";

	position: absolute;
	left: 0;

	color: #315efb;

	font-weight: 850;
}


/* MANAGED ACTION */

.zire-managed-evidence-card__action {
	display: grid;
	grid-template-columns: 36px 1fr auto;
	align-items: center;
	gap: 9px;

	margin: 0 18px 17px;

	padding: 11px;

	border-radius: 9px;

	background:
		linear-gradient(
			135deg,
			#eef3ff,
			#f5f0ff
		);
}

.zire-managed-evidence-card__action > span {
	width: 35px;
	height: 35px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #fff;

	color: #7657e8;
}

.zire-managed-evidence-card__action small,
.zire-managed-evidence-card__action strong {
	display: block;

	font-size: 12px;
}

.zire-managed-evidence-card__action small {
	color: #7657e8;
}

.zire-managed-evidence-card__action strong {
	margin-top: 3px;
}

.zire-managed-evidence-card__action > b {
	padding: 5px 7px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 12px;
}


/* EVIDENCE COPY */

.zire-managed-evidence__copy h2 {
	max-width: 630px;
}

.zire-managed-evidence__copy > p {
	max-width: 590px;

	margin: 19px 0 0;

	color: #69768a;

	font-size: 14px;
	line-height: 1.72;
}


.zire-managed-evidence__points {
	display: grid;
	gap: 8px;

	margin-top: 26px;
}

.zire-managed-evidence__points > div {
	display: grid;
	grid-template-columns: 40px 1fr;
	align-items: center;
	gap: 11px;

	padding: 11px;

	border: 1px solid #dfe5ee;
	border-radius: 10px;

	background:
		linear-gradient(
			135deg,
			#fbfcff,
			#f8faff
		);
}

.zire-managed-evidence__points > div > span {
	width: 39px;
	height: 39px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color: #315efb;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-evidence__points strong,
.zire-managed-evidence__points small {
	display: block;
}

.zire-managed-evidence__points strong {
	font-size: 13px;
}

.zire-managed-evidence__points small {
	margin-top: 2px;

	color: #8993a2;

	font-size: 12px;
}


/* =========================================================
   AFTER YOU JOIN
   ========================================================= */

.zire-managed-after {
	padding: 75px 24px 110px;

	background:
		linear-gradient(
			180deg,
			#fff,
			#f8faff 70%,
			#fff
		);
}


.zire-managed-after__card {
	position: relative;

	overflow: hidden;

	padding: 40px;

	border: 1.5px solid transparent;
	border-radius: 18px;

	background:
		linear-gradient(
			135deg,
			#fafbff,
			#f5f2ff
		) padding-box,
		linear-gradient(
			135deg,
			#cbd7ff,
			#d8d0ff,
			#cabaff
		) border-box;

	box-shadow: 0 22px 55px rgba(34,48,80,.065);
}

.zire-managed-after__card::before {
	content: "";

	position: absolute;

	right: -150px;
	top: -170px;

	width: 420px;
	height: 420px;

	border-radius: 50%;

	background: rgba(49,94,251,.10);

	filter: blur(80px);
}


.zire-managed-after__copy {
	position: relative;
	z-index: 1;

	max-width: 790px;

	margin: 0 auto;

	text-align: center;
}

.zire-managed-after__copy .zire-managed-eyebrow {
	margin: 0 auto;
}

.zire-managed-after__copy h2 {
	margin-left: auto;
	margin-right: auto;
}

.zire-managed-after__copy p {
	max-width: 680px;

	margin: 17px auto 0;

	color: #69768a;

	font-size: 13px;
	line-height: 1.7;
}


/* STEPS */

.zire-managed-after__steps {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: 1fr 70px 1fr 70px 1fr;
	align-items: center;

	max-width: 920px;

	margin: 35px auto 0;
}

.zire-managed-after__steps > div {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 10px;

	padding: 12px;

	border: 1px solid #dfe4ec;
	border-radius: 10px;

	background: rgba(255,255,255,.9);
}

.zire-managed-after__steps > div > span {
	width: 38px;
	height: 38px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: #eef1f5;

	color: #758091;

	font-size: 12px;
	font-weight: 850;
}

.zire-managed-after__steps .is-complete > span {
	background: #eaf8f2;
	color: #07885f;
}

.zire-managed-after__steps .is-current {
	border-color: #bdcaff;

	background: #f5f7ff;
}

.zire-managed-after__steps .is-current > span {
	background: #e9efff;

	color: #315efb;
}

.zire-managed-after__steps small,
.zire-managed-after__steps strong {
	display: block;
}

.zire-managed-after__steps small {
	color: #8993a2;

	font-size: 12px;
}

.zire-managed-after__steps strong {
	margin-top: 2px;

	font-size: 12px;
}

.zire-managed-after__steps > i {
	height: 2px;

	background:
		linear-gradient(
			90deg,
			#c4ceff,
			#d5caf9
		);
}


/* PROMPT NOTE */

.zire-managed-after__prompt-note {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: 34px 1fr;
	gap: 9px;
	align-items: center;

	max-width: 690px;

	margin: 22px auto 0;

	padding: 10px;

	border: 1px solid #dce4ff;
	border-radius: 9px;

	background: rgba(255,255,255,.75);
}

.zire-managed-after__prompt-note > span {
	width: 33px;
	height: 33px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background: #edf2ff;

	color: #315efb;
}

.zire-managed-after__prompt-note p {
	margin: 0;

	color: #68768a;

	font-size: 12px;
	line-height: 1.55;
}


/* =========================================================
   PREFER TO SPEAK FIRST
   ========================================================= */

.zire-managed-specialist {
	padding: 45px 24px 115px;

	background: #fff;
}


.zire-managed-specialist__card {
	display: grid;
	grid-template-columns: 1.18fr .82fr;
	gap: 48px;
	align-items: center;

	padding: 40px;

	border: 1.5px solid transparent;
	border-radius: 18px;

	background:
		linear-gradient(
			135deg,
			#f9faff,
			#f5f1ff
		) padding-box,
		linear-gradient(
			135deg,
			#d2dcff,
			#d9d0ff,
			#ccbfff
		) border-box;

	box-shadow: 0 22px 58px rgba(34,48,80,.07);
}


.zire-managed-specialist__copy h2 {
	max-width: 660px;
}

.zire-managed-specialist__copy > p {
	max-width: 660px;

	margin: 17px 0 0;

	color: #69768a;

	font-size: 13px;
	line-height: 1.7;
}


.zire-managed-specialist__points {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;

	margin-top: 21px;
}

.zire-managed-specialist__points span {
	padding: 6px 9px;

	border: 1px solid #dbe2ec;
	border-radius: 999px;

	background: rgba(255,255,255,.82);

	color: #617084;

	font-size: 12px;
}


/* SPEAK CARD */

.zire-managed-specialist__action {
	position: relative;

	overflow: hidden;

	padding: 25px;

	border: 1px solid #d9e1ee;
	border-radius: 14px;

	background: #fff;

	box-shadow: 0 16px 38px rgba(34,48,80,.07);
}

.zire-managed-specialist__action::before {
	content: "";

	position: absolute;

	right: -70px;
	top: -80px;

	width: 170px;
	height: 170px;

	border-radius: 50%;

	background: rgba(49,94,251,.09);

	filter: blur(50px);
}


.zire-managed-specialist__action-top {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: space-between;
}

.zire-managed-specialist__icon {
	width: 45px;
	height: 45px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 11px;

	background:
		linear-gradient(
			135deg,
			#edf2ff,
			#f0eaff
		);

	color: #315efb;

	font-size: 13px;
}

.zire-managed-specialist__action-top > span {
	color: #315efb;

	font-size: 12px;
	font-weight: 850;
	text-transform: uppercase;
}

.zire-managed-specialist__action > strong {
	position: relative;

	display: block;

	margin-top: 18px;

	font-size: 18px;
	font-weight: 800;
}

.zire-managed-specialist__action > p {
	position: relative;

	margin: 8px 0 19px;

	color: #748091;

	font-size: 13px;
	line-height: 1.6;
}

.zire-managed-specialist__action .zire-managed-button {
	position: relative;

	width: 100%;
}


/* =========================================================
   FAQ + FINAL CTA TYPOGRAPHY
   ========================================================= */

.zire-platform-faq__heading h2,
.zire-platform-final__copy h2 {
	font-weight: 850 !important;
	letter-spacing: -.045em !important;
}

.zire-platform-faq__heading h2 {
	font-size: clamp(38px,3.7vw,54px) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1100px) {

	.zire-managed-hero__inner,
	.zire-managed-included__layout,
	.zire-managed-evidence__layout {
		grid-template-columns: 1fr;
		gap: 50px;
	}


	.zire-managed-hero__copy {
		max-width: 760px;
	}


	.zire-managed-package-card {
		max-width: 680px;
		margin: 0 auto;
	}


	.zire-managed-timeline {
		grid-template-columns: repeat(2,1fr);
		gap: 22px;
	}


	.zire-managed-timeline__line {
		display: none;
	}


	.zire-managed-signup__layout {
		grid-template-columns: 1fr;
	}


	/*
	 * Sticky disabled once the card moves below the form.
	 */
	.zire-managed-signup-summary {
		position: relative;
		top: auto;
	}


	.zire-managed-why-grid {
		grid-template-columns: repeat(2,1fr);
	}


	.zire-managed-specialist__card {
		grid-template-columns: 1fr;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 760px) {

	.zire-managed-hero {
		padding: 82px 18px 90px;
	}


	.zire-managed-hero__copy > p {
		font-size: 14px;
	}


	.zire-managed-package-card__features {
		grid-template-columns: 1fr;
	}


	.zire-managed-package-card__features > div:last-child {
		grid-column: auto;
	}


	.zire-managed-month,
	.zire-managed-signup,
	.zire-managed-included,
	.zire-managed-why,
	.zire-managed-evidence,
	.zire-managed-after,
	.zire-managed-specialist {
		padding-left: 18px;
		padding-right: 18px;
	}


	.zire-managed-heading h2,
	.zire-managed-evidence__copy h2,
	.zire-managed-included__copy h2,
	.zire-managed-specialist__copy h2,
	.zire-managed-after__copy h2 {
		font-size: clamp(34px,9vw,46px);
	}


	.zire-managed-timeline,
	.zire-managed-why-grid {
		grid-template-columns: 1fr;
	}


	.zire-managed-timeline__card {
		min-height: auto;
	}


	.zire-managed-form__grid {
		grid-template-columns: 1fr;
	}


	.zire-managed-form label.is-full {
		grid-column: auto;
	}


	.zire-managed-form {
		padding: 21px;
	}


	.zire-managed-included__grid {
		grid-template-columns: 1fr;
	}


	.zire-managed-included__grid .is-wide {
		grid-column: auto;
	}


	.zire-managed-after__steps {
		grid-template-columns: 1fr;
		gap: 8px;
	}


	.zire-managed-after__steps > i {
		width: 2px;
		height: 20px;

		margin: 0 auto;
	}

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 560px) {

	.zire-managed-hero__actions {
		display: grid;
		grid-template-columns: 1fr;
	}


	.zire-managed-hero__actions a {
		width: 100%;
		box-sizing: border-box;
	}


	.zire-managed-button {
		width: 100%;
	}


	.zire-managed-package-card__head {
		flex-direction: column;
	}


	.zire-managed-package-card__price {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}


	.zire-managed-prompt-tabs,
	.zire-managed-prompt-recommend {
		grid-template-columns: 1fr;
	}


	.zire-managed-included__grid .is-wide {
		grid-template-columns: 40px 1fr;
	}


	.zire-managed-included__grid .is-wide > b {
		grid-column: 2;
		justify-self: start;
	}


	.zire-managed-evidence-card__action {
		grid-template-columns: 36px 1fr;
	}


	.zire-managed-evidence-card__action > b {
		grid-column: 2;
		justify-self: start;
	}


	.zire-managed-specialist__card,
	.zire-managed-after__card {
		padding: 26px 20px;
	}

}

/* =========================================================
   HERO — MATCH HOMEPAGE TYPOGRAPHY/RHYTHM
   ========================================================= */

/* Give the text side roughly the same proportions as home */
.zire-managed-hero__inner {
	grid-template-columns: 1.08fr .92fr;
	gap: 68px;
}


/* Match the tighter homepage headline shape */
.zire-managed-hero__copy {
	max-width: 660px;
}

.zire-managed-hero__copy h1 {
	max-width: 660px;

	/* slightly tighter like homepage */
	line-height: 1.01;
	letter-spacing: -.06em;
}


/* Keep the blue line tucked closer to the black text */
.zire-managed-hero__copy h1 span {
	margin-top: 0;
}


/* Match homepage paragraph width / spacing */
.zire-managed-hero__copy > p {
	max-width: 650px;
	margin-top: 28px;

	color: #58657a;
	font-size: 16px;
	line-height: 1.72;
}


/* Match spacing into buttons */
.zire-managed-hero__actions {
	margin-top: 30px;
}


/* Slightly tighter supporting row */
.zire-managed-hero__meta {
	margin-top: 17px;
}

.zire-footer__brand .zire-brand__logo {
	width: 155px;
	height: auto;
}

/* =========================================================
   FOOTER PLATFORM LOGOS
   ========================================================= */

.zire-footer__platforms {
	position: relative;
	z-index: 1;

	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 50px;

	padding-top: 27px;
	padding-bottom: 27px;
}


.zire-footer__platform-label {
	flex: 0 0 auto;

	color: rgba(210,220,240,.48);

	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}


.zire-footer__platform-logos {
	display: flex !important;
	flex: 1 1 auto;

	align-items: center;
	justify-content: flex-end;

	gap: 30px;

	flex-wrap: nowrap !important;
	white-space: nowrap;
}


.zire-footer__platform-logos img {
	display: block !important;

	max-width: none !important;

	object-fit: contain;

	filter: brightness(0) invert(1);
	opacity: .58;
}


/* Individual optical sizing */

.zire-footer__platform-logo--openai {
	height: 24px !important;
	
}

.zire-footer__platform-logo--gemini {
	height: 24px !important;
	width: 90px;
}

.zire-footer__platform-logo--claude {
	height: 27px !important;
	width: 90px;
}

.zire-footer__platform-logo--perplexity {
	height: 24px !important;
	margin-bottom: -4px;
}

.zire-footer__platform-logo--grok {
	height: 25px !important;
	margin-bottom: -4px;
}


/* Subtle hover */

.zire-footer__platform-logo {
	transition:
		opacity .2s ease,
		transform .2s ease;
}

.zire-footer__platform-logo:hover {
	opacity: .9;
	transform: translateY(-1px);
}

.zire-footer__socials {
	display: flex;
	align-items: center;
	gap: 10px;
}

.zire-footer__socials a {
	width: 34px;
	height: 34px;

	display: flex;
	align-items: center;
	justify-content: center;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 8px;

	background: rgba(255,255,255,.035);

	color: rgba(255,255,255,.48);

	transition:
		color .2s ease,
		background .2s ease,
		border-color .2s ease,
		transform .2s ease;
}

.zire-footer__socials svg {
	width: 15px;
	height: 15px;

	fill: currentColor;
}

.zire-footer__socials a:hover {
	color: #fff;

	border-color: rgba(143,161,255,.32);

	background: rgba(91,112,255,.12);

	transform: translateY(-2px);
}

/* =========================================================
   LUCIDE ICONS
   ========================================================= */

.zire-lucide-icon {
	display: block;

	width: 16px;
	height: 16px;

	flex: 0 0 16px;

	color: currentColor;

	stroke-width: 1.8;
}

/* =========================================================
   REGISTER — PLAN CHOOSER
   STACKED VERSION
   ========================================================= */

.zire-auth-plan-options {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;

	width: 100%;

	margin-top: 24px;
	margin-bottom: 16px;
}


/* =========================================================
   PLAN CARD
   ========================================================= */

.zire-auth-plan-option {
	position: relative;

	display: block;

	width: 100%;
	min-height: 0;

	padding: 15px 16px;

	border: 1px solid #dde3ed;
	border-radius: 12px;

	background: #fff;

	color: inherit;
	text-decoration: none;

	box-sizing: border-box;

	box-shadow:
		0 7px 22px rgba(30,42,70,.04);

	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}


.zire-auth-plan-option:hover {
	transform: translateY(-2px);

	border-color: #aebcff;

	box-shadow:
		0 12px 30px rgba(42,58,100,.08);
}


/* =========================================================
   PRO
   ========================================================= */

.zire-auth-plan-option--featured {
	border: 1.5px solid transparent;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#315efb,
			#7657e8
		) border-box;

	box-shadow:
		0 10px 28px rgba(49,94,251,.07);
}


/* =========================================================
   MANAGED
   ========================================================= */

.zire-auth-plan-option--managed {
	border-color: #ddd8fa;

	background:
		linear-gradient(
			135deg,
			#fbfcff,
			#f7f4ff
		);
}


/* =========================================================
   TOP ROW — PLAN + PRICE
   ========================================================= */

.zire-auth-plan-option__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}


.zire-auth-plan-option__top > span {
	display: block;

	color: #315efb;

	font-size: 13px;
	font-weight: 850;

	letter-spacing: .04em;
	text-transform: uppercase;
}


.zire-auth-plan-option__top > strong {
	display: flex;
	align-items: baseline;
	gap: 3px;

	margin: 0;

	color: #171d27;

	font-size: 22px;
	font-weight: 900;

	letter-spacing: -.04em;
}


.zire-auth-plan-option__top > strong small {
	color: #8b96a8;

	font-size: 13px;
	font-weight: 650;

	letter-spacing: 0;
}


/* Give the Pro badge enough room */
.zire-auth-plan-option--featured .zire-auth-plan-option__top {
	padding-right: 105px;
}


/* =========================================================
   MOST POPULAR BADGE
   ========================================================= */

.zire-auth-plan-option__badge {
	position: absolute;

	right: 14px;
	top: 13px;

	padding: 5px 8px;

	border-radius: 999px;

	background:
		linear-gradient(
			135deg,
			#315efb,
			#7657e8
		);

	color: #fff;

	font-size: 13px;
	font-weight: 800;

	line-height: 1.2;
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.zire-auth-plan-option > p {
	margin: 8px 0 11px;

	color: #758196;

	font-size: 12px;
	line-height: 1.5;
}


/* =========================================================
   BOTTOM ROW
   ========================================================= */

.zire-auth-plan-option__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;

	padding-top: 10px;

	border-top: 1px solid #edf0f4;
}


.zire-auth-plan-option__footer > span {
	color: #000;

	font-size: 13px;
}


.zire-auth-plan-option__footer > b {
	color: #315efb;

	font-size: 12px;
	font-weight: 850;
}


/* =========================================================
   COMPARE PLANS BUTTON
   ========================================================= */

.zire-auth-submit--pricing {
	margin-top: 4px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {

	.zire-auth-plan-options {
		grid-template-columns: 1fr;
	}


	.zire-auth-plan-option {
		padding: 14px;
	}


	.zire-auth-plan-option--featured .zire-auth-plan-option__top {
		padding-right: 0;
		padding-top: 28px;
	}


	.zire-auth-plan-option__badge {
		left: 14px;
		right: auto;
		top: 10px;
	}

}

.zire-auth-logo__image {
	display: block;
	width: 120px;
	height: auto;
}

/* =========================================================
   ZIRE LEARN ARTICLE
   PAGE-SPECIFIC CSS ONLY

   Reuses existing:
   - zire-platform-intro
   - zire-managed-eyebrow
   - zire-card
   - zire-provider-main
   - zire-platform-more__grid
   - zire-platform-feature-card
   - zire-platform-mini
   - zire-provider-platform-card
   - zire-platform-monitor-dark
   - zire-platform-faq
   - existing reveal JS
   ========================================================= */


/* =========================================================
   ANCHOR OFFSET
   ========================================================= */

.zire-article-section,
#zire-aeo,
#aeo-faq {
	scroll-margin-top: 105px;
}



/* =========================================================
   HERO
   ========================================================= */

.zire-article-hero {
	padding-top: 125px;
	padding-bottom: 105px;
}


.zire-article-hero__grid {
	display: grid;

	grid-template-columns:
		minmax(0,1.08fr)
		minmax(390px,.72fr);

	align-items: center;

	gap: 80px;
}


.zire-article-hero__copy {
	position: relative;

	z-index: 2;

	max-width: 780px;
}


.zire-article-hero h1 {
	max-width: 760px;

	margin: 20px 0 22px;

	text-align: left;

	font-size:
		clamp(
			52px,
			4.8vw,
			72px
		);

	line-height: .98;
}


.zire-article-hero h1 span {
	margin-top: 3px;

	text-align: left;
}


.zire-article-hero__lead {
	max-width: 720px;

	margin: 0;

	color: #687386;

	font-size: 17px;
	line-height: 1.72;
}



/* =========================================================
   BREADCRUMB
   ========================================================= */

.zire-article-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;

	gap: 7px;

	margin-bottom: 18px;

	color: #939cab;

	font-size: 13px;
}


.zire-article-breadcrumb a {
	color: #315efb;

	font-weight: 750;
}


.zire-article-breadcrumb span:last-child {
	color: #7a8596;
}



/* =========================================================
   ARTICLE META
   ========================================================= */

.zire-article-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;

	gap: 11px 18px;

	margin-top: 27px;
}


.zire-article-meta > span {
	display: flex;
	align-items: center;

	gap: 6px;

	color: #7d8796;

	font-size: 13px;
}


.zire-article-meta svg {
	width: 15px;
	height: 15px;

	color: #315efb;

	stroke-width: 1.8;
}


.zire-article-meta strong {
	color: #505b6e;

	font-weight: 750;
}



/* =========================================================
   QUICK ANSWER
   ========================================================= */

.zire-article-quick-answer {
	position: relative;

	z-index: 2;

	padding: 25px;

	border: 1.5px solid transparent;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#8ca5ff,
			#b49dff,
			#7657e8
		) border-box;

	box-shadow:
		0 26px 65px
		rgba(35,50,86,.10);
}


.zire-article-quick-answer::before {
	content: "";

	position: absolute;

	z-index: -1;

	width: 330px;
	height: 250px;

	right: -90px;
	top: -85px;

	border-radius: 50%;

	background:
		rgba(49,94,251,.14);

	filter:
		blur(80px);

	pointer-events: none;
}


.zire-article-quick-answer__top {
	display: flex;
	align-items: center;

	gap: 12px;

	margin-bottom: 19px;
}


.zire-article-quick-answer__icon {
	width: 42px;
	height: 42px;

	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 auto;

	border-radius: 11px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color: #315efb;
}


.zire-article-quick-answer__icon svg {
	width: 19px;
	height: 19px;
}


.zire-article-quick-answer__top small,
.zire-article-quick-answer__top strong {
	display: block;
}


.zire-article-quick-answer__top small {
	margin-bottom: 2px;

	color: #315efb;

	font-size: 13px;
	font-weight: 800;

	letter-spacing: .05em;

	text-transform: uppercase;
}


.zire-article-quick-answer__top strong {
	color: #222a36;

	font-size: 15px;
}


.zire-article-quick-answer > p {
	margin: 0 0 13px;

	color: #626e81;

	font-size: 12px;
	line-height: 1.65;
}


.zire-article-quick-answer > p strong {
	color: #323c4e;
}


.zire-article-quick-answer__summary {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 7px;

	margin-top: 18px;
}


.zire-article-quick-answer__summary > div {
	display: flex;
	align-items: center;

	gap: 7px;

	padding: 9px 10px;

	border-radius: 8px;

	background:
		#f7f8fc;

	color: #596579;

	font-size: 13px;
	font-weight: 700;
}


.zire-article-quick-answer__summary svg {
	width: 14px;
	height: 14px;

	color: #315efb;
}



/* =========================================================
   IN THIS GUIDE
   ========================================================= */

.zire-article-guide {
	position: relative;

	z-index: 20;

	width: 100vw;

	margin-left:
		calc(50% - 50vw);

	margin-right:
		calc(50% - 50vw);

	border-top:
		1px solid
		#edf0f4;

	border-bottom:
		1px solid
		#e8ecf2;

	background:
		rgba(255,255,255,.96);

	box-shadow:
		0 10px 30px
		rgba(30,43,74,.035);
}


.zire-article-guide__inner {
	display: flex;
	align-items: center;

	gap: 20px;

	min-height: 78px;
}


.zire-article-guide__inner > strong {
	flex: 0 0 auto;

	color: #222a35;

	font-size: 12px;
}


.zire-article-guide__inner > div {
	display: flex;
	align-items: center;
	flex-wrap: wrap;

	gap: 7px;
}


.zire-article-guide a {
	padding:
		7px
		10px;

	border:
		1px solid
		#e1e6ee;

	border-radius:
		999px;

	background:
		#f9fafc;

	color:
		#687386;

	font-size:
		13px;

	font-weight:
		700;

	transition:
		color .18s ease,
		border-color .18s ease,
		background .18s ease;
}


.zire-article-guide a:hover {
	border-color:
		#c7d3ff;

	background:
		#f3f6ff;

	color:
		#315efb;
}



/* =========================================================
   ARTICLE MAIN
   ========================================================= */

.zire-article-main {
	padding-top: 100px;
	padding-bottom: 115px;
}


.zire-article-layout {
	position: relative;
	z-index: 1;

	display: grid;

	grid-template-columns:
		minmax(0,850px)
		minmax(260px,310px);

	align-items: start;

	justify-content: center;

	gap: 78px;
}


.zire-article-content {
	min-width: 0;
}



/* =========================================================
   ARTICLE TYPOGRAPHY
   ========================================================= */

.zire-article-section + .zire-article-section {
	margin-top: 95px;
}


.zire-article-section__eyebrow {
	display: flex;
	align-items: center;

	gap: 10px;

	margin-bottom: 18px;

	color: #315efb;

	font-size: 13px;
	font-weight: 850;

	letter-spacing: .06em;

	text-transform: uppercase;
}


.zire-article-section__eyebrow > span {
	min-width: 31px;
	height: 31px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding: 0 7px;

	border:
		1px solid
		#d9e2ff;

	border-radius:
		9px;

	background:
		linear-gradient(
			145deg,
			#f7f9ff,
			#f1f4ff
		);

	color:
		#315efb;

	font-size:
		13px;

	box-sizing:
		border-box;
}


.zire-article-section__eyebrow svg {
	width: 15px;
	height: 15px;
}


.zire-article-section h2 {
	max-width: 810px;

	margin:
		0
		0
		22px;

	color:
		#141a24;

	font-size:
		clamp(
			36px,
			3.3vw,
			49px
		);

	font-weight:
		800;

	line-height:
		1.05;

	letter-spacing:
		-.045em;
}


.zire-article-section > p {
	margin:
		0
		0
		20px;

	color:
		#5f6c7f;

	font-size:
		15px;

	line-height:
		1.78;
}


.zire-article-section > p:last-child {
	margin-bottom: 0;
}


.zire-article-section > p a {
	color:
		#315efb;

	font-weight:
		750;

	text-decoration:
		underline;

	text-decoration-color:
		rgba(49,94,251,.24);

	text-underline-offset:
		3px;
}


.zire-article-lead {
	color: #404c5f !important;

	font-size: 17px !important;

	line-height: 1.72 !important;
}



/* =========================================================
   QUESTION GRID
   ========================================================= */

.zire-article-question-grid {
	display: grid;

	grid-template-columns:
		1fr
		1fr;

	gap: 11px;

	margin:
		30px
		0;
}


.zire-article-question-grid > div {
	padding:
		18px;
}


.zire-article-question-grid > div > span {
	width: 38px;
	height: 38px;

	display: flex;
	align-items: center;
	justify-content: center;

	margin-bottom:
		15px;

	border-radius:
		10px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color:
		#315efb;
}


.zire-article-question-grid svg {
	width: 17px;
	height: 17px;
}


.zire-article-question-grid strong {
	display: block;

	color: #222a35;

	font-size: 14px;
}


.zire-article-question-grid p {
	margin:
		7px
		0
		0;

	color: #707b8c;

	font-size: 12px;

	line-height: 1.55;
}



/* =========================================================
   DEFINITION BOX
   ========================================================= */

.zire-article-definition {
	display: grid;

	grid-template-columns:
		48px
		1fr;

	gap: 14px;

	margin-top:
		30px;

	padding:
		20px;

	border:
		1px solid
		#dbe4ff;

	border-radius:
		14px;

	background:
		linear-gradient(
			145deg,
			#f5f8ff,
			#faf9ff
		);
}


.zire-article-definition > span {
	width: 46px;
	height: 46px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius:
		11px;

	background:
		#fff;

	color:
		#315efb;

	box-shadow:
		0 8px 22px
		rgba(35,50,86,.07);
}


.zire-article-definition svg {
	width: 20px;
	height: 20px;
}


.zire-article-definition strong {
	display: block;

	margin-bottom:
		5px;

	color:
		#293240;

	font-size:
		14px;
}


.zire-article-definition p {
	margin: 0;

	color:
		#626f81;

	font-size:
		12px;

	line-height:
		1.65;
}



/* =========================================================
   COMPARISON TABLE
   ========================================================= */

.zire-article-table-wrap {
	margin:
		30px
		0;

	overflow-x:
		auto;

	border:
		1px solid
		#e0e5ed;

	border-radius:
		14px;

	background:
		#fff;

	box-shadow:
		0 15px 35px
		rgba(34,48,80,.045);
}


.zire-article-compare-table {
	width: 100%;

	min-width: 700px;

	border-collapse:
		collapse;
}


.zire-article-compare-table th,
.zire-article-compare-table td {
	padding:
		15px
		16px;

	border-bottom:
		1px solid
		#e8ecf1;

	text-align:
		left;

	vertical-align:
		top;
}


.zire-article-compare-table th {
	background:
		#f8f9fc;

	color:
		#303948;

	font-size:
		12px;

	font-weight:
		850;
}


.zire-article-compare-table td {
	color:
		#667286;

	font-size:
		12px;

	line-height:
		1.5;
}


.zire-article-compare-table td:first-child {
	color:
		#303948;

	font-weight:
		750;
}


.zire-article-compare-table .is-highlight {
	background:
		#f3f6ff;
}


.zire-article-compare-table th.is-highlight {
	color:
		#315efb;
}


.zire-article-compare-table tbody tr:last-child td {
	border-bottom: 0;
}



/* =========================================================
   INFO BOX
   ========================================================= */

.zire-article-info {
	display: grid;

	grid-template-columns:
		42px
		1fr;

	gap:
		13px;

	margin:
		29px
		0;

	padding:
		18px;

	border:
		1px solid
		#e1e6ef;

	border-radius:
		13px;

	background:
		#fff;
}


.zire-article-info > span {
	width:
		40px;

	height:
		40px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		10px;

	background:
		#f0f3ff;

	color:
		#315efb;
}


.zire-article-info svg {
	width:
		18px;

	height:
		18px;
}


.zire-article-info strong {
	display:
		block;

	margin-bottom:
		5px;

	color:
		#293240;

	font-size:
		13px;
}


.zire-article-info p {
	margin:
		0;

	color:
		#687386;

	font-size:
		12px;

	line-height:
		1.65;
}


.zire-article-info a {
	display:
		inline-flex;

	align-items:
		center;

	gap:
		6px;

	margin-top:
		9px;

	color:
		#315efb;

	font-size:
		13px;

	font-weight:
		800;
}


.zire-article-info a svg {
	width:
		13px;

	height:
		13px;
}


.zire-article-info--blue {
	border-color:
		#d9e2ff;

	background:
		#f7f9ff;
}


.zire-article-info--green {
	border-color:
		#d7eee5;

	background:
		#f5fbf8;
}


.zire-article-info--green > span {
	background:
		#e8f8f1;

	color:
		#07885f;
}



/* =========================================================
   HOW AEO WORKS — PROCESS
   ========================================================= */

.zire-article-process {
	display: grid;

	grid-template-columns:
		repeat(
			5,
			1fr
		);

	gap:
		8px;

	margin:
		31px
		0;
}


.zire-article-process > div {
	position:
		relative;

	min-width:
		0;

	padding:
		15px
		13px;

	border:
		1px solid
		#e1e6ee;

	border-radius:
		12px;

	background:
		#fff;
}


.zire-article-process > div > span {
	display:
		block;

	margin-bottom:
		13px;

	color:
		#9ba4b1;

	font-size:
		13px;

	font-weight:
		800;
}


.zire-article-process svg {
	width:
		19px;

	height:
		19px;

	margin-bottom:
		13px;

	color:
		#315efb;
}


.zire-article-process strong {
	display:
		block;

	color:
		#2c3542;

	font-size:
		12px;

	line-height:
		1.35;
}


.zire-article-process p {
	margin:
		7px
		0
		0;

	color:
		#788394;

	font-size:
		13px;

	line-height:
		1.5;
}



/* =========================================================
   AEO PRINCIPLE CARDS
   Existing feature cards do most of the work
   ========================================================= */

.zire-article-principles {
	margin:
		31px
		0;
}


.zire-article-principles
.zire-platform-feature-card {
	min-height:
		300px;
}


.zire-article-principles
.zire-platform-feature-card__icon svg {
	width:
		18px;

	height:
		18px;
}


.zire-article-principles
.zire-platform-mini--topics > span {
	font-size:
		13px;
}



/* =========================================================
   BEFORE / AFTER EXAMPLE
   ========================================================= */

.zire-article-example {
	margin:
		32px
		0;

	overflow:
		hidden;

	border:
		1px solid
		#e1e6ee;

	border-radius:
		15px;

	background:
		#fff;

	box-shadow:
		0 16px 40px
		rgba(35,49,82,.05);
}


.zire-article-example__head {
	padding:
		15px
		18px;

	border-bottom:
		1px solid
		#e8ecf1;
}


.zire-article-example__head > div {
	display:
		flex;

	align-items:
		center;

	gap:
		10px;
}


.zire-article-example__head span {
	width:
		36px;

	height:
		36px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		9px;

	background:
		#edf2ff;

	color:
		#315efb;
}


.zire-article-example__head svg {
	width:
		16px;

	height:
		16px;
}


.zire-article-example__head small,
.zire-article-example__head strong {
	display:
		block;
}


.zire-article-example__head small {
	color:
		#8993a2;

	font-size:
		13px;
}


.zire-article-example__head strong {
	margin-top:
		2px;

	color:
		#28313d;

	font-size:
		12px;
}


.zire-article-example__grid {
	display:
		grid;

	grid-template-columns:
		1fr
		1fr;
}


.zire-article-example__grid > div {
	padding:
		21px;
}


.zire-article-example__grid > div:first-child {
	border-right:
		1px solid
		#e8ecf1;
}


.zire-article-example__grid > div > span {
	display:
		inline-flex;

	padding:
		4px
		7px;

	border-radius:
		999px;

	font-size:
		13px;

	font-weight:
		800;
}


.zire-article-example__grid .is-before > span {
	background:
		#fff0f0;

	color:
		#b64949;
}


.zire-article-example__grid .is-after > span {
	background:
		#eaf8f2;

	color:
		#07885f;
}


.zire-article-example__grid h3 {
	margin:
		13px
		0
		7px;

	color:
		#252e3a;

	font-size:
		16px;
}


.zire-article-example__grid p {
	margin:
		0;

	color:
		#687386;

	font-size:
		12px;

	line-height:
		1.65;
}


.zire-article-example__grid small {
	display:
		block;

	margin-top:
		13px;

	color:
		#929ba9;

	font-size:
		13px;
}



/* =========================================================
   BENEFITS
   ========================================================= */

.zire-article-benefits {
	display:
		grid;

	grid-template-columns:
		1fr
		1fr;

	gap:
		11px;

	margin:
		30px
		0;
}


.zire-article-benefits > div {
	padding:
		20px;
}


.zire-article-benefits > div > span {
	width:
		42px;

	height:
		42px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	margin-bottom:
		16px;

	border-radius:
		11px;

	background:
		linear-gradient(
			145deg,
			#edf2ff,
			#f2edff
		);

	color:
		#315efb;
}


.zire-article-benefits svg {
	width:
		18px;

	height:
		18px;
}


.zire-article-benefits h3 {
	margin:
		0;

	color:
		#25303c;

	font-size:
		16px;
}


.zire-article-benefits p {
	margin:
		8px
		0
		0;

	color:
		#717d8e;

	font-size:
		12px;

	line-height:
		1.6;
}



/* =========================================================
   PROVIDER CARDS
   Existing provider cards reused
   ========================================================= */

.zire-article-provider-grid {
	display:
		grid;

	grid-template-columns:
		repeat(
			3,
			minmax(0,1fr)
		);

	gap:
		11px;

	margin:
		30px
		0;
}


.zire-article-provider-grid
.zire-provider-platform-card {
	min-height:
		260px;
}


.zire-article-provider-grid
.zire-provider-platform-card > p,
.zire-article-provider-grid
.zire-provider-platform-card__link {
	font-size:
		13px;
}


.zire-article-google-logo img {
	width:
		34px !important;

	height:
		34px !important;
}



/* =========================================================
   SOURCE NOTE
   ========================================================= */

.zire-article-source-note {
	display:
		grid;

	grid-template-columns:
		44px
		1fr;

	gap:
		14px;

	margin-top:
		28px;

	padding:
		19px;

	border:
		1px solid
		#dde5f7;

	border-radius:
		14px;

	background:
		#f8faff;
}


.zire-article-source-note > div:first-child {
	width:
		42px;

	height:
		42px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		10px;

	background:
		#fff;

	color:
		#315efb;
}


.zire-article-source-note svg {
	width:
		17px;

	height:
		17px;
}


.zire-article-source-note strong {
	display:
		block;

	color:
		#293240;

	font-size:
		13px;
}


.zire-article-source-note p {
	margin:
		6px
		0
		11px;

	color:
		#687386;

	font-size:
		12px;

	line-height:
		1.6;
}


.zire-article-source-note
> div:last-child
> div {
	display:
		flex;

	flex-wrap:
		wrap;

	gap:
		7px;
}


.zire-article-source-note a {
	padding:
		5px
		8px;

	border:
		1px solid
		#dce4ff;

	border-radius:
		999px;

	background:
		#fff;

	color:
		#315efb;

	font-size:
		13px;

	font-weight:
		750;
}



/* =========================================================
   MEASUREMENT
   ========================================================= */

.zire-article-metrics {
	display:
		grid;

	grid-template-columns:
		repeat(
			3,
			1fr
		);

	gap:
		9px;

	margin:
		30px
		0;
}


.zire-article-metrics > div {
	padding:
		17px;
}


.zire-article-metrics > div > span {
	display:
		block;

	margin-bottom:
		9px;

	color:
		#315efb;

	font-size:
		13px;

	font-weight:
		850;

	text-transform:
		uppercase;
}


.zire-article-metrics strong {
	display:
		block;

	color:
		#28313d;

	font-size:
		14px;
}


.zire-article-metrics p {
	margin:
		7px
		0
		0;

	color:
		#737f90;

	font-size:
		13px;

	line-height:
		1.55;
}



/* =========================================================
   OFFICIAL REFERENCES
   ========================================================= */

.zire-article-reference-grid {
	display:
		grid;

	grid-template-columns:
		repeat(
			3,
			1fr
		);

	gap:
		9px;

	margin-top:
		25px;
}


.zire-article-reference-grid > a {
	position:
		relative;

	display:
		flex;

	flex-direction:
		column;

	min-height:
		150px;

	padding:
		17px;

	transition:
		transform .18s ease,
		border-color .18s ease;
}


.zire-article-reference-grid > a:hover {
	transform:
		translateY(-3px);

	border-color:
		#cbd6ff;
}


.zire-article-reference-grid span {
	color:
		#315efb;

	font-size:
		13px;

	font-weight:
		800;
}


.zire-article-reference-grid strong {
	max-width:
		190px;

	margin-top:
		8px;

	color:
		#303947;

	font-size:
		13px;

	line-height:
		1.4;
}


.zire-article-reference-grid svg {
	width:
		16px;

	height:
		16px;

	margin-top:
		auto;

	color:
		#315efb;
}



/* =========================================================
   SIDEBAR
   ========================================================= */

.zire-article-sidebar {
	min-width:
		0;
}


.zire-article-sidebar__sticky {
	position:
		sticky;

	top:
		115px;

	display:
		grid;

	gap:
		12px;
}


.zire-article-sidebar-card {
	padding:
		18px;
}


.zire-article-sidebar-card__head {
	display:
		flex;

	align-items:
		center;

	gap:
		9px;

	margin-bottom:
		14px;
}


.zire-article-sidebar-card__head > span {
	width:
		33px;

	height:
		33px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		9px;

	background:
		#edf2ff;

	color:
		#315efb;
}


.zire-article-sidebar-card__head svg {
	width:
		15px;

	height:
		15px;
}


.zire-article-sidebar-card__head strong {
	color:
		#293240;

	font-size:
		13px;
}


.zire-article-sidebar-card ul {
	display:
		grid;

	gap:
		9px;

	margin:
		0;

	padding:
		0;

	list-style:
		none;
}


.zire-article-sidebar-card li {
	position:
		relative;

	padding-left:
		17px;

	color:
		#6f7a8b;

	font-size:
		13px;

	line-height:
		1.55;
}


.zire-article-sidebar-card li::before {
	content:
		"✓";

	position:
		absolute;

	left:
		0;

	top:
		0;

	color:
		#07885f;

	font-weight:
		850;
}


.zire-article-sidebar-links {
	display:
		grid;

	gap:
		5px;
}


.zire-article-sidebar-links a {
	display:
		flex;

	align-items:
		center;

	justify-content:
		space-between;

	gap:
		10px;

	padding:
		9px
		10px;

	border-radius:
		8px;

	background:
		#f8f9fc;

	color:
		#586579;

	font-size:
		13px;

	font-weight:
		700;
}


.zire-article-sidebar-links a span {
	color:
		#315efb;
}



/* SIDEBAR CTA */

.zire-article-sidebar-cta {
	padding:
		20px;

	border-radius:
		15px;

	background:
		linear-gradient(
			145deg,
			#101827,
			#172444
		);

	box-shadow:
		0 20px 45px
		rgba(24,34,60,.13);
}


.zire-article-sidebar-cta > span {
	color:
		#9eafff;

	font-size:
		13px;

	font-weight:
		850;

	text-transform:
		uppercase;
}


.zire-article-sidebar-cta > strong {
	display:
		block;

	margin-top:
		9px;

	color:
		#fff;

	font-size:
		18px;

	line-height:
		1.15;
}


.zire-article-sidebar-cta > p {
	margin:
		10px
		0
		17px;

	color:
		rgba(255,255,255,.55);

	font-size:
		13px;

	line-height:
		1.55;
}


.zire-article-sidebar-cta > a {
	width:
		100%;

	min-height:
		43px;

	font-size:
		13px;
}



/* =========================================================
   ZIRE DARK SECTION
   Existing background inherited from
   .zire-platform-monitor-dark
   ========================================================= */

.zire-article-zire {
	padding-top:
		115px;

	padding-bottom:
		115px;
}


.zire-article-zire__features {
	display:
		grid;

	gap:
		7px;

	max-width:
		580px;
}


.zire-article-zire__features > a {
	display:
		grid;

	grid-template-columns:
		39px
		minmax(0,1fr)
		auto;

	align-items:
		center;

	gap:
		12px;

	padding:
		12px
		13px;

	border:
		1px solid
		rgba(255,255,255,.08);

	border-radius:
		11px;

	background:
		rgba(255,255,255,.04);

	transition:
		transform .18s ease,
		background .18s ease;
}


.zire-article-zire__features > a:hover {
	transform:
		translateX(4px);

	background:
		rgba(255,255,255,.07);
}


.zire-article-zire__features > a > svg {
	width:
		38px;

	height:
		38px;

	padding:
		10px;

	border-radius:
		9px;

	background:
		rgba(101,122,255,.14);

	color:
		#a8b7ff;

	box-sizing:
		border-box;
}


.zire-article-zire__features strong,
.zire-article-zire__features span {
	display:
		block;
}


.zire-article-zire__features strong {
	color:
		#fff;

	font-size:
		12px;
}


.zire-article-zire__features span {
	margin-top:
		2px;

	color:
		rgba(255,255,255,.46);

	font-size:
		13px;
}


.zire-article-zire__features b {
	color:
		#a8b7ff;

	font-size:
		14px;
}



/* =========================================================
   ZIRE PRODUCT VISUAL
   ========================================================= */

.zire-article-zire-visual {
	position:
		relative;
}


.zire-article-zire-visual::before {
	content:
		"";

	position:
		absolute;

	left:
		50%;

	top:
		50%;

	width:
		560px;

	height:
		420px;

	transform:
		translate(-50%,-50%);

	border-radius:
		50%;

	background:
		rgba(49,94,251,.20);

	filter:
		blur(95px);

	pointer-events:
		none;
}


.zire-article-zire-window {
	position:
		relative;

	z-index:
		1;

	padding:
		20px;

	border:
		1px solid
		rgba(162,178,255,.22);

	border-radius:
		18px;

	background:
		linear-gradient(
			145deg,
			rgba(255,255,255,.105),
			rgba(255,255,255,.05)
		);

	box-shadow:
		0 30px 75px
		rgba(0,0,0,.22);

	backdrop-filter:
		blur(12px);
}


.zire-article-zire-window__head {
	display:
		flex;

	align-items:
		flex-start;

	justify-content:
		space-between;

	gap:
		15px;

	padding-bottom:
		15px;

	border-bottom:
		1px solid
		rgba(255,255,255,.08);
}


.zire-article-zire-window__head span,
.zire-article-zire-window__head strong {
	display:
		block;
}


.zire-article-zire-window__head span {
	color:
		#9eafff;

	font-size:
		13px;

	font-weight:
		850;

	text-transform:
		uppercase;
}


.zire-article-zire-window__head strong {
	margin-top:
		3px;

	color:
		#fff;

	font-size:
		13px;
}


.zire-article-zire-window__head > b {
	padding:
		5px
		8px;

	border-radius:
		999px;

	background:
		rgba(80,204,159,.10);

	color:
		#75ddb5;

	font-size:
		13px;
}


.zire-article-zire-score {
	display:
		flex;

	align-items:
		center;

	justify-content:
		space-between;

	gap:
		25px;

	padding:
		27px
		6px
		23px;
}


.zire-article-zire-score > div:first-child > span {
	display:
		block;

	color:
		rgba(255,255,255,.45);

	font-size:
		13px;
}


.zire-article-zire-score > div:first-child > strong {
	display:
		block;

	margin-top:
		4px;

	color:
		#fff;

	font-size:
		34px;
}


.zire-article-zire-score small {
	color:
		rgba(255,255,255,.44);

	font-size:
		13px;
}


.zire-article-zire-score__ring {
	width:
		82px;

	height:
		82px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		50%;

	background:
		conic-gradient(
			#788dff 0 84%,
			rgba(255,255,255,.08) 84% 100%
		);

	position:
		relative;
}


.zire-article-zire-score__ring::before {
	content:
		"";

	position:
		absolute;

	inset:
		8px;

	border-radius:
		50%;

	background:
		#1b2546;
}


.zire-article-zire-score__ring span {
	position:
		relative;

	z-index:
		1;

	color:
		#fff;

	font-size:
		16px;

	font-weight:
		850;
}


.zire-article-zire-metrics {
	display:
		grid;

	grid-template-columns:
		repeat(
			3,
			1fr
		);

	gap:
		7px;
}


.zire-article-zire-metrics > div {
	padding:
		11px;

	border:
		1px solid
		rgba(255,255,255,.075);

	border-radius:
		9px;

	background:
		rgba(255,255,255,.04);
}


.zire-article-zire-metrics span,
.zire-article-zire-metrics strong {
	display:
		block;
}


.zire-article-zire-metrics span {
	color:
		rgba(255,255,255,.43);

	font-size:
		13px;
}


.zire-article-zire-metrics strong {
	margin-top:
		4px;

	color:
		#fff;

	font-size:
		15px;
}


.zire-article-zire-action {
	display:
		grid;

	grid-template-columns:
		36px
		1fr
		auto;

	align-items:
		center;

	gap:
		10px;

	margin-top:
		9px;

	padding:
		10px;

	border-radius:
		10px;

	background:
		#fff;
}


.zire-article-zire-action > span {
	width:
		35px;

	height:
		35px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		8px;

	background:
		#edf2ff;

	color:
		#315efb;
}


.zire-article-zire-action svg {
	width:
		15px;

	height:
		15px;
}


.zire-article-zire-action small,
.zire-article-zire-action strong {
	display:
		block;
}


.zire-article-zire-action small {
	color:
		#8d97a6;

	font-size:
		13px;
}


.zire-article-zire-action strong {
	margin-top:
		2px;

	color:
		#28313d;

	font-size:
		12px;
}


.zire-article-zire-action > b {
	color:
		#315efb;
}



/* =========================================================
   FAQ SMALL ARTICLE OVERRIDES
   ========================================================= */

.zire-article-zire + .zire-platform-faq {
	padding-top:
		105px;

	padding-bottom:
		110px;
}


.zire-platform-faq__heading
.zire-managed-eyebrow {
	margin-bottom:
		0;
}



/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {

	.zire-article-hero__grid {
		grid-template-columns:
			1fr;

		gap:
			50px;
	}


	.zire-article-hero__copy {
		max-width:
			820px;
	}


	.zire-article-quick-answer {
		max-width:
			720px;
	}


	.zire-article-layout {
		grid-template-columns:
			minmax(0,820px);

		gap:
			0;
	}


	.zire-article-sidebar {
		display:
			none;
	}


	.zire-article-process {
		grid-template-columns:
			repeat(
				3,
				1fr
			);
	}


	.zire-article-provider-grid {
		grid-template-columns:
			repeat(
				2,
				1fr
			);
	}

}


@media (max-width: 800px) {

	.zire-article-guide__inner {
		align-items:
			flex-start;

		flex-direction:
			column;

		padding-top:
			18px;

		padding-bottom:
			18px;
	}


	.zire-article-question-grid,
	.zire-article-benefits,
	.zire-article-example__grid {
		grid-template-columns:
			1fr;
	}


	.zire-article-example__grid
	> div:first-child {
		border-right:
			0;

		border-bottom:
			1px solid
			#e8ecf1;
	}


	.zire-article-metrics,
	.zire-article-reference-grid {
		grid-template-columns:
			1fr
			1fr;
	}

}


@media (max-width: 700px) {

	.zire-article-hero {
		padding-top:
			95px;

		padding-bottom:
			80px;
	}


	.zire-article-hero h1 {
		font-size:
			clamp(
				43px,
				11vw,
				57px
			);

		letter-spacing:
			-2.5px;
	}


	.zire-article-hero__lead {
		font-size:
			15px;
	}


	.zire-article-meta {
		align-items:
			flex-start;

		flex-direction:
			column;
	}


	.zire-article-quick-answer {
		padding:
			20px;
	}


	.zire-article-main {
		padding-top:
			80px;

		padding-bottom:
			85px;
	}


	.zire-article-section + .zire-article-section {
		margin-top:
			75px;
	}


	.zire-article-section h2 {
		font-size:
			clamp(
				33px,
				9vw,
				43px
			);
	}


	.zire-article-lead {
		font-size:
			15px !important;
	}


	.zire-article-process,
	.zire-article-provider-grid {
		grid-template-columns:
			1fr;
	}


	.zire-article-provider-grid
	.zire-provider-platform-card {
		min-height:
			auto;
	}


	.zire-article-metrics,
	.zire-article-reference-grid {
		grid-template-columns:
			1fr;
	}


	.zire-article-zire {
		padding-top:
			85px;

		padding-bottom:
			90px;
	}


	.zire-article-zire-visual {
		margin-top:
			15px;
	}

}


@media (max-width: 480px) {

	.zire-article-quick-answer__summary,
	.zire-article-definition,
	.zire-article-info,
	.zire-article-source-note {
		grid-template-columns:
			1fr;
	}


	.zire-article-source-note
	> div:last-child
	> div {
		align-items:
			flex-start;

		flex-direction:
			column;
	}


	.zire-article-zire-metrics {
		grid-template-columns:
			1fr;
	}

}

.single-post .wp-block-post-title {
	display: none;
}

.zire-home-hero {
	position: relative;
	overflow: hidden;
}

.zire-ai-diamond-solid {
	position: absolute;

	width: 250px;
        height: 250px;
        right: 836px;
        bottom: 296px;;

	pointer-events: none;
}
.zire-ai-diamond-solid-two {
	position: absolute;

	left: 18px;
  width: 250px;
  height: 250px;
  top: 107px;

	pointer-events: none;
}
.zire-ai-diamond svg {
	display: block;
	width: 100%;
	height: 100%;
}
.zire-agency-hero__diamond {
  position: absolute;
  right: -120px;
  top: 70px;
  width: 430px;
  height: 430px;
  opacity: .11;
  pointer-events: none;
}
.zire-improve {
	position: relative;
	overflow: hidden;
	isolation: isolate;

	background:
		linear-gradient(
			145deg,
			#0b1220 0%,
			#101a2d 56%,
			#11172a 100%
		);
}
.zire-improve__glow {
	position: absolute;
	z-index: 0;

	border-radius: 50%;

	pointer-events: none;
}
.zire-improve__glow--one {
	width: 760px;
	height: 760px;

	left: -340px;
	top: -410px;

	background: rgba(49, 94, 251, .28);

	filter: blur(110px);
}
.zire-improve__glow--two {
	width: 650px;
	height: 650px;

	right: -320px;
	bottom: -390px;

	background: rgba(118, 87, 232, .13);

	filter: blur(105px);
}
.zire-agency-hero__diamond {
  position: absolute;
  right: -400px;
  top: -5px;
  width: 430px;
  height: 430px;
  opacity: .31;
  pointer-events: none;
}
.zire-improve-job__signals span,
.zire-improve-job__new, .zire-improve-job__priority, .zire-improve-job__channel, .zire-improve-job__channel {
font-size: 11px;
}

.zire-price-platform small, .zire-price-feature-line, .zire-price-card__features small, .zire-compare-table__group small, .zire-compare-table__feature, .zire-compare-table__feature small, .zire-compare__bottom span, .zire-feature-trend__legend-item, .zire-feature-prompt-ui__item span, .zire-feature-visibility-ui__stats span, .zire-feature-action small, .zire-feature-action div > span, .zire-feature-report-ui span, .zire-feature-source-ui strong {
font-size: 13px;
}
.zire-compare__bottom strong, .zire-feature-action strong {
font-size: 12px;
}

.zire-faq__intro {
top: 114px;
}

/* =========================================================
   HOME — VISIBILITY CTA
   ========================================================= */

.zire-growth-cta {
	position: relative;

	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding: 90px 24px;

	overflow: hidden;

	box-sizing: border-box;

	background:
		linear-gradient(
			180deg,
			#f7f9ff 0%,
			#f2f5ff 100%
		);

	isolation: isolate;
}


/* =========================================================
   MAIN CARD
   ========================================================= */

.zire-growth-cta__card {
	position: relative;
	z-index: 2;

	display: grid;

	grid-template-columns:
		minmax(0,.89fr)
		minmax(0,1.11fr);

	gap: 72px;

	align-items: center;

	min-height: 610px;

	padding: 62px;

	overflow: hidden;

	border: 1px solid rgba(133,151,255,.24);
	border-radius: 25px;

	background:
		radial-gradient(
			circle at 4% 2%,
			rgba(48,91,255,.50) 0%,
			rgba(48,91,255,.17) 31%,
			rgba(48,91,255,0) 53%
		),
		radial-gradient(
			circle at 97% 97%,
			rgba(118,87,232,.29) 0%,
			rgba(118,87,232,0) 45%
		),
		linear-gradient(
			135deg,
			#0d1830 0%,
			#111c36 48%,
			#171a38 100%
		);

	box-shadow:
		0 30px 80px rgba(34,48,80,.08);

	box-sizing: border-box;
}


/* =========================================================
   BACKGROUND GLOWS
   ========================================================= */

.zire-growth-cta__glow {
	position: absolute;
	z-index: 0;

	border-radius: 50%;

	pointer-events: none;
}


.zire-growth-cta__glow--one {
	width: 700px;
	height: 700px;

	left: -330px;
	top: -330px;

	background: rgba(49,94,251,.12);

	filter: blur(105px);
}


.zire-growth-cta__glow--two {
	width: 600px;
	height: 600px;

	right: -280px;
	bottom: -330px;

	background: rgba(118,87,232,.10);

	filter: blur(100px);
}


/* =========================================================
   DIAMOND
   ========================================================= */

.zire-growth-cta__diamond {
	position: absolute;
	z-index: 1;

	width: 390px;
	height: 390px;

	right: 33%;
	top: 84px;

	pointer-events: none;
}


.zire-growth-cta__diamond svg {
	display: block;

	width: 100%;
	height: 100%;
}


/* =========================================================
   COPY
   ========================================================= */

.zire-growth-cta__copy {
	position: relative;
	z-index: 3;

	max-width: 650px;
}


/* EYEBROW */

.zire-growth-cta__eyebrow {
	display: inline-flex;

	align-items: center;

	gap: 8px;

	min-height: 30px;

	padding: 0 12px;

	border: 1px solid rgba(143,162,255,.24);
	border-radius: 999px;

	background: rgba(95,116,255,.09);

	color: #9fb0ff;

	font-size: 12px;
	font-weight: 850;

	letter-spacing: .08em;

	text-transform: uppercase;
}


.zire-growth-cta__eyebrow > span {
	width: 7px;
	height: 7px;

	border: 2px solid rgba(159,176,255,.24);
	border-radius: 50%;

	background: #8299ff;

	box-sizing: border-box;
}


/* HEADING */

.zire-growth-cta__copy h2 {
	max-width: 670px;

	margin: 22px 0 0;

	color: #fff;

	font-size: clamp(48px,4.4vw,66px);
	font-weight: 900;

	line-height: .98;

	letter-spacing: -.052em;
}


.zire-growth-cta__copy h2 > span {
	display: block;

	margin-top: 4px;

	background:
		linear-gradient(
			90deg,
			#7894ff,
			#a589ff
		);

	-webkit-background-clip: text;
	background-clip: text;

	color: transparent;
}


/* BODY */

.zire-growth-cta__copy > p {
	max-width: 610px;

	margin: 24px 0 0;

	color: rgba(225,232,247,.68);

	font-size: 15px;

	line-height: 1.72;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.zire-growth-cta__actions {
	display: flex;

	flex-wrap: wrap;

	gap: 10px;

	margin-top: 30px;
}


.zire-growth-cta__button {
	display: inline-flex;

	align-items: center;
	justify-content: center;

	gap: 11px;

	min-height: 52px;

	padding: 0 20px;

	border-radius: 10px;

	font-size: 12px;
	font-weight: 800;

	text-decoration: none;

	transition:
		transform .2s ease,
		box-shadow .2s ease,
		background .2s ease;
}


.zire-growth-cta__button:hover {
	transform: translateY(-2px);
}


.zire-growth-cta__button--primary {
	background: #fff;

	color: #151c28;

	box-shadow:
		0 13px 28px rgba(0,0,0,.18);
}


.zire-growth-cta__button--primary:hover {
	box-shadow:
		0 17px 34px rgba(0,0,0,.23);
}


.zire-growth-cta__button--secondary {
	border: 1px solid rgba(255,255,255,.16);

	background: rgba(255,255,255,.055);

	color: #fff;
}


/* =========================================================
   META
   ========================================================= */

.zire-growth-cta__meta {
	display: flex;

	flex-wrap: wrap;

	gap: 15px;

	margin-top: 18px;
}


.zire-growth-cta__meta > span {
	display: flex;

	align-items: center;

	gap: 6px;

	color: rgba(221,229,247,.52);

	font-size: 13px;
}


.zire-growth-cta__meta i {
	width: 17px;
	height: 17px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 50%;

	background: rgba(113,135,255,.14);

	color: #a3b2ff;

	font-size: 11px;
	font-style: normal;
}


/* =========================================================
   PRODUCT VISUAL
   ========================================================= */

.zire-growth-visual {
	position: relative;
	z-index: 3;

	width: 100%;

	max-width: 650px;

	margin-left: auto;

	padding:
		30px
		20px
		24px
		42px;

	box-sizing: border-box;
}


/* =========================================================
   PRODUCT WINDOW
   ========================================================= */

.zire-growth-visual__window {
	position: relative;

	overflow: hidden;

	border: 1px solid rgba(173,187,255,.28);
	border-radius: 18px;

	background:
		linear-gradient(
			145deg,
			rgba(44,60,111,.88),
			rgba(49,53,110,.80)
		);

	box-shadow:
		0 28px 70px rgba(0,0,0,.22),
		inset 0 1px 0 rgba(255,255,255,.06);

	backdrop-filter: blur(16px);
}


/* =========================================================
   VISUAL HEADER
   ========================================================= */

.zire-growth-visual__head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 15px;

	padding: 18px 19px 14px;

	border-bottom: 1px solid rgba(255,255,255,.08);
}


.zire-growth-visual__head span,
.zire-growth-visual__head strong {
	display: block;
}


.zire-growth-visual__head span {
	color: #aabbff;

	font-size: 12px;
	font-weight: 850;

	text-transform: uppercase;
}


.zire-growth-visual__head strong {
	margin-top: 4px;

	color: #fff;

	font-size: 12px;
}


.zire-growth-visual__head > b {
	padding: 5px 8px;

	border-radius: 999px;

	background: rgba(91,214,169,.12);

	color: #75deb5;

	font-size: 12px;
}


/* =========================================================
   SCORE
   ========================================================= */

.zire-growth-visual__score {
	display: flex;

	align-items: flex-end;
	justify-content: space-between;

	gap: 20px;

	padding: 17px 19px 10px;
}


.zire-growth-visual__score span {
	display: block;

	color: rgba(222,229,247,.50);

	font-size: 12px;
}


.zire-growth-visual__score strong {
	display: flex;

	align-items: baseline;

	gap: 4px;

	margin-top: 3px;

	color: #fff;

	font-size: 31px;
	font-weight: 900;

	letter-spacing: -.04em;
}


.zire-growth-visual__score strong small {
	color: rgba(222,229,247,.48);

	font-size: 12px;
}


.zire-growth-visual__status {
	display: flex;

	align-items: center;

	gap: 6px;

	padding: 6px 8px;

	border-radius: 999px;

	background: rgba(91,214,169,.09);

	color: #81e2bd;

	font-size: 12px;
	font-weight: 750;
}


.zire-growth-visual__status i {
	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: #75deb5;
}


/* =========================================================
   CHART
   ========================================================= */

.zire-growth-visual__chart {
	position: relative;

	height: 175px;

	margin: 0 19px;

	overflow: hidden;

	border: 1px solid rgba(255,255,255,.07);
	border-radius: 12px;

	background:
		linear-gradient(
			180deg,
			rgba(15,25,57,.25),
			rgba(15,25,57,.12)
		);
}


.zire-growth-visual__grid {
	position: absolute;

	inset: 0;

	display: flex;

	flex-direction: column;
	justify-content: space-around;

	pointer-events: none;
}


.zire-growth-visual__grid i {
	width: 100%;
	height: 1px;

	background: rgba(255,255,255,.07);
}


.zire-growth-visual__chart svg {
	position: absolute;

	inset: 0;

	width: 100%;
	height: 100%;
}


/* =========================================================
   METRICS
   ========================================================= */

.zire-growth-visual__metrics {
	display: grid;

	grid-template-columns: repeat(3,1fr);

	gap: 7px;

	padding: 11px 19px 18px;
}


.zire-growth-visual__metrics > div {
	padding: 10px;

	border: 1px solid rgba(255,255,255,.08);
	border-radius: 9px;

	background: rgba(255,255,255,.045);
}


.zire-growth-visual__metrics span,
.zire-growth-visual__metrics strong {
	display: block;
}


.zire-growth-visual__metrics span {
	color: rgba(222,229,247,.45);

	font-size: 12px;
}


.zire-growth-visual__metrics strong {
	margin-top: 4px;

	color: #fff;

	font-size: 14px;
}


/* =========================================================
   FLOATING ACTION
   ========================================================= */

.zire-growth-visual__action {
	position: absolute;
	z-index: 5;

	left: 5px;
  bottom: -35px;

	display: grid;

	grid-template-columns:
		35px
		minmax(0,1fr)
		auto;

	align-items: center;

	gap: 9px;

	width: 260px;

	padding: 10px;

	border: 1px solid #e4e8ef;
	border-radius: 10px;

	background: rgba(255,255,255,.98);

	box-sizing: border-box;

	box-shadow:
		0 16px 40px rgba(5,11,28,.20);
}


.zire-growth-visual__action-icon {
	width: 34px;
	height: 34px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background:
		linear-gradient(
			135deg,
			#edf0ff,
			#f3eeff
		);

	color: #7657e8;
}


.zire-growth-visual__action span,
.zire-growth-visual__action strong,
.zire-growth-visual__action small {
	display: block;
}


.zire-growth-visual__action span {
	color: #7657e8;

	font-size: 11px;
	font-weight: 850;

	text-transform: uppercase;
}


.zire-growth-visual__action strong {
	margin-top: 2px;

	color: #242d39;

	font-size: 12px;
}


.zire-growth-visual__action small {
	margin-top: 2px;

	color: #8e98a7;

	font-size: 11px;
}


.zire-growth-visual__action > b {
	color: #315efb;

	font-size: 13px;
}


/* =========================================================
   FLOATING READY CARD
   ========================================================= */

.zire-growth-visual__ready {
	position: absolute;
	z-index: 5;

	right: -8px;
	top: 64px;

	display: grid;

	grid-template-columns: 35px 1fr;

	align-items: center;

	gap: 8px;

	padding: 9px 11px;

	border: 1px solid #e5e9ef;
	border-radius: 10px;

	background: rgba(255,255,255,.98);

	box-shadow:
		0 16px 40px rgba(5,11,28,.20);
}


.zire-growth-visual__ready > span {
	width: 34px;
	height: 34px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 9px;

	background: #e9f8f2;

	color: #07885f;

	font-size: 12px;
	font-weight: 900;
}


.zire-growth-visual__ready small,
.zire-growth-visual__ready strong {
	display: block;
}


.zire-growth-visual__ready small {
	color: #929baa;

	font-size: 11px;

	text-transform: uppercase;

	font-weight: 800;
}


.zire-growth-visual__ready strong {
	margin-top: 2px;

	color: #202833;

	font-size: 12px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {

	.zire-growth-cta__card {
		grid-template-columns: 1fr;

		gap: 55px;

		padding: 52px;
	}


	.zire-growth-cta__copy {
		max-width: 720px;
	}


	.zire-growth-visual {
		max-width: 720px;

		margin: 0 auto;

		padding-left: 30px;
		padding-right: 30px;
	}


	.zire-growth-cta__diamond {
		right: -50px;
		top: 80px;
	}

}


@media (max-width: 700px) {

	.zire-growth-cta {
		padding: 65px 18px;
	}


	.zire-growth-cta__card {
		min-height: 0;

		padding: 37px 24px;

		border-radius: 19px;
	}


	.zire-growth-cta__copy h2 {
		font-size: clamp(39px,10vw,50px);
	}


	.zire-growth-cta__copy > p {
		font-size: 14px;
	}


	.zire-growth-visual {
		padding: 0;
	}


	.zire-growth-visual__action,
	.zire-growth-visual__ready {
		display: none;
	}


	.zire-growth-visual__metrics {
		grid-template-columns: 1fr;
	}


	.zire-growth-cta__diamond {
		width: 250px;
		height: 250px;

		right: -100px;
		top: 40px;
	}

}


@media (max-width: 480px) {

	.zire-growth-cta__actions {
		display: grid;

		grid-template-columns: 1fr;
	}


	.zire-growth-cta__button {
		width: 100%;
	}


	.zire-growth-cta__meta {
		display: grid;

		grid-template-columns: 1fr;
	}

}

/* =========================================================
   ZIRE HOME HERO V3
   COMPLETE STANDALONE HERO CSS
   ========================================================= */


/* =========================================================
   HERO WRAPPER
   ========================================================= */

.zire-home-v3 {
	position: relative;

	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding: 170px 24px 150px;

	overflow: hidden;

	box-sizing: border-box;

	background:
		radial-gradient(
			circle at 91% 24%,
			rgba(49,94,251,.105) 0%,
			rgba(49,94,251,0) 37%
		),
		radial-gradient(
			circle at 8% 105%,
			rgba(118,87,232,.07) 0%,
			rgba(118,87,232,0) 38%
		),
		linear-gradient(
			145deg,
			#ffffff 0%,
			#fbfcff 48%,
			#f4f6ff 100%
		);

	isolation: isolate;
}


/* =========================================================
   INNER GRID
   ========================================================= */

.zire-home-v3__inner {
	position: relative;
	z-index: 2;

	display: grid;

	grid-template-columns:
		minmax(0,.96fr)
		minmax(0,1.04fr);

	gap: 72px;

	align-items: center;
}


/* =========================================================
   DECORATION
   ========================================================= */

.zire-home-v3__glow {
	position: absolute;
	z-index: 0;

	width: 760px;
	height: 680px;

	right: -210px;
	top: 105px;

	border-radius: 50%;

	background: rgba(49,94,251,.105);

	filter: blur(115px);

	pointer-events: none;
}


.zire-home-v3__diamond {
	position: absolute;
	z-index: 1;

	pointer-events: none;
}


.zire-home-v3__diamond svg {
	display: block;

	width: 100%;
	height: 100%;
}


.zire-home-v3__diamond--left {
	width: 205px;
	height: 205px;

	left: 98px;
	top: 180px;
}


.zire-home-v3__diamond--middle {
	width: 165px;
	height: 165px;

	left: 43.7%;
	top: 383px;
}


/* =========================================================
   HERO COPY
   ========================================================= */

.zire-home-v3__copy {
	position: relative;
	z-index: 3;

	max-width: 655px;
}


/* EYEBROW */

.zire-home-v3__eyebrow {
	display: inline-flex;

	align-items: center;

	gap: 8px;

	min-height: 30px;

	padding: 0 12px;

	border: 1px solid #cad5ff;
	border-radius: 999px;

	background:
		linear-gradient(
			135deg,
			#f4f7ff,
			#f7f3ff
		);

	color: #315efb;

	font-size: 12px;
	font-weight: 850;

	letter-spacing: .08em;

	text-transform: uppercase;

	box-sizing: border-box;
}


.zire-home-v3__eyebrow > span {
	width: 7px;
	height: 7px;

	border: 2px solid #cbd6ff;
	border-radius: 50%;

	background: #315efb;

	box-sizing: border-box;
}


/* H1 */

.zire-home-v3__copy h1 {
	max-width: 650px;
min-width: 610px;

	margin: 25px 0 0;

	color: #10151d;

	font-size: clamp(60px,5.35vw,82px);
	font-weight: 900;

	line-height: .91;

	letter-spacing: -.062em;
}


.zire-home-v3__copy h1 > span {
	display: block;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);

	-webkit-background-clip: text;
	background-clip: text;

	color: transparent;
}


/* BODY */

.zire-home-v3__copy > p {
	max-width: 630px;

	margin: 28px 0 0;

	color: #59667a;

	font-size: 19px;

	line-height: 1.72;
}


/* =========================================================
   CTA BUTTONS
   ========================================================= */

.zire-home-v3__actions {
	display: flex;

	flex-wrap: wrap;

	gap: 10px;

	margin-top: 29px;
}


.zire-home-v3__button {
	display: inline-flex;

	align-items: center;
	justify-content: center;

	gap: 12px;

	min-height: 55px;

	padding: 0 22px;

	border-radius: 10px;

	box-sizing: border-box;

	font-size: 13px;
	font-weight: 800;

	text-decoration: none;

	transition:
		transform .2s ease,
		box-shadow .2s ease;
}


.zire-home-v3__button:hover {
	transform: translateY(-2px);
}


.zire-home-v3__button--primary {
	border: 1px solid transparent;

	background:
		linear-gradient(
			135deg,
			#315efb,
			#5264ff
		);

	color: #fff;

	box-shadow:
		0 13px 30px rgba(49,94,251,.22);
}


.zire-home-v3__button--primary:hover {
	box-shadow:
		0 17px 36px rgba(49,94,251,.28);
}


.zire-home-v3__button--secondary {
	border: 1px solid #d7dee9;

	background: rgba(255,255,255,.9);

	color: #1a202a;
}


/* META */

.zire-home-v3__meta {
	display: flex;

	flex-wrap: wrap;

	align-items: center;

	gap: 7px;

	margin-top: 18px;

	color: #000;

	font-size: 15px;
margin-top: 25px;
}


.zire-home-v3__meta .is-check {
	color: #089969;

	font-weight: 900;
}


.zire-home-v3__meta i {
	color: #c2c9d3;

	font-style: normal;
}


/* =========================================================
   RIGHT PRODUCT VISUAL
   ========================================================= */

.zire-home-v3__visual {
	position: relative;

	width: 100%;

	min-width: 0;

	padding-top: 10px;
}


/* LABEL */

.zire-home-v3__provider-label {
	margin-bottom: 11px;

	color: #778399;

	font-size: 12px;
	font-weight: 800;

	text-align: center;

	letter-spacing: .02em;
}


/* =========================================================
   PROVIDER LOGOS
   ========================================================= */

.zire-home-v3__providers {
	display: grid;

	grid-template-columns: repeat(5,minmax(0,1fr));

	gap: 7px;

	margin-bottom: 13px;
}


.zire-home-v3__providers > div {
	height: 54px;

	display: flex;

	align-items: center;
	justify-content: center;

	padding: 0 9px;

	border: 1px solid #dfe4eb;
	border-radius: 10px;

	background: rgba(255,255,255,.92);

	box-shadow:
		0 8px 22px rgba(34,48,80,.045);

	box-sizing: border-box;
}


.zire-home-v3__providers img {
	display: block;

	width: auto;

	max-width: 90%;

	object-fit: contain;
}


.zire-home-v3__providers .is-openai {
	max-height: 21px;
}


.zire-home-v3__providers .is-gemini {
	max-height: 23px;
}


.zire-home-v3__providers .is-claude {
	max-height: 24px;
}


.zire-home-v3__providers .is-perplexity {
	max-height: 22px;
}


.zire-home-v3__providers .is-grok {
	max-height: 23px;
}


/* =========================================================
   PRODUCT WRAPPER
   ========================================================= */

.zire-home-v3__product-wrap {
	position: relative;
}


/* =========================================================
   PRODUCT CARD
   ========================================================= */

.zire-home-v3__product {
	position: relative;

	overflow: hidden;

	border: 1.5px solid transparent;
	border-radius: 18px;

	background:
		linear-gradient(#fff,#fff) padding-box,
		linear-gradient(
			135deg,
			#9aafff,
			#c3b5ff,
			#8066ea
		) border-box;

	box-shadow:
		0 31px 78px rgba(35,50,84,.115),
		0 9px 29px rgba(49,94,251,.055);
}


/* =========================================================
   PRODUCT HEADER
   ========================================================= */

.zire-home-v3__product-head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 15px;

	padding: 14px 16px;

	border-bottom: 1px solid #e9edf2;
}


.zire-home-v3__product-head span,
.zire-home-v3__product-head strong {
	display: block;
}


.zire-home-v3__product-head span {
	color: #315efb;

	font-size: 12px;
	font-weight: 850;

	text-transform: uppercase;

	letter-spacing: .03em;
}


.zire-home-v3__product-head strong {
	margin-top: 3px;

	color: #222a36;

	font-size: 13px;
}


.zire-home-v3__product-head > b {
	padding: 5px 8px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 12px;
}


/* =========================================================
   TOP PRODUCT ROW
   ========================================================= */

.zire-home-v3__top-row {
	display: grid;

	grid-template-columns:
		minmax(190px,.41fr)
		minmax(0,.59fr);

	gap: 8px;

	padding: 11px;

	background: #f8f9fc;
}


/* =========================================================
   VISIBILITY SCORE
   ========================================================= */

.zire-home-v3__score {
	display: flex;

	flex-direction: column;

	align-items: center;

	min-width: 0;
	min-height: 179px;

	padding: 11px;

	border: 1px solid #dfe4eb;
	border-radius: 10px;

	background:
		linear-gradient(
			145deg,
			#f5f7ff 0%,
			#fff 74%
		);

	box-sizing: border-box;
}


.zire-home-v3__mini-title {
	align-self: flex-start;

	color: #758196;

	font-size: 12px;
	font-weight: 700;
}


.zire-home-v3__mini-title > span {
	margin-left: 2px;

	color: #99a3b2;
}


/* GAUGE */

.zire-home-v3__gauge {
	position: relative;

	width: 155px;
	height: 85px;

	margin-top: 5px;
}


.zire-home-v3__gauge svg {
	display: block;

	width: 100%;
	height: 100%;
}


.zire-home-v3__gauge-value {
	position: absolute;

	left: 0;
	right: 0;
	bottom: 0;

	display: flex;

	align-items: baseline;
	justify-content: center;

	gap: 2px;
}


.zire-home-v3__gauge-value strong {
	color: #171e29;

	font-size: 27px;
	font-weight: 900;

	letter-spacing: -.045em;
}


.zire-home-v3__gauge-value span {
	color: #8290a7;

	font-size: 12px;
	font-weight: 750;
}


.zire-home-v3__score-status {
	margin-top: 4px;

	color: #171e29;

	font-size: 13px;
	font-weight: 850;
}


.zire-home-v3__score > small {
	margin-top: 5px;

	color: #8490a4;

	font-size: 12px;
}


/* =========================================================
   SHARED CARD HEADING
   ========================================================= */

.zire-home-v3__card-head {
	display: flex;

	align-items: flex-start;
	justify-content: space-between;

	gap: 10px;
}


.zire-home-v3__card-head span,
.zire-home-v3__card-head strong {
	display: block;
}


.zire-home-v3__card-head span {
	color: #7e899b;

	font-size: 12px;
	font-weight: 800;

	text-transform: uppercase;
}


.zire-home-v3__card-head strong {
	margin-top: 3px;

	color: #222b37;

	font-size: 13px;
}


.zire-home-v3__card-head > b {
	padding: 4px 6px;

	border-radius: 999px;

	background: #edf2ff;

	color: #315efb;

	font-size: 12px;
}


/* =========================================================
   SHARE OF VOICE
   ========================================================= */

.zire-home-v3__sov {
	min-width: 0;

	padding: 12px;

	border: 1px solid #dfe4eb;
	border-radius: 10px;

	background: #fff;
}


.zire-home-v3__bars {
	display: grid;

	gap: 10px;

	margin-top: 15px;
}


.zire-home-v3__bars > div {
	display: grid;

	grid-template-columns:
		76px
		minmax(0,1fr)
		40px;

	align-items: center;

	gap: 8px;
}


.zire-home-v3__bars span,
.zire-home-v3__bars strong {
	font-size: 12px;
}


.zire-home-v3__bars span {
	color: #6d798d;
}


.zire-home-v3__bars strong {
	color: #65738a;

	text-align: right;
}


/* BAR TRACK */

.zire-home-v3__bars i {
	display: block;

	height: 8px;

	overflow: hidden;

	border-radius: 999px;

	background: #dfe4ed;
}


.zire-home-v3__bars i > b {
	display: block;

	height: 100%;

	border-radius: inherit;

	background: #d1d8e5;
}


/* BRAND BAR */

.zire-home-v3__bars .is-brand i > b {
	background:
		linear-gradient(
			90deg,
			#315efb,
			#536fff
		);
}


/* =========================================================
   BOTTOM PRODUCT ROW
   ========================================================= */

.zire-home-v3__bottom-row {
	display: grid;

	grid-template-columns:
		minmax(0,1.35fr)
		minmax(165px,.65fr);

	gap: 8px;

	padding: 0 11px 11px;

	background: #f8f9fc;
}

/* =========================================================
   SOURCE MIX
   ========================================================= */

.zire-home-v3__sources {
	min-width: 0;

	padding: 11px;

	border: 1px solid #dfe4eb;
	border-radius: 10px;

	background: #fff;
}


.zire-home-v3__source-content {
	display: grid;

	grid-template-columns: 88px minmax(0,1fr);

	align-items: center;

	gap: 12px;

	margin-top: 10px;
}


/* DONUT */

.zire-home-v3__donut {
	position: relative;

	width: 82px;
	height: 82px;

	border-radius: 50%;

	background:
		conic-gradient(
			#315efb 0deg 132deg,
			#7657e8 132deg 202deg,
			#159b79 202deg 262deg,
			#dc7852 262deg 312deg,
			#dfb820 312deg 337deg,
			#258dc0 337deg 360deg
		);
}


.zire-home-v3__donut::after {
	content: "";

	position: absolute;

	inset: 16px;

	border-radius: 50%;

	background: #fff;
}


.zire-home-v3__donut > div {
	position: absolute;
	z-index: 2;

	inset: 0;

	display: flex;

	flex-direction: column;

	align-items: center;
	justify-content: center;
}


.zire-home-v3__donut strong {
	color: #1c2430;

	font-size: 18px;
	font-weight: 850;
}


.zire-home-v3__donut span {
	color: #929baa;

	font-size: 12px;
}


/* SOURCE LEGEND */

.zire-home-v3__legend {
	display: grid;

	gap: 6px;
}


.zire-home-v3__legend > div {
	display: grid;

	grid-template-columns:
		7px
		minmax(0,1fr)
		auto;

	align-items: center;

	gap: 6px;
}


.zire-home-v3__legend i {
	width: 7px;
	height: 7px;

	border-radius: 50%;
}


.zire-home-v3__legend .is-blue {
	background: #315efb;
}


.zire-home-v3__legend .is-purple {
	background: #7657e8;
}


.zire-home-v3__legend .is-green {
	background: #159b79;
}


.zire-home-v3__legend .is-orange {
	background: #dc7852;
}


.zire-home-v3__legend span,
.zire-home-v3__legend strong {
	font-size: 12px;
}


.zire-home-v3__legend span {
	color: #6e7a8d;
}


.zire-home-v3__legend strong {
	color: #333d4c;
}


/* =========================================================
   CORE METRICS
   ========================================================= */

.zire-home-v3__metrics {
	display: grid;

	grid-template-columns: 1fr;

	gap: 6px;
}


.zire-home-v3__metrics > div {
	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 10px;

	padding: 10px;

	border: 1px solid #dfe4eb;
	border-radius: 9px;

	background: #fff;

	box-sizing: border-box;
}


.zire-home-v3__metrics strong {
	color: #1f2732;

	font-size: 16px;
	font-weight: 850;
}


.zire-home-v3__metrics span {
	color: #8993a2;

	font-size: 12px;
}


/* =========================================================
   FLOATING RECOMMENDATION
   ========================================================= */

.zire-home-v3__float-action {
	position: absolute;
	z-index: 6;

	left: 26px;
	bottom: 58px;

	display: grid;

	grid-template-columns:
		35px
		minmax(0,1fr)
		auto;

	align-items: center;

	gap: 9px;

	width: 258px;

	padding: 10px;

	border: 1px solid #e0e5ed;
	border-radius: 10px;

	background: rgba(255,255,255,.98);

	box-sizing: border-box;

	box-shadow:
		0 14px 36px rgba(35,48,79,.13),
		0 4px 10px rgba(35,48,79,.035);
}


.zire-home-v3__float-icon {
	width: 34px;
	height: 34px;

	display: flex;

	align-items: center;
	justify-content: center;

	border-radius: 8px;

	background:
		linear-gradient(
			135deg,
			#eee9ff,
			#f6f2ff
		);

	color: #7657e8;

	font-size: 13px;
}


.zire-home-v3__float-action span,
.zire-home-v3__float-action strong,
.zire-home-v3__float-action small {
	display: block;
}


.zire-home-v3__float-action span {
	color: #7657e8;

	font-size: 12px;
	font-weight: 850;

	text-transform: uppercase;
}


.zire-home-v3__float-action strong {
	margin-top: 2px;

	color: #222b37;

	font-size: 12px;
}


.zire-home-v3__float-action small {
	margin-top: 2px;

	color: #919aa7;

	font-size: 12px;
}


.zire-home-v3__float-action > b {
	color: #315efb;

	font-size: 13px;
}


/* =========================================================
   FLOATING COMPETITOR
   ========================================================= */

.zire-home-v3__float-competitor {
	position: absolute;
	z-index: 6;

	right: -17px;
	top: 63px;

	width: 132px;

	padding: 11px;

	border: 1px solid #e0e5ed;
	border-radius: 10px;

	background: rgba(255,255,255,.98);

	box-sizing: border-box;

	box-shadow:
		0 14px 36px rgba(35,48,79,.13),
		0 4px 10px rgba(35,48,79,.035);
}


.zire-home-v3__float-competitor > span {
	display: block;

	max-width: 86px;

	color: #8791a0;

	font-size: 12px;
	font-weight: 800;

	line-height: 1.25;

	text-transform: uppercase;
}


.zire-home-v3__float-competitor > strong {
	display: flex;

	align-items: baseline;

	gap: 2px;

	margin-top: 5px;

	color: #1f2732;

	font-size: 20px;
	font-weight: 850;
}


.zire-home-v3__float-competitor > strong small {
	color: #9ba3af;

	font-size: 12px;
}


.zire-home-v3__float-competitor > b {
	position: absolute;

	right: 8px;
	top: 8px;

	padding: 4px 5px;

	border-radius: 999px;

	background: #eaf8f2;

	color: #07885f;

	font-size: 12px;
}


.zire-home-v3__float-competitor > i {
	display: block;

	height: 5px;

	margin-top: 8px;

	overflow: hidden;

	border-radius: 999px;

	background: #e6e9ef;
}


.zire-home-v3__float-competitor > i > span {
	display: block;

	width: 54%;
	height: 100%;

	border-radius: inherit;

	background:
		linear-gradient(
			90deg,
			#315efb,
			#7657e8
		);
}


/* =========================================================
   TABLET / SMALL DESKTOP
   ========================================================= */

@media (max-width: 1200px) {

	.zire-home-v3__inner {
		gap: 50px;

		grid-template-columns:
			minmax(0,.93fr)
			minmax(0,1.07fr);
	}


	.zire-home-v3__diamond--left {
		left: -10px;
	}


	.zire-home-v3__diamond--middle {
		opacity: .7;
	}

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

	.zire-home-v3 {
		padding-top: 80px;
	}


	.zire-home-v3__inner {
		grid-template-columns: 1fr;

		gap: 60px;
	}


	.zire-home-v3__copy {
		max-width: 720px;
	}


	.zire-home-v3__visual {
		max-width: 760px;

		margin: 0 auto;
	}


	.zire-home-v3__diamond--middle {
		display: none;
	}


	.zire-home-v3__float-competitor {
		right: 12px;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

	.zire-home-v3 {
		padding:
			72px
			18px
			85px;
	}


	.zire-home-v3__copy h1 {
		font-size: clamp(49px,13vw,68px);
	}


	.zire-home-v3__copy > p {
		font-size: 14px;
	}


	.zire-home-v3__diamond--left {
		width: 145px;
		height: 145px;

		left: -48px;
		top: 150px;
	}


	.zire-home-v3__providers {
		grid-template-columns:
			repeat(3,1fr);
	}


	.zire-home-v3__providers > div:nth-child(4),
	.zire-home-v3__providers > div:nth-child(5) {
		display: none;
	}


	.zire-home-v3__top-row,
	.zire-home-v3__bottom-row {
		grid-template-columns: 1fr;
	}


	.zire-home-v3__float-action,
	.zire-home-v3__float-competitor {
		display: none;
	}

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

	.zire-home-v3__actions {
		display: grid;

		grid-template-columns: 1fr;
	}


	.zire-home-v3__button {
		width: 100%;
	}


	.zire-home-v3__providers {
		grid-template-columns: 1fr 1fr;
	}


	.zire-home-v3__providers > div:nth-child(3) {
		display: none;
	}


	.zire-home-v3__source-content {
		grid-template-columns: 74px 1fr;
	}


	.zire-home-v3__donut {
		width: 70px;
		height: 70px;
	}


	.zire-home-v3__donut::after {
		inset: 14px;
	}

}

/* =========================================================
   HERO V3 — VISIBILITY TREND FIX
   ========================================================= */

.zire-home-v3__trend {
	position: relative;

	width: 100%;
	min-width: 0;

	padding: 12px;

	border: 1px solid #dfe4eb;
	border-radius: 10px;

	background: #fff;

	box-sizing: border-box;
}


/* Heading */
.zire-home-v3__trend .zire-home-v3__card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;

	width: 100%;

	gap: 10px;
}


.zire-home-v3__trend .zire-home-v3__card-head > div {
	min-width: 0;
}


/* Chart */
.zire-home-v3__trend-chart {
	position: relative;

	width: 100%;
	height: 105px;

	margin-top: 12px;

	overflow: hidden;
}


.zire-home-v3__trend-grid {
	position: absolute;

	inset: 0;

	display: flex;
	flex-direction: column;
	justify-content: space-between;

	pointer-events: none;
}


.zire-home-v3__trend-grid i {
	display: block;

	width: 100%;
	height: 1px;

	background: #edf0f5;
}


.zire-home-v3__trend-chart svg {
	position: absolute;

	inset: 0;

	display: block;

	width: 100%;
	height: 100%;
}


/* Dates */
.zire-home-v3__trend-footer {
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr;

	width: 100%;

	margin-top: 6px;

	color: #96a0af;

	font-size: 12px;

	box-sizing: border-box;
}


.zire-home-v3__trend-footer span:nth-child(1) {
	text-align: left;
}

.zire-home-v3__trend-footer span:nth-child(2) {
	text-align: center;
}

.zire-home-v3__trend-footer span:nth-child(3) {
	text-align: right;
}

/* =========================================================
   SHARED MARKETING TYPOGRAPHY — READABILITY UPDATE
   Applies globally to shared Zire marketing components
   ========================================================= */


/* ---------------------------------------------------------
   CUSTOMER-FACING BODY COPY — 16px
   --------------------------------------------------------- */

:is(
	.zire-feature p,
	.zire-improve-card > p,
	.zire-platforms-showcase__copy p,
	.zire-audience-card p,
	.zire-price-card__intro,
	.zire-compare__intro p,
	.zire-faq__intro p,
	.zire-faq-item summary,
	.zire-faq-item__content p
) {
	font-size: 16px;
}


/* ---------------------------------------------------------
   BUTTONS — 15px
   --------------------------------------------------------- */

:is(
	.zire-home-v3__button,
	.zire-improve__button,
	.zire-platforms-section__button,
	.zire-price-card__button,
	.zire-final-cta__button
) {
	font-size: 15px;
}


/* ---------------------------------------------------------
   IMPORTANT LINKS — 14px
   --------------------------------------------------------- */

:is(
	.zire-feature__link,
	.zire-compare__link,
	.zire-faq__link
) {
	font-size: 14px;
}


/* ---------------------------------------------------------
   EYEBROWS AND SECTION LABELS — 13px
   --------------------------------------------------------- */

:is(
	.zire-home-v3__eyebrow,
	.zire-home-v3__provider-label,
	.zire-how__eyebrow,
	.zire-features__eyebrow,
	.zire-improve__eyebrow,
	.zire-platforms-section__eyebrow,
	.zire-audience__eyebrow,
	.zire-pricing__eyebrow,
	.zire-compare__eyebrow,
	.zire-faq__eyebrow,
	.zire-final-cta__eyebrow
) {
	font-size: 13px;
}


/* ---------------------------------------------------------
   IMPORTANT SUPPORTING CARD TEXT — 14px
   --------------------------------------------------------- */

:is(
	.zire-how-step__content span,
	.zire-platforms-showcase__points div,
	.zire-price-card__plan,
	.zire-price-card__price span,
	.zire-price-card__features strong,
	.zire-price-managed-box strong,
	.zire-pricing__trial strong,
	.zire-compare__bottom strong
) {
	font-size: 14px;
}


/* ---------------------------------------------------------
   SECONDARY SUPPORTING TEXT — 13px
   --------------------------------------------------------- */

:is(
	.zire-feature__eyebrow,
	.zire-platforms-showcase__label,
	.zire-audience-card__label,
	.zire-price-card__includes,
	.zire-price-card__section-label,
	.zire-price-card__features small,
	.zire-price-feature-line,
	.zire-price-card__pro-note strong,
	.zire-price-card__pro-note span,
	.zire-price-managed-box p,
	.zire-pricing__trial span,
	.zire-compare__label,
	.zire-compare__bottom span,
	.zire-faq__label,
	.zire-final-cta__meta > span
) {
	font-size: 13px;
}


/* ---------------------------------------------------------
   HERO DASHBOARD ILLUSTRATION — 12px MINIMUM
   --------------------------------------------------------- */

:is(
	.zire-home-v3__product-head span,
	.zire-home-v3__product-head > b,
	.zire-home-v3__mini-title,
	.zire-home-v3__gauge-value span,
	.zire-home-v3__score > small,
	.zire-home-v3__card-head span,
	.zire-home-v3__card-head > b,
	.zire-home-v3__bars span,
	.zire-home-v3__bars strong,
	.zire-home-v3__metrics span,
	.zire-home-v3__trend-footer
) {
	font-size: 12px;
}

:is(
	.zire-home-v3__product-head strong,
	.zire-home-v3__score-status,
	.zire-home-v3__card-head strong
) {
	font-size: 13px;
}


/* ---------------------------------------------------------
   HOW IT WORKS — IMPORTANT LABELS
   --------------------------------------------------------- */

:is(
	.zire-how-panel__tag,
	.zire-how-screen__bar,
	.zire-how-step__number
) {
	font-size: 13px;
}


/* How It Works illustration text */

:is(
	.zire-how-prompt span,
	.zire-how-provider-row span,
	.zire-how-score-card > span,
	.zire-how-source-card__head,
	.zire-how-source-card__head small,
	.zire-how-source-row,
	.zire-how-source-row strong,
	.zire-how-source-row__icon,
	.zire-how-gap-card small,
	.zire-how-gap-card strong,
	.zire-how-action-card small,
	.zire-how-action-card > div:nth-child(2) > span,
	.zire-how-action-card__status,
	.zire-how-gauge__top > div > span,
	.zire-how-gauge__status,
	.zire-how-gauge__score small,
	.zire-how-gauge__metrics small
) {
	font-size: 12px;
}

:is(
	.zire-how-action-card strong,
	.zire-how-gauge__top > div > strong
) {
	font-size: 13px;
}


/* ---------------------------------------------------------
   FEATURE PRODUCT ILLUSTRATIONS
   --------------------------------------------------------- */

:is(
	.zire-feature-visibility-ui__top span,
	.zire-feature-visibility-ui__stats span,
	.zire-feature-prompt-ui__item strong,
	.zire-feature-prompt-ui__item span,
	.zire-feature-competitor span,
	.zire-feature-competitor strong,
	.zire-feature-action small,
	.zire-feature-action strong,
	.zire-feature-action div > span,
	.zire-feature-action__badge,
	.zire-feature-source-ui strong,
	.zire-feature-source-ui b,
	.zire-feature-report-ui span,
	.zire-feature-trend__head > div > span,
	.zire-feature-trend__period,
	.zire-feature-trend__legend-item,
	.zire-feature-trend__axis,
	.zire-feature-trend__dates
) {
	font-size: 12px;
}


/* Existing declaration uses !important */

.zire-feature-positive {
	font-size: 12px !important;
}

.zire-feature-trend__head strong {
	font-size: 13px;
}


/* ---------------------------------------------------------
   IMPROVEMENT CARDS
   --------------------------------------------------------- */

:is(
	.zire-improve-card__type,
	.zire-improve-job__head > span:first-child,
	.zire-improve-job__priority,
	.zire-improve-job__new,
	.zire-improve-job__channel,
	.zire-improve-job strong,
	.zire-improve-job__signals span
) {
	font-size: 12px;
}

:is(
	.zire-improve__bottom-copy strong,
	.zire-improve__bottom-copy span
) {
	font-size: 15px;
}


/* ---------------------------------------------------------
   AI PLATFORM VISUAL
   --------------------------------------------------------- */

:is(
	.zire-platform-logo span,
	.zire-platforms-showcase__points span,
	.zire-platforms-report__top span:first-child,
	.zire-platforms-report__badge,
	.zire-platforms-report__provider span,
	.zire-platforms-report__row strong,
	.zire-platforms-report__footer span
) {
	font-size: 12px;
}

.zire-platforms-section__bottom strong {
	font-size: 14px;
}

.zire-platforms-section__bottom span {
	font-size: 13px;
}


/* ---------------------------------------------------------
   AUDIENCE AND SEO VISUALS
   --------------------------------------------------------- */

.zire-audience-card__points span {
	font-size: 13px;
}

:is(
	.zire-audience-brand-ui__top > span,
	.zire-audience-brand-ui__bars span,
	.zire-audience-brand-ui__bars strong,
	.zire-audience-mini span:first-child,
	.zire-audience-mini__badge,
	.zire-audience-agency strong,
	.zire-audience-agency span,
	.zire-audience-action-ui__head span,
	.zire-audience-action-ui__head small,
	.zire-audience-action-row strong,
	.zire-audience-action-row span
) {
	font-size: 12px;
}


/* ---------------------------------------------------------
   PRICING CARD ILLUSTRATIONS AND LABELS
   --------------------------------------------------------- */

:is(
	.zire-price-card__popular,
	.zire-price-managed-box > span
) {
	font-size: 12px;
}

.zire-price-platform strong {
	font-size: 14px;
}

.zire-price-platform small {
	font-size: 13px;
}

/* ---------------------------------------------------------
   COMPARISON TABLE
   --------------------------------------------------------- */

:is(
	.zire-compare-table__head,
	.zire-compare-table__brand,
	.zire-compare-table__feature,
	.zire-compare-table__feature small,
	.zire-compare-limited,
	.zire-compare-table__group span,
	.zire-compare-table__group small
) {
	font-size: 13px;
}

.zire-compare-check {
	font-size: 12px;
}


/* ---------------------------------------------------------
   FINAL CTA PRODUCT ILLUSTRATION
   --------------------------------------------------------- */

:is(
	.zire-final-cta-card__top span:first-child,
	.zire-final-cta-card__status,
	.zire-final-cta-card__stats span,
	.zire-final-cta-float small,
	.zire-final-cta-float strong
) {
	font-size: 12px;
}

:is(
	.zire-final-cta-card__top strong,
	.zire-final-cta-card__score span
) {
	font-size: 13px;
}

/* =========================================================
   SHARED MARKETING TEXT — REMAINING READABILITY FIXES
   ========================================================= */


/* Pricing feature descriptions are real information */

:is(
	.zire-price-card__features small,
	.zire-price-platform small,
	.zire-price-feature-line,
	.zire-price-card__pro-note span,
	.zire-price-managed-box p
) {
	font-size: 13px;
	line-height: 1.5;
}


/* Pricing feature names */

:is(
	.zire-price-card__features strong,
	.zire-price-platform strong,
	.zire-price-managed-box strong
) {
	font-size: 14px;
}


/* Comparison callout beneath the table */

.zire-compare__bottom span {
	font-size: 15px;
	line-height: 1.55;
}


/* Final dark CTA supporting benefits */

.zire-growth-cta__meta > span {
	font-size: 13px;
	line-height: 1.4;
}


/* Final dark CTA buttons */

.zire-growth-cta__actions a {
	font-size: 15px;
}

/* =========================================================
   HOME FEATURE BENTO — PERMANENT VISUAL ENHANCEMENTS
   Builds on the structural .zire-features rules above.
   ========================================================= */

.zire-features {
	isolation: isolate;
	background:
		radial-gradient(
			circle at 8% 18%,
			rgba(79, 125, 255, 0.11),
			transparent 28%
		),
		radial-gradient(
			circle at 91% 72%,
			rgba(201, 100, 224, 0.10),
			transparent 27%
		),
		linear-gradient(
			180deg,
			#f8faff 0%,
			#ffffff 46%,
			#f7f8ff 100%
		);
}

.zire-features .zire-features__heading {
	margin-bottom: 68px;
}

.zire-features .zire-features__grid {
	gap: 22px;
}

/* ---------------------------------------------------------
   SHARED CARD FOUNDATION
   --------------------------------------------------------- */

.zire-features .zire-feature {
	isolation: isolate;
	padding: 34px;
	border-radius: 26px;
	border-color: rgba(68, 84, 126, 0.14);
	background: #ffffff;
	box-shadow:
		0 22px 55px rgba(28, 42, 75, 0.075),
		inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.zire-features .zire-feature > * {
	position: relative;
	z-index: 2;
}

/* Soft glow already supported by the existing pseudo-element */

.zire-features .zire-feature::before {
	z-index: 0;
	width: 390px;
	height: 390px;
	top: -210px;
	right: -160px;
	opacity: 0.9;
}

/* Dot texture */

.zire-features .zire-feature::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	width: 52%;
	height: 52%;
	border-radius: inherit;
	background-image:
		radial-gradient(
			circle,
			rgba(76, 104, 187, 0.22) 1px,
			transparent 1.25px
		);
	background-size: 18px 18px;
	-webkit-mask-image:
		linear-gradient(
			135deg,
			#000 0%,
			rgba(0, 0, 0, 0.55) 38%,
			transparent 78%
		);
	mask-image:
		linear-gradient(
			135deg,
			#000 0%,
			rgba(0, 0, 0, 0.55) 38%,
			transparent 78%
		);
	pointer-events: none;
}

/* ---------------------------------------------------------
   AI VISIBILITY — PRIMARY BLUE CARD
   --------------------------------------------------------- */

.zire-features .zire-feature--visibility {
	border: 2px solid rgba(79, 116, 255, 0.48);
	background:
		linear-gradient(
			145deg,
			#fbfcff 0%,
			#edf3ff 54%,
			#f6f1ff 100%
		);
	box-shadow:
		0 30px 75px rgba(49, 94, 251, 0.14),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.zire-features .zire-feature--visibility::before {
	background:
		radial-gradient(
			circle,
			rgba(49, 94, 251, 0.19),
			transparent 68%
		);
}

.zire-features .zire-feature--visibility::after {
	background-image:
		radial-gradient(
			circle,
			rgba(49, 94, 251, 0.28) 1px,
			transparent 1.25px
		);
}

/* ---------------------------------------------------------
   PROMPT TRACKING — PURPLE
   --------------------------------------------------------- */

.zire-features .zire-feature--prompts {
	border-color: rgba(126, 86, 226, 0.27);
	background:
		linear-gradient(
			145deg,
			#fdfcff 0%,
			#f3efff 100%
		);
}

.zire-features .zire-feature--prompts::before {
	background:
		radial-gradient(
			circle,
			rgba(120, 82, 225, 0.17),
			transparent 68%
		);
}

/* ---------------------------------------------------------
   COMPETITORS — CYAN/BLUE
   --------------------------------------------------------- */

.zire-features .zire-feature--competitors {
	border-color: rgba(65, 163, 208, 0.27);
	background:
		linear-gradient(
			145deg,
			#fcfeff 0%,
			#edfaff 100%
		);
}

.zire-features .zire-feature--competitors::before {
	background:
		radial-gradient(
			circle,
			rgba(55, 172, 220, 0.17),
			transparent 68%
		);
}

.zire-features .zire-feature--competitors::after {
	background-image:
		radial-gradient(
			circle,
			rgba(35, 148, 198, 0.25) 1px,
			transparent 1.25px
		);
}

/* ---------------------------------------------------------
   RECOMMENDATIONS — PRIMARY PURPLE CARD
   --------------------------------------------------------- */

.zire-features .zire-feature--actions {
	border: 2px solid rgba(113, 77, 223, 0.43);
	background:
		linear-gradient(
			145deg,
			#fdfcff 0%,
			#f1edff 52%,
			#edf4ff 100%
		);
	box-shadow:
		0 30px 75px rgba(106, 70, 215, 0.13),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.zire-features .zire-feature--actions::before {
	background:
		radial-gradient(
			circle,
			rgba(115, 76, 224, 0.19),
			transparent 68%
		);
}

.zire-features .zire-feature--actions::after {
	background-image:
		radial-gradient(
			circle,
			rgba(113, 77, 223, 0.26) 1px,
			transparent 1.25px
		);
}

/* ---------------------------------------------------------
   CITATIONS — TEAL
   --------------------------------------------------------- */

.zire-features .zire-feature--citations {
	border-color: rgba(37, 159, 155, 0.27);
	background:
		linear-gradient(
			145deg,
			#fcffff 0%,
			#ebfaf8 100%
		);
}

.zire-features .zire-feature--citations::before {
	background:
		radial-gradient(
			circle,
			rgba(31, 164, 157, 0.16),
			transparent 68%
		);
}

.zire-features .zire-feature--citations::after {
	background-image:
		radial-gradient(
			circle,
			rgba(31, 145, 142, 0.24) 1px,
			transparent 1.25px
		);
}

/* ---------------------------------------------------------
   REPORTS — PINK/PURPLE
   --------------------------------------------------------- */

.zire-features .zire-feature--reports {
	border-color: rgba(200, 82, 156, 0.24);
	background:
		linear-gradient(
			145deg,
			#fffdfd 0%,
			#fff0f7 57%,
			#f6f1ff 100%
		);
}

.zire-features .zire-feature--reports::before {
	background:
		radial-gradient(
			circle,
			rgba(213, 83, 163, 0.16),
			transparent 68%
		);
}

.zire-features .zire-feature--reports::after {
	background-image:
		radial-gradient(
			circle,
			rgba(195, 76, 150, 0.23) 1px,
			transparent 1.25px
		);
}

/* ---------------------------------------------------------
   LARGER ICONS
   --------------------------------------------------------- */

.zire-features .zire-feature__icon {
	width: 54px;
	height: 54px;
	margin-bottom: 21px;
	border: 1px solid rgba(255, 255, 255, 0.75);
	border-radius: 16px;
	font-size: 22px;
	box-shadow:
		0 12px 28px rgba(40, 55, 95, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.zire-features .zire-feature__icon--blue {
	background:
		linear-gradient(145deg, #e8efff, #dce7ff);
}

.zire-features .zire-feature__icon--purple {
	background:
		linear-gradient(145deg, #f0eaff, #e5dcff);
}

.zire-features .zire-feature__icon--orange {
	background:
		linear-gradient(145deg, #fff2e5, #ffe5c5);
}

.zire-features .zire-feature__icon--green {
	background:
		linear-gradient(145deg, #e7f9f1, #d8f3e8);
}

.zire-features .zire-feature__icon--teal {
	background:
		linear-gradient(145deg, #e3f8f7, #d1f1ef);
}

.zire-features .zire-feature__icon--pink {
	background:
		linear-gradient(145deg, #fdeaf5, #f8dcec);
}

/* ---------------------------------------------------------
   CONTENT TYPOGRAPHY
   --------------------------------------------------------- */

.zire-features .zire-feature h3 {
	margin-bottom: 13px;
	font-size: 29px;
	line-height: 1.1;
	letter-spacing: -1.25px;
}

.zire-features .zire-feature p {
	color: #606b7d;
	font-size: 15px;
	line-height: 1.68;
}

.zire-features .zire-feature__link {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	font-size: 13px;
}

/* ---------------------------------------------------------
   PRODUCT UI PANELS
   --------------------------------------------------------- */

.zire-features .zire-feature-visibility-ui,
.zire-features .zire-feature-actions-ui,
.zire-features .zire-feature-prompt-ui__item,
.zire-features .zire-feature-source-ui > div,
.zire-features .zire-feature-report-ui div {
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.zire-features .zire-feature-visibility-ui {
	border-color: rgba(94, 118, 181, 0.18);
	background: rgba(255, 255, 255, 0.9);
	box-shadow:
		0 24px 55px rgba(38, 55, 101, 0.13),
		inset 0 1px 0 #ffffff;
}

.zire-features .zire-feature-prompt-ui__item,
.zire-features .zire-feature-source-ui > div,
.zire-features .zire-feature-report-ui div {
	border-color: rgba(81, 97, 141, 0.13);
	background: rgba(255, 255, 255, 0.76);
}

/* ---------------------------------------------------------
   TABLET AND MOBILE
   --------------------------------------------------------- */

@media (max-width: 1050px) {
	.zire-features .zire-feature {
		padding: 30px;
	}
}

@media (max-width: 680px) {
	.zire-features .zire-features__grid {
		gap: 16px;
	}

	.zire-features .zire-feature {
		padding: 24px;
		border-radius: 20px;
	}

	.zire-features .zire-feature__icon {
		width: 48px;
		height: 48px;
		border-radius: 14px;
		font-size: 20px;
	}

	.zire-features .zire-feature h3 {
		font-size: 25px;
	}
}

/* ---------------------------------------------------------
   CARD INTERACTION
   --------------------------------------------------------- */

.zire-features .zire-feature {
	transition:
		transform 0.38s cubic-bezier(.2, .75, .25, 1),
		box-shadow 0.38s ease,
		border-color 0.38s ease;
}

.zire-features .zire-feature::before {
	transition:
		transform 0.6s ease,
		opacity 0.6s ease;
}

.zire-features .zire-feature__icon {
	transition:
		transform 0.35s cubic-bezier(.2, .75, .25, 1),
		box-shadow 0.35s ease;
}

@media (hover: hover) {

	.zire-features .zire-feature:hover {
		transform: translateY(-6px);
		box-shadow:
			0 32px 75px rgba(28, 42, 75, 0.13),
			inset 0 1px 0 rgba(255, 255, 255, 0.9);
	}

	.zire-features .zire-feature:hover::before {
		transform: scale(1.12);
		opacity: 1;
	}

	.zire-features .zire-feature:hover .zire-feature__icon {
		transform: translateY(-3px) rotate(-3deg);
		box-shadow:
			0 16px 32px rgba(40, 55, 95, 0.17),
			inset 0 1px 0 rgba(255, 255, 255, 0.9);
	}
}

/* ---------------------------------------------------------
   VISIBILITY INTERFACE
   --------------------------------------------------------- */

.zire-features .zire-feature-visibility-ui {
	position: relative;
	overflow: hidden;
}

.zire-features .zire-feature-visibility-ui::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background:
		linear-gradient(
			90deg,
			#315efb,
			#7557e5,
			#d658a4
		);
}

.zire-features .zire-feature-visibility-ui__stats div {
	border: 1px solid rgba(68, 91, 151, 0.1);
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.94),
			rgba(242, 246, 255, 0.82)
		);
	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease;
}

@media (hover: hover) {

	.zire-features
	.zire-feature-visibility-ui__stats div:hover {
		transform: translateY(-3px);
		box-shadow: 0 12px 24px rgba(49, 94, 251, 0.1);
	}
}

/* ---------------------------------------------------------
   CHART DRAWING
   --------------------------------------------------------- */

.zire-features
.zire-feature-visibility-ui.is-visible
.zire-feature-trend__chart svg path {
	stroke-dasharray: 900;
	stroke-dashoffset: 900;
	animation:
		zireFeatureChartDraw
		1.8s
		cubic-bezier(.2, .75, .25, 1)
		forwards;
}

.zire-features
.zire-feature-visibility-ui.is-visible
.zire-feature-trend__chart svg path:nth-of-type(2) {
	animation-delay: 0.12s;
}

.zire-features
.zire-feature-visibility-ui.is-visible
.zire-feature-trend__chart svg path:nth-of-type(3) {
	animation-delay: 0.22s;
}

.zire-features
.zire-feature-visibility-ui.is-visible
.zire-feature-trend__chart svg path:nth-of-type(4) {
	animation-delay: 0.32s;
}

@keyframes zireFeatureChartDraw {
	to {
		stroke-dashoffset: 0;
	}
}

/* ---------------------------------------------------------
   PROMPT TRACKING
   --------------------------------------------------------- */

.zire-features .zire-feature-prompt-ui {
	gap: 11px;
}

.zire-features .zire-feature-prompt-ui__item {
	position: relative;
	padding: 15px;
	border-radius: 13px;
	box-shadow: 0 10px 24px rgba(65, 48, 117, 0.07);
	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease;
}

.zire-features
.zire-feature-prompt-ui__item:first-child {
	transform: translateX(8px);
}

.zire-features
.zire-feature-prompt-ui__item:last-child {
	transform: translateX(-4px);
}

@media (hover: hover) {

	.zire-features
	.zire-feature-prompt-ui__item:hover {
		transform: translateX(4px) translateY(-2px);
		border-color: rgba(116, 85, 223, 0.28);
		box-shadow: 0 15px 30px rgba(79, 56, 145, 0.12);
	}
}

/* Status light */

.zire-features .zire-feature-status {
	position: relative;
	box-shadow: 0 0 0 5px rgba(24, 168, 121, 0.09);
	animation: zireFeatureStatusPulse 2.5s ease-in-out infinite;
}

.zire-features .zire-feature-status--amber {
	box-shadow: 0 0 0 5px rgba(231, 167, 46, 0.11);
	animation-delay: 0.6s;
}

@keyframes zireFeatureStatusPulse {

	0%,
	100% {
		transform: scale(1);
		opacity: 1;
	}

	50% {
		transform: scale(0.78);
		opacity: 0.72;
	}
}

/* ---------------------------------------------------------
   COMPETITOR INTERFACE
   --------------------------------------------------------- */

.zire-features .zire-feature-competitors-ui {
	padding: 18px;
	border: 1px solid rgba(47, 145, 187, 0.14);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.72);
	box-shadow:
		0 16px 34px rgba(36, 114, 151, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.zire-features .zire-feature-bar {
	height: 8px;
	background: rgba(111, 151, 172, 0.14);
}

.zire-features
.zire-feature--competitors.is-visible
.zire-feature-bar span {
	transform-origin: left center;
	animation:
		zireFeatureBarGrow
		1.25s
		cubic-bezier(.2, .75, .25, 1)
		both;
}

.zire-features
.zire-feature-competitor:nth-child(2)
.zire-feature-bar span {
	animation-delay: 0.12s;
}

.zire-features
.zire-feature-competitor:nth-child(3)
.zire-feature-bar span {
	animation-delay: 0.24s;
}

@keyframes zireFeatureBarGrow {
	from {
		transform: scaleX(0);
	}
	to {
		transform: scaleX(1);
	}
}

/* ---------------------------------------------------------
   RECOMMENDATION ACTIONS
   --------------------------------------------------------- */

.zire-features .zire-feature-actions-ui {
	gap: 11px;
}

.zire-features .zire-feature-action {
	padding: 13px 14px;
	border-radius: 13px;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 9px 22px rgba(66, 48, 124, 0.055);
	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease,
		background 0.3s ease;
}

.zire-features .zire-feature-action--active {
	border-color: rgba(104, 71, 232, 0.35);
	background:
		linear-gradient(
			90deg,
			rgba(239, 235, 255, 0.94),
			rgba(242, 246, 255, 0.9)
		);
	box-shadow:
		0 12px 30px rgba(104, 71, 232, 0.12),
		inset 4px 0 0 #6847e8;
}

@media (hover: hover) {

	.zire-features .zire-feature-action:hover {
		transform: translateX(5px);
		border-color: rgba(104, 71, 232, 0.26);
		background: rgba(255, 255, 255, 0.96);
		box-shadow: 0 14px 28px rgba(66, 48, 124, 0.1);
	}
}

/* Moving working badge */

.zire-features .zire-feature-action__badge {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(49, 94, 251, 0.12);
}

.zire-features .zire-feature-action__badge::after {
	content: "";
	position: absolute;
	inset: 0;
	transform: translateX(-120%);
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(255, 255, 255, 0.8),
			transparent
		);
	animation: zireFeatureBadgeSweep 3.8s ease-in-out infinite;
}

@keyframes zireFeatureBadgeSweep {
	0%,
	55% {
		transform: translateX(-120%);
	}
	85%,
	100% {
		transform: translateX(120%);
	}
}

/* ---------------------------------------------------------
   CITATION SOURCES
   --------------------------------------------------------- */

.zire-features .zire-feature-source-ui {
	gap: 10px;
}

.zire-features .zire-feature-source-ui > div {
	padding: 13px;
	border-radius: 12px;
	box-shadow: 0 8px 20px rgba(32, 119, 115, 0.05);
	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease;
}

.zire-features
.zire-feature-source-ui > div:nth-child(2) {
	transform: translateX(8px);
}

@media (hover: hover) {

	.zire-features
	.zire-feature-source-ui > div:hover {
		transform: translateX(5px);
		border-color: rgba(31, 145, 142, 0.25);
		box-shadow: 0 13px 27px rgba(32, 119, 115, 0.1);
	}
}

/* ---------------------------------------------------------
   REPORT METRICS
   --------------------------------------------------------- */

.zire-features .zire-feature-report-ui {
	gap: 12px;
}

.zire-features .zire-feature-report-ui div {
	position: relative;
	overflow: hidden;
	padding: 18px 16px;
	border-radius: 14px;
	box-shadow: 0 10px 24px rgba(120, 53, 98, 0.06);
}

.zire-features
.zire-feature-report-ui div:nth-child(1) {
	background:
		linear-gradient(
			145deg,
			rgba(237, 243, 255, 0.95),
			rgba(255, 255, 255, 0.88)
		);
}

.zire-features
.zire-feature-report-ui div:nth-child(2) {
	background:
		linear-gradient(
			145deg,
			rgba(244, 238, 255, 0.95),
			rgba(255, 255, 255, 0.88)
		);
}

.zire-features
.zire-feature-report-ui div:nth-child(3) {
	background:
		linear-gradient(
			145deg,
			rgba(255, 235, 246, 0.95),
			rgba(255, 255, 255, 0.88)
		);
}

.zire-features
.zire-feature-report-ui div::after {
	content: "";
	position: absolute;
	right: -18px;
	bottom: -25px;
	width: 65px;
	height: 65px;
	border-radius: 50%;
	background: rgba(88, 104, 222, 0.07);
}

.zire-features
.zire-feature-report-ui div:nth-child(3)::after {
	background: rgba(211, 79, 157, 0.09);
}

/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 680px) {

	.zire-features
	.zire-feature-prompt-ui__item:first-child,
	.zire-features
	.zire-feature-prompt-ui__item:last-child,
	.zire-features
	.zire-feature-source-ui > div:nth-child(2) {
		transform: none;
	}

	.zire-features .zire-feature-competitors-ui {
		padding: 15px;
	}
}

/* ---------------------------------------------------------
   REDUCED MOTION
   --------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

	.zire-features *,
	.zire-features *::before,
	.zire-features *::after {
		animation-duration: 0.01ms;
		animation-iteration-count: 1;
		scroll-behavior: auto;
	}
}

.zire-features .zire-feature__icon svg {
	width: 27px;
	height: 27px;
	overflow: visible;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.zire-features
.zire-feature__icon--green svg {
	stroke-width: 1.7;
}

@media (max-width: 680px) {
	.zire-features .zire-feature__icon svg {
		width: 24px;
		height: 24px;
	}
}

/* =========================================================
   VISIBLE DOT PATTERNS
   ========================================================= */

.zire-how--v2 .zire-how__product::before,
.zire-how--v2 .zire-how__product::after {
	content: "";
	position: absolute;
	z-index: 1;
	background-size: 17px 17px;
	pointer-events: none;
}


/* Blue dots behind the left-hand copy */

.zire-how--v2 .zire-how__product::before {
	top: 0;
	left: 0;
	width: 46%;
	height: 72%;
	background-image:
		radial-gradient(
			circle,
			rgba(49, 94, 251, 0.34) 1.2px,
			transparent 1.3px
		);
	-webkit-mask-image:
		radial-gradient(
			ellipse at top left,
			#000 0%,
			rgba(0, 0, 0, 0.7) 35%,
			transparent 76%
		);
	mask-image:
		radial-gradient(
			ellipse at top left,
			#000 0%,
			rgba(0, 0, 0, 0.7) 35%,
			transparent 76%
		);
	animation: zireHowDotsLeft 16s linear infinite;
}


/* Purple dots around the product interface */

.zire-how--v2 .zire-how__product::after {
	right: 0;
	bottom: 0;
	width: 55%;
	height: 67%;
	background-image:
		radial-gradient(
			circle,
			rgba(117, 87, 229, 0.3) 1.2px,
			transparent 1.3px
		);
	-webkit-mask-image:
		radial-gradient(
			ellipse at bottom right,
			#000 0%,
			rgba(0, 0, 0, 0.68) 38%,
			transparent 78%
		);
	mask-image:
		radial-gradient(
			ellipse at bottom right,
			#000 0%,
			rgba(0, 0, 0, 0.68) 38%,
			transparent 78%
		);
	animation: zireHowDotsRight 19s linear infinite;
}


/* Ensure the actual content remains above the dots */

.zire-how--v2 .zire-how-panel {
	z-index: 2;
}


/* Gentle movement */

@keyframes zireHowDotsLeft {
	from {
		background-position: 0 0;
	}
	to {
		background-position: 34px 17px;
	}
}

@keyframes zireHowDotsRight {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -34px -17px;
	}
}


@media (prefers-reduced-motion: reduce) {
	.zire-how--v2 .zire-how__product::before,
	.zire-how--v2 .zire-how__product::after {
		animation: none;
	}
}

/* =========================================================
   HOMEPAGE — CONNECTED SECTION BACKGROUNDS
   ========================================================= */

/* Platforms gently introduces the soft background */

.zire-platforms-section {
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8faff 100%
		);
}


/* Pricing continues from the same colour and returns to white */

.zire-pricing {
	background:
		linear-gradient(
			180deg,
			#f8faff 0%,
			#ffffff 100%
		);
}


/* Comparison remains the calm white section */

.zire-compare {
	background: #ffffff;
}


/* Features now begins white, removing the hard seam */

.zire-features {
	background:
		radial-gradient(
			circle at 8% 24%,
			rgba(79, 125, 255, 0.075),
			transparent 28%
		),
		radial-gradient(
			circle at 91% 72%,
			rgba(201, 100, 224, 0.065),
			transparent 27%
		),
		linear-gradient(
			180deg,
			#ffffff 0%,
			#fafbff 16%,
			#ffffff 52%,
			#f8faff 100%
		);
}


/* FAQ continues directly from the Features background */

.zire-faq {
	background:
		linear-gradient(
			180deg,
			#f8faff 0%,
			#f7f9ff 100%
		);
}


/* Final CTA uses the exact colour where FAQ finishes */

.zire-growth-cta {
	background: #f7f9ff;
}

/* =========================================================
   HOMEPAGE — RESPONSIVE WIDTH FIX
   ========================================================= */

html,
body {
	max-width: 100%;
	overflow-x: hidden;
	overflow-x: clip;
}


/* Allow grid children and product visuals to shrink */

.zire-home-v3__inner,
.zire-home-v3__copy,
.zire-home-v3__visual,
.zire-home-v3__product-wrap,
.zire-home-v3__product,
.zire-home-v3__top-row,
.zire-home-v3__bottom-row,
.zire-how__product,
.zire-how-panel,
.zire-how-panel__copy,
.zire-how-screen,
.zire-rank-story,
.zire-platforms-showcase,
.zire-platforms-showcase__content,
.zire-platforms-report,
.zire-price-card {
	min-width: 0;
	max-width: 100%;
}


/* Remove the hero heading width causing the overflow */

.zire-home-v3__copy h1 {
	min-width: 0;
	width: 100%;
	max-width: 650px;
}


/* New animation needs a slightly taller shell when stacked */

@media (min-width: 681px) and (max-width: 1050px) {

	.zire-how__product {
		min-height: 970px;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 680px) {

	.zire-home-v3__inner {
		width: 100%;
		min-width: 0;
	}

	.zire-home-v3__copy {
		width: 100%;
	}

	.zire-home-v3__eyebrow {
		max-width: 100%;
		min-height: 0;
		padding: 7px 11px;
		white-space: normal;
		line-height: 1.35;
	}

	.zire-home-v3__copy h1 {
		min-width: 0;
		max-width: 100%;
		font-size: clamp(43px, 12.5vw, 54px);
		line-height: .96;
		letter-spacing: -.045em;
	}

	.zire-home-v3__copy > p {
		max-width: 100%;
		font-size: 16px;
		line-height: 1.65;
	}

	.zire-home-v3__visual,
	.zire-home-v3__product-wrap,
	.zire-home-v3__product {
		width: 100%;
		max-width: 100%;
	}

	.zire-home-v3__top-row,
	.zire-home-v3__bottom-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.zire-home-v3__bars > div {
		grid-template-columns: 68px minmax(0, 1fr) 38px;
		gap: 7px;
	}

	.zire-how__product {
		min-height: 1030px;
	}

	.zire-how-panel {
		width: 100%;
		grid-template-columns: minmax(0, 1fr);
	}

	.zire-how-screen {
		width: 100%;
	}

	.zire-rank-story {
		width: 100%;
		max-width: 100%;
	}

	.zire-rank-story__prompt {
		overflow: hidden;
	}

	.zire-rank-story__prompt span {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.zire-rank-story__answer-head {
		align-items: flex-start;
	}

	.zire-rank-story__answer-head > div {
		min-width: 0;
	}

	.zire-rank-story__answer-head strong {
		white-space: normal;
	}

}

/* =========================================================
   HOMEPAGE — FINAL MOBILE FIXES
   ========================================================= */

@media (max-width: 680px) {

	/* ---------------------------------------------------------
	   1. SHOW ALL FIVE HERO PROVIDER LOGOS
	   --------------------------------------------------------- */

	.zire-home-v3__providers {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	/* Override the earlier rules that hide providers 3, 4 and 5 */

	.zire-home-v3__providers > div:nth-child(n) {
		display: flex;
		min-width: 0;
		height: 58px;
		padding: 0 10px;
	}

	.zire-home-v3__providers img {
		width: auto;
		height: auto;
		max-width: 100%;
		max-height: 25px;
	}

	/* Centre Grok beneath the other four */

	.zire-home-v3__providers > div:last-child {
		grid-column: 1 / -1;
		width: calc(50% - 4px);
		justify-self: center;
	}


	/* ---------------------------------------------------------
	   2. STOP TRACK COPY AND TICKS OVERLAPPING THE VISUAL
	   --------------------------------------------------------- */

	.zire-how__product {
		min-height: 1080px;
	}

	.zire-how-panel {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto auto;
		align-content: start;
		align-items: start;
		gap: 36px;
	}

	.zire-how-panel__copy {
		position: relative;
		z-index: 2;
		width: 100%;
		min-width: 0;
	}

	.zire-how-panel__copy ul {
		width: 100%;
	}

	.zire-how-panel__copy li {
		width: 100%;
		overflow-wrap: anywhere;
	}

	.zire-how-screen {
		position: relative;
		z-index: 1;
		width: 100%;
		min-width: 0;
		margin-top: 0;
	}


	/* ---------------------------------------------------------
	   3. STOP FAQ INTRO OVERLAPPING FIRST QUESTION
	   --------------------------------------------------------- */

	.zire-faq__layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 30px;
	}

	.zire-faq__intro {
		position: relative;
		top: auto !important;
		inset: auto;
		z-index: auto;
		width: 100%;
		margin: 0;
		transform: none;
	}

	.zire-faq__items {
		position: relative;
		z-index: 1;
		width: 100%;
		min-width: 0;
	}


	/* ---------------------------------------------------------
	   4. KEEP PLATFORM LOGOS INSIDE THEIR CARDS
	   --------------------------------------------------------- */

	.zire-platforms-showcase__logos {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.zire-platform-logo {
		min-width: 0;
		overflow: hidden;
		padding: 14px 10px;
	}

	.zire-platform-logo img {
		display: block;
		width: auto;
		height: auto;
		max-width: 100%;
		max-height: 30px;
		object-fit: contain;
	}

	.zire-platform-logo:last-child {
		grid-column: 1 / -1;
	}

}

/* =========================================================
   MOBILE HEADER AND FOOTER
   ========================================================= */

.zire-header__inner {
	position: relative;
}


/* Hidden on desktop */

.zire-mobile-toggle,
.zire-mobile-menu {
	display: none;
}


/* =========================================================
   MOBILE HEADER
   ========================================================= */

@media (max-width: 900px) {

	.zire-header__inner {
		grid-template-columns: auto minmax(0, 1fr) auto auto;
		gap: 10px;
	}

	.zire-mobile-toggle {
		grid-column: 3;

		display: grid;
		align-content: center;
		justify-content: center;
		gap: 5px;

		width: 42px;
		height: 42px;
		padding: 0;

		border: 1px solid #dfe4ed;
		border-radius: 10px;

		background: rgba(255, 255, 255, .92);

		cursor: pointer;

		box-shadow: 0 6px 18px rgba(30, 42, 75, .06);
	}

	.zire-mobile-toggle span {
		display: block;

		width: 19px;
		height: 2px;

		border-radius: 999px;

		background: #171d27;

		transition:
			transform .22s ease,
			opacity .22s ease;
	}

	.zire-mobile-toggle.is-open span:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}

	.zire-mobile-toggle.is-open span:nth-child(2) {
		opacity: 0;
	}

	.zire-mobile-toggle.is-open span:nth-child(3) {
		transform: translateY(-7px) rotate(-45deg);
	}


	/* Existing Get Started button */

	.zire-header__actions {
		grid-column: 4;
	}


	/* Dropdown */

	.zire-mobile-menu {
		position: absolute;
		z-index: 1001;

		top: calc(100% + 9px);
		left: 0;
		right: 0;

		display: block;

		max-height: calc(100vh - 95px);
		padding: 12px;

		overflow-y: auto;

		border: 1px solid rgba(20, 30, 50, .10);
		border-radius: 17px;

		background: rgba(255, 255, 255, .98);

		box-shadow: 0 24px 60px rgba(24, 35, 65, .18);

		opacity: 0;
		visibility: hidden;
		pointer-events: none;

		transform: translateY(-8px);

		transition:
			opacity .2s ease,
			transform .2s ease,
			visibility .2s ease;

		-webkit-backdrop-filter: blur(18px);
		backdrop-filter: blur(18px);
	}

	.zire-mobile-menu.is-open {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;

		transform: translateY(0);
	}

	.zire-mobile-menu__links {
		display: grid;
	}

	.zire-mobile-menu__links > a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 20px;

		min-height: 54px;
		padding: 0 13px;

		border-bottom: 1px solid #edf0f4;

		color: #1d2531;

		font-size: 15px;
		font-weight: 750;

		text-decoration: none;
	}

	.zire-mobile-menu__links > a:last-child {
		border-bottom: 0;
	}

	.zire-mobile-menu__links > a > span:last-child {
		color: #315efb;
	}

	.zire-mobile-menu__bottom {
		display: grid;
		grid-template-columns: 1fr 1.4fr;
		gap: 8px;

		margin-top: 10px;
		padding-top: 10px;

		border-top: 1px solid #e9edf3;
	}

	.zire-mobile-menu__login,
	.zire-mobile-menu__button {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;

		min-height: 47px;
		padding: 10px 12px;

		border-radius: 10px;

		font-size: 13px;
		font-weight: 800;

		text-decoration: none;
	}

	.zire-mobile-menu__login {
		border: 1px solid #dce2ec;

		background: #fff;
		color: #202733;
	}

	.zire-mobile-menu__button {
		border: 1px solid transparent;

		background: linear-gradient(135deg, #315efb, #7657e8);
		color: #fff;
	}

}


/* Smaller phones */

@media (max-width: 480px) {

	.zire-brand__logo {
		width: 94px;
		height: auto;
	}

	.zire-header__inner {
		gap: 7px;
	}

	.zire-mobile-toggle {
		width: 39px;
		height: 39px;
	}

	.zire-header__actions .zire-button {
		min-height: 39px;
		padding: 9px 11px;
		font-size: 12px;
	}

	.zire-header__actions .zire-button svg {
		display: none;
	}

	.zire-mobile-menu__bottom {
		grid-template-columns: 1fr;
	}

}


/* =========================================================
   FOOTER PROVIDER LOGOS
   ========================================================= */

@media (max-width: 700px) {

	.zire-footer__platforms {
		align-items: center !important;
		gap: 24px !important;
	}

	.zire-footer__platform-label {
		width: 100%;

		text-align: center;
	}

	.zire-footer__platform-logos {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));

		width: 100%;

		gap: 25px 18px !important;

		justify-items: center;
		align-items: center;

		flex-wrap: wrap !important;
		white-space: normal !important;
	}

	.zire-footer__platform-logos img {
		display: block !important;

		width: auto !important;
		height: auto !important;

		max-width: 125px !important;
		max-height: 27px !important;

		margin: 0 !important;

		object-fit: contain;
	}

	.zire-footer__platform-logo--grok {
		grid-column: 1 / -1;
	}

}

