:root {
	--rojo:#ec7e1d;
	--boton:#fff;
	--boton-seleccion:#f67f2a;
	--fondo-menu:#fff;
	--fondo-reservado-anular:#fff;
	--texto-reservado-anular:#027fc8;
	--fondo-reservado:#027fc8;
	--texto-reservado:#fff;
	--texto-boton:#fff;
	--texto-boton-navegacion:#fff;
	--fondo-boton-sel-servicio:#649ff7;
	--fondo-boton-sel-servicio-selected:rgba(180,180,180,0.7);
	--fondo-boton-sel-servicio-blur:rgba(218, 226, 236, 0.7);
	--objetos-seleccion-hora:#649ff7;
	--objetos-seleccion-active:#ffffff;
	--menubg:#fff;
	--menu-seleccion-bg:#eeefff;
	--fondo-menu:#fff;
	--fondo-idiomas:#ffffff;
	--texto-idiomas:#4488ff;
	--texto-idiomas-bak2:#4466aa;
	--texto-idiomas-bak:#606078;
	--texto-contraste-claro:#eeeeef;
	--fondopanel:rgba(255,255,255,0.65);
	--texto-color-oscuro:#444;
	--texto-color-cuerpo:#444;
	--texto-color-cuerpo-encabezados:#444;
	--selec-fecha-sunday:rgba(255,100,100,0.1);
	--selec-fecha:rgba(120,120,120,0.1);
	--fondo-salon-seleccionado: #b0724d;
	--selector-disabled: green;
	--main-font: main-font, sans-serif;
	--header-font: header-font, sans-serif;
	--comment-font: comment-font, sans-serif;
	--fondo-encabezadofamilias: rgba(142, 140, 140, 0.06);
	--background-main: none!important;
}

/*
#tabgap span:not(.selecteddaydetails){
	color:var(--texto-color-oscuro);
}
*/
.row-reverse{
	flex-direction:row-reverse;
}

.selectestilista span{
	color:var(--texto-reservado);
}

.debuglog .debugmode {
font-size:10px!important;
}

.no-choice, .flex-center {
	display:flex;
	justify-content: center;
}


.contbuttonres{
	display: flex;
    flex-direction: column;
}
/******************************************
GRAFICO CIRCULAR PIE CHART
******************************************/

.percent-box {
	/*width:100px;
	height:100px;*/
	padding:0 1px;
	display:inline-block;
	border-radius:5px;
	border:1px solid transparent;
}

.percent-box:hover, .percent-box:active {
	
	}

  
  
  
/******************************************
fin GRAFICO CIRCULAR PIE CHART
******************************************/

/*
.fieldcontent {
	margin:10px;
	border-color:trasparent;
	height:50px;
	color:var(--fondo-menu);
	display:flex;
	text-align:center;
    font-size: 1.2em;
    line-height: 50px;
}

.fieldcontent-blue{
	color:var(--boton);
	cursor:pointer;
    padding: 0 10px;
	text-align:center;
	background-color:var(--boton-seleccion);
	min-width:35%!important;
	border-radius:5px;
	margin:0 5px;
}

*/
.senalador span {
  animation-duration: 0.7s;
  animation-name: slidein;
  /*font-size:20px!important;*/
  margin:0 0 auto!important;
  font-family:var(--main-font),sans-serif;
}

#contdetail {
		min-width: 180px;
		max-width: 220px;
		margin:0 5px;
}

@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%; 
  }

  to {
    margin-left: 0%;
    width: 100%;
  }
}

.senalador{
	position:absolute;
	background-color:var(--rojo);
	color:var(--fondo-menu);
	font-size:2em;
	width:45px;
	/*height:25px;*/
	border-top-right-radius:25px;
	border-bottom-right-radius:25px;
	border-top-left-radius:4px;
	border-bottom-left-radius:4px;
	overflow:hidden;
	-webkit-animation: sk-senalador 1.5s ease-in-out both;
	animation: sk-senalador 1.5s ease-in-out both;
	vertical-align:middle;
	z-index:1000;
	
}


.hidden {
	display:none!important;
}
.ceroheight{
	height:0;
	overflow:hidden;
}

.infodias {
	text-align:center;
	font-size:24px;
}
.infodias span{
	
}

.favorite{
	position:absolute;
	right:12px;
	top:44px;
	border-radius:50%;
	text-align:center;
	background-color:transparent;
	width:16px;
	height:16px;
	font-size:12px!important;
}
	

.subindice{
	font-size:12px;
}

.mini-time {
	min-width:40%;
	float:left;
	top:-5px!important;
	font-size:10px;
	text-align:top!important;
	margin:0 5px 0 0;
	padding-left:5px;
	opacity:0.65;
	min-width:1%;
}

.tus-reservas-content{
	width:calc(100% - 12px);
	text-align:left;
	margin:10px 5px;
	font-family:var(--main-font),sans-serif;
	
}

.tus-reservas-fecha{
	color:white;
	font-size:18px;
	background-color:var(--fondo-boton-sel-servicio);
	border-radius:4px;
	padding:5px 5px;
	margin: 0 0;
	margin-top: -5px;
}

.tus-reservas-content-item {
	position:relative;
	color:grey;
}

.remove-cita{
	position:absolute;
	right:10px;
	color:white;
	z-index:100;
	cursor:pointer;
}

.remove-cita span:nth-child(1){
	font-size:12px;
	font-family: var(--main-font),sans-serif;
}
.remove-cita span:nth-child(2){
	font-size:22px;
}
.tus-reservas-estado {
	font-family:var(--main-font),sans-serif;
	font-size:12px;
}
.tus-datos {
	font-family:var(--main-font),sans-serif;
	font-size:18px;
	padding-top: 10px;
	margin-left: 10px;
}
.remove-packs {
	font-size:20px;
}

.fade {
	opacity:0.4;
}
.nofade {
	opacity:0.99;
	color:rgba(200,0,0,1);
}
.confirmado {
	color:green;
}

.tus-reservas-content-item{
	font-family:var(--main-font),sans-serif;
	font-size:18px;
		margin:10px 0;
		background-color:white;
		border-radius:4px;
		padding-left:40px;
		border: 1px solid grey;
}

#confirm-container {
	width:100%;
	
	/*height:400px;*/
}

#social {
	text-align:center;
	padding:0 5px 10px 0;
	color:var(--objetos-seleccion-hora);
	margin-top: 10px;
}

#social span{
	padding:0 5px 0 5px;
	font-size:58px;
	vertical-align:bottom;
}

.confirm-reservas-pago-container {
	width:60%!important;
	float:left;
}

.confirm-pago-container {
	margin:5px 5px 5px 0;
	max-width:35%;
	float:left;
}

.confirm-pago{
	display:block;
	float:left;
	min-width:200px;
	border-left-style:solid;
	width:60%!important;
}

.pay-item {
	margin:5px 0px 5px 0px;
	display:table;
	overflow:hidden;
	width:100%;
	position:relative;
}

.confirm-item {
	margin:0 10px 0 10px;
	display:table;
	width:calc(100% - 20px);
	position:relative;
}

.confirm-left-subitem{
	width:40px;
	left:0px;
	float:left;
	position:absolute;
	top:0px;
	bottom:0px;
}

.confirm-left-subitem-line{
	width:20px;
	left:0px;
	top:0px;
	bottom:0px;
	border-right-style:solid;
	border-right-color:var(--objetos-seleccion-hora);
	height:100%;
	position:absolute;
	border-right-width: 1px;
}

.line-first {

	top:50%!important;
}

.line-last {

	top:-50%!important;
}

.payment-details-div {
	margin: 10px 0;
    color:var(--fondo-menu);
    padding: 5px;
    border-radius: 5px;
    background-color:var(--menu-seleccion);
}

.confirm-pay-left-wrapper{
	position:relative;
	margin:1px;
	padding:3px;
	background-color:var(--fondo-boton-sel-servicio-blur);
	content:'';
	clear:both;
	left:0px;
	border-radius:5px;
	text-align:justify;
}

.confirm-left-wrapper{
	position:relative;
	width:calc(100% - 60px);
	margin:1px;
	padding:3px;
	background-color:var(--fondo-boton-sel-servicio-blur);
	content:'';
	clear:both;
	left:25px;
	border-radius:5px;
}

.confirm-white {
	background-color:rgba(255,255,255,0);
	
}

.confirm-text-container {
	position:relative;
	overflow:hidden;
	width:calc(100% - 60px);
	margin:1px;
	padding:3px;
	content:'';
	clear:both;
	left:40px;
	border-top-right-radius:5px;
	border-bottom-right-radius:5px;
}

.confirm-text-container span:nth-child(1) {
	color:#444;
	font-size:18px;
	font-weight:400;
	word-break: keep-all;
}
.confirm-text-container span:nth-child(3) {
	font-size:12px;
	font-family: var(--comment-font),sans-serif;
}
.confirm-text-container span:nth-child(5) {
	font-size:16px;
}

.confirm-pay-text-container {
	overflow:hidden;
	margin:10px;
	content:'';
	clear:both;
	border-top-right-radius:5px;
	border-bottom-right-radius:5px;
}

.confirm-pay-text-container :not(.payment-details-div) span:nth-child(2) {
	color:var(--objetos-seleccion-hora);
	font-size:16px;
	font-weight:bold;
}
.confirm-pay-text-container :not(.payment-details-div) span:nth-child(1) {
	color:var(--objetos-seleccion-hora);
	font-size:20px;
	font-weight:bold;
}

.confirm-pay-text-container :not(.confirm-pay-text) span:nth-child(1) {
	color:var(--texto-boton);
}

.confirm-pay-text-container span:nth-child(4) {
	font-size:14px;
}

.confirm-pay-text-container p {
	font-size:0.8em;
}

.pay-rotulo {
	color:var(--objetos-seleccion-hora);
	font-size:16px;
	font-weight:400;
	margin-top:10px;
	
}

.pay-text-top {
	margin-top:5px;
}


.confirm-minute{
	position:absolute;
	margin-left:calc(4px + -50%);
	background-color:var(--objetos-seleccion-hora);
	color:var(--texto-contraste-claro);
	border-radius:25px;
	padding:3px;
	bottom:-25%;
}

.confirm-minute-start{
	position:absolute;
	margin-left:-50%;
	background-color:var(--objetos-seleccion-hora);
	color:var(--texto-contraste-claro);
	border-radius:25px;
	font-size:26px;
}

.confirm-text-top {
	width:100%;
	padding:20px 0;
	font-size:20px;
	text-align:center;
}
	
.gliphicons-input {
	font-size:48px;
	color:light-gray;
}

.glyphicons-bg {
	vertical-align:middle!important;
	background-color:rgba(255,255,255,.65);
	border-radius:5px;
	box-shadow:0px 0px 20px 1px #333;
	-moz-box-shadow:0px 0px 20px 1px #333;
	-webkit-box-shadow:0px 0px 20px 1px #333;
	filter: shadow(color=#333333, direction=135, strength=2);
}

.glyphicons-x {
	font-size:16px;
	color:var(--texto-contraste-claro);
	margin:-5px -7px;
}

.glyphicons {
	vertical-align:middle!important;
}

.glyphicons-nopadding:before {
	padding:1px 3px 0 0!important;
}



.glyphicons-heart-empty:before{color:#ff7779;}

.reserve {
	margin: 10px 27px 10px 10px!important;
}
	
.selecteddaydetailsselected {
	background-color:var(--texto-contraste-claro)!important;
	box-shadow:0px 0px 20px 1px #333;
	-moz-box-shadow:0px 0px 20px 1px #333;
	-webkit-box-shadow:0px 0px 20px 1px #333;
	filter: shadow(color=#333333, direction=135, strength=2);
}

.selecteddaydetailsselected .actionspan {
	background-color:#5992cf;
}


.options-overlay{
	display: flex;
    flex-direction: column;
    align-items: center;
    margin: 30px;
}

.options-overlay input{
	min-width:450px;
}

.options-overlay img{
	min-width:64px;
	max-width:80px;
	max-height:80px;
}
.options-overlay span{
    padding: 10px;
    border-radius: 10px;
    font-size: 1.3em;
}


/* CLearfix */
.clearfix:after {content:".";display:block; height:0;clear:both;visibility:hidden;}
.clearfix { display:inline-block; }
/* Hide from IE Mac \*/
.clearfix { display:block; }
* html .clearfix { height:1px; }
/* End hide from IE Mac */

.salon-details-icon{
	width: 30px;
    display: inline-flex;
    float: right;
    margin: 10px 0;
	font-size:35px;
	color:var(--objetos-seleccion-active);
}

.changesalon {
	position:absolute;
	top:45px;
	right:2px;
	font-size:1em;
	background-color:var(--boton-seleccion);
	color:var(--objetos-seleccion-active);
	padding:5px 10px;
	border-radius:5px;
	margin:0 3px 3px 0;
	cursor:pointer;
}

.contselectsalon {
	overflow:hidden;
	font-family:var(--main-font),sans-serif;
	font-size:22px;
	color:var(--texto-contraste-claro);
}

.selectedsalon {
	height:160px;
	padding:5px;
	background-repeat:no-repeat;
	background-size:100%;
	background-position:center;
	display:block;
}

.selectedsalon a {
	color:var(--texto-contraste-claro);
}

.salonselection {
	max-width:99%;
}

.iconodiv{
	width:100%;
	margin:20px auto;
	display:center;
	text-align:center;
}

.iconodiv img{
	height:50px;
	width:50px;
	color:#99ff99;
	padding:-50%;
	content:'';
}

.confirmtxt span {
	width:100%;
	text-align:center;
}

.confirmtxt span:nth-child(1){
	display:inline-block;
}

.confirmtxt span:nth-child(2){
	margin:0 20px;
	font-size:16px;
}

@mixin .transition(@in) {
	-webkit-transition:@in;
	   -moz-transition:@in;
		-ms-transition:@in;
		 -o-transition:@in;
			transition:@in;
}

@mixin transform($in) {
	transform:$in;
	-webkit-transform:$in;
	-moz-transform:$in;
	-o-transform:$in;
	-ms-transform:$in;
}
@mixin animation($in) {
	-o-animation:$in;
	-ms-animation:$in;
	animation:$in;
	-webkit-animation:$in;
	-moz-animation:$in;
}

.hiddena {
	overflow:hidden;
	color:#999999;
	font-family:var(--main-font),sans-serif;
	font-size:12px;
	-webkit-transition:all 1s ease-in-out;
	transition:all 1s ease-in-out;
	-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
    transition: width 2s;
}

.slow-hidden {

	overflow:hidden;
	height:0px;
	-webkit-transition:all 1s ease-in-out;
	transition:all 1s ease-in-out;
}

.myButt {
	outline:none;
	border:none;
	padding:20px;
	display:block;
	margin:5px auto;
	cursor:pointer;
	font-size:20px;
	background-color:var(--texto-reservado);
	position:relative;
	border:2px solid var(--boton-seleccion);
	transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -webkit-box-shadow: 0 0 20px 1px rgb(80 80 80 / 66%);
    -moz-box-shadow: 0 0 20px 1px rgba(80,80,80,0.66);
    box-shadow: 0 0 20px 1px rgb(80 80 80 / 66%);
	z-index: 100;
}


.four{
	overflow: hidden;
    width: 69px;
	height: 69px;
    border-radius: 35px;
    position: absolute;
    margin-left: 50px;
	bottom: 35px;
}

.four:hover {
			margin-left:-40px;
			width:200px;
		}
		
		
.four span {
		color:var(--boton-seleccion);
		display:inline-block;
		padding:0 0 0 75px;
	}

.icon {
	/*
	position: absolute;
    left: 0px;
    top: 0;
    padding: 4px 26px 15px 26px;
    background-color: var(--boton-seleccion);
    color: var(--texto-reservado);
    font-size: 38px;
    border-radius: 35px;
	*/
	
	position: absolute;
    left: 0px;
    top: 0px;
    /* padding: 4px 26px 15px 26px; */
    background-color: var(--boton-seleccion);
    color: var(--texto-reservado);
    font-size: 47px;
    border-radius: 35px;
    width: 65px;
    height: 65px;
}


/* ################ FIVE*/

/*
.five {
	overflow:hidden;
	color:#fff;}
	
	.layer {
		color:#fff;
		position:absolute;
		top:-70px;
		width:100%;
		left:0;
		padding:20px 0;
		background-color:red;
		@include transition(all 0.3s ease);
	}

	&:hover {
		.layer {
			top:0;
		}
	}
}
*/

.bg img {
	width:100%;
	filter: brightness(50%);
}


/***** Menu usuario logeado *****/

@keyframes aparecer { /*A�adir los correspondientes prefijos a los diferentes navegadores*/
from {top: -150%; opacity: 0;}
50% {top: 40%; opacity: 0.2;}
to {top: 50%; opacity: 1;}
}

#returnzona,#returnfamilia {
	display:inline-flex;
	border-width:1px;
	border-style:solid;
	border-color:var(--texto-reservado);
	float:left;
	margin-top:10px;
	margin-left:10px;
	margin-bottom:10px;
	background-color:var(--boton-seleccion);
	border-radius:20px;
	height:40px;
	cursor:pointer;
	-webkit-transition:all 1s ease-in-out;
	transition:all 1s ease-in-out;
	-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
    transition: width 2s;	
	
}

#returnzona-setdate {
	float:left;
	margin-top:-6px;
	margin-left:10px;
	margin-bottom:10px;
	cursor:pointer;
}

.navigation-arrow{
	display:inline-flex;
	font-size:30px;
	color: white;
}

.navigation-text{
	vertical-align:middle;
	font-family:var(--main-font),sans-serif;
	display:inline-flex;
	font-size:16px;
	color: var(--texto-boton-navegacion);
	padding:0 10px 0 0;
	margin-top: -5px;
}	
	

.actionspan {

	width:20px;
	height:20px;
	border-width:2px;
	border-color:white;
	border-radius:50%;
	-webkit-border-radius:50%;
	border-style:solid;
	margin: 1px 5px -12px auto;
	overflow:hidden;
	position: absolute;
	right: 0px;
}

.selecteddaydetails{
	margin-bottom: 0;
}
.reserve.input-btn{
	cursor: pointer;
}
.rotulomeses {
	width:100%;
	text-align:center;
	height:30px;
	clear:both;
	font-size:22px;
	color: rgb(50, 49, 49);
}

.rotulomeses p{	
	margin-top:10px;
	font-weight: bold;
	}

#nventanahoras {
	overflow:hidden;
	border: 1px solid #e6e8ed;
	margin-left: 6px;
	margin-right: 6px;
	border-radius: 0 0 5px 5px;
}

