/* ══════════════════════════════════════════════════════════════
   RIHLAT DESIGN SYSTEM  v3.0 — Brand Kit «اللازورد والذهب»
   The Digital Business Network for Tourism
   Single source of truth for colors, type, and every component.
   Sand page · white cards · nile-navy bands · gold reserved for the one CTA.
   ══════════════════════════════════════════════════════════════ */

/* ─── 1. TOKENS ─────────────────────────────────────────────── */
:root{
  /* ── Brand Kit v1.0 — «اللازورد والذهب» ─────────────────────
     Lapis + gold are the colours of Tutankhamun's mask; no competitor
     in the tours market owns that pair. Teal/green are forbidden here
     because they belong to Travolyo, Tripadvisor and Viator.        */
  --nile-900:#122647;   /* ليل النيل — headings, dark surfaces */
  --nile-800:#1A3563;
  --lapis-600:#1E4E9D;  /* لازوردي — links, interactive, focus */
  --lapis-100:#E9F0FB;
  --gold-500:#F2A71B;   /* ذهب فرعوني — primary CTA fill ONLY */
  --gold-600:#C77C08;   /* borders & icons on light */
  --gold-800:#9A5E03;   /* small gold TEXT — the only AA-safe gold */
  --gold-50:#FDF3DC;
  --sand-50:#FAF6EE;    /* رملي / بردي — page background */
  --ink-700:#35404F;    /* حبر — body text */

  /* ── Legacy aliases: every component already speaks --rk-*, so the
     whole platform re-skins from these lines alone. ─────────────── */
  --rk-brand:var(--gold-500); --rk-brand-600:var(--gold-600); --rk-brand-700:var(--gold-800);
  --rk-brand-100:var(--gold-50); --rk-brand-050:#FEF9EF;
  --rk-navy-900:var(--nile-900); --rk-navy-800:var(--nile-800); --rk-navy-700:#22406F;
  --rk-navy-600:var(--lapis-600); --rk-navy-100:var(--lapis-100);

  --rk-g-900:var(--nile-900); --rk-g-800:var(--nile-800);
  --rk-g-700:var(--lapis-600); --rk-g-600:#173E7E;
  --rk-g-500:var(--nile-800);  --rk-g-400:var(--lapis-600);
  --rk-g-200:#B9CDEA; --rk-g-100:var(--lapis-100); --rk-g-050:#F3F7FD;

  --rk-gold:var(--gold-500); --rk-gold-strong:var(--gold-800);
  --rk-gold-soft:var(--gold-50); --rk-gold-line:#F0DFB4;

  /* Neutrals */
  --rk-ink:var(--nile-900); --rk-ink-2:var(--ink-700); --rk-muted:#5B6572; --rk-faint:#98A0AB;
  --rk-line:#E7E1D2; --rk-line-2:#D9D1BE;
  --rk-bg:var(--sand-50); --rk-surface:#FFFFFF; --rk-surface-2:#FDFBF6;

  /* Semantic */
  --rk-ok:#167C3D; --rk-ok-bg:#E8F4EC;
  --rk-warn:var(--gold-800); --rk-warn-bg:var(--gold-50);
  --rk-err:#D93025; --rk-err-bg:#FBEAE8;
  --rk-info:var(--lapis-600); --rk-info-bg:var(--lapis-100);
  --rk-wa:#25D366; --rk-wa-ink:#128C4A;

  /* Radius — kit: cards 14, pills 999 */
  --rk-r-sm:8px; --rk-r:10px; --rk-r-lg:14px; --rk-r-xl:20px; --rk-r-pill:999px;

  /* Elevation — kit shadow, tinted with nile not black */
  --rk-sh-1:0 2px 8px rgba(18,38,71,.05);
  --rk-sh-2:0 6px 24px rgba(18,38,71,.08);
  --rk-sh-3:0 10px 32px rgba(18,38,71,.14);

  /* Type — Alexandria for headings and buttons, Plex for everything read */
  --rk-f:'IBM Plex Sans Arabic','Cairo',system-ui,sans-serif;
  --rk-f-head:'Alexandria','IBM Plex Sans Arabic',system-ui,sans-serif;
  --rk-t-display:clamp(30px,4.4vw,44px);
  --rk-t-h1:clamp(26px,3.4vw,38px);
  --rk-t-h2:24px;
  --rk-t-h3:19px; --rk-t-body:16px; --rk-t-sm:13px; --rk-t-xs:11.5px;

  /* Space (8pt) */
  --rk-s1:4px; --rk-s2:8px; --rk-s3:12px; --rk-s4:16px; --rk-s5:24px;
  --rk-s6:32px; --rk-s7:48px; --rk-s8:64px; --rk-s9:88px;

  --rk-ease:cubic-bezier(.22,.61,.36,1);
  --rk-dur:.22s;
  --rk-nav-h:72px;
}

