/*
Theme Name: K1 Live Pro
Theme URI: https://k1live.in/
Author: K1 Group
Description: Premium WordPress theme for K1 Live artist booking, event entertainment, gallery, leads and admin-editable content.
Version: 1.3.3
Text Domain: k1-live-pro
*/

:root {
	--ink: #07080f;
	--night: #0d1020;
	--panel: #141827;
	--panel-2: #1b2235;
	--paper: #f7f4ed;
	--soft: #f1efe8;
	--text: #f8fbff;
	--muted: #aeb8ce;
	--dark-text: #171b24;
	--gold: #f7c957;
	--gold-dark: #c58b24;
	--cyan: #28d3e3;
	--red: #ef3d5d;
	--green: #42d66d;
	--line: rgba(255, 255, 255, 0.14);
	--shadow: 0 22px 70px rgba(0, 0, 0, 0.34);
	--radius: 8px;
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--ink);
	color: var(--text);
	font-family: Inter, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.65;
}

body.nav-open {
	overflow: hidden;
}

img {
	display: block;
	max-width: 100%;
}

a {
	color: inherit;
	text-decoration: none;
}

button,
input,
textarea,
select {
	font: inherit;
}

.container {
	width: min(1180px, calc(100% - 40px));
	margin: 0 auto;
}

.narrow {
	width: min(760px, calc(100% - 40px));
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.topbar {
	background: #05060b;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	color: #cdd6e6;
	font-size: 0.9rem;
}

.topbar__inner,
.topbar__contacts,
.topbar__links {
	display: flex;
	align-items: center;
	gap: 18px;
}

.topbar__inner {
	justify-content: space-between;
	min-height: 42px;
}

.topbar a:hover {
	color: var(--gold);
}

.topbar__links a {
	color: #aeb8ce;
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(7, 8, 15, 0.88);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(18px);
}

.nav-shell {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 86px;
	gap: 28px;
}

.brand {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 220px;
}

.brand img {
	width: 66px;
	height: 66px;
	object-fit: contain;
}

.brand strong,
.footer-brand h2 {
	display: block;
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.22rem;
	line-height: 1.1;
	color: #fff;
}

.brand small {
	display: block;
	color: var(--muted);
	font-size: 0.74rem;
	line-height: 1.3;
	margin-top: 4px;
}

.main-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 22px;
	font-weight: 700;
	color: #dfe5ef;
	font-size: 0.94rem;
}

.main-nav a {
	position: relative;
	padding: 10px 0;
}

.main-nav a::after {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 4px;
	height: 2px;
	background: var(--gold);
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 180ms ease;
}

.main-nav a:hover::after {
	transform: scaleX(1);
}

.nav-actions {
	display: flex;
	align-items: center;
	gap: 12px;
}

.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 20px;
	border-radius: var(--radius);
	border: 1px solid transparent;
	font-weight: 800;
	line-height: 1.1;
	cursor: pointer;
	transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, border-color 180ms ease;
}

.button:hover {
	transform: translateY(-1px);
}

.button--gold {
	background: var(--gold);
	color: #14100a;
	box-shadow: 0 14px 32px rgba(247, 201, 87, 0.22);
}

.button--gold:hover {
	background: #ffe082;
}

.button--dark {
	background: #0c0f18;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.16);
}

.button--dark:hover {
	border-color: var(--gold);
}

.button--outline {
	border-color: rgba(255, 255, 255, 0.38);
	color: #fff;
	background: rgba(255, 255, 255, 0.04);
}

.button--outline:hover {
	border-color: var(--cyan);
}

.menu-button {
	display: none;
	width: 46px;
	height: 46px;
	border-radius: var(--radius);
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.06);
	color: #fff;
	padding: 12px;
	cursor: pointer;
}

.menu-button span {
	display: block;
	width: 100%;
	height: 2px;
	margin: 5px 0;
	background: #fff;
	transition: transform 180ms ease, opacity 180ms ease;
}

.menu-button.is-open span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.menu-button.is-open span:nth-child(2) {
	opacity: 0;
}

.menu-button.is-open span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.hero-section {
	position: relative;
	min-height: 760px;
	background: var(--hero-image) center / cover no-repeat;
	overflow: hidden;
}

.hero-video {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-section::before {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(7, 8, 15, 0.94) 0%, rgba(7, 8, 15, 0.78) 47%, rgba(7, 8, 15, 0.52) 100%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 118px);
	content: "";
	pointer-events: none;
}

.hero-section::after {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	height: 160px;
	background: linear-gradient(180deg, rgba(7, 8, 15, 0), var(--ink));
	content: "";
	pointer-events: none;
}

.hero-grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 420px;
	align-items: center;
	gap: 58px;
	padding: 92px 0 96px;
}

.hero-play-cue {
	position: absolute;
	left: calc((100% - min(1180px, calc(100% - 40px))) / 2);
	bottom: 72px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 10px 14px 10px 10px;
	border-radius: var(--radius);
	background: rgba(7, 8, 15, 0.72);
	border: 1px solid rgba(255, 255, 255, 0.18);
	box-shadow: 0 18px 44px rgba(0, 0, 0, 0.32);
	color: #fff;
	font-weight: 900;
}

.hero-play-cue span {
	position: relative;
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--gold);
	box-shadow: 0 0 0 8px rgba(247, 201, 87, 0.12);
}

.hero-play-cue span::before {
	width: 0;
	height: 0;
	margin-left: 3px;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 12px solid #17110a;
	content: "";
}

.hero-copy {
	max-width: 760px;
}

.eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	color: var(--gold-dark);
	font-weight: 800;
	text-transform: uppercase;
	font-size: 0.78rem;
	letter-spacing: 0;
}

.eyebrow::before {
	width: 28px;
	height: 2px;
	background: currentColor;
	content: "";
}

.eyebrow--light {
	color: var(--gold);
}

.hero-copy h1,
.section-head h2,
.section-copy h2,
.career-intro h2,
.contact-copy h2 {
	margin: 0;
	font-family: Poppins, Inter, sans-serif;
	line-height: 1.04;
	color: #fff;
}

.hero-copy h1 {
	font-size: 4.15rem;
	max-width: 780px;
}

.hero-copy p {
	margin: 24px 0 0;
	max-width: 660px;
	color: #e2e8f4;
	font-size: 1.12rem;
}

.hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 34px;
}

.hero-socials {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 34px;
	color: #cfd8e6;
	font-size: 0.9rem;
	font-weight: 700;
}

.hero-socials a {
	padding: 8px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}

.hero-socials a:hover {
	color: var(--gold);
	border-color: var(--gold);
}

.booking-panel {
	align-self: stretch;
	background: rgba(13, 16, 32, 0.96);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	overflow: hidden;
}

.panel-media {
	position: relative;
	height: 260px;
	background: #080a12;
}

.panel-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

.panel-badge {
	position: absolute;
	left: 18px;
	right: 18px;
	bottom: 18px;
	padding: 14px 16px;
	border-radius: var(--radius);
	background: rgba(7, 8, 15, 0.82);
	border: 1px solid rgba(255, 255, 255, 0.16);
}

.panel-badge strong,
.panel-badge span {
	display: block;
}

.panel-badge span {
	color: var(--muted);
	font-size: 0.88rem;
}

.panel-body {
	padding: 24px;
	background: rgba(13, 16, 32, 0.98);
}

.panel-body h2 {
	margin: 0 0 18px;
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.45rem;
}

.booking-panel form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.booking-panel form label,
.booking-panel form .button {
	margin-bottom: 0;
}

.booking-panel form label:nth-of-type(3),
.booking-panel form .button {
	grid-column: 1 / -1;
}

form label {
	display: grid;
	gap: 7px;
	margin-bottom: 12px;
	color: #f3f6fb;
	font-size: 0.92rem;
	font-weight: 700;
}

input,
textarea,
select {
	width: 100%;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--radius);
	background: rgba(255, 255, 255, 0.07);
	color: #fff;
	padding: 12px 13px;
	outline: none;
}

textarea {
	resize: vertical;
}

select {
	appearance: none;
}

input:focus,
textarea:focus,
select:focus {
	border-color: var(--gold);
	box-shadow: 0 0 0 3px rgba(247, 201, 87, 0.18);
}

::placeholder {
	color: #98a4b8;
}

.stat-strip {
	position: relative;
	z-index: 2;
	padding: 0 0 28px;
	margin-top: -64px;
}

.stat-strip__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.stat-tile {
	min-height: 158px;
	padding: 24px;
	border-radius: var(--radius);
	background: #101523;
	border: 1px solid rgba(255, 255, 255, 0.13);
	box-shadow: 0 16px 50px rgba(0, 0, 0, 0.22);
}