.tu-historial{
	padding-left:0px!important;
	float:left;
	margin:5px 5px;
}
.tu-historial-content{
	padding-left:0px!important;
	padding-top:5px;
}

.marcodias{
	width:calc(100% - 80px);
	margin:0 0 0 40px;
	position:absolute;
	overflow:hidden;
}


.arrowright {
    /* top: 2pt; Uncomment this to lower the icons as requested in comments*/
    width: 1em;
    height: 1em;
    border-right: 0.2em solid rgb(94, 94, 94);
    border-top: 0.2em solid rgb(94, 94, 94);
    transform: rotate(45deg);
	
}

.arrowleft {
    /* top: 2pt; Uncomment this to lower the icons as requested in comments*/
    width: 1em;
    height: 1em;
    border-right: 0.2em solid rgb(94, 94, 94);
    border-top: 0.2em solid rgb(94, 94, 94);
    transform: rotate(225deg);
}




.sk-cube-grid {
  width: 40px;
  height: 40px;
  margin: 100px auto;
}

.sk-cube-grid .sk-cube {
  width: 33%;
  height: 33%;
  background-color: var(--fondo-boton-sel-servicio);
  float: left;
  -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
          animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out; 
}
.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s; }
.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s; }
.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1); 
  }
}

@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1);
  } 
}

@-webkit-keyframes sk-senalador {
	0% { -webkit-transform: scale(0)}
  40%, 80% { -webkit-transform: scale(2.0) }
  100% { -webkit-transform: scale(1.0) }
}

@keyframes sk-senalador {
	
  0% { 
    -webkit-transform: scale(0);
  transform: scale(0);}
	40%, 80% { 
    -webkit-transform: scale(2.0);
    transform: scale(2.0);
  } 100% { 
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
  }
}
	
div.ventanasemana {
	float:left;
	margin:0 10px 0 0;
}

div.separador {
	position:relative;
	z-index:-1;
}

.selected {
	background-color:var(--boton-seleccion)!important;
	color:var(--texto-boton)!important;
	opacity:1!important;
	filter:alpha(opacity=1);
	-moz-opacity: 1;
	filter: grayscale(0%);
	box-shadow:0px 0px 1px 1px #333;
	-moz-box-shadow:0px 0px 1px 1px #333;
	-webkit-box-shadow:0px 0px 1px 1px #333;
	filter: shadow(color=#333333, direction=135, strength=2);
	
	
	
}

.selected span{
	color:#ffffff;
}
	
.disabled {
	background-color:transparent!important;
	opacity:0.4;
	}

.sunday {
	background-color:white;
	color:rgb(171, 170, 170);
	}
.sunday .bottomday{
	text-decoration: line-through;
}
.diario {
	opacity:1;
	background-color:white;
	color:rgb(50, 49, 49);
	}

div.contventanasemana {
	width:400%;
	transition:all 0.5s ease-in-out;
	-webkit-transition:all 0.5s ease-in-out;
	position:relative;
	overflow:hidden;
	left:0;
}

.seleccionardia {
	max-height:110px;
	margin-top:5px;
	position: relative;
	margin-right: 1em;
}

.marcoventanahoras {
	/*
	overflow:hidden;
	width:100%;
	*/
	overflow: auto;
    width: 100%;

}


.horasdisponibles{
	border-bottom-style:solid;
	border-bottom-width:1px;
	border-color: #e6e8ed;
	padding: 10px 5px 10px 5px;
	cursor: pointer;
	position:relative;
	margin: 10px 0 0 0;
	border-left-width:3px;
	border-left-style:trasparent;
}

.horasdisponible div:hover{
	background-color:rgba(255,255,155,.3);
	border-left-style:solid;
	border-left-color:#ccffdd;
	filter: grayscale(0%)
	
}
	
div.contv {
	width:100%;
	margin: 0;
	padding:0 0 14px 0;
}
div#fechasel{
	text-align: center;
	font-size: 24px;
	margin-top: 35px;
	color: var(--fondo-boton-sel-servicio);
	display: none;
}

div.ventanasemana input[type='radio'],
div.marcoventanahoras input[type='radio'] {
	padding: 1em 0;
	float:left;
	position:absolute;
}


#semananext {
	position:absolute;
	margin:3.5em 0 0 calc(100% - 35px);
	vertical-align:center;
	z-index:2;
	
	padding:10px 5px 10px 2px;
	border-radius:4px;
}
	
#semanaprev {
	position:absolute;
	margin:3.5em 0 0 10px;
	vertical-align:center;
	z-index:2;
	
	padding:10px 2px 10px 5px;
	border-radius:4px;
}	
#irahoy {
	position:absolute;
	margin:0 0 0 10px;
	vertical-align:center;
	z-index: 2;
	padding: 6px 2px 10px 5px;
	border-radius: 4px;
	cursor: pointer;
	font-weight: bold;
	font-size: 20px;
}	
	
	
div.ventanasemana ul{
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		line-height: 1;
		font-size: 200%;
		width:100%;
	}
	

div.ventanasemana li {
		padding: 1.1em;
		border-radius: 5px;
		position: relative;
		cursor: pointer;
		/*
		transition: background $timing $ease;
		&.selected {
			background: #eeeeee;
		}*/
	}


  
div.ventanasemana li:active ,div.ventanasemana li:hover, input[type="radio"]:checked ~ label{
	
}

div.ventanasemana li:active ,div.ventanasemana li:not(.selected):hover, input[type="radio"]:checked ~ label{
	color:var(--objetos-seleccion-hora)!important;
}

.selected :active , .selected :hover {
	/*color:var(--objetos-seleccion-hora)!important;*/
}


div.ventanasemana span {
	position: absolute;
	top: 70%;
	left: 50%;
	transform: translate(-50%, -70%);
	}
	
div.ventanasemana span:nth-child(1){
		border-bottom-style:none;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, 70%);
		font-size:12px!important;
		font-family:var(--main-font),sans-serif;
	}


div.marcoventanahoras ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		line-height: 1;
		font-size: 100%;
		font-family:var(--main-font),sans-serif;
		width:100%;
		float:left;
	}
	
div.marcoventanahoras li {
		padding: 0.8em 0.8em 2em 0.8em;
		position: relative;
		cursor: pointer;
		font-size: 100%;
		float:left;
	}
	
div.marcoventanahoras span{
	margin:0 0 0 10px;
    text-align: center;
	}



div.marcoventanahoras input[type="text"] {
	font-family: var(--main-font),sans-serif;
	background: transparent;
	font-size:14px!important;
	border: none;
	font-size: 14px;
	line-height: 14px;
	height: 18px;
	padding: 0;
	margin: 0;
}

div.marcoventanahoras select {
	font-family: var(--main-font),sans-serif;
	background-color: var(--objetos-seleccion-hora);
	color: var(--objetos-seleccion);
	border: none;
	font-size: 18px;
	line-height: 18px;
	/*height: 20px;*/
	padding: 0 10px 0 0;
	margin: 0;
	border-radius: 5px;
	display: inline-block;
	cursor: pointer;
}

div.marcoventanahoras select option {
	text-align: center;
}

div.marcoventanahoras select option:nth-child(1) {
	text-align: left !important;
	padding: 0;
	margin: 0 10px 0 0;
}

div.horaseleccionada {
	clear:both;
	display:inline-block;
}

div.horaseleccionada span{
	float:left;
	font-size:14px;
}

div.horaseleccionada label{
	float:left;
}

div.horaseleccionada input[type="text"]{
	font-size:14px;
	float:left;
}

/*
div.horaseleccionada input[type="text"]:nth-child(2n,0) {
	font-size:14px;
	float:left;
}

div.horaseleccionada label:nth-child(2n,0){
	font-size:14px;
	float:left;
}
*/

	.submitBtn2 {
		background-color:var(--boton-seleccion)!important;
		padding:0 20px!important;
		
		right: 10px;
		top: 0px;
		font-size: 19px !important;
		border: 1px solid var(--boton-seleccion) !important;
		box-shadow: 0px 0px 5px #f3e1e6;
		border-radius: 5px;
		color: var(--texto-contraste-claro)!important;
		cursor: pointer;
	}

/*
@media (min-width: 921px) {
*/
.divcart {
	width: 220px;
	margin:10px;
	z-index:2;
}
	
.divcart p{
	font-family:var(--main-font),sans-serif;
	font-size:18px;
	margin:0 0 auto;
}

.marcoreserva {
	font-size:10px;
	font-family:var(--main-font),sans-serif;
	color:var(--texto-reservado);
	margin: 5px 0px 30px 0px!important;
	box-shadow: 0 0 -10px #000000;
	-moz-box-shadow: 0 0 -10px #000000;
	-webkit-box-shadow: 0 0 -10px #000000;
	overflow:hidden;
}

.carritocontenedor, .carritocontenedorpack {
	min-height:10px;
	background-color: var(--boton-seleccion);
	display:block;
	border-radius:5px;
	float:left;
	margin:5px 5px 0px 0px;
	padding:5px 0px;
	width: 100%;
	min-width: 155px;
	position:relative;
}



.carritocontenedor span:not(.glyphicons-x), .carritocontenedorpack  span:not(.glyphicons-x){
	font-size:12px;
	/*font-family:JosefinSansRegular;*/
	color: var(--texto-contraste-claro);
	margin:1px 5px 1px 5px!important;
	float:left;
}

.carritocontenedor a, .carritocontenedorpack  a{
}

.carritocontenedor p, .carritocontenedorpack p {
	float:left;
	font-size:10px;
	font-weight:10px;
	margin:0 0 auto!important;
	padding:0 0 0 5px!important;
	text-align:left;
}

.carritocontenedor a:link, .carritocontenedorpack  a:link,
.carritocontenedor a:visited, .carritocontenedorpack  a:visited,
.carritocontenedor a:hover, .carritocontenedorpack  a:hover,
.carritocontenedor a:active, .carritocontenedorpack  a:active {
	color:var(--texto-reservado-anular)!important;
	right:5px;
	position:absolute;
}


.packdetallesmall {
	font-size:10px;
	font-family:var(--main-font),sans-serif;
}

.carritodetalle, .carritodetallepack {
	margin:5px 0 5px 0!important;
	padding:0 0!important;
}

#menu {
	top: 0px;
	position: absolute;
	width: 45px;
	height: 110px;
	z-index: 203;
	-webkit-transition: height .5s, -webkit-transform .5s;
	transition: height .5s, transform .5s;
	display: inline-block;
	margin-left:5px;
}
	
	.menu_hover {
		height: 540px!important;
		margin-top: 0!important;
	}
	
	ul.menuribbon {
		margin-top: -460px;
		-webkit-transition: margin-top 1s, -webkit-transform 1s;
		transition: margin-top .5s, transform .5s;
		z-index: 200;
	}
	
	#menu:hover ul.menuribbon {
		/*margin-top: 0;*/
	}

/** Logo **/

#logo {
	position: relative;
	top: 20px;
	height: 85px;
	margin: 0 auto 45px auto;
	text-align: center;
}

/** pestana logout **/

#signout {
	width: 40px;
	height: 40px;
	background: var(--texto-idiomas);
	font-size: 30px;
	color: #ffffff;
	line-height: 10px;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	/*top: 85px;*/
	display: inline-block;
	margin:8px;
}

#signout:nth-child(1){
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}

#signout-full{
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	background-color:#ffcc88;
}

#signout a {
	padding-left: 5px;
	padding-top: 10px;
	display: block;
	z-index: 100;
	color: #ffffff;
}

.scorner {
    width: 0px;
    height: 0px;
    border-style: solid;
    position: relative;
    top: -12px;
}

.bl2 {
    -ms-transform: rotate(7deg);
    -webkit-transform: rotate(7deg);
    transform: rotate(180deg);
    border-width: 12px 0 0 16px;
    border-color: #71699e transparent transparent transparent;
    left: 37px;
    bottom: 40px;
    rotate: 10%;
}
/** Mensaje de bienvenida **/

#bienvenida {
	display: inline-block;
	width: 218px;
	margin: 0 -10px 0 0;
	right: 5px;
	position: relative;
	float: right;
	top: 25px;
		-webkit-transition: top .7s, -webkit-transform .7s;
		transition: top .7s, transform .7s;
		
}

#bienvenida p {
	font-size: 14px;
	font-family: var(--main-font),sans-serif;
	color: var(--texto-idiomas);
	padding: 0;
	margin: 0;
	float: left;
	width: 155px;
	margin: 0 5px 0 0;
}

#bienvenida strong {
	font-family: 'JosefinSansBold';
	font-weight: bold;
}

