/* Homepage Training: this week's events (Caspio) beside stacked compact cards. */
.sea-home-assets.et_pb_module { display: none !important; }
.sea-train.et_pb_row {
	display: grid !important;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: var(--space-grid);
	align-items: start;
}
.sea-train.et_pb_row::after { display: none; }
.sea-train > .et_pb_column { width: auto !important; margin: 0 !important; float: none; }
.sea-train > .sea-train-cards { grid-column: 1; grid-row: 1; display: flex !important; flex-direction: column; gap: var(--space-grid); }
.sea-train > .sea-train-events { grid-column: 2; grid-row: 1; }
.sea-sec .sea-train > .et_pb_column > .et_pb_module { margin: 0 !important; }

/* Compact photo cards: photo on the left, text on the right. */
.sea-sec .sea-photo-card--compact .et_pb_blurb_content { flex-direction: row; }
.sea-sec .sea-photo-card--compact .et_pb_main_blurb_image { flex: 0 0 34%; width: 34%; }
.sea-sec .sea-photo-card--compact .et_pb_main_blurb_image :is(.et_pb_image_wrap, img) { height: 100%; }
.sea-sec .sea-photo-card--compact .et_pb_main_blurb_image img { aspect-ratio: auto; min-height: 168px; }
.sea-sec .sea-photo-card--compact .et_pb_blurb_container { padding: var(--sp-5) !important; }
.sea-sec .sea-photo-card--compact .et_pb_blurb_description { margin-top: var(--sp-2); }
.sea-sec .sea-photo-card--compact .et_pb_blurb_description .sea-card-cta { padding-top: var(--sp-3); }

/* Events panel. It is a size container, so the event rows respond to the
   panel's width rather than the screen's. */
.sea-train-events.et_pb_column {
	container-type: inline-size;
	padding: var(--space-card) !important;
	border: 1px solid var(--sea-stone);
	border-radius: var(--sea-radius);
	background: #fff;
}
.sea-train-events-head .et_pb_text_inner {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--sp-2) var(--sp-4);
}
.sea-sec .sea-train-events-head .et_pb_text_inner > * + * { margin-top: 0 !important; }
.sea-train-events-head h3 { color: var(--sea-navy); }
.sea-train-events-link a {
	font-size: var(--fs-ui);
	font-weight: var(--fw-semibold) !important;
	color: var(--sea-blue);
	text-decoration: none;
}
.sea-train-events-link a::after { content: " \2192"; }
.sea-train-events-link a:hover { text-decoration: underline; }

/* Week range as a subtitle: no arrows, no box. */
.sea-train-events a.cbResultSetCalendarNavigationLinks,
.sea-train-events .cbResultSetCalendarCaptionCell > span:not(.cbResultSetCalendarCaption) { display: none !important; }
.sea-train-events table.cbResultSetCalendarCaptionTable {
	width: 100%;
	margin: var(--sp-2) 0 0 !important;
	border: 0 !important;
	border-bottom: 2px solid var(--sea-navy) !important;
	background: none !important;
}
.sea-train-events td.cbResultSetCalendarCaptionCell {
	padding: 0 0 var(--sp-3) !important;
	border: 0 !important;
	background: none !important;
	text-align: left !important;
}
.sea-train-events .cbResultSetCalendarCaption {
	font-size: var(--fs-ui) !important;
	font-weight: var(--fw-medium) !important;
	color: var(--sea-ink) !important;
}
.sea-train-events .sea-cal-date--short { display: none; }

/* Narrow panel: Register moves under the event details. */
@container (max-width: 520px) {
	.sea-train-events .aetc-ev {
		grid-template-columns: 64px minmax(0, 1fr) !important; /* date tile width */
		grid-template-areas: "date body" ". btn" !important;
	}
	.sea-train-events .aetc-ev__btn {
		grid-area: btn !important;
		justify-self: start;
		margin-top: var(--sp-3) !important;
	}
}
@container (max-width: 400px) {
	.sea-train-events .sea-cal-date--full { display: none; }
	.sea-train-events .sea-cal-date--short { display: inline; }
}

/* Tablet: events on top, cards two across. Phone: one column. */
@media (max-width: 980px) {
	.sea-train.et_pb_row { grid-template-columns: minmax(0, 1fr); }
	.sea-train > .sea-train-events { grid-column: 1; grid-row: 1; }
	.sea-train > .sea-train-cards { grid-column: 1; grid-row: 2; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.sea-train > .sea-train-cards { grid-template-columns: minmax(0, 1fr); }
	.sea-train-events.et_pb_column { padding: var(--sp-4) !important; border-radius: var(--sea-radius-sm); }
	.sea-sec .sea-photo-card--compact .et_pb_main_blurb_image { flex-basis: 30%; width: 30%; }
	.sea-sec .sea-photo-card--compact .et_pb_main_blurb_image img { min-height: 140px; }
	.sea-sec .sea-photo-card--compact .et_pb_blurb_container { padding: var(--sp-4) !important; }
}
/* Hero photo on tablet and phone. The shared stacked-hero rule (background: #fff)
   strips the Divi background image below 981px, so set it again here (same file
   as the hero section's background). Dark behind the text, fading out at the
   bottom so the mountains show under the buttons. */
@media (max-width: 980px) {
	.sea-hero.sea-hero--photo.et_pb_section {
		background: var(--sea-navy) url("/wp-content/uploads/2026/10/smoky-mountains-hero.webp") 50% 100% / cover no-repeat !important;
		padding-bottom: var(--sp-10) !important;
	}
	.sea-hero.sea-hero--photo.et_pb_section::before {
		background: linear-gradient(180deg, rgba(21, 41, 78, .94) 0%, rgba(21, 41, 78, .86) 55%, rgba(21, 41, 78, .2) 100%) !important;
	}
}
