/* Mediterranean editorial imagery; Modernisme-inspired curves, consistent vector controls. */
.ui-icon{display:inline-block;vertical-align:middle;flex:none;width:21px;height:21px;pointer-events:none}.btn>span,.header-stay>span,.hero-gallery-link>span,.booking-link>span{display:inline-flex;align-items:center;justify-content:center;padding:0}.btn{border-radius:999px;padding:14px 22px 14px 26px;gap:22px;box-shadow:none;transition:background .2s,transform .2s,border-color .2s}.btn>span{border:1px solid currentColor;border-radius:50%;width:30px;height:30px;opacity:.85}.btn .ui-icon{width:17px;height:17px}.btn:hover{transform:translateY(-2px)}.hero .btn.light,.contact .btn.light{background:#f6efdf;border-color:#f6efdf;color:#102f3d}.hero-gallery-link{display:inline-flex;align-items:center;gap:18px;border:1px solid #ffffff77;border-radius:999px;padding:15px 23px;background:#ffffff08;backdrop-filter:blur(8px);text-decoration:none;min-height:60px}.hero-gallery-link span{padding:0}.hero-gallery-link:hover{background:#ffffff20}.header-stay{border-radius:999px}.booking-link{border:1px solid #ffffff70;border-radius:999px;padding:12px 20px;gap:18px}.booking-link:hover{background:#ffffff13}.image-expand{top:20px;bottom:auto;right:20px;width:44px;height:44px;border-radius:50%;border:1px solid #ffffffa6;background:#15354445;color:white;backdrop-filter:blur(8px);box-shadow:0 3px 15px #00000015}.image-expand .ui-icon{width:20px;height:20px}.gallery-link:hover .image-expand{background:#f6efdf;color:#102f3d}.photo-dialog button{border-radius:50%;background:#153544aa;backdrop-filter:blur(10px)}.photo-dialog button .ui-icon{width:22px;height:22px}.languages{gap:5px}.languages a{display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:50%;min-width:42px;width:42px;height:42px;padding:0;line-height:1;text-decoration:none}.languages a span{font-family:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;font-size:24px;line-height:1}.languages a[aria-current]{background:#71858c20;border-color:#a4a38c}.landing .site-header .languages a[aria-current]{background:#ffffff1c;border-color:#f1dfb9}.languages a:hover{background:#71858c30}.languages a:focus-visible{outline:2px solid #b2b6aa;outline-offset:3px}
/* A continuous visual story, with the original photographs. */
.landing{background:#102f3d;color:#fbf7ec}.landing .facts{border-color:#ffffff25}.landing .facts div{border-color:#ffffff25}.landing .facts span{color:#c5d5d9}.landing .intro p,.landing .section-top p{color:#c5d5d9}.landing .eyebrow{color:#dbc699}.landing .arrival{padding:90px 0 80px}.landing .intro{gap:9%;margin-bottom:40px}.landing .arrival-photo{overflow:hidden;border-radius:160px 160px 12px 12px}.landing .arrival-photo .feature-img{margin-top:0;aspect-ratio:16/10;max-height:800px}.landing .arrival .caption{color:#c5d5d9}.landing .section-top{align-items:center;margin-bottom:50px}.landing .section-top h2{font-size:clamp(40px,4.8vw,68px)}.landing .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.landing .gallery-item,.landing .gallery-item:nth-child(n){position:relative;grid-column:span 1;isolation:isolate;overflow:hidden;border-radius:12px;min-width:0}.landing .gallery-item:nth-child(5n+1){grid-column:1/-1}.landing .gallery-item>a{height:100%;display:block}.landing .gallery-item img{height:580px;width:100%;object-fit:cover}.landing .gallery-item:nth-child(5n+1) img{height:660px}.landing .gallery-item>a:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(0deg,#031c2be8,transparent);pointer-events:none}.landing .gallery-item figcaption{position:absolute;left:35px;right:35px;bottom:32px;z-index:1;padding:0;color:#fff;display:block;pointer-events:none}.landing .gallery-item h3{font:clamp(30px,3.2vw,49px)/1.08 Georgia,serif;letter-spacing:-1px;margin-bottom:12px;text-wrap:balance}.landing .gallery-item p{color:#edf1f2;font-size:15px;line-height:1.5;max-width:470px}.landing .room-number{display:block;margin-bottom:16px;color:#ead7ac;letter-spacing:2px}.landing .gallery-item .image-expand{z-index:2}.landing .gallery-link:focus-visible{outline:3px solid #f1dfb9;outline-offset:-6px}.landing .spaces{padding-bottom:90px}.landing .sea-interlude{min-height:730px}.landing .sea-interlude .wrap{text-align:center}.landing .sea-interlude h2{margin-left:auto;margin-right:auto}.landing .sea-interlude .eyebrow{color:white}.landing .sea-interlude:after{background:linear-gradient(0deg,#062736bd,transparent 120%)}
.landing .amenities{position:relative;background:#123844;color:white;padding:85px 0}.landing .amenity-layout{position:relative;gap:6%}.landing .amenity-layout>img{border-radius:240px 240px 12px 12px;aspect-ratio:4/5}.landing .amenities p{color:#cfdee1}.landing .amenity-list li{border-color:#ffffff30}.landing .amenity-list li:before{color:#e4d4ae}.landing .guide-teaser{position:relative;isolation:isolate;min-height:680px;display:flex;align-items:end;padding:300px 5% 70px;margin-top:90px;border-radius:180px 180px 12px 12px;overflow:hidden}.landing .guide-teaser>div{position:relative;z-index:2;max-width:610px}.landing .guide-teaser .teaser-photo{position:absolute;inset:0;z-index:-2;border-radius:0}.landing .guide-teaser .teaser-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.landing .guide-teaser:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#071f2bed,#071f2b08),linear-gradient(90deg,#071f2b6e,transparent)}.landing .guide-teaser h2{font-size:clamp(38px,4.6vw,65px)}.landing .guide-teaser p{color:#edf2f2}.landing .guide-teaser .btn{background:#f6efdf;color:#102f3d}.landing .guide-teaser .photo-credit{position:absolute;bottom:15px;left:5%;right:5%;font-size:11px;opacity:.85}.landing .location{padding:90px 0}.landing .location p{color:#c5d5d9}.landing .location .address{border-color:#ffffff30}.landing .location img{border-radius:12px}.landing details{border-color:#ffffff30}.landing details p{color:#c5d5d9}.landing summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.landing summary::-webkit-details-marker{display:none}.landing summary:after{content:'+';font:26px/1 Arial,sans-serif;color:#e4d4ae}.landing details[open] summary:after{content:'−'}.landing .contact{position:relative;isolation:isolate;background:#102f3d url('/assets/balcon-1600.webp') center/cover;padding:100px 0}.landing .contact:before{content:"";position:absolute;inset:0;z-index:-1;background:#061e2bd9}.landing .contact h2{font-size:clamp(60px,8vw,110px)}.landing footer{background:#0b2632;color:#f6efdf}.landing footer p{color:#b8cbd2}.landing .contact .booking-option{border-color:#ffffff40}.destination-page .guide-stay .btn{border-radius:999px}.destination-page .guide-stay .booking-option p{color:white}.destination-page .guide-toc .ui-icon{width:17px;height:17px}.destination-page .guide-cover{border-radius:100px 100px 0 0;overflow:hidden}.destination-page .guide-cover figcaption{padding-bottom:5px}
@media(max-width:1100px){.site-header header{gap:14px}.site-header .primary-nav{gap:14px}.site-header .primary-nav a{font-size:13px}.site-header .brand-name{font-size:23px}.landing .gallery-item img{height:480px}.landing .gallery-item:nth-child(5n+1) img{height:600px}}
@media(max-width:760px){.site-header header{height:auto;min-height:132px;display:grid;grid-template-columns:1fr;justify-items:center;gap:12px;padding:17px 5%}.site-header .brand{margin:0}.site-header .brand-name{font-size:25px}.site-header .languages{margin:0;gap:12px}.site-header .primary-nav,.site-header .header-stay{display:none}.languages a{width:42px;min-width:42px;height:40px}.languages a span{font-size:25px}.hero{min-height:max(780px,100svh)}.hero-copy{padding-top:195px;padding-bottom:30px}.hero h1{font-size:clamp(53px,12vw,78px);letter-spacing:-2px;max-width:100%;text-wrap:balance}.hero .eyebrow{font-size:11px;letter-spacing:1.5px;max-width:320px}.hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.55;max-width:350px}.hero-actions{display:flex;align-items:stretch;flex-direction:column;gap:12px;max-width:360px}.hero .btn.light{display:flex;justify-content:space-between;min-height:58px;padding:12px 18px 12px 24px}.hero-gallery-link{justify-content:space-between;min-height:54px;padding:13px 23px;font-size:14px}.hero .hero-bottom{margin-top:26px;padding-top:18px}.hero-bottom span{font-size:12px}.landing .facts{gap:25px;padding:32px 0}.landing .facts strong{font-size:24px}.landing .arrival{padding:60px 0}.landing .intro{margin-bottom:30px}.landing .arrival-photo{width:100vw;margin-left:calc(50% - 50vw);border-radius:85px 85px 0 0}.landing .arrival-photo .feature-img{aspect-ratio:4/5}.landing .arrival .caption{font-size:12px}.landing .section-top{margin-bottom:30px}.landing .section-top h2{font-size:43px}.landing .section-top p{font-size:15px;max-width:330px}.landing .photo-grid{display:grid;grid-template-columns:1fr;gap:4px;width:100vw;margin-left:calc(50% - 50vw)}.landing .gallery-item,.landing .gallery-item:nth-child(n){grid-column:1;border-radius:0}.landing .gallery-item img,.landing .gallery-item:nth-child(n) img{height:540px;max-height:78svh;aspect-ratio:auto;object-position:center}.landing .gallery-item figcaption{left:7%;right:7%;bottom:28px}.landing .gallery-item h3{font-size:37px;max-width:330px;letter-spacing:-.8px}.landing .gallery-item p{font-size:15px;max-width:330px}.landing .room-number{font-size:11px;margin-bottom:12px}.image-expand{right:20px;top:20px;width:44px;height:44px}.landing .spaces{padding-bottom:0}.landing .sea-interlude{min-height:630px}.landing .sea-interlude h2{font-size:48px}.landing .sea-interlude .wrap{text-align:left;padding-top:180px;padding-bottom:45px}.landing .amenities{padding:60px 0}.landing .amenity-layout>img{border-radius:120px 120px 8px 8px;aspect-ratio:1}.landing .amenity-list{gap:0 18px}.landing .amenity-list li{font-size:14px}.landing .guide-teaser{width:100vw;margin:0 0 0 calc(50% - 50vw);border-radius:0;min-height:710px;padding:260px 7% 105px}.landing .guide-teaser h2{font-size:42px}.landing .guide-teaser .photo-credit{left:7%;right:7%;bottom:20px;font-size:10px;line-height:1.5}.landing .guide-teaser .btn{font-size:14px;gap:12px}.landing .guide-teaser .teaser-photo img{object-position:60% center}.landing .location{padding:60px 0}.landing .location img{width:100vw;max-width:none;margin-left:calc(50% - 50vw);max-height:none;border-radius:0;aspect-ratio:4/5}.landing .contact{padding:70px 0}.landing .contact h2{font-size:60px}.landing .contact .btn{font-size:14px;padding:13px 18px 13px 22px;gap:15px}.landing .faq{padding-bottom:60px}.destination-page .site-header header{min-height:128px}.destination-page .guide-heading{padding-top:22px}.destination-page .guide-cover{border-radius:70px 70px 0 0}.destination-page .guide-heading h1{overflow-wrap:break-word;font-size:38px}.destination-page .btn{font-size:14px;gap:12px}.footer-inner .languages{gap:10px}.photo-dialog .gallery-prev,.photo-dialog .gallery-next{width:44px;height:44px}}
@media(max-width:370px){.hero h1{font-size:50px}.hero .hero-copy{padding-top:185px}.hero .eyebrow{font-size:10px}.hero-copy>p:not(.eyebrow){font-size:15px}.languages a{min-width:40px;width:40px}.landing .gallery-item h3{font-size:34px}.landing .guide-teaser h2{font-size:38px}.landing .guide-teaser{padding-bottom:115px}.btn{white-space:normal}.landing .facts strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.btn:hover{transform:none}}