h2 {
	padding: 0 0 0 0;
}

.input-btn {
	margin:0 0 0 10px;
	color:var(--texto-boton);
}
.label_tittle {
	/*padding: 20px 0 0 20px;*/
	line-height: 30px;
	color:var(--texto-boton);
	text-align:center;
}

.secondary_tittle {
	top: 0px;
    width: 100%;
	position:absolute;
    left: 0px;
    right: 0px;
    text-align: center;
}


/** Caja de reservas **/

#loginout {
	font-family:var(--main-font),sans-serif;
	position: relative;
    border-radius: 3px;
	background-color: rgba(255, 255, 255, 0.5); /* Para navegadores que no soportan gradients */
	text-align: center;
	margin: 0 0 0 100px;
	/* anti-aliasing fix */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow:auto;
}

#loginout:not(.logtusdatos) {
	min-height: 351px;
}

#loginout ul {
	font-family:var(--main-font),sans-serif;
	list-style: none;
	padding: 0;
	margin: 0 8px 0 8px;
}

#loginout ul li {
	float: left;
	width: 25%;
	text-align: center;
	
	font-size: 23px;
	line-height: 17px;
	color: #ffffff;
}

#loginin {
	min-height: 286px;
	height:calc(100% - 10px);
	
	font-family:var(--main-font),sans-serif;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
	background-color: #f0f0ff;
	background-size: 290px;
	background-position: center top; 
	text-align: center;
	padding: 0;
	margin: 60px 4px 0 4px;
}

#facebook {
	display:inline-block;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
	background-color: #2b2bff !important;
	color:#ffffff;
	background-size: 290px;
	padding: 0;
	margin: 0 4px 0 4px;
	border:none;
}

#loginboxcont {
	max-height : 480px;
	border:none;
}

.tableresult {
	width: 100%;
	min-height: 269px;
	border: 0;
	margin: 0 0 17px 0;
	padding: 0;
    /*overflow-y: scroll;*/
}

table.tabreserva {
	width: 100%;
	border-collapse: collapse;
	margin: 10px 0 0 0;
	padding: 0;
	font-family: var(--main-font),sans-serif;
	font-size: 15px;
	/*line-height: 17px;*/
	color: #2b3686;
}

table.tabreserva td {
	width: 25%;
	padding: 1px 0;
}

#puntos {
	position: absolute;
	top: 350px;
	left: 60px;
	width: 100px;
	height: 100px;
	background-size: cover;
}

.mispuntos {
	position: relative;
	top: 26px;
	width: 30px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	font-family: 'BritannicBold';
	font-size: 15px;
	color: #000000;
}

/************* NUEVA RESERVA ***************/

/** Wrapper para visualizar tiempo y pvp en los botones **/

.wrapper1monoline {
	font-size:1.3em;
	line-height:1.5em;
	}

.wrapper1line1{
	display:table;
	line-height:1.2em!important;
}

.wrapper1line2{
	display:table;
	font-size:0.7em;
	margin-top:-3px;
}

.wrapper1monolinesl {
	font-size:1em;
	line-height:1.2em;
	}

.wrapper1line1sl{
	display:table;
	font-size:1em;
	line-height:1.2em!important;
}

.wrapper1line2sl{
	display:table;
	font-size:14px;
}	

span.wrapper0{
	float:left;
	width:75%;
	height:65%;
}

.wrapper1{
	float:left;
	height:70%;
	overflow:hidden;
	width:80%;
}

span.wrapper2{
	float:left;
	width:100%;
	height:26%;
	font-size:0.7em;
	overflow:hidden;
	line-height:11px;
	padding-top:-5px;
	border-top-style:dotted;
	border-top-width:thin;
}

span.wrapper2 :nth-child(1){
	min-width:45%;
}
span.wrapper2 :nth-child(2){
	min-width:25%;
}
span.wrapper2 :nth-child(2){
	min-width:1%;
}



.wrapper3{
	height:100%;
	font-size:1.2em;
	line-height:1.3em;
	overflow:hidden !important;
	text-align:center;
	position:absolute;
	right:15px;
}

/** Caja de las opciones de reserva con las pestanas **/

#content-cont {
	width: 100%;
    height: calc(100% - 101px);
    display: flex;
    margin-top: 100px;
}

#groupContainer {
    display: inline-flex;
    width: 100%;
	overflow:hidden;
	border-radius:5px;
    -moz-box-shadow: 0 0 50px -10px #000000;
    -webkit-box-shadow: 0 0 50px -10px #000000;
    box-shadow: 0px 0px 50px -5px #000000;
	background-color: var(--fondopanel)!important;
	font-family: var(--main-font),sans-serif; 
	font-size: 18px;
}

#wrapptabselect {
	clear:both;
	position:relative;
	background-color:#ff0000;
	height:10px;
}

#tabselect {
	z-index: 2;
	width:100%;
	min-height:480px;
	background-color: var(--fondo-contenedor)!important;
	
}

#loginoutrev {/*
	position: absolute;
	top: 100px;
	left: 110px;
	width: calc(97% - 220px);
	margin: 0 1.5% 0 1.5%;
	padding-bottom:100px;*/
}

#loginoutin {
	background-color:var(--fondo-contenedor)!important;
}

/** Pestanas **/

ul.tab {
	height: 30px;
	width: 30px;
	
	position: relative;
	list-style: none !important;
	float: left;
	margin: 0 0 0 23px;
	border-radius: 8px 8px 0px 0px;
	font-family: 'JosefinSansBold';
	font-size: 17px;
	color: #ffffff;
}
ul.tab:nth-child(1) {
	margin-left: calc(1.5% + 5px) !important;
}

ul.tab p {
	margin: 7px 0 0 -40px;
	padding: 0;
	text-align: center;
}

ul.tab a {
	text-decoration: none;
	color: inherit !important;
}



/* Pestana seleccionada */
 

ul.tab.tabselected {
	color: #2b2848 !important;
}



#loginoutrev h1{
	font-family:var(--main-font),sans-serif;
	font-size:22px;
	padding:0 0;
	line-height:24px;
	margin:0 0;
	text-align:center;
	color:var(--texto-background);
}

#tabbox, #logininrev {
	margin: 30px 0 30px 0;
	min-height: 330px;/*195px;*/
	background-color: var(--fondopanel)!important;
	font-family: var(--main-font)!important; 
	color: var(--texto-color-cuerpo);
	font-size: 15px;
}

#logininrev {
	margin: 0 0 0 0!important;
	height:auto!important;
	overflow:hidden;
}

#tabgap {
	top: 20px;
	left: 0;
	width: 100%;
	overflow-y: hidden;/*scroll;*/
	overflow-x: hidden;
}

ul.sernav,
ul.packnav {
    list-style: none;
    width: 100%;
    padding: 0;
    border-collapse: separate;
}

ul.salnav {
    list-style: none;
    padding: 5px!important;
    border-collapse: separate;
    margin: 0;
	font-size:22px;
}

ul.sernav br,
ul.salnav br,
ul.packnav br {
	margin: 0;
	padding: 0;
}

ul.salnav a,
ul.salnav a:link,
ul.salnav a:visited,
ul.salnav a:hover,
ul.salnav a:active {
	color:var(--texto-contraste-claro)!important;
}

ul.salnav li {
	float: left;
	padding: 2px 5px;
	height: 120px;
	overflow: hidden;
	width: calc(-10px + 100%);
	position: relative;
	margin:5px 0;
	color:var(--texto-color-claro);
	font-family: var(--main-font),sans-serif;
	cursor:pointer;
}

span.wrapper0sl {
	float:left;
	width:90%;
}

.wrapper1sl{
	clear:both;
	float:left;
	width:100%;
	overflow:hidden;
	color:var(--texto-contraste-claro);
}
ul.seleccionsalon span.wrapper1sl{
	
	color:var(--texto-color-oscuro);
	font-size: 20px;
	margin-left: 5px;
	margin-bottom: 5px;
}
ul.seleccionsalon input[type="radio"]{
	margin: 0px;
}
span.wrapper2sl{
	float:left;
	width:50%;
	font-size:0.7em;
	overflow:hidden;
	/*line-height:40px;*/
	padding-top:-25px;
}

span.wrapper3sl{
	float:left;
	/*width:2em;*/
	height:100%;
	font-size:1.2em;
	line-height:45px;
	overflow:hidden !important;
	text-align:center;
	margin: 0 10px 0 0;
}

ul.sernav li,
ul.packnav li {
	float: left;
	border-right: 2px solid #b0d6f1;
	padding: 2px 10px;
	/*height: 62px;*/
	overflow: hidden;
	width: 100%;
	position: relative;
	display:flex;
}

ul.sernav li.uno,
ul.packnav li.uno {
	width: 46.8%;


}
ul.sernav li.dos,
ul.packnav li.dos {
	width: 46.1%;

}

ul.sernav li.tres,
ul.packnav li.tres {
	width: 30%;
}

ul.sernav li.cuatro,
ul.packnav li.cuatro {
	width: 21.7%;

}

ul.sernav li.cuatro:nth-child(4n),
ul.packnav li.cuatro:nth-child(4n) {
	border-right: 0;
}

ul.sernav li:nth-last-child(1),
ul.packnav li:nth-last-child(1) {
	border-right: 0;
}

ul.sernav input[type="checkbox"]:not(old),
ul.sernav input[type="radio"]:not(old),
ul.packnav input[type="checkbox"]:not(old),
ul.packnav input[type="radio"]:not(old) {
	width: 26px !important;
	position: absolute;
	top: 0;
}

ul.sernav label, ul.packnav label {
  border: 1px solid var(--fondo-boton-sel-servicio-borde);
  background-color: var(--fondo-boton-sel-servicio) !important;
  box-sizing: border-box;
  display: block;
  height: 100%;
  width: 100%;
  padding: 1px 5px 1px 10px;
  cursor: pointer;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  opacity:1;
  border-radius: 4px 4px 4px 4px;
  min-height: 62px;
  color: var(--fondo-menu);
}

ul.sernav label:hover, ul.packnav label:hover {
  border: 1px solid rgba(200, 200, 250, 0.5)!important;
  /*background-color: var(--fondo-boton-sel-servicio-hover)!important;*/
}

ul.sernav label:focus, ul.packnav label:focus {
}
ul.sernav label:active, ul.packnav label:active {}

input[type="radio"], input[type="checkbox"] {
  opacity: 0;
  width: 0;
  height: 0;
}

input[type="radio"]:active ~ label {
  opacity: 1;
}

input[type="radio"]:checked ~ label {
  background-color: var(--fondo-boton-sel-servicio)!important;
  border: 1px solid #9A9A9A;
}

input[type="checkbox"]:disabled ~ label {
  background-color: var(--fondo-boton-sel-servicio-selected)!important;
  color:#999999!important;
    border: 1px solid #9A9A9A!important;
}

.servicehidden {
	display: none;
}

table.sertitu {
    table-layout: fixed;
    width: 100%;
    padding: 0;
    border-collapse: separate;
    border-spacing: 0;
    margin: 0;
    line-height: 12px;
}

/* Boton Siguiente */

/* Estilo general para todos los botones de reserva */

input[type="submit"], input[type="button"] {
	height:48px;
	position: relative;
	font-family: var(--main-font),sans-serif; 
	color: var(--fondo-menu);
	padding: 1px 0;
	font-size: 14px;
	line-height: 18px;
	text-align: center;
	text-decoration: none;
	border-radius: 24px;
	border-style:none;
	cursor: pointer;
	display: flex;
	-webkit-appearance:none;
	/*
	-webkit-border-radius:24px;
	background-color: #0000ff; /* Para navegadores que no soportan gradients */
	border-radius:4px;
	-webkit-border-radius:4px;
	justify-content:center;
	text-align:center;
}

.nav-button {
    height: 48px;
    cursor: pointer;
    display: flex;
    -webkit-appearance: none;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    justify-content: center;
    margin: 5px 5px;
    align-content: center;
    align-items: center;
}

.submitBtn, .fieldcontent-blue {
	color: var(--fondo-menu)!important;
	background-color: var(--boton-seleccion);
    margin: 0;
	border: none;
	min-width: 120px;
}

.submitBtn {
    margin: 1em 0.5em;
}


#paymentReloadHeader{
	font-size: 24px;
	font-weight: bold;
	color: var(--objetos-seleccion-hora);
	margin-top: 1em;
}
paymentReloadContent{
	font-size: 20px;
}
.fieldcontent-blue {
	/*margin:10px;*/
	border-radius:5px;
}

.reglogin input[type="submit"], .reglogin input[type="button"] {
	max-width:300px;
}

/* Estilos exclusivos del boton "Siguiente" */

.clicknext {
	top: 162px;
	right: 35px;
	width: 80px;
	height: 28px;
	font-size: 16px !important;
	font-family: var(--main-font) !important;
	float: right;
}

/* Caja flotante con los detalles del pack */

#packdetail {
	position: absolute;
	top: calc(100% - 160px);
	left: calc(50% - 37px);
	width: 300px;
	height: 180px;
	background: #b0d6f1;
	background-image: -moz-linear-gradient(left,#302f4b,#b0d6f1);
	background-image: -ms-linear-gradient(left,#302f4b,#b0d6f1);
	background-image: -o-linear-gradient(left,#302f4b,#b0d6f1);
	background-image: -webkit-linear-gradient(left,#302f4b,#b0d6f1);
	background-image: linear-gradient(left,#302f4b,#b0d6f1);
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	z-index: 500;
	-moz-box-shadow: 0 0 10px #000000;
	-webkit-box-shadow: 0 0 10px #000000;
	box-shadow: 0px 0px 10px #000000;
	display: none;
}

#packdetail p {
	padding: 0;
	margin: 0 auto;
	font-family: 'GreatVibesRegular';
	font-size: 18px;
	color: #ffffff;
	text-align: center;
	line-height: 35px;
}

#pdetails {
	
	position: absolute;
	width: 300px;
	height: 150px;
	top: 30px;
}

#contpack {
	position: relative;
	width: 300px;
	height: 110px;
	top: 10px;
	background: #f3e1e6;
	overflow-y: scroll;
	overflow-x: hidden;

}

#packbuttons {
	position: relative;
	width: 260px;
	height: 25px;
	top: 13px;
	left: 18px;
}

.packback {
	position: relative;
	left: 0;
	width: 80px;
}

.anadir {
	position: relative;
	left: 92px;
	width: 80px;
}

/** Caja con los detalles de la reserva **/


#details {
	width: 100%!important;
	top: 40px;
	margin:0 0 auto;
	overflow:hidden;
}

#conttabdet {
	text-align:center;
	width: 100%!important;
	border-bottom-style:solid;
	border-bottom-width:1px;
	border-bottom-color:#888888;
	float:left;
	margin:0 0 20px 0;
}

table.getdetails {
	/*width: 440px;*/
	table-layout: fixed;
	border-collapse: collapse;
	margin: 2.5% auto;
	font-size: 16px;
	font-family: var(--main-font),sans-serif; 
	color: #000000;
}

table.getdetails.apack {
	width: 260px;
}

table.getdetails.aservice {
	width: 95%;
}

.tablaSeparador {
	padding: 5px 0 5px 15px;
	border-bottom: 2px solid #b0d6f1;
	color: #000000;
	margin: 3px 0px 0px 0px;
}

.tablaDetallePack {
	padding: 5px 0 15px 15px;
	border-bottom: 2px solid #b0d6f1;
	color: #000000;
}

table.getdetails td {
	padding: 5px 0 5px 15px;
	border-bottom: 2px solid #b0d6f1;
}

