/*
	Theme Name:   Qconciertos
	Theme URI:    https://qconciertos.com/
	Description:  Tema propio de Qconciertos.
	Author:       Qconciertos
	Author URI:   https://qconciertos.com/
	Version:      1.0.4
	License:      Proprietary
	Tags:         concerts, music, events, news
	Text Domain:  qconciertos
*/


/* write custom css after this line */
/* === BARRA INFERIOR FIJA MÓVIL === */
.qco-bottom-bar {
    position: fixed !important; /* por si algo lo pisa */
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #111;          /* pon el color que quieras */
    border-top: 1px solid #333;
    box-shadow: 0 -2px 6px rgba(0,0,0,0.6);
}

/* UL de la barra */
#qco-bottom-menu.qco-bottom-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: space-around;
    align-items: stretch;
}

/* Cada item */
#qco-bottom-menu > li {
    flex: 1;
    text-align: center;
}

/* Enlaces: solo icono */
#qco-bottom-menu > li > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 8px 0 6px;
    text-decoration: none;
    color: #f5f5f5;

    font-size: 0;            /* escondemos el texto visualmente */
    line-height: 1;
}

/* Iconos con Font Awesome via ::before */
/* 1er item (Home) */
#qco-bottom-menu > li:nth-child(1) > a::before {
    content: "\f015";        /* fa-house */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
    display: block;
}

/* 2º item (Geolocalizador / mapa) */
#qco-bottom-menu > li:nth-child(2) > a::before {
    content: "\f3c5";        /* fa-location-dot */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
    display: block;
}

/* Hover / activo */
#qco-bottom-menu > li > a:hover,
#qco-bottom-menu > li.current-menu-item > a {
    color: #f8d96b;          /* color marca qconciertos */
}

/* Solo mostrar en móvil */
@media (min-width: 769px) {
    .qco-bottom-bar {
        display: none;
    }
}

/* Reservar espacio abajo en móvil para que no tape contenido */
@media (max-width: 768px) {
    body {
        padding-bottom: 60px;
    }
}

/* Wrapper general */
.qconciertos-wall-wrapper {
    width: 100%;
    margin: 20px auto;
}

/* Grid estilo Instagram */
.qconciertos-wall-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 columnas en desktop */
    gap: 6px;
}

@media (max-width: 768px) {
    .qconciertos-wall-grid {
        grid-template-columns: repeat(2, 1fr); /* 2 columnas en móvil */
    }
}

.qconciertos-wall-item {
    display: block;
    overflow: hidden;
    border-radius: 8px;
}

.qconciertos-wall-item img {
    width: 100%;
    aspect-ratio: 1 / 1; /* cuadradas como Instagram */
    object-fit: cover;
    transition: transform .25s ease-out;
}

.qconciertos-wall-item:hover img {
    transform: scale(1.06);
}

/* =========================
   Single Sala QConciertos
   ========================= */

.qco-sala-single {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.qco-sala-hero {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(340px, 1.08fr);
	gap: 0;
	margin-bottom: 28px;
	overflow: hidden;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #111;
	box-shadow: 0 18px 45px rgba(0,0,0,.16);
}

.qco-sala-hero-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 340px;
	padding: 34px 40px;
	color: #fff;
	background:
		linear-gradient(135deg, rgba(17,17,17,.96), rgba(40,58,58,.92)),
		#283a3a;
}

.qco-sala-kicker {
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 16px;
	padding: 7px 11px;
	border: 1px solid rgba(227,215,153,.45);
	border-radius: 999px;
	color: #e3d799;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
}

.qco-sala-title {
	margin: 0;
	color: #fff;
	font-size: 42px;
	line-height: 1.05;
}

.qco-sala-hero-meta {
	display: grid;
	gap: 10px;
	margin-top: 18px;
	color: rgba(255,255,255,.86);
	font-size: 15px;
	line-height: 1.45;
}

.qco-sala-hero-meta span {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.qco-sala-hero-meta-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 10px;
	margin-top: 6px;
	border-radius: 50%;
	background: #e3d799;
	box-shadow: 0 0 0 4px rgba(227,215,153,.16);
}

.qco-sala-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	margin-top: 22px;
}

.qco-sala-hero-media {
	position: relative;
	min-height: 340px;
	margin: 0;
	background: #202020;
}

.qco-sala-hero-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0,0,0,.24), rgba(0,0,0,0) 45%);
	pointer-events: none;
}

.qco-sala-hero-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-sala-hero-no-media {
	grid-template-columns: 1fr;
}

.qco-sala-hero-no-media .qco-sala-hero-copy {
	min-height: 280px;
}

.qco-sala-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
	gap: 26px;
	align-items: start;
}

.qco-sala-main,
.qco-sala-panel {
	min-width: 0;
}

.qco-sala-panel {
	position: sticky;
	top: 92px;
}

.qco-sala-card,
.qconciertos-sala-ultimos-conciertos-card {
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0,0,0,.06);
}

.qco-sala-card {
	margin-bottom: 20px;
	padding: 22px;
}

.qco-sala-description {
	margin-bottom: 24px;
	padding-right: 34px;
	padding-left: 34px;
}

.qco-sala-section-title,
.qco-sala-box-title,
.qconciertos-sala-ultimos-conciertos-header-title {
	margin: 0;
	color: #172121;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.25;
}

.qco-sala-section-title {
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(0,0,0,.08);
}

.qco-sala-box-title {
	margin-bottom: 14px;
	text-align: left;
}

.qco-sala-content {
	font-size: 16px;
	line-height: 1.72;
}

.qco-sala-content > :last-child {
	margin-bottom: 0;
}

.qco-sala-social-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding-bottom: 4px;
}

.qco-sala-social-list-hero {
	padding-bottom: 0;
}

.qco-sala-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	color: #fff !important;
	text-decoration: none !important;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 8px 20px rgba(0,0,0,.18);
	transition: transform .18s ease, box-shadow .18s ease;
}

.qco-sala-social-link:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 24px rgba(0,0,0,.22);
}

.qco-sala-social-disabled {
	opacity: .34;
	filter: grayscale(1);
	cursor: default;
}

.qco-sala-social-disabled:hover {
	transform: none;
	box-shadow: 0 8px 20px rgba(0,0,0,.18);
}

.qco-sala-social-facebook {
	background: #1877f2;
}

.qco-sala-social-instagram {
	background: #aa1e1e;
}

.qco-sala-social-web {
	background: #367aad;
}

.qco-sala-social-mail {
	background: #3e022f;
}

.qco-sala-phone {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	margin-top: 12px;
	padding: 10px 12px;
	border-radius: 8px;
	background: #f5f7f7;
	color: #172121 !important;
	font-weight: 800;
	text-decoration: none !important;
}

.qco-sala-phone i {
	color: #283a3a;
}

.qco-sala-location-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 14px;
}

.qco-sala-meta-line {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
	gap: 0;
	margin-bottom: 0;
	color: #4b5a5a;
	font-size: 14px;
	font-weight: 700;
}

.qco-sala-meta-line span + span::before {
	content: "";
	display: inline-block;
	height: 1em;
	margin: 0 10px;
	border-left: 1px solid #cfd7d7;
	vertical-align: -2px;
}

.qco-sala-directions {
	display: flex;
	flex: 0 0 auto;
	margin-bottom: 0;
	overflow: hidden;
	border-radius: 20px;
}

.qco-sala-directions .qconciertos-boton-como-llegar {
	display: inline-block;
	max-width: 150px;
}

.qco-sala-directions .qconciertos-boton-como-llegar img {
	display: block;
	max-width: 100%;
	height: auto;
}

.qco-sala-location .qconciertos-sala-mapa-wrapper {
	margin: 0;
	overflow: hidden;
	padding: 2px;
	border-radius: 8px;
	background: #283a3a;
}

.qco-sala-location iframe {
	display: block;
	height: 360px;
}

.qco-sala-empty {
	margin: 0;
	padding: 18px;
	color: #596565;
	font-weight: 700;
	line-height: 1.5;
}

.qco-sala-concerts-widget {
	position: relative;
	margin-bottom: 20px;
	overflow: hidden;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0,0,0,.06);
	transition: opacity .18s ease;
}

.qco-sala-concerts-widget.is-loading {
	opacity: .58;
	pointer-events: none;
}

.qco-sala-concerts-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 18px 14px;
	background: linear-gradient(135deg, #172121, #283a3a);
	color: #fff;
}

.qco-sala-concerts-kicker {
	display: block;
	margin-bottom: 5px;
	color: #e3d799;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-sala-concerts-title {
	margin: 0;
	color: #fff;
	font-size: 17px;
	font-weight: 900;
	line-height: 1.2;
}

.qco-sala-concerts-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	height: 30px;
	padding: 0 9px;
	border-radius: 999px;
	background: rgba(227,215,153,.16);
	color: #e3d799;
	font-size: 13px;
	font-weight: 900;
}

.qco-sala-concerts-list {
	display: grid;
}

.qco-sala-concert-link {
	display: grid;
	grid-template-columns: 62px minmax(0, 1fr);
	gap: 11px;
	align-items: center;
	padding: 13px 14px;
	color: inherit !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(0,0,0,.06);
	transition: background .18s ease;
}

