/* =========================================================
   GL IMAGE VIEWER
   Usa el mismo .gl-overlay que las tarjetas
   ========================================================= */

/* Contenedor del viewer (capa encima de la tarjeta) */
.gl-viewer {
  position: absolute;
  inset: 0;
  z-index: 10;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

/* Estado activo */
.gl-viewer.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* =========================================================
   Modal contenedor
   ========================================================= */

.gl-viewer__modal {
  position: relative;
  width: 75vw;
  max-width: 1400px;

  display: flex;
  align-items: center;
  justify-content: center;

  overflow: hidden;
}

/* =========================================================
   Track (slider)
   ========================================================= */

.gl-viewer__track {
  display: flex;
  width: 100%;
  height: 100%;
  transition: transform 0.35s ease;
  touch-action: pan-y;
}

/* =========================================================
   Slides
   ========================================================= */

.gl-viewer__slide {
  min-width: 100%;
  max-width: 100%;
  object-fit: contain;
  user-select: none;
}

/* =========================================================
   Controles
   ========================================================= */

.gl-viewer__prev,
.gl-viewer__next,
.gl-viewer__close {
  position: fixed;
  background: none;
  border: none;
  color: #faf8f5;
  cursor: pointer;
  z-index: 2;
}

/* Flechas */
.gl-viewer__prev,
.gl-viewer__next {
  font-size: 4rem;
  top: 50%;
  transform: translateY(-50%);
}

.gl-viewer__prev {
  left: 5rem;
}

.gl-viewer__next {
  right: 5rem;
}

/* Cerrar */
.gl-viewer__close {
  top: 1rem;
  right: 1rem;
  font-size: 3rem;
  color: #ffffff;               
  -webkit-text-stroke: 2px #000;  
  font-weight: 600;
}

/* =========================================================
   Modo imagen única
   ========================================================= */

.gl-viewer--image .gl-viewer__prev,
.gl-viewer--image .gl-viewer__next {
  display: none;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 768px) {

  .gl-viewer__modal {
    width: 85vw;
  }

}

.zoom-image,
.zoom-gallery img {
  cursor: zoom-in;
}

.gl-overlay {
  position: fixed;
  inset: 0;
  background-color: hsla(217, 51%, 18%, 0.4);
  z-index: 999999;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);


  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 0.5s ease;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  
}

.gl-overlay.is-active {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.gl-overlay-inner {
  width: 600px;
  overflow-y: auto;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  opacity: 0;
  transform: translate(10px, 10px);
  transition: opacity 0.8s ease, transform 0.6s ease;
}

.gl-overlay.is-active .gl-overlay-inner {
  opacity: 1;
  transform: translate(0, 0);
}

body.gl-overlay-open {
  overflow: hidden;
}

@media (max-width: 720px) {
    .gl-overlay-inner {
  width: 400px;
}
}
@media (max-width: 500px) {
    .gl-overlay-inner {
  width: 350px;
}
}

/* -------------------tabs-------------------------*/

.uagb-tabs__body-wrap{
  max-width:100%!important;
}
.uagb-tabs__align-left {
  max-width:10%!important;
  min-width:10%!important;
background-color:#FFFF;
justify-content: center!important ;

}
  .availability-tab
  .uagb-tabs__panel 
  .uagb-tab {
    margin: 5px 3px 5px 3px!important;
  }


.availability-tab
  .uagb-tabs__panel
  .uagb-tab
  > .uagb-tabs-list {
  border: 1px solid #e4e2dd;
    border-radius:8px;
position: relative;
overflow: hidden;
}
.availability-tab
  .uagb-tabs__panel
  .uagb-tab
  > .uagb-tabs-list
  {
     box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.8),
    0 2px 10px rgba(0,0,0,0.05);
  }
.availability-tab
  .uagb-tabs__panel
  .uagb-tab
  > .uagb-tabs-list[aria-selected="true"] {
    background-color:var(--theme-palette-color-4);
      color:#FFFF;
}
.availability-tab
  .uagb-tabs__panel
  .uagb-tab
  > .uagb-tabs-list[aria-selected="true"]::after {

  content: "";
  position: absolute;
  inset: 0;

  background: linear-gradient(
    90deg,
    transparent 30%,
    rgba(255,255,255,0.35) 50%,
    transparent 70%
  );

  transform: translateX(-150%);
  animation: uagb-shine 3.5s ease-in-out infinite;
  pointer-events: none;
}
@keyframes uagb-shine {
  100% {
    transform: translateX(150%);
  }
}

@media(max-width:1200px){
    .progress-tab
    .uagb-tabs__body-wrap{
      width: 90vw;
    }
}

@media(max-width:767px){
    
  .availability-tab.uagb-tabs__stack1-mobile 
  .uagb-tabs__panel 
  .uagb-tab {
    margin: 5px 0 5px 0!important;
  }

  .uagb-tabs__align-left {
    max-width:100%!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    gap:5px;
  }
  .uagb-tabs__align-left > li{
 width:13%!important;
  }
}
@media (max-width: 720px) {
.uagb-tabs__body-wrap{
  width:500px;
}
  .uagb-tabs__align-left {
    max-width:500px!important;
  }
}
@media (max-width: 500px) {
    .uagb-tabs__align-left {
    max-width:380px!important;
  }
.uagb-tabs__body-wrap{
  width:380px;
}
}

/* ---------- second tab -------------- */

.advance-card-container {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 10px;
}

.advance-card-container::-webkit-scrollbar {
  height: 6px;
}

.advance-card-container::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.advance-card-container::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.advance-card-container::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* ------ translations --------*/

.widget-title{
    color: var(--theme-palette-color-10);
    font-size: 16px!important;
}

.zoom-btn {
  position:absolute;
  top:0;
  right:0;
  z-index:10;
  cursor:pointer;
  background:transparent;
  transition: background 0.2s ease, transform 0.15s ease;
}
.zoom-btn:hover{
  background:rgba(0,0,0,0.15);
}

/* -------- Header --------------*/
.ct-header a{
	--theme-text-transform: none!important;
	margin-left:32px;
}
.ct-menu-link img {
	width: 23px!important;
height: 16px!important;	
}
div[data-column="start"][data-placements="1"] {
	align-items:flex-start;
}

.gl-logo-header img{
	min-height:80px;
	height:5.5vw!important;
	max-height:100px;
	align-items:flex-start;
}

header .ct-container {
	transform: translateY(5px);
  transition:
		background-color 0.25s ease,
    transform 0.25s cubic-bezier(.4,0,.2,1),
    box-shadow 0.25s ease!important;
	height:5.5vw;
	max-height:100px;
} 

div[data-transparent-row="no"] .ct-container {
	transform: translateY(5px);
		  box-shadow: 
    0 8px 24px rgba(0, 0, 0, 0.12),
    0 2px 6px rgba(0, 0, 0, 0.08)!important;
	
} 

.list-amenities {
    display:grid;
  column-gap: 24px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
}


.card-off {
	display: none!important;
}
.container-hidden{
	visibility:hidden;
}
@media (max-width: 768px) {
.gl-logo-header img{
	min-height:70px;
}
}

.align-logo
{
	margin-bottom:-20px!important;
}