.stat-tile strong,
.stat-tile span,
.stat-tile small {
	display: block;
}

.stat-tile strong {
	color: var(--gold);
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.75rem;
	line-height: 1;
}

.stat-tile span {
	margin-top: 12px;
	color: #fff;
	font-weight: 800;
}

.stat-tile small {
	margin-top: 8px;
	color: var(--muted);
	font-size: 0.9rem;
	line-height: 1.45;
}

.service-tags {
	padding: 24px 0;
	background: #0c101b;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tags-row {
	display: flex;
	align-items: center;
	gap: 20px;
}

.tags-row > span {
	color: var(--gold);
	font-weight: 900;
	text-transform: uppercase;
	font-size: 0.78rem;
	white-space: nowrap;
}

.tags-row div {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.tags-row a {
	padding: 8px 12px;
	border-radius: var(--radius);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #dfe7f4;
	font-weight: 700;
	font-size: 0.9rem;
}

.section {
	padding: 96px 0;
	background: var(--ink);
}

.section--soft {
	background: var(--soft);
	color: var(--dark-text);
}

.section--soft h2,
.section--soft h3 {
	color: var(--dark-text);
}

.section--stage {
	background:
		linear-gradient(180deg, rgba(239, 61, 93, 0.12), rgba(7, 8, 15, 0)),
		#090b14;
}

.section--gold {
	background:
		linear-gradient(120deg, rgba(247, 201, 87, 0.96), rgba(239, 61, 93, 0.9)),
		var(--gold);
	color: #17110a;
}

.section--gold h2,
.section--gold p,
.section--gold .eyebrow {
	color: #17110a;
}

.split-layout,
.legacy-layout,
.contact-layout,
.careers-layout,
.faq-layout,
.testimonial-layout {
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	gap: 52px;
	align-items: center;
}

.about-section {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(90deg, rgba(7, 8, 15, 0.94) 0%, rgba(7, 8, 15, 0.88) 48%, rgba(7, 8, 15, 0.76) 100%),
		url("assets/photos/banner2-1.jpg") center / cover no-repeat;
}

.about-section::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(135deg, rgba(247, 201, 87, 0.14), transparent 34%),
		repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 86px),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 118px);
	content: "";
	pointer-events: none;
}

.about-section .container {
	position: relative;
	z-index: 1;
}

.about-photo {
	position: relative;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: var(--shadow);
	border: 1px solid rgba(255, 255, 255, 0.16);
}

.about-photo img {
	width: 100%;
	aspect-ratio: 5 / 4;
	object-fit: cover;
}

.about-photo::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(7, 8, 15, 0), rgba(7, 8, 15, 0.34));
	content: "";
}

.section-head {
	max-width: 700px;
	margin-bottom: 36px;
}

.section-head.center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.section-head.center .eyebrow {
	justify-content: center;
}

.section-head--split {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 28px;
	max-width: none;
}

.section-head--split > div {
	max-width: 720px;
}

.section-head--split .button {
	flex: 0 0 auto;
	margin-bottom: 6px;
}

.section-head h2,
.section-copy h2,
.career-intro h2,
.contact-copy h2 {
	font-size: 2.7rem;
}

.section-head p,
.section-copy p,
.career-intro p,
.contact-copy p,
.lede {
	color: #c8d1e2;
	font-size: 1.04rem;
	margin: 18px 0 0;
}

.section--soft .section-head p,
.section--soft .testimonial-card p,
.section--soft .testimonial-card span {
	color: #5a6474;
}

.section-copy p:not(.lede) {
	color: #b7c1d2;
}

.check-list {
	display: grid;
	gap: 12px;
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
}

.check-list li {
	position: relative;
	padding-left: 30px;
	color: #f1f5fb;
}

.check-list li::before {
	position: absolute;
	left: 0;
	top: 0.58em;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--green);
	content: "";
}

.artist-grid,
.service-grid,
.package-grid,
.gallery-grid,
.testimonial-grid,
.legacy-grid {
	display: grid;
	gap: 18px;
}

.artist-grid {
	grid-template-columns: repeat(4, 1fr);
}

.rail-shell {
	position: relative;
	overflow: hidden;
}

.scroll-rail {
	display: flex;
	gap: 18px;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 4px 0 18px;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 32px, #000 calc(100% - 32px), transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 32px, #000 calc(100% - 32px), transparent 100%);
}

.scroll-rail[data-autoscroll] {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	animation: none;
	transform: none;
	will-change: scroll-position;
}

.rail-shell:hover .scroll-rail[data-autoscroll],
.rail-shell:focus-within .scroll-rail[data-autoscroll] {
	animation: none;
}

@keyframes rail-pan {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-52%);
	}
}

.scroll-rail::-webkit-scrollbar {
	display: none;
}

.scroll-rail > .artist-card,
.scroll-rail > .service-card {
	flex: 0 0 292px;
	scroll-snap-align: start;
}

.scroll-rail > .service-card {
	flex-basis: 340px;
}

.artist-card,
.service-card,
.package-card,
.testimonial-card,
.legacy-card {
	border-radius: var(--radius);
	overflow: hidden;
	background: var(--panel);
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 14px 38px rgba(0, 0, 0, 0.18);
}

.artist-card__media {
	position: relative;
	height: 250px;
	background: #111525;
}

.artist-card__media img,
.artist-card__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

.artist-card__media span,
.service-card__image span {
	position: absolute;
	left: 12px;
	bottom: 12px;
	padding: 7px 10px;
	border-radius: var(--radius);
	background: rgba(7, 8, 15, 0.82);
	color: var(--gold);
	font-weight: 900;
	font-size: 0.78rem;
	text-transform: uppercase;
}

.artist-card__placeholder,
.legacy-card__placeholder {
	display: grid;
	place-items: center;
	background:
		linear-gradient(135deg, rgba(247, 201, 87, 0.25), rgba(40, 211, 227, 0.2)),
		#101523;
	color: var(--gold);
	font-family: Poppins, Inter, sans-serif;
	font-size: 2.6rem;
	font-weight: 800;
}

.artist-card__body,
.service-card__body,
.package-card,
.testimonial-card,
.legacy-card {
	padding: 22px;
}

.artist-card small,
.service-card small,
.legacy-card small {
	display: block;
	margin-bottom: 7px;
	color: var(--cyan);
	font-weight: 900;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.artist-card h3,
.service-card h3,
.package-card h3,
.legacy-card h3 {
	margin: 0;
	color: #fff;
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.18rem;
	line-height: 1.2;
}

.artist-card strong,
.legacy-card strong {
	display: block;
	margin-top: 7px;
	color: var(--gold);
	font-size: 0.9rem;
}

.artist-card p,
.service-card p,
.package-card p,
.legacy-card p,
.testimonial-card p {
	margin: 12px 0 0;
	color: #b7c1d2;
	font-size: 0.94rem;
	line-height: 1.55;
}

.card-more {
	display: inline-flex;
	margin-top: 18px;
	color: var(--gold);
	font-size: 0.9rem;
	font-weight: 900;
	text-transform: uppercase;
}

.card-more:hover {
	color: var(--cyan);
}

.legacy-section {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(90deg, rgba(247, 244, 237, 0.98), rgba(247, 244, 237, 0.9)),
		url("assets/photos/music-wallpaper.jpg") center / cover no-repeat;
	color: var(--dark-text);
}

.legacy-section::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(135deg, rgba(197, 139, 36, 0.14), transparent 42%),
		repeating-linear-gradient(90deg, rgba(20, 24, 39, 0.055) 0 1px, transparent 1px 120px);
	content: "";
	pointer-events: none;
}

.legacy-section .container {
	position: relative;
	z-index: 1;
}

.legacy-layout {
	grid-template-columns: 0.85fr 1.15fr;
	align-items: start;
}

.legacy-section h2,
.legacy-section h3,
.legacy-section .section-copy p,
.legacy-section .legacy-card p {
	color: var(--dark-text);
}

.legacy-grid {
	grid-template-columns: 1fr;
}

.legacy-card {
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr);
	align-items: stretch;
	padding: 0;
	background: #fff;
	border-color: rgba(20, 24, 39, 0.12);
	box-shadow: 0 18px 50px rgba(20, 24, 39, 0.14);
}

.legacy-card img,
.legacy-card__placeholder {
	width: 210px;
	height: 100%;
	min-height: 260px;
	object-fit: cover;
	object-position: center top;
}

.legacy-card > div:not(.legacy-card__placeholder) {
	min-width: 0;
	padding: 26px 26px 24px;
}

.legacy-card h3 {
	color: var(--dark-text);
	font-size: 1.65rem;
}