/* ─── 2. RESET & BASE ───────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
/* Direction lives on <html dir> so the English toggle can flip the whole
   document. Never hard-code direction on body — it would win over dir. */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;direction:rtl}
html[dir="ltr"]{direction:ltr}
body{
  font-family:var(--rk-f);font-size:var(--rk-t-body);line-height:1.75;
  color:var(--rk-ink);background:var(--rk-bg);direction:inherit;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,svg,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:none;cursor:pointer}
h1,h2,h3,h4{font-family:var(--rk-f-head);line-height:1.35;font-weight:700;letter-spacing:-.2px}
h1{font-size:var(--rk-t-h1)} h2{font-size:var(--rk-t-h2)} h3{font-size:var(--rk-t-h3)}
table{border-collapse:collapse;width:100%}
:target{scroll-margin-top:calc(var(--rk-nav-h) + 16px)}

/* Accessibility: visible focus everywhere, always */
:focus{outline:none}
:focus-visible{outline:3px solid var(--lapis-600);outline-offset:2px;border-radius:4px}
.rk-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.rk-skip{position:absolute;right:12px;top:-64px;z-index:2000;background:var(--rk-g-700);color:#fff;padding:10px 18px;border-radius:var(--rk-r);font-weight:700;transition:top .2s}
.rk-skip:focus-visible{top:12px}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* ─── 3. LAYOUT ─────────────────────────────────────────────── */
.rk-wrap{max-width:1240px;margin-inline:auto;padding-inline:var(--rk-s5)}
.rk-sec{padding-block:var(--rk-s9)}
.rk-sec--tight{padding-block:var(--rk-s7)}
.rk-grid{display:grid;gap:var(--rk-s5)}
.rk-row{display:flex;align-items:center;gap:var(--rk-s3)}
.rk-row--wrap{flex-wrap:wrap}
.rk-spread{display:flex;align-items:center;justify-content:space-between;gap:var(--rk-s4)}
.rk-stack{display:flex;flex-direction:column;gap:var(--rk-s3)}
.rk-hide{display:none!important}

/* Section heading — one pattern, used everywhere */
.rk-shead{max-width:640px;margin-bottom:var(--rk-s6)}
.rk-shead--mid{margin-inline:auto;text-align:center}
.rk-eyebrow{display:inline-block;font-size:var(--rk-t-xs);font-weight:800;letter-spacing:1.4px;
  color:var(--rk-g-400);text-transform:uppercase;margin-bottom:var(--rk-s2)}
.rk-shead h2{margin-bottom:var(--rk-s2)}
.rk-shead p{color:var(--rk-muted);font-size:16px}

/* ─── 4. BUTTONS ────────────────────────────────────────────── */
.rk-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--rk-f-head);
  padding:11px 24px;border-radius:var(--rk-r-pill);font-size:14.5px;font-weight:700;
  border:1.5px solid transparent;cursor:pointer;white-space:nowrap;
  transition:background var(--rk-dur) var(--rk-ease),color var(--rk-dur),
             border-color var(--rk-dur),transform .12s,box-shadow var(--rk-dur);
}
.rk-btn:active{transform:translateY(1px)}
.rk-btn[disabled],.rk-btn[aria-disabled="true"]{opacity:.5;pointer-events:none}
.rk-btn--primary{background:var(--gold-500);color:var(--nile-900)}
.rk-btn--primary:hover{background:var(--gold-600);color:#fff;box-shadow:0 6px 18px rgba(199,124,8,.28)}
.rk-btn--gold{background:var(--gold-500);color:var(--nile-900)}
.rk-btn--gold:hover{background:var(--gold-600);color:#fff;box-shadow:0 6px 18px rgba(199,124,8,.28)}
.rk-btn--outline{border-color:var(--rk-line-2);color:var(--rk-ink);background:var(--rk-surface)}
.rk-btn--outline:hover{border-color:var(--rk-g-700);color:var(--rk-g-700);background:var(--rk-g-050)}
.rk-btn--onDark{border-color:rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.06)}
.rk-btn--onDark:hover{background:rgba(255,255,255,.16);border-color:#fff}
.rk-btn--ghost{color:var(--rk-g-700)}
.rk-btn--ghost:hover{background:var(--rk-g-050)}
.rk-btn--wa{background:var(--rk-wa-ink);color:#fff}
.rk-btn--wa:hover{background:#0F7A41;box-shadow:var(--rk-sh-2)}
.rk-btn--danger{background:var(--rk-err);color:#fff}
.rk-btn--lg{padding:15px 30px;font-size:16px;border-radius:var(--rk-r-lg)}
.rk-btn--sm{padding:7px 14px;font-size:13px;border-radius:var(--rk-r-sm)}
/* Full-width buttons carry long labels; nowrap would set the container's
   min-content and force the page to scroll sideways on small screens. */
.rk-btn--block{width:100%;white-space:normal;text-align:center}
.rk-btn--icon{padding:9px;width:38px;height:38px;border-radius:var(--rk-r-sm)}

/* ─── 5. BADGES & CHIPS ─────────────────────────────────────── */
.rk-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--rk-r-pill);
  font-size:var(--rk-t-xs);font-weight:800;line-height:1.7;white-space:nowrap}
.rk-badge--verified{background:var(--rk-g-100);color:var(--rk-g-700)}
.rk-badge--premium{background:var(--rk-gold-soft);color:var(--rk-gold-strong);border:1px solid var(--rk-gold-line)}
.rk-badge--neutral{background:var(--rk-bg);color:var(--rk-muted);border:1px solid var(--rk-line)}
.rk-badge--ok{background:var(--rk-ok-bg);color:var(--rk-ok)}
.rk-badge--warn{background:var(--rk-warn-bg);color:var(--rk-warn)}
.rk-badge--err{background:var(--rk-err-bg);color:var(--rk-err)}
.rk-badge--info{background:var(--rk-info-bg);color:var(--rk-info)}
.rk-badge--demo{background:#F0EEF9;color:#5B4B9E;border:1px solid #DCD6F0}

.rk-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 15px;border-radius:var(--rk-r-pill);
  border:1.5px solid var(--rk-line-2);background:var(--rk-surface);font-size:13.5px;font-weight:600;
  color:var(--rk-ink-2);cursor:pointer;transition:all var(--rk-dur) var(--rk-ease)}
.rk-chip:hover{border-color:var(--rk-g-400);color:var(--rk-g-700)}
.rk-chip[aria-pressed="true"],.rk-chip.is-on{background:var(--rk-g-700);border-color:var(--rk-g-700);color:#fff}
.rk-chip--onDark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.24);color:rgba(255,255,255,.92)}
.rk-chip--onDark:hover{background:rgba(255,255,255,.18);border-color:#fff;color:#fff}
.rk-chip--onDark[aria-pressed="true"]{background:#fff;color:var(--rk-g-700);border-color:#fff}

/* Star rating */
.rk-stars{color:var(--rk-gold);letter-spacing:1px;font-size:13px}
.rk-rate{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:13.5px}
.rk-rate small{color:var(--rk-muted);font-weight:500}

/* ─── 6. CARDS ──────────────────────────────────────────────── */
.rk-card{background:var(--rk-surface);border:1px solid var(--rk-line);border-radius:var(--rk-r-lg);
  box-shadow:var(--rk-sh-1);overflow:hidden;transition:transform var(--rk-dur) var(--rk-ease),box-shadow var(--rk-dur),border-color var(--rk-dur)}
.rk-card--pad{padding:var(--rk-s5)}
.rk-card--link:hover{transform:translateY(-3px);box-shadow:var(--rk-sh-3);border-color:var(--rk-g-200)}
.rk-card__media{position:relative;aspect-ratio:4/3;background:linear-gradient(140deg,var(--rk-g-100),var(--rk-g-050));
  display:flex;align-items:center;justify-content:center;font-size:60px;overflow:hidden}
/* A real photograph of the destination sits behind the emoji when we have one. */
.rk-card__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .5s var(--rk-ease)}
.rk-card--link:hover .rk-card__photo{transform:scale(1.06)}
.rk-card__media--photo{font-size:0}
.rk-card__media--photo::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(7,26,16,.45),transparent 55%)}
.rk-card__body{padding:var(--rk-s4) var(--rk-s5) var(--rk-s5)}
.rk-card__title{font-size:16px;font-weight:800;margin-bottom:4px}
.rk-card__meta{font-size:var(--rk-t-sm);color:var(--rk-muted)}
.rk-card__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--rk-s3);
  margin-top:var(--rk-s4);padding-top:var(--rk-s3);border-top:1px solid var(--rk-line)}
