/* Heavy for the Tropics — Gigs */
body.post-type-archive-gig {
	background:#fff;
	color:#000;
}

body.post-type-archive-gig main.hfttg-page {
	width:min(1180px, calc(100% - 80px));
	margin:120px auto 100px;
}

.hfttg-hero {
	border-bottom:4px solid #000;
	padding:25px 0 28px;
	margin-bottom:70px;
}

.hfttg-kicker {
	margin:0 0 7px;
	font-size:11px;
	line-height:1.2;
	font-weight:700;
	letter-spacing:.18em;
	text-transform:uppercase;
}

.hfttg-hero h1 {
	margin:0;
	font-family:'Palm', 'Palm Leaf', serif;
	font-size:clamp(76px, 12vw, 170px);
	line-height:.78;
	font-weight:400;
	letter-spacing:.02em;
	text-transform:uppercase;
}

.hfttg-section {
	margin-bottom:82px;
}

.hfttg-section-head {
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	gap:20px;
	padding-bottom:13px;
	border-bottom:1px solid #000;
}

.hfttg-section-head h2 {
	margin:0;
	font-family:'Palm', 'Palm Leaf', serif;
	font-size:clamp(30px, 4vw, 48px);
	line-height:1;
	font-weight:400;
	letter-spacing:.04em;
	text-transform:uppercase;
}

.hfttg-section-head > span {
	font-size:11px;
	font-weight:700;
	letter-spacing:.12em;
}

.hfttg-row {
	display:grid;
	grid-template-columns:150px minmax(0, 1fr) auto;
	align-items:center;
	gap:34px;
	min-height:132px;
	padding:22px 0;
	border-bottom:1px solid rgba(0,0,0,.24);
}

.hfttg-date {
	display:grid;
	grid-template-columns:auto 1fr;
	grid-template-rows:auto auto;
	align-items:end;
	column-gap:10px;
	width:max-content;
	line-height:1;
}

.hfttg-date__day {
	grid-row:1 / 3;
	font-family:'Palm', 'Palm Leaf', serif;
	font-size:60px;
	font-weight:400;
	line-height:.9;
}

.hfttg-date__month {
	align-self:end;
	font-size:13px;
	font-weight:700;
	letter-spacing:.08em;
}

.hfttg-date__year {
	align-self:start;
	margin-top:3px;
	font-size:10px;
	font-weight:600;
	letter-spacing:.08em;
}

.hfttg-title {
	margin:0 0 5px;
	font-size:clamp(19px, 2.5vw, 28px);
	line-height:1.1;
	font-weight:700;
}

.hfttg-place {
	font-size:14px;
	line-height:1.45;
	font-weight:600;
}

.hfttg-support {
	margin-top:8px;
	font-size:11px;
	line-height:1.4;
	text-transform:uppercase;
	letter-spacing:.08em;
}

.hfttg-support span {
	opacity:.5;
}

.hfttg-action {
	min-width:142px;
	text-align:right;
}

.hfttg-ticket {
	display:inline-flex;
	min-width:138px;
	min-height:44px;
	align-items:center;
	justify-content:center;
	border:2px solid #000;
	padding:10px 17px;
	background:#000;
	color:#fff !important;
	text-decoration:none;
	font-size:11px;
	line-height:1;
	font-weight:700;
	letter-spacing:.12em;
	text-transform:uppercase;
	transition:background .2s ease, color .2s ease;
	box-sizing:border-box;
}

.hfttg-ticket:hover,
.hfttg-ticket:focus-visible {
	background:#fff;
	color:#000 !important;
}

.hfttg-ticket--soon {
	background:transparent;
	color:#000 !important;
	opacity:.45;
}

.hfttg-row--past {
	color:rgba(0,0,0,.48);
}

.hfttg-row--past .hfttg-date {
	color:#000;
	opacity:.32;
}

.hfttg-past-label {
	font-size:10px;
	font-weight:700;
	letter-spacing:.12em;
	text-transform:uppercase;
}

.hfttg-empty {
	margin:0;
	padding:45px 0;
	border-bottom:1px solid rgba(0,0,0,.24);
	font-size:14px;
}

@media(max-width:760px) {
	body.post-type-archive-gig main.hfttg-page {
		width:calc(100% - 40px);
		margin:105px auto 70px;
	}

	.hfttg-hero {
		margin-bottom:48px;
	}

	.hfttg-row {
		grid-template-columns:102px minmax(0,1fr);
		gap:18px;
		min-height:0;
		padding:22px 0;
	}

	.hfttg-date__day {
		font-size:45px;
	}

	.hfttg-action {
		grid-column:2;
		min-width:0;
		text-align:left;
	}

	.hfttg-ticket {
		min-width:125px;
		min-height:40px;
	}
}

@media(max-width:430px) {
	.hfttg-row {
		grid-template-columns:86px minmax(0,1fr);
		gap:13px;
	}

	.hfttg-date__day { font-size:38px; }
	.hfttg-date__month { font-size:11px; }
	.hfttg-date__year { font-size:9px; }
}