.legacy-card p {
	max-width: 42ch;
}

#shows,
.process-section {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(180deg, rgba(7, 8, 15, 0.96) 0%, rgba(12, 16, 27, 0.94) 48%, rgba(7, 8, 15, 0.98) 100%),
		url("assets/photos/music-wallpaper.jpg") center / cover no-repeat;
}

#shows {
	padding-bottom: 58px;
}

#shows::before,
.process-section::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(115deg, rgba(40, 211, 227, 0.08), transparent 34%, rgba(247, 201, 87, 0.1)),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 132px);
	content: "";
	pointer-events: none;
}

#shows .container,
.process-section .container {
	position: relative;
	z-index: 1;
}

.service-grid {
	grid-template-columns: repeat(4, 1fr);
}

.service-card {
	background: rgba(20, 24, 39, 0.86);
	border-color: rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(14px);
}

.service-card__image {
	position: relative;
	height: 170px;
	background: #0c101b;
}

.service-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.service-card ul,
.package-card ul {
	display: grid;
	gap: 8px;
	margin: 18px 0 0;
	padding: 0;
	list-style: none;
}

.service-card li,
.package-card li {
	position: relative;
	padding-left: 20px;
	color: #dbe3ef;
	font-size: 0.91rem;
}

.service-card li::before,
.package-card li::before {
	position: absolute;
	left: 0;
	top: 0.66em;
	width: 7px;
	height: 7px;
	background: var(--gold);
	border-radius: 50%;
	content: "";
}

.process-section {
	margin-top: -1px;
	padding-top: 58px;
}

.process-rail {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	align-items: start;
	gap: 22px;
}

.process-rail::before {
	position: absolute;
	top: 48px;
	left: 72px;
	right: 72px;
	height: 1px;
	background: linear-gradient(90deg, rgba(247, 201, 87, 0.18), rgba(40, 211, 227, 0.52), rgba(247, 201, 87, 0.18));
	content: "";
}

.process-step {
	position: relative;
	z-index: 1;
	min-height: 292px;
	padding: 34px 30px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
		rgba(20, 24, 39, 0.86);
	border-radius: var(--radius);
	border: 1px solid rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(14px);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
	overflow: hidden;
}

.process-step:nth-child(even) {
	margin-top: 42px;
}

.process-step::before {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--gold), var(--cyan));
	content: "";
}

.process-step span {
	display: inline-grid;
	place-items: center;
	width: 74px;
	height: 74px;
	border-radius: 50%;
	border: 1px solid rgba(247, 201, 87, 0.58);
	background: rgba(247, 201, 87, 0.12);
	color: var(--gold);
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.7rem;
	font-weight: 800;
	box-shadow: 0 0 0 10px rgba(247, 201, 87, 0.06);
}

.process-step h3 {
	margin: 26px 0 0;
	color: #fff;
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.13rem;
}

.process-step p {
	margin: 10px 0 0;
	color: #aeb8ce;
	font-size: 0.94rem;
}

.package-grid {
	grid-template-columns: repeat(4, 1fr);
}

.package-card {
	background: rgba(7, 8, 15, 0.9);
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
}

.package-card strong {
	display: inline-block;
	margin-top: 14px;
	padding: 8px 10px;
	border-radius: var(--radius);
	background: rgba(247, 201, 87, 0.14);
	color: var(--gold);
}

.package-card .button {
	margin-top: 22px;
	width: 100%;
}

.gallery-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-bottom: 24px;
}

.gallery-filters button {
	min-height: 38px;
	padding: 8px 13px;
	border-radius: var(--radius);
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.06);
	color: #dfe7f4;
	font-weight: 800;
	cursor: pointer;
}

.gallery-filters button.is-active {
	background: var(--gold);
	color: #161109;
	border-color: var(--gold);
}

.gallery-grid {
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 230px;
}

.gallery-item {
	position: relative;
	margin: 0;
	border-radius: var(--radius);
	overflow: hidden;
	cursor: zoom-in;
	background: #111525;
}

.gallery-item:nth-child(1),
.gallery-item:nth-child(6) {
	grid-column: span 2;
}

.gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 260ms ease;
}

.gallery-item:hover img {
	transform: scale(1.04);
}

.gallery-item figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 18px;
	background: linear-gradient(180deg, rgba(7, 8, 15, 0), rgba(7, 8, 15, 0.9));
}

.gallery-item strong,
.gallery-item span {
	display: block;
}

.gallery-item span {
	color: var(--gold);
	font-size: 0.82rem;
	font-weight: 900;
}

.gallery-item.is-hidden {
	display: none;
}

.testimonial-layout {
	align-items: start;
}

.testimonial-grid {
	grid-template-columns: repeat(3, 1fr);
}

.testimonial-card {
	margin: 0;
	background: #fff;
	border: 1px solid rgba(20, 24, 39, 0.1);
	box-shadow: 0 12px 34px rgba(20, 24, 39, 0.1);
}

.testimonial-card cite {
	display: block;
	margin-top: 20px;
	font-style: normal;
}

.testimonial-card cite strong,
.testimonial-card cite span {
	display: block;
	color: var(--dark-text);
}

.faq-section {
	position: relative;
	overflow: hidden;
	padding-bottom: 112px;
	background:
		linear-gradient(180deg, rgba(8, 11, 20, 0.98), rgba(10, 14, 26, 0.94)),
		url("assets/photos/banner7.jpg") center / cover no-repeat;
}

.faq-section::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(125deg, rgba(247, 201, 87, 0.11), transparent 34%, rgba(40, 211, 227, 0.08)),
		repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 92px);
	content: "";
	pointer-events: none;
}

.faq-section::after {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 120px;
	background: linear-gradient(180deg, rgba(8, 11, 20, 0), rgba(7, 8, 15, 0.96));
	content: "";
	pointer-events: none;
}

.faq-layout {
	position: relative;
	z-index: 1;
	grid-template-columns: 0.78fr 1.22fr;
	align-items: start;
}

.faq-list {
	display: grid;
	gap: 12px;
	padding: 18px;
	border-radius: var(--radius);
	background: rgba(13, 16, 32, 0.66);
	border: 1px solid rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(14px);
}

.faq-item {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius);
	background: rgba(20, 24, 39, 0.86);
	overflow: hidden;
}

.faq-item button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	padding: 18px 20px;
	border: 0;
	background: transparent;
	color: #fff;
	font-weight: 900;
	text-align: left;
	cursor: pointer;
}

.faq-answer {
	padding: 0 20px 20px;
	color: #aeb8ce;
}

.faq-answer p {
	margin: 0;
}

.careers-section {
	position: relative;
	overflow: hidden;
	margin-top: -1px;
	padding-top: 112px;
	background:
		linear-gradient(90deg, rgba(7, 8, 15, 0.96), rgba(7, 8, 15, 0.82) 54%, rgba(7, 8, 15, 0.68)),
		url("assets/photos/banner5.jpg") center / cover no-repeat;
}

.careers-section::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(135deg, rgba(239, 61, 93, 0.1), transparent 35%, rgba(247, 201, 87, 0.1)),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 128px);
	content: "";
	pointer-events: none;
}

.careers-section .container {
	position: relative;
	z-index: 1;
}

.careers-layout {
	align-items: start;
}

.role-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	margin-top: 28px;
}

.role-pill {
	padding: 16px;
	border-radius: var(--radius);
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.09);
	backdrop-filter: blur(12px);
}

.role-pill strong,
.role-pill span {
	display: block;
}

.role-pill span {
	margin-top: 4px;
	color: var(--muted);
	font-size: 0.88rem;
}

.career-form,
.contact-form-wrap {
	padding: 28px;
	border-radius: var(--radius);
	background: rgba(13, 16, 32, 0.84);
	border: 1px solid rgba(255, 255, 255, 0.18);
	box-shadow: var(--shadow);
	backdrop-filter: blur(16px);
}

.career-form-shell {
	display: block;
}

.career-form-shell summary {
	display: none;
}

.career-form h3 {
	margin: 0 0 18px;
	font-family: Poppins, Inter, sans-serif;
	font-size: 1.45rem;
}

.contact-section {
	background: var(--paper);
	color: var(--dark-text);
}

.contact-section h2,
.contact-section .eyebrow {
	color: var(--dark-text);
}

.contact-section .contact-copy p {
	color: #495365;
}

.contact-methods {
	display: grid;
	gap: 12px;
	margin-top: 28px;
}

.contact-methods a,
.contact-methods div {
	padding: 18px;
	border-radius: var(--radius);
	background: #fff;
	border: 1px solid rgba(20, 24, 39, 0.12);
}

.contact-methods strong,
.contact-methods span {
	display: block;
}

