/*
Theme Name: Kings
Theme URI: https://www.chrisdaniels.com
Author: Cedar Daniels
Description: Block theme for Chris Daniels & The Kings with Freddi Gowdy. Dark, bold, horn-band energy. Built to be edited in the Site Editor or by Claude.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
License: GPLv2 or later
Text Domain: kings
*/

/* ---------- Base ---------- */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--wp--preset--color--brass); color: var(--wp--preset--color--ink); }
img { height: auto; }
a { text-underline-offset: .18em; text-decoration-thickness: 1px; }

/* ---------- Header ---------- */
.kings-header {
	position: sticky; top: 0; z-index: 50;
	backdrop-filter: saturate(140%) blur(10px);
	-webkit-backdrop-filter: saturate(140%) blur(10px);
	background: color-mix(in srgb, var(--wp--preset--color--ink) 88%, transparent) !important;
	border-bottom: 1px solid rgba(255,255,255,.06);
}
.admin-bar .kings-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .kings-header { top: 46px; } }
.kings-header .wp-block-site-logo img { max-height: 64px; width: auto; }
.kings-header .wp-block-navigation a { transition: color .15s ease; }
.kings-header .wp-block-navigation a:hover,
.kings-header .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--brass); }
.kings-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--ink) !important; }

/* ---------- Hero ---------- */
.kings-hero { position: relative; }
.kings-hero .wp-block-cover__image-background { object-position: 30% 25%; }
.kings-hero::after {
	content: ""; position: absolute; inset: auto 0 0 0; height: 40%;
	background: linear-gradient(to bottom, transparent, var(--wp--preset--color--ink));
	pointer-events: none; z-index: 1;
}
.kings-hero .wp-block-cover__inner-container { position: relative; z-index: 3 !important; }
.kings-hero .wp-block-cover__background { z-index: 1; }
.kings-eyebrow {
	letter-spacing: .28em; text-transform: uppercase;
	font-family: var(--wp--preset--font-family--condensed);
	font-weight: 600; color: var(--wp--preset--color--brass);
}
.kings-hero h1 { text-shadow: 0 2px 30px rgba(0,0,0,.45); }
.kings-script { font-family: var(--wp--preset--font-family--marker); color: var(--wp--preset--color--brass); }

/* ---------- Buttons ---------- */
.wp-block-button__link { transition: transform .12s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease; }
.wp-block-button__link:hover { transform: translateY(-1px); }
.wp-block-button.is-style-outline > .wp-block-button__link {
	border-width: 2px; background: transparent;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--cream); color: var(--wp--preset--color--ink); border-color: var(--wp--preset--color--cream);
}

/* ---------- Section headings with rule ---------- */
.kings-kicker { display: flex; align-items: center; gap: 1rem; }
.kings-kicker::after { content: ""; flex: 1; height: 2px; background: linear-gradient(90deg, var(--wp--preset--color--brass), transparent); }

/* ---------- Shows list ---------- */
.kings-shows { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.12); }
.kings-show {
	display: grid; grid-template-columns: 88px 1fr auto; gap: 1.5rem; align-items: center;
	padding: 1.25rem 0; border-bottom: 1px solid rgba(255,255,255,.12);
	transition: background-color .15s ease;
}
.kings-show:hover { background: rgba(255,255,255,.03); }
.kings-show__date {
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	width: 88px; height: 88px; border: 2px solid var(--wp--preset--color--brass); border-radius: 4px;
	font-family: var(--wp--preset--font-family--condensed); text-transform: uppercase; line-height: 1;
}
.kings-show__month { font-size: .95rem; letter-spacing: .14em; color: var(--wp--preset--color--brass); font-weight: 600; }
.kings-show__day { font-size: 2.6rem; font-weight: 700; color: var(--wp--preset--color--cream); margin-top: .1rem; }
.kings-show__dow { font-size: .75rem; letter-spacing: .12em; opacity: .7; margin-top: .15rem; }
.kings-show__title {
	margin: 0; font-family: var(--wp--preset--font-family--condensed); font-weight: 700;
	font-size: clamp(1.25rem, 1.05rem + .8vw, 1.65rem); line-height: 1.15; text-transform: uppercase; letter-spacing: .02em;
}
.kings-show__title a { color: var(--wp--preset--color--cream); text-decoration: none; }
.kings-show__title a:hover { color: var(--wp--preset--color--brass); }
.kings-show__meta { margin: .35rem 0 0; font-size: .95rem; opacity: .75; }
.kings-show__cta a {
	display: inline-block; padding: .7rem 1.2rem; border: 2px solid var(--wp--preset--color--cream);
	color: var(--wp--preset--color--cream); text-decoration: none; text-transform: uppercase;
	font-family: var(--wp--preset--font-family--condensed); font-weight: 700; letter-spacing: .12em; font-size: .9rem;
	transition: all .15s ease; white-space: nowrap;
}
.kings-show__cta a:hover { background: var(--wp--preset--color--red); border-color: var(--wp--preset--color--red); }
.kings-show__cta a.is-tickets { background: var(--wp--preset--color--red); border-color: var(--wp--preset--color--red); }
.kings-show__cta a.is-tickets:hover { background: var(--wp--preset--color--cream); color: var(--wp--preset--color--ink); border-color: var(--wp--preset--color--cream); }
.kings-shows-empty { padding: 2rem 0; font-size: 1.15rem; opacity: .85; }
@media (max-width: 640px) {
	.kings-show { grid-template-columns: 64px 1fr; gap: 1rem; }
	.kings-show__date { width: 64px; height: 64px; }
	.kings-show__day { font-size: 1.9rem; }
	.kings-show__cta { grid-column: 2; }
}

/* Past shows archive */
.kings-past-year { margin-top: 3rem; }
.kings-past-year h3 { font-size: 2.5rem; color: var(--wp--preset--color--brass); margin-bottom: .5rem; }
.kings-past { list-style: none; padding: 0; margin: 0; columns: 2 320px; column-gap: 3rem; }
.kings-past li { break-inside: avoid; padding: .55rem 0; border-bottom: 1px solid rgba(255,255,255,.08); }
.kings-past time { font-family: var(--wp--preset--font-family--condensed); color: var(--wp--preset--color--brass); letter-spacing: .08em; text-transform: uppercase; margin-right: .6rem; font-weight: 600; }
.kings-past a { color: inherit; text-decoration: none; }
.kings-past a:hover { color: var(--wp--preset--color--brass); }

