:root{--font-headline-en:__elMessiri_d442f7,Georgia,serif;--font-body-en:__inter_a90db8,Arial,sans-serif;--font-arabic:__cairo_bdfe13,Arial,sans-serif;--font-jetbrains:__jetbrains_2762fb,monospace;--font-body:var(--font-body-en);--font-headline:var(--font-headline-en);--font-label:var(--font-jetbrains);--site-accent:#d4c8b0}html,body{color:#faf7f2;background:#1a2026;min-height:100%;margin:0}*{box-sizing:border-box}body{font-family:var(--font-body)}[lang=ar]{--font-body:var(--font-arabic);--font-headline:var(--font-arabic);--font-label:var(--font-arabic)}button,a,input,select{touch-action:manipulation}:is(button:focus-visible,a:focus-visible){outline-offset:4px;outline:2px solid #d4c8b0}select option{color:#faf7f2;background:#1a2026}.locale-panel{inset-inline-end:0;color:#1a2026;z-index:1050;background:#faf7f2;border:1px solid #d4c8b0;border-radius:16px;width:256px;padding:20px;position:absolute;top:calc(100% + 12px);box-shadow:0 20px 50px #0003}.locale-panel button,.locale-panel a{border-radius:12px;align-items:center;gap:12px;min-height:44px;padding:10px 12px;font-size:13px;display:flex}.locale-panel button:hover,.locale-panel a:hover,.locale-panel [aria-selected=true]{background:#d4c8b033}.locale-panel p{letter-spacing:.2em;text-transform:uppercase;opacity:.55;margin:0 0 10px;font-size:9px}.currency-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.nav-overlay{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:990;background:#1a2026fa;padding:120px 32px 48px;position:fixed;inset:0;overflow:auto}.nav-overlay a{font-family:var(--font-headline);padding:12px 0;font-size:30px;display:block}.booking-error{color:#f8a4a4;margin-top:6px;font-size:12px}.booking-notice{color:#faf7f2aa;border:1px solid #faf7f226;border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.6}.success-panel{background:#d4c8b00d;border:1px solid #d4c8b0;border-radius:12px;padding:28px}.success-panel h2{margin-bottom:12px;font-size:26px}.success-panel p{margin:8px 0;line-height:1.7}.hp-field{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.room-photo{object-fit:cover;width:100%;height:144px}.room-availability{background:#faf7f20a;border:1px solid #faf7f226;border-radius:12px;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;font-size:13px;display:flex}.room-dot{background:#2e6b45;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 4px #2e6b452e}.room-count-btn{color:#d4c8b0;border:1px solid #d4c8b080;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;display:flex}.room-count-btn:disabled{opacity:.3;cursor:not-allowed}.room-count-btn:hover:not(:disabled){background:#d4c8b01a}.footer-wrap footer{margin-top:0}.form-submitting{opacity:.65}.submit-status{color:#f8a4a4;font-size:13px;line-height:1.6}input::-webkit-calendar-picker-indicator{cursor:pointer}input[type=date]{min-width:0}main{scroll-margin-top:110px}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media (max-width:380px){.locale-toggle{padding:8px 10px!important}.booking-title{font-size:24px!important}}.booking-shell{--motion-ease:cubic-bezier(.2, .65, .3, 1);--mobile-menu-gap:16px}.booking-shell .booking-nav{animation:nav-arrive .42s var(--motion-ease) backwards}.booking-shell .booking-heading{animation:booking-rise .48s var(--motion-ease) backwards}.booking-shell .booking-form>div:not(.hp-field){animation:booking-rise .36s var(--motion-ease) backwards}.booking-shell .booking-form input,.booking-shell .booking-form select,.booking-shell #booking-rooms{scroll-margin-top:120px;scroll-margin-bottom:24px}.booking-shell .locale-panel{animation:panel-arrive .18s var(--motion-ease) backwards;max-height:calc(100vh - 112px);overscroll-behavior:contain;max-height:calc(100dvh - 112px);overflow-y:auto}.booking-footer{border-top:1px solid #faf7f21a;padding:28px 24px}.booking-footer>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;max-width:672px;margin:auto;display:flex}.booking-footer img{width:auto;height:36px}.booking-location{font-family:var(--font-body);border-top:1px solid #d4c8b033;margin-top:48px;padding-top:32px}.booking-location h2{color:#faf7f2;font-family:var(--font-headline);margin:0 0 18px;font-size:24px;line-height:1.4}.booking-location address{color:#faf7f2b3;overflow-wrap:anywhere;max-width:620px;margin:0;font-size:14px;font-style:normal;line-height:1.9}.booking-location ul{color:#d4c8b0;gap:8px;margin:18px 0;padding-inline-start:20px;font-size:13px;line-height:1.7;list-style:outside;display:grid}.booking-location-links{flex-wrap:wrap;gap:12px;margin:22px 0;display:flex}.booking-location-links a{color:#d4c8b0;border:1px solid #d4c8b080;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:11px 16px;font-size:13px;transition:background .2s,color .2s;display:inline-flex}.booking-location-links a:hover{background:#d4c8b01a}.booking-location-links .booking-location-directions{color:#1a2026;background:#d4c8b0}.booking-location-links .booking-location-directions:hover{background:#e5d4ab}.booking-location-map{background:#252c31;border:1px solid #d4c8b04d;border-radius:12px;width:100%;height:320px;display:block}@media (max-width:500px){.booking-location{margin-top:36px;padding-top:26px}.booking-location-map{height:260px}.booking-location h2{font-size:22px}}.booking-footer p{color:#faf7f280;letter-spacing:.12em;font-size:11px}.phone-input-row{grid-template-columns:112px minmax(0,1fr);gap:10px;display:grid}.phone-country-control{background:#faf7f208;border:1px solid #faf7f226;border-radius:8px;min-height:48px;position:relative}.phone-country-control:focus-within{outline-offset:2px;border-color:#d4c8b0;outline:2px solid #d4c8b0}.phone-country-invalid{border-color:#f87171b3}.phone-country-display{color:#faf7f2;pointer-events:none;align-items:center;gap:7px;padding:10px;font-size:15px;display:flex;position:absolute;inset:0}.phone-country-display img{object-fit:cover;border-radius:2px;width:24px;height:16px;display:block}.phone-country-arrow{opacity:.6;margin-left:auto;font-size:14px}.phone-country-select{opacity:0;cursor:pointer;width:100%;height:100%;font-size:16px;position:absolute;inset:0}.phone-input-row input{min-width:0}.phone-input-hint{color:#faf7f280;margin-top:7px;font-size:11px;line-height:1.6}.booking-whatsapp{color:#faf7f2;align-items:center;gap:10px;min-height:44px;font-size:13px;display:inline-flex}.booking-whatsapp svg{color:#25d366;flex-shrink:0}.booking-whatsapp:hover{color:#d4c8b0}.booking-shell .locale-panel [aria-pressed=true]{background:#d4c8b033;box-shadow:inset 0 0 0 1px #d4c8b080}.booking-shell .locale-toggle{min-height:44px}.booking-shell .menu-toggle{flex-shrink:0;min-width:44px;min-height:44px}.booking-shell .menu-toggle span span{transition:transform .22s var(--motion-ease), opacity .16s ease;transform-origin:50%}.booking-shell[data-menu-open=true] .menu-toggle span span:first-child{transform:translateY(8px)rotate(45deg)}.booking-shell[data-menu-open=true] .menu-toggle span span:nth-child(2){opacity:0}.booking-shell[data-menu-open=true] .menu-toggle span span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.booking-shell .nav-overlay{animation:panel-arrive .24s var(--motion-ease) backwards;min-height:100vh;overscroll-behavior:contain;min-height:100dvh}.booking-shell .nav-overlay a{animation:booking-rise .28s var(--motion-ease) backwards}.booking-shell .room-choice,.booking-shell .room-counter{animation:booking-rise .34s var(--motion-ease) backwards;animation-delay:calc(var(--reveal-order,0) * 30ms);transition:border-color .18s ease, background-color .18s ease, box-shadow .22s ease, transform .22s var(--motion-ease);position:relative}.booking-shell .room-choice{isolation:isolate}.booking-shell .room-choice[data-selected=true]{box-shadow:0 0 0 1px #d4c8b060,0 10px 28px #0002}.booking-shell .room-photo-frame{height:144px;overflow:hidden}.booking-shell .room-photo{transition:transform .4s var(--motion-ease);display:block}.booking-shell .room-selected-mark{inset-inline-end:12px;z-index:1;color:#1a2026;opacity:0;width:30px;height:30px;transition:opacity .16s ease, transform .2s var(--motion-ease);background:#d4c8b0;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;transform:scale(.65);box-shadow:0 3px 12px #0003}.booking-shell .room-choice[data-selected=true] .room-selected-mark{opacity:1;transform:scale(1)}.booking-shell .room-count-btn{flex-shrink:0;width:44px;height:44px;transition:background-color .16s,transform .16s}.booking-shell .room-count-btn:active:not(:disabled),.booking-shell .submit-button:active:not(:disabled){transform:scale(.96)}.booking-shell .room-count-value{animation:number-arrive .18s var(--motion-ease);font-variant-numeric:tabular-nums;display:inline-block}.booking-shell .room-loading{animation:1.4s ease-in-out infinite availability-pulse}.booking-shell .estimate-panel{animation:booking-rise .22s var(--motion-ease) backwards;font-variant-numeric:tabular-nums;border-color:#d4c8b05c}.booking-shell .booking-error,.booking-shell .submit-status{animation:booking-rise .18s var(--motion-ease) backwards}.booking-shell .success-panel{animation:booking-rise .42s var(--motion-ease) backwards;overflow-wrap:anywhere}.booking-shell .submit-button{justify-content:center;align-items:center;gap:10px;min-height:48px;transition:opacity .16s,transform .16s,box-shadow .18s;display:inline-flex}.booking-shell .submit-spinner{border:1.5px solid #1a202640;border-top-color:#1a2026;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.8s linear infinite spinner-turn}.room-choice{flex-direction:column;display:flex}.room-card-body{flex-direction:column;flex:1;display:flex}.room-card-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:12px;display:flex}.view-room-button,.room-select-button{min-height:44px;font:inherit;cursor:pointer;border-radius:6px;font-size:12px}.view-room-button{color:#d4c8b0;text-underline-offset:4px;align-items:center;gap:6px;padding:8px 0;text-decoration:underline;display:inline-flex}.room-counter .view-room-button{margin-top:4px}.room-select-button{color:#faf7f2;border:1px solid #d4c8b060;margin-inline-start:auto;padding:8px 12px}.room-select-button[aria-pressed=true]{color:#1a2026;background:#d4c8b0}.room-select-button:disabled{cursor:not-allowed;opacity:.4}.room-capacity-note{color:#d4c8b0;margin-top:8px;font-size:11px}.room-dialog{width:min(960px,100vw - 32px);max-width:none;max-height:calc(100vh - 32px);color:#faf7f2;background:#1a2026;border:1px solid #d4c8b04d;border-radius:18px;max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 100px #0008}.room-dialog[open]{flex-direction:column;animation:.18s backwards panel-arrive;display:flex}.room-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080c10cf}.room-dialog-header{border-bottom:1px solid #faf7f21a;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.room-dialog-eyebrow{color:#d4c8b0;letter-spacing:.18em;margin-bottom:5px;font-size:10px}.room-dialog h2{font-family:var(--font-headline), Georgia, serif;font-size:clamp(18px,2.5vw,26px);line-height:1.25}.room-dialog-close{cursor:pointer;border:1px solid #d4c8b050;border-radius:50%;min-width:44px;min-height:44px;font-size:30px}.room-dialog-scroll{overscroll-behavior:contain;min-height:0;overflow:auto}.room-gallery-stage{background:#0e1318;position:relative}.room-gallery-photo{object-fit:contain;width:100%;height:min(45vh,440px);animation:.16s panel-arrive;display:block}.room-gallery-arrows{pointer-events:none;justify-content:space-between;display:flex;position:absolute;inset:50% 12px auto;transform:translateY(-50%)}.room-gallery-arrows button{pointer-events:auto;color:#fff;cursor:pointer;background:#10161ad9;border:1px solid #ffffff40;border-radius:50%;width:44px;height:44px;font-size:32px;line-height:1}.room-gallery-count{bottom:12px;background:#10161adb;border-radius:20px;padding:5px 12px;font-size:12px;position:absolute;inset-inline-end:16px}.room-gallery-thumbs{gap:8px;padding:12px 24px;display:flex;overflow-x:auto}.room-gallery-thumbs button{cursor:pointer;opacity:.65;border:2px solid #0000;border-radius:5px;flex-shrink:0;width:74px;height:54px;overflow:hidden}.room-gallery-thumbs button[aria-pressed=true]{opacity:1;border-color:#d4c8b0}.room-gallery-thumbs img{object-fit:cover;width:100%;height:100%}.room-dialog-details{padding:12px 24px 28px;font-size:14px;line-height:1.75}.room-dialog-details section+section{margin-top:24px}.room-dialog-details h3{color:#d4c8b0;margin-bottom:10px;font-size:18px}.room-dialog-details p{color:#faf7f2b3}.room-dialog-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;display:grid}.room-dialog-facts dt{color:#faf7f280;font-size:12px}.room-dialog-facts dd{overflow-wrap:anywhere}.room-dialog-facilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;display:grid}.room-dialog-facilities li{gap:8px;display:flex}.room-dialog-facilities li:before{content:"✓";color:#d4c8b0}.room-dialog-footer{background:#1a2026;border-top:1px solid #faf7f21a;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px 16px;padding:16px 24px;display:flex}.room-dialog-footer>p:first-child{margin-inline-end:auto}.room-dialog-footer strong{color:#d4c8b0;font-size:20px}.room-dialog-footer span{color:#faf7f280;margin-inline-start:4px;font-size:12px}.room-dialog-select,.room-dialog-back{cursor:pointer;border-radius:8px;min-height:44px;padding:10px 16px;font-size:13px}.room-dialog-select{color:#1a2026;background:#d4c8b0}.room-dialog-select:disabled{cursor:not-allowed;opacity:.4}.room-dialog-back{border:1px solid #faf7f233}.room-dialog-reason{color:#d4c8b0;flex-basis:100%;font-size:12px}.room-dialog button:focus-visible{outline-offset:3px;outline:2px solid #d4c8b0}.view-room-button:focus-visible{outline-offset:3px;outline:2px solid #d4c8b0}.room-select-button:focus-visible{outline-offset:3px;outline:2px solid #d4c8b0}@media (max-width:600px){.room-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px);border-radius:12px;max-height:calc(100dvh - 16px)}.room-dialog-header,.room-dialog-footer{padding:12px 16px}.room-dialog-details{padding:10px 16px 24px}.room-gallery-thumbs{padding:10px 16px}.room-gallery-photo{height:30vh}.room-dialog-facilities{grid-template-columns:1fr}.room-dialog-footer{gap:8px}.room-dialog-footer>p:first-child{flex-basis:100%}.room-dialog-select,.room-dialog-back{flex:1}}@media (hover:hover) and (pointer:fine){.booking-shell .room-choice:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 26px #0003}.booking-shell .room-choice:hover:not(:disabled) .room-photo{transform:scale(1.045)}.booking-shell .submit-button:hover:not(:disabled){box-shadow:0 5px 20px #d4c8b024}}@media (max-width:1023px){.booking-shell .locale-panel{width:min(256px,100vw - 48px);inset-inline-end:0}.booking-shell .booking-form input,.booking-shell .booking-form select{min-height:48px;font-size:16px}}@media (max-width:400px){.booking-shell{--mobile-menu-gap:8px}.booking-shell .booking-nav{padding-inline:16px}.booking-shell .booking-nav>div:last-child{gap:var(--mobile-menu-gap)}}.availability-refresh-note{font-family:var(--font-body);color:#faf7f28c;margin:0 0 14px;font-size:11px;line-height:1.7}.availability-party-note{color:#faf7f2ad;margin-top:5px;font-size:11px;line-height:1.6;display:block}.availability-selection-warning{color:#e5c19c;margin-top:5px;font-size:11px;line-height:1.6;display:block}@keyframes nav-arrive{0%{opacity:.45;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes booking-rise{0%{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes panel-arrive{0%{opacity:.35;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes number-arrive{0%{opacity:.45;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes availability-pulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes spinner-turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.booking-shell *,.booking-shell :before,.booking-shell :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.room-offer-rate{font-family:var(--font-body);flex-wrap:wrap;align-items:center;gap:6px 9px;margin-top:8px;font-size:11px;line-height:1.6;display:flex}.room-comparison-rate{color:#faf7f28c}.room-comparison-rate s{text-decoration-thickness:1px}.room-discount-tag{color:#e5d4ab;white-space:nowrap;background:#d4c8b017;border:1px solid #d4c8b066;border-radius:5px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.room-stay-offer{background:#d4c8b008;border:1px solid #d4c8b04d;border-radius:12px;padding:18px}.room-stay-offer .room-special-price{color:#e5d4ab;margin-top:8px}.room-stay-offer ul{color:#faf7f2c4;gap:9px;margin-top:16px;padding-inline-start:20px;font-size:13px;line-height:1.8;list-style:outside;display:grid}.room-stay-offer .room-offer-terms{color:#faf7f28c;margin-top:14px;font-size:11px;line-height:1.7}.stay-offer-summary{color:#e5d4ab;gap:4px;margin-top:10px;font-size:12px;line-height:1.7;display:grid}.booking-offer-guide,.booking-discount-quote{font-family:var(--font-body);background:linear-gradient(140deg,#d4c8b011,#1a2026);border:1px solid #d4c8b069;border-radius:12px;padding:18px}.booking-offer-guide>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.booking-offer-guide h2{font-family:var(--font-label);letter-spacing:.12em;color:#e5d4ab;margin:0;font-size:12px}.booking-offer-guide>header>span,.booking-offer-option-title>span{color:#e5d4ab;white-space:nowrap;background:#d4c8b01c;border-radius:5px;padding:4px 7px;font-size:10px;font-weight:700}.booking-offer-hint{color:#faf7f2d9;margin:12px 0;font-size:13px;line-height:1.7}.booking-nightly-savings{color:#faf7f299;border-top:1px solid #d4c8b029;flex-wrap:wrap;justify-content:space-between;gap:5px 12px;padding:10px 0;font-size:12px;line-height:1.7;display:flex}.booking-nightly-savings strong{color:#e5d4ab}.booking-nightly-savings>span:last-child{color:#e5d4ab;width:100%}.booking-offer-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.booking-offer-option{background:#faf7f204;border:1px solid #faf7f229;border-radius:10px;flex-direction:column;gap:9px;min-width:0;padding:13px;display:flex}.booking-offer-option[data-applied=true]{background:#d4c8b00d;border-color:#d4c8b0}.booking-offer-option-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.booking-offer-option-title h3{font-family:var(--font-headline);color:#faf7f2;margin:0;font-size:17px}.booking-offer-option>p{color:#faf7f2ad;margin:0;font-size:12px;line-height:1.7}.booking-offer-amounts,.booking-quote-prices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:3px 0;display:grid}.booking-offer-amounts dt,.booking-quote-prices dt{color:#faf7f28c;margin-bottom:4px;font-size:11px}.booking-offer-amounts dd,.booking-quote-prices dd{overflow-wrap:anywhere;color:#faf7f299;margin:0;font-size:13px}.booking-offer-amounts strong{color:#e5d4ab;font-size:15px}.booking-offer-option .booking-offer-saving{color:#e5d4ab}.booking-offer-option .booking-offer-change{color:#faf7f28c;font-size:10px}.booking-offer-option button{color:#e5d4ab;min-height:44px;font-family:var(--font-label);border:1px solid #d4c8b07d;border-radius:7px;margin-top:auto;padding:10px;font-size:10px;transition:background .2s}.booking-offer-option button:hover:not(:disabled),.booking-offer-option button[aria-pressed=true]{color:#1a2026;background:#d4c8b0}.booking-offer-option button:disabled{opacity:.45;cursor:not-allowed}.booking-offer-terms{color:#faf7f270;margin:12px 0 0;font-size:10px;line-height:1.7}.booking-quote-nights{color:#faf7f2b3;margin:0 0 12px;font-size:12px}.booking-quote-prices strong{color:#e5d4ab;font-size:22px}.booking-total-saving{color:#e5d4ab;margin:10px 0;font-size:12px;line-height:1.7}.booking-stay-step{color:#faf7f2ad;border-top:1px solid #d4c8b029;gap:5px;padding-top:10px;font-size:12px;line-height:1.7;display:grid}.booking-stay-step p{margin:0}.booking-stay-step strong{color:#e5d4ab}@media (max-width:500px){.booking-offer-options{grid-template-columns:1fr}.booking-offer-guide,.booking-discount-quote{padding:15px}.booking-quote-prices strong{font-size:18px}}