.qco-sala-concert-item:last-child .qco-sala-concert-link {
	border-bottom: 0;
}

.qco-sala-concert-link:hover {
	background: #f8faf9;
}

.qco-sala-concert-thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	overflow: hidden;
	border-radius: 8px;
	background: #eef1f1;
	color: #283a3a;
}

.qco-sala-concert-thumb-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-sala-concert-thumb-empty {
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
}

.qco-sala-concert-info {
	min-width: 0;
}

.qco-sala-concert-date {
	display: inline-flex;
	margin-bottom: 5px;
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
}

.qco-sala-concert-title {
	display: block;
	color: #172121;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.25;
}

.qco-sala-concerts-nav {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	gap: 8px;
	align-items: center;
	padding: 12px 14px;
	border-top: 1px solid rgba(0,0,0,.08);
	background: #f8faf9;
}

.qco-sala-concerts-page {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 7px 10px;
	border: 1px solid rgba(40,58,58,.18);
	border-radius: 8px;
	background: #fff;
	color: #283a3a;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	cursor: pointer;
}

.qco-sala-concerts-page:hover:not(:disabled) {
	background: #283a3a;
	color: #fff;
}

.qco-sala-concerts-page:disabled {
	opacity: .42;
	cursor: default;
}

.qco-sala-concerts-current {
	color: #687474;
	font-size: 12px;
	font-weight: 900;
	white-space: nowrap;
}

.qco-sala-ad {
	overflow: hidden;
}

.qconciertos-sala-ultimos-conciertos-card {
	overflow: hidden;
}

.qconciertos-sala-ultimos-conciertos-header {
	display: flex;
	align-items: baseline;
	gap: 6px;
	padding: 16px 18px;
	border-bottom: 1px solid rgba(0,0,0,.08);
	background: #f8faf9;
}

.qconciertos-sala-ultimos-conciertos-header-count {
	color: #748080;
	font-weight: 700;
}

.qconciertos-sala-ultimos-conciertos-list {
	display: grid;
	gap: 0;
}

.qconciertos-sala-concierto-card-link {
	display: grid;
	grid-template-columns: 86px minmax(0, 1fr);
	gap: 14px;
	padding: 14px 18px;
	color: inherit !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(0,0,0,.06);
	transition: background .18s ease;
}

.qconciertos-sala-concierto-card-link:hover {
	background: #fbfcfc;
}

.qconciertos-sala-concierto-card:last-child .qconciertos-sala-concierto-card-link {
	border-bottom: 0;
}

.qconciertos-sala-concierto-card-thumb {
	width: 86px;
	height: 86px;
	overflow: hidden;
	border-radius: 8px;
	background: #eef1f1;
}

.qconciertos-sala-concierto-thumb-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qconciertos-sala-concierto-card-date {
	display: inline-flex;
	margin-bottom: 5px;
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.qconciertos-sala-concierto-card-title {
	color: #172121;
	font-size: 17px;
	font-weight: 900;
	line-height: 1.25;
}

.qconciertos-sala-concierto-card-meta {
	margin-top: 6px;
	color: #687474;
	font-size: 13px;
	line-height: 1.35;
}

.qconciertos-sala-conciertos-paginacion {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 18px;
	border-top: 1px solid rgba(0,0,0,.08);
	background: #f8faf9;
	font-size: 13px;
}

.qconciertos-sala-conciertos-prev,
.qconciertos-sala-conciertos-next {
	font-weight: 900;
	text-decoration: none !important;
}

@media (max-width: 1100px) {
	.qco-sala-hero {
		grid-template-columns: 1fr;
	}

	.qco-sala-hero-copy,
	.qco-sala-hero-media {
		min-height: 260px;
	}
}

@media (max-width: 991px) {
	.qco-sala-layout {
		grid-template-columns: 1fr;
	}

	.qco-sala-panel {
		position: static;
	}
}

@media (max-width: 767px) {
	.qco-sala-hero-copy {
		min-height: auto;
		padding: 24px 20px;
	}

	.qco-sala-hero-media {
		min-height: 160px;
	}

	.qco-sala-title {
		font-size: 30px;
	}

	.qco-sala-card {
		padding: 18px;
	}

	.qco-sala-description {
		padding-right: 22px;
		padding-left: 22px;
	}

	.qco-sala-hero-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.qco-sala-location-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.qconciertos-sala-concierto-card-link {
		grid-template-columns: 68px minmax(0, 1fr);
		padding: 13px 14px;
	}

	.qconciertos-sala-concierto-card-thumb {
		width: 68px;
		height: 68px;
	}
}





/* =========================
   Tabs búsqueda QConciertos
   ========================= */

.qc-search-tabs{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:18px 0 8px;
	padding:0;
	border-bottom:1px solid #e5e7eb;
}

.qc-search-tab{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:10px 16px;
	background:#f3f4f6;
	color:#1f2937;
	text-decoration:none !important;
	font-weight:600;
	font-size:14px;
	line-height:1;
	border:1px solid #e5e7eb;
	border-bottom:none;
	border-radius:8px 8px 0 0;
	transition:all .2s ease;
	position:relative;
	top:1px;
}

.qc-search-tab:hover{
	background:#111827;
	color:#ffffff;
	border-color:#111827;
}

.qc-search-tab.is-active{
	background:#ffffff;
	color:#111827;
	border-color:#e5e7eb;
	border-bottom:1px solid #ffffff;
}

.qc-search-tab.is-active::after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:-1px;
	height:3px;
	background:#eab308;
	border-radius:3px 3px 0 0;
}

#qc-search-results{
	background:#ffffff;
	min-height:120px;
	transition:opacity .2s ease;
}

#qc-search-results.is-loading{
	opacity:.55;
	pointer-events:none;
}

/* Resultado de ciudades */
.qc-city-results{
	list-style:none;
	margin:0;
	padding:0;
}

.qc-city-results .post-item{
	padding:22px 0;
	border-bottom:1px solid #ececec;
}

.qc-city-results .post-item:last-child{
	border-bottom:none;
}

.qc-city-results .post-title{
	margin:0 0 8px;
	font-size:28px;
	line-height:1.2;
}

.qc-city-results .post-title a{
	color:#1f2937;
	text-decoration:none;
}

.qc-city-results .post-title a:hover{
	color:#eab308;
}

.qc-city-results .post-meta{
	margin-bottom:10px;
	font-size:13px;
	color:#6b7280;
	text-transform:uppercase;
	letter-spacing:.04em;
}

.qc-city-results .post-excerpt p{
	margin:0;
	color:#4b5563;
	line-height:1.7;
}

/* Responsive */
@media (max-width: 767px){
	.qc-search-tabs{
		gap:8px;
		margin-top:14px;
	}

	.qc-search-tab{
		padding:9px 12px;
		font-size:13px;
		border-radius:6px 6px 0 0;
	}

	.qc-city-results .post-title{
		font-size:22px;
	}
}
.qc-city-results .post-item{
	display:flex;
	gap:20px;
	align-items:flex-start;
	padding:22px 0;
	border-bottom:1px solid #ececec;
}

.qc-city-results .post-thumb{
	flex:0 0 280px;
	max-width:280px;
}

.qc-city-results .post-thumb img{
	width:100%;
	height:auto;
	display:block;
	border-radius:6px;
	object-fit:cover;
	aspect-ratio:16/9;
	background:#f3f4f6;
}

.qc-city-results .post-details{
	flex:1;
	min-width:0;
}

@media (max-width: 767px){
	.qc-city-results .post-item{
		flex-direction:column;
	}

	.qc-city-results .post-thumb{
		flex:none;
		max-width:100%;
		width:100%;
	}
}
.qc-city-results .post-item{
	display:flex;
	gap:20px;
	align-items:flex-start;
	padding:22px 0;
	border-bottom:1px solid #ececec;
}

.qc-city-results .post-thumb{
	flex:0 0 420px;
	max-width:420px;
}

.qc-city-thumb a{
	position:relative;
	display:block;
	overflow:hidden;
	border-radius:6px;
}

.qc-city-results .post-thumb img{
	width:100%;
	display:block;
	aspect-ratio:16/9;
	object-fit:cover;
	background:#f3f4f6;
}

.qc-city-thumb-overlay{
	position:absolute;
	inset:0;
	display:flex;
	align-items:flex-end;
	padding:18px;
	background:linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,.15) 45%, rgba(0,0,0,0));
}

.qc-city-thumb-label{
	display:inline-block;
	color:#fff;
	font-size:28px;
	font-weight:800;
	line-height:1.1;
	text-shadow:0 2px 10px rgba(0,0,0,.35);
}

.qc-city-results .post-details{
	flex:1;
	min-width:0;
}

.qc-city-meta{
	margin:8px 0 14px;
}

.qc-city-badge{
	display:inline-flex;
	align-items:center;
	padding:5px 10px;
	border-radius:999px;
	background:#f3f4f6;
	color:#4b5563;
	font-size:12px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.05em;
}

@media (max-width: 767px){
	.qc-city-results .post-item{
		flex-direction:column;
	}

	.qc-city-results .post-thumb{
		flex:none;
		max-width:100%;
		width:100%;
	}

	.qc-city-thumb-label{
		font-size:22px;
	}
}

