/* أنماط الصفحات. */

/* ===== الهيرو ===== */
.rn-hero {
  position: relative;
  background: var(--surface);
  border-block-end: 1px solid var(--line);
  overflow: hidden;
}
.rn-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--hero-wash);
  pointer-events: none;
}

.rn-hero__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .62;
}
.rn-hero__bg svg { width: 100%; height: 100%; }

.rn-hero__bg path,
.rn-hero__bg circle {
  fill: none;
  stroke: var(--gold-300);
  stroke-width: 1.1;
  stroke-linejoin: round;
  stroke-dasharray: var(--len, 1200);
  stroke-dashoffset: var(--len, 1200);
  animation: rn-draw .9s var(--ease) forwards;
}

@keyframes rn-draw { to { stroke-dashoffset: 0; } }

.rn-hero__inner {
  position: relative;
  padding-block: var(--s-8) var(--s-7);
  max-width: 920px;
}

.rn-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--s-2);
  padding: var(--s-2) var(--s-4);
  margin-block-end: var(--s-5);
  border: 1px solid var(--gold-300);
  border-radius: var(--r-pill);
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(6px);
  font-size: 13px;
  font-weight: 700;
  color: var(--gold-700);
}
.rn-hero__eyebrow svg { color: var(--gold-500); }

.rn-hero h1 {
  font-size: clamp(29px, 4.8vw, 52px);
  line-height: 1.32;
  margin-block-end: var(--s-4);
  max-width: 19ch;
}

.rn-hero__sub {
  font-size: clamp(16.5px, 2vw, 20px);
  color: var(--ink-mute);
  margin-block-end: var(--s-6);
  max-width: 54ch;
}

.rn-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: var(--s-3) var(--s-6);
  list-style: none;
  margin: var(--s-5) 0 0;
  padding: 0;
}
.rn-hero__proof li {
  display: flex;
  align-items: center;
  gap: var(--s-2);
  margin: 0;
  font-size: 14.5px;
  color: var(--ink-mute);
}
.rn-hero__proof svg { color: var(--ok); flex: 0 0 auto; }

@media (min-width: 1024px) {
  .rn-hero__inner { padding-block: var(--s-9) var(--s-8); }
}

/* شريط البحث السريع */
.rn-search {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: var(--s-3);
  box-shadow: var(--shadow-2);
  position: relative;
  overflow: hidden;
}
.rn-search::before {
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline: 0;
  height: 3px;
  background: var(--gold-rule);
}
.rn-search__grid { display: grid; gap: var(--s-2); grid-template-columns: 1fr; }
.rn-search__cell { display: block; }
.rn-search .rn-select, .rn-search .rn-input { min-height: 52px; border-color: var(--line-soft); }

@media (min-width: 640px) { .rn-search__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) {
  .rn-search__grid { grid-template-columns: repeat(4, 1fr) auto; }
  .rn-search__go { min-height: 52px; padding-inline: var(--s-7); }
}

/* ===== شريط الثقة داخل الشريط الداكن ===== */
.rn-trust {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--s-5) 0;
}
@media (min-width: 768px) { .rn-trust { grid-template-columns: repeat(4, 1fr); } }

.rn-trust__cell {
  padding: var(--s-4) var(--s-5);
  text-align: center;
  border-inline-end: 1px solid var(--band-line);
}
.rn-trust__cell:last-child { border-inline-end: 0; }
@media (max-width: 767px) {
  .rn-trust__cell:nth-child(2n) { border-inline-end: 0; }
}

