*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08}h1{font-size:clamp(3.3rem,6vw,6.4rem);letter-spacing:-.045em}h2{font-size:clamp(2.25rem,4vw,4rem);letter-spacing:-.035em}h3{font-size:1.6rem;letter-spacing:-.02em}p{max-width:65ch}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:.75rem;letter-spacing:.2em;font-weight:600;text-transform:uppercase;display:block;line-height:1.6}.section{padding:105px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:46px}.section-heading h2{max-width:720px}.section-heading p{max-width:340px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:14px 23px;border:1px solid var(--ink);background:var(--ink);color:white;font-size:.875rem;font-weight:600;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:var(--accent);border-color:var(--accent)}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:var(--ink);color:white}.text-link{display:inline-block;padding:7px 0;border-bottom:1px solid currentColor;font-size:.9rem;font-weight:600}.site-header{height:92px;display:flex;align-items:center;position:sticky;top:0;background:var(--paper);z-index:20;border-bottom:1px solid var(--line)}.header-inner{width:calc(100% - 64px);margin:auto;display:flex;align-items:center;gap:24px}.brand{flex-shrink:0}.brand-main{display:block;line-height:1.1}.brand-sub{display:block;font-size:.65rem;letter-spacing:.24em;margin-top:8px}.main-nav{display:flex;gap:28px;align-items:center;margin-left:auto;font-size:.875rem}.main-nav a:not(.button):hover{color:var(--accent)}.language{display:flex;align-items:center;gap:6px;font-size:.75rem}.language button{border:0;background:transparent;color:var(--muted);padding:9px 4px;min-height:40px;min-width:29px}.language button[aria-pressed=true]{color:var(--ink);font-weight:bold}.language span{opacity:.35}.menu-toggle{display:none;border:1px solid var(--line);background:none;padding:9px 12px;color:var(--ink)}.skip{position:absolute;left:16px;top:-100px;background:var(--ink);color:white;padding:12px 20px;z-index:99}.skip:focus{top:12px}label{display:block;font-size:.875rem;font-weight:600}input,select,textarea{width:100%;padding:12px 13px;border:1px solid var(--line);background:var(--paper);border-radius:0;color:var(--ink);min-height:48px}textarea{resize:vertical;min-height:100px}.field label{margin-bottom:7px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.full{grid-column:1/-1}.field small,.small{display:block;font-size:.8125rem;line-height:1.6;color:var(--muted)}.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.status{font-size:.875rem;line-height:1.6;margin-top:15px;min-height:1.6em}.status:empty{display:none}details{border-top:1px solid var(--line);padding:23px 0}details:last-of-type{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:1.05rem;display:flex;align-items:center;justify-content:space-between;gap:24px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:1.5rem;font-weight:400}details[open] summary:after{content:'−'}details p{padding-top:15px;color:var(--muted);font-size:.9375rem}.site-footer{padding:45px 0 24px;background:var(--ink);color:white}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:40px}.footer-top p{font-size:.9rem;opacity:.75;margin-top:18px}.footer-links{display:flex;gap:26px;align-items:flex-start;font-size:.875rem}.footer-bottom{padding-top:22px;border-top:1px solid #ffffff2b;display:flex;gap:25px;justify-content:space-between;font-size:.75rem;color:#ffffffa8}.footer-bottom button{background:none;border:0;color:inherit;padding:0;font:inherit;text-decoration:underline}.dialog{border:0;padding:0;background:var(--paper);color:var(--ink);width:min(650px,calc(100% - 32px));max-height:85vh;box-shadow:0 20px 100px #0005}.dialog::backdrop{background:#131713b8;backdrop-filter:blur(3px)}.dialog-inner{padding:35px}.dialog-close{display:block;margin-left:auto;background:none;border:0;color:var(--ink);font-size:.875rem;text-decoration:underline;margin-bottom:20px}.dialog h2{font-size:2.2rem;margin-bottom:20px}.dialog p{margin-bottom:15px;font-size:.9rem}.dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;background:white;border:1px solid var(--line);padding:20px;font-size:.9rem;max-height:280px;overflow:auto}.mobile-sticky{display:none}em{font-weight:400}.mobile-only{display:none}@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.main-nav{gap:17px}.main-nav .button{padding:12px 17px}.header-inner{gap:18px}.section{padding:80px 0}.section-heading{gap:25px}}@media(max-width:800px){html{scroll-padding-top:84px}.wrap{width:calc(100% - 40px)}.site-header{height:78px}.header-inner{width:calc(100% - 32px);gap:14px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 15px 20px #0001;flex-direction:column;align-items:stretch;gap:18px}.main-nav.open{display:flex}.main-nav a{padding:7px 0}.main-nav .button{padding:14px}.language{gap:1px}.section{padding:65px 0}.section-heading{display:block;margin-bottom:30px}.section-heading p{margin-top:22px}.eyebrow{font-size:.7rem;letter-spacing:.16em}.form-grid{gap:15px}.footer-top{flex-direction:column;gap:28px}.footer-links{flex-wrap:wrap;gap:20px}.footer-bottom{flex-direction:column;gap:12px}.site-footer{padding-bottom:90px}.mobile-sticky{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:18;background:var(--paper);padding:10px 20px;border-top:1px solid var(--line)}.mobile-sticky .button{width:100%;min-height:44px;padding:10px}.mobile-only{display:block}}@media(max-width:440px){h1{font-size:3rem}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.form-actions{flex-direction:column}.form-actions .button{width:100%}.dialog-inner{padding:23px}.header-inner{gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}} :root{--ink:#203d38;--paper:#fffdf9;--accent:#9c5238;--muted:#636d65;--line:#d9dfd8}.hotel-brand{display:flex;align-items:center;gap:12px}.brand-mark{display:flex;justify-content:center;align-items:center;border:1px solid #80918a;width:41px;height:45px;font-family:Georgia,serif;font-size:2.1rem}.hotel-brand .brand-main{font-family:Georgia,serif;font-size:1.4rem;letter-spacing:.12em}.hero{min-height:670px;position:relative;isolation:isolate;background:#293f36;color:white}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:center 56%;z-index:-2}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#102c29df 0%,#152c2c99 45%,#07161012 100%);z-index:-1}.hero-content{padding-top:78px;padding-bottom:38px}.hero-location{display:flex;align-items:center;gap:20px;margin-bottom:32px}.stars{color:#edca87;letter-spacing:5px}.hero h1{font-size:clamp(3.2rem,5.5vw,5.2rem);max-width:830px}.hero h1 em{color:#ede3c9}.hero p{font-size:1.0625rem;max-width:450px;margin-top:25px;color:#ffffffd4}.hero-button{margin-top:30px;background:#fffdf9;border-color:#fffdf9;color:var(--ink)}.hero-button:hover{color:white}.hero-bottom{display:flex;gap:35px;margin-top:58px;font-size:.8125rem;color:#ffffffd9}.hero-bottom span+span{border-left:1px solid #ffffff55;padding-left:35px}.booking-strip{position:relative;display:grid;grid-template-columns:1fr 1fr .75fr auto;gap:25px;align-items:end;padding:30px 35px;background:var(--paper);box-shadow:0 10px 35px #203d3811;margin-top:-1px;border:1px solid var(--line);border-top:0}.booking-strip label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}.booking-strip input,.booking-strip select{border:0;border-bottom:1px solid var(--line);padding:5px 0 9px}.booking-strip .button{margin-bottom:1px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.intro h2{margin-top:18px}.intro h2 em{color:var(--accent)}.intro-copy p{color:var(--muted);line-height:1.9}.intro-services{display:flex;flex-wrap:wrap;gap:16px;font-size:.75rem;margin-top:30px}.intro-services span{border-bottom:1px solid var(--line);padding-bottom:8px}.rooms-section{background:#edf0ea}.section-heading .eyebrow{margin-bottom:16px}.room-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.room-photo{margin:0;position:relative;height:500px}.room-photo img{width:100%;height:100%;object-position:50% 55%}.room-photo figcaption{position:absolute;bottom:0;left:0;background:var(--ink);color:#fff;padding:11px 20px;font-size:.75rem}.room-tabs{display:flex;border-bottom:1px solid #bfc9bd;gap:23px;margin-bottom:25px}.room-tab{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:.875rem;padding:10px 0 15px}.room-tab[aria-selected=true]{border-color:var(--accent);color:var(--ink);font-weight:600}.room-number{font-family:Georgia,serif;font-size:3.5rem;color:#7e8d80;line-height:1}.room-selection h3{font-size:2.3rem;margin-top:20px}.room-selection p{margin-top:20px;color:var(--muted);font-size:.9375rem}.room-selection ul{padding:0;margin:20px 0;list-style:none;display:flex;flex-wrap:wrap;gap:9px}.room-selection li{font-size:.8125rem;padding:5px 12px;border:1px solid #bfc9bd}.room-price{font-style:italic}.room-selection .text-link{margin-top:15px}.experiences-grid{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.experience{padding:40px 30px}.experience:first-child{padding-left:0}.experience:last-child{padding-right:0}.experience+.experience{border-left:1px solid var(--line)}.experience-index{font-family:Georgia,serif;font-size:1.25rem;color:var(--accent)}.experience h3{margin:21px 0 18px}.experience p{font-size:.9375rem;color:var(--muted)}.experience-note{display:block;font-size:.75rem;letter-spacing:.06em;margin-top:23px}.experience .text-link{margin-top:17px}.dining-photo{position:relative;margin-top:50px;height:330px}.dining-photo img{width:100%;height:100%;object-position:center 50%}.dining-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#132921c9,transparent 75%)}.dining-photo>span{position:absolute;bottom:30px;left:35px;color:white;font:italic 2.2rem Georgia,serif;z-index:1}.reservation-section{background:var(--ink);color:var(--paper)}.reservation-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:80px}.reservation-copy>.eyebrow{color:#d4c49b}.reservation-copy h2{margin-top:23px}.reservation-copy>p{margin-top:27px;color:#d4dfd8;font-size:.9375rem}.reservation-copy h2 em{color:#d7c297}.direct-contact{padding:28px 0;display:flex;flex-direction:column;gap:7px;font-size:.95rem;overflow-wrap:anywhere}.direct-contact .eyebrow{margin-bottom:7px;color:#ccd5ce}.platform-card{border-top:1px solid #ffffff3c;padding-top:26px}.platform-card h3{font-size:1.65rem}.platform-card p{margin-top:16px;font-size:.875rem;color:#d4dfd8}.platform-card .text-link{margin-top:12px}.reservation-form{background:var(--paper);color:var(--ink);padding:36px}.reservation-form h3{font-size:1.75rem;margin-bottom:28px}.check{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:.8125rem}.check input{width:18px;height:18px;min-height:0;margin-top:4px;accent-color:var(--ink);flex-shrink:0}.form-note{margin-top:19px}.practical{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.practical h2{margin-top:20px}.practical address{font-style:normal;font-size:.9375rem;margin-top:27px;color:var(--muted)}.practical .text-link{margin-top:20px}.plain-button{background:none;border:0;border-bottom:1px solid currentColor;color:inherit}.site-footer .brand-main{font-family:Georgia,serif;font-size:1.5rem;letter-spacing:.07em}@media(max-width:1050px){.hotel-brand .brand-main{font-size:1.1rem}.brand-mark{display:none}.brand-sub{font-size:.6rem}.hero{min-height:650px}.room-layout{gap:35px}.reservation-layout,.practical,.intro{gap:45px}.reservation-form{padding:27px}}@media(max-width:800px){.brand-mark{display:flex;width:30px;height:35px;font-size:1.6rem}.hotel-brand{gap:9px}.hotel-brand .brand-main{font-size:1.06rem}.brand-sub{letter-spacing:.15em}.hero{min-height:610px}.hero-content{padding-top:59px}.hero h1{font-size:3.35rem}.hero p{font-size:1rem;max-width:380px}.hero-shade{background:linear-gradient(90deg,#102c29d9,#152c2c55)}.hero-location{gap:12px;margin-bottom:27px}.hero-bottom{gap:16px;margin-top:55px;font-size:.75rem}.hero-bottom span+span{padding-left:16px}.hero-bottom>span:last-child{display:none}.booking-strip{grid-template-columns:1fr 1fr;padding:23px 18px;gap:20px;margin-inline:-1px}.booking-strip .button{height:48px;font-size:.8125rem;padding:10px}.intro,.room-layout,.reservation-layout,.practical{grid-template-columns:1fr;gap:32px}.room-photo{height:390px}.room-tabs{margin-bottom:23px}.room-number{display:none}.room-selection h3{margin-top:12px}.experiences-grid{grid-template-columns:1fr}.experience,.experience:first-child,.experience:last-child{padding:27px 0}.experience+.experience{border-left:0;border-top:1px solid var(--line)}.experience h3{margin:12px 0}.experience-index{float:right}.experience p{max-width:100%}.dining-photo{height:270px;margin-top:35px}.dining-photo>span{left:22px;font-size:1.7rem;max-width:240px}.reservation-form{padding:25px 20px}.reservation-copy h2{font-size:2.8rem}.practical{gap:35px}.room-photo{height:360px}.direct-contact{padding-bottom:23px}.platform-card{margin-bottom:8px}}@media(max-width:440px){.hero h1{font-size:2.9rem}.hero-location .eyebrow{font-size:.625rem}.stars{font-size:.875rem;letter-spacing:3px}.hero{min-height:610px}.hero-content{padding-top:48px}.hero p{max-width:310px}.hero-bottom{margin-top:42px}.room-photo{height:300px}.booking-strip{gap:17px 13px}.booking-strip label{font-size:.68rem}.booking-strip input{font-size:.875rem}.hero-bottom{font-size:.6875rem}.brand-mark{display:none}}

.room-tabs{gap:8px 18px;flex-wrap:wrap}.room-tab{padding-bottom:10px}.room-photo img{object-fit:cover}.photo-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.photo-filters button{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:10px 16px;font-size:.875rem;min-height:43px}.photo-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.photo-tile{border:0;padding:0;background:transparent;text-align:left;color:var(--ink);position:relative;min-width:0}.photo-tile[hidden]{display:none}.photo-tile img{width:100%;height:310px;object-fit:cover;transition:filter .2s}.photo-tile:hover img{filter:brightness(.92)}.photo-caption{display:block;padding-top:11px;font-size:.875rem;line-height:1.5}.photo-open{position:absolute;right:12px;top:12px;padding:5px 10px;background:#203d38e8;color:white;font-size:.75rem}.photo-more{margin-top:28px;display:flex;align-items:center;gap:20px}.photo-viewer{padding:0;border:0;width:min(1100px,calc(100% - 30px));max-height:94vh;background:#152721;color:#fff}.photo-viewer::backdrop{background:#000c}.photo-viewer-inner{padding:20px}.photo-viewer .dialog-close{color:white;margin-bottom:12px}.photo-viewer img{width:100%;height:68vh;object-fit:contain;background:#0d1c17}.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px}.viewer-toolbar button{padding:10px 15px;background:none;border:1px solid #ffffff70;color:white;font-size:.875rem}.viewer-toolbar button:disabled{opacity:.4;cursor:default}.viewer-toolbar p{font-size:.875rem;text-align:center;line-height:1.5}.header-inner{gap:18px}.main-nav{gap:20px}@media(max-width:1050px) and (min-width:801px){.main-nav{gap:11px;font-size:.8125rem}.main-nav .button{padding:10px 12px;font-size:.8125rem}.header-inner{width:calc(100% - 36px);gap:12px}}@media(max-width:800px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.photo-tile img{height:270px}.photo-filters{gap:8px}.photo-filters button{padding:9px 12px;font-size:.8125rem}.photo-viewer-inner{padding:12px}.photo-viewer img{height:65vh}.viewer-toolbar{flex-wrap:wrap;gap:10px}.viewer-toolbar p{order:3;width:100%;max-width:none}.viewer-toolbar button{font-size:.8125rem}.photo-caption{font-size:.8125rem}.main-nav{gap:18px}}@media(max-width:440px){.photo-tile img{height:210px}.photo-open{font-size:.625rem;padding:4px 7px;top:8px;right:8px}.photo-grid{gap:20px 12px}.photo-more{flex-wrap:wrap}.photo-viewer img{height:59vh}}

@media(min-width:801px) and (max-width:1050px){.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:91px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 15px 20px #0001;flex-direction:column;align-items:stretch;gap:18px}.main-nav.open{display:flex}.main-nav a{padding:7px 0}.main-nav .button{padding:14px}}

/* Keep the pool and sun deck visible in the owner-selected welcome photograph. */
.hero-image{object-position:center 68%}
@media(max-width:700px){.hero-image{object-position:58% center}}

/* Room rates and direct-booking conditions. */
.room-pricing{margin:24px 0}.room-pricing .room-price{font-style:normal;font-family:Georgia,serif;font-size:1.75rem;line-height:1.3;margin:0 0 7px}.room-rate-ariary{font-size:1rem;margin:0 0 9px;color:var(--muted)}.room-pricing .small{margin:0 0 12px}.room-rates-link{font-size:.875rem}.rates-section{scroll-margin-top:110px}.rates-table-wrap{overflow-x:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rates-table{width:100%;border-collapse:collapse;min-width:560px;text-align:left;font-size:1rem}.rates-table th,.rates-table td{padding:18px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.rates-table thead th{font-size:.875rem;background:var(--ink);color:var(--paper);font-weight:500}.rates-table tbody th{font-weight:500}.rates-table tr:last-child th,.rates-table tr:last-child td{border-bottom:0}.rates-table th:first-child{padding-left:20px}.rates-table td:not(:first-child){white-space:nowrap}.rates-table .rate-euro{font:1.45rem Georgia,serif}.rates-table tbody tr:nth-child(even){background:#203d3805}.rates-conversion{max-width:820px;margin-top:15px}.rates-conditions{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:32px 0 20px}.rates-conditions h3{font-size:1.25rem;margin:0 0 8px}.rates-conditions p{font-size:1rem;margin:0}.rates-season{max-width:860px;font-size:.95rem;margin:0 0 24px}@media(max-width:700px){.rates-conditions{grid-template-columns:1fr;gap:20px}.rates-table th,.rates-table td{padding:15px 12px}.room-pricing .room-price{font-size:1.5rem}}

/* Confirmed bookings and orders: bank-transfer instructions */
.payment-section{border-bottom:1px solid var(--line)}
.payment-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:70px;align-items:start}
.payment-steps{list-style:none;padding:0;margin:0;counter-reset:payment-step}
.payment-steps li{position:relative;padding:0 0 26px 46px;counter-increment:payment-step}
.payment-steps li::before{content:counter(payment-step,decimal-leading-zero);position:absolute;left:0;top:1px;font-size:.875rem;font-weight:600;color:var(--accent)}
.payment-steps h3{font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.5;font-weight:600;letter-spacing:0;margin-bottom:8px}
.payment-steps p{color:var(--muted);font-size:1rem}
.bank-details{min-width:0;border:1px solid var(--line);padding:30px;background:rgba(255,255,255,.55)}
.bank-details h3{margin-bottom:20px}
.bank-fields{margin:0}
.bank-fields>div{padding:13px 0;border-bottom:1px solid var(--line)}
.bank-fields dt{font-size:.875rem;color:var(--muted);margin-bottom:4px}
.bank-fields dd{margin:0;font-size:1rem;overflow-wrap:anywhere}
.bank-fields .bank-code{font-family:Consolas,'Courier New',monospace;font-size:1.125rem;letter-spacing:.015em;line-height:1.65;user-select:all}
.bank-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.bank-status{min-height:1.6em;font-size:.875rem;color:var(--muted);margin-top:10px}
.payment-contact{margin-left:46px}
.payment-shortcut{margin-top:20px}
@media(max-width:800px){.payment-layout{grid-template-columns:1fr;gap:28px}.bank-details{padding:24px}}
@media(max-width:440px){.bank-details{padding:20px}.bank-actions{display:grid}.bank-actions .button{width:100%}.payment-steps li{padding-left:36px}.payment-contact{margin-left:36px}}

/* Hosted PayPal checkout for confirmed bookings. */
/* Restaurant menus: preserve the complete owner-supplied cards. */
.restaurant-menu-section{background:#edf0ea}
.restaurant-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px}
.restaurant-menu-card{min-width:0}
.restaurant-menu-card h3{font-size:1.6rem;line-height:1.25;margin-bottom:18px}
.restaurant-menu-sheet{display:block}
.restaurant-menu-sheet img{width:100%;height:auto;object-fit:contain;background:var(--paper);border:1px solid var(--line)}
.restaurant-menu-action{display:block;padding:14px 0 5px;font-size:.9375rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.restaurant-menu-new-tab{font-size:.875rem;font-weight:400;color:var(--muted)}
.restaurant-menu-sheet:hover .restaurant-menu-action{color:var(--accent)}
@media(min-width:1051px) and (max-width:1280px){.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:91px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 15px 20px #0001;flex-direction:column;align-items:stretch;gap:18px}.main-nav.open{display:flex}.main-nav a{padding:7px 0}.main-nav .button{padding:14px}}
@media(max-width:650px){.restaurant-menu-grid{grid-template-columns:1fr;gap:36px}.restaurant-menu-card h3{font-size:1.45rem}.restaurant-menu-action{padding-top:12px}}

.online-payment{display:flex;align-items:center;justify-content:space-between;gap:32px;min-width:0;padding:30px;margin-bottom:40px;border:1px solid var(--line);background:rgba(255,255,255,.55)}
.online-payment h3{margin-bottom:12px}
.online-payment p{max-width:680px;font-size:1rem;color:var(--muted)}
.online-payment .online-payment-note{margin-top:12px;font-size:.875rem}
.online-payment .button{flex-shrink:0;text-align:center}
@media(max-width:800px){.online-payment{align-items:flex-start;flex-direction:column;gap:24px;padding:24px}}
@media(max-width:440px){.online-payment{padding:20px}.online-payment .button{width:100%}}

/* Room photographs selected by the owner: the garden and pool lead the welcome page. */
.hero-garden{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.25fr);min-height:0;background:var(--ink)}
.hero-garden-copy{padding:54px clamp(24px,4vw,72px) 46px;align-self:center;min-width:0}
.hero-garden .hero-location{gap:16px;flex-wrap:wrap;margin-bottom:35px}
.hero-garden .eyebrow{font-size:.875rem;letter-spacing:.12em}
.feature-kicker{color:#e3cba5;margin-bottom:14px}
.hero-garden h1{font-size:clamp(3.2rem,5.4vw,5.4rem);line-height:1.06}
.hero-garden p{font-size:1rem;line-height:1.75;margin-top:24px;max-width:40ch}
.hero-garden-actions{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap;margin-top:28px}
.hero-garden-actions .hero-button{margin:0}
.hero-photo-link{color:white;background:none;border:0;border-bottom:1px solid #ffffff90;padding:10px 0;font-size:.9375rem}
.hero-garden .hero-garden-rate{font:1.8rem Georgia,serif;color:white;margin-top:30px}
.hero-garden-rate span{font:1rem Arial,Helvetica,sans-serif}
.hero-rate-note{display:block;font-size:.875rem;color:#d7dfda;margin-top:8px}
.hero-garden-media{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);grid-template-rows:1fr 1fr;gap:6px;padding:6px;height:clamp(620px,47vw,760px);min-width:0}
.room-feature-photo{position:relative;display:block;border:0;padding:0;background:#142c26;overflow:hidden;min-width:0;color:white}
.room-feature-photo img{width:100%;height:100%;object-fit:cover;transition:filter .2s}
.room-feature-photo:hover img{filter:brightness(.95)}
.room-feature-photo:focus-visible{outline:3px solid #edca87;outline-offset:-5px;z-index:2}
.hero-garden-media .feature-main{grid-row:1/3}
.hero-garden-media .feature-main img{object-position:center 57%}
.hero-garden-media .feature-detail img{object-position:center 61%}
.room-feature-label{position:absolute;bottom:18px;right:18px;background:#203d38ed;color:white;padding:8px 14px;font-size:.875rem;line-height:1.5}
.room-showcases{padding-bottom:20px}
.room-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.room-showcase{min-width:0;scroll-margin-top:110px}
.showcase-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:320px 160px;gap:6px}
.showcase-main{grid-column:1/-1}
.showcase-main img{object-position:center 55%}
.showcase-copy{padding:26px 0 0}
.showcase-copy h3{font-size:1.85rem;line-height:1.2}
.showcase-copy p{font-size:1rem;margin-top:16px;color:var(--muted)}
.showcase-actions{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:16px}
.showcase-actions button,.room-gallery-link{background:none;border:0;border-bottom:1px solid currentColor;color:var(--ink);font-size:.9375rem}
.room-gallery-link[hidden]{display:none}
.hero-garden-media .feature-main,.hero-garden-media .feature-detail{height:100%;min-height:0}
@media(min-width:1450px){.hero-garden-media{min-height:690px}}
@media(max-width:1000px){.hero-garden{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.hero-garden-media{grid-template-columns:1fr;grid-template-rows:1fr}.hero-garden-media .feature-main{grid-row:auto}.hero-garden-media .feature-detail{display:none}.showcase-mosaic{grid-template-rows:260px 145px}.room-showcase-grid{gap:26px}}
@media(max-width:700px){.hero-garden{grid-template-columns:1fr}.hero-garden-media{grid-row:1;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);grid-template-rows:170px 170px;height:auto;min-height:0}.hero-garden-media .feature-main{grid-row:1/3}.hero-garden-media .feature-detail{display:block}.hero-garden-copy{padding:32px 24px 38px}.hero-garden .hero-location{margin-bottom:22px}.hero-garden h1{font-size:3.5rem}.hero-garden p{max-width:50ch}.hero-garden .eyebrow{font-size:.875rem}.hero-garden .hero-garden-rate{margin-top:25px}.room-showcase-grid{grid-template-columns:1fr;gap:44px}.showcase-mosaic{grid-template-rows:280px 145px}.room-showcases{padding-bottom:5px}.room-feature-label{bottom:12px;right:12px;padding:7px 10px}}
@media(max-width:380px){.hero-garden-media{grid-template-rows:145px 145px}.showcase-mosaic{grid-template-rows:230px 130px}.hero-garden .hero-location{gap:10px}.hero-garden .hero-location .eyebrow{font-size:.8125rem}}

/* Garden and pool photographs lead the welcome in a landscape mosaic. */
.hero-garden h1{font-size:clamp(2.4rem,4.1vw,4.2rem)}
.hero-garden-media{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1.7fr) minmax(0,1fr)}
.hero-garden-media .feature-main{grid-column:1/-1;grid-row:1}
.hero-garden-media .feature-main img{object-position:center 78%}
.hero-garden-media .feature-detail{grid-row:2;display:block}
.hero-garden-media .feature-detail img{object-position:center}
.hero-garden .hero-hotel-details{font-size:.875rem;color:#d7dfda;margin-top:30px}
@media(max-width:700px){.hero-garden-media{height:418px;grid-template-rows:250px 150px}.hero-garden h1{font-size:clamp(2.4rem,7vw,3.4rem)}}
@media(max-width:380px){.hero-garden-media{height:338px;grid-template-rows:200px 120px}.hero-garden-media .room-feature-label{font-size:.8125rem;right:8px;bottom:8px}}

/* The Diamant suite follows the garden-and-pool welcome. */
.diamant-spotlight{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center}
.diamant-spotlight h2{font-size:clamp(2.5rem,4.5vw,4rem)}
.diamant-spotlight .feature-kicker{color:var(--accent);font-size:.875rem}
.diamant-spotlight p{font-size:1rem;line-height:1.75;color:var(--muted);margin-top:22px}
.spotlight-actions{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center;margin-top:26px}
.spotlight-gallery-link{background:none;border:0;border-bottom:1px solid currentColor;color:var(--ink)}
.diamant-spotlight .spotlight-rate{font:1.9rem Georgia,serif;color:var(--ink);margin-top:26px}
.spotlight-rate span{font:1rem Arial,Helvetica,sans-serif}
.spotlight-rate-note{display:block;color:var(--muted);font-size:.875rem;margin-top:9px}
.spotlight-media{height:520px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:6px}
.spotlight-media .room-feature-photo{height:100%;min-height:0}
.spotlight-media .feature-main{grid-row:1/3}
.spotlight-media .feature-main img{object-position:center 57%}
.spotlight-media .feature-detail img{object-position:center 61%}
.diamant-spotlight+.room-showcases{padding-top:0}
@media(max-width:800px){.diamant-spotlight{grid-template-columns:1fr;gap:30px}.spotlight-media{height:460px}}
@media(max-width:440px){.spotlight-media{height:380px}.diamant-spotlight h2{font-size:2.7rem}}
