/* ============================================================
   ////  KoboStyles  ////  
   Author: KOBO / .LifeThink 
   ============================================================ */
:root {
	--kobo_color_black: #1C1C1C;
	/* --kobo_color_accent: #AEA3968C; */
	--kobo_color_accent: #545454;
	--kobo_color_linen: #EEE9E5;
	--kobo_color_bg: #F8F8F0;
	--kobo_color_grey: #5e5b5b;
	--kobo_font_body: "Inter", sans-serif;
	--kobo_font_heading: "Belleza", sans-serif;
	--kobo_font_title_sz: 32px;
	--kobo_font_subtitle_sz: 26px;
	--kobo_font_secitle_sz: 20px;
	--kobo_font_thtitle_sz: 16px;
	--kobo_slider_height: 100vh !important;
}

/* ============================================================
   Dev Temp Nots

 --kobo_slider_height: calc(100vh - (132px)) !important; 
 
 body.koboportal .someSelector { ... }
 body.koboaqua   .someSelector { ... }
 
 
 
 ============================================================ */

/* ============================================================
	  Dev
	  ============================================================ */

.koboDev {
	background: #fffae6;
	border: 1px dashed #d4aa00;
	color: #665500;
	font-family: monospace;
	font-size: 13px;
	padding: 6px 10px;
	margin: 15px 0;
	border-radius: 6px;
	opacity: 0.8;
	text-align: center;
}
.koboDevRed {
	background: #ffecec;
	border: 1px dashed #cc0000;
	color: #660000;
	font-family: monospace;
	font-size: 13px;
	padding: 6px 10px;
	margin: 15px 0;
	border-radius: 6px;
	opacity: 0.9;
	text-align: center;
}
.pdEditThis {
	display: none;
	position: fixed;
	top: 200px;
	background: red;
	left: -42px;
	padding: 5px 20px;
	font-weight: bold;
	z-index: 10000;
	transform: rotate(90deg);
}
.pdEditThis a {
	color: #FFF;
	text-decoration: none !important;
}
.logged-in .pdEditThis {
	display: block !important;
}
.koboClear {
	clear: both;
}
.koboClear5 {
	clear: both;
	padding: 5px;
}
.koboClear10 {
	clear: both;
	padding: 10px;
}
.koboClear15 {
	clear: both;
	padding: 15px;
}
.koboClear20 {
	clear: both;
	padding: 20px;
}
.no-results{
	text-align: center;
}
/* ============================================================
  TOP
  ============================================================ */
.kobotop {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	gap: 5px;
}
.kobobook a {
	color: #FFF;
	text-decoration: none !important;
	text-transform: uppercase;
	padding: 0;
	font-weight: 400;
	font-size: 13px;
	padding: 10px 20px;
	/* background: var(--kobo_color_black); */
	border: 1px solid;
	letter-spacing: .12em;
}
.hasnt-overlay-header .kobobook a,
.is-sticky .kobobook a {
	color: #FFF;
	background: var(--kobo_color_black);
}
.koboclub{
	margin-right: 20px;
}
.koboclub a{
	color: var(--kobo_color_black);
	text-decoration: none !important;
	text-transform: uppercase;
	padding: 0;
	font-weight: 400;
	font-size: 13px;
	padding: 3px 0;  
	letter-spacing: .12em;
	border-bottom: 1px solid;
}
.has-overlay-header .koboclub a{
	color: #FFF;
}
.is-sticky .koboclub a {
	color: var(--kobo_color_black); 
}
.kobotopleft {
	position: absolute;
	left: 60px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	gap: 5px;
}
.kobotopgroup {
	width: 77px;
}
.kobotopgroup img {
	width: 100%;
	user-select: none;
	-webkit-user-drag: none;
	user-drag: none;
	filter: none;
}
.has-overlay-header .kobotopgroup img {
	filter: brightness(0) invert(1);
}
.is-sticky .kobotopgroup img {
	filter: none;
}
.koboportal .kobotopgroup {
	display: none;
}
 
/* ==========================================================
   FINAL CSS — New Namespace: koboslider_
========================================================== */
.homeslider {
  position: relative;
  height: var(--kobo_slider_height);
  margin: 0 auto;
  overflow: hidden;
}
#koboslider_slider{
	height: 100%;
}
#koboslider_slider ul{
	margin: 0;
}
.koboslider_video {
	object-fit: cover !important;
	width: 100%;
	height: 100vh;
}

#koboslider_video_container {
	position: relative;
	height: 100vh;
	overflow: hidden;
}

#koboslider_controls {
	width: fit-content;
	position: absolute;
	bottom: 30px;
	right: 30px;
	z-index: 1000;
}

.koboslider_btn_icon {
	width: 40px;
	height: 40px;
	float: left;
	padding: 5px;
	border-radius: 50%;
}

.koboslider_title_meta{
  position:absolute;
  top:50%;
  transform:translateY(-50%) !important;
  z-index:10;
  max-width:700px;
  padding:0 20px;
  width:fit-content;
}

.koboslider_title_meta.align-center{
  left:0;
  right:0;
  margin:0 auto;
  text-align:center;
}

.koboslider_title_meta.align-left{
  left:10%;
  right:unset;
  margin:0;
  text-align:left;
}

.koboslider_title_meta.align-right{
  right:10%;
  left:unset;
  margin:0;
  text-align:right;
}

.koboslider_title_meta.align-topcenter{
  top:18%;
  left:0;
  right:0;
  transform:none;
  margin:0 auto;
  text-align:center;
}

.koboslider_title_meta.align-bottomcenter{
  top:auto;
  bottom:18%;
  left:0;
  right:0;
  transform:none;
  margin:0 auto;
  text-align:center;
}
.koboslider_title_meta.align-bottomleft{
  top:auto;
  bottom: 80px;
  left: 80px;
  right:unset;
  transform:none;
  margin:0 auto;
  text-align: left;
}

.koboslider_title {
	font-size: var(--kobo_font_title_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
	margin-bottom: 10px;
	color: #FFF; 
}

.koboslider_sub {
	color: #FFF;
	font-size: 16px;
} 
.koboslider_btn {
	margin: 35px 0 0;
} 
.koboslider_btn a {
	color: #FFF;
	border: 1px solid #FFF;
	padding: 10px 30px;
	text-decoration: none !important;
} 
.koboslider_item {
	height: var(--kobo_slider_height);
} 
.koboslider_bg {
	height: 100%;
	width: 100%;
	background-size: cover !important;
	background-position: center !important;
} 
#koboslider_slider .flex-direction-nav a{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 50;
	font-size: 30px;
	color: #FFF;
	text-decoration: none !important;
	/* background: #000000;*/
} 
#koboslider_slider .flex-direction-nav .flex-prev{
	left: 20px;
} 
#koboslider_slider .flex-direction-nav .flex-next{
	right: 20px;
}
#koboslider_slider.kobonarrw1 .flex-direction-nav{
	display:none !important;
}
 
 
/* ============================================================
  MISC ELEM
  ============================================================ */
*,
html {
	scroll-behavior: smooth !important;
}
#book {
	scroll-margin-top: 120px;
	overflow: initial !important;
}
.sr-only {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	color: #000;
	overflow: hidden;
}
.scrollD {
	position: absolute;
	right: 0;
	left: 0;
	text-align: center;
	font-size: 10px;
	color: #FFF;
	z-index: 10;
	bottom: 10px;
}
.scrollDb {
	height: 20px;
	width: 1px;
	background: #FFF;
	margin: 0 auto;
}
.scrollD span {
	/* background: #0000004a; */
	padding: 1px 7px;
}
.copyrights {
	font-size: 11px;
	font-weight: 400;
	color: var(--kobo_color_black) !important;
}
.copyrights a {
	color: var(--kobo_color_black) !important;
}
.fancybox-caption {
	display: none !important;
}
.grecaptcha-badge {
	display: none !important;
}
.is-sticky #site-header-inner {
	padding-top: 10px;
	padding-bottom: 10px;
}
.is-sticky #site-logo img {
	max-width: 100px;
}
.kobohrsrow_noresults{
	text-align: center;
	font-style: italic;
}
/* ============================================================
	  BURGER MENU
	  ============================================================ */

.kobomenunav {
	width: 35px;
	height: 2px;
	background: #FFF;
}
.kobomenunavb {
	width: 35px;
	height: 2px;
	background: #FFF;
	margin: 7px 0;
}
.kobomenunavc {
	width: 35px;
	height: 2px;
	background: #FFF;
}
.kobomenunavcT {
	margin-top: 2px;
	color: #FFF;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 1px;
	line-height: 1;
}
.hasnt-overlay-header .kobomenunav,
.hasnt-overlay-header .kobomenunavb,
.hasnt-overlay-header .kobomenunavc {
	background: var(--kobo_color_black);
}
.is-sticky .kobomenunav,
.is-sticky .kobomenunavb,
.is-sticky .kobomenunavc {
	background: var(--kobo_color_black);
}
.kobomenunavc,
.kobomenunavb {
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
/* #mobile-menu a:hover .kobomenunavb {
	width: 35px;
	background: var(--kobo_color_black);
}
#mobile-menu a:hover .kobomenunavc {
	width: 30px;
} */
.is-sticky .kobomenunavcT,
.hasnt-overlay-header .kobomenunavcT {
	color: var(--kobo_color_black);
}
.kobomobmenu{
	position: absolute;
	right: 30px;
	bottom: 30px;
	display: flex;
	gap: 20px;
	align-items: center;
} 
.kobo-club-bm{
	color: var(--kobo_color_black);
	text-decoration: none !important;
	text-transform: uppercase;
	padding: 0;
	font-weight: 400;
	font-size: 13px;
	padding: 3px 0;
	letter-spacing: .12em;
	border-bottom: 1px solid;
}
.kobo-book-bm{
	color: var(--kobo_color_black);
	text-decoration: none !important;
	text-transform: uppercase; 
	font-weight: 400;
	font-size: 13px;
	padding: 10px 20px;
	background: transparent;
	border: 1px solid !important;
	letter-spacing: .12em;
}
.kobomobmsoc{
	
}
.kobomobmsocTitle{
	font-family: var(--kobo_font_heading);
	font-size: 18px;
	margin: 0 0 10px;
}
.kobomobmsocR{
	font-size: 16px !important;
	line-height: 26px !important;
}
.koboespa{
	position: absolute;
	bottom: 10px;
	left: 10px;
	z-index: 1000;
	max-width: 300px;
}

.koboespa img{
	user-select: none;
	-moz-user-select: none;
	-webkit-user-drag: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	display:block;
}

/* close button */
.koboespaClose{
	position:absolute;
	top:-8px;
	right:-8px;
	width:22px;
	height:22px;
	background:#000;
	color:#fff;
	font-size:14px;
	line-height:22px;
	text-align:center;
	border-radius:50%;
	cursor:pointer;
	font-weight:bold;
}
#kobo-manage-consent {
	position: fixed;
	left: unset !important;
	right: 16px;
}
/* ============================================================
  BUTTONS
   ============================================================ */

.koboBtn{
	 background:transparent;
	 color:var(--kobo_color_black);
	 border:0;
	 padding:0;
	 display:inline-block;
	 vertical-align:middle;
	 text-align:left;
	 position:relative;
   
	 text-transform:uppercase;
	 text-decoration:none !important;
	 font-size:13px;
	 letter-spacing:1px;
	 font-weight:500;
   
	 transition:color .35s ease;
   }
   
   /* base subtle line */
   .koboBtn::before{
	 content:"";
	 position:absolute;
	 left:0;
	 right:0;
	 bottom:-0.25rem;
	 height:1px;
	 background:var(--kobo_color_grey);
	 opacity:.5;
   }
   
   /* animated accent line */
   .koboBtn::after{
	 content:"";
	 position:absolute;
	 left:0;
	 right:0;
	 bottom:-0.25rem;
	 height:2px;
	 background:var(--kobo_color_accent, var(--kobo_color_black));
	 transform:scaleX(0);
	 transform-origin:left;
	 transition:transform .35s ease;
   }
   
   .koboBtn:hover{
	 color:var(--kobo_color_accent, var(--kobo_color_black)) !important;
   }
   
   .koboBtn:hover::after{
	 transform:scaleX(1);
   }

.koboBtnW{
	 background:transparent;
	 color:#FFF;
	 border:0;
	 padding:0;
	 display:inline-block;
	 vertical-align:middle;
	 text-align:left;
	 position:relative;
   
	 text-transform:uppercase;
	 text-decoration:none !important;
	 font-size:13px;
	 letter-spacing:1px;
	 font-weight:500;
   
	 transition:color .35s ease;
   }
   
   /* base subtle white line */
   .koboBtnW::before{
	 content:"";
	 position:absolute;
	 left:0;
	 right:0;
	 bottom:-0.25rem;
	 height:1px;
	 background:#FFF;
	 opacity:.45;
   }
   
   /* animated white line */
   .koboBtnW::after{
	 content:"";
	 position:absolute;
	 left:0;
	 right:0;
	 bottom:-0.25rem;
	 height:2px;
	 background:#FFF;
	 transform:scaleX(0);
	 transform-origin:left;
	 transition:transform .35s ease;
   }
   
   .koboBtnW:hover{
	 color:#FFF !important;
   }
   
   .koboBtnW:hover::after{
	 transform:scaleX(1);
   }