.rn-trust__num {
  display: block;
  font-family: var(--font-head);
  font-size: clamp(21px, 2.8vw, 30px);
  font-weight: 800;
  color: var(--gold-300);
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.rn-trust__label {
  display: block;
  font-size: 13.5px;
  color: var(--on-band-mute);
  margin-block-start: var(--s-2);
}

/* على خلفية فاتحة (صفحة من نحن) */
.rn-section--surface .rn-trust__cell,
.rn-section--paper .rn-trust__cell { border-inline-end-color: var(--line); }
.rn-section--surface .rn-trust__num,
.rn-section--paper .rn-trust__num { color: var(--gold-500); }
.rn-section--surface .rn-trust__label,
.rn-section--paper .rn-trust__label { color: var(--ink-mute); }

/* ===== بطاقة المنطقة ===== */
.rn-area {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--s-1);
  padding: var(--s-5) var(--s-5) var(--s-5) var(--s-8);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  overflow: hidden;
  transition: border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);
}
.rn-area::before {
  content: "";
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  width: 3px;
  background: var(--gold-rule);
  opacity: 0;
  transition: opacity .25s var(--ease);
}
.rn-area:hover { border-color: var(--gold-300); transform: translateY(-3px); box-shadow: var(--shadow-2); }
.rn-area:hover::before { opacity: 1; }
.rn-area__name { font-family: var(--font-head); font-weight: 700; font-size: 18px; color: var(--ink); }
.rn-area__count { font-size: 13.5px; color: var(--ink-mute); }
.rn-area__go {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: var(--s-5);
  margin-block-start: -9px;
  color: var(--gold-500);
  transform: scaleX(-1);
  transition: transform .25s var(--ease);
}
.rn-area:hover .rn-area__go { transform: scaleX(-1) translateX(-4px); }

/* ===== رابط «اعرف أكثر» ===== */
.rn-link-go {
  display: inline-flex;
  align-items: center;
  gap: var(--s-1);
  margin-block-start: var(--s-4);
  font-weight: 700;
  font-size: 15px;
}
.rn-link-go svg { transform: scaleX(-1); transition: transform .2s var(--ease); }
.rn-link-go:hover svg { transform: scaleX(-1) translateX(-4px); }

/* ===== CTA ===== */
.rn-cta {
  position: relative;
  padding: var(--s-7);
  border: 1px solid var(--gold-300);
  border-radius: var(--r-lg);
  background: linear-gradient(180deg, rgba(232,219,188,.35) 0%, rgba(255,255,255,1) 60%);
  overflow: hidden;
}
.rn-cta h3 { margin-block-end: var(--s-3); font-size: 24px; }
.rn-cta p { color: var(--ink-mute); margin-block-end: var(--s-5); }
.rn-cta--dark {
  background: var(--band);
  border-color: var(--band);
  color: var(--on-band);
}
.rn-cta--dark::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--band-wash);
  pointer-events: none;
}
.rn-cta--dark > * { position: relative; }
.rn-cta--dark h3 { color: var(--on-band); }
.rn-cta--dark p { color: var(--on-band-mute); }

/* ===== المقالات ===== */
.rn-post {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: var(--shadow-1);
  transition: border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);
}
.rn-post:hover { border-color: var(--gold-300); transform: translateY(-3px); box-shadow: var(--shadow-2); }
.rn-post__media { display: block; aspect-ratio: 16 / 10; background: var(--paper); overflow: hidden; }
.rn-post__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease); }
.rn-post:hover .rn-post__media img { transform: scale(1.05); }
.rn-post__body { padding: var(--s-5); display: grid; gap: var(--s-2); }
.rn-post__body h2, .rn-post__body h3 { font-size: 18px; line-height: 1.5; margin: 0; font-weight: 700; }
.rn-post__body h2 a, .rn-post__body h3 a { color: var(--ink); }
.rn-post__body h2 a:hover, .rn-post__body h3 a:hover { color: var(--gold-700); }
.rn-post__body p { color: var(--ink-mute); font-size: 15px; margin: 0; }
.rn-post__cover { margin: 0 0 var(--s-6); border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); }

.rn-blog__bar { display: grid; gap: var(--s-4); margin-block-end: var(--s-6); }
.rn-blog__search { display: block; max-width: 420px; }