/* ---------- Album cards ---------- */
.kings-album img { box-shadow: 0 30px 60px -20px rgba(0,0,0,.6); border-radius: 4px; }
.kings-card { transition: transform .2s ease; }
.kings-card:hover { transform: translateY(-4px); }
.kings-card img { aspect-ratio: 1; object-fit: cover; border-radius: 4px; }
.kings-price { font-family: var(--wp--preset--font-family--condensed); color: var(--wp--preset--color--brass); font-weight: 700; letter-spacing: .06em; font-size: 1.2rem; }

/* ---------- Video ---------- */
.kings-video iframe { border-radius: 6px; box-shadow: 0 30px 80px -30px rgba(0,0,0,.8); }

/* ---------- Gallery ---------- */
.kings-gallery.wp-block-gallery img { aspect-ratio: 1; object-fit: cover; filter: grayscale(15%); transition: filter .2s ease, transform .3s ease; }
.kings-gallery.wp-block-gallery figure:hover img { filter: none; transform: scale(1.03); }
.kings-gallery.wp-block-gallery figure { overflow: hidden; }

/* ---------- Booking band ---------- */
.kings-booking { background-image: radial-gradient(ellipse at top left, rgba(224,167,58,.18), transparent 60%); }

/* ---------- Footer ---------- */
.kings-footer a { color: inherit; text-decoration: none; }
.kings-footer a:hover { color: var(--wp--preset--color--brass); }
.kings-footer .wp-block-social-links .wp-social-link { background: transparent !important; color: var(--wp--preset--color--cream) !important; border: 1px solid rgba(255,255,255,.25); }
.kings-footer .wp-block-social-links .wp-social-link:hover { border-color: var(--wp--preset--color--brass); color: var(--wp--preset--color--brass) !important; }

/* ---------- The Events Calendar ---------- */
:root {
	--tec-color-accent-primary: #e0a73a;
	--tec-color-accent-primary-hover: #f0bd57;
	--tec-color-accent-primary-active: #c98f22;
	--tec-color-button-primary: #d7262c;
	--tec-color-link-accent: #e0a73a;
	--tec-color-text-primary: #f5efe3;
	--tec-color-text-secondary: rgba(245,239,227,.75);
	--tec-color-text-events-title: #f5efe3;
	--tec-color-background: #0d0d0f;
	--tec-color-background-events: transparent;
	--tec-color-background-secondary: #17171a;
	--tec-color-border-default: rgba(255,255,255,.15);
	--tec-color-border-secondary: rgba(255,255,255,.12);
	--tec-color-icon-primary: #e0a73a;
	--tec-font-family-sans-serif: var(--wp--preset--font-family--body);
}
.tribe-common .tribe-common-h1, .tribe-common .tribe-common-h2, .tribe-common .tribe-common-h3,
.tribe-events-single-event-title, .tribe-common--breakpoint-medium.tribe-common .tribe-common-h3 {
	font-family: var(--wp--preset--font-family--condensed) !important; text-transform: uppercase; letter-spacing: .02em;
}
.tribe-events .tribe-events-calendar-list__event-title-link,
.tribe-events .tribe-events-calendar-list__event-datetime { color: var(--wp--preset--color--cream) !important; }
.tribe-events-single, .tribe-events-pg-template { color: var(--wp--preset--color--cream); }
.tribe-events-single .tribe-events-event-image img { border-radius: 6px; }
.tribe-events .tribe-events-c-subscribe-dropdown__button, .tribe-events-c-ical { display: none !important; }