.contact-methods strong {
	color: var(--gold-dark);
	font-size: 0.82rem;
	text-transform: uppercase;
}

.contact-methods span {
	color: var(--dark-text);
	margin-top: 4px;
}

.contact-form-wrap {
	background: #101523;
}

.form-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

.form-grid .full {
	grid-column: 1 / -1;
}

.form-alert {
	margin-top: 22px;
	padding: 14px 16px;
	border-radius: var(--radius);
	font-weight: 800;
}

.form-alert--success {
	background: rgba(66, 214, 109, 0.14);
	color: #11682d;
	border: 1px solid rgba(66, 214, 109, 0.38);
}

.form-alert--error {
	background: rgba(239, 61, 93, 0.14);
	color: #a7132e;
	border: 1px solid rgba(239, 61, 93, 0.38);
}

.map-container {
	margin-top: 38px;
}

.map-container iframe {
	width: 100%;
	height: 360px;
	border: 0;
	border-radius: var(--radius);
	filter: saturate(0.9) contrast(1.02);
}

.detail-page {
	background: var(--ink);
	color: #fff;
}

.detail-hero {
	position: relative;
	overflow: hidden;
	padding: 112px 0 82px;
	background:
		linear-gradient(90deg, rgba(7, 8, 15, 0.96), rgba(12, 16, 27, 0.84)),
		url("assets/photos/music-wallpaper.jpg") center / cover no-repeat;
}

.detail-hero::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(135deg, rgba(239, 61, 93, 0.12), transparent 38%, rgba(247, 201, 87, 0.1)),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 128px);
	content: "";
	pointer-events: none;
}

.detail-hero__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 0.85fr;
	align-items: center;
	gap: 52px;
}

.detail-hero__copy h1 {
	margin: 0;
	font-family: Poppins, Inter, sans-serif;
	font-size: 4rem;
	line-height: 1;
}

.detail-hero__copy p {
	max-width: 700px;
	margin: 22px 0 0;
	color: #d5deec;
	font-size: 1.08rem;
}

.detail-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 32px;
}

.detail-hero__media {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	min-height: 320px;
}

.detail-hero__media img {
	width: 100%;
	height: 100%;
	min-height: 280px;
	object-fit: cover;
	object-position: center top;
	border-radius: var(--radius);
	border: 1px solid rgba(255, 255, 255, 0.16);
	box-shadow: 0 18px 46px rgba(0, 0, 0, 0.24);
}

.detail-hero__media img:nth-child(2) {
	margin-top: 38px;
}

.detail-hero__media img:nth-child(3) {
	margin-top: 76px;
}

.detail-list-section {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(180deg, rgba(10, 14, 26, 0.98), rgba(7, 8, 15, 1)),
		url("assets/photos/banner3.jpg") center / cover no-repeat;
}

.detail-list-section::before {
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 126px);
	content: "";
	pointer-events: none;
}

.detail-list-section .container {
	position: relative;
	z-index: 1;
}

.detail-section-head {
	max-width: 760px;
	margin-bottom: 36px;
}

.detail-section-head h2 {
	margin: 0;
	font-family: Poppins, Inter, sans-serif;
	font-size: 2.7rem;
	line-height: 1.04;
}

.detail-grid .button {
	width: 100%;
	margin-top: 22px;
}

.site-footer {
	padding: 48px 0 22px;
	background: #05060b;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-grid {
	display: grid;
	grid-template-columns: 1.15fr 0.65fr 0.85fr 0.95fr;
	align-items: start;
	gap: 30px;
}

.footer-brand img {
	width: 74px;
	height: 74px;
	object-fit: contain;
	margin-bottom: 12px;
}

.footer-brand h2 {
	margin: 0;
	font-size: 2rem;
}

.footer-brand p,
.footer-links,
.footer-bottom {
	color: #aeb8ce;
}

.footer h3,
.site-footer h3 {
	margin: 0 0 14px;
	font-family: Poppins, Inter, sans-serif;
	color: #fff;
}

.footer-links {
	display: grid;
	gap: 10px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.footer-links a:hover,
.social-row a:hover {
	color: var(--gold);
}

.social-row {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
	font-weight: 800;
}

.footer-cta p {
	margin: 0 0 18px;
	color: var(--muted);
	font-size: 0.95rem;
}

.footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-top: 20px;
	margin-top: 28px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 0.92rem;
}

.network-float {
	position: fixed;
	left: 18px;
	top: 50%;
	z-index: 58;
	display: grid;
	gap: 10px;
	padding: 10px;
	border-radius: var(--radius);
	background: rgba(7, 8, 15, 0.72);
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow: 0 18px 46px rgba(0, 0, 0, 0.3);
	backdrop-filter: blur(16px);
	transform: translateY(-50%);
}

.network-float a {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: var(--radius);
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	transition: transform 180ms ease, border-color 180ms ease;
}

.network-float a:hover {
	border-color: var(--gold);
	transform: translateX(2px);
}

.network-float img {
	width: 40px;
	height: 40px;
	object-fit: contain;
}

.whatsapp-float {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 60;
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	background: #20c95a;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
}

.whatsapp-float img {
	width: 30px;
	height: 30px;
}

.lightbox {
	position: fixed;
	inset: 0;
	z-index: 90;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 30px;
	background: rgba(0, 0, 0, 0.86);
}

.lightbox.is-open {
	display: flex;
}

.lightbox img {
	max-height: 86vh;
	max-width: min(1100px, 92vw);
	border-radius: var(--radius);
	box-shadow: var(--shadow);
}

.lightbox__close {
	position: fixed;
	top: 24px;
	right: 24px;
	width: 46px;
	height: 46px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: var(--radius);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
}

.reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 520ms ease, transform 520ms ease;
}

.reveal.in {
	opacity: 1;
	transform: translateY(0);
}

.k1l-admin-body {
	background: #f4f6fa;
	color: #172033;
}

.k1l-admin {
	min-height: 100vh;
	background: #f4f6fa;
	color: #172033;
}

.k1l-admin__bar {
	position: sticky;
	top: 0;
	z-index: 20;
	display: grid;
	grid-template-columns: 260px 1fr auto;
	align-items: center;
	gap: 20px;
	padding: 14px 24px;
	background: #080a13;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.k1l-admin__brand,
.k1l-admin__nav,
.k1l-admin__top-actions {
	display: flex;
	align-items: center;
	gap: 12px;
}

.k1l-admin__brand img {
	width: 52px;
	height: 52px;
	object-fit: contain;
}

.k1l-admin__brand strong,
.k1l-admin__brand small {
	display: block;
	color: #fff;
}

.k1l-admin__brand small {
	color: #aeb8ce;
	font-size: 0.76rem;
}

.k1l-admin__nav {
	flex-wrap: wrap;
	color: #dfe7f4;
	font-weight: 800;
	font-size: 0.9rem;
}

.k1l-admin__nav a,
.k1l-admin__top-actions a,
.k1l-admin__top-actions button {
	padding: 8px 10px;
	border-radius: var(--radius);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #fff;
	cursor: pointer;
}

.k1l-admin__top-actions button {
	background: var(--gold);
	color: #14100a;
	font-weight: 900;
}

.k1l-admin__layout {
	display: grid;
	grid-template-columns: 245px minmax(0, 1fr);
	align-items: start;
	gap: 24px;
	width: min(1440px, calc(100% - 42px));
	margin: 24px auto 70px;
}

.k1l-admin__side {
	position: sticky;
	top: 96px;
	display: grid;
	gap: 8px;
	padding: 16px;
	border-radius: var(--radius);
	background: #fff;
	border: 1px solid #dde2ec;
	box-shadow: 0 14px 34px rgba(25, 34, 54, 0.08);
}

.k1l-admin__side a {
	padding: 10px 12px;
	border-radius: var(--radius);
	color: #25304a;
	font-weight: 800;
}

.k1l-admin__side a:hover {
	background: #f1f4f9;
}

.k1l-admin__main {
	display: grid;
	gap: 18px;
}

.admin-section,
.admin-notice,
.admin-actions {
	padding: 22px;
	border-radius: var(--radius);
	background: #fff;
	border: 1px solid #dde2ec;
	box-shadow: 0 14px 34px rgba(25, 34, 54, 0.08);
}

.admin-section h2 {
	margin: 0 0 16px;
	font-family: Poppins, Inter, sans-serif;
	color: #101523;
}

.admin-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.admin-field {
	display: grid;
	gap: 7px;
	margin: 0;
	color: #25304a;
	font-weight: 800;
}

.admin-field.full {
	grid-column: 1 / -1;
}

.admin-field input,
.admin-field textarea,
.admin-field select {
	color: #172033;
	background: #f7f9fc;
	border-color: #d9e0eb;
}

.image-field {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px;
}

.image-field button,
.k1l-add-row,
.admin-actions button,
.admin-actions a {
	min-height: 42px;
	border: 1px solid #cbd3df;
	border-radius: var(--radius);
	background: #101523;
	color: #fff;
	padding: 9px 13px;
	font-weight: 900;
	cursor: pointer;
}

.admin-field--checkbox {
	align-self: end;
	padding: 12px 14px;
	border: 1px solid #d9e0eb;
	border-radius: var(--radius);
	background: #f7f9fc;
}

.admin-checkline {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #172033;
	font-weight: 800;
	cursor: pointer;
}

.admin-checkline input {
	width: 22px;
	height: 22px;
	accent-color: #16a64a;
}

.admin-repeater {
	display: grid;
	gap: 14px;
}

.admin-row {
	padding: 16px;
	border-radius: var(--radius);
	background: #f7f9fc;
	border: 1px solid #dfe5ee;
}

.admin-row__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 14px;
}