/* ===== النصوص الطويلة ===== */
.rn-prose { max-width: 68ch; }
.rn-prose h2 { margin-block-start: var(--s-7); font-size: 26px; }
.rn-prose h3 { margin-block-start: var(--s-6); }
.rn-prose p, .rn-prose li { color: var(--ink-mute); line-height: 1.95; }
.rn-prose--article { font-size: 17.5px; }
.rn-prose.is-clamped {
  max-height: 15em;
  overflow: hidden;
  mask-image: linear-gradient(to bottom, #000 58%, transparent 100%);
}
.rn-prose.is-open { max-height: none; mask-image: none; }

/* ===== الخدمات ===== */
.rn-service { padding-block: var(--s-8); border-block-start: 1px solid var(--line); }
.rn-service:first-of-type { border-block-start: 0; padding-block-start: 0; }
.rn-service__head { display: flex; align-items: center; gap: var(--s-4); margin-block-end: var(--s-5); }
.rn-service__head h2 { margin: 0; }
.rn-service__grid { display: grid; gap: var(--s-6); }
.rn-service__lead { font-size: 18px; color: var(--ink); line-height: 1.8; }
.rn-service h3 { font-size: 16px; margin-block: var(--s-5) var(--s-2); color: var(--gold-700); letter-spacing: .02em; }

@media (min-width: 900px) { .rn-service__grid { grid-template-columns: 1fr 1fr; gap: var(--s-8); } }

.rn-steps { counter-reset: rn-step; list-style: none; padding: 0; margin: 0 0 var(--s-5); }
.rn-steps li {
  counter-increment: rn-step;
  position: relative;
  padding-inline-start: var(--s-8);
  padding-block-end: var(--s-5);
  color: var(--ink-mute);
}
.rn-steps li::before {
  content: counter(rn-step);
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 2px;
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid var(--gold-300);
  border-radius: var(--r-sm);
  font-family: var(--font-mono);
  font-size: 13px;
  color: var(--gold-700);
  background: var(--gold-100);
}
.rn-steps li:not(:last-child)::after {
  content: "";
  position: absolute;
  inset-inline-start: 15px;
  inset-block-start: 36px;
  bottom: 6px;
  width: 1px;
  background: var(--line);
}

/* ===== المتجر ===== */
.rn-store { display: grid; gap: var(--s-6); }
@media (min-width: 1024px) { .rn-store { grid-template-columns: 296px 1fr; align-items: start; } }

.rn-store__toggle { width: 100%; }
@media (min-width: 1024px) { .rn-store__toggle { display: none; } }

.rn-filters {
  display: none;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: var(--s-5);
  box-shadow: var(--shadow-1);
}
.rn-filters.is-open {
  display: block;
  position: fixed;
  inset-inline: 0;
  inset-block-end: 0;
  max-height: 86vh;
  overflow-y: auto;
  z-index: var(--z-drawer);
  border-radius: var(--r-lg) var(--r-lg) 0 0;
  box-shadow: var(--shadow-3);
}
@media (min-width: 1024px) {
  .rn-filters { display: block; position: sticky; inset-block-start: calc(var(--header-h) + var(--s-4)); }
}

.rn-filters__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-block-end: var(--s-5);
  padding-block-end: var(--s-3);
  border-block-end: 2px solid var(--gold-200);
}
.rn-filters__head strong { font-family: var(--font-head); font-size: 17px; }

.rn-filters__group { border: 0; padding: 0; margin: 0 0 var(--s-5); }
.rn-filters__group legend {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--gold-700);
  margin-block-end: var(--s-2);
  padding: 0;
}

.rn-checks--scroll { max-height: 196px; overflow-y: auto; padding-inline-end: var(--s-1); }
.rn-checks--scroll .rn-check { min-height: 40px; font-size: 14px; }

.rn-row--split { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-2); }

.rn-filters__foot { display: none; }
.rn-filters.is-open .rn-filters__foot {
  display: block;
  position: sticky;
  inset-block-end: 0;
  background: var(--surface);
  padding-block-start: var(--s-3);
  border-block-start: 1px solid var(--line);
}