/* =======================================================
   RESERVAR ESPACIO PARA BANNER DE CABECERA (EVITA CLS)
   ======================================================= */

/* 🖥️ 1. Altura para Ordenadores (Desktop) */
@media (min-width: 992px) {
    .stream-item-top-wrapper {
        height: 110px !important;
        min-height: 110px !important;
        max-height: 110px !important;
        display: block !important;
        overflow: hidden !important;
        background-color: #ffffff !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
    .stream-item-top-wrapper .stream-item-top,
    .stream-item-top-wrapper .stream-item-size {
        height: 90px !important;
        min-height: 90px !important;
        max-height: 90px !important;
        display: block !important;
        overflow: hidden !important;
        background-color: #ffffff !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* 📑 2. Altura para Tablets */
@media (min-width: 768px) and (max-width: 991px) {
    .stream-item-top-wrapper {
        height: 94px !important;
        min-height: 94px !important;
        max-height: 94px !important;
        display: block !important;
        overflow: hidden !important;
        background-color: #ffffff !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 2px !important;
        padding-bottom: 2px !important;
    }
    .stream-item-top-wrapper .stream-item-top,
    .stream-item-top-wrapper .stream-item-size {
        height: 90px !important;
        min-height: 90px !important;
        max-height: 90px !important;
        display: block !important;
        overflow: hidden !important;
        background-color: #ffffff !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* 📱 3. Altura para Móviles (Ajusta los px al tamaño de tu anuncio móvil fijo) */
@media (max-width: 767px) {
    body, 
    #tie-wrapper, 
    #tie-container, 
    #content, 
    .container-wrapper, 
    #main-content {
        background-color: #ffffff !important;
        background: #ffffff !important;
    }

    .stream-item-top-wrapper {
        height: 94px !important;
        min-height: 94px !important;
        max-height: 94px !important;
        display: block !important;
        overflow: hidden !important;
        background-color: #ffffff !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 4px !important;
        margin-bottom: 4px !important;
        padding-top: 2px !important;
        padding-bottom: 2px !important;
    }
    .stream-item-top-wrapper .stream-item-top,
    .stream-item-top-wrapper .stream-item-size {
        height: 90px !important;
        min-height: 90px !important;
        max-height: 90px !important;
        display: block !important;
        overflow: hidden !important;
        background-color: #ffffff !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

.stream-item-top-wrapper,
.stream-item-top-wrapper .stream-item-top,
.stream-item-top-wrapper .stream-item-size,
.stream-item-top-wrapper ins.adsbygoogle,
.stream-item-top-wrapper iframe {
	box-sizing: border-box !important;
}

.stream-item-top-wrapper .stream-item-top,
.stream-item-top-wrapper .stream-item-size,
.stream-item-top-wrapper ins.adsbygoogle,
.stream-item-top-wrapper .adsbygoogle,
.stream-item-top-wrapper iframe,
.stream-item-top-wrapper iframe[id^="aswift_"],
.stream-item-top-wrapper div[id^="google_ads_iframe"] {
	height: 90px !important;
	min-height: 90px !important;
	max-height: 90px !important;
	overflow: hidden !important;
	display: block !important;
}

.stream-item-top-wrapper .stream-item-size {
	position: relative !important;
}

.stream-item-top-wrapper ins.adsbygoogle,
.stream-item-top-wrapper iframe {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	padding: 0 !important;
	border: 0 !important;
}

@media (max-width: 767px) {
	.stream-item-top-wrapper {
		position: relative !important;
		z-index: 20 !important;
		flex: 0 0 94px !important;
	}
}

/* =========================
   Single Concierto QConciertos
   ========================= */

.qco-concierto-single {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.qco-concierto-hero {
	display: grid;
	grid-template-columns: minmax(0, .94fr) minmax(340px, 1.06fr);
	margin-bottom: 28px;
	overflow: hidden;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #111;
	box-shadow: 0 18px 45px rgba(0,0,0,.16);
}

.qco-concierto-hero-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 340px;
	padding: 34px 40px;
	color: #fff;
	background:
		linear-gradient(135deg, rgba(21,24,27,.97), rgba(35,58,55,.92)),
		#233a37;
}

.qco-concierto-kicker {
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 16px;
	padding: 7px 11px;
	border: 1px solid rgba(227,215,153,.45);
	border-radius: 999px;
	color: #e3d799;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-concierto-title {
	margin: 0;
	color: #fff;
	font-size: 42px;
	line-height: 1.05;
}

.qco-concierto-hero-meta {
	display: grid;
	gap: 10px;
	margin-top: 18px;
	color: rgba(255,255,255,.86);
	font-size: 15px;
	line-height: 1.45;
}

.qco-concierto-hero-meta span {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.qco-concierto-dot {
	flex: 0 0 auto;
	width: 10px;
	height: 10px;
	margin-top: 6px;
	border-radius: 50%;
	background: #e3d799;
	box-shadow: 0 0 0 4px rgba(227,215,153,.16);
}

.qco-concierto-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.qco-concierto-primary-btn,
.qco-concierto-secondary-btn,
.qco-concierto-wide-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none !important;
}

.qco-concierto-primary-btn,
.qco-concierto-wide-btn {
	background: #e3d799;
	color: #172121 !important;
}

.qco-concierto-primary-btn,
.qco-concierto-secondary-btn {
	min-height: 40px;
	padding: 12px 17px;
}

.qco-concierto-secondary-btn {
	border: 1px solid rgba(255,255,255,.26);
	color: #fff !important;
}

.qco-concierto-wide-btn {
	width: 100%;
	min-height: 44px;
	margin-bottom: 14px;
	padding: 13px 18px;
}

.qco-concierto-hero-media {
	position: relative;
	min-height: 340px;
	margin: 0;
	background: #202020;
}

.qco-concierto-hero-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0,0,0,.22), rgba(0,0,0,0) 45%);
	pointer-events: none;
}

.qco-concierto-hero-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-concierto-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
	gap: 26px;
	align-items: start;
}

.qco-concierto-main,
.qco-concierto-panel {
	min-width: 0;
}

.qco-concierto-panel {
	position: sticky;
	top: 92px;
}

.qco-concierto-card {
	margin-bottom: 20px;
	padding: 24px 34px;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0,0,0,.06);
}

.qco-concierto-panel .qco-concierto-card {
	padding: 22px;
}

.qco-concierto-section-title,
.qco-concierto-box-title {
	margin: 0 0 14px;
	color: #172121;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.25;
}

.qco-concierto-section-title {
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(0,0,0,.08);
}

.qco-concierto-content {
	font-size: 16px;
	line-height: 1.72;
}

.qco-concierto-content > :last-child {
	margin-bottom: 0;
}

.qco-concierto-detail-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin: 0;
}

.qco-concierto-detail-list div {
	padding: 14px;
	border-radius: 8px;
	background: #f7f9f9;
}

.qco-concierto-detail-list dt {
	margin-bottom: 5px;
	color: #657171;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-concierto-detail-list dd {
	margin: 0;
	color: #172121;
	font-weight: 800;
	line-height: 1.35;
}

.qco-concierto-detail-list a {
	color: #283a3a !important;
	text-decoration: none !important;
}

.qco-concierto-location-line {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin-bottom: 12px;
	color: #4b5a5a;
	font-size: 14px;
	font-weight: 700;
}

.qco-concierto-location-line span + span::before {
	content: "";
	display: inline-block;
	height: 1em;
	margin: 0 10px;
	border-left: 1px solid #cfd7d7;
	vertical-align: -2px;
}

.qco-concierto-directions {
	display: flex;
	margin-bottom: 14px;
	overflow: hidden;
	border-radius: 20px;
}

.qco-concierto-directions .qconciertos-boton-como-llegar {
	display: inline-block;
	max-width: 150px;
}

.qco-concierto-directions .qconciertos-boton-como-llegar img {
	display: block;
	max-width: 100%;
	height: auto;
}

.qco-concierto-map-wrapper {
	overflow: hidden;
	padding: 2px;
	border-radius: 8px;
	background: #283a3a;
}

.qco-concierto-map-wrapper iframe {
	display: block;
	height: 360px;
}

.qco-concierto-empty {
	margin: 0;
	padding: 18px;
	color: #596565;
	font-weight: 700;
	line-height: 1.5;
}

.qco-concierto-spotify iframe {
	display: block;
}

.qco-concierto-ad {
	overflow: hidden;
}

@media (max-width: 1100px) {
	.qco-concierto-hero {
		grid-template-columns: 1fr;
	}

	.qco-concierto-hero-copy,
	.qco-concierto-hero-media {
		min-height: 260px;
	}
}

@media (max-width: 991px) {
	.qco-concierto-layout {
		grid-template-columns: 1fr;
	}

	.qco-concierto-panel {
		position: static;
	}
}

@media (max-width: 767px) {
	.qco-concierto-hero-copy {
		min-height: auto;
		padding: 24px 20px;
	}

	.qco-concierto-hero-media {
		min-height: 160px;
	}

	.qco-concierto-title {
		font-size: 30px;
	}

	.qco-concierto-card,
	.qco-concierto-panel .qco-concierto-card {
		padding: 20px 22px;
	}

	.qco-concierto-detail-list {
		grid-template-columns: 1fr;
	}
}

