/* FX Investment — Premium Gold Trading Brand Theme */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Inter:wght@400;500;600;700&display=swap');

:root {
	--brand: #8e0e3d;
	--brand-dark: #5c0828;
	--brand-light: #a8154b;
	--brand-glow: rgba(142, 14, 61, 0.35);
	--gold: #c9a227;
	--gold-light: #e8c547;
	--gold-pale: #f5e6a3;
	--gold-muted: rgba(201, 162, 39, 0.12);
	--ink: #141018;
	--ink-soft: #1c1622;
	--surface: #1a1520;
	--surface-2: #211c28;
	--surface-3: #28222e;
	--card: #242030;
	--card-hover: #2c2638;
	--white: #ffffff;
	--text: rgba(255, 255, 255, 0.9);
	--text-muted: rgba(255, 255, 255, 0.55);
	--border: rgba(201, 162, 39, 0.1);
	--radius: 16px;
	--radius-lg: 24px;
	--shadow: 0 24px 64px rgba(0, 0, 0, 0.35);
	--shadow-brand: 0 20px 50px var(--brand-glow);
	--header-scrolled: rgba(15, 10, 12, 0.92);
	--nav-link: rgba(255, 255, 255, 0.88);
	--nav-dropdown-bg: rgba(15, 10, 12, 0.97);
	--hero-gradient: radial-gradient(ellipse 80% 60% at 70% 20%, rgba(142, 14, 61, 0.45) 0%, transparent 60%), radial-gradient(ellipse 50% 40% at 20% 80%, rgba(201, 162, 39, 0.12) 0%, transparent 50%), linear-gradient(160deg, #0f0a0c 0%, #1a0a12 40%, #2d0f1f 100%);
	--auth-gradient: radial-gradient(ellipse 70% 50% at 80% 10%, rgba(142, 14, 61, 0.4) 0%, transparent 55%), radial-gradient(ellipse 40% 40% at 10% 90%, rgba(201, 162, 39, 0.1) 0%, transparent 50%), linear-gradient(160deg, #0f0a0c 0%, #1a0a12 50%, #2d0f1f 100%);
	--footer-link: rgba(255, 255, 255, 0.55);
	--footer-muted: rgba(255, 255, 255, 0.35);
	--topnav-bg: rgba(24, 18, 28, 0.92);
	--logo-filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
	--font-display: 'Cormorant Garamond', Georgia, serif;
	--font-body: 'DM Sans', 'Inter', sans-serif;
}

body {
	font-family: var(--font-body) !important;
	color: var(--text);
	background: var(--ink) !important;
	-webkit-font-smoothing: antialiased;
}

/* ── Header ── */
.fx-header {
	z-index: 999;
	position: fixed;
	width: 100%;
	padding: 18px 0;
	transition: background 0.35s ease, padding 0.35s ease, box-shadow 0.35s ease;
}

.fx-header.fx-scrolled {
	background: var(--header-scrolled);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	padding: 12px 0;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.25);
}

.fx-header .logo-main {
	width: 120px;
	height: auto;
	filter: drop-shadow(0 2px 8px rgba(0,0,0,0.2));
}

.fx-nav .main-link {
	color: var(--nav-link) !important;
	font-family: var(--font-body);
	font-weight: 500 !important;
	font-size: 15px !important;
	letter-spacing: 0.02em;
	padding: 8px 14px !important;
	margin: 0 4px !important;
	border-radius: 8px;
	transition: color 0.2s, background 0.2s;
}

.fx-nav .main-link:hover {
	color: var(--gold-light) !important;
	background: rgba(255, 255, 255, 0.08) !important;
}

.fx-nav .logBtn {
	border: 1.5px solid rgba(201, 162, 39, 0.6) !important;
	color: var(--gold-light) !important;
	padding: 8px 22px !important;
	font-weight: 600 !important;
	background: transparent !important;
}

.fx-nav .logBtn:hover {
	background: var(--gold) !important;
	color: var(--ink) !important;
	border-color: var(--gold) !important;
}

.fx-nav .logBtn.fx-btn-primary {
	background: linear-gradient(135deg, var(--brand) 0%, var(--brand-light) 100%) !important;
	border-color: transparent !important;
	color: white !important;
}

.fx-nav .logBtn.fx-btn-primary:hover {
	background: linear-gradient(135deg, var(--brand-light) 0%, var(--gold) 100%) !important;
	color: var(--ink) !important;
}

.fx-nav .drodpwnToggle {
	background: var(--nav-dropdown-bg) !important;
	border: 1px solid rgba(201, 162, 39, 0.2);
	border-radius: var(--radius) !important;
	top: 60px !important;
	left: -240px !important;
	right: auto !important;
	padding: 10px 12px !important;
	width: max-content !important;
	min-width: 580px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35) !important;
}

.fx-nav-dropdown {
	display: none;
	flex-wrap: nowrap;
	gap: 8px;
	align-items: flex-start;
}