.rn-store__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-3);
  margin-block-end: var(--s-5);
  padding-block-end: var(--s-4);
  border-block-end: 1px solid var(--line);
}
.rn-store__count { margin: 0; color: var(--ink-mute); }
.rn-store__count strong { color: var(--ink); font-size: 21px; font-family: var(--font-head); font-weight: 800; }
.rn-store__sort .rn-select { min-width: 196px; }
.rn-store__more { text-align: center; margin-block-start: var(--s-7); }

/* ===== صفحة العقار ===== */
.rn-single__head { margin-block-end: var(--s-6); }
.rn-single__head h1 { font-size: clamp(26px, 3.6vw, 40px); }
.rn-single__place { display: flex; align-items: center; gap: var(--s-2); color: var(--ink-mute); margin: 0; font-size: 16px; }
.rn-single__place svg { color: var(--gold-500); }

.rn-single__grid { display: grid; gap: var(--s-6); padding-block-end: var(--s-8); }
@media (min-width: 1024px) { .rn-single__grid { grid-template-columns: 1fr 360px; gap: var(--s-8); align-items: start; } }

.rn-block { margin-block-start: var(--s-8); }
.rn-block h2 { font-size: 24px; margin-block-end: var(--s-4); }

.rn-gallery__main {
  position: relative;
  margin: 0;
  border-radius: var(--r-lg);
  overflow: hidden;
  border: 1px solid var(--line);
  aspect-ratio: 16 / 10;
  background: var(--paper);
  box-shadow: var(--shadow-1);
}
.rn-gallery__main img { width: 100%; height: 100%; object-fit: cover; cursor: zoom-in; }
.rn-gallery__zoom {
  position: absolute;
  inset-block-end: var(--s-3);
  inset-inline-end: var(--s-3);
  width: 42px; height: 42px;
  display: grid; place-items: center;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: var(--r-md);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(6px);
  color: var(--ink);
}

.rn-gallery__thumbs { display: flex; gap: var(--s-2); overflow-x: auto; padding-block: var(--s-3); scrollbar-width: thin; }
.rn-gallery__thumb {
  flex: 0 0 auto;
  width: 90px; height: 68px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  overflow: hidden;
  background: none;
  line-height: 0;
}
.rn-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }
.rn-gallery__thumb.is-active { border-color: var(--gold-700); box-shadow: inset 0 0 0 1px var(--gold-700); }

.rn-tabs { display: flex; gap: var(--s-2); margin-block-end: var(--s-3); }
.rn-tab {
  min-height: 42px;
  padding-inline: var(--s-5);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  background: var(--surface);
  font-weight: 700;
  font-size: 14.5px;
}
.rn-tab.is-active { border-color: var(--gold-500); color: var(--gold-900); background: var(--gold-100); }

.rn-video {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: var(--r-lg);
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--band);
  cursor: pointer;
}
.rn-video img { width: 100%; height: 100%; object-fit: cover; opacity: .82; }
.rn-video iframe { width: 100%; height: 100%; border: 0; display: block; }
.rn-video__play {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 72px; height: 72px;
  border-radius: var(--r-pill);
  border: 0;
  background: var(--gold-700);
  color: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 8px 30px rgba(15,13,12,.4);
}

.rn-specs {
  display: grid;
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  overflow: hidden;
}
@media (min-width: 640px) { .rn-specs { grid-template-columns: 1fr 1fr; } }

.rn-specs__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-3);
  background: var(--surface);
  padding: var(--s-4);
}
.rn-specs dt { color: var(--ink-mute); font-size: 14.5px; margin: 0; }
.rn-specs dd { margin: 0; font-weight: 700; }

