:root {
	--afm-bg: #060b18;
	--afm-bg-soft: #0a1326;
	--afm-panel: rgba(13, 25, 47, 0.62);
	--afm-panel-strong: rgba(10, 20, 40, 0.82);
	--afm-line: rgba(174, 229, 255, 0.16);
	--afm-line-strong: rgba(104, 234, 226, 0.38);
	--afm-text: #f4fbff;
	--afm-muted: #9db0c8;
	--afm-cyan: #43e7da;
	--afm-cyan-2: #61d9ff;
	--afm-violet: #7c5cff;
	--afm-violet-2: #b98cff;
	--afm-gold: #ffd277;
	--afm-danger: #ff7794;
	--afm-success: #5cf2b4;
	--afm-radius-xs: 10px;
	--afm-radius-sm: 14px;
	--afm-radius: 22px;
	--afm-radius-lg: 32px;
	--afm-shadow: 0 24px 80px rgba(0, 0, 0, 0.34);
	--afm-shadow-soft: 0 16px 42px rgba(0, 0, 0, 0.22);
	--afm-container: min(1240px, calc(100vw - 40px));
	--afm-header-height: 82px;
	--afm-ease: cubic-bezier(.2, .75, .2, 1);
	--afm-font: Inter, -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;
}

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

html {
	background: var(--afm-bg);
	scroll-padding-top: calc(var(--afm-header-height) + 24px);
}

body {
	margin: 0;
	overflow-x: hidden;
	background:
		radial-gradient(circle at 8% 6%, rgba(67, 231, 218, .08), transparent 28rem),
		radial-gradient(circle at 90% 15%, rgba(124, 92, 255, .12), transparent 30rem),
		linear-gradient(180deg, #050913 0%, #071021 45%, #050a14 100%);
	color: var(--afm-text);
	font-family: var(--afm-font);
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.admin-bar .afm-site-header {
	top: 32px;
}

img {
	max-width: 100%;
	height: auto;
}

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

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

button,
a {
	-webkit-tap-highlight-color: transparent;
}

::selection {
	background: rgba(67, 231, 218, .35);
	color: #fff;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus,
.afm-skip-link:focus {
	width: auto;
	height: auto;
	clip: auto;
	overflow: visible;
	white-space: normal;
}

.afm-skip-link {
	position: fixed;
	z-index: 10000;
	top: 8px;
	left: 8px;
	transform: translateY(-150%);
	padding: 10px 14px;
	border-radius: 10px;
	background: #fff;
	color: #071021;
	font-weight: 800;
	transition: transform .2s ease;
}

.afm-skip-link:focus {
	transform: translateY(0);
}

.afm-container {
	width: var(--afm-container);
	margin-inline: auto;
}

.afm-main {
	position: relative;
	z-index: 2;
}

.afm-site-shell {
	position: relative;
	min-height: 100vh;
	isolation: isolate;
}

.afm-space-canvas {
	position: fixed;
	z-index: -4;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	opacity: .66;
}

.afm-orb {
	position: fixed;
	z-index: -3;
	width: 38vw;
	aspect-ratio: 1;
	border-radius: 50%;
	filter: blur(100px);
	pointer-events: none;
	opacity: .12;
}

.afm-orb-one {
	top: 12%;
	left: -18%;
	background: var(--afm-cyan);
}

.afm-orb-two {
	top: 26%;
	right: -20%;
	background: var(--afm-violet);
}

.afm-glass {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--afm-line);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .015) 36%),
		var(--afm-panel);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .12),
		inset 0 -1px 0 rgba(255, 255, 255, .025),
		var(--afm-shadow-soft);
	backdrop-filter: blur(22px) saturate(135%);
	-webkit-backdrop-filter: blur(22px) saturate(135%);
}

.afm-glass::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	border-radius: inherit;
	background:
		linear-gradient(115deg, rgba(255, 255, 255, .12), transparent 24%, transparent 74%, rgba(67, 231, 218, .05)),
		radial-gradient(circle at var(--pointer-x, 50%) var(--pointer-y, 50%), rgba(102, 231, 255, .12), transparent 30%);
	pointer-events: none;
	opacity: .8;
}

.afm-glass > * {
	position: relative;
	z-index: 1;
}

.afm-pointer-glow {
	--pointer-x: 50%;
	--pointer-y: 50%;
	transition:
		transform .45s var(--afm-ease),
		border-color .35s ease,
		box-shadow .45s ease;
}

.afm-pointer-glow:hover {
	transform: translateY(-5px);
	border-color: rgba(109, 238, 231, .28);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .18),
		0 26px 70px rgba(0, 0, 0, .34),
		0 0 42px rgba(67, 231, 218, .08);
}

.afm-site-header {
	position: fixed;
	z-index: 1000;
	top: 0;
	left: 0;
	width: 100%;
	transition:
		background .3s ease,
		box-shadow .3s ease,
		border-color .3s ease;
}

.afm-site-header.is-scrolled {
	border-bottom: 1px solid rgba(255, 255, 255, .07);
	background: rgba(4, 9, 20, .72);
	box-shadow: 0 12px 40px rgba(0, 0, 0, .28);
	backdrop-filter: blur(22px) saturate(130%);
	-webkit-backdrop-filter: blur(22px) saturate(130%);
}

.afm-header-inner {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 26px;
	min-height: var(--afm-header-height);
}

.afm-brand {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	min-width: max-content;
}

.afm-brand-mark {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(67, 231, 218, .26);
	border-radius: 15px;
	background:
		linear-gradient(145deg, rgba(67, 231, 218, .2), rgba(124, 92, 255, .1)),
		rgba(255, 255, 255, .04);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .18),
		0 0 28px rgba(67, 231, 218, .1);
}

.afm-brand-mark svg {
	width: 34px;
	height: 34px;
	fill: none;
	stroke: var(--afm-cyan);
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.afm-brand-mark .afm-brand-flight {
	fill: var(--afm-violet-2);
	stroke: none;
}

.afm-brand-copy {
	display: flex;
	flex-direction: column;
	line-height: 1.05;
}

.afm-brand-copy strong {
	font-size: 1.18rem;
	letter-spacing: -.03em;
}

.afm-brand-copy em {
	color: var(--afm-cyan);
	font-style: normal;
}

.afm-brand-copy small {
	margin-top: 5px;
	color: var(--afm-muted);
	font-size: .62rem;
	font-weight: 650;
	letter-spacing: .035em;
}

.afm-custom-logo img {
	width: auto;
	max-height: 50px;
}

.afm-navigation {
	justify-self: center;
}

.afm-nav-list,
.afm-navigation ul {
	display: flex;
	align-items: center;
	gap: clamp(14px, 1.7vw, 28px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.afm-navigation li {
	position: relative;
}

.afm-navigation a {
	position: relative;
	display: block;
	padding: 9px 0;
	color: rgba(235, 247, 255, .8);
	font-size: .82rem;
	font-weight: 680;
	transition: color .25s ease;
}

.afm-navigation a::after {
	content: "";
	position: absolute;
	right: 50%;
	bottom: 3px;
	left: 50%;
	height: 1px;
	background: linear-gradient(90deg, var(--afm-cyan), var(--afm-violet));
	box-shadow: 0 0 12px var(--afm-cyan);
	transition: left .25s ease, right .25s ease;
}

.afm-navigation a:hover,
.afm-navigation .current-menu-item > a {
	color: #fff;
}

.afm-navigation a:hover::after,
.afm-navigation .current-menu-item > a::after {
	right: 0;
	left: 0;
}

.afm-navigation .sub-menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 50%;
	display: grid;
	gap: 2px;
	min-width: 220px;
	padding: 10px;
	border: 1px solid var(--afm-line);
	border-radius: 16px;
	background: rgba(7, 15, 31, .94);
	box-shadow: var(--afm-shadow);
	backdrop-filter: blur(24px);
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, 8px);
	transition: .25s ease;
}

.afm-navigation li:hover > .sub-menu,
.afm-navigation li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}

.afm-navigation .sub-menu a {
	padding: 9px 12px;
	border-radius: 10px;
}

.afm-navigation .sub-menu a:hover {
	background: rgba(255, 255, 255, .06);
}

.afm-header-actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.afm-language {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-right: 3px;
	color: var(--afm-muted);
	font-size: .73rem;
	font-weight: 800;
}

.afm-language a:hover,
.afm-language a[aria-current="page"] {
	color: var(--afm-cyan);
}

.afm-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 48px;
	padding: 12px 20px;
	border: 1px solid transparent;
	border-radius: 14px;
	cursor: pointer;
	color: #fff;
	font-weight: 780;
	line-height: 1;
	letter-spacing: -.01em;
	transition:
		transform .28s var(--afm-ease),
		box-shadow .3s ease,
		border-color .3s ease,
		background .3s ease;
}

.afm-button:hover {
	transform: translateY(-2px);
}

.afm-button:focus-visible,
.afm-navigation a:focus-visible,
.afm-text-link:focus-visible {
	outline: 3px solid rgba(67, 231, 218, .42);
	outline-offset: 4px;
}

.afm-button-primary {
	background:
		linear-gradient(135deg, rgba(67, 231, 218, .96), rgba(80, 206, 255, .92) 48%, rgba(124, 92, 255, .96));
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .52),
		0 14px 30px rgba(70, 140, 255, .18),
		0 0 28px rgba(67, 231, 218, .15);
	color: #04111a;
}

.afm-button-primary:hover {
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .65),
		0 18px 38px rgba(83, 135, 255, .25),
		0 0 40px rgba(67, 231, 218, .22);
}

.afm-button-ghost {
	border-color: rgba(213, 239, 255, .16);
	background: rgba(255, 255, 255, .035);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
	color: #eaf7ff;
	backdrop-filter: blur(12px);
}

.afm-button-ghost:hover {
	border-color: rgba(67, 231, 218, .28);
	background: rgba(67, 231, 218, .065);
}

.afm-button-small {
	min-height: 40px;
	padding: 10px 14px;
	border-radius: 12px;
	font-size: .76rem;
}

.afm-button-large {
	min-height: 55px;
	padding: 16px 23px;
	border-radius: 16px;
}

.afm-button-block {
	width: 100%;
}

.afm-button-row {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.afm-menu-toggle {
	display: none;
	width: 46px;
	height: 42px;
	padding: 11px;
	border: 1px solid var(--afm-line);
	border-radius: 13px;
	background: rgba(255, 255, 255, .04);
}

.afm-menu-toggle span:not(.screen-reader-text) {
	display: block;
	width: 100%;
	height: 2px;
	margin: 4px 0;
	border-radius: 999px;
	background: #fff;
	transition: transform .25s ease, opacity .25s ease;
}

.afm-menu-toggle[aria-expanded="true"] span:nth-child(1) {
	transform: translateY(6px) rotate(45deg);
}

.afm-menu-toggle[aria-expanded="true"] span:nth-child(2) {
	opacity: 0;
}

.afm-menu-toggle[aria-expanded="true"] span:nth-child(3) {
	transform: translateY(-6px) rotate(-45deg);
}

.afm-hero {
	position: relative;
	min-height: 820px;
	padding: calc(var(--afm-header-height) + 70px) 0 56px;
	overflow: hidden;
}

.afm-hero::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 180px;
	background: linear-gradient(180deg, transparent, var(--afm-bg));
	pointer-events: none;
}

.afm-hero-visual {
	position: absolute;
	z-index: -1;
	inset: 70px 0 auto;
	height: 710px;
	pointer-events: none;
	opacity: .85;
}

.afm-hero-visual img {
	position: absolute;
	top: 0;
	left: 50%;
	width: min(1500px, 120vw);
	max-width: none;
	height: 100%;
	object-fit: cover;
	transform: translateX(-50%);
}

.afm-world-map {
	opacity: .68;
	filter: saturate(1.12) contrast(1.08);
}

.afm-world-routes {
	opacity: .7;
	mix-blend-mode: screen;
	animation: afmRoutePulse 5s ease-in-out infinite alternate;
}

.afm-world-sparkles {
	opacity: .75;
	mix-blend-mode: screen;
	animation: afmTwinkle 5.5s ease-in-out infinite alternate;
}