.admin-row__head strong {
	color: #101523;
}

.k1l-remove-row,
.reset-button {
	min-height: 36px;
	border: 1px solid #fac2cc;
	border-radius: var(--radius);
	background: #fff2f4;
	color: #aa1631;
	font-weight: 900;
	cursor: pointer;
}

.admin-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 12px;
}

@media (max-width: 1120px) {
	.main-nav {
		gap: 14px;
		font-size: 0.86rem;
	}

	.hero-grid,
	.split-layout,
	.legacy-layout,
	.contact-layout,
	.careers-layout,
	.faq-layout,
	.testimonial-layout,
	.detail-hero__grid {
		grid-template-columns: 1fr;
	}

	.booking-panel {
		max-width: 560px;
	}

	.artist-grid,
	.service-grid,
	.package-grid,
	.stat-strip__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.footer-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.detail-hero__media {
		max-width: 720px;
	}

	.k1l-admin__bar {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 820px) {
	.container {
		width: min(100% - 28px, 1180px);
	}

	.topbar__inner,
	.topbar__contacts,
	.topbar__links {
		flex-wrap: wrap;
		justify-content: center;
	}

	.topbar__inner {
		padding: 10px 0;
		gap: 10px;
	}

	.nav-shell {
		min-height: 76px;
	}

	.brand {
		min-width: 0;
	}

	.brand img {
		width: 54px;
		height: 54px;
	}

	.brand small {
		display: none;
	}

	.main-nav {
		position: fixed;
		left: 14px;
		right: 14px;
		top: 118px;
		display: none;
		padding: 18px;
		border-radius: var(--radius);
		background: #080a13;
		border: 1px solid rgba(255, 255, 255, 0.14);
		box-shadow: var(--shadow);
	}

	.main-nav.is-open {
		display: grid;
		gap: 4px;
	}

	.main-nav a {
		padding: 12px;
	}

	.menu-button {
		display: block;
	}

	.nav-actions .button {
		display: none;
	}

	.booking-panel form {
		grid-template-columns: 1fr;
	}

	.booking-panel {
		display: none;
	}

	.hero-section {
		min-height: auto;
	}

	.hero-grid {
		padding: 64px 0 82px;
		gap: 34px;
	}

	.hero-copy h1 {
		font-size: 2.65rem;
	}

	.hero-play-cue {
		left: 14px;
		bottom: 28px;
	}

	.section {
		padding: 70px 0;
	}

	.section-head--split {
		align-items: flex-start;
		flex-direction: column;
	}

	.section-head--split .button {
		margin-bottom: 0;
	}

	.scroll-rail {
		-webkit-mask-image: none;
		mask-image: none;
	}

	.scroll-rail > .artist-card,
	.scroll-rail > .service-card {
		flex-basis: min(82vw, 340px);
	}

	@keyframes rail-pan {
		from {
			transform: translateX(0);
		}
		to {
			transform: translateX(-72%);
		}
	}

	#shows {
		padding-bottom: 46px;
	}

	.process-section,
	.careers-section {
		padding-top: 72px;
	}

	.faq-section {
		padding-bottom: 72px;
	}

	.section-head h2,
	.section-copy h2,
	.career-intro h2,
	.contact-copy h2 {
		font-size: 2.05rem;
	}

	.artist-grid,
	.service-grid,
	.package-grid,
	.stat-strip__grid,
	.testimonial-grid,
	.legacy-grid,
	.process-rail,
	.role-list,
	.form-grid,
	.footer-grid {
		grid-template-columns: 1fr;
	}

	.scroll-rail.artist-grid,
	.scroll-rail.service-grid {
		display: flex;
		grid-template-columns: none;
	}

	.detail-hero {
		padding: 78px 0 66px;
	}

	.detail-hero__copy h1 {
		font-size: 2.7rem;
	}

	.detail-hero__media {
		min-height: 230px;
	}

	.detail-hero__media img {
		min-height: 210px;
	}

	.detail-hero__media img:nth-child(2),
	.detail-hero__media img:nth-child(3) {
		margin-top: 0;
	}

	.detail-section-head h2 {
		font-size: 2.05rem;
	}

	.stat-strip {
		margin-top: 0;
		padding-top: 24px;
	}

	.tags-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.gallery-grid {
		grid-template-columns: 1fr;
		grid-auto-rows: 250px;
	}

	.gallery-item:nth-child(1),
	.gallery-item:nth-child(6) {
		grid-column: span 1;
	}

	.legacy-card {
		grid-template-columns: 1fr;
	}

	.legacy-card img,
	.legacy-card__placeholder {
		width: 100%;
		height: 260px;
		min-height: 0;
	}

	.legacy-card > div:not(.legacy-card__placeholder) {
		padding: 22px;
	}

	.process-rail::before {
		display: none;
	}

	.process-step,
	.process-step:nth-child(even) {
		margin-top: 0;
		min-height: 230px;
	}

	.network-float {
		display: none;
	}

	.footer-bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.k1l-admin__layout {
		grid-template-columns: 1fr;
	}

	.k1l-admin__side {
		position: static;
	}

	.admin-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px) {
	body {
		font-size: 15px;
	}

	.hero-copy h1 {
		font-size: 2.2rem;
	}

	.hero-actions {
		display: grid;
	}

	.hero-actions .button {
		width: 100%;
	}

	.hero-play-cue {
		display: none;
	}

	.panel-body,
	.career-form,
	.contact-form-wrap {
		padding: 20px;
	}

	.artist-card__media {
		height: 280px;
	}

	.whatsapp-float {
		right: 16px;
		bottom: 16px;
		width: 54px;
		height: 54px;
	}
}

