:root{
  --bg:#f2efe9;
  --bg-soft:#faf7f2;
  --panel:#ffffff;
  --panel-2:#f8f5ef;
  --text:#161514;
  --muted:#6f695f;
  --line:rgba(22,21,20,.08);
  --line-strong:rgba(22,21,20,.14);
  --gold:#b89558;
  --gold-soft:#e8dcc5;
  --accent:#1f3a32;
  --accent-soft:#e6f1ed;
  --dark:#131313;
  --dark-2:#1b1a19;
  --danger:#9b2c2c;
  --danger-bg:#fff1f1;
  --success:#215e43;
  --success-bg:#edf8f2;
  --warning:#8f6233;
  --warning-bg:#fff8ed;
  --info:#295f9a;
  --info-bg:#edf5ff;
  --radius:24px;
  --radius-lg:34px;
  --shadow:0 24px 60px rgba(27,26,25,.09);
  --shadow-soft:0 10px 28px rgba(27,26,25,.06);
  --max:1280px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(184,149,88,.12), transparent 24%),
    linear-gradient(180deg,#f6f2eb 0%,#f1ede7 100%);
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
input,select,textarea{
  width:100%;
  padding:14px 16px;
  border:1px solid var(--line-strong);
  border-radius:16px;
  background:#fff;
  color:var(--text);
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(184,149,88,.65);
  box-shadow:0 0 0 4px rgba(184,149,88,.12);
}
textarea{resize:vertical;min-height:120px}
label{display:block;font-size:13px;font-weight:700;margin:0 0 8px;color:#39352f}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.narrow{width:min(920px,calc(100% - 40px));margin-inline:auto}
.center{text-align:center}
.section{padding:88px 0}
.section-soft{
  background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,255,255,.82));
  border-top:1px solid rgba(255,255,255,.8);
  border-bottom:1px solid rgba(22,21,20,.04);
}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:30px}
.section-head h2,
.page-hero h1,
.hero h1,
.display-title,
.card-body h3,
.hero-card h3,
.footer-cta h3,
.panel-card h3,
.room-summary-card h3,
.contact-panel h3{
  font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;
  font-weight:700;
  letter-spacing:-.03em;
}
.section-head h2{margin:10px 0 0;font-size:clamp(2rem,3.3vw,3.3rem);line-height:1.05;max-width:14ch}
.section-copy{max-width:55ch;color:var(--muted)}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 13px;border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(184,149,88,.22);
  color:#67583e;font-size:12px;font-weight:800;
  text-transform:uppercase;letter-spacing:.14em;
  backdrop-filter:blur(10px);
}
.eyebrow-dark{
  background:rgba(255,255,255,.1);
  color:#efe5d2;
  border-color:rgba(255,255,255,.16);
}
.page-hero{padding:96px 0 34px}
.page-hero h1{font-size:clamp(2.8rem,5vw,4.6rem);line-height:1;margin:12px 0 10px}
.page-hero p{max-width:52ch;color:var(--muted);font-size:1.05rem}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  border-radius:999px;padding:14px 22px;font-weight:700;
  border:1px solid transparent;transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:var(--dark);color:#fff;box-shadow:0 16px 32px rgba(19,19,19,.18)}