.afm-world-plane {
	opacity: .88;
	mix-blend-mode: screen;
	animation: afmPlaneFloat 8s var(--afm-ease) infinite alternate;
}

.afm-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.16fr) minmax(370px, .84fr);
	align-items: center;
	gap: clamp(44px, 6vw, 88px);
	min-height: 640px;
}

.afm-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-bottom: 22px;
}

.afm-chip,
.afm-status-pill {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 11px;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 999px;
	background: rgba(255, 255, 255, .035);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
	color: #c7d7e8;
	font-size: .69rem;
	font-weight: 800;
	letter-spacing: .04em;
	backdrop-filter: blur(12px);
}

.afm-chip-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--afm-cyan);
	box-shadow: 0 0 14px var(--afm-cyan);
}

.afm-hero h1 {
	max-width: 760px;
	margin: 0 0 20px;
	font-size: clamp(3rem, 6vw, 5.7rem);
	line-height: .98;
	letter-spacing: -.06em;
	text-wrap: balance;
}

.afm-hero h1 span {
	display: block;
	margin-top: 9px;
	background: linear-gradient(100deg, var(--afm-cyan), #91f8ee 34%, var(--afm-violet-2) 90%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	text-shadow: 0 0 36px rgba(67, 231, 218, .1);
}

.afm-hero-lead {
	max-width: 680px;
	margin: 0 0 28px;
	color: #b8c8da;
	font-size: clamp(1rem, 1.45vw, 1.18rem);
	line-height: 1.72;
}

.afm-trust-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin-top: 38px;
}

.afm-trust-grid div {
	position: relative;
	padding-left: 15px;
	border-left: 1px solid rgba(255, 255, 255, .12);
}

.afm-trust-grid div::before {
	content: "";
	position: absolute;
	top: 3px;
	left: -2px;
	width: 3px;
	height: 24px;
	border-radius: 999px;
	background: linear-gradient(var(--afm-cyan), var(--afm-violet));
	box-shadow: 0 0 15px rgba(67, 231, 218, .4);
}

.afm-trust-grid strong,
.afm-trust-grid span {
	display: block;
}

.afm-trust-grid strong {
	color: #fff;
	font-size: .94rem;
}

.afm-trust-grid span {
	margin-top: 2px;
	color: var(--afm-muted);
	font-size: .68rem;
	line-height: 1.35;
}

.afm-evaluation-preview {
	padding: clamp(22px, 3vw, 34px);
	border-radius: var(--afm-radius-lg);
	transform: perspective(1100px) rotateY(-2deg);
}

.afm-evaluation-preview:hover {
	transform: perspective(1100px) rotateY(0) translateY(-5px);
}

.afm-evaluation-preview::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 12% -8% -10% 8%;
	border-radius: 40px;
	background: linear-gradient(135deg, rgba(67, 231, 218, .1), rgba(124, 92, 255, .16));
	filter: blur(34px);
}

.afm-preview-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.afm-kicker {
	display: inline-block;
	margin-bottom: 7px;
	color: var(--afm-cyan);
	font-size: .72rem;
	font-weight: 850;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.afm-preview-head h2 {
	margin: 0;
	font-size: 1rem;
	color: #edf8ff;
}

.afm-status-pill {
	color: #a5f8d2;
	font-size: .58rem;
	white-space: nowrap;
}

.afm-score-layout {
	display: grid;
	grid-template-columns: 160px 1fr;
	align-items: center;
	gap: 26px;
	margin: 28px 0;
}

.afm-score-ring {
	--score: 86;
	position: relative;
	display: grid;
	place-items: center;
	width: 150px;
	aspect-ratio: 1;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, rgba(6, 13, 27, .94) 55%, transparent 56%),
		conic-gradient(from -90deg, var(--afm-cyan), var(--afm-violet) calc(var(--score) * 1%), rgba(255, 255, 255, .07) 0);
	box-shadow:
		inset 0 0 26px rgba(67, 231, 218, .08),
		0 0 36px rgba(124, 92, 255, .15);
}

.afm-score-ring::before {
	content: "";
	position: absolute;
	inset: 8px;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 50%;
}

.afm-score-ring div {
	display: flex;
	align-items: baseline;
}

.afm-score-ring strong {
	font-size: 2.5rem;
	letter-spacing: -.07em;
}

.afm-score-ring span {
	color: var(--afm-muted);
	font-size: .73rem;
}

.afm-score-copy {
	display: grid;
	gap: 3px;
}

.afm-score-copy span {
	color: var(--afm-muted);
	font-size: .72rem;
}

.afm-score-copy strong {
	margin-bottom: 8px;
	color: #b7f8d8;
	font-size: 1.05rem;
}

.afm-metric-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px 18px;
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.afm-metric-list li {
	display: grid;
	grid-template-columns: 8px 1fr auto;
	align-items: center;
	gap: 8px;
	color: #b8c8da;
	font-size: .72rem;
}

.afm-metric-list li > span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--afm-cyan);
	box-shadow: 0 0 10px rgba(67, 231, 218, .55);
}

.afm-metric-list b {
	color: var(--afm-success);
}

.afm-preview-note {
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 12px;
	background: rgba(255, 255, 255, .025);
	color: var(--afm-muted);
	font-size: .7rem;
}

.afm-time-note {
	display: block;
	margin-top: 10px;
	color: var(--afm-muted);
	text-align: center;
}

.afm-section {
	position: relative;
	padding: clamp(60px, 8vw, 112px) 0;
}

.afm-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 22px;
	margin-bottom: 30px;
}

.afm-section-heading-center {
	justify-content: center;
	text-align: center;
}

.afm-section-heading h2,
.afm-impact-panel h2,
.afm-final-panel h2,
.afm-page-hero h1,
.afm-entry-header h1 {
	margin: 0;
	font-size: clamp(2rem, 4vw, 3.7rem);
	line-height: 1.04;
	letter-spacing: -.045em;
	text-wrap: balance;
}

.afm-section-heading h2 {
	font-size: clamp(1.9rem, 3.2vw, 3.15rem);
}

.afm-text-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #bdeff2;
	font-size: .82rem;
	font-weight: 800;
	transition: color .25s ease, gap .25s ease;
}

.afm-text-link:hover {
	gap: 9px;
	color: var(--afm-cyan);
}

.afm-destination-rail {
	display: grid;
	grid-auto-columns: minmax(145px, 1fr);
	grid-auto-flow: column;
	gap: 13px;
	overflow-x: auto;
	padding: 5px 4px 18px;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	scrollbar-color: rgba(67, 231, 218, .26) transparent;
}

.afm-destination-card {
	min-height: 280px;
	border-radius: 18px;
	scroll-snap-align: start;
}

.afm-destination-card img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .65s var(--afm-ease), filter .4s ease;
}

.afm-destination-card:hover img {
	transform: scale(1.05);
	filter: saturate(1.08) brightness(1.04);
}

.afm-destination-shade,
.afm-promotion-overlay {
	position: absolute;
	z-index: 1;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(4, 8, 17, .1), rgba(3, 8, 18, .88)),
		linear-gradient(120deg, rgba(67, 231, 218, .05), transparent 45%);
}

.afm-destination-copy {
	position: absolute;
	z-index: 2;
	right: 16px;
	bottom: 17px;
	left: 16px;
	display: grid;
	gap: 3px;
}

.afm-destination-copy b {
	font-size: 1.15rem;
}

.afm-destination-copy strong {
	font-size: .95rem;
}

.afm-destination-copy small {
	color: #b5c3d3;
	font-size: .67rem;
}

.afm-why-layout {
	display: grid;
	grid-template-columns: 1.3fr .7fr;
	gap: 18px;
}

.afm-why-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.afm-why-card {
	min-height: 244px;
	padding: 22px;
	border-radius: 20px;
}

.afm-why-card img {
	width: 70px;
	height: 70px;
	object-fit: contain;
	filter: drop-shadow(0 0 16px rgba(67, 231, 218, .12));
}

.afm-why-card h3,
.afm-team-card h3 {
	margin: 14px 0 8px;
	font-size: 1.05rem;
	line-height: 1.25;
}

.afm-why-card p,
.afm-team-card p,
.afm-impact-panel p,
.afm-final-panel p {
	margin: 0;
	color: var(--afm-muted);
	font-size: .84rem;
}

.afm-team-card {
	min-height: 100%;
	border-radius: 22px;
}

.afm-team-card > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.afm-team-card::after {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, rgba(5, 10, 20, .05), rgba(4, 9, 19, .94) 76%);
}

.afm-team-card-copy {
	position: absolute;
	z-index: 2;
	right: 24px;
	bottom: 24px;
	left: 24px;
}

.afm-team-card h3 {
	max-width: 330px;
	margin-top: 0;
	font-size: 1.5rem;
	letter-spacing: -.03em;
}

.afm-promotion-grid,
.afm-module-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.afm-promotion-card {
	min-height: 300px;
	border-radius: 20px;
}

.afm-promotion-card img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .65s var(--afm-ease);
}

.afm-promotion-card:hover img {
	transform: scale(1.045);
}

.afm-promotion-copy {
	position: absolute;
	z-index: 2;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: grid;
	gap: 6px;
}

.afm-promotion-copy small {
	width: fit-content;
	padding: 5px 8px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 999px;
	background: rgba(7, 16, 31, .58);
	color: #cbf7f0;
	font-size: .56rem;
	font-weight: 850;
	letter-spacing: .08em;
	backdrop-filter: blur(10px);
}

.afm-promotion-copy strong {
	font-size: 1.18rem;
}

.afm-promotion-copy em {
	color: #b9c7d7;
	font-size: .7rem;
	font-style: normal;
}

.afm-process-section {
	background: linear-gradient(180deg, transparent, rgba(124, 92, 255, .035), transparent);
}

.afm-process-line {
	position: relative;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 18px;
	margin: 46px 0 0;
	padding: 0;
	list-style: none;
}

.afm-process-line::before {
	content: "";
	position: absolute;
	top: 68px;
	right: 8%;
	left: 8%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(67, 231, 218, .32), rgba(124, 92, 255, .34), transparent);
	box-shadow: 0 0 12px rgba(67, 231, 218, .08);
}

.afm-process-step {
	position: relative;
	text-align: center;
}

.afm-process-number {
	position: absolute;
	z-index: 3;
	top: -11px;
	left: 50%;
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border: 1px solid rgba(67, 231, 218, .35);
	border-radius: 50%;
	background: #0b1b2e;
	box-shadow: 0 0 22px rgba(67, 231, 218, .22);
	color: var(--afm-cyan);
	font-size: .62rem;
	font-weight: 900;
	transform: translateX(-50%);
}

.afm-process-icon {
	display: grid;
	place-items: center;
	width: 104px;
	height: 104px;
	margin: 0 auto 18px;
	border-radius: 32px;
}

.afm-process-icon img {
	width: 82px;
	height: 82px;
	object-fit: contain;
}

.afm-process-icon svg {
	width: 52px;
	height: 52px;
	fill: none;
	stroke: var(--afm-cyan);
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.afm-process-step h3 {
	margin: 0 0 7px;
	font-size: .92rem;
	line-height: 1.24;
}

.afm-process-step p {
	margin: 0 auto;
	max-width: 190px;
	color: var(--afm-muted);
	font-size: .72rem;
	line-height: 1.5;
}

.afm-testimonial-track {
	display: grid;
	grid-template-columns: repeat(3, 1fr) .72fr;
	gap: 14px;
}

.afm-testimonial-card,
.afm-google-rating {
	min-height: 235px;
	margin: 0;
	padding: 24px;
	border-radius: 20px;
}

.afm-quote-mark {
	display: block;
	height: 28px;
	color: var(--afm-cyan);
	font-family: Georgia, serif;
	font-size: 3.2rem;
	line-height: 1;
}

.afm-testimonial-card > p {
	margin: 7px 0 22px;
	color: #dbe8f2;
	font-size: .89rem;
}

.afm-testimonial-card footer {
	display: flex;
	align-items: center;
	gap: 12px;
}

.afm-avatar-placeholder {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(67, 231, 218, .25);
	border-radius: 50%;
	background: linear-gradient(135deg, rgba(67, 231, 218, .25), rgba(124, 92, 255, .22));
	font-weight: 900;
}

.afm-testimonial-card footer strong,
.afm-testimonial-card footer small {
	display: block;
}

.afm-testimonial-card footer small {
	color: var(--afm-muted);
	font-size: .68rem;
}

.afm-google-rating {
	display: grid;
	place-content: center;
	text-align: center;
}

.afm-google-rating > span {
	font-size: 1.1rem;
	font-weight: 800;
	letter-spacing: -.03em;
}

.afm-google-rating strong {
	margin: 8px 0 0;
	font-size: 1.75rem;
}

.afm-google-rating div {
	color: var(--afm-gold);
	letter-spacing: .14em;
}

.afm-google-rating small {
	margin-top: 8px;
	color: var(--afm-muted);
	font-size: .66rem;
}

.afm-news-placeholder {
	display: flex;
	align-items: center;
	gap: 22px;
	padding: 30px;
	border-radius: 22px;
}

.afm-news-placeholder-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 64px;
	height: 64px;
	border-radius: 20px;
	background: linear-gradient(135deg, rgba(67, 231, 218, .18), rgba(124, 92, 255, .2));
	color: var(--afm-cyan);
	font-size: 1.8rem;
}

