/**
* 2007-2025 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author    PrestaShop SA <contact@prestashop.com>
*  @copyright 2007-2025 PrestaShop SA
*  @license   http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*
* Don't forget to prefix your containers with your own identifier
* to avoid any conflicts with others containers.
*/
:root{
	
}

/*DETALLE DE CENTRO*/

img#foto-principal{
    width:100%;
    height:400px;
}
.galeria-thumbnails{
	margin-top: 10px;
    display:flex;
    gap:10px;
}
.thumbnail-item img{
    width:100px;
    height:100px;
}
/* Foto principal */
img#foto-principal {
    width: 100%;
    object-fit: cover;
    border-radius: 8px;
    transition: opacity 0.3s ease;
}

/* Contenedor del slider con botones */
.galeria-thumbnails-container {
    position: relative;
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Slider de miniaturas */
.galeria-thumbnails {
    display: flex;
    gap: 10px;
    overflow-x: hidden;
    overflow-y: hidden;
    scroll-behavior: smooth;
    flex: 1;
    padding: 5px 0;
    position: relative;
}

/* Items del slider */
.thumbnail-item {
    flex-shrink: 0;
    cursor: pointer;
    border-radius: 16px;
    overflow: hidden;
    border: 3px solid transparent;
    transition: all 0.3s ease;
    position: relative;
    width: 80px;
    height: 80px;
}

.thumbnail-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 12px rgba(21, 24, 48, 0.3);
    border-color: rgba(21, 24, 48, 0.4);
}

/* Estado activo de la miniatura */
.thumbnail-item.active {
    border-color: #151830;
}

.thumbnail-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 13px; /* 16px - 3px del borde */
}

/* Indicador de foto activa - overlay sutil */
.thumbnail-item.active::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(21, 24, 48, 0.15);
    pointer-events: none;
    border-radius: 13px;
}

/* Botones del slider */
.slider-btn {
    background: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    flex-shrink: 0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    z-index: 10;
    color: #666;
}

.slider-btn:hover:not(:disabled) {
    background: #151830;
    color: #ffffff;
    border-color: #151830;
    box-shadow: 0 4px 12px rgba(21, 24, 48, 0.3);
    transform: scale(1.08);
}

.slider-btn:active:not(:disabled) {
    transform: scale(0.96);
    box-shadow: 0 2px 6px rgba(21, 24, 48, 0.2);
}

.slider-btn:disabled {
    opacity: 0.25;
    cursor: not-allowed;
    background: #f5f5f5;
    border-color: #e0e0e0;
    color: #999;
}

