/* =========================================================================
   SAU Calendar Design
   Presentation layer for The Events Calendar.

   Everything is scoped to .sau-cal (added to <body>) so these rules outrank
   TEC's own single-class selectors without !important.

   All sizes are in px on purpose: the SAU theme sets html { font-size: 10px },
   which makes TEC's rem-based scale render ~37% small.
   ========================================================================= */

.sau-cal {
	--sau-ground: #ffffff;
	--sau-field: #eef2f8;
	--sau-line: #d7dfeb;
	--sau-hair: #e6ebf3;
	--sau-ink: #0b1b33;
	--sau-meta: #5b6b85;
	--sau-navy: #003da5;
	--sau-navy-soft: #e7eefb;
	--sau-gold: #ffd200;
	--sau-gold-ink: #3d2f00;
	--sau-display: 'Montserrat', Helvetica, Arial, sans-serif;
	--sau-body: 'Nunito', Helvetica, Arial, sans-serif;
	--sau-rail: 90px;   /* date column width — matches the box TEC reserves */
	--sau-gap: 26px;    /* gap between the spine and the row body */
}

/* -------------------------------------------------------------------------
   Shared: tags
   ---------------------------------------------------------------------- */

body.sau-cal .sau-cal-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}

body.sau-cal .sau-cal-tag {
	font-family: var(--sau-display);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	line-height: 1;
	padding: 5px 10px;
	border-radius: 3px;
	background: var(--sau-navy-soft);
	color: var(--sau-navy);
	text-decoration: none;
	border: 0;
}

.sau-cal a.sau-cal-tag:hover,
.sau-cal a.sau-cal-tag:focus {
	background: var(--sau-navy);
	color: #fff;
	text-decoration: none;
}

body.sau-cal .sau-cal-tag--home {
	background: var(--sau-gold);
	color: var(--sau-gold-ink);
}

body.sau-cal .sau-cal-tag--away {
	background: transparent;
	color: var(--sau-meta);
	box-shadow: inset 0 0 0 1px var(--sau-line);
}

body.sau-cal :focus-visible {
	outline: 3px solid var(--sau-navy);
	outline-offset: 2px;
}

table.tribe-events-calendar-month {
    width: 95% !important;
    margin: 20px auto !important;
}

/* =========================================================================
   LIST VIEW
   ========================================================================= */