.afm-news-placeholder h3 {
	margin: 0 0 6px;
}

.afm-news-placeholder p {
	margin: 0;
	color: var(--afm-muted);
}

.afm-impact-panel,
.afm-final-panel {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 54px;
	padding: clamp(28px, 5vw, 60px);
	border-radius: var(--afm-radius-lg);
}

.afm-impact-panel::after,
.afm-final-panel::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -40%;
	right: -8%;
	width: 320px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(67, 231, 218, .18), transparent 68%);
	filter: blur(16px);
}

.afm-impact-panel p,
.afm-final-panel p {
	max-width: 720px;
	margin: 16px 0 20px;
	font-size: .95rem;
}

.afm-impact-counter-wrap {
	display: grid;
	place-items: center;
	min-width: 220px;
	min-height: 180px;
	padding: 24px;
	border: 1px solid rgba(67, 231, 218, .22);
	border-radius: 28px;
	background: rgba(3, 12, 23, .34);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .08),
		0 0 45px rgba(67, 231, 218, .08);
	text-align: center;
}

.afm-impact-counter-wrap strong {
	display: block;
	background: linear-gradient(135deg, #fff, var(--afm-cyan));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-size: 3.9rem;
	line-height: 1;
	letter-spacing: -.08em;
}

.afm-impact-counter-wrap span {
	display: block;
	margin-top: 8px;
	color: var(--afm-muted);
	font-size: .75rem;
}

.afm-final-cta {
	padding-top: 40px;
}

.afm-final-panel {
	background:
		linear-gradient(120deg, rgba(67, 231, 218, .1), rgba(124, 92, 255, .12)),
		rgba(11, 23, 45, .66);
}

.afm-site-footer {
	position: relative;
	z-index: 3;
	padding: 50px 0 24px;
}

.afm-footer-panel {
	display: grid;
	grid-template-columns: .95fr 1.2fr .85fr;
	gap: 46px;
	padding: 44px;
	border-radius: 30px;
}

.afm-brand-footer {
	margin-bottom: 20px;
}

.afm-footer-intro p,
.afm-footer-newsletter p {
	color: var(--afm-muted);
	font-size: .78rem;
}

.afm-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.afm-social-links a {
	color: #c6d9e8;
	font-size: .72rem;
	font-weight: 750;
}

.afm-social-links a:hover {
	color: var(--afm-cyan);
}

.afm-footer-columns {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}

.afm-footer-columns h2 {
	margin: 0 0 14px;
	font-size: .83rem;
}

.afm-footer-columns a {
	display: block;
	margin: 8px 0;
	color: var(--afm-muted);
	font-size: .7rem;
	transition: color .2s ease, transform .2s ease;
}

.afm-footer-columns a:hover {
	color: var(--afm-cyan);
	transform: translateX(3px);
}

.afm-footer-newsletter h2 {
	margin: 0;
	font-size: 1.05rem;
	line-height: 1.25;
}

.afm-newsletter-form {
	display: flex;
	gap: 8px;
	margin-top: 16px;
}

.afm-newsletter-form input,
.afm-entry-content input:not([type="submit"]),
.afm-entry-content textarea,
.afm-entry-content select,
.afm-search-form input {
	width: 100%;
	min-height: 48px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 13px;
	outline: 0;
	background: rgba(2, 9, 20, .58);
	color: #fff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}

.afm-newsletter-form input:focus,
.afm-entry-content input:focus,
.afm-entry-content textarea:focus,
.afm-entry-content select:focus {
	border-color: rgba(67, 231, 218, .48);
	box-shadow: 0 0 0 4px rgba(67, 231, 218, .08);
}

.afm-newsletter-form .afm-button {
	flex: 0 0 auto;
	min-height: 48px;
	padding-inline: 15px;
	font-size: .72rem;
}

.afm-form-status {
	min-height: 20px;
	margin: 8px 0 0 !important;
}

.afm-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 8px 0;
	color: #758ba3;
	font-size: .68rem;
}

.afm-footer-bottom p {
	margin: 0;
}

.afm-impact-inline .afm-impact-counter {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
}

.afm-whatsapp-fab {
	position: fixed;
	z-index: 950;
	right: max(18px, env(safe-area-inset-right));
	bottom: max(18px, env(safe-area-inset-bottom));
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 50%;
	background: linear-gradient(145deg, #3af59d, #13c977);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .5),
		0 16px 38px rgba(10, 222, 125, .28),
		0 0 26px rgba(51, 235, 151, .22);
	transition: transform .25s ease;
}

.afm-whatsapp-fab:hover {
	transform: translateY(-4px) scale(1.03);
}

.afm-whatsapp-fab svg {
	width: 31px;
	height: 31px;
	fill: #052919;
}

.afm-inner-main {
	min-height: 70vh;
	padding: calc(var(--afm-header-height) + 70px) 0 90px;
}

.afm-reading-container {
	max-width: 980px;
}

.afm-page-hero,
.afm-content-panel,
.afm-error-panel {
	padding: clamp(28px, 5vw, 56px);
	border-radius: 28px;
}

.afm-page-hero {
	margin-bottom: 26px;
}

.afm-entry-header {
	margin-bottom: 30px;
}

.afm-post-meta {
	margin: 0 0 8px;
	color: var(--afm-muted);
	font-size: .74rem;
}

.afm-entry-content {
	color: #c9d8e5;
}

.afm-entry-content > * {
	max-width: 100%;
}

.afm-entry-content h2,
.afm-entry-content h3,
.afm-entry-content h4 {
	margin-top: 1.7em;
	color: #fff;
	line-height: 1.2;
}

.afm-entry-content a {
	color: var(--afm-cyan);
	text-decoration: underline;
	text-decoration-color: rgba(67, 231, 218, .35);
	text-underline-offset: 3px;
}

.afm-entry-content blockquote {
	margin: 1.6em 0;
	padding: 18px 20px;
	border-left: 3px solid var(--afm-cyan);
	border-radius: 0 14px 14px 0;
	background: rgba(67, 231, 218, .04);
}

.afm-featured-image {
	margin: -10px 0 30px;
	overflow: hidden;
	border-radius: 20px;
}

.afm-post-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.afm-post-card {
	border-radius: 22px;
}

.afm-post-card-media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.afm-post-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s var(--afm-ease);
}

.afm-post-card:hover .afm-post-card-media img {
	transform: scale(1.04);
}

.afm-post-card-body {
	padding: 22px;
}

.afm-post-card h2 {
	margin: 0 0 10px;
	font-size: 1.16rem;
	line-height: 1.25;
}

.afm-post-card p {
	color: var(--afm-muted);
	font-size: .8rem;
}

.afm-empty-state {
	grid-column: 1 / -1;
	padding: 40px;
	border-radius: 22px;
	text-align: center;
}

.navigation.pagination {
	margin-top: 30px;
}

.nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.page-numbers {
	display: grid;
	place-items: center;
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	border: 1px solid var(--afm-line);
	border-radius: 12px;
	background: rgba(255, 255, 255, .03);
}

.page-numbers.current,
.page-numbers:hover {
	border-color: rgba(67, 231, 218, .35);
	background: rgba(67, 231, 218, .08);
}

.afm-error-panel {
	min-height: 430px;
	display: grid;
	place-content: center;
	text-align: center;
}

.afm-error-code {
	background: linear-gradient(135deg, var(--afm-cyan), var(--afm-violet));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-size: clamp(5rem, 14vw, 10rem);
	font-weight: 900;
	line-height: .9;
	letter-spacing: -.1em;
}

.afm-error-panel p {
	color: var(--afm-muted);
}

.afm-error-panel .afm-button-row {
	justify-content: center;
	margin-top: 16px;
}

.afm-comments {
	margin-top: 24px;
	padding: 28px;
	border-radius: 22px;
}

.comment-list {
	padding-left: 22px;
}

.comment-body {
	padding: 16px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

[data-afm-reveal] {
	opacity: 0;
	transform: translateY(24px);
	transition:
		opacity .75s var(--afm-ease),
		transform .75s var(--afm-ease);
}

[data-afm-reveal].is-visible {
	opacity: 1;
	transform: translateY(0);
}

@keyframes afmRoutePulse {
	from { opacity: .46; filter: brightness(.95); }
	to { opacity: .85; filter: brightness(1.18); }
}

@keyframes afmTwinkle {
	0% { opacity: .35; transform: translateX(-50%) scale(1); }
	100% { opacity: .88; transform: translateX(-50%) scale(1.018); }
}

@keyframes afmPlaneFloat {
	0% { transform: translateX(-50%) translate3d(-14px, 7px, 0); }
	100% { transform: translateX(-50%) translate3d(20px, -11px, 0); }
}

@media (max-width: 1120px) {
	.afm-header-inner {
		grid-template-columns: auto auto 1fr;
	}

	.afm-menu-toggle {
		display: block;
		justify-self: end;
		order: 3;
	}

	.afm-navigation {
		position: fixed;
		top: var(--afm-header-height);
		right: 20px;
		left: 20px;
		display: none;
		padding: 18px;
		border: 1px solid var(--afm-line);
		border-radius: 20px;
		background: rgba(5, 11, 24, .94);
		box-shadow: var(--afm-shadow);
		backdrop-filter: blur(24px);
	}

	.afm-navigation.is-open {
		display: block;
	}

	.afm-navigation .afm-nav-list,
	.afm-navigation ul {
		display: grid;
		gap: 4px;
	}

	.afm-navigation a {
		padding: 12px;
		border-radius: 11px;
	}

	.afm-navigation a:hover {
		background: rgba(255, 255, 255, .05);
	}

	.afm-navigation a::after {
		display: none;
	}

	.afm-navigation .sub-menu {
		position: static;
		display: none;
		margin: 4px 0 0 14px;
		padding: 5px;
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.afm-navigation li:hover > .sub-menu,
	.afm-navigation li:focus-within > .sub-menu {
		display: grid;
		transform: none;
	}

	.afm-header-actions {
		justify-self: end;
		order: 2;
	}

	.afm-hero-grid {
		grid-template-columns: 1fr .78fr;
		gap: 36px;
	}

	.afm-hero h1 {
		font-size: clamp(2.8rem, 6vw, 4.7rem);
	}

	.afm-promotion-grid,
	.afm-module-grid {
		grid-template-columns: 1fr 1fr;
	}

	.afm-testimonial-track {
		grid-template-columns: repeat(2, 1fr);
	}

	.afm-footer-panel {
		grid-template-columns: 1fr 1.5fr;
	}

	.afm-footer-newsletter {
		grid-column: 1 / -1;
	}
}

@media (max-width: 860px) {
	:root {
		--afm-container: min(100% - 28px, 760px);
		--afm-header-height: 72px;
	}

	body.admin-bar .afm-site-header {
		top: 46px;
	}

	.afm-header-inner {
		grid-template-columns: 1fr auto;
		gap: 12px;
	}

	.afm-header-actions {
		display: none;
	}

	.afm-menu-toggle {
		order: initial;
	}

	.afm-brand-copy small {
		display: none;
	}

	.afm-hero {
		min-height: auto;
		padding-top: calc(var(--afm-header-height) + 55px);
	}

	.afm-hero-grid {
		grid-template-columns: 1fr;
		gap: 44px;
	}

	.afm-hero-visual {
		top: 64px;
		height: 610px;
		opacity: .72;
	}

	.afm-evaluation-preview {
		max-width: 620px;
		transform: none;
	}

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

	.afm-why-layout {
		grid-template-columns: 1fr;
	}

	.afm-team-card {
		min-height: 460px;
	}

	.afm-process-line {
		grid-template-columns: 1fr;
		gap: 26px;
	}

	.afm-process-line::before {
		top: 0;
		bottom: 0;
		left: 50%;
		width: 1px;
		height: auto;
	}

	.afm-process-step {
		display: grid;
		grid-template-columns: 110px 1fr;
		grid-template-rows: auto auto;
		column-gap: 22px;
		align-items: center;
		padding: 12px;
		border-radius: 20px;
		background: rgba(255, 255, 255, .02);
		text-align: left;
	}

	.afm-process-number {
		top: 1px;
		left: 55px;
	}

	.afm-process-icon {
		grid-row: 1 / 3;
		width: 96px;
		height: 96px;
		margin: 0;
	}

	.afm-process-step h3,
	.afm-process-step p {
		max-width: none;
		margin-inline: 0;
	}

	.afm-impact-panel,
	.afm-final-panel {
		grid-template-columns: 1fr;
	}

	.afm-impact-counter-wrap {
		width: 100%;
	}

	.afm-footer-panel {
		grid-template-columns: 1fr;
		gap: 34px;
		padding: 32px;
	}

	.afm-footer-newsletter {
		grid-column: auto;
	}

	.afm-post-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 620px) {
	.afm-brand-mark {
		width: 39px;
		height: 39px;
		border-radius: 13px;
	}

	.afm-brand-mark svg {
		width: 30px;
		height: 30px;
	}

	.afm-brand-copy strong {
		font-size: 1.03rem;
	}

	.afm-hero h1 {
		font-size: clamp(2.6rem, 13vw, 4rem);
	}

	.afm-hero-lead {
		font-size: .95rem;
	}

	.afm-button-row {
		display: grid;
		grid-template-columns: 1fr;
	}

	.afm-button-row .afm-button {
		width: 100%;
	}

	.afm-score-layout {
		grid-template-columns: 120px 1fr;
		gap: 18px;
	}

	.afm-score-ring {
		width: 118px;
	}

	.afm-score-ring strong {
		font-size: 2rem;
	}

	.afm-metric-list {
		grid-template-columns: 1fr;
	}

	.afm-section {
		padding: 58px 0;
	}

	.afm-section-heading {
		display: grid;
		align-items: start;
	}

	.afm-destination-rail {
		grid-auto-columns: 64%;
	}

	.afm-why-grid,
	.afm-promotion-grid,
	.afm-module-grid,
	.afm-testimonial-track,
	.afm-post-grid {
		grid-template-columns: 1fr;
	}

	.afm-team-card {
		min-height: 390px;
	}

	.afm-promotion-card {
		min-height: 280px;
	}

	.afm-process-step {
		grid-template-columns: 88px 1fr;
		column-gap: 14px;
	}

	.afm-process-number {
		left: 44px;
	}

	.afm-process-icon {
		width: 80px;
		height: 80px;
		border-radius: 24px;
	}

	.afm-process-icon img {
		width: 68px;
		height: 68px;
	}

	.afm-news-placeholder {
		display: grid;
	}

	.afm-impact-panel,
	.afm-final-panel,
	.afm-page-hero,
	.afm-content-panel,
	.afm-error-panel {
		padding: 26px 22px;
		border-radius: 22px;
	}

	.afm-footer-columns {
		grid-template-columns: 1fr 1fr;
	}

	.afm-newsletter-form {
		display: grid;
	}

	.afm-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.afm-whatsapp-fab {
		width: 52px;
		height: 52px;
	}
}

@media (max-width: 380px) {
	.afm-footer-columns {
		grid-template-columns: 1fr;
	}

	.afm-destination-rail {
		grid-auto-columns: 78%;
	}
}

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

	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .001ms !important;
	}

	[data-afm-reveal] {
		opacity: 1;
		transform: none;
	}
}

@media (forced-colors: active) {
	.afm-glass,
	.afm-button,
	.afm-site-header {
		border: 1px solid CanvasText;
		background: Canvas;
		color: CanvasText;
	}

	.afm-space-canvas,
	.afm-orb,
	.afm-hero-visual {
		display: none;
	}
}

/* --------------------------------------------------------------------------
   AFM-R0.2 — acceso visible, app shells y contacto funcional
   -------------------------------------------------------------------------- */
.afm-mobile-controls {
	display: none;
	align-items: center;
	gap: 9px;
}

.afm-account-icon,
.afm-mobile-account svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.afm-brand-mark {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-color: rgba(116, 255, 238, .34);
	background:
		radial-gradient(circle at 22% 15%, rgba(102, 255, 239, .19), transparent 48%),
		linear-gradient(145deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .018)),
		rgba(3, 14, 30, .76);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .24),
		inset 0 -10px 22px rgba(42, 86, 150, .12),
		0 12px 32px rgba(0, 0, 0, .28),
		0 0 30px rgba(71, 237, 221, .12);
	backdrop-filter: blur(18px) saturate(145%);
	-webkit-backdrop-filter: blur(18px) saturate(145%);
}

