:root{
  --navy:#091722;--navy-2:#102837;--cream:#f5f1e8;--paper:#fbfaf7;--gold:#c7a86b;--gold-light:#e0c892;--ink:#14212a;--muted:#66717a;--line:rgba(20,33,42,.14);--white:#fff;
  --container:min(1180px,calc(100% - 48px));--serif:'Playfair Display',Georgia,serif;--sans:'Manrope',Arial,sans-serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.container{width:var(--container);margin-inline:auto}.site-header{height:84px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:36px;position:absolute;top:0;left:0;right:0;z-index:10;color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--gold);font-family:var(--serif);font-size:22px;color:var(--gold)}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{letter-spacing:.18em;font-size:13px}.brand-copy small{font-size:9px;letter-spacing:.27em;margin-top:5px;color:rgba(255,255,255,.7)}.main-nav{display:flex;gap:28px;font-size:13px}.main-nav a{opacity:.82;transition:.2s}.main-nav a:hover{opacity:1;color:var(--gold-light)}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:24px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700;cursor:pointer;transition:.25s}.btn-gold{background:var(--gold);color:#0b1821}.btn-gold:hover{background:var(--gold-light);transform:translateY(-1px)}.btn-outline{border-color:var(--ink);background:transparent}.header-cta{min-height:40px;padding-inline:18px}.hero{min-height:790px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--navy)}.hero-media{position:absolute;inset:0;background:linear-gradient(105deg,rgba(5,16,24,.2),rgba(5,16,24,.5)),url('https://images.unsplash.com/photo-1566665797739-1674de7a421a?auto=format&fit=crop&w=1800&q=85') center/cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,17,25,.78) 0%,rgba(6,17,25,.46) 46%,rgba(6,17,25,.12) 100%)}.hero-content{position:relative;z-index:2;padding-top:74px}.eyebrow,.section-kicker{display:block;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;color:#9b7f4c;margin-bottom:24px}.eyebrow{color:var(--gold-light)}.hero h1,.section h2,.cta-section h2{font-family:var(--serif);font-weight:500;line-height:1.05;margin:0}.hero h1{font-size:clamp(52px,6.3vw,92px);max-width:840px;letter-spacing:-.025em}.hero h1 em,.section h2 em,.cta-section h2 em{color:var(--gold-light);font-weight:500}.hero p{max-width:610px;font-size:17px;color:rgba(255,255,255,.78);margin:28px 0 34px}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.text-link span{margin-left:8px}.hero-side-note{position:absolute;z-index:2;right:28px;bottom:110px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.3em;color:rgba(255,255,255,.48)}.booking-shell{position:fixed;top:110px;right:0;width:min(340px,calc(100vw - 40px));z-index:20;margin:0;background:linear-gradient(180deg,#7b1033 0%,#520b26 100%);color:#fff;border-radius:32px 0 0 32px;box-shadow:0 28px 90px rgba(0,0,0,.32);overflow:hidden;transition:transform .35s ease,box-shadow .3s ease;animation:slideInPanel .45s ease;}.booking-shell::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top left,rgba(255,255,255,.12),transparent 42%),linear-gradient(180deg,rgba(255,255,255,.08),transparent 80%);pointer-events:none;}.booking-shell.collapsed{transform:translateX(calc(100% - 72px));}.booking-shell.collapsed .booking-panel-content{opacity:0;visibility:hidden;height:0;overflow:hidden;padding:0;margin:0;}.booking-panel-toggle{position:absolute;left:-62px;top:24px;width:56px;height:56px;border-radius:28px 0 0 28px;border:0;background:#121212;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 18px 30px rgba(0,0,0,.35);transition:transform .2s ease,background .2s ease;}.booking-panel-toggle:hover{transform:translateX(-2px);background:#1c1c1c;}.booking-shell.collapsed .booking-panel-toggle{transform:rotate(180deg);} .booking-panel-content{padding:28px 24px 28px;display:grid;gap:18px;position:relative;z-index:1;}.booking-panel-head{display:grid;grid-template-columns:1fr 1fr;gap:14px;}.booking-panel-head div{padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.08);backdrop-filter:blur(6px);}.booking-panel-head span{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.18em;color:rgba(255,255,255,.68);margin-bottom:8px;}.booking-panel-head strong{display:block;font-size:16px;color:#fff;line-height:1.15;}.booking-bar{background:transparent;box-shadow:none;display:grid;grid-template-columns:1fr;gap:12px;padding:0;margin:0;}.booking-field{padding:14px 16px;background:rgba(255,255,255,.08);border-radius:18px;border:1px solid rgba(255,255,255,.14);display:flex;flex-direction:column;justify-content:center;}.booking-field label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.75);margin-bottom:8px;}.booking-field input,.booking-field select{border:0;background:transparent;outline:none;padding:4px 0 0;font-weight:700;color:#fff;}.booking-field input::placeholder{color:rgba(255,255,255,.55);}.booking-field select{appearance:none;cursor:pointer;}.booking-submit{margin:0;height:52px;padding:0 24px;border-radius:22px;background:#fff;color:#121212;font-weight:700;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 16px 28px rgba(0,0,0,.16);}.booking-submit:hover{transform:translateY(-1px);box-shadow:0 18px 30px rgba(0,0,0,.2);}.booking-status{font-size:13px;color:rgba(255,255,255,.78);min-height:24px;}.booking-price-list{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);padding:18px;border-radius:24px;display:grid;gap:10px;}.booking-price-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#fff;letter-spacing:.01em;}.booking-price-row span{color:#f8d1a0;}.booking-price-row.best{font-weight:700;border-top:1px solid rgba(255,255,255,.12);padding-top:10px;}.booking-price-list strong{color:#fff;}.booking-bar.container{padding:0;background:transparent;box-shadow:none;}.booking-status.container{padding:0;background:transparent;box-shadow:none;}.booking-field:last-child{border-right:0;}.booking-bar .booking-field{border-right:0;}.booking-field input,.booking-field select{border:0;background:transparent;outline:none;padding:4px 0 0;font-weight:700;color:#fff;}.booking-submit{margin:0;min-width:auto;}.booking-status{font-size:13px;color:rgba(255,255,255,.78);min-height:24px;}.section{padding:120px 0}@keyframes slideInPanel{0%{opacity:0;transform:translateX(20px);}100%{opacity:1;transform:translateX(0);}}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px}.intro h2,.rooms-section h2,.location-section h2{font-size:clamp(42px,5vw,68px)}.intro h2 em{color:#987944}.intro-copy{padding-top:8px;color:var(--muted);font-size:15px}.text-link.dark{display:inline-block;margin-top:15px;color:var(--ink)}.facts-row{display:grid;grid-template-columns:repeat(4,1fr);margin-top:90px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts-row>div{padding:34px;border-right:1px solid var(--line)}.facts-row>div:first-child{padding-left:0}.facts-row>div:last-child{border:0}.facts-row strong{display:block;font-family:var(--serif);font-size:32px;font-weight:500}.facts-row span{color:var(--muted);font-size:12px}.visual-break{height:540px;background:url('https://images.unsplash.com/photo-1618773928121-c32242e63f39?auto=format&fit=crop&w=1800&q=85') center/cover fixed;position:relative}.visual-break::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,23,34,.75),rgba(9,23,34,.08))}.visual-break-card{position:absolute;z-index:2;left:max(24px,calc((100vw - 1180px)/2));bottom:70px;color:#fff;display:flex;flex-direction:column}.visual-break-card span{color:var(--gold-light);text-transform:uppercase;letter-spacing:.18em;font-size:10px}.visual-break-card strong{font-family:var(--serif);font-size:38px;font-weight:500;margin-top:8px}.rooms-section{background:var(--cream)}.split-heading{display:grid;grid-template-columns:1fr .55fr;gap:70px;align-items:end;margin-bottom:50px}.split-heading p{color:var(--muted);margin:0 0 8px}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.room-card{background:#fff}.room-image{height:420px;background-size:cover;background-position:center;position:relative}.room-one .room-image{background-image:url('https://images.unsplash.com/photo-1611892440504-42a792e24d32?auto=format&fit=crop&w=900&q=85')}.room-two .room-image{background-image:url('https://images.unsplash.com/photo-1590490360182-c33d57733427?auto=format&fit=crop&w=900&q=85')}.room-three .room-image{background-image:url('https://images.unsplash.com/photo-1591088398332-8a7791972843?auto=format&fit=crop&w=900&q=85')}.room-tag{position:absolute;top:18px;left:18px;background:var(--gold);padding:6px 10px;font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.room-body{padding:24px;display:flex;justify-content:space-between;align-items:center}.room-body h3{margin:0;font-family:var(--serif);font-size:22px;font-weight:500}.room-body p{margin:4px 0 0;color:var(--muted);font-size:11px}.room-body>a{width:40px;height:40px;border:1px solid var(--line);display:grid;place-items:center}.services-section{background:var(--navy);color:#fff}.services-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px}.section-kicker.light{color:var(--gold-light)}.services-intro h2{font-size:clamp(46px,5vw,70px)}.services-intro p{color:rgba(255,255,255,.58);max-width:430px;margin-top:28px}.service-list{border-top:1px solid rgba(255,255,255,.14)}.service-item{display:grid;grid-template-columns:70px 1fr;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.14)}.service-item>span{font-size:10px;color:var(--gold)}.service-item h3{margin:0;font-family:var(--serif);font-size:23px;font-weight:500}.service-item p{margin:5px 0 0;color:rgba(255,255,255,.5);font-size:13px}.location-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}.location-map{height:560px;background:#e8e5dc;position:relative;overflow:hidden}.map-grid{position:absolute;inset:-40px;background-image:linear-gradient(rgba(14,40,56,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(14,40,56,.08) 1px,transparent 1px);background-size:46px 46px;transform:rotate(12deg) scale(1.2)}.map-grid::before,.map-grid::after{content:'';position:absolute;background:#c9c4b8;transform:rotate(-25deg)}.map-grid::before{width:140%;height:34px;top:40%;left:-15%}.map-grid::after{width:34px;height:140%;top:-20%;left:56%}.map-pin{position:absolute;left:54%;top:48%;transform:translate(-50%,-50%);background:var(--navy);color:#fff;padding:12px 16px;box-shadow:0 10px 30px rgba(0,0,0,.18)}.map-pin span{width:8px;height:8px;background:var(--gold);border-radius:50%;display:inline-block;margin-right:8px}.map-pin strong{font-size:10px;letter-spacing:.12em}.location-copy p{color:var(--muted);margin:26px 0}.distance-list{margin:30px 0;border-top:1px solid var(--line)}.distance-list div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.distance-list span{color:var(--muted)}.cta-section{background:#0e2635;color:#fff;text-align:center;padding:110px 0}.cta-inner{display:flex;flex-direction:column;align-items:center}.cta-section h2{font-size:clamp(50px,6vw,78px);margin-bottom:32px}footer{background:#07131c;color:#fff;padding:80px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr .7fr;gap:70px}.footer-grid h4{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin:0 0 18px}.footer-grid a,.footer-grid p{display:block;color:rgba(255,255,255,.55);font-size:12px;margin:7px 0}.footer-brand h3{font-size:13px;letter-spacing:.14em}.footer-brand p{max-width:260px}.footer-bottom{margin-top:65px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;color:rgba(255,255,255,.35);font-size:10px}
@media(max-width:1080px){.main-nav,.header-cta{display:none}.menu-toggle{display:block}.main-nav.open{display:flex;position:absolute;top:84px;left:0;right:0;background:#091722;padding:24px;flex-direction:column}.hero{min-height:700px}.booking-shell{position:fixed;top:90px;right:12px;width:min(320px,calc(100vw - 48px));border-radius:28px;box-shadow:0 22px 70px rgba(0,0,0,.24);}.booking-shell.collapsed{transform:translateX(calc(100% - 74px));}.booking-panel-toggle{left:-62px;top:24px;right:auto;}.booking-bar{grid-template-columns:1fr 1fr;}.booking-panel-head{grid-template-columns:1fr 1fr;}.intro-grid,.services-grid,.location-grid,.split-heading{grid-template-columns:1fr;gap:40px}.room-grid{grid-template-columns:1fr}.room-image{height:420px}.facts-row{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.visual-break{background-attachment:scroll}}
@media(max-width:760px){.hero{min-height:680px}.hero h1{font-size:42px;}.hero p{font-size:15px;}.hero-actions{gap:18px;}.booking-shell{position:fixed;top:auto;bottom:16px;right:16px;width:min(320px,calc(100vw - 32px));border-radius:28px;box-shadow:0 18px 40px rgba(0,0,0,.18);max-height:calc(100vh - 32px);overflow:hidden;}.booking-shell.collapsed{transform:translateX(calc(100% - 74px));}.booking-panel-toggle{display:flex;left:-62px;top:18px;}.booking-panel-head{grid-template-columns:1fr;}.booking-bar{grid-template-columns:1fr;}.booking-price-list{padding:16px;}.booking-field{padding:14px;}.booking-panel-content{padding:22px 18px 20px;}.booking-submit{width:100%;}.section{padding:80px 0;}}@media(max-width:560px){:root{--container:calc(100% - 30px)}.site-header{height:70px;padding:0 15px}.hero-content{padding-top:50px}.hero h1{font-size:36px}.hero p{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.booking-shell{right:12px;width:calc(100vw - 24px);border-radius:24px;}.booking-panel-content{padding:18px 16px 20px;}.booking-bar{grid-template-columns:1fr;}.booking-field{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);}.booking-submit{margin:0;height:52px;}.section{padding:70px 0}.intro h2,.rooms-section h2,.location-section h2{font-size:42px}.facts-row{grid-template-columns:1fr 1fr;margin-top:60px}.facts-row>div{padding:20px}.room-image{height:360px}.visual-break{height:420px}.visual-break-card{left:20px;right:20px;bottom:40px}.visual-break-card strong{font-size:30px}.services-intro h2{font-size:46px}.location-map{height:380px}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-bottom{flex-direction:column;gap:8px}}
