
*{box-sizing:border-box}body{margin:0;background:#fff;color:#171717;font:15px/1.65 Inter,Arial,sans-serif}header{min-height:105px;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;padding:12px 3%;gap:30px}header img{width:138px;height:76px;object-fit:contain}nav{display:flex;gap:30px;align-items:center}a{color:inherit}nav a{text-decoration:none;font-size:12px;letter-spacing:1.3px;font-weight:600}nav a.active{border-bottom:1px solid;padding-bottom:4px}h1,h2,h3{font-family:Cormorant,Georgia,serif;font-weight:500;line-height:1.1}h1{font-size:58px;margin:0 0 18px}h2{font-size:36px;margin:0 0 12px}h3{font-size:28px;margin:0}main{max-width:1000px;margin:auto;padding:86px 26px 80px}.intro{text-align:center;margin-bottom:56px}.intro p{color:#656565;font-size:16px;margin:0}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#777;margin-bottom:16px}.jump{display:flex;justify-content:center;gap:28px;margin:27px 0 0}.jump a{font-size:12px;text-underline-offset:6px}section{margin-bottom:48px;scroll-margin-top:24px}.sub{color:#666;margin:0 0 24px}.table{border:1px solid #e5e5e5;border-radius:5px;overflow:hidden}table{border-collapse:collapse;width:100%;text-align:left}th{background:#f7f7f5;font-size:11px;letter-spacing:1.1px;text-transform:uppercase;color:#666;font-weight:600}td,th{padding:17px 24px;border-bottom:1px solid #ededed}tr:last-child td{border:0}td:not(:first-child){font-weight:500}td small{display:block;font-size:11px;font-weight:400;color:#777}.note{font-size:12px;color:#777;margin:15px 0 0}.extras{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e5e5e5;border-radius:5px}.extra{padding:21px 24px;border-bottom:1px solid #ededed;display:flex;justify-content:space-between;gap:18px}.extra:nth-child(odd){border-right:1px solid #ededed}.extra:nth-last-child(-n+2){border-bottom:0}.extra span{font-size:14px}.extra strong{white-space:nowrap;font-weight:500}.extra small{display:block;color:#777;font-size:11px}.booking{padding:30px;background:#f7f7f5;display:flex;align-items:center;gap:35px;justify-content:space-between}.booking p{margin:12px 0 0;color:#666;font-size:13px}.button{display:inline-block;text-decoration:none;background:#171717;color:#fff;padding:14px 24px;font-size:11px;letter-spacing:1.3px;white-space:nowrap}.terms{display:grid;grid-template-columns:1fr 1fr;gap:34px;font-size:13px;color:#666}.terms strong{display:block;color:#222;margin-bottom:5px}footer{border-top:1px solid #eee;padding:28px 4%;font-size:11px;color:#777;display:flex;justify-content:space-between}.preview{position:fixed;bottom:15px;right:18px;background:#fff;border:1px solid #ddd;box-shadow:0 3px 14px #0001;padding:8px 13px;font-size:10px;color:#777;border-radius:3px}details{border-bottom:1px solid #eee;padding:25px 30px}summary{font:32px Cormorant,Georgia,serif;cursor:pointer}details p{font-size:14px}#faq{display:none}@media(max-width:700px){header{flex-direction:column;gap:8px}nav{gap:15px;flex-wrap:wrap;justify-content:center}nav a{font-size:10px}main{padding-top:48px}h1{font-size:45px}.extras,.terms{grid-template-columns:1fr}.extra:nth-child(odd){border-right:0}.extra:nth-last-child(2){border-bottom:1px solid #eee}.booking{display:block}.button{margin-top:20px}td,th{padding:14px 12px}.jump{gap:18px}footer{padding-bottom:65px}}

/* Accessible profile photo viewer. Native dialog keeps the rest of the page inert. */
button.profile-photo{display:block;position:relative;width:100%;padding:0;border:0;border-radius:10px;background:#eee8ef;overflow:hidden;line-height:0;text-align:left;cursor:zoom-in}
button.profile-photo img{transition:transform .25s ease;display:block}
button.profile-photo:hover img{transform:scale(1.025)}
button.profile-photo:focus-visible{outline:3px solid #aa7cb7;outline-offset:4px}
.profile-photo .photo-enlarge{position:absolute;right:12px;bottom:12px;padding:8px 11px;border:1px solid #ffffff40;border-radius:30px;background:#201824bb;color:#fff;font:500 11px/1.2 Inter,Arial,sans-serif;letter-spacing:.02em;backdrop-filter:blur(8px)}
.profile-gallery .photo-enlarge{right:7px;bottom:7px;padding:6px 8px;font-size:10px}
dialog.profile-lightbox{position:fixed;inset:0;margin:auto;width:min(1320px,100%);max-width:100%;height:100vh;height:100dvh;max-height:none;padding:max(18px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));border:0;background:transparent;color:#fff;overflow:hidden;box-sizing:border-box;font:14px/1.5 Inter,Arial,sans-serif}
dialog.profile-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;animation:photo-viewer-in .18s ease-out}
dialog.profile-lightbox::backdrop{background:rgba(15,11,19,.96);backdrop-filter:blur(14px)}
.profile-lightbox .photo-toolbar,.profile-lightbox .photo-navigation{display:flex;align-items:center;justify-content:space-between;gap:14px}
.profile-lightbox .photo-counter{margin:0;color:#d8cddb;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.profile-lightbox button{min-height:44px;padding:10px 18px;border:1px solid #ffffff38;border-radius:30px;background:#ffffff0a;color:#fff;font:500 12px/1.4 Inter,Arial,sans-serif;letter-spacing:.02em;cursor:pointer;transition:background .15s,border-color .15s}
.profile-lightbox button:hover{background:#ffffff1c;border-color:#ffffff85}
.profile-lightbox button:focus-visible{outline:3px solid #d9b8e5;outline-offset:3px}
.profile-lightbox .photo-view{min-height:0;position:relative;display:flex;align-items:center;justify-content:center}
.profile-lightbox .photo-view img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 32px #0008)}
.profile-lightbox .photo-error{position:absolute;max-width:310px;padding:18px;border-radius:10px;background:#251d2c;color:#fff;text-align:center}
.profile-lightbox .photo-navigation{justify-content:center;gap:22px}
.profile-lightbox [hidden]{display:none!important}
@keyframes photo-viewer-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){dialog.profile-lightbox{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));gap:12px}.profile-lightbox button{padding:10px 16px}.profile-lightbox .photo-counter{font-size:10px}.profile-lightbox .photo-navigation{gap:12px}}
@media(prefers-reduced-motion:reduce){dialog.profile-lightbox[open]{animation:none}button.profile-photo img,.profile-lightbox button{transition:none}}

.profile-lightbox .photo-original{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;color:#e6d5ee;font:500 12px/1.4 Inter,Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.profile-lightbox .photo-navigation{flex-wrap:wrap;gap:10px}.profile-lightbox .photo-original:focus-visible{outline:3px solid #d9b8e5;outline-offset:3px}@media(max-width:380px){.profile-lightbox .photo-navigation{gap:6px}.profile-lightbox .photo-navigation button{padding:10px 12px}.profile-lightbox .photo-original{padding:10px 4px;font-size:11px}}
