/* Mykonos Chapter shared visual language. Loaded last on every page. */
:root{
  --mw-green:#3b534b;
  --mw-dark:#102e27;
  --mw-cream:#f7f3ea;
  --mw-paper:#fffdf8;
  --mw-mint:#c8dcd5;
  --mw-gold:#e8c576;
  --mw-muted:#66766f;
  --mw-line:rgba(16,46,39,.2);
  --mw-serif:'Instrument Serif',Georgia,serif;
  --mw-sans:'Bricolage Grotesque',Arial,sans-serif;
  --mw-shell:min(1370px,calc(100% - 64px));
  --mw-section-space:clamp(78px,8vw,120px);
}
html{scroll-behavior:smooth;background:var(--mw-cream)}
body{background:var(--mw-cream);color:var(--mw-dark);font-family:var(--mw-sans);font-weight:300}
button,input,select,textarea{font:inherit}
::selection{background:var(--mw-mint);color:var(--mw-dark)}
:focus-visible{outline:3px solid var(--mw-gold)!important;outline-offset:3px}

/* Make both the Webflow pages and platform pages share one content rhythm. */
.mw-shell{width:var(--mw-shell);max-width:none;margin-inline:auto;padding-inline:0}
.section-title,.breadcrumb-area>h1,.home-hero-section-header h1,
.mw-hero h1,.mw-section h2,.portal-page h1{
  font-family:var(--mw-serif);font-weight:400;letter-spacing:-.025em
}
.section-text,.text-block,.mw-section p{line-height:1.65}
.button,.mw-button,.mw-nav-cta,.portal-button{
  border-radius:0;text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:500
}
.w-input,.w-select,.hero-input,.reservation-input-field,
.mw-field input,.mw-field select,.mw-form input,.mw-form textarea{
  border-radius:0!important;box-shadow:none!important
}

