:root{
  --bg:#f4f6f4; --surface:#ffffff; --sand:#ebe5d6; --sand-2:#f3efe4;
  --ink:#0f1f1c; --ink-soft:#51625e; --line:#d5ddd9;
  --emerald:#0c4a40; --emerald-2:#135a4e; --emerald-ink:#eef5f2; --emerald-soft:#a9c9bf; --emerald-line:rgba(238,245,242,.16);
  --tile:#17a096; --gold:#c79a3b; --review:#b06b16;
  --f-lat:"Jost","Tajawal",system-ui,sans-serif;
  --f-ar:"Reem Kufi","Tajawal",sans-serif;
  --f-body:"Jost","Tajawal",system-ui,sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --lattice:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath fill='%230c4a40' fill-rule='evenodd' d='M0 0H40V40H0Z M20 3.5 L24.83 8.33 L31.67 8.33 L31.67 15.17 L36.5 20 L31.67 24.83 L31.67 31.67 L24.83 31.67 L20 36.5 L15.17 31.67 L8.33 31.67 L8.33 24.83 L3.5 20 L8.33 15.17 L8.33 8.33 L15.17 8.33Z M0 0H3L0 3Z M40 0V3L37 0Z M0 40V37L3 40Z M40 40H37L40 37Z'/%3E%3C/svg%3E");
  --lattice-line:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath fill='none' stroke='%23c79a3b' stroke-opacity='.55' stroke-width='1' d='M20 3.5 L24.83 8.33 L31.67 8.33 L31.67 15.17 L36.5 20 L31.67 24.83 L31.67 31.67 L24.83 31.67 L20 36.5 L15.17 31.67 L8.33 31.67 L8.33 24.83 L3.5 20 L8.33 15.17 L8.33 8.33 L15.17 8.33Z'/%3E%3C/svg%3E");
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg)}
#site{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
#site.lang-ar{--f-body:"Tajawal","Jost",system-ui,sans-serif;font-size:17px}
.lang-en .ar,.lang-ar .en{display:none!important}
a{color:inherit}
p{margin:0}
h1,h2,h3{margin:0;font-weight:500;text-wrap:balance}
:focus-visible{outline:2px solid var(--tile);outline-offset:3px;border-radius:4px}
.wrap{max-width:1240px;margin-inline:auto;padding-inline:clamp(16px,4vw,44px)}
.mono{font-family:var(--f-mono)}
.num{font-variant-numeric:tabular-nums}
.akufi{font-family:var(--f-ar)}
.eyebrow{display:flex;align-items:center;gap:10px;font:500 .78rem var(--f-lat);letter-spacing:.16em;text-transform:uppercase;color:var(--tile);margin-bottom:18px}
.eyebrow::before{content:"";width:14px;height:14px;background:currentColor;clip-path:polygon(50% 0,64.6% 14.6%,85.4% 14.6%,85.4% 35.4%,100% 50%,85.4% 64.6%,85.4% 85.4%,64.6% 85.4%,50% 100%,35.4% 85.4%,14.6% 85.4%,14.6% 64.6%,0 50%,14.6% 35.4%,14.6% 14.6%,35.4% 14.6%)}
.lang-ar .eyebrow{letter-spacing:0;text-transform:none;font:700 .95rem var(--f-body)}
.h2{font-family:var(--f-lat);font-size:clamp(2rem,4.3vw,3.4rem);line-height:1.06;letter-spacing:-.02em}
.lang-ar .h2{font-family:var(--f-ar);letter-spacing:0;line-height:1.35;font-weight:600}
.h2 .g{color:var(--tile)}
.lead{font-size:clamp(1.04rem,1.4vw,1.16rem);color:var(--ink-soft);max-width:58ch}
section.pad{padding-block:clamp(72px,10vw,128px)}
.band{background:var(--emerald);color:var(--emerald-ink)}
.band .lead{color:var(--emerald-soft)}
.band .eyebrow{color:var(--gold)}
.band .h2 .g{color:var(--gold)}
.sec-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px 56px;align-items:end;margin-bottom:clamp(36px,5vw,60px)}
@media (max-width:860px){.sec-head{grid-template-columns:1fr}}
/* same two-column layout as English; the Arabic display face is wider, so it is set a little smaller to keep the heading to 2 lines */
.lang-ar .sec-head .h2{font-size:clamp(1.7rem,3.1vw,2.55rem);line-height:1.4}
.lang-ar .sec-head{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.strip{height:22px;background:var(--lattice-line) 0 0/22px 22px repeat-x;opacity:.9}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:999px;font:600 1rem var(--f-body);text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform .2s,background .2s,border-color .2s,color .2s;white-space:nowrap}
.btn-em{background:var(--emerald);color:var(--emerald-ink)}
.btn-em:hover{background:var(--emerald-2);transform:translateY(-2px)}
.btn-line{border-color:var(--emerald);color:var(--emerald);background:transparent}
.btn-line:hover{background:var(--emerald);color:var(--emerald-ink)}
.btn-gold{background:var(--gold);color:var(--ink)}
.btn-gold:hover{transform:translateY(-2px);background:#d4aa4f}
.btn svg{width:16px;height:16px;flex-shrink:0}
.btn-sm{padding:9px 16px;font-size:.9rem}

/* review note */

/* nav */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:22px;height:70px}
.logo svg{height:34px;width:auto;display:block}
.links{display:flex;gap:24px;margin-inline-start:auto;font-size:.94rem;color:var(--ink-soft)}
.links a{text-decoration:none}
.links a:hover{color:var(--emerald)}
.lang{background:none;border:1.5px solid var(--line);border-radius:999px;padding:6px 14px;font:600 .9rem var(--f-body);color:var(--ink);cursor:pointer}
.lang .en{font-family:"Tajawal",sans-serif}
.lang:hover{border-color:var(--emerald)}
@media (max-width:1180px){.links{display:none}.nav .lang{margin-inline-start:auto}}
@media (max-width:500px){.nav .btn-sm{display:none}}