.fx-nav .dropdownUl {
	display: block !important;
	flex: 1 1 280px;
	width: 280px !important;
	min-width: 280px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.fx-nav .dropdownUl li {
	display: block !important;
	width: 100% !important;
	margin: 0 0 6px !important;
}

.fx-nav .dropdownUl a {
	display: flex !important;
	align-items: flex-start;
	gap: 12px;
	width: 100% !important;
	min-height: 72px;
	padding: 14px 16px !important;
	border-left: 2px solid transparent;
	text-decoration: none !important;
}

.fx-nav .dropdownUl a:hover {
	background: rgba(142, 14, 61, 0.25) !important;
	border-left-color: var(--gold);
}

.fx-dropdown-icon {
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: rgba(201, 162, 39, 0.12);
	border: 1px solid rgba(201, 162, 39, 0.22);
	margin-top: 2px;
}

.fx-dropdown-icon i {
	font-size: 15px;
	color: var(--gold-light);
}

.fx-dropdown-body {
	flex: 1;
	min-width: 0;
	font-size: 12px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.55);
}

.fx-dropdown-body p {
	font-family: var(--font-display);
	font-size: 16px !important;
	font-weight: 600;
	color: var(--gold-light);
	margin: 0 0 3px;
	line-height: 1.2;
}

.fx-nav .dropdownUl p {
	font-family: var(--font-display);
	font-size: 17px !important;
	color: var(--gold-light);
}

/* ── Hero ── */
.fx-hero {
	position: relative;
	min-height: 100vh;
	display: flex;
	align-items: center;
	overflow: hidden;
	background: var(--ink);
	padding: 140px 0 100px;
}

.fx-hero__bg {
	position: absolute;
	inset: 0;
	background: var(--hero-gradient);
}

.fx-hero__grid {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(201, 162, 39, 0.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(201, 162, 39, 0.04) 1px, transparent 1px);
	background-size: 60px 60px;
	mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, black 20%, transparent 80%);
}

.fx-hero__orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	pointer-events: none;
}

.fx-hero__orb--1 {
	width: 500px;
	height: 500px;
	background: rgba(142, 14, 61, 0.3);
	top: -100px;
	right: -100px;
}

.fx-hero__orb--2 {
	width: 300px;
	height: 300px;
	background: rgba(201, 162, 39, 0.15);
	bottom: 10%;
	left: 5%;
}

.fx-hero__content {
	position: relative;
	z-index: 2;
}

.fx-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 18px;
	border-radius: 100px;
	background: rgba(201, 162, 39, 0.12);
	border: 1px solid rgba(201, 162, 39, 0.3);
	color: var(--gold-light);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 28px;
}

.fx-badge i {
	font-size: 14px;
}

.fx-hero__title {
	font-family: var(--font-display);
	font-size: clamp(42px, 5.5vw, 72px);
	font-weight: 700;
	line-height: 1.08;
	color: var(--white);
	margin-bottom: 24px;
	letter-spacing: -0.01em;
}

.fx-hero__title em {
	font-style: italic;
	color: var(--gold-light);
}

.fx-hero__subtitle {
	font-size: clamp(16px, 1.8vw, 20px);
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.72);
	max-width: 560px;
	margin-bottom: 40px;
	font-weight: 400;
}

.fx-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-bottom: 56px;
}

.fx-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 16px 32px;
	border-radius: 12px;
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none !important;
	transition: transform 0.2s, box-shadow 0.2s, background 0.2s;
	cursor: pointer;
	border: none;
}

.fx-btn--gold {
	background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
	color: var(--ink) !important;
	box-shadow: 0 8px 32px rgba(201, 162, 39, 0.35);
}

.fx-btn--gold:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 40px rgba(201, 162, 39, 0.45);
	color: var(--ink) !important;
}

.fx-btn--outline {
	background: transparent;
	color: var(--white) !important;
	border: 1.5px solid rgba(255, 255, 255, 0.35);
}

.fx-btn--outline:hover {
	border-color: var(--gold);
	color: var(--gold-light) !important;
	background: rgba(201, 162, 39, 0.08);
}

.fx-hero__stats {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	padding-top: 40px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.fx-stat__num {
	font-family: var(--font-display);
	font-size: 36px;
	font-weight: 700;
	color: var(--gold-light);
	line-height: 1;
	margin-bottom: 6px;
}

.fx-stat__label {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.55);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 500;
}

.fx-hero__visual {
	position: relative;
	z-index: 2;
}

.fx-hero__card {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(201, 162, 39, 0.2);
	border-radius: var(--radius-lg);
	padding: 32px;
	backdrop-filter: blur(20px);
	box-shadow: var(--shadow-brand);
}

.fx-hero__card-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 24px;
}

.fx-hero__pair {
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 700;
	color: var(--white);
}

.fx-hero__pair span {
	color: var(--gold-light);
}

.fx-live-dot {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: #4ade80;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.fx-live-dot::before {
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #4ade80;
	animation: fxPulse 2s infinite;
}

@keyframes fxPulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.5; transform: scale(0.85); }
}

.fx-chart-bar {
	display: flex;
	align-items: flex-end;
	gap: 6px;
	height: 80px;
	margin: 20px 0;
}

.fx-chart-bar span {
	flex: 1;
	border-radius: 4px 4px 0 0;
	background: linear-gradient(to top, var(--brand), var(--gold));
	opacity: 0.7;
	animation: fxBarGrow 1.2s ease forwards;
	transform-origin: bottom;
}