.koboBtnB{
  --shine:rgba(255,255,255,.13);

  position:relative;
  isolation:isolate;          /* IMPORTANT: keeps negative z-index inside */
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:7px 25px;
  border:0;
  background:var(--kobo_color_black);
  color:#fff;

  text-transform:uppercase;
  font-size:13px;
  letter-spacing:1px;
  font-weight:500;
  overflow:hidden;
  cursor:pointer;

  transition:color .45s ease;
}

/* layers go BEHIND the text */
.koboBtnB::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,var(--kobo_color_bg),var(--kobo_color_accent));
  transform:translateX(-130%);
  transition:transform 1s cubic-bezier(.25,.46,.45,.94);
  z-index:-2;
}

.koboBtnB::after{
  content:"";
  position:absolute;
  inset:0 auto 0 -180%;
  width:55%;
  background:linear-gradient(120deg,transparent 0%,var(--shine) 50%,transparent 100%);
  transform:skewX(-18deg);
  transition:left 1.2s cubic-bezier(.25,.46,.45,.94);
  z-index:-1;
}

/* hover */
.koboBtnB:hover::before{transform:translateX(0)}
.koboBtnB:hover::after{left:180%}
.koboBtnB:hover{
  color:var(--kobo_color_black)!important; /* text visible on light gradient */
  text-decoration:none!important;
}


/* ============================================================
   PROPERTY MENU
   ============================================================ */

/* ===== Wrapper / Borders ===== */
.kobopropmenu {
	width: 100%;
	background: transparent;
	border-top: 1px solid rgb(0 0 0 / 4%);
	/* border-bottom: 1px solid rgb(255 255 255 / 8%); */
}
.has-overlay-header .kobopropmenu {
	border-top: 1px solid rgb(255 255 255 / 4%);
}
.is-sticky .kobopropmenu {
	border-top: 1px solid rgb(0 0 0 / 4%);
}

/* ===== Main UL ===== */
.kobopropmenu__ul {
	margin: 0;
	padding: 0 30px;
	list-style: none;

	display: flex;
	align-items: center;
	justify-content: center;
	gap: 28px;

	min-height: 56px;
}

/* ===== Main LI / A ===== */
.kobopropmenu__ul>li {
	position: relative;
}

.kobopropmenu__ul>li>a {
	position: relative;
	/* for underline */
	display: block;
	padding: 5px 0;

	text-transform: uppercase;
	text-decoration: none;
	transition: color .25s ease;

	color: var(--kobo_color_black);
}

/* overlay/sticky link colors */
.has-overlay-header .kobopropmenu__ul>li>a {
	color: #fff;
}
.is-sticky .kobopropmenu__ul>li>a {
	color: var(--kobo_color_black);
}

/* hover + underline */
.kobopropmenu__ul>li>a:hover {
	/* color: var(--kobo_color_accent); */
	opacity: 0.7;
}
.kobopropmenu__ul>li>a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 2px;
	background: var(--kobo_color_accent);
	transition: width .25s ease;
}
.kobopropmenu__ul>li>a:hover::after,
.kobopropmenu__ul>li.current-menu-item>a::after,
.kobopropmenu__ul>li.current-menu-parent>a::after {
	width: 100%;
}

.has-overlay-header .kobopropmenu__ul>li>a::after{
	background: #FFF;
}
.is-sticky .kobopropmenu__ul>li>a::after{
	background: var(--kobo_color_accent);
}

/* ===== Submenu (UL) ===== */
.kobopropmenu__ul>li>ul {
	position: absolute;
	top: 100%;
	left: 0;

	min-width: 200px;
	margin: 0;
	padding: 5px 0;
	list-style: none;

	background: #fff;
	z-index: 50;

	/* hide by default */
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
}

/* show on hover */
.kobopropmenu__ul>li:hover>ul {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	transition: opacity .25s ease, transform .25s ease, visibility 0s;
}

/* ===== Submenu items ===== */
.kobopropmenu__ul>li>ul>li>a {
	display: block;
	padding: 10px 18px; 
	text-transform: uppercase;
	font-size: 12px; 
	text-decoration: none; 
	color: var(--kobo_color_black);
	transition: color .2s ease, background .2s ease;
}

.kobopropmenu__ul>li>ul>li>a:hover {
	color: var(--kobo_color_accent);
	background: rgb(0 0 0 / 3%);
}

/* ===== Mobile ===== */
@media (max-width: 900px) {
	.kobopropmenu__ul {
		justify-content: flex-start;
		overflow-x: auto;
		white-space: nowrap;
		gap: 18px;
	}

	.kobopropmenu__ul>li {
		flex: 0 0 auto;
	}

	/* προαιρετικό: σε mobile κρύψε dropdown (για να μη σπάει στο scroll) */
	/* .kobopropmenu__ul > li > ul{ display:none; } */
}

/* ============================================================
   Map
   ============================================================ */

#mapContact {
	width: 100%;
	height: 400px;
}
.maptitle{
	font-family: var(--kobo_font_heading);
	font-size: 20px;
	margin: 0 0 5px;
	text-transform: uppercase;
} 
.maplink a{
	color: var(--kobo_color_black);
	text-decoration: none !important;
	border-bottom: 1px solid var(--kobo_color_black);
	padding: 0 0 1px;
	font-size: 12px;
}
.gm-style-iw-chr { 
	position: absolute;
	right: 0;
	max-width: 40px;
}
.gm-style .gm-style-iw-d { 
	padding: 20px 10px 10px 8px;
}
/* ============================================================
  FOOTER
  ============================================================ */
.koboFooter {
	background: var(--kobo_color_linen);
	padding: 100px 10px 50px;
}
.koboFooterInner {
	width: min(1500px, 95%);
	margin: 0 auto;
	display: flex;
	gap: 20px;
}
.koboFooterInner>div:nth-child(1) {
	width: 20%;
}
.koboFooterInner>div:nth-child(2) {
	width: 25%;
}
.koboFooterInner>div:nth-child(3) {
	width: 20%;
}
.koboFooterInner>div:nth-child(4) {
	width: 10%;
}
.koboFooterInner>div:nth-child(5) {
	width: 25%;
}

.koboFooterS {
	padding: 0 10px;
}
.koboFooterSLogo {
	display: flex;
	align-items: center;
	justify-content: center;
}
.koboFooterSLogoI img {
	width: 150px;
	max-width: 90%;
}
.koboFooterSTitle {
	border-bottom: 1px solid;
	margin: 0 0 20px;
}
.koboFooterSTitle h4 {
	font-size: 16px;
	margin: 0;
	text-transform: uppercase;
}
.koboFooterSTitleBook h4 {
	font-size: 22px;
	line-height: 1.3;
	margin: 0;
	text-transform: uppercase;
}
.koboFooterSsmap ul {
	display: flex;
	flex-wrap: wrap;
	gap: 2px 14px;
}
.koboFooterSsmap ul li {
	list-style-type: none;
}
.koboFooterSsmap ul li a {
	color: var(--kobo_color_black);
	text-transform: uppercase;
}
.koboFooterSsmap ul .sub-menu{
	display: none !important;
}
.koboFooterSlinks {
	margin: 20px 0 0;
}
.koboFooterSlinks ul {
	display: flex;
	flex-wrap: wrap;
	gap: 2px 14px;
}
.koboFooterSlinks ul li {
	list-style-type: none;
}
.koboFooterSlinks ul li a {
	color: var(--kobo_color_black);
}
.koboFootData {
	padding: 0 0 4px;
}
.koboFooterSocial {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.kobofaSocial {
	font-size: 20px;
}
.koboFoothname{
	margin: 0 0 5px;
	font-weight: bold;
	text-transform: uppercase;
}
.fmhtenumber{
	margin: 70px auto 0;
	max-width: 800px;
	font-size: 11px;
	text-align: center;
}

/* =========================================
	 KOBO Booking Header Block
  ========================================= */

.bookHeaderBlock {
	width: min(1180px, 95%);
	margin: 0 auto;
	padding: 10px;
	background: rgb(255 255 255 / 50%);
	border: 1px solid rgba(0, 0, 0, .08);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	position: absolute;
	bottom: 100px;
	z-index: 100;
	left: 0;
	right: 0;
	border-radius: 15px;
}
.bookHeaderBlockForm {
	background: rgb(255 255 255 / 50%);
	padding: 15px;
	border-radius: 15px;
}
.bookHeaderBlockForm form {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr .9fr auto;
	gap: 14px;
	align-items: end;
}
/* footer */
.bookFooterBlock {
	margin: 30px 0 0;
}
.bookFooterBlockForm {}
.bookFooterBlockForm form {
	display: flex;
	flex-wrap: wrap;
}
.bookfootf {
	width: 100%;
	border-right: 0 !important;
	border-bottom: 1px solid var(--kobo_color_grey);
}
.bookfootm {
	width: 50%;
	border-right: 0 !important;
	border-bottom: 1px solid var(--kobo_color_grey);
}


.boohomeBoxFS {
	border-right: 1px solid var(--kobo_color_grey);
}
.boohomeBoxFS.nob {
	border-right: 0;
}
.boohomeBoxFS label {
	display: block;
	margin: 0 0 -5px;
	font-size: 16px;
	font-weight: 500;
}

.boohomeBoxFS select,
.boohomeBoxFS input {
	width: 100%;
	height: 39px;
	padding: 0;
	border-radius: 0;
	border: 0;
	background: transparent;
	outline: none;
	font-size: 14px;
	transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
	font-family: var(--kobo_font_body) !important;
	font-size: 14px;
	font-weight: 400 !important;
	color: var(--kobo_color_grey) !important;
}

.boohomeBoxFS input::placeholder {
	color: var(--kobo_color_grey);
	opacity: 1;
}
.boohomeBoxFS input::-webkit-input-placeholder {
	color: var(--kobo_color_grey);
	opacity: 1;
}
.boohomeBoxFS input::-moz-placeholder {
	color: var(--kobo_color_grey);
	opacity: 1;
}
.boohomeBoxFS input:-ms-input-placeholder {
	color: var(--kobo_color_grey);
	opacity: 1;
}
.boohomeBoxFS select:focus,
.boohomeBoxFS input:focus {
	/* border-color: rgba(0, 0, 0, .25);
	box-shadow: 0 0 0 4px rgba(0, 0, 0, .06); */
	background: rgba(255, 255, 255, 0.17);
}
.boohomeBoxFS select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: none;
}
.boohomeBoxFS input.flatpickr-input[readonly] {
	cursor: pointer;
}
.boohomeBoxFS--btn {
	display: flex;
}
.bookHeaderBlockForm .prime {
	height: 60px;
	padding: 0 40px;
	border-radius: 0;
	border: 0;
	cursor: pointer;
	font-weight: 700;
	text-transform: uppercase;
	background: #000;
	color: #fff;
	transition: transform .15s ease, opacity .15s ease;
	white-space: nowrap;
}
.bookHeaderBlockForm .prime:hover {
	opacity: .92;
}
/* .bookHeaderBlockForm .prime:active {
	transform: translateY(0);
  }  */

.bookFooterBlockForm .prime {
	height: 40px;
	padding: 0 25px;
	border-radius: 0;
	border: 0;
	cursor: pointer;
	font-weight: 700;
	text-transform: uppercase;
	background: #000;
	color: #fff;
	transition: transform .15s ease, opacity .15s ease;
	white-space: nowrap;
	min-width: 200px;
	margin: 20px 0 0;
}
.bookFooterBlockForm .prime:hover {
	opacity: .92;
}


.boohomeBoxFS--date {
	position: relative;
}
.boohomeBoxFS--date input,
.boohomeBoxFS--date input.flatpickr-input {
	padding-right: 34px;
	/* χώρο για το icon */
}

.boohomeBoxFS--date::after {
	content: "";
	position: absolute;
	right: 8px;
	bottom: 10px;
	/* ρύθμισέ το αν θες */
	width: 18px;
	height: 18px;
	opacity: .55;
	pointer-events: none;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px 18px;

	/* inline SVG calendar icon (μαύρο/γκρι) */
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23828282' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");
}
.boohomeBoxFS--select {
	position: relative;
}

.boohomeBoxFS--select select {
	padding-right: 34px;
}