.rk-price{font-size:20px;font-weight:900;color:var(--rk-g-700);line-height:1.1}
.rk-price small{font-size:12px;font-weight:500;color:var(--rk-muted)}
.rk-price__from{display:block;font-size:var(--rk-t-xs);color:var(--rk-muted);font-weight:600}

/* ─── 7. FORMS ──────────────────────────────────────────────── */
.rk-field{display:block;margin-bottom:var(--rk-s4)}
.rk-label{display:block;font-size:var(--rk-t-sm);font-weight:700;color:var(--rk-ink-2);margin-bottom:6px}
.rk-label .rk-req{color:var(--rk-err)}
.rk-input,.rk-select,.rk-textarea{
  width:100%;padding:11px 14px;border:1.5px solid var(--rk-line-2);border-radius:var(--rk-r);
  background:var(--rk-surface);font-size:14.5px;transition:border-color var(--rk-dur),box-shadow var(--rk-dur)}
.rk-input:hover,.rk-select:hover,.rk-textarea:hover{border-color:var(--rk-g-200)}
.rk-input:focus-visible,.rk-select:focus-visible,.rk-textarea:focus-visible{
  border-color:var(--rk-g-400);box-shadow:0 0 0 4px var(--rk-g-100);outline:none}
.rk-input::placeholder,.rk-textarea::placeholder{color:var(--rk-faint)}
.rk-textarea{min-height:96px;resize:vertical}
.rk-input[aria-invalid="true"]{border-color:var(--rk-err);box-shadow:0 0 0 4px var(--rk-err-bg)}
.rk-help{font-size:var(--rk-t-xs);color:var(--rk-muted);margin-top:5px}
.rk-err-msg{font-size:var(--rk-t-xs);color:var(--rk-err);font-weight:700;margin-top:5px}
.rk-fieldrow{display:grid;grid-template-columns:1fr 1fr;gap:var(--rk-s4)}
@media(max-width:640px){.rk-fieldrow{grid-template-columns:1fr}}