.fx-chart-bar span:nth-child(1) { height: 35%; animation-delay: 0.1s; }
.fx-chart-bar span:nth-child(2) { height: 55%; animation-delay: 0.2s; }
.fx-chart-bar span:nth-child(3) { height: 45%; animation-delay: 0.3s; }
.fx-chart-bar span:nth-child(4) { height: 70%; animation-delay: 0.4s; }
.fx-chart-bar span:nth-child(5) { height: 60%; animation-delay: 0.5s; }
.fx-chart-bar span:nth-child(6) { height: 85%; animation-delay: 0.6s; }
.fx-chart-bar span:nth-child(7) { height: 75%; animation-delay: 0.7s; }
.fx-chart-bar span:nth-child(8) { height: 95%; animation-delay: 0.8s; opacity: 1; }

@keyframes fxBarGrow {
	from { transform: scaleY(0); }
	to { transform: scaleY(1); }
}

.fx-hero__card-footer {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 16px;
	padding-top: 16px;
	border-top: 1px solid rgba(255,255,255,0.08);
}

.fx-hero__card-footer > div {
	min-width: 0;
	flex: 1;
}

.fx-hero__card-footer small {
	color: rgba(255,255,255,0.5);
	font-size: 12px;
}

.fx-hero__card-footer strong {
	color: var(--gold-light);
	font-size: 18px;
	font-family: var(--font-display);
}

.fx-scroll-hint {
	position: absolute;
	bottom: 32px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	color: rgba(255,255,255,0.4);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	text-align: center;
	animation: fxBounce 2s infinite;
}

.fx-scroll-hint i {
	display: block;
	margin-top: 8px;
	font-size: 18px;
}

@keyframes fxBounce {
	0%, 100% { transform: translateX(-50%) translateY(0); }
	50% { transform: translateX(-50%) translateY(8px); }
}

/* ── Section shared ── */
.fx-section {
	padding: 100px 0;
	background: var(--ink);
}

.fx-section--light {
	background: var(--surface) !important;
}

.fx-section--brand {
	background: linear-gradient(135deg, var(--brand-dark) 0%, var(--brand) 50%, var(--brand-light) 100%) !important;
	color: var(--white);
}

.fx-section-head {
	max-width: 760px;
	margin: 0 auto 48px;
}

.fx-section__desc--center {
	margin-left: auto;
	margin-right: auto;
}

.fx-section__eyebrow {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--brand);
	margin-bottom: 16px;
}

.fx-section--brand .fx-section__eyebrow {
	color: var(--gold-light);
}

.fx-section__title {
	font-family: var(--font-display);
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 700;
	line-height: 1.15;
	color: var(--text);
	margin-bottom: 20px;
}

.fx-section--brand .fx-section__title {
	color: var(--white);
}

.fx-section__desc {
	font-size: 17px;
	line-height: 1.75;
	color: var(--text-muted);
	max-width: 540px;
}

.fx-section--brand .fx-section__desc {
	color: rgba(255,255,255,0.75);
}

/* ── Feature cards ── */
.fx-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	margin-top: 56px;
}

.fx-card {
	background: var(--card);
	border-radius: var(--radius);
	padding: 36px 32px;
	border: 1px solid var(--border);
	box-shadow: var(--shadow);
	transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s;
	position: relative;
	overflow: hidden;
}

.fx-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--brand), var(--gold));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s;
}

.fx-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 32px 64px rgba(142, 14, 61, 0.12);
	border-color: rgba(201, 162, 39, 0.3);
}

.fx-card:hover::before {
	transform: scaleX(1);
}

.fx-card--featured {
	background: linear-gradient(145deg, var(--brand) 0%, var(--brand-light) 100%);
	border: none;
	color: var(--white);
}

.fx-card--featured .fx-card__icon {
	background: rgba(255,255,255,0.15);
	color: var(--gold-light);
}

.fx-card--featured .fx-card__text {
	color: rgba(255,255,255,0.78);
}

.fx-card--featured .fx-card__title {
	color: var(--white);
}

.fx-card__icon {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: var(--gold-muted);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	color: var(--brand);
	margin-bottom: 24px;
}

.fx-card__title {
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 12px;
	color: var(--text);
}

.fx-card__text {
	font-size: 15px;
	line-height: 1.7;
	color: var(--text-muted);
}

/* ── Expert team ── */
.fx-experts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	margin-top: 56px;
}

.fx-expert {
	text-align: center;
	padding: 40px 28px;
	background: var(--card);
	border-radius: var(--radius);
	border: 1px solid var(--border);
	transition: box-shadow 0.3s, border-color 0.3s;
}

.fx-expert:hover {
	box-shadow: var(--shadow);
}

.fx-expert__avatar {
	width: 88px;
	height: 88px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--brand) 0%, var(--gold) 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	font-size: 32px;
	color: var(--white);
	font-family: var(--font-display);
	font-weight: 700;
	border: 3px solid var(--gold-pale);
}

.fx-expert__name {
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 700;
	color: var(--text);
	margin-bottom: 4px;
}

.fx-expert__role {
	font-size: 13px;
	font-weight: 600;
	color: var(--brand);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 12px;
}

.fx-expert__bio {
	font-size: 14px;
	line-height: 1.65;
	color: var(--text-muted);
}

/* ── Process steps ── */
.fx-steps {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	margin-top: 56px;
}

.fx-step {
	position: relative;
	padding: 32px 24px;
	text-align: center;
}

