:root{--ink:#081319;--white:#eff4f4;--ice:#c1e5ee;--muted:#97aeb8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--ink);color:var(--white);font-family:Manrope,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}img{display:block;max-width:100%}h1,h2,p{margin:0}::selection{background:var(--ice);color:var(--ink)}.site-header{position:absolute;left:6%;right:6%;top:35px;z-index:5;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:12px}.logo svg{width:43px}.logo>span{font-size:8px;letter-spacing:2.5px;line-height:1.4}.logo b{display:block;font-size:21px;letter-spacing:7px;font-weight:600;margin-top:4px}.header-phone{font-size:12px;display:flex;align-items:center;gap:23px}.header-phone>span{border:1px solid #ffffff40;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;font-size:17px;transition:background .3s}.header-phone:hover>span{background:#ffffff20}.hero{height:100svh;min-height:770px;max-height:1300px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}.hero-photo,.hero-overlay,#snow{position:absolute;inset:0;width:100%;height:100%}.hero-photo{object-fit:cover;object-position:50% 40%;filter:saturate(.55);animation:landscape 22s ease-out both;z-index:-3}.hero-overlay{background:linear-gradient(180deg,#07151c55,#07151c35 20%,#07151c30 45%,#081319a3 85%,#081319);z-index:-2}.hero-content{position:relative;width:100%;padding:100px 20px 130px;z-index:1;pointer-events:none}.hero-content a{pointer-events:auto}.eyebrow{font-size:9px;font-weight:500;letter-spacing:3px;line-height:1.8}.hero .eyebrow{color:#d0e3e8;margin-bottom:40px}.eyebrow span{display:inline-block;margin:0 17px;color:var(--ice);font-size:17px;vertical-align:middle}.serif{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(35px,4.8vw,76px);display:block;letter-spacing:-2px;line-height:1.3}.mountain-title{display:block;position:relative;font-size:clamp(100px,21vw,330px);line-height:1.02;letter-spacing:-1.7vw;font-weight:600;left:-.5vw;text-shadow:0 10px 70px #0a1b2030}.title-star{position:absolute;font-size:3vw;color:#d9edf1;top:5%;margin-left:15px;line-height:1;animation:star-turn 35s linear infinite}.hero-subtitle{font-size:13px;font-weight:400;letter-spacing:2px;color:#e3eef1;margin-top:19px}.pill{display:inline-flex;align-items:center;gap:26px;font-size:11px;background:#edf5f51a;border:1px solid #e1f2f35c;border-radius:40px;padding:8px 9px 8px 24px;backdrop-filter:blur(14px);margin-top:30px;transition:background .3s,transform .3s}.pill>span{background:#e5f0f2;color:#12272f;width:35px;height:35px;display:grid;place-items:center;font-size:17px;border-radius:50%;transition:transform .3s}.pill:hover{background:#ffffff30;transform:translateY(-3px)}.pill:hover>span{transform:translateY(2px)}#snow{pointer-events:none;z-index:0}.hero-foot{position:absolute;bottom:115px;left:6%;right:6%;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:8px;letter-spacing:2px;color:#b4cbd4}.hero-foot button{background:transparent;border:0;color:inherit;font-size:8px;letter-spacing:1.3px;padding:10px;display:flex;align-items:center;gap:8px}.status-dot{width:4px;height:4px;border-radius:50%;background:#c1e5ee;box-shadow:0 0 10px #c1e5ee}.hero-foot button[aria-pressed=false] .status-dot{background:#637782;box-shadow:none}.vertical-label{position:absolute;right:3%;top:45%;font-size:7px;letter-spacing:3px;writing-mode:vertical-rl;color:#b9d0d680}.floating-nav{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:10;display:flex;align-items:center;gap:4px;border:1px solid #c7e5eb30;background:#12252cbd;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);padding:7px;border-radius:50px;box-shadow:0 10px 40px #0004}.floating-nav a{font-size:10px;white-space:nowrap;padding:12px 21px;border-radius:30px;transition:background .25s,color .25s}.floating-nav a:hover,.floating-nav a.active{background:#d6ebf015}.floating-nav .nav-book{background:#d9eef2;color:#0d2832;font-weight:600;display:flex;gap:18px;align-items:center;margin-left:3px}.floating-nav .nav-book:hover{background:white}.nav-book span{font-size:15px}.gallery-section{padding:100px 6% 100px;max-width:1800px;margin:auto}.gallery-heading{text-align:center;margin-bottom:65px}.gallery-heading .eyebrow{color:#86a8b6;font-size:8px}.gallery-heading h2{font-size:clamp(40px,5.4vw,78px);font-weight:400;letter-spacing:-2.5px;line-height:1.15;margin-top:25px}.gallery-heading h2 em{font-family:'Playfair Display',Georgia,serif;color:var(--ice);font-weight:400}.gallery-heading>p:last-child{font-size:12px;line-height:1.9;color:#8ca5b0;margin-top:24px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.gallery-photo{background:none;padding:0;position:relative;border:0;overflow:hidden;border-radius:3px;text-align:left;color:white;isolation:isolate}.gallery-photo img{width:100%;height:auto;object-fit:contain;transition:transform 1s,filter 1s;filter:saturate(.8)}.gallery-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#061218b3);pointer-events:none}.gallery-photo>span{position:absolute;left:23px;right:23px;bottom:22px;font-size:11px;letter-spacing:.1px;z-index:1;display:flex;justify-content:space-between}.gallery-photo:hover img{transform:scale(1.06);filter:saturate(1)}.gallery-photo:before{content:'↗';position:absolute;top:18px;right:18px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#ffffff1a;border:1px solid #fff5;backdrop-filter:blur(10px);z-index:1;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.gallery-photo:hover:before{opacity:1;transform:none}[hidden]{display:none!important}.gallery-more{text-align:center;margin-top:50px}.outline-pill{border:1px solid #7694a152;color:#c5d9e1;border-radius:40px;background:transparent;padding:15px 24px;font-size:10px;display:inline-flex;align-items:center;gap:30px;transition:background .3s}.outline-pill span{font-size:20px;line-height:1}.outline-pill:hover{background:#b9e2f014}.contact{position:relative;text-align:center;isolation:isolate;overflow:hidden;padding:110px 24px 120px}.contact>img,.contact-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.contact>img{object-fit:cover;object-position:center 48%;filter:saturate(.25)}.contact-overlay{z-index:-1;background:linear-gradient(#081319,#081319a6 35%,#081319bc 75%,#081319)}.contact .eyebrow{font-size:8px;color:#b0c9d2}.contact h2{font-size:clamp(65px,8vw,120px);line-height:1.05;font-weight:400;letter-spacing:-4px;margin-top:30px}.contact h2 em{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:var(--ice)}.big-phone{display:inline-flex;font-size:clamp(24px,3.3vw,45px);letter-spacing:-1px;gap:27px;align-items:center;margin-top:45px;padding-bottom:12px;border-bottom:1px solid #bddde060;transition:color .3s}.big-phone:hover{color:var(--ice)}.big-phone>span{font-size:28px}.contact-content>p:not(.eyebrow){font-size:10px;color:#9fb9c4;margin-top:17px}.instagram{display:inline-flex;align-items:center;gap:11px;font-size:10px;color:#c3d8e0;margin-top:30px}.instagram>span{margin-left:7px;font-size:17px}.instagram:hover{color:white}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 6% 110px;font-size:8px;letter-spacing:.3px;color:#748f9c;border-top:1px solid #aeced318}footer a{color:#bed2dc}.hero-enter{animation:enter 1.3s cubic-bezier(.2,.65,.3,1) both}.serif.hero-enter{animation-delay:.15s}.mountain-title.hero-enter{animation-delay:.3s}.hero-subtitle.hero-enter{animation-delay:.5s}.pill.hero-enter{animation-delay:.65s}.reveal{opacity:0;transform:translateY(35px);transition:opacity .9s,transform .9s}.reveal.visible{opacity:1;transform:none}.photo-grid .reveal:nth-child(3n+2){transition-delay:.1s}.photo-grid .reveal:nth-child(3n){transition-delay:.2s}.skip{position:fixed;top:-100px;left:20px;background:white;color:black;padding:12px;z-index:30}.skip:focus{top:10px}:focus-visible{outline:2px solid #b7e6f2;outline-offset:5px}dialog{border:1px solid #7398a43b;background:#0b1c23;color:var(--white);padding:12px;max-width:94vw;max-height:94svh;overflow:auto;border-radius:5px}dialog::backdrop{background:#030c12ec;backdrop-filter:blur(12px)}dialog>img{max-height:75svh;max-width:85vw;object-fit:contain;margin:auto}.close{position:absolute;top:20px;right:20px;background:#102831c9;backdrop-filter:blur(10px);color:white;border:1px solid #fff4;border-radius:50%;width:35px;height:35px;font-size:24px;z-index:2}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:14px;text-align:center}.lightbox-bar button{width:40px;height:35px;border:1px solid #7192a05c;background:transparent;color:white;font-size:18px;border-radius:20px}.lightbox-bar p{font-size:12px}.lightbox-bar span{display:block;margin-top:5px;font-size:9px;letter-spacing:2px;color:#88a8b7}@keyframes enter{from{opacity:0;transform:translateY(25px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes landscape{from{transform:scale(1.12)}to{transform:scale(1)}}@keyframes star-turn{to{transform:rotate(360deg)}}@media(min-width:1800px){.hero-content{max-width:1700px}.mountain-title{font-size:330px;letter-spacing:-25px}}@media(max-width:900px){.photo-grid{gap:18px}.gallery-photo>span{left:15px;bottom:17px;font-size:10px}.hero{min-height:790px}.hero .eyebrow{font-size:7px;letter-spacing:2px}.title-star{margin-left:10px}.gallery-section{padding-top:80px}}@media(max-width:600px){.site-header{top:25px;left:6%;right:6%}.logo svg{width:31px}.logo{gap:8px}.logo>span{font-size:6px;letter-spacing:1.5px}.logo b{font-size:17px;letter-spacing:5px}.header-phone{font-size:9px;gap:8px}.header-phone>span{width:29px;height:29px;font-size:14px}.hero{min-height:690px;max-height:1000px}.hero-content{padding:120px 20px 130px}.hero .eyebrow{font-size:6px;letter-spacing:1.2px;margin-bottom:40px}.eyebrow span{margin:0 6px;font-size:13px}.serif{font-size:37px;letter-spacing:-1.5px}.mountain-title{font-size:21.5vw;letter-spacing:-1.6vw;line-height:1.2;left:-1vw}.title-star{font-size:18px;top:2%;margin-left:0}.hero-subtitle{font-size:10px;letter-spacing:1.5px;margin-top:17px}.pill{font-size:10px;margin-top:30px;gap:24px;padding-left:21px}.pill>span{width:31px;height:31px;font-size:16px}.hero-foot{bottom:110px;font-size:6px;letter-spacing:.9px;left:6%;right:4%;gap:10px}.hero-foot button{font-size:6px;letter-spacing:.8px;padding:8px}.vertical-label{font-size:5px;right:3%;letter-spacing:2px;top:42%}.floating-nav{bottom:18px;gap:0;padding:6px;width:max-content;max-width:95%}.floating-nav a{padding:12px 17px;font-size:9px}.floating-nav .nav-book{gap:14px;padding:11px 17px}.gallery-section{padding:65px 20px}.gallery-heading{margin-bottom:35px}.gallery-heading .eyebrow{font-size:6px;letter-spacing:2px}.gallery-heading h2{font-size:44px;letter-spacing:-1.5px;margin-top:22px}.gallery-heading>p:last-child{font-size:10px;margin-top:20px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gallery-photo img{height:auto}.gallery-photo>span{font-size:8px;left:11px;right:11px;bottom:13px}.gallery-photo:before{opacity:1;transform:none;width:24px;height:24px;top:10px;right:10px;font-size:12px}.gallery-more{margin-top:35px}.outline-pill{font-size:9px;padding:13px 20px;gap:20px}.contact{padding:70px 20px 80px}.contact .eyebrow{font-size:6px;letter-spacing:1.8px}.contact h2{font-size:69px;letter-spacing:-3px;margin-top:25px}.big-phone{font-size:26px;gap:20px;margin-top:35px}.big-phone>span{font-size:21px}.contact-content>p:not(.eyebrow){font-size:8px}.instagram{font-size:9px;margin-top:25px}footer{padding:25px 25px 110px;font-size:7px;flex-wrap:wrap;justify-content:space-between}footer>span:last-child{width:100%;font-size:6px;color:#4d6b7a}dialog{padding:9px}dialog>img{max-width:87vw;max-height:72svh}.photo-grid .reveal:nth-child(3n+2),.photo-grid .reveal:nth-child(3n){transition-delay:0}.photo-grid .reveal:nth-child(even){transition-delay:.1s}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-enter,.hero-photo,.title-star{animation:none}.reveal{opacity:1;transform:none;transition:none}*,*:after,*:before{transition:none!important}}

/* Full photographs, clean rows and separate captions. */
.photo-grid{gap:30px 24px;align-items:start}.gallery-photo{background:#102129;border:1px solid #d4edf00e;border-radius:9px;overflow:hidden;transition:border-color .3s}.gallery-photo img{height:auto;aspect-ratio:auto;object-fit:contain;filter:none}.gallery-photo:after{display:none}.gallery-photo>span{position:static;display:block;padding:17px 18px;color:#c5d9e2;font-size:11px;line-height:1.6;min-height:52px}.gallery-photo:hover{border-color:#a5dce64a}.gallery-photo:hover img{transform:none;filter:brightness(1.06)}.gallery-photo:before{opacity:1;transform:none;background:#0b202b7a;top:14px;right:14px}.gallery-photo:nth-child(n){margin-top:0}@media(min-width:601px) and (max-width:1000px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 20px}}@media(max-width:600px){.photo-grid{grid-template-columns:minmax(0,1fr);gap:24px;max-width:460px;margin-inline:auto}.gallery-photo>span{font-size:11px;padding:15px 17px;min-height:0}.gallery-photo:before{width:32px;height:32px;font-size:16px;top:15px;right:15px}.photo-grid .reveal:nth-child(n){transition-delay:0}}

/* Uniform gallery frames on every screen size. */
.photo-grid{align-items:stretch}.gallery-photo{display:flex;flex-direction:column;height:100%}.gallery-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;flex:none}.gallery-photo>span{display:flex;align-items:center;height:54px;min-height:54px;padding:14px 18px;flex:none}@media(max-width:600px){.gallery-photo img{aspect-ratio:4/5;object-fit:cover}.gallery-photo>span{height:50px;min-height:50px;padding:12px 17px}}

.contact-links{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin-top:30px}.contact-links .instagram{margin-top:0}.map-link{display:inline-flex;align-items:center;gap:10px;border:1px solid #c1e5ee55;background:#c1e5ee0d;backdrop-filter:blur(10px);padding:13px 21px;border-radius:35px;font-size:11px;color:#e5f3f7;transition:background .3s}.map-link>span{font-size:17px;margin-left:10px}.map-link:hover{background:#c1e5ee20}@media(max-width:600px){.contact-links{flex-direction:column;gap:24px;margin-top:27px}.map-link{font-size:11px;padding:12px 22px}}

.contact-content>.reservation-note{font-size:12px;line-height:1.9;margin-top:20px;color:#b5cbd4}.reservation-note a{color:#e5f3f7;text-decoration:underline;text-underline-offset:3px}.whatsapp{display:inline-flex;align-items:center;gap:11px;font-size:11px;border:1px solid #a6dcd65c;background:#b5e7d912;padding:13px 21px;border-radius:35px;color:#d2f0e7;transition:background .3s}.whatsapp>span{font-size:17px;margin-left:8px}.whatsapp:hover{background:#b5e7d92b}@media(max-width:600px){.contact-content>.reservation-note{font-size:10px;line-height:1.9}.contact-links{gap:20px}}

.stay-info{max-width:1400px;margin:auto;padding:0 6% 90px;display:grid;grid-template-columns:1.2fr 1fr;gap:9%;color:#a5bdc7}.stay-info .eyebrow{font-size:8px;color:#87a8b7}.stay-info h2{font-size:clamp(28px,3vw,43px);font-weight:400;line-height:1.25;letter-spacing:-1px;margin:18px 0 22px;color:#edf5f6}.stay-info h2 em{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:#c1e5ee}.stay-info p{font-size:12px;line-height:1.9;margin-top:15px}.stay-features{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:23px 0 0}.stay-features li{font-size:9px;border:1px solid #c1e5ee26;border-radius:25px;padding:7px 12px;color:#bcd5df}.stay-answers{align-self:center}.stay-answers details{border-bottom:1px solid #c1e5ee24;padding:20px 0}.stay-answers summary{font-size:12px;color:#d7e8ee;cursor:pointer;line-height:1.7}.stay-answers p{font-size:11px}.stay-answers a{text-decoration:underline;text-underline-offset:3px;color:#d7e8ee}@media(max-width:700px){.stay-info{grid-template-columns:1fr;gap:28px;padding:0 24px 65px}.stay-info h2{font-size:34px}.stay-info p{font-size:11px}.stay-answers summary{font-size:11px}}

.ui-icon{width:20px;height:20px;flex:0 0 auto;display:inline-block;vertical-align:middle}.logo>.ui-icon{width:43px;height:43px;stroke-width:1.4}.eyebrow .ui-icon{width:16px;height:16px}.title-star .ui-icon{width:1em;height:1em}.header-phone>span,.pill>span,.nav-book>span{display:inline-flex;align-items:center;justify-content:center}.header-phone .ui-icon,.pill .ui-icon{width:17px;height:17px}.gallery-photo>span{justify-content:space-between;gap:10px}.gallery-photo>span .ui-icon{width:16px;height:16px}.gallery-photo:before{display:none}.floating-nav a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.floating-nav .ui-icon{width:17px;height:17px}.floating-nav .nav-book>span{display:none}.big-phone>span .ui-icon{width:25px;height:25px}.close,.lightbox-bar button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.outline-pill .ui-icon{width:18px;height:18px}footer>a{display:inline-flex;align-items:center;gap:6px}footer .ui-icon{width:13px;height:13px}.floating-nav{bottom:max(18px,env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}@media(max-width:600px){.logo>.ui-icon{width:33px;height:33px}.floating-nav a{padding:10px 13px;font-size:9px;gap:6px}.floating-nav .nav-book{padding:10px 13px;gap:7px}.floating-nav .ui-icon{width:17px;height:17px}.header-phone{min-height:44px}.header-phone>span{width:32px;height:32px}.title-star .ui-icon{width:20px;height:20px}.gallery-photo>span .ui-icon{width:17px;height:17px}.contact-links>a{min-height:44px}.hero .serif{font-size:38px}}@media(max-width:360px){.floating-nav a{padding:10px;font-size:8px}.floating-nav .nav-book{padding:10px}}

/* Comfortable reading and touch targets on phones. */
@media(max-width:600px){
 body{font-size:16px;line-height:1.6}.site-header{top:20px;left:20px;right:20px;gap:12px}.logo>span{font-size:8px;letter-spacing:1px}.logo b{font-size:20px;letter-spacing:4px}.logo>.ui-icon{width:36px;height:36px}.header-phone{font-size:12px;font-weight:500;gap:6px;white-space:nowrap}.header-phone>span{width:30px;height:30px}
 .hero{min-height:740px}.hero-content{padding:130px 22px 170px}.hero .eyebrow{font-size:9px;letter-spacing:1px;max-width:320px;margin:0 auto 28px;line-height:1.9}.hero .eyebrow>span{display:none}.hero .serif{font-size:43px}.hero-subtitle{font-size:15px;line-height:1.7;letter-spacing:.4px;max-width:290px;margin:18px auto 0}.pill{font-size:14px;min-height:52px;padding:9px 10px 9px 23px;gap:26px;margin-top:26px}.pill>span{width:35px;height:35px}.hero-foot{bottom:116px;left:22px;right:22px;align-items:center}.hero-foot>span{font-size:9px;letter-spacing:.6px;max-width:160px;line-height:1.7}.hero-foot button{font-size:9px;letter-spacing:.4px;min-height:44px;padding:8px 0}.vertical-label{display:none}
 .floating-nav{width:calc(100% - 24px);max-width:420px;justify-content:space-between;bottom:max(14px,env(safe-area-inset-bottom));padding:7px;gap:2px}.floating-nav a{font-size:12px;padding:9px 10px;min-height:48px;gap:5px;line-height:1.2}.floating-nav .nav-book{font-size:12px;padding:9px 12px;min-height:48px;gap:6px;margin-left:0}.floating-nav .ui-icon{width:18px;height:18px}.floating-nav a:not(.nav-book){flex:1}.floating-nav .nav-book{flex:1.25}
 .gallery-section{padding:65px 22px}.gallery-heading{margin-bottom:34px}.gallery-heading .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.8}.gallery-heading h2{font-size:43px;line-height:1.2}.gallery-heading>p:last-child{font-size:16px;line-height:1.8}.gallery-photo>span{font-size:14px;padding:15px 17px;height:58px;min-height:58px}.gallery-photo>span .ui-icon{width:20px;height:20px}.outline-pill{font-size:14px;line-height:1.5;min-height:52px;padding:13px 21px;gap:20px}
 .stay-info{padding:0 24px 65px;gap:24px}.stay-info .eyebrow{font-size:10px;letter-spacing:1.3px}.stay-info h2{font-size:34px;line-height:1.25}.stay-info p{font-size:16px;line-height:1.85}.stay-features{gap:9px}.stay-features li{font-size:12px;padding:9px 13px}.stay-answers details{padding:20px 0}.stay-answers summary{font-size:16px;line-height:1.6;min-height:44px}.stay-answers p{font-size:15px;line-height:1.8}
 .contact{padding:65px 22px 70px}.contact .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.8}.contact h2{font-size:66px}.big-phone{font-size:29px;gap:16px;min-height:55px;margin-top:30px}.contact-content>.reservation-note{font-size:16px;line-height:1.85;margin-top:22px}.contact-content>.reservation-note br{display:none}.contact-links{gap:17px;margin-top:28px;width:100%}.whatsapp,.map-link{justify-content:center;font-size:16px;padding:14px 24px;min-height:54px;width:100%;max-width:320px}.whatsapp .ui-icon,.map-link .ui-icon{width:21px;height:21px}.instagram{font-size:14px;line-height:1.7;min-height:48px}.contact-links .instagram{margin-top:0}
 footer{font-size:11px;line-height:1.8;padding:28px 24px 120px;gap:15px}footer>a{min-height:44px;font-size:12px}footer>span:last-child{font-size:10px}.lightbox-bar p{font-size:15px;line-height:1.5}.lightbox-bar span{font-size:11px}.lightbox-bar button{min-width:48px;min-height:48px}.close{width:46px;height:46px;top:15px;right:15px}
}
@media(max-width:370px){.site-header{left:15px;right:15px;gap:8px}.header-phone{font-size:11px}.header-phone>span{display:none}.logo b{font-size:18px}.logo>span{font-size:7px}.floating-nav a{font-size:11px;padding:10px 7px}.floating-nav .nav-book{font-size:11px;padding:10px 9px}.floating-nav .ui-icon{width:16px;height:16px}.hero .serif{font-size:38px}.hero-subtitle{font-size:14px}.big-phone{font-size:26px}}

@media(max-width:600px){.floating-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.floating-nav a,.floating-nav .nav-book{flex-direction:column;gap:4px;padding:7px 5px;min-width:0;min-height:56px;font-size:12px}.floating-nav .ui-icon{width:19px;height:19px}.hero-foot{bottom:125px}.floating-nav .nav-book>span{display:none}}

/* Content is visible even when scripts or scroll observers fail. */
.reveal,.reveal.visible{opacity:1;transform:none;transition:none}.reveal.visible{animation:content-arrive .65s ease-out both}.gallery-photo{min-width:0}.gallery-photo img{background:#102129}.hero-enter{animation-fill-mode:backwards}@keyframes content-arrive{from{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.reveal.visible{animation:none}}

/* Snow begins with the first CSS paint, independently of script timing. */
.snow-layer{overflow:hidden;contain:layout style paint}.snow-layer>i{position:absolute;top:-12vh;left:var(--x);width:var(--size);height:var(--size);border-radius:50%;background:#edf8ff;opacity:var(--alpha);animation:snow-drift var(--duration) linear var(--delay) infinite;pointer-events:none}.snow-paused>i{animation-play-state:paused}@keyframes snow-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--drift),124vh,0)}}@media(max-width:600px){.snow-layer>i:nth-child(n+29){display:none}}@media(prefers-reduced-motion:reduce){.snow-layer:not([data-user-enabled="true"]){display:none}.snow-layer[data-user-enabled="true"]>i{animation:snow-drift var(--duration) linear var(--delay) infinite}}

.contact-content>p.reservation-note{font-size:15px;line-height:1.85;color:#bfd2db;max-width:420px;margin:20px auto 0}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:35px 6% 125px;text-align:left}.footer-brand{font-size:15px;line-height:1.7;color:#c3d6df;letter-spacing:.2px}.footer-brand>p{font-size:11px;color:#819ca9;margin-top:6px;line-height:1.8}.site-footer .back-to-top{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;font-size:12px;padding:8px 0;color:#bdd3dd}.site-footer .back-to-top .ui-icon{width:17px;height:17px}@media(max-width:600px){.contact-content>p.reservation-note{font-size:16px;line-height:1.85;max-width:330px;margin:20px auto 0}.contact-content>p.reservation-note br{display:block}.site-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 22px calc(120px + env(safe-area-inset-bottom));gap:15px}.site-footer .footer-brand{font-size:15px}.site-footer .footer-brand>p{font-size:12px;color:#91aab6;margin-top:7px}.site-footer .back-to-top{font-size:13px;min-height:44px;padding:8px 18px;gap:10px;border:1px solid #c1e5ee20;border-radius:30px}}

.camera-shortcut{text-align:center;margin-top:36px}.camera-shortcut a{display:inline-flex;align-items:center;gap:12px;font-size:13px;color:#bddbe6;min-height:44px;text-underline-offset:5px}.camera-shortcut a:hover{text-decoration:underline}.camera-shortcut .ui-icon{width:17px;height:17px}.cameras-section{max-width:1500px;margin:0 auto;padding:0 6% 100px}.cameras-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:36px}.cameras-heading .eyebrow{font-size:9px;color:#91aebb}.cameras-heading h2{font-size:clamp(32px,4vw,56px);line-height:1.2;letter-spacing:-1.5px;font-weight:400;margin-top:17px}.cameras-heading h2 em{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:#c1e5ee}.cameras-heading>p{max-width:350px;color:#9fb8c4;font-size:13px;line-height:1.9}.cameras-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.camera-card{min-width:0;border:1px solid #bedde824;border-radius:12px;overflow:hidden;background:#0f2028}.camera-screen{aspect-ratio:16/9;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 30% 20%,#27434e,#0b1820 75%);overflow:hidden}.camera-screen video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.camera-start{background:none;border:0;color:#c1e1eb;width:100%;height:100%;position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.camera-start>svg{width:74px;height:56px;color:#83a6b5}.camera-play{border:1px solid #c1e5ee66;background:#c1e5ee12;border-radius:35px;padding:11px 19px;display:flex;align-items:center;gap:10px;font-size:14px;transition:background .3s}.camera-start:hover .camera-play{background:#c1e5ee2a}.camera-play .ui-icon{width:18px;height:18px}.camera-status{position:absolute;left:12px;right:12px;bottom:14px;text-align:center;font-size:12px;line-height:1.7;color:#d8eaf1;padding:9px;background:#081319e6;border-radius:6px;pointer-events:none}.camera-description{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px}.camera-description .eyebrow{font-size:8px;color:#86a8b9;letter-spacing:1.5px}.camera-description h3{font-size:20px;font-weight:500;line-height:1.5;letter-spacing:-.4px;margin:7px 0}.camera-description p:not(.eyebrow){font-size:12px;line-height:1.6;color:#90aeba}.camera-description>a{display:inline-flex;align-items:center;gap:8px;font-size:11px;line-height:1.6;min-height:44px;color:#c3dde8;white-space:nowrap}.camera-description>a .ui-icon{width:16px;height:16px}.camera-source,.camera-noscript{font-size:11px;line-height:1.9;color:#8da8b6;margin-top:21px;max-width:850px}.camera-source a{text-decoration:underline;text-underline-offset:3px;color:#b9d1dd}@media(max-width:900px){.camera-description{align-items:flex-start;flex-direction:column;gap:8px}.cameras-heading{display:block}.cameras-heading>p{max-width:650px;margin-top:22px}}@media(max-width:600px){.cameras-section{padding:0 22px 70px}.cameras-heading{margin-bottom:28px}.cameras-heading .eyebrow{font-size:10px;letter-spacing:1px}.cameras-heading h2{font-size:36px;line-height:1.25;letter-spacing:-1px}.cameras-heading>p{font-size:16px;line-height:1.85}.cameras-grid{grid-template-columns:1fr;gap:22px}.camera-description{padding:20px;gap:8px}.camera-description h3{font-size:21px}.camera-description p:not(.eyebrow){font-size:14px}.camera-description>a{font-size:14px}.camera-source,.camera-noscript{font-size:13px;line-height:1.8}.camera-status{font-size:13px}.camera-play{font-size:16px;min-height:50px}.camera-shortcut a{font-size:15px}.camera-start>svg{width:60px;height:45px}.camera-start{gap:14px}}

.camera-screen[data-state="error"] .camera-start>svg{display:none}.camera-screen[data-state="error"] .camera-start{justify-content:flex-start;padding-top:18px}.camera-screen[data-state="error"] .camera-status{font-size:12px;line-height:1.5;bottom:12px}