.afm-brand-mark::after {
	content: "";
	position: absolute;
	inset: -70% -42%;
	z-index: -1;
	background: linear-gradient(112deg, transparent 40%, rgba(255, 255, 255, .34) 50%, transparent 60%);
	transform: translateX(-70%) rotate(7deg);
	animation: afmLogoShine 7.5s ease-in-out infinite;
}

.afm-brand-mark svg {
	width: 38px;
	height: 38px;
	filter: drop-shadow(0 0 10px rgba(90, 248, 233, .16));
}

.afm-brand-copy strong {
	font-weight: 820;
	letter-spacing: -.04em;
}

.afm-brand-copy em {
	background: linear-gradient(105deg, #62f9e9, #61c8ff 53%, #a689ff);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.afm-site-header::after {
	content: "";
	position: absolute;
	right: 4%;
	bottom: 0;
	left: 4%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(98, 250, 234, .22), rgba(166, 137, 255, .18), transparent);
	filter: drop-shadow(0 0 8px rgba(98, 250, 234, .22));
	pointer-events: none;
}

.afm-mobile-account {
	display: none;
	align-items: center;
	gap: 7px;
	min-height: 42px;
	padding: 8px 11px;
	border: 1px solid rgba(178, 232, 255, .16);
	border-radius: 14px;
	background: linear-gradient(145deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .018));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14), 0 10px 26px rgba(0, 0, 0, .2);
	color: #effcff;
	font-size: .7rem;
	font-weight: 780;
	backdrop-filter: blur(18px) saturate(135%);
	-webkit-backdrop-filter: blur(18px) saturate(135%);
}

.afm-mobile-account:hover,
.afm-mobile-account:focus-visible {
	border-color: rgba(89, 244, 229, .34);
	background: rgba(89, 244, 229, .07);
}

.afm-app-main {
	min-height: 76vh;
	padding: calc(var(--afm-header-height) + 42px) 0 86px;
}

.afm-app-container {
	width: min(100% - 28px, 1440px);
	max-width: 1440px;
}

.afm-app-surface,
.afm-app-content {
	width: 100%;
}

.afm-app-content > :first-child,
.afm-app-content > .afm-portal,
.afm-app-content > .afm-auth-standalone,
.afm-app-content > .afm-portal-notice {
	margin-top: 0;
}

.afm-contact-main {
	padding-top: calc(var(--afm-header-height) + 34px);
}

.afm-contact-fallback {
	max-width: 850px;
	margin: 40px auto;
	padding: clamp(28px, 6vw, 64px);
	border-radius: 30px;
	text-align: center;
}

.afm-whatsapp-fab {
	display: flex;
	align-items: center;
	gap: 10px;
	width: auto;
	height: 60px;
	min-width: 176px;
	padding: 7px 14px 7px 7px;
	border-radius: 23px;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .35), transparent 30%),
		linear-gradient(135deg, #43f39f, #14c978 72%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .62),
		0 18px 46px rgba(5, 196, 103, .3),
		0 0 34px rgba(64, 241, 154, .2);
}

.afm-whatsapp-fab::before {
	content: "";
	position: absolute;
	inset: 1px;
	border: 1px solid rgba(255, 255, 255, .26);
	border-radius: inherit;
	pointer-events: none;
}

.afm-whatsapp-icon {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	flex: 0 0 auto;
	border-radius: 17px;
	background: rgba(1, 43, 25, .12);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22);
}

.afm-whatsapp-icon svg {
	width: 29px;
	height: 29px;
	fill: #052919;
}

.afm-whatsapp-copy {
	display: grid;
	gap: 3px;
	min-width: 82px;
	color: #042918;
	line-height: 1.05;
}

.afm-whatsapp-copy strong {
	font-size: .7rem;
}

.afm-whatsapp-copy small {
	font-size: .52rem;
	font-weight: 740;
	opacity: .72;
}

.afm-whatsapp-live {
	position: absolute;
	top: 8px;
	right: 9px;
	width: 7px;
	height: 7px;
	border: 2px solid rgba(255, 255, 255, .72);
	border-radius: 50%;
	background: #0c793f;
	box-shadow: 0 0 0 4px rgba(8, 108, 57, .12), 0 0 12px rgba(5, 105, 55, .34);
	animation: afmLivePulse 2.4s ease-in-out infinite;
}

body.afm-guide-active:not(.afm-guide-position-left) .afm-whatsapp-fab {
	right: max(185px, calc(env(safe-area-inset-right) + 185px));
}

@keyframes afmLogoShine {
	0%, 62%, 100% { transform: translateX(-70%) rotate(7deg); opacity: 0; }
	72% { opacity: .72; }
	83% { transform: translateX(70%) rotate(7deg); opacity: 0; }
}

@keyframes afmLivePulse {
	50% { transform: scale(.78); opacity: .58; }
}

@media (max-width: 1120px) {
	.afm-header-inner {
		grid-template-columns: auto 1fr auto;
	}

	.afm-header-actions {
		justify-self: end;
		order: initial;
	}

	.afm-mobile-controls {
		display: flex;
		justify-self: end;
	}

	.afm-menu-toggle {
		display: block;
		order: initial;
	}
}

