.tcc-application-shell {
	--form-green: #765a3c;
	--form-forest: #211914;
	--form-gold: #c9ad7e;
	--form-cream: #f5efe6;
}

.tcc-application-form {
	background: #f5efe6;
}

.tcc-form-brand {
	display: flex;
	min-height: 150px;
	align-items: center;
	justify-content: center;
	gap: 1.2rem;
	padding: 2rem;
	background: #211914;
	color: #c9ad7e;
}

.tcc-form-brand img {
	display: block;
	max-width: min(360px, 80%);
	max-height: 92px;
	width: auto;
	height: auto;
	object-fit: contain;
}

.tcc-form-brand svg {
	width: 58px;
	height: 68px;
	flex: 0 0 auto;
}

.tcc-form-brand span {
	font-size: .68rem;
	font-weight: 500;
	letter-spacing: .24em;
	text-transform: uppercase;
}

.tcc-form-section__heading {
	padding-right: 0;
}

.tcc-form-section__heading::after {
	display: none;
}

.tcc-final-consent a {
	color: #765a3c;
	text-decoration-color: #c9ad7e;
	text-underline-offset: .18em;
}

.tcc-form-icon {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .2s ease;
}

.tcc-form-next:hover .tcc-form-icon,
.tcc-form-next:focus-visible .tcc-form-icon {
	transform: translateX(3px);
}

.tcc-form-submit:hover .tcc-form-icon,
.tcc-form-submit:focus-visible .tcc-form-icon {
	transform: translate(2px, -2px);
}

.tcc-field,
.tcc-check-grid label,
.tcc-final-consent {
	overflow-wrap: anywhere;
}

.tcc-membership-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

.tcc-membership-choices label > span {
	background: #eadbc6;
}

.tcc-membership-choices input:checked + span {
	background: #dfc6a4;
}

.tcc-membership-choices label > span {
	min-height: 285px;
	padding-inline: 1rem;
}

.tcc-membership-choices strong {
	font-size: 1.9rem;
}

.tcc-form-section[data-corporate-only] > .tcc-form-grid:first-of-type .tcc-field {
	grid-column: 1 / -1;
}

.tcc-representatives {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
	margin-top: 2rem;
}

.tcc-representatives fieldset {
	margin: 0;
	padding: 1.5rem;
	border: 1px solid rgba(118, 90, 60, .32);
}

.tcc-representatives legend {
	padding: 0 .6rem;
	color: #765a3c;
	font: 400 1.65rem/1 var(--tcc-serif, serif);
}

.tcc-representatives .tcc-form-grid {
	grid-template-columns: 1fr;
}

@media (max-width: 900px) {
	.tcc-membership-choices {
		grid-template-columns: 1fr;
	}

	.tcc-membership-choices label > span {
		min-height: 205px;
	}

	.tcc-representatives {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.tcc-application-shell {
		width: 100%;
	}

	.tcc-form-brand {
		min-height: 112px;
		padding: 1.25rem .85rem;
	}

	.tcc-form-brand img {
		max-height: 76px;
	}

	.tcc-form-brand svg {
		width: 48px;
		height: 58px;
	}

	.tcc-form-brand span {
		font-size: .58rem;
	}

	.tcc-form-progress {
		gap: .55rem;
		padding: .95rem 1rem;
		font-size: .56rem;
	}

	.tcc-form-section {
		padding: 2rem 1rem;
	}

	.tcc-form-section__heading {
		margin-bottom: 2.25rem;
	}

	.tcc-form-section__heading h2 {
		font-size: clamp(2.25rem, 12vw, 3.2rem);
		line-height: .96;
	}

	.tcc-form-section h3 {
		margin-top: 2.5rem;
		font-size: 1.75rem;
	}

	.tcc-membership-choices {
		gap: .9rem;
	}

	.tcc-membership-choices label > span {
		min-height: 170px;
		padding: 2rem 1rem;
	}

	.tcc-membership-choices strong {
		font-size: 1.8rem;
	}

	.tcc-field input,
	.tcc-field textarea,
	.tcc-field select {
		min-height: 52px;
		font-size: 16px;
	}

	.tcc-check-grid {
		gap: .65rem;
	}

	.tcc-check-grid label {
		min-height: 44px;
		padding: .35rem 0;
		font-size: .82rem;
	}

	.tcc-check-grid input,
	.tcc-final-consent input {
		width: 20px;
		height: 20px;
	}

	.tcc-confidentiality,
	.tcc-considered-note {
		padding: 1.35rem 1rem;
		font-size: 1.05rem;
	}

	.tcc-form-nav {
		margin-top: 2.5rem;
	}

	.tcc-form-back,
	.tcc-form-next,
	.tcc-form-submit {
		min-height: 54px;
		font-size: .64rem;
	}

	.tcc-representatives fieldset {
		padding: 1rem .8rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.tcc-form-icon {
		transition: none;
	}
}