.slider-btn:disabled:hover {
    transform: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.slider-btn .material-icons {
    font-size: 26px;
    line-height: 1;
}

/* Placeholder sin fotos */
.galeria-sin-fotos {
    width: 100%;
    height: 300px;
    background: linear-gradient(135deg, #151830 0%, #2a2d4a 100%);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

/* Scrollbar personalizada (opcional) */
.galeria-thumbnails::-webkit-scrollbar {
    height: 0px;
}

/* Responsive */
@media (max-width: 768px) {
    img#foto-principal {
        height: 250px;
    }
    
    .thumbnail-item {
        width: 80px;
        height: 80px;
    }
    
    .thumbnail-item img {
        border-radius: 10px; /* Ajustado proporcionalmente */
    }
    
    .thumbnail-item.active::after {
        border-radius: 10px;
    }
    
    .slider-btn {
        width: 38px;
        height: 38px;
    }
    
    .slider-btn .material-icons {
        font-size: 22px;
    }
}

@media (max-width: 480px) {
    img#foto-principal {
        height: 200px;
    }
    
    .thumbnail-item {
        width: 70px;
        height: 70px;
        border-radius: 12px;
    }
    
    .thumbnail-item img {
        border-radius: 9px;
    }
    
    .thumbnail-item.active::after {
        border-radius: 9px;
    }
    
    .galeria-thumbnails {
        gap: 8px;
    }
    
    .galeria-thumbnails-container {
        gap: 8px;
    }
    
    .slider-btn {
        width: 34px;
        height: 34px;
    }
    
    .slider-btn .material-icons {
        font-size: 20px;
    }
}

/* ====== DETALLE DE CENTRO ====== */
/* Azul de marca yogaes: #151830 */
.centro-detalle{
	color:#151830;
}
.centro-detalle .cd-breadcrumb{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:6px;
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	color:#151830;
	margin-bottom:24px;
}
.centro-detalle .cd-breadcrumb a{
	color:#151830;
	text-decoration:none;
	font-weight:500;
}
.centro-detalle .cd-breadcrumb a:hover{ text-decoration:underline; }
.centro-detalle .cd-breadcrumb-sep{
	color:#9199b0;
	font-weight:400;
}
.centro-detalle .cd-breadcrumb span:last-child{
	color:#9199b0;
	font-weight:400;
}

/* Cabecera */
.centro-detalle .cd-header{
	display:flex;
	flex-direction:row;
	align-items:center;
	gap: 50px;
	background:#fff;
	border:1px solid #e3e6ef;
	border-radius:16px;
	padding:24px;
	margin-bottom:24px;
}
.centro-detalle .cd-header-logo img,
.centro-detalle .cd-header-logo .cd-logo-ph{
	width: 120px;
	height: 120px;
	flex-shrink:0;
	object-fit:contain;
	background:#fff;
	border:1px solid #e3e6ef;
	border-radius:14px;
	padding:6px;
}
.centro-detalle .cd-header-logo .cd-logo-ph{
	display:flex;
	align-items:center;
	justify-content:center;
	color:#151830;
	background:#f4f5f9;
}
.centro-detalle .cd-header-logo .cd-logo-ph .material-icons{ font-size:44px; }
.centro-detalle .cd-header-info{ flex-grow:1; }
.centro-detalle .cd-title{
	font-family:"Helvetica neue",sans-serif;
	font-weight:600;
	font-size:28px;
	line-height:115%;
	margin:0 0 12px;
	color:#151830;
}
.centro-detalle .cd-tags{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}
.centro-detalle .cd-tag{
	font-family:"Helvetica neue",sans-serif;
	font-size:12px;
	font-weight:500;
	color:#151830;
	background:#f0f1f6;
	border-radius:999px;
	padding:5px 12px;
}
.centro-detalle .cd-quick{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-bottom: 12px;
}
.centro-detalle .cd-quick a{
	display:inline-flex;
	align-items:center;
	gap:6px;
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	font-weight:500;
	color:#151830;
	text-decoration:none;
	border:1px solid #151830;
	border-radius:10px;
	padding:8px 14px;
	transition:all .2s ease;
}
.centro-detalle .cd-quick a:hover{ background:#151830; color:#fff; }
.centro-detalle .cd-quick a .material-icons{ font-size:18px; }

/* Cuerpo: galería + barra lateral */
.centro-detalle .cd-body{
	display:grid;
	grid-template-columns: 1fr 1fr;
	gap:24px;
	align-items:start;
	margin-bottom:24px;
}
.centro-detalle .cd-gallery #foto-principal{
	width:100%;
	height: 520px;
	object-fit:cover;
	border-radius:16px;
	display:block;
}
.centro-detalle .cd-gallery .galeria-sin-fotos{ border-radius:16px; }

/* Tarjetas de información */
.centro-detalle .cd-card{
	background:#fff;
	border:1px solid #e3e6ef;
	border-radius:16px;
	padding:24px;
}
.centro-detalle .cd-sidebar .cd-card + .cd-card{ margin-top:16px; }
.centro-detalle .cd-card h3{
	font-family:"Helvetica neue",sans-serif;
	text-transform:uppercase;
	letter-spacing:.04em;
	font-size:13px;
	font-weight:600;
	color:#A1A2AB;
	margin:0 0 14px;
}
.centro-detalle .cd-field{ margin-bottom:12px; }
.centro-detalle .cd-field:last-child{ margin-bottom:0; }
.centro-detalle .cd-field .cd-label{
	display:block;
	font-size:12px;
	color:#A1A2AB;
	margin-bottom:2px;
}
.centro-detalle .cd-card p{
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	line-height:140%;
	color:#151830;
	margin:0;
}
.centro-detalle .cd-card p a{ color:#151830; }
.centro-detalle .cd-card .cd-map-link{
	display:inline-flex;
	align-items:center;
	gap:6px;
	margin-top:10px;
	font-size:14px;
	font-weight:500;
	color:#151830;
	text-decoration:none;
}
.centro-detalle .cd-card .cd-map-link:hover{ text-decoration:underline; }
.centro-detalle .cd-card .cd-map-link .material-icons{ font-size:18px; }

/* Texto de "Sobre nosotros" (en la tarjeta del sidebar) */
.centro-detalle .cd-text{
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	line-height:160%;
	color:#151830;
}
.centro-detalle .cd-text p{ margin:0 0 10px; }
.centro-detalle .cd-text p:last-child{ margin-bottom:0; }

/* Responsive */
@media (max-width:991px){
	.centro-detalle .cd-body{ grid-template-columns:1fr; }
	.centro-detalle .cd-gallery #foto-principal{ height:340px; }
	.galeria-thumbnails-container{ max-width:100%; }
}
@media (max-width:576px){
	.centro-detalle .cd-header{
		flex-direction:column;
		align-items:flex-start;
	}
	.centro-detalle .cd-title{ font-size:24px; }
	.centro-detalle .cd-gallery #foto-principal{ height:240px; }
}
/*SOLICITAR CENTRO*/
/* Azul de marca yogaes: #151830 */
.solicitar-centro-container{
	max-width:780px;
	margin:0 auto;
}
.solicitar-centro-container .solicitar-centro-header{
	margin-bottom:24px;
}
.solicitar-centro-container .solicitar-centro-header h1{
	font-family:"Helvetica neue",sans-serif;
	font-weight:600;
	font-size:32px;
	line-height:115%;
	color:#151830;
	margin:0;
}
.solicitar-centro-container .solicitar-centro-header h1 .fa{
	color:#151830;
	margin-right:8px;
}

/* Tarjetas (panels) */
.solicitar-centro-form .panel{
	background:#fff;
	border:1px solid #e3e6ef;
	border-radius:16px;
	margin-bottom:20px;
	overflow:hidden;
}
.solicitar-centro-form .panel-heading{
	padding:18px 24px;
	border-bottom:1px solid #eef0f5;
}
.solicitar-centro-form .panel-title{
	font-family:"Helvetica neue",sans-serif;
	font-weight:600;
	font-size:15px;
	text-transform:uppercase;
	letter-spacing:.03em;
	color:#151830;
	margin:0;
}
.solicitar-centro-form .panel-title .fa{ margin-right:8px; }
.solicitar-centro-form .panel-body{ padding:24px; }

/* Campos */
.solicitar-centro-form .form-group{ margin-bottom:18px; }
.solicitar-centro-form .panel-body .form-group:last-child{ margin-bottom:0; }
.solicitar-centro-form label{
	display:block;
	font-family:"Helvetica neue",sans-serif;
	font-weight:600;
	font-size:14px;
	color:#151830;
	margin-bottom:6px;
	text-align:left;
}
.solicitar-centro-form label .required{ color:#d64541; }
.solicitar-centro-form .form-control{
	width:100%;
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	color:#151830;
	background:#fff;
	border:1px solid #cdd3e0;
	border-radius:12px;
	padding:11px 14px;
	transition:border-color .2s ease, box-shadow .2s ease;
}
.solicitar-centro-form textarea.form-control{ resize:vertical; min-height:110px; }
.solicitar-centro-form .form-control:focus{
	outline:none;
	border-color:#151830;
	box-shadow:0 0 0 3px rgba(21,24,48,0.12);
}
.solicitar-centro-form input[type="file"].form-control{
	padding:9px 14px;
	background:#f7f8fb;
	cursor:pointer;
}
.solicitar-centro-form .form-control.is-invalid{
	border-color:#d64541;
	box-shadow:0 0 0 3px rgba(214,69,65,0.12);
}
.solicitar-centro-form .help-block{
	display:block;
	font-size:12px;
	color:#A1A2AB;
	margin-top:6px;
}

/* Botones */
.solicitar-centro-form .action-buttons{
	display:flex !important;
	flex-direction:row !important;
	justify-content:flex-start !important;
	gap:12px;
	flex-wrap:wrap;
}
.solicitar-centro-form .action-buttons .submit-button{
	order:0;
	margin-right:0;
	float:none !important;
}
.solicitar-centro-form .action-buttons .back-button{
	order:1;
}
.solicitar-centro-form .submit-button{
	display:inline-flex;
	align-items:center;
	gap:8px;
	border:2px solid #151830;
	border-radius:14px;
	color:#fff;
	background-color:#151830;
	padding:13px 32px;
	font-family:"Helvetica neue",sans-serif;
	font-size:16px;
	font-weight:600;
	cursor:pointer;
	transition:all .2s ease;
}
.solicitar-centro-form .submit-button:hover{
	background-color:#fff;
	color:#151830;
}
.solicitar-centro-form .back-button{
	display:inline-flex;
	align-items:center;
	gap:8px;
	background-color:#f2f2f2;
	border:2px solid #f2f2f2;
	border-radius:14px;
	padding:13px 32px;
	font-family:"Helvetica neue",sans-serif;
	font-size:16px;
	font-weight:500;
	color:#151830;
	text-decoration:none;
	transition:all .2s ease;
}
.solicitar-centro-form .back-button:hover{
	background-color:#e6e7ec;
	border-color:#e6e7ec;
}

/* Alertas */
.solicitar-centro-container .alert{
	border-radius:14px;
	padding:18px 20px;
	border:1px solid transparent;
}
.solicitar-centro-container .alert-success{
	background:#eaf7ef;
	border-color:#bfe6cd;
	color:#1e6b3a;
}
.solicitar-centro-container .alert-danger{
	background:#fdecec;
	border-color:#f5c6c4;
	color:#a02622;
}
.solicitar-centro-container .alert h4{ margin-top:0; font-weight:600; }
.solicitar-centro-container .alert ul{ margin:8px 0 0; padding-left:20px; }

@media (max-width:576px){
	.solicitar-centro-container .solicitar-centro-header h1{ font-size:26px; }
	.solicitar-centro-form .action-buttons{ flex-direction:column; }
	.solicitar-centro-form .submit-button,
	.solicitar-centro-form .back-button{ justify-content:center; width:100%; }
}
/*LISTADO DE CENTROS*/
/* Azul de marca yogaes: #151830 */

.listado-centros .header{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:16px;
	margin-bottom:32px;
}
.listado-centros .header .page-title h1{
	font-family: "Helvetica neue",sans-serif;
	font-weight:500;
	font-size:32px;
	line-height:110%;
	letter-spacing:0%;
	color:#151830;
	margin:0;
}

/* Botón destacado "Añade tu centro" */
.listado-centros .header .page-filters .btn-add-centro{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-family: "Helvetica neue",sans-serif;
	font-size:16px;
	font-weight:600;
	color:#fff;
	background-color:#151830;
	padding:12px 24px;
	border-radius:12px;
	border:2px solid #151830;
	text-decoration:none;
	box-shadow:0 4px 12px rgba(21,24,48,0.25);
	transition:all 0.25s ease;
}
.listado-centros .header .page-filters .btn-add-centro:hover{
	background-color:#fff;
	color:#151830;
	box-shadow:0 6px 16px rgba(21,24,48,0.30);
	transform:translateY(-2px);
}
.listado-centros .header .page-filters .btn-add-centro .material-icons{
	font-size:20px;
}

/* Filtro por provincia */
.listado-centros .centros-controles{
	display:flex;
	align-items:center;
	gap:28px;
	flex-wrap:wrap;
	margin-bottom:24px;
}
.listado-centros .centros-filtros{
	display:flex;
	align-items:center;
	gap:16px;
	flex-wrap:wrap;
}
.listado-centros .centros-filtros label{
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	font-weight:600;
	color:#151830;
}
.listado-centros .centros-filtros select{
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	color:#151830;
	background:#fff;
	border:1px solid #151830;
	border-radius:12px;
	padding:10px 16px;
	min-width:260px;
	cursor:pointer;
}
.listado-centros .centros-filtros select:focus{
	outline:none;
	box-shadow:0 0 0 3px rgba(21,24,48,0.15);
}
.listado-centros .centros-filtros .filtro-clear{
	display:inline-flex;
	align-items:center;
	gap:4px;
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	color:#151830;
	text-decoration:none;
}
.listado-centros .centros-filtros .filtro-clear:hover{
	text-decoration:underline;
}
.listado-centros .centros-filtros .filtro-clear .material-icons{
	font-size:18px;
}

/* Buscador por población / código postal */
.listado-centros .centros-buscador{
	display:flex;
	align-items:center;
	gap:16px;
	flex-wrap:wrap;
}
.listado-centros .centros-buscador label{
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	font-weight:600;
	color:#151830;
}
.listado-centros .centros-buscador .buscador-campo{
	display:flex;
	align-items:stretch;
	background:#fff;
	border:1px solid #151830;
	border-radius:12px;
	overflow:hidden;
}
.listado-centros .centros-buscador .buscador-campo:focus-within{
	box-shadow:0 0 0 3px rgba(21,24,48,0.15);
}
.listado-centros .centros-buscador input[type="text"]{
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	color:#151830;
	border:0;
	outline:none;
	background:transparent;
	padding:10px 16px;
	min-width:220px;
}
.listado-centros .centros-buscador button{
	display:flex;
	align-items:center;
	justify-content:center;
	border:0;
	background:#151830;
	color:#fff;
	padding:0 16px;
	cursor:pointer;
	transition:background 0.2s ease;
}
.listado-centros .centros-buscador button:hover{
	background:#2a2f52;
}
.listado-centros .centros-buscador button .material-icons{
	font-size:20px;
}
.listado-centros .centros-buscador .filtro-clear{
	display:inline-flex;
	align-items:center;
	gap:4px;
	font-family:"Helvetica neue",sans-serif;
	font-size:14px;
	color:#151830;
	text-decoration:none;
}
.listado-centros .centros-buscador .filtro-clear:hover{
	text-decoration:underline;
}
.listado-centros .centros-buscador .filtro-clear .material-icons{
	font-size:18px;
}

/* Grilla de 3 en 3 */
.listado-centros .centros-grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:24px;
}

/* Tarjeta de centro */
.listado-centros .centro-card{
	display:flex;
	flex-direction:column;
	background:#fff;
	border:1px solid #d6e6ef;
	border-radius:16px;
	padding:24px;
	text-decoration:none;
	color:#151830;
	transition:all 0.25s ease;
}
.listado-centros .centro-card:hover{
	border-color:#151830;
	box-shadow:0 8px 24px rgba(21,24,48,0.12);
	transform:translateY(-3px);
}

/* Centro destacado: fondo crema muy suave + borde azul de marca (sutil) */
.listado-centros .centro-card--destacado{
	background:#fbf8f1;
	border-color:#151830;
	box-shadow:0 4px 16px rgba(21,24,48,0.10);
}
.listado-centros .centro-card--destacado:hover{
	border-color:#151830;
	box-shadow:0 10px 26px rgba(21,24,48,0.16);
}

/* Cabecera de la tarjeta: logo + nombre */
.listado-centros .centro-card .centro-card-head{
	display:flex;
	flex-direction:row;
	align-items:center;
	gap:16px;
	padding-bottom:16px;
	margin-bottom:16px;
	border-bottom:2px solid #151830;
}
.listado-centros .centro-card .centro-logo{
	width: 80px;
	height: 80px;
	flex-shrink:0;
	object-fit:contain;
	background:#fff;
	border:1px solid #e5eef3;
	border-radius:12px;
	padding:4px;
}
.listado-centros .centro-card .centro-sin-logo{
	display:flex;
	align-items:center;
	justify-content:center;
	color:#151830;
	background:#f2f8fb;
}
.listado-centros .centro-card .centro-sin-logo .material-icons{
	font-size:32px;
}
.listado-centros .centro-card .centro-nombre{
	font-family:"Helvetica neue",sans-serif;
	font-weight:600;
	font-size:18px;
	line-height:120%;
	margin:0;
	color:#151830;
}

/* Cuerpo de la tarjeta */
.listado-centros .centro-card .centro-card-body{
	display:flex;
	flex-direction:column;
	gap:12px;
}
.listado-centros .centro-card .centro-disciplinas{
	font-family:"Helvetica neue",sans-serif;
	font-size:13px;
	line-height:140%;
	color:#5B5D6E;
	margin:0;
}
.listado-centros .centro-card .centro-datos{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:6px;
}
.listado-centros .centro-card .centro-datos li{
	font-family:"Helvetica neue",sans-serif;
	font-size:13px;
	line-height:130%;
	color:#151830;
}
.listado-centros .centro-card .centro-datos .dato-label{
	font-weight:600;
	color:#151830;
}

/* Secciones de la home de centros (Nuevos / Destacados) */
.listado-centros .centros-seccion{
	margin-top:56px;
}
/* Título de sección: algo más pequeño que el H1 de cabecera (32px),
   con aire por encima (respecto a la sección anterior) y por debajo
   (respecto a la grilla de tarjetas). */
.listado-centros .centros-seccion-titulo{
	font-family:"Helvetica neue",sans-serif;
	font-weight:600;
	font-size:26px;
	line-height:120%;
	color:#151830;
	margin:0 0 32px;
	padding-bottom:14px;
	border-bottom:2px solid #d6e6ef;
}

/* La tarjeta es contenedor del badge de destacado */
.listado-centros .centro-card{
	position:relative;
}
.listado-centros .centro-badge-destacado{
	position:absolute;
	top:12px;
	right:12px;
	display:inline-flex;
	align-items:center;
	gap:4px;
	background:#151830;
	color:#fff;
	font-family:"Helvetica neue",sans-serif;
	font-size:11px;
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:.03em;
	padding:4px 10px;
	border-radius:999px;
	line-height:1;
}
.listado-centros .centro-badge-destacado .material-icons{
	font-size:14px;
}

/* Zona de contenido Element Flow (custom hook) al pie de las páginas */
.centros-hook-content:not(:empty),
.centro-detalle-hook-content:not(:empty){
	margin-top:56px;
}

/* Paginación */
.listado-centros .pagination-container{
	display:flex;
	justify-content:center;
	margin-top:40px;
}
.listado-centros .pagination{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:8px;
	list-style:none;
	padding:0;
	margin:0;
}
.listado-centros .pagination .page-link{
	display:flex;
	align-items:center;
	justify-content:center;
	min-width:40px;
	height:40px;
	padding:0 12px;
	border:1px solid #d6e6ef;
	border-radius:10px;
	color:#151830;
	text-decoration:none;
	font-family:"Helvetica neue",sans-serif;
	transition:all 0.2s ease;
}
.listado-centros .pagination .page-link:hover{
	background:#151830;
	color:#fff;
	border-color:#151830;
}
.listado-centros .pagination .page-item.active .page-link{
	background:#151830;
	color:#fff;
	border-color:#151830;
	cursor:default;
}
/* Elipsis (…) entre rangos de páginas */
.listado-centros .pagination .page-item.disabled .page-link{
	border-color:transparent;
	background:transparent;
	color:#9aa3b2;
	cursor:default;
}

/* Responsive */
@media (max-width:991px){
	.listado-centros .header{
		flex-direction:column;
		align-items:flex-start;
		gap:12px;
		margin-bottom:24px;
	}
	.listado-centros .header .page-filters{
		width:100%;
	}
	.listado-centros .centros-grid{
		grid-template-columns:repeat(2, 1fr);
		gap:16px;
	}
}
@media (max-width:600px){
	.listado-centros .centros-grid{
		grid-template-columns:1fr;
	}
	.listado-centros .header{
		gap:10px;
		margin-bottom:20px;
	}
	.listado-centros .header .page-title h1{
		font-size:24px;
	}
	/* Botón compacto en móvil: ancho de contenido, alineado a la izquierda */
	.listado-centros .header .page-filters .btn-add-centro{
		display:inline-flex;
		width:auto;
		font-size:15px;
		font-weight:600;
		padding:11px 16px;
		border-radius:10px;
		box-shadow:0 2px 8px rgba(21,24,48,0.18);
	}
	.listado-centros .header .page-filters .btn-add-centro:hover{
		transform:none;
	}
	.listado-centros .header .page-filters .btn-add-centro .material-icons{
		font-size:18px;
	}
	/* Controles (filtro + buscador) apilados y a ancho completo */
	.listado-centros .centros-controles{
		flex-direction:column;
		align-items:stretch;
		gap:16px;
	}
	.listado-centros .centros-filtros select{
		min-width:0;
		width:100%;
	}
	.listado-centros .centros-buscador .buscador-campo{
		width:100%;
	}
	.listado-centros .centros-buscador input[type="text"]{
		min-width:0;
		flex:1 1 auto;
	}
}

.container{
	width: 100%;
	max-width: 1580px;
}

#module-gestioncentros-centros #content,
#module-gestioncentros-centro #content,
#module-gestioncentros-solicitar #content
{
	padding: 0px;
}