table.getdetails tr:first-child td {
	padding: 0 0 5px 15px;
	border-bottom: 2px solid #b0d6f1;
}

table.getdetails tr:last-child td {
	border-bottom: 0;
}

table.getdetails tr.pack:first-child td {
	padding: 0 0 5px 15px;
	border-bottom: 2px solid #b0d6f1;
	background-color: #00ff00!important;
}

table.getdetails tr.pack:last-child td {
	border-bottom: 5px;
	background-color: #00ff00!important;
}

/* Icono para borrar los servicios seleccionados */
#conttabdet1 span {
	margin: 10px 0 0 0;
	width: 11px;
	height: 11px;
	border: 1px solid #d66749;
	border-radius: 7px;
	text-align: center;
	font-family: 'Arial';
	font-size: 12px;
	color: #d66749;
	line-height: 12px;
	margin: 5px 10px 0 0;
	padding: 0;
	float: right;
}

/** Botones "Anadir otro Servicio" "Reservar" **/

/* Contenedor de los botones */
#contbuttonsindiv {
	overflow:hidden;
	width:100%;
}

#contbuttons {
	position: relative;
	width: 100%;
	height: 30px;
	top: 265px;
	margin: 0;
	text-align: center;
}
#contbuttons {
	position: relative;
	width: 100%;
	height: 30px;
	top: 265px;
	margin: 0;
	text-align: center;
}


#logininrev textarea {
	width: 91%;
    border: 1px solid #cdc9c9;
    background: transparent;
    font-size: 13px;
    border-radius: 5px;
}


.selectestilista {
	margin: 10px 0 5px 10px;
	display:inline-block;
	border-radius:5px;
	color:var(--objetos-seleccion-hora)!important;
}

.selectestilista span {
	font-size:18px;
	padding: 0 0 0 10px!important;
	color:var(--objetos-seleccion-hora)!important;
}
.empleadosselect{
	color: white!important;
}
div.selectreg.estilistas{
	height: 30px;
}
.selectreg {
	margin: 0;
	display: inline-block;
	cursor: pointer;
}

#fecha {
	text-align: center;
	font-size: 14px;
	line-height: 14px;
	background-color: #ffffff;
}

.revisahr {
	margin: 10px 10px 0 10px;
}

#contbuttonres {
	position: absolute;
	width: 100%;
	height: 30px;
	top: 330px;
	text-align:center;
}


.selectempleado {
	margin:15px 0;
	overflow:hidden;
}

.selectempleado span {
	margin-left:1px!important;
	font-size:14px!important;
	float:left!important;
}


.selecteddaydetails:focus {

	background-color: #88eedd;

}

.selecteddaydetails span:nth-child(1) {
	font-size:24px!important;
	color:var(--objetos-seleccion-hora);
	font-weight: bold;
}

.selecteddaydetails span:nth-child(2) {
	font-size:18px!important;
	color:#777777;
	margin:0 0 0 10px!important;
}

.selecteddaydetails span:nth-child(3) {
	font-size:18px!important;
	color:#777777;
	margin:0!important;
}


.selecthora {
	border-right-color:var(--objetos-seleccion-hora);
	border-right-width:3px;
	border-right-style:solid;
	margin-right:5px;
	overflow:hidden;
	float:left;
	width:50%;
	margin:2px 0 2px 20px;
}
	

.selecthora span:nth-child(2) {
	color:var(--objetos-seleccion-hora);
	font-size:20px!important;
	float:left;
	margin:0!important;
	}
	
.selecthora span:nth-child(7) {
	clear:both;
	color:#777777;
	font-size:12px!important;
	float:left;
	}
	
.selecthora span:nth-child(8)  {
	color:#777777;
	font-size:12px!important;
	float:left;
	}
	

.otherserv {
	font-family: var(--main-font) !important;
	min-width: 110px;
	height: 25px!important;
	font-size: 19px !important;
	margin:10px 10px 0 30px;
	border: none!important;
	background:none!important;
	color:var(--boton-seleccion)!important;
}

.cartreserve {
	font-family: var(--main-font) !important;
	position: relative !important;
	min-width: 150px;
	height: 35px;
	font-size: 19px !important;
	padding: 1px 3px !important;
	border: 1px solid #828eae !important;
	-moz-box-shadow: 0 0 5px #f3e1e6;
	-webkit-box-shadow: 0 0 5px #f3e1e6;
	box-shadow: 0px 0px 5px #f3e1e6;
	margin: 0 auto;
}

.reserve {
	font-family: var(--main-font) !important;
	position: relative !important;
	min-width: 190px;
	
	font-size: 19px !important;
	padding: 1px 3px !important;
	border: 1px solid var(--boton-seleccion) !important;

	-moz-box-shadow: 0 0 5px #f3e1e6;
	-webkit-box-shadow: 0 0 5px #f3e1e6;
	box-shadow: 0px 0px 5px #f3e1e6;
	border-radius:5px;
	background-color:var(--boton-seleccion)!important;
	color: var(--texto-contraste-claro)!important;
	margin: 5 auto 10px auto;
}
/*
table.confirma th {
	font-family: 'JosefinSansRegular' !important;
	font-weight: 500;
}

table.confirma td {
	border-style: solid;
	border-color: #b0d6f1;
	border-width: 2px;
	padding: 0 0 0 5px;
}

table.confirma strong {
	font-family: 'JosefinSansBold' !important;
}

#confirmacion input {
	margin: 10px auto;
	font-size: 18px !important;
	padding: 6px;
	color: #ffffff !important;
	font-family: 'JosefinSansBold' !important;
	background-color:var(--objetos-seleccion-hora);
}


table.confirma tbody:before {
    content: "-";
    display: block;
    line-height: 15px;
    color: transparent;
}
*/

/********* BONO *********/

#loginout ul.bono {
	list-style: none;
	padding: 0;
	margin: 0 8px 0 4px;
	width: 100%;
}

#loginout ul.bono li {
	float: left;
	width: 20%;
	text-align: center;
	font-family: var(--main-font),sans-serif;
	font-size: 18px;
	line-height: 23px;
	color: #ffffff;
}

#loginout ul.bono li p {
	margin: 9px 0 0 0;
	padding: 0;
}

#loginout ul li:nth-child(1) p {
	margin: 20px 0 0 0 !important;	
}

p.confirmtxt {
	margin: 10px 30px 30px 30px;
	padding: 0;
	font-family: var(--main-font),sans-serif;
	font-size: 24px;
	color: #2b3686;
	text-align: center;
}

	#centerbox {
		width: 1020px;
	}
	

#contdetail {
		display: block;
		position: fixed;
		bottom: 0;
		left:-4px;
		z-index: 999;
		width: 100%;
		background-color: var(--fondo-contenedor)!important;
		-webkit-box-shadow: 0 0 50px -10px #000000;
		box-shadow: 0px 0px 50px -5px #000000;
		max-width: 100%;
}
.carritocontenedor, .carritocontenedorpack {
	min-height:8px;
	min-width:80px;
	margin:2px 2px 0px 2px;
	padding:2px 2px;
	max-width:140px;
	width: 121px;
	height: 40px;
	background-color: var(--fondo-boton-sel-servicio);
}
#conttabdet {
	width: 100%!important;
	border-bottom-style:none!important;
	margin:0 0 0 0!important;
}
.submitBtn2 {
		background-color:var(--boton-seleccion)!important;
		padding:0 20px!important;
		position: absolute!important;
		right: 10px;
		top: 3px;
		font-size: 19px !important;
		border: 1px solid var(--boton-seleccion) !important;
		box-shadow: 0px 0px 5px #f3e1e6;
		border-radius: 5px;
		color: var(--texto-contraste-claro)!important;
}
.submitBtn3 {
		background-color:transparent!important;
		padding:0 20px!important;
		font-size: 19px !important;
		border: 1px solid #444!important;
		box-shadow: 0px 0px 5px #f3e1e6;
		border-radius: 5px;
		color: #444!important;
		cursor: pointer;
}
.submitBtn4 {
		background-color:var(--boton-seleccion)!important;
		padding:0 20px!important;
		font-size: 19px !important;
		border: 1px solid var(--boton-seleccion)!important;
		box-shadow: 0px 0px 5px #f3e1e6;
		border-radius: 5px;
		color: var(--texto-contraste-claro)!important;
		cursor: pointer;
}
#tabbox{
		margin-top: 0px;
		margin-bottom: 140px;
}
.seleccionardia-contenedor{
	border: 1px solid #e6e8ed;
	height: 109px;
	width: 100%;
	margin-left: 6px;
	border-radius: 5px 5px 0px 0px;
}
div#not-employer-available{
	margin-top: 3em;
}
#groupContainer {
		margin: 0 0 100px 0;
}
.clase_datos_salon{
	margin-left: 22px;
	width: 50%;
	display: inline-block;	
	float: left;
}
.clase_datos_salon > h2{
	margin-bottom: 5px;
}
.clase_datos_salon > p{
	margin-top: 0px;
	margin-bottom: 0px;
}
table#tabla_horario{
	width: 100%;
	padding-left: 2em;
	padding-right: 1em;
	margin-top: -10px;
}
table#tabla_horario td{
	padding: 3.8px;
}
table#tabla_horario tr td:nth-child(2),table#tabla_horario tr td:nth-child(4){
	text-align: right;
	padding-right: 1em;
}
#contbannerhead{
	width: 95%;
}
.htitulo2 {
	width: 100%;
	text-align: left;
}
span#volversuperior{
	position: absolute;
	margin-top: 12px;
	color: var(--boton-seleccion-fb);
	font-size: 16px;
}
span#volversuperior2{
	position: absolute;
	margin-top: 12px;
	color: var(--boton-seleccion-fb);
	font-size: 16px;
}
table.table_historial_principal{
	width: 100%;
	border: 1px solid #444;
	border-radius: 5px;
	border-spacing: 0;
}
table.table_historial > tbody > tr{
	height: 3em;
}
table.table_historial > tbody > tr >th{
	border-bottom: 1px solid #444;
	text-align: left;
	padding: 10px;
}
table.table_historial > tbody > tr >td:first-child{
	width: 100px;
}
table.table_historial > tbody > tr >th:first-child{
	width: 100px;
}
table.table_historial > tbody > tr >td:nth-child(2){
	width: 20%;
}
table.table_historial > tbody > tr >th:nth-child(2){
	width: 20%;
}
table.table_historial > tbody > tr >td:nth-child(4){
	width: 20%;
}
table.table_historial > tbody > tr >th:nth-child(4){
	width: 21.5%;
}
table.table_historial > tbody > tr{
	height: 2em;
}
table.table_historial > tbody > tr >td{
	border-bottom: 1px solid #d8dade;
	padding: 10px;
}

table.table_bono > tbody > tr{
	height: 3em;
}
table.table_bono > tbody > tr >th{
	border-bottom: 1px solid #444;
	text-align: left;
	padding: 10px;
}
table.table_bono > tbody > tr >td:first-child{
	width: 30%;
}
table.table_bono > tbody > tr >th:first-child{
	width: 30%;
}
table.table_bono > tbody > tr >td:nth-child(2){
	width: 20%;
}
table.table_bono > tbody > tr >th:nth-child(2){
	width: 20%;
}
table.table_bono > tbody > tr >td:nth-child(4){
	width: 10%;
}
table.table_bono > tbody > tr >th:nth-child(4){
	width: 11.5%;
}
table.table_bono > tbody > tr{
	height: 2em;
}
table.table_bono > tbody > tr >td{
	border-bottom: 1px solid #d8dade;
	padding: 10px;
}

@media (max-width: 966px) {
	
	#centerbox {
		width: 98%;
	}
	
	.htitulo {
		width: calc(100% - 430px);
		margin: 0 0 0 190px;
		padding: 0 0 0 0!important;
	}
	.bl2 {
		width: 0;
		height: 0;
		border: 0;
		left: 0;
		bottom: 0;
	}
	#signout {
		width: 45px;
		line-height: 33px;
		border-top-right-radius: 4px;
		border-bottom-right-radius: 4px;
	}
	#signout a {
		padding-left: 9px;
		padding-top:0!important;
	}
	.scorner {
	    top: 0;
	}
	#bienvenida {
		margin: 0;
		right: 0;
		/*width: 200px;*/
	}
	#bienvenida p {
		width: 145px
	}
	#contbannerhead {
		/*margin-top:30px;*/
	}
}

@media (max-width: 920px) {

	
	#bienvenida p {
	margin: 0 5px 0 -50px;
	}
	
	.htitulo {
		width: calc(100% - 408px) !important;
	}

	.sticky div.htitulo {
		padding: 0 0 0 0!important;
	}
	
	#separador {
	}
	#menu {
		width: 190px;
	}
	#bienvenida {
		width: 170px !important;
		top:5px;
	}

	#tabselect, #loginoutrev {
		/*width: calc(97% - 10px) !important;
	    left: 5px !important;*/
	}
	.box {
		width: 84% !important;
		margin: 0 8% !important;
	}
	#puntos {
		left: 45px !important;
	}
	
	
	.marcoreserva{
		width:100%!important;
		overflow:block;
		padding:2px 2px!important;
	}
	
	#packdetail {
		/*left: 40% !important;*/
	}
	
	
	#loginout {
		/*margin: 0 10px 0 200px !important;*/
		width: calc(100% - 210px) !important;
	}
	#loginout ul {
		width: calc(100% - 27px);
	}
	#loginin {
		width: calc(100% - 8px);
	}
	.loginoutrev {
		width: calc(100% - 210px);
		margin: 0 10px 0 200px;
	}
	.logininrev {
		width: calc(100% - 8px);
		margin: 0 4px 0 4px;
	}
}

@media (max-width: 869px) {
	.bg img{
		height:100%!important;
	}
	ul.sernav li.tres, ul.packnav li.tres {
	    width: 29%;
	}
	
	div.ventanasemana ul{
		line-height: 1;
		font-size: 180%;
		width:100%;
		font-size:150%;
	}
	
	div.ventanasemana li{
		padding:1.3em;
	}
	
span#volversuperior2{
		display: none;
	}
	
}
/*
*/
/*cambiamos la posicion del carrito de la compra*/
/*
*/