/* =========================
   Archivo Ciudad QConciertos
   ========================= */

.qco-ciudad-archive {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.qco-ciudad-hero {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(320px, 1.05fr);
	margin-bottom: 24px;
	overflow: hidden;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #111;
	box-shadow: 0 18px 45px rgba(0,0,0,.16);
}

.qco-ciudad-hero-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 310px;
	padding: 34px 40px;
	color: #fff;
	background:
		linear-gradient(135deg, rgba(17,17,17,.96), rgba(40,58,58,.92)),
		#283a3a;
}

.qco-ciudad-kicker {
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 16px;
	padding: 7px 11px;
	border: 1px solid rgba(227,215,153,.45);
	border-radius: 999px;
	color: #e3d799;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-ciudad-title {
	margin: 0;
	color: #fff;
	font-size: 42px;
	line-height: 1.05;
}

.qco-ciudad-intro {
	max-width: 620px;
	margin: 16px 0 0;
	color: rgba(255,255,255,.84);
	font-size: 16px;
	line-height: 1.6;
}

.qco-ciudad-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}

.qco-ciudad-stats span {
	display: inline-flex;
	padding: 8px 11px;
	border-radius: 999px;
	background: rgba(255,255,255,.1);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
}

.qco-ciudad-hero-media {
	min-height: 310px;
	margin: 0;
	background: #202020;
}

.qco-ciudad-hero-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: #1f1f1f;
}

.qco-ciudad-banners-card {
	display: grid;
	gap: 12px;
	padding: 14px;
}

.qco-ciudad-banner {
	margin: 0;
	overflow: hidden;
	border-radius: 8px;
	background: #111;
	box-shadow: 0 10px 28px rgba(0,0,0,.08);
}

.qco-ciudad-banner img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	background: #1f1f1f;
}

.qco-ciudad-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 370px);
	gap: 26px;
	align-items: start;
}

.qco-ciudad-main,
.qco-ciudad-panel {
	min-width: 0;
}

.qco-ciudad-panel {
	position: sticky;
	top: 92px;
}

.qco-ciudad-card {
	margin-bottom: 20px;
	padding: 24px 30px;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0,0,0,.06);
}

.qco-ciudad-panel .qco-ciudad-card {
	padding: 22px;
}

.qco-ciudad-section-title,
.qco-ciudad-box-title {
	margin: 0 0 14px;
	color: #172121;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.25;
}

.qco-ciudad-section-title {
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(0,0,0,.08);
}

.qco-ciudad-widget-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 14px;
	border-bottom: 1px solid rgba(0,0,0,.08);
}

.qco-ciudad-widget-head .qco-ciudad-section-title,
.qco-ciudad-widget-head .qco-ciudad-box-title {
	margin-bottom: 0;
	border-bottom: 0;
}

.qco-ciudad-widget-head > span {
	color: #687474;
	font-size: 13px;
	font-weight: 900;
}

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

.qco-ciudad-concert-card {
	overflow: hidden;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #f8faf9;
}

.qco-ciudad-concert-card a {
	display: grid;
	grid-template-columns: 82px minmax(0, 1fr);
	gap: 13px;
	min-height: 104px;
	padding: 13px;
	color: inherit !important;
	text-decoration: none !important;
}

.qco-ciudad-concert-thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 82px;
	height: 82px;
	overflow: hidden;
	border-radius: 8px;
	background: #eef1f1;
	color: #283a3a;
	font-size: 24px;
	font-weight: 900;
}

.qco-ciudad-concert-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-ciudad-concert-body {
	display: flex;
	min-width: 0;
	flex-direction: column;
	justify-content: center;
}

.qco-ciudad-concert-date {
	align-self: flex-start;
	margin-bottom: 5px;
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.qco-ciudad-concert-title {
	color: #172121;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.25;
}

.qco-ciudad-concert-meta {
	margin-top: 6px;
	overflow: hidden;
	color: #687474;
	font-size: 13px;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-ciudad-news-list {
	display: grid;
	gap: 12px;
}

.qco-ciudad-news-card {
	overflow: hidden;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 8px;
	background: #f8faf9;
}

.qco-ciudad-news-card a {
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr);
	gap: 14px;
	padding: 13px;
	color: inherit !important;
	text-decoration: none !important;
}

.qco-ciudad-panel .qco-ciudad-news-card a {
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 10px;
	padding: 11px;
}

.qco-ciudad-news-thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 92px;
	height: 92px;
	overflow: hidden;
	border-radius: 8px;
	background: #eef1f1;
	color: #283a3a;
	font-weight: 900;
}

.qco-ciudad-panel .qco-ciudad-news-thumb {
	width: 72px;
	height: 72px;
}

.qco-ciudad-news-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-ciudad-news-body {
	display: flex;
	min-width: 0;
	flex-direction: column;
	justify-content: center;
}

.qco-ciudad-news-date {
	margin-bottom: 5px;
	color: #687474;
	font-size: 12px;
	font-weight: 900;
}

.qco-ciudad-news-title {
	color: #172121;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.25;
}

.qco-ciudad-panel .qco-ciudad-news-title {
	font-size: 14px;
}

.qco-ciudad-news-excerpt {
	margin-top: 6px;
	color: #687474;
	font-size: 13px;
	line-height: 1.4;
}

.qco-ciudad-panel .qco-ciudad-news-excerpt {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.qco-ciudad-content {
	color: #253232;
	font-size: 15px;
	line-height: 1.68;
}

.qco-ciudad-info-card {
	margin-top: 24px;
}

.qco-ciudad-info-card > :not(.qco-ciudad-section-title),
.qco-ciudad-faq-card > :not(.qco-ciudad-section-title) {
	max-width: 780px;
}

.qco-ciudad-content p {
	margin: 0 0 13px;
}

.qco-ciudad-content h2,
.qco-ciudad-content h3,
.qco-ciudad-content h4 {
	margin: 20px 0 8px;
	color: #172121;
	font-weight: 900;
	line-height: 1.22;
}

.qco-ciudad-content h2 {
	font-size: 22px;
}

.qco-ciudad-content h3 {
	font-size: 19px;
}

.qco-ciudad-content h4 {
	font-size: 17px;
}

.qco-ciudad-faq-card p {
	margin-bottom: 10px;
}

.qco-ciudad-faq-card strong,
.qco-ciudad-faq-card b {
	color: #172121;
	font-size: 16px;
	line-height: 1.32;
}

.qco-ciudad-news-widget {
	margin-top: 28px;
}

.qco-ciudad-faq-card {
	margin-top: 28px;
}

.qco-ciudad-info-card + .qco-ciudad-faq-card,
.qco-ciudad-news-widget + .qco-ciudad-faq-card {
	position: relative;
}

.qco-ciudad-info-card + .qco-ciudad-faq-card::before,
.qco-ciudad-news-widget + .qco-ciudad-faq-card::before {
	content: "";
	position: absolute;
	top: -15px;
	left: 24px;
	right: 24px;
	height: 1px;
	background: rgba(40,58,58,.16);
}

.qco-ciudad-salas-list {
	display: grid;
	gap: 10px;
}

.qco-ciudad-sala-link {
	display: grid;
	gap: 7px;
	padding: 12px;
	border-radius: 8px;
	background: #f8faf9;
	color: #172121 !important;
	text-decoration: none !important;
}

.qco-ciudad-sala-name {
	font-weight: 900;
	line-height: 1.25;
}

.qco-ciudad-sala-location,
.qco-ciudad-sala-address {
	display: inline-flex;
	align-self: flex-start;
	max-width: 100%;
	border-radius: 999px;
	line-height: 1.25;
}

.qco-ciudad-sala-location {
	padding: 5px 8px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 12px;
	font-weight: 900;
}

.qco-ciudad-sala-address {
	color: #687474;
	font-size: 12px;
}

.qco-ciudad-ajax-nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid rgba(0,0,0,.08);
}

.qco-ciudad-ajax-nav button {
	min-height: 34px;
	padding: 8px 12px;
	border: 1px solid rgba(40,58,58,.16);
	border-radius: 999px;
	background: #fff;
	color: #283a3a;
	font-weight: 900;
	cursor: pointer;
}

.qco-ciudad-ajax-nav button:disabled {
	opacity: .45;
	cursor: default;
}

.qco-ciudad-ajax-nav span {
	color: #687474;
	font-size: 12px;
	font-weight: 900;
}

.qco-ciudad-concerts-widget.is-loading,
.qco-ciudad-news-widget.is-loading,
.qco-ciudad-salas-widget.is-loading {
	opacity: .55;
	pointer-events: none;
}

.qco-ciudad-empty {
	margin: 0;
	color: #596565;
	font-weight: 700;
	line-height: 1.5;
}

.qco-ciudad-ad {
	overflow: hidden;
}

.qco-ciudad-archive .pagination,
.qco-ciudad-archive .page-numbers {
	margin-top: 18px;
}

@media (max-width: 1100px) {
	.qco-ciudad-hero {
		grid-template-columns: 1fr;
	}

	.qco-ciudad-hero-copy,
	.qco-ciudad-hero-media {
		min-height: 250px;
	}
}

@media (max-width: 991px) {
	.qco-ciudad-layout {
		grid-template-columns: 1fr;
	}

	.qco-ciudad-panel {
		position: static;
	}
}

