/* Featured Tournaments – matches the Women’s Poker Calendar homepage. */
.wpft {
	--wpft-gold: #b5964f;
	--wpft-gold-dark: #9c7f3d;
	display: grid;
	grid-template-columns: minmax(0, 2.2fr) minmax(240px, 1fr);
	gap: 36px;
	align-items: start;
}
.wpft.wpft-single { grid-template-columns: minmax(0, 1fr); margin-bottom: 48px; } /* space before whatever comes next, e.g. a slider */

/* Slider */
.wpft-slider { min-width: 0; padding-top: 32px; }
/* Slider on its own ([featured_tournaments show="slider"]): centred, similar width to the old one. */
.wpft-single .wpft-slider { width: 100%; max-width: 760px; margin: 0 auto; padding-top: 0; }
.wpft-track {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.wpft-track::-webkit-scrollbar { display: none; }
.wpft-slide { flex: 0 0 100%; scroll-snap-align: start; aspect-ratio: 16 / 9; overflow: hidden; }
.wpft-slide a { display: block; height: 100%; }
.wpft-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.wpft-dots { display: flex; justify-content: center; gap: 10px; margin-top: 14px; }
.wpft .wpft-dot {
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--wpft-gold);
	opacity: .55;
	cursor: pointer;
}
.wpft .wpft-dot.is-active { background: #000; opacity: 1; }
.wpft .wpft-dot:focus-visible { outline: 2px solid var(--wpft-gold); outline-offset: 3px; }

/* Highlights box */
.wpft-box {
	padding: 22px 20px 20px;
	border: 1px solid var(--wpft-gold);
	border-radius: 0;
	background: #fff;
	color: #000;
}
.wpft .wpft-title { margin: 0 0 6px; font-family: "Cormorant Garamond", serif; font-size: 30px; font-weight: 600; line-height: 1.15; color: #000; }
.wpft .wpft-sub { margin: 0 0 18px; font-family: "EB Garamond", serif; font-size: 15px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #000; }
.wpft .wpft-events { list-style: none; margin: 0 0 18px; padding: 0; }
.wpft .wpft-events[hidden], .wpft .wpft-event[hidden], .wpft .wpft-empty[hidden] { display: none; }
.wpft .wpft-event { display: flex; flex-direction: column; margin: 0 0 16px; padding: 0 0 0 10px; }
.wpft .wpft-event:last-child { margin-bottom: 0; }
.wpft .wpft-date { font-family: "EB Garamond", serif; font-size: 15px; color: var(--wpft-gold-dark); }
.wpft .wpft-name { font-family: "EB Garamond", serif; font-size: 20px; font-weight: 700; line-height: 1.25; }
.wpft .wpft-name a { color: inherit; text-decoration: none; }
.wpft .wpft-name a:hover { color: var(--wpft-gold-dark); }
.wpft .wpft-venue { font-family: "EB Garamond", serif; font-size: 15px; }
.wpft .wpft-empty { margin: 0 0 18px; font-family: "EB Garamond", serif; font-size: 17px; }
.wpft .wpft-btn {
	display: block;
	padding: 10px 14px;
	border: 1px solid var(--wpft-gold);
	border-radius: 2px;
	color: var(--wpft-gold-dark);
	font-family: "EB Garamond", serif;
	font-size: 14px;
	letter-spacing: .06em;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	transition: background-color .2s, color .2s;
}
.wpft .wpft-btn:hover, .wpft .wpft-btn:focus { background: var(--wpft-gold); color: #fff; }

/* When the box is wide (e.g. stacked above or below the slider), show the events side by side. */
.wpft-box { container-type: inline-size; }
@container (min-width: 620px) {
	.wpft .wpft-events { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 16px 28px; }
	.wpft .wpft-event { margin: 0; padding: 0 0 0 14px; border-left: 1px solid var(--wpft-gold); }
	.wpft .wpft-btn { display: inline-block; padding: 10px 28px; }
}

@media (max-width: 800px) {
	.wpft { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.wpft-slider { padding-top: 0; }
}