/* Shared branded shell for the exported Webflow templates. */
/* Preserve the original template base colors and typography in these sections. */
.page-wrapper :is(.section-experience,.section-gallery,.section-faq){
  background-color:var(--color-palette--primary);
  color:var(--color-palette--white);
  font-family:var(--font-family--font-body);
  font-weight:var(--font-weight--medium)
}
.page-wrapper :is(.section-experience,.section-gallery,.section-faq) .section-title{
  font-family:var(--font-family--font-title);
  letter-spacing:var(--_responsive---utility--negative-letter-space-xs)
}
.page-wrapper :is(.section-experience,.section-gallery,.section-faq) .section-text{line-height:inherit}
.mw-business-nav{position:relative;flex:none;color:#fff}
.mw-business-nav>summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;white-space:nowrap}
.mw-business-nav>summary::-webkit-details-marker{display:none}
.mw-business-nav>summary>span{font-size:16px;line-height:1;transition:transform .15s}
.mw-business-nav[open]>summary>span{transform:rotate(180deg)}
.mw-business-links{position:absolute;top:100%;left:0;z-index:1001;min-width:196px;padding:8px;background:var(--mw-paper);border:1px solid var(--mw-line);box-shadow:0 12px 30px #071f1a26}
.mw-business-links a{display:block;padding:14px 16px;color:var(--mw-dark);font:500 12px/1.3 var(--mw-sans);text-decoration:none;white-space:nowrap}
.mw-business-links a:hover,.mw-business-links a:focus-visible{background:var(--mw-mint)}
@media(max-width:991px){
  .mw-business-nav{width:100%;padding-block:10px}
  .mw-business-links{position:static;min-width:0;margin-top:12px;box-shadow:none}
  .header.mw-shell-menu-open .nav-menu{display:flex!important;position:absolute;top:100%;left:0;right:0;z-index:1000;max-height:calc(100dvh - 100px);overflow-y:auto}
}
.header{color:var(--color-palette--white);font-family:var(--font-family--font-body);font-weight:var(--font-weight--medium)}
.header:has(.mw-header-signup) .navbar{column-gap:24px}
.header:has(.mw-header-signup) .navbar::before,.header:has(.mw-header-signup) .navbar::after{display:none}
.header:has(.mw-header-signup) .brand{flex-shrink:1;min-width:120px}
.header:has(.mw-header-signup) .header-right{gap:32px;padding-left:0;min-width:0;flex-shrink:0}
.header:has(.mw-header-signup) .header-event{display:flex;align-items:center;gap:16px;flex-shrink:0}
.header .mw-header-signup{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;background:var(--color-palette--white);color:var(--color-palette--text-dark);border:2px solid var(--color-palette--white);border-radius:var(--border-radius--rounded-pill);white-space:nowrap;text-decoration:none;font-family:var(--font-family--font-body);font-size:16px;font-weight:var(--font-weight--semibold);line-height:1.62;letter-spacing:.8px;text-transform:uppercase}
.header .mw-header-signup .button-text,.header .mw-header-signup .button-text-hover{transition:transform .3s ease,opacity .3s ease}
/* Override legacy Webflow inline motion so fetched headers and keyboard focus agree. */
.header .mw-header-signup .button-text{transform:translateY(0)!important;opacity:1!important}
.header .mw-header-signup .button-text-hover{transform:translateY(100%)!important;opacity:1!important}
.header .mw-header-signup:is(:hover,:focus-visible) .button-text{transform:translateY(-100%)!important;opacity:0!important}
.header .mw-header-signup:is(:hover,:focus-visible) .button-text-hover{transform:translateY(0)!important}
@media(min-width:1280px){.header .mw-header-signup{padding:15px 24px}}
@media(min-width:992px) and (max-width:1279px){
  .header:has(.mw-header-signup) .container-fluid{padding-inline:24px}
  .header:has(.mw-header-signup) .navbar{gap:16px}
  .header:has(.mw-header-signup) .brand{width:clamp(120px,calc(100vw - 880px),180px);flex:none}
  .header:has(.mw-header-signup) .header-right{gap:16px}
  .header:has(.mw-header-signup) .nav-menu{gap:8px!important}
  .header:has(.mw-header-signup) .menu-nav-link{font-size:12px;white-space:nowrap}
}
@media(max-width:479px){
  .header:has(.mw-header-signup) .navbar{column-gap:12px}
  .header:has(.mw-header-signup) .header-right{gap:12px}
  .header:has(.mw-header-signup) .header-event{gap:12px}
  .header:has(.mw-header-signup) .brand{width:clamp(100px,calc(100vw - 240px),200px);min-width:100px;flex:none}
  .header .mw-header-signup{padding:6px 12px}
}
.page-wrapper .breadcrumb-space{padding-top:clamp(150px,16vw,240px);padding-bottom:var(--mw-section-space)}
.page-wrapper .footer{background:#071f1a;color:#fff}
.page-wrapper .footer-space{padding-top:75px;padding-bottom:30px}
.page-wrapper .footer-logo-link img{width:min(320px,100%);height:auto;object-fit:contain}
.page-wrapper .footer-bottom-area{border-top:1px solid rgba(255,255,255,.17)}
.page-wrapper .footer-nav-list a{font-size:12px}
.page-wrapper .mw-brand-note{color:rgba(255,255,255,.64);max-width:390px;margin-top:18px}

@media(max-width:991px){
  :root{--mw-shell:calc(100% - 40px)}
}
@media(max-width:600px){
  :root{--mw-shell:calc(100% - 36px);--mw-section-space:78px}
  .page-wrapper .footer-widget-area,.page-wrapper .footer-bottom-area{gap:32px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Production accessibility: preserve keyboard focus and readable inactive text. */
.ambience-text{opacity:1!important;color:var(--mw-ambience-color,#52675f)!important}
.ambience-text.is-one{--mw-ambience-color:#233f35}
[data-auth-view]{color:#52645b!important}
.mw-skip-link{position:fixed;top:8px;left:8px;z-index:10000;transform:translateY(-200%);background:#fff;color:#102e27;padding:12px 18px}
.mw-skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid #a96619;outline-offset:4px}
.booking-shell{max-width:1040px;margin:0 auto;padding:48px 24px}
[data-auth-view].active{color:#fff!important}
.mw-finder-field label{color:#52645b!important}
.mw-brand-note{color:#42564c!important;opacity:1!important}
