/*
 Theme Name:   Sarova Health and Fitness
 Description:  A child theme for health clubs based on the main Sarova hotels theme.
 Author:       Oncotton LTD
 Author URI:   https://oncotton.net
 Template:     sarova-hotels
 Version:      1.0
*/

/* Import the parent theme's styles */
@import url("../sarova-hotels/style.css");

body.home .site-brand img {filter: invert(0);}

#primary {
	padding-top: 60px !important
}

#fixed-contact {
	bottom: 30px !important
}

.on-load-book-now {
	width: 135px
}

 #sarova-hero-area {
	position: relative;
	width: 100%;
	height: 80vh;  
	overflow: hidden;  
}
.header-search {
	display: none
}
 #sarova-hero-area img {
	width: 100%;
	height: 100%;
	object-fit: cover;  
	object-position: center; 
	display: block;  
}
.sticky .btn-cta {
	background: var(--wp--preset--color--aquilla);
	border-radius: 30px;
	margin-left:20px
}

.hidden a{
	opacity: 0 !important;
	pointer-events: none; 
}
.book-now-primary.btn-small {text-decoration: none}
.book-now-primary.btn-small svg{
	position: relative;
	top: 5px;
	padding-right: 5px
}
body:not(.home) .site-brand img {
	height: 50px !important;
}
.site-brand a {
	display: block
}

#fixed-contact {
	display: block !important; transition: opacity 0.5s ease-in-out;
	position: fixed;
	bottom: 10px;
	right: 20px;
	z-index: 999;
}


.studio-classes-calendar {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin: 20px 0;
	max-width: var(--wp--style--global--wide-size);
	margin: 0 auto;
}

.day-column {
	flex: 1;
	min-width: 200px;
	padding: 0;
}

.todays-classes {
	margin: 30px 0
}

.todays-classes-header {
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	align-items: center;
}

.todays-classes-header h3 span {opacity: .4; font-weight: 400}
.todays-classes-header a {
	position: relative;
	display: inline-flex;
	align-items: center;
	text-transform: capitalize;
	font-weight: 600;
	color: #000;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.3s ease;
	font-size: 0.825rem
}

.todays-classes-header a::after{
	content: '';
	display: inline-block;
	width: 26px;
	height: 26px;
	margin-left: 8px;
	background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='100pt' height='100pt' version='1.1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m73 49.996c-0.015625-0.61328-0.19922-0.98438-0.4375-1.25l-13-16c-0.61328-0.86719-2.0039-1.0039-2.875-0.30078-0.87109 0.70313-0.91797 2.0156-0.21875 2.8008l10.344 12.75h-37.812c-1.1055 0-2 0.89453-2 2 0 1.1055 0.89453 2 2 2h37.812l-10.344 12.75c-0.79297 0.78906-0.56641 2.1758 0.26953 2.918 0.64453 0.57031 2.3594 0.39063 2.8242-0.41797l13-16c0.33984-0.41406 0.44141-0.72266 0.4375-1.25z'/%3E%3C/svg%3E%0A");
	background-size: contain;
	background-repeat: no-repeat;
	transition: transform 0.3s ease;
}

.todays-classes-header a:hover::after {
  transform: translateX(-5px);
}

.day-heading {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
	color: #333;
}

.class-entry {
	margin-bottom: 15px;
	padding: 20px;
	border-radius: 8px;
	background: #f9f9f9;
}

.class-entry h4, .class-entry-today h4 {font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif !important;
font-size: 1rem;}

.class-entry-today {
	padding: 0px;
	border-radius: 0;
	background: transparent;
	border-bottom: 1px solid #ddd;
	display: flex;
	align-items: center;
	justify-content: space-between;
}


.class-entry-today > * {
	flex: 0 0 33.33%;
	box-sizing: border-box;
	padding: 10px;
}

.class-entry-today > *:last-child {
	text-align: right;
}

@media (max-width: 580px) {
	.class-entry-today > * {
		flex: 0 0 100%;
	}
	
	.class-entry-today > *:last-child {
		text-align: left;
	}
}


.class-title {
	font-size: 16px;
	margin: 0 0 5px;
	font-weight: bold;
}

.class-time {
	margin: 0;
}

.no-classes {
	font-size: 14px;
	color: #777;
	font-style: italic;
}


/* Example: Changing Highlight Colors */
.studio-classes-calendar .day-column.today .class-entry {
	border: solid 1px #000 
}