/* HERO */
.hero{padding-block:clamp(40px,5vw,72px) clamp(56px,7vw,96px);position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(32px,5vw,80px);align-items:center}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr}}
.hero h1{font-family:var(--f-lat);font-size:clamp(2.8rem,6vw,5.3rem);line-height:1;letter-spacing:-.035em;font-weight:500}
.hero h1 .g{color:var(--tile)}
.lang-ar .hero h1{font-family:var(--f-ar);letter-spacing:0;line-height:1.3;font-weight:600}
.hero .twin{margin-top:14px;font:700 clamp(1.2rem,2.1vw,1.6rem)/1.4 "Tajawal",sans-serif;color:var(--emerald);direction:rtl;text-align:start}
.lang-ar .hero .twin{direction:ltr;font-family:var(--f-lat);text-align:start}
.hero .lead{margin-top:22px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.facts{margin-top:34px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.facts>div{padding-block:16px 0;padding-inline-end:16px}
.facts b{display:block;font:500 1.6rem/1.35 var(--f-lat);color:var(--emerald);margin-bottom:6px}
.lang-ar .facts b{font-family:"Tajawal",var(--f-lat);font-weight:700;line-height:1.5}
.facts div>span{font-size:.84rem;line-height:1.55;color:var(--ink-soft);display:block}
.facts b span{font:inherit;color:inherit}
@media (max-width:480px){.facts{grid-template-columns:1fr 1fr}.facts div:last-child{grid-column:1/-1}}

/* the arched window with a mashrabiya screen and a reading lens */
.window{position:relative;max-width:560px;width:100%;justify-self:center}
.arch{--m:1.4;position:relative;aspect-ratio:.8;border-radius:999px 999px 18px 18px / 46% 46% 18px 18px;overflow:hidden;background:var(--lattice-line) 0 0/36px 36px,var(--sand-2);box-shadow:0 0 0 10px var(--surface),0 0 0 11px var(--line),0 40px 80px -40px rgba(12,74,64,.55);touch-action:none;cursor:crosshair;max-width:100%}
.layer{position:absolute;inset:0;display:grid;place-items:center;padding:16% 11% 7%}
.doc{container-type:inline-size;width:100%;aspect-ratio:.76;background:#fdfcf8;color:#1d2422;border-radius:3px;position:relative;font-family:"Jost","Tajawal",sans-serif;box-shadow:0 18px 30px -18px rgba(0,0,0,.35)}
.l-raw .doc{filter:blur(2.4px) saturate(.6);opacity:.92}
.doc-in{position:absolute;inset:0;padding:7cqi;display:flex;flex-direction:column;gap:3.4cqi;font-size:2.75cqi;line-height:1.35}
.d-top{display:flex;justify-content:space-between;align-items:flex-start;gap:3cqi}
.d-sup{display:flex;gap:2.4cqi;align-items:center}
.d-mark{width:9cqi;height:9cqi;border-radius:2cqi;background:#2d5c52;color:#fff;display:grid;place-items:center;font:700 4.4cqi "Tajawal",sans-serif}
.d-sup b{display:block;font-size:3.1cqi;font-weight:600}
.d-sup small{display:block;color:#66706d;font-size:2.4cqi}
.d-title{text-align:end}
.d-title b{display:block;font-size:4.1cqi;letter-spacing:.06em;font-weight:600}
.d-title .arx{font-family:"Reem Kufi",sans-serif;font-size:4cqi;letter-spacing:0}
.d-meta{display:grid;grid-template-columns:1fr 1fr;gap:1.6cqi 4cqi;padding:3cqi;background:#f1efe8;border-radius:1.5cqi}
.d-meta div{display:flex;flex-direction:column;align-items:flex-start}
.d-meta small{color:#6c7572;font-size:2.15cqi}
.d-meta span{font-weight:600}
.d-table{width:100%;border-collapse:collapse;font-size:2.5cqi}
.d-table th{text-align:start;font-weight:600;color:#5d6764;font-size:2.2cqi;border-bottom:.3cqi solid #1d2422;padding-block:1cqi}
.d-table td{padding-block:1.3cqi;border-bottom:.2cqi solid #e5e3dc}
.d-table td:last-child,.d-table th:last-child{text-align:end}
.d-tot{align-self:flex-end;width:58%;display:grid;grid-template-columns:1fr auto;gap:1cqi 3cqi;font-size:2.55cqi;justify-items:end}
.d-tot>span:nth-child(odd){justify-self:start}
.d-tot .big{font-weight:700;font-size:3.3cqi;border-top:.3cqi solid #1d2422;padding-top:1.2cqi;justify-self:stretch}
.d-tot .big.w{text-align:end}
.d-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end}
.d-qr{width:13cqi;height:13cqi;background:conic-gradient(from 90deg,#1d2422 25%,transparent 0 50%,#1d2422 0 75%,transparent 0) 0 0/3.25cqi 3.25cqi;border:1.2cqi solid #fdfcf8;outline:.4cqi solid #1d2422}
.d-stamp{width:17cqi;height:17cqi;border-radius:50%;border:.6cqi solid rgba(40,80,160,.5);color:rgba(40,80,160,.65);display:grid;place-items:center;text-align:center;font:700 2.3cqi/1.2 "Tajawal",sans-serif;transform:rotate(-14deg)}
.ar-t{font-family:"Tajawal",sans-serif}
.w{position:relative;border-radius:.6cqi}
/* x-ray layer: what the platform sees */
.l-xray{background:var(--lattice-line) 0 0/36px 36px,var(--sand-2);transform:scale(var(--m));transform-origin:var(--x,50%) var(--y,40%)}
.l-xray .doc{background:#fff}
.l-xray .doc .w{box-shadow:0 0 0 .22cqi rgba(23,160,150,.45)}
.l-xray .doc .w[data-out]{box-shadow:0 0 0 .5cqi var(--tile);background:rgba(23,160,150,.14)}
.l-xray .doc .w[data-out]::after{opacity:0;transition:opacity .25s;content:attr(data-out);position:absolute;top:calc(100% + 1cqi);inset-inline-start:-.5cqi;background:var(--emerald);color:#fff;font:500 2.1cqi/1 "JetBrains Mono",monospace;padding:1cqi 1.6cqi;border-radius:.8cqi;white-space:nowrap;z-index:2;letter-spacing:0;direction:ltr}
.l-xray .doc .w[data-out].cur::after{opacity:1}
.l-xray .doc .w[data-out].tail::after{inset-inline-start:auto;inset-inline-end:-.5cqi}
.l-xray{mask-image:radial-gradient(circle calc(var(--r,110px) / var(--m)) at var(--x,50%) var(--y,40%),#000 0 97%,transparent 100%);-webkit-mask-image:radial-gradient(circle calc(var(--r,110px) / var(--m)) at var(--x,50%) var(--y,40%),#000 0 97%,transparent 100%)}
.ring{position:absolute;left:var(--x,50%);top:var(--y,40%);width:calc(var(--r,110px)*2);height:calc(var(--r,110px)*2);translate:-50% -50%;border-radius:50%;box-shadow:0 0 0 4px var(--gold),0 0 0 6px rgba(15,31,28,.18),inset 0 0 0 1px rgba(255,255,255,.7),0 18px 40px -12px rgba(15,31,28,.45);background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.35),transparent 45%);pointer-events:none}
.ring::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:64px;border-radius:7px;background:linear-gradient(90deg,#a97f2a,var(--gold) 45%,#e0bd6c);box-shadow:0 6px 14px -4px rgba(15,31,28,.5);transform-origin:50% 0;transform:translateX(-50%) rotate(-45deg) translateY(calc(var(--r,110px) + 3px))}
@media (max-width:600px){.arch{--m:1.3}}
.reading{position:absolute;inset-inline:0;bottom:14px;display:flex;justify-content:center;pointer-events:none}
.reading span{background:var(--surface);color:var(--ink);border-radius:999px;padding:6px 14px;font:500 .8rem var(--f-mono);box-shadow:0 8px 20px -10px rgba(0,0,0,.4);display:flex;gap:8px;align-items:center}
.reading span i{width:8px;height:8px;border-radius:50%;background:var(--tile);animation:blink 1.2s infinite}
@keyframes blink{50%{opacity:.25}}
.hint{margin-top:22px;text-align:center;font-size:.86rem;color:var(--ink-soft)}

/* film */
.film-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(28px,5vw,72px);align-items:center}
@media (max-width:900px){.film-grid{grid-template-columns:1fr}}
.film-grid .lead{margin-top:18px}
.chap{margin:26px 0 0;padding:0;list-style:none;border-top:1px solid var(--emerald-line)}
.chap button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;gap:16px;padding:11px 2px;border-bottom:1px solid var(--emerald-line);font-size:.95rem;color:var(--emerald-soft)}
.chap button:hover,.chap button:focus-visible{color:var(--emerald-ink)}
.chap button:focus-visible{outline:2px solid var(--gold)}
.chap .t{font:500 .8rem var(--f-mono);color:var(--gold);min-width:3em;padding-top:3px}
.screen{position:relative;border-radius:22px;padding:10px;background:var(--emerald-2);box-shadow:inset 0 0 0 1px var(--emerald-line);max-width:100%}
.screen video{display:block;width:100%;aspect-ratio:16/9;border-radius:14px;background:#e9eef5}
.screen .play{position:absolute;inset:10px;border-radius:14px;border:0;cursor:pointer;display:grid;place-items:center;background:linear-gradient(to top,rgba(12,74,64,.55),rgba(12,74,64,.05) 55%)}
.screen .play b{width:84px;height:84px;display:grid;place-items:center;background:var(--gold);color:var(--ink);clip-path:polygon(50% 0,64.6% 14.6%,85.4% 14.6%,85.4% 35.4%,100% 50%,85.4% 64.6%,85.4% 85.4%,64.6% 85.4%,50% 100%,35.4% 85.4%,14.6% 85.4%,14.6% 64.6%,0 50%,14.6% 35.4%,14.6% 14.6%,35.4% 14.6%);transition:transform .3s}
.screen .play:hover b{transform:rotate(22.5deg) scale(1.06)}
.screen .play b svg{width:26px;height:26px;margin-inline-start:4px}
.screen.playing .play{display:none}

/* colonnade */
.cols{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
@media (max-width:900px){.cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
.col{all:unset;box-sizing:border-box;cursor:pointer;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:50% 50% 14px 14px / 30% 30% 14px 14px;padding:58px 16px 18px;min-height:220px;display:flex;flex-direction:column;gap:10px;transition:background .35s,color .35s,transform .3s,border-color .3s;overflow:hidden}
.col:hover{transform:translateY(-4px);border-color:var(--emerald)}
.col:focus-visible{outline:2px solid var(--tile);outline-offset:3px}
.col .no{display:flex;justify-content:space-between;align-items:baseline;font:500 .8rem var(--f-mono);color:var(--ink-soft)}
.col .no .akufi{font-size:1.4rem;color:var(--tile);font-family:var(--f-ar)}
.col svg{width:30px;height:30px;color:var(--emerald);margin-top:auto}
.col h3{font:500 1.06rem/1.25 var(--f-lat)}
.lang-ar .col h3{font-family:"Tajawal",sans-serif;font-weight:700}
.col .bar{position:absolute;inset-inline-start:0;bottom:0;height:3px;width:0;background:var(--gold)}
.col.on{background:var(--emerald);color:var(--emerald-ink);border-color:var(--emerald)}
.col.on .no{color:var(--emerald-soft)}
.col.on .no .akufi{color:var(--gold)}
.col.on svg{color:var(--gold)}
.col.on .bar{animation:prog var(--dur,6s) linear forwards}
.paused .col.on .bar{animation:none;width:100%}
@keyframes prog{to{width:100%}}
.detail{margin-top:18px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,32px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 48px;align-items:center;min-height:190px}
@media (max-width:760px){.detail{grid-template-columns:1fr}}
.detail h3{font:500 1.5rem/1.2 var(--f-lat);margin-bottom:10px}
.lang-ar .detail h3{font-family:"Tajawal",sans-serif;font-weight:700}
.detail p{color:var(--ink-soft)}
.pane{display:none}
.pane.on{display:contents}
.specs{display:flex;flex-wrap:wrap;gap:8px}
.specs span{font:500 .78rem var(--f-mono);padding:7px 12px;border-radius:999px;background:var(--sand-2);border:1px solid var(--sand)}
.specs span.k{background:var(--emerald);color:var(--emerald-ink);border-color:var(--emerald)}
.conv-row{display:flex;flex-direction:column;gap:8px;width:100%}
.conv-row div{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;padding:10px 14px;border-radius:12px;background:var(--sand-2)}
.conv-row .a{font:500 1.05rem "Tajawal",sans-serif;direction:rtl;text-align:end}
.conv-row .b{font:500 .9rem var(--f-mono);color:var(--emerald);direction:ltr}
.conv-row .arrow{color:var(--gold)}
.lang-ar .conv-row .arrow{transform:scaleX(-1)}

/* use cases */
.ucs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.uc{background:var(--emerald-2);border:1px solid var(--emerald-line);border-radius:18px;padding:clamp(20px,2.4vw,28px);display:flex;flex-direction:column;gap:12px}
.uc .ic{width:44px;height:44px;display:grid;place-items:center;background:var(--gold);clip-path:polygon(50% 0,64.6% 14.6%,85.4% 14.6%,85.4% 35.4%,100% 50%,85.4% 64.6%,85.4% 85.4%,64.6% 85.4%,50% 100%,35.4% 85.4%,14.6% 85.4%,14.6% 64.6%,0 50%,14.6% 35.4%,14.6% 14.6%,35.4% 14.6%)}
.uc .ic svg{width:20px;height:20px;color:var(--ink)}
.uc h3{font:500 1.18rem/1.25 var(--f-lat)}
.lang-ar .uc h3{font-family:"Tajawal",sans-serif;font-weight:700}
.uc p{color:var(--emerald-soft);font-size:.94rem}
.uc.feat{grid-column:1/-1;display:grid;grid-template-columns:44px minmax(0,1fr) minmax(0,1.1fr);grid-template-rows:auto auto;column-gap:20px;row-gap:8px;align-items:start;background:var(--emerald-2);position:relative;overflow:hidden}
.uc.feat::after{content:"";position:absolute;inset-block:0;inset-inline-end:0;width:38%;background:var(--lattice-line) 0 0/36px 36px;opacity:.35;pointer-events:none}
.uc.feat .ic{grid-row:1/3}
.uc.feat h3{font-size:clamp(1.3rem,2.2vw,1.7rem);grid-column:2}
.uc.feat p{grid-column:2}
.uc.feat .flow{grid-column:3;grid-row:1/3;align-self:center;position:relative;z-index:1}
.flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.flow>span{border:1px solid var(--emerald-line);background:var(--emerald);border-radius:12px;padding:10px 12px;font-size:.84rem;flex:1 1 0;min-width:110px;text-align:center}
.flow>span.mid{background:var(--gold);color:var(--ink);border-color:var(--gold);font-weight:600}
.flow>span.mid small{display:block;font-weight:500;font-size:.72rem;opacity:.8}
.flow>i{width:18px;height:2px;background:var(--gold);flex:0 0 auto}
.uc.day{grid-column:1/-1;gap:22px}
.day-head{display:grid;grid-template-columns:44px minmax(0,1fr);gap:20px;align-items:start}
.day-head h3{font-size:clamp(1.3rem,2.2vw,1.7rem);margin-bottom:8px}
.day-head p{max-width:70ch}
.day-line{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;position:relative}
.day-line::before{content:"";position:absolute;top:7px;inset-inline:7px;height:2px;background:var(--gold);opacity:.55}
.day-line li{position:relative;padding-top:26px;display:flex;flex-direction:column;gap:6px}
.day-line li::before{content:"";position:absolute;top:0;inset-inline-start:0;width:16px;height:16px;border-radius:50%;background:var(--emerald);border:2px solid var(--gold)}
.day-line li.hi::before{background:var(--gold)}
.day-line b{font:600 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.lang-ar .day-line b{font-family:"Tajawal",sans-serif;letter-spacing:0;font-size:.85rem}
.day-line h4{margin:0;font:500 1.02rem/1.25 var(--f-lat)}
.lang-ar .day-line h4{font-family:"Tajawal",sans-serif;font-weight:700}
.day-line p{font-size:.88rem}
.day-line li.hi{background:var(--emerald);border-radius:12px;padding:26px 12px 12px;margin-top:-0px}
.day-line li.hi::before{inset-inline-start:12px}
.day-out{border-top:1px solid var(--emerald-line);padding-top:16px;font-size:1rem;color:var(--emerald-ink)!important}
.day-out b{color:var(--gold);font-weight:600}
@media (max-width:980px){.day-line{grid-template-columns:1fr 1fr}.day-line::before{display:none}}
@media (max-width:560px){.day-line{grid-template-columns:1fr}.day-head{grid-template-columns:1fr}}
@media (max-width:980px){.ucs{grid-template-columns:1fr 1fr}.uc.feat{grid-template-columns:44px minmax(0,1fr)}.uc.feat .flow{grid-column:1/-1;grid-row:auto;margin-top:8px}}
@media (max-width:560px){.ucs{grid-template-columns:1fr}.flow{flex-direction:column;align-items:stretch}.flow>i{width:2px;height:14px;align-self:center}}

/* histogram */
.hist-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,72px);align-items:stretch}
/* both columns share one top and one bottom edge: text + slider on one side, the chart card on the other */
.hist-grid>div:first-child{display:flex;flex-direction:column}
.hist-grid>div:first-child .slider{margin-top:auto}
.hist-grid>div:first-child .lead{margin-bottom:30px}
@media (max-width:900px){.hist-grid{grid-template-columns:1fr}}
.hist-grid .lead{margin-top:18px}
.slider{margin-top:30px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px}
.slider label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:.9rem;color:var(--ink-soft)}
.slider output{font:500 2rem/1 var(--f-lat);color:var(--emerald)}
.slider input{--pct:71.4%;-webkit-appearance:none;appearance:none;width:100%;margin-top:16px;height:10px;border-radius:999px;cursor:pointer;background:linear-gradient(to right,var(--review) 0 var(--pct),var(--emerald) var(--pct) 100%)}
.slider input:focus-visible{outline:2px solid var(--tile);outline-offset:6px}
.slider input::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid var(--gold);box-shadow:0 2px 8px rgba(15,31,28,.3)}
.slider input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--gold);box-shadow:0 2px 8px rgba(15,31,28,.3)}
.slider input::-moz-range-track{background:transparent}
/* review on the left, automated on the right — the same order as the chart, in both languages */
.hist-sum,.rules2{direction:ltr}
.lang-ar .hist-sum>div,.lang-ar .rules2>p{direction:rtl}
.rules2{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rules2 p{margin:0;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;font-size:.86rem}
.rules2 b{font:600 1.05rem var(--f-lat)}
.lang-ar .rules2 b{font-family:"Tajawal",sans-serif}
.rules2 .go{background:rgba(12,74,64,.08);color:var(--emerald)}
.rules2 .rv{background:rgba(176,107,22,.1);color:var(--review)}
.slider .ends{display:flex;justify-content:space-between;gap:10px;font-size:.78rem;color:var(--ink-soft)}
.hist{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:clamp(18px,3vw,28px);display:flex;flex-direction:column}
.hist .hist-chart{flex:1;display:flex;flex-direction:column}
.hist .hist-plot{flex:1;min-height:230px;height:auto}
.hist-chart{margin-top:22px}
.hist-plot{position:relative;height:230px;display:grid;grid-template-columns:repeat(25,minmax(0,1fr));gap:3px;align-items:end;border-bottom:1.5px solid var(--ink);padding-top:34px}
.hist-plot .b{position:relative;z-index:1;border-radius:3px 3px 0 0;background:var(--sand);transition:background .3s;min-height:3px}
.zone{position:absolute;top:0;bottom:0;transition:width .15s}
.zone span{position:absolute;top:6px;font:600 .74rem var(--f-body);white-space:nowrap}
.zone.zr{left:0;background:rgba(176,107,22,.08)}
.zone.zr span{right:10px;color:var(--review)}
.zone.zg{right:0;background:rgba(12,74,64,.06)}
.zone.zg span{left:10px;color:var(--emerald)}
.axis-title{margin-top:10px;font-size:.8rem;color:var(--ink-soft)}
.hist-plot .b.go{background:var(--emerald)}
.hist-plot .b.rv{background:var(--review);opacity:.75}
.hist-plot .line{position:absolute;z-index:2;top:0;bottom:-6px;width:2px;background:var(--gold);transition:left .15s}
.hist-plot .line span{position:absolute;bottom:-26px;left:50%;translate:-50% 0;font:500 .74rem var(--f-mono);color:var(--ink);background:var(--surface);padding:1px 6px;border-radius:4px;border:1px solid var(--gold);white-space:nowrap}
.hist-axis{display:flex;justify-content:space-between;font:500 .72rem var(--f-mono);color:var(--ink-soft);margin-top:30px}
.hist-sum{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hist-sum div{border-radius:14px;padding:14px 16px;background:var(--sand-2)}
.hist-sum b{display:block;font:500 2.6rem/1 var(--f-lat);margin-bottom:4px}
.hist-sum .g b{color:var(--emerald)}.hist-sum .r b{color:var(--review)}
.hist-sum span{font-size:.86rem;color:var(--ink-soft)}

/* arabic band */
.ar-band{position:relative;overflow:hidden}
.ar-band::before{content:"";position:absolute;inset:0;background:var(--lattice-line) 0 0/40px 40px;opacity:.35;mask-image:linear-gradient(90deg,transparent,#000 70%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 70%)}
.lang-ar .ar-band::before{mask-image:linear-gradient(-90deg,transparent,#000 70%);-webkit-mask-image:linear-gradient(-90deg,transparent,#000 70%)}
.ar-top{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;margin-bottom:clamp(36px,5vw,56px)}
@media (max-width:900px){.ar-top{grid-template-columns:1fr}}
.ar-top .lead{margin-top:18px}
.bigword{font:600 clamp(5rem,14vw,11rem)/1.15 var(--f-ar);color:var(--gold);direction:rtl;text-align:center}
.bigword small{display:block;font:500 .85rem var(--f-mono);color:var(--emerald-soft);direction:ltr;margin-top:6px}
.tiles{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:980px){.tiles{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.tiles{grid-template-columns:1fr}}
.tl{background:var(--emerald-2);border:1px solid var(--emerald-line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:10px}
.tl h3{font:500 1.05rem var(--f-lat)}
.lang-ar .tl h3{font-family:"Tajawal",sans-serif;font-weight:700}
.tl p{font-size:.9rem;color:var(--emerald-soft)}
.tl .pair{margin-top:auto;padding:12px;border-radius:12px;background:var(--emerald);display:flex;flex-direction:column;gap:3px}
.tl .pair .a{font:500 1.3rem var(--f-ar);direction:rtl;text-align:end}
.tl .pair .b{font:500 .92rem var(--f-mono);color:var(--gold);direction:ltr;text-align:start}
.tl .pair .b::before{content:"→ "}
.lang-ar .tl .pair .b{text-align:end}

/* zellige capabilities */
.zel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-radius:24px;overflow:hidden;border:1px solid var(--line)}
@media (max-width:900px){.zel{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.zel{grid-template-columns:1fr}}
.z{padding:clamp(22px,3vw,34px);background:var(--surface);display:flex;flex-direction:column;gap:12px;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;min-height:240px}
.z:nth-child(2),.z:nth-child(4),.z:nth-child(6){background:var(--sand-2)}
.z.em{background:var(--emerald);color:var(--emerald-ink)}
.z.em p{color:var(--emerald-soft)}
.z .ic{width:44px;height:44px;display:grid;place-items:center;background:var(--sand);clip-path:polygon(50% 0,64.6% 14.6%,85.4% 14.6%,85.4% 35.4%,100% 50%,85.4% 64.6%,85.4% 85.4%,64.6% 85.4%,50% 100%,35.4% 85.4%,14.6% 85.4%,14.6% 64.6%,0 50%,14.6% 35.4%,14.6% 14.6%,35.4% 14.6%)}
.z.em .ic{background:var(--gold)}
.z .ic svg{width:20px;height:20px;color:var(--emerald)}
.z.em .ic svg{color:var(--ink)}
.z h3{font:500 1.28rem/1.2 var(--f-lat)}
.lang-ar .z h3{font-family:"Tajawal",sans-serif;font-weight:700}
.z p{color:var(--ink-soft);font-size:.94rem}
.z .tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}
.z .tags span{font:500 .72rem var(--f-mono);padding:4px 9px;border-radius:999px;border:1px solid var(--line);background:var(--surface)}
.z.em .tags span{background:transparent;border-color:var(--emerald-line);color:var(--emerald-ink)}

/* courtyard security */
.sec-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:stretch}
/* the diagram spans the full height of the text column: same top and bottom edge */
.sec-grid>.court{display:flex;flex-direction:column;margin-top:13px}
.sec-grid>.court>.wall{flex:1;display:flex;flex-direction:column}
.sec-grid>.court .yard{flex:1;align-content:stretch;grid-auto-rows:1fr}
.yard div{justify-content:center}
@media (max-width:900px){.sec-grid{grid-template-columns:1fr}}
.sec-grid .lead{margin-top:18px}
.pts{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:20px 28px}
@media (max-width:520px){.pts{grid-template-columns:1fr}}
.pts b{display:block;font-weight:600;margin-bottom:2px}
.pts p{font-size:.9rem;color:var(--ink-soft)}
.court{position:relative;padding:34px;border-radius:28px;border:2px dashed var(--ink-soft);background:var(--bg)}
.court>.lbl{position:absolute;top:-13px;inset-inline-start:24px;background:var(--bg);padding-inline:10px;font:500 .78rem var(--f-mono);color:var(--ink-soft)}
.court .x{position:absolute;top:-16px;inset-inline-end:24px;width:30px;height:30px;border-radius:50%;background:var(--review);color:#fff;display:grid;place-items:center;font-weight:700}
.wall{position:relative;border:10px solid var(--emerald);border-radius:20px;padding:26px;background:var(--surface)}
.wall>.lbl{position:absolute;top:-22px;inset-inline-start:16px;background:var(--emerald);color:var(--emerald-ink);padding:2px 12px;border-radius:999px;font:600 .8rem var(--f-body)}
.yard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.yard div{border-radius:12px;padding:12px;background:var(--sand-2);border:1px solid var(--sand);font-size:.86rem;display:flex;flex-direction:column;gap:2px}
.yard small{color:var(--ink-soft);font-size:.74rem}
.yard .core{grid-column:span 3;background:var(--emerald);color:var(--emerald-ink);border-color:var(--emerald);position:relative;overflow:hidden}
.yard .core small{color:var(--emerald-soft)}
.yard .core::after{content:"";position:absolute;inset-block:0;inset-inline-end:0;width:40%;background:var(--lattice-line) 0 0/26px 26px;opacity:.6}
@media (max-width:520px){.yard{grid-template-columns:1fr 1fr}.yard .core{grid-column:span 2}.court{padding:24px 14px}.wall{padding:22px 12px}}

/* fit */
.fit{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:980px){.fit{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.fit{grid-template-columns:1fr}}
.fit>div{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:3px solid var(--tile)}
.fit h3{font:500 1.15rem var(--f-lat)}
.lang-ar .fit h3{font-family:"Tajawal",sans-serif;font-weight:700}
.fit p{font-size:.92rem;color:var(--ink-soft)}
.fit code{font:500 .74rem var(--f-mono);color:var(--emerald)}
.deploy{scroll-margin-top:90px;margin-top:clamp(48px,6vw,80px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:stretch}
/* option cards span the full height of the text column: same top and bottom edge */
.deploy>.opts{align-items:stretch}
.deploy>div:first-child{display:flex;flex-direction:column}
.deploy>div:first-child .spec{margin-top:auto;padding-top:18px}
.deploy .opt{justify-content:flex-start;padding:clamp(20px,2.4vw,30px)}
.deploy .opt .oi{width:44px;height:44px;display:grid;place-items:center;background:var(--sand);clip-path:polygon(50% 0,64.6% 14.6%,85.4% 14.6%,85.4% 35.4%,100% 50%,85.4% 64.6%,85.4% 85.4%,64.6% 85.4%,50% 100%,35.4% 85.4%,14.6% 85.4%,14.6% 64.6%,0 50%,14.6% 35.4%,14.6% 14.6%,35.4% 14.6%)}
.deploy .opt .oi svg{width:20px;height:20px;color:var(--emerald)}
.deploy .opt .oi+.k{margin-top:14px}
.deploy .opt h3{font-size:1.15rem}
@media (max-width:900px){.deploy{grid-template-columns:1fr}}
.opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.opts.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:640px){.opts{grid-template-columns:1fr}}
.opt{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:8px}
.opt h3{font-weight:600;font-size:1rem}
.opt p{font-size:.88rem;color:var(--ink-soft)}
.opt .k{font:500 .72rem var(--f-mono);color:var(--tile)}
.spec{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px}
.spec span{font:500 .8rem var(--f-mono);padding:7px 13px;border-radius:999px;background:var(--emerald);color:var(--emerald-ink)}
.spec span.g{background:var(--gold);color:var(--ink)}

/* brochures */
.bro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
@media (max-width:900px){.bro{grid-template-columns:1fr}}
.bro .lead{margin-top:16px}
.covers{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:460px){.covers{grid-template-columns:1fr}}
.cv{text-decoration:none;display:flex;flex-direction:column;gap:12px}
.cv .art{aspect-ratio:.74;border-radius:999px 999px 14px 14px / 40% 40% 14px 14px;background:var(--emerald);color:var(--emerald-ink);padding:26% 14% 12%;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .3s;max-width:100%}
.cv .art::before{content:"";position:absolute;inset:0;background:var(--lattice-line) 0 0/30px 30px;opacity:.5}
.cv .art>*{position:relative}
.cv:hover .art{transform:translateY(-6px)}
.cv .art small{font:500 .64rem var(--f-mono);letter-spacing:.12em;color:var(--gold)}
.cv .art b{font:500 clamp(1rem,1.7vw,1.3rem)/1.2 var(--f-lat)}
.cv .art.art-ar b{font-family:var(--f-ar);direction:rtl;text-align:start;line-height:1.5}
.cv .meta{display:flex;justify-content:space-between;align-items:center;gap:10px}
.cv .meta small{display:block;font:500 .74rem var(--f-mono);color:var(--ink-soft)}
.cv .meta .dl{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--emerald);display:grid;place-items:center;color:var(--emerald);flex-shrink:0;transition:.2s}
.cv:hover .meta .dl{background:var(--emerald);color:var(--emerald-ink)}
.cv .meta .dl svg{width:16px;height:16px}

/* contact */
.ct{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:start}
@media (max-width:900px){.ct{grid-template-columns:1fr}}
.ct h2{font-family:var(--f-lat);font-size:clamp(2.3rem,4.8vw,3.8rem);line-height:1.04;letter-spacing:-.03em}
.lang-ar .ct h2{font-family:var(--f-ar);letter-spacing:0;line-height:1.35}
.ct .lead{margin-top:18px}
.three{margin:26px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px}
.three li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}
.three .k{width:36px;height:36px;display:grid;place-items:center;background:var(--gold);color:var(--ink);font:600 .9rem var(--f-mono);clip-path:polygon(50% 0,64.6% 14.6%,85.4% 14.6%,85.4% 35.4%,100% 50%,85.4% 64.6%,85.4% 85.4%,64.6% 85.4%,50% 100%,35.4% 85.4%,14.6% 85.4%,14.6% 64.6%,0 50%,14.6% 35.4%,14.6% 14.6%,35.4% 14.6%)}
.three b{display:block;color:var(--emerald-ink)}
.three span{color:var(--emerald-soft);font-size:.92rem}
form.cf{background:var(--surface);color:var(--ink);border-radius:24px;padding:clamp(20px,3vw,34px);display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:540px){form.cf{grid-template-columns:1fr}}
.f{display:flex;flex-direction:column;gap:6px;min-width:0}
.f.full{grid-column:1/-1}
.f>label,.f legend{font-size:.84rem;color:var(--ink-soft);padding:0}
.f>label i{font-style:normal;color:var(--review)}
.grp{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grp[hidden]{display:none}
@media (max-width:540px){.grp{grid-template-columns:1fr}}
.sent.err{color:var(--review)}
fieldset.f{border:0;margin:0;padding:0}
.f input,.f select,.f textarea{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font:400 1rem var(--f-body);color:var(--ink);background:var(--bg)}
.f textarea{min-height:100px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--emerald);box-shadow:0 0 0 4px rgba(23,160,150,.15)}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pills label{position:relative;cursor:pointer}
.pills input{position:absolute;inset:0;opacity:0;cursor:pointer}
.pills label>span{display:block;padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);font-size:.92rem;transition:.2s;background:var(--bg)}
.pills input:checked+span{background:var(--emerald);color:var(--emerald-ink);border-color:var(--emerald)}
.pills input:focus-visible+span{outline:2px solid var(--tile);outline-offset:2px}
form.cf .btn{grid-column:1/-1;justify-content:center}
.sent{grid-column:1/-1;min-height:1.2em;font-size:.88rem;color:var(--emerald)}

footer{padding-block:28px 36px;font-size:.88rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px 30px;justify-content:space-between;align-items:center}
footer nav{display:flex;gap:20px;flex-wrap:wrap;color:var(--emerald-soft)}
footer a{text-decoration:none}
footer a:hover{color:var(--emerald-ink)}
footer .c{color:var(--emerald-soft)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
.hp{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;top:0;inset-inline-start:0}
form.cf{position:relative}
form.cf .btn[disabled]{opacity:.6;cursor:progress}