/* ─── 8. MODAL ──────────────────────────────────────────────── */
.rk-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:var(--rk-s4)}
.rk-modal.is-open{display:flex}
.rk-modal__veil{position:absolute;inset:0;background:rgba(7,26,16,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:rkFade .2s var(--rk-ease)}
.rk-modal__box{position:relative;background:var(--rk-surface);border-radius:var(--rk-r-xl);width:100%;max-width:560px;
  max-height:90vh;overflow-y:auto;box-shadow:var(--rk-sh-3);animation:rkPop .26s var(--rk-ease)}
.rk-modal__box--wide{max-width:760px}
.rk-modal__head{position:sticky;top:0;background:var(--rk-surface);border-bottom:1px solid var(--rk-line);
  padding:var(--rk-s4) var(--rk-s5);display:flex;align-items:center;justify-content:space-between;gap:var(--rk-s3);z-index:2}
.rk-modal__head h3{font-size:17px}
.rk-modal__body{padding:var(--rk-s5)}
.rk-modal__foot{padding:var(--rk-s4) var(--rk-s5);border-top:1px solid var(--rk-line);display:flex;gap:var(--rk-s3);justify-content:flex-end;
  position:sticky;bottom:0;background:var(--rk-surface)}
.rk-x{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--rk-muted);font-size:18px;flex-shrink:0}
.rk-x:hover{background:var(--rk-bg);color:var(--rk-ink)}
@keyframes rkFade{from{opacity:0}to{opacity:1}}
@keyframes rkPop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
body.rk-locked{overflow:hidden}