.boohomeBoxFS--select::after {
	content: "";
	position: absolute;
	right: 8px;
	bottom: 10px;
	width: 16px;
	height: 16px;
	opacity: .55;
	pointer-events: none;

	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px 16px;

	/* down chevron */
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23828282' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

.boohomeBoxFS--hotelselect-disb::after{
	background-image: none;
}

.flatpickr-calendar {
	border-radius: 16px;
	box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
	border: 1px solid rgba(0, 0, 0, .08);
	overflow: hidden;
}
.flatpickr-day.selected {
	background: var(--kobo_color_accent) !important;
	color: #fff !important;
	border-color: var(--kobo_color_accent) !important;
} 
/* ============================================================
  META P
  ============================================================ */


.kobop_meta {
	max-width: 880px;
	margin: 50px auto;
	text-align: center;
}
.kobop_meta_title h1 {
	text-align: center;
	text-transform: uppercase;
} 
.kobop_meta_subtitle h2 {}
.kobop_meta_text {
	padding: 20px 0;
}
.kobop_meta_link {}

/* ============================================================
	KOBO HOTELS EDITORIAL GRID
 ============================================================ */

.koboHotelsGrid {
	width: min(1400px, 95%);
	margin: 0 auto;
	padding: 60px 0 20px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 100px;
	align-items: start;
}
.koboHotelCard {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Stagger */

.koboHotelCard--2 {
	margin-top: 70px;
}
.koboHotelCard--4 {
	margin-top: -100px;
}

.koboHotelMedia {
	position: relative;
	width: 100%;
	overflow: hidden;
	transform: translateZ(0);
	backface-visibility: hidden;
}

/* aspect ratios same */
.koboHotelCard--1 .koboHotelMedia {
	aspect-ratio: 3 / 4;
}
.koboHotelCard--2 .koboHotelMedia {
	aspect-ratio: 16 / 10;
}
.koboHotelCard--3 .koboHotelMedia {
	aspect-ratio: 16 / 10;
}
.koboHotelCard--4 .koboHotelMedia {
	aspect-ratio: 3 / 4;
}

.koboHotelMedia::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: var(--kobo-bg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	transform: scale(1);
	transition: transform .45s ease;
	will-change: transform;
}

.koboHotelCard:hover .koboHotelMedia::before {
	transform: scale(1.06);
} 
.koboHotelCaption h3 {
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_secitle_sz);
} 
.koboHotelCaption a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding-bottom: 2px;
}
.koboHotelTitle { 
	font-size: var(--kobo_font_thtitle_sz);
}
 
/* ============================================================
	  KOBO Overlap Intro (group_section_1)
   ============================================================ */

.koboSec1 {
	width: 100%;
	background: var(--kobo_color_linen);
	padding: 100px 20px;
	margin: 100px 0;
}

.koboSec1__inner {
	width: min(1500px, 90%);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.05fr 1.4fr;
	gap: clamp(26px, 5vw, 70px);
	align-items: center;
}

.koboSec1__content {
	max-width: 460px;
}

.koboSec1__title {
	margin: 0 0 14px;
	text-transform: uppercase;
	font-size: var(--kobo_font_subtitle_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
}

.koboSec1__text {
	margin: 0 0 20px;
}

.koboSec1__media {
	position: relative;
	min-height: clamp(320px, 38vw, 520px);
}
.koboSec1__imgBig {
	position: absolute;
	right: 0;
	top: 0;
	width: 85%;
	aspect-ratio: 16 / 9;
	min-height: 400px;
	overflow: hidden;
}
.koboSec1__imgSmall {
	position: absolute;
	left: 0;
	bottom: 0;
	width: min(320px, 55%);
	aspect-ratio: 4 / 3;
	overflow: hidden;
	transform: translateY(8%);
	min-height: 350px;
}

.koboSec1__imgBig::before,
.koboSec1__imgSmall::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: var(--kobo-bg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transform: scale(1);
	transition: transform .55s ease;
	will-change: transform;
}

.koboSec1__media:hover .koboSec1__imgBig::before,
.koboSec1__media:hover .koboSec1__imgSmall::before {
	transform: scale(1.05);
}

.koboSec1__imgBig,
.koboSec1__imgSmall {
	box-shadow: 0 12px 40px rgba(0, 0, 0, .08);
}
 
.koboSec2 {
	margin: 100px 0;
}
.koboSec2Inner {
	width: min(1500px, 90%);
	margin: 0 auto;
}
.koboSec2Innertitle h3 {
	text-align: center;
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
}
.koboSec2Row {
	display: flex;
	gap: 20px;
	margin: 40px 0 0;
	align-items: flex-end;
}
.koboSec2L {
	width: 40%;
}
.koboSec2M {
	width: 25%;
}
.koboSec2R {
	width: 35%;
}
.koboSec2LImg,
.koboSec2MImg {
	position: relative;
	overflow: hidden;
	/* clip */
	background: #eee;
}

/* ύψη όπως τα έχεις */
.koboSec2LImg {
	height: 500px;
}
.koboSec2MImg {
	height: 400px;
}

/* inner background layer */
.koboSec2LImg::before,
.koboSec2MImg::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: var(--kobo-bg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transform: scale(1);
	transition: transform .45s ease;
	will-change: transform;
}
.koboSec2Row:hover .koboSec2LImg::before,
.koboSec2Row:hover .koboSec2MImg::before {
	transform: scale(1.06);
}

.koboSec2Meta {
	padding: 20px;
}
.koboSec2title {
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
}
.koboSec2text {
	margin: 20px 0;
}

.koboSec3 {
	margin: 100px auto;
}

/* Background wrapper */
.koboSec3Inner{
	position: relative;
	width: 100%;
	height: 720px;
	display: flex;

	align-items: flex-start;
	justify-content: flex-start;
	text-align: left;

	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	overflow: hidden;
}
/* video background */
.koboSec3Video{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.koboSec3Inner--topleft{
	align-items: flex-start;
	justify-content: flex-start;
	text-align: left;
}

.koboSec3Inner--topright{
	align-items: flex-start;
	justify-content: flex-end;
	text-align: left;
}

.koboSec3Inner--center{
	align-items: center;
	justify-content: center;
	text-align: center;
}

.koboSec3Inner--bottomleft{
	align-items: flex-end;
	justify-content: flex-start;
	text-align: left;
}

.koboSec3Inner--bottomright{
	align-items: flex-end;
	justify-content: flex-end;
	text-align: left;
}



/* Black overlay */
.koboSec3Inner::before {
	content: '';
	position: absolute;
	inset: 0;
	background: rgb(0 0 0 / 30%);
	z-index: 1;
}

/* Content above overlay */
.koboSec3Meta {
	position: relative;
	z-index: 2;
	color: #fff;
	padding: 100px 50px;
	max-width: 600px;
}

.koboSec3Title h3 {
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0 0 10px;
}

.koboSec3Text {
	margin: 0 0 20px;
}

.koboSec4{
	margin: 100px auto; 
}
.koboSec4Inner{
	width: min(1500px, 90%);
	margin: 0 auto;
}
.koboSec4Title h4{
	text-align: center;
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0 0 30px;
}
.koboSec4Text{ 
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	margin: 0 0 20px;
}
.koboCollage4Inner{
	width: min(1500px, 90%);
	margin: 0 auto 100px;
}
.koboCollage4Grid{
	display: flex;
	gap: 20px;
	justify-content: flex-end;
	align-items: flex-end;
}
.koboCollage4Gridb{
	display: flex;
	gap: 20px;
	margin-top: 22px;
	margin-right: 10%;
}
.koboCollage4Item img{
	max-height: 500px;
	width: 100%;
	object-fit: cover;
}
.koboCollage4Item{
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	
}
.koboCollage4Item--1{
	width: 20%;	 
}
.koboCollage4Item--2{
	width: 55%;
}
.koboCollage4Item--3{
	width: 35%;
}
.koboCollage4Item--4{
	width: 65%;
}
 
/* =========================================
   KOBO COLLAGE HOVER EFFECT
========================================= */

.koboCollage4Item{
  position: relative;
  overflow: hidden;
  transition: transform .5s ease, box-shadow .5s ease;
}

/* image smooth zoom */
.koboCollage4Item img{
  transition: transform .8s cubic-bezier(.2,.7,.2,1);
}

/* overlay */
.koboCollage4Item:after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.18);
  opacity:0;
  transition: opacity .6s ease;
  pointer-events:none;
}

/* hover zoom */
.koboCollage4Item:hover img{
  transform: scale(1.08);
}

/* hover overlay */
.koboCollage4Item:hover:after{
  opacity:1;
}

/* tiny lift */
.koboCollage4Item:hover{
  transform: translateY(-4px);
  /* box-shadow: 0 25px 60px rgba(0,0,0,.18); */
}
.koboSec5{
	margin: 100px auto;
}
.koboSec5Inner{
	width: min(1500px, 90%);
	margin: 0 auto;
}
.koboSec5Title h4{
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0 0 30px;
	text-align: center;
}
.koboSec5Text{ 
	max-width: 880px;
	margin: 0 auto 20px;
	text-align: center;
}

.koboSec6{
	margin: 100px auto
}
.koboSec6Inner{
	position: relative;
	width: 100%;
	height: 720px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	overflow: hidden;
}
.koboSec6Inner::before {
	content: '';
	position: absolute;
	inset: 0;
	background: rgb(0 0 0 / 0%);
	z-index: 1;
}
.koboSec6Meta{
	position: relative;
	z-index: 2; 
	padding: 100px 50px;
	max-width: 450px;
	text-align: center;
}
.koboSec6Title h3 {
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
}
.koboSec6Text{
	margin: 0 0 20px;
}

/* =========================================
   NEWSLETTER BOX
========================================= */

.koboNl{ 
	border-top: 2px solid var(--kobo_color_linen);
}
.koboNlInner{
	max-width: 980px;
	margin: 0 auto;
	padding: 50px;
	display: flex;
	gap: 20px;
	align-items: center;
}
.koboNlL{
	width: 40%;
}
.koboNlR{
	width: 60%;
}
.koboNlLTitle{
	font-style: var(--kobo_font_thtitle_sz);
	font-family: var(--kobo_font_heading); 
	margin: 0 0 20px;
}
.koboNlLText{
	max-width: 300px;
}
.koboSignup{
	width: 100%;
	display: flex;
	gap: 10px;
} 
.koboSignup input[type="email"]{
	background: transparent;
	color: var(--kobo_color_black);
	border: 0;
	border-bottom: 1px solid var(--kobo_color_black) !important;
	width: 100%;
	border-radius: 0;
	
}
.koboSignup__btn{
	background: var(--kobo_color_black);
	border-radius: 0;
	width: 100%;
}

/* =========================================
   MENU Group
========================================= */

.kobo-dropdown{
	position: relative;
	display: inline-block;
}