@media (max-width: 820px) {
	body {
		overflow-x: hidden;
		background: #07080f;
	}

	.topbar {
		display: none;
	}

	.container {
		width: min(100% - 24px, 1180px);
	}

	.site-header {
		top: 0;
		background: rgba(7, 8, 15, 0.96);
	}

	.nav-shell {
		min-height: 74px;
		gap: 12px;
	}

	.brand {
		gap: 10px;
	}

	.brand img {
		width: 48px;
		height: 48px;
	}

	.brand strong {
		font-size: 1.08rem;
	}

	.menu-button {
		width: 44px;
		height: 44px;
		padding: 11px;
	}

	.main-nav {
		left: 12px;
		right: 12px;
		top: 82px;
		padding: 10px;
		background:
			linear-gradient(135deg, rgba(20, 24, 39, 0.98), rgba(7, 8, 15, 0.98)),
			#080a13;
	}

	.main-nav.is-open {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.main-nav a {
		padding: 12px;
		border-radius: var(--radius);
		background: rgba(255, 255, 255, 0.06);
	}

	.hero-section::before {
		background:
			linear-gradient(180deg, rgba(7, 8, 15, 0.84) 0%, rgba(7, 8, 15, 0.74) 52%, rgba(7, 8, 15, 0.96) 100%),
			repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 92px);
	}

	.hero-grid {
		padding: 52px 0 58px;
	}

	.hero-copy h1 {
		max-width: 12ch;
		font-size: 2rem;
		line-height: 1.08;
	}

	.hero-copy p {
		margin-top: 16px;
		font-size: 0.98rem;
		line-height: 1.62;
	}

	.hero-actions {
		gap: 10px;
		margin-top: 24px;
	}

	.hero-socials {
		gap: 18px;
		margin-top: 20px;
		font-size: 0.86rem;
	}

	.button {
		min-height: 44px;
		padding: 11px 16px;
	}

	.eyebrow {
		margin-bottom: 12px;
		font-size: 0.72rem;
	}

	.stat-strip {
		margin-top: 0;
		padding: 18px 0;
		background: #080b14;
		border-top: 1px solid rgba(255, 255, 255, 0.08);
	}

	.stat-strip__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.stat-tile {
		min-height: 0;
		padding: 16px;
	}

	.stat-tile strong {
		font-size: 1.5rem;
	}

	.stat-tile span {
		margin-top: 8px;
		font-size: 0.9rem;
	}

	.stat-tile small {
		margin-top: 6px;
		font-size: 0.76rem;
		line-height: 1.38;
	}

	.service-tags {
		padding: 18px 0;
	}

	.tags-row {
		gap: 12px;
	}

	.tags-row div {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		gap: 8px;
	}

	.tags-row a {
		display: grid;
		place-items: center;
		min-height: 42px;
		padding: 9px 10px;
		font-size: 0.84rem;
		text-align: center;
	}

	.section {
		padding: 56px 0;
	}

	.section-head {
		margin-bottom: 24px;
	}

	.section-head--split {
		gap: 14px;
	}

	.section-head h2,
	.section-copy h2,
	.career-intro h2,
	.contact-copy h2 {
		font-size: 1.78rem;
		line-height: 1.12;
	}

	.section-head p,
	.section-copy p,
	.career-intro p,
	.contact-copy p,
	.lede {
		margin-top: 12px;
		font-size: 0.95rem;
		line-height: 1.62;
	}

	.split-layout,
	.legacy-layout,
	.contact-layout,
	.careers-layout,
	.faq-layout,
	.testimonial-layout {
		gap: 28px;
	}

	.about-photo img {
		aspect-ratio: 4 / 3;
	}

	.rail-shell {
		overflow: visible;
		margin-right: -12px;
	}

	.scroll-rail,
	.scroll-rail[data-autoscroll] {
		width: auto;
		min-width: 0;
		overflow-x: auto;
		overflow-y: hidden;
		padding: 2px 12px 16px 0;
		transform: none !important;
		animation: none;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.scroll-rail > .artist-card,
	.scroll-rail > .service-card {
		flex: 0 0 calc(100vw - 48px);
		max-width: 360px;
	}

	.artist-card__media {
		height: 224px;
	}

	.service-card__image {
		height: 188px;
	}

	.artist-card__body,
	.service-card__body,
	.package-card,
	.testimonial-card,
	.legacy-card {
		padding: 18px;
	}

	.artist-card h3,
	.service-card h3,
	.package-card h3,
	.legacy-card h3 {
		font-size: 1.08rem;
	}

	.artist-card p,
	.service-card p,
	.package-card p,
	.legacy-card p,
	.testimonial-card p {
		font-size: 0.9rem;
		line-height: 1.5;
	}

	.service-card ul,
	.package-card ul {
		gap: 7px;
		margin-top: 14px;
	}

	.service-card li,
	.package-card li {
		font-size: 0.86rem;
	}

	.legacy-card img,
	.legacy-card__placeholder {
		height: 230px;
	}

	#shows {
		padding-bottom: 52px;
	}

	.process-section,
	.careers-section {
		padding-top: 56px;
	}

	.process-rail {
		gap: 12px;
	}

	.process-step,
	.process-step:nth-child(even) {
		display: grid;
		grid-template-columns: 62px minmax(0, 1fr);
		align-items: start;
		gap: 10px 16px;
		min-height: 0;
		margin-top: 0;
		padding: 18px;
	}

	.process-step span {
		width: 58px;
		height: 58px;
		font-size: 1.12rem;
		box-shadow: 0 0 0 8px rgba(247, 201, 87, 0.06);
	}

	.process-step h3 {
		margin: 4px 0 0;
		font-size: 1rem;
		line-height: 1.25;
	}

	.process-step p {
		grid-column: 2;
		margin: 0;
		font-size: 0.9rem;
		line-height: 1.5;
	}

	.section--gold {
		background:
			linear-gradient(145deg, rgba(247, 201, 87, 0.98), rgba(239, 61, 93, 0.92)),
			var(--gold);
	}

	.section--gold .section-head.center {
		text-align: left;
	}

	.section--gold .section-head.center .eyebrow {
		justify-content: flex-start;
	}

	.section--gold .section-head h2 {
		color: #151006;
		font-size: 1.82rem;
	}

	.section--gold .section-head p {
		color: #2d2113;
		font-size: 0.95rem;
	}

	.package-grid,
	.testimonial-grid,
	.detail-grid.artist-grid,
	.detail-grid.service-grid {
		gap: 14px;
	}

	.package-card strong {
		margin-top: 12px;
		padding: 7px 9px;
		font-size: 0.88rem;
	}

	.package-card .button,
	.detail-grid .button {
		margin-top: 16px;
	}

	.gallery-grid {
		grid-auto-rows: 190px;
	}

	.faq-section {
		padding-bottom: 56px;
	}

	.faq-list {
		padding: 10px;
	}

	.faq-item button {
		padding: 15px;
		font-size: 0.94rem;
	}

	.role-list {
		gap: 10px;
	}

	.role-pill {
		padding: 14px;
	}

	.career-form,
	.contact-form-wrap {
		padding: 18px;
	}

	.contact-section {
		padding-bottom: 56px;
	}

	.contact-methods a,
	.contact-methods div {
		padding: 15px;
	}

	.detail-hero {
		padding: 56px 0;
	}

	.detail-hero__copy h1 {
		font-size: 2.05rem;
		line-height: 1.08;
	}

	.detail-hero__copy p {
		font-size: 0.96rem;
	}

	.detail-hero__media {
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
		min-height: 0;
	}

	.detail-hero__media img {
		min-height: 150px;
	}

	.detail-section-head {
		margin-bottom: 24px;
	}

	.detail-section-head h2 {
		font-size: 1.65rem;
		line-height: 1.15;
	}

	.site-footer {
		padding-bottom: calc(104px + env(safe-area-inset-bottom));
	}

	.footer-grid {
		gap: 20px;
	}

	.footer-brand h2 {
		font-size: 1.5rem;
	}

	.whatsapp-float {
		right: 14px;
		bottom: calc(88px + env(safe-area-inset-bottom));
		width: 50px;
		height: 50px;
	}

	.whatsapp-float img {
		width: 26px;
		height: 26px;
	}
}

@media (max-width: 520px) {
	.hero-copy h1 {
		font-size: 1.92rem;
	}

	.section-head h2,
	.section-copy h2,
	.career-intro h2,
	.contact-copy h2 {
		font-size: 1.68rem;
	}

	.scroll-rail > .artist-card,
	.scroll-rail > .service-card {
		flex-basis: calc(100vw - 42px);
		max-width: none;
	}

	.artist-card__media {
		height: 218px;
	}

	.service-card__image {
		height: 180px;
	}

	.form-grid {
		gap: 10px;
	}
}

/* K1 Live 1.3 premium responsive pass */
.scroll-rail[data-autoscroll] {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	animation: none !important;
	transform: none !important;
	will-change: scroll-position;
}

.scroll-rail.is-autoscroll-ready {
	overflow-x: hidden !important;
	overflow-y: hidden !important;
	scroll-snap-type: none !important;
	scroll-behavior: auto !important;
	-webkit-overflow-scrolling: auto !important;
}

.scroll-rail .is-rail-clone {
	opacity: 1;
	transform: none;
}

.scroll-rail > .reveal {
	opacity: 1;
	transform: none;
}

.rail-shell {
	overflow: hidden;
}

.rail-shell::before,
.rail-shell::after {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 2;
	width: 44px;
	content: "";
	pointer-events: none;
}

.rail-shell::before {
	left: 0;
	background: linear-gradient(90deg, var(--ink), rgba(7, 8, 15, 0));
}

.rail-shell::after {
	right: 0;
	background: linear-gradient(270deg, var(--ink), rgba(7, 8, 15, 0));
}

