:root{--ink:#17222a;--muted:#6f766f;--cream:#f7f1e8;--paper:#fffdf8;--sand:#e7d6bf;--stone:#cdbda7;--blue:#10394a;--sea:#0f647a;--gold:#b78b5b;--line:rgba(23,34,42,.13);--shadow:0 25px 70px rgba(20,32,39,.13);--max:1180px;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.container{width:min(var(--max),calc(100% - 42px));margin-inline:auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:18px clamp(18px,4vw,54px);display:flex;align-items:center;gap:22px;color:#fff;background:linear-gradient(to bottom,rgba(8,20,28,.54),transparent);transition:.25s}.site-header.scrolled{background:rgba(247,241,232,.92);backdrop-filter:blur(18px);color:var(--ink);box-shadow:0 10px 34px rgba(0,0,0,.07)}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand-mark{width:42px;height:42px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:Cormorant Garamond,serif;font-size:20px}.brand strong{display:block;font-family:Cormorant Garamond,serif;font-size:23px;font-weight:500;line-height:.9}.brand small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;opacity:.78}.main-nav{display:flex;gap:20px;font-size:13px;letter-spacing:.04em}.main-nav a{opacity:.88}.main-nav a:hover{opacity:1}.nav-toggle{display:none;border:0;background:transparent;color:inherit;font-size:28px}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 18px;font-weight:600;font-size:13px;letter-spacing:.02em;transition:.2s;border:1px solid transparent}.header-cta{background:#fff;color:var(--blue)}.site-header.scrolled .header-cta{background:var(--blue);color:#fff}.btn.primary{background:var(--blue);color:#fff;box-shadow:0 14px 35px rgba(16,57,74,.18)}.btn.primary:hover,.btn.soft:hover{transform:translateY(-2px)}.btn.soft{background:rgba(255,255,255,.92);color:var(--ink)}.hero{height:100svh;min-height:720px;position:relative;display:grid;align-items:end;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('https://static.wixstatic.com/media/34a034_5d7e5873bdcd4184b010aa86cf8d89de~mv2.jpg/v1/fill/w_2400,h_1550,al_c,q_92/Summer%20Naxos%20Villa_0048.jpg') center/cover;transform:scale(1.02);animation:heroBreath 18s ease-in-out infinite alternate}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,28,.45),rgba(8,20,28,.08) 45%,rgba(8,20,28,.08)),linear-gradient(to top,rgba(8,20,28,.45),rgba(8,20,28,0) 55%)}.hero-card{position:relative;margin:0 0 clamp(70px,9vh,110px) clamp(22px,7vw,92px);width:min(520px,calc(100% - 44px));padding:30px 32px;background:rgba(255,253,248,.88);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.42);border-radius:30px;box-shadow:0 30px 90px rgba(0,0,0,.2)}.kicker{margin:0 0 12px;text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:700;color:var(--gold)}h1,h2,h3{font-family:Cormorant Garamond,Georgia,serif;font-weight:500;line-height:1.03;margin:0}h1{font-size:clamp(46px,5.6vw,82px);letter-spacing:-.035em}h2{font-size:clamp(34px,4.3vw,62px);letter-spacing:-.025em}.hero-card p:not(.kicker){font-size:17px;color:#39454c;margin:18px 0 24px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-facts{position:absolute;right:clamp(22px,5vw,70px);bottom:32px;z-index:2;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hero-facts span{color:#fff;border:1px solid rgba(255,255,255,.32);background:rgba(0,0,0,.18);backdrop-filter:blur(12px);border-radius:999px;padding:9px 12px;font-size:12px}.intro{padding:92px 0 64px;background:var(--paper)}.intro-grid,.compact-grid,.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(34px,7vw,90px);align-items:center}.intro-copy p,.short,.section-head p{font-size:18px;color:var(--muted);margin:0}.film-section{padding:28px 0 98px;background:linear-gradient(var(--paper),var(--cream))}.film-frame{position:relative;width:min(1360px,calc(100% - 40px));height:min(72vh,760px);min-height:520px;margin:auto;border-radius:34px;overflow:hidden;box-shadow:0 40px 100px rgba(16,57,74,.18);background:#000}.film-slides{position:absolute;inset:0}.film-slides span{position:absolute;inset:0;background-image:var(--bg);background-size:cover;background-position:center;opacity:0;animation:film 30s infinite;transform:scale(1.05)}.film-slides span:nth-child(2){animation-delay:6s}.film-slides span:nth-child(3){animation-delay:12s}.film-slides span:nth-child(4){animation-delay:18s}.film-slides span:nth-child(5){animation-delay:24s}.film-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(6,17,22,.58),rgba(6,17,22,.05) 58%),linear-gradient(to top,rgba(6,17,22,.44),transparent 60%)}.film-caption{position:absolute;z-index:2;left:clamp(24px,5vw,70px);bottom:clamp(24px,5vw,64px);max-width:470px;color:#fff}.film-caption h2{font-size:clamp(38px,5vw,70px)}.film-caption p:not(.kicker){font-size:17px;color:rgba(255,255,255,.82);margin:18px 0 0}.image-story{padding:36px 0 98px}.story-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.story-large,.story-stack{margin:0}.story-large{position:relative;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.story-large img{height:760px;width:100%;object-fit:cover}.story-large figcaption{position:absolute;left:22px;bottom:22px;background:rgba(255,253,248,.88);border-radius:999px;padding:10px 15px;font-size:13px;font-weight:600}.story-stack{display:grid;gap:18px}.story-stack img{height:371px;width:100%;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.amenities-band{padding:28px 0;background:var(--blue);color:#fff}.amenity-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.amenity-row span{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);border-radius:999px;padding:10px 14px;font-size:13px}.section,.section-soft{padding:96px 0}.section-soft{background:#efe4d4}.section-head{max-width:680px;margin-bottom:34px}.gallery-masonry{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:14px}.g{padding:0;border:0;background:#ddd;border-radius:22px;overflow:hidden;cursor:pointer;box-shadow:0 12px 35px rgba(20,32,39,.08)}.g img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.g:hover img{transform:scale(1.04)}.g.big{grid-column:span 2;grid-row:span 2}.g.wide{grid-column:span 2}.service-list{display:grid;gap:14px}.service-list p{margin:0;padding:20px 22px;background:rgba(255,253,248,.68);border:1px solid rgba(23,34,42,.08);border-radius:20px;color:#565f58}.reservation-strip{padding:70px 0;background:url('https://static.wixstatic.com/media/34a034_438067d75fb34fd2904b3c5b89014148~mv2.jpeg/v1/fill/w_2000,h_900,q_90/34a034_438067d75fb34fd2904b3c5b89014148~mv2.jpeg') center/cover fixed;position:relative}.reservation-strip:before{content:"";position:absolute;inset:0;background:rgba(247,241,232,.73);backdrop-filter:blur(1px)}.strip-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px}.strip-inner h2{max-width:690px}.map-card{height:430px;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.map-card iframe{width:100%;height:100%;border:0}.site-footer{background:#091a22;color:#fff;padding:32px 0}.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-grid p{margin:4px 0 0;color:rgba(255,255,255,.65)}.footer-grid div:last-child{display:flex;gap:18px;flex-wrap:wrap}.floating-whatsapp{position:fixed;right:20px;bottom:20px;z-index:45;background:#25D366;color:#fff;font-weight:700;border-radius:999px;padding:13px 18px;box-shadow:0 18px 42px rgba(0,0,0,.24)}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(7,15,20,.9);display:none;align-items:center;justify-content:center;padding:24px}.lightbox.open{display:flex}.lightbox img{max-height:88vh;max-width:min(96vw,1600px);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.48)}.lightbox button{position:absolute;top:22px;right:22px;border:0;background:#fff;color:#111;width:46px;height:46px;border-radius:50%;font-size:30px;cursor:pointer}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@keyframes heroBreath{from{transform:scale(1.02)}to{transform:scale(1.075)}}@keyframes film{0%,100%{opacity:0;transform:scale(1.05)}4%,20%{opacity:1}24%{opacity:0;transform:scale(1.13)}}
/* Reservation */.reservation-hero{padding:150px 0 70px;background:linear-gradient(135deg,#fffdf8,#efe3d1)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:start}.section-title{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(36px,4vw,58px);font-weight:500;line-height:1.04;margin:0}.lead{font-size:18px;color:var(--muted)}.booking-box{background:#fff;border-radius:28px;padding:24px;box-shadow:var(--shadow)}.booking-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.field{display:grid;gap:7px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.field input{border:1px solid var(--line);border-radius:16px;padding:13px 14px;font:inherit;background:#fbfaf6}.result{margin-top:16px;padding:18px;border-radius:18px;background:#f4ede2;color:#26343a}.calendar-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.btn.secondary{border-color:var(--line);background:#fff;color:var(--ink)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.dow{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}.day{min-height:105px;background:#fff;border:1px solid rgba(23,34,42,.08);border-radius:18px;padding:12px}.day.reserved{opacity:.48;background:#f0e8de}.day.disabled{opacity:.3}.date-num{font-weight:700}.price{margin-top:12px;font-weight:700}.status{font-size:12px;color:#8a6d56}.status.free{color:#166534}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 12px 35px rgba(20,32,39,.07)}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}th{background:#102f3f;color:#fff}
@media(max-width:920px){.nav-toggle{display:block}.main-nav{position:absolute;top:76px;left:18px;right:18px;display:none;flex-direction:column;background:rgba(247,241,232,.98);color:var(--ink);padding:18px;border-radius:22px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.header-cta{display:none}.hero{min-height:650px}.hero-card{margin-left:22px}.hero-facts{left:22px;right:22px;justify-content:flex-start}.intro-grid,.story-grid,.compact-grid,.contact-grid,.split{grid-template-columns:1fr}.story-large img{height:560px}.gallery-masonry{grid-template-columns:repeat(2,1fr)}.g.big,.g.wide{grid-column:span 2}.booking-controls{grid-template-columns:1fr}.calendar-grid{font-size:13px}.day{min-height:90px}.strip-inner{display:grid}.film-frame{height:640px}}@media(max-width:620px){.brand small{display:none}.hero{height:92svh;min-height:620px}.hero-card{padding:24px;border-radius:24px;margin-bottom:118px}.hero-actions{display:grid}.btn{width:100%}.hero-facts{bottom:18px}.film-frame{width:calc(100% - 24px);min-height:560px;border-radius:24px}.film-caption{left:22px;right:22px}.story-stack img,.story-large img{height:360px}.gallery-masonry{grid-template-columns:1fr;grid-auto-rows:260px}.g.big,.g.wide{grid-column:auto;grid-row:auto}.footer-grid{display:grid}.floating-whatsapp{left:18px;right:18px;text-align:center}.calendar-tools{display:grid}.calendar-grid{gap:5px}.day{padding:8px;min-height:78px}.price{font-size:12px}}

/* Reservation calendar — targeted fix only */
.reservation-hero-compact{padding:118px 0 24px;background:linear-gradient(135deg,#fffdf8,#efe3d1)}
.reservation-top{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,.8fr);gap:28px;align-items:end}
.reservation-hero-compact .section-title{font-size:clamp(34px,4vw,54px);letter-spacing:-.02em}
.reservation-hero-compact .lead{max-width:680px;margin:12px 0 0;font-size:16px}
.booking-box-compact{padding:18px;border-radius:24px}.booking-box-compact .result{font-size:14px}.booking-box-compact .result strong{font-size:18px}
.reservation-calendar-section{padding:20px 0 48px;background:var(--cream)}
.calendar-panel{background:rgba(255,253,248,.82);border:1px solid rgba(23,34,42,.1);border-radius:28px;padding:18px;box-shadow:0 18px 55px rgba(20,32,39,.08)}
.compact-tools{margin-bottom:12px}.compact-tools .section-title{font-size:clamp(26px,3vw,40px);text-transform:capitalize;text-align:center}.compact-tools .btn{min-width:48px;padding:10px 14px}
#calendar.calendar-compact{display:block}.multi-calendar{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.month-card{background:#fffdf8;border:1px solid rgba(23,34,42,.1);border-radius:22px;padding:12px;box-shadow:0 10px 28px rgba(20,32,39,.055)}.month-title{font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-weight:500;text-transform:capitalize;margin:0 0 8px;color:var(--blue)}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.month-grid .dow{text-align:center;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#8a8176;padding:2px 0}.month-grid .day{min-height:58px;border:1px solid rgba(23,34,42,.09);border-radius:10px;padding:5px 6px;background:#fff;cursor:default;text-align:left;font:inherit;color:inherit;display:grid;grid-template-rows:auto auto auto;align-content:start;gap:1px;line-height:1.05;position:relative;overflow:hidden}.month-grid .day:not(.reserved):not(.disabled){border-color:rgba(47,143,98,.34);background:linear-gradient(180deg,#fff,#f3fbf4);cursor:pointer}.month-grid .day:not(.reserved):not(.disabled):hover{outline:2px solid rgba(16,57,74,.24)}.month-grid .day.reserved{background:repeating-linear-gradient(-45deg,#f0e3db,#f0e3db 7px,#ead7ce 7px,#ead7ce 14px);color:#8d5a50;opacity:1}.month-grid .day.disabled{background:#eee6db;color:#aaa;opacity:.55}.month-grid .day.selected-range{background:#dfeff1!important;border-color:var(--blue)!important;box-shadow:inset 0 0 0 2px rgba(16,57,74,.16)}.month-grid .day.selected-edge{background:var(--blue)!important;color:#fff!important}.month-grid .date-num{font-weight:850;font-size:13px}.month-grid .price{margin:0;font-weight:750;font-size:10.5px;color:#51625a}.month-grid .status{font-size:8.5px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;color:#8a8176;position:static;white-space:nowrap}.month-grid .status.free{color:#166534}.month-grid .day.selected-edge .status,.month-grid .day.selected-edge .price{color:rgba(255,255,255,.88)!important}.calendar-note{margin:12px 0 0;color:var(--muted);font-size:13px}.rate-details{background:var(--paper);border-radius:24px;padding:18px;box-shadow:0 12px 35px rgba(20,32,39,.07)}.rate-details summary{cursor:pointer;font-weight:800;color:var(--blue);padding:6px}.rate-details .table{margin-top:14px}.reservation-detail-section{padding-top:44px}.result.ok{background:#e8f4ea}.result.warn{background:#f7e7df}
@media(max-width:980px){.reservation-top{grid-template-columns:1fr}.multi-calendar{grid-template-columns:1fr}.reservation-hero-compact{padding-top:112px}.month-grid .day{min-height:68px}.booking-controls{grid-template-columns:1fr}}
@media(max-width:560px){.calendar-panel{padding:10px;border-radius:20px}.month-card{padding:10px;border-radius:18px}.month-grid{gap:3px}.month-grid .day{min-height:56px;padding:5px 4px}.month-grid .price{font-size:9px}.month-grid .status{display:none}.compact-tools{display:grid;grid-template-columns:48px 1fr 48px;gap:8px}.compact-tools .btn{width:auto}.reservation-calendar-section{padding-top:12px}.reservation-hero-compact .section-title{font-size:34px}}