.rn-amenities {
  display: grid;
  gap: var(--s-3);
  grid-template-columns: repeat(auto-fill, minmax(178px, 1fr));
  list-style: none;
  padding: 0; margin: 0;
}
.rn-amenities li {
  display: flex;
  align-items: center;
  gap: var(--s-3);
  margin: 0;
  padding: var(--s-3) var(--s-4);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  background: var(--surface);
  font-size: 14.5px;
  font-weight: 500;
}
.rn-amenities svg { color: var(--gold-700); flex: 0 0 auto; }

.rn-map {
  position: relative;
  aspect-ratio: 16 / 9;
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  overflow: hidden;
  background:
    repeating-linear-gradient(0deg, var(--line-soft) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(90deg, var(--line-soft) 0 1px, transparent 1px 44px),
    var(--paper);
}
.rn-map iframe { width: 100%; height: 100%; border: 0; display: block; }
.rn-map__ph {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: var(--s-3);
  text-align: center;
  padding: var(--s-4);
  color: var(--gold-500);
}
.rn-map__ph p { color: var(--ink-mute); margin: 0; }

.rn-calc__out {
  display: grid;
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  overflow: hidden;
  margin-block: var(--s-4) var(--s-3);
}
@media (min-width: 640px) { .rn-calc__out { grid-template-columns: repeat(3, 1fr); } }
.rn-calc__out > div { background: var(--surface); padding: var(--s-4); text-align: center; }
.rn-calc__out span { display: block; font-size: 13px; color: var(--ink-mute); }
.rn-calc__out strong {
  display: block;
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 800;
  color: var(--gold-700);
  margin-block-start: var(--s-1);
}

/* العمود الجانبي */
.rn-side {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: var(--s-5);
  display: grid;
  gap: var(--s-3);
  box-shadow: var(--shadow-2);
  position: relative;
  overflow: hidden;
}
.rn-side::before {
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline: 0;
  height: 3px;
  background: var(--gold-rule);
}
@media (min-width: 1024px) { .rn-side { position: sticky; inset-block-start: calc(var(--header-h) + var(--s-4)); } }
.rn-side__price { display: grid; gap: var(--s-1); justify-items: start; padding-block-start: var(--s-2); }
.rn-side__price .rn-price { font-size: 32px; }
.rn-side__meta {
  display: grid;
  gap: var(--s-2);
  margin: 0;
  padding-block: var(--s-3);
  border-block: 1px solid var(--line);
}
.rn-side__meta > div { display: flex; justify-content: space-between; gap: var(--s-3); }
.rn-side__meta dt { color: var(--ink-mute); font-size: 14px; margin: 0; }
.rn-side__meta dd { margin: 0; font-weight: 700; font-size: 14px; }
.rn-side__tools { display: flex; gap: var(--s-2); justify-content: center; }

#rn-lightbox img { max-width: min(1100px, 94vw); max-height: 86vh; object-fit: contain; border-radius: var(--r-md); }
.rn-lightbox__close { position: absolute; inset-block-start: var(--s-4); inset-inline-end: var(--s-4); }

/* ===== المقارنة ===== */
.rn-cmp-wrap { overflow-x: auto; }
.rn-cmp {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  overflow: hidden;
}
.rn-cmp th, .rn-cmp td {
  padding: var(--s-4);
  border-block-end: 1px solid var(--line);
  text-align: start;
  vertical-align: middle;
  font-size: 14.5px;
}
.rn-cmp th {
  position: sticky;
  inset-inline-start: 0;
  background: var(--paper);
  font-weight: 700;
  color: var(--ink-mute);
  width: 150px;
  z-index: 1;
}
.rn-cmp td.is-diff { background: var(--gold-100); }
.rn-cmp td { position: relative; }
.rn-cmp img { width: 100%; max-width: 230px; aspect-ratio: 4/3; object-fit: cover; border-radius: var(--r-sm); }
.rn-cmp__x {
  position: absolute;
  inset-block-start: var(--s-3);
  inset-inline-end: var(--s-3);
  width: 28px; height: 28px;
  border: 0;
  border-radius: var(--r-sm);
  background: rgba(15,13,12,.7);
  color: #fff;
  font-size: 17px;
  line-height: 1;
}

/* ===== النماذج ===== */
.rn-form {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: var(--s-6);
  box-shadow: var(--shadow-1);
}
.rn-form h3 { margin-block-end: var(--s-3); }

.rn-progress { display: flex; gap: var(--s-2); list-style: none; padding: 0; margin: 0 0 var(--s-6); }
.rn-progress li {
  flex: 1;
  display: flex;
  align-items: center;
  gap: var(--s-2);
  margin: 0;
  padding-block-end: var(--s-3);
  border-block-end: 2px solid var(--line);
  font-size: 13.5px;
  color: var(--ink-mute);
}
.rn-progress li span {
  width: 26px; height: 26px;
  display: grid; place-items: center;
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  font-family: var(--font-mono);
  font-size: 12px;
  flex: 0 0 auto;
}
.rn-progress li.is-active { color: var(--gold-700); border-block-end-color: var(--gold-700); font-weight: 700; }
.rn-progress li.is-active span { border-color: var(--gold-700); color: var(--gold-700); background: var(--gold-100); }
.rn-progress li.is-done { color: var(--ok); border-block-end-color: var(--ok); }
.rn-progress li.is-done span { border-color: var(--ok); color: var(--ok); }

.rn-step { display: none; border: 0; padding: 0; margin: 0; }
.rn-step.is-active { display: block; }
.rn-step__nav {
  display: flex;
  gap: var(--s-3);
  justify-content: space-between;
  margin-block-start: var(--s-6);
  padding-block-start: var(--s-5);
  border-block-start: 1px solid var(--line);
}
.rn-step__nav .rn-btn:only-child { margin-inline-start: auto; }

.rn-notice {
  display: flex;
  align-items: flex-start;
  gap: var(--s-3);
  padding: var(--s-4);
  background: var(--gold-100);
  border-radius: var(--r-md);
  border-inline-start: 3px solid var(--gold-500);
  font-size: 14.5px;
  color: var(--ink);
}
.rn-notice svg { color: var(--gold-700); flex: 0 0 auto; margin-block-start: 3px; }

.rn-details { margin-block-end: var(--s-4); }
.rn-details summary { cursor: pointer; padding-block: var(--s-3); font-weight: 700; color: var(--gold-700); }

.rn-done {
  margin-block-start: var(--s-6);
  padding: var(--s-6);
  border: 1px solid var(--ok);
  border-radius: var(--r-lg);
  background: var(--paper);
  text-align: center;
}
.rn-done__icon {
  width: 52px; height: 52px;
  margin: 0 auto var(--s-4);
  display: grid; place-items: center;
  border-radius: var(--r-pill);
  background: var(--ok);
  color: #fff;
}
.rn-done h3 { margin-block-end: var(--s-2); }
.rn-done p { color: var(--ink-mute); }
.rn-done__extra { margin-block-start: var(--s-4); }

/* التقويم */
.rn-cal { border: 1px solid var(--line); border-radius: var(--r-md); padding: var(--s-4); background: var(--surface); }
.rn-cal__head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); margin-block-end: var(--s-3); }
.rn-cal__head strong { font-family: var(--font-head); font-size: 17px; }
.rn-cal__dow, .rn-cal__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: var(--s-1); }
.rn-cal__dow { font-size: 11.5px; color: var(--ink-mute); text-align: center; margin-block-end: var(--s-2); }
.rn-cal__day {
  min-height: 44px;
  border: 1px solid transparent;
  border-radius: var(--r-sm);
  background: var(--paper);
  font-variant-numeric: tabular-nums;
  font-size: 14.5px;
  transition: border-color .2s var(--ease), background .2s var(--ease);
}
.rn-cal__day:hover:not(.is-off) { border-color: var(--gold-500); }
.rn-cal__day.is-off { opacity: .3; cursor: not-allowed; background: transparent; }
.rn-cal__day.is-today { border-color: var(--steel-300); font-weight: 700; }
.rn-cal__day.is-picked { background: var(--gold-700); color: #fff; border-color: var(--gold-700); font-weight: 700; }
.rn-cal__blank { min-height: 44px; }

.rn-slots { max-height: 176px; overflow-y: auto; }
.rn-slots .rn-chip { min-width: 100px; }

.rn-booking__prop {
  display: flex;
  align-items: center;
  gap: var(--s-4);
  flex-wrap: wrap;
  padding: var(--s-4);
  margin-block-end: var(--s-5);
  background: var(--surface);
  border: 1px solid var(--gold-300);
  border-radius: var(--r-lg);
  box-shadow: var(--shadow-1);
}
.rn-booking__prop img { width: 116px; height: 87px; object-fit: cover; border-radius: var(--r-sm); }
.rn-booking__prop > div { display: grid; gap: 2px; flex: 1; min-width: 190px; }
.rn-booking__prop .rn-mono { font-size: 12px; color: var(--steel-500); letter-spacing: .08em; }

/* ===== تواصل ===== */
.rn-contact { display: grid; gap: var(--s-6); }
@media (min-width: 900px) { .rn-contact { grid-template-columns: 1fr 1.1fr; align-items: start; } }

.rn-contact__list { list-style: none; padding: 0; margin: var(--s-4) 0 0; display: grid; gap: var(--s-4); }
.rn-contact__list li { display: flex; align-items: flex-start; gap: var(--s-3); margin: 0; }
.rn-contact__list svg { color: var(--gold-700); flex: 0 0 auto; margin-block-start: 4px; }

/* ===== آراء العملاء ===== */
.rn-quotes { max-width: 760px; margin-inline: auto; }
.rn-quote {
  margin: 0;
  padding: var(--s-7);
  background: var(--surface);
  border: 1px solid var(--gold-300);
  border-radius: var(--r-lg);
  text-align: center;
  box-shadow: var(--shadow-1);
}
.rn-quote__stars { display: flex; gap: 3px; justify-content: center; color: var(--gold-500); margin-block-end: var(--s-4); }
.rn-quote blockquote { margin: 0 0 var(--s-5); font-size: 18px; line-height: 1.95; color: var(--ink); }
.rn-quote figcaption { display: grid; gap: 2px; }
.rn-quote figcaption strong { color: var(--gold-700); font-size: 16px; }
.rn-quote figcaption span { font-size: 13.5px; color: var(--ink-mute); }

.rn-quotes__nav { display: flex; align-items: center; justify-content: center; gap: var(--s-4); margin-block-start: var(--s-5); }
.rn-quotes__dots { display: flex; gap: var(--s-2); }
.rn-quotes__dot {
  width: 9px; height: 9px;
  padding: 0;
  border: 1px solid var(--gold-500);
  border-radius: var(--r-pill);
  background: transparent;
}
.rn-quotes__dot.is-on { background: var(--gold-700); border-color: var(--gold-700); }
.rn-flip { transform: scaleX(-1); }

/* ===== المشاركة ===== */
.rn-share {
  display: flex;
  align-items: center;
  gap: var(--s-3);
  margin-block-start: var(--s-7);
  padding-block-start: var(--s-5);
  border-block-start: 1px solid var(--line);
  font-size: 14.5px;
  color: var(--ink-mute);
}

/* ===== 404 ===== */
.rn-404 { text-align: center; padding-block: var(--s-9); }
.rn-404__code {
  font-family: var(--font-mono);
  font-size: clamp(64px, 15vw, 132px);
  font-weight: 500;
  letter-spacing: .08em;
  color: var(--gold-300);
  line-height: 1;
  margin-block-end: var(--s-4);
}

/* ===== القائمة الافتراضية ===== */
.rn-menu { display: flex; align-items: center; gap: var(--s-5); list-style: none; margin: 0; padding: 0; }
.rn-drawer .rn-menu { display: block; }