@media (max-width: 767px) {
	.qco-ciudad-hero-copy {
		min-height: auto;
		padding: 24px 20px;
	}

	.qco-ciudad-hero-media {
		min-height: 155px;
	}

	.qco-ciudad-title {
		font-size: 30px;
	}

	.qco-ciudad-card,
	.qco-ciudad-panel .qco-ciudad-card {
		padding: 20px 22px;
	}

	.qco-ciudad-concert-grid {
		grid-template-columns: 1fr;
	}

	.qco-ciudad-news-card a {
		grid-template-columns: 76px minmax(0, 1fr);
	}

	.qco-ciudad-news-thumb {
		width: 76px;
		height: 76px;
	}

	.qco-ciudad-banners-card {
		padding: 12px;
	}
}

.qco-artista-single {
	background: transparent;
	border: 0;
	box-shadow: none;
}

.qco-artista-hero {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
	overflow: hidden;
	margin: 0 0 28px;
	border-radius: 8px;
	background: #101818;
	box-shadow: 0 18px 44px rgba(0,0,0,.16);
}

.qco-artista-hero-copy {
	display: flex;
	min-height: 355px;
	flex-direction: column;
	justify-content: center;
	padding: 56px 64px;
	background: linear-gradient(135deg, #101818 0%, #1c3432 100%);
	color: #fff;
}

.qco-artista-kicker {
	align-self: flex-start;
	margin-bottom: 18px;
	padding: 7px 12px;
	border: 1px solid rgba(230,207,120,.72);
	border-radius: 999px;
	color: #eadc91;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-artista-title {
	margin: 0;
	color: #fff;
	font-size: 46px;
	font-weight: 900;
	line-height: 1.05;
}

.qco-artista-hero-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin-top: 18px;
	color: rgba(255,255,255,.86);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.45;
}

.qco-artista-hero-meta span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.qco-artista-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #eadc91;
	box-shadow: 0 0 0 4px rgba(234,220,145,.14);
}

.qco-artista-social-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 28px;
}

.qco-artista-social-link {
	display: inline-flex;
	width: 38px;
	height: 38px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255,255,255,.12);
	color: #fff !important;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: transform .18s ease, background .18s ease;
}

.qco-artista-social-link:hover {
	transform: translateY(-2px);
	background: rgba(234,220,145,.24);
}

.qco-artista-social-disabled {
	opacity: .42;
}

.qco-artista-hero-media {
	position: relative;
	min-height: 355px;
	margin: 0;
	background: #1b1b1b;
}

.qco-artista-hero-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(16,24,24,.18), rgba(16,24,24,0) 38%);
	pointer-events: none;
}

.qco-artista-hero-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.qco-artista-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 350px;
	gap: 28px;
	align-items: start;
}

.qco-artista-main,
.qco-artista-panel {
	display: grid;
	gap: 28px;
}

.qco-artista-panel {
	position: sticky;
	top: 24px;
}

.qco-artista-card {
	overflow: hidden;
	padding: 28px 32px;
	border: 1px solid rgba(40,58,58,.12);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(0,0,0,.08);
}

.qco-artista-panel .qco-artista-card {
	padding: 24px 26px;
}

.qco-artista-section-title,
.qco-artista-box-title {
	margin: 0 0 18px;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(40,58,58,.13);
	color: #172121;
	font-weight: 900;
	line-height: 1.2;
}

.qco-artista-section-title {
	font-size: 24px;
}

.qco-artista-box-title {
	font-size: 19px;
}

.qco-artista-widget-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
	border-bottom: 1px solid rgba(40,58,58,.13);
}

.qco-artista-widget-head .qco-artista-section-title,
.qco-artista-widget-head .qco-artista-box-title {
	margin: 0;
	border: 0;
}

.qco-artista-widget-head > span {
	color: #687474;
	font-size: 13px;
	font-weight: 900;
}

.qco-artista-concert-list,
.qco-artista-news-list {
	display: grid;
	gap: 12px;
}

