/* KRG Property design tokens — copied verbatim from design.md Part D.1. Do not edit here without editing design.md. */
:root{
  /* colour */
  --navy-950:#070B2A; --navy-900:#0B1240; --navy-800:#16205A; --navy-700:#2A3577; --navy-500:#5B66A8;
  --mist:#B9BFDD; --white:#FFFFFF;
  --stone-50:#FBF8F2; --stone-100:#F4EEE3; --stone-200:#E8DFCF; --stone-300:#D6C8B0; --line-strong:#7D8291;
  --ink-900:#141826; --ink-700:#3A4052; --ink-500:#5A6072;
  --brass-300:#E2C98E; --brass-400:#D4AF63; --brass-500:#B8913F; --brass-700:#7A5B1C;
  --teal-300:#7FD6E0; --teal-700:#0A6A75; --teal-50:#DDF2F4;
  --tapu-fg:#1D6440; --tapu-bg:#E2F0E7;
  --contract-fg:#7F5200; --contract-bg:#FBEDD0;
  --offplan-fg:#353B95; --offplan-bg:#E6E7F7;
  --res-fg:#0A6A75; --res-bg:#DDF2F4;
  --red-fg:#962A2A; --red-bg:#F8E2E0;
  /* type */
  --font-display:"Newsreader","Iowan Old Style",Georgia,serif;
  --font-ui:"Manrope","Segoe UI",system-ui,-apple-system,Arial,sans-serif;
  --font-ar:"IBM Plex Sans Arabic","Noto Naskh Arabic",Tahoma,sans-serif;
  --fs-display:clamp(2.75rem,1.6rem + 4.2vw,4.75rem);
  --fs-h1:clamp(2.25rem,1.5rem + 2.6vw,3.5rem);
  --fs-h2:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);
  --fs-h3:clamp(1.25rem,1.12rem + .5vw,1.5rem);
  --fs-h4:1.125rem; --fs-lead:clamp(1.125rem,1.05rem + .3vw,1.25rem);
  --fs-body:1.0625rem; --fs-small:.9375rem; --fs-caption:.8125rem; --fs-eyebrow:.75rem;
  --fs-stat:clamp(2rem,1.5rem + 1.8vw,3rem); --fs-price:1.25rem;
  /* space */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px; --s-6:32px; --s-7:48px; --s-8:64px; --s-9:96px; --s-10:128px;
  --section-y:clamp(64px,8vw,112px); --container:1240px; --gutter:24px; --header-h:72px;
  /* shape & depth */
  --r-xs:4px; --r-md:10px; --r-lg:16px; --r-pill:999px;
  --line:1px solid var(--stone-300); --line-navy:1px solid var(--navy-700);
  --shadow-1:0 1px 2px rgba(11,18,64,.06),0 1px 1px rgba(11,18,64,.04);
  --shadow-2:0 12px 28px -10px rgba(11,18,64,.22);
  --shadow-3:0 28px 64px -16px rgba(7,11,42,.45);
  --scrim:linear-gradient(180deg,rgba(7,11,42,.45) 0%,rgba(7,11,42,.80) 60%,rgba(7,11,42,.92) 100%);
  /* motion */
  --t-fast:150ms; --t-base:220ms; --t-slow:320ms; --ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
@media (max-width:767px){ :root{ --gutter:16px; --header-h:64px; } }
.num{ font-variant-numeric:tabular-nums lining-nums; font-feature-settings:"tnum" 1,"lnum" 1; }
.unit{ font-size:.78em; margin-inline-start:.15em; color:var(--ink-500); }
.on-navy .unit{ color:var(--teal-300); }
:focus-visible{ outline:2px solid var(--teal-700); outline-offset:3px; }
.on-navy :focus-visible{ outline-color:var(--brass-400); }
@media (prefers-reduced-motion:reduce){ *,*::before,*::after{ animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; } }
