:root{--ivory:#f8f5ee;--white:#fff;--petrol:#315f62;--blue:#6f8f91;--sand:#d9c7a5;--text:#1c2929;--border:#1c29291f;color:var(--text);background:var(--ivory);font-synthesis:none;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden}body.locked{overflow:hidden}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:500;line-height:1.04}h2{font-size:clamp(2.2rem,4vw,3.7rem)}p{line-height:1.65}.eyebrow{letter-spacing:.18em;color:var(--petrol);margin:0 0 1rem;font-size:.72rem;font-weight:600}header{z-index:30;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;height:82px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:30px;max-width:1240px;height:100%;margin:auto;padding:0 28px;display:flex}.logo{align-items:center;gap:8px;min-width:165px;font-family:Cormorant Garamond,Georgia,serif;font-size:1.05rem;line-height:.85;display:flex}.logo svg{fill:none;width:45px;height:38px;stroke:var(--petrol);stroke-width:1.6px;stroke-linecap:round}.logo span{flex-direction:column;display:flex}.logo strong{font-size:1.15rem;font-weight:600}.logo.light,.logo.light svg{color:#fff;stroke:#fff}nav{align-items:center;gap:26px;font-size:.78rem;display:flex}nav a{position:relative}nav a:after{content:"";background:var(--petrol);height:1px;transition:all .25s;position:absolute;bottom:-8px;left:0;right:100%}nav a:hover:after{right:0}.header-actions{align-items:center;gap:12px;display:flex}.lang,.menu{background:0 0;border:0;font-size:.75rem}.menu{padding:8px;display:none}.nav-book,.button{border:0;border-radius:9px;justify-content:center;align-items:center;padding:13px 21px;transition:all .22s;display:inline-flex}.nav-book{background:var(--petrol);color:#fff;font-size:.78rem}.nav-book:hover,.primary:hover{background:#244b4e;transform:translateY(-1px)}.mobile{display:none}.hero{color:#fff;border-radius:0 0 18px 18px;max-width:1440px;height:clamp(620px,75vh,700px);margin:0 auto;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:52% 47%;width:100%;height:100%;animation:1.4s both hero-in}.hero-shade{background:linear-gradient(90deg,#0c20208c 0%,#0c202026 52%,#0000 75%),linear-gradient(#0000 60%,#0c1e1e2e);position:absolute;inset:0}.hero-copy{max-width:650px;position:absolute;top:50%;left:max(7vw,50px);transform:translateY(-50%)}.hero-copy .eyebrow{color:#fff}.hero h1{text-shadow:0 2px 15px #0000001f;font-size:clamp(3.2rem,6vw,5.8rem)}.hero h1 span{display:block}.hero-sub{font-size:1.1rem}.hero-buttons{gap:12px;margin:30px 0;display:flex}.primary{background:var(--petrol);color:#fff}.pale{color:var(--text);background:#fff}.outline{color:#fff;border:1px solid #ffffff80}.button:hover{transform:translateY(-2px)}.hero-note{opacity:.9;font-size:.77rem}.highlights{background:#fff;border-radius:0 0 16px 16px;grid-template-columns:repeat(5,1fr);max-width:1240px;margin:-1px auto 0;padding:28px;display:grid;box-shadow:0 12px 35px #1c29290d}.highlights div{text-align:center;border-right:1px solid var(--border);flex-direction:column;align-items:center;gap:10px;font-size:.75rem;display:flex}.highlights div:last-child{border:0}.highlights svg{width:23px;color:var(--petrol);stroke-width:1.5px}.section{max-width:1240px;margin:0 auto;padding:110px 28px}.section-head{text-align:center;max-width:690px;margin:0 auto 50px}.section-head>p:last-child{color:#52605f}.cards{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.card{border:1px solid var(--border);background:#fff;border-radius:16px;transition:all .28s;overflow:hidden}.card:hover{transform:translateY(-6px);box-shadow:0 18px 34px #1c292914}.card img{aspect-ratio:4/4.5;object-fit:cover;width:100%}.card div{padding:22px}.card h3{font-size:1.5rem}.card p{color:#52605f;margin-bottom:0;font-size:.84rem}.amenity-box{text-align:center;background:#efe8da;border-radius:18px;padding:65px 50px}.amenity-box .section-head{margin-bottom:38px}.amenity-grid{grid-template-columns:repeat(6,1fr);gap:35px 20px;display:grid}.amenity-grid div{flex-direction:column;align-items:center;gap:12px;font-size:.72rem;display:flex}.amenity-grid svg{stroke-width:1.3px;width:27px;color:var(--petrol)}.text-button{color:var(--petrol);border:0;border-bottom:1px solid var(--petrol);background:0 0;margin-top:35px;padding:4px 0}.location{grid-template-columns:1.05fr .95fr;align-items:center;gap:75px;padding-top:40px;display:grid}.location-image img{object-fit:cover;border-radius:18px;width:100%;height:610px}.location-copy>p{color:#52605f}.address{align-items:center;gap:9px;font-weight:600;display:flex;color:var(--text)!important}.address svg{width:18px}.journeys{grid-template-columns:1fr 1fr;gap:12px;margin:28px 0;display:grid}.journeys div{border:1px solid var(--border);background:#fff;border-radius:12px;align-items:flex-start;gap:10px;padding:14px;font-size:.76rem;display:flex}.journeys svg{width:19px;min-width:19px;color:var(--petrol)}.more-journeys{border-left:2px solid var(--sand);margin-top:25px;padding-left:18px}.more-journeys p{margin:5px 0;font-size:.78rem}.gallery-section{max-width:1440px}.gallery-grid{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:250px;gap:14px;display:grid}.gallery-grid button{background:#ddd;border:0;border-radius:15px;padding:0;overflow:hidden}.gallery-grid button:first-child{grid-row:span 2}.gallery-grid button:nth-child(6){grid-column:span 2}.gallery-grid img{object-fit:cover;width:100%;height:100%;transition:all .35s}.gallery-grid button:hover img{transform:scale(1.025)}.welcome{padding-top:70px}.welcome>div{border:1px solid var(--border);background:#fff;border-radius:18px;grid-template-columns:auto 1fr;align-items:start;gap:35px;padding:55px 7%;display:grid}.welcome svg{width:44px;height:44px;color:var(--petrol);stroke-width:1.2px}.welcome h2{font-size:clamp(2rem,3vw,3rem)}.welcome p{color:#52605f;max-width:830px}.booking{background:var(--petrol);color:#fff;text-align:center;padding:100px 28px}.booking .eyebrow{color:#dce8e6}.booking p{color:#e6eeee;max-width:600px;margin:20px auto 30px}.booking>div{justify-content:center;gap:12px;display:flex}footer{color:#fff;background:#244b4e;padding:70px max(5vw,28px) 25px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:45px;max-width:1240px;margin:auto;display:grid}.footer-grid a,.footer-grid button{color:#fff;text-align:left;opacity:.85;background:0 0;border:0;padding:5px 0;font-size:.78rem;display:block}.footer-grid p{opacity:.85;font-size:.82rem}.footer-bottom{opacity:.8;border-top:1px solid #ffffff2e;justify-content:space-between;max-width:1240px;margin:50px auto 0;padding-top:20px;font-size:.7rem;display:flex}.footer-bottom button{color:#fff;background:0 0;border:0}.modal-back{z-index:100;background:#0c1c1cb3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--ivory);border-radius:18px;width:100%;max-width:720px;max-height:85vh;padding:45px;position:relative;overflow:auto}.modal h2{margin-bottom:25px}.icon-btn{background:0 0;border:0;position:absolute;top:16px;right:16px}.modal-list{grid-template-columns:1fr 1fr;gap:12px;padding:0;list-style:none;display:grid}.modal-list li{background:#fff;border-radius:9px;padding:12px;font-size:.82rem}.lightbox{z-index:110;color:#fff;background:#050f0ff5;place-items:center;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;width:calc(100% - 180px);height:calc(100% - 110px)}.lightbox button{color:#fff;background:#ffffff1f;border:0;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute}.light-close{top:22px;right:25px}.light-prev{left:25px}.light-next{right:25px}.lightbox span{position:absolute;bottom:20px}.lightbox svg{width:25px}@keyframes hero-in{0%{opacity:.6;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media (width<=900px){nav{border-bottom:1px solid var(--border);background:#fff;flex-direction:column;align-items:stretch;padding:25px;display:none;position:absolute;top:82px;left:0;right:0}nav.open{display:flex}.desktop{display:none}.mobile,.menu{display:flex}.hero{height:680px}.hero-copy{left:32px;right:32px}.hero-shade{background:linear-gradient(90deg,#0c20208c,#0c202014),linear-gradient(#0000,#0c1e1e40)}.cards{grid-template-columns:1fr 1fr}.amenity-grid{grid-template-columns:repeat(4,1fr)}.location{grid-template-columns:1fr;gap:40px}.location-image img{height:450px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid button:first-child{grid-column:span 2}.gallery-grid button:nth-child(6){grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.header-inner{padding:0 18px}.logo{min-width:auto}.logo span{display:none}.hero{border-radius:0;height:calc(100svh - 82px);min-height:620px}.hero>img{object-position:58% 48%}.hero-copy{inset:auto 22px 48px;transform:none}.hero h1{font-size:3rem}.hero-buttons{flex-direction:column;align-items:stretch}.highlights{border-radius:0;grid-template-columns:1fr 1fr;gap:25px;margin:0;padding:28px 16px}.highlights div{border:0}.highlights div:last-child{grid-column:1/-1}.section{padding:80px 18px}.cards{grid-template-columns:1fr}.card img{aspect-ratio:4/3}.amenity-box{padding:50px 15px}.amenity-grid{grid-template-columns:repeat(2,1fr)}.location{padding-top:10px}.location-image img{height:350px}.journeys{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-grid button:first-child{grid-area:auto}.gallery-grid button:nth-child(6){grid-column:auto}.gallery-grid button:nth-child(n+7){display:none}.welcome>div{grid-template-columns:1fr;padding:35px 25px}.booking>div{flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:15px}.modal{padding:38px 22px}.modal-list{grid-template-columns:1fr}.lightbox img{width:100%;height:calc(100% - 180px)}.light-prev{left:12px}.light-next{right:12px}}.booking-options{max-width:1240px;margin:0 auto;padding:100px 28px 115px}.booking-options .section-head{margin-bottom:48px}.booking-options-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:24px;display:grid}.booking-card{border:1px solid var(--border);background:#fff;border-radius:18px;flex-direction:column;min-width:0;transition:transform .24s,box-shadow .24s;display:flex;overflow:hidden;box-shadow:0 12px 35px #1c29290f}.booking-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px #1c29291c}.booking-card>img{object-fit:cover;width:100%;height:310px}.booking-card-body{flex-direction:column;flex:1;padding:30px;display:flex}.booking-card h3{font-size:2rem}.booking-card-body>p{color:#52605f;margin:14px 0 25px;font-size:.88rem}.platform-actions{gap:11px;margin-top:auto;display:grid}.platform-actions>span{color:var(--petrol);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:600}.platform-button{border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:50px;font-size:.84rem;font-weight:600;transition:transform .2s,filter .2s,background .2s;display:flex}.platform-button svg{flex:none;width:22px;height:22px}.platform-button:hover{filter:brightness(.97);transform:translateY(-2px)}.booking-com{color:#fff;background:#003b95}.airbnb{color:#ff385c;background:#fff8f8;border:1px solid #ff385c}.platform-button:focus-visible{outline:3px solid var(--sand);outline-offset:3px}@media (width<=760px){.booking-options{padding:80px 18px 90px}.booking-options-grid{grid-template-columns:1fr}.booking-card>img{height:270px}.booking-card-body{padding:25px}.booking-card h3{font-size:1.75rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.capacity-badges{flex-wrap:wrap;gap:9px;margin-top:16px;display:flex}.capacity-badges span{color:var(--text);white-space:nowrap;background:#f1f6f4;border:1px solid #315f6229;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:.74rem;font-weight:500;display:inline-flex}.capacity-badges svg{width:17px;height:17px;color:var(--petrol);stroke-width:1.7px}.capacity-badges .capacity-summary{justify-content:flex-start;width:100%}.capacity-summary b{color:var(--blue);font-weight:600}.capacity-badges+p{margin-top:16px}@media (width<=420px){.capacity-badges span{white-space:normal}}