.qco-artista-concert-item a {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 15px 16px;
	border: 1px solid rgba(40,58,58,.12);
	border-radius: 8px;
	background: #fbfcfc;
	color: #172121 !important;
	text-decoration: none !important;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.qco-artista-concert-item a:hover {
	transform: translateY(-1px);
	border-color: rgba(234,220,145,.78);
	box-shadow: 0 10px 24px rgba(0,0,0,.08);
}

.qco-artista-concert-date {
	justify-self: start;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
}

.qco-artista-concert-body {
	display: grid;
	min-width: 0;
	gap: 5px;
}

.qco-artista-concert-title {
	overflow: hidden;
	color: #172121;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-artista-concert-meta {
	overflow: hidden;
	color: #667171;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-artista-concert-ticket {
	padding: 8px 12px;
	border-radius: 999px;
	background: #172121;
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
}

.qco-artista-content {
	max-width: 780px;
	color: #263333;
	font-size: 16px;
	line-height: 1.72;
}

.qco-artista-content p {
	margin: 0 0 14px;
}

.qco-artista-content h2,
.qco-artista-content h3,
.qco-artista-content h4 {
	margin: 22px 0 9px;
	color: #172121;
	font-weight: 900;
	line-height: 1.22;
}

.qco-artista-content h2 {
	font-size: 23px;
}

.qco-artista-content h3 {
	font-size: 20px;
}

.qco-artista-content h4 {
	font-size: 17px;
}

.qco-artista-detail-list {
	display: grid;
	gap: 10px;
	margin: 0;
}

.qco-artista-detail-list div {
	display: grid;
	gap: 5px;
	padding: 12px;
	border-radius: 8px;
	background: #f8faf9;
}

.qco-artista-detail-list dt {
	color: #687474;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-artista-detail-list dd {
	margin: 0;
	color: #172121;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.35;
}

.qco-artista-spotify iframe {
	display: block;
	background: #111;
}

.qco-artista-news-item a {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 10px;
	border-radius: 8px;
	background: #f8faf9;
	color: #172121 !important;
	text-decoration: none !important;
}

.qco-artista-news-thumb {
	display: flex;
	width: 72px;
	height: 72px;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 8px;
	background: #172121;
	color: #eadc91;
	font-weight: 900;
}

.qco-artista-news-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-artista-news-body {
	display: grid;
	min-width: 0;
	gap: 4px;
}

.qco-artista-news-date {
	color: #687474;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.qco-artista-news-title {
	display: -webkit-box;
	overflow: hidden;
	color: #172121;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.qco-artista-ajax-nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid rgba(0,0,0,.08);
}

.qco-artista-ajax-nav button {
	min-height: 34px;
	padding: 8px 12px;
	border: 1px solid rgba(40,58,58,.16);
	border-radius: 999px;
	background: #fff;
	color: #283a3a;
	font-weight: 900;
	cursor: pointer;
}

.qco-artista-ajax-nav button:disabled {
	opacity: .45;
	cursor: default;
}

.qco-artista-ajax-nav span {
	color: #687474;
	font-size: 12px;
	font-weight: 900;
}

.qco-artista-concerts-widget.is-loading,
.qco-artista-news-widget.is-loading {
	opacity: .55;
	pointer-events: none;
}

.qco-artista-empty {
	margin: 0;
	color: #596565;
	font-weight: 700;
	line-height: 1.5;
}

.qco-artista-ad {
	overflow: hidden;
}

@media (max-width: 1100px) {
	.qco-artista-hero {
		grid-template-columns: 1fr;
	}

	.qco-artista-hero-copy,
	.qco-artista-hero-media {
		min-height: 280px;
	}

	.qco-artista-layout {
		grid-template-columns: minmax(0, 1fr) 320px;
	}
}

@media (max-width: 991px) {
	.qco-artista-layout {
		grid-template-columns: 1fr;
	}

	.qco-artista-panel {
		position: static;
	}
}

@media (max-width: 767px) {
	.qco-artista-hero-copy {
		min-height: auto;
		padding: 26px 22px;
	}

	.qco-artista-hero-media {
		min-height: 225px;
	}

	.qco-artista-title {
		font-size: 34px;
	}

	.qco-artista-card,
	.qco-artista-panel .qco-artista-card {
		padding: 20px 22px;
	}

	.qco-artista-concert-item a {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.qco-artista-concert-title,
	.qco-artista-concert-meta {
		white-space: normal;
	}
}

.qco-artistas-archive {
	background: transparent;
	border: 0;
	box-shadow: none;
}

.qco-artistas-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 24px;
	align-items: stretch;
	margin-bottom: 28px;
}

.qco-artistas-hero-copy,
.qco-artistas-hero-stats {
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(0,0,0,.11);
}

.qco-artistas-hero-copy {
	padding: 46px 52px;
	background: linear-gradient(135deg, #101818 0%, #203937 100%);
	color: #fff;
}

.qco-artistas-kicker {
	display: inline-flex;
	margin-bottom: 18px;
	padding: 7px 12px;
	border: 1px solid rgba(230,207,120,.72);
	border-radius: 999px;
	color: #eadc91;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-artistas-title {
	margin: 0;
	color: #fff;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.08;
}

.qco-artistas-hero-copy p {
	max-width: 720px;
	margin: 16px 0 0;
	color: rgba(255,255,255,.84);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.55;
}

.qco-artistas-hero-stats {
	display: grid;
	gap: 12px;
	padding: 28px;
	background: #fff;
}

.qco-artistas-hero-stats span {
	display: grid;
	gap: 4px;
	padding: 16px;
	border-radius: 8px;
	background: #f8faf9;
	color: #687474;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

.qco-artistas-hero-stats strong {
	color: #172121;
	font-size: 28px;
	line-height: 1;
}

.qco-artistas-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 28px;
	align-items: start;
}

.qco-artistas-main,
.qco-artistas-panel {
	display: grid;
	gap: 24px;
}

.qco-artistas-panel {
	position: sticky;
	top: 24px;
}

.qco-artistas-card {
	overflow: hidden;
	padding: 26px 30px;
	border: 1px solid rgba(40,58,58,.12);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(0,0,0,.08);
}

.qco-artistas-panel .qco-artistas-card {
	padding: 22px 24px;
}

.qco-artistas-toolbar {
	display: grid;
	gap: 20px;
}

.qco-artistas-search {
	display: grid;
	gap: 8px;
}

.qco-artistas-search label {
	color: #172121;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
}

.qco-artistas-search div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
}

.qco-artistas-search input[type="search"] {
	width: 100%;
	min-height: 42px;
	padding: 10px 13px;
	border: 1px solid rgba(40,58,58,.16);
	border-radius: 8px;
	background: #fbfcfc;
	color: #172121;
	font-size: 15px;
	font-weight: 700;
}

.qco-artistas-search button {
	min-height: 42px;
	padding: 10px 16px;
	border: 0;
	border-radius: 8px;
	background: #172121;
	color: #fff;
	font-weight: 900;
	cursor: pointer;
}

.qco-artistas-letters {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.qco-artistas-letters a {
	display: inline-flex;
	min-width: 34px;
	min-height: 34px;
	align-items: center;
	justify-content: center;
	padding: 7px 10px;
	border: 1px solid rgba(40,58,58,.13);
	border-radius: 8px;
	background: #f8faf9;
	color: #283a3a !important;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none !important;
}

.qco-artistas-letters a.is-active,
.qco-artistas-letters a:hover {
	border-color: #172121;
	background: #172121;
	color: #fff !important;
}

.qco-artistas-section-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(40,58,58,.13);
}

.qco-artistas-section-head h2,
.qco-artistas-panel h2 {
	margin: 0;
	color: #172121;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.2;
}

.qco-artistas-section-head span {
	color: #687474;
	font-size: 13px;
	font-weight: 900;
	white-space: nowrap;
}

.qco-artistas-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.qco-artistas-item a {
	display: grid;
	height: 100%;
	overflow: hidden;
	border: 1px solid rgba(40,58,58,.12);
	border-radius: 8px;
	background: #fbfcfc;
	color: #172121 !important;
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.qco-artistas-item a:hover {
	transform: translateY(-2px);
	border-color: rgba(234,220,145,.78);
	box-shadow: 0 12px 28px rgba(0,0,0,.1);
}

.qco-artistas-thumb {
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #172121;
}

.qco-artistas-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.qco-artistas-item-body {
	display: grid;
	gap: 9px;
	padding: 18px;
}

.qco-artistas-item-title {
	display: -webkit-box;
	overflow: hidden;
	min-height: 44px;
	color: #172121;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.2;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.qco-artistas-style {
	overflow: hidden;
	color: #687474;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-artistas-excerpt {
	display: -webkit-box;
	overflow: hidden;
	min-height: 63px;
	color: #526060;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.qco-artistas-meta {
	align-self: end;
	justify-self: start;
	padding: 7px 10px;
	border-radius: 999px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.qco-artistas-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 28px;
	padding-top: 18px;
	border-top: 1px solid rgba(40,58,58,.12);
}

.qco-artistas-pagination .page-numbers {
	display: inline-flex;
	min-width: 36px;
	min-height: 36px;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border: 1px solid rgba(40,58,58,.14);
	border-radius: 999px;
	background: #fff;
	color: #283a3a;
	font-weight: 900;
	text-decoration: none !important;
}

.qco-artistas-pagination .page-numbers.current {
	border-color: #172121;
	background: #172121;
	color: #fff;
}

.qco-artistas-empty {
	margin: 0;
	color: #596565;
	font-weight: 700;
	line-height: 1.5;
}

.qco-artistas-featured-list,
.qco-artistas-style-list {
	display: grid;
	gap: 10px;
	margin-top: 16px;
}

.qco-artistas-featured-list a {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 10px;
	border-radius: 8px;
	background: #f8faf9;
	color: #172121 !important;
	text-decoration: none !important;
}

.qco-artistas-featured-thumb {
	display: block;
	width: 58px;
	height: 58px;
	overflow: hidden;
	border-radius: 8px;
	background: #172121;
}

.qco-artistas-featured-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-artistas-featured-list strong,
.qco-artistas-featured-list small {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-artistas-featured-list strong {
	color: #172121;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.3;
}

.qco-artistas-featured-list small {
	margin-top: 3px;
	color: #687474;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
}

.qco-artistas-style-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 12px;
	border-radius: 8px;
	background: #f8faf9;
	color: #172121 !important;
	font-weight: 900;
	line-height: 1.25;
	text-decoration: none !important;
}

.qco-artistas-style-list small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef4f0;
	color: #596565;
	font-size: 12px;
	font-weight: 900;
}

.qco-artistas-ad {
	overflow: hidden;
}

@media (max-width: 1200px) {
	.qco-artistas-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 991px) {
	.qco-artistas-hero,
	.qco-artistas-layout {
		grid-template-columns: 1fr;
	}

	.qco-artistas-panel {
		position: static;
	}
}

@media (max-width: 767px) {
	.qco-artistas-hero-copy {
		padding: 28px 22px;
	}

	.qco-artistas-title {
		font-size: 32px;
	}

	.qco-artistas-hero-copy p {
		font-size: 15px;
	}

	.qco-artistas-card,
	.qco-artistas-panel .qco-artistas-card {
		padding: 20px 22px;
	}

	.qco-artistas-search div,
	.qco-artistas-grid {
		grid-template-columns: 1fr;
	}

	.qco-artistas-search button {
		width: 100%;
	}

	.qco-artistas-section-head {
		display: grid;
		gap: 6px;
	}
}

.qco-estilo-archive {
	background: transparent;
	border: 0;
	box-shadow: none;
}

.qco-estilo-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 24px;
	margin-bottom: 28px;
}

.qco-estilo-hero-copy,
.qco-estilo-stats {
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(0,0,0,.11);
}

.qco-estilo-hero-copy {
	padding: 46px 52px;
	background: linear-gradient(135deg, #101818 0%, #263a32 100%);
	color: #fff;
}

.qco-estilo-kicker {
	display: inline-flex;
	margin-bottom: 18px;
	padding: 7px 12px;
	border: 1px solid rgba(230,207,120,.72);
	border-radius: 999px;
	color: #eadc91;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.qco-estilo-title {
	margin: 0;
	color: #fff;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.08;
}

.qco-estilo-hero-copy p,
.qco-estilo-hero-desc p {
	max-width: 760px;
	margin: 16px 0 0;
	color: rgba(255,255,255,.84);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.55;
}

.qco-estilo-stats {
	display: grid;
	gap: 12px;
	padding: 28px;
	background: #fff;
}

.qco-estilo-stats span {
	display: grid;
	gap: 4px;
	padding: 16px;
	border-radius: 8px;
	background: #f8faf9;
	color: #687474;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

.qco-estilo-stats strong {
	color: #172121;
	font-size: 28px;
	line-height: 1;
}

.qco-estilo-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 28px;
	align-items: start;
}

.qco-estilo-main,
.qco-estilo-panel {
	display: grid;
	gap: 24px;
}

.qco-estilo-panel {
	position: sticky;
	top: 24px;
}

.qco-estilo-card {
	overflow: hidden;
	padding: 28px 32px;
	border: 1px solid rgba(40,58,58,.12);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(0,0,0,.08);
}

.qco-estilo-panel .qco-estilo-card {
	padding: 22px 24px;
}

.qco-estilo-section-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(40,58,58,.13);
}

.qco-estilo-section-head h2,
.qco-estilo-panel h2,
.qco-estilo-content h2 {
	margin: 0;
	color: #172121;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.2;
}

.qco-estilo-section-head span {
	color: #687474;
	font-size: 13px;
	font-weight: 900;
}

.qco-estilo-concert-list {
	display: grid;
	gap: 14px;
}

.qco-estilo-concert a {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 12px;
	border: 1px solid rgba(40,58,58,.12);
	border-radius: 8px;
	background: #fbfcfc;
	color: #172121 !important;
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.qco-estilo-concert a:hover {
	transform: translateY(-1px);
	border-color: rgba(234,220,145,.78);
	box-shadow: 0 10px 24px rgba(0,0,0,.08);
}

.qco-estilo-concert-thumb {
	display: block;
	width: 132px;
	height: 92px;
	overflow: hidden;
	border-radius: 8px;
	background: #172121;
}

.qco-estilo-concert-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.qco-estilo-concert-body {
	display: grid;
	min-width: 0;
	gap: 6px;
}

.qco-estilo-date {
	justify-self: start;
	padding: 6px 9px;
	border-radius: 999px;
	background: #eef4f0;
	color: #283a3a;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
}

.qco-estilo-concert-title {
	overflow: hidden;
	color: #172121;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-estilo-concert-meta {
	overflow: hidden;
	color: #667171;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-estilo-ticket {
	padding: 8px 12px;
	border-radius: 999px;
	background: #172121;
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
}

.qco-estilo-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 24px;
	padding-top: 18px;
	border-top: 1px solid rgba(40,58,58,.12);
}