.kobo-dropdown-menu{
	position: absolute;
	top: 100%;
	/* right: 0; */
	min-width: 200px;
	background: #fff;
	padding: 8px 0;
	/* border-radius: 8px; */
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all .25s ease;
	z-index: 999;
	box-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.kobo-dropdown-menu a{
	display: block;
	padding: 6px 16px;
	color: var(--kobo_color_black);
	text-decoration: none;
	font-size: 13px;
	text-transform: uppercase;
}

.kobo-dropdown-menu a:hover{
	background: rgba(255,255,255,.08);
}

.kobo-dropdown:hover .kobo-dropdown-menu{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* KOBO – Hotel Meta */ 
.kobohmeta{ 
	max-width: 700px;
	margin: 50px auto;
	text-align: center;
}
.kobohmetaText{ 
	margin: auto;
}	
.kobohmetaLink{
	text-align: center;
}
.kobohmetappage .kobop_meta_title{
	margin: 10px 0 30px;
}
.kobohmetappage .kobop_meta_subtitle h2{
	font-size: var(--kobo_font_thtitle_sz);
}
.kobohmetaTqo p{
	margin: 5px;
}
/* KOBO – Hotel Section 1 Collage */

.hotelSection1Cols{
	margin: 0 auto;
	width: min(1400px, 95%);
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	overflow: hidden;
}

.hotelSection1Col{
	position: relative;
	width: 100%;
	height: 600px;
	overflow: hidden;
}

.hotelSection1Col::before{
	content:"";
	position:absolute;
	inset:0;
	background-image: var(--bg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	transition: transform .6s ease;
	will-change: transform;
}

.hotelSection1Col::after{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
}

.hotelSection1Col:hover::before{
	transform: scale(1.03);
}

.hotelSection1Cols--1-1 .hotelSection1Col{
	width: calc(50% - 10px);
}

.hotelSection1Cols--2-1 .hotelSection1Col:nth-child(1){
	width: calc(70% - 10px);
}
.hotelSection1Cols--2-1 .hotelSection1Col:nth-child(2){
	width: calc(30% - 10px);
}

.hotelSection1Cols--3-3 .hotelSection1Col{
	width: calc(33.333% - (20px * 2 / 3));
}

.hotelSection1Cols--2-4 .hotelSection1Col:nth-child(1){
	width: calc(70% - 10px);
}
.hotelSection1Cols--2-4 .hotelSection1Col:nth-child(2){
	width: calc(30% - 10px);
}
.hotelSection1Cols--2-4 .hotelSection1Col:nth-child(3),
.hotelSection1Cols--2-4 .hotelSection1Col:nth-child(4){
	width: calc(50% - 10px);
}

.hotelSection1Cols--2-5 .hotelSection1Col:nth-child(1){
	width: calc(67% - 10px);
}
.hotelSection1Cols--2-5 .hotelSection1Col:nth-child(n+2){
	width: calc(33% - 10px);
}

@media (max-width: 900px){
	.hotelSection1Cols{
		flex-direction: column;
	}
	.hotelSection1Col{
		width: 100% !important;
		height: 420px;
	}
}

/* =========================================
   Hotels Welcome
========================================= */

.kobohotelwelc{ margin:100px auto; }

.kobohotelwInner{
  margin:0 auto;
  width:min(1400px,95%);
  display:flex;
  align-items:flex-end;
  gap:50px;
  position:relative;
  justify-content:space-between;
}

.kobohotelwelcL{ width:30%; }
.kobohotelwelcM{ width:50%; }
.kobohotelwelcR{ width:20%; }

.kobohotelwelcLogo{
  display:flex;
  position:absolute;
  top:0;
  max-width:150px;
  right:0;
}
.kobohotelwelcLogo img{
  width:100%;
  user-select:none;
  -moz-user-select:none;
  -webkit-user-drag:none;
  -webkit-user-select:none;
  -ms-user-select:none;
  pointer-events:none;
}

.kobohotelwelMeta{ padding:30px 0; }
.kobohotelwelText{ margin:0 0 20px; }

.kobohotelwelcMWra{
  position:relative;
  margin-top:100px;
  text-align:center;
}

.kobohotelwelcBg{
  position:relative;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  aspect-ratio:5 / 7;
  max-width:500px;
  width:90%;
  margin:0 auto;
  overflow:hidden;
}

.kobohotelwelcBg:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom, rgba(0,0,0,.15), rgba(0,0,0,.45));
}

.kobohotelwelcBg--video video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.kobohotelwelcBg:before{
  z-index:1;
}

.kobohotelwelcTitle{
  position:absolute;
  top:150px;
  right:0;
  left:0;
  z-index:2;  
  pointer-events:none;
}

.kobohotelwelcTitle h2{
  font-size: 70px;
  text-transform:uppercase;
  line-height:1.2;
  color: var(--kobo_color_black); 
  text-shadow:0 10px 40px rgba(0,0,0,.45); /* πιο σωστό από γκρι */
}


/* =========================================
   Room Single View
========================================= */

.koboslider_sview_title h1{
	font-size: var(--kobo_font_title_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
	margin: 0 0 10px;
	color: #FFF;
}
.koboslider_sview_sub h2{
	color: #FFF;
	font-size: 16px;
	margin: 0;
}
 .kobosrview{
		width: min(1400px, 95%);
		margin: 70px auto;
		display: flex;
		gap: 40px;
	}            
	.kobosrviewL{
		width: 60%;
	}       
	.kobosrviewR{
		width: 40%;
	}   
	.kobosrviewMeta{
		max-width: 80%;
	}  
	.kobosrviewText{
		font-size: var(--kobo_font_subtitle_sz);
	}
	.single-osantorooms .kobosrviewText{
		font-size: 16px;
	}
	
	.kobosrviewSpecs{
		display: grid;
		grid-template-columns: repeat(2, minmax(0,1fr));
		gap: 25px 40px; /* row-gap / column-gap */
		max-width: 400px;
		margin: 0 auto;
	}
	 
	.kobosrviewSpec{
		border-bottom: 2px solid var(--kobo_color_black);
		padding: 20px 5px;
	}
	.kobosrviewSpecF {
		grid-column: 1 / -1;
	}
	.kobosrviewSpecTitle{
		font-family: var(--kobo_font_heading);
		font-size: 16px;
		margin: 0 0 3px;
	}
	.kobosrviewSpecDesc{
		
	}
	
	.kobo-book-inroom{
		display: flex;
		align-items: flex-end;
	}
   .kobo-book-room{
	   color: #fff;
	   text-decoration: none !important;
	   text-transform: uppercase;
	   font-weight: 500;
	   font-size: 12px;
	   letter-spacing: .12em;
   
	   padding: 12px 26px;
   
	   background: var(--kobo_color_black);
	   border: 1px solid rgba(255,255,255,.35);
   
	   transition: 
		   background .25s ease,
		   color .25s ease,
		   transform .25s ease,
		   box-shadow .25s ease,
		   border-color .25s ease; 
   }
   
   .kobo-book-room:hover{
	   background: #fff;
	   color: var(--kobo_color_black);
	   border-color: #fff;
	   transform: translateY(-2px);
	   box-shadow: 0 6px 20px rgba(0,0,0,.25);
   }
   
   
   /* =========================================================
	  KOBO — Amenities Modal (Fullscreen + no-scroll jump)
	  ========================================================= */
   
   /* Scroll lock (works with JS top offset) */
   body.kobo-modal-lock{
	 position: fixed !important;
	 left: 0;
	 right: 0;
	 width: 100%;
	 overflow: hidden !important;
   }
   
   /* Fullscreen overlay */
   .koboamenmodal{
	 position: fixed;
	 inset: 0;
	 width: 100vw;
	 height: 100vh;
   
	 z-index: 999999;            /* above header */
	 isolation: isolate;         /* new stacking context */
   
	 display: flex;
	 align-items: center;
	 justify-content: center;
   
	 padding: 24px;
   
	 background: rgba(0,0,0,.45);
	 backdrop-filter: blur(6px);
	 -webkit-backdrop-filter: blur(6px);
   
	 opacity: 0;
	 visibility: hidden;
	 pointer-events: none;
   
	 transition: opacity .2s ease, visibility .2s ease;
   }
   
   .koboamenmodal.is-open{
	 opacity: 1;
	 visibility: visible;
	 pointer-events: auto;
   }
   
   /* Modal box */
   .koboboxamen{
	 width: min(760px, 92vw);
	 background: #fff;
   
	 padding: 22px;
	 position: relative;
   
	 max-height: min(86vh, 900px);
	 overflow: auto;
   
	 transform: translateY(8px);
	 transition: transform .2s ease;
   
	 box-shadow: 0 20px 60px rgba(0,0,0,.18);
   }
   
   .koboamenmodal.is-open .koboboxamen{
	 transform: translateY(0);
   }
   
   /* Close button */
   .koboboxamenclose{
	 position: absolute;
	 top: 0;
	 right: 0;
   
	 border: 0;
	 background: transparent;
   
	 font-size: 30px;
	 line-height: 1;
	 cursor: pointer;
   
	 padding: 20px;
	 color: var(--kobo_color_black);
	 opacity: 1;
   }
   .koboboxamenclose:hover{ opacity: .8; }
   
   /* Title */
   .koboboxamenRowTitle{
	 font-family: var(--kobo_font_heading);
	 font-size: var(--kobo_font_subtitle_sz);
	 line-height: 1.2;
   }
   
   /* Amenities content columns */
   .koboboxamenRow{
	 margin: 18px 0 0;
	 column-count: 2;
	 column-gap: 40px;
	 column-rule: 1px solid #f1f1f1;
   }
   
   .koboboxamenRow ul{ margin: 0; padding-left: 18px; }
   .koboboxamenRow li{ break-inside: avoid; margin: 0 0 6px; font-size: 12px; }
   
   .koboboxamenRow p{
	 margin: 0 0 5px;
	 border-bottom: 1px solid #bbbbbb17;
	 padding: 1px 0;
   }
   
   .koboboxamenText {
	   margin: 10px 0 20px;
   }
   
   .koboboxamenGrid{
	 display:grid;
	 grid-template-columns: repeat(3, 1fr);
	 gap: 10px;
   }
   
   .koboboxamenColTitle{
	 font-weight:600;
	 letter-spacing:.06em;
	 text-transform:uppercase;
	 margin: 0 0 10px;
	 font-size: 12px;
	 opacity: .9;
   }
   .koboboxamenColBody{
	   margin: 10px 0 0;
   }
   .koboboxamenColBody p{
	   margin: 8px 0;
	   font-size: 13px;
	   border-bottom: 1px solid #ededed;
   }
   @media (max-width: 900px){
	 .koboboxamenGrid{ grid-template-columns: 1fr; }
   }
   
   @media (max-width: 640px){
	 .koboamenmodal{ padding: 14px; }
	 .koboboxamen{ width: 100%; }
	 .koboboxamenRow{ column-count: 1; }
   }
   
   /* Trigger button */
   .koboamenbtn button{
	 color: var(--kobo_color_black);
	 text-decoration: none !important;
	 text-transform: uppercase;
	 font-weight: 500;
	 font-size: 12px;
	 border: 0;
	 border-bottom: 1px solid currentColor;
	 letter-spacing: .12em;
	 padding: 0;
	 background: transparent;
	 transition: background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease, border-color .25s ease;
	 border-radius: 0;
   }
   
   /* =========================================================
	  KOBO — Freeze page behind modal (keep AOS state)
	  ========================================================= */
   
   /* stop interaction behind */
   body.kobo-modal-lock #content{
	 pointer-events: none;
   }
   
   /* modal still interactive */
   body.kobo-modal-lock .koboamenmodal,
   body.kobo-modal-lock .koboamenmodal *{
	 pointer-events: auto;
   }
   
   /* freeze animations but KEEP current transform */
   body.kobo-modal-lock #content [data-aos],
   body.kobo-modal-lock #content [data-aos] *{
	 transition: none !important;
	 animation: none !important;
   }
   
   /* prevent overscroll bounce */
   body.kobo-modal-lock{
	 overscroll-behavior: none;
   }
   body.kobo-modal-lock #content{
	 pointer-events:none;
	 filter: brightness(.9);
   }
   /* stop scroll chaining */
   .koboamenmodal{
	 overscroll-behavior: contain;
   }
   
   /* extra safety on mobile */
   body.kobo-modal-lock{
	 touch-action: none;
   }
   /* overlay itself stops scroll chaining */
   .koboamenmodal{ overscroll-behavior: contain; }
   
   /* already have body lock with position:fixed; keep as-is */
   
   
   /* ================================
		 LAYOUT (κρατάμε όπως τα έχεις)
	  ================================ */
	  
	  .kobosroverview{
		  width: min(1400px, 95%);
		  margin: 100px auto;
		  display: flex;
		  gap: 40px;
		  align-items: center;
	  }
	  
	  .kobosroverviewL{ width: 65%; }
	  .kobosroverviewR{ width: 35%; }
	  
	  .kobosroverviewMeta{
		  max-width: 80%;
		  margin: 0 auto;
	  }
	  
	  .kobosroverviewTitle{
		  font-size: var(--kobo_font_secitle_sz);
		  font-family: var(--kobo_font_heading);
		  line-height: 1.2;
		  margin: 0 0 20px;
	  }
	  
	  .kobosroverviewText{ margin: 0 0 20px; }
	  
	  .kobosroverviewLInner{
		  position: relative;
		  width: 100%;
		  min-height: 700px;
	  }
	  
	  /* ================================
		 IMAGE WRAPPERS
	  ================================ */
	  
	  .kobosroverviewLbga{
		  position: relative;
		  width: 75%;
		  height: 500px;
		  z-index: 1;
	  }
	  
	  .kobosroverviewLbgb{
		  position: absolute;
		  right: 0;
		  top: 180px;
		  width: 45%;
		  height: 520px;
		  z-index: 2;
	  }
	   
	  .kobosroverviewLbga,
	  .kobosroverviewLbgb{
		  overflow: hidden;
		  border-radius: 2px;
		  background: none !important;
	  }
	   
	  .kobosroverviewLbga::before,
	  .kobosroverviewLbgb::before{
		  content: "";
		  position: absolute;
		  inset: 0;
		  background-image: var(--bg);
		  background-size: cover;
		  background-position: center;
		  background-repeat: no-repeat;
	  
		  transform: scale(1);
		  transition: transform .7s cubic-bezier(.2,.7,.2,1);
		  will-change: transform;
	  }
	   
	  
	  .kobosroverviewLbga,
	  .kobosroverviewLbgb{
		  transition:
			  transform .5s cubic-bezier(.2,.7,.2,1),
			  box-shadow .5s ease;
	  }
	  
	  .kobosroverviewLbga:hover::before,
	  .kobosroverviewLbgb:hover::before{
		  transform: scale(1.07);
	  }
	  
	  .kobosroverviewLbga:hover,
	  .kobosroverviewLbgb:hover{
		  transform: translateY(-2px);
		  /* box-shadow: 0 25px 60px rgba(0,0,0,.25); */
	  }
	  
	  /* ================================
		 MOBILE
	  ================================ */
	  
	  @media (max-width: 900px){
	  
		  .kobosroverview{
			  flex-direction: column;
		  }
	  
		  .kobosroverviewL,
		  .kobosroverviewR{
			  width: 100%;
		  }
	  
		  /* .kobosroverviewLInner{
			  min-height: auto;
		  }
	  
		  .kobosroverviewLbga{
			  width: 100%;
			  height: 420px;
		  }
	  
		  .kobosroverviewLbgb{
			  position: relative;
			  width: 70%;
			  height: 300px;
			  bottom: auto;
			  right: auto;
			  margin: -80px 0 0 auto;
		  } */
	  }

/* related rooms */

