/*
 * Santello's Untappd Menu — styled to match santellos.com's own menu pages
 * (/menu/ etc.): white page background, bold blue Montserrat section
 * headers with a dotted rule trailing off to the right, and photo item
 * cards with a blue price badge, white name, and blue description —
 * including the site's own dark food-pattern texture behind each item.
 */

.suum-wrap {
	--suum-accent: #05adff;
	--suum-header-color: #00ffff; /* C-100 M-0 Y-0 K-0 */
	--suum-title-color: #171717;
	--suum-card-bg: #2a2a2a;
	--suum-card-pattern: url( "https://santellos.com/wp-content/uploads/2025/10/Food-Pattern-2.webp" );
	--suum-text: #ffffff;
	--suum-text-muted: #c7cbd1;
	--suum-radius: 4px;
	--suum-font: 'Montserrat', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;

	font-family: var(--suum-font);
	box-sizing: border-box;
}

.suum-wrap * {
	box-sizing: border-box;
}

.suum-title {
	font-family: var(--suum-font);
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 2.5px;
	color: var(--suum-title-color);
	text-align: center;
	font-size: 30px;
	margin: 0 0 28px;
}

.suum-updated {
	text-align: center;
	color: #8a8f98;
	font-size: 12px;
	letter-spacing: 0.5px;
	margin: 28px 0 0;
}

.suum-section {
	margin-top: 40px;
}

.suum-section:first-of-type {
	margin-top: 8px;
}

/* Clean section header: bold uppercase text, with a dotted rule
   trailing off to the right — matches the site's own menu-page dividers. */
.suum-section-name {
	display: flex;
	align-items: center;
	gap: 16px;
	font-family: var(--suum-font);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 3px;
	color: var(--suum-header-color);
	font-size: 22px;
	margin: 0 0 22px;
}

.suum-section-name::after {
	content: '';
	flex: 1 1 auto;
	height: 0;
	border-top: 1px dotted var(--suum-header-color);
}

.suum-items {
	display: grid;
	gap: 24px;
}

.suum-layout-grid .suum-items {
	grid-template-columns: repeat( auto-fill, minmax( 250px, 1fr ) );
}

.suum-layout-list .suum-items {
	grid-template-columns: 1fr;
	max-width: 640px;
	margin: 0 auto;
}

.suum-item {
	display: flex;
	flex-direction: column;
	border-radius: var(--suum-radius);
	overflow: hidden;
}

.suum-item-image {
	height: 200px;
	background-color: var(--suum-card-bg);
	background-image: var(--suum-card-pattern);
	background-repeat: repeat;
	background-position: 50% 50%;
	background-size: cover;
	border-radius: var(--suum-radius) var(--suum-radius) 0 0;
}

/* Items with a real Untappd label image show it full-bleed; items
   without one keep the food-pattern texture as a graceful fallback
   instead of a blank box. */
.suum-item-image.has-image {
	background-size: cover;
	background-repeat: no-repeat;
}

.suum-item-panel {
	flex: 1 1 auto;
	background-color: var(--suum-card-bg);
	background-image: var(--suum-card-pattern);
	background-repeat: repeat;
	padding: 24px 20px;
	border-radius: 0 0 var(--suum-radius) var(--suum-radius);
	text-align: center;
}

.suum-price-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-bottom: 14px;
}

.suum-price-badge {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	background: var(--suum-accent);
	color: #ffffff;
	font-family: var(--suum-font);
	font-weight: 700;
	font-size: 18px;
	border-radius: var(--suum-radius);
	padding: 10px 18px;
	box-shadow: 0 6px 10px rgba( 0, 0, 0, 0.55 );
}

.suum-price-badge .suum-price-size {
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	opacity: 0.85;
}

/* Specificity note: santellos.com's Elementor "kit" sets its own color on
   bare h1/h4/h5 tags site-wide (.elementor-kit-8 h4 { color: ... }), which
   otherwise wins over a single-class selector like .suum-item-name and
   silently overrides our white item names. Scoping every text rule under
   .suum-wrap keeps this stylesheet immune to that and any future kit change. */
.suum-wrap .suum-item-name {
	font-family: var(--suum-font);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	color: var(--suum-text);
	font-size: 18px;
	line-height: 1.3;
	margin: 0;
}

.suum-wrap .suum-item-name .suum-item-abv {
	display: block;
	margin-top: 4px;
	font-family: var(--suum-font);
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0.3px;
	color: var(--suum-accent);
	font-size: 12px;
}

.suum-item-meta-line {
	margin-top: 6px;
	color: var(--suum-text-muted);
	font-size: 12px;
	letter-spacing: 0.3px;
}

.suum-item-desc {
	color: var(--suum-accent);
	font-weight: 700;
	font-size: 12px;
	line-height: 1.5;
	margin: 10px 0 0;
}

.suum-error-public {
	text-align: center;
	color: #6b7078;
	font-family: var(--suum-font);
	padding: 32px 24px;
}

.suum-error-public p {
	margin: 0;
	font-size: 15px;
}

@media (max-width: 480px) {
	.suum-title {
		font-size: 24px;
	}
	.suum-section-name {
		font-size: 18px;
	}
	.suum-layout-grid .suum-items {
		grid-template-columns: 1fr;
	}
}