.qco-estilo-pagination .page-numbers {
	display: inline-flex;
	min-width: 36px;
	min-height: 36px;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border: 1px solid rgba(40,58,58,.14);
	border-radius: 999px;
	background: #fff;
	color: #283a3a;
	font-weight: 900;
	text-decoration: none !important;
}

.qco-estilo-pagination .page-numbers.current {
	border-color: #172121;
	background: #172121;
	color: #fff;
}

.qco-estilo-content div {
	max-width: 780px;
	margin-top: 16px;
	color: #263333;
	font-size: 16px;
	line-height: 1.72;
}

.qco-estilo-content p {
	margin: 0 0 14px;
}

.qco-estilo-content h2,
.qco-estilo-content h3,
.qco-estilo-content h4 {
	margin: 22px 0 9px;
	color: #172121;
	font-weight: 900;
	line-height: 1.22;
}

.qco-estilo-artist-list,
.qco-estilo-related-list {
	display: grid;
	gap: 10px;
	margin-top: 16px;
}

.qco-estilo-artist-list a {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 10px;
	border-radius: 8px;
	background: #f8faf9;
	color: #172121 !important;
	text-decoration: none !important;
}

.qco-estilo-artist-thumb {
	display: block;
	width: 58px;
	height: 58px;
	overflow: hidden;
	border-radius: 8px;
	background: #172121;
}

.qco-estilo-artist-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-estilo-artist-list strong {
	overflow: hidden;
	color: #172121;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-estilo-all-artists {
	display: inline-flex;
	margin-top: 16px;
	padding: 9px 12px;
	border-radius: 999px;
	background: #172121;
	color: #fff !important;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none !important;
}

.qco-estilo-related-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 12px;
	border-radius: 8px;
	background: #f8faf9;
	color: #172121 !important;
	font-weight: 900;
	line-height: 1.25;
	text-decoration: none !important;
}

.qco-estilo-related-list small {
	padding: 4px 7px;
	border-radius: 999px;
	background: #eef4f0;
	color: #596565;
	font-size: 12px;
	font-weight: 900;
}

.qco-estilo-empty {
	margin: 0;
	color: #596565;
	font-weight: 700;
	line-height: 1.5;
}

.qco-estilo-ad {
	overflow: hidden;
}

@media (max-width: 991px) {
	.qco-estilo-hero,
	.qco-estilo-layout {
		grid-template-columns: 1fr;
	}

	.qco-estilo-panel {
		position: static;
	}
}

@media (max-width: 767px) {
	.qco-estilo-hero-copy {
		padding: 28px 22px;
	}

	.qco-estilo-title {
		font-size: 32px;
	}

	.qco-estilo-hero-copy p,
	.qco-estilo-hero-desc p {
		font-size: 15px;
	}

	.qco-estilo-card,
	.qco-estilo-panel .qco-estilo-card {
		padding: 20px 22px;
	}

	.qco-estilo-concert a {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.qco-estilo-concert-thumb {
		width: 96px;
		height: 86px;
	}

	.qco-estilo-ticket {
		grid-column: 1 / -1;
		justify-self: start;
	}

	.qco-estilo-concert-title,
	.qco-estilo-concert-meta {
		white-space: normal;
	}
}




.single-post a[href*="tiktok.com/@qconciertos"] {
	background-color: #006b68 !important;
}

.single-post a[href*="youtube.com/channel/UCnADKScmTJHxNMQNYgkMPhg"] {
	background-color: #bd2822 !important;
}



/* Qconciertos festival templates */
.qco-festival-single .qco-concierto-kicker,
.qco-festivales-archive .qco-artistas-kicker {
	background: rgba(246, 194, 62, .16);
	color: #8a5a00;
}

.qco-festival-artist-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.qco-festival-artist-card {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	min-height: 92px;
	padding: 10px 12px;
	border: 1px solid #e7e2d6;
	border-radius: 8px;
	background: #fff;
	color: #1f2933;
	text-decoration: none !important;
}

.qco-festival-artist-card:hover {
	border-color: #d7a72f;
	box-shadow: 0 8px 18px rgba(31, 41, 51, .08);
	color: #111827;
}

.qco-festival-artist-thumb {
	display: block;
	width: 72px;
	height: 72px;
	overflow: hidden;
	border-radius: 8px;
	background: #f2f2f2;
}

.qco-festival-artist-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.qco-festival-artist-info {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.qco-festival-artist-info strong {
	overflow: hidden;
	color: #172121;
	font-size: 16px;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.qco-festival-artist-info small {
	color: #68727d;
	font-size: 13px;
	line-height: 1.35;
}

@media (max-width: 767px) {
	.qco-festival-artist-grid {
		grid-template-columns: 1fr;
	}
}

.qco-artistas-search select {
	min-height: 42px;
	border: 1px solid #d6d9de;
	border-radius: 6px;
	background: #fff;
	padding: 0 12px;
	font-size: 14px;
	color: #263238;
}

.qco-festival-grid .qco-artistas-thumb {
	background: #f7f2e8;
}

.qco-festival-item .qco-artistas-meta {
	color: #8a5a00;
	font-weight: 700;
}

.qco-rotating-banners-card .qc-banners-wrap {
	margin: 0;
}

.qco-rotating-banners-card .qc-bl-rotator {
	box-shadow: none;
}

/* Hero sizing: keep media from dictating layout and show full images. */
.qco-sala-hero,
.qco-concierto-hero,
.qco-ciudad-hero,
.qco-artista-hero {
	height: 360px;
	align-items: stretch;
}

.qco-estilo-hero {
	min-height: 320px;
	align-items: stretch;
}

.qco-sala-hero-copy,
.qco-sala-hero-media,
.qco-concierto-hero-copy,
.qco-concierto-hero-media,
.qco-ciudad-hero-copy,
.qco-ciudad-hero-media,
.qco-artista-hero-copy,
.qco-artista-hero-media {
	height: 100%;
	min-height: 0;
}

.qco-estilo-hero-copy,
.qco-estilo-stats {
	min-height: 0;
}

.qco-sala-hero-media img,
.qco-concierto-hero-media img,
.qco-ciudad-hero-media img,
.qco-artista-hero-img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	background: #151515;
}

@media (max-width: 680px) {
	.qco-artistas-search select {
		width: 100%;
	}
}

@media (max-width: 1100px) {
	.qco-sala-hero,
	.qco-concierto-hero,
	.qco-ciudad-hero,
	.qco-artista-hero {
		height: auto;
	}

	.qco-sala-hero-copy,
	.qco-concierto-hero-copy,
	.qco-ciudad-hero-copy,
	.qco-artista-hero-copy {
		min-height: 250px;
	}

	.qco-sala-hero-media,
	.qco-concierto-hero-media,
	.qco-ciudad-hero-media,
	.qco-artista-hero-media {
		height: 280px;
		min-height: 0;
	}
}

@media (max-width: 767px) {
	.qco-sala-hero-copy,
	.qco-concierto-hero-copy,
	.qco-ciudad-hero-copy,
	.qco-artista-hero-copy {
		min-height: 0;
	}

	.qco-sala-hero-media,
	.qco-concierto-hero-media,
	.qco-ciudad-hero-media,
	.qco-artista-hero-media {
		height: 210px;
		min-height: 0;
	}

	.qco-estilo-hero {
		min-height: 0;
	}
}

/* ==========================================================================
   APP-LIKE MOBILE OPTIMIZATION OVERRIDES (max-width: 768px)
   ========================================================================== */
@media (max-width: 768px) {
	/* Main body adjustment for bottom navigation spacing */
	body {
		padding-bottom: 70px !important;
	}

	/* Premium Glassy Mobile Header (Adaptive Light/Dark skin) */
	.logo-container,
	.logo-container.fixed-nav {
		background: rgba(255, 255, 255, 0.85) !important;
		backdrop-filter: blur(15px) saturate(180%) !important;
		-webkit-backdrop-filter: blur(15px) saturate(180%) !important;
		border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
	}

	.dark-skin .logo-container,
	.dark-skin .logo-container.fixed-nav {
		background: rgba(31, 32, 36, 0.85) !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
	}

	/* Rounding Post Images & Layout Cleanups (No background override) */
	.posts-list .post-item,
	.mag-box .post-item,
	.post-element,
	.tie-col-xs-12 .post-item {
		border-radius: 12px !important;
		overflow: hidden !important;
	}

	.post-item .post-thumbnail,
	.post-item .post-thumb,
	.post-element .post-thumb img,
	.post-item img {
		border-radius: 10px !important;
		object-fit: cover !important;
	}

	/* Style Section Titles with Brand Yellow/Gold Left Indicator */
	.mag-box-title,
	.block-title,
	.widget-title-wrapper {
		background: transparent !important;
		border: none !important;
		padding-left: 0 !important;
		margin-top: 25px !important;
		margin-bottom: 15px !important;
	}

	.mag-box-title h3,
	.block-title h3,
	.widget-title {
		font-size: 1.1rem !important;
		font-weight: 800 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.03em !important;
		border-left: 4px solid #f8d96b !important; /* Left border in brand yellow */
		padding-left: 10px !important;
		display: inline-block !important;
	}
}

/* Keep the mobile footer dark; earlier mobile ad wrappers force .container-wrapper white. */
@media (max-width: 767px) {
	#footer,
	.site-footer {
		background: #151515 !important;
		background-color: #151515 !important;
	}

	#footer .container-wrapper,
	#footer .footer-widget-area,
	#footer .widget,
	#footer .widget-content-only,
	#footer .widget-title-wrapper {
		background: transparent !important;
		background-color: transparent !important;
		box-shadow: none !important;
	}

	#site-info,
	.site-info {
		background: #161619 !important;
		background-color: #161619 !important;
		color: #d7d7dc !important;
	}

	#footer,
	#footer a:not(:hover),
	#site-info,
	#site-info a:not(:hover) {
		color: #d7d7dc !important;
	}
}