/* --- month separator becomes a rule -------------------------------------- */

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__month-separator {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 40px 0 6px;
	border: 0;
	padding: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__month-separator::after {
	content: "";
	flex: 1;
	height: 2px;
	background: var(--sau-ink);
	opacity: 0.14;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__month-separator-text {
	font-family: var(--sau-display);
	font-size: 15px;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--sau-ink);
	background: none;
	padding: 0;
	margin: 0;
}

/* --- the spine ------------------------------------------------------------ */

body.sau-cal .tribe-events-calendar-list{
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-row {
	position: relative;
	display: grid;
	grid-template-columns: var(--sau-rail) 1fr;
	gap: 0;
	margin: 0;
	padding: 0;
	border: 0;
	width: auto;
}

/* the vertical rule, drawn per row so it breaks cleanly at month separators */
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-row::before {
	content: "";
	position: absolute;
	left: var(--sau-rail);
	top: 0;
	bottom: 0;
	width: 1px;
	background: var(--sau-line);
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-row:last-child::before {
	bottom: auto;
	height: 34px;
}

/* --- date tick ------------------------------------------------------------ */

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-date-tag {
	grid-column: 1;
	box-sizing: border-box;
	/* TEC pins this column to a fixed 90px box; the spine needs it to track --sau-rail */
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	margin: 0;
	padding: 4px 22px 0 0;
	text-align: right;
	position: relative;
}

/* dot on the spine */
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-row::after {
	content: "";
	position: absolute;
	left: calc(var(--sau-rail) - 3px);
	top: 20px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--sau-line);
	z-index: 1;
}

body.sau-cal .tribe-events-calendar-list .sau-e--event.tribe-events-calendar-list__event-row::after {
	background: var(--sau-navy);
	width: 9px;
	height: 9px;
	left: calc(var(--sau-rail) - 4px);
	top: 26px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--same-day.tribe-events-calendar-list__event-row::after {
	background: var(--sau-hair);
}

/* today is the one gold mark on the page — a solid dot, nothing more.
   Declared last so it wins over the same-day dimming below. */
body.sau-cal .tribe-events-calendar-list .sau-e--today.tribe-events-calendar-list__event-row::after {
	background: var(--sau-gold);
	width: 9px;
	height: 9px;
	left: calc(var(--sau-rail) - 4px);
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-date-tag-datetime {
	display: block;
	background: none;
	box-shadow: none;
	border-radius: 0;
	width: auto;
	font-family: var(--sau-display);
	font-variant-numeric: tabular-nums;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-date-tag-weekday {
	display: block;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--sau-meta);
	background: none;
	padding: 0;
	line-height: 1.4;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-date-tag-daynum {
	display: block;
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.03em;
	color: var(--sau-meta);
	background: none;
	padding: 0;
	margin: 0;
}

/* attendable events get the large numeral */
body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event-date-tag-daynum {
	font-size: 44px;
	letter-spacing: -0.045em;
	color: var(--sau-ink);
	margin-top: 2px;
}

/* --- row body ------------------------------------------------------------- */

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-wrapper {
	grid-column: 2;
	width: auto;
	max-width: none;
	flex: none;
	padding: 0 0 0 var(--sau-gap);
	margin: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event {
	display: flex;
	flex-direction: row-reverse;
	align-items: stretch;
	gap: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-details {
	flex: 1 1 auto;
	width: auto;
	max-width: none;
	padding: 0;
	margin: 0;
	min-width: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-header {
	/* TEC assigns its own `order` to these children for the photo layouts,
	   which otherwise floats the category chips above the title. */
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0 8px;
	margin: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-title {
	order: 1;
	flex: 0 0 100%;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-datetime-wrapper {
	order: 2;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-venue {
	order: 3;
}

body.sau-cal .tribe-events-calendar-list .sau-cal-tags {
	order: 4;
	flex: 0 0 100%;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-title {
	font-family: var(--sau-display);
	letter-spacing: -0.02em;
	line-height: 1.2;
	margin: 0 0 8px;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-title-link {
	color: var(--sau-ink);
	text-decoration: none;
	border: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-title-link:hover,
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-title-link:focus {
	color: var(--sau-navy);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* time + venue read as one line of facts */
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-datetime-wrapper,
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-venue {
	display: inline;
	margin: 0;
	padding: 0;
	font-family: var(--sau-body);
	font-size: 15px;
	line-height: 1.5;
	color: var(--sau-meta);
	font-style: normal;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-datetime {
	font-weight: 700;
	color: var(--sau-ink);
	font-variant-numeric: tabular-nums;
	background: none;
	padding: 0;
	border-radius: 0;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-venue::before {
	content: "·";
	margin-right: 8px;
	color: var(--sau-line);
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-venue-title {
	font-weight: 400;
}

/* the a11y-hidden excerpt is stripped by Rocket's unused-CSS pass; hide it here */
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-description {
	display: none;
}

/* keep cost quiet */
body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-cost {
	font-size: 14px;
	color: var(--sau-meta);
	margin-top: 6px;
}

/* --- attendable events: card --------------------------------------------- */

body.sau-cal .tribe-events-calendar-list .sau-e--event {
	margin: 10px 0 20px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event {
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	overflow: hidden;
	background: var(--sau-ground);
	transition: border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event:hover {
	border-color: var(--sau-navy);
	transform: translateY(-1px);
	box-shadow: 0 1px 2px rgba(11, 27, 51, 0.06), 0 12px 28px -18px rgba(11, 27, 51, 0.35);
}

body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event-details {
	padding: 18px 20px 16px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event-title {
	font-size: 20px;
	font-weight: 800;
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-featured-image-wrapper {
	flex: 0 0 168px;
	max-width: 168px;
	width: 168px;
	margin: 0;
	padding: 0;
	background: var(--sau-field);
}

body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-featured-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
	margin: 0;
}

/* today gets a gold edge, the one accent on the page */
/* --- academic dates: hairline rows --------------------------------------- */

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-date-tag {
	padding-top: 9px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-date-tag-weekday {
	display: inline;
	font-size: 9px;
	margin-right: 6px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-date-tag-daynum {
	display: inline;
	font-size: 15px;
	font-weight: 700;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline.tribe-events-calendar-list__event-row::after {
	top: 18px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event {
	border: 0;
	border-bottom: 1px solid var(--sau-hair);
	border-radius: 0;
	background: none;
	padding: 8px 0;
	display: block;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-header {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: baseline;
	gap: 4px 14px;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-title {
	order: 0;
	flex: 0 1 auto;
	width: auto;
	min-width: 0;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-header::after {
	order: 9;
	flex: 0 0 auto;
	white-space: nowrap;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-title {
	font-family: var(--sau-body);
	font-size: 16px;
	font-weight: 600;
	margin: 0;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-title-link:hover,
body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-title-link:focus {
	color: var(--sau-navy);
}

/* an academic date's own date text is already the row's date tick */
body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-datetime-wrapper {
	display: none;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-featured-image-wrapper,
body.sau-cal .tribe-events-calendar-list .sau-e--deadline .sau-cal-tags {
	display: none;
}

body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-header::after {
	content: "Academic Calendar";
	margin-left: auto;
	padding-left: 16px;
	font-family: var(--sau-display);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--sau-meta);
}

/* repeated dates only need the tick printed once */
body.sau-cal .tribe-events-calendar-list .sau-e--same-day .tribe-events-calendar-list__event-date-tag-datetime {
	visibility: hidden;
}

/* =========================================================================
   SINGLE EVENT
   ========================================================================= */

body.sau-cal .sau-ev {
	font-family: var(--sau-body);
	color: var(--sau-ink);
	max-width: 1060px;
}

body.sau-cal .sau-ev__back {
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.02em;
	margin: 0 0 16px;
}

body.sau-cal .sau-ev__back a {
	color: var(--sau-navy);
	text-decoration: none;
}

body.sau-cal .sau-ev__back a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.sau-cal .sau-ev__post {
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	background: var(--sau-ground);
}

/* the hero is clipped on its own so the card can stay overflow-visible,
   otherwise the subscribe dropdown is cut off at the card edge */
body.sau-cal .sau-ev__hero {
	border-radius: 3px 3px 0 0;
	overflow: hidden;
}

/* --- hero ---------------------------------------------------------------- */

body.sau-cal .sau-ev__hero {
	display: grid;
	grid-template-columns: 112px 1fr;
	background: var(--sau-navy);
}

body.sau-cal .sau-ev__stamp {
	background: var(--sau-gold);
	color: var(--sau-gold-ink);
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	padding: 22px 8px;
	font-family: var(--sau-display);
	font-variant-numeric: tabular-nums;
}

body.sau-cal .sau-ev__stamp-mo {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

body.sau-cal .sau-ev__stamp-dy {
	font-size: 56px;
	font-weight: 900;
	line-height: 0.95;
	letter-spacing: -0.05em;
}

body.sau-cal .sau-ev__stamp-wd {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	opacity: 0.7;
}

body.sau-cal .sau-ev__headline {
	padding: 26px 30px 24px;
}

body.sau-cal .sau-ev__eyebrow {
	font-family: var(--sau-display);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.72);
	margin: 0;
}

.sau-cal h1.sau-ev__title {
	font-family: var(--sau-display);
	font-size: 38px;
	font-weight: 900;
	letter-spacing: -0.03em;
	line-height: 1.05;
	color: #fff;
	margin: 8px 0 0;
	text-wrap: balance;
}

/* --- meta strip ---------------------------------------------------------- */

body.sau-cal .sau-ev__meta {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	background: var(--sau-field);
	border-bottom: 1px solid var(--sau-hair);
	margin: 0;
}

body.sau-cal .sau-ev__meta > div {
	padding: 18px 22px;
	border-right: 1px solid var(--sau-hair);
}

body.sau-cal .sau-ev__meta > div:last-child {
	border-right: 0;
}

body.sau-cal .sau-ev__meta dt {
	font-family: var(--sau-display);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--sau-meta);
	margin: 0 0 5px;
}

body.sau-cal .sau-ev__meta dd {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--sau-ink);
}

body.sau-cal .sau-ev__meta dd a {
	color: var(--sau-navy);
	text-decoration: none;
}

body.sau-cal .sau-ev__meta dd a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.sau-cal .sau-ev__meta .sau-cal-tags {
	margin-top: 2px;
}

/* --- body ---------------------------------------------------------------- */

body.sau-cal .sau-ev__body {
	display: grid;
	grid-template-columns: 1fr 280px;
	gap: 36px;
	padding: 30px;
}

body.sau-cal .sau-ev__main img {
	max-width: 100%;
	height: auto;
	border-radius: 3px;
	margin-bottom: 20px;
}

body.sau-cal .sau-ev__content {
	font-size: 17px;
	line-height: 1.65;
	max-width: 68ch;
}

body.sau-cal .sau-ev__content p {
	margin: 0 0 16px;
}

body.sau-cal .sau-ev__box {
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	padding: 16px 18px;
	margin-bottom: 16px;
}

body.sau-cal .sau-ev__map {
	margin: -16px -18px 14px;
	overflow: hidden;
	border-radius: 3px 3px 0 0;
}

body.sau-cal .sau-ev__map iframe,
body.sau-cal .sau-ev__map > div {
	display: block;
	width: 100% !important;
	border: 0;
}

body.sau-cal .sau-ev__venue-name {
	font-family: var(--sau-display);
	font-size: 15px;
	font-weight: 800;
	margin: 0 0 4px;
}

body.sau-cal .sau-ev__address {
	font-style: normal;
	font-size: 15px;
	line-height: 1.5;
	color: var(--sau-meta);
	margin: 0;
}

body.sau-cal .sau-ev__directions {
	margin: 10px 0 0;
	font-size: 14px;
}

body.sau-cal .sau-ev__directions a,
body.sau-cal .sau-ev__website a {
	color: var(--sau-navy);
	font-weight: 700;
	text-decoration: none;
}

body.sau-cal .sau-ev__directions a:hover,
body.sau-cal .sau-ev__website a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.sau-cal .sau-ev__add-label {
	font-family: var(--sau-display);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--sau-meta);
	margin: 0 0 10px;
}

body.sau-cal .sau-ev__btn {
	display: block;
	text-align: center;
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.02em;
	padding: 11px 20px;
	border-radius: 30px;
	background: var(--sau-gold);
	color: var(--sau-ink);
	text-decoration: none;
	margin-bottom: 8px;
	border: 1px solid transparent;
}

body.sau-cal .sau-ev__btn:hover {
	background: #e6bd00;
	color: var(--sau-ink);
}

body.sau-cal .sau-ev__btn--ghost {
	background: transparent;
	color: var(--sau-navy);
	border-color: var(--sau-line);
}

body.sau-cal .sau-ev__btn--ghost:hover {
	background: var(--sau-navy-soft);
	color: var(--sau-navy);
}

/* --- prev / next --------------------------------------------------------- */

body.sau-cal .sau-ev__nav {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	padding: 18px 0 0;
	margin-top: 20px;
	border-top: 1px solid var(--sau-hair);
}

body.sau-cal .sau-ev__nav a {
	font-family: var(--sau-display);
	font-size: 14px;
	font-weight: 700;
	color: var(--sau-navy);
	text-decoration: none;
}

body.sau-cal .sau-ev__nav a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* academic dates have no venue, image, or ticketing — tighten the page */
body.sau-cal .sau-ev--deadline .sau-ev__body {
	grid-template-columns: 1fr;
}

/* =========================================================================
   RESPONSIVE
   ========================================================================= */

@media (max-width: 767px) {
	.sau-cal {
		/* the date column keeps its width; only the gap tightens */
		--sau-gap: 16px;
	}

	body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-header {
		flex-wrap: wrap;
	}

	body.sau-cal .tribe-events-calendar-list .sau-e--deadline .tribe-events-calendar-list__event-header::after {
		display: none;
	}

	body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event-date-tag-daynum {
		font-size: 34px;
	}

	body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event {
		flex-direction: column-reverse;
	}

	body.sau-cal .tribe-events-calendar-list .tribe-events-calendar-list__event-featured-image-wrapper {
		flex: 0 0 auto;
		width: 100%;
		max-width: none;
		height: 120px;
	}

	body.sau-cal .sau-ev__hero {
		grid-template-columns: 1fr;
	}

	body.sau-cal .sau-ev__stamp {
		flex-direction: row;
		align-items: baseline;
		justify-content: flex-start;
		gap: 12px;
		padding: 12px 20px;
	}

	body.sau-cal .sau-ev__stamp-dy {
		font-size: 34px;
	}

	body.sau-cal .sau-ev__headline {
		padding: 20px;
	}

	.sau-cal h1.sau-ev__title {
		font-size: 27px;
	}

	body.sau-cal .sau-ev__meta > div {
		border-right: 0;
		border-bottom: 1px solid var(--sau-hair);
	}

	body.sau-cal .sau-ev__body {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event {
		transition: none;
	}

	body.sau-cal .tribe-events-calendar-list .sau-e--event .tribe-events-calendar-list__event:hover {
		transform: none;
	}
}

/* =========================================================================
   TEC CHROME — events bar, top bar, filter sidebar, pagination

   Stock TEC ships this furniture at a 30px pill radius sized for a 16px root.
   On the SAU theme's 10px root it reads as oversized bubbles, so it is rebuilt
   here as square utility furniture; only actual buttons stay pills.
   ========================================================================= */

/* --- events bar: search, filter toggle, view selector --------------------- */

body.sau-cal .tribe-events-c-events-bar,
body.sau-cal .tribe-events-header__events-bar {
	background: var(--sau-ground);
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	padding: 0;
	margin: 0 0 10px;
	min-height: 0;
}

body.sau-cal .tribe-events-c-events-bar__search-container {
	padding: 0;
}

body.sau-cal .tribe-events-c-search__input-control {
	padding: 0;
}

body.sau-cal .tribe-events-c-search__input,
body.sau-cal .tribe-common-form-control-text__input {
	font-family: var(--sau-body);
	font-size: 16px;
	color: var(--sau-ink);
	border: 0;
	background: transparent;
	padding: 14px 8px 14px 40px;
}

body.sau-cal .tribe-common-form-control-text__input::placeholder {
	color: var(--sau-meta);
}

body.sau-cal .tribe-events-c-search__button {
	background: var(--sau-navy);
	color: #fff;
	border: 0;
	border-radius: 30px;
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.02em;
	padding: 11px 22px;
	min-height: 0;
}

body.sau-cal .tribe-events-c-search__button:hover {
	background: #002d79;
}

body.sau-cal .tribe-events-c-events-bar__filter-button-container,
body.sau-cal .tribe-events-c-events-bar__views {
	border-left: 1px solid var(--sau-hair);
}

body.sau-cal .tribe-events-c-events-bar__filter-button,
body.sau-cal .tribe-events-c-view-selector__button {
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.02em;
	color: var(--sau-navy);
	padding: 0 18px;
}

body.sau-cal .tribe-events-c-view-selector__list-item-link {
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 700;
	color: var(--sau-navy);
}

/* --- top bar: the date range is the headline ------------------------------ */

body.sau-cal .tribe-events-c-top-bar {
	display: flex;
	align-items: center;
	gap: 12px;
	border-bottom: 1px solid var(--sau-hair);
	padding: 4px 0 16px;
	margin: 0 0 8px;
}

body.sau-cal .tribe-events-c-top-bar__nav-list {
	display: flex;
	gap: 6px;
	margin: 0;
	padding: 0;
}

body.sau-cal .tribe-events-c-top-bar__nav-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	background: var(--sau-ground);
	color: var(--sau-navy);
}

body.sau-cal .tribe-events-c-top-bar__nav-link:hover {
	border-color: var(--sau-navy);
	background: var(--sau-navy-soft);
}

body.sau-cal .tribe-events-c-top-bar__today-button {
	font-family: var(--sau-display);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--sau-navy);
	background: var(--sau-ground);
	border: 1px solid var(--sau-line);
	border-radius: 30px;
	padding: 9px 16px;
}

body.sau-cal .tribe-events-c-top-bar__today-button:hover {
	border-color: var(--sau-navy);
	background: var(--sau-navy-soft);
}

body.sau-cal .tribe-events-c-top-bar__datepicker-button {
	font-family: var(--sau-display);
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--sau-ink);
	padding: 0;
}

body.sau-cal .tribe-events-c-top-bar__datepicker-button:hover {
	color: var(--sau-navy);
}

body.sau-cal .tribe-events-c-top-bar__actions {
	margin-left: auto;
}

body.sau-cal .tribe-events-c-top-bar__hide-recurring,
body.sau-cal .tribe-events-c-top-bar__hide-recurring-label {
	font-family: var(--sau-body);
	font-size: 14px;
	color: var(--sau-meta);
}

/* --- filter sidebar ------------------------------------------------------- */

body.sau-cal .tribe-filter-bar--vertical,
body.sau-cal .tribe-filter-bar__form {
	background: var(--sau-ground);
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	padding: 0;
	overflow: hidden;
}

body.sau-cal h2.tribe-filter-bar__form-heading {
	font-family: var(--sau-display);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--sau-meta);
	text-align: left;
	background: var(--sau-field);
	border-bottom: 1px solid var(--sau-hair);
	margin: 0;
	padding: 14px 18px;
}

body.sau-cal .tribe-filter-bar-c-filter {
	border-bottom: 1px solid var(--sau-hair);
	margin: 0;
	padding: 0;
}

body.sau-cal .tribe-filter-bar-c-filter:last-child {
	border-bottom: 0;
}

body.sau-cal .tribe-filter-bar-c-filter__toggle {
	font-family: var(--sau-display);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--sau-ink);
	background: none;
	border: 0;
	width: 100%;
	padding: 15px 18px;
}

body.sau-cal .tribe-filter-bar-c-filter__toggle:hover {
	background: var(--sau-field);
	color: var(--sau-navy);
}

body.sau-cal .tribe-filter-bar-c-filter__toggle-icon {
	color: var(--sau-navy);
}

body.sau-cal .tribe-filter-bar-c-filter__toggle-selections {
	font-family: var(--sau-body);
	font-size: 13px;
	font-weight: 600;
	color: var(--sau-navy);
}

body.sau-cal .tribe-filter-bar-c-filter__container {
	padding: 0 18px 16px;
}

body.sau-cal .tribe-filter-bar-c-filter__filters-legend {
	font-family: var(--sau-display);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--sau-meta);
}

body.sau-cal .tribe-common-form-control-checkbox__label {
	font-family: var(--sau-body);
	font-size: 15px;
	color: var(--sau-ink);
}

body.sau-cal .tribe-common-form-control-checkbox__input:checked {
	background-color: var(--sau-navy);
	border-color: var(--sau-navy);
}

/* --- pagination and subscribe --------------------------------------------- */

body.sau-cal .tribe-events-c-nav {
	border-top: 1px solid var(--sau-hair);
	margin-top: 28px;
	padding-top: 18px;
}

body.sau-cal .tribe-events-c-nav__prev,
body.sau-cal .tribe-events-c-nav__next,
body.sau-cal .tribe-events-c-nav__today {
	font-family: var(--sau-display);
	font-size: 14px;
	font-weight: 700;
	color: var(--sau-navy);
}

body.sau-cal .tribe-events-c-subscribe-dropdown__container {
	position: relative;
	z-index: 5;
}

body.sau-cal .tribe-events-c-subscribe-dropdown__button,
body.sau-cal .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button {
	background: var(--sau-ground);
	border: 1px solid var(--sau-line);
	border-radius: 30px;
	padding: 10px 18px;
	color: var(--sau-navy);
}

body.sau-cal .tribe-events-c-subscribe-dropdown__button:hover {
	border-color: var(--sau-navy);
	background: var(--sau-navy-soft);
}

/* TEC draws its own inset outline on the active button; use one focus ring */
body.sau-cal .tribe-events-c-subscribe-dropdown__button-text:focus,
body.sau-cal .tribe-events-c-subscribe-dropdown__button-text:focus-visible,
body.sau-cal .tribe-events-c-subscribe-dropdown__button:focus {
	outline: none;
}

body.sau-cal .tribe-events-c-subscribe-dropdown__button:focus-within {
	outline: 3px solid var(--sau-navy);
	outline-offset: 2px;
}

body.sau-cal .tribe-events-c-subscribe-dropdown__content {
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	box-shadow: 0 12px 28px -12px rgba(11, 27, 51, 0.35);
	z-index: 10;
}

body.sau-cal .tribe-events-c-subscribe-dropdown__list-item-link {
	font-family: var(--sau-body);
	font-size: 15px;
	color: var(--sau-ink);
}

body.sau-cal .tribe-events-c-subscribe-dropdown__button-text {
	font-family: var(--sau-display);
	font-size: 14px;
	font-weight: 700;
	color: var(--sau-navy);
}

body.sau-cal .sau-ev__main .tribe-events-c-subscribe-dropdown__container {
	margin-top: 24px;
}

@media (max-width: 767px) {
	body.sau-cal .tribe-events-c-top-bar {
		flex-wrap: wrap;
	}

	body.sau-cal .tribe-events-c-top-bar__datepicker-button {
		font-size: 18px;
	}

	body.sau-cal .tribe-events-c-top-bar__actions {
		margin-left: 0;
		flex: 0 0 100%;
	}
}

/* =========================================================================
   THE CARD

   TEC renders the intro, the events bar, the filter bar, the list, the nav
   and the subscribe link as flat siblings of one <section>. Making that
   section a flex column turns the whole view into a single bordered card
   with a navy masthead, which is what the approved design called for.
   ========================================================================= */

body.sau-cal .tribe-events-l-container {
	display: flex;
	flex-direction: column;
	background: var(--sau-ground);
	border: 1px solid var(--sau-line);
	border-radius: 15px;
	padding: 0;
	min-height: 0;
	overflow: visible;
	max-width: 1100px;
}

/* the sections that run full width of the card */
body.sau-cal .tribe-events-before-html,
body.sau-cal .tribe-events-header,
body.sau-cal .tribe-filter-bar {
	margin: 0;
	width: 100%;
}

/* --- masthead ------------------------------------------------------------- */

body.sau-cal .sau-cal-intro {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: end;
	gap: 8px 24px;
	background: var(--sau-navy);
	padding: 26px 28px 22px;
	margin: 0;
	border-radius: 3px 3px 0 0;
}

body.sau-cal .sau-cal-intro__eyebrow {
display: none;
}

body.sau-cal .sau-cal-intro__title {
	grid-column: 1;
	grid-row: 2;
	font-family: var(--sau-display);
	font-size: 34px;
	font-weight: 900;
	letter-spacing: -0.025em;
	line-height: 1.05;
	color: #fff;
	text-align: left;
	margin: 4px 0 0;
}

body.sau-cal .sau-cal-intro__actions {
	grid-column: 2;
	grid-row: 1 / span 2;
	display: flex;
	align-items: center;
	gap: 10px;
}

body.sau-cal .sau-cal-intro__btn {
	display: inline-block;
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.2;
	white-space: nowrap;
	padding: 12px 22px;
	border-radius: 30px;
	border: 1px solid transparent;
	text-decoration: none;
}

body.sau-cal .sau-cal-intro__btn--primary {
	background: var(--sau-gold);
	color: var(--sau-ink);
}

body.sau-cal .sau-cal-intro__btn--primary:hover {
	background: #e6bd00;
	color: var(--sau-ink);
}

body.sau-cal .sau-cal-intro__btn--ghost {
	background: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.5);
}

body.sau-cal .sau-cal-intro__btn--ghost:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

/* the submission rules matter to a handful of staff, not to every visitor */
body.sau-cal .sau-cal-intro__note {
	grid-column: 1 / -1;
	margin: 14px 0 0;
	color: rgba(255, 255, 255, 0.82);
}

body.sau-cal .sau-cal-intro__note > summary {
	font-family: var(--sau-display);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #fad200;
	cursor: pointer;
	list-style: none;
}

body.sau-cal .sau-cal-intro__note > summary::-webkit-details-marker {
	display: none;
}

body.sau-cal .sau-cal-intro__note > summary::before {
	content: "+ ";
}

body.sau-cal .sau-cal-intro__note[open] > summary::before {
	content: "– ";
}

body.sau-cal .sau-cal-intro__note > summary:hover {
	color: var(--sau-gold);
}

body.sau-cal .sau-cal-intro__note p {
	font-family: var(--sau-body);
	font-size: 14px;
	line-height: 1.6;
	max-width: 78ch;
	margin: 10px 0 0;
}

body.sau-cal .sau-cal-intro__note a {
	color: var(--sau-gold);
	font-weight: 700;
	text-decoration: none;
}

body.sau-cal .sau-cal-intro__note a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* --- the bar under the masthead ------------------------------------------- */

body.sau-cal .tribe-events-header {
	background: var(--sau-field);
	border-bottom: 1px solid var(--sau-hair);
	padding: 12px 28px;
	margin: 0;
}

/* inside the card the events bar is a plain row, not its own boxed control */
body.sau-cal .tribe-events-header .tribe-events-c-events-bar,
body.sau-cal .tribe-events-header__events-bar {
	background: var(--sau-ground);
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	margin: 0;
}

body.sau-cal .tribe-events-c-top-bar {
	border-bottom: 0;
	padding: 12px 0 0;
	margin: 0;
}

/* --- filter bar, now horizontal ------------------------------------------- */

body.sau-cal .tribe-filter-bar--horizontal,
body.sau-cal .tribe-filter-bar {
	background: var(--sau-field);
	border: 0;
	border-bottom: 1px solid var(--sau-hair);
	border-radius: 0;
	padding: 0 28px 14px;
	margin: 0;
}

body.sau-cal .tribe-filter-bar__form {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}

body.sau-cal .tribe-filter-bar--horizontal .tribe-filter-bar-c-filter {
	border-bottom: 0;
	border-right: 1px solid var(--sau-hair);
}

body.sau-cal .tribe-filter-bar--horizontal .tribe-filter-bar-c-filter:last-child {
	border-right: 0;
}

/* --- list and footer ------------------------------------------------------ */

body.sau-cal .tribe-events-calendar-list {
	padding: 0 28px 8px;
	margin: 0;
}

body.sau-cal .tribe-events-calendar-list-nav,
body.sau-cal .tribe-events-l-container > .tribe-events-c-subscribe-dropdown__container {
	background: var(--sau-field);
	border-top: 1px solid var(--sau-hair);
	padding: 16px 28px;
	margin: 0;
}

body.sau-cal .tribe-events-calendar-list-nav .tribe-events-c-nav {
	border-top: 0;
	margin: 0;
	padding: 0;
}

body.sau-cal .tribe-events-l-container > .tribe-events-c-subscribe-dropdown__container {
	border-radius: 0 0 3px 3px;
}

body.sau-cal .tribe-events-after-html:empty {
	display: none;
}

@media (max-width: 767px) {
	body.sau-cal .sau-cal-intro {
		grid-template-columns: 1fr;
		padding: 20px 18px;
	}

	body.sau-cal .sau-cal-intro__title {
		font-size: 26px;
	}

	body.sau-cal .sau-cal-intro__actions {
		grid-column: 1;
		grid-row: auto;
		flex-wrap: wrap;
		margin-top: 14px;
	}

	body.sau-cal .tribe-events-header,
	body.sau-cal .tribe-filter-bar {
		padding-left: 16px;
		padding-right: 16px;
	}

	body.sau-cal .tribe-events-calendar-list {
		padding-left: 16px;
		padding-right: 16px;
	}

	body.sau-cal .tribe-events-calendar-list-nav,
	body.sau-cal .tribe-events-l-container > .tribe-events-c-subscribe-dropdown__container {
		padding-left: 16px;
		padding-right: 16px;
	}
}

/* --- category chips ------------------------------------------------------- */

body.sau-cal .sau-cal-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 14px 0 0;
	border-top: 1px solid var(--sau-hair);
	margin-top: 12px;
}

body.sau-cal .sau-cal-chip {
	font-family: var(--sau-display);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1;
	padding: 9px 15px;
	border-radius: 30px;
	border: 1px solid var(--sau-line);
	background: var(--sau-ground);
	color: var(--sau-meta);
	text-decoration: none;
	white-space: nowrap;
}

body.sau-cal .sau-cal-chip:hover {
	border-color: var(--sau-navy);
	color: var(--sau-navy);
}

body.sau-cal .sau-cal-chip--on {
	background: var(--sau-navy);
	border-color: var(--sau-navy);
	color: #fff;
}

body.sau-cal .sau-cal-chip--on:hover {
	color: #fff;
}

/* --- single event corrections --------------------------------------------
   Declared last on purpose: both of these have to beat the card-shell rules
   above, which share their specificity.
   ---------------------------------------------------------------------- */

/* a single event leads with its own hero — the submit panel is list furniture */
body.single-tribe_events.sau-cal .tribe-events-before-html,
body.single-tribe_events.sau-cal .sau-cal-intro {
	display: none;
}

/* the theme clips this container, which cut off the Add to calendar dropdown */
body.sau-cal .sau-ev__post,
body.sau-cal .tribe-events-single {
	overflow: visible;
}

@media (max-width: 767px) {
	/* seven chips wrap to four rows on a phone; scroll them in one instead */
	body.sau-cal .sau-cal-chips {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding-bottom: 2px;
	}

	body.sau-cal .sau-cal-chips::-webkit-scrollbar {
		display: none;
	}
}

/* =========================================================================
   BREAKPOINT CORRECTIONS

   TEC scopes container padding per breakpoint (`.tribe-common--breakpoint-full
   .tribe-events-l-container` sets 96px 42px 160px), which outruns the card
   shell above once the viewport passes ~1440px. These few layout-critical
   declarations are forced rather than fought selector by selector.
   ========================================================================= */

body.sau-cal .tribe-events-l-container {
	padding: 0 !important;
}

/* the control band: one tinted block, no rules inside it */
body.sau-cal .tribe-events-header {
	background: var(--sau-field) !important;
	padding: 14px 28px 16px !important;
	border-bottom: 0 !important;
	margin: 0 !important;
}

body.sau-cal .sau-cal-chips {
	border-top: 0;
	margin-top: 4px;
	padding-top: 0;
}

body.sau-cal .tribe-events-calendar-list {
    padding: 8px 28px !important;
    margin: 0 !important;
    background: #eef2f8;
}

body.sau-cal .tribe-events-calendar-list-nav,
body.sau-cal .tribe-events-l-container > .tribe-events-c-subscribe-dropdown__container {
	padding: 16px 28px !important;
	margin: 0 !important;
}

/* =========================================================================
   FOCUS

   TEC and the theme both draw a heavy near-black box on focused fields and
   buttons. Replace it with one navy ring used everywhere in the calendar.
   ========================================================================= */

body.sau-cal .tribe-common-form-control-text__input:focus,
body.sau-cal .tribe-events-c-search__input:focus,
body.sau-cal input:focus,
body.sau-cal select:focus,
body.sau-cal textarea:focus,
body.sau-cal button:focus,
body.sau-cal .tribe-common button:focus,
body.sau-cal .tribe-common input:focus {
	outline: none;
	border-color: var(--sau-navy);
	box-shadow: none;
}

body.sau-cal .tribe-common-form-control-text__input:focus-visible,
body.sau-cal .tribe-events-c-search__input:focus-visible,
body.sau-cal input:focus-visible,
body.sau-cal select:focus-visible,
body.sau-cal textarea:focus-visible,
body.sau-cal button:focus-visible,
body.sau-cal a:focus-visible {
	outline: 3px solid var(--sau-navy);
	outline-offset: 2px;
}

/* the search field sits inside the bordered bar; it should not draw its own */
body.sau-cal .tribe-events-c-search__input-control--keyword,
body.sau-cal .tribe-common-form-control-text {
	border: 0;
	box-shadow: none;
}

@media (max-width: 767px) {
	body.sau-cal .tribe-events-header,
	body.sau-cal .tribe-events-calendar-list,
	body.sau-cal .tribe-events-calendar-list-nav,
	body.sau-cal .tribe-events-l-container > .tribe-events-c-subscribe-dropdown__container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

/* --- single event: calendar header ---------------------------------------
   A quieter version of the list masthead, so an event still reads as part of
   the calendar without repeating its full header.
   ---------------------------------------------------------------------- */

body.sau-cal .sau-ev__masthead {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 20px;
	background: #00358f;
	border-radius: 4px 4px 0 0;
	padding: 14px 24px;
	margin: 0;
}

body.sau-cal .sau-ev__masthead-eyebrow {
	font-family: var(--sau-display);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.7);
	margin: 0;
}

body.sau-cal .sau-ev__masthead-title {
	display: inline-block;
	font-family: var(--sau-display);
	font-size: 20px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.2;
	color: #fad200 !important;
	text-decoration: none;
	margin-top: 2px;
}

body.sau-cal .sau-ev__masthead-title:hover {
	color: var(--sau-gold);
}

body.sau-cal .sau-ev__masthead .sau-ev__back {
	margin: 0;
}

body.sau-cal .sau-ev__masthead .sau-ev__back a {
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.02em;
	color: #fff !important;
	text-decoration: none;
}

body.sau-cal .sau-ev__masthead .sau-ev__back a:hover {
	color: var(--sau-gold);
	text-decoration: none;
}

/* the event card tucks under the header as one object */
body.sau-cal .sau-ev__post {
	border-radius: 0 0 4px 4px;
	border-top: 0;
}

body.sau-cal .sau-ev__hero {
	border-radius: 0;
}

/* =========================================================================
   FOCUS RING

   The theme sets a global `outline: 3px solid #333`, which reads as a heavy
   black box on the view selector and search field. Keep the ring — it is a
   WCAG requirement — but recolour it and give it an offset so it reads as a
   ring rather than a border.
   ========================================================================= */

body.sau-cal *:focus,
body.sau-cal *:focus-visible {
	outline-color: var(--sau-navy) !important;
	outline-offset: 2px;
	border-radius: 3px;
}

body.sau-cal .tribe-events-c-view-selector__button:focus,
body.sau-cal .tribe-events-c-view-selector__button:focus-visible {
	outline: 3px solid var(--sau-navy) !important;
	outline-offset: 2px;
}

/* the open state should not look focused at all */
body.sau-cal .tribe-events-c-view-selector:focus,
body.sau-cal .tribe-events-c-view-selector__list:focus,
body.sau-cal .tribe-events-c-view-selector__content:focus {
	outline: none !important;
}

/* --- view selector dropdown ----------------------------------------------- */

body.sau-cal .tribe-events-c-view-selector__content {
	border: 1px solid var(--sau-line);
	border-radius: 4px;
	box-shadow: 0 12px 28px -12px rgba(11, 27, 51, 0.35);
	overflow: hidden;
	padding: 4px 0;
}

body.sau-cal .tribe-events-c-view-selector__list-item {
	margin: 0;
}

body.sau-cal .tribe-events-c-view-selector__list-item-link {
	display: block;
	font-family: var(--sau-display);
	font-size: 13px;
	font-weight: 700;
	color: var(--sau-ink);
	padding: 9px 16px;
	text-decoration: none;
}

/***body.sau-cal .tribe-events-c-view-selector__list-item-link:hover {
	 background: var(--sau-field);
	color: var(--sau-navy);
}

body.sau-cal .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link {
	color: var(--sau-navy);
} ***/

body.sau-cal .sau-ev__masthead :focus-visible {
	outline-color: var(--sau-gold) !important;
}

/* an event with no map, address, or website gets the full width */
body.sau-cal .sau-ev__body--solo {
	grid-template-columns: 1fr;
}