@media (max-width: 810px) {
	.row-reverse{
		flex-direction:row;
	}
	
	#groupContainer {
		margin: 0 0 0px 0;
	}
	div.separador{
		height: 0px;
	}
	.seleccionardia{
		margin-top: 0px;
	}
	.rotulomeses{
		height: 30px!important;
	}
	.rotulomeses p{
		margin-top: 0px;
		font-size: 22px;
		font-weight: bold;
	}
	#tabbox{
		margin-top: 0px;
	}
	
	#contdetail {
		display: block;
		position: fixed;
		bottom: 0;
		left:-4px;
		z-index: 999;
		width: 100%;
		background-color: var(--fondo-contenedor)!important;
		-webkit-box-shadow: 0 0 50px -10px #000000;
		box-shadow: 0px 0px 50px -5px #000000;
		max-width: 100%;
	}
	.submitBtn2 {
		background-color:var(--boton-seleccion)!important;
		padding:0 20px!important;
		position: absolute!important;
		right: 10px;
		top: 3px;
		font-size: 19px !important;
		border: 1px solid var(--boton-seleccion) !important;
		box-shadow: 0px 0px 5px #f3e1e6;
		border-radius: 5px;
		color: var(--texto-contraste-claro)!important;
	}
	.marcoventanahoras {
		max-height: 100%;
	}
	
	#tabselect, #loginoutrev {
		width: 100%;
	    left: 0;
	}
	
	
	.myButt{
		position:absolute;
		padding:10px!important;
		right: 10px;
		top: 0px;
		height: 45px;
	}
	
	.four{
    overflow: hidden;
    width: 180px;
	height:43px;
    padding: 0;
    /*border-radius: 5px 0 0 5px;*/
	}
	.four span{
		padding-left: 57px;
		position: absolute;
		left: 0px;
		top: 0px;
		padding-top: 7px;
	}
	.four:hover {
		margin-left:-50%;
		width:180px;
		/*border-radius:5px;*/
	}
	.icon {

	margin: 0px;
    padding: 0;
    /*border-radius: 5px 0 0 5px;*/
    width: 40px;
    height: 40px;
    font-size: 32px;

	}
	
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	
	.htitulo {
		width: calc(100% - 330px) !important;
		margin: 0 0 0 160px !important;
	}
	#separador {
		/*left: 50%;*/
	}
	#menu {
		width: 160px !important;
		height:90px;
	}
	ul.menuribbon li p {
		font-size: 20px;
	}
	#puntos {
		left: 30px !important;
	}
	
	ul.sernav li,
	ul.packnav li {
		border-right: 0!important;
	}
	ul.sernav li.cuatro,
	ul.packnav li.cuatro,
	ul.sernav li.tres,
	ul.packnav li.tres	{
		width: 89% !important;
	}
	ul.sernav li.cuatro:nth-child(2n),
	ul.packnav li.cuatro:nth-child(4n),
	ul.sernav li.tres:nth-child(2n),
	ul.packnav li.tres:nth-child(4n)	{
		border-right:0!important;
	}
	ul.sernav li.cuatro:nth-child(1n),
	ul.packnav li.cuatro:nth-child(3n),
	ul.sernav li.tres:nth-child(1n),
	ul.packnav li.tres:nth-child(3n)	{
		border-right: 0 !important;
	}
		
	#packdetail {
		left: calc(50% - 57px);
	}
	#loginout {
		width: calc(100% - 180px) !important;
		margin: 0 10px 0 170px !important;
	}
	#loginout ul {
		width: calc(100% - 27px);
	}
	#loginin {
		width: calc(100% - 8px);
	}
	.loginoutrev {
		width: calc(100% - 180px);
		margin: 0 10px 0 170px;
	}
	.divcart {
		width: 100%!important;
		background-color:var(--fondo-contenedor);
		right: 0;
		bottom: 0;
		left: 0!important;
		position:fixed!important;
		border-radius:0px!important;
		-moz-box-shadow: 0 0 10px #000000;
		-webkit-box-shadow: 0 0 10px #000000;
		box-shadow: 0px -1px 20px 2px #888888;
		margin:0px;
		z-index:3;
	}
	.divcart p{
		font-size:12px;
	}	
	
	#conttabdet {
	width: 100%!important;
	border-bottom-style:none!important;
	margin:0 0 0 0!important;
	}
	
	#contbuttonsindiv {
		overflow:hidden;
		width:19%;
		/*height:100%;*/
	}
	
	#contbuttonsindiv input{
		border-radius:25px;
		height:50px!important;
		max-width:90px;
		min-width:50px!important;
		font-size:12px;
		top:5px;
		width:50px!important;
		box-shadow: -1px -1px 10px 3px #aaaaaa;
	}
	
	.carritocontenedor, .carritocontenedorpack {
	min-height:8px;
	min-width:80px;
	margin:2px 2px 0px 2px;
	padding:2px 2px;
	max-width:140px;
	width: 121px;
	height: 40px;
	background-color: var(--fondo-boton-sel-servicio);
	}

	.selecthora {
	width:65%;
	margin:2px 0 2px 2px;
	border-style:none;
	}
	
	.marcohoraseleccionada {
		margin:3px 0 3px 5px;
		clear:both;
		border-left-style:solid;
		border-left-width:3px;
		border-left-color:var(--objetos-seleccion-hora);
	}

	.wrapper1sl {
		font-size:0.9em;
		/*margin:0 0 5px 10px!important;*/
		margin-bottom: 10px;
	}
	span.wrapper2sl {
		width:90%!important;
		/*font-size: 0.9em;*/
	}
	span.wrapper3sl {
		font-size:1em!important;;
	}
	
	.wrapper1monoline {
		font-size:1.1em;
		line-height:1.1em;
	}

	.wrapper3{
	line-height:23px!important;
}
	
	.wrapper1line1{
		font-size:1.4em;
		line-height:1.1em!important;
		float:left;
		width: 90%;
	}

	.wrapper1line2{
		font-size:0.8em;
		line-height:1em!important;
		float:left;
		margin-top:0px;
		margin-left:3px;
	}
	
	
	
	.selectedsalon {
		height:100px;
	}
	.label_tittle{
		margin: 0px;
	}
	
}

@media (max-width: 740px) {
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		
		width:98%;
	}
	ul.sernav li.dos, ul.packnav li.dos {
		width: 45%;
	}
}

@media (max-width: 680px) {
	
	
	

	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		/*height: 670px;*/
	}
	#loginout ul.bono li {
		font-size: 20px;
	}
}

@media (max-width: 660px) {
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		/*height: 670px;*/
	}
	h1.titulo {
		margin: 0 !important;
	}
	#separador {
		/*left: calc(50% - 20px);*/
	}
	#loginout ul.bono li {
		font-size: 23px;
	}
}




@media (min-width:608px){
	.remove-cita {
		top:1px;
	}
	
	.cant-remove {
		color: var(--boton)!important;
	}
}



/*Cambiamos el formato del menu*/
@media (max-width: 608px) {
	
	ul.salnav {
		font-size:22px;
	}

	
	.marcodias{
		margin:0 0 0 25px;
	}
	
	.selectedsalon {
		background-size:200%;
	}
	
	.remove-cita {
		bottom:0px;
	}
	
	.cant-remove {
		color: #444!important;
	}
	.remove-cita span {
		color: #444!important;
	}
	
	.verticalbanner:after, .verticalbanner:before {
		border-top: 0 solid #302f4b!important; /* grado de inclinacion, a menor valor menor inclinacion, y color de los picos */
	}

	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		/*height: 670px;*/
	}
	.htitulo {
		font-size: 52px;
		text-align: center;
		width: calc(100% - 230px) !important;
		margin: 0 0 0 50%; 
	}
	
	.htitulo.sticky {
		margin: 0 0;
	}
	
	#separador {
		margin: 0 auto;
	}
	#logo {
		z-index: 300;
	}
	#menu {
		height: 90px;
		-webkit-transition: height .5s, -webkit-transform .5s;
		transition: height .5s, transform .5s;
	}
	/*#menu:hover {
		height: 540px;
	}*/
	ul.menuribbon {
		margin-top: -460px;
		-webkit-transition: margin-top 1s, -webkit-transform 1s;
		transition: margin-top .5s, transform .5s;
		
	}
	#theribbon {
		z-index: 300;
	}
	
	.threeglyph {
		display: inline-block;
	}
	#bienvenida {
		width: 70px !important;
	}
	#bienvenida p {
		display: none;
	}
	#signout {
		float: right;
		margin: 10px;
	}
	#loginoutrev {
		/*left: 0 !important;
		width: 97% !important;*/
	}

	#puntos {
		position: absolute;
		top: 27px;
		left: 43px !important;
		width: 70px;
		height: 70px;
	}
	.mispuntos {
		top: 17px;
	}

	
	.reserve {
		/*margin: 10px auto 10px auto!important;*/
		min-width: 235px!important;
		
	}
	#packdetail {
		left: calc(50% - 150px);
	}
	#loginout {
		margin: 0 !important;
		width: 100% !important;
	}
	#loginout ul {
		width: calc(100% - 27px);
	}
	#loginin {
		width: calc(100% - 8px);
	}
	.loginoutrev {
		width: 100%;
		margin: 95px 0 0 0;
	}
	.logininrev {
		width: calc(100% - 8px);
	}
	table.reservdet {
		width: calc(100% - 20px);
		margin: 0 10px;
	}
	#loginout ul.bono li {
		font-size: 20px;
	}
	
	.selectestilista {
	clear:both;
	margin: 10px 0 15px 15px;
	}
	
	.selectestilista span {
	font-size:18px!important;
	padding-left:0!important;
	}
	
	.selecthora {
	
	border-left-width:3px;
	border-left-style:none;
	overflow:hidden;
	float:left;
	width:95%;
	margin:4px 0 2px 2px;
	}
	
	.selecteddaydetails span:nth-child(1) {
	font-size:24px!important;
	}

	.selecteddaydetails span:nth-child(2) {
		font-size:14px!important;
	}

	.selecteddaydetails span:nth-child(3) {
		font-size:14px!important;
	}
	
	.selecthora span:nth-child(2) {
		font-size:20px!important;
		float:left;
		margin:0 0 0 5px!important;
	}
	
	.selecthora span:nth-child(7) {
		clear:both;
		font-size:12px!important;
		float:left;
		margin:0 0 0 5px!important;
	}
		
	.selecthora span:nth-child(8)  {
		color:#777777;
		font-size:12px!important;
		float:left;
	}
	

	span.wrapper2sl {
		font-size:0.6em;
		width:80%!important;
		line-height:0.9em!important;
	}
	
	span.wrapper0sl {
		width:80%!important;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
	}
	
	.changesalon {
		font-size:0.8em;
	}
	
	.confirm-reservas-pago-container {
		width:100%!important;
		float:left;
	}
	.tus-reservas-content-item{
		padding-left: 0px;
	}
	.tus-reservas-content-item > .remove-packs{
		padding-left: 5px;
		padding-top: 5px;
	}
	.confirm-pago-container{
		width:calc(-75px + 100%);
		border-left-style:none;
		height:100%;
		margin-left:40px;
		max-width:100%!important;
	}
	
	.pay-text-top {
		margin-top:40px!important;
	}
	#irahoy {
		margin: 0 0 0 0px;
		padding: 3px 2px 3px 5px;
	}
	table.table_historial_principal{
		font-size: 12px;
	}
	table.table_historial > tbody > tr >td:first-child{
		width: 66px;
	}
	table.table_historial > tbody > tr >th:first-child{
		width: 66px;
	}
	
}


@media (max-width: 572px) {
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		/*height: 670px;*/
	}
	.htitulo {
		padding: 0 0 0 0;
		
	}
	
}

	


/*Cambiamos el formato de los botones*/
@media (max-width: 566px) {
	
	ul.salnav {
		font-size:20px;
	}
	
	.wrapper1line1{
		font-size:1.4em;
		line-height:1em!important;
		float:none;
	}

	.wrapper1line2{
		font-size:1em;
		line-height:1em!important;
		float:none;
		margin-top:0px;
		margin-left:5px;
	}
	
	
	.percent-box {
		border:none;
	}
	
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		/*height: 670px;*/
	}
	ul.sernav li.cuatro,
	ul.sernav li.tres,
	ul.sernav li.dos,
	ul.sernav li.uno,
	ul.packnav li.cuatro,
	ul.packnav li.tres,
	ul.packnav li.dos,
	ul.packnav li.uno
	{
		width: 92.7% !important;
		font-size: 18px !important;
	}	
	
	.rotulomeses{		
	height:40px;	}
	
	#semananext {		
	margin: 32px 0 0 calc(100% - 40px);	
	}
	
	#semanaprev {		
	margin: 32px 0 0 10px;			
	}
	.marcodias{
		width:calc(100% - 80px);
		margin:0 0 0 40px;
		position:absolute;
		overflow:hidden;
	}
	.seleccionardia {
		max-height:80px;
		margin-top:5px;
		position: relative;
		margin-right: 1em;
	}
	.seleccionardia-contenedor{
		border: 1px solid #e6e8ed;
		height: 80px;
		width: 100%;
		margin-left: 6px;
		border-radius: 5px 5px 0px 0px;
	}
	div.ventanasemana span {
		font-size:20px;
		border-bottom:none;
		transform: translate(-50%, -35%);

	}
	.selected{
		background-color:var(--boton-seleccion)!important;
		color:var(--texto-boton)!important;
		opacity:1!important;
		filter:alpha(opacity=1);
		-moz-opacity: 1;
		filter: grayscale(0%);
		box-shadow:none;
		-moz-box-shadow:none;
		-webkit-box-shadow:none;
		filter: shadow(color=#333333, direction=135, strength=2);
	}
	.selected span.bottomday{
		background-color: var(--boton-seleccion)!important;
		border-radius: 50%;
		padding: 5px;
	}
	div.ventanasemana ul{
		font-size: 160%!important;
	}
	div.ventanasemana span:nth-child(1) {
			font-size:12px!important;
			transform: translate(-50%, 0%);
			
		}
	li.diario:not(.selected) span.bottomday:hover{
		background-color: grey!important;
		border-radius: 50%;
		padding: 5px;
		color: white;
	}
	div.ventanasemana li {
			padding: 0.7em;
			/*margin: 2px 0 -2px 0;*/
			border-radius:0%;
			background-color: transparent!important;
	}
	
	.selected span:nth-child(1){
		color:var(--objetos-seleccion-hora)!important;
	}
	.confirm-text-top{
		margin-top: 43px!important;
		margin-left: 5px;
	}
}

@media (max-width: 500px) {
	
.options-overlay input{
	min-width:80%;
	max-width:90%;
}
	
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
	}
	#centerbox {
		/*height: 670px;*/
	}
	
	ul.sernav li.cuatro,
	ul.sernav li.tres,
	ul.sernav li.dos,
	ul.sernav li.uno,
	ul.packnav li.cuatro,
	ul.packnav li.tres,
	ul.packnav li.dos,
	ul.packnav li.uno {
		width: 95% !important;
		border-right: 0px !important;
	}
	span#volversuperior{
		display: none;
	}
	.confirm-text-top{
		margin-top: 43px!important;
		margin-left: 5px;
	}
}

@media (max-width: 480px) {

	#tabselect {
		/*margin-top:50px;*/
	}

	#tabbox h2 {
		/*padding: 10px 10px 0 10px!important;*/
		line-height: 40px!important;
	}
	
	#contenedor_global {
		min-height: 700px !important;
		max-height: 100% !important;
		height: auto !important;
	}
	#centerbox {
		/*height: 670px;*/
	}

	ul.sernav li.cuatro,
	ul.sernav li.tres,
	ul.sernav li.dos,
	ul.sernav li.uno,
	ul.packnav li.cuatro,
	ul.packnav li.tres,
	ul.packnav li.dos,
	ul.packnav li.uno {
		width: 93% !important;
	}
	

	#contbuttons {
		top: 285px;
	}
	#tabbox, #logininrev {
		min-height: 425px;
		/*height: 215px;*/
	}
	#tabgap {
		min-height: 415px;
	}
	
	.clicknext {
		top: 178px;
	}
	footer {
	    top: calc(100% - 70px) !important;
	    height: 70px !important;
	}
	footer p {
		margin-top: 15px !important;
	}
	.confirm-text-top{
		margin-top: 43px!important;
		margin-left: 5px;
	}
	form.tusdatos{
		width: 100%!important;
	}
	span.tusdatos{
		width: 100%!important;
	}
}

@media (max-width: 430px) {
	h1.titulo{
		line-height:22px;
	}
	
	ul.sernav li.tres {
		width: 93% !important;
	}
}