/* Sobre QConciertos */
body.page-id-1103.qco-p2{background:#eef1f2!important}
.qco-about-shell{padding:30px 0 48px}
.qco-about-main{width:100%;background:#fff;border:1px solid rgba(0,0,0,.08);padding:30px;min-width:0}
.qco-about-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin:0 0 24px;padding:30px;background:#162121;color:#fff;border-top:3px solid #e0d598}
.qco-about-kicker{display:block;margin:0 0 7px;color:#e0d598;font-size:12px;font-weight:800;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}
.qco-about-hero h1{margin:0;color:#fff;font-size:32px;line-height:1.18;font-weight:760;letter-spacing:0}
.qco-about-hero p{max-width:760px;margin:12px 0 0;color:#d7dddd;font-size:15px;line-height:1.62}
.qco-about-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:10px;min-width:350px}
.qco-about-hero-stat{padding:12px 14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06)}
.qco-about-hero-stat strong{display:block;color:#fff;font-size:19px;line-height:1.05;font-weight:800;letter-spacing:0}
.qco-about-hero-stat span{display:block;margin-top:5px;color:#c8d0d0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.qco-about-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:26px;margin-bottom:30px;align-items:stretch}
.qco-about-copy{padding:26px;border:1px solid rgba(22,33,33,.1);background:#f8faf9}
.qco-about-copy p{margin:0 0 16px;color:#334141;font-size:15px;line-height:1.78}
.qco-about-copy p:last-child{margin-bottom:0}
.qco-about-visual{position:relative;min-height:300px;overflow:hidden;background:#162121}
.qco-about-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.qco-about-visual span{position:absolute;left:18px;bottom:18px;padding:8px 12px;background:#e0d598;color:#162121;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.qco-about-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:32px}
.qco-about-stat{padding:18px;border:1px solid rgba(22,33,33,.1);border-top:3px solid #e0d598;background:#fff;text-align:center}
.qco-about-stat strong{display:block;color:#162121;font-size:26px;line-height:1;font-weight:800}
.qco-about-stat span{display:block;margin-top:6px;color:#647070;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.qco-about-section{margin-bottom:32px}
.qco-about-section:last-child{margin-bottom:0}
.qco-about-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px;border-bottom:2px solid rgba(0,0,0,.08)}
.qco-about-section-head h2{display:inline-block;margin:0;padding-bottom:9px;border-bottom:2px solid #e0d598;color:#162121;font-size:22px;line-height:1.3;font-weight:800}
.qco-about-section-head p{max-width:620px;margin:0 0 9px;color:#647070;font-size:13px;line-height:1.6}
.qco-about-mission,.qco-about-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.qco-about-mission-card{padding:24px;background:#162121;color:#fff;border-top:3px solid #e0d598}
.qco-about-mission-card h3{margin:0 0 9px;color:#e0d598;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.qco-about-mission-card p{margin:0;color:#d7dddd;font-size:14px;line-height:1.72}
.qco-about-story-lede{padding:24px;margin-bottom:16px;background:#162121;color:#fff;border-top:3px solid #e0d598}
.qco-about-story-lede p{margin:0;color:#d7dddd;font-size:15px;line-height:1.75}
.qco-about-story-grid,.qco-about-web-grid,.qco-about-network{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.qco-about-finder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.qco-about-find,.qco-about-network-card{padding:20px;border:1px solid rgba(22,33,33,.1);background:#fff}
.qco-about-find h3,.qco-about-network-card h3{margin:0 0 8px;color:#162121;font-size:16px;line-height:1.3;font-weight:800}
.qco-about-find p,.qco-about-network-card p{margin:0;color:#4d5a5a;font-size:13px;line-height:1.65}
.qco-about-work{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:22px;align-items:start}
.qco-about-map-card{padding:24px;background:#f8faf9;border:1px solid rgba(22,33,33,.1)}
.qco-about-map-card img{width:120px;height:120px;margin:0 0 16px;object-fit:contain}
.qco-about-map-card h3{margin:0 0 8px;color:#162121;font-size:18px;font-weight:800}
.qco-about-map-card p{margin:0;color:#334141;font-size:14px;line-height:1.75}
.qco-about-steps{display:grid;gap:10px}
.qco-about-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:16px;border:1px solid rgba(22,33,33,.1);background:#fff}
.qco-about-step-num{display:flex;width:34px;height:34px;align-items:center;justify-content:center;background:#162121;color:#e0d598;font-size:14px;font-weight:800}
.qco-about-step h3{margin:0 0 4px;color:#162121;font-size:15px;font-weight:800}
.qco-about-step p{margin:0;color:#4d5a5a;font-size:13px;line-height:1.62}
.qco-about-panel{padding:24px;border:1px solid rgba(22,33,33,.1);background:#fff}
.qco-about-panel.is-muted{background:#f8faf9}
.qco-about-panel h2,.qco-about-panel h3{margin:0 0 10px;color:#162121;font-size:20px;line-height:1.3;font-weight:800}
.qco-about-panel h3{font-size:16px}
.qco-about-panel p{margin:0 0 14px;color:#334141;font-size:14px;line-height:1.72}
.qco-about-panel p:last-child{margin-bottom:0}
.qco-about-panel ul{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}
.qco-about-panel li{padding:10px 12px;border-left:3px solid #e0d598;background:#fff;color:#334141;font-size:13px;line-height:1.45}
.qco-about-panel a{color:#7a6c19;text-decoration:underline;text-underline-offset:3px}
.qco-about-philosophy{padding:26px;background:#162121;color:#fff;border-top:3px solid #e0d598}
.qco-about-philosophy p{margin:0 0 16px;color:#d7dddd;font-size:15px;line-height:1.78}
.qco-about-philosophy p:last-child{margin-bottom:0}
.qco-about-philosophy strong{color:#fff}
.qco-about-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px;background:#e0d598;margin-top:32px}
.qco-about-cta h2{margin:0 0 5px;color:#162121;font-size:20px;font-weight:800}
.qco-about-cta p{margin:0;color:#3a3a1a;font-size:13px;line-height:1.6}
.qco-about-cta-btns{display:flex;gap:10px;flex-shrink:0}
.qco-about-btn{display:inline-flex;align-items:center;min-height:42px;padding:0 20px;font-weight:800;font-size:13px;text-decoration:none!important;white-space:nowrap}
.qco-about-btn.is-primary{background:#162121;color:#e0d598!important}
.qco-about-btn.is-secondary{border:2px solid #162121;color:#162121!important}
.qco-about-btn.is-secondary:hover{background:#162121;color:#e0d598!important}
@media(max-width:1180px){.qco-about-finder{grid-template-columns:repeat(2,minmax(0,1fr))}.qco-about-work{grid-template-columns:1fr}.qco-about-story-grid,.qco-about-web-grid,.qco-about-network{grid-template-columns:1fr}}
@media(max-width:991px){.qco-about-hero{grid-template-columns:1fr}.qco-about-hero-stats{min-width:0}.qco-about-intro,.qco-about-mission,.qco-about-split{grid-template-columns:1fr}.qco-about-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.qco-about-section-head{align-items:start;flex-direction:column;gap:6px}.qco-about-section-head p{margin-bottom:9px}.qco-about-cta{grid-template-columns:1fr}}
@media(max-width:767px){.qco-about-shell{padding:18px 0 30px}.qco-about-main{padding:16px;border-left:0;border-right:0}.qco-about-hero{padding:18px;margin-bottom:16px}.qco-about-hero h1{font-size:24px}.qco-about-hero p{font-size:14px}.qco-about-hero-stats,.qco-about-finder,.qco-about-stats{grid-template-columns:1fr}.qco-about-copy,.qco-about-panel,.qco-about-map-card,.qco-about-mission-card,.qco-about-story-lede,.qco-about-philosophy{padding:16px}.qco-about-visual{min-height:220px}.qco-about-cta{padding:18px}.qco-about-cta-btns{flex-direction:column;align-items:stretch}.qco-about-btn{justify-content:center}}