.kobosrrelated{
	width: min(1400px, 95%);
	margin: 100px auto; 
}
.kobosrrelatedMTitle{
	font-size: var(--kobo_font_secitle_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
	margin: 0 0 5px;
	text-align: center;
}
.kobosrrelatedTitle{
	font-size: var(--kobo_font_secitle_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
	margin: 0 0 20px;
	text-align: center;
}
.kobosrrelatedRow{
	
}

.kobosrrelatedWrap{
	width: min(1400px, 95%);
	margin: 60px auto 0;
	position: relative;
}
.kobosrrelatedRow{ /* slick container */
	margin: 0 -10px;
}
.kobosrrelatedS{
	padding: 0 10px;
}
.kobosrrelatedSIcon{
	position: relative;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center !important;
	width: 100%;
	height: 350px;
	overflow: hidden;
}
.kobosrrelatedSIcon a{
	position:absolute;
	inset:0;
	display:block;
	text-indent:-9999px;
}
.kobosrrelatedSMeta{
	padding: 20px 0;
}
.kobosrrelatedSTitle{
	font-size: var(--kobo_font_secitle_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
	margin: 0 0 14px;
}
.kobosrrelatedSTitle a{
	color: var(--kobo_color_black);
	text-decoration: none !important;
}
.kobosrrelatedSTitle h2{
	margin:0;
	font-size: inherit;
}
.kobosrrelatedSText{
	max-width: 90%;
	margin: 0 0 18px;
}
.kobosrrelatedSBtns{
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

/* slick arrows (simple) */
.kobosrrelatedWrap .slick-prev,
.kobosrrelatedWrap .slick-next{
	width: 44px;
	height: 44px;
	border-radius: 999px;
	background: transparent;
	/* border: 1px solid rgba(0,0,0,.15); */
	z-index: 5;
	color: var(--kobo_color_black);
}
.kobosrrelatedWrap .slick-prev:before,
.kobosrrelatedWrap .slick-next:before{
	font-family: inherit;
	color: #000;
	font-size: 24px;
	opacity: 1 !important;
}
.kobosrrelatedWrap .slick-prev{
	left: -40px;
}
.kobosrrelatedWrap .slick-next{
	right: -40px;
}

/* dining hotel home */
.kobohoteldin{
	margin: 100px auto;
	width: min(1400px, 95%);
	text-align: center;
}
.kobohoteldinTitle h3{
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0 0 10px; 
} 
.kobohoteldinRowL,
.kobohoteldinRowR,
.kobohoteldinRowLInner {
  min-width: 0;
} 
.kobohoteldinText{
	max-width: 800px;
	margin: 20px auto;
	text-align: center;
}

/* kobo din carousel */
.kobohoteldinCarousel{ 
	margin: 60px auto;
	height: 500px;
}

.kobohoteldinSlide{
	padding: 0 10px; /* spacing between slides */
}

.kobohoteldinRow{
	display: flex;
	gap: 40px;
	align-items: center;
}

.kobohoteldinRowL{ width: 65%; }
.kobohoteldinRowR{ width: 35%; }

.kobohoteldinRowLInner{
	display: flex;
	gap: 20px;
}

.kobohoteldinRowLBga{
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center !important; 
}

.kobohoteldinRowLBga--big{
	width: 65%;
	height: 500px;
}

.kobohoteldinRowLBga--small{
	width: 35%;
	height: 350px;
	align-self: flex-end;
}

.kobohoteldinRowMeta{
	max-width: 520px;
}

.kobohoteldinRowTitle h4{
	font-size: var(--kobo_font_secitle_sz);
	font-family: var(--kobo_font_heading);
	line-height: 1.2;
	margin: 0 0 20px;
}

.kobohoteldinRowText{
	margin: 0 0 20px;
}

/* Slick arrows (basic) */
.kobohoteldinCarousel .slick-prev,
.kobohoteldinCarousel .slick-next{
	z-index: 5;
} 
.koboDiningNav{
  text-align: right;
  margin-top: 20px;
}

.koboDiningNext{
  background: none;
  border: none;
  font-family: var(--kobo_font_heading);
  font-size: 16px;
  letter-spacing: .08em;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--kobo_color_black);
}
.koboDiningNext:hover{
	background: transparent !important;
	color: var(--kobo_color_black);
}

.koboDiningNext .koboArrow{
  transition: transform .3s ease;
  font-size: 18px;
}

.koboDiningNext:hover .koboArrow{
  transform: translateX(6px);
}

.kobohoteldin,
.kobohoteldinCarousel{
  transform: none !important;
}

/* kobo wellness */

.kobohotelwellness{
	margin: 100px auto;  
	background: var(--kobo_color_linen);
}	
.kobohotelwellInner{ 
	padding: 100px;
	display: flex;
	gap: 40px;
	align-items: center;
} 
.kobohotelwellL{
	width: 50%;
}
.kobohotelwellR{
	width: 50%;
}
.kobohotelwellMeta{
	padding: 40px;
}
.kobohotelwellTitle h3{
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0 0 10px;
}
.kobohotelwellText{
	margin: 0 0 40px;
	max-width: 80%;
}
.kobohotelwellBg{ 
 	position: relative;
	aspect-ratio: 1 / 1; 
	width: 100%;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center !important;
    overflow: hidden;
}
.kobohotelwellVideo{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
}

.kobohotelwellPoster{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1; /* κάτω από το video */
}
/* =========================
   KOBO Rooms Row (hrsrow)
   ========================= */

.kobohrsrow_row{
  display: grid;
  gap: clamp(40px, 5vw, 80px);
  width: min(1400px, 95%);
  margin: 70px auto;
}

/* single room row */
.kobohrsrow_room{
  display: grid;
  grid-template-columns: 60% 40%;
  align-items: center;
  gap: clamp(24px, 4vw, 60px); 
  justify-content: center;
}

/* alternate */
.kobohrsrow_room:nth-child(even){
  direction: rtl;
}
.kobohrsrow_room:nth-child(even) > *{
  direction: ltr;
} 

.kobohrsrow_roomIcon{
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  transition: transform .6s ease;
}
 
.kobohrsrow_roomIcon::after{
  content:"";
  position:absolute;
  inset:0;
  background:inherit;
  background-size:inherit;
  background-position:inherit;
  transition: transform .9s cubic-bezier(.2,.6,.2,1);
}

.kobohrsrow_room:hover .kobohrsrow_roomIcon::after{
  transform: scale(1.08);
}
 
.kobohrsrow_roomIcon a{
  position:absolute;
  inset:0;
  z-index:2;
  text-indent:-9999px;
} 
.kobohrsrow_roomMeta{
  max-width: 520px;
}

.kobohrsrow_roomTitle h2{
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	color: var(--kobo_color_black);
	text-decoration: none !important; 
	text-transform: uppercase;
	margin: 0;
	  transition: color .35s ease;
}
.kobohrsrow_roomTitle a{
	color: var(--kobo_color_black);
	text-decoration: none !important;
	  transition: color .35s ease;
}
.kobohrsrow_roomView h3{
	font-size: var(--kobo_font_thtitle_sz);
	margin: 5px 0 0;
}
.kobohrsrow_roomDesc{
  margin:16px 0 22px;
  line-height:1.6;
}
.kobohrsrow_dinDesk{
	font-size: 13px;
}

/* specs inline */
.kobohrsrow_roomSpecs{
  display:flex;
  flex-wrap:wrap;
  gap: 7px 24px;
  margin: 30px 0 10px;
}

.kobohrsrow_roomSpec{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  opacity:.9;
} 
.kobohrsrow_roomfaSpec{
  font-size:16px;
}
 
.kobohrsrow_roomBtnS{
  display:flex;
  gap: 20px;
  flex-wrap:wrap;
  margin-top:18px;
  align-items: center;
} 
 

@media (max-width: 900px){

  .kobohrsrow_room{
	grid-template-columns: 1fr;
	gap:28px;
  }

  .kobohrsrow_room:nth-child(even){
	direction:ltr;
  }

  .kobohrsrow_roomMeta{
	max-width:100%;
  }

}

.kobohrsrow_room{transition:opacity .25s ease, transform .25s ease;}
.kobohrsrow_room.is-enter{opacity:0;transform:translateY(8px);}

.koboExpNavRoom{
	margin-bottom: -20px !important;
}

/* contact pages */

/* ===========================
   KOBO — Contact Info (Options-driven)
   Classes: koboContactInfo / koboContactGrid / koboContactLine / koboContactSocial
   =========================== */

.koboContactInfo{
  width: min(1200px, 95%);
  margin: 0 auto;
} 
/* Grid */
.koboContactGrid{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: clamp(18px, 2.8vw, 40px);
  padding: clamp(18px, 2.6vw, 34px);
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.03);
  border-radius: 16px;
}
.koboContactGridport{
	padding: 0 0 50px;
}

/* Column */
.koboContactCol{
  min-width: 0;
}

/* Lines */
.koboContactLine{
  margin: 0 0 14px 0;
  font-size: 14px;
  line-height: 1.7;
  opacity: .9;
}

.koboContactLine strong{
  display: inline-block;
  margin-right: 8px;
  letter-spacing: .4px;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 12px;
  opacity: .9;
}
	.kobocontport_wrap{
	width: min(1200px, 95%);
	margin: 50px auto;
}
.kobocontport_grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:40px;
}
.kobocontport_title{
	font-family:var(--kobo_font_heading);
	font-size:var(--kobo_font_secitle_sz);
	text-transform:uppercase;
	margin-bottom:20px;
}
.kobocontport_line{
	margin:0 0 14px 0;
	font-size:14px;
	line-height:1.7;
	opacity:.9;
}
.kobocontport_line strong{
	display:inline-block;
	margin-right:8px;
	letter-spacing:.4px;
	text-transform:uppercase;
	font-weight:600;
	font-size:12px;
	opacity:.9;
}
.kobocontport_line a{
	color:inherit;
	text-decoration:none;
	border-bottom:1px solid rgba(255,255,255,.25);
	transition:border-color .25s ease, opacity .25s ease, transform .25s ease;
}
.kobocontport_btn.koboBtn{
	font-size:10px;
}
.kobocontport_social{
	margin-top:40px;
}
.kobocontport_socialS{
	padding:0 0 10px;
}
.kobocontport_socialS a{
	color:inherit;
	text-decoration:none;
	border-bottom:1px solid rgba(255,255,255,.25);
	transition:border-color .25s ease, opacity .25s ease, transform .25s ease;
}
.kobocontport_c{ clear:both; padding:15px; }
.kobocontport_sep{
	width:100%;
	border-bottom:1px solid #BBB;
	margin:0 0 50px;
}
@media(max-width:1200px){
	.kobocontport_grid{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:700px){
	.kobocontport_grid{ grid-template-columns:1fr; gap:40px; }
	.kobocontport_col{
		text-align: center;
	}
}
/* Links */
.koboContactInfo a{
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,0.25);
  transition: border-color .25s ease, opacity .25s ease, transform .25s ease;
}

.koboContactInfo a:hover{
  border-color: rgba(255,255,255,0.55);
  opacity: 1;
}

/* Social row */
.koboContactSocial{
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
  margin-top: 10px;
}

.koboContactSocial a{
  border-bottom: 0;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.04);
  font-size: 12px;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.koboContactSocial a:hover{
  border-color: rgba(255,255,255,0.34);
  background: rgba(255,255,255,0.08);
}

/* If you use your underline button */
.koboContactInfo .koboBtnW{
  border-bottom: 0 !important;
  display: inline-block;
}

/* Optional: subtle separators inside the box (luxury feel) */
.koboContactCol + .koboContactCol{
  position: relative;
}

.koboContactCol + .koboContactCol:before{
  content:"";
  position: absolute;
  left: calc(-1 * clamp(9px, 1.4vw, 20px));
  top: 0;
  bottom: 0;
  width: 1px;
  background: rgba(255,255,255,0.08);
} 
/* kobo wedding */

.kobohwedreq{
	max-width: 760px;
	margin: 0 auto 100px;
}
.kobohwedreqTitle h3{
	text-align: center;
	font-family: var(--kobo_font_heading);
	font-size: var(--kobo_font_subtitle_sz);
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0 0 30px;
}

/* =========================
   KOBO — Wedding / Contact Form
   ========================= */

.kobowedform{
  max-width: 760px;
  margin: 0 auto;
}

.kobowedformS{
  margin-bottom: 22px;
} 
.kobowedform input[type="text"],
.kobowedform input[type="email"],
.kobowedform textarea{
  width: 100%;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--kobo_color_border, #d8d8d8);
  padding: 12px 0;
  font-size: 14px;
  letter-spacing: 0.04em;
  color: var(--kobo_color_black);
  font-family: inherit;
  transition: border-color .3s ease;
}
 
.kobowedform textarea{
  min-height: 110px;
  resize: vertical;
} 
.kobowedform input:focus,
.kobowedform textarea:focus{
  outline: none;
  border-color: var(--kobo_color_accent, #b89b5e);
}
 
.kobowedform ::placeholder{
  color: var(--kobo_color_black);
  opacity: 1;
  letter-spacing: 0.05em;
} 
.kobowedform input[type="submit"]{
  background: none;
  border: 0;
  border-bottom: 2px solid var(--kobo_color_accent, #b89b5e);
  padding: 10px 0 6px;
  font-size: 13px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  cursor: pointer;
  color: var(--kobo_color_black);
  transition: all .35s ease;
  border-radius: 0;
} 
.kobowedform input[type="submit"]:hover{
  color: var(--kobo_color_accent, #b89b5e);
  border-color: var(--kobo_color_accent, #b89b5e);
} 
.kobowedform .kobowedformS:last-child{
  font-size: 12px;
  color: var(--kobo_color_black);
  line-height: 1.6;
}

.kobowedform a{
  color: inherit;
  text-decoration: underline;
} 
.kobowedform .flatpickr-wrapper{
	width: 100%;
}
/* =========================
   KOBO — ACF Gallery Masonry
   Desktop 3 / Mobile 1
   ========================= */

.koboGal{
  padding: 20px;
}

.koboGalMasonry{
  column-count: 3;
  column-gap: clamp(12px, 1.5vw, 22px);
  width: min(1400px, 95%);
  margin: 0 auto;
}

.koboGalItem{
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  margin: 0 0 clamp(12px, 1.5vw, 22px);
}

.koboGalLink{
  display: block;
  text-decoration: none;
}

.koboGalImg{
  width: 100%;
  height: auto;
  display: block; 
  transform: translateZ(0);
  transition: transform .35s ease, filter .35s ease;
}

/* subtle luxury hover */
@media (hover:hover){
  .koboGalLink:hover .koboGalImg{
	transform: scale(1.01);
	filter: saturate(1.03) contrast(1.02);
  }
}

/* Tablet */
@media (max-width: 1024px){
  .koboGalMasonry{ column-count: 2; }
}

/* Mobile: 1 col */
@media (max-width: 640px){
  .koboGalMasonry{ column-count: 1; } 
}
/* kobo offers  */
	/* =========================
   KOBO — Offers
   ========================= */

.kobooffers{
  display:grid; 
 grid-template-columns:repeat(2,minmax(0,1fr));
  gap:40px;
  margin:80px auto;
  width:min(1400px,95%);
}
 

/* item */
.kobooffers__item{
  display:flex;
  flex-direction:column;
  background: var(--kobo_color_linen);
  overflow:hidden;
  /* box-shadow:0 10px 30px rgba(0,0,0,.06); */
  transition:transform .35s ease, box-shadow .35s ease;
}

.kobooffers__item:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 45px rgba(0,0,0,.08);
}

/* image */
.kobooffers__media{
  width:100%;
  aspect-ratio: 3 / 2;
  background-size:cover;
  background-position:center;
}

/* content */
.kobooffers__content{
  padding:28px 26px 30px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
/* 
.kobooffers__title{
 font-family: var(--kobo_font_heading);
 font-size: var(--kobo_font_subtitle_sz);
  line-height:1.25;
  margin:0;
  letter-spacing:.3px; 
}
 */
.kobooffers__hotel{
  font-size:13px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--kobo_color_accent,#c6a47e);
  margin-top: -12px;
  margin-bottom:2px;
  font-weight:500;
}

.kobooffers__desc{
  font-size:15px;
  line-height:1.6;
  color:var(--kobo_color_text,#555);
}

/* actions */
.kobooffers__actions{
  margin-top:8px;
}

.kobooffers__btn{
  display:inline-block;
}

/* empty */
.kobooffers__empty{
  text-align:center;
  color:#888;
  font-size:15px;
  margin:40px 0;
}
/* center single offer */
.kobooffers:has(.kobooffers__item:only-child){
  justify-items:center;
}

.kobooffers__item:only-child{
  max-width:600px;
  width:100%;
}
.kobooffers__item:only-child{
  grid-column:1 / -1;
  max-width:600px;
  margin:0 auto;
}
/* =========================
   NOMÉE Loyalty Club
   ========================= */

.nomeeLoyalty {
	padding: 0 0 100px;
	/* background: linear-gradient(180deg, rgba(0, 0, 0, .04), rgba(0, 0, 0, 0));*/
} 

.nomeeLoyalty__wrap{
  width: min(1200px, 92%);
  margin: 0 auto;
}

.nomeeLoyalty__head{
  max-width: 760px;
  margin: 0 auto clamp(22px, 3vw, 34px);
  text-align: center;
}

.nomeeLoyalty__eyebrow{
  margin: 0 0 10px;
  font-size: 12px;
  letter-spacing: .22em;
  text-transform: uppercase;
  opacity: .75;
}

.nomeeLoyalty__title{
  margin: 0 0 12px;
  font-size: clamp(28px, 3.6vw, 44px);
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.nomeeLoyalty__lead{
  margin: 0;
  font-size: clamp(15px, 1.35vw, 18px);
  line-height: 1.7;
  opacity: .85;
}

.nomeeLoyalty__grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(14px, 2vw, 22px);
  align-items: stretch;
  margin-top: clamp(18px, 2.5vw, 26px);
}

.nomeeTier{
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  padding: 22px 20px 18px;
  /* background: var(--kobo_color_linen); */
  /* background: rgba(255,255,255,.7); */
  backdrop-filter: blur(10px);
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 18px 50px rgba(0,0,0,.08);
}

.nomeeTier:before{
  content:"";
  position:absolute;
  inset: 0 0 auto 0;
  height: 8px;
  background: rgba(0,0,0,.12);
}

.nomeeTier__top{
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.nomeeTier__badge{
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 600;
}

.nomeeTier__range{
  font-size: 12px;
  opacity: .8;
}

.nomeeTier__list{
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.nomeeTier__list li{
  position: relative;
  padding-left: 18px;
  line-height: 1.55;
  font-size: 14px;
  opacity: .92;
}

.nomeeTier__list li:before{
  content:"";
  position:absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(0,0,0,.25);
}

.nomeeTier__list em{
  font-style: normal;
  opacity: .8;
}

/* Tier accents */
.nomeeTier--blue:before{ background: linear-gradient(90deg, rgba(26,103,255,.95), rgba(26,103,255,.2)); }
.nomeeTier--silver:before{ background: linear-gradient(90deg, rgba(140,140,150,.95), rgba(140,140,150,.2)); }
.nomeeTier--gold:before{ background: linear-gradient(90deg, rgba(196,155,77,.95), rgba(196,155,77,.2)); }

/* How it works */
.nomeeHow{
  margin-top: clamp(18px, 3vw, 28px);
}

.nomeeHow__card{
	/* border-radius: 22px; */
	padding: clamp(18px, 2.4vw, 28px);
	/* border: 1px solid rgba(0, 0, 0, .08); */
	/* background: rgba(255, 255, 255, .75); */
	backdrop-filter: blur(10px);
	/* box-shadow: 0 18px 50px rgba(0, 0, 0, .07);*/
}

.nomeeHow__title{
  margin: 0 0 14px;
  font-size: 18px;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .88;
}

.nomeeHow__steps{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.nomeeStep{
  /* border-radius: 16px; */
  padding: 14px 14px 12px;
  border: 1px solid rgba(0,0,0,.08);
  /* background: rgba(0,0,0,.02); */
}

.nomeeStep__k{
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  opacity: .72;
  margin-bottom: 8px;
  font-weight: 600;
}

.nomeeStep__v{
  font-size: 14px;
  line-height: 1.55;
  opacity: .92;
}

.nomeeHow__cta{
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.nomeeBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.18);
  text-decoration:none !important;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 600;
  background: rgba(0,0,0,.92);
  color: #fff;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.nomeeBtn:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(0,0,0,.16);
}

.nomeeBtn--ghost{
  background: transparent;
  color: rgba(0,0,0,.92);
}

.nomeeHow__note{
  margin: 14px 0 0;
  font-size: 12px;
  line-height: 1.6;
  opacity: .7;
}

/* Responsive */
@media (max-width: 980px){
  .nomeeLoyalty__grid{ grid-template-columns: 1fr; }
  .nomeeHow__steps{ grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px){
  .nomeeHow__steps{ grid-template-columns: 1fr; }
  .nomeeTier{ padding: 20px 16px 16px; }
}
 /* ============================================================
	  KOBO VILLA — Overlap Intro (villa_layout repeater)
	  ============================================================ */
   
   .kobovillaSec1{
	 width:100%;
	 padding:50px 20px;
	 margin:50px 0;
	 /* no background */
   }
   
   .kobovillaSec1__inner{
	 width:min(1500px, 90%);
	 margin:0 auto;
	 display:grid;
	 grid-template-columns:1.05fr 1.4fr;
	 gap:clamp(26px, 5vw, 70px);
	 align-items:center;
   }
   
   .kobovillaSec1__content{ max-width:460px; }
   
   .kobovillaSec1__title{
	 margin:0 0 14px;
	 text-transform:uppercase;
	 font-size:var(--kobo_font_subtitle_sz);
	 font-family:var(--kobo_font_heading);
	 line-height:1.2;
   }
   
   .kobovillaSec1__text{ margin:0 0 20px; }
   
   .kobovillaSec1__media{
	 position:relative;
	 min-height:clamp(320px, 38vw, 520px);
   }
   
   .kobovillaSec1__imgBig{
	 position:absolute;
	 right:0;
	 top:0;
	 width:85%;
	 aspect-ratio:16 / 9;
	 min-height:400px;
	 overflow:hidden;
   }
   
   .kobovillaSec1__imgSmall{
	 position:absolute;
	 left:0;
	 bottom:0;
	 width:min(320px, 55%);
	 aspect-ratio:4 / 3;
	 overflow:hidden;
	 transform:translateY(8%);
	 min-height:350px;
   }
   
   .kobovillaSec1__imgBig::before,
   .kobovillaSec1__imgSmall::before{
	 content:'';
	 position:absolute;
	 inset:0;
	 background-image:var(--kobovilla-bg);
	 background-size:cover;
	 background-position:center;
	 background-repeat:no-repeat;
	 transform:scale(1);
	 transition:transform .55s ease;
	 will-change:transform;
   }
   
   .kobovillaSec1__media:hover .kobovillaSec1__imgBig::before,
   .kobovillaSec1__media:hover .kobovillaSec1__imgSmall::before{
	 transform:scale(1.05);
   }
   
   .kobovillaSec1__imgBig,
   .kobovillaSec1__imgSmall{
	 box-shadow:0 12px 40px rgba(0,0,0,.08);
   }
   
   /* Alternate layout (meta right, images left) */
   .kobovillaSec1--rev .kobovillaSec1__content{ order:2; }
   .kobovillaSec1--rev .kobovillaSec1__media{ order:1; }
   
   .kobovillaSec1--rev .kobovillaSec1__imgBig{
	 left:0;
	 right:auto;
   }
   .kobovillaSec1--rev .kobovillaSec1__imgSmall{
	 right:0;
	 left:auto;
   }
   
   /* ============================================================
	  Responsive
	  ============================================================ */

@media (max-width:980px){

 .kobovillaSec1__inner{
   grid-template-columns:1fr;
   align-items:start;
 }

 .kobovillaSec1__content{
   max-width:640px;
   order:0 !important;
 }

 .kobovillaSec1__media{
   min-height:420px;
   order:0 !important;
 }

 .kobovillaSec1__imgBig{ width:min(760px,100%); }
 .kobovillaSec1__imgSmall{ width:min(420px,70%); }

 /* reset image anchoring (no flip on mobile) */
 .kobovillaSec1__imgBig{
   right:0;
   left:auto;
 }

 .kobovillaSec1__imgSmall{
   left:0;
   right:auto;
 }

}

@media (max-width:560px){
 .kobovillaSec1__media{ min-height:360px; }
 .kobovillaSec1__imgSmall{ width:72%; }
}
.kobovillaSec1__spaces{
   column-count: 2;          /* desktop */
   column-gap: 40px;
   width: min(1500px, 90%);
   margin: 100px auto 0;
 }
 
 .kobovillaSec1__space{
   break-inside: avoid;
   margin-bottom: 24px;
 }
 
 /* tablet */
 @media (max-width: 1024px){
   .kobovillaSec1__spaces{
	 column-count: 2;
   }
 }
 
 /* mobile */
 @media (max-width: 640px){
   .kobovillaSec1__spaces{
	 column-count: 1;
   }
 }
   
   .kobovillaSec1__space{
	 border-top:1px solid rgba(0,0,0,.12);
	 padding-top:12px;
   }
   
   .kobovillaSec1__spaceTitle{
	 font-size:14px;
	 letter-spacing:.08em;
	 text-transform:uppercase;
	 font-weight:600;
	 margin-bottom:4px;
   }
   
   .kobovillaSec1__spaceText{
	 font-size:13px;
	 line-height:1.6;
	 opacity:.85;
   }
   .kobovillaSec1__spaceText p{
	   margin: 0 0 10px;
   }
	 
   /* ============================================================
	  KOBO VILLA — Spaces Grid
	  ============================================================ */
   
   .kobovillaSpaces{
	 width:100%;
	 padding:0 20px;
	 margin:80px 0;
   }
	
  
  .kobovillaSpaces__inner{
	width:min(1400px, 92%);
	margin:0 auto;
	column-count:2;
	column-gap:clamp(28px, 4vw, 60px);
  }
  
  /* each card must not split */
  .kobovillaSpaces__card{
	display:inline-block;
	width:100%;
	break-inside:avoid;
	-webkit-column-break-inside:avoid;
	margin:0 0 clamp(28px, 4vw, 60px);
  }
  
  /* responsive */
  @media (max-width:900px){
	.kobovillaSpaces__inner{ column-count:1; }
  }
   
   /* .kobovillaSpaces__card:hover{
	 transform:translateY(-4px);
	 box-shadow:0 18px 40px rgba(0,0,0,.06);
   } */
   
   /* title */
   .kobovillaSpaces__title{
	 margin:0 0 18px;
	 font-family:var(--kobo_font_heading);
	 font-size:18px;
	 letter-spacing:.12em;
	 text-transform:uppercase;
   }
   
   /* list */
   .kobovillaSpaces__list{
	 margin:0;
	 padding:0;
	 list-style:none;
	 display:grid;
	 gap:10px;
   }
   
   .kobovillaSpaces__list li{
	 position:relative;
	 padding-left:18px;
	 line-height:1.5;
   }
   
   .kobovillaSpaces__list li::before{
	 content:"";
	 position:absolute;
	 left:0;
	 top:.6em;
	 width:6px;
	 height:6px;
	 border-radius:50%;
	 background:var(--kobo_color_accent);
   }
   
   /* responsive */
   @media (max-width:900px){
	 .kobovillaSpaces__inner{
	   grid-template-columns:1fr;
	 }
   } 
			   
/* ===========================
	  KOBO — Experiences Row (FINAL)
	  Prefix: kobohrexprow_
	  =========================== */
   
   .kobohrexprow_row{
	 display: grid;
	 gap: 40px;
	 width: min(1400px, 95%);
	 margin: 100px auto;
	 position: relative;
   }
   
   /* each item */
   .kobohrexprow_room{
	 display: grid;
	 grid-template-columns: 40% 60%;
	 gap: 22px;
	 align-items: stretch;
	 padding: 18px;
	 border: 1px solid rgba(255,255,255,0.10);
	 background: rgba(255,255,255,0.03);
	 border-radius: 16px;
	 overflow: hidden;
	 position: relative;
	 transition: transform .35s ease, border-color .35s ease, background .35s ease;
   }
	
   
   /* hover card */
   .kobohrexprow_room:hover{
	 transform: translateY(-4px);
	 border-color: rgba(255,255,255,0.18);
	 background: rgba(255,255,255,0.05);
   }
   
   /* left image */
   .kobohrexprow_roomL{
	 width: 100%;
	 min-width: 0;
   }
   
   /* image wrapper */
   .kobohrexprow_roomIcon{
	 width: 100%;
	 height: 400px;
	 position: relative;
	 overflow: hidden;
	 transform: translateZ(0);
   }
   
   /* actual image layer (zooms) */
   .kobohrexprow_roomImg{
	 position:absolute;
	 inset:0;
	 background-size: cover;
	 background-position: center;
	 background-repeat: no-repeat;
	 transform: scale(1);
	 transition: transform .6s ease;
	 z-index: 0;
   }
   
   /* soft dark overlay */
   .kobohrexprow_roomIcon:before{
	 content:"";
	 position:absolute;
	 inset:0;
	 background: rgba(0,0,0,0.18);
	 opacity: 0;
	 transition: opacity .45s ease;
	 pointer-events:none;
	 z-index: 1;
   }
   
   /* gradient overlay */
   .kobohrexprow_roomIcon:after{
	 content:"";
	 position:absolute;
	 inset:0;
	 background: linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.35) 100%);
	 opacity: .9;
	 transform: translateY(0);
	 transition: opacity .45s ease, transform .45s ease;
	 pointer-events:none;
	 z-index: 2;
   }
   
   /* hover: zoom + overlay shift (rooms-like) */
   .kobohrexprow_room:hover .kobohrexprow_roomImg{
	 transform: scale(1.06);
   }
   .kobohrexprow_room:hover .kobohrexprow_roomIcon:before{
	 opacity: 1;
   }
   .kobohrexprow_room:hover .kobohrexprow_roomIcon:after{
	 opacity: .95;
	 transform: translateY(-4px);
   }
   
   /* right content */
   .kobohrexprow_roomR{
	 min-width: 0;
	 display: flex;
	 align-items: center;
   }
   
   .kobohrexprow_roomMeta{
	 width: 100%;
	 display: grid;
	 grid-template-rows: auto auto auto;
	 gap: 10px;
   }
   
   /* title */
   .kobohrexprow_roomTitle h2{
	 margin: 0;
	 font-size: clamp(18px, 1.55vw, 22px);
	 letter-spacing: .5px;
	 text-transform: uppercase;
	 line-height: 1.15;
   }
   
   /* small underline */
   .kobohrexprow_roomTitle h2:after{
	 content:"";
	 display:block;
	 width: 64px;
	 height: 2px;
	 background: rgba(255,255,255,0.35);
	 margin-top: 10px;
   }
   
   /* description */
   .kobohrexprow_roomDesc{
	 font-size: 14px;
	 line-height: 1.7;
	 opacity: .88;
	 max-width: 72ch;
   }
   
   /* buttons area */
   .kobohrexprow_roomBtnS{
	 margin-top: 6px;
	 display: flex; 
	 gap: 10px;
   }
   
   /* optional button */
   .kobohrexprow_btn{
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 padding: 10px 14px;
	 border-radius: 999px;
	 border: 1px solid rgba(255,255,255,0.22);
	 background: rgba(255,255,255,0.06);
	 color: #fff;
	 text-decoration: none !important;
	 font-size: 12px;
	 letter-spacing: 1px;
	 text-transform: uppercase;
	 transition: transform .25s ease, background .25s ease, border-color .25s ease;
   }
   .kobohrexprow_btn:hover{
	 transform: translateY(-1px);
	 border-color: rgba(255,255,255,0.35);
	 background: rgba(255,255,255,0.10);
   }
   
   /* no results */
   .kobohrexprow_noresults{
	 margin: 0;
	 padding: 14px 0;
	 opacity: .75;
	 font-size: 14px;
   }
   
   /* responsive */
   @media (max-width: 900px){
   
	 .kobohrexprow_room{
	   grid-template-columns: 1fr;
	   gap: 14px;
	 }
   
	 .kobohrexprow_roomIcon{
	   height: 220px;
	 }
   
	 .kobohrexprow_roomBtnS{
	   justify-content: flex-start;
	 }
   
	 .kobohrexprow_room + .kobohrexprow_room{
	   margin-top: 26px;
	   padding-top: 26px;
	 }
   
	 .kobohrexprow_room + .kobohrexprow_room:before{
	   left: 0;
	   right: 0;
	 }
   }
 
/* =========================
	  KOBO — Hotels Slider
	  ========================= */
   
   .koboHotels{
	 width:min(1400px,95%);
	 margin:75px auto;
   }
   
   .koboHotels__item{
	 padding:0 10px;
   }
   
   .koboHotels__card{
	 display:block;
	 text-decoration:none !important;
	 color:inherit;
	 overflow:hidden;
	 transition:transform .45s ease, box-shadow .45s ease;
   }
   
   .koboHotels__card:hover{
	 /* transform:translateY(-8px);
	 box-shadow:0 30px 60px rgba(0,0,0,.12); */
   }
   
   /* image wrapper (clip container) */
   .koboHotels__mediaWrap{
	 overflow:hidden;
   }
   
   /* image */
   .koboHotels__media{
	 width:100%;
	 aspect-ratio:3/4;
	 background-size:cover;
	 background-position:center;
	 transition:transform 1.1s cubic-bezier(.2,.6,.2,1);
   }
   
   .koboHotels__card:hover .koboHotels__media{
	 transform:scale(1.08);
   }
   
   /* content */
   .koboHotels__content{
	 padding:20px 0;
   }
   
   .koboHotels__loc{
	 font-size:12px;
	 letter-spacing:2px;
	 text-transform:uppercase;
	 color:#8c8c8c;
	 margin-bottom:10px;
   }
   
   .koboHotels__title{
	 font-size:22px;
	 margin:0 0 10px;
	 line-height:1.3;
   }
   
   .koboHotels__text{ 
	 margin-bottom:15px;
   }
   
   /* remove underline everywhere */
   .koboHotels a,
   .koboHotels a:hover,
   .koboHotels a:focus{
	 text-decoration:none !important;
   }
   
   /* arrows */
   .koboHotels .slick-arrow{
	 position:absolute;
	 top:42%;
	 transform:translateY(-50%);
	 z-index:10;
	 background:#fff;
	 border:0;
	 width:44px;
	 height:44px;
	 cursor:pointer;
	 box-shadow:0 8px 20px rgba(0,0,0,.15);
   }
   
   .koboHotels .slick-prev{ left:-20px; }
   .koboHotels .slick-next{ right:-20px; }
   
   .koboHotels .slick-arrow:before{
	 font-family:"Font Awesome 6 Pro";
	 font-weight:300;
	 color:#000;
   }
   
   .koboHotels .slick-prev:before{ content:"\f053"; }
   .koboHotels .slick-next:before{ content:"\f054"; }
   
   /* responsive */
   @media(max-width:1024px){
	 .koboHotels__media{ aspect-ratio:3/2; }
   }
   
   @media(max-width:768px){
	 .koboHotels{ margin:60px auto; }
   }
   
/* =========================
	  KOBO — Chef Section
	  ========================= */
   
   .koboChef{
	 width:100%;
	 margin: 70px 0 120px;
   }
   
   .koboChef__inner{
	width: min(1200px, 95%);
	 margin:0 auto;
	 display:grid;
	 grid-template-columns: 1.05fr 0.95fr;
	 gap:70px;
	 align-items:center;
   }
	
   .koboChef__title{
	 font-family:var(--kobo_font_heading);
	 font-size: var(--kobo_font_title_sz);
	 line-height:1.2;
	 margin:0 0 22px; 
	 letter-spacing:.02em;
   }
   
   .koboChef__text{ 
	 max-width:520px;
   }
   
   .koboChef__text p{
	 margin:0 0 16px;
   }
   
   /* media */
   .koboChef__media{
	 position:relative;
   }
   
   .koboChef__img{
	 width:100%;
	 height:auto;
	 display:block;
	 border-radius:2px;
	 object-fit:cover;
	 aspect-ratio:4/5;
	 box-shadow:0 30px 60px rgba(0,0,0,.08);
   }
   
   /* subtle luxury frame */
   .koboChef__media::before{
	 content:"";
	 position:absolute;
	 inset:-18px -18px auto auto;
	 width:100%;
	 height:100%;
	 border:1px solid rgba(0,0,0,.08);
	 pointer-events:none;
   }
   /* zoom container */
   .koboChef__media{
	 position:relative;
	 overflow:hidden; /* important */
   }
   
   /* smooth zoom */
   .koboChef__img{
	 transition:transform 1.2s cubic-bezier(.2,.6,.2,1);
	 will-change:transform;
   }
   
   /* hover zoom */
   .koboChef__media:hover .koboChef__img{
	 transform:scale(1.06);
   }
   /* =========================
	  Responsive
	  ========================= */
   
   @media (max-width:980px){
   
	 .koboChef{
	   margin:80px 0;
	 }
   
	 .koboChef__inner{
	   grid-template-columns:1fr;
	   gap:40px;
	 }
   
	 .koboChef__media{
	   order:-1; /* image top */
	 }
   
	 .koboChef__img{
	   aspect-ratio:3/4;
	 }
   
	 .koboChef__media::before{
	   inset:-12px -12px auto auto;
	 }
   
   }	
   .kobodinmenu {
	   display: flex;
	   flex-wrap: wrap;
	   gap: 12px;
	   margin: 30px 0;
	   padding: 15px 20px 20px;
	   border: 1px solid #e2dada;
	   width: 100%;
	   grid-column: 1 / -1;
   }
   .kobodinmenuS{
	   flex:0 0 auto;
   }
   
   /* kobo experiences */
   .koboExpNav{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	border-top: 1px solid #BBB;
	border-bottom: 1px solid #BBB;
	padding: 15px;
	margin: 0 0 -40px;
   }
   .koboExpNav__btn{
	 appearance: none;
	 background: transparent;
	 padding: 0 0 1px;
	 cursor: pointer;
	font-family: var(--kobo_font_heading) !important;
	font-size: 16px !important;
	 color: var(--kobo_color_black);
	 font: inherit;
	 border-radius: 0;
   }
   .koboExpNav__btn:hover{
	   background: transparent;
		 color: var(--kobo_color_black);
   }
   .koboExpNav__btn.is-active{
	 font-weight: bold;
	 border-bottom: 2px solid;
   }
   
   
   /* KOBO — Experiences filter animation */
   .koboExpItem{
	 opacity: 1;
	 transform: translateY(0);
	 transition: opacity .55s cubic-bezier(.22,.61,.36,1),
				 transform .55s cubic-bezier(.22,.61,.36,1);
	 will-change: opacity, transform;
   }
   
   .koboExpItem.is-enter{
	 opacity: 0;
	 transform: translateY(18px);
   }
   
   .koboExpItem.is-hidden{
	 opacity: 0;
	 transform: translateY(10px);
	 pointer-events: none;
   }
   
   .koboExpItem.is-showing{
	 opacity: 0;
	 transform: translateY(10px);
   }  
   
   /* kobo island */
   
   .kobosant{
	   
   }
   .kobosantS{
	   width: min(1400px, 95%);
	   margin: 100px auto;
	   display: flex;
	   gap: 40px;
	   align-items: center;
   }
   .kobosantSL{
	   width: 65%;
   }
   .kobosantSR{
	   width: 35%;
   }
   .kobosantSInner{
	   position: relative;
	   width: 100%;
	   min-height: 700px;
   }
   .kobosantSLBga{
	   position: relative;
	   width: 65%;
	   height: 500px;
	   z-index: 1;
   }
   .kobosantSLBgb{
	   position: absolute;
	   right: 0;
	   top: 180px;
	   width: 45%;
	   height: 520px;
	   z-index: 2;
   }
   .kobosantSLBga, .kobosantSLBgb {
	   overflow: hidden;
	   border-radius: 2px;
	   background: none !important;
   }
   .kobosantSLBga::before, .kobosantSLBgb::before {
	   content: "";
	   position: absolute;
	   inset: 0;
	   background-image: var(--bg);
	   background-size: cover;
	   background-position: center;
	   background-repeat: no-repeat;
	   transform: scale(1);
	   transition: transform .7s cubic-bezier(.2, .7, .2, 1);
	   will-change: transform;
   }
   .kobosantSLBga,
	.kobosantSLBgb{
		 transition:
			 transform .5s cubic-bezier(.2,.7,.2,1),
			 box-shadow .5s ease;
	 }
	 
	 .kobosantSLBga:hover::before,
	 .kobosantSLBgb:hover::before{
		 transform: scale(1.07);
	 }
	 
	 .kobosantSLBga:hover,
	 .kobosantSLBgb:hover{
		 transform: translateY(-2px);
		 /* box-shadow: 0 25px 60px rgba(0,0,0,.25); */
	 }
	 
	 .kobosantSMeta{
		 max-width: 80%;
		 margin: 0 auto;
	 }
	 .kobosantSMetaTitle{
		 font-size: var(--kobo_font_secitle_sz);
		 font-family: var(--kobo_font_heading);
		 line-height: 1.2;
		 margin: 0 0 20px;
	 }
	 .kobosantSMetaText{
		 margin: 0 0 20px;
	 }
	 
	 /* Alternate layout */
	 .kobosantS.is-alt{
	   flex-direction: row-reverse;
	 }
	 
	 /* όταν γυρνάει, αλλάζουμε και το overlap των εικόνων */
	 .kobosantS.is-alt .kobosantSLBgb{
	   right: auto;
	   left: 0;
	 }
	 
	 .kobosantS.is-alt .kobosantSLBga { 
		 margin-right: 0;
		 margin-left: auto;
	 }
	 
	 /* προαιρετικά: λίγο padding ώστε να μην κολλάει στο edge */
	 .kobosantS.is-alt .kobosantSMeta{
	   margin: 0;            /* ήταν center */
	   margin-left: auto;    /* να κάθεται "μέσα" όμορφα */
	 }
	 .kobosantSabouli ul{
		 margin: 0;
	 }
	 .kobosantSabouli li{
		 list-style-type: none;
		 border-bottom: 1px solid #BBB;
		 padding: 5px 0;
	 }
	 /* =====================================
		FULL WIDTH VARIANT
	 ===================================== */
	 
	 .kobosantS.is-full{
	   display:block;
	   width: 100%;
	 }
	 
	 .kobosantS.is-full .kobosantSL,
	 .kobosantS.is-full .kobosantSR{
	   width:100%;
	 }
	 
	 .kobosantS.is-full .kobosantSInner{
	   min-height:650px;
	 }
	 
	 .kobosantS.is-full .kobosantSLBga{
	   width:100%;
	   height:650px;
	   position:relative;
	 }
	 
	 .kobosantS.is-full .kobosantSLBgb{
	   display:none;
	 }
	 
	 /* Meta κάτω από image */
	 .kobosantS.is-full .kobosantSR{
	   margin-top:60px;
	 }
	 
	 .kobosantS.is-full .kobosantSMeta{
	   max-width:900px;
	   margin:0 auto;
	   text-align:center;
	 }
	 .kobosantnote{
		 margin: 100px auto;
		 text-align: center;
		 font-weight: bold;
		 font-size: 13px;
	 }
 
.kobohmetaf{
	width: min(1000px, 95%);
	margin: 0 auto;
}
.kobohmetaf p{
	
}
.kobohmetaf a{
	color: var(--kobo_color_black);
	font-weight: 500;
	text-decoration: none !important;
}
 
 
/* ===== Mobile ===== */

@media (max-width: 900px) {
	:root { 
		--kobo_font_title_sz: 30px;
		--kobo_font_subtitle_sz: 22px;
		--kobo_font_secitle_sz: 18px;
		--kobo_font_thtitle_sz: 14px;
		--kobo_slider_height: 420px !important;
	} 
	.kobopropmenu{
		display: none;
	}    
	.is-sticky #mobile-menu {
		display: block !important;
		margin-top: 6px;
	}
	#sidr-main{
		width: 100%;
	}	
	#sidr-main.left {
		left: -100%;
	}	
	#site-logo img {
		max-width: 120px;
		max-height: 80px;
	}	
	.bookHeaderBlockForm form {
		grid-template-columns: 1fr 1fr;
		gap: 9px;
	}
	.boohomeBoxFS--btn {
		grid-column: 1 / -1;
	}
	.bookHeaderBlockForm .prime {
		width: 100%;
		justify-content: center;
	}	
	.kobobook a {
		padding: 0 0 1px;
		border: 0;
		border-bottom: 1px solid;
	}	
	.hasnt-overlay-header .kobobook a, .is-sticky .kobobook a {
		color: var(--kobo_color_black);
		background: transparent;
	}
	.koboclub{
		display: none;
	}	
	.koboslider_title_meta {
		width: 80%;
		max-width: 700px;
	}
	.koboslider_title {
		font-size: 20px;
		margin-bottom: 10px;
		color: #FFF; 
	}
	.koboslider_sub {
		color: #FFF;
		font-size: 13px;
	}
	.koboslider_btn {
		margin: 25px 0;
	}
	 
	.koboslider_title_meta{
		left:0!important;
		right:0!important;
		margin:0 auto!important;
		text-align:center!important;
	}
	.scrollD{
		display: none;
	}
	.bookHeaderBlock {
		bottom: 10px;
		
		display: none;
	}
	.kobop_meta { 
		padding: 0 20px;
	}
	.koboHotelsGrid {
		grid-template-columns: 1fr;
		gap: 32px;
		padding: 20px;
	} 
	.koboHotelCard--2,
	.koboHotelCard--4 {
		margin-top: 0;
	}
	.koboSec1 { 
		padding: 50px 20px 100px;
		margin: 50px 0;
	}
	.koboSec2 {
		margin: 50px 20px 0;
	}
	.koboSec2Row { 
		flex-wrap: wrap;
		gap: 0;
	}
	.koboSec2L {
		width: 50%;
	}
	.koboSec2Meta {
		padding: 20px 0;
	}
	.koboSec2Inner {
		width: min(1500px, 95%); 
	}
	.koboSec2M {
		width: 50%;
		padding-left: 5%;
	}
	.koboSec2R {
		width: 100%;
	}
	.koboSec2LImg {
		height: 300px;
	}
	.koboSec2MImg {
		height: 200px;
	}
	.koboSec3 {
		margin: 50px auto;
	}
	.koboSec4 {
		margin: 50px auto;
	}
	.koboSec5 {
		margin: 50px auto;
	}
	.koboSec6 {
		margin: 50px auto;
	}
	.koboNlInner { 
		flex-wrap: wrap;
	}
	.koboNlL {
		width: 100%;
	}
	.koboNlR {
		width: 100%;
	}
	.koboFooter {
		padding: 50px 20px;
	}
	.koboFooterS {
		padding: 10px;
	}
	.koboFooterInner { 
		flex-wrap: wrap;
	}
	.koboFooterInner>div:nth-child(1),
	.koboFooterInner>div:nth-child(2),
	.koboFooterInner>div:nth-child(3),
	.koboFooterInner>div:nth-child(4),
	.koboFooterInner>div:nth-child(5) {
		width: 100%;
	}
	.copyrights {
		padding: 20px;
	}
	.koboSec3Inner { 
		height: 520px; 
	}
	.koboSec3Meta { 
		padding: 40px 20px; 
	}
	.koboSec6Inner {
		height: 520px;
	}
	.koboSec4Text { 
		text-align: center;
	}
	.koboSec4Inner{
		text-align: center;
	}
	.koboCollage4Inner { 
		margin: 0 auto 50px;
	}
	.koboSec1__imgBig { 
		min-height: 250px; 
		width: 75%;
	}
	.koboSec1__imgSmall { 
		min-height: 200px;
	}
	.koboSec1__inner {
		grid-template-columns: 1fr;
		align-items: start;
	}
	.koboSec1__content {
		max-width: 640px;
	}
	.koboSec1__media {
		min-height: 420px;
	} 
	.koboSec1__imgSmall {
		width: min(420px, 70%);
	}
	.kobohmeta {
		padding: 0 20px;
	} 
	.kobop_meta {
		margin: 30px auto 15px;
	}
	.kobohrsrow_row { 
		margin: 50px auto;
		padding: 0 20px;
	}  
	.kobohrexprow_row {
		margin: 50px auto;
	}
	.hotelSection1Cols {
		padding: 0 20px;
	}
	.kobohotelwellInner {
		flex-wrap: wrap;
		padding: 20px 20px 50px;
		gap: 40px;
	}
	.kobohotelwellL {
		width: 100%;
	}
	.kobohotelwellR {
		width: 100%;
	}
	.kobohotelwellText {
		margin: 0;
		max-width: 100%;
	}
	.kobohotelwellness {
		margin: 50px auto;
	}
	.kobohwedreq { 
		width: 80%;
	}
	.kobohotelwellMeta {
		padding: 20px;
	}
	.kobooffers {
		grid-template-columns: 1fr;
		margin: 20px auto;
		padding: 0 20px; 
	}
	.koboContactGrid{
		grid-template-columns: 1fr;
	}
	.koboContactCol + .koboContactCol:before{
		display: none;
	}
	.kobotopleft { 
		display: none;
	}
	.kobohmeta { 
		margin: 20px; 
	}
	/* KOBO — Back to Group */
	.sidr-class-koboBackToGroup > a{
	  display:flex;
	  align-items:center;
	  gap:8px;
	  font-size:13px !important;
	  letter-spacing:.08em;
	  text-transform:uppercase;
	}
	
	.sidr-class-koboBackToGroup > a:before{
	  content:"←";
	  font-size:13px !important;
	  line-height:1;
	  opacity:.8;
	}
	.sidr-class-koboBackToGroup{
	  border-bottom: 1px solid rgba(0, 0, 0, .15) !important;
	  margin-bottom: 20px !important;
	  padding-bottom: 15px !important;
	}
	.kobosrview {
		margin: 40px auto;
		padding: 0 20px;
		flex-wrap: wrap;
	}
	.kobosrviewL {
		width: 100%;
	}
	.kobosrviewR {
		width: 100%;
	}
	.kobosrviewMeta {
		max-width: 100%;
	}
	.kobosrviewSpecs{ 
		gap: 20px;
	}
	.kobosroverview {
		margin: 50px auto;
		padding: 0 20px;
	}
	.kobosrrelated { 
		margin: 50px auto;
	}
	.kobosrrelatedWrap { 
		margin: 30px auto 0;
	}
	#koboslider_slider .flex-direction-nav .flex-prev {
		left: 5px;
	}
	#koboslider_slider .flex-direction-nav .flex-next {
		right: 5px;
	}
	.kobosroverviewLInner { 
		min-height: auto;
		padding-bottom: 100px;
	}
	.kobosroverviewLbga {
		height: 320px;
	}
	.kobosroverviewLbgb { 
		height: 220px; 
	}
	.kobosroverviewMeta {
		max-width: 100%;
	}
	#sidr-main ul {
		list-style: none;
		margin: 0 10% 7%;
	}
	.kobohoteldinCarousel {
		margin: 60px auto 140px;
	}
	.kobohotelwInner {
		flex-wrap: wrap;
		padding: 0 20px;
		gap: 10px;
	}
	.kobohotelwelcL {
		width: 100%;
	}
	.kobohotelwelcM {
		width: 100%;
	}
	.kobohotelwelcMWra {
		margin-top: 0; 
	}
	.kobohotelwelcBg {
		width: 100%; 
	}
	.kobohotelwelcTitle h2 {
		font-size: 30px;
	}
	.kobohotelwelcR {
		width: 100%;
		order: 1;
	}
	.kobohotelwelcL { 
		order: 2;
	}
	.kobohotelwelcM { 
		order: 3;
	}
	.kobohotelwelc {
		margin: 50px auto;
	} 
	.kobohotelwelcLogo {
		left: 0;
		margin: 0 auto;
		position: relative;
	}
	.kobohoteldinRow{ flex-direction: column; gap: 20px;padding: 0 20px; }
	.kobohoteldinRowL, .kobohoteldinRowR{ width: 100%; }
	.kobohoteldinRowMeta{ max-width: 100%; }
	.kobohoteldinRowLBga--big{ height: 360px; }
	.kobohoteldinRowLBga--small{ height: 240px; }
	
	.kobosantS { 
		margin: 50px auto;  
		padding: 0 20px;
	}
	.kobosantSLBga { 
		width: 90%;
		height: 400px; 
	}
	.kobosantSLBgb { 
		top: 180px;
		width: 50%;
		height: 320px; 
	}
	.kobosantS,
	   .kobosantS.is-alt{
		 flex-direction: column;
	   } 
	   .kobosantSL,
	   .kobosantSR{
		 width: 100%;
	   }
	   .kobosantSMeta{
		 max-width: 100%;
		 margin: 0;
	   }
	   .kobosantSInner{
		 min-height: 500px;
	   }
	   .kobosantS.is-full .kobosantSLBga { 
		   height: 420px;
	   }
	   .kobosantS.is-full .kobosantSInner {
		   min-height: 420px;
	   }
	#sidr-main .wpex-mobile-menu-bottom {
		margin-top: 10px;
	}
	#kobo-manage-consent {
		z-index: 1000 !important;
	} 
	   
} 


@media (max-height: 650px) {
  .kobomobmsoc {
	display: none;
  }
}
