:root{--navy:#071722;--navy2:#0d2735;--paper:#f0ece3;--gold:#c7a76a;--ink:#11232d;--muted:#aab2b4;--serif:'Bodoni Moda',serif;--sans:'Manrope',sans-serif;--arabic:'IBM Plex Sans Arabic',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:#f8f5ed;font-family:var(--sans);overflow-x:hidden}html[lang=ar] body{font-family:var(--arabic)}button,a{font:inherit}button{cursor:pointer}.progress{position:fixed;z-index:1000;top:0;left:0;height:2px;background:var(--gold);width:0}.cursor{position:fixed;z-index:999;pointer-events:none;width:18px;height:18px;border:1px solid #fff;border-radius:50%;mix-blend-mode:difference;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}.cursor.hot{width:44px;height:44px;background:#fff}.topline{height:30px;display:flex;justify-content:center;gap:25px;align-items:center;background:#020b10;color:#ffffff82;font-size:8px;letter-spacing:.16em;text-transform:uppercase}.topline a{color:var(--gold);text-decoration:none}.nav-shell{height:84px;display:flex;align-items:center;padding:0 4vw;gap:5vw;background:rgba(7,23,34,.94);backdrop-filter:blur(18px);position:sticky;top:0;z-index:100;border-bottom:1px solid #fff1}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font:500 14px var(--serif);letter-spacing:.12em}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:22px}.brand small{display:block;font:7px var(--sans);letter-spacing:.22em;color:#ffffff72;margin-top:4px}.nav-shell nav{display:flex;gap:30px;margin:auto}.nav-shell nav a{color:#ffffffb5;text-decoration:none;font-size:10px;position:relative}.nav-shell nav a:after{content:'';position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--gold);transition:.3s}.nav-shell nav a:hover:after{width:100%}.nav-actions{display:flex;align-items:center;gap:20px}.languages{display:flex}.languages button{border:0;background:none;color:#ffffff72;font-size:9px;padding:6px}.languages button.active{color:var(--gold)}.reserve-link,.gold-button{border:1px solid var(--gold);background:var(--gold);color:var(--navy);padding:13px 20px;text-transform:uppercase;font-size:9px;letter-spacing:.12em}.menu{display:none}.hero{height:calc(100vh - 114px);min-height:670px;position:relative;overflow:hidden}.hero-media,.hero-media img,.hero-wash{position:absolute;inset:0;width:100%;height:100%}.hero-media img{object-fit:cover}.hero-wash{background:linear-gradient(90deg,#061620e8 0%,#061620a8 28%,transparent 68%),linear-gradient(0deg,#0616209c,transparent 38%)}.hero-copy{position:absolute;z-index:2;left:9vw;top:50%;transform:translateY(-50%);max-width:650px}.kicker{color:var(--gold);font-size:9px;letter-spacing:.27em;text-transform:uppercase}.hero h1,.intro h2,.section-head h2,.reception h2,.map-copy h2,.catalog-cta h2{font:500 clamp(68px,8.5vw,132px)/.84 var(--serif);letter-spacing:-.05em;margin:28px 0}.hero h1 i,.catalog-cta h2 i{color:var(--gold);font-weight:400}.hero p{max-width:480px;color:#ffffffb4;line-height:1.8;font-size:14px}.hero-cta{display:flex;align-items:center;gap:28px;margin-top:30px}.hero-cta a{color:#fff;text-decoration:none;font-size:10px}.hero-meta{position:absolute;z-index:2;right:3vw;bottom:25px;display:flex;gap:25px;color:#ffffff75;font-size:8px;letter-spacing:.15em}.availability{position:relative;z-index:4;margin:-34px auto 0;width:min(1100px,88vw);background:#f6f3eb;color:var(--ink);display:grid;grid-template-columns:1fr 1fr .7fr auto;box-shadow:0 20px 70px #0004}.availability label{padding:18px 24px;border-right:1px solid #13283218}.availability label span,.booking label>span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.16em;color:#738087}.availability input,.availability select{border:0;background:none;width:100%;padding:9px 0 0;color:var(--ink)}.availability button{border:0;background:var(--gold);padding:0 30px;text-transform:uppercase;font-size:9px;letter-spacing:.12em}.pad{padding:10vw max(5vw,calc((100vw - 1350px)/2))}.intro{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:.3fr 1.5fr 1fr;gap:5vw;align-items:start}.ornament{color:var(--gold);font-size:30px}.intro h2{font-size:clamp(50px,6vw,88px);margin:20px 0}.intro>p{line-height:2;color:#69767b;margin-top:55px}.rooms{background:var(--navy)}.section-head{display:grid;grid-template-columns:.25fr 1.2fr .8fr;gap:4vw;align-items:end;margin-bottom:90px}.index{font:55px var(--serif);color:#ffffff22}.section-head h2{font-size:clamp(55px,7vw,100px);margin:18px 0 0}.section-head p{color:#ffffff83;line-height:1.8}.room-stack{display:flex;flex-direction:column;gap:110px}.room-card{display:grid;grid-template-columns:58% 42%;align-items:stretch;min-height:590px}.room-card.reverse{grid-template-columns:42% 58%}.room-card.reverse .room-image{grid-column:2;grid-row:1}.room-card.reverse .room-copy{grid-column:1;grid-row:1}.room-image{position:relative;border:0;padding:0;background:#000;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1)}.room-image:hover img{transform:scale(1.035)}.room-image>span{position:absolute;left:20px;top:20px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--navy);font-size:10px}.room-copy{background:var(--navy2);padding:7vw 5vw;display:flex;flex-direction:column;align-items:flex-start}.room-copy small{color:var(--gold);font-size:8px;letter-spacing:.2em}.room-copy h3{font:55px var(--serif);margin:20px 0}.room-copy p{color:#ffffff86;line-height:1.9;font-size:13px}.room-copy ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:28px 0}.room-copy li{border:1px solid #ffffff1e;border-radius:30px;padding:8px 12px;font-size:8px;color:#ffffffa5}.room-book{margin-top:auto;width:100%;border:0;border-top:1px solid #ffffff22;background:none;color:#fff;display:flex;justify-content:space-between;padding:20px 0;text-transform:uppercase;font-size:9px;letter-spacing:.14em}.room-book b{color:var(--gold);transition:.3s}.room-book:hover b{transform:translateX(8px)}.reception{display:grid;grid-template-columns:62% 38%;background:var(--paper);color:var(--ink)}.reception-media{position:relative;min-height:720px}.reception-media img{width:100%;height:100%;object-fit:cover}.image-zoom{position:absolute;right:20px;bottom:20px;width:50px;height:50px;border-radius:50%;border:0;background:var(--navy);color:#fff;font-size:20px}.reception-copy{padding:9vw 5vw}.reception-copy .index,.map-copy .index{display:block;color:#0b23311a}.reception h2{font-size:clamp(55px,6vw,88px)}.reception p{color:#68767c;line-height:1.9}.service-list{border-top:1px solid #13283226;margin-top:45px}.service-list span{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid #13283226}.service-list b{color:var(--gold);font-size:9px}.service-list i{font-style:normal;font-size:11px}.map-section{background:#d9d5cc;color:var(--ink);display:grid;grid-template-columns:35% 65%;gap:5vw;align-items:center}.map-copy h2{font-size:clamp(48px,5vw,78px)}.map-copy p{color:#657176;line-height:1.8}.distance{display:flex;gap:40px;margin-top:40px}.distance span{display:flex;flex-direction:column}.distance b{font:45px var(--serif);color:#a27e45}.distance i{font-style:normal;font-size:9px;color:#68777d}.map-wrap{position:relative}.map-viewport{height:570px;overflow:hidden;background:#e9e7df;cursor:grab;box-shadow:0 25px 70px #172a3624}.map-viewport.dragging{cursor:grabbing}.map-canvas{width:900px;height:620px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(1);transform-origin:center;will-change:transform}.map-canvas svg{width:100%;height:100%}.map-toolbar{position:absolute;z-index:5;right:14px;top:14px;display:flex;flex-direction:column;box-shadow:0 3px 12px #0002}.map-toolbar button{width:38px;height:38px;border:0;border-bottom:1px solid #ddd;background:#fff;color:var(--ink);font-size:18px}.hotel-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:0;background:#fff;color:var(--ink);box-shadow:0 7px 25px #0004;padding:10px 14px 10px 8px;border-radius:28px;display:grid;grid-template-columns:38px auto;grid-template-rows:auto auto;text-align:left;align-items:center}.hotel-pin>span{grid-row:1/3;width:38px;height:38px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--gold);color:var(--navy);display:grid;place-items:center;font:18px var(--serif)}.hotel-pin>span::first-letter{transform:rotate(45deg)}.hotel-pin b{font-size:9px;margin-left:9px}.hotel-pin small{font-size:7px;color:#7b8284;margin-left:9px}.map-hint{text-align:center;margin-top:12px;font-size:8px;letter-spacing:.12em;color:#6e7678}.catalog-cta{text-align:center;padding:11vw 5vw;background:linear-gradient(135deg,#091c28,#133343);position:relative;overflow:hidden}.catalog-cta:before{content:'E';position:absolute;font:500 45vw/.8 var(--serif);color:#ffffff05;left:50%;top:50%;transform:translate(-50%,-50%)}.catalog-cta>*{position:relative}.catalog-cta h2{font-size:clamp(65px,9vw,120px)}.catalog-cta p{color:#ffffff8f}.catalog-cta a{display:inline-block;margin-top:30px;border-bottom:1px solid var(--gold);padding:12px;color:#fff;text-decoration:none;font-size:10px;text-transform:uppercase;letter-spacing:.15em}footer{padding:70px 5vw 35px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;background:#020b10;color:#ffffff8c;font-size:10px}footer div{display:flex;flex-direction:column;gap:9px}footer b{color:#fff}footer a{color:inherit;text-decoration:none}footer>small{grid-column:1/-1;border-top:1px solid #fff1;padding-top:25px}.booking{position:fixed;z-index:500;inset:0;background:#061620;display:grid;grid-template-columns:38% 62%;transform:translateY(105%);transition:transform .75s cubic-bezier(.16,1,.3,1);visibility:hidden}.booking.open{transform:none;visibility:visible}.booking-close{position:absolute;z-index:3;right:25px;top:20px;border:0;background:none;color:#fff;font-size:30px}.booking-aside{padding:9vw 6vw;background:linear-gradient(150deg,#0c2b3a,#071722)}.booking-aside h2{font:65px/.9 var(--serif);margin:25px 0 55px}.booking-aside ol{list-style:none;padding:0}.booking-aside li{display:flex;gap:20px;padding:17px 0;border-bottom:1px solid #fff1;color:#ffffff4a;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.booking-aside li.active{color:#fff}.booking-aside li span{color:var(--gold)}.booking-aside p{margin-top:50px;color:#ffffff5f;font-size:10px;line-height:1.8}.booking-main{background:#f4f0e7;color:var(--ink);padding:7vw;overflow:auto}.booking-step{display:none}.booking-step.active{display:block;animation:stepIn .5s ease}.booking-step>small{color:#a3824d;letter-spacing:.15em;font-size:9px}.booking-step h3{font:55px var(--serif);margin:20px 0 40px}.booking-step label{display:block;margin:20px 0}.booking-step input,.booking-step select,.booking-step textarea{display:block;width:100%;padding:13px 0;border:0;border-bottom:1px solid #1e313d37;background:none;color:var(--ink);font:13px var(--sans)}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px}.booking-next{border:0;background:var(--navy);color:#fff;padding:15px 22px;text-transform:uppercase;font-size:9px;letter-spacing:.1em;margin-top:20px}.booking-rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.booking-rooms label{border:1px solid #20364025;padding:7px;cursor:pointer;transition:.3s}.booking-rooms label:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}.booking-rooms input{display:none}.booking-rooms img{width:100%;height:130px;object-fit:cover}.booking-rooms span{display:flex;flex-direction:column;padding:10px}.booking-rooms span b{font:19px var(--serif)}.booking-rooms span i{font-style:normal;font-size:8px;color:#778186}.step-actions{display:flex;justify-content:space-between}.booking-back{border:0;background:none}.consent{display:flex!important;align-items:center;gap:10px}.consent input{width:auto}.success{text-align:center;padding-top:4vw}.success-mark{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 25px;border-radius:50%;background:var(--gold);font-size:28px}.reference{display:flex;flex-direction:column;gap:8px;margin:30px}.reference b{font:30px var(--serif)}.lightbox{position:fixed;z-index:700;inset:0;background:#020a0fef;display:none;place-items:center;padding:5vw}.lightbox.open{display:grid}.lightbox img{max-width:90vw;max-height:85vh;object-fit:contain}.lightbox button{position:absolute;right:25px;top:20px;border:0;background:none;color:#fff;font-size:30px}.toast{position:fixed;z-index:1000;left:50%;bottom:25px;transform:translate(-50%,100px);background:#fff;color:var(--ink);padding:13px 20px;font-size:10px;box-shadow:0 10px 35px #0004;transition:.35s}.toast.show{transform:translate(-50%,0)}.reveal{opacity:0;transform:translateY(45px);transition:opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}@keyframes stepIn{from{opacity:0;transform:translateX(25px)}to{opacity:1;transform:none}}html[dir=rtl] .hero-copy{left:auto;right:9vw}html[dir=rtl] .hero-wash{background:linear-gradient(-90deg,#061620e8 0%,#061620a8 28%,transparent 68%),linear-gradient(0deg,#0616209c,transparent 38%)}html[dir=rtl] .room-card.reverse .room-image{grid-column:1}html[dir=rtl] .room-card.reverse .room-copy{grid-column:2}.no-scroll{overflow:hidden}@media(max-width:900px){.nav-shell nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--navy);padding:35px;flex-direction:column}.nav-shell nav.open{display:flex}.nav-actions .reserve-link{display:none}.menu{display:flex;margin-left:auto;width:38px;height:38px;border:0;background:none;flex-direction:column;justify-content:center;gap:7px}.menu span{width:22px;height:1px;background:#fff}.hero-copy{left:6vw}.intro,.section-head,.map-section{grid-template-columns:1fr}.availability{grid-template-columns:1fr 1fr}.availability button{min-height:58px}.room-card,.room-card.reverse,.reception{grid-template-columns:1fr}.room-card.reverse .room-image,.room-card.reverse .room-copy{grid-column:1}.room-card.reverse .room-image{grid-row:1}.room-card.reverse .room-copy{grid-row:2}.room-image{min-height:430px}.reception-media{min-height:500px}.map-copy{margin-bottom:40px}.booking{grid-template-columns:1fr}.booking-aside{display:none}.booking-main{padding:70px 6vw}.booking-rooms{grid-template-columns:1fr}.booking-rooms label{display:grid;grid-template-columns:120px 1fr}.booking-rooms img{height:90px}footer{grid-template-columns:1fr 1fr}.cursor{display:none}}@media(max-width:580px){.topline span{display:none}.nav-shell{padding:0 18px}.brand{font-size:11px}.brand-mark{width:36px;height:36px}.languages button{padding:5px}.hero{height:760px}.hero h1{font-size:64px}.hero-meta{display:none}.hero-cta{align-items:flex-start;flex-direction:column}.availability{margin:0;width:100%;grid-template-columns:1fr 1fr}.availability label:nth-child(3),.availability button{grid-column:1/-1}.pad{padding:90px 22px}.intro{gap:20px}.intro>p{margin-top:0}.section-head{margin-bottom:55px}.room-stack{gap:50px}.room-card{min-height:0}.room-image{min-height:300px}.room-copy{padding:45px 25px}.room-copy h3{font-size:42px}.reception-copy{padding:75px 25px}.map-viewport{height:450px}.catalog-cta{padding:100px 20px}.form-pair{grid-template-columns:1fr}.booking-main{padding:70px 22px}.booking-step h3{font-size:43px}footer{grid-template-columns:1fr}.footer-brand{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