.fx-step__num {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--brand), var(--gold));
	color: var(--white);
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	box-shadow: 0 8px 24px var(--brand-glow);
}

.fx-step__title {
	font-family: var(--font-display);
	font-size: 20px;
	font-weight: 700;
	color: var(--white);
	margin-bottom: 10px;
}

.fx-step__text {
	font-size: 14px;
	line-height: 1.65;
	color: rgba(255,255,255,0.65);
}

/* ── Trust bar ── */
.fx-trust {
	background: var(--surface-2);
	padding: 48px 0;
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
}

.fx-trust__items {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 48px;
}

.fx-trust__item {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--text-muted);
	font-size: 14px;
	font-weight: 500;
}

.fx-trust__item i {
	font-size: 22px;
	color: var(--brand);
}

/* ── CTA ── */
.fx-cta {
	padding: 80px 0;
	background: var(--surface-2);
	text-align: center;
}

.fx-cta__title {
	font-family: var(--font-display);
	font-size: clamp(28px, 3.5vw, 42px);
	font-weight: 700;
	color: var(--text);
	margin-bottom: 16px;
}

.fx-cta__text {
	font-size: 17px;
	color: var(--text-muted);
	margin-bottom: 36px;
	max-width: 520px;
	margin-left: auto;
	margin-right: auto;
}

/* ── Contact override ── */
.fx-contact {
	background: linear-gradient(135deg, var(--brand-dark) 0%, var(--brand) 100%) !important;
}

.fx-contact .leftContact {
	padding: 90px 60px;
}

.fx-contact h2 {
	font-family: var(--font-display) !important;
}

/* ── Footer override ── */
.fx-footer {
	background: var(--ink) !important;
	padding: 40px 0 24px !important;
}

.fx-footer .footLink1 a {
	color: var(--footer-link) !important;
	font-size: 14px;
	transition: color 0.2s;
}

.fx-footer .footLink1 a:hover {
	color: var(--gold-light) !important;
}

.fx-footer .copyrightTxt {
	color: var(--footer-muted) !important;
	font-size: 13px;
}

.fx-footer .hr1 {
	border-color: rgba(255,255,255,0.08) !important;
}

.fx-footer__brand {
	font-family: var(--font-display);
	font-size: 20px;
	color: var(--gold-light);
	margin-bottom: 8px;
}

.fx-footer__tagline {
	font-size: 13px;
	line-height: 1.55;
	color: var(--footer-muted);
	max-width: 280px;
}

/* ── Responsive ── */
	@media (max-width: 992px) {
	.fx-hero { padding: 120px 0 80px; min-height: auto; }
	.fx-hero__visual { margin-top: 48px; }
	.fx-cards, .fx-experts { grid-template-columns: 1fr; }
	.fx-steps { grid-template-columns: repeat(2, 1fr); }
	.fx-hero__stats { gap: 24px; }
	.fx-header { background: var(--header-scrolled) !important; padding: 14px 0 !important; }
	.fx-nav .fx-nav-dropdown {
		flex-direction: column !important;
		width: 100% !important;
		min-width: 0 !important;
		position: relative !important;
		left: 0 !important;
		right: auto !important;
		top: 10px !important;
		margin-bottom: 16px;
		padding: 8px !important;
	}
	.fx-nav .dropdownUl {
		width: 100% !important;
		min-width: 0 !important;
	}
	.fx-nav .dropdownUl a {
		width: 100% !important;
		min-height: 0;
	}
}

@media (max-width: 767px) {
	.fx-hero__actions { flex-direction: column; }
	.fx-btn { justify-content: center; width: 100%; }
	.fx-steps { grid-template-columns: 1fr; }
	.fx-hero__stats { flex-direction: column; gap: 20px; }
	.fx-trust__items { flex-direction: column; align-items: center; gap: 24px; }
}

/* ── Auth (Login / Register) ── */
.fx-auth-page {
	min-height: 100vh;
	background: var(--ink);
	position: relative;
	overflow-x: hidden;
}

.fx-auth-bg {
	position: fixed;
	inset: 0;
	background: var(--auth-gradient);
	z-index: 0;
}

.fx-auth-wrap {
	position: relative;
	z-index: 1;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 40px 20px 60px;
}

.fx-auth-logo {
	margin-bottom: 32px;
	display: inline-block;
	transition: opacity 0.2s;
}

.fx-auth-logo:hover { opacity: 0.85; }

.fx-auth-logo img {
	height: 48px;
	width: auto;
	filter: drop-shadow(0 2px 12px rgba(0,0,0,0.3));
}

.fx-auth-card {
	display: flex;
	width: 100%;
	max-width: 960px;
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: 0 32px 80px rgba(0, 0, 0, 0.45);
	border: 1px solid rgba(201, 162, 39, 0.15);
}

.fx-auth-panel {
	flex: 1;
	padding: 48px 44px;
}

.fx-auth-panel--login {
	background: var(--card);
	border-right: 1px solid var(--border);
}

.fx-auth-panel--register {
	background: linear-gradient(160deg, var(--brand-dark) 0%, var(--brand) 60%, var(--brand-light) 100%);
	color: var(--white);
	position: relative;
	overflow: hidden;
}