.btn-dark:hover{background:#000}
.btn-outline{background:rgba(255,255,255,.76);border-color:rgba(22,21,20,.1);color:var(--dark)}
.btn-outline:hover{background:#fff;box-shadow:var(--shadow-soft)}
.btn-light{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.2);color:#fff}
.btn-block{width:100%}
.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#2f2a24}
.text-link::after{content:'↗';font-size:12px}
.field{margin-bottom:16px}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.checkline{display:flex;align-items:center;gap:10px}
.checkline input{width:auto}
.rich-text{font-size:1.06rem;color:#3c3732}
.rich-text p:first-child{margin-top:0}
.alert{margin:16px 0;padding:14px 16px;border-radius:18px;border:1px solid transparent}
.alert-success{background:var(--success-bg);color:var(--success);border-color:rgba(33,94,67,.1)}
.alert-danger{background:var(--danger-bg);color:var(--danger);border-color:rgba(155,44,44,.1)}

/* Frontend */
.front-body{overflow-x:hidden}
.site-header{
  position:sticky;top:0;z-index:70;
  background:rgba(246,242,235,.76);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(22,21,20,.06);
}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:86px}
.brand-wrap{display:flex;align-items:center;gap:14px}
.brand-mark{
  width:46px;height:46px;border-radius:16px;
  background:linear-gradient(145deg,#d5bc84,#8f7042);
  color:#fff;display:grid;place-items:center;font-weight:900;font-size:16px;
  box-shadow:0 10px 22px rgba(143,112,66,.22);
}
.brand-stack{display:flex;flex-direction:column;gap:2px}
.brand{font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:1.65rem;font-weight:700;letter-spacing:-.04em}
.brand-sub{font-size:.78rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}
.nav-panel{display:flex;align-items:center;gap:20px;flex:1;justify-content:center}
.main-nav{display:flex;align-items:center;gap:22px;color:#5f584f;font-weight:600}
.main-nav a{position:relative;padding:8px 0}
.main-nav a::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.main-nav a:hover::after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:12px}
.lang-switch{
  width:48px;height:48px;display:grid;place-items:center;
  border-radius:999px;background:rgba(255,255,255,.8);border:1px solid rgba(22,21,20,.08);font-weight:800;
  box-shadow:var(--shadow-soft)
}
.nav-toggle{display:none;flex-direction:column;gap:4px;width:48px;height:48px;border-radius:16px;border:1px solid rgba(22,21,20,.08);background:#fff;align-items:center;justify-content:center;box-shadow:var(--shadow-soft)}
.nav-toggle span{width:18px;height:2px;background:#2b2722;border-radius:999px;transition:transform .2s ease, opacity .2s ease}
.nav-toggle.active span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-toggle.active span:nth-child(2){opacity:0}
.nav-toggle.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.hero{
  position:relative;
  padding:74px 0 72px;
  color:#fff;
  background:
    radial-gradient(circle at 15% 15%, rgba(184,149,88,.35), transparent 26%),
    linear-gradient(140deg,#111311 0%,#1d1e1d 42%,#29312d 100%);
  overflow:hidden;
}
.hero::before,
.hero::after{content:'';position:absolute;border-radius:999px;filter:blur(10px);opacity:.7;pointer-events:none}
.hero::before{width:260px;height:260px;right:-60px;top:-40px;background:rgba(184,149,88,.16)}
.hero::after{width:280px;height:280px;left:-80px;bottom:-120px;background:rgba(255,255,255,.05)}
.hero-grid{display:grid;grid-template-columns:1.15fr .95fr;gap:34px;align-items:center;position:relative;z-index:1}
.hero h1{font-size:clamp(3.4rem,6vw,6.2rem);line-height:.94;margin:16px 0 18px;max-width:9.5ch}
.hero-text{font-size:1.08rem;max-width:58ch;color:rgba(255,255,255,.74)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-meta{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px}
.hero-meta-item small{display:block;color:rgba(255,255,255,.56);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}
.hero-meta-item strong{display:block;font-size:1.15rem;margin-top:6px}
.hero-card{
  position:relative;
  padding:22px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
  backdrop-filter:blur(18px);
  box-shadow:0 28px 60px rgba(0,0,0,.2);
}
.hero-card h3{margin:0 0 14px;font-size:2rem;color:#fff}
.hero-card p{margin:0 0 14px;color:rgba(255,255,255,.7)}
.hero-card .mini-form input,.hero-card .mini-form select,.hero-card .mini-form textarea{background:rgba(255,255,255,.96)}
.hero-scene{
  position:relative;min-height:620px;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.12);
  box-shadow:0 28px 68px rgba(0,0,0,.28);
  background:
    linear-gradient(180deg,rgba(16,14,11,.14),rgba(16,14,11,.7)),
    radial-gradient(circle at 25% 18%, rgba(255,255,255,.1), transparent 22%),
    linear-gradient(150deg,#b6c3cb 0%,#7f8f98 18%,#53616c 38%,#232b31 100%);
}
.hero-scene.has-image{background-size:cover;background-position:center}
.hero-scene-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 10%,rgba(17,17,17,.32) 58%,rgba(17,17,17,.78) 100%)}
.hero-scene-copy{position:absolute;left:28px;right:28px;bottom:28px;z-index:2}
.hero-scene-copy h3{margin:0 0 8px;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2.4rem;line-height:1;color:#fff}
.hero-scene-copy p{max-width:32ch;margin:0;color:rgba(255,255,255,.78)}
.floating-badge{
  position:absolute;top:22px;right:22px;z-index:2;padding:12px 14px;border-radius:18px;
  background:rgba(255,255,255,.82);color:#403423;font-size:.85rem;font-weight:700;box-shadow:var(--shadow-soft)
}
.floating-badge small{display:block;color:#816738;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
.scene-panels{position:absolute;left:20px;right:20px;top:20px;display:flex;justify-content:space-between;gap:12px;z-index:2}
.scene-chip{padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);color:#fff;backdrop-filter:blur(10px);font-size:.9rem}
.feature-inline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}
.feature-inline-card{
  padding:16px 18px;border-radius:20px;border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.07);color:#fff;font-weight:600;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)
}
.stat-strip{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:-34px;position:relative;z-index:4
}
.stat-strip-card{
  background:rgba(255,255,255,.84);backdrop-filter:blur(14px);padding:20px 22px;border-radius:26px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.95)
}
.stat-strip-card small{display:block;color:var(--muted);text-transform:uppercase;font-size:.72rem;letter-spacing:.12em}
.stat-strip-card strong{display:block;margin-top:8px;font-size:1.4rem;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{
  position:relative;background:linear-gradient(180deg,rgba(255,255,255,.94),#fff);border-radius:var(--radius-lg);
  box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(255,255,255,.95)
}
.card::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(184,149,88,.2));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.card-image{height:280px;object-fit:cover;width:100%}
.card-body{padding:22px 22px 24px}
.card-body h3{margin:0 0 10px;font-size:2rem;line-height:1.02;color:#161514}
.card-body p{margin:0 0 12px;color:var(--muted)}
.meta-row{display:flex;gap:10px;flex-wrap:wrap;font-size:.82rem;color:#615c54;margin:0 0 16px}
.meta-row span{padding:9px 12px;border-radius:999px;background:var(--panel-2);border:1px solid rgba(22,21,20,.06)}
.hotel-card:hover{transform:translateY(-6px)}
.hotel-card{transition:transform .22s ease, box-shadow .22s ease}
.hotel-card:hover{box-shadow:0 28px 66px rgba(27,26,25,.12)}
.quote-card{padding:26px;background:linear-gradient(180deg,#fff,#fbf8f3)}
.quote-card p{font-size:1.08rem;margin:0 0 18px;color:#37322c}
.stars{letter-spacing:.18em;color:var(--gold);margin-bottom:14px}
.quote-card strong{display:block;font-size:1rem}
.quote-card small{color:var(--muted)}
.experience-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:24px}
.experience-card{min-height:230px;padding:26px;border-radius:32px;background:linear-gradient(180deg,#fff,#fbf8f3);box-shadow:var(--shadow);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.95)}
.experience-card::after{content:'';position:absolute;right:-60px;bottom:-60px;width:170px;height:170px;border-radius:999px;background:rgba(184,149,88,.08)}
.experience-card.tall{min-height:100%;background:linear-gradient(160deg,#1b1a19,#30423a);color:#fff}
.experience-card.tall .eyebrow{background:rgba(255,255,255,.08);color:#f4ead7;border-color:rgba(255,255,255,.12)}
.experience-card.tall p,.experience-card.tall li{color:rgba(255,255,255,.72)}
.experience-card h3{margin:14px 0 8px;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2rem;line-height:1}
.experience-card p{margin:0;color:var(--muted)}
.experience-card ul{padding-left:18px;margin:16px 0 0}
.feature-pill-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.feature-pill{padding:10px 12px;border-radius:999px;background:#fff;border:1px solid rgba(22,21,20,.08);font-size:.85rem;font-weight:700;color:#4a443d}
.split-banner{display:grid;grid-template-columns:1fr .9fr;gap:24px;align-items:stretch}
.banner-panel,.contact-panel{padding:32px;border-radius:32px;background:linear-gradient(180deg,#fff,#fbf8f3);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.96)}
.banner-panel.dark{background:linear-gradient(150deg,#171716,#26352f);color:#fff}
.banner-panel.dark p,.banner-panel.dark .section-copy{color:rgba(255,255,255,.72)}
.banner-panel h3,.contact-panel h3{font-size:2.2rem;line-height:1.02;margin:0 0 10px}
.contact-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}
.info-stack{display:grid;gap:16px}
.info-card{padding:18px 20px;border-radius:24px;background:#fff;border:1px solid rgba(22,21,20,.06);box-shadow:var(--shadow-soft)}
.info-card small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}
.info-card strong{display:block;margin-top:7px;font-size:1.05rem}
.form-card{padding:26px;border-radius:32px}
.form-card h3{margin:0 0 8px;font-size:2rem}
.form-card p{margin:0 0 20px;color:var(--muted)}
.page-shell{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:start}
.page-side-card{padding:26px;border-radius:32px;background:linear-gradient(180deg,#fff,#fbf8f3);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.95)}
.page-side-card h3{margin:0 0 10px;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2rem}
.page-side-card p{margin:0 0 20px;color:var(--muted)}
.room-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
.room-hero-image,.placeholder-image{width:100%;height:660px;border-radius:34px;object-fit:cover;background:linear-gradient(150deg,#d7e0e7,#afb8c2 24%,#606f79 54%,#2a3137);box-shadow:var(--shadow)}
.placeholder-image{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.room-story{margin-top:26px;padding:26px;border-radius:32px;background:linear-gradient(180deg,#fff,#fbf8f3);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.95)}
.room-summary-card{padding:24px;border-radius:32px;background:linear-gradient(180deg,#fff,#fbf8f3);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.95)}
.room-summary-card h3{margin:0 0 10px;font-size:2rem}
.room-summary-card p{margin:0 0 18px;color:var(--muted)}
.sticky-card{position:sticky;top:104px}
.spec-list{list-style:none;padding:0;margin:0 0 22px}
.spec-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(22,21,20,.08);color:#3d3933}
.spec-list li strong{color:#161514}
.offer-highlight{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
.offer-chip{padding:14px 16px;border-radius:20px;background:#fff;border:1px solid rgba(22,21,20,.07);box-shadow:var(--shadow-soft)}
.offer-chip small{display:block;color:var(--muted);text-transform:uppercase;font-size:.72rem;letter-spacing:.12em}
.offer-chip strong{display:block;margin-top:6px}
.site-footer{position:relative;padding:84px 0 44px;background:linear-gradient(160deg,#141413,#232321 64%,#2b322d 100%);color:#d8d3ca;overflow:hidden}
.site-footer::before{content:'';position:absolute;inset:auto auto -100px -80px;width:320px;height:320px;border-radius:999px;background:rgba(184,149,88,.12)}
.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.1fr;gap:24px;position:relative;z-index:1}
.footer-grid h4,.footer-grid h5{color:#fff;margin:0 0 10px}
.footer-grid p,.footer-grid a{color:rgba(216,211,202,.78)}
.footer-links{display:grid;gap:10px}
.footer-cta{padding:24px;border-radius:28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}
.footer-cta h3{font-size:2rem;line-height:1.02;margin:0 0 8px;color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px;margin-top:24px;border-top:1px solid rgba(255,255,255,.08);position:relative;z-index:1}
.footer-mark{display:flex;align-items:center;gap:12px}
.footer-copy{color:rgba(216,211,202,.62);font-size:.92rem}

/* Admin */
.admin-body{background:linear-gradient(180deg,#f5f1ea,#efebe5)}
.admin-shell{display:grid;grid-template-columns:300px 1fr;min-height:100vh}
.sidebar{
  position:sticky;top:0;height:100vh;overflow:auto;padding:22px 16px;
  background:linear-gradient(180deg,#161616,#232321 54%,#27312c);
  color:#d8d3ca;border-right:1px solid rgba(255,255,255,.06)
}
.sidebar-brand{padding:12px 14px 24px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}
.sidebar-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:#90897c}
.sidebar-title{font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2rem;line-height:1.02;color:#fff;margin-top:10px}
.sidebar-nav{display:flex;flex-direction:column;gap:3px}
.sidebar-nav a{padding:12px 14px;border-radius:16px;color:#ded9d0;font-weight:600}
.sidebar-nav a:hover,.sidebar-nav a.active{background:rgba(255,255,255,.08);color:#fff}
.nav-group-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:#8e877a;padding:18px 14px 8px}
.main-panel{padding:24px 26px 32px}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}
.topbar-title{font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2.55rem;line-height:1;letter-spacing:-.04em}
.topbar-subtitle{color:var(--muted)}
.topbar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.user-chip{padding:11px 14px;background:rgba(255,255,255,.8);border:1px solid rgba(22,21,20,.08);border-radius:999px;font-weight:700;box-shadow:var(--shadow-soft)}
.stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-bottom:22px}
.stat-card{background:linear-gradient(180deg,#fff,#fbf8f3);border-radius:26px;padding:18px 18px 20px;border:1px solid rgba(255,255,255,.96);box-shadow:var(--shadow);position:relative;overflow:hidden}
.stat-card::after{content:'';position:absolute;right:-40px;top:-30px;width:90px;height:90px;border-radius:999px;background:rgba(184,149,88,.08)}
.stat-label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.stat-number{font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2.2rem;font-weight:700;letter-spacing:-.05em;margin-top:8px}
.admin-grid-two{display:grid;grid-template-columns:1.25fr .95fr;gap:20px}
.panel-card{
  background:linear-gradient(180deg,#fff,#fbf8f3);border-radius:30px;padding:22px;
  box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.96)
}
.panel-card h3{margin:0 0 16px;font-size:2rem;line-height:1.02}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.table-wrap{overflow:auto}
.table{width:100%;border-collapse:collapse;min-width:760px}
.table th,.table td{padding:14px 12px;border-bottom:1px solid rgba(22,21,20,.08);text-align:left;vertical-align:top}
.table th{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.actions-cell{white-space:nowrap}
.actions-cell a{display:inline-flex;margin-inline-end:10px;font-weight:700;color:#3d372f}
.badge{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid transparent}
.badge-success{background:var(--success-bg);color:var(--success);border-color:rgba(33,94,67,.12)}
.badge-danger{background:var(--danger-bg);color:var(--danger);border-color:rgba(155,44,44,.12)}
.badge-warning{background:var(--warning-bg);color:var(--warning);border-color:rgba(143,98,51,.12)}
.badge-info{background:var(--info-bg);color:var(--info);border-color:rgba(41,95,154,.12)}
.badge-muted{background:#f3efe8;color:#5a544c;border-color:rgba(22,21,20,.06)}
.timeline{display:flex;flex-direction:column;gap:12px}
.timeline-item{padding:15px 16px;border:1px solid rgba(22,21,20,.08);border-radius:20px;background:#fff}
.timeline-item small{color:var(--muted)}
.page-actions{display:flex;justify-content:flex-end;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-form .panel-card{height:fit-content}
.thumb-preview,.table-thumb{width:76px;height:58px;object-fit:cover;border-radius:14px;border:1px solid rgba(22,21,20,.08)}
.empty-state{padding:36px;text-align:center;color:var(--muted)}
.empty-state.small{padding:14px;text-align:left}
.small{font-size:14px}
.login-body{
  min-height:100vh;display:grid;place-items:center;
  background:
    radial-gradient(circle at top left, rgba(184,149,88,.22), transparent 24%),
    linear-gradient(135deg,#ebe6de,#f7f3ed)
}
.login-wrap{width:min(1080px,calc(100% - 28px))}
.login-card{
  display:grid;grid-template-columns:1fr .92fr;overflow:hidden;
  background:#fff;border-radius:38px;box-shadow:0 34px 90px rgba(27,26,25,.12);border:1px solid rgba(255,255,255,.96)
}
.login-side{
  padding:42px;background:linear-gradient(145deg,#171716,#2a342f);color:#fff;position:relative;overflow:hidden
}
.login-side::before{content:'';position:absolute;right:-50px;top:-50px;width:220px;height:220px;border-radius:999px;background:rgba(184,149,88,.16)}
.login-brand{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#d6c6a8}
.login-side h1{margin:14px 0 10px;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:3.3rem;line-height:.95;letter-spacing:-.05em}
.login-sub{color:rgba(255,255,255,.7);margin:0 0 20px;max-width:36ch}
.login-points{display:grid;gap:12px;margin-top:26px}
.login-point{padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}
.login-form{padding:42px}
.login-form h2{margin:0 0 8px;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:2.4rem;line-height:1.02}
.login-note{margin-top:16px;color:var(--muted);font-size:14px}
.mini-form input{background:rgba(255,255,255,.95)}

.rtl{font-family:"Tahoma","Arial",sans-serif}
.rtl .brand,.rtl .section-head h2,.rtl .page-hero h1,.rtl .hero h1,.rtl .card-body h3,.rtl .hero-card h3,.rtl .footer-cta h3,.rtl .room-summary-card h3,.rtl .contact-panel h3,.rtl .panel-card h3,.rtl .topbar-title,.rtl .sidebar-title,.rtl .login-side h1,.rtl .login-form h2{font-family:"Tahoma","Arial",sans-serif;letter-spacing:0}
.rtl .main-nav,.rtl .meta-row,.rtl .hero-actions,.rtl .nav-actions,.rtl .topbar-right,.rtl .spec-list,.rtl .page-actions,.rtl .hero-meta,.rtl .feature-pill-row,.rtl .footer-bottom,.rtl .footer-mark{direction:rtl}
.rtl .table th,.rtl .table td{text-align:right}
.rtl .main-nav a::after{right:0;left:auto}
.rtl .hero-scene-copy{text-align:right}
.rtl .hero-scene-copy h3,.rtl .hero-card,.rtl .card-body,.rtl .room-summary-card,.rtl .page-side-card,.rtl .form-card,.rtl .quote-card,.rtl .experience-card,.rtl .banner-panel,.rtl .contact-panel,.rtl .info-card,.rtl .section-copy,.rtl .site-footer,.rtl .panel-card,.rtl .login-side,.rtl .login-form{text-align:right}
.rtl .scene-panels{flex-direction:row-reverse}
.rtl .room-summary-card .spec-list li{flex-direction:row-reverse}
.rtl .brand-stack{text-align:right}

@media (max-width: 1180px){
  .cards-grid,.offer-highlight,.stat-strip,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .experience-grid,.page-shell,.contact-split,.split-banner,.admin-grid-two,.footer-grid,.room-layout,.hero-grid,.login-card{grid-template-columns:1fr}
  .hero-scene{min-height:520px}
  .room-hero-image,.placeholder-image{height:540px}
  .admin-shell{grid-template-columns:1fr}
  .sidebar{position:relative;height:auto}
}
@media (max-width: 860px){
  .nav-toggle{display:flex}
  .nav-panel{
    position:absolute;left:20px;right:20px;top:88px;
    display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;
    padding:18px;border-radius:26px;background:rgba(255,255,255,.96);box-shadow:var(--shadow);border:1px solid rgba(22,21,20,.08)
  }
  .nav-panel.open{display:flex}
  .main-nav{flex-direction:column;align-items:flex-start;gap:14px;width:100%}
  .nav-actions{width:100%;justify-content:space-between;padding-top:10px;border-top:1px solid rgba(22,21,20,.08)}
  .hero{padding-top:58px}
  .hero h1{max-width:none}
}
@media (max-width: 760px){
  .container,.narrow{width:min(100%,calc(100% - 24px))}
  .section{padding:72px 0}
  .hero-card,.banner-panel,.contact-panel,.page-side-card,.room-summary-card,.form-card,.experience-card,.panel-card,.login-side,.login-form{padding:22px}
  .grid-2,.cards-grid,.offer-highlight,.stat-strip,.stats-grid,.form-grid,.form-grid-2{grid-template-columns:1fr}
  .feature-inline-grid{grid-template-columns:1fr}
  .hero-scene{min-height:420px}
  .hero-scene-copy{left:20px;right:20px;bottom:20px}
  .hero-scene-copy h3{font-size:2rem}
  .page-hero h1{font-size:2.5rem}
  .room-hero-image,.placeholder-image{height:420px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .site-footer{padding-top:68px}
}


/* v0.3 Luxury hero + refined modern polish */

.page-home .site-header{
  position:fixed;
  inset:0 0 auto 0;
  background:linear-gradient(180deg,rgba(8,8,8,.52),rgba(8,8,8,.16) 78%,transparent);
  border-bottom-color:transparent;
  backdrop-filter:none;
}
.page-home .site-header.is-scrolled{
  background:rgba(12,12,12,.72);
  backdrop-filter:blur(18px);
  border-bottom-color:rgba(255,255,255,.08);
}
.page-home .brand,
.page-home .brand-sub,
.page-home .main-nav a{color:#fff}
.page-home .main-nav a::after{background:linear-gradient(90deg,transparent,#d8b16a,transparent)}
.page-home .lang-switch,
.page-home .btn.btn-dark{
  background:rgba(255,255,255,.08);
  color:#fff;
  border-color:rgba(255,255,255,.14);
  box-shadow:none;
}
.page-home .btn.btn-dark:hover{background:#d0a258;color:#111;border-color:#d0a258}
.page-home .nav-toggle{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14)}
.page-home .nav-toggle span{background:#fff}

.hero-luxury{
  min-height:100vh;
  padding:148px 0 108px;
  background:
    radial-gradient(circle at 0% 22%, rgba(185,137,58,.24), transparent 28%),
    radial-gradient(circle at 100% 15%, rgba(255,255,255,.08), transparent 22%),
    linear-gradient(135deg,#090909 0%, #101112 38%, #1a1d1c 68%, #070707 100%);
}
.hero-luxury::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.55) 0%, rgba(0,0,0,.22) 36%, rgba(0,0,0,.05) 58%, rgba(0,0,0,.16) 100%);
  pointer-events:none;
}
.hero-shell{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:center;position:relative;z-index:2}
.hero-copy-col{position:relative;z-index:3;padding-right:10px}
.hero-display{font-size:clamp(4rem,7vw,7rem);line-height:.9;letter-spacing:-.07em;max-width:8.6ch;margin:16px 0 18px;color:#fff;text-shadow:0 12px 34px rgba(0,0,0,.3)}
.hero-lead{font-size:1.08rem;line-height:1.8;color:rgba(255,255,255,.76);max-width:58ch}
.eyebrow-gold{display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;background:rgba(216,177,106,.12);border:1px solid rgba(216,177,106,.34);color:#f1d29a;font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.premium-actions .btn{min-height:56px;padding-inline:22px}
.btn-gold{background:linear-gradient(180deg,#deb76e,#c79241);color:#111;border:1px solid #d2a155;box-shadow:0 18px 35px rgba(199,146,65,.22)}
.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.02)}
.btn-ghost-light{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px)}
.btn-ghost-light:hover{background:rgba(255,255,255,.14)}
.hero-signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px}
.hero-signal-card{padding:18px 18px 16px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 18px 40px rgba(0,0,0,.16);backdrop-filter:blur(10px)}
.hero-signal-card span{display:block;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}
.hero-signal-card strong{display:block;margin-top:10px;font-size:1rem;color:#fff;line-height:1.5}
.hero-media-col{position:relative;z-index:2}
.luxury-slider{position:relative}
.luxury-slider-stage{position:relative;min-height:780px;border-radius:38px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 42px 80px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.08);background:rgba(255,255,255,.04);backdrop-filter:blur(12px)}
.luxury-slide{position:absolute;inset:0;opacity:0;transform:translateX(24px) scale(.985);transition:opacity .7s ease, transform .85s cubic-bezier(.19,1,.22,1);pointer-events:none}
.luxury-slide.active{opacity:1;transform:translateX(0) scale(1);pointer-events:auto;z-index:2}
.luxury-slide-image{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.04);animation:heroZoom 9s linear infinite}
.luxury-slide.active .luxury-slide-image{animation-play-state:running}
.luxury-slide-glow{position:absolute;inset:auto auto 8% -7%;width:44%;height:34%;border-radius:999px;background:radial-gradient(circle, rgba(215,168,83,.3) 0%, rgba(215,168,83,.1) 35%, transparent 72%);filter:blur(14px)}
.luxury-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,6,6,.12),rgba(6,6,6,.28) 38%,rgba(6,6,6,.72) 100%)}
.luxury-slide-top,.luxury-slide-content{position:absolute;z-index:2}
.luxury-slide-top{left:24px;right:24px;top:24px;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.luxury-pill{display:inline-flex;align-items:center;padding:11px 14px;border-radius:999px;background:rgba(255,255,255,.84);color:#5c4722;font-size:.86rem;font-weight:800;box-shadow:0 12px 24px rgba(0,0,0,.12)}
.luxury-pill.muted{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.14);color:#fff;backdrop-filter:blur(10px)}
.luxury-slide-content{left:28px;right:28px;bottom:28px;max-width:72%}
.luxury-slide-content h3{margin:12px 0 10px;font-size:clamp(2.6rem,4vw,4.6rem);line-height:.92;color:#fff;text-shadow:0 12px 24px rgba(0,0,0,.3)}
.luxury-slide-content p{margin:0 0 18px;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.75;max-width:44ch}
.luxury-slide-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.luxury-slide-meta span{display:inline-flex;align-items:center;padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);color:#fff;font-size:.82rem;font-weight:700;backdrop-filter:blur(8px)}
.text-link.light{color:#fff;border-bottom-color:rgba(255,255,255,.24)}
.text-link.light:hover{border-bottom-color:#d0a258;color:#f4ddaf}
.luxury-slider-nav{position:absolute;right:24px;bottom:24px;z-index:5;display:flex;align-items:center;gap:12px}
.slider-arrow{width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);backdrop-filter:blur(10px);color:#fff;font-size:1.2rem;display:grid;place-items:center;transition:transform .2s ease, background .2s ease}
.slider-arrow:hover{transform:translateY(-2px);background:rgba(255,255,255,.14)}
.slider-dots{display:flex;align-items:center;gap:10px;padding:0 6px}
.slider-dot{width:14px;height:14px;border-radius:999px;border:none;background:rgba(255,255,255,.34);position:relative;transition:width .25s ease, background .25s ease}
.slider-dot.active{width:42px;background:#d3a761}
.luxury-slider-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.luxury-thumb{padding:14px 16px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.05);backdrop-filter:blur(12px);color:rgba(255,255,255,.72);text-align:left;transition:transform .22s ease, border-color .22s ease, background .22s ease}
.luxury-thumb small{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.38);margin-bottom:8px}
.luxury-thumb span{display:block;font-size:.94rem;font-weight:700;line-height:1.4}
.luxury-thumb.active{background:rgba(255,255,255,.11);border-color:rgba(216,177,106,.42);color:#fff;transform:translateY(-2px)}
.hero-bottom-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:-46px;position:relative;z-index:8}
.hero-band-card{padding:24px 24px 22px;border-radius:30px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.96);box-shadow:0 22px 52px rgba(19,16,11,.1);backdrop-filter:blur(14px)}
.hero-band-card small{display:block;color:#82786b;text-transform:uppercase;font-size:.72rem;letter-spacing:.14em}
.hero-band-card strong{display:block;margin-top:10px;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;font-size:1.42rem;line-height:1.08}
.section-dark-luxury{background:linear-gradient(180deg,#101111 0%, #161818 45%, #1c1d1d 100%);color:#fff;padding-top:120px}
.section-head-light h2,.section-head-light .section-copy{color:#fff}
.section-head-light .section-copy{color:rgba(255,255,255,.68)}
.cards-grid-dark{margin-top:10px}
.hotel-card-dark{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 70px rgba(0,0,0,.18)}
.hotel-card-dark::before{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(216,177,106,.12))}
.card-image-luxury{height:340px}
.placeholder-image-dark{background-size:cover;background-position:center;color:#f4ddaf}
.card-body-luxury{padding:24px 24px 28px;color:#fff}
.card-topline{font-size:.76rem;text-transform:uppercase;letter-spacing:.18em;color:#d1a861;margin-bottom:10px}
.card-body-luxury h3{color:#fff;font-size:2.35rem}
.card-body-luxury p{color:rgba(255,255,255,.66)}
.meta-row-luxury span{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.08);color:rgba(255,255,255,.84)}
.section-dark-luxury + .section-soft{padding-top:96px}

@keyframes heroZoom{0%{transform:scale(1.04)}50%{transform:scale(1.095)}100%{transform:scale(1.04)}}

.rtl .luxury-slider-nav{left:24px;right:auto}
.rtl .luxury-slide-content,.rtl .luxury-thumb,.rtl .hero-copy-col{text-align:right}
.rtl .luxury-slide-top{flex-direction:row-reverse}
.rtl .hero-signal-card span,.rtl .hero-band-card small,.rtl .card-topline{text-align:right}

@media (max-width: 1280px){
  .hero-shell{grid-template-columns:1fr}
  .luxury-slider-stage{min-height:700px}
}
@media (max-width: 1180px){
  .hero-signal-grid,.hero-bottom-band{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 860px){
  .page-home .nav-panel{background:rgba(15,15,15,.94);border-color:rgba(255,255,255,.08)}
  .page-home .main-nav a,.page-home .brand,.page-home .brand-sub{color:#fff}
  .page-home .nav-actions{border-top-color:rgba(255,255,255,.08)}
  .hero-luxury{padding-top:132px;padding-bottom:92px}
  .hero-display{max-width:none;font-size:clamp(3rem,13vw,4.8rem)}
  .luxury-slider-stage{min-height:560px}
  .luxury-slide-content{max-width:100%;right:22px;left:22px}
  .luxury-slide-content h3{font-size:2.4rem}
  .luxury-slider-thumbs{grid-template-columns:1fr}
  .luxury-slider-nav{left:22px;right:22px;justify-content:space-between}
}
@media (max-width: 760px){
  .hero-signal-grid,.hero-bottom-band{grid-template-columns:1fr}
  .luxury-slider-stage{min-height:480px;border-radius:30px}
  .luxury-slide-top{left:16px;right:16px;top:16px}
  .luxury-slide-content{left:16px;right:16px;bottom:16px}
  .luxury-pill{font-size:.74rem;padding:9px 12px}
  .luxury-pill.muted{display:none}
  .slider-arrow{width:44px;height:44px}
  .section-dark-luxury{padding-top:92px}
}


/* ===== v0.4 luxury reference refinement ===== */
body.front-body{background:#f4f1eb;color:#141414}
html[lang="ar"] body.front-body,
body.front-body.rtl{font-family:"IBM Plex Sans Arabic", system-ui, sans-serif}
html[lang="ar"] body.front-body h1,
html[lang="ar"] body.front-body h2,
html[lang="ar"] body.front-body h3,
html[lang="ar"] body.front-body h4,
body.front-body.rtl h1,
body.front-body.rtl h2,
body.front-body.rtl h3,
body.front-body.rtl h4{font-family:"IBM Plex Sans Arabic", system-ui, sans-serif;letter-spacing:0}
body.front-body:not(.rtl) h1,
body.front-body:not(.rtl) h2,
body.front-body:not(.rtl) h3,
body.front-body:not(.rtl) h4,
body.front-body:not(.rtl) .brand{font-family:"Cormorant Garamond","Iowan Old Style",Georgia,serif}
.page-home .site-header{position:absolute;top:0;left:0;right:0;z-index:50;background:transparent;border:none;box-shadow:none}
.page-home .site-header .nav-row{max-width:1440px;padding-top:24px;padding-bottom:12px}
.page-home .site-header.is-scrolled{position:sticky;top:0;background:rgba(7,7,7,.82);backdrop-filter:blur(20px);box-shadow:0 16px 40px rgba(0,0,0,.2)}
.page-home .site-header.is-scrolled .nav-row{padding-top:14px;padding-bottom:14px}
.page-home .brand-mark{background:#c9a25f;color:#111;border:none;box-shadow:0 8px 20px rgba(201,162,95,.25)}
.page-home .brand{color:#fff;font-size:2.2rem;line-height:.9}
.page-home .brand-sub{color:rgba(255,255,255,.55);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}
.page-home .main-nav a{color:rgba(255,255,255,.82)}
.page-home .main-nav a:hover{color:#fff}
.page-home .lang-switch{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.14)}
.page-home .nav-toggle{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}
.page-home .nav-toggle span{background:#fff}
.page-home .btn.btn-dark{background:#c9a25f;color:#16120c;border-color:#c9a25f}
.page-home .nav-panel{background:transparent}
.lux-home-wrap{padding:26px 0 0}
.lux-home-shell{max-width:1480px}
.lux-home-surface{background:linear-gradient(180deg,#050607 0%,#091017 100%);border-radius:34px;overflow:hidden;box-shadow:0 28px 80px rgba(8,9,10,.28)}
.lux-hero-block{padding:120px 46px 26px;position:relative}
.luxury-slider-shell{position:relative}
.luxury-slider-shell .luxury-slider-stage{position:relative;min-height:560px}
.luxury-slider-shell .luxury-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transform:translateX(30px);transition:opacity .8s ease, transform .8s ease}
.luxury-slider-shell .luxury-slide.active{opacity:1;pointer-events:auto;transform:translateX(0)}
.lux-hero-grid{display:grid;grid-template-columns:minmax(0, .88fr) minmax(0, 1.12fr);gap:22px;align-items:stretch}
.lux-hero-copy{background:#070707;padding:74px 54px 54px;border-radius:28px 0 0 28px;display:flex;flex-direction:column;justify-content:center;min-height:560px}
.lux-kicker{display:inline-flex;align-self:flex-start;padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:rgba(255,255,255,.76);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.rtl .lux-kicker{letter-spacing:0}
.lux-hero-title{margin:20px 0 16px;font-size:clamp(3.6rem,7vw,6rem);line-height:.92;color:#fff;max-width:6ch;letter-spacing:-.03em}
.rtl .lux-hero-title{max-width:7.6ch;line-height:1.06;font-size:clamp(3rem,5.5vw,4.8rem)}
.lux-hero-text{margin:0;max-width:46ch;color:rgba(255,255,255,.64);font-size:1rem;line-height:1.85}
.lux-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.btn.btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22)}
.btn.btn-outline-light:hover{background:rgba(255,255,255,.08)}
.lux-hero-media{position:relative}
.lux-hero-image{position:relative;min-height:560px;border-radius:0 28px 28px 0;background-size:cover;background-position:center;overflow:hidden}
.lux-hero-image-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.42),rgba(7,7,7,.1) 25%,transparent 52%),linear-gradient(180deg,rgba(7,7,7,.02),rgba(7,7,7,.12) 45%,rgba(7,7,7,.2) 100%)}
.lux-media-pill{position:absolute;top:22px;left:22px;z-index:3;padding:14px 18px;border-radius:20px;background:rgba(201,162,95,.78);backdrop-filter:blur(12px);color:#fff;font-weight:700}
.rtl .lux-media-pill{left:auto;right:22px}
.lux-media-note{position:absolute;top:22px;right:22px;z-index:3;padding:16px 20px;border-radius:20px;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);min-width:320px;color:#191611}
.rtl .lux-media-note{right:auto;left:22px}
.lux-media-note small{display:block;color:#9f967f;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.rtl .lux-media-note small{letter-spacing:0}
.lux-media-note strong{display:block;margin-top:6px;font-size:1.05rem;line-height:1.3}
.lux-slider-controls{display:flex;justify-content:center;align-items:center;gap:16px;padding:22px 0 6px}
.lux-slider-controls .slider-arrow{width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff}
.lux-slider-controls .slider-dots{display:flex;gap:10px}
.lux-slider-controls .slider-dot{width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.24);border:none;padding:0}
.lux-slider-controls .slider-dot.active{width:28px;background:#c9a25f}
.lux-room-overview{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:34px;padding:20px 46px 44px;align-items:start}
.lux-section-title{margin:0 0 18px;color:#fff;font-size:2.3rem;line-height:1;font-family:"Cormorant Garamond","Iowan Old Style",Georgia,serif}
.rtl .lux-section-title{font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;font-size:2rem}
.lux-room-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.lux-room-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:280px;padding:24px;border-radius:28px;background-size:cover;background-position:center;overflow:hidden;border:1px solid rgba(255,255,255,.08);text-decoration:none;color:#fff;box-shadow:0 18px 40px rgba(0,0,0,.2)}
.lux-room-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.66) 100%)}
.lux-room-card>*{position:relative;z-index:1}
.lux-room-card-title{font-size:1.7rem;line-height:.95;font-family:"Cormorant Garamond","Iowan Old Style",Georgia,serif}
.rtl .lux-room-card-title{font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;font-size:1.45rem;line-height:1.15}
.lux-room-card small{display:block;margin-top:8px;color:rgba(255,255,255,.75);max-width:24ch}
.lux-spec-panel{padding:14px 0 0;color:#fff}
.lux-panel-kicker{margin-bottom:10px;color:#c9a25f;font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.rtl .lux-panel-kicker{letter-spacing:0}
.lux-spec-panel h3,.lux-showcase-copy h2,.lux-form-panel h3{margin:0 0 14px;color:#fff;font-size:2.6rem;line-height:.95;font-family:"Cormorant Garamond","Iowan Old Style",Georgia,serif}
.rtl .lux-spec-panel h3,.rtl .lux-showcase-copy h2,.rtl .lux-form-panel h3{font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;line-height:1.12;font-size:2rem}
.lux-spec-panel p,.lux-showcase-copy p{margin:0;color:rgba(255,255,255,.68);line-height:1.8}
.lux-spec-list{margin-top:22px;border-top:1px solid rgba(255,255,255,.09)}
.lux-spec-list>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.lux-spec-list span{color:rgba(255,255,255,.48)}
.lux-spec-list strong{color:#fff;font-weight:600}
.lux-offer-badge{margin-top:22px;display:inline-flex;flex-direction:column;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.lux-offer-badge small{color:#c9a25f}
.lux-offer-badge strong{margin-top:6px;color:#fff}
.lux-home-showcase{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:34px;padding:0 46px 50px;align-items:center}
.lux-showcase-copy{padding-right:12px}
.rtl .lux-showcase-copy{padding-right:0;padding-left:12px}
.lux-showcase-image{min-height:340px;border-radius:26px;background-size:cover;background-position:center;box-shadow:0 18px 42px rgba(0,0,0,.22)}
.lux-light-services{padding:56px 0 74px;background:#f3f0e9}
.lux-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:30px}
.lux-service-card{padding:28px 26px;border-radius:24px;background:#fff;box-shadow:0 14px 34px rgba(28,22,15,.06)}
.lux-service-card h3{margin:0 0 10px;color:#1c1812;font-size:1.35rem;font-family:inherit}
.lux-service-card p{margin:0;color:#7b7367;line-height:1.8}
.lux-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);gap:28px;align-items:start}
.lux-form-panel{padding:34px;border-radius:28px;background:#fff;box-shadow:0 18px 42px rgba(28,22,15,.08)}
.lux-form-panel h3{color:#17130e}
.stacked-form .field-grid{display:grid;gap:14px;margin-bottom:14px}
.stacked-form .field-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.stacked-form input,.stacked-form textarea{width:100%;padding:14px 16px;border:1px solid #ded7cd;border-radius:16px;background:#fcfaf7;font:inherit}
.lux-form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.lux-side-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.lux-side-card{min-height:230px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:26px;background-size:cover;background-position:center;color:#fff;box-shadow:0 18px 42px rgba(28,22,15,.12)}
.lux-side-card small{display:block;color:rgba(255,255,255,.76);font-size:.82rem;text-transform:uppercase;letter-spacing:.14em}
.rtl .lux-side-card small{letter-spacing:0}
.lux-side-card strong{display:block;margin-top:8px;font-size:1.6rem;line-height:1;font-family:"Cormorant Garamond","Iowan Old Style",Georgia,serif}
.rtl .lux-side-card strong{font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;font-size:1.35rem;line-height:1.15}
.lux-side-card p{margin:10px 0 0;color:rgba(255,255,255,.74)}
.site-footer{margin-top:0}
@media (max-width: 1100px){
  .lux-hero-grid,.lux-room-overview,.lux-home-showcase,.lux-lower-grid{grid-template-columns:1fr}
  .lux-hero-copy,.lux-hero-image{border-radius:28px}
  .lux-media-note{min-width:0;max-width:70%}
}
@media (max-width: 820px){
  .page-home .nav-panel{position:absolute;top:82px;left:16px;right:16px;background:rgba(10,10,10,.96);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08)}
  .lux-hero-block{padding:108px 20px 20px}
  .lux-room-overview,.lux-home-showcase{padding-left:20px;padding-right:20px}
  .lux-hero-copy{padding:44px 28px;min-height:auto}
  .lux-hero-image{min-height:360px}
  .lux-hero-title{font-size:clamp(2.7rem,12vw,4rem);max-width:none}
  .lux-service-grid,.lux-room-card-grid,.lux-side-cards,.stacked-form .field-grid-2{grid-template-columns:1fr}
  .lux-room-card{min-height:240px}
  .lux-media-note{left:18px;right:18px;top:auto;bottom:18px;max-width:none}
  .rtl .lux-media-note{left:18px;right:18px}
  .lux-media-pill{top:18px}
  .lux-spec-panel h3,.lux-showcase-copy h2,.lux-form-panel h3{font-size:2rem}
  .rtl .lux-spec-panel h3,.rtl .lux-showcase-copy h2,.rtl .lux-form-panel h3{font-size:1.75rem}
}


/* ===== v0.5 full-width luxury refinement ===== */
:root{
  --lux-gold:#c7a26a;
  --lux-gold-strong:#d3b27d;
  --lux-gold-soft:rgba(199,162,106,.16);
}

html[lang="ar"] body.front-body,
body.front-body.rtl,
html[lang="ar"] body.front-body .brand,
html[lang="ar"] body.front-body .brand-sub,
html[lang="ar"] body.front-body .main-nav a,
html[lang="ar"] body.front-body .btn,
html[lang="ar"] body.front-body .lux-kicker,
html[lang="ar"] body.front-body .lux-panel-kicker,
html[lang="ar"] body.front-body .lux-media-note small,
body.front-body.rtl .brand,
body.front-body.rtl .brand-sub,
body.front-body.rtl .main-nav a,
body.front-body.rtl .btn,
body.front-body.rtl .lux-kicker,
body.front-body.rtl .lux-panel-kicker,
body.front-body.rtl .lux-media-note small{
  font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;
}

.page-home .site-header .nav-row{
  max-width:1380px;
  width:min(1380px,calc(100% - 56px));
  padding-top:30px;
  padding-bottom:18px;
}
.page-home .site-header.is-scrolled .nav-row{
  padding-top:14px;
  padding-bottom:14px;
}
.page-home .brand-wrap{gap:16px}
.page-home .brand-mark{
  width:48px;
  height:48px;
  border-radius:16px;
  background:linear-gradient(145deg,#d6b377,#b88e51);
  box-shadow:0 16px 30px rgba(175,131,66,.28),0 0 24px rgba(214,179,119,.12);
}
.page-home .brand{
  font-size:2rem;
  line-height:.92;
  letter-spacing:-.04em;
}
.page-home .brand-sub{
  font-size:.68rem;
  letter-spacing:.24em;
  color:rgba(255,255,255,.58);
}
.page-home .main-nav{
  gap:30px;
  font-size:.96rem;
}
.page-home .main-nav a{
  color:rgba(255,255,255,.84);
  padding:10px 0;
}
.page-home .lang-switch{
  width:52px;
  height:52px;
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.12);
}
.page-home .btn.btn-dark{
  padding:16px 30px;
  border-radius:999px;
  background:var(--lux-gold);
  border-color:var(--lux-gold);
  color:#15110c;
  box-shadow:0 14px 28px rgba(177,133,67,.18);
}
.page-home .btn.btn-dark:hover{
  background:var(--lux-gold-strong);
  border-color:var(--lux-gold-strong);
}

.lux-home-wrap{
  padding:0;
  background:
    radial-gradient(circle at 14% 10%, rgba(204,162,95,.18), transparent 18%),
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.07), transparent 18%),
    linear-gradient(180deg,#050607 0%,#071018 58%,#091119 100%);
}
.container.lux-home-shell{
  width:100%;
  max-width:none;
  margin:0;
}
.lux-home-shell{position:relative}
.lux-home-surface{
  background:transparent;
  border-radius:0;
  overflow:visible;
  box-shadow:none;
  position:relative;
}
.lux-home-surface::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 18%,rgba(255,255,255,.015) 68%,transparent 100%);
  pointer-events:none;
}
.lux-hero-block,
.lux-room-overview,
.lux-home-showcase{
  max-width:1380px;
  margin:0 auto;
}
.lux-hero-block{
  padding:144px 28px 42px;
  position:relative;
}
.luxury-slider-shell .luxury-slider-stage{
  min-height:690px;
}
.lux-hero-grid{
  gap:0;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  border-radius:42px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 34px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04);
}
.lux-hero-copy{
  background:
    linear-gradient(180deg,rgba(5,5,6,.98),rgba(5,5,6,.94)),
    radial-gradient(circle at 12% 16%, rgba(199,162,106,.14), transparent 26%);
  padding:88px 64px 64px;
  min-height:690px;
  border-radius:0;
}
.lux-kicker{
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.78);
  font-size:.77rem;
}
.lux-hero-title{
  margin:24px 0 18px;
  font-size:clamp(4.6rem,7vw,7.2rem);
  line-height:.88;
  max-width:5.2ch;
  letter-spacing:-.045em;
}
.rtl .lux-hero-title{
  max-width:6.8ch;
  font-size:clamp(3.4rem,5.8vw,5.1rem);
  line-height:1.02;
}
.lux-hero-text{
  max-width:30rem;
  color:rgba(255,255,255,.66);
  font-size:1.04rem;
  line-height:1.9;
}
.lux-hero-actions{
  gap:16px;
  margin-top:36px;
}
.lux-hero-actions .btn{
  min-width:210px;
  justify-content:center;
}
.lux-hero-actions .btn-gold{
  background:var(--lux-gold);
  border-color:var(--lux-gold);
  color:#13100c;
}
.lux-hero-actions .btn-gold:hover{
  background:var(--lux-gold-strong);
  border-color:var(--lux-gold-strong);
}
.btn.btn-outline-light{
  border-color:rgba(255,255,255,.15);
  background:rgba(255,255,255,.02);
}
.lux-hero-image{
  min-height:690px;
  border-radius:0;
  transform:scale(1.01);
}
.lux-hero-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 42%, rgba(0,0,0,.18) 100%);
  pointer-events:none;
}
.lux-media-pill{
  top:28px;
  left:28px;
  padding:14px 20px;
  border-radius:22px;
  background:rgba(199,162,106,.92);
  color:#19120a;
  box-shadow:0 14px 34px rgba(189,148,79,.28);
}
.rtl .lux-media-pill{right:28px}
.lux-media-note{
  top:28px;
  right:28px;
  min-width:390px;
  padding:18px 22px;
  border-radius:24px;
  background:rgba(255,255,255,.94);
  box-shadow:0 22px 48px rgba(18,18,18,.14);
}
.rtl .lux-media-note{left:28px}
.lux-media-note small{
  color:#9f8a60;
  font-size:.78rem;
  letter-spacing:.16em;
}
.lux-media-note strong{
  margin-top:8px;
  font-size:1.08rem;
}
.lux-slider-controls{
  padding:28px 0 0;
  gap:18px;
}
.lux-slider-controls .slider-arrow{
  width:48px;
  height:48px;
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.12);
}
.lux-slider-controls .slider-dot{
  background:rgba(255,255,255,.18);
}
.lux-slider-controls .slider-dot.active{
  background:var(--lux-gold);
}

.lux-room-overview{
  padding:54px 28px 92px;
  gap:56px;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
}
.lux-section-title{
  margin:0 0 24px;
  font-size:2.5rem;
}
.lux-room-card-grid{
  gap:26px;
  align-items:start;
}
.lux-room-card{
  min-height:350px;
  padding:28px;
  border-radius:32px;
}
.lux-room-card:first-child{
  min-height:430px;
}
.lux-room-card:last-child{
  min-height:320px;
  margin-top:44px;
}
.lux-room-card-title{
  font-size:1.9rem;
}
.lux-room-card small{
  max-width:28ch;
}
.lux-spec-panel{
  padding:18px 4px 0 0;
  align-self:center;
}
.lux-panel-kicker{
  color:var(--lux-gold);
}
.lux-spec-panel h3,
.lux-showcase-copy h2,
.lux-form-panel h3{
  font-size:3rem;
  line-height:.9;
}
.rtl .lux-spec-panel h3,
.rtl .lux-showcase-copy h2,
.rtl .lux-form-panel h3{
  font-size:2.15rem;
}
.lux-spec-panel p,
.lux-showcase-copy p{
  max-width:34rem;
}
.lux-spec-list{
  margin-top:26px;
}
.lux-spec-list>div{
  padding:15px 0;
}
.lux-offer-badge{
  margin-top:26px;
  padding:18px 20px;
  background:rgba(255,255,255,.045);
  border-radius:20px;
}
.lux-home-showcase{
  padding:0 28px 110px;
  gap:58px;
  grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);
}
.lux-showcase-copy{
  max-width:33rem;
}
.lux-showcase-image{
  min-height:460px;
  border-radius:34px;
  box-shadow:0 24px 64px rgba(0,0,0,.26);
}

.lux-light-services{
  padding:98px 0 112px;
  background:linear-gradient(180deg,#f5f0e8 0%,#f2ece3 100%);
}
.lux-service-grid{
  gap:26px;
  margin-bottom:42px;
}
.lux-service-card{
  padding:32px 30px;
  border-radius:28px;
  box-shadow:0 18px 42px rgba(28,22,15,.07);
}
.lux-service-card h3{
  font-size:1.42rem;
}
.lux-lower-grid{
  gap:32px;
  grid-template-columns:minmax(0,1fr) minmax(360px,.94fr);
}
.lux-form-panel{
  padding:42px;
  border-radius:32px;
}
.lux-form-panel .stacked-form input,
.lux-form-panel .stacked-form textarea{
  border-radius:18px;
  background:#fbf8f3;
}
.lux-side-cards{
  gap:22px;
}
.lux-side-card{
  min-height:290px;
  padding:28px;
  border-radius:30px;
}
.lux-side-card strong{
  font-size:1.85rem;
}
.site-footer{
  padding-top:94px;
}

@media (max-width: 1180px){
  .page-home .site-header .nav-row{
    width:min(100%,calc(100% - 42px));
  }
  .lux-hero-grid,
  .lux-room-overview,
  .lux-home-showcase,
  .lux-lower-grid{
    grid-template-columns:1fr;
  }
  .lux-hero-copy,
  .lux-hero-image{
    min-height:620px;
  }
  .lux-room-card:last-child{
    margin-top:0;
  }
  .lux-room-card:first-child,
  .lux-room-card:last-child,
  .lux-room-card{
    min-height:320px;
  }
  .lux-showcase-copy{
    max-width:none;
  }
}

@media (max-width: 820px){
  .page-home .site-header .nav-row{
    width:min(100%,calc(100% - 28px));
    padding-top:20px;
    padding-bottom:12px;
  }
  .page-home .brand-mark{
    width:44px;
    height:44px;
  }
  .page-home .brand{
    font-size:1.7rem;
  }
  .page-home .brand-sub{
    font-size:.58rem;
    letter-spacing:.18em;
  }
  .page-home .nav-panel{
    position:absolute;
    top:82px;
    left:14px;
    right:14px;
    padding:18px;
    border-radius:22px;
    background:rgba(8,8,9,.96);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 24px 48px rgba(0,0,0,.26);
  }
  .page-home .nav-actions{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }
  .page-home .nav-actions .btn,
  .page-home .nav-actions .lang-switch{
    width:100%;
  }
  .page-home .nav-actions .lang-switch{
    border-radius:18px;
    height:48px;
  }
  .lux-hero-block{
    padding:100px 14px 24px;
  }
  .luxury-slider-shell .luxury-slider-stage{
    min-height:auto;
  }
  .lux-hero-grid{
    border-radius:28px;
  }
  .lux-hero-copy{
    order:2;
    padding:34px 22px 30px;
    min-height:auto;
  }
  .lux-hero-media{
    order:1;
  }
  .lux-hero-image{
    min-height:380px;
  }
  .lux-kicker{
    font-size:.7rem;
    padding:10px 14px;
  }
  .lux-hero-title{
    margin:18px 0 14px;
    font-size:clamp(2.7rem,14vw,4.1rem);
    max-width:none;
  }
  .rtl .lux-hero-title{
    font-size:clamp(2.25rem,11vw,3.2rem);
  }
  .lux-hero-text{
    max-width:none;
    font-size:.97rem;
    line-height:1.85;
  }
  .lux-hero-actions{
    flex-direction:column;
  }
  .lux-hero-actions .btn{
    width:100%;
    min-width:0;
  }
  .lux-media-pill{
    top:16px;
    left:16px;
    right:auto;
    padding:11px 14px;
  }
  .rtl .lux-media-pill{
    right:16px;
    left:auto;
  }
  .lux-media-note{
    top:auto;
    right:16px;
    left:16px;
    bottom:16px;
    min-width:0;
    max-width:none;
    padding:14px 16px;
    border-radius:18px;
  }
  .rtl .lux-media-note{
    left:16px;
    right:16px;
  }
  .lux-media-note strong{
    font-size:.98rem;
  }
  .lux-slider-controls{
    padding-top:18px;
  }
  .lux-room-overview{
    padding:36px 18px 68px;
    gap:36px;
  }
  .lux-section-title{
    font-size:2rem;
  }
  .rtl .lux-section-title{
    font-size:1.7rem;
  }
  .lux-room-card-grid,
  .lux-service-grid,
  .lux-side-cards,
  .stacked-form .field-grid-2{
    grid-template-columns:1fr;
  }
  .lux-room-card,
  .lux-room-card:first-child,
  .lux-room-card:last-child{
    min-height:250px;
    margin-top:0;
  }
  .lux-room-card-title{
    font-size:1.6rem;
  }
  .lux-spec-panel h3,
  .lux-showcase-copy h2,
  .lux-form-panel h3{
    font-size:2.2rem;
  }
  .rtl .lux-spec-panel h3,
  .rtl .lux-showcase-copy h2,
  .rtl .lux-form-panel h3{
    font-size:1.7rem;
  }
  .lux-home-showcase{
    padding:0 18px 76px;
    gap:28px;
  }
  .lux-showcase-image{
    min-height:280px;
    border-radius:26px;
  }
  .lux-light-services{
    padding:72px 0 78px;
  }
  .lux-service-card,
  .lux-form-panel{
    padding:28px 22px;
  }
  .lux-lower-grid{
    gap:24px;
  }
  .lux-side-card{
    min-height:240px;
    padding:22px;
  }
  .lux-form-actions{
    flex-direction:column;
  }
  .lux-form-actions .btn{
    width:100%;
    justify-content:center;
  }
}

/* ===== v0.6 functionality + refinement ===== */
.container{width:min(var(--page-max-custom, var(--max)),calc(100% - 40px));}
.page-hero{padding:var(--page-hero-top,40px) 0 20px}
.page-body-section{padding-top:12px}
.page-hero-shell{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.page-split-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:46px;align-items:start}
.page-side-panel{padding:28px}
.page-copy-block{font-size:1.12rem;line-height:1.75}
body.front-body.rtl,
html[lang="ar"] body.front-body,
body.front-body.rtl .section-head h2,
body.front-body.rtl .page-hero h1,
body.front-body.rtl .hero h1,
body.front-body.rtl .display-title,
body.front-body.rtl .card-body h3,
body.front-body.rtl .hero-card h3,
body.front-body.rtl .footer-cta h3,
body.front-body.rtl .panel-card h3,
body.front-body.rtl .room-summary-card h3,
body.front-body.rtl .contact-panel h3,
body.front-body.rtl .lux-hero-title,
body.front-body.rtl .lux-spec-panel h3,
body.front-body.rtl .lux-showcase-copy h2,
body.front-body.rtl .lux-form-panel h3,
body.front-body.rtl .lux-section-title,
html[lang="ar"] body.front-body .section-head h2,
html[lang="ar"] body.front-body .page-hero h1,
html[lang="ar"] body.front-body .card-body h3,
html[lang="ar"] body.front-body .lux-hero-title,
html[lang="ar"] body.front-body .lux-spec-panel h3,
html[lang="ar"] body.front-body .lux-showcase-copy h2,
html[lang="ar"] body.front-body .lux-form-panel h3,
html[lang="ar"] body.front-body .lux-section-title{font-family:"IBM Plex Sans Arabic",system-ui,sans-serif !important;letter-spacing:0}
.lux-home-wrap{background:linear-gradient(180deg,var(--lux-dark-surface,#050607) 0%,#071018 58%,#091119 100%)}
.lux-hero-block{padding:var(--hero-inner-top,110px) 28px 42px}
.luxury-slider-shell .luxury-slider-stage{min-height:690px}
.lux-map-section{margin-top:42px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:26px;align-items:stretch}
.lux-map-copy,.lux-map-card{background:#fff;border-radius:30px;padding:28px;box-shadow:0 18px 42px rgba(28,22,15,.08)}
.lux-map-copy h3{margin:8px 0 12px;font-size:2.2rem;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;line-height:1}
.lux-map-list{display:grid;gap:14px;margin-top:18px}
.lux-map-item{padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#fbf8f3}
.hotel-map{width:100%;min-height:420px;border-radius:24px;overflow:hidden}
.hotel-map-placeholder{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(180deg,#f8f3eb,#efe6d7);padding:28px;gap:8px}
.lux-event-cta{margin-top:34px;padding:30px 34px;border-radius:30px;background:linear-gradient(135deg,#0c1217,#151c22 48%,#1d242a);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:0 18px 42px rgba(18,18,18,.18)}
.lux-event-cta h3{margin:8px 0 10px;font-size:2.45rem;line-height:1;font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif}
.gallery-grid-front{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gallery-front-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-soft)}
.gallery-front-image{padding-top:72%;background-size:cover;background-position:center}
.gallery-front-meta{padding:16px 18px}
.gallery-front-meta strong{display:block}
.admin-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.admin-media-card{border:1px solid var(--line);border-radius:20px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:12px}
.admin-media-card img{width:100%;height:180px;object-fit:cover;border-radius:14px}
.admin-media-meta small{display:block;color:var(--muted);word-break:break-all}
.thumb-preview.small{width:72px;height:56px;object-fit:cover;border-radius:10px}
.btn-sm{padding:10px 14px;font-size:.9rem}
@media (max-width: 980px){
  .page-split-grid,.lux-map-section{grid-template-columns:1fr}
  .gallery-grid-front,.admin-media-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 820px){
  .page-hero{padding:22px 0 10px}
  .lux-hero-block{padding:86px 14px 20px}
  .luxury-slider-shell .luxury-slider-stage{min-height:760px}
  .lux-hero-grid{display:grid;grid-template-columns:1fr}
  .lux-event-cta{padding:24px 22px;flex-direction:column;align-items:flex-start}
  .lux-event-cta h3,.lux-map-copy h3{font-size:1.85rem}
  .gallery-grid-front,.admin-media-grid{grid-template-columns:1fr}
}

/* ===== v0.7 polish + gallery + footer/media controls ===== */
.offers-page-title{font-size:clamp(2.4rem,4.6vw,4rem)!important;max-width:12ch;line-height:1.02}
.offer-card-link{display:block;color:inherit}
.offer-single-grid{align-items:start}
.offer-single-image{height:460px;border-radius:28px;background-size:cover;background-position:center;box-shadow:var(--shadow-soft);margin-bottom:24px}
.page-copy-block{font-size:1.04rem;line-height:1.78}
.page-hero h1{font-size:clamp(2.45rem,4.6vw,4.2rem);line-height:1.02}
.page-hero .eyebrow{margin-bottom:12px}

.lux-hero-title{font-size:clamp(2.7rem,5vw,4.8rem)!important;max-width:5.4ch;line-height:.95}
.rtl .lux-hero-title{font-size:clamp(2.35rem,4.5vw,3.7rem)!important;max-width:7ch}
.lux-hero-text{font-size:.96rem;line-height:1.75;max-width:36ch}
.lux-hero-copy{padding:56px 40px 40px}
.luxury-slider-shell .luxury-slider-stage{min-height:620px}
.lux-hero-image{min-height:620px}
.lux-media-pill,.lux-media-note,.lux-scene-note{transform:scale(.95);transform-origin:top right}
.lux-home-wrap .section-head h2,.lux-showcase-copy h2,.lux-spec-panel h3,.lux-section-title{font-size:clamp(2rem,3vw,3rem)}

.room-gallery-slider{position:relative}
.room-gallery-stage{position:relative;min-height:520px;border-radius:28px;overflow:hidden;background:#111;box-shadow:var(--shadow-soft)}
.room-gallery-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.03);transition:opacity .45s ease,transform .55s ease}
.room-gallery-slide.active{opacity:1;transform:scale(1)}
.room-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(7,7,7,.55);color:#fff;z-index:3;backdrop-filter:blur(8px)}
.room-gallery-arrow.prev{left:18px}.room-gallery-arrow.next{right:18px}
.room-gallery-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.room-gallery-thumb{padding:0;border:0;background:transparent;cursor:pointer;opacity:.72;transition:opacity .2s ease,transform .2s ease}
.room-gallery-thumb.active{opacity:1;transform:translateY(-2px)}
.room-gallery-thumb span{display:block;padding-top:68%;border-radius:18px;background-size:cover;background-position:center;border:1px solid rgba(22,21,20,.08)}

.media-dropzone{position:relative;border:1.5px dashed rgba(22,21,20,.14);border-radius:22px;padding:28px;text-align:center;background:#fbf8f3;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.media-dropzone strong{display:block;font-size:1rem;margin-bottom:6px}
.media-dropzone span{color:var(--muted);font-size:.92rem}
.media-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}
.media-dropzone.is-dragging{border-color:var(--lux-gold);background:#fff7ea;transform:translateY(-1px)}
.admin-media-card.is-dragging{opacity:.55}
.drag-handle{cursor:grab}

.site-footer .footer-copy{max-width:52ch}

@media (max-width: 980px){
  .lux-hero-title{font-size:clamp(2.5rem,8vw,4rem)!important;max-width:none}
  .room-gallery-stage{min-height:420px}
}
@media (max-width: 820px){
  .offers-page-title{font-size:clamp(2.1rem,8vw,3rem)!important;max-width:10ch}
  .luxury-slider-shell .luxury-slider-stage{min-height:640px}
  .lux-hero-copy{padding:34px 22px 26px}
  .lux-hero-image{min-height:300px}
  .room-gallery-stage{min-height:300px}
  .room-gallery-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-split-grid{gap:24px}
}


/* ===== v0.8 settings + gallery carousel + lightbox ===== */
.page-hero h1{font-size:clamp(2.15rem,4vw,3.7rem);line-height:1.04}
html[lang="ar"] body.front-body .page-hero h1,
body.front-body.rtl .page-hero h1,
html[lang="ar"] body.front-body .offers-page-title,
body.front-body.rtl .offers-page-title{font-size:clamp(1.9rem,4.8vw,3.15rem)!important;line-height:1.2;max-width:14ch}
.lux-hero-title{font-size:clamp(2.2rem,4.2vw,4rem)!important;max-width:6.6ch;line-height:.92}
.rtl .lux-hero-title, html[lang="ar"] body.front-body .lux-hero-title{font-size:clamp(2rem,4vw,3.25rem)!important;max-width:7.8ch;line-height:1.14}
.lux-hero-text{font-size:.92rem;line-height:1.7;max-width:42ch}
.hotel-gallery-slider{position:relative}
.hotel-gallery-stage{position:relative;min-height:640px;border-radius:34px;overflow:hidden;background:#0f0f10;box-shadow:var(--shadow-soft)}
.hotel-gallery-slide{position:absolute;inset:0;border:0;padding:0;cursor:zoom-in;background-size:cover;background-position:center;opacity:0;transform:scale(1.025);transition:opacity .5s ease,transform .55s ease;background-color:transparent}
.hotel-gallery-slide.active{opacity:1;transform:scale(1)}
.hotel-gallery-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,8,.03),rgba(8,8,8,.16) 58%,rgba(8,8,8,.24) 100%)}
.hotel-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(8,8,8,.52);color:#fff;z-index:3;backdrop-filter:blur(8px)}
.hotel-gallery-arrow.prev{left:18px}.hotel-gallery-arrow.next{right:18px}
.hotel-gallery-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:16px}
.hotel-gallery-thumb{padding:0;border:0;background:transparent;cursor:pointer;opacity:.72;transition:opacity .2s ease,transform .2s ease}
.hotel-gallery-thumb.active{opacity:1;transform:translateY(-2px)}
.hotel-gallery-thumb span{display:block;padding-top:72%;border-radius:18px;background-size:cover;background-position:center;border:1px solid rgba(22,21,20,.08)}
.hotel-lightbox[hidden]{display:none!important}
.hotel-lightbox{position:fixed;inset:0;background:rgba(5,5,6,.94);z-index:1200;display:flex;align-items:center;justify-content:center;padding:34px}
.hotel-lightbox img{max-width:min(1280px,92vw);max-height:86vh;border-radius:22px;box-shadow:0 25px 70px rgba(0,0,0,.38)}
.hotel-lightbox-close,.hotel-lightbox-arrow{position:absolute;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;backdrop-filter:blur(10px)}
.hotel-lightbox-close{top:24px;right:24px;font-size:2rem;line-height:1}
.hotel-lightbox-arrow.prev{left:24px}.hotel-lightbox-arrow.next{right:24px}
@media (max-width: 980px){
  .hotel-gallery-stage{min-height:500px}
  .hotel-gallery-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width: 820px){
  .lux-hero-title{font-size:clamp(2rem,8vw,3.2rem)!important;max-width:none}
  .hotel-gallery-stage{min-height:360px;border-radius:24px}
  .hotel-gallery-arrow{width:46px;height:46px}
  .hotel-gallery-thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .hotel-lightbox{padding:18px}
  .hotel-lightbox img{max-width:94vw;max-height:72vh}
  .hotel-lightbox-close,.hotel-lightbox-arrow{width:46px;height:46px}
  .hotel-lightbox-arrow.prev{left:12px}.hotel-lightbox-arrow.next{right:12px}
  .hotel-lightbox-close{top:12px;right:12px}
}


/* ===== v0.9 header centering + motion + performance ===== */
.page-home .site-header .nav-row{
  max-width:1324px;
  width:min(1324px,calc(100% - 112px));
  margin-inline:auto;
  padding-inline:0;
}
.page-home .site-header.is-scrolled .nav-row{
  width:min(1324px,calc(100% - 96px));
}
.page-home .brand-wrap,
.page-home .nav-actions,
.page-home .main-nav{
  flex:0 0 auto;
}
.page-home .nav-panel{
  flex:0 1 auto;
  width:auto;
}
.page-home .main-nav{
  justify-content:center;
}

.lux-hero-block,
.lux-room-overview,
.lux-home-showcase,
.lux-light-services,
.site-footer{
  content-visibility:auto;
  contain-intrinsic-size:1px 900px;
}

.reveal-on-scroll{
  opacity:0;
  transform:translate3d(0,26px,0);
  transition:opacity .72s ease, transform .9s cubic-bezier(.19,1,.22,1);
  will-change:opacity,transform;
}
.reveal-on-scroll.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

@media (prefers-reduced-motion: reduce){
  .reveal-on-scroll{
    opacity:1;
    transform:none;
    transition:none;
  }
  .luxury-slider-shell .luxury-slide,
  .lux-hero-image,
  .lux-room-card,
  .lux-side-card,
  .lux-service-card,
  .btn,
  .page-home .site-header,
  .page-home .site-header .nav-row{
    transition:none !important;
    animation:none !important;
  }
}

.luxury-slider-shell .luxury-slide{
  transform:translate3d(32px,0,0);
  transition:opacity .62s ease, transform .82s cubic-bezier(.19,1,.22,1);
}
.luxury-slider-shell .luxury-slide.active .lux-hero-copy > *{
  animation:luxFadeUp .78s cubic-bezier(.19,1,.22,1) both;
}
.luxury-slider-shell .luxury-slide.active .lux-hero-copy .lux-kicker{animation-delay:.05s}
.luxury-slider-shell .luxury-slide.active .lux-hero-copy .lux-hero-title{animation-delay:.14s}
.luxury-slider-shell .luxury-slide.active .lux-hero-copy .lux-hero-text{animation-delay:.22s}
.luxury-slider-shell .luxury-slide.active .lux-hero-copy .lux-hero-actions{animation-delay:.3s}
.lux-hero-image{
  transition:transform 1.15s cubic-bezier(.19,1,.22,1), box-shadow .35s ease;
  will-change:transform;
}
.luxury-slider-shell .luxury-slide.active .lux-hero-image{
  animation:luxHeroImageIn .95s cubic-bezier(.19,1,.22,1) both;
}
.lux-slider-controls .slider-arrow,
.lux-room-card,
.lux-side-card,
.lux-service-card,
.btn,
.lang-switch,
.page-home .brand-mark{
  transition:transform .28s ease, box-shadow .28s ease, background-color .28s ease, border-color .28s ease, color .28s ease, opacity .28s ease;
}
.lux-slider-controls .slider-arrow:hover,
.lux-room-card:hover,
.lux-side-card:hover,
.lux-service-card:hover{
  transform:translateY(-4px);
}
.lux-room-card:hover,
.lux-side-card:hover,
.lux-service-card:hover{
  box-shadow:0 28px 60px rgba(0,0,0,.18);
}
.btn:hover,
.lang-switch:hover,
.page-home .brand-wrap:hover .brand-mark{
  transform:translateY(-1px);
}
.page-home .main-nav a{
  transition:color .24s ease, opacity .24s ease, transform .24s ease;
}
.page-home .main-nav a:hover{
  transform:translateY(-1px);
}
.page-home .site-header{
  transition:background-color .28s ease, backdrop-filter .28s ease, box-shadow .28s ease;
}
.page-home .site-header.is-scrolled{
  background:rgba(7,7,7,.72);
  backdrop-filter:blur(14px);
}

@keyframes luxFadeUp{
  from{opacity:0;transform:translate3d(0,26px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes luxHeroImageIn{
  from{opacity:.68;transform:scale(1.04)}
  to{opacity:1;transform:scale(1.01)}
}

@media (max-width: 1100px){
  .page-home .site-header .nav-row,
  .page-home .site-header.is-scrolled .nav-row{
    width:min(1324px,calc(100% - 64px));
  }
}
@media (max-width: 820px){
  .page-home .site-header .nav-row,
  .page-home .site-header.is-scrolled .nav-row{
    width:min(100%,calc(100% - 32px));
  }
  .page-home .nav-panel{
    width:100%;
  }
  .lux-slider-controls .slider-arrow:hover,
  .lux-room-card:hover,
  .lux-side-card:hover,
  .lux-service-card:hover,
  .btn:hover,
  .lang-switch:hover,
  .page-home .brand-wrap:hover .brand-mark{
    transform:none;
  }
}


/* v1.0.10 performance + pagespeed refinements */
.brand,
.hero h1,
.hero-card h3,
.card-body h3,
.quote-card strong,
.experience-card h3,
.lux-hero-title,
.lux-section-title,
.lux-spec-panel h3,
.lux-showcase-copy h2,
.lux-side-card strong,
.page-hero h1,
.offer-single-grid h1,
.room-summary-card h3{font-family:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif}
.rtl .brand,
.rtl .hero h1,
.rtl .hero-card h3,
.rtl .card-body h3,
.rtl .experience-card h3,
.rtl .lux-hero-title,
.rtl .lux-section-title,
.rtl .lux-spec-panel h3,
.rtl .lux-showcase-copy h2,
.rtl .lux-side-card strong,
.rtl .page-hero h1,
.rtl .offer-single-grid h1,
.rtl .room-summary-card h3{font-family:"IBM Plex Sans Arabic",system-ui,sans-serif}
.lux-hero-title{font-size:clamp(3rem,5vw,5.35rem)!important;line-height:.9}
.lux-hero-text{font-size:1rem!important;max-width:30ch}
.page-hero h1{font-size:clamp(2.2rem,4vw,4rem)!important;line-height:.96}
.rtl .page-hero h1{font-size:clamp(2rem,3.4vw,3.4rem)!important;line-height:1.08}
.page-hero p{font-size:1rem!important;max-width:56ch}
.offers-grid .card-body h3{font-size:clamp(1.8rem,2.6vw,2.5rem)!important;line-height:1}
.rtl .offers-grid .card-body h3{font-size:clamp(1.6rem,2.2vw,2.1rem)!important;line-height:1.18}
.lux-hero-image,.offer-single-image,.room-gallery-stage,.hotel-gallery-stage{background-color:#171717}
.lux-hero-image{position:relative;overflow:hidden}
.lux-hero-photo,.offer-single-image img,.room-gallery-slide img,.hotel-gallery-slide img,.room-gallery-thumb img,.hotel-gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.lux-hero-photo{position:absolute;inset:0}
.offer-single-image{height:460px;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-soft);margin-bottom:24px}
.room-gallery-slide,.hotel-gallery-slide{background:none!important}
.room-gallery-slide img,.hotel-gallery-slide img{position:absolute;inset:0}
.room-gallery-thumb span,.hotel-gallery-thumb span{display:block;width:100%;height:100%;overflow:hidden;border-radius:inherit}
.room-gallery-thumb span img,.hotel-gallery-thumb span img{width:100%;height:100%;object-fit:cover}
.lux-room-card,.lux-showcase-image,.lux-side-card{background-size:cover;background-position:center;background-repeat:no-repeat}
@media (max-width: 991px){
  .lux-hero-title{font-size:clamp(2.4rem,8vw,4rem)!important}
}
@media (max-width: 767px){
  .reveal-on-scroll{opacity:1!important;transform:none!important}
  .lux-home-wrap{overflow:hidden}
  .lux-hero-title{font-size:clamp(2rem,12vw,3rem)!important;max-width:8ch}
  .lux-hero-text{font-size:.94rem!important;max-width:100%}
  .page-hero h1{font-size:clamp(1.8rem,10vw,2.5rem)!important}
}


/* ===== v0.11.4 hero regression fix ===== */
.lux-hero-copy{
  position:relative;
  z-index:6;
}
.lux-hero-actions,
.lux-hero-actions .btn,
.lux-hero-actions a{
  position:relative;
  z-index:8;
  pointer-events:auto;
}
.lux-hero-media,
.lux-hero-image{
  position:relative;
}
.lux-media-pill,
.lux-media-note{
  position:absolute;
  z-index:3;
}


/* ===== v0.12.2 page feature + AI concierge fix ===== */
.page-feature-section{padding-top:0;padding-bottom:18px}
.page-feature-media{border-radius:34px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.96);background:#fff}
.page-feature-media img{display:block;width:100%;height:min(560px,56vw);object-fit:cover}

.ai-chatbot{position:fixed;right:20px;bottom:20px;z-index:95;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.rtl .ai-chatbot{right:auto;left:20px;align-items:flex-start}
.ai-chatbot-fab{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:14px 18px;background:#0e1013;color:#fff;box-shadow:0 18px 40px rgba(0,0,0,.24);font-weight:800;cursor:pointer}
.ai-chatbot-fab-dot{width:10px;height:10px;border-radius:999px;background:var(--lux-gold);box-shadow:0 0 0 6px rgba(199,162,106,.16)}
.ai-chatbot-panel{width:min(380px,calc(100vw - 32px));max-height:min(72vh,640px);background:rgba(255,255,255,.98);border:1px solid rgba(22,21,20,.08);border-radius:28px;box-shadow:0 28px 68px rgba(0,0,0,.18);display:flex;flex-direction:column;overflow:hidden}
.ai-chatbot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 14px;background:linear-gradient(180deg,rgba(199,162,106,.12),rgba(255,255,255,.88))}
.ai-chatbot-head strong{display:block;font-size:1rem}
.ai-chatbot-head small{display:block;color:var(--muted);margin-top:4px}
.ai-chatbot-close{border:0;background:#f3efe7;color:#2c2823;width:34px;height:34px;border-radius:999px;font-size:22px;line-height:1;cursor:pointer}
.ai-chatbot-body{padding:16px;overflow:auto;display:flex;flex-direction:column;gap:12px;background:#fff;min-height:220px}
.chat-bubble{max-width:88%;padding:12px 14px;border-radius:18px;line-height:1.6;font-size:.96rem}
.chat-bubble.is-bot{background:#f5f1ea;color:#2b2722;border-top-left-radius:8px}
.chat-bubble.is-user{background:#111318;color:#fff;align-self:flex-end;border-top-right-radius:8px}
.chat-actions{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 2px}
.chat-action-link{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#f3efe7;border:1px solid rgba(22,21,20,.08);font-size:.88rem;font-weight:700;color:#3c352d;text-decoration:none}
.ai-chatbot-handoff{padding:0 16px 10px;color:var(--muted);font-size:.88rem}
.ai-chatbot-form{display:flex;gap:10px;padding:0 16px 16px}
.ai-chatbot-form input[type=text]{flex:1;border-radius:16px;background:#f8f5ef;border:1px solid rgba(22,21,20,.08);padding:14px 15px}
.ai-chatbot-form .btn{border-radius:16px;padding-inline:18px}
@media (max-width: 767px){
  .page-feature-media img{height:44vw;min-height:220px}
  .ai-chatbot{right:14px;left:14px;bottom:14px;align-items:stretch}
  .rtl .ai-chatbot{left:14px;right:14px;align-items:stretch}
  .ai-chatbot-fab{justify-content:center}
  .ai-chatbot-panel{width:100%}
}


/* ===== v0.12.3 chatbot + persistent thumbnail fixes ===== */
.ai-chatbot-panel[hidden]{display:none !important;}
.ai-chatbot.is-open .ai-chatbot-panel{display:flex;}
.ai-chatbot-fab{position:relative;z-index:2}
.ai-chatbot-panel{position:relative;z-index:3}
.ai-chatbot-close{position:relative;z-index:4;pointer-events:auto;touch-action:manipulation}
@media (max-width: 767px){
  .ai-chatbot{right:14px;left:14px;bottom:14px;align-items:stretch}
  .rtl .ai-chatbot{left:14px;right:14px;align-items:stretch}
  .ai-chatbot-panel{width:100%;max-height:min(64vh,560px)}
}

.room-gallery-thumb,
.hotel-gallery-thumb{display:block;line-height:0;border-radius:18px;overflow:hidden}
.room-gallery-thumb span,
.hotel-gallery-thumb span{
  display:block;
  width:100%;
  padding-top:0 !important;
  min-height:0;
  line-height:0;
  aspect-ratio:4/3;
  height:auto !important;
  overflow:hidden;
  border-radius:inherit;
  background:none !important;
}
.room-gallery-thumb span img,
.hotel-gallery-thumb span img{
  position:relative !important;
  inset:auto !important;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1 !important;
  visibility:visible !important;
}