@media (max-width: 398px) {
	h2 {
		font-size: 28px;
	}
}
.clase_zona_row{
	display: flex;
	flex-wrap: wrap;
	flex: 1 1 auto;
	margin: 12px;
	padding: 0;
}
.clase_zona_row_vcol{
	flex-basis: 0;
	flex-grow: 1;
	max-width: 100%;
	width: 100%;
	padding: 12px;
	margin: 0;
	display: block;
}
.clase_zona_row_vpanel{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	list-style-type: none;
	padding: 0;
	width: 100%;
	position: relative;
	z-index: 1;
	margin: 0;
}
.clase_familia {
    flex: 1 0 100%;
    max-width: 100%;
    position: relative;
    transition: .3s all cubic-bezier(.4, 0, .2, 1);
    transition-property: margin-top, border-radius, border, max-width;
    border-radius:4px;
    margin-bottom: 15px;
}
.clase_familia_sombra{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 2px 2px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 5px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12));
	border-radius: inherit;
	z-index: -1;
}
.clase_familia_button{
	align-items: center;
	text-align: start;
	border-radius: inherit;
	display: flex;
	font-size: .9375rem;
	line-height: 1;
	min-height: 48px;
	outline: none;
	padding: 16px 24px;
	position: relative;
	transition: .3s min-height cubic-bezier(.4,0,.2,1);
	width: 100%;
	justify-content: space-between;
	cursor: pointer;
	color: var(--texto-color-cuerpo-encabezados);
	background-color: var(--fondo-encabezadofamilias);
	border-style: none;
	margin-top: 0px;
}
.clase_familia_titulo{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: currentColor;
	border-radius: inherit;
	opacity: 0;
}
.clase_servicio{
	padding: 0;
	margin: 0;
	display: flex;
	overflow: hidden;
}
.clase_servicio_text{
	padding: 8px 24px 16px;
	flex: 1 1 auto;
	max-width: 100%;
	display: block;
}
.clase_servicio_text_cursor{
	display: flex;
	flex-wrap: wrap;
	flex: 1 1 auto;
	margin: -12px;
}
.clase_servicio_col1{
	flex: 0 0 58.3333333333%;
	max-width: 58.3333333333%;
	width: 100%;
	padding: 0px;
}
.clase_servicio_col2{
	flex: 0 0 15%;
	max-width: 15%;
	width: 100%;
	padding: 0px;
}
.clase_servicio_col3{
	flex: 0 0 26.6666666667%;
	max-width: 26.6666666667%;
	width: 100%;
	padding: 0px;
}
.clase_servicio_col4{
	flex: 0 0 100%;
	max-width: 100%;
	width: 100%;
	padding-left: 10px;
}
.clase_servicio_col5{
	flex: 0 0 95%;
	max-width: 95%;
	width: 100%;
	padding: 0px;
	margin-left: 10px;
}
.clase_servicio_col6{
	flex: 0 0 40.6666666667%;
	max-width: 40.6666666667%;
	width: 100%;
	padding: 0px;
}
.clase_servicio_col5 p{
	margin: 0px;
}
.clase_servicio_precio{
	font-weight: 700;
	font-size: 1.1em;
	text-align: right!important;
}
.clase_servicio_tiempo{
	font-size: .8em;
	color: #0000008a;
	text-align: right!important;
	font-family: var(--comment-font),sans-serif;
}
.clase_servicio_contenedor{
	padding: 12px;
}
.clase_servicio_contenedorcentrado{
	padding: 12px;
	text-align: center;
}
.clase_servicio_contenedor p{
	margin-bottom: 0px;
	font-family: var(--comment-font),sans-serif;
}
.clase_selector{
	border-color: var(--boton-seleccion);
	border-radius: 4px;
	padding: 5px;
	background-color: white;
	color: var(--boton-seleccion);
	font-size: 14px;
	border-style: solid;
	cursor: pointer;
	width: 100%;
	text-overflow: ellipsis;
	overflow: hidden;
}
@media (pointer: fine) {
    /* Device with accurate pointing (desktop, stylus-based) */
	.clase_selector:hover{
		background-color: var(--boton-seleccion);
		color: white;
	}
	.clase_selector.disabled:hover{
		background-color: transparent!important;
		color: var(--selector-disabled);
		border-color: var(--selector-disabled);
		opacity: 1;
	}
}
.clase_selector.disabled{
	background-color:var(--selector-disabled)!important;
	color: white;
	border-color: var(--selector-disabled);
	opacity: 1;
}

.clase_busqueda{
	display: flex;
	flex-wrap: wrap;
	flex: 1 1 auto;
	margin: 0px;
	padding-left: 22px;
}
.clase_busqueda input{
	border: 1px solid grey;
	padding: 10px;
	font-size: 15px;
	width: 40%;
}
.clase_servicio_col4 h2{
	margin-top: 0px;
	margin-bottom: 0px;
}
.clase_busqueda_icono{
	margin-top: 10px;
}
.grow {
  -moz-transition: height .5s;
  -ms-transition: height .5s;
  -o-transition: height .5s;
  -webkit-transition: height .5s;
  transition: height .5s;
  height: auto;
  overflow: hidden;
}
button.cerrar_frmlogin{
	border: none;
	background: transparent;
	color: #444;
	font-size: 16px;
	margin: 0.8em 1.5em;
	cursor: pointer;
}
span#header_telefono{
	display: none;
}
div.clase_nombre_empleado{
	cursor: pointer;
}
@media (max-width: 680px) {
	.clase_zona_row_vcol {
		padding: 2px;
	}
	.clase_servicio_text{
		padding: 8px 8px 10px;
	}
	.clase_servicio_col2 .clase_servicio_contenedor{
		padding-left: 6px;
		padding-right: 0px;
	}
	h3.clase_nombre_servicio{
		letter-spacing: -1px;
	}
	table#tabla_cabecera tr th:nth-child(1),table#tabla_cabecera tr th:nth-child(3){
		display: none;
	}
	div#datos_salon{
		display: none!important;
	}
	span#header_telefono{
		display: block;
		position: absolute;
		top: 0px;
		right: 5px;
	}
	header#topmenu{
		position: fixed!important;
		max-height: 3.5em;
		overflow: hidden;
	}
	.confirm-text-top{
		margin-top: 43px!important;
		margin-left: 5px;
	}
	#tabbox:not(.nomargintop){
		margin-top: 47px!important;
	}
	#logininrev textarea {
		width: 83%;
	    
	}
	.clase_familia_button{
		padding: 0px 0px 0px 5px;
		
	}
	.submitBtn4{
		font-size: 14px!important;
	}
	.clase_servicio_contenedor{
		padding-left: 7px;
		padding-right: 4px;
	}
	.clase_servicio_contenedorcentrado{
		padding-left: 4px;
		padding-right: 4px;
	}
	.clase_zona_row{
		margin: 5px!important;
	}
	.clase_servicio_col4{
		padding-left: 3px!important;
	}
	.clase_busqueda{
		padding-left: 7px!important;
		margin-top: 1em;
	}
	.clase_busqueda input{
		width: calc(100% - 100px);
	}
	.clase_servicio_contenedor p{
		width: 170%;
		margin-top: 1.5em;
	}
	.clase_selector{
		margin-top: 0px;
	}
}
@media (max-width: 900px) {
	div#datos_salon_mapa{
		display: none!important;
	}
	div.clase_datos_salon{
		width: 70%!important;
	}
}
	
/*
 esta parte es para la nueva versión que afecta a la anterior por completo
*/
header#topmenu{
	position: initial;
}
footer{
	z-index: 2;
}
#contenido, .contenido{
	margin: initial;
}
.bg{
	/*background: none!important;*/
	background: var(--background-main);/*none!important;*/
}
#content-cont{
	margin-top: 0px;
	background-color: rgb(205, 204, 204);
	height: 100%;
	display: contents;
}
#groupContainer{
	box-shadow: 0 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 2px 2px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 5px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12));
}
#centerbox{
	height: 92%;
}
.label_tittle{
	display: none;	
}
span.login-title{
	font-size: 1.25rem;
	font-weight: 500;
	-webkit-hyphens: auto;
	hyphens: auto;
	letter-spacing: .0125em;
	font-family: var(--main-font),sans-serif;
}
p.login-title{
	font-size: 1rem;
	font-weight: 500;
	-webkit-hyphens: auto;
	hyphens: auto;
	letter-spacing: .0125em;
	font-family: var(--main-font),sans-serif;
	margin-top: 0px;
	margin-bottom: 0px;
}	
.fieldcontent-big,.logincontainer{
	height: auto; 
}
#loginout:not(.logtusdatos):not(.fb-data-fill), #loginoutreg:not(.logtusdatos):not(.fb-data-fill), #loginout-login:not(.logtusdatos):not(.fb-data-fill), #loginoutreg-login:not(.logtusdatos):not(.fb-data-fill){
	height: auto; 
	max-height: initial;
}
p.contrasenaolvidada a{
	font-family: var(--main-font)!important;
	color: #444;
}
.fieldcontent-white{
	color: #444!important;
	background-color: white;
	border: 1px solid #444;
	border-radius: 5px;
	min-width: 120px;
	cursor: pointer;
	line-height: 40px;
}
.menu-header span:nth-child(1){
	color: var(--texto-color-oscuro);
}
.sticky > div#contbannerhead >div.cont-htitulo2 > div.htitulo2 > table#tabla_cabecera tr th:nth-child(2)>a{
	 -moz-transition: font-size .5s ease;
  -o-transition: font-size .5s ease;
  transition: font-size .5s ease;
	font-size: 20px!important;
}
.sticky p#header_telefonomovil{
	display: none;
}
#newmenu li:hover{
	background-color: var(--texto-color-oscuro)!important;
}
#newmenu li:hover a{
	color: white;
}
.label_tittle_option{
	font-family: var(--main-font),sans-serif;
	color: #444!important;
}
.horasdisponibles:hover{
	background-color: var(--boton-seleccion)!important;
}
.horasdisponibles:hover > .selecteddaydetails span{
	color: white!important;
}
.horasdisponibles:hover > .actionspan{
	display: none!important;
}
.clase_nombre_empleado:hover{
	font-weight: bold;	
}
.datafecha{
	display: none;
}
div#cont-submit-buttons{
	margin-bottom: 1em;
}
div#conttabdet{
	display: none;
}
img#public-profile-photo{
	display: none;
}
.confirm-minute-start >span:before{
	padding: 6px 6px;
	
}
label.selectday,div#semananext,div#semanaprev{
	cursor: pointer!important;
}
.clase_salon_text_cursor{
	border: 1px solid #444;
	border-radius: 5px;
	padding: 1em;
	cursor: pointer;
}
.clase_nombre_salon > h2{
	margin-top: 0px;
	margin-bottom: 0px;
}
.clase_nombre_salon > p{
	margin-top: 0px;
	margin-bottom: 0px;
}
.clase_salon_text_cursor:not(.selected):hover{
	border: 1px solid var(--boton-seleccion);
}
.irahoy{
	color: var(--boton-seleccion-fb);
}
div#listadeespera{
	border-radius: 5px;
	box-shadow: 0 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 2px 2px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 5px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12));
	padding: 10px;
	background-color: rgba(142, 140, 140, 0.06);
	cursor: pointer;
}
div#listadeespera > p{
	text-align: center;
	margin: 0px;
	font-size: 1.2em;
}
div#listadeespera:hover{
	background-color: var(--boton-seleccion-fb)!important;
	color: white;
}
span.fechalabel{
	position: absolute;
	color: #444;
	background-color: white;
	margin-top: -9px;
	margin-left: 10px;
	font-size: 14px;
	padding-left: 1em;
	padding-right: 1em;
	height: 1em!important;
}
span.horalabel{
	position: absolute;
	color: #444;
	background-color: white;
	margin-top: -9px;
	margin-left: -68px;
	font-size: 14px;
	padding-left: 1em;
	padding-right: 1em;
	height: 1em!important;
}
select.horapicker{
	border: none;
	font-size: 20px;
	height: 1em!important;
	margin-top: 18px;
}
span.obslabel{
	position: absolute;
	color: #444;
	background-color: white;
	margin-top: -9px;
	margin-left: -150px;
	font-size: 14px;
	padding-left: 1em;
	padding-right: 1em;
	height: 1em!important;
}
.editwaitlist input:disabled{
	color: black!important;
}
.editwaitlist select:disabled{
	color: #444!important;
}
.editwaitlist span.fechalabel,.editwaitlist span.horalabel,.editwaitlist span.obslabel{
	color: #909090;
}
.editwaitlist .fieldcontent{
	border: 1px solid #909090;
}
.newwaitlist span.fechalabel,.newwaitlist span.horalabel,.newwaitlist span.obslabel{
	color: #909090;
}
.newwaitlist .fieldcontent{
	border: 1px solid #909090;
}

div#listadeesperacita{
	
	padding: 10px;
	background-color: var(--objetos-seleccion-hora);
	color: white;
}
div#listadeesperacita > p{
	text-align: center;
	margin: 0px;
	font-size: 14px;
}
.phonenumber{
	color: #444;
}
@media (max-width: 768px) {

    /* 1) Ocultar la cabecera superior */
    .table_historial_principal > tbody > tr:first-child {
        display: none;
    }

    /* 2) Quitar scroll horizontal del contenedor */
    .table_historial_principal div[style*="overflow:auto"] {
        overflow-x: hidden !important;
        overflow-y: auto !important;
        
        max-height: none !important;
    }

    /* 3) La tabla de datos deja de comportarse como tabla */
    .table_historial_principal,
    .table_historial_principal > tbody,
    .table_historial_principal > tbody > tr,
    .table_historial_principal > tbody > tr > td,
    .table_historial_principal .table_historial,
    .table_historial_principal .table_historial > tbody,
    .table_historial_principal .table_historial > tbody > tr,
    .table_historial_principal .table_historial > tbody > tr > td {
        display: block;
        width: 99% !important;
    }

    /* 4) Cada fila de cita se convierte en tarjeta */
    .table_historial_principal .table_historial > tbody > tr {
        
        border-radius: 10px;
        margin-bottom: 10px!important;
        padding: 10px;
        background: #fff;
    }

    /* 5) Cada celda pasa a ser una línea con etiqueta */
    .table_historial_principal .table_historial > tbody > tr > td {
        position: relative;
        border: none !important;
        min-width: 0 !important;
        padding: 5px 8px 0px 0%;
        
    }


    .table_historial_principal .table_historial > tbody > tr > td::before {
        position: absolute;
        left: 8px;
        top: 10px;
        width: 36%;
        font-weight: 600;
        color: #666;
        line-height: 1.2;
    }

    /* 7) Ajuste de tamaños */
    .table_historial_principal .table_historial > tbody > tr > td,
    .table_historial_principal .table_historial > tbody > tr > td span,
    .table_historial_principal .table_historial > tbody > tr > td a {
        font-size: 14px !important;
        line-height: 1.35;
    }

    /* 8) Iconos algo más pequeños */
    .table_historial_principal .glyphicons {
        font-size: 14px !important;
    }

    /* 9) El teléfono puede partir si hace falta */
    .table_historial_principal a[href^="tel:"] {
        word-break: break-all;
    }

    /* 10) La tabla interna de servicios también debe apilarse */
    .table_historial_principal .table_historial > tbody > tr > td table.table_historial,
    .table_historial_principal .table_historial > tbody > tr > td table.table_historial > tbody,
    .table_historial_principal .table_historial > tbody > tr > td table.table_historial > tbody > tr,
    .table_historial_principal .table_historial > tbody > tr > td table.table_historial > tbody > tr > td {
        display: block;
        width: 100% !important;
    }

    .table_historial_principal .table_historial > tbody > tr > td table.table_historial > tbody > tr {
        margin-bottom: 8px;
        padding-bottom: 8px;
        border-bottom: 1px solid #eee;
    }

    .table_historial_principal .table_historial > tbody > tr > td table.table_historial > tbody > tr:last-child {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
    }

    .table_historial_principal .table_historial > tbody > tr > td table.table_historial > tbody > tr > td {
        border: none !important;
        padding: 2px 0 !important;
    }

    /* 11) El bloque de estado centrado queda mejor alineado a la izquierda en móvil */
    .remove-cita,
    .tus-reservas-estado {
        text-align: left !important;
    }
    .table_historial tbody tr{
    	display: contents!important;
    
    }
    .table_historial {
    	padding-left: 5px;
    
    }
    .remove-cita{
    	margin-bottom: 10px;
		border-bottom: 1px solid grey;
		margin-left: 1em;
    }
    .tus-reservas-fecha{
    	padding: 0;
    }
}