.fx-auth-panel--register::before {
	content: '';
	position: absolute;
	top: -60px;
	right: -60px;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background: rgba(201, 162, 39, 0.12);
	pointer-events: none;
}

.fx-auth-title {
	font-family: var(--font-display);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 8px;
	color: var(--text);
}

.fx-auth-panel--register .fx-auth-title {
	color: var(--white);
}

.fx-auth-title em {
	font-style: italic;
	color: var(--brand);
}

.fx-auth-panel--register .fx-auth-title em {
	color: var(--gold-light);
}

.fx-auth-subtitle {
	font-size: 14px;
	color: var(--text-muted);
	line-height: 1.6;
	margin-bottom: 28px;
}

.fx-auth-panel--register .fx-auth-subtitle {
	color: rgba(255,255,255,0.72);
}

.fx-auth-field {
	position: relative;
	margin-bottom: 16px;
}

.fx-auth-field i {
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--brand);
	font-size: 15px;
	pointer-events: none;
}

.fx-auth-input {
	width: 100%;
	padding: 14px 16px 14px 44px;
	border: 1.5px solid var(--border);
	border-radius: 10px;
	font-family: var(--font-body);
	font-size: 14px;
	color: var(--text);
	background: var(--surface-2);
	outline: none;
	transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}

.fx-auth-input:focus {
	border-color: var(--gold);
	background: var(--surface-3);
	box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.15);
}

.fx-auth-panel--register .fx-auth-input,
.fx-auth-panel--register .fx-auth-select {
	background: rgba(255,255,255,0.08);
	border-color: rgba(255,255,255,0.2);
	color: var(--white);
	padding-left: 16px;
}

.fx-auth-panel--register .fx-auth-input:focus,
.fx-auth-panel--register .fx-auth-select:focus {
	border-color: var(--gold);
	background: rgba(255,255,255,0.12);
	box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.2);
}

.fx-auth-panel--register .fx-auth-input::placeholder {
	color: rgba(255,255,255,0.45);
}

.fx-auth-select {
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid rgba(142, 14, 61, 0.12);
	border-radius: 10px;
	font-family: var(--font-body);
	font-size: 14px;
	color: var(--ink);
	background: var(--surface);
	outline: none;
	appearance: none;
	cursor: pointer;
}

.fx-auth-select option {
	color: var(--ink);
	background: var(--white);
}

.fx-auth-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 20px 0;
	flex-wrap: wrap;
	gap: 8px;
}

.fx-auth-check {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--text-muted);
	cursor: pointer;
	user-select: none;
}

.fx-auth-check input { accent-color: var(--brand); }

.fx-auth-link {
	font-size: 13px;
	color: var(--brand);
	font-weight: 500;
	text-decoration: none !important;
}

.fx-auth-link:hover { color: var(--gold); }

.fx-auth-panel--register .fx-auth-link {
	color: var(--gold-light);
}

.fx-auth-btn {
	width: 100%;
	padding: 15px 24px;
	border: none;
	border-radius: 10px;
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	transition: transform 0.2s, box-shadow 0.2s;
	margin-top: 8px;
}

.fx-auth-btn--primary {
	background: linear-gradient(135deg, var(--brand) 0%, var(--brand-light) 100%);
	color: var(--white);
	box-shadow: 0 8px 24px var(--brand-glow);
}

.fx-auth-btn--primary:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 32px var(--brand-glow);
}

.fx-auth-btn--gold {
	background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
	color: var(--ink);
	box-shadow: 0 8px 24px rgba(201, 162, 39, 0.3);
}

.fx-auth-btn--gold:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 32px rgba(201, 162, 39, 0.4);
}

.fx-auth-btn--outline {
	background: transparent;
	color: var(--white);
	border: 1.5px solid rgba(255,255,255,0.35);
}

.fx-auth-btn--outline:hover {
	border-color: var(--gold);
	background: rgba(201, 162, 39, 0.1);
}

.fx-auth-divider {
	border: none;
	border-top: 1px solid rgba(142, 14, 61, 0.1);
	margin: 24px 0;
}

.fx-auth-help {
	text-align: center;
	padding: 12px;
	border-radius: 8px;
	background: var(--gold-muted);
	color: var(--brand);
	font-size: 13px;
	font-weight: 500;
	display: block;
	text-decoration: none !important;
	transition: background 0.2s;
}

.fx-auth-help:hover {
	background: rgba(201, 162, 39, 0.25);
	color: var(--brand-dark);
}