@media (max-width: 860px) {
	.afm-header-inner {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.afm-header-actions {
		display: none;
	}

	.afm-mobile-account {
		display: inline-flex;
	}

	.afm-navigation {
		top: calc(var(--afm-header-height) + 8px);
	}

	.afm-app-main {
		padding-top: calc(var(--afm-header-height) + 26px);
	}
}

@media (max-width: 620px) {
	.afm-brand-copy small {
		display: none;
	}

	.afm-mobile-account span {
		display: none;
	}

	.afm-mobile-account {
		width: 43px;
		padding: 0;
		justify-content: center;
	}

	.afm-whatsapp-fab {
		min-width: 54px;
		width: 54px;
		height: 54px;
		padding: 4px;
		border-radius: 20px;
	}

	.afm-whatsapp-icon {
		width: 46px;
		height: 46px;
	}

	.afm-whatsapp-copy,
	.afm-whatsapp-live {
		display: none;
	}

	body.afm-guide-active:not(.afm-guide-position-left) .afm-whatsapp-fab {
		right: 91px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.afm-brand-mark::after,
	.afm-whatsapp-live {
		animation: none !important;
	}
}

/* --------------------------------------------------------------------------
   AFM-R0.3 — Hero contrast hotfix
   Removes the baked checkerboard from auxiliary RGB assets and restores the
   intended dark, high-contrast mobile presentation without changing content.
   -------------------------------------------------------------------------- */
.afm-hero {
	isolation: isolate;
	background:
		radial-gradient(circle at 78% 24%, rgba(43, 169, 220, .10), transparent 34%),
		linear-gradient(180deg, #061120 0%, #071626 66%, var(--afm-bg) 100%);
}

.afm-hero::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(4, 13, 25, .98) 0%, rgba(4, 13, 25, .92) 32%, rgba(4, 13, 25, .52) 58%, rgba(4, 13, 25, .20) 100%),
		linear-gradient(180deg, rgba(3, 10, 20, .10), rgba(3, 10, 20, .44));
	pointer-events: none;
}

.afm-hero-visual {
	z-index: -2;
	opacity: .62;
}

/* These three supplied files contain a visible checkerboard baked into their
   RGB pixels (they are not transparent). The base world map already includes
   routes, light points and an aircraft, so hiding them removes the grey veil
   without losing the intended visual narrative. */
.afm-world-routes,
.afm-world-sparkles,
.afm-world-plane {
	display: none;
}

.afm-world-map {
	opacity: .72;
	filter: saturate(1.16) contrast(1.14) brightness(.82);
}

.afm-hero-copy {
	position: relative;
	z-index: 2;
}

.afm-hero h1 {
	text-shadow: 0 2px 24px rgba(0, 0, 0, .34);
}

.afm-hero-lead {
	color: #cad7e6;
	text-shadow: 0 1px 16px rgba(0, 0, 0, .42);
}

@media (max-width: 860px) {
	.afm-hero {
		background:
			radial-gradient(circle at 82% 18%, rgba(54, 185, 227, .12), transparent 32%),
			linear-gradient(180deg, #071322 0%, #081827 72%, var(--afm-bg) 100%);
	}

	.afm-hero::before {
		background:
			linear-gradient(180deg, rgba(4, 13, 25, .88) 0%, rgba(4, 13, 25, .78) 58%, rgba(4, 13, 25, .90) 100%),
			linear-gradient(90deg, rgba(4, 13, 25, .94) 0%, rgba(4, 13, 25, .70) 72%, rgba(4, 13, 25, .42) 100%);
	}

	.afm-hero-visual {
		top: 72px;
		height: 610px;
		opacity: .46;
	}

	.afm-hero-visual img {
		left: 67%;
		width: max(1060px, 176vw);
		object-position: center;
	}

	.afm-world-map {
		opacity: .68;
		filter: saturate(1.12) contrast(1.16) brightness(.66);
	}

	.afm-chip,
	.afm-status-pill {
		background: rgba(8, 25, 42, .64);
		border-color: rgba(154, 228, 244, .18);
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, .09), 0 8px 24px rgba(0, 0, 0, .16);
		-webkit-backdrop-filter: blur(12px) saturate(125%);
		backdrop-filter: blur(12px) saturate(125%);
	}
}

@media (max-width: 620px) {
	.afm-hero {
		padding-top: calc(var(--afm-header-height) + 42px);
	}

	.afm-hero::before {
		background:
			linear-gradient(180deg, rgba(4, 13, 25, .91) 0%, rgba(4, 13, 25, .82) 58%, rgba(4, 13, 25, .94) 100%),
			linear-gradient(90deg, rgba(4, 13, 25, .96), rgba(4, 13, 25, .62));
	}

	.afm-hero-visual {
		top: 76px;
		height: 560px;
		opacity: .38;
	}

	.afm-hero-visual img {
		left: 78%;
		width: 1220px;
	}

	.afm-hero h1 {
		text-shadow: 0 3px 28px rgba(0, 0, 0, .52);
	}

	.afm-hero-lead {
		color: #d0dbea;
		line-height: 1.62;
	}
}

/* --------------------------------------------------------------------------
   AFM-R0.4 — Living crystal hero
   Procedural space, orbital motion and deeper Liquid Glass. No new image
   assets, no plugin changes and no content changes.
   -------------------------------------------------------------------------- */
.afm-hero {
	--afm-hero-light-x: 72%;
	--afm-hero-light-y: 28%;
	background:
		radial-gradient(circle at var(--afm-hero-light-x) var(--afm-hero-light-y), rgba(64, 204, 255, .14), transparent 26%),
		radial-gradient(circle at 92% 58%, rgba(130, 75, 255, .13), transparent 30%),
		linear-gradient(180deg, #030b18 0%, #061524 54%, #06111f 100%);
}

.afm-hero::before {
	background:
		linear-gradient(90deg, rgba(2, 9, 19, .97) 0%, rgba(2, 9, 19, .88) 35%, rgba(2, 9, 19, .36) 67%, rgba(2, 9, 19, .12) 100%),
		radial-gradient(ellipse at 72% 42%, transparent 0 30%, rgba(3, 11, 23, .12) 58%, rgba(3, 11, 23, .64) 100%);
}

.afm-hero-visual {
	overflow: hidden;
	will-change: transform;
}

.afm-hero-visual::after {
	content: "";
	position: absolute;
	inset: auto -8% -25% 25%;
	height: 48%;
	background:
		repeating-linear-gradient(90deg, transparent 0 52px, rgba(85, 214, 255, .08) 53px 54px),
		repeating-linear-gradient(0deg, transparent 0 38px, rgba(133, 92, 255, .07) 39px 40px);
	transform: perspective(500px) rotateX(68deg);
	transform-origin: bottom;
	mask-image: linear-gradient(to top, #000, transparent 85%);
	opacity: .45;
	animation: afmGridDrift 16s linear infinite;
}

.afm-hero-stars {
	position: absolute;
	inset: 0;
	background-repeat: repeat;
	mix-blend-mode: screen;
	pointer-events: none;
}

.afm-hero-stars-one {
	background-image:
		radial-gradient(circle, rgba(169, 241, 255, .86) 0 1px, transparent 1.6px),
		radial-gradient(circle, rgba(150, 110, 255, .72) 0 1px, transparent 1.7px);
	background-size: 127px 127px, 193px 193px;
	background-position: 11px 18px, 57px 81px;
	opacity: .42;
	animation: afmStarDrift 28s linear infinite;
}

.afm-hero-stars-two {
	background-image:
		radial-gradient(circle, rgba(79, 231, 220, .85) 0 1.2px, transparent 2px),
		radial-gradient(circle, rgba(255, 255, 255, .72) 0 .8px, transparent 1.5px);
	background-size: 241px 241px, 83px 83px;
	background-position: 30px 40px, 4px 12px;
	opacity: .28;
	animation: afmStarDriftReverse 42s linear infinite;
}

.afm-orbit {
	position: absolute;
	left: 61%;
	top: 12%;
	width: min(700px, 58vw);
	aspect-ratio: 1.75;
	border: 1px solid rgba(106, 222, 255, .19);
	border-radius: 50%;
	transform: rotate(-17deg);
	box-shadow: 0 0 22px rgba(62, 213, 255, .08), inset 0 0 20px rgba(134, 87, 255, .05);
	mask-image: linear-gradient(90deg, transparent, #000 20% 84%, transparent);
}

.afm-orbit::after {
	content: "";
	position: absolute;
	top: 46%;
	right: 10%;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #bdfcff;
	box-shadow: 0 0 9px #58edff, 0 0 24px #7560ff;
	animation: afmOrbitPulse 2.8s ease-in-out infinite;
}

.afm-orbit-two {
	left: 57%;
	top: 25%;
	width: min(780px, 64vw);
	transform: rotate(8deg);
	border-color: rgba(146, 94, 255, .16);
	animation: afmOrbitBreathe 8s ease-in-out infinite alternate;
}

.afm-aurora-wave {
	position: absolute;
	right: -8%;
	bottom: -17%;
	width: 78%;
	height: 35%;
	border-radius: 50%;
	background:
		radial-gradient(ellipse at 50% 0%, rgba(76, 229, 226, .17), transparent 56%),
		radial-gradient(ellipse at 66% 12%, rgba(119, 75, 255, .20), transparent 62%);
	filter: blur(18px);
	transform: rotate(-5deg);
	animation: afmAurora 9s ease-in-out infinite alternate;
}

.afm-world-map {
	filter: saturate(1.3) contrast(1.18) brightness(.83) drop-shadow(0 0 24px rgba(66, 201, 255, .13));
	animation: afmWorldBreathe 10s ease-in-out infinite alternate;
}

.afm-chip,
.afm-status-pill,
.afm-evaluation-preview,
.afm-button-ghost,
.afm-trust-grid div {
	-webkit-backdrop-filter: blur(18px) saturate(145%);
	backdrop-filter: blur(18px) saturate(145%);
}

.afm-chip,
.afm-status-pill {
	background: linear-gradient(135deg, rgba(17, 42, 63, .50), rgba(12, 23, 46, .28));
	border-color: rgba(179, 238, 255, .18);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .16),
		inset 0 -1px 0 rgba(85, 106, 255, .08),
		0 12px 30px rgba(0, 0, 0, .18);
}

.afm-evaluation-preview {
	background:
		linear-gradient(145deg, rgba(20, 42, 68, .67), rgba(9, 18, 39, .54)),
		radial-gradient(circle at var(--pointer-x, 18%) var(--pointer-y, 10%), rgba(100, 240, 255, .15), transparent 32%);
	border: 1px solid rgba(187, 237, 255, .24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .19),
		inset 0 -1px 0 rgba(124, 92, 255, .13),
		0 32px 80px rgba(0, 0, 0, .43),
		0 0 42px rgba(85, 89, 255, .10);
}

.afm-evaluation-preview::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(115deg, rgba(255,255,255,.13), transparent 19% 68%, rgba(105,86,255,.10));
	mask-image: linear-gradient(#000, transparent 38%);
	pointer-events: none;
}

.afm-button-primary {
	position: relative;
	overflow: hidden;
	box-shadow: 0 16px 38px rgba(42, 203, 218, .18), 0 8px 28px rgba(108, 76, 255, .18), inset 0 1px 0 rgba(255,255,255,.42);
}

.afm-button-primary::after {
	content: "";
	position: absolute;
	top: -80%;
	left: -30%;
	width: 24%;
	height: 260%;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,.36), transparent);
	transform: rotate(18deg);
	animation: afmButtonSheen 6s ease-in-out infinite;
	pointer-events: none;
}

.afm-button-ghost {
	background: linear-gradient(145deg, rgba(18, 39, 62, .52), rgba(6, 18, 34, .42));
	border-color: rgba(174, 232, 255, .20);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 18px 34px rgba(0,0,0,.20);
}

.afm-trust-grid div {
	padding: 16px 14px 16px 20px;
	border: 1px solid rgba(173, 231, 255, .10);
	border-radius: 18px;
	background: linear-gradient(145deg, rgba(14, 34, 55, .34), rgba(6, 18, 34, .16));
	box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 14px 34px rgba(0,0,0,.14);
}

@keyframes afmStarDrift { to { background-position: 138px 145px, 250px 274px; } }
@keyframes afmStarDriftReverse { to { background-position: -211px -201px, -79px -71px; } }
@keyframes afmGridDrift { to { background-position: 106px 0, 0 80px; } }
@keyframes afmOrbitPulse { 50% { transform: scale(1.8); opacity: .42; } }
@keyframes afmOrbitBreathe { to { transform: rotate(4deg) scale(1.035); opacity: .74; } }
@keyframes afmAurora { to { transform: rotate(2deg) translate3d(-3%, -5%, 0) scale(1.08); opacity: .78; } }
@keyframes afmWorldBreathe { to { transform: translateX(-50%) scale(1.018); opacity: .82; } }
@keyframes afmButtonSheen { 0%, 68% { left: -35%; opacity: 0; } 76% { opacity: .9; } 92%, 100% { left: 125%; opacity: 0; } }

@media (max-width: 860px) {
	.afm-hero {
		background:
			radial-gradient(circle at 84% 20%, rgba(61, 205, 255, .17), transparent 26%),
			radial-gradient(circle at 92% 53%, rgba(126, 72, 255, .13), transparent 28%),
			linear-gradient(180deg, #030c19 0%, #061626 62%, #06111f 100%);
	}

	.afm-hero::before {
		background:
			linear-gradient(180deg, rgba(2, 10, 20, .70) 0%, rgba(2, 10, 20, .78) 50%, rgba(2, 10, 20, .92) 100%),
			linear-gradient(90deg, rgba(2, 10, 20, .91) 0%, rgba(2, 10, 20, .60) 74%, rgba(2, 10, 20, .28) 100%);
	}

	.afm-hero-visual {
		opacity: .72;
	}

	.afm-orbit {
		left: 44%;
		top: 6%;
		width: 760px;
	}

	.afm-orbit-two {
		left: 36%;
		top: 18%;
		width: 820px;
	}

	.afm-trust-grid {
		gap: 10px;
	}
}

@media (max-width: 620px) {
	.afm-hero-visual {
		top: 58px;
		height: 720px;
		opacity: .66;
	}

	.afm-hero-visual img {
		left: 91%;
		width: 1380px;
	}

	.afm-hero::before {
		background:
			linear-gradient(180deg, rgba(2, 9, 19, .74) 0%, rgba(2, 9, 19, .78) 42%, rgba(2, 9, 19, .94) 100%),
			linear-gradient(90deg, rgba(2, 9, 19, .91), rgba(2, 9, 19, .46));
	}

	.afm-world-map {
		opacity: .58;
		filter: saturate(1.34) contrast(1.22) brightness(.72) drop-shadow(0 0 18px rgba(66, 201, 255, .12));
	}

	.afm-chip-row {
		gap: 7px;
	}

	.afm-chip {
		font-size: .62rem;
		padding: 7px 10px;
	}

	.afm-trust-grid div {
		min-height: 96px;
		padding: 15px 10px 14px 17px;
	}

	.afm-button-large {
		min-height: 68px;
	}

	.afm-evaluation-preview {
		border-radius: 25px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.afm-hero-stars,
	.afm-hero-visual::after,
	.afm-orbit,
	.afm-aurora-wave,
	.afm-world-map,
	.afm-button-primary::after {
		animation: none !important;
	}
}

/* ========================================================================== 
   VISAS AFM HERO 3.0 — visible cosmic glass system
   Final override: all decorative layers live above the section background and
   below the readable content. Designed mobile-first and without external assets.
   ========================================================================== */
.afm-hero {
  isolation: isolate;
  min-height: 900px;
  background:
    radial-gradient(circle at 78% 19%, rgba(52,214,255,.20), transparent 24%),
    radial-gradient(circle at 91% 38%, rgba(120,76,255,.18), transparent 30%),
    linear-gradient(180deg,#020916 0%,#041426 58%,#03101d 100%);
}
.afm-hero::before {
  z-index: 1;
  background:
    linear-gradient(90deg,rgba(2,8,18,.96) 0%,rgba(2,8,18,.82) 38%,rgba(2,8,18,.30) 72%,rgba(2,8,18,.08) 100%),
    linear-gradient(180deg,rgba(1,7,16,.02),rgba(2,9,18,.58) 78%,#03101d 100%);
}
.afm-hero::after { z-index: 3; height: 145px; }
.afm-hero-visual { z-index: 0 !important; opacity: 1 !important; inset: 64px 0 auto; height: 760px; }
.afm-hero-grid { position:relative; z-index:4; }
.afm-hero-copy,.afm-evaluation-preview { position:relative; z-index:5; }
.afm-world-map {
  display:block;
  left:69%;
  width:min(1540px,125vw);
  opacity:.84;
  filter:saturate(1.55) contrast(1.25) brightness(.82) drop-shadow(0 0 38px rgba(55,216,255,.22));
  transform:translateX(-50%) scale(1.02);
}
.afm-cosmic-nebula,.afm-cosmic-glow { position:absolute; pointer-events:none; }
.afm-cosmic-nebula {
  inset:-15% -12% 0 36%;
  background:
    radial-gradient(ellipse at 54% 36%,rgba(27,197,255,.20),transparent 34%),
    radial-gradient(ellipse at 75% 42%,rgba(131,73,255,.22),transparent 43%),
    conic-gradient(from 215deg at 62% 45%,transparent,rgba(70,220,255,.11),transparent 31%,rgba(126,73,255,.12),transparent 62%);
  filter:blur(20px);
  mix-blend-mode:screen;
  animation:afmNebulaFloat 14s ease-in-out infinite alternate;
}
.afm-cosmic-glow { width:180px;height:180px;border-radius:50%;filter:blur(45px);opacity:.32;mix-blend-mode:screen; }
.afm-cosmic-glow-cyan { right:18%;top:22%;background:#28e6ee;animation:afmGlowDrift 10s ease-in-out infinite alternate; }
.afm-cosmic-glow-violet { right:2%;top:46%;background:#7d4dff;animation:afmGlowDrift 13s ease-in-out -3s infinite alternate-reverse; }
.afm-hero-stars { z-index:3; opacity:.65 !important; }
.afm-orbit { z-index:4; opacity:.8; border-width:1px; }
.afm-aurora-wave { z-index:2; opacity:.78; }
.afm-hero-visual::after { z-index:2; opacity:.58; }

.afm-chip,.afm-button-ghost,.afm-evaluation-preview,.afm-trust-grid div,.afm-mobile-score-card {
  background:linear-gradient(145deg,rgba(25,53,80,.55),rgba(5,16,33,.36));
  border:1px solid rgba(177,235,255,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(114,82,255,.12),0 18px 44px rgba(0,0,0,.24);
  -webkit-backdrop-filter:blur(22px) saturate(160%);
  backdrop-filter:blur(22px) saturate(160%);
}
.afm-evaluation-preview {
  background:
    radial-gradient(circle at 82% 6%,rgba(121,72,255,.20),transparent 34%),
    linear-gradient(145deg,rgba(21,48,75,.72),rgba(5,14,31,.60));
  border-color:rgba(190,239,255,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.23),0 34px 90px rgba(0,0,0,.48),0 0 55px rgba(78,87,255,.14);
}
.afm-mobile-score-card { display:none; }

@keyframes afmNebulaFloat { to { transform:translate3d(-4%,3%,0) rotate(4deg) scale(1.07); opacity:.74; } }
@keyframes afmGlowDrift { to { transform:translate3d(-40px,34px,0) scale(1.28); opacity:.18; } }

@media (max-width:860px) {
  .afm-hero { min-height:auto; padding-top:calc(var(--afm-header-height) + 26px); }
  .afm-hero::before {
    background:
      linear-gradient(180deg,rgba(2,8,18,.28) 0%,rgba(2,8,18,.60) 39%,rgba(2,8,18,.92) 78%,#03101d 100%),
      linear-gradient(90deg,rgba(2,8,18,.88) 0%,rgba(2,8,18,.42) 70%,rgba(2,8,18,.12) 100%);
  }
  .afm-hero-visual { top:52px;height:690px; }
  .afm-world-map { left:82%; width:1180px; opacity:.72; filter:saturate(1.65) contrast(1.28) brightness(.72) drop-shadow(0 0 32px rgba(55,216,255,.24)); }
  .afm-cosmic-nebula { inset:-8% -35% 10% 16%; }
  .afm-orbit { left:37%;top:5%;opacity:.65; }
  .afm-orbit-two { left:28%;top:16%; }
  .afm-evaluation-preview { display:none; }
  .afm-mobile-score-card {
    display:flex;align-items:center;justify-content:space-between;gap:18px;
    width:min(100%,430px);margin:0 0 22px;padding:14px 16px;border-radius:22px;
  }
  .afm-mobile-score-card span,.afm-mobile-score-card strong { display:block; }
  .afm-mobile-score-card span { color:#91a9c2;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800; }
  .afm-mobile-score-card strong { margin-top:3px;color:#fff;font-size:.92rem; }
  .afm-mobile-score-ring { width:62px;height:62px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#07172a 52%,transparent 54%),conic-gradient(#45eadb,#56b8ff,#865cff,#45eadb);box-shadow:0 0 24px rgba(74,220,255,.22); }
  .afm-mobile-score-ring b,.afm-mobile-score-ring small { display:block;line-height:1; }
  .afm-mobile-score-ring b { font-size:.84rem;color:#fff; }
  .afm-mobile-score-ring small { margin-top:4px;font-size:.49rem;color:#b9cce1; }
}

@media (max-width:620px) {
  .afm-hero { padding-top:calc(var(--afm-header-height) + 18px); padding-bottom:38px; }
  .afm-hero-visual { top:48px;height:620px; }
  .afm-world-map { left:94%;top:-20px;width:1090px;height:620px;opacity:.66; }
  .afm-hero::before {
    background:
      linear-gradient(180deg,rgba(2,8,18,.18) 0%,rgba(2,8,18,.48) 29%,rgba(2,8,18,.83) 58%,rgba(2,8,18,.96) 83%,#03101d 100%),
      linear-gradient(90deg,rgba(2,8,18,.88),rgba(2,8,18,.20));
  }
  .afm-chip-row { margin-bottom:14px; }
  .afm-chip { background:rgba(7,25,45,.52); }
  .afm-hero h1 { font-size:clamp(3.05rem,13.7vw,4.35rem);line-height:.95;margin-bottom:22px;max-width:670px; }
  .afm-hero h1 span { margin-top:11px; }
  .afm-hero-lead { max-width:600px;font-size:1rem;line-height:1.55;margin-bottom:19px; }
  .afm-mobile-score-card { margin-top:4px; }
  .afm-button-row { gap:12px; }
  .afm-button-large { border-radius:22px;min-height:68px; }
  .afm-trust-grid { margin-top:28px;grid-template-columns:repeat(2,minmax(0,1fr)); }
  .afm-trust-grid div { min-height:92px;border-radius:18px; }
  .afm-cosmic-glow { opacity:.42; }
  .afm-hero-stars-one { opacity:.82 !important; }
  .afm-hero-stars-two { opacity:.58 !important; }
}

@media (prefers-reduced-motion:reduce) {
  .afm-cosmic-nebula,.afm-cosmic-glow { animation:none !important; }
}


/* ========================================================================== 
   AFM Hero 3.0.1 — closer visual match + illuminated analysis ring
   ========================================================================== */
.afm-score-ring {
  position: relative;
  isolation: isolate;
  overflow: visible;
  box-shadow:
    0 0 0 1px rgba(126,235,255,.16),
    0 0 30px rgba(54,224,255,.24),
    0 0 62px rgba(118,80,255,.20),
    inset 0 0 24px rgba(56,210,255,.08);
}
.afm-score-ring::after {
  content:"";
  position:absolute;
  inset:-11px;
  border-radius:50%;
  border:1px solid rgba(132,230,255,.18);
  background:conic-gradient(from 0deg,transparent 0 76%,rgba(255,255,255,.95) 80%,rgba(70,235,255,.75) 83%,transparent 88% 100%);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));
  mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));
  filter:drop-shadow(0 0 8px rgba(104,238,255,.95));
  animation:afmScoreOrbit 3.4s linear infinite;
  pointer-events:none;
  z-index:3;
}
.afm-score-sweep {
  position:absolute;
  width:15px;
  height:15px;
  left:50%;
  top:-9px;
  margin-left:-7.5px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 6px #fff,0 0 14px #68f1ff,0 0 28px #56baff,0 0 44px #8b64ff;
  transform-origin:7.5px 78px;
  animation:afmScoreSweep 3.4s linear infinite;
  z-index:5;
}
.afm-score-ring > div { position:relative;z-index:2; }
.afm-score-copy strong small { font-size:.72em;color:#c8d9eb; }
.afm-evaluation-preview::before {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(120deg,rgba(255,255,255,.16),transparent 18%,transparent 70%,rgba(124,83,255,.12));
  pointer-events:none;
}
.afm-evaluation-preview::after {
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07),inset 18px 0 34px rgba(87,221,255,.035),inset -20px 0 40px rgba(130,76,255,.05);
  pointer-events:none;
}
.afm-button-primary {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 16px 42px rgba(63,122,255,.25),0 0 28px rgba(68,224,255,.12);
}
.afm-button-ghost {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20),inset 0 -1px 0 rgba(120,79,255,.15),0 18px 48px rgba(0,0,0,.32),0 0 24px rgba(74,220,255,.07);
}
@keyframes afmScoreOrbit { to { transform:rotate(360deg); } }
@keyframes afmScoreSweep { to { transform:rotate(360deg); } }

@media (max-width:860px) {
  .afm-mobile-score-card { display:none !important; }
  .afm-evaluation-preview {
    display:block;
    width:min(100%,520px);
    margin:10px 0 24px;
    padding:22px;
    border-radius:26px;
  }
  .afm-preview-head { margin-bottom:18px; }
  .afm-preview-head .afm-status-pill { display:inline-flex; }
  .afm-score-layout { grid-template-columns:126px 1fr;gap:20px; }
  .afm-score-ring { width:118px;height:118px; }
  .afm-score-sweep { transform-origin:7.5px 68px; }
  .afm-metric-list { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px; }
  .afm-preview-note { display:none; }
  .afm-evaluation-preview .afm-button-block { display:flex; }
  .afm-time-note { display:block; }
}

@media (max-width:620px) {
  .afm-hero-visual { height:720px; }
  .afm-world-map {
    left:88%;
    top:-54px;
    width:980px;
    height:650px;
    opacity:.83;
    filter:saturate(1.9) contrast(1.33) brightness(.82) drop-shadow(0 0 42px rgba(54,216,255,.33));
  }
  .afm-hero::before {
    background:
      linear-gradient(180deg,rgba(2,8,18,.04) 0%,rgba(2,8,18,.30) 28%,rgba(2,8,18,.76) 54%,rgba(2,8,18,.96) 86%,#03101d 100%),
      linear-gradient(90deg,rgba(2,8,18,.87) 0%,rgba(2,8,18,.20) 78%,rgba(2,8,18,.03) 100%);
  }
  .afm-hero h1 { font-size:clamp(2.8rem,12.8vw,3.9rem);max-width:96%; }
  .afm-evaluation-preview { margin-top:4px;padding:18px;border-radius:24px; }
  .afm-preview-head h2 { font-size:.88rem; }
  .afm-score-layout { grid-template-columns:104px 1fr;gap:16px; }
  .afm-score-ring { width:98px;height:98px; }
  .afm-score-ring strong { font-size:2rem; }
  .afm-score-sweep { width:12px;height:12px;top:-7px;margin-left:-6px;transform-origin:6px 56px; }
  .afm-metric-list { grid-template-columns:1fr; }
  .afm-metric-list li { display:grid; }
  .afm-trust-grid div {
    background:linear-gradient(145deg,rgba(21,50,77,.66),rgba(4,15,31,.45));
    border-color:rgba(171,232,255,.22);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 16px 36px rgba(0,0,0,.24);
  }
}
@media (prefers-reduced-motion:reduce) {
  .afm-score-ring::after,.afm-score-sweep { animation:none !important; }
}

/* =========================================================
   AFM 3.1 — compact route + conversion-focused preview
   ========================================================= */
.afm-preview-conversion {
	position: relative;
	margin: 18px 0 13px;
	padding: 16px 17px;
	border: 1px solid rgba(112, 224, 255, .18);
	border-radius: 18px;
	background:
		linear-gradient(135deg, rgba(53, 226, 216, .08), rgba(117, 78, 255, .10)),
		rgba(3, 13, 30, .48);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 15px 35px rgba(0,0,0,.16);
	overflow: hidden;
}
.afm-preview-conversion::after {
	content:"";
	position:absolute;
	inset:-80% auto -80% -30%;
	width:38%;
	background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
	transform:rotate(18deg);
	animation:afmConversionShine 7s ease-in-out infinite;
}
.afm-preview-conversion-kicker {
	display:block;
	margin-bottom:4px;
	color:var(--afm-cyan);
	font-size:.63rem;
	font-weight:900;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.afm-preview-conversion h3 { margin:0 0 5px;font-size:1.04rem;line-height:1.25; }
.afm-preview-conversion p { margin:0;color:#aebfd4;font-size:.76rem;line-height:1.48; }
@keyframes afmConversionShine { 0%,72%{left:-40%;opacity:0} 80%{opacity:1} 96%,100%{left:130%;opacity:0} }

.afm-process-section { padding-block: clamp(54px,7vw,86px); }
.afm-process-intro { max-width:620px;margin:10px auto 0;color:var(--afm-muted);font-size:.9rem; }
.afm-process-shell {
	position:relative;
	margin-top:34px;
	padding:34px 24px 28px;
	border-radius:28px;
	background:
		radial-gradient(circle at 50% 0,rgba(48,226,216,.075),transparent 38%),
		linear-gradient(145deg,rgba(17,35,67,.68),rgba(6,17,40,.8));
	overflow:hidden;
}
.afm-process-shell::before {
	content:"";position:absolute;inset:0;pointer-events:none;
	background-image:radial-gradient(circle,rgba(116,224,255,.22) 0 1px,transparent 1.5px);
	background-size:94px 74px;opacity:.18;
}
.afm-process-line {
	position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;
	margin:0;padding:0;list-style:none;
}
.afm-process-line::before {
	content:"";position:absolute;z-index:0;top:48px;left:8%;right:8%;height:1px;
	background:linear-gradient(90deg,transparent,rgba(67,231,218,.55),rgba(88,177,255,.42),rgba(124,92,255,.58),transparent);
	box-shadow:0 0 16px rgba(67,231,218,.2);
}
.afm-process-step { position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;min-width:0;padding:0 8px;text-align:center; }
.afm-process-number {
	position:absolute;z-index:4;top:-7px;left:50%;display:grid;place-items:center;width:25px;height:25px;
	border:1px solid rgba(99,239,229,.46);border-radius:50%;background:linear-gradient(145deg,#124769,#08273f);
	box-shadow:0 0 20px rgba(53,226,216,.35);color:#69f4e8;font-size:.62rem;font-weight:900;transform:translateX(-50%);
}
.afm-process-icon {
	position:relative;display:grid;place-items:center;width:92px;height:92px;margin:0 auto 14px;border:1px solid rgba(78,220,235,.28);
	border-radius:50%;background:radial-gradient(circle at 38% 30%,rgba(62,242,230,.18),rgba(7,24,49,.9) 58%,rgba(6,12,30,.96));
	box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 0 9px rgba(42,214,218,.025),0 0 30px rgba(38,207,223,.16);
}
.afm-process-icon::after { content:"";position:absolute;inset:7px;border:1px solid rgba(111,232,255,.13);border-radius:50%; }
.afm-process-icon svg { width:48px;height:48px;fill:none;stroke:#62eee4;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(73,238,231,.55)); }
.afm-process-step h3 { min-height:2.5em;margin:0 0 6px;color:#fff;font-size:.82rem;line-height:1.25; }
.afm-process-step p { max-width:190px;margin:0;color:#98abc1;font-size:.66rem;line-height:1.45; }
.afm-process-swipe { display:none; }

@media (max-width: 820px) {
	.afm-process-section .afm-container { padding-inline:0; }
	.afm-process-section .afm-section-heading { padding-inline:24px; }
	.afm-process-shell { margin-top:25px;padding:28px 0 20px;border-radius:24px; }
	.afm-process-line {
		display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:22px;
		padding:8px 22px 16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;
	}
	.afm-process-line::-webkit-scrollbar { display:none; }
	.afm-process-line::before { top:55px;left:58px;right:58px;width:calc(100% - 116px);min-width:850px; }
	.afm-process-step {
		flex:0 0 min(64vw,235px);scroll-snap-align:center;min-height:228px;padding:7px 15px 16px;border:1px solid rgba(105,204,242,.12);
		border-radius:22px;background:linear-gradient(160deg,rgba(20,42,76,.57),rgba(5,16,37,.72));
		box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
	}
	.afm-process-icon { width:88px;height:88px; }
	.afm-process-step h3 { min-height:auto;font-size:.94rem; }
	.afm-process-step p { font-size:.75rem; }
	.afm-process-number { top:0; }
	.afm-process-swipe { display:flex;position:relative;z-index:2;justify-content:center;gap:10px;color:#829bb4;font-size:.69rem; }
	.afm-process-swipe span { color:var(--afm-cyan); }
}
@media (max-width: 520px) {
	.afm-process-step { flex-basis:72vw; }
	.afm-preview-conversion { padding:14px 15px; }
}
@media (prefers-reduced-motion: reduce) { .afm-preview-conversion::after { animation:none; } }

/* =========================================================
   AFM 3.1.1 — unified Why AFM horizontal rail
   ========================================================= */
.afm-section-why .afm-why-layout,
.afm-section-why .afm-why-grid {
	display: contents;
}
.afm-why-rail {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 1.45fr);
	gap: 14px;
	align-items: stretch;
}
.afm-why-rail > * {
	min-width: 0;
}
.afm-why-rail .afm-why-card,
.afm-why-rail .afm-team-card-slide {
	min-height: 270px;
	scroll-snap-align: start;
}
.afm-why-rail .afm-why-card {
	display: flex;
	flex-direction: column;
	padding: 22px;
	background:
		radial-gradient(circle at 72% 14%, rgba(67,231,218,.12), transparent 38%),
		linear-gradient(145deg, rgba(25,53,80,.66), rgba(5,16,33,.55));
}
.afm-why-rail .afm-why-card p {
	margin-top: auto;
}
.afm-team-card-slide {
	position: relative;
	min-height: 270px;
	overflow: hidden;
}
.afm-team-card-slide > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 58% center;
}
.afm-team-card-slide::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(3,10,23,.96) 0%, rgba(3,10,23,.78) 38%, rgba(3,10,23,.16) 72%),
		linear-gradient(180deg, rgba(3,10,23,.04), rgba(3,10,23,.72));
}
.afm-team-card-slide::after {
	background: none;
}
.afm-team-card-slide .afm-team-card-copy {
	position: absolute;
	z-index: 2;
	right: 42%;
	bottom: 22px;
	left: 22px;
}
.afm-team-card-slide .afm-team-card-copy h3 {
	margin: 7px 0 8px;
	font-size: clamp(1.08rem, 1.55vw, 1.48rem);
}
.afm-why-swipe {
	display: none;
}

@media (max-width: 1040px) {
	.afm-why-rail {
		grid-template-columns: repeat(3, minmax(220px, 1fr));
	}
	.afm-team-card-slide {
		grid-column: span 2;
	}
}

@media (max-width: 820px) {
	.afm-section-why .afm-container {
		width: 100%;
		max-width: none;
	}
	.afm-section-why .afm-section-heading {
		width: var(--afm-container);
		margin-inline: auto;
	}
	.afm-why-rail {
		display: flex;
		gap: 13px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 22px;
		padding: 5px 22px 18px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.afm-why-rail::-webkit-scrollbar {
		display: none;
	}
	.afm-why-rail .afm-why-card,
	.afm-why-rail .afm-team-card-slide {
		flex: 0 0 min(78vw, 330px);
		min-height: 350px;
		scroll-snap-align: center;
		border-radius: 26px;
	}
	.afm-why-rail .afm-why-card {
		padding: 26px 24px;
	}
	.afm-why-rail .afm-why-card img {
		width: 78px;
		height: 78px;
	}
	.afm-why-rail .afm-why-card h3 {
		font-size: 1.2rem;
	}
	.afm-why-rail .afm-why-card p {
		font-size: .91rem;
		line-height: 1.55;
	}
	.afm-team-card-slide {
		grid-column: auto;
	}
	.afm-team-card-slide > img {
		object-position: 58% center;
	}
	.afm-team-card-slide::before {
		background:
			linear-gradient(180deg, rgba(3,10,23,.03) 20%, rgba(3,10,23,.50) 52%, rgba(3,10,23,.97) 88%),
			linear-gradient(90deg, rgba(3,10,23,.28), transparent 64%);
	}
	.afm-team-card-slide .afm-team-card-copy {
		right: 22px;
		bottom: 24px;
		left: 22px;
	}
	.afm-team-card-slide .afm-team-card-copy h3 {
		max-width: none;
		font-size: 1.45rem;
		line-height: 1.18;
	}
	.afm-team-card-slide .afm-team-card-copy p {
		font-size: .9rem;
		line-height: 1.5;
	}
	.afm-why-swipe {
		display: flex;
		justify-content: center;
		gap: 9px;
		margin: 0;
		color: #829bb4;
		font-size: .72rem;
	}
	.afm-why-swipe span {
		color: var(--afm-cyan);
	}
}

@media (max-width: 520px) {
	.afm-why-rail .afm-why-card,
	.afm-why-rail .afm-team-card-slide {
		flex-basis: 82vw;
		min-height: 370px;
	}
}

/* =========================================================
   AFM 3.2 — Premium liquid rails: Why AFM + Promotions
   ========================================================= */
.afm-section-why,
.afm-section-promotions { position:relative;overflow:hidden; }
.afm-section-why::before,
.afm-section-promotions::before {
  content:"";position:absolute;inset:8% -18% auto auto;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(54,231,220,.085),transparent 68%);filter:blur(10px);pointer-events:none;
  animation:afmAmbientFloat 13s ease-in-out infinite alternate;
}
.afm-section-promotions::before { inset:auto auto 0 -12%;background:radial-gradient(circle,rgba(124,92,255,.09),transparent 68%);animation-delay:-4s; }
@keyframes afmAmbientFloat { to { transform:translate3d(34px,-22px,0) scale(1.08); } }

/* WHY: shorter, clearer and genuinely glass-like */
.afm-why-rail { grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.5fr);gap:15px; }
.afm-why-rail .afm-why-card,
.afm-why-rail .afm-team-card-slide { min-height:228px;border-radius:24px; }
.afm-why-rail .afm-why-card {
  position:relative;display:grid;grid-template-columns:64px 1fr;align-content:center;align-items:start;gap:15px;
  padding:22px 20px;overflow:hidden;
  background:
    radial-gradient(circle at var(--pointer-x,78%) var(--pointer-y,12%),rgba(102,248,238,.16),transparent 36%),
    linear-gradient(145deg,rgba(31,67,94,.68),rgba(6,18,37,.64));
  border-color:rgba(139,224,248,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(111,87,255,.10),0 20px 44px rgba(0,0,0,.22);
  transition:transform .45s var(--afm-ease),border-color .45s ease,box-shadow .45s ease;
}
.afm-why-rail .afm-why-card::before {
  content:"";position:absolute;inset:-80% -30%;background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.14) 50%,transparent 58%);
  transform:translateX(-52%) rotate(8deg);animation:afmCardLiquidSweep 8.5s ease-in-out infinite;pointer-events:none;
}
.afm-why-rail .afm-why-card:nth-child(2)::before { animation-delay:-1.7s; }
.afm-why-rail .afm-why-card:nth-child(3)::before { animation-delay:-3.4s; }
.afm-why-rail .afm-why-card:nth-child(4)::before { animation-delay:-5.1s; }
@keyframes afmCardLiquidSweep { 0%,68%{transform:translateX(-58%) rotate(8deg);opacity:0} 76%{opacity:.85} 94%,100%{transform:translateX(58%) rotate(8deg);opacity:0} }
.afm-why-rail .afm-why-card:hover { transform:translateY(-7px);border-color:rgba(104,241,232,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 28px 58px rgba(0,0,0,.3),0 0 32px rgba(52,225,216,.09); }
.afm-why-icon {
  position:relative;display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(102,239,235,.28);border-radius:18px;
  background:radial-gradient(circle at 34% 28%,rgba(100,255,244,.22),rgba(8,32,54,.92) 64%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 0 0 6px rgba(43,222,217,.025),0 0 26px rgba(45,222,218,.18);
}
.afm-why-icon::after { content:"";position:absolute;inset:-5px;border:1px solid rgba(118,93,255,.13);border-radius:21px;animation:afmIconPulse 3.8s ease-in-out infinite; }
@keyframes afmIconPulse { 50%{transform:scale(1.06);opacity:.42;box-shadow:0 0 18px rgba(66,232,224,.22)} }
.afm-why-icon svg { width:34px;height:34px;fill:none;stroke:#68f0e7;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(77,240,231,.56)); }
.afm-why-copy { min-width:0;align-self:center; }
.afm-why-rail .afm-why-card h3 { margin:0 0 9px;font-size:clamp(.95rem,1.25vw,1.12rem);line-height:1.28;letter-spacing:-.025em; }
.afm-why-rail .afm-why-card p { margin:0;color:#9fb1c6;font-size:.72rem;line-height:1.52; }
.afm-team-card-slide { min-height:228px;box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 20px 44px rgba(0,0,0,.24);transition:transform .45s var(--afm-ease),box-shadow .45s ease; }
.afm-team-card-slide:hover { transform:translateY(-7px);box-shadow:0 30px 62px rgba(0,0,0,.34),0 0 34px rgba(116,91,255,.10); }
.afm-team-card-slide .afm-team-card-copy { right:38%;bottom:20px;left:20px; }
.afm-team-card-slide .afm-team-card-copy h3 { font-size:clamp(1.05rem,1.42vw,1.35rem); }
.afm-team-card-slide .afm-team-card-copy p { margin:0;font-size:.72rem;line-height:1.45; }

/* PROMOTIONS: plugin output and fallback use the same rail */
.afm-section-promotions .afm-module-promotions,
.afm-section-promotions .afm-promotion-grid {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;
}
.afm-section-promotions .afm-module-promotion,
.afm-section-promotions .afm-promotion-card {
  position:relative;min-height:282px;overflow:hidden;border:1px solid rgba(132,216,250,.16);border-radius:23px;
  background:rgba(5,16,34,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 22px 46px rgba(0,0,0,.25);
  transform:translateZ(0);transition:transform .48s var(--afm-ease),box-shadow .48s ease,border-color .48s ease;
}
.afm-section-promotions .afm-module-promotion::before,
.afm-section-promotions .afm-promotion-card::before {
  content:"";position:absolute;z-index:3;inset:-95% -45%;pointer-events:none;
  background:linear-gradient(108deg,transparent 43%,rgba(255,255,255,.18) 50%,transparent 57%);
  transform:translateX(-52%) rotate(7deg);animation:afmPromoShine 9s ease-in-out infinite;
}
.afm-section-promotions .afm-module-promotion:nth-child(2)::before,
.afm-section-promotions .afm-promotion-card:nth-child(2)::before { animation-delay:-2.2s; }
.afm-section-promotions .afm-module-promotion:nth-child(3)::before,
.afm-section-promotions .afm-promotion-card:nth-child(3)::before { animation-delay:-4.4s; }
.afm-section-promotions .afm-module-promotion:nth-child(4)::before,
.afm-section-promotions .afm-promotion-card:nth-child(4)::before { animation-delay:-6.6s; }
@keyframes afmPromoShine { 0%,70%{transform:translateX(-58%) rotate(7deg);opacity:0} 78%{opacity:.9} 95%,100%{transform:translateX(58%) rotate(7deg);opacity:0} }
.afm-section-promotions .afm-module-promotion:hover,
.afm-section-promotions .afm-promotion-card:hover { transform:translateY(-8px) scale(1.012);border-color:rgba(93,236,229,.38);box-shadow:0 32px 64px rgba(0,0,0,.34),0 0 38px rgba(65,229,220,.09); }
.afm-section-promotions .afm-module-promotion img,
.afm-section-promotions .afm-promotion-card img { transition:transform .8s var(--afm-ease),filter .8s ease; }
.afm-section-promotions .afm-module-promotion:hover img,
.afm-section-promotions .afm-promotion-card:hover img { transform:scale(1.07);filter:saturate(1.12) contrast(1.05); }
.afm-section-promotions .afm-module-promotion .afm-module-shade,
.afm-section-promotions .afm-promotion-overlay { background:linear-gradient(180deg,rgba(3,9,20,.02) 18%,rgba(3,10,22,.28) 48%,rgba(3,10,22,.96) 100%); }
.afm-promotions-swipe { display:none; }

@media (max-width:820px) {
  .afm-section-why .afm-container,
  .afm-section-promotions .afm-container { width:100%;max-width:none; }
  .afm-section-why .afm-section-heading,
  .afm-section-promotions .afm-section-heading { width:var(--afm-container);margin-inline:auto; }
  .afm-why-rail,
  .afm-section-promotions .afm-module-promotions,
  .afm-section-promotions .afm-promotion-grid {
    display:flex;gap:13px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:22px;
    padding:6px 22px 18px;-webkit-overflow-scrolling:touch;scrollbar-width:none;
  }
  .afm-why-rail::-webkit-scrollbar,
  .afm-section-promotions .afm-module-promotions::-webkit-scrollbar,
  .afm-section-promotions .afm-promotion-grid::-webkit-scrollbar { display:none; }
  .afm-why-rail .afm-why-card,
  .afm-why-rail .afm-team-card-slide {
    flex:0 0 min(78vw,315px);min-height:238px;scroll-snap-align:center;border-radius:24px;
  }
  .afm-why-rail .afm-why-card { grid-template-columns:58px 1fr;gap:14px;padding:22px 19px; }
  .afm-why-rail .afm-why-card h3 { font-size:1.06rem; }
  .afm-why-rail .afm-why-card p { font-size:.8rem;line-height:1.52; }
  .afm-team-card-slide > img { object-position:60% center; }
  .afm-team-card-slide .afm-team-card-copy { right:18px;bottom:19px;left:19px; }
  .afm-team-card-slide .afm-team-card-copy h3 { max-width:290px;font-size:1.27rem; }
  .afm-team-card-slide .afm-team-card-copy p { max-width:280px;font-size:.78rem; }
  .afm-section-promotions .afm-module-promotion,
  .afm-section-promotions .afm-promotion-card {
    flex:0 0 min(80vw,330px);min-height:300px;scroll-snap-align:center;border-radius:24px;
  }
  .afm-promotions-swipe { display:flex;justify-content:center;gap:9px;margin:0;color:#829bb4;font-size:.72rem; }
  .afm-promotions-swipe span { color:var(--afm-cyan); }
}
@media (max-width:520px) {
  .afm-why-rail .afm-why-card,
  .afm-why-rail .afm-team-card-slide { flex-basis:84vw;min-height:242px; }
  .afm-section-promotions .afm-module-promotion,
  .afm-section-promotions .afm-promotion-card { flex-basis:84vw;min-height:292px; }
}
@media (prefers-reduced-motion:reduce) {
  .afm-section-why::before,.afm-section-promotions::before,.afm-why-rail .afm-why-card::before,
  .afm-why-icon::after,.afm-section-promotions .afm-module-promotion::before,.afm-section-promotions .afm-promotion-card::before { animation:none !important; }
}

/* =========================================================
   AFM 3.2.1 — Corrected professional artwork + evaluation copy
   ========================================================= */
.afm-team-card-artwork {
  padding: 0 !important;
  background: #031126;
  aspect-ratio: 3 / 2;
  min-height: 0 !important;
  overflow: hidden;
}
.afm-team-card-artwork::before,
.afm-team-card-artwork::after {
  content: none !important;
  display: none !important;
}
.afm-team-card-artwork > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 1;
  filter: none;
  transform: none !important;
}
.afm-team-card-artwork:hover > img { transform: scale(1.015) !important; }

@media (max-width: 820px) {
  .afm-why-rail .afm-team-card-artwork {
    flex-basis: min(88vw, 430px);
    min-height: 0 !important;
    aspect-ratio: 3 / 2;
  }
  .afm-team-card-artwork > img { object-position: center; }
}


/* =========================================================
   AFM 3.2.3 — pre-evaluation completion and reveal sequence
   ========================================================= */
.afm-metric-list li {
  opacity: 0;
  transform: translateY(8px);
  animation: afmMetricReveal .42s ease forwards;
}
.afm-metric-list li:nth-child(1){animation-delay:.55s}
.afm-metric-list li:nth-child(2){animation-delay:.70s}
.afm-metric-list li:nth-child(3){animation-delay:.85s}
.afm-metric-list li:nth-child(4){animation-delay:1s}
.afm-metric-list li:nth-child(5){animation-delay:1.15s}
.afm-metric-list b {
  filter: drop-shadow(0 0 7px rgba(77,255,161,.72));
}
@keyframes afmMetricReveal {
  to { opacity:1; transform:translateY(0); }
}
@media (max-width:620px){
  .afm-evaluation-preview .afm-metric-list{
    margin-bottom:16px;
  }
  .afm-evaluation-preview .afm-metric-list li{
    min-height:22px;
    font-size:.76rem;
  }
  .afm-evaluation-preview .afm-preview-conversion{
    margin-top:14px;
  }
  .afm-evaluation-preview .afm-button-block{
    min-height:48px;
    margin-top:10px;
  }
  .afm-evaluation-preview .afm-time-note{
    margin-top:9px;
    font-size:.66rem;
    line-height:1.35;
  }
}
@media (prefers-reduced-motion:reduce){
  .afm-metric-list li{opacity:1;transform:none;animation:none!important}
}