.icono-profesional{
    width: 50px;
    height: 50px;
    border-radius: 50%;

    background: rgba(0, 0, 0, 0.07);
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;
    margin-right: 1em;
}

.icono-profesional .glyphicons-user{
    font-size: 24px;
    color: #5a5a5a;
}

.icono-profesional-peque{
    width: 35px;
    height: 35px;
    border-radius: 50%;

    background: rgba(0, 0, 0, 0.07);
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;
    margin-right: 1em;
}

.icono-profesional-peque .glyphicons-user{
    font-size: 16px;
    color: #5a5a5a;
}
.clase_empleadosel_cabecera{
	padding: 8px 24px;
}
.clase_empleadosel{
	width: 100%;
}
.clase_selector_empleado{
	background-color: transparent;
}
.clase_empleado_seleccionado{
	background-color: var(--fondo-encabezadofamilias);
}
.clase_selector_empleado_primero{
	border-top: 1px solid var(--fondo-encabezadofamilias);
}
.clase_selector_salon{
	padding: 6px 24px;
}

@media (max-width: 800px) {
	.sticky > div#contbannerhead >div.cont-htitulo2 > div.htitulo2 > table#tabla_cabecera tr th:nth-child(2)>a.nombre-largo{
		font-size: 16px!important;
		line-height: 16px;
	}
	.icono-profesional{
    width: 30px;
    height: 30px;
    border-radius: 50%;

    background: rgba(0, 0, 0, 0.07);
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;
    margin-right: 1em;
}

	.icono-profesional .glyphicons-user{
	    font-size: 16px;
	    color: #5a5a5a;
	}
	div.clase_servicio_text_cursor_empleado .clase_servicio_col1,div.clase_servicio_text_cursor_empleado .clase_servicio_col6{
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
		padding: 0px;
	}
}
.clase_salon_con_imagen .clase_salon_text_cursor{
    position:relative;
    overflow:hidden;
}

.clase_salon_con_imagen .clase_salon_text_cursor::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(255, 255, 255, 0.25);
}

.clase_salon_con_imagen .clase_nombre_salon{
    position:relative;
    z-index:1;
    color:white;
}
.clase_salon_text{
    cursor:pointer;
    overflow:hidden;
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.clase_salon_text_cursor{
    transition:transform .35s ease;
}

.clase_salon_text_cursor::before{
    transition:background .25s ease;
}

.clase_salon_text:hover,
.clase_salon_text.selected{

    transform:translateY(-3px);

    box-shadow:
        0 10px 25px rgba(0,0,0,.20);

    border-color:#b99649;
}

.clase_salon_text:hover .clase_salon_text_cursor,
.clase_salon_text.selected .clase_salon_text_cursor{

    transform:scale(1.02);
}

.clase_salon_text:hover .clase_salon_text_cursor::before,
.clase_salon_text.selected .clase_salon_text_cursor::before{

    background:rgba(0,0,0,.20);
}
.SalonReservar{
    
    right:20px;
    bottom:5px;

    padding: 9px 18px;

    border-radius:15px;

    background:var(--texto-color-cuerpo-encabezados);
    color:white;

    font-weight:600;
    font-size:15px;

    transition:.2s;
    
    border: none;
}

.SalonReservar:hover{
    background:#a88534;
    transform:scale(1.05);
}

#tabla_horario .hoy td:first-child{
    font-weight:600;
    position:relative;
    padding-left:22px;
}

#tabla_horario .hoy td:first-child::before{
    content:"";
    position:absolute;
    left:4px;
    top:50%;
    transform:translateY(-50%);
    width:6px;
    height:70%;
    background:var(--texto-color-cuerpo-encabezados);   /* tu color */
    border-radius:4px;
}
#tabla_horario .hoy td:last-child{
    color:var(--texto-color-cuerpo-encabezados);
   
}
.nserviciofamilia{
	
	display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-left: 14px;
    padding: 3px 14px;

    background-color: rgba(0, 0, 0, 0.19);
    border-radius: 999px;

    color: white;
    font-size: 12px;
    font-weight: 100;
    line-height: 1;
    position: absolute;
	right: 14px;
	top: 12px;
}
.clase_familia_icono{
	margin-top: 10px;
	margin-bottom: -10px;
}


.reservas-listado {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 4px 20px 24px;
}

.reserva-card {
    background: #fff;
    border: 1px solid #e1e1e1;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.07);
    overflow: hidden;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
}

.reserva-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 7px 18px rgba(0, 0, 0, 0.11);
}

.reserva-card-cabecera {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 22px;
    background: #f5f5f5;
    border-bottom: 1px solid #e5e5e5;
}

.reserva-fecha-principal {
    display: flex;
    align-items: center;
    gap: 22px;
}

.reserva-fecha-dia,
.reserva-fecha-hora {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #555;
    font-size: 20px;
    font-weight: 600;
}

.reserva-fecha-hora {
    color: #bd9b51;
}

.reserva-fecha-principal .glyphicons {
    font-size: 17px;
}