/* ─── 9. TABLE ──────────────────────────────────────────────── */
.rk-tablewrap{overflow-x:auto;border:1px solid var(--rk-line);border-radius:var(--rk-r-lg);background:var(--rk-surface)}
.rk-table{min-width:680px;font-size:14px}
.rk-table th{text-align:right;font-size:var(--rk-t-xs);font-weight:800;letter-spacing:.5px;color:var(--rk-muted);
  text-transform:uppercase;padding:12px 16px;background:var(--rk-surface-2);border-bottom:1px solid var(--rk-line);white-space:nowrap}
.rk-table td{padding:14px 16px;border-bottom:1px solid var(--rk-line);vertical-align:middle}
.rk-table tbody tr:last-child td{border-bottom:none}
.rk-table tbody tr{transition:background var(--rk-dur)}
.rk-table tbody tr:hover{background:var(--rk-g-050)}
.rk-td-strong{font-weight:800}
.rk-td-sub{font-size:var(--rk-t-xs);color:var(--rk-muted)}

/* ─── 10. ALERTS ────────────────────────────────────────────── */
.rk-alert{display:flex;gap:var(--rk-s3);padding:var(--rk-s4);border-radius:var(--rk-r);
  border:1px solid var(--rk-line);background:var(--rk-surface-2);font-size:var(--rk-t-sm);align-items:flex-start}
