:root {
	--fca-navy: #031e34;
	--fca-blue: #0062c4;
	--fca-ice: #edf6ff;
	--fca-line: #dce5ed;
	--fca-text: #17334a;
	--fca-muted: #63788a;
	--fca-white: #fff;
}

.fca-dashboard,
.fca-login-shell {
	color: var(--fca-text);
	margin: 0 auto;
	max-width: 1240px;
}

.fca-eyebrow {
	color: var(--fca-blue);
	display: block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .13em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.fca-dashboard-hero {
	background: linear-gradient(135deg, var(--fca-navy), #062b49 72%, #0a4779);
	border-radius: 22px;
	box-shadow: 0 22px 54px rgba(3, 30, 52, .17);
	color: var(--fca-white);
	margin-bottom: 24px;
	overflow: hidden;
	padding: clamp(28px, 5vw, 58px);
	position: relative;
}

.fca-dashboard-hero::after {
	background: radial-gradient(circle, rgba(255, 255, 255, .16), transparent 68%);
	content: "";
	height: 350px;
	position: absolute;
	right: -90px;
	top: -170px;
	width: 350px;
}

.fca-dashboard-hero .fca-eyebrow {
	color: #8dc7ff;
}

.fca-dashboard-hero h1 {
	color: inherit;
	font-size: clamp(30px, 4vw, 52px);
	letter-spacing: -.035em;
	line-height: 1.05;
	margin: 0 0 14px;
}

.fca-dashboard-hero p {
	font-size: 17px;
	line-height: 1.65;
	margin: 0;
	max-width: 690px;
}

.fca-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
	position: relative;
	z-index: 1;
}

.fca-dashboard .button,
.fca-order-state .button,
.fca-login-shell .button {
	border-radius: 999px;
	font-weight: 750;
	min-height: 42px;
	padding: 10px 20px;
}

.fca-advisor-card,
.fca-order-card {
	align-items: center;
	background: var(--fca-white);
	border: 1px solid var(--fca-line);
	border-radius: 16px;
	display: flex;
	gap: 22px;
	justify-content: space-between;
	padding: 22px;
}

.fca-advisor-card {
	background: linear-gradient(120deg, var(--fca-white), var(--fca-ice));
	margin-bottom: 34px;
}

.fca-advisor-card h2,
.fca-section-heading h2,
.fca-order-card h3 {
	color: var(--fca-navy);
	margin: 0;
}

.fca-advisor-card p,
.fca-order-card p {
	color: var(--fca-muted);
	margin: 7px 0 0;
}

.fca-advisor-actions,
.fca-order-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.fca-advisor-actions a,
.fca-order-actions a:not(.button),
.fca-section-heading > a {
	color: var(--fca-blue);
	font-weight: 750;
	text-decoration: none;
}

.fca-orders,
.fca-products {
	margin: 34px 0;
}

.fca-section-heading {
	align-items: end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}

.fca-order-list {
	display: grid;
	gap: 12px;
}

.fca-order-card h3 {
	font-size: 19px;
}

.fca-order-number {
	color: var(--fca-blue);
	font-size: 13px;
	font-weight: 800;
}

.fca-empty,
.fca-order-state,
.fca-bank-instructions {
	background: var(--fca-ice);
	border: 1px solid #d9edff;
	border-radius: 14px;
	padding: 20px;
}

.fca-order-state {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 24px;
}

.fca-order-state p {
	margin: 0;
}

.fca-checkout-choice {
	background: var(--fca-ice);
	border: 1px solid #d9edff;
	border-radius: 14px;
	margin-bottom: 20px;
	padding: 18px;
}

.fca-checkout-choice h3 {
	font-size: 18px;
	margin: 0 0 6px;
}

.fca-checkout-choice > p {
	color: var(--fca-muted);
	margin: 0 0 14px;
}

.fca-payment-choice {
	align-items: center;
	background: var(--fca-white);
	border: 1px solid var(--fca-line);
	border-radius: 10px;
	display: flex;
	font-weight: 700;
	gap: 8px;
	margin-top: 8px;
	padding: 12px;
}

.fca-login-shell {
	display: grid;
	gap: clamp(28px, 6vw, 70px);
	grid-template-columns: minmax(0, .9fr) minmax(340px, 1.1fr);
	padding: clamp(24px, 5vw, 58px);
}

.fca-login-intro {
	align-self: center;
}

.fca-login-intro h1 {
	color: var(--fca-navy);
	font-size: clamp(34px, 5vw, 58px);
	letter-spacing: -.04em;
	line-height: 1.02;
	margin: 0 0 18px;
}

.fca-login-intro p {
	color: var(--fca-muted);
	font-size: 18px;
	line-height: 1.7;
}

.fca-login-shell .woocommerce-form-login,
.fca-login-shell .woocommerce-form-register {
	background: var(--fca-white);
	border: 1px solid var(--fca-line);
	border-radius: 18px;
	box-shadow: 0 18px 50px rgba(3, 30, 52, .09);
	padding: 26px;
}

.fca-products ul.products {
	margin-top: 0;
}

@media (max-width: 760px) {
	.fca-login-shell {
		grid-template-columns: 1fr;
		padding: 18px 0;
	}

	.fca-advisor-card,
	.fca-order-card,
	.fca-order-state {
		align-items: flex-start;
		flex-direction: column;
	}

	.fca-order-actions,
	.fca-advisor-actions {
		width: 100%;
	}

	.fca-order-actions .button {
		text-align: center;
		width: 100%;
	}
}
