@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{--ink:#111;--paper:#f5f3ee;--muted:#777;--line:#ddd8cf;--accent:#d7b36a;--dark:#101010;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"IBM Plex Sans Arabic",sans-serif;line-height:1.6}body.is-rtl{font-family:"IBM Plex Sans Arabic",Inter,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.narrow{max-width:900px}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(16,16,16,.9);color:#fff;backdrop-filter:blur(14px)}.header-inner{height:82px;width:min(calc(100% - 48px),var(--max));margin:auto;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.03em;min-width:190px}.brand-mark{width:36px;height:36px;border:1px solid #fff;display:grid;place-items:center;font-size:12px}.brand-name{font-size:15px}.custom-logo{max-height:48px;width:auto}.main-nav{flex:1}.nav-list{list-style:none;margin:0;padding:0;display:flex;gap:26px;justify-content:center}.nav-list a{font-size:13px;opacity:.9}.nav-list a:hover{opacity:1}.header-actions{display:flex;align-items:center;gap:14px}.icon-btn,.menu-toggle{background:none;border:0;color:#fff;font-size:24px;cursor:pointer}.lang-switch{font-size:12px;border:1px solid #555;padding:6px 9px}.menu-toggle{display:none}.search-panel{display:none;border-top:1px solid #333;padding:20px}.search-panel.open{display:block}.search-form{display:flex;gap:10px}.search-form input{flex:1;padding:14px;background:#222;border:1px solid #444;color:#fff}
.hero{height:92vh;min-height:680px;position:relative;background:#111;color:#fff;overflow:hidden}.hero-media,.hero-media img,.hero-placeholder{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-placeholder{background:radial-gradient(circle at 70% 30%,#4b4b4b,#111 60%)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.2) 70%,rgba(0,0,0,.5))}.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;max-width:900px;margin-left:max(24px,calc((100% - var(--max))/2));margin-right:auto}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600;opacity:.75}.hero h1{font-size:clamp(48px,7vw,110px);line-height:.95;max-width:900px;margin:18px 0 24px;letter-spacing:-.055em}.hero p{max-width:600px;font-size:18px;opacity:.86}.hero-scroll{position:absolute;z-index:2;bottom:28px;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.7}
.section{padding:110px 0}.section-dark{background:var(--dark);color:#fff}.section-accent{background:var(--accent)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section h2{font-size:clamp(40px,5vw,76px);line-height:.95;letter-spacing:-.05em;margin:10px 0}.text-link{font-size:13px;text-decoration:underline;text-underline-offset:5px}.date-strip{display:flex;gap:28px;border-bottom:1px solid #444;padding-bottom:14px;margin-bottom:36px;overflow:auto}.date-strip span{white-space:nowrap;opacity:.55;font-size:13px}.date-strip .active{opacity:1}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.event-card{background:#191919;overflow:hidden}.section:not(.section-dark) .event-card{background:#fff}.card-image{aspect-ratio:1.35;overflow:hidden;background:#ddd}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.event-card:hover .card-image img{transform:scale(1.04)}.card-body{padding:24px}.meta{font-size:11px;opacity:.55;text-transform:uppercase;letter-spacing:.08em}.event-card h3{font-size:26px;line-height:1.1;margin:12px 0}.event-card p{font-size:14px;opacity:.7}.empty-state{padding:50px;border:1px dashed #555;grid-column:1/-1}.split-feature{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}.split-feature h2{font-size:clamp(44px,6vw,88px)}.split-feature p{max-width:560px;color:var(--muted);font-size:17px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.mini-feature{position:relative;aspect-ratio:1.2;overflow:hidden;background:#ddd}.mini-feature img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.mini-feature:hover img{transform:scale(1.05)}.mini-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.mini-feature span{position:absolute;z-index:2;bottom:16px;left:16px;color:#fff;font-weight:600}.center{text-align:center}.center p{max-width:650px;margin:0 auto 30px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.story-card{background:#fff}.story-card img{aspect-ratio:1.35;object-fit:cover}.story-card div{padding:22px}.story-card h3{font-size:28px;line-height:1.05;margin:10px 0}
.btn{display:inline-flex;align-items:center;gap:14px;padding:14px 22px;font-weight:600;font-size:13px;border:1px solid transparent}.btn-light{background:#fff;color:#111}.btn-dark{background:#111;color:#fff}.full{width:100%;justify-content:center}.page-hero{padding:180px 0 90px;background:#111;color:#fff}.page-hero h1{font-size:clamp(55px,8vw,120px);line-height:.9;letter-spacing:-.06em;margin:15px 0}.page-hero p{max-width:650px;opacity:.75}.filter-bar{display:grid;grid-template-columns:1fr 260px auto;gap:12px;margin-bottom:45px}.filter-bar input,.filter-bar select{padding:15px;border:1px solid var(--line);background:#fff}.single-hero{height:70vh;min-height:550px;background:#111;color:#fff;position:relative}.single-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.single-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 70%)}.single-title{position:absolute;z-index:2;bottom:60px;left:50%;transform:translateX(-50%)}.single-title h1{font-size:clamp(48px,7vw,100px);line-height:.9;letter-spacing:-.06em;margin:15px 0}.detail-layout{display:grid;grid-template-columns:1fr 360px;gap:80px}.content{font-size:18px}.content img{margin:35px 0}.booking-panel{background:#fff;padding:28px;align-self:start;position:sticky;top:110px}.detail-row{padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:13px}.detail-row span{text-align:right;color:var(--muted)}.site-footer{background:#111;color:#fff;padding:70px 0 20px}.footer-top{width:min(calc(100% - 48px),var(--max));margin:auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:45px}.footer-brand{font-size:30px;font-weight:700}.site-footer h4{margin-top:0}.site-footer p{opacity:.65;font-size:13px}.site-footer .nav-list{display:block}.site-footer .nav-list li{margin:8px 0}.newsletter{display:flex}.newsletter input{min-width:0;flex:1;padding:12px;border:1px solid #444;background:#222;color:#fff}.newsletter button{padding:12px 16px;border:0}.footer-bottom{width:min(calc(100% - 48px),var(--max));margin:55px auto 0;padding-top:18px;border-top:1px solid #333;display:flex;justify-content:space-between;font-size:11px;opacity:.55}
.ch-admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.ch-admin-grid label span{display:block;font-weight:600;margin-bottom:4px}.ch-admin-grid input{width:100%;padding:8px}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#111;padding:20px}.main-nav.open{display:block}.nav-list{display:block}.nav-list li{padding:12px 0}.menu-toggle{display:block}.card-grid,.story-grid{grid-template-columns:1fr 1fr}.split-feature,.detail-layout{grid-template-columns:1fr;gap:45px}.booking-panel{position:static}.footer-top{grid-template-columns:1fr 1fr}.filter-bar{grid-template-columns:1fr}.hero-content{margin:0 24px}.hero h1{font-size:clamp(46px,14vw,78px)}}
@media(max-width:600px){.container,.header-inner,.footer-top,.footer-bottom{width:min(calc(100% - 30px),var(--max))}.header-inner{gap:12px}.brand{min-width:0}.brand-name{display:none}.header-actions{margin-left:auto}.card-grid,.story-grid,.feature-grid,.footer-top{grid-template-columns:1fr}.section{padding:75px 0}.section-head{align-items:start;flex-direction:column}.section h2{font-size:48px}.hero{min-height:620px}.hero p{font-size:15px}.page-hero{padding:140px 0 70px}.single-title{width:calc(100% - 30px)}.single-hero{min-height:500px;height:65vh}.footer-bottom{flex-direction:column;gap:10px}.ch-admin-grid{grid-template-columns:1fr}}

/* Heritage Village final polish */
:root{--heritage:#7b4b2a;--sand:#c8a46a;--cream:#f4eee4}
body{background:var(--cream)}
.site-header{background:rgba(36,23,15,.92)}
.hero-placeholder{background:radial-gradient(circle at 65% 30%,#9b7248,#24170f 62%)}
.section-accent{background:var(--sand)}
.hero-content{direction:rtl;text-align:right}
.hero-content .btn{align-self:flex-start}
[dir="rtl"] .hero-content .btn{align-self:flex-start}
[dir="rtl"] .single-title{left:auto;right:50%;transform:translateX(50%)}
[dir="rtl"] .detail-row span{text-align:left}
.mega-menu{position:absolute;top:82px;left:0;right:0;background:#1d130d;color:#fff;padding:32px 0;display:none;border-top:1px solid #4b3727}
.mega-menu.open{display:block}
.mega-inner{width:min(calc(100% - 48px),var(--max));margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.mega-inner h4{margin:0 0 10px;color:var(--sand)}
.mega-inner a{display:block;padding:6px 0;opacity:.8;font-size:13px}
.booking-panel{border-top:4px solid var(--sand)}
.page-hero{background:#21150f}
.btn-dark{background:#24170f}
@media(max-width:700px){.mega-inner{grid-template-columns:1fr 1fr}}
:root{--heritage-brown:#3a2417;--heritage-gold:#c6a15b;--heritage-sand:#eee2cf;--heritage-dark:#0f0c09;--max:1440px}
html{scroll-padding-top:90px}body{overflow-x:hidden}button,a,input,select,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--heritage-gold)}
.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(20,10,5,.82),rgba(20,10,5,.18) 68%,rgba(20,10,5,.62))}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.card-image img,.mini-feature img{transition:none}}
.lang-switch{min-width:34px;text-align:center}.site-header{box-shadow:0 1px 0 rgba(255,255,255,.08)}
.archive-page .page-hero p{max-width:760px}.empty-state strong{display:block;margin-top:8px}.content a{text-decoration:underline;text-underline-offset:3px}.content h2,.content h3{line-height:1.15}
/* English presentation when ?lang=en is active */
html[lang="en-US"] body{direction:ltr}html[lang="en-US"] .hero-content{text-align:left;direction:ltr;margin-left:max(24px,calc((100% - var(--max))/2));margin-right:auto}html[lang="en-US"] .section-head{text-align:left}html[lang="en-US"] .single-title{left:50%;right:auto;transform:translateX(-50%)}

.payment-demo-box input{width:100%;max-width:520px;padding:12px;border:1px solid #ccc;margin-top:6px}.payment-demo-box label{display:block;margin:12px 0}.payment-demo-box .button{padding:12px 22px}