.reserva-estado-contenedor {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.reserva-card-contenido {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 30px;
    padding: 22px;
}

.reserva-servicios-listado {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.reserva-servicio {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 180px;
    align-items: center;
    gap: 20px;
}

.reserva-servicio + .reserva-servicio {
    padding-top: 18px;
    border-top: 1px solid #ededed;
}

.reserva-servicio-nombre {
    color: #555;
    font-size: 20px;
    font-weight: 600;
}

.reserva-profesional {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #777;
    font-size: 17px;
}

.reserva-profesional .glyphicons {
    font-size: 15px;
    color: #bd9b51;
}

.reserva-salon {
    padding-left: 25px;
    border-left: 1px solid #e5e5e5;
}

.reserva-salon-datos {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.reserva-salon-linea {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #666;
    font-size: 17px;
    line-height: 1.35;
}

.reserva-salon-linea .glyphicons {
    flex: 0 0 auto;
    margin-top: 2px;
    color: #bd9b51;
    font-size: 17px;
}

.reserva-salon-linea a {
    color: #bd9b51;
    text-decoration: none;
    font-weight: 600;
}

.reserva-salon-linea a:hover {
    text-decoration: underline;
}

.tus-reservas-estado {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 13px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 600;
    white-space: nowrap;
}

.tus-reservas-estado.confirmado {
    color: #138000;
    background: #eaf7e7;
}

.tus-reservas-estado.nofade {
    color: #9a6415;
    background: #fff2dc;
}

.reserva-aviso {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 22px 20px;
    padding: 12px 14px;
    color: #9a3d30;
    background: #fff0ed;
    border-radius: 7px;
    font-size: 14px;
}

.remove-cita {
    margin-top: 8px;
    padding: 8px 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.15s ease;
}

.remove-cita:hover {
    background: #f3f3f3;
}

.remove-cita.cant-remove {
    cursor: not-allowed;
    opacity: 0.65;
}

@media (max-width: 750px) {

    .reservas-listado {
        padding: 4px 10px 20px;
    }

    .reserva-card-cabecera {
        align-items: flex-start;
        padding: 15px;
    }

    .reserva-fecha-principal {
        flex-direction: column;
        align-items: flex-start;
        gap: 7px;
    }

    .reserva-fecha-dia,
    .reserva-fecha-hora {
        font-size: 17px;
    }

    .reserva-card-contenido {
        display: block;
        padding: 17px;
    }

    .reserva-servicio {
        display: block;
    }

    .reserva-profesional {
        margin-top: 7px;
    }

    .reserva-salon {
        margin-top: 18px;
        padding-top: 18px;
        padding-left: 0;
        border-top: 1px solid #e5e5e5;
        border-left: 0;
    }

    .tus-reservas-estado {
        font-size: 13px;
        padding: 5px 9px;
    }
    .clase_zona .clase_familia_icono{
		padding: 5px 15px;
	}
	.nserviciofamilia{
		right: 14px;
		top: 8px;
		background-color: white;
		color: black;
		border: 1px solid var(--texto-color-cuerpo-encabezados);
	}
}

.tus-reservas-estado.sin-confirmar {
    color: #89691f;
    background: #fff4d7;
}

.reserva-salon .remove-cita {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    margin-top: 20px;
    padding: 9px 12px;

    color: #777;
    background: #f4f4f4;
    border-radius: 7px;

    cursor: pointer;
    text-align: center;
}

.reserva-salon .remove-cita:hover {
    color: #a33434;
    background: #fff0f0;
}

.reserva-salon .remove-cita.cant-remove {
    color: #999;
    cursor: not-allowed;
    opacity: .7;
}

.reserva-salon .remove-cita.cant-remove:hover {
    color: #999;
    background: #f4f4f4;
}

.reserva-card-error {
    border-color: #d78e81;
}

.reserva-card-error .reserva-card-cabecera {
    background: #fff7f5;
}

.cuenta-group-container {
    width: 95%;
    padding: 10px;
}

.cuenta-contenedor {
    width: 100%;
}

.cuenta-cabecera {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 20px;
    margin-bottom: 28px;
}

.cuenta-volver {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    width: max-content;
    padding: 8px 0;

    color: var(--boton-seleccion-fb);
    background: transparent;
    border: 0;

    font-family: inherit;
    font-size: 18px;
    font-weight: 600;

    cursor: pointer;
}

.cuenta-volver .navigation-arrow {
    color: var(--boton-seleccion-fb);
    font-size: 28px;
}

.cuenta-titulo {
    margin: 0;
    color: #666;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
}

.cuenta-cabecera-espacio {
    min-width: 1px;
}

.cuenta-tarjeta {
    max-width: 920px;
    margin: 0 auto;
    padding: 28px;

    background: #fff;
    border: 1px solid #e3e3e3;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.07);
}

.cuenta-tarjeta-titulo {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 28px;
    padding-bottom: 22px;
    border-bottom: 1px solid #ececec;
}

.cuenta-tarjeta-titulo > .glyphicons {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    color: #fff;
    background: var(--fondo-boton-sel-servicio);
    border-radius: 50%;

    font-size: 23px;
}

.cuenta-tarjeta-titulo div {
    min-width: 0;
}

.cuenta-tarjeta-titulo strong {
    display: block;
    color: #555;
    font-size: 22px;
    line-height: 1.25;
}

.cuenta-tarjeta-titulo div > span {
    display: block;
    margin-top: 3px;
    color: #888;
    font-size: 15px;
    overflow-wrap: anywhere;
}

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

.cuenta-dato {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    min-width: 0;
    padding: 17px;

    background: #f7f7f7;
    border: 1px solid #ededed;
    border-radius: 10px;
}

.cuenta-dato-icono {
    flex: 0 0 auto;
    margin-top: 3px;
    color: var(--fondo-boton-sel-servicio);
    font-size: 19px;
}

.cuenta-dato-contenido {
    flex: 1;
    min-width: 0;
}

.cuenta-dato label {
    display: block;
    margin-bottom: 5px;

    color: #888;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.cuenta-dato-valor {
    color: #555;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
}

.cuenta-dato-email {
    overflow-wrap: anywhere;
}

.cuenta-dato input {
    box-sizing: border-box;
    width: 100%;
    height: 42px;
    padding: 7px 10px;

    color: #555;
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 7px;
    outline: none;

    font-family: inherit;
    font-size: 18px;

    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}

.cuenta-dato input:focus {
    border-color: var(--fondo-boton-sel-servicio);
    box-shadow: 0 0 0 3px rgba(211, 184, 77, 0.17);
}

.cuenta-sexo {
    margin: 22px 0 0;
    padding: 0;
    border: 0;
}

.cuenta-sexo legend {
    margin-bottom: 10px;
    color: #777;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
}

.cuenta-sexo-opciones {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cuenta-sexo-opciones input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.cuenta-sexo-opciones label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    min-width: 145px;
    padding: 12px 18px;

    color: #666;
    background: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 9px;

    font-size: 17px;
    font-weight: 600;

    cursor: pointer;

    transition:
        color 0.15s ease,
        background-color 0.15s ease,
        border-color 0.15s ease;
}

.cuenta-radio {
    display: inline-block;
    width: 18px;
    height: 18px;

    background: #fff;
    border: 2px solid #bbb;
    border-radius: 50%;
    box-shadow: inset 0 0 0 4px #fff;
}

.cuenta-sexo-opciones input:checked + label {
    color: #fff!important;
    background: var(--fondo-boton-sel-servicio);
    border-color: var(--fondo-boton-sel-servicio);
}

.cuenta-sexo-opciones input:checked + label .cuenta-radio {
    background: var(--fondo-boton-sel-servicio);
    border-color: #fff;
}

.cuenta-acciones {
    margin-top: 28px;
}

.cuenta-boton {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    box-sizing: border-box;
    width: 100%;
    min-height: 52px;
    padding: 12px 20px;

    border-radius: 9px;

    font-family: inherit;
    font-size: 17px;
    font-weight: 600;

    cursor: pointer;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease,
        background-color 0.15s ease;
}

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

.cuenta-boton-principal {
    color: #fff;
    background: var(--fondo-boton-sel-servicio);
    border: 1px solid var(--fondo-boton-sel-servicio);
}

.cuenta-boton-principal:hover {
    box-shadow: 0 5px 14px rgba(0, 0, 0, 0.13);
}

.cuenta-formulario-password {
    margin-top: 12px;
}

.cuenta-boton-secundario {
    color: var(--fondo-boton-sel-servicio);
    background: #fff;
    border: 1px solid var(--fondo-boton-sel-servicio);
}

.cuenta-boton-secundario:hover {
    background: rgba(211, 184, 77, 0.08);
}

.cuenta-mensaje-guardado {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    max-width: 920px;
    box-sizing: border-box;
    margin: 0 auto 16px;
    padding: 12px 16px;

    color: #347b2e;
    background: #edf8eb;
    border: 1px solid #cce7c8;
    border-radius: 9px;

    font-size: 15px;
    font-weight: 600;
}

@media (max-width: 700px) {

    .cuenta-group-container {
        box-sizing: border-box;
        width: 100%;
        padding: 8px;
    }

    .cuenta-cabecera {
        grid-template-columns: auto 1fr;
        margin-bottom: 18px;
    }

    .cuenta-titulo {
        padding-right: 45px;
        font-size: 21px;
    }

    .cuenta-cabecera-espacio {
        display: none;
    }

    .cuenta-volver {
        font-size: 15px;
    }

    .cuenta-volver .navigation-arrow {
        font-size: 23px;
    }

    .cuenta-tarjeta {
        padding: 18px;
        border-radius: 11px;
    }

    .cuenta-tarjeta-titulo {
        margin-bottom: 18px;
        padding-bottom: 17px;
    }

    .cuenta-tarjeta-titulo > .glyphicons {
        width: 44px;
        height: 44px;
        font-size: 20px;
    }

    .cuenta-tarjeta-titulo strong {
        font-size: 19px;
    }

    .cuenta-datos-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .cuenta-dato {
        padding: 14px;
    }

    .cuenta-dato-valor {
        font-size: 16px;
    }

    .cuenta-sexo-opciones {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cuenta-sexo-opciones label {
        min-width: 0;
        padding: 11px 10px;
        font-size: 15px;
    }

    .cuenta-boton {
        min-height: 48px;
        font-size: 15px;
    }
}
span#volversuperior3{
	
	color: var(--boton-seleccion-fb);
	font-size: 16px;
}
.cuenta-sexo-opciones #female:checked ~ label[for="male"],
.cuenta-sexo-opciones #male:checked ~ label[for="female"] {
    color: #666 !important;
    background: #f5f5f5 !important;
    border: 1px solid #ddd !important;
}
.cuenta-sexo-opciones input[type="radio"]:checked + label {
    color: #fff !important;
    background: var(--fondo-boton-sel-servicio) !important;
    border-color: var(--fondo-boton-sel-servicio) !important;
}


.historial-group-container {
    box-sizing: border-box;
    width: 95%;
    padding: 10px;
}

.historial-contenedor {
    margin-bottom: 2em;
}

.historial-cabecera {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 20px;
    margin-bottom: 28px;
}

.historial-volver {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: max-content;
    padding: 8px 0;

    color: var(--boton-seleccion-fb);
    background: transparent;
    border: 0;

    font-family: inherit;
    font-size: 18px;
    font-weight: 600;

    cursor: pointer;
}

.historial-volver .navigation-arrow {
    color: var(--boton-seleccion-fb);
    font-size: 28px;
}

.historial-titulo {
    margin: 0;
    color: #666;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
}

.historial-cabecera-espacio {
    min-width: 1px;
}

/* Sin datos */

.historial-vacio {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    min-height: 300px;

    color: #aaa;
    text-align: center;
}

.historial-vacio .glyphicons {
    color: #d1cece;
    font-size: 60px;
}

.historial-vacio h3 {
    margin-top: 14px;
    color: #555;
    font-weight: 600;
}

/* Contenedor de la tabla */

.historial-tabla-contenedor {
    width: 100%;
    overflow: hidden;

    background: #fff;
    border: 1px solid #ddd;
    border-radius: 12px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);
}

.historial-tabla-scroll {
    width: 100%;
    max-height: 480px;
    overflow: auto;
}

/* Tabla */

.historial-tabla {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

/*
 * Anchos de las columnas.
 * Estas clases deben estar aplicadas en los <col> del <colgroup>.
 */

.historial-tabla col.historial-col-fecha {
    width: 16%;
}

.historial-tabla col.historial-col-salon {
    width: 22%;
}

.historial-tabla col.historial-col-servicio {
    width: 42%;
}

.historial-tabla col.historial-col-profesional {
    width: 20%;
}

/* Cabecera */

.historial-tabla thead th {
    position: sticky;
    top: 0;
    z-index: 2;

    padding: 16px 18px;

    color: #666;
    background: #f5f5f5;
    border-bottom: 1px solid #ddd;

    font-size: 16px;
    font-weight: 700;
    text-align: left;
}

/* Filas y celdas */

.historial-tabla tbody tr {
    transition: background-color 0.15s ease;
}

.historial-tabla tbody tr:hover {
    background: #fafafa;
}

.historial-tabla td {
    position: relative;

    padding: 16px 18px;

    color: #666;
    border-bottom: 1px solid #eee;

    font-size: 16px;
    vertical-align: middle;
}

.historial-tabla tbody tr:last-child td {
    border-bottom: 0;
}

/* Contenido de las celdas */

.historial-dato {
    display: flex !important;
    align-items: center;
    gap: 10px;

    width: 100%;
    min-width: 0;
}

.historial-dato .glyphicons {
    position: static !important;
    display: inline-block;

    flex: 0 0 auto;
    width: auto !important;
    margin: 0 !important;

    color: var(--fondo-boton-sel-servicio);
    font-size: 15px;
}

.historial-dato span:last-child {
    min-width: 0;
    overflow-wrap: anywhere;
}

/* Fecha */

.historial-fecha {
    color: #555;
    font-weight: 600;
    white-space: nowrap;
}

/* Salón */

.historial-salon {
    align-items: flex-start;
    color: #6f6f6f;
    font-weight: 400;
}

/* Servicio */

.historial-servicio {
    color: #555;
    font-weight: 600;
    line-height: 1.35;
}

/* Profesional */

.historial-profesional {
    align-items: flex-start;
    color: #6f6f6f;
    font-weight: 400;
}

/* Tabla de bonos */

.historial-tabla-bonos col.bono-col-nombre {
    width: 29%;
}

.historial-tabla-bonos col.bono-col-salon {
    width: 23%;
}

.historial-tabla-bonos col.bono-col-fecha {
    width: 34%;
}

.historial-tabla-bonos col.bono-col-sesiones {
    width: 14%;
}

.bono-sesiones {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;

    padding: 5px 12px;

    color: #666;
    background: #f0f0f0;
    border-radius: 999px;
}

.bono-sesiones strong {
    color: var(--fondo-boton-sel-servicio);
    font-size: 18px;
}

/* Responsive */

@media (max-width: 750px) {

    .historial-group-container {
        width: 100%;
        padding: 8px;
    }

    .historial-cabecera {
        grid-template-columns: auto 1fr;
        margin-bottom: 18px;
    }

    .historial-titulo {
        padding-right: 45px;
        font-size: 21px;
    }

    .historial-cabecera-espacio {
        display: none;
    }

    .historial-volver {
        font-size: 15px;
    }

    .historial-volver .navigation-arrow {
        font-size: 23px;
    }

    .historial-tabla-contenedor {
        border-radius: 9px;
    }

    .historial-tabla {
        min-width: 760px;
    }

    .historial-tabla thead th,
    .historial-tabla td {
        padding: 13px 14px;
        font-size: 14px;
    }

    .historial-tabla-scroll {
        max-height: 520px;
        overflow-x: scroll;
    }
}
.historial-fecha {
    color: #555;
    font-weight: 600;
    font-size: 15px;   /* antes 16px */
    white-space: nowrap;
}

.historial-servicio {
    color: #555;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.35;
}

.historial-salon,
.historial-profesional {
    color: #6f6f6f;
    font-size: 15px;
    font-weight: 400;
}
.historial-fecha .glyphicons {
    font-size: 14px;
}


/* =========================================================
   MENÚ LATERAL
   ========================================================= */

.menu-lateral {
    box-sizing: border-box;
    width: 100%;
    min-height: 100%;
    padding-bottom: 18px;

    color: #444;
    background: #fff;
}


/* =========================================================
   CABECERA
   ========================================================= */

.menu-header {
    padding: 14px 16px 16px;
    border-bottom: 1px solid #ddd;
}

.menu-cabecera-boton {
    display: flex;
    align-items: center;
    gap: 14px;

    width: 100%;
    padding: 0;

    color: #444;
    background: transparent;
    border: 0;

    font-family: inherit;
    text-align: left;
    cursor: pointer;
}

.menu-cabecera-boton .navigation-arrow {
    flex: 0 0 auto;

    color: var(--boton-seleccion-fb);
    font-size: 29px;
}

#menublock.menu-lateral
.menu-header
.menu-cabecera-boton > .menu-cabecera-titulo {
    min-width: 0;

    color: #444 !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    line-height: 1.2;
}

.menu-profile-image {
    width: 36px;
    height: 36px;

    object-fit: cover;
    border-radius: 50%;
}


/* =========================================================
   LISTADO
   ========================================================= */

.menu-listado {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 16px 10px 0;

    list-style: none;
}

.menu-listado > li {
    list-style: none;
}

.menu-opcion {
    position: relative;

    display: flex;
    align-items: center;
    gap: 9px;

    box-sizing: border-box;
    width: 100%;
    min-height: 57px;

    margin: 0 0 2px;
    padding: 3px;

    background: transparent;
    border-radius: 9px;
}

.menu-opcion-icono {
    position: static !important;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 33px;
    width: 33px;
    margin: 0 !important;

    color: var(--boton-seleccion-fb) !important;

    font-size: 22px;
    text-align: center;
}

.menu-opcion-enlace {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 9px;

    box-sizing: border-box;
    flex: 1;
    min-width: 0;
    min-height: 51px;
    padding: 3px;

    color: #444 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 8px;

    font-family: inherit;
    text-align: left;
    text-decoration: none !important;

    cursor: pointer;

    transition:
        background-color 0.15s ease,
        transform 0.15s ease;
}

.menu-opcion-contenido {
    display: flex;
    flex: 1;
    flex-direction: column;

    min-width: 0;
}

.menu-opcion-titulo {
    display: block;
    margin: 0;

   

    font-size: 19px;
    font-weight: 600;
    line-height: 1.1;
}

.menu-opcion-subtitulo {
    display: block;
    margin-top: 2px;

    color: #666 !important;

    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.2;
}

.menu-opcion-flecha {
    position: static !important;

    display: inline-block;
    flex: 0 0 auto;

    width: auto !important;
    margin: 0 !important;

    color: #555 !important;
    font-size: 18px;

    transition: transform 0.15s ease;
}


/* =========================================================
   HOVER
   ========================================================= */

.menu-opcion:not(.menu-opcion-idioma):hover {
    background: #f7f7f7;
}

.menu-opcion:hover .menu-opcion-flecha {
    transform: translateX(3px);
    color: lightgrey!important;
}
.menu-opcion:hover .menu-opcion-subtitulo {
    color: lightgrey!important;
}

/* =========================================================
   OPCIÓN SELECCIONADA
   Solo se aplica cuando el enlace tiene class="seleccionada"
   ========================================================= */

.menu-opcion:has(> .menu-opcion-enlace.seleccionada) {
    background: #474747 !important;
    border-radius: 10px;
}

.menu-opcion > .menu-opcion-enlace.seleccionada {
    color: #fff !important;
    background: transparent !important;
}

.menu-opcion:has(> .menu-opcion-enlace.seleccionada)
> .menu-opcion-icono {
    color: #fff !important;
}

.menu-opcion:has(> .menu-opcion-enlace.seleccionada)
.menu-opcion .menu-opcion-titulo,
.menu-opcion > .menu-opcion-enlace.seleccionada
.menu-opcion-titulo {
    color: #fff !important;
}

.menu-opcion:has(> .menu-opcion-enlace.seleccionada)
.menu-opcion .menu-opcion-subtitulo,
.menu-opcion > .menu-opcion-enlace.seleccionada
.menu-opcion-subtitulo {
    color: rgba(255, 255, 255, 0.88) !important;
}

.menu-opcion:has(> .menu-opcion-enlace.seleccionada)
.menu-opcion-flecha {
    color: rgba(255, 255, 255, 0.72) !important;
}


/* =========================================================
   IDIOMA
   Nunca debe adoptar el fondo oscuro de una opción seleccionada
   ========================================================= */

.menu-opcion-idioma,
.menu-opcion-idioma:hover,
.menu-opcion-idioma:focus,
.menu-opcion-idioma:focus-within {
    min-height: 62px;
    margin-bottom: 5px;

    background: transparent !important;
}

.menu-opcion-idioma > .menu-opcion-icono {
    color: var(--boton-seleccion-fb) !important;
}


.menu-opcion-idioma .menu-opcion-subtitulo {
    color: #666 !important;
}

.menu-idiomas {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 3px;
}

.menu-idiomas form {
    margin: 0;
    padding: 0;
}

.menu-idioma-boton {
    min-width: 37px;
    padding: 6px 7px;

    color: #4b83ff !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 8px;

    font-family: inherit;
    font-size: 16px;
    font-weight: 500;

    cursor: pointer;
}

.menu-idioma-boton:hover {
    background: #f1f5ff !important;
}

.menu-idioma-boton.activo {
    color: #fff !important;
    background: var(--boton-seleccion-fb) !important;
    border-color: var(--boton-seleccion-fb) !important;
}


/* =========================================================
   NUEVA RESERVA
   Se destaca suavemente cuando no está seleccionada
   ========================================================= */

.menu-opcion:has(
    > .menu-opcion-enlace[href*="action=nuevareserva"]:not(.seleccionada)
) {
    background: rgba(213, 187, 79, 0.09);
}

.menu-opcion:has(
    > .menu-opcion-enlace[href*="action=nuevareserva"]:not(.seleccionada)
) .menu-opcion-titulo {
    color: var(--boton-seleccion-fb) !important;
    font-weight: 700;
}

/* Si Nueva Reserva está seleccionada, prevalece el estado oscuro */

.menu-opcion:has(
    > .menu-opcion-enlace[href*="action=nuevareserva"].seleccionada
) {
    background: #474747 !important;
}

.menu-opcion:has(
    > .menu-opcion-enlace[href*="action=nuevareserva"].seleccionada
) .menu-opcion-titulo {
    color: #fff !important;
}

.menu-opcion:has(
    > .menu-opcion-enlace[href*="action=nuevareserva"].seleccionada
) .menu-opcion-subtitulo {
    color: rgba(255, 255, 255, 0.88) !important;
}


/* =========================================================
   NOTIFICACIÓN
   ========================================================= */

.main-menunotification {
    position: absolute;
    top: 7px;
    right: 7px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 19px;
    height: 19px;

    color: #fff;
    background: #d95c4f;
    border-radius: 50%;

    font-size: 10px;
}


/* =========================================================
   CERRAR SESIÓN
   ========================================================= */

.menu-separador {
    height: 1px;
    margin: 9px 7px 7px!important;

    background: #e8e8e8!important;
}

.menu-opcion-logout .menu-opcion-icono,
.menu-opcion-logout .menu-opcion-titulo {
    color: #666 !important;
}

.menu-opcion-logout:hover {
    background: #faf3f2;
}

.menu-opcion-logout:hover .menu-opcion-icono,
.menu-opcion-logout:hover .menu-opcion-titulo {
    color: #a84b42 !important;
}


/* =========================================================
   PANTALLAS ESTRECHAS
   ========================================================= */

@media (max-width: 600px) {

    .menu-header {
        padding: 13px 14px 15px;
    }

    .menu-cabecera-boton {
        gap: 12px;
    }

    .menu-cabecera-boton .navigation-arrow {
        font-size: 27px;
    }

    #menublock.menu-lateral
    .menu-header
    .menu-cabecera-boton > .menu-cabecera-titulo {
        font-size: 21px !important;
    }

    .menu-listado {
        padding: 14px 8px 0;
    }

    .menu-opcion {
        min-height: 54px;
        gap: 8px;

        margin-bottom: 1px;
        padding: 2px;
    }

    .menu-opcion-icono {
        flex-basis: 31px;
        width: 31px;

        font-size: 21px;
    }

    .menu-opcion-enlace {
        min-height: 50px;
        padding: 3px 2px;
    }

    .menu-opcion-titulo {
        font-size: 18px;
    }

    .menu-opcion-subtitulo {
        font-size: 12px;
        line-height: 1.15;
    }

    .menu-opcion-flecha {
        font-size: 17px;
    }

    .menu-opcion-idioma {
        min-height: 58px;
        margin-bottom: 4px;
    }

    .menu-idioma-boton {
        min-width: 35px;
        padding: 5px 6px;

        font-size: 15px;
    }
}
.historial-tabla-bonos col.bono-col-nombre {
    width: 29%;
}

.historial-tabla-bonos col.bono-col-salon {
    width: 23%;
}

.historial-tabla-bonos col.bono-col-fecha {
    width: 34%;
}

.historial-tabla-bonos col.bono-col-sesiones {
    width: 14%;
}
.historial-tabla-bonos th:last-child,
.historial-tabla-bonos td:last-child {
    text-align: center;
}