:root{--navy:#092d4c;--blue:#0c4771;--gold:#d7a329;--sand:#f5f0e8;--ink:#163044}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:DM Sans,sans-serif}button,a{font:inherit}button{cursor:pointer}img{object-fit:cover;width:100%;display:block}.header{z-index:10;color:#fff;border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;width:100%;height:88px;padding:0 5vw;display:flex;position:absolute}.brand{background:#fff;border:0;border-radius:0 0 14px 14px;align-self:flex-start;padding:10px 13px}.brand img{object-fit:contain;width:82px;height:72px}.header nav{gap:32px;display:flex}.header nav button,.langs button{color:inherit;letter-spacing:.08em;background:0 0;border:0;font-size:13px}.header nav button:hover{color:#f2bd45}.actions{align-items:center;gap:22px;display:flex}.langs{align-items:center;gap:8px;display:flex}.langs i{background:#fff5;width:1px;height:14px}.langs button{opacity:.55;padding:0}.langs button.active{opacity:1}.outline{color:#fff;background:#ffffff12;border:1px solid #fff8;padding:11px 18px}.menu{color:#fff;background:0 0;border:0;display:none}.hero{color:#fff;background-position:50%;background-size:cover;align-items:center;height:100svh;min-height:680px;padding:100px 10vw 40px;display:flex;position:relative}.heroContent{max-width:720px}.heroContent>span,.kicker{letter-spacing:.25em;color:var(--gold);font-size:12px;font-weight:600}h1,h2,h3{font-family:Playfair Display,serif;font-weight:500}h1{margin:24px 0;font-size:clamp(53px,6.5vw,96px);line-height:.99}h1 em{font-style:normal}.hero p{max-width:560px;font-size:18px;font-weight:300;line-height:1.7}.gold{background:var(--gold);color:#fff;border:0;align-items:center;gap:12px;margin-top:20px;padding:15px 22px;display:inline-flex}.scroll{color:#fff;letter-spacing:.25em;background:0 0;border:0;align-items:center;gap:10px;font-size:10px;display:flex;position:absolute;bottom:42px;right:5vw}.scroll svg{animation:1.8s infinite bob}@keyframes bob{50%{transform:translateY(7px)}}.section{padding:120px 8vw}.about,.rooms{grid-template-columns:1fr 1fr;align-items:center;gap:9vw;display:grid}.aboutImg{position:relative}.aboutImg img{height:620px}.sunMark{background:var(--gold);color:#fff;border-radius:50%;place-items:center;width:80px;height:80px;display:grid;position:absolute;bottom:38px;right:-35px}.copy h2,.sectionHead h2{margin:20px 0 28px;font-size:clamp(40px,4.6vw,66px);line-height:1.07}.copy>p{color:#577080;font-size:17px;line-height:1.9}.stats{border-top:1px solid #d9dfdf;gap:8%;margin-top:45px;padding-top:28px;display:flex}.stats div{flex-direction:column;display:flex}.stats b{color:var(--navy);font-family:Playfair Display;font-size:26px}.stats span{color:#738490;margin-top:4px;font-size:12px}.rooms{background:var(--sand)}.roomPhoto{position:relative}.roomPhoto img{height:570px}.roomPhoto>span{letter-spacing:.2em;background:#fff;padding:16px 22px;font-size:11px;position:absolute;bottom:0;left:0}.features{grid-template-columns:1fr 1fr;gap:18px;margin-top:38px;display:grid}.features div{align-items:center;gap:12px;font-size:14px;display:flex}.features svg{color:var(--gold);width:20px}.experience{color:#fff;background-position:50%;background-size:cover;align-items:flex-end;min-height:720px;padding:110px 10vw;display:flex}.experience>div{max-width:670px}.experience h2{margin:20px 0;font-size:clamp(46px,5vw,70px);line-height:1.06}.experience p{max-width:540px;font-size:17px;line-height:1.8}.light{color:#f5be3c}.sectionHead{text-align:center;margin-bottom:55px}.gallery .grid{grid-template-rows:280px 280px;grid-template-columns:1.3fr .7fr 1fr;gap:14px;display:grid}.grid img{height:100%}.g1{grid-row:span 2}.g4{grid-column:span 2}.gallery small{text-align:center;color:#89959b;margin-top:16px;display:block}.contact{background:var(--navy);color:#fff;grid-template-columns:1fr 1fr;min-height:570px;display:grid}.contactInfo{padding:100px 8vw}.contact h2{margin:20px 0 38px;font-size:clamp(46px,5vw,70px)}.contactRows p{color:#d6e0e7;align-items:flex-start;gap:16px;margin:20px 0;display:flex}.contactRows svg{width:19px;color:var(--gold)}.contactInfo>a{color:#fff;border-bottom:1px solid var(--gold);gap:8px;margin-top:28px;padding-bottom:7px;text-decoration:none;display:inline-flex}.mapArt{color:var(--navy);text-align:center;letter-spacing:.15em;background:#e7e0d2;justify-content:center;align-items:center;font-size:12px;display:flex;position:relative;overflow:hidden}.mapArt>svg{z-index:2;color:var(--gold);width:48px;height:48px}.mapArt>span{z-index:2;margin-left:10px}.roads{border:4px solid #c9c0b0;border-radius:50%;width:140%;height:40px;position:absolute;transform:rotate(-20deg)}.r2{width:100%;transform:rotate(55deg)}.r3{width:70%;height:500px;transform:rotate(10deg)}footer{justify-content:space-between;align-items:center;gap:25px;min-height:145px;padding:25px 5vw;display:flex}footer>img{object-fit:contain;width:110px;height:85px}footer p{color:#71818b;font-size:12px}footer>div{align-items:center;gap:20px;display:flex}footer button{color:#587080;background:0 0;border:0;font-size:12px}footer a{color:var(--navy)}.modal{z-index:100;background:#071d2dd9;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal article{background:#fff;max-width:620px;padding:55px;position:relative}.modal article>svg{color:var(--gold)}.modal h3{margin:16px 0;font-size:34px}.modal p{color:#5e7280;line-height:1.8}.modalX{background:0 0;border:0;position:absolute;top:18px;right:18px}.mobileNav{display:none}@media (max-width:900px){.header{height:76px;padding:0 20px}.brand img{width:62px;height:58px}.header nav,.outline{display:none}.menu{display:block}.mobileNav{z-index:9;background:#fff;flex-direction:column;padding:28px;display:flex;position:fixed;inset:76px 0 auto;box-shadow:0 12px 30px #092d4c22}.mobileNav button{text-align:left;color:var(--navy);background:#fff;border:0;border-bottom:1px solid #eee;padding:15px}.mobileNav .gold{background:var(--gold);color:#fff;justify-content:center}.hero{background-position:60%;min-height:650px;padding:105px 25px 45px}.hero p{font-size:16px}.scroll{display:none}.section{padding:85px 24px}.about,.rooms{grid-template-columns:1fr;gap:55px}.aboutImg img,.roomPhoto img{height:460px}.about .copy{grid-row:1}.sunMark{right:15px}.stats{justify-content:space-between}.rooms{gap:40px}.experience{min-height:620px;padding:80px 24px}.gallery .grid{grid-template-rows:260px 200px 230px;grid-template-columns:1fr 1fr}.g1{grid-row:span 2}.g4{grid-column:span 2}.contact{grid-template-columns:1fr}.mapArt{min-height:350px}footer{text-align:center;flex-direction:column;padding:40px 20px}footer>div{flex-wrap:wrap;justify-content:center}.modal article{padding:45px 28px}}.roomThumbs{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:9px;display:grid}.roomThumbs img{height:130px}.roomVisuals{min-width:0}.contactRows a{color:#d6e0e7;align-items:center;gap:16px;margin:20px 0;text-decoration:none;display:flex}.contactRows a:hover{color:#fff}.directions{display:inline-flex!important}.mapFrame{background:#e7e0d2;min-height:570px}.mapFrame iframe{filter:saturate(.75);border:0;width:100%;height:100%;min-height:570px}.nearby{background:#f8f5ef}.placeGrid{grid-template-columns:repeat(2,1fr);gap:12px;max-width:1100px;margin:auto;display:grid}.placeGrid>a{color:var(--ink);background:#fff;border:1px solid #e7e0d6;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;padding:20px;text-decoration:none;transition:all .2s;display:grid}.placeGrid>a:hover{border-color:var(--gold);transform:translateY(-2px)}.placeIcon{width:42px;height:42px;color:var(--gold);background:#f7ead0;border-radius:50%;place-items:center;display:grid}.placeIcon svg{width:20px}.placeGrid small{color:#87939a;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px;font-size:10px;display:block}.placeGrid b{font-size:15px}.placeGrid strong{color:var(--blue);white-space:nowrap;font-family:Playfair Display;font-size:20px}.timeNote{text-align:center;color:#7d8b92;margin:26px 0 0;font-size:12px}@media (min-width:901px){.gallery .grid{grid-template-rows:280px 280px 280px}.gallery .g5{grid-column:span 2}}.mapFrame{position:relative}.hotelPin{z-index:2;filter:drop-shadow(0 5px 8px #092d4c55);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-72%)}.hotelPin:after{content:"";border:5px solid var(--gold);background:#fff;border-radius:50%;width:18px;height:18px;margin-top:-4px}.hotelPin img{object-fit:contain;border:3px solid var(--gold);background:#fff;border-radius:12px;width:78px;height:64px;padding:4px}.hotelPin span{background:var(--navy);color:#fff;letter-spacing:.08em;white-space:nowrap;border-radius:8px;margin-top:-3px;padding:5px 8px;font-size:9px}.placeGrid>div{color:var(--ink);background:#fff;border:1px solid #e7e0d6;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;padding:20px;display:grid}.modal article{max-width:760px;max-height:88vh;overflow:auto}.modal article>p{white-space:pre-line}.features{grid-template-columns:1fr 1fr}@media (max-width:700px){.placeGrid{grid-template-columns:1fr}.placeGrid>div{padding:16px}.mapFrame,.mapFrame iframe{min-height:380px}}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px;display:grid}.stats div{text-align:center;align-items:center;min-width:0}.stats span{justify-content:center;align-items:flex-start;min-height:33px;line-height:1.35;display:flex}.stats b{text-align:center;width:100%}.about .copy{min-width:0}@media (max-width:480px){h1{font-size:47px}.aboutImg img,.roomPhoto img{height:390px}.features{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 10px}.stats b{font-size:22px}.stats span{min-height:30px;font-size:11px}.gallery .grid{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.gallery .grid img{scroll-snap-align:center;min-width:82vw;height:400px}.contactInfo{padding:80px 24px}}
