/*
 * Sipoon Wolf theme styles for the "join a team" page (page-templates/join-team.php).
 *
 * inc/assets.php loads this file only on these pages, after main.css. The tokens are in main.css.
 */

/* Join a team page --------------------------------------------------- */

.join-steps,
.team-roles {
	padding-bottom: clamp(64px, 8vw, 120px);
}

.join-steps__inner,
.team-roles__inner {
	display: flex;
	flex-direction: column;
	gap: clamp(24px, 3vw, 40px);
}

.join-steps__title,
.team-years__title,
.team-roles__title {
	font-weight: 900;
	font-size: clamp(28px, 3vw, 44px);
	line-height: 1;
	text-transform: uppercase;
}

.join-steps__title,
.team-roles__head {
	padding-bottom: 16px;
	border-bottom: 4px solid var(--wolf-ink);
}

.join-steps__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
	gap: clamp(24px, 3vw, 48px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.join-step {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.join-step__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--wolf-gold);
	color: var(--wolf-ink);
	font-family: var(--wolf-font-display);
	font-weight: 900;
	font-size: 30px;
	line-height: 1;
}

.join-step__title {
	font-weight: 800;
	font-size: 24px;
	line-height: 1.2;
}

.join-step__text,
.team-years__text,
.team-roles__text {
	font-size: 17px;
	line-height: 1.55;
	color: var(--wolf-ink-2);
}

.team-years {
	padding-block: var(--wolf-section);
	background: var(--wolf-paper-2);
}

.team-years__inner {
	display: flex;
	flex-direction: column;
	gap: clamp(24px, 3vw, 36px);
}

.team-years__head,
.team-roles__head {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.team-years__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(150px, 100%), 1fr));
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.year-chip {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 2px;
	min-height: 72px;
	padding: 12px 18px;
	border-radius: var(--wolf-radius);
	background: var(--wolf-paper);
	color: var(--wolf-ink);
	text-decoration: none;
	transition: background-color 0.15s;
}

.year-chip:hover {
	background: var(--wolf-gold);
}

.year-chip__label {
	font-family: var(--wolf-font-display);
	font-weight: 900;
	font-size: 22px;
	line-height: 1;
}

.year-chip__team {
	font-weight: 600;
	font-size: 15px;
}

.team-years + .team-roles {
	padding-top: clamp(64px, 8vw, 120px);
}

.team-roles__text {
	max-width: 60ch;
	line-height: 1.5;
}

.team-roles__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: clamp(12px, 1.6vw, 20px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.role-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: clamp(22px, 2.4vw, 32px);
	border: 1px solid var(--wolf-line);
	background: var(--wolf-paper);
}

.role-card__tag {
	align-self: flex-start;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--wolf-gold);
	color: var(--wolf-ink);
	font-family: var(--wolf-font-display);
	font-weight: 800;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.role-card__tag--club {
	background: var(--wolf-ink);
	color: var(--wolf-paper);
}

.role-card__title {
	font-weight: 800;
	font-size: 22px;
	line-height: 1.2;
}

.role-card__text {
	font-size: 16px;
	line-height: 1.55;
	color: var(--wolf-ink-2);
}

/* The contact prompt as a black band. */
.join-prompt--dark {
	background: var(--wolf-ink);
	color: var(--wolf-paper);
}

.join-prompt--dark .join-prompt__text {
	max-width: 20ch;
	font-weight: 900;
	font-size: clamp(26px, 3vw, 44px);
	line-height: 1.05;
	text-transform: uppercase;
}