.section--stage .rail-shell::before {
	background: linear-gradient(90deg, #090b14, rgba(9, 11, 20, 0));
}

.section--stage .rail-shell::after {
	background: linear-gradient(270deg, #090b14, rgba(9, 11, 20, 0));
}

#shows .rail-shell::before,
#shows .rail-shell::after,
.process-section .rail-shell::before,
.process-section .rail-shell::after {
	background-image: none;
}

.gallery-grid--preview {
	grid-template-columns: 1.15fr 0.9fr 0.9fr;
	grid-auto-rows: 190px;
}

.gallery-grid--preview .gallery-item {
	min-width: 0;
}

.gallery-grid--preview .gallery-item:nth-child(1) {
	grid-column: span 1;
	grid-row: span 2;
}

.gallery-grid--preview .gallery-item:nth-child(5),
.gallery-grid--preview .gallery-item:nth-child(6) {
	min-height: 190px;
}

.detail-gallery-grid {
	grid-auto-rows: 250px;
}

.booking-panel__mobile-actions {
	display: none;
}

.gallery-grid--preview .gallery-item:nth-child(n+7) {
	display: none;
}

@media (max-width: 820px) {
	:root {
		--shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
	}

	body {
		font-size: 15px;
		line-height: 1.55;
	}

	.container {
		width: min(100% - 24px, 1180px);
	}

	.site-header {
		background: rgba(5, 6, 11, 0.96);
	}

	.nav-shell {
		min-height: 72px;
	}

	.brand img {
		width: 46px;
		height: 46px;
	}

	.brand strong {
		font-size: 1.04rem;
	}

	.main-nav {
		top: 80px;
	}

	.hero-section {
		min-height: 0;
		background-position: center top;
	}

	.hero-section::before {
		background:
			linear-gradient(180deg, rgba(7, 8, 15, 0.76) 0%, rgba(7, 8, 15, 0.86) 58%, rgba(7, 8, 15, 0.98) 100%),
			repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 90px);
	}

	.hero-section::after {
		height: 80px;
	}

	.hero-grid {
		display: grid;
		grid-template-columns: 1fr;
		padding: 34px 0 38px;
		gap: 22px;
	}

	.hero-copy h1 {
		max-width: 11.5ch;
		font-size: clamp(2.15rem, 10vw, 3rem);
		line-height: 1.02;
	}

	.hero-copy p {
		max-width: 34ch;
		margin-top: 14px;
		font-size: 0.98rem;
		line-height: 1.58;
	}

	.hero-actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
		margin-top: 22px;
	}

	.hero-socials {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
		margin-top: 16px;
	}

	.hero-socials a {
		display: grid;
		place-items: center;
		min-height: 36px;
		padding: 7px 8px;
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: var(--radius);
		background: rgba(255, 255, 255, 0.06);
		font-size: 0.8rem;
	}

	.booking-panel {
		display: block;
		width: 100%;
		max-width: none;
		border-color: rgba(247, 201, 87, 0.26);
		background: rgba(13, 16, 32, 0.92);
	}

	.panel-media {
		height: 138px;
	}

	.panel-media img {
		object-position: center 20%;
	}

	.panel-badge {
		left: 12px;
		right: 12px;
		bottom: 12px;
		padding: 10px 12px;
	}

	.panel-badge strong {
		font-size: 0.86rem;
	}

	.panel-badge span {
		font-size: 0.76rem;
	}

	.panel-body {
		padding: 14px;
	}

	.panel-body h2 {
		margin-bottom: 12px;
		font-size: 1.04rem;
	}

	.booking-panel__mobile-actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.booking-panel__mobile-actions .button {
		width: 100%;
		min-height: 40px;
		font-size: 0.86rem;
	}

	.booking-panel form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.booking-panel .panel-body form {
		display: none;
	}

	.booking-panel form label:nth-of-type(3),
	.booking-panel form .button {
		grid-column: 1 / -1;
	}

	.booking-panel form label {
		gap: 5px;
		font-size: 0.78rem;
	}

	input,
	textarea,
	select {
		min-height: 40px;
		padding: 10px 11px;
		font-size: 0.9rem;
	}

	.stat-strip {
		padding: 14px 0;
	}

	.stat-strip__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.stat-tile {
		padding: 13px;
		border-color: rgba(255, 255, 255, 0.1);
	}

	.stat-tile strong {
		font-size: 1.28rem;
	}

	.stat-tile span {
		margin-top: 6px;
		font-size: 0.82rem;
	}

	.stat-tile small {
		display: none;
	}

	.service-tags {
		padding: 14px 0;
	}

	.tags-row > span {
		font-size: 0.72rem;
	}

	.tags-row div {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		gap: 8px;
		padding-bottom: 4px;
		scrollbar-width: none;
	}

	.tags-row div::-webkit-scrollbar {
		display: none;
	}

	.tags-row a {
		flex: 0 0 auto;
		min-height: 36px;
		padding: 8px 11px;
		font-size: 0.8rem;
		white-space: nowrap;
	}

	.section {
		padding: 42px 0;
	}

	.section-head {
		margin-bottom: 18px;
	}

	.section-head--split {
		gap: 12px;
	}

	.section-head--split .button {
		min-height: 40px;
		padding: 10px 14px;
		font-size: 0.88rem;
	}

	.section-head h2,
	.section-copy h2,
	.career-intro h2,
	.contact-copy h2 {
		font-size: clamp(1.45rem, 7.2vw, 2.08rem);
		line-height: 1.08;
	}

	.section-head p,
	.section-copy p,
	.career-intro p,
	.contact-copy p,
	.lede {
		margin-top: 9px;
		font-size: 0.91rem;
		line-height: 1.55;
	}

	.split-layout,
	.legacy-layout,
	.contact-layout,
	.careers-layout,
	.faq-layout,
	.testimonial-layout {
		gap: 20px;
	}

	.about-photo img {
		aspect-ratio: 16 / 10;
	}

	.check-list {
		gap: 8px;
		margin-top: 16px;
	}

	.check-list li:nth-child(n+3) {
		display: none;
	}

	.check-list li {
		padding-left: 24px;
		font-size: 0.9rem;
	}

	.rail-shell {
		margin-inline: -12px;
		padding-inline: 12px;
		overflow: hidden;
	}

	.rail-shell::before,
	.rail-shell::after {
		width: 24px;
	}

	.scroll-rail,
	.scroll-rail[data-autoscroll] {
		gap: 12px;
		width: auto;
		min-width: 0;
		padding: 2px 0 10px;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: none;
		transform: none !important;
		animation: none !important;
		-webkit-mask-image: none;
		mask-image: none;
		-webkit-overflow-scrolling: touch;
	}

	.scroll-rail > .artist-card,
	.scroll-rail > .service-card {
		flex: 0 0 min(74vw, 286px);
		max-width: min(74vw, 286px);
	}

	.artist-card__media {
		height: 184px;
	}

	.service-card__image {
		height: 142px;
	}

	.artist-card__body,
	.service-card__body {
		padding: 14px;
	}

	.artist-card small,
	.service-card small,
	.legacy-card small {
		margin-bottom: 5px;
		font-size: 0.66rem;
	}

	.artist-card h3,
	.service-card h3,
	.package-card h3,
	.legacy-card h3 {
		font-size: 1rem;
		line-height: 1.18;
	}

	.artist-card strong,
	.legacy-card strong {
		margin-top: 5px;
		font-size: 0.82rem;
	}

	.artist-card p,
	.service-card p {
		display: -webkit-box;
		overflow: hidden;
		margin-top: 8px;
		font-size: 0.82rem;
		line-height: 1.45;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
	}

	.card-more {
		margin-top: 12px;
		font-size: 0.78rem;
	}

	.legacy-section {
		background:
			linear-gradient(180deg, rgba(247, 244, 237, 0.98), rgba(247, 244, 237, 0.92)),
			url("assets/photos/music-wallpaper.jpg") center / cover no-repeat;
	}

	.legacy-card {
		grid-template-columns: 116px minmax(0, 1fr);
		min-height: 176px;
	}

	.legacy-card img,
	.legacy-card__placeholder {
		width: 116px;
		height: 100%;
		min-height: 176px;
	}

	.legacy-card__placeholder {
		font-size: 1.7rem;
	}

	.legacy-card > div:not(.legacy-card__placeholder) {
		padding: 16px;
	}

	.legacy-card p {
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 4;
		-webkit-box-orient: vertical;
	}

	#shows {
		padding-bottom: 38px;
	}

	.service-card ul {
		display: none;
	}

	.process-section {
		padding-top: 42px;
	}

	.process-section .section-head {
		margin-bottom: 16px;
	}

	.process-rail {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.process-step,
	.process-step:nth-child(even) {
		display: block;
		min-height: 0;
		padding: 14px;
	}

	.process-step span {
		width: 44px;
		height: 44px;
		font-size: 1rem;
		box-shadow: 0 0 0 6px rgba(247, 201, 87, 0.06);
	}

	.process-step h3 {
		margin-top: 14px;
		font-size: 0.92rem;
	}

	.process-step p {
		display: -webkit-box;
		overflow: hidden;
		margin-top: 6px;
		font-size: 0.78rem;
		line-height: 1.45;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
	}

	.section--gold {
		padding: 42px 0;
		background:
			linear-gradient(135deg, #f7c957 0%, #f0a14e 58%, #ef3d5d 100%);
	}

	.section--gold .section-head.center {
		max-width: none;
		text-align: left;
	}

	.section--gold .section-head.center .eyebrow {
		justify-content: flex-start;
	}

	.section--gold .section-head h2 {
		max-width: 12ch;
		font-size: clamp(1.65rem, 8.6vw, 2.32rem);
		color: #130e07;
	}

	.section--gold .section-head p {
		color: rgba(19, 14, 7, 0.78);
		font-size: 0.9rem;
	}

	.package-grid {
		display: flex;
		grid-template-columns: none;
		gap: 12px;
		margin-right: -12px;
		padding: 2px 12px 8px 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.package-grid::-webkit-scrollbar {
		display: none;
	}

	.package-card {
		flex: 0 0 min(78vw, 318px);
		padding: 16px;
		scroll-snap-align: start;
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0)),
			rgba(13, 16, 32, 0.94);
	}

	.package-card p {
		display: -webkit-box;
		overflow: hidden;
		font-size: 0.84rem;
		line-height: 1.45;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
	}

	.package-card ul {
		gap: 6px;
		margin-top: 12px;
	}

	.package-card li {
		font-size: 0.8rem;
	}

	.package-card .button {
		min-height: 40px;
		margin-top: 14px;
	}

	.gallery-filters {
		justify-content: flex-start;
		flex-wrap: nowrap;
		margin-bottom: 14px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.gallery-filters::-webkit-scrollbar {
		display: none;
	}

	.gallery-filters button {
		flex: 0 0 auto;
		min-height: 34px;
		padding: 7px 11px;
		font-size: 0.78rem;
	}

	.gallery-grid,
	.gallery-grid--preview,
	.detail-gallery-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: 132px;
		gap: 8px;
	}

	.gallery-grid--preview .gallery-item:nth-child(1),
	.gallery-grid--preview .gallery-item:nth-child(5),
	.gallery-grid--preview .gallery-item:nth-child(6),
	.gallery-item:nth-child(1),
	.gallery-item:nth-child(5),
	.gallery-item:nth-child(6) {
		grid-column: span 1;
		grid-row: span 1;
	}

	.gallery-item figcaption {
		padding: 10px;
	}

	.gallery-item strong {
		font-size: 0.78rem;
		line-height: 1.25;
	}

	.gallery-item span {
		font-size: 0.68rem;
	}

	.section--soft {
		padding: 38px 0;
		background:
			linear-gradient(180deg, rgba(247, 244, 237, 0.98), rgba(241, 239, 232, 1));
	}

	.testimonial-grid {
		display: flex;
		gap: 12px;
		margin-right: -12px;
		padding: 2px 12px 8px 0;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.testimonial-grid::-webkit-scrollbar {
		display: none;
	}

	.testimonial-card {
		flex: 0 0 min(78vw, 318px);
		padding: 16px;
	}

	.faq-section {
		padding-top: 38px;
		padding-bottom: 42px;
	}

	.faq-list {
		padding: 8px;
		background: rgba(13, 16, 32, 0.74);
	}

	.faq-item button {
		padding: 13px;
		font-size: 0.86rem;
		line-height: 1.35;
	}

	.faq-answer {
		padding: 0 13px 13px;
		font-size: 0.84rem;
	}

	.careers-section {
		padding-top: 42px;
	}

	.career-intro,
	.career-form-shell {
		width: 100%;
		min-width: 0;
	}

	.role-list {
		display: flex;
		gap: 8px;
		margin-top: 16px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.role-list::-webkit-scrollbar {
		display: none;
	}

	.role-pill {
		flex: 0 0 min(62vw, 230px);
		padding: 12px;
	}

	.role-pill strong {
		font-size: 0.9rem;
	}

	.role-pill span {
		font-size: 0.76rem;
	}

	.career-form,
	.contact-form-wrap {
		padding: 16px;
	}

	.career-form-shell summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
		min-height: 52px;
		padding: 14px 16px;
		border-radius: var(--radius);
		background:
			linear-gradient(135deg, rgba(247, 201, 87, 0.96), rgba(239, 61, 93, 0.86));
		color: #151006;
		font-weight: 900;
		cursor: pointer;
		box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22);
		list-style: none;
	}

	.career-form-shell summary::-webkit-details-marker {
		display: none;
	}

	.career-form-shell summary::after {
		content: "+";
		display: grid;
		place-items: center;
		width: 28px;
		height: 28px;
		border-radius: 50%;
		background: rgba(7, 8, 15, 0.86);
		color: #fff;
	}

	.career-form-shell[open] summary {
		margin-bottom: 10px;
	}

	.career-form-shell[open] summary::after {
		content: "-";
	}

	.career-form h3 {
		margin-bottom: 12px;
		font-size: 1.16rem;
	}

	form label {
		margin-bottom: 9px;
		font-size: 0.84rem;
	}

	.contact-section {
		padding-top: 40px;
		padding-bottom: 44px;
	}

	.contact-methods {
		gap: 8px;
		margin-top: 18px;
	}

	.contact-methods a,
	.contact-methods div {
		padding: 13px;
	}

	.form-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.detail-hero {
		padding: 42px 0 36px;
	}

	.detail-hero__grid {
		gap: 22px;
	}

	.detail-hero__copy h1 {
		font-size: clamp(2rem, 10vw, 3rem);
	}

	.detail-actions {
		gap: 10px;
		margin-top: 20px;
	}

	.detail-actions .button {
		flex: 1 1 150px;
		min-height: 42px;
	}

	.detail-hero__media {
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
	}

	.detail-hero__media img {
		min-height: 128px;
	}

	.detail-list-section {
		padding-top: 38px;
	}

	.detail-grid.artist-grid,
	.detail-grid.service-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.detail-grid .artist-card__media,
	.detail-grid .service-card__image {
		height: 150px;
	}

	.detail-grid .artist-card__body,
	.detail-grid .service-card__body {
		padding: 12px;
	}

	.detail-grid .button {
		min-height: 38px;
		margin-top: 12px;
		padding: 9px 10px;
		font-size: 0.78rem;
	}

	.footer-grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.site-footer {
		padding-top: 34px;
	}

	.footer-brand img {
		width: 58px;
		height: 58px;
	}

	.footer-brand h2 {
		font-size: 1.35rem;
	}
}