.fx-auth-type-label {
	font-size: 13px;
	font-weight: 600;
	color: rgba(255,255,255,0.7);
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.fx-auth-types {
	display: flex;
	gap: 12px;
	margin-bottom: 20px;
}

.fx-auth-type-wrap {
	flex: 1;
}

.fx-auth-type-btn {
	flex: 1;
	padding: 10px 16px;
	border: 1.5px solid rgba(255,255,255,0.25);
	border-radius: 8px;
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s;
	user-select: none;
	color: rgba(255,255,255,0.7);
}

.fx-auth-type-btn.fx-active,
.fx-auth-type-btn:hover {
	background: rgba(255,255,255,0.15);
	border-color: var(--gold);
	color: var(--gold-light);
}

.fx-auth-type-btn.fx-active {
	background: var(--white);
	color: var(--brand);
	border-color: var(--white);
}

.fx-auth-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.fx-auth-tou {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 13px;
	color: rgba(255,255,255,0.75);
	margin: 16px 0;
}

.fx-auth-tou a {
	color: var(--gold-light);
}

.fx-auth-back {
	position: absolute;
	top: 24px;
	left: 24px;
	color: rgba(255,255,255,0.55);
	font-size: 14px;
	text-decoration: none !important;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: color 0.2s;
	z-index: 2;
}

.fx-auth-back:hover { color: var(--gold-light); }

/* Monthly return display (hero card) */
.fx-monthly-return {
	display: flex;
	align-items: baseline;
	gap: 2px;
	margin: 4px 0 2px;
	line-height: 1;
}

.fx-monthly-return__num {
	font-family: var(--font-display);
	font-size: 32px;
	font-weight: 700;
	background: linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	animation: fxReturnPulse 3s ease-in-out infinite;
}

.fx-monthly-return__sep {
	font-family: var(--font-display);
	font-size: 22px;
	color: rgba(255,255,255,0.35);
	margin: 0 2px;
}

.fx-monthly-return__pct {
	font-family: var(--font-display);
	font-size: 20px;
	font-weight: 700;
	color: var(--gold-light);
}

.fx-monthly-return__note {
	display: block;
	font-size: 10px !important;
	color: rgba(255,255,255,0.4) !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-top: 2px;
}

.fx-hero__card-footer strong {
	font-family: var(--font-display);
	font-size: 20px;
	color: var(--gold-light);
}

@keyframes fxReturnPulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.75; }
}

/* Contact section dark */
.fx-contact .inpHone {
	background: rgba(0,0,0,0.25) !important;
	border: 1px solid var(--border) !important;
	color: var(--text) !important;
}

.fx-contact .inpHone:focus {
	background: rgba(0,0,0,0.4) !important;
	border-color: var(--gold) !important;
}

.fx-contact .submitBtnHome {
	background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%) !important;
	color: var(--ink) !important;
	font-weight: 600 !important;
}

.fx-auth-help {
	background: rgba(201, 162, 39, 0.1) !important;
	color: var(--gold-light) !important;
}

.fx-auth-divider {
	border-color: var(--border) !important;
}

.fx-auth-check { color: var(--text-muted) !important; }
.fx-auth-link { color: var(--gold-light) !important; }

@media (max-width: 992px) {
	.fx-auth-card { flex-direction: column; max-width: 480px; }
	.fx-auth-panel { padding: 36px 28px; }
	.fx-auth-grid { grid-template-columns: 1fr; }
}

/* ── Static pages (About, Privacy, CMS) ── */
.fx-page-hero {
	position: relative;
	padding: 140px 0 72px;
	overflow: hidden;
	background: var(--hero-gradient);
}

.fx-page-hero__bg {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 60% 50% at 85% 20%, rgba(142, 14, 61, 0.35) 0%, transparent 55%),
		radial-gradient(ellipse 40% 40% at 10% 80%, rgba(201, 162, 39, 0.08) 0%, transparent 50%);
	pointer-events: none;
}

.fx-page-hero__inner {
	position: relative;
	max-width: 760px;
}

.fx-page-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gold-light);
	margin-bottom: 16px;
}

.fx-page-hero__title {
	font-family: var(--font-display);
	font-size: clamp(2.2rem, 5vw, 3.4rem);
	font-weight: 600;
	line-height: 1.15;
	color: var(--white);
	margin: 0 0 16px;
}

.fx-page-hero__lead {
	font-size: 1.1rem;
	line-height: 1.7;
	color: var(--text-muted);
	max-width: 620px;
	margin: 0 0 24px;
}

.fx-page-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	font-size: 14px;
}

.fx-page-breadcrumb a {
	color: var(--text-muted);
	transition: color 0.2s;
}

.fx-page-breadcrumb a:hover {
	color: var(--gold-light);
}

.fx-page-breadcrumb__sep,
.fx-page-breadcrumb span:last-child {
	color: rgba(255, 255, 255, 0.45);
}

.fx-static-page {
	padding: 56px 0 100px;
	background: var(--ink);
}

.fx-static-page__card {
	background: var(--card);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	padding: 36px 40px;
	box-shadow: var(--shadow);
}

.fx-prose {
	color: var(--text);
	line-height: 1.75;
	font-size: 15px;
}

.fx-prose h2,
.fx-prose h3,
.fx-prose h4 {
	font-family: var(--font-display);
	color: var(--white);
	margin: 0 0 14px;
}

.fx-prose h2 { font-size: 1.65rem; margin-top: 0; }
.fx-prose h3 { font-size: 1.25rem; }
.fx-prose p { margin: 0 0 16px; color: var(--text-muted); }
.fx-prose ul,
.fx-prose ol { margin: 0 0 18px; padding-left: 1.25rem; color: var(--text-muted); }
.fx-prose li { margin-bottom: 8px; }
.fx-prose a { color: var(--gold-light); }
.fx-prose a:hover { color: var(--gold); }

/* About page */
.fx-about__intro {
	margin-bottom: 48px;
}

.fx-about__heading {
	font-family: var(--font-display);
	font-size: 2rem;
	color: var(--white);
	margin: 12px 0 18px;
}