.rk-alert__ico{flex-shrink:0;font-size:16px;line-height:1.4}
.rk-alert--info{background:var(--rk-info-bg);border-color:#CCE1EF;color:#134D74}
.rk-alert--ok{background:var(--rk-ok-bg);border-color:#C6E5DA;color:#0B5B42}
.rk-alert--warn{background:var(--rk-warn-bg);border-color:#F2DCBE;color:#8A5209}
.rk-alert--err{background:var(--rk-err-bg);border-color:#F1CFCB;color:#8E2A1F}

/* ─── 11. STATE COMPONENTS: loading / empty / error / success ─ */
.rk-state{text-align:center;padding:var(--rk-s7) var(--rk-s5);border:1px dashed var(--rk-line-2);
  border-radius:var(--rk-r-lg);background:var(--rk-surface-2)}
.rk-state__ico{font-size:34px;margin-bottom:var(--rk-s3);opacity:.75}
.rk-state__t{font-size:16px;font-weight:800;margin-bottom:6px}
.rk-state__p{color:var(--rk-muted);font-size:var(--rk-t-sm);max-width:380px;margin:0 auto var(--rk-s4)}
.rk-skel{background:linear-gradient(90deg,#EEF1F0 25%,#F7F9F8 37%,#EEF1F0 63%);
  background-size:400% 100%;animation:rkShim 1.3s ease infinite;border-radius:var(--rk-r-sm)}
@keyframes rkShim{0%{background-position:100% 50%}100%{background-position:0 50%}}
.rk-skel--line{height:12px;margin-bottom:9px}
.rk-skel--title{height:18px;width:55%;margin-bottom:12px}
.rk-skel--card{height:190px;border-radius:var(--rk-r-lg)}
.rk-spin{width:20px;height:20px;border:2.5px solid var(--rk-g-100);border-top-color:var(--rk-g-700);
  border-radius:50%;animation:rkSpin .7s linear infinite;display:inline-block}
@keyframes rkSpin{to{transform:rotate(360deg)}}

/* Toast */
.rk-toasts{position:fixed;bottom:22px;left:22px;z-index:1500;display:flex;flex-direction:column;gap:10px}
.rk-toast{background:var(--rk-g-800);color:#fff;padding:12px 18px;border-radius:var(--rk-r);
  box-shadow:var(--rk-sh-3);font-size:var(--rk-t-sm);font-weight:600;display:flex;align-items:center;gap:9px;
  animation:rkToast .3s var(--rk-ease);max-width:340px}
.rk-toast--ok{background:var(--rk-ok)} .rk-toast--err{background:var(--rk-err)}
@keyframes rkToast{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* ─── 12. PROGRESS / METERS ─────────────────────────────────── */
.rk-meter{height:8px;background:var(--rk-line);border-radius:var(--rk-r-pill);overflow:hidden}
/* display:block — the fill is a <span>; height:100% is inert on an inline box. */
.rk-meter__fill{display:block;height:100%;background:var(--rk-g-400);border-radius:inherit;transition:width .8s var(--rk-ease)}
.rk-meter__fill--gold{background:var(--rk-gold)}
.rk-steps{display:flex;gap:6px}
.rk-steps__dot{flex:1;height:5px;border-radius:var(--rk-r-pill);background:var(--rk-line)}
.rk-steps__dot.is-done{background:var(--rk-g-400)}

/* ─── 13. NAVIGATION ────────────────────────────────────────── */
.rk-nav{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--rk-line);transition:box-shadow var(--rk-dur)}
.rk-nav.is-stuck{box-shadow:var(--rk-sh-2)}
.rk-nav__in{height:var(--rk-nav-h);display:flex;align-items:center;gap:var(--rk-s5)}
.rk-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.rk-logo__mark{width:40px;height:40px;border-radius:11px;background:linear-gradient(140deg,var(--rk-g-700),var(--rk-g-500));
  display:grid;place-items:center;color:#fff;font-weight:900;font-size:19px;flex-shrink:0}
.rk-logo__ar{font-size:20px;font-weight:900;color:var(--rk-g-700);line-height:1.1;letter-spacing:-.5px}
.rk-logo__en{font-size:9.5px;font-weight:700;letter-spacing:2.6px;color:var(--rk-faint);text-transform:uppercase}
.rk-nav__links{display:flex;gap:2px;margin-inline-start:auto}
.rk-nav__link{padding:9px 14px;border-radius:var(--rk-r-sm);font-size:14px;font-weight:600;color:var(--rk-ink-2);
  transition:background var(--rk-dur),color var(--rk-dur)}
.rk-nav__link:hover{background:var(--rk-g-050);color:var(--rk-g-700)}
.rk-nav__link[aria-current="page"]{color:var(--rk-g-700);font-weight:800;background:var(--rk-g-050)}
.rk-nav__cta{display:flex;gap:9px;margin-inline-start:auto;flex-shrink:0}
.rk-burger{display:none;width:42px;height:42px;border-radius:var(--rk-r-sm);border:1.5px solid var(--rk-line-2);
  align-items:center;justify-content:center;font-size:18px;margin-inline-start:auto}

/* Top utility strip (above the nav) */
.rk-strip{background:var(--rk-g-900);color:rgba(255,255,255,.66);font-size:12.5px}
.rk-strip__in{display:flex;align-items:center;justify-content:space-between;gap:var(--rk-s4);min-height:36px;flex-wrap:wrap}
.rk-strip a{padding:4px 0;transition:color var(--rk-dur)}
.rk-strip a:hover{color:var(--rk-gold)}
.rk-strip__sep{color:rgba(255,255,255,.2)}
.rk-lang{display:flex;gap:4px}
.rk-langbtn{border:1px solid rgba(255,255,255,.22);color:rgba(255,255,255,.7);border-radius:var(--rk-r-pill);
  padding:2px 12px;font-size:11.5px;font-weight:800;transition:all var(--rk-dur)}
.rk-langbtn:hover{color:#fff;border-color:#fff}
.rk-langbtn.is-on{background:var(--rk-gold);border-color:var(--rk-gold);color:#20160A}
/* LTR mode: the whole page mirrors via dir, these keep type sane */
body.is-en{letter-spacing:0}
@media (max-width:768px){ .rk-strip{display:none} }

/* Mobile drawer */
.rk-drawer{position:fixed;inset:var(--rk-nav-h) 0 0;background:var(--rk-surface);z-index:880;padding:var(--rk-s5);
  display:none;flex-direction:column;gap:var(--rk-s2);overflow-y:auto}
.rk-drawer.is-open{display:flex}
.rk-drawer a{padding:14px;border-radius:var(--rk-r);font-weight:700;border-bottom:1px solid var(--rk-line)}

/* Mobile bottom tab bar */
.rk-tabbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:890;background:rgba(255,255,255,.97);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--rk-line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
.rk-tabbar__in{display:grid;grid-template-columns:repeat(5,1fr)}
.rk-tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;font-size:10.5px;
  font-weight:700;color:var(--rk-muted);border-radius:var(--rk-r-sm)}
.rk-tab span:first-child{font-size:19px;line-height:1.2}
.rk-tab[aria-current="page"]{color:var(--rk-g-700)}

/* ─── 14. FLOATING WHATSAPP ─────────────────────────────────── */
.rk-fab{position:fixed;bottom:26px;left:22px;z-index:850;display:flex;align-items:center;gap:9px;
  background:var(--rk-wa-ink);color:#fff;padding:13px 20px;border-radius:var(--rk-r-pill);
  box-shadow:0 10px 30px rgba(18,140,74,.34);font-weight:800;font-size:14px;
  transition:transform var(--rk-dur) var(--rk-ease),box-shadow var(--rk-dur)}
.rk-fab:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(18,140,74,.44)}
.rk-fab__ico{font-size:19px}

/* ─── 15. ANIMATION UTILITIES ───────────────────────────────── */
.rk-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--rk-ease),transform .6s var(--rk-ease)}
.rk-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rk-reveal{opacity:1;transform:none}}

/* ─── 16. RESPONSIVE ────────────────────────────────────────── */
@media (max-width:1024px){
  :root{--rk-s9:64px;--rk-s8:48px}
  .rk-nav__links{display:none}
  .rk-burger{display:flex}
  .rk-nav__cta{display:none}
}
@media (max-width:768px){
  body{padding-bottom:64px}          /* room for tab bar */
  .rk-tabbar{display:block}
  .rk-fab{bottom:78px;left:14px;padding:12px 16px}
  .rk-wrap{padding-inline:var(--rk-s4)}
  .rk-sec{padding-block:var(--rk-s7)}
  .rk-modal{padding:0;align-items:flex-end}
  .rk-modal__box{max-width:100%;max-height:92vh;border-radius:var(--rk-r-xl) var(--rk-r-xl) 0 0}
  .rk-modal__foot{flex-direction:column-reverse}
  .rk-modal__foot .rk-btn{width:100%}
  .rk-toasts{left:12px;right:12px;bottom:78px}
  .rk-toast{max-width:none}
}
/* Touch targets ≥44px on coarse pointers */
@media (pointer:coarse){
  .rk-btn,.rk-chip,.rk-nav__link{min-height:44px}
  .rk-btn--sm{min-height:40px}
}

/* ─── 17. PRINT ─────────────────────────────────────────────── */
@media print{
  .rk-nav,.rk-tabbar,.rk-fab,.rk-toasts,.rk-modal{display:none!important}
  body{background:#fff;padding:0}
}