@media (max-width: 520px) {
	.menu-button {
		width: 42px;
		height: 42px;
	}

	.scroll-rail > .artist-card,
	.scroll-rail > .service-card {
		flex-basis: 252px;
		max-width: 252px;
	}

	.artist-card__media {
		height: 170px;
	}

	.service-card__image {
		height: 134px;
	}

	.process-rail {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.process-step,
	.process-step:nth-child(even) {
		display: block;
		padding: 12px;
	}

	.process-step h3 {
		margin-top: 12px;
	}

	.process-step p {
		grid-column: auto;
		-webkit-line-clamp: 2;
	}

	.package-card,
	.testimonial-card {
		flex-basis: calc(100vw - 54px);
	}

	.detail-grid.artist-grid,
	.detail-grid.service-grid {
		grid-template-columns: 1fr;
	}

	.detail-grid .artist-card__media,
	.detail-grid .service-card__image {
		height: 190px;
	}

	.whatsapp-float {
		right: 14px;
		bottom: calc(86px + env(safe-area-inset-bottom));
	}
}

/* K1 Live Safari marquee and gallery preview fix */
.rail-shell {
	overflow: hidden;
}

.scroll-rail[data-autoscroll] {
	display: flex;
	width: max-content;
	max-width: none;
	min-width: 100%;
	overflow: visible !important;
	scroll-snap-type: none !important;
	scroll-behavior: auto !important;
	-webkit-overflow-scrolling: auto !important;
	will-change: transform;
	animation: none !important;
	transform: translate3d(0, 0, 0);
}

.gallery-grid--preview {
	display: grid;
	grid-auto-flow: column;
	grid-template-columns: none !important;
	grid-auto-columns: minmax(280px, 34vw);
	grid-auto-rows: 220px;
	gap: 22px;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 2px 2px 20px;
	scroll-snap-type: x proximity;
}

.gallery-grid--preview .gallery-item,
.gallery-grid--preview .gallery-item:nth-child(1),
.gallery-grid--preview .gallery-item:nth-child(5),
.gallery-grid--preview .gallery-item:nth-child(6),
.gallery-grid--preview .gallery-item:nth-child(n+7) {
	display: block;
	grid-column: auto;
	grid-row: auto;
	min-height: 220px;
	width: 100%;
	scroll-snap-align: start;
}

.gallery-grid--preview .gallery-item:has(img[src=""]),
.gallery-grid--preview .gallery-item:has(img:not([src])) {
	display: none;
}

@media (max-width: 760px) {
	.gallery-grid--preview {
		grid-auto-columns: minmax(240px, 82vw);
	}
}
