:root{
  --navy:#152131;--navy-2:#1e2b3e;--gold:#c7a46a;--gold-rich:#bd9254;--gold-pale:#efe4d2;--cream:#faf8f4;--cream-2:#f5f1e9;--white:#fff;--ink:#243143;--muted:#6f7884;--border:#ebe6db;
  --shadow:0 22px 65px rgba(16,31,46,.075);--radius:18px;--heading:'Alexandria',Tahoma,Arial,sans-serif;--body:'IBM Plex Sans Arabic',Tahoma,Arial,sans-serif;--container:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.85;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.is-locked{overflow:hidden}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.icon--flipped{transform:rotate(180deg)}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.container{width:min(calc(100% - 76px),var(--container));margin-inline:auto}
.section{padding:112px 0}
.skip-link{position:fixed;right:16px;top:-100px;background:var(--gold);color:var(--navy);padding:10px 20px;z-index:1200}
.skip-link:focus{top:10px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
[hidden]{display:none!important}
.topbar{background:var(--navy);height:38px;color:#e8e3db;font-size:12px;letter-spacing:.02em}
.topbar__inner{display:flex;justify-content:space-between;align-items:center;height:100%;gap:18px}
.topbar__inner>span,.topbar__inner>a{display:flex;align-items:center;gap:8px;direction:rtl}
.topbar .icon{width:13px;height:13px;color:var(--gold)}
.site-header{height:94px;position:sticky;top:0;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(220,211,196,.45);z-index:100;transition:box-shadow .2s}
.site-header.is-scrolled{box-shadow:0 10px 30px rgba(17,29,44,.07)}
.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand__logo{display:flex;align-items:center;width:101px;height:57px;background:var(--navy);border-radius:8px;overflow:hidden;flex-shrink:0}
.brand__logo img{width:100%;height:100%;object-fit:contain}
.brand__type{display:flex;flex-direction:column;line-height:1.4;gap:5px;white-space:nowrap}
.brand__type strong{font:700 16px/1.4 var(--heading);color:var(--navy)}
.brand__type small{font-size:11px;color:var(--gold-rich);font-weight:700;letter-spacing:.05em}
.desktop-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700;color:#364355}
.desktop-nav a{transition:color .2s}
.desktop-nav a:hover{color:var(--gold-rich)}
.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-align:center;padding:13px 23px;border-radius:8px;font-size:14px;font-weight:700;line-height:1.5;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;white-space:normal}
.button:hover{transform:translateY(-2px)}
.button .icon{width:18px;height:18px}
.button--gold{background:var(--gold);color:#172334;border-color:var(--gold)}
.button--gold:hover{background:#d9b57c;box-shadow:0 12px 25px rgba(199,164,106,.23)}
.button--navy{background:var(--navy);color:var(--white)}
.button--navy:hover{background:#2a3b51}
.button--outline-gold{border-color:#d5bf98;color:var(--navy);background:transparent}
.button--outline-gold:hover{background:var(--gold-pale)}
.button--large{padding:18px 27px;font-size:15px}
.button--glass{color:var(--white);border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.08);backdrop-filter:blur(6px)}
.button--glass:hover{background:rgba(255,255,255,.18)}
.nav-cta{padding-inline:19px;font-size:13px}
.menu-toggle,.mobile-nav{display:none}
.hero{padding:20px 22px 0}
.hero-stage{height:min(75vh,750px);min-height:625px;position:relative;overflow:hidden;border-radius:12px;background:var(--navy);isolation:isolate}
.hero-slides,.hero-slide,.hero-stage__veil{position:absolute;inset:0}
.hero-slide{background-size:cover;background-repeat:no-repeat;opacity:0;transform:scale(1.055);transition:opacity 1.3s ease,transform 7s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-stage__veil{background:linear-gradient(270deg,rgba(15,25,38,.94) 0%,rgba(17,27,39,.86) 31%,rgba(15,28,39,.45) 63%,rgba(15,25,35,.22) 100%);z-index:1}
.hero-stage::after{content:'';position:absolute;inset:20px;border:1px solid rgba(255,255,255,.14);border-radius:6px;z-index:2;pointer-events:none}
.hero-content{height:100%;display:flex;align-items:center;position:relative;z-index:3}
.hero-content__inner{max-width:750px;padding:35px 28px 55px 0;color:white}
.eyebrow{display:flex;align-items:center;gap:12px;color:var(--gold-rich);font-weight:700;font-size:13px;letter-spacing:.01em}
.eyebrow-line{width:32px;height:1px;background:currentColor;display:inline-block;flex:none}
.eyebrow--light{color:#ecd3a6}
.hero h1,.section-heading h2,.about-copy h2,.reviews-layout h2,.booking-aside h3{font-family:var(--heading);line-height:1.36;letter-spacing:-.025em}
.hero h1{font-size:clamp(47px,5.6vw,86px);font-weight:700;margin:22px 0 8px}
.hero h1 em{font-style:normal;color:#e2c28d}
.hero-subtitle{font-size:clamp(20px,2vw,27px);font-weight:600;margin:0 0 14px;color:#f8f3e9}
.hero-description{font-size:17px;color:#e3e5e5;line-height:2.1;max-width:535px;margin:0 0 31px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.hero-controls{position:absolute;left:70px;bottom:55px;z-index:4;display:flex;gap:15px;align-items:center;color:white;direction:ltr}
.hero-controls button{width:39px;height:39px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.48);border-radius:50%;color:white;background:transparent;transition:.2s}
.hero-controls button:hover{border-color:var(--gold);color:var(--gold)}
.hero-controls button .icon{width:17px;height:17px}
.hero-controls>span{direction:ltr;font-weight:700;font-size:15px;font-family:Arial,sans-serif;min-width:55px;text-align:center}
.hero-controls>span small{color:#ccc;font-size:13px}
.hero-controls .pause-btn{font-family:Arial,sans-serif;font-size:17px;border:0;width:28px}
.hero-vertical-label{position:absolute;left:54px;top:56px;z-index:4;writing-mode:vertical-rl;color:#ece4d7;font-size:10px;font-weight:700;letter-spacing:.29em}
.hero-vertical-label span{color:var(--gold);margin-block:10px}
.feature-strip{border-bottom:1px solid var(--border);background:var(--white)}
.feature-strip__inner{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;min-height:105px}
.feature-strip__inner>span{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;font-weight:700;font-size:14px;color:#3b4551;border-left:1px solid var(--border)}
.feature-strip__inner>span:last-child{border-left:0}
.feature-strip__inner .icon{color:var(--gold-rich);width:23px;height:23px}
.section-heading{margin-bottom:42px}
.section-heading--split{display:flex;justify-content:space-between;align-items:end;gap:30px}
.section-heading--center{text-align:center;display:flex;align-items:center;flex-direction:column;margin-bottom:50px}
.section-heading--center .eyebrow{justify-content:center}
.section-heading h2,.about-copy h2{font-size:clamp(29px,3.45vw,47px);font-weight:700;margin:13px 0 12px;color:var(--navy)}
.section-heading h2 span,.about-copy h2 span{color:var(--gold-rich)}
.section-heading p{max-width:650px;margin:0;color:var(--muted);font-size:16px}
.section-heading--center p{max-width:720px}
.text-link,.service-book{display:inline-flex;gap:12px;align-items:center;color:var(--gold-rich);font-size:14px;font-weight:700}
.text-link .icon,.service-book .icon{width:16px;height:16px;transition:transform .2s}
.text-link:hover .icon,.service-book:hover .icon{transform:translateX(-5px)}
.gallery-section{background:var(--cream)}
.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:27px}
.filter-btn{border:1px solid #e7e1d7;background:white;color:#69717b;border-radius:28px;padding:8px 21px;font-size:13px;font-weight:700;transition:.2s}
.filter-btn:hover{border-color:var(--gold)}
.filter-btn.is-active{background:var(--navy);border-color:var(--navy);color:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;grid-auto-flow:dense}
.gallery-card{position:relative;border:0;padding:0;text-align:right;height:294px;border-radius:12px;overflow:hidden;background:#d5d4ce;display:block;isolation:isolate;transition:box-shadow .25s}
.gallery-card--wide{grid-column:span 2}
.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease;position:absolute;inset:0}
.gallery-card:hover img{transform:scale(1.07)}
.gallery-card:hover{box-shadow:0 18px 28px rgba(17,29,44,.15)}
.gallery-card__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,23,36,.85),rgba(15,25,35,.03) 68%);z-index:1}
.gallery-card__content{position:absolute;bottom:18px;right:23px;left:23px;color:white;z-index:2;display:flex;flex-direction:column;line-height:1.5;gap:5px}
.gallery-card__content small{font-weight:600;font-size:11px;color:#f0d4a9}
.gallery-card__content strong{font-family:var(--heading);font-weight:600;font-size:15px}
.gallery-card__zoom{position:absolute;left:17px;top:17px;color:white;z-index:2;border:1px solid rgba(255,255,255,.7);border-radius:50%;height:36px;width:36px;display:grid;place-items:center;background:rgba(24,32,42,.2)}
.gallery-card__zoom .icon{width:16px;height:16px}
.gallery-note{font-size:12px;text-align:center;color:#8d9298;margin:25px 0 0}
.services-section{background:#fff}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.service-card{background:white;border:1px solid var(--border);padding:32px 30px 27px;border-radius:14px;position:relative;display:flex;flex-direction:column;min-height:265px;transition:box-shadow .2s,transform .2s,border-color .2s}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#dfceb2}
.service-card__number{position:absolute;left:27px;top:29px;font-family:Arial,sans-serif;color:#ded5c7;font-weight:600;font-size:15px}
.service-icon{height:56px;width:56px;display:grid;place-items:center;background:var(--cream-2);border-radius:13px;color:var(--gold-rich);margin-bottom:23px}
.service-icon .icon{height:28px;width:28px}
.service-card h3{font:700 18px/1.6 var(--heading);margin:0 0 7px;color:var(--navy)}
.service-card p{color:#78818c;font-size:14px;line-height:1.95;margin:0 0 22px;flex:1}
.service-book{border:0;background:transparent;align-self:flex-start;padding:0;cursor:pointer}
.service-card--planning{background:#fbf9f5}
.hospitality-panel{margin-top:24px;border-radius:17px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--navy);color:white;position:relative;overflow:hidden}
.hospitality-panel::after{content:'';position:absolute;left:-70px;top:-150px;width:350px;height:350px;border-radius:50%;border:1px solid rgba(214,181,126,.14);box-shadow:0 0 0 48px rgba(214,181,126,.045),0 0 0 95px rgba(214,181,126,.025);pointer-events:none}
.hospitality-panel__head{max-width:400px;position:relative;z-index:1}
.hospitality-panel__head h3{font:700 clamp(23px,2.5vw,31px)/1.6 var(--heading);margin:8px 0 5px}
.hospitality-panel__head h3 em{font-style:normal;color:#dec297}
.hospitality-panel__head p{font-size:13px;color:#d0d2d5;margin:0;line-height:2}
.hospitality-panel__items{flex:1;max-width:540px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;position:relative;z-index:1}
.hospitality-panel__items button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-height:145px;color:white;background:rgba(255,255,255,.055);border:1px solid rgba(226,200,156,.33);border-radius:10px;font-weight:700;font-size:13px;transition:.2s}
.hospitality-panel__items button:hover{background:rgba(216,183,125,.16);border-color:var(--gold)}
.hospitality-panel__items button>.icon:first-child{width:26px;height:26px;color:#e4c896}
.hospitality-panel__items button>.icon:last-child{width:16px;height:16px;color:#e4c896}
.about-section{background:var(--cream)}
.about-grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:clamp(35px,5vw,76px);align-items:center}
.about-photo{position:relative;order:2;padding:0 0 33px 31px}
.about-photo:before{content:'';position:absolute;top:25px;right:25px;left:0;bottom:0;border:1.5px solid #ccb186;border-radius:5px}
.about-photo img{width:100%;height:515px;object-fit:cover;object-position:center 60%;position:relative;border-radius:5px}
.about-photo__badge{position:absolute;bottom:2px;right:-24px;background:var(--navy);min-width:188px;padding:18px 20px;display:flex;align-items:center;gap:11px;color:#fff;border-top:3px solid var(--gold)}
.about-photo__badge .icon{color:var(--gold);height:28px;width:28px}
.about-photo__badge span{font:600 14px/1.8 var(--heading)}
.about-copy{order:1}
.about-copy h2{margin-bottom:20px;line-height:1.55;text-wrap:balance}
.about-copy p{font-size:15px;color:#566373;line-height:2.05;margin:0 0 15px;max-width:610px}
.about-copy strong{color:var(--navy)}
.about-copy .about-lead{font-size:16px;color:#354457;font-weight:500}
.about-checks{display:flex;flex-wrap:wrap;gap:9px;margin:23px 0 27px}
.about-checks span{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:#435061;padding:7px 10px;border:1px solid #e9e0d2;background:#fffdf9;border-radius:7px}
.about-checks .icon{color:var(--gold-rich);width:17px;height:17px}
.reviews-section{background:var(--navy);color:white;padding:85px 0;position:relative;overflow:hidden}
.reviews-section:before{content:'';width:700px;height:700px;border:1px solid rgba(231,209,172,.13);border-radius:50%;position:absolute;right:-330px;top:-400px;box-shadow:0 0 0 70px rgba(231,209,172,.025),0 0 0 140px rgba(231,209,172,.02)}
.reviews-layout{display:grid;grid-template-columns:1.1fr .85fr;gap:100px;align-items:center;position:relative}
.reviews-layout h2{font-size:clamp(34px,4vw,54px);margin:16px 0 12px;color:white}
.reviews-layout h2 em{color:#dfbe89;font-style:normal}
.reviews-layout p{max-width:480px;color:#cbd0d4;margin:0;font-size:15px}
.reviews-card{background:#fff;color:var(--navy);padding:35px 37px;border-radius:14px;box-shadow:0 22px 35px rgba(0,0,0,.12)}
.reviews-card__mark{font:700 58px/1 Georgia,serif;color:#283a50}
.reviews-card__mark span{color:var(--gold)}
.reviews-card h3{font:700 18px/1.8 var(--heading);margin:16px 0 8px}
.reviews-card p{color:#71808d;font-size:13px;line-height:2;margin-bottom:22px}
.booking-section{background:var(--cream);padding-bottom:125px}
.booking-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:25px;align-items:start}
.booking-aside{background:var(--navy);color:white;border-radius:15px;padding:47px 35px 28px;position:sticky;top:120px;overflow:hidden}
.booking-aside__decoration{position:absolute;left:-40px;top:-85px;font-size:280px;font-family:Georgia,serif;line-height:1;color:rgba(225,196,147,.055);transform:rotate(20deg);pointer-events:none}
.booking-aside h3{font-size:31px;margin:23px 0 13px;position:relative}
.booking-aside h3 em{font-style:normal;color:#e0c190}
.booking-aside>p{color:#cdd1d6;font-size:14px;margin:0 0 29px;line-height:2}
.booking-aside__benefits{display:flex;flex-direction:column;gap:14px;margin:0 0 34px}
.booking-aside__benefits span{display:flex;align-items:center;gap:10px;color:#e7e7e7;font-size:13px}
.booking-aside__benefits .icon{width:17px;height:17px;color:var(--gold)}
.booking-aside__direct{border-top:1px solid rgba(255,255,255,.15);padding-top:22px;display:flex;align-items:center;gap:12px}
.booking-aside__direct .icon{color:var(--gold);width:23px;height:23px}
.booking-aside__direct .icon:last-child{margin-right:auto;width:18px;height:18px}
.booking-aside__direct span{font-size:12px;line-height:1.8;color:#d5d9df}
.booking-aside__direct strong{display:block;color:white;font-size:14px}
.form-shell{background:white;border:1px solid var(--border);border-radius:15px;overflow:hidden;box-shadow:var(--shadow)}
.form-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f3f1ed;padding:9px;gap:8px}
.form-tab{padding:14px 10px;border:0;background:transparent;color:#6e7680;font-size:14px;font-weight:700;border-radius:8px;transition:.2s}
.form-tab.is-active{background:var(--navy);color:white;box-shadow:0 6px 12px rgba(17,27,40,.13)}
.form-panel{padding:39px 42px 34px}
.form-intro{margin-bottom:23px}
.form-intro h3{font:700 23px/1.6 var(--heading);color:var(--navy);margin:0 0 4px}
.form-intro p{margin:0;color:#83909a;font-size:13px}
.req{color:#b37e36}
.form-row{display:grid;gap:16px;margin-bottom:16px}
.form-row.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-row.three-col{grid-template-columns:1.4fr 1fr 1fr}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;color:#394556;font-size:13px;font-weight:700}
.form-row .field{margin-bottom:0}
.field input,.field select,.field textarea{color:var(--navy);background:#fff;border:1px solid #e0e3e6;border-radius:7px;width:100%;padding:11px 13px;outline:0;min-height:47px;font-size:14px;font-weight:500;transition:border-color .2s,box-shadow .2s}
.field input::placeholder,.field textarea::placeholder{color:#a2aab3}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(199,164,106,.13)}
.field input[dir=ltr]{text-align:right;direction:ltr}
.field textarea{resize:vertical;min-height:100px}
.field select{cursor:pointer}
.field input[type=date],.field input[type=time]{direction:ltr;text-align:right}
.field input[type=date]::-webkit-calendar-picker-indicator,.field input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer}
.service-fieldset{border:0;padding:0;margin:20px 0 17px;min-width:0}
.service-fieldset legend{font-weight:700;font-size:14px;color:#394556}
.field-hint{margin:2px 0 12px;color:#8a939c;font-size:12px}
.service-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.choice{position:relative;min-width:0;cursor:pointer}
.choice input{position:absolute;opacity:0;width:1px;height:1px}
.choice span{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #e3e5e7;border-radius:7px;font-size:12px;font-weight:700;color:#63707c;min-height:43px;transition:.2s}
.choice span::before{content:'';display:block;width:16px;height:16px;flex:none;border:1.5px solid #b9bfc6;border-radius:4px;background:white}
.choice input:checked+span{border-color:var(--gold);background:#fbf7f0;color:var(--navy)}
.choice input:checked+span::before{background:var(--gold);border-color:var(--gold);box-shadow:inset 0 0 0 3px #fff}
.choice input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.quantities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.quantities:empty{display:none}
.quantity-item{display:flex;align-items:center;gap:8px;border:1px solid #ebe6da;border-radius:7px;background:#fcfbf9;padding:8px 11px}
.quantity-item span{flex:1;font-size:11px;font-weight:700;line-height:1.5;min-width:0}
.quantity-item input{border:1px solid #dadbdc;width:69px;min-width:69px;height:35px;padding:4px 8px;border-radius:5px;text-align:center;direction:ltr;font-size:12px;background:white}
.form-error{border:1px solid #edc2bc;background:#fff3f1;color:#a8382a;font-size:13px;border-radius:6px;padding:12px 14px;margin-bottom:14px}
.button--submit{width:100%;padding:15px 18px;margin-top:6px;font-size:15px}
.button--submit .icon:last-child{margin-right:auto}
.form-disclaimer{margin:11px 0 0;font-size:12px;color:#9097a0;text-align:center;line-height:1.9}
.form-disclaimer strong{color:#586470}
.direct-inquiry{border-top:1px solid var(--border);display:flex;justify-content:center;gap:8px;align-items:center;padding:18px;font-weight:700;color:var(--gold-rich);font-size:13px}
.direct-inquiry .icon{width:15px;height:15px}
.location-section{background:#fff}
.location-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:22px}
.map-panel{min-height:400px;border-radius:14px;overflow:hidden;position:relative;background:#e9ebe7;border:1px solid var(--border)}
.map-panel iframe{width:100%;height:100%;min-height:400px;border:0;display:block;filter:saturate(.78)}
.map-open{position:absolute;left:15px;bottom:15px;display:flex;align-items:center;gap:10px;background:var(--navy);color:#fff;padding:11px 15px;border-radius:7px;font-weight:700;font-size:13px;box-shadow:0 8px 24px #202a3870}
.map-open .icon{width:17px;height:17px;color:var(--gold)}
.contact-panel{border:1px solid var(--border);border-radius:14px;padding:34px 36px;background:var(--cream)}
.contact-line{display:flex;gap:15px;align-items:flex-start;margin-bottom:26px}
.contact-line__icon{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:#efe8dd;color:var(--gold-rich);flex:none}
.contact-line__icon .icon{width:23px;height:23px}
.contact-line div{display:flex;flex-direction:column;gap:3px}
.contact-line small{color:#87919b;font-size:12px}
.contact-line strong,.contact-line a{font-size:15px;color:var(--navy);line-height:1.8;font-weight:700}
.contact-line a{align-self:flex-start;direction:ltr}
.contact-buttons{display:flex;gap:10px;margin-bottom:24px}
.contact-buttons .button{flex:1}
.social-group{border-top:1px solid var(--border);padding-top:20px}
.social-group>span{font-size:13px;font-weight:700;color:#72808c}
.social-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}
.social-buttons a{display:flex;align-items:center;gap:7px;background:white;padding:8px 10px;border-radius:7px;border:1px solid var(--border);font:600 12px/1.4 Arial,sans-serif;color:#354052;transition:.2s}
.social-buttons a:hover{border-color:var(--gold);transform:translateY(-2px)}
.social-buttons .icon{width:16px;height:16px}
.social-letter{font:bold 17px/1 Georgia,serif;min-width:16px;text-align:center}
.footer{background:var(--navy);color:white;padding:45px 0 20px}
.footer__top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.15)}
.footer__brand{display:flex;align-items:center;gap:12px}
.footer__brand img{width:120px;height:67px;object-fit:contain}
.footer__brand div{display:flex;flex-direction:column;gap:5px}
.footer__brand strong{font:700 15px/1.6 var(--heading)}
.footer__brand span{color:#c4c4c5;font-size:12px}
.footer__links{display:flex;align-items:center;gap:23px;font-size:13px;color:#d8dadd}
.footer__links a:hover{color:var(--gold)}
.footer__bottom{padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#aeb4ba}
.whatsapp-float{position:fixed;bottom:29px;left:26px;z-index:80;background:#1e4e79;color:#fff;border-radius:100px;display:flex;gap:8px;align-items:center;padding:13px 17px;box-shadow:0 12px 26px rgba(19,45,73,.30);font-weight:700;font-size:13px;transition:transform .2s}
.whatsapp-float:hover{transform:translateY(-3px);background:#173d62}
.whatsapp-float .icon{width:23px;height:23px}
.mobile-action-bar{display:none}
.lightbox{position:fixed;inset:0;background:rgba(9,17,27,.96);z-index:500;display:grid;grid-template-columns:75px 1fr 75px;align-items:center;gap:15px;padding:45px 35px;color:white}
.lightbox__body{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}
.lightbox__body img{max-height:78vh;max-width:100%;width:auto;object-fit:contain;border-radius:4px}
.lightbox__body p{margin:15px 0 0;text-align:center;font-size:14px;color:#eee5d6}
.lightbox button{border:1px solid #ffffff50;border-radius:50%;display:grid;place-items:center;width:46px;height:46px;color:white;background:rgba(255,255,255,.07)}
.lightbox button:hover{border-color:var(--gold);color:var(--gold)}
.lightbox__close{position:absolute;top:26px;left:28px}
.reveal{transition:opacity .65s ease,transform .65s ease}
.js-animations .reveal{opacity:0;transform:translateY(22px)}
.js-animations .reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1150px){
  .desktop-nav{gap:17px;font-size:12px}.brand__type{display:none}.nav-cta{padding-inline:15px}.booking-layout{grid-template-columns:310px minmax(0,1fr)}.about-grid{gap:60px}.reviews-layout{gap:50px}
}
@media(max-width:900px){
  .container{width:min(calc(100% - 44px),var(--container))}.section{padding:82px 0}
  .site-header{height:78px}.brand__type{display:flex}.desktop-nav,.nav-cta{display:none}.menu-toggle{border:1px solid var(--border);display:grid;place-items:center;width:42px;height:42px;background:white;border-radius:7px;color:var(--navy)}
  .mobile-nav:not([hidden]){display:flex;position:absolute;right:0;left:0;top:78px;flex-direction:column;padding:12px 22px 20px;background:white;box-shadow:0 22px 30px #11203125;gap:3px}
  .mobile-nav a{padding:9px 15px;color:var(--navy);font-size:14px;font-weight:700;border-bottom:1px solid #eee}
  .hero{padding:13px 13px 0}.hero-stage{min-height:610px;height:68vh}.hero-content__inner{padding:25px 10px 30px}.hero-controls{left:43px;bottom:42px}.hero-vertical-label{left:35px;top:35px}
  .feature-strip__inner{grid-template-columns:repeat(2,1fr)}.feature-strip__inner>span:nth-child(2){border-left:0}.feature-strip__inner>span{min-height:72px}.feature-strip__inner>span:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-card--wide{grid-column:span 2}.service-grid{grid-template-columns:repeat(2,1fr)}
  .hospitality-panel{flex-direction:column;align-items:stretch}.hospitality-panel__items{max-width:none}
  .about-grid{gap:40px}.about-photo img{height:440px}.about-photo__badge{right:-12px}
  .booking-layout{grid-template-columns:1fr}.booking-aside{position:relative;top:auto}.booking-aside__benefits{flex-direction:row;flex-wrap:wrap}
  .location-grid{grid-template-columns:1fr}.map-panel,.map-panel iframe{min-height:330px}
}
@media(max-width:640px){
  html{scroll-padding-top:90px}body{font-size:14px;padding-bottom:calc(75px + env(safe-area-inset-bottom))}
  .container{width:calc(100% - 36px)}.section{padding:67px 0}
  .topbar{height:31px;font-size:10px}.topbar__inner{gap:8px}.topbar .icon{width:12px;height:12px}
  .site-header{height:72px}.mobile-nav:not([hidden]){top:72px}
  .brand{gap:7px}.brand__logo{width:82px;height:48px}.brand__type strong{font-size:13px}.brand__type small{font-size:9px}
  .hero{padding:8px 8px 0}.hero-stage{height:auto;min-height:630px;border-radius:7px}.hero-stage::after{inset:10px}
  .hero-stage__veil{background:linear-gradient(270deg,rgba(16,26,40,.94),rgba(15,25,39,.74) 61%,rgba(15,25,39,.46))}
  .hero-content__inner{padding:75px 5px 110px}.hero-content .eyebrow{font-size:11px}.hero h1{font-size:clamp(40px,10.4vw,58px);margin-top:15px}.hero-subtitle{font-size:19px}.hero-description{font-size:14px;line-height:2;max-width:330px;margin-bottom:22px}
  .hero-actions{gap:10px}.hero-actions .button{flex:1;padding:14px 9px;font-size:12px;gap:6px}
  .hero-controls{left:29px;bottom:33px;gap:8px}.hero-controls button{width:30px;height:30px}.hero-controls>span{font-size:12px;min-width:45px}.hero-vertical-label{display:none}
  .feature-strip__inner{min-height:auto}.feature-strip__inner>span{font-size:11px;gap:7px;padding:11px 4px;min-height:61px}.feature-strip__inner .icon{width:18px;height:18px}
  .section-heading{margin-bottom:26px}.section-heading--split{display:block}.section-heading h2,.about-copy h2{font-size:clamp(26px,7vw,34px)}.section-heading p{font-size:13px}.section-heading .eyebrow{font-size:12px}.section-heading .text-link{margin-top:12px}
  .gallery-filters{gap:7px;margin-bottom:20px}.filter-btn{padding:8px 12px;font-size:11px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-card,.gallery-card--wide{grid-column:span 1;height:228px}.gallery-card:first-child{grid-column:span 2;height:255px}.gallery-card__content{bottom:13px;right:12px;left:12px}.gallery-card__content strong{font-size:11px}.gallery-card__content small{font-size:10px}.gallery-card__zoom{height:27px;width:27px;left:10px;top:10px}.gallery-card__zoom .icon{width:13px;height:13px}.gallery-note{font-size:10px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-card{padding:21px 16px 18px;min-height:250px}.service-card__number{top:16px;left:12px;font-size:11px}.service-icon{height:43px;width:43px;margin-bottom:16px}.service-icon .icon{width:22px;height:22px}.service-card h3{font-size:13px}.service-card p{font-size:11px;line-height:1.85}.service-book{font-size:11px;gap:5px}.service-book .icon{width:13px;height:13px}
  .hospitality-panel{padding:26px 18px;gap:20px}.hospitality-panel__head h3{font-size:21px}.hospitality-panel__items{gap:6px}.hospitality-panel__items button{font-size:10px;padding:8px 4px;min-height:107px;gap:8px}
  .about-grid{display:flex;flex-direction:column;gap:32px}.about-photo,.about-copy{order:initial;width:100%}.about-photo{padding:0 10px 20px 0;max-width:470px;align-self:center}.about-photo:before{left:20px;right:0;top:20px}.about-photo img{height:360px}.about-photo__badge{right:-8px;min-width:163px}.about-copy p{font-size:13px}.about-checks{gap:10px 14px}.about-checks span{font-size:11px}
  .reviews-section{padding:65px 0}.reviews-layout{grid-template-columns:1fr;gap:24px}.reviews-layout h2{font-size:35px}.reviews-layout p{font-size:13px}.reviews-card{padding:26px}.reviews-card h3{font-size:15px}.reviews-card .button{font-size:12px}
  .booking-section{padding-bottom:82px}.booking-aside{padding:31px 26px}.booking-aside h3{font-size:26px;margin:15px 0 9px}.booking-aside__benefits{flex-direction:column;margin-bottom:23px}.form-tabs{padding:6px;gap:6px}.form-tab{font-size:12px;padding:12px 5px}.form-panel{padding:24px 17px 26px}.form-intro h3{font-size:19px}.form-row.two-col,.form-row.three-col{grid-template-columns:1fr;gap:12px}.form-row{margin-bottom:12px}.field{margin-bottom:12px;font-size:12px}.field input,.field select,.field textarea{font-size:13px;min-height:44px}.service-choices{gap:7px}.choice span{font-size:11px;padding:10px 8px;gap:6px;line-height:1.6;min-height:45px}.choice span::before{height:14px;width:14px}.quantities{grid-template-columns:1fr}.button--submit{font-size:13px}.form-disclaimer{font-size:10px}
  .map-panel,.map-panel iframe{min-height:300px}.contact-panel{padding:25px 20px}.contact-line strong,.contact-line a{font-size:13px}.contact-buttons .button{padding:10px;font-size:12px}.social-buttons{gap:6px}.social-buttons a{padding:7px;font-size:11px}
  .footer{padding:29px 0 15px}.footer__top{flex-direction:column;align-items:flex-start;gap:18px;padding-bottom:18px}.footer__brand img{width:94px;height:53px}.footer__brand strong{font-size:12px}.footer__links{flex-wrap:wrap;gap:12px;font-size:11px}.footer__bottom{flex-direction:column;gap:3px;font-size:10px}
  .whatsapp-float{left:13px;bottom:calc(84px + env(safe-area-inset-bottom));padding:11px;border-radius:50%;width:47px;height:47px;justify-content:center}.whatsapp-float span{display:none}
  .mobile-action-bar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;right:0;left:0;background:#fff;z-index:90;border-top:1px solid #e7e2d8;box-shadow:0 -5px 24px rgba(22,32,45,.13);padding-bottom:env(safe-area-inset-bottom);min-height:69px}
  .mobile-action-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:11px;font-weight:700;color:var(--navy);border-left:1px solid #e9e5dd;padding:8px 2px}
  .mobile-action-bar a:last-child{border:0}.mobile-action-bar .icon{width:21px;height:21px;color:var(--gold-rich)}.mobile-action-bar .mobile-action-bar__book{background:var(--gold);color:var(--navy)}.mobile-action-bar .mobile-action-bar__book .icon{color:var(--navy)}
  .lightbox{grid-template-columns:35px 1fr 35px;gap:0;padding:40px 6px}.lightbox button{width:32px;height:32px}.lightbox button .icon{width:19px;height:19px}.lightbox__close{left:17px;top:20px}.lightbox__body img{max-height:70vh}.lightbox__body p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.js-animations .reveal{opacity:1;transform:none}}

/* Keep the Saudi phone number in an unambiguous international reading order. */
.topbar__inner>a span{direction:ltr;unicode-bidi:isolate}

/* Curated gallery photographs: no assumptions about card order. */
.gallery-card img{object-position:center center}