.studio-classes-calendar .day-column.today .day-heading {
	color: #444 
}

.studio-classes-calendar .day-column.today .day-heading {
	position: relative;
}

.studio-classes-calendar .day-column.today .day-heading:after {
	content: "Today";
	position: absolute; 
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	border: solid 1px #000;
	border-radius: 30px;
	font-size: 10px;
	padding: 5px 10px;
}

.studio-classes-calendar .day-column.today .class-title,
.studio-classes-calendar .day-column.today .class-time {
}

.studio-classes-calendar .day-column.today {
	animation: fadeIn 1s ease-in-out;
}

@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

.studio-classes-calendar .class-entry {
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.studio-classes-calendar  .class-entry:hover {
	transform: scale(1.03);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.relative-btn {position: relative !important}
.border-box {border: solid 1px #ddd; border-radius: 6px}



.table-container {
  max-width: var(--wp--style--global--content-size);
  margin: 0 auto;
}

.table-responsive {
  overflow-x: auto;
}

.weekly-calendar {
  width: 100%;
  border-collapse: separate; /* Allows border-radius to take effect */
  border-spacing: 0;
  background-color: #ffffff;
  border: 1px solid #000; /* Light gray border */
  border-radius: 10px; /* Rounded corners */
  overflow: hidden; /* Ensures rounded corners are visible */
}

.weekly-calendar th,
.weekly-calendar td {
  padding: 12px 16px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid #000; /* Light gray border */
  position: relative;
}

.weekly-calendar th {
  background-color: #FFF; /* Very light gray */
  color: #000;
  font-weight: 500;
  position: sticky;
  top: 0;
  z-index: 1;
}


.weekly-calendar tr:last-child td {
  border-bottom: none;
}

.weekly-calendar tr:hover {
  background-color: #f7f7f7; /* Slightly darker hover effect */
}

/* Typography */
.weekly-calendar td span {
  display: block;
  margin-top: 4px;
  font-size: 0.85em;
  color: #666666;
}

/* Category Styles */
.adults-only {
  background-color: #edf2f7; /* Muted Light Blue */
  color: #2c5282; /* Darker muted blue */
  border-left: 1px solid #2c5282;
}

.aquacise {
  background-color: #fff5f0; /* Muted Light Orange */
  color: #d69e2e; /* Darker muted orange */
  border-left: 1px solid #d69e2e;
}

.swimming-lessons {
  background-color: #f0fff4; /* Muted Light Green */
  color: #38a169; /* Darker muted green */
  border-left: 1px solid #38a169;
}

.open-swim {
  background-color: #e6fffa; /* Muted Light Teal */
  color: #319795;            /* Darker muted teal */
  border-left: 1px solid #319795;
}

.legend-color.open-swim {
  background-color: #e6fffa;
  border-left: 1px solid #319795;
}

.private-hire {
  background-color: #f5f5ff; /* Muted Light Purple */
  color: #6b46c1; /* Darker muted purple */
  border-left: 1px solid #6b46c1;
}

/* Extended Classes */
.swimming-lessons.extended,
.adults-only.extended {
  background-color: #e6ffed; /* Slightly different muted green for extended */
}

/* Legend Styles with Rounded Corners */
.legend {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0;
  gap: 15px;
}

.legend-item {
  display: flex;
  align-items: center;
  font-size: 0.95em;
}

.legend-item .legend-color {
  width: 16px;
  height: 16px;
  display: inline-block;
  margin-right: 8px;
  border: 1px solid #cccccc;
  border-radius: 1px; /* Circular colored squares */
}

/* Assign colors to legend items */
.legend-color.adults-only {
  background-color: #edf2f7;
  border-left: 1px solid #2c5282;
}

.legend-color.aquacise {
  background-color: #fff5f0;
  border-left: 1px solid #d69e2e;
}

.legend-color.swimming-lessons {
  background-color: #f0fff4;
  border-left: 1px solid #38a169;
}

.legend-color.private-hire {
  background-color: #f5f5ff;
  border-left: 1px solid #6b46c1;
}
.wp-block-column .wp-block-cover {padding: 80px}

.trainer-slider {
	position: relative;
}

.trainer-slider .swiper-wrapper {
	align-items: start;
}

.trainer-slider .swiper-button-prev, .trainer-slider .swiper-button-next {
	position: absolute;
	top: 10px;
	right: 0;
background-image: url("data:image/svg+xml,%3Csvg height='100pt' viewBox='0 0 100 100' width='100pt' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m67.34 15.898c-.63672-.76563-1.5703-1.2266-2.5664-1.2695-.99609-.046875-1.9648.32812-2.6719 1.0352-.70312.70313-1.0781 1.6719-1.0352 2.668.046875.99609.50781 1.9297 1.2734 2.5664l25.512 25.543h-84.32c-1.8906.097656-3.3711 1.6602-3.3711 3.5547 0 1.8906 1.4805 3.4531 3.3711 3.5547h84.32l-25.551 25.508c-1.3359 1.3984-1.3359 3.6016 0 5 .66016.66406 1.5625 1.0391 2.5 1.0391s1.8359-.375 2.5-1.0391l31.602-31.602-.003906.003907c.67969-.65625 1.0664-1.5586 1.0664-2.5 0-.94531-.38672-1.8477-1.0664-2.5z'/%3E%3C/svg%3E");}

.trainer-slider .swiper-button-prev {
	right: 60px
}

.swiper-button-disabled {
	opacity: 0.1
}

.has-aquilla-background-color + .wp-block-cover__inner-container a {
	color: #fff
}

.has-aquilla-background-color + .wp-block-cover__inner-container .gfield input,.has-aquilla-background-color + .wp-block-cover__inner-container .ginput_container select {
	border-bottom: 2px solid #fff;
}

.has-aquilla-background-color + .wp-block-cover__inner-container .gfield textarea {
	border-bottom: solid 2px  #fff;
	padding: 20px;
	border-color: #fff;
	width: calc(100% - 42px)

}

.wp-block-button__link.has-aquilla-background-color, .wp-element-button.has-aquilla-background-color {
	border-color: transparent
}

.wp-block-group.card {
  border-radius: 8px;
  border: solid 1px #CCC;
  padding: 40px;
  transition: box-shadow 0.3s cubic-bezier(.4,0,.2,1), 
			  transform 0.3s cubic-bezier(.4,0,.2,1);
  height: 100%; 
  text-align: left
}

.wp-block-group.card .wp-block-list {list-style: disc; margin-bottom: 20px !important}
.wp-block-group.card img {max-width: 210px; height: auto; width: auto}
	
.wp-block-group.card:hover {
		box-shadow: 0 8px 32px rgba(0,0,0,0.18), 0 1.5px 8px rgba(0,0,0,0.10);
		transform: scale(1.02);
		z-index: 1;
	}
.wp-block-group.card h2 {
		margin: 10px 20px 20px 0 !important
	}
.wp-block-group.card p {
		padding: 0 0 20px 0
	}
	
	.wp-block-group.card .wp-block-separator {
		margin-bottom: 30px
	}
	.wp-block-group.card ul {
		line-height: 1em
	}
	.wp-block-group.card li {
		padding: 0;
	}
	
.wp-block-group.card .entry-content {
		margin: 0 !important
	}
	
	.trainers.type-trainers {
		flex-direction: column;
	}
	
	.wp-block-query .wp-block-group.card {
		justify-content: center;
	}
/* Responsive Design */
	@media (max-width: 840px) {
	.site-brand a {
		height: 28px;
	}
	.on-load-book-now {
	width: 160px
	}
	.custom-logo-link {
		height: 30px
	}
body.home .custom-logo-link {
		height: 90px
	}
	#site-navigation ul.menu li a, body.home #site-navigation.sticky ul.menu li a {
		border: none
	}
	
	.class-content p {margin: 0}
	.class-entry-today {
		flex-direction: column;
		align-items: start
	}
	
	.class-entry-today h4 {
		font-weight: 600
	}
	body:not(.home) .site-brand img {
		height: 28px !important;
	}
	.class-entry-today > *:last-child {
		margin: 0
	}
	
	.class-entry-today > * {
		padding: 0
	}
	
	.class-entry-today {
	padding: 20px 0
	}
	.class-content {opacity: .6; font-size: 0.825rem; padding: 0; margin: 3px 0 15px 0}
	
	.wp-block-column .wp-block-cover {padding: 20px} 
	  .weekly-calendar th,
	  .weekly-calendar td {
		padding: 8px 12px;
		font-size: 0.9em;
	  }
	
	  .weekly-calendar th {
		font-size: 1em;
	  }
	
	  .legend {
		flex-direction: column;
		align-items: flex-start;
	  }
	}
		
@media (max-width: 540px)	{
		.wp-block-group.card {
			padding: 40px 0;
		}
	}