.fx-about__text {
	color: var(--text-muted);
	line-height: 1.75;
	margin-bottom: 16px;
}

.fx-about__highlight {
	background: linear-gradient(145deg, var(--surface-2), var(--card));
	border: 1px solid rgba(201, 162, 39, 0.18);
	border-radius: var(--radius-lg);
	padding: 32px;
	height: 100%;
}

.fx-about__highlight-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--gold-muted);
	color: var(--gold-light);
	font-size: 22px;
	margin-bottom: 18px;
}

.fx-about__highlight h3 {
	font-family: var(--font-display);
	color: var(--white);
	font-size: 1.4rem;
	margin: 0 0 12px;
}

.fx-about__highlight p {
	color: var(--text-muted);
	margin-bottom: 18px;
	line-height: 1.7;
}

.fx-about__list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.fx-about__list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--text);
	font-size: 14px;
	margin-bottom: 10px;
}

.fx-about__list li i {
	color: var(--gold);
	margin-top: 3px;
}

.fx-about__stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	margin-bottom: 64px;
}

.fx-about-stat {
	text-align: center;
	padding: 28px 16px;
	background: var(--surface-2);
	border: 1px solid var(--border);
	border-radius: var(--radius);
}

.fx-about-stat__num {
	font-family: var(--font-display);
	font-size: 2rem;
	font-weight: 600;
	color: var(--gold-light);
	line-height: 1.1;
}

.fx-about-stat__label {
	font-size: 13px;
	color: var(--text-muted);
	margin-top: 8px;
}

.fx-about__values-head {
	margin-bottom: 36px;
}

.fx-about__cards {
	margin-bottom: 72px;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 0;
}

.fx-about__team {
	margin-bottom: 56px;
}

.fx-about__cta {
	border-radius: var(--radius-lg);
	overflow: hidden;
	background: linear-gradient(135deg, var(--brand-dark) 0%, var(--brand) 55%, #3a0f28 100%);
	border: 1px solid rgba(201, 162, 39, 0.15);
}

.fx-about__cta-inner {
	padding: 48px 40px;
	text-align: center;
}

.fx-about__cta-inner h2 {
	font-family: var(--font-display);
	font-size: 2rem;
	color: var(--white);
	margin: 0 0 12px;
}

.fx-about__cta-inner > p {
	color: rgba(255, 255, 255, 0.75);
	max-width: 520px;
	margin: 0 auto 28px;
	line-height: 1.7;
}

.fx-about__cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
	margin-bottom: 24px;
}

.fx-about__cta-email {
	margin: 0;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.65);
}

.fx-about__cta-email a {
	color: var(--gold-light);
}

/* Privacy / legal */
.fx-legal__nav {
	position: sticky;
	top: 100px;
	background: var(--card);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	padding: 28px 24px;
	margin-bottom: 32px;
}

.fx-legal__nav-title {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 16px;
}

.fx-legal__toc {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
	counter-reset: legal-toc;
}

.fx-legal__toc li {
	margin-bottom: 6px;
}

.fx-legal__toc a {
	display: block;
	padding: 8px 10px;
	border-radius: 8px;
	font-size: 13px;
	line-height: 1.45;
	color: var(--text-muted);
	transition: background 0.2s, color 0.2s;
}

.fx-legal__toc a:hover {
	background: var(--gold-muted);
	color: var(--gold-light);
}

.fx-legal__meta {
	padding-top: 18px;
	border-top: 1px solid var(--border);
	font-size: 13px;
	color: var(--text-muted);
}

.fx-legal__meta strong {
	display: block;
	color: var(--white);
	margin-bottom: 4px;
}

.fx-legal__section {
	padding-bottom: 28px;
	margin-bottom: 28px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.fx-legal__section:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.fx-legal__contact-box {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 20px 22px;
	background: var(--surface-2);
	border: 1px solid var(--border);
	border-radius: var(--radius);
	margin-top: 8px;
}

.fx-legal__contact-box i {
	font-size: 22px;
	color: var(--gold);
	margin-top: 2px;
}

.fx-legal__contact-box a {
	color: var(--gold-light);
	font-weight: 500;
}

/* Footer grid */
.fx-footer .fx-footer__grid {
	display: grid !important;
	grid-template-columns: minmax(240px, 1.7fr) minmax(140px, 1fr) minmax(150px, 1fr) minmax(180px, 1fr);
	column-gap: 48px;
	row-gap: 32px;
	align-items: start;
	margin-left: 0;
	margin-right: 0;
}

.fx-footer .fx-footer__grid::before,
.fx-footer .fx-footer__grid::after {
	content: none !important;
	display: none !important;
}

.fx-footer .fx-footer__col {
	width: auto !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-bottom: 0;
	float: none !important;
}

.fx-footer__brandline {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.fx-footer .fx-brand-mark {
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin-top: 2px;
}

.fx-footer .fx-brand-mark svg {
	width: 100%;
	height: 100%;
	display: block;
}

.fx-footer__col {
	margin-bottom: 28px;
}

.fx-footer__heading {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 16px;
}

.fx-footer__links {
	list-style: none;
	padding: 0;
	margin: 0;
}

.fx-footer__links li {
	display: block !important;
	margin: 0 0 10px;
}

.fx-footer__links li:last-child {
	margin-bottom: 0;
}

.fx-footer__bottom {
	padding: 8px 0 4px;
}

@media (max-width: 991px) {
	.fx-footer .fx-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
	.fx-footer .fx-footer__col--brand,
	.fx-footer .fx-footer__col:last-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 992px) {
	.fx-page-hero { padding: 120px 0 56px; }
	.fx-about__stats { grid-template-columns: repeat(2, 1fr); }
	.fx-about__cards { grid-template-columns: repeat(2, 1fr); }
	.fx-legal__nav { position: static; }
	.fx-static-page__card { padding: 28px 22px; }
	.fx-about__cta-inner { padding: 36px 24px; }
	.fx-about__cta-actions { flex-direction: column; align-items: stretch; }
}

@media (max-width: 576px) {
	.fx-about__stats { grid-template-columns: 1fr; }
	.fx-about__cards { grid-template-columns: 1fr; }
}

/* ── Contact section (public + dashboard) ── */
.fx-contact-section {
	padding: 88px 0;
	background: linear-gradient(160deg, var(--ink) 0%, var(--brand-dark) 45%, #1a0c14 100%);
	position: relative;
	overflow: hidden;
}

.fx-contact-section::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(ellipse 60% 50% at 90% 20%, rgba(201, 162, 39, 0.12) 0%, transparent 55%);
	pointer-events: none;
}

.fx-contact-section__grid {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: 48px;
	align-items: start;
	position: relative;
	z-index: 1;
}

.fx-contact-section__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--gold-light);
	margin-bottom: 14px;
}