/* ---------- Store ---------- */
.kings-store-heading { margin-top: var(--wp--preset--spacing--50); }
.kings-store { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 2rem 1.5rem; margin-top: 1.5rem; }
.kings-product img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 4px; background: var(--wp--preset--color--coal); }
.kings-product h3 { font-size: 1.3rem; margin: .9rem 0 .3rem; }
.kings-product p { margin: 0; font-size: .95rem; opacity: .75; }
.kings-product__foot { display: flex; align-items: center; justify-content: space-between; margin-top: .9rem; }
.kings-product__buy { background: var(--wp--preset--color--red); color: #fff !important; text-decoration: none; padding: .5rem 1.1rem; font-family: var(--wp--preset--font-family--condensed); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; font-size: .9rem; border-radius: 2px; }
.kings-product__buy:hover { background: var(--wp--preset--color--brass); color: var(--wp--preset--color--ink) !important; }
/* TEC list view legibility */
.tribe-events .tribe-events-calendar-list__event-description, .tribe-events .tribe-events-calendar-list__event-venue,
.tribe-events .tribe-events-c-nav__prev, .tribe-events .tribe-events-c-nav__next, .tribe-events .tribe-events-calendar-list__month-separator-text,
.tribe-events .tribe-events-c-top-bar__datepicker-button, .tribe-events .tribe-events-calendar-list__event-date-tag-weekday,
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum { color: var(--wp--preset--color--cream) !important; }
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum { font-family: var(--wp--preset--font-family--condensed); }
.tribe-events-single .tribe-events-schedule h2, .tribe-events-single-section, .tribe-events-meta-group, .tribe-events-meta-group dd, .tribe-events-meta-group dt { color: var(--wp--preset--color--cream) !important; }
/* TEC single show */
.tribe-events-single-event-title, .tribe-events-single .tribe-events-single-event-title { color: var(--wp--preset--color--cream) !important; font-size: clamp(2.2rem, 1.6rem + 2.5vw, 3.8rem) !important; line-height: 1 !important; }
.tribe-events-single .tribe-events-back a, .tribe-events-single .tribe-events-notices { color: var(--wp--preset--color--brass) !important; }
.tribe-events-single .tribe-events-notices { background: transparent !important; border: 1px solid rgba(224,167,58,.4) !important; display: inline-block; padding: .3rem .8rem !important; border-radius: 2px; font-size: .85rem; letter-spacing: .1em; text-transform: uppercase; }
.tribe-events-single .tribe-events-schedule h2, .tribe-events-schedule .tribe-event-date-start, .tribe-events-schedule .tribe-event-time { color: var(--wp--preset--color--brass) !important; font-family: var(--wp--preset--font-family--condensed) !important; letter-spacing: .08em; text-transform: uppercase; }
.tribe-events-single .tribe-events-event-image img { max-height: 70vh; width: 100%; object-fit: cover; }
.tribe-events-single .tribe-events-single-event-description { font-size: 1.15rem; }
.tribe-events-single a { color: var(--wp--preset--color--brass); }
.tribe-events-single .tribe-events-single-event-description, .tribe-events-single .tribe-events-single-event-description p,
.tribe-events-single .tribe-events-event-meta, .tribe-events-single .tribe-events-event-meta * { color: var(--wp--preset--color--cream) !important; }
.tribe-events-single .tribe-events-event-meta { background: var(--wp--preset--color--coal) !important; border: 0 !important; border-radius: 6px; }
.tribe-events-single .tribe-events-event-meta .tribe-events-single-section-title { color: var(--wp--preset--color--brass) !important; font-family: var(--wp--preset--font-family--condensed); text-transform: uppercase; letter-spacing: .12em; }
/* ---------- v1.1: wordmark, next-show bar, polish ---------- */
.kings-wordmark { display: inline-flex; flex-direction: column; line-height: .86; text-decoration: none !important; font-family: var(--wp--preset--font-family--condensed); text-transform: uppercase; color: var(--wp--preset--color--cream); }
.kings-wordmark__name { font-weight: 800; font-size: clamp(1.5rem, 1.2rem + 1vw, 2.05rem); letter-spacing: .04em; }
.kings-wordmark__kings { font-weight: 600; font-size: clamp(.95rem, .85rem + .35vw, 1.15rem); letter-spacing: .34em; color: var(--wp--preset--color--brass); margin-top: .22em; }
.kings-wordmark__with { font-family: var(--wp--preset--font-family--body); font-size: .8rem; letter-spacing: .18em; text-transform: uppercase; opacity: .6; margin-top: .7em; font-weight: 500; }
.kings-wordmark:hover .kings-wordmark__name { color: var(--wp--preset--color--brass); }
.kings-wordmark--footer .kings-wordmark__name { font-size: 2.4rem; }
.kings-wordmark--footer { margin-bottom: 1rem; }
.kings-header-social { margin-left: 1.25rem !important; }
@media (max-width: 1000px) { .kings-header-social { display: none !important; } }

.kings-hero .wp-block-cover__background { background: linear-gradient(80deg, rgba(13,13,15,.88) 0%, rgba(13,13,15,.55) 45%, rgba(13,13,15,.2) 100%) !important; opacity: 1 !important; }
.kings-hero .kings-eyebrow, .kings-hero p { text-shadow: 0 1px 12px rgba(0,0,0,.8); }

.kings-next { display: inline-flex; align-items: center; gap: 1rem; margin-top: 1.75rem; padding: .85rem 1.25rem; background: rgba(13,13,15,.72); border: 1px solid rgba(224,167,58,.45); border-radius: 3px; color: var(--wp--preset--color--cream) !important; text-decoration: none !important; backdrop-filter: blur(6px); transition: border-color .15s ease, background .15s ease; max-width: 100%; }
.kings-next:hover { border-color: var(--wp--preset--color--brass); background: rgba(13,13,15,.9); }
.kings-next__label { font-family: var(--wp--preset--font-family--condensed); font-weight: 700; font-size: .8rem; letter-spacing: .22em; text-transform: uppercase; color: var(--wp--preset--color--ink); background: var(--wp--preset--color--brass); padding: .25rem .55rem; border-radius: 2px; white-space: nowrap; }
.kings-next__date { font-family: var(--wp--preset--font-family--condensed); font-weight: 700; font-size: 1.15rem; letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--brass); white-space: nowrap; }
.kings-next__title { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kings-next__arrow { color: var(--wp--preset--color--brass); font-size: 1.2rem; }

.kings-show--card .kings-show__date--open { border-style: dashed; }
.kings-show--card .kings-show__title a { color: var(--wp--preset--color--brass); }

.kings-music-row .kings-card img { aspect-ratio: 1; object-fit: cover; border-radius: 4px; box-shadow: 0 20px 40px -20px rgba(0,0,0,.7); }
.kings-music-row__title { margin-top: .75rem; font-family: var(--wp--preset--font-family--condensed); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; font-size: 1.15rem; line-height: 1.2; }
.kings-music-row__title a { color: var(--wp--preset--color--cream); text-decoration: none; }
.kings-music-row__title a:hover { color: var(--wp--preset--color--brass); }
.kings-music-row__title span { font-family: var(--wp--preset--font-family--body); font-weight: 500; text-transform: none; letter-spacing: 0; font-size: .9rem; color: var(--wp--preset--color--brass); }
@media (max-width: 781px) { .kings-music-row { display: grid !important; grid-template-columns: 1fr 1fr; gap: 1.25rem; } }

.kings-footer ul { list-style: none; padding-left: 0; margin-left: 0; }

.kings-after-show { margin-top: 4rem; padding-top: 2.5rem; border-top: 1px solid rgba(255,255,255,.1); }
.kings-after-show h2 { font-size: var(--wp--preset--font-size--x-large); }
.kings-after-show__cta { display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; margin-top: 2rem; }
.kings-after-show__cta .wp-block-button__link { display: inline-block; text-decoration: none; }
.kings-outline-link { display: inline-block; padding: .85rem 1.5rem; border: 2px solid var(--wp--preset--color--cream); color: var(--wp--preset--color--cream) !important; text-decoration: none !important; font-family: var(--wp--preset--font-family--condensed); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.kings-outline-link:hover { background: var(--wp--preset--color--cream); color: var(--wp--preset--color--ink) !important; }
.kings-after-show .wp-block-button__link { color: #fff !important; }
.kings-after-show .wp-block-button__link:hover { color: var(--wp--preset--color--ink) !important; }
@media (max-width: 640px) { .kings-next { gap: .6rem; padding: .7rem .9rem; } .kings-next__title { max-width: 42vw; } }

/* ===== v1.2 crowned-C logo + two-row header ===== */
.kings-header { padding: 0 !important; transition: box-shadow .2s ease; }
.kings-header.is-scrolled { box-shadow: 0 6px 24px rgba(0,0,0,.45); }
.kings-h-top { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 1rem 0 .7rem; transition: padding .2s ease; }
.kings-h-top > .kings-header-social { justify-self: start; margin: 0; }
.kings-h-top > .kings-h-book { justify-self: end; margin: 0; }
.kings-h-book .wp-block-button__link { padding: .55em 1.2em; font-size: .9rem; }
.kings-logo { display: block; line-height: 0; }
.kings-logo img { height: 74px; width: auto; display: block; transition: height .2s ease; }
.kings-h-nav { border-top: 1px solid rgba(245,239,227,.09); padding: .55rem 0 .65rem; margin-top: 0 !important; transition: padding .2s ease; }
.kings-h-nav .wp-block-navigation { font-family: var(--wp--preset--font-family--condensed); font-weight: 600; text-transform: uppercase; letter-spacing: .16em; font-size: .95rem; }
.kings-h-nav .kings-nav-booking { display: none; }
.kings-header.is-scrolled .kings-h-top { padding: .45rem 0 .35rem; }
.kings-header.is-scrolled .kings-logo img { height: 46px; }
.kings-header.is-scrolled .kings-h-nav { padding: .35rem 0 .4rem; }
.kings-logo--footer { display: inline-flex; flex-direction: column; align-items: flex-start; gap: .55rem; line-height: 1; margin-bottom: 1rem; text-decoration: none; }
.kings-logo--footer img { height: 70px; }
.kings-logo__with { font-family: var(--wp--preset--font-family--condensed); font-weight: 600; letter-spacing: .3em; text-transform: uppercase; font-size: .8rem; color: rgba(245,239,227,.6); }
@media (max-width: 999px) { .kings-h-top > .kings-header-social { visibility: hidden; } }
@media (max-width: 781px) {
  .kings-header { position: sticky; }
  .kings-h-top { grid-template-columns: 48px 1fr 48px; padding: .7rem 0; }
  .kings-h-top > .kings-h-book { display: none; }
  .kings-logo { justify-self: center; }
  .kings-logo img { height: 50px; }
  .kings-header.is-scrolled .kings-logo img { height: 40px; }
  .kings-h-nav { position: absolute; left: var(--wp--style--root--padding-left, 1rem); top: 0; bottom: 0; border: 0; padding: 0 !important; display: flex; align-items: center; }
  .kings-h-nav .kings-nav-booking { display: block; }
}
/* sticky fix: the template-part wrapper must be the sticky element */
.wp-block-template-part:has(> .kings-header) { position: sticky; top: 0; z-index: 60; }
.admin-bar .wp-block-template-part:has(> .kings-header) { top: 32px; }
@media (max-width: 782px) { .admin-bar .wp-block-template-part:has(> .kings-header) { top: 46px; } }
.kings-header { position: relative !important; top: auto !important; }
.kings-h-top > .kings-header-social { grid-column: 1; grid-row: 1; }
.kings-h-top > .kings-logo { grid-column: 2; grid-row: 1; justify-self: center; }
.kings-h-top > .kings-h-book { grid-column: 3; grid-row: 1; }
/* v1.3 Listen section */
.kings-listen { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 1.2rem; }
.kings-listen__player { display: flex; flex-direction: column; gap: .6rem; }
.kings-listen__label { font-family: var(--wp--preset--font-family--condensed); font-weight: 600; text-transform: uppercase; letter-spacing: .16em; font-size: .85rem; color: var(--wp--preset--color--brass); }
.kings-listen iframe { width: 100%; height: 452px; border: 0; border-radius: 12px; display: block; background: #0d0d0f; }
.kings-listen__links { margin-top: 1rem; font-size: .95rem; color: rgba(245,239,227,.7); }
.kings-listen__links a { color: var(--wp--preset--color--cream); text-decoration-color: var(--wp--preset--color--red); text-underline-offset: 3px; }
@media (max-width: 781px) { .kings-listen { grid-template-columns: 1fr; } .kings-listen iframe { height: 380px; } }
/* v1.3.1 hero: mirror photo so Chris sits on the right, clear of the headline */
.kings-hero .wp-block-cover__image-background { transform: scaleX(-1); }
/* v1.4 one-sheet link */
.kings-onesheet-link { margin-top: 1rem; font-family: var(--wp--preset--font-family--condensed); font-weight: 700; text-transform: uppercase; letter-spacing: .14em; font-size: .85rem; }
.kings-onesheet-link a { color: var(--wp--preset--color--brass); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.kings-onesheet-link a::before { content: "\2193  "; }
.kings-onesheet-link a:hover { color: var(--wp--preset--color--cream); }
/* v1.5 venues list on About */
.kings-venues { list-style: none; padding-left: 0; columns: 2; column-gap: 2rem; }
.kings-venues li { break-inside: avoid; padding: .45rem 0 .45rem 1.2rem; border-bottom: 1px solid rgba(245,239,227,.1); position: relative; }
.kings-venues li::before { content: ""; position: absolute; left: 0; top: .95rem; width: .45rem; height: .45rem; background: var(--wp--preset--color--red); transform: rotate(45deg); }
@media (max-width: 781px) { .kings-venues { columns: 1; } }
/* v1.6 three-line logo with Freddi Gowdy */
.kings-logo img { height: 100px; }
.kings-header.is-scrolled .kings-logo img { height: 60px; }
.kings-logo--footer img { height: 96px; }
.kings-logo__with { display: none; }
@media (max-width: 781px) { .kings-logo img { height: 64px; } .kings-header.is-scrolled .kings-logo img { height: 50px; } }
/* v1.7 Video Vault + lightbox */
.kings-vid { all: unset; cursor: pointer; display: block; position: relative; width: 100%; aspect-ratio: 16/9; overflow: hidden; border-radius: 6px; background: var(--wp--preset--color--coal); }
.kings-vid img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease, filter .35s ease; filter: saturate(.9) brightness(.85); }
.kings-vid:hover img, .kings-vid:focus-visible img { transform: scale(1.04); filter: saturate(1) brightness(1); }
.kings-vid:focus-visible { outline: 3px solid var(--wp--preset--color--brass); outline-offset: 3px; }
.kings-vid__play { position: absolute; left: 50%; top: 50%; width: 58px; height: 58px; margin: -29px 0 0 -29px; border-radius: 50%; background: var(--wp--preset--color--red); box-shadow: 0 6px 20px rgba(0,0,0,.45); transition: transform .2s ease; }
.kings-vid__play::after { content: ""; position: absolute; left: 23px; top: 18px; border-left: 17px solid #fff; border-top: 11px solid transparent; border-bottom: 11px solid transparent; }
.kings-vid:hover .kings-vid__play { transform: scale(1.1); }
.kings-vid-card { margin: 0; }
.kings-vid-card figcaption, .kings-vid-feature figcaption { margin-top: .6rem; display: flex; flex-direction: column; gap: .15rem; }
.kings-vid__t { font-family: var(--wp--preset--font-family--condensed); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: 1.05rem; line-height: 1.15; color: var(--wp--preset--color--cream); }
.kings-vid__c { font-size: .85rem; color: rgba(245,239,227,.6); line-height: 1.35; }
.kings-vid-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.6rem 1.4rem; margin-top: 1.2rem; }
.kings-vid-feature { margin: 0 0 1rem; }
.kings-vid-feature .kings-vid__play { width: 84px; height: 84px; margin: -42px 0 0 -42px; }
.kings-vid-feature .kings-vid__play::after { left: 33px; top: 26px; border-left-width: 25px; border-top-width: 16px; border-bottom-width: 16px; }
.kings-vid-feature .kings-vid__t { font-size: 1.5rem; }
.kings-vault-nav { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 auto 2.5rem; position: sticky; top: 0; z-index: 5; }
.kings-vault-nav a { font-family: var(--wp--preset--font-family--condensed); font-weight: 700; text-transform: uppercase; letter-spacing: .12em; font-size: .8rem; color: var(--wp--preset--color--cream); text-decoration: none; padding: .45rem .8rem; border: 1px solid rgba(245,239,227,.25); border-radius: 999px; background: var(--wp--preset--color--ink); }
.kings-vault-nav a:hover { border-color: var(--wp--preset--color--brass); color: var(--wp--preset--color--brass); }
.kings-era { padding: 2.5rem 0 1rem; border-top: 1px solid rgba(245,239,227,.1); scroll-margin-top: 140px; }
.kings-era__head h2 { margin: .2rem 0 .6rem; }
.kings-era__story { max-width: 760px; color: rgba(245,239,227,.82); line-height: 1.65; margin: 0; }
.kings-era__foot { margin-top: 1.4rem; font-size: .85rem; color: rgba(245,239,227,.5); }
.kings-era__foot a { color: var(--wp--preset--color--brass); }
.kings-lightbox { position: fixed; inset: 0; z-index: 9999; background: rgba(8,8,10,.92); display: flex; align-items: center; justify-content: center; padding: 4vh 4vw; animation: kingsFade .2s ease; }
.kings-lightbox__in { width: min(1200px, 100%); position: relative; }
.kings-lightbox__frame { position: relative; aspect-ratio: 16/9; background: #000; border-radius: 6px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.6); }
.kings-lightbox__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.kings-lightbox__x { all: unset; cursor: pointer; position: absolute; right: 0; top: -2.8rem; font-size: 2.4rem; line-height: 1; color: var(--wp--preset--color--cream); padding: 0 .3rem; }
.kings-lightbox__x:hover, .kings-lightbox__x:focus-visible { color: var(--wp--preset--color--brass); }
.kings-lightbox__t { margin: .9rem 0 0; font-family: var(--wp--preset--font-family--condensed); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--wp--preset--color--cream); }
@keyframes kingsFade { from { opacity: 0; } to { opacity: 1; } }
.kings-vault-cta { text-align: center; }
.kings-vault-nav { position: static; }
/* v1.7.2: no layout jump when the header shrinks — the wrapper keeps the full height, the shrunken header floats inside it */
body { overflow-anchor: none; }
.wp-block-template-part:has(> .kings-header) { pointer-events: none; }
.wp-block-template-part:has(> .kings-header) > .kings-header { pointer-events: auto; }
/* v1.7.3 mobile streamlining */
@media (max-width: 781px) {
  .kings-hero .kings-eyebrow { letter-spacing: .16em; font-size: .78rem !important; }
  .kings-listen__player + .kings-listen__player { display: none; }
  .kings-listen iframe { height: 352px; }
  .kings-album img { max-width: 280px; margin: 0 auto; display: block; }
  .kings-vault-nav { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: .4rem; margin-bottom: 1.5rem; scrollbar-width: none; }
  .kings-vault-nav::-webkit-scrollbar { display: none; }
  .kings-vault-nav a { white-space: nowrap; flex: none; }
  .kings-vid-grid { grid-template-columns: 1fr 1fr; gap: 1.1rem .8rem; }
  .kings-vid__play { width: 40px; height: 40px; margin: -20px 0 0 -20px; }
  .kings-vid__play::after { left: 16px; top: 12px; border-left-width: 12px; border-top-width: 8px; border-bottom-width: 8px; }
  .kings-vid__t { font-size: .92rem; }
  .kings-vid__c { font-size: .78rem; }
  .kings-vid-feature .kings-vid__play { width: 64px; height: 64px; margin: -32px 0 0 -32px; }
  .kings-vid-feature .kings-vid__play::after { left: 25px; top: 20px; border-left-width: 19px; border-top-width: 12px; border-bottom-width: 12px; }
  .kings-era { padding-top: 1.8rem; scroll-margin-top: 110px; }
  .kings-lightbox { padding: 0 0 0; }
  .kings-lightbox__in { width: 100%; }
  .kings-lightbox__frame { border-radius: 0; }
  .kings-lightbox__x { right: .6rem; }
  .kings-lightbox__t { padding: 0 1rem; }
}
@media (max-width: 420px) { .kings-vid-grid { grid-template-columns: 1fr; } }
/* v1.8 From the road note */
.kings-road-note { display: grid; grid-template-columns: 72px 1fr; gap: 1.2rem; align-items: start; margin: 1.2rem 0 2.2rem; padding: 1.4rem 1.6rem; background: var(--wp--preset--color--coal); border-left: 4px solid var(--wp--preset--color--brass); border-radius: 0 6px 6px 0; }
.kings-road-note__face { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; border: 2px solid var(--wp--preset--color--brass); }
.kings-road-note__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem 1rem; margin: 0 0 .5rem; }
.kings-road-note__label { font-family: var(--wp--preset--font-family--condensed); font-weight: 800; text-transform: uppercase; letter-spacing: .2em; font-size: .9rem; color: var(--wp--preset--color--brass); }
.kings-road-note__date { font-family: var(--wp--preset--font-family--condensed); font-weight: 600; text-transform: uppercase; letter-spacing: .14em; font-size: .78rem; color: rgba(245,239,227,.55); }
.kings-road-note__edit { font-size: .78rem; color: var(--wp--preset--color--brass); margin-left: auto; }
.kings-road-note__body { font-size: clamp(1.05rem, 1rem + .3vw, 1.2rem); line-height: 1.6; color: var(--wp--preset--color--cream); }
.kings-road-note__body p { margin: 0 0 .6rem; }
.kings-road-note__body p:last-child { margin-bottom: 0; }
.kings-road-note__body p:last-child em:only-child { font-family: var(--wp--preset--font-family--marker); font-style: normal; color: var(--wp--preset--color--brass); font-size: 1.15em; }
@media (max-width: 640px) { .kings-road-note { grid-template-columns: 52px 1fr; gap: .9rem; padding: 1.1rem 1.1rem; } .kings-road-note__face { width: 52px; height: 52px; } }
.kings-road-note > p:empty, .kings-road-note > br { display: none; }

/* v1.9 WooCommerce store */
.kings-cart-link{display:inline-flex;align-items:center;gap:4px;color:inherit;text-decoration:none;margin-left:14px;position:relative;opacity:.85}
.kings-cart-link:hover{opacity:1;color:#e0a73a}
.kings-cart-link span:empty{display:none}
.kings-cart-link span{background:#d7262c;color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:18px;height:18px;line-height:18px;text-align:center;padding:0 5px}
.kings-product h3 a{color:inherit;text-decoration:none}
.kings-price del{opacity:.55;margin-right:6px}
.kings-price ins{text-decoration:none}
.kings-store-note{margin-top:2.5rem;opacity:.75;font-size:.95rem}

/* v1.9.1 Form fields: dark, legible everywhere (checkout, cart, product options, contact forms, search) */
:root{--kf-bg:#1d1d21;--kf-bg-focus:#232328;--kf-border:#3d3d44;--kf-text:#f5efe3;--kf-label:#b9b2a6;--kf-focus:#e0a73a}
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=password],input[type=search],input[type=date],select,textarea,
.wc-block-components-text-input input,.wc-block-components-textarea,.wc-blocks-components-select .wc-blocks-components-select__select,.wc-block-components-combobox .components-combobox-control input,.wc-block-components-form .wc-block-components-text-input input[type],
.wpforms-container input:not([type=checkbox]):not([type=radio]):not([type=submit]),.wpforms-container select,.wpforms-container textarea{
  background-color:var(--kf-bg)!important;color:var(--kf-text)!important;border:1px solid var(--kf-border)!important;border-radius:4px!important;caret-color:var(--kf-focus);-webkit-text-fill-color:var(--kf-text)}
input:focus,select:focus,textarea:focus,.wc-block-components-text-input input:focus,.wc-blocks-components-select .wc-blocks-components-select__select:focus{
  background-color:var(--kf-bg-focus)!important;border-color:var(--kf-focus)!important;box-shadow:0 0 0 1px var(--kf-focus)!important;outline:none!important}
input::placeholder,textarea::placeholder{color:var(--kf-label)!important;opacity:1!important;-webkit-text-fill-color:var(--kf-label)}
.wc-block-components-text-input label,.wc-block-components-textarea+label,.wc-blocks-components-select .wc-blocks-components-select__label,.wc-block-components-combobox .components-base-control__label,.wc-block-components-combobox label{color:var(--kf-label)!important}
.wc-blocks-components-select .wc-blocks-components-select__container{background:var(--kf-bg)!important;border-radius:4px}
.wc-blocks-components-select .wc-blocks-components-select__expand{fill:var(--kf-text)!important}
select option{background:#17171a;color:var(--kf-text)}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,select:-webkit-autofill{-webkit-text-fill-color:var(--kf-text)!important;-webkit-box-shadow:0 0 0 1000px var(--kf-bg) inset!important;transition:background-color 9999s}
.wc-block-components-validation-error p,.wc-block-components-text-input.has-error label{color:#ff8a8f!important}
.wc-block-components-text-input.has-error input{border-color:#ff8a8f!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox],.wc-block-components-radio-control__input{background:var(--kf-bg)!important;border:1px solid #6b6b74!important}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:var(--kf-focus)!important}
.wc-block-components-radio-control__input:checked{border-color:var(--kf-focus)!important}
.wc-block-components-radio-control__input:checked:before{background:var(--kf-focus)!important}
.wc-block-components-quantity-selector{background:var(--kf-bg)!important;border-color:var(--kf-border)!important}
.wc-block-components-quantity-selector input,.wc-block-components-quantity-selector button{color:var(--kf-text)!important;background:transparent!important;border:0!important;box-shadow:none!important}
.wc-block-components-address-form__address_2-toggle,.wc-block-components-checkout-step__description{color:var(--kf-label)!important}
.woocommerce div.product form.cart .variations select{min-width:180px;padding:8px 10px;font-size:15px}
.woocommerce .quantity input.qty{padding:8px 4px}
.woocommerce .reset_variations{color:var(--kf-label)}

/* v1.9.3 crown removed from logo: artwork is 14% shorter, so heights scaled to keep the same text size */
.kings-logo img{height:86px}
.kings-header.is-scrolled .kings-logo img{height:51px}
.kings-logo--footer img{height:82px}
@media (max-width:781px){.kings-logo img{height:55px}.kings-header.is-scrolled .kings-logo img{height:43px}}

/* v1.9.4 album tracklists */
.kings-tracklist{columns:2;column-gap:2.5rem;padding-left:1.6rem;margin:.6rem 0 1.4rem;line-height:1.9}
.kings-tracklist li{break-inside:avoid;padding-left:.2rem}
.kings-tracklist li::marker{color:#e0a73a;font-family:var(--wp--preset--font-family--condensed);font-weight:700}
@media (max-width:600px){.kings-tracklist{columns:1}}
.woocommerce-Tabs-panel--description > h2:first-child{display:none}

/* v1.9.7: band-photo poster on the homepage Watch video — keep heads in frame */
.kings-vid-feature img[src*="kings-band-1980s"]{object-position:50% 15%}

/* v1.9.8: click-to-load music players (same 452px box before and after, so nothing shifts) */
.kings-embed{position:relative;height:452px;border-radius:12px;overflow:hidden;background:#1d1d21;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:24px}
.kings-embed img{width:180px;height:180px;object-fit:cover;border-radius:6px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.kings-embed__go{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:12px 22px;font:700 .95rem/1 "Barlow Condensed",sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;color:#0d0d0f;background:#1ed760}
.kings-embed--apple .kings-embed__go{background:#fa2d48;color:#fff}
.kings-embed__go:hover,.kings-embed__go:focus-visible{filter:brightness(1.1);outline:2px solid #f5efe3;outline-offset:3px}
.kings-embed__icon{width:0;height:0;border-left:10px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent}
.kings-embed__note{font-size:.8rem;color:#b9b2a6}
.kings-embed.is-live{padding:0;display:block;background:transparent}
.kings-embed.is-live iframe{width:100%;height:452px;border:0;display:block}
@media (max-width:600px){.kings-embed,.kings-embed.is-live iframe{height:380px}}

/* v1.9.9: single show = one compact card */
.kings-show-single{max-width:1100px;margin:0 auto;padding:clamp(24px,4vw,48px) 20px 0}
.kings-show-single .kings-back{margin:0 0 18px;font:600 .85rem/1 "Barlow Condensed",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.kings-show-single .kings-back a{color:#c9a15a;text-decoration:none}
.kings-showcard{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:0;background:#1d1d21;border:1px solid rgba(201,161,90,.25);border-radius:10px;overflow:hidden}
.kings-showcard__media{position:relative;min-height:100%;background:#0d0d0f}
.kings-showcard__img{display:block;width:100%;height:100%;min-height:340px;max-height:560px;object-fit:cover;object-position:50% 30%}
.kings-showcard__badge{position:absolute;left:16px;top:16px;display:flex;flex-direction:column;align-items:center;min-width:64px;padding:8px 10px;background:#d62b2b;color:#fff;border-radius:6px;font:700 .8rem/1.1 "Barlow Condensed",sans-serif;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 6px 18px rgba(0,0,0,.45)}
.kings-showcard__badge b{font-size:2rem;line-height:1;letter-spacing:0}
.kings-showcard__info{padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:18px}
.kings-showcard__title{margin:0;font-size:clamp(1.8rem,1.2rem + 2vw,2.7rem);line-height:.98;text-transform:uppercase}
.kings-showcard__facts{margin:0;display:grid;gap:12px}
.kings-showcard__facts div{display:grid;grid-template-columns:80px 1fr;gap:12px;padding-top:12px;border-top:1px solid rgba(245,239,227,.1)}
.kings-showcard__facts dt{font:700 .78rem/1.6 "Barlow Condensed",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#c9a15a}
.kings-showcard__facts dd{margin:0;color:#f5efe3;line-height:1.5}
.kings-showcard__facts a{color:#c9a15a}
.kings-showcard__cta{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.kings-showcard__about{color:#d8d1c4;font-size:1rem;line-height:1.6;border-top:1px solid rgba(245,239,227,.1);padding-top:14px}
.kings-showcard__about p{margin:0 0 .6em}
.kings-showcard__past{margin:0;color:#b9b2a6;font-style:italic}
.kings-showcard.is-past .kings-showcard__badge{background:#555}
.kings-show-single .kings-after-show{margin-top:clamp(36px,5vw,64px);border-top:0;padding-top:0}
.kings-show-single .tribe-events-event-meta,.kings-show-single .tribe-events-single-section{display:none}
@media (max-width:780px){.kings-showcard{grid-template-columns:1fr}.kings-showcard__img{min-height:0;height:auto;aspect-ratio:4/3;max-height:none}}
.kings-showcard__cta{align-items:center}
.kings-showcard__cta a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px !important;line-height:1 !important;height:auto;box-sizing:border-box}
.kings-showcard__cta .wp-block-button__link{background:#d62b2b;color:#fff !important;text-decoration:none}
.kings-showcard__cta .kings-outline-link{border:2px solid #f5efe3;color:#f5efe3;text-decoration:none;font:700 .85rem/1 "Barlow Condensed",sans-serif;letter-spacing:.12em;text-transform:uppercase}
@media (max-width:780px){.kings-showcard__cta a{flex:1 1 140px}.kings-showcard__facts div{grid-template-columns:64px 1fr}}

/* v1.9.10: About — From the archive timeline */
.kings-archive{list-style:none;margin:28px 0 40px;padding:0 0 0 22px;border-left:2px solid rgba(201,161,90,.45);display:grid;gap:36px}
.kings-archive__item{position:relative;display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:24px;align-items:center}
.kings-archive__item::before{content:"";position:absolute;left:-30px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:#c9a15a;box-shadow:0 0 0 4px #0d0d0f}
.kings-archive figure{margin:0;padding:10px 10px 12px;background:#f3eee4;border-radius:3px;box-shadow:0 12px 28px rgba(0,0,0,.55);transform:rotate(-1.2deg)}
.kings-archive__item:nth-child(even) figure{transform:rotate(1.1deg)}
.kings-archive img{display:block;width:100%;height:220px;object-fit:cover;object-position:50% 30%;cursor:zoom-in;filter:contrast(1.03)}
.kings-archive__year{display:inline-block;font:800 1.9rem/1 "Barlow Condensed",sans-serif;color:#c9a15a;letter-spacing:.02em}
.kings-archive__text h3{margin:.25em 0 .35em;font-size:1.35rem;text-transform:uppercase;letter-spacing:.03em}
.kings-archive__text p{margin:0;color:#d8d1c4;line-height:1.6}
@media (max-width:640px){.kings-archive{padding-left:16px}.kings-archive__item{grid-template-columns:1fr;gap:14px}.kings-archive__item::before{left:-24px;top:24px;margin-top:0}.kings-archive img{height:auto;aspect-ratio:4/3}}
.kings-zoom{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.kings-zoom img{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.6)}

/* v1.9.12: About hero = candid live shot, cropped wide around Chris */
.kings-about-hero img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:45% 22%}
@media (max-width:700px){.kings-about-hero img{aspect-ratio:4/3;object-position:45% 20%}}
/* Media page event galleries */
.kings-event-intro{max-width:760px;color:#d8d1c4}

/* v1.9.15: About section photos (Grammy, Hall of Fame) */
.kings-about-photo{margin:28px 0}
.kings-about-photo img{border-radius:6px;width:100%;height:auto}
.kings-about-photo--portrait{max-width:380px}
.kings-about-photo figcaption{color:#b9b2a6;font-size:.85rem}

/* v1.9.16: a11y contrast on red ticket buttons */
.kings-show__cta a.is-tickets{background:#c21f26 !important;color:#fff !important;border-color:#c21f26 !important}

/* v1.9.18 photo viewer */
.kings-viewer{position:fixed;inset:0;z-index:100001;background:rgba(8,8,10,.95);display:flex;align-items:center;justify-content:center;padding:56px 64px}
.kings-viewer .kv-fig{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}
.kings-viewer .kv-img{max-width:100%;max-height:calc(100% - 40px);object-fit:contain;border-radius:4px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.kings-viewer figcaption{margin-top:12px;color:#d8d1c4;font-size:.9rem;text-align:center}
.kings-viewer .kv-n{color:#c9a15a;margin-left:8px}
.kings-viewer button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:50%;width:48px;height:48px;font-size:30px;line-height:48px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.kings-viewer button:hover,.kings-viewer button:focus-visible{background:#d62b2b;outline:none}
.kings-viewer .kv-x{top:14px;right:14px}
.kings-viewer .kv-prev{left:10px;top:50%;margin-top:-24px}
.kings-viewer .kv-next{right:10px;top:50%;margin-top:-24px}
@media (max-width:600px){.kings-viewer{padding:56px 8px 24px}.kings-viewer .kv-prev,.kings-viewer .kv-next{top:auto;bottom:14px;margin:0}.kings-viewer .kv-img{max-height:calc(100% - 90px)}}

/* v1.9.19 viewer v2: zoom + pan */
img.kv-zoomable{cursor:zoom-in}
.kings-viewer{flex-direction:column;padding:60px 64px 20px;touch-action:none;user-select:none}
.kings-viewer .kv-stage{flex:1;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0}
.kings-viewer .kv-img{max-width:100%;max-height:100%;transform-origin:center center;transition:transform .12s ease-out;cursor:zoom-in;will-change:transform}
.kings-viewer.is-zoomed .kv-img{cursor:grab;transition:none}
.kings-viewer .kv-bar{margin:10px 0 0;color:#d8d1c4;font-size:.9rem;text-align:center;min-height:1.2em}
.kings-viewer .kv-tools{position:absolute;top:12px;right:12px;display:flex;gap:8px}
.kings-viewer .kv-tools button{position:static}
@media (max-width:600px){.kings-viewer{padding:60px 8px 70px}.kings-viewer .kv-prev,.kings-viewer .kv-next{top:auto;bottom:12px;margin:0}.kings-viewer .kv-prev{left:12px}.kings-viewer .kv-next{right:12px}}

/* v1.9.20 show details open in place */
.kings-show{flex-wrap:wrap}
.kings-show__cta{display:flex;gap:10px;align-items:center}
.kings-panel{flex:0 0 100%;grid-column:1/-1;width:100%;display:grid;grid-template-columns:minmax(0,320px) 1fr;gap:24px;margin:16px 0 8px;padding:18px;background:#1d1d21;border:1px solid rgba(201,161,90,.25);border-radius:10px}
.kings-panel[hidden]{display:none}
.kings-panel__img{width:100%;height:100%;min-height:200px;max-height:300px;object-fit:cover;border-radius:6px;display:block}
.kings-panel__info{display:flex;flex-direction:column;gap:14px}
.kings-panel__about{margin:0;color:#d8d1c4;line-height:1.6}
.kings-panel .kings-showcard__facts div:first-child{border-top:0;padding-top:0}
.kings-show.is-open .kings-show__more{background:#f5efe3;color:#0d0d0f}
@media (max-width:700px){.kings-panel{grid-template-columns:1fr;padding:14px}.kings-panel__img{max-height:240px}}

/* v1.9.21: mobile menu = full-screen overlay. The header's backdrop blur was trapping the fixed menu inside the 45px header bar. */
.kings-header:has(.wp-block-navigation__responsive-container.is-menu-open){-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html.has-modal-open .kings-header{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.wp-block-navigation__responsive-container.is-menu-open{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-height:none!important;background:#0d0d0f!important;z-index:100000!important;padding:20px 24px calc(24px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;display:flex!important;flex-direction:column}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close{width:100%;max-width:none}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{top:16px;right:16px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#f5efe3}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:72px!important;align-items:flex-start!important;gap:0!important;width:100%}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{flex-direction:column!important;align-items:stretch!important;gap:0!important;width:100%;flex-wrap:nowrap!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid rgba(245,239,227,.1)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:block!important;width:100%;padding:16px 4px!important;font:800 1.9rem/1.1 "Barlow Condensed",sans-serif!important;letter-spacing:.04em!important;text-transform:uppercase;color:#f5efe3!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,.wp-block-navigation__responsive-container.is-menu-open .current-menu-item>.wp-block-navigation-item__content,.wp-block-navigation__responsive-container.is-menu-open [aria-current=page]{color:#e0a73a!important}
.wp-block-navigation__responsive-container.is-menu-open,.wp-block-navigation__responsive-container.is-menu-open *{box-sizing:border-box}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{width:100%!important;max-width:100%!important;margin:0!important;padding-left:0!important;padding-right:0!important;overflow-x:hidden}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{border-bottom:0;margin-top:20px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child .wp-block-navigation-item__content{background:#d62b2b;text-align:center;font-size:1.3rem!important;letter-spacing:.14em!important;padding:16px!important;border-radius:2px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible{outline:2px solid #e0a73a;outline-offset:2px}

/* v1.9.23: keep desktop menu truly centered — cart icon sits at the far right of the menu row instead of pushing the links left */
@media (min-width:782px){.kings-h-nav{position:relative}.kings-h-nav .kings-cart-link{position:absolute;right:0;top:50%;transform:translateY(-50%)}}

/* Hero brightened (v1.9.24) */
.kings-hero .wp-block-cover__background { background: linear-gradient(80deg, rgba(13,13,15,.72) 0%, rgba(13,13,15,.3) 42%, rgba(13,13,15,0) 70%) !important; }
.kings-hero .wp-block-cover__image-background { filter: brightness(1.18) contrast(1.04) saturate(1.05); }
.kings-hero::after { height: 28%; }

/* Viewer: close button pinned to the photo corner (v1.9.26) */
.kings-viewer .kv-tools { z-index: 5; gap: 0; }
.kings-viewer .kv-x { box-shadow: 0 2px 10px rgba(0,0,0,.5); }

/* About: band lineup list (v1.9.27) */
.kings-lineup__title { margin-top: 1.5rem !important; margin-bottom: .6rem !important; font-size: 1rem !important; letter-spacing: .22em; text-transform: uppercase; color: var(--wp--preset--color--brass); }
.kings-lineup { list-style: none; padding: 0 !important; margin: 0 0 2rem !important; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 2rem; border-top: 1px solid rgba(245,239,227,.12); }
.kings-lineup li { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding: .6rem 0; border-bottom: 1px solid rgba(245,239,227,.12); margin: 0 !important; }
.kings-lineup li strong { font-weight: 600; }
.kings-lineup li span { color: rgba(245,239,227,.7); font-size: .92em; text-align: right; }
@media (max-width: 640px) { .kings-lineup { grid-template-columns: 1fr; } }
