/* init */
#wrapper{ width: 100%; height: 0; /* 91vh; */ }
.clearfix,.clearfix::before,.clearfix::after { content: ""; display: block; clear: both; }

/* =============================================================================
 * MOBILE MENU
 * =============================================================================
//////////////////////////////////////////////////////////////////////////////// */
/* --- if MD or wider : mobi-menu is hidden --- */
#mobi-menu { display: none; }
/* --- if less than MD : mobi-menu is shown --- */
@media screen and (max-width: 991px) {
  #mobi-menu { display: block; position: absolute; z-index: 1001;
    width: 60px; left: 0;
    padding: 12px 17px;
  }
}
a#open-menu, a:link#open-menu, a:visited#open-menu,
a:hover#open-menu, a:active#open-menu { color: #fff;
  text-shadow: 0 3px 3px rgba(0,0,0,.6);
  font-size: 28px;
}
.mobile-menu-offpanel * { font-family: "Roboto", sans-serif; }
.mobile-menu-offpanel ul { list-style: none; overflow: auto; }
.mobile-menu-offpanel{ display: none;position: fixed; z-index: 10;
  left: -100%; top:0;
  width: 100%; max-width: 100%; min-width: 320px;
  height:100%;
  background: #fff;
  /*
  -moz-transition:all 280ms ease-in;
  -webkit-transition:all 280ms ease-in;
  -o-transition:all 280ms ease-in;
  transition:all 280ms ease-in;
  */
}
.mobile-menu-main-list {
   max-height: 93vh; margin: 0;
   overflow: auto;
}
.mobile-menu-offpanel a { display: block;
   font-size: 18px; text-decoration: none;
   color: #464646;
    font-family: "Roboto", sans-serif;
}
.mobile-menu-sub-menu { position: fixed; z-index: 10;
   width: 100%; max-width: 450px; min-width: 320px;
   height: 100%;
   left: -100%; top: 42px;
   background: #fff;
   /*
   -moz-transition:all 180ms ease-in;
   -webkit-transition:all 180ms ease-in;
   -o-transition:all 180ms ease-in;
   transition:all 180ms ease-in;
   */
}
.mobile-menu-sub-menu.mobile-sub-menu-opened { z-index: 10;
   left: 0; height: calc(100% - 42px);
}
.mobile-menu-sub-menu li a.mobi--li-a-title { width: calc(100% - 44px); }
.mobile-menu-sub-menu li a.mobi--li-a-down { width: 40px; float:right; margin-top: -23px; }
.mobile-menu-sub-menu li a.mobi--li-a-down .fa-angle-right,
.mobile-menu-sub-menu li a.mobi--li-a-down .pii-right-thin { padding-left: 12px; border-left: 1px solid #bbb; }
.mobile-menu-sub-close { display: block; cursor: pointer;
   width: 100%; padding: 5px;
   background: #fff;
   box-sizing: border-box;
}
.mobile-menu-sub-close i { width: 35px; }
#close-menu { display: block;
   width: 100%; height: 42px; padding: 6px 18px;
   background: #f6f6f6;
   font-size: 27px; text-decoration: none; text-align: left;
   box-sizing: border-box;
}
.mobile-menu-opened .mobile-menu-offpanel { display: block;max-width: 450px; left: 0;
  border-left: 1px solid #eee;
  -webkit-box-shadow: 4px 3px 19px 0px rgba(0,0,0,0.75);
  -moz-box-shadow: 4px 3px 19px 0px rgba(0,0,0,0.75);
  box-shadow: 4px 3px 19px 0px rgba(0,0,0,0.75);
}
.mobile-menu-sub-menu.mobile-sub-menu-opened li,.mobile-menu-main-li { display: block;
   padding: 10px 0px; padding-left: 20px;
   background: #fff;
   border-bottom: 1px solid #f6f6f6;
}
.mobile-menu-simple-header { display: block;
   padding: 10px 20px; font-size: 13px;  color: #987;
}
.mobile-menu-unique { display: block;
   padding: 10px; margin: 0px 20px 10px;
   background: #eee;
}
.mobile-menu-offpanel a div { display: flex;
   width: 75%;
   flex-wrap: wrap;
}
.mobile-menu-offpanel a div b { display: block;
   width: 100%;
   font-size: 16px;
}
.mobile-menu-gray { background: #f6f6f6; padding: 0 20px; }
.mobile-menu-gray li { display: block;
   border-bottom: 1px solid #ccc;
   padding: 12px 0;
}
.mobile-menu-gray li a { position: relative; display: block; font-weight: 400; }
.mobile-menu-gray li a span { display: block; font-weight: 400; font-size: 13px; font-style: italic; }
.mobile-menu-gray li a i { color: #c00 }
.mobile-menu-gray li.mobile-menu-white-div a div { position: relative; display: flex;
   width: 100%;
   background: #fff;
   padding: 10px;
   box-sizing: border-box;
   font-size: 14px; font-weight: normal;
   justify-content: flex-start;
}
.mobile-menu-white-div { border-bottom: 0 !important; }
.mobile-menu-white-div img{ position: absolute;
   right: 15px; top: 7px; height: 24px;
}
.mobile-menu-white-div em { position: absolute;
   right: 30px; top: 11px;
   font-size: 18px; font-weight: bold;
}
.mobile-menu-offpanel .mobile-menu-white-div b { width: auto !important;
  margin-left: 15px;
}
.mobile-menu-offpanel a .fa.fa-arrow-right,
.mobile-menu-offpanel a .pii.pii-right-thin { width: 5%; }
.mobile-menu-offpanel a span.mobi-in-li-icon { width: 15%; text-align: center;
  font-size: 32px; color: #c00;
}
.mobile-menu-main-li .fa,
.mobile-menu-main-li .pii { float: right;
  margin-right: 20px; margin-top: 2px;
}
.mobile-div-unique { display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}
a.mobile-div-unique { display: flex; }
.mobile-div-unique div span { font-size: 13px; font-style:italic;  }
.mobile-div-unique .fa,
.mobile-div-unique .pii { margin-right: 10px !important; color: #c00; }
.mobile-menu-gray a .fa,
.mobile-menu-gray a .pii { position: absolute; top: 11px; right: 0px; }
.mobile-menu-flex-div { display: flex !important;
   align-items: center;
   justify-content: space-between !important;
}
.mobile-menu-white-div .mobile-menu-flex-div img { position: static;
  height: 26px;
  margin-right: 6px;
}
.mobile-menu-sub-close .fa.fa-angle-left,
.mobile-menu-sub-close .pii.pii-left-thin { float: none;
   margin-right: auto; margin: 0;
   padding-right: 15px;
}


/* =============================================================================
 * DESKTOP MENU
 * =============================================================================
//////////////////////////////////////////////////////////////////////////////// */
/* depricated: #header-blue { position: relative; z-index: 1001; }  #hader-blue -> renamed -> #header-right */
/* right-wing of desktop header ================================================
-- (is where destop menu is rendering) ----------------------------------------- */
#header-right {  position: absolute; z-index: 1001;
  width: 600px; right: 0;   /* width: same as .desktop-menu{width} */
}
/* --- if less than MD : header-right is hidden --- */
@media screen and (max-width: 991px) {
  #header-right { display: none; }
}
.desktop-menu *{ font-family: "Roboto", sans-serif; }
.desktop-menu a { text-decoration: none;
    color: #464646; outline: none!important;
}
.desktop-menu { display: flex; justify-content: space-between; align-items: center;
    width: 600px; padding: 0 30px;
}
.desktop-menu li { list-style-type: none; }
.desktop-menu-sub { position: absolute; display: none; top:78px; }
.desktop-menu-main-li { display: block; position: relative; }
.desktop-menu-main-li a { display: block; padding: 30px 0; }
/* desktop menu MAIN li font-size ==============================================
-------------------------------------------------------------------------------- */
.desktop-menu-main-li a span { color: #fff; border-bottom: 5px solid transparent;
  font-size: 17px;
}
.desktop-menu-main-li.hover > .desktop-menu-sub { display: block; }
.desktop-menu-main-li.hover > .desktop-menu-sub.desktop-menu-sub-hor{ display: flex; }
.presto > .desktop-menu-sub{ display: block; }
.presto .desktop-menu-isactive:hover .desktop-menu-sub{ display: block; }
.desktop-menu-main-li:hover > a span { border-bottom: 5px solid #ce0606; }
.desktop-menu-sub.desktop-menu-sub-hor { right: calc(-700px + 29vw);  /* agressive positioning (pi!) */
  width: auto;  min-height: 455px;
}
.desktop-menu-sub.desktop-menu-sub-hor li a span { white-space: nowrap; }
.desktop-menu-sub.desktop-menu-sub-hor li { display: block;
    background: #f2f2f2 /* grey background of horizontal destinations menu (#eee)*/;
    padding: 10px 15px 0;
}
.desktop-menu-sub.desktop-menu-sub-hor li a{ padding: 10px 0; }
.desktop-menu-sub.desktop-menu-sub-hor span {
    color: #464646; font-size: 14px;
}
.desktop-menu-sub.desktop-menu-sub-hor > li > a span::after { display: block;
     content: "";
     width: 100%; height: 0;
     margin-top: 10px; border-bottom: 2px solid transparent;
 }
.desktop-menu-sub.desktop-menu-sub-hor > li.presto > a span::after {
    display: block;
    content: "";
    width: 100%; height: 0;
    margin-top: 10px;
    border-bottom: 2px solid #ce0606;
}
.desktop-menu-sub .desktop-menu-sub { top: 58px; left: 0; }
.desktop-menu-sub.desktop-menu-top-ten {
    width: 100%; height: 395px;
    background: #fff;
}
.desktop-menu-sub.desktop-menu-top-ten li{ background-color: #fff; }
.desktop-menu-sub.desktop-menu-single { position: absolute;
    top: 20px; left: 270px;
    border-left: 1px solid #464646;
    /*padding-left: 30px;*/
    min-height: 96%;
}
.desktop-menu-sub.desktop-menu-single li{ padding: 0; }
.desktop-menu-flex { display: flex;  height: 350px; max-height: 100%; }
.desktop-menu-sub.desktop-menu-single .desktop-menu-flex img { max-width: 200px; }
.desktop-menu-flex div { display: block; flex-wrap: wrap; align-items: flex-start;
    text-align: center; justify-content: center;
    padding: 30px 50px 50px;
}
/*
.desktop-menu-flex p { font-size: 13px; font-weight: 300; margin: 15px 0; }
*/
.desktop-menu-sub.desktop-menu-top-ten > li:hover > a { color: #ce0606; }
.desktop-menu-sub.desktop-menu-top-ten > li > a { width: 250px; }
.desktop-menu-top-ten .fa.fa-angle-right,
.desktop-menu-top-ten .pii.pii-right-thin
{ display: none; }
.desktop-menu-sub.desktop-menu-top-ten > li:hover > a .fa.fa-angle-right,
.desktop-menu-sub.desktop-menu-top-ten > li:hover > a .pii.pii-right-thin { display: inline; float: right;
    margin-right: 25px; margin-top: 2px;
    color: #464646;
}
.desktop-menu-sub.desktop-menu-cols { width: 100%; overflow: hidden; }
/* desktop menu li font-size ===================================================
-------------------------------------------------------------------------------- */
.desktop-menu-sub.desktop-menu-cols li { background-color: #fff;
    font-size: 14px;
}
/* second (middle) colum wrapper ===============================================
-------------------------------------------------------------------------------- */
.desktop-menu-sub.desktop-menu-col { position: absolute;
    width: auto; height: 389px;
    left: 240px; top: 8px;
    border-left: 1px solid #f00; /* !!! */
    /* max-height: 94%; */ /* min-width: 220px; */
    overflow: auto;
    z-index: 10;
}
ul.desktop-menu-sub.desktop-menu-col { background: #fff; width: 240px; border-left: none; }
.desktop-menu-sub.desktop-menu-single { top: 0; width: auto; height: 100%; }
.desktop-menu-sub.desktop-menu-sub-hor > li > .desktop-menu-sub.desktop-menu-single {
    right: 15px; left: 570px; top: 78px;
    width: auto; min-height: 500px;
    background: #fff;
}
.desktop-menu-sub.desktop-menu-single li { background: #fff; }
.desktop-menu-block { display: flex; flex-wrap: wrap;
    justify-content: center;
    height: 100%; height: 520px;
    border-left: 1px solid #ccc;
    /* padding-left: 30px; */
}
.desktop-menu-block > div { display: flex; flex-wrap: wrap;
    justify-content: center; align-items: center;
}
.desktop-menu-sub.desktop-menu-single li { position: relative;
    height: 100%;
    padding-left: 40px;
    border-left: 1px solid #fff;
}
.desktop-menu-sub.desktop-menu-single { position: absolute;
    height: auto;
    top: 20px; left: 270px;
    border-left: 1px solid #ccc;
}
/* third column wrapper ========================================================
-------------------------------------------------------------------------------- */
.destop-third-col-wrapper { position: absolute; box-sizing: border-box;
    right: 24px; top: 8px;
    width: 370px;
    /* height: 385px; do not set height, because it will cover the childrens' divs and buttons (and we need [Learn More] to be clickable) */
    padding-left: 36px;
}
/* third column content ========================================================
-------------------------------------------------------------------------------- */
.desktop-menu-list-third { display: none; }
.desktop-menu-list-third { width: 378px !important; /* !!! 350px !important; */
  height: 385px;
  background: #fff;
  margin-left: -46px;  border-left: none
}
.padd-has-childs img { margin-left: -1px; /* border: 1px solid #fff; !!! */ }
.desktop-menu-sub.desktop-menu-cols > li { z-index: 1; position: static; }
.desktop-menu-main-li-btn,.desktop-menu-main-li-ham { display: block; }
.desktop-menu-main-li-btn a{ display: block; background: transparent;
    border: 1px solid #ffffff; border-radius: 8px;
    padding: 10px 20px;
    color: #ffffff;
}
.desktop-menu-main-li-ham > a{ color: #ffffff; font-size: 28px; padding: 30px 0; }
.desktop-menu-favorites { position: absolute; display: flex; flex-wrap: wrap;
    width: 300px; left: -224px;
    background: #fff;
    padding: 20px;
    align-items: center; justify-content: center;
    border-top: 18px solid #f2f2f2; /* grey upper fasa */
}
.desktop-menu-favorites b { display: block;
    width: 100%;
    font-size: 25px; font-weight: normal;
    text-align: center;
    font-family: "Roboto", sans-serif;
    color: #464646;
}
.desktop-menu-favorites span { display: block;
    width: 100%; margin-top: 10px;
    text-align: center;
    font-family: "Roboto", sans-serif; font-size: 16px;
    color: #464646;
}
.desktop-menu-favorites span em {
    font-size: 28px; font-family: "Open Sans", sans-serif;
    font-weight: bold; font-style: italic;
    color: #f00;
    margin: 0 10px;
}
.desktop-menu-favorites hr { width: 70%;
    border: 1px solid #464646;
    border-top: 0;
}
.desktop-menu-favorites p {
    font-size: 12px;
    text-align: center;
    line-height: 1.5;
    font-family: "Open Sans", sans-serif;
    font-style: italic;
    color: #464646;
}
.desktop-menu-close {
    display: block;
    width: 100%;
    padding: 10px !important;
    background: #fff;
    border: 1px solid #555;
    border-radius: 2px;
    font-size: 15px;
    text-align: center;
    cursor: pointer;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    color: #464646 !important;
}
.desktop-menu-favorites ul { width: 100%; }
li.desktop-user--menu a,
li.desktop-user--menu a:link, li.desktop-user--menu a:active { color: #444 !important; padding: 4px !important;
  border-bottom: 1px solid #bbb !important;
  border-top: none !important; border-left: none !important; border-right: none !important;
}
li.desktop-user--menu a:hover { color: #f00 !important; }
.desktop-menu-two-cols { position: absolute; width: 666px;
    right: -175px; padding: 15px;
    background: #fff;
}
.desktop-menu-two-cols li { display: block; }
.desktop-menu-two-cols ul li a {
    padding: 10px; width: 200px;
    color: #464646;
    border: 1px solid transparent;
}
.desktop-menu-two-cols > ul > li:hover > a{ border: 1px solid #ce0606; color: #ce0606; }
.desktop-menu-two-cols li a .fa,
.desktop-menu-two-cols li a .pii { display: none; float: right; }
.desktop-menu-two-cols > ul > li:hover > a .fa,
.desktop-menu-two-cols > ul > li:hover > a .pii { display: inline-block; }
.desktop-menu-two-cols .desktop-menu-sub { top: 20px; padding: 0 30px; left:240px }
.desktop-menu-sub.desktop-menu-sub-hor > li:first-child > ul { display: block; }
.desktop-menu-three-cols{ width: 800px; right: calc(-640px + 29vw); }
.desktop-menu-main-li-ham .desktop-menu-sub{
    width: 355px;  right: 20px;
    background: #fff;
}
.desktop-menu-sub-show{ display: block; }
.desktop-menu-btn-row { display: flex;
    padding: 25px 30px 10px;
    font-size: 13px; color: #888;
    justify-content: center;
}
.desktop-menu-btn-row .desktop-menu-btn { display: flex !important;
    padding: 5px !important;
    border: 1px solid #ccc;
    margin: 10px 10px 10px 0;
    border-radius: 5px;
    font-size: 15px; color: #666 !important;
    align-items: center;
    cursor: pointer;
    min-width: 125px;
}
.desktop-menu-btn-row .desktop-menu-btn b { display: flex;
    width: 24px; height: 24px;
    align-items: center; justify-content: center;
    font-size: 18px;
    margin-right: 12px;
    border-radius: 5px;
}
.desktop-menu-btn-row .desktop-menu-btn b::after { display: block; position: absolute;
    content: "";
    border-right: 1px solid #ccc;
    height: 36px; width: 36px; margin-left: 0px;
    border-radius: 5px;
}
.desktop-menu-main-li-ham .desktop-menu-cols { display: flex; flex-wrap: wrap;
    justify-content: center; align-items: center;
    border-bottom: 1px solid #ccc;
}
.desktop-menu-main-li-ham .desktop-menu-cols a { display: flex; flex-wrap: wrap;
    width: 49%; height: 165px;
    border: 1px solid #ccc;
    align-items: center; justify-content: center;
    color: #464646;
    padding: 10px;
    box-sizing: border-box;
}
.desktop-menu-main-li-ham .desktop-menu-cols a div { display: block;
    width: 100%;  text-align: center;
}
.desktop-menu-main-li-ham .desktop-menu-cols a b {
    width: 100%;
    font-size: 15px;
    text-align: center;
    font-weight: normal;
    font-family: "Roboto", sans-serif;
    color: #464646;
}
.desktop-menu-main-li-ham .desktop-menu-cols a span { width: 100%;
    font-size: 11px;  text-align: center;
}
.desktop-menu-main-li-ham .desktop-menu-cols a strong { width: 100%;
    font-size: 13px; font-weight: normal; text-align: center;
}
.desktop-menu-main-li-ham .desktop-menu-cols a:nth-child(1n+1){
    border-left: 0!important; border-bottom: 0!important;
}
.desktop-menu-main-li-ham .desktop-menu-cols a:nth-child(2n){
    border-right: 0!important; border-bottom: 0!important;
}
.desktop-menu-main-li-ham .desktop-menu-gray {
    background: #f2f2f2; /* #eee */
    padding-bottom: 20px;
}
.desktop-menu-main-li-ham .desktop-menu-gray li { display: block; position: relative;
    width: 315px;  margin: 0 20px; padding: 0;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
}
.desktop-menu-main-li-ham .desktop-menu-gray li a { display: block;
    font-size: 16px; color: #464646; font-weight: bold;
    padding: 20px 0;
}
.desktop-menu-main-li-ham .desktop-menu-gray li a span { display: block;
    font-size: 12px; font-weight: normal;
}
.desktop-menu-main-li-ham .desktop-menu-gray li a .fa.fa-chevron-right,
.desktop-menu-main-li-ham .desktop-menu-gray li a .pii.pii-right-thin { position: absolute;
    right: 5px; top: 20px;
    font-size: 30px; color: #ce0606;
}
.desktop-menu-main-li.hover::after { display: block; position: absolute;
    content: "";
    width: 0; top: 66px; margin-left: 40%;
    border-left: 24px solid transparent;
    border-top: 24px solid #f2f2f2; /* overwite with extra-class ;) */
    transform: rotate(-45deg);
    background: #f2f2f2; /* overwite with extra-class ;) */
}
.desktop-menu-main-li-ham.hover::before { display: block; position: absolute;
    content: "";
    width: 0; top: 66px;
    border-left: 24px solid transparent;
    border-top: 24px solid #fff;
    transform: rotate(-45deg);
}
.desktop-menu-sub.desktop-menu-cols li:hover > a { border: 1px solid #ce0606; color: #ce0606; }
.desktop-menu-sub.desktop-menu-cols li.hover > a { border: 1px solid #ce0606; color: #ce0606; }
.desktop-menu-sub.desktop-menu-cols li.hover > a span { color: #ce0606; }
.desktop-menu-sub.desktop-menu-cols li:hover > a span { color: #ce0606; }

/* main menu <li><a> List selection (on left or middle column list) ============
-------------------------------------------------------------------------------- */
.desktop-menu-sub.desktop-menu-cols li a { width: 198px;
    padding: 6px 8px;
    border: 1px solid transparent;
  font-weight: 700; /* destinations: 1st-col (+all cols; it will overiden by other class for 2nd-col) */
}
.menu-font-400 a, .menu-font-401 a { font-weight: 400 !important; }
.desktop-menu-sub.desktop-menu-cols li a .fa,
.desktop-menu-sub.desktop-menu-cols li a .pii { margin-top: 3px;
    display: none; float: right;
}
.desktop-menu-sub.desktop-menu-cols li:hover > a .fa,
.desktop-menu-sub.desktop-menu-cols li:hover > a .pii { display: block; }
.desktop-menu-link-bottom a { display: flex;
    align-items: center; justify-content: space-between;
}
.desktop-menu-link-bottom a div { display: flex; flex-wrap: wrap; align-items: center; }
.desktop-menu-link-bottom a div span {
    font-size: 12px;
    color: #464646;
    font-family: "Roboto", sans-serif;
}
.desktop-menu-link-bottom a img { display: block;
    margin: 0 10px;
    width: 24px; height: 36px;
}
/* Villas + Inspire Me menu height =============================================
-------------------------------------------------------------------------------- */
.desktop-menu-two-cols { min-height: 520px;
  border-top: 18px solid #f2f2f2; /* grey upper fasa */
}
.desktop-menu-link-bottom { position: absolute; bottom: 30px; }
/*.desktop-menu-isactive .desktop-menu-sub { display: block; }*/
.desktop-menu-isactive  > a { border: 1px solid #ce0606!important; }
.desktop-menu-isactive > a .fa,
.desktop-menu-isactive > a .pii { display: inline-block!important; }
.desktop-menu-sub.desktop-menu-top-ten .desktop-menu-isactive  > a{ border: 0!important; }
.desktop-menu-sub.desktop-menu-top-ten .desktop-menu-isactive > a .fa,
.desktop-menu-sub.desktop-menu-top-ten .desktop-menu-isactive > a .pii { display: none!important; }
.desktop-menu-sub.desktop-menu-top-ten > li.desktop-menu-isactive:hover > a .fa.fa-angle-right,
.desktop-menu-sub.desktop-menu-top-ten > li.desktop-menu-isactive:hover > a .pii.pii-right-thin  { display: inline!important;
  float: right;
  margin-right: 25px; margin-top: 2px;
    color: #464646;
}
.desktop-menu-list-third img { display: block; margin: 0 auto; }
.desktop-menu-list-third p {
  font-size: 13px; font-style: italic;
    text-align: center; color: #666;
}
/* main [Learn More] button of DESTINATIONS menu ==============================
-------------------------------------------------------------------------------- */
.desktop-menu-btn {
    position: relative;
    display: block !important;
    bottom: 0;
    color: #464646 !important;
    font-size: 13px;
    text-align: center;
    padding: 7px 16px !important;
    border: 1px solid #ccc !important;
    border-radius: 2px;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    text-transform: uppercase;
}
.desktop-menu-btn:hover { border: 1px solid #777 !important; }
.desktop-menu-flex div p {
    font-style: italic;
}
.desktop-menu-two-cols .desktop-menu-sub { height: 440px;
    border-left: 1px solid #ccc;
    margin-left: 30px; margin-top: -5px;
}
/* =============================================================================
--------------------------------------------------------------------------------
------------------------- if {display:flex }, internal elements spreaded equally across the whole height
-------------------------------------------------------------------------------- ... */
.desktop-menu-two-cols.desktop-menu-three-cols .desktop-menu-sub div { display: flex; flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    max-height: 100%; height: 390px;
    padding-top: 10px;
}
.desktop-menu-two-cols.desktop-menu-three-cols .desktop-menu-sub div img { display: block;
    width: 100%;  max-height: 150px;
}
/* Destination + VIllas Content ================================================
-------------------------------------------------------------------------------- */
.desktop-menu-two-cols.desktop-menu-three-cols .desktop-menu-sub div p {
    font-style: italic;  color: #666;
    font-size: 13px; text-align: center;
    margin-top: 0; /* margin-bottom: 80px; */
}
.desktop-menu-two-cols.desktop-menu-three-cols .desktop-menu-sub li { display: block;
    justify-content: center;
    background: #fff;
}
.desktop-menu-link-bottom { border: 1px solid #ccc; }
.desktop-menu-two-cols .desktop-menu-sub li { display: block; justify-content: center; }

.desktop-menu-two-cols .desktop-menu-sub img { width: 100%; max-height: 160px; }
.desktop-menu-two-cols .desktop-menu-sub div { display: block; flex-wrap: wrap;
    justify-content: center; align-items: center;
    height: 390px;
    background: #fff;
}
/* Inspire Me - Content ========================================================
-------------------------------------------------------------------------------- */
.desktop-menu-two-cols .desktop-menu-sub div p {
    /* padding-top: 12px; */
    color: #464646;
    font-size: 16px;
    text-align: center;
    font-family: "Open Sans", sans-serif;
    font-style: italic;
}
.desktop-menu-main-li-ham .desktop-menu-btn { position: relative; }
.desktop-menu-btn-row .desktop-menu-btn img { height: 24px; margin-right: 7px; }
.desktop-menu-main-li-ham .desktop-menu-cols a:hover { background: #fafafa; }
.desktop-menu-isactive > a > span,.desktop-menu-isactive > a > i,
.desktop-menu-isactive > a > b,.desktop-menu-isactive > a { color: #ce0606 !important; }
.desktop-menu-main-li-ham.hover .desktop-menu-sub{ display: block; }
/* [Learn More] button =========================================================
-------------------------------------------------------------------------------- */
.desktop-menu-btn { position: absolute;
  bottom: -20px; width: 180px !important;
  left: calc(50% - 90px) !important;
    /* margin: -12px auto !important; */
}
.place li { padding: 1px 16px !important; }
.desktop-menu-sub.desktop-menu-sub-hor > li > a { border: 0 !important; }
.desktop-menu-sub.desktop-menu-cols.place {
    min-height: 415px;
    background: #fff;
    /*Allages gia na exei scroll sthn prwth stili*/
    /*min-height: 415px;*/ /*background: #fff;*/ /*max-height: 530px;*/ /*overflow: auto;*/ /*width: 275px;*/
}
.desktop-menu-two-cols .desktop-menu-sub div b {
    display: block;
    text-align: center;
    margin: 10px 0;
    font-family: "Roboto", sans-serif;
    color: #464646;
}
.desktop-menu-sub-in { position: absolute; display: none; overflow: hidden;
    width: 710px; top: 0; right: 10px;
}
li:hover > .desktop-menu-sub-in{ display: block; }
.desktop-menu-two-cols .desktop-menu-btn {
    border-color: #ccc !important;
    color:#383838!important;
}
.desktop-menu-two-cols .desktop-menu-btn:hover{
    border-color: #ce0606 !important;
    color:#ce0606!important;
}
.desktop-menu-btn-row > div { margin: 0 10px; }
.dropclick {  display: none; position: absolute;
    background: #fff;
    padding: 10px;  margin-left: -10px; margin-top: 10px;
    border: 1px solid #ccc; border-radius: 2px;
    box-shadow: 0 5px 9px 0px #ccc;
}
.dropclicker { height: 63px; }
.dropclicker:hover .dropclick { display: block; }
.dropclick .desktop-menu-btn{ margin: 5px 0!important; }
.dropclick .desktop-menu-btn:hover { background: #eee; }
.dropclick::before { display: block; position: absolute;
  top: -5px; left: 50%;
    content: "";
    border-top: 10px solid transparent;
    border-left: 10px solid #ccc;
    transform: rotate(135deg);
}
.desktop-menu-main-li-ham .desktop-menu-gray li a:hover{ color: #ce0606; }
.desktop-menu-sub.desktop-menu-cols.place > li:first-child { margin-top: 20px; }
.desktop-menu-main-li:first-child:hover::after{ border-top-color: #eee;}
/* FIRST SELECTED: Me ayto menoun oi prwtes epiloges energes #not! */
.presto li:first-child .desktop-menu-sub.desktop-menu-single{ display: block; }
#mask{ width: 0; height: 0; }
.menu-open #mask{ position: fixed;
  width: 100%; height: calc(100% - 71px); /* 100%; */
  top: 71px;
  background-color: rgba(0,0,0,.6);
  z-index: 1000;
}
.desktop-menu-innercol > li:hover ul {
    display: block;
}
.hover .desktop-menu-cols3-scroll .desktop-menu-sub.desktop-menu-sub-hor{ display: flex; }
.desktop-menu-sub.desktop-menu-top-ten { width: 280px; }
/* single (middle + right) wrapper =============================================
-------------------------------------------------------------------------------- */
.desktop-menu-sub.desktop-menu-single { position: absolute;
    height: 390px; /* auto; */   top: 8px; /* 20px; */
    left: 248px; width: 630px;
    border-left: none; /* 1px solid #ccc; */
    background: #fff;
}
.desktop-menu-cols3-scroll { position: absolute;
    background: #fff;
    left: -550px; width: 960px;
}
.desktop-menu-sub.desktop-menu-single::before { position: absolute; content: "";
    width: 680px;  height: 396px;
    top: -20px; left: -1px;
    background: #fff;
}
/* LEFT COLUMN on DESTINATIONS menu ============================================
-------------------------------------------------------------------------------- */
.desktop-menu-innercol{ overflow: hidden auto;
    width: 240px; height: 390px;
    margin-top: 8px;
}
ul.desktop-menu-innercol li:hover::after { display: block; position: static;
  content: "";
    width: 30px;  height: 40px;
    background: transparent;
    margin-top: -41px;  margin-left: 93%;
    z-index: 10000;
}
/* --- NOPE!
 NEVER ALTER *every*-Li behaviour
li{
    -webkit-transition: .5s all;
    -webkit-transition-delay: 5s;
    -moz-transition: .5s all;
    -moz-transition-delay: 5s;
    -ms-transition: .5s all;
    -ms-transition-delay: 5s;
    -o-transition: .5s all;
    -o-transition-delay: 5s;
    transition: .5s all;
    transition-delay: 5s;
}
--- */
/* --- not needed
.desktop-meni li{
    -webkit-transition: .5s all;
    -webkit-transition-delay: 5s;
    -moz-transition: .5s all;
    -moz-transition-delay: 5s;
    -ms-transition: .5s all;
    -ms-transition-delay: 5s;
    -o-transition: .5s all;
    -o-transition-delay: 5s;
    transition: .5s all;
    transition-delay: 5s;
}
--- */
.desktop-menu-sub li.hover > .desktop-menu-sub { display: block; }
/* need to have to position [Learn More] button in the bottom-center ===========
-------------------------------------------------------------------------------- */
.pideskmenu-relbox { position: relative; }
.desktop-menu-two-cols .desktop-menu-isactive > ul,.desktop-menu-two-cols > ul > li:hover > ul.desktop-menu-sub{
    display: block;
}
.pideskmenu-relbox p {
    font-size: 15px; /* font-size: 15px !important; */
    font-family: "Open Sans", sans-serif;
    font-style: italic;
    color:#464646
}
.desktop-menu-flex p { color:#464646; margin: 15px 0;
    font-size: 15px; /* font-size: 15px !important; */
    font-family: "Open Sans", sans-serif; font-style: italic; font-weight: 300;
}
.pideskmenu-relbox b{
    color: #464646;
    font-family: "Roboto", sans-serif;
}
.desktop-menu-sub.desktop-menu-single .desktop-menu-flex img {
    height: auto;
}
/*.desktop-menu-two-cols.desktop-menu-three-cols .desktop-menu-sub.desktop-menu-single {*/
    /*left: 260px;*/
    /*width: 860px;*/
/*}*/
/*.desktop-menu-two-cols.desktop-menu-three-cols .desktop-menu-sub.desktop-menu-col {*/
    /*left: 241px;*/
/*}*/
.desktop-menu-isactive > .desktop-menu-sub.desktop-menu-col{ display: block !important; }
.desktop-villas .desktop-menu-sub.desktop-menu-cols.place { top: 35px !important; }
.desktop-villas .desktop-menu-sub.desktop-menu-cols li a { padding: 6px 8px; }
.desktop-menu-main-li.desktop-villas .desktop-menu-sub.desktop-menu-sub-hor,
.desktop-menu-main-li.desktop-villas .desktop-menu-sub.desktop-menu-sub-hor > li {
    min-width: 910px;
}
/* .desktop-villas .pideskmenu-relbox p{ font-size: 13px; } */
.desktop-villas .desktop-menu-flex img { display: block;
    width: 100%; max-width: unset !important;
}
.desktop-villas .desktop-menu-flex { display: block; }
.desktop-villas .desktop-menu-sub.desktop-menu-single .desktop-menu-flex img{
    max-width: unset;
    width: 100%!important;
}
.desktop-menu-main-li:first-child > ul > li:first-child > div > ul > li > a { font-weight: bold; }
.desktop-villas .pideskmenu-relbox b{ text-transform: uppercase; }
/* selected horizontal link on destinations menu */
.presto > a { font-weight: 700; }

/* Overides fot common desktop display --------------------------------------- */
@media screen and (max-width: 1499px){
  .desktop-villas .desktop-menu-innercol{ width: 265px; /* !!! 280px; */ }
  .desktop-villas .desktop-menu-sub.desktop-menu-cols li a {
      width: 230px;
      padding: 5px 8px;
  }
  .desktop-villas ul.desktop-menu-sub.desktop-menu-col {
      background: #fff; border-left: none;
    width: 265px; /* !!! 280px; */
    left: 264px; /* !!! 280px; */
  }
  .desktop-villas .desktop-menu-list-third {
      width: 325px !important; height: 385px;
      background: #fff; border-left: none;
      margin-left: -3px; /* !!! 15px; */
  }
  .desktop-villas .desktop-menu-list-third img { display: block;
      margin: 0 auto; /* !!! 0 auto 25px; */
      width: 100%;
  }
  .desktop-villas .desktop-menu-sub.desktop-menu-single li{ border: 0; }
  .desktop-villas .destop-third-col-wrapper .desktop-menu-btn{ left: calc(50% - 79px) !important; /* !!! calc(50% - 65px) !important */ }
  .desktop-villas .desktop-menu-single .desktop-menu-btn { bottom: -2px; }
  .desktop-menu-main-li.desktop-dests.hover > .desktop-menu-sub.desktop-menu-sub-hor { width: 899px !important;
    display: flex; justify-content: space-between;
    background: #f2f2f2;
  }
  .desktop-dests .padd-has-childs .desktop-menu-flex div {
    padding: 0 15px 50px 44px;
    margin-top: -1px;
  }
  .desktop-dests .pideskmenu-relbox b { font-weight: 700; font-size: 16px; }
  .desktop-menu-list-third .pideskmenu-relbox p,
  .desktop-dests .desktop-menu-flex p { font-size: 13px; margin: 15px 0; }
  .desktop-menu-list-third img { padding-bottom: 15px; }
  .desktop-menu-list-third .desktop-menu-btn { bottom: -15px; left: calc(50% - 95px) !important; }
}
.desktop-villas .desktop-menu-sub.desktop-menu-single li { border: 0; }
.desktop-villas.desktop-menu-btn { bottom: -6px; }



/* --- ??? --- */
#go-unique i { font-size: 36px; color: #ce0606; }
.padd-has-childs { padding-left: 200px; }
.padd-has-childs img { width: 350px; max-width: 350px !important; padding-bottom: 15px; }

.padd-has-childs .desktop-menu-flex div {
  padding: 0 15px 50px 44px; /* !!! padding: 0 30px 50px; */
  /* margin-top: -1px; / -- * !!! was not */
}
.lity-narrow { width: 480px; }
#user--favorites { display: none; }
#user--icon { display: inline-block;
  width: 30px; height: 30px;
  text-align: center;
  padding: 3px 0 1px; margin-right: 4px;
  font-size: 13px; background: #4EB5E6; color: #fff;
  border-radius: 15px;
  border-bottom: none;
}
#login-form input, #social-login input,
#sign-up-form input, #forgot-pass-form input { margin: 4px 0; }
.hr-with-text { width: 97%; height: 26px; border-bottom: 1px solid #ddd; text-align: center;margin: auto; }
.hr-with-text span { background:#fff; color:#999; padding: 2px 13px;margin-top: 10px;display: inline-block; }