.fx-contact-section__title {
	font-family: var(--font-display);
	font-size: clamp(2rem, 4vw, 2.75rem);
	font-weight: 700;
	color: #fff;
	line-height: 1.15;
	margin: 0 0 16px;
}

.fx-contact-section__text {
	font-size: 16px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.65);
	margin: 0 0 28px;
	max-width: 420px;
}

.fx-contact-section__channels {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.fx-contact-section__channels li {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.fx-contact-section__channel-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(201, 162, 39, 0.15);
	border: 1px solid rgba(201, 162, 39, 0.25);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gold-light);
	flex-shrink: 0;
}

.fx-contact-section__channels strong {
	display: block;
	font-size: 13px;
	color: #fff;
	margin-bottom: 2px;
}

.fx-contact-section__channels span,
.fx-contact-section__channels a {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
}

.fx-contact-section__channels a:hover {
	color: var(--gold-light);
}

.fx-contact-section__form-wrap {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	padding: 32px;
	backdrop-filter: blur(12px);
	box-shadow: 0 24px 64px rgba(0, 0, 0, 0.35);
}

.fx-contact-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.fx-contact-form__group {
	margin-bottom: 18px;
}

.fx-contact-form__group label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.55);
	margin-bottom: 8px;
}

.fx-contact-form__input {
	width: 100%;
	padding: 12px 16px;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(0, 0, 0, 0.25);
	color: #fff;
	font-size: 15px;
	transition: border-color 0.2s, box-shadow 0.2s;
}

.fx-contact-form__input::placeholder {
	color: rgba(255, 255, 255, 0.35);
}

.fx-contact-form__input:focus {
	outline: none;
	border-color: var(--gold);
	box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.2);
	background: rgba(0, 0, 0, 0.35);
}

.fx-contact-form__textarea {
	min-height: 140px;
	resize: vertical;
}

.fx-contact-form__hp {
	position: absolute;
	left: -9999px;
	opacity: 0;
	height: 0;
	overflow: hidden;
}

.fx-contact-form__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 14px 24px;
	border: none;
	border-radius: 12px;
	background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
	color: var(--ink);
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
	transition: transform 0.2s, box-shadow 0.2s;
}

.fx-contact-form__submit:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 32px rgba(201, 162, 39, 0.35);
}

/* Dashboard variant */
.fx-contact-section--dash {
	padding: 0;
	background: transparent;
}

.fx-contact-section--dash::before {
	display: none;
}

.fx-contact-section--dash .fx-contact-section__grid {
	gap: 28px;
}

.fx-contact-section--dash .fx-contact-section__info {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 28px;
}

.fx-contact-section--dash .fx-contact-section__title {
	font-size: 1.5rem;
	color: var(--text);
}

.fx-contact-section--dash .fx-contact-section__text {
	color: var(--text-muted);
	font-size: 14px;
}

.fx-contact-section--dash .fx-contact-section__channels strong {
	color: var(--text);
}

.fx-contact-section--dash .fx-contact-section__channels span,
.fx-contact-section--dash .fx-contact-section__channels a {
	color: var(--text-muted);
}

.fx-contact-section--dash .fx-contact-section__form-wrap {
	background: var(--card);
	border-color: var(--border);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}

.fx-contact-section--dash .fx-contact-form__group label {
	color: var(--text-muted);
}

.fx-contact-section--dash .fx-contact-form__input {
	background: rgba(0, 0, 0, 0.2);
	border-color: var(--border);
	color: var(--text);
}

.fx-contact-section__grid--form-only {
	grid-template-columns: 1fr;
}

@media (max-width: 992px) {
	.fx-contact-section__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.fx-contact-form__row {
		grid-template-columns: 1fr;
	}
	.fx-contact-section {
		padding: 64px 0;
	}
}
