/* ============================================================
   TCR Qatar · site.css · v1 · 24 Aug 2026
   Tokens mirror 01_reference/tokens.css. Mobile-first; only
   min-width queries. Logical properties only (RTL-safe).
   ============================================================ */

/* ---------- 0. Fonts (self-hosted) ---------- */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 800;font-display:swap;src:url(../fonts/jetbrains-mono-latin-wght-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-condensed-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/barlow-condensed-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-sans-arabic-arabic-500-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/ibm-plex-sans-arabic-arabic-700-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}

/* ---------- 1. Tokens ---------- */
:root{
  --q-cream:#F5F0E8;--q-cream-warm:#EDE7D5;--q-cream-warmer:#F4EEDF;--q-white:#FFFFFF;
  --q-ink:#1F1F1F;--q-slate:#313841;--q-slate-deep:#1F242C;
  --q-maroon:#8A1B3E;--q-maroon-bright:#B0264F;--q-grey:#575757;--q-muted:#7A7670;
  --q-hairline:#D4D2CC;--q-steel:#4E6D89;--q-gold:#E8C833;--q-orange:#FF8C00;--q-wa-green:#25D366;
  --q-font-display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
  --q-font-sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --q-font-mono:'JetBrains Mono',Consolas,Menlo,monospace;
  --q-font-arabic:'IBM Plex Sans Arabic','Noto Kufi Arabic',Tahoma,sans-serif;
  --q-fs-display:clamp(3.2rem,11vw,9.5rem);--q-fs-display-sm:clamp(2.4rem,7vw,5.5rem);
  --q-fs-h2:clamp(2rem,5vw,4rem);--q-fs-h3:clamp(1.25rem,2vw,1.625rem);
  --q-fs-lead:clamp(1.125rem,1.6vw,1.375rem);--q-fs-body:1.0625rem;--q-fs-small:.9375rem;
  --q-fs-label:.6875rem;--q-fs-stat:clamp(2.75rem,6vw,5rem);
  --q-s1:.25rem;--q-s2:.5rem;--q-s3:.75rem;--q-s4:1rem;--q-s5:1.5rem;--q-s6:2rem;--q-s7:3rem;--q-s8:4rem;--q-s9:5rem;--q-s10:6rem;--q-s11:7rem;--q-s12:8rem;
  --q-gutter:clamp(1.25rem,4vw,4rem);--q-max:84rem;--q-measure:42rem;--q-chrome:4rem;
  --q-ease:cubic-bezier(.22,1,.36,1);--q-t-fast:200ms;--q-t-mid:600ms;--q-t-slow:1200ms;
  --q-shadow-lift:0 12px 32px rgb(49 56 65 / .10);--q-radius:4px;
  --q-display-tracking:-.01em;--q-display-lh:.9;--q-display-transform:uppercase;
}
@media(min-width:768px){:root{--q-chrome:4.5rem}}
html[lang="ar"]{--q-font-display:var(--q-font-arabic);--q-font-sans:var(--q-font-arabic);--q-display-tracking:0;--q-display-lh:1.12;--q-display-transform:none;--q-fs-display:clamp(2.6rem,8.5vw,7.2rem);--q-fs-display-sm:clamp(2rem,5.5vw,4.4rem);--q-fs-h2:clamp(1.75rem,4.2vw,3.4rem)}

/* ---------- 2. Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:auto}
body{margin:0;background:var(--q-cream);color:var(--q-ink);font:400 var(--q-fs-body)/1.6 var(--q-font-sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video,canvas{display:block;max-width:100%}
h1,h2,h3,h4,p,ul,ol,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
:focus-visible{outline:2px solid var(--q-maroon);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;inset-block-start:-100%;inset-inline-start:var(--q-s4);z-index:200;background:var(--q-slate);color:var(--q-cream);padding:var(--q-s3) var(--q-s4);font-family:var(--q-font-mono);font-size:var(--q-fs-small)}
.skip:focus{inset-block-start:var(--q-s4)}

/* stage grid */
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(to right,rgb(212 210 204 / .35) 1px,transparent 1px),linear-gradient(to bottom,rgb(212 210 204 / .35) 1px,transparent 1px);background-size:5.5rem 5.5rem}

/* ---------- 3. Type utilities ---------- */
.display{font-family:var(--q-font-display);font-weight:800;font-size:var(--q-fs-display);line-height:var(--q-display-lh);letter-spacing:var(--q-display-tracking);text-transform:var(--q-display-transform);text-wrap:balance}
.display-sm{font-family:var(--q-font-display);font-weight:700;font-size:var(--q-fs-display-sm);line-height:var(--q-display-lh);letter-spacing:var(--q-display-tracking);text-transform:var(--q-display-transform);text-wrap:balance}
.h2{font-family:var(--q-font-display);font-weight:700;font-size:var(--q-fs-h2);line-height:1;letter-spacing:var(--q-display-tracking);text-transform:var(--q-display-transform);text-wrap:balance}
.h3{font-family:var(--q-font-display);font-weight:700;font-size:var(--q-fs-h3);line-height:1.2;text-transform:var(--q-display-transform);letter-spacing:.01em}
html[lang="ar"] .h3{font-weight:600}
.lead{font-size:var(--q-fs-lead);line-height:1.5;max-width:var(--q-measure)}
.small{font-size:var(--q-fs-small)}
.eyebrow{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.18em;text-transform:uppercase;color:var(--q-maroon);font-weight:500}
html[lang="ar"] .eyebrow{letter-spacing:.04em;font-family:var(--q-font-arabic);font-size:.8125rem}
.mono{font-family:var(--q-font-mono);font-variant-numeric:tabular-nums}
.accent{color:var(--q-maroon)}
.on-dark .accent{color:var(--q-gold)}
.muted{color:var(--q-muted)}
.says{font-style:italic;color:var(--q-steel);font-size:var(--q-fs-small);margin-block-start:var(--q-s4)}

/* ---------- 4. Layout ---------- */
.wrap{width:100%;max-width:var(--q-max);margin-inline:auto;padding-inline:var(--q-gutter)}
.scene{position:relative;min-height:100svh;padding-block:calc(var(--q-chrome) + var(--q-s8)) var(--q-s10);display:flex;flex-direction:column;justify-content:center}
.scene--auto{min-height:0;padding-block:var(--q-s10)}
.on-dark{background:linear-gradient(180deg,var(--q-slate),var(--q-slate-deep));color:var(--q-cream)}
.on-dark .muted{color:rgb(245 240 232 / .62)}
.on-dark .eyebrow{color:var(--q-gold)}
.on-dark .says{color:rgb(245 240 232 / .7)}
.scene-head{display:grid;gap:var(--q-s4);margin-block-end:var(--q-s7)}
@media(min-width:1024px){.scene-head{grid-template-columns:1fr 1fr;align-items:end}}
.scene-num{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.18em;color:var(--q-muted);margin-block-end:var(--q-s2)}

/* ---------- 5. Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:var(--q-s2);padding:.95rem 1.5rem;font-family:var(--q-font-mono);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;border:1.5px solid currentColor;border-radius:999px;transition:background var(--q-t-fast) var(--q-ease),color var(--q-t-fast) var(--q-ease),border-color var(--q-t-fast) var(--q-ease),transform var(--q-t-fast) var(--q-ease)}
html[lang="ar"] .btn{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.9375rem}
.btn--primary{background:var(--q-maroon);border-color:var(--q-maroon);color:var(--q-white)}
.btn--primary:hover{background:var(--q-maroon-bright);border-color:var(--q-maroon-bright)}
.btn--ghost{color:var(--q-slate)}
.btn--ghost:hover{background:var(--q-slate);color:var(--q-cream)}
.on-dark .btn--ghost{color:var(--q-cream)}
.on-dark .btn--ghost:hover{background:var(--q-cream);color:var(--q-slate)}
.btn[aria-busy="true"]{opacity:.7;pointer-events:none}
.btn .arr{transition:transform var(--q-t-fast) var(--q-ease)}
.btn:hover .arr{transform:translateX(3px)}
[dir="rtl"] .btn:hover .arr{transform:translateX(-3px)}
[dir="rtl"] .arr,[dir="rtl"] .ext{transform:scaleX(-1)}
.link{color:var(--q-maroon);font-weight:500;border-block-end:1px solid transparent;transition:border-color var(--q-t-fast)}
.link:hover{border-color:var(--q-maroon)}

/* ---------- 6. Chrome ---------- */
.chrome{position:fixed;inset-block-start:0;inset-inline:0;height:var(--q-chrome);z-index:100;display:flex;align-items:center;justify-content:space-between;padding-inline:var(--q-gutter);background:rgb(245 240 232 / .82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-block-end:1px solid rgb(212 210 204 / .6);transition:transform var(--q-t-mid) var(--q-ease)}
.chrome__logo img{height:2.1rem;width:auto}
@media(min-width:768px){.chrome__logo img{height:2.5rem}}
.chrome__right{display:flex;align-items:center;gap:var(--q-s3)}
.pill{display:inline-flex;align-items:center;height:1.75rem;border:1px solid var(--q-slate);border-radius:999px;font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;overflow:hidden}
.pill--ext{padding-inline:.85rem;gap:.35rem;transition:background var(--q-t-fast),color var(--q-t-fast)}
.pill--ext:hover{background:var(--q-slate);color:var(--q-cream)}
.pill--lang span,.pill--lang a{display:inline-flex;align-items:center;height:100%;padding-inline:.7rem;transition:background var(--q-t-fast),color var(--q-t-fast)}
.pill--lang .on{background:var(--q-slate);color:var(--q-cream)}
.pill--lang a:hover{background:var(--q-cream-warm)}
.pill--lang .ar{font-family:var(--q-font-arabic);font-size:.8rem;letter-spacing:0;text-transform:none}
@media(max-width:639px){.pill--ext{display:none}}
.burger{width:2.75rem;height:2.75rem;display:grid;place-items:center;margin-inline-end:-.5rem}
.burger span{display:block;width:1.5rem;height:1.5px;background:var(--q-slate);margin-block:.3rem;transition:transform var(--q-t-mid) var(--q-ease),opacity var(--q-t-fast)}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* drawer */
.scrim{position:fixed;inset:0;z-index:90;background:rgb(49 56 65 / .55);opacity:0;pointer-events:none;transition:opacity var(--q-t-mid) var(--q-ease)}
.drawer{position:fixed;inset-block:0;inset-inline-end:0;width:min(100%,22rem);z-index:95;background:var(--q-slate);color:var(--q-cream);padding:calc(var(--q-chrome) + var(--q-s6)) var(--q-s6) var(--q-s6);transform:translateX(100%);transition:transform var(--q-t-mid) var(--q-ease);display:flex;flex-direction:column;overflow-y:auto}
[dir="rtl"] .drawer{transform:translateX(-100%)}
body.menu-open .scrim{opacity:1;pointer-events:auto}
body.menu-open .drawer{transform:none}
.drawer ol{display:grid;gap:.35rem;counter-reset:n}
.drawer li a{display:grid;grid-template-columns:2.25rem 1fr;align-items:baseline;padding-block:.45rem;font-family:var(--q-font-display);font-weight:700;font-size:1.65rem;text-transform:var(--q-display-transform);line-height:1;transition:color var(--q-t-fast)}
html[lang="ar"] .drawer li a{font-size:1.35rem;font-weight:600}
.drawer li a::before{counter-increment:n;content:counter(n,decimal-leading-zero);font:500 .6875rem/1 var(--q-font-mono);letter-spacing:.1em;color:var(--q-maroon-bright)}
.drawer li a:hover,.drawer li a.is-active{color:var(--q-gold)}
.drawer__foot{margin-block-start:auto;padding-block-start:var(--q-s6);border-block-start:1px solid rgb(245 240 232 / .15);font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:rgb(245 240 232 / .6);display:grid;gap:.6rem}
.drawer__foot a:hover{color:var(--q-gold)}

/* cue */
.cue{position:fixed;inset-block-end:1.25rem;inset-inline-start:50%;transform:translateX(-50%);z-index:50;display:grid;justify-items:center;gap:.5rem;font-family:var(--q-font-mono);font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--q-muted);transition:opacity var(--q-t-mid)}
.cue__bar{position:relative;width:1px;height:30px;background:var(--q-hairline);overflow:hidden}
.cue__bar::after{content:"";position:absolute;inset-inline:0;inset-block-start:-6px;height:6px;background:var(--q-maroon);animation:cue 1.6s var(--q-ease) infinite}
@keyframes cue{to{transform:translateY(38px)}}
body.scrolled .cue{opacity:0;pointer-events:none}
@media(max-width:767px){.cue{display:none}}

/* WhatsApp */
.wa{position:fixed;inset-block-end:5.5rem;inset-inline-end:1.25rem;z-index:60;display:flex;align-items:center;gap:.75rem;flex-direction:row-reverse}
.wa__disc{position:relative;width:62px;height:62px;border-radius:50%;background:var(--q-slate);border:2px solid var(--q-maroon);display:grid;place-items:center;transition:border-color var(--q-t-fast),transform var(--q-t-fast) var(--q-ease)}
.wa__disc::before{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--q-maroon);animation:wa-pulse 1.8s var(--q-ease) 3;opacity:0}
@keyframes wa-pulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.6);opacity:0}}
.wa__disc svg{width:30px;height:30px;fill:var(--q-white)}
.wa:hover .wa__disc,.wa:focus-within .wa__disc{border-color:var(--q-wa-green);transform:translateY(-2px)}
.wa__label{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;background:var(--q-slate);color:var(--q-cream);padding:.5rem .8rem;border-radius:999px;opacity:0;transform:translateX(8px);transition:opacity var(--q-t-fast),transform var(--q-t-fast) var(--q-ease);pointer-events:none;white-space:nowrap}
html[lang="ar"] .wa__label{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8rem}
[dir="rtl"] .wa__label{transform:translateX(-8px)}
.wa:hover .wa__label,.wa:focus-within .wa__label{opacity:1;transform:none}

/* preloader */
.loader{position:fixed;inset:0;z-index:300;background:var(--q-cream);display:grid;place-items:center;transition:transform .9s var(--q-ease);will-change:transform}
.loader.is-done{transform:translateY(-100%)}
.loader__in{display:grid;justify-items:center;gap:var(--q-s5)}
.loader__mark{position:relative;width:min(28vw,9rem);aspect-ratio:414/399}
.loader__mark-g,.loader__mark-m{position:absolute;inset:0;width:100%;height:100%;opacity:0}
.loader__mark-g{transform:translate3d(-14%,10%,0) scale(.7) rotate(-16deg)}
.loader__mark-m{transform:translate3d(14%,-10%,0) scale(.7) rotate(16deg)}
.is-loading .loader__mark-g{animation:qMarkIn .8s var(--q-ease) .1s forwards}
.is-loading .loader__mark-m{animation:qMarkIn .8s var(--q-ease) .3s forwards}
@keyframes qMarkIn{to{opacity:1;transform:translate3d(0,0,0) scale(1) rotate(0)}}
.loader__n{font-family:var(--q-font-mono);font-size:.75rem;letter-spacing:.2em;color:var(--q-muted)}
.loader__bar{width:9rem;height:1px;background:var(--q-hairline);overflow:hidden}
.loader__bar i{display:block;height:100%;width:0;background:var(--q-maroon)}
@media(prefers-reduced-motion:reduce){.loader{display:none}}

/* ---------- 7. Hero ---------- */
.hero{overflow:hidden;justify-content:flex-end;padding-block-end:var(--q-s8)}
@media(min-width:768px){.hero{padding-block-end:var(--q-s9)}}
.hero__gl{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero__grain{position:absolute;inset:0;z-index:0;pointer-events:none;background:url(../img/grain.png) repeat;opacity:.06;mix-blend-mode:multiply}
.hero__in{position:relative;z-index:1;display:grid;gap:var(--q-s5)}
.hero .display{max-width:16ch}
html[lang="ar"] .hero .display{max-width:20ch}
.hero__cta{display:flex;flex-wrap:wrap;gap:var(--q-s3);align-items:center}
.hero__meta{display:flex;flex-wrap:wrap;gap:var(--q-s3) var(--q-s5);font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--q-muted);margin-block-start:var(--q-s4)}
html[lang="ar"] .hero__meta{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
@media(min-width:1024px){.hero__in{grid-template-columns:1.4fr .8fr;align-items:end}.hero .display{grid-column:1/-1}}

/* word reveal */
html.js [data-reveal]{opacity:0;transform:translateY(24px)}
html.js [data-reveal].is-in{opacity:1;transform:none}
.w{display:inline-block;will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}

/* ---------- 8. Stat band ---------- */
.stats__grid{display:grid;gap:var(--q-s6);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}
.stat{border-inline-start:1px solid rgb(245 240 232 / .2);padding-inline-start:var(--q-s5)}
.stat__n{font-family:var(--q-font-mono);font-weight:700;font-size:var(--q-fs-stat);line-height:1;color:var(--q-gold);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.stat__l{margin-block-start:var(--q-s3);color:rgb(245 240 232 / .75);max-width:18rem}

/* ---------- 9. Continuum line ---------- */
.line__svg{width:100%;height:auto;overflow:visible;margin-block:var(--q-s6)}
.line__path{fill:none;stroke:var(--q-hairline);stroke-width:2}
.line__draw{fill:none;stroke:var(--q-maroon);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:1;pathLength:1}
.line__nodes{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--q-s2)}
.node{display:grid;justify-items:center;gap:.6rem;text-align:center;padding:.5rem .25rem;border-radius:var(--q-radius);transition:color var(--q-t-fast)}
.node i{width:14px;height:14px;border-radius:50%;background:var(--q-cream);border:2px solid var(--q-hairline);transition:transform var(--q-t-fast) var(--q-ease),background var(--q-t-fast),border-color var(--q-t-fast)}
.node b{font-family:var(--q-font-mono);font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:var(--q-muted);font-weight:500}
html[lang="ar"] .node b{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.75rem}
.node[aria-selected="true"] i,.node.is-done i{background:var(--q-maroon);border-color:var(--q-maroon)}
.node[aria-selected="true"] i{transform:scale(1.35)}
.node[aria-selected="true"] b{color:var(--q-maroon)}
@media(max-width:639px){.node b{font-size:.55rem}}
.line__cards{position:relative;margin-block-start:var(--q-s7);min-height:15rem}
.line__card{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--q-t-mid) var(--q-ease),transform var(--q-t-mid) var(--q-ease),visibility 0s var(--q-t-mid);transform:translateY(16px);display:grid;gap:var(--q-s4);align-content:start}
.line__card.is-on{opacity:1;visibility:visible;transform:none;transition-delay:0s}
@media(min-width:768px){.line__card{grid-template-columns:1fr 1.4fr;gap:var(--q-s7)}}
.line__card ul{display:grid;gap:.35rem;font-size:var(--q-fs-small)}
.line__card li{padding-inline-start:1.1rem;position:relative}
.line__card li::before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.6rem;width:.45rem;height:1px;background:var(--q-maroon)}

/* ---------- 10. Pillars ---------- */
.pillars{display:grid;gap:var(--q-s5);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
.pillar{background:var(--q-cream-warm);border:1px solid var(--q-hairline);border-block-start:3px solid var(--q-maroon);padding:var(--q-s6);display:grid;gap:var(--q-s4);align-content:start;transition:box-shadow var(--q-t-fast) var(--q-ease),background var(--q-t-fast)}
.pillar:hover{box-shadow:var(--q-shadow-lift);background:var(--q-cream-warmer)}
.pillar__n{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.18em;color:var(--q-maroon)}
.pillar ul{display:grid;gap:.3rem;font-size:var(--q-fs-small)}
.pillar li a{display:inline-block;padding-block:.1rem;border-block-end:1px solid transparent;transition:color var(--q-t-fast),border-color var(--q-t-fast)}
.pillar li a:hover{color:var(--q-maroon);border-color:var(--q-maroon)}
.pillar__more{margin-block-start:auto;padding-block-start:var(--q-s4)}

/* ---------- 11. Industry rail ---------- */
.rail{display:flex;gap:var(--q-s4);overflow-x:auto;scroll-snap-type:x mandatory;padding-block:var(--q-s2) var(--q-s5);margin-inline:calc(-1 * var(--q-gutter));padding-inline:var(--q-gutter);scrollbar-width:none;cursor:grab}
.rail::-webkit-scrollbar{display:none}
.rail.is-drag{cursor:grabbing;scroll-snap-type:none}
.rail__item{flex:0 0 min(80vw,17rem);scroll-snap-align:start;background:var(--q-cream-warm);border:1px solid var(--q-hairline);padding:var(--q-s5);display:grid;gap:var(--q-s3);align-content:start;min-height:16rem;transition:box-shadow var(--q-t-fast),border-color var(--q-t-fast)}
.rail__item:hover{box-shadow:var(--q-shadow-lift);border-color:var(--q-maroon)}
.rail__item .mono{font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;color:var(--q-maroon)}
.rail__item p{font-size:var(--q-fs-small);color:var(--q-ink)}
.rail__item .tags{font-family:var(--q-font-mono);font-size:.6875rem;color:var(--q-muted);line-height:1.5;margin-block-start:auto}
.rail__track{height:1px;background:var(--q-hairline);position:relative;margin-block-start:var(--q-s2)}
.rail__track i{position:absolute;inset-block:0;inset-inline-start:0;width:20%;background:var(--q-maroon);transition:transform 80ms linear}

/* ---------- 12. Proof wall ---------- */
.proof{display:grid;gap:0;border-block-start:1px solid rgb(245 240 232 / .15)}
.proof__row{display:grid;gap:.35rem var(--q-s6);padding-block:var(--q-s4);border-block-end:1px solid rgb(245 240 232 / .15);align-items:baseline}
@media(min-width:768px){.proof__row{grid-template-columns:minmax(12rem,1fr) 2fr}}
.proof__name{font-family:var(--q-font-display);font-weight:700;font-size:clamp(1.75rem,4vw,3rem);line-height:1;text-transform:var(--q-display-transform);color:rgb(245 240 232 / .45);transition:color var(--q-t-mid) var(--q-ease)}
html[lang="ar"] .proof__name{font-size:clamp(1.4rem,3vw,2.4rem);font-weight:600}
.proof__row.is-in .proof__name,.proof__row:hover .proof__name{color:var(--q-gold)}
.proof__what{font-family:var(--q-font-mono);font-size:.8125rem;line-height:1.6;color:rgb(245 240 232 / .75)}
html[lang="ar"] .proof__what{font-family:var(--q-font-arabic);font-size:.9375rem}

/* ---------- 13. Delivery flow ---------- */
.flow{display:grid;gap:var(--q-s6)}
@media(min-width:1024px){.flow{grid-template-columns:1.1fr 1fr;align-items:center}}
.flow__svg{width:100%;height:auto;overflow:visible}
.flow__path{fill:none;stroke:var(--q-hairline);stroke-width:2;stroke-dasharray:4 6}
.flow__draw{fill:none;stroke:var(--q-maroon);stroke-width:2.5;stroke-dasharray:1;stroke-dashoffset:1;pathLength:1}
.flow__node{fill:var(--q-cream);stroke:var(--q-slate);stroke-width:2}
.flow__node.is-on{fill:var(--q-maroon);stroke:var(--q-maroon)}
.flow__lab{font:500 11px var(--q-font-mono);letter-spacing:.12em;text-transform:uppercase;fill:var(--q-slate)}
html[lang="ar"] .flow__lab{font:600 12px var(--q-font-arabic);letter-spacing:0}
.flow__steps{display:grid;gap:var(--q-s4);counter-reset:s}
.flow__step{display:grid;grid-template-columns:2.5rem 1fr;gap:var(--q-s3);padding:var(--q-s4) 0;border-block-start:1px solid var(--q-hairline)}
.flow__step::before{counter-increment:s;content:counter(s,decimal-leading-zero);font:500 .6875rem/1.8 var(--q-font-mono);letter-spacing:.14em;color:var(--q-maroon)}
.flow__step h3{font-family:var(--q-font-sans);font-weight:600;font-size:1rem;margin-block-end:.25rem}
.flow__step p{font-size:var(--q-fs-small);color:var(--q-ink)}

/* ---------- 14. Milestones ---------- */
.miles{display:grid;gap:0;border-block-start:1px solid var(--q-hairline)}
.mile{display:grid;grid-template-columns:5.5rem 1fr;gap:var(--q-s4);padding-block:var(--q-s4);border-block-end:1px solid var(--q-hairline);align-items:baseline}
.mile b{font-family:var(--q-font-mono);font-weight:700;font-size:1.25rem;color:var(--q-maroon);font-variant-numeric:tabular-nums}
.mile.is-now b{color:var(--q-slate)}
.mile p{font-size:var(--q-fs-small)}

/* ---------- 15. Downloads ---------- */
.dl{display:grid;gap:0;border-block-start:1px solid var(--q-hairline)}
.dl a{display:grid;grid-template-columns:1fr auto;gap:var(--q-s2) var(--q-s5);align-items:center;padding-block:var(--q-s4);border-block-end:1px solid var(--q-hairline);transition:background var(--q-t-fast),padding var(--q-t-fast) var(--q-ease)}
.dl a:hover{background:var(--q-cream-warm);padding-inline:var(--q-s3)}
.dl b{font-weight:600;display:block}
.dl span{font-size:var(--q-fs-small);color:var(--q-muted)}
.dl .tag{font-family:var(--q-font-mono);font-size:.625rem;letter-spacing:.14em;text-transform:uppercase;color:var(--q-maroon);white-space:nowrap}
@media(min-width:768px){.dl{grid-template-columns:1fr 1fr;column-gap:var(--q-s7)}}

/* ---------- 16. FAQ ---------- */
.faq{display:grid;gap:0;border-block-start:1px solid var(--q-hairline);max-width:52rem}
.faq details{border-block-end:1px solid var(--q-hairline)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 1.5rem;gap:var(--q-s4);align-items:center;padding-block:var(--q-s4);font-weight:600;font-size:1.0625rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--q-font-mono);font-size:1.5rem;color:var(--q-maroon);line-height:1;transition:transform var(--q-t-fast) var(--q-ease);justify-self:end}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .faq__a{padding-block:0 var(--q-s5);color:var(--q-ink);font-size:var(--q-fs-small);max-width:var(--q-measure)}
.faq .faq__a p+p{margin-block-start:.6rem}

/* ---------- 17. Contact ---------- */
.contact{display:grid;gap:var(--q-s8)}
@media(min-width:1024px){.contact{grid-template-columns:1fr 1.1fr}}
.form{display:grid;gap:var(--q-s4)}
.form__row{display:grid;gap:var(--q-s4)}
@media(min-width:640px){.form__row{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:.4rem}
.field label{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--q-muted)}
html[lang="ar"] .field label{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.field input,.field select,.field textarea{width:100%;background:var(--q-white);border:1px solid var(--q-hairline);border-radius:var(--q-radius);padding:.8rem .9rem;font:inherit;color:var(--q-ink);transition:border-color var(--q-t-fast),box-shadow var(--q-t-fast)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--q-maroon);box-shadow:0 0 0 3px rgb(138 27 62 / .15)}
.field textarea{min-height:8rem;resize:vertical}
.field.is-err input,.field.is-err select,.field.is-err textarea{border-color:var(--q-maroon)}
.field__err{font-size:.8125rem;color:var(--q-maroon);min-height:1em}
.hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;opacity:0}
.consent{display:flex;gap:.6rem;align-items:flex-start;font-size:var(--q-fs-small);color:var(--q-muted)}
.consent input{margin-block-start:.3rem;accent-color:var(--q-maroon)}
.form__msg{font-size:var(--q-fs-small);min-height:1.5em}
.form__msg.ok{color:var(--q-slate);font-weight:500}
.form__msg.err{color:var(--q-maroon)}
.form__note{font-size:.8125rem;color:var(--q-muted)}
.addr{display:grid;gap:var(--q-s5);align-content:start}
.addr__block{display:grid;gap:.35rem}
.addr__block .k{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--q-maroon)}
html[lang="ar"] .addr__block .k{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.addr__block a{border-block-end:1px solid var(--q-hairline);transition:border-color var(--q-t-fast)}
.addr__block a:hover{border-color:var(--q-maroon)}
.addr address{font-style:normal;line-height:1.7}
.addr .mono{direction:ltr;unicode-bidi:isolate}

/* ---------- 18. Footer ---------- */
.foot{background:var(--q-slate-deep);color:var(--q-cream);padding-block:var(--q-s9) var(--q-s6)}
.foot__grid{display:grid;gap:var(--q-s7)}
@media(min-width:768px){.foot__grid{grid-template-columns:1.3fr 1fr 1fr}}
.foot__logo img{height:2.6rem;width:auto;margin-block-end:var(--q-s4)}
.foot h4{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--q-gold);margin-block-end:var(--q-s3)}
html[lang="ar"] .foot h4{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.foot ul{display:grid;gap:.45rem;font-size:var(--q-fs-small)}
.foot li a{color:rgb(245 240 232 / .8);transition:color var(--q-t-fast)}
.foot li a:hover{color:var(--q-gold)}
.social{display:flex;flex-wrap:wrap;gap:.6rem;margin-block-start:var(--q-s4)}
.social a{width:2.5rem;height:2.5rem;display:grid;place-items:center;border:1px solid rgb(245 240 232 / .25);border-radius:50%;transition:border-color var(--q-t-fast),background var(--q-t-fast)}
.social a:hover{border-color:var(--q-gold);background:rgb(245 240 232 / .06)}
.social svg{width:1.05rem;height:1.05rem;fill:var(--q-cream)}
.foot__bar{margin-block-start:var(--q-s8);padding-block-start:var(--q-s5);border-block-start:1px solid rgb(245 240 232 / .15);display:grid;gap:var(--q-s3);font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.06em;color:rgb(245 240 232 / .6)}
html[lang="ar"] .foot__bar{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.foot__bar .cred{direction:ltr;unicode-bidi:isolate;font-family:var(--q-font-mono);letter-spacing:.06em;font-size:.6875rem}
.tagline{font-family:var(--q-font-sans);font-size:.9375rem;letter-spacing:.02em;color:var(--q-cream)}
.tagline b{color:var(--q-gold);font-weight:600}
@media(min-width:768px){.foot__bar{grid-template-columns:1fr auto;align-items:center}}

/* ---------- 19. Reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .line__draw,.flow__draw{stroke-dashoffset:0}
  .line__card{position:static;opacity:1;visibility:visible;transform:none;margin-block-end:var(--q-s6)}
  .line__cards{min-height:0}
  .cue,.hero__gl{display:none}
  .proof__name{color:var(--q-gold)}
}
@media print{.chrome,.drawer,.scrim,.cue,.wa,.loader,.hero__gl{display:none!important}.scene{min-height:0}}

/* ---------- 20. Contact confirmation (added 25 Aug 2026) ---------- */
.form-done{background:var(--q-cream-warm);border:1px solid var(--q-hairline);border-block-start:3px solid var(--q-maroon);padding:var(--q-s6);display:grid;gap:var(--q-s4);align-content:start}
.form[hidden],.form-done[hidden]{display:none}
.form-done:focus{outline:none}
.form-done__tick{width:3rem;height:3rem;border-radius:50%;background:var(--q-maroon);display:grid;place-items:center}
.form-done__tick svg{width:1.4rem;height:1.4rem;fill:none;stroke:var(--q-white);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.form-done__k{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.18em;text-transform:uppercase;color:var(--q-maroon)}
html[lang="ar"] .form-done__k{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.form-done h3{font-family:var(--q-font-display);font-weight:700;font-size:var(--q-fs-h3);line-height:1.15;letter-spacing:var(--q-display-tracking);text-transform:var(--q-display-transform)}
.form-done dl{display:grid;gap:0;margin:0}
.form-done dl>div{display:grid;grid-template-columns:7.5rem 1fr;gap:.5rem;padding-block:.5rem;border-block-end:1px solid var(--q-hairline)}
.form-done dt{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--q-muted)}
html[lang="ar"] .form-done dt{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.form-done dd{margin:0;font-size:var(--q-fs-small);overflow-wrap:anywhere}
.form-done dd.mono{direction:ltr;unicode-bidi:isolate}
.form-done__next{font-size:var(--q-fs-small);color:var(--q-grey)}
.form-done__acts{display:flex;flex-wrap:wrap;gap:var(--q-s3)}
html.js .form-done{animation:qDoneIn .5s var(--q-ease) both}
@keyframes qDoneIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* ---------- 21. 404 (added 25 Aug 2026) ---------- */
.e404{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-block:calc(var(--q-chrome) + var(--q-s8)) var(--q-s8)}
.e404__grid{display:grid;gap:var(--q-s7)}
@media(min-width:900px){.e404__grid{grid-template-columns:1.15fr 1fr;gap:var(--q-s9);align-items:start}}
.e404__code{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.18em;text-transform:uppercase;color:var(--q-maroon);margin-block-end:var(--q-s4)}
.e404__lead{margin-block-start:var(--q-s5)}
.e404__acts{display:flex;flex-wrap:wrap;gap:var(--q-s3);margin-block-start:var(--q-s6)}
.e404__panel{background:var(--q-cream-warm);border:1px solid var(--q-hairline);border-block-start:3px solid var(--q-maroon);padding:var(--q-s6);display:grid;gap:var(--q-s4);align-content:start}
.e404__panel h2{font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--q-muted)}
html[lang="ar"] .e404__panel h2{font-family:var(--q-font-arabic);letter-spacing:0;font-size:.8125rem}
.e404__links{display:grid;gap:.45rem;font-size:var(--q-fs-small)}
.e404__links li a{display:inline-block;padding-block:.15rem;border-block-end:1px solid transparent;transition:color var(--q-t-fast),border-color var(--q-t-fast)}
.e404__links li a:hover{color:var(--q-maroon);border-color:var(--q-maroon)}
.e404__foot{border-block-start:1px solid var(--q-hairline);margin-block-start:var(--q-s8);padding-block-start:var(--q-s5);display:grid;gap:var(--q-s2);font-family:var(--q-font-mono);font-size:.6875rem;letter-spacing:.06em;color:var(--q-muted)}
.e404__foot .cred{direction:ltr;unicode-bidi:isolate}
.e404__foot .tagline{font-size:.9375rem;color:var(--q-ink)}
.e404__foot .tagline b{color:var(--q-maroon);font-weight:600}

/* ---------- 22. Insights (added 26 Aug 2026) ---------- */
.ins{display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:var(--q-s5);border-block-start:1px solid var(--q-hairline);padding-block-start:var(--q-s6)}
.ins__card{display:grid;gap:var(--q-s3);align-content:start;padding:var(--q-s4);border:1px solid var(--q-hairline);border-radius:var(--q-radius);background:var(--q-white);transition:border-color var(--q-t-fast),background var(--q-t-fast),transform var(--q-t-mid) var(--q-ease),box-shadow var(--q-t-mid) var(--q-ease)}
.ins__card:hover{border-color:var(--q-maroon);background:var(--q-cream-warmer);transform:translateY(-4px);box-shadow:var(--q-shadow-lift)}
.ins__img{display:block;aspect-ratio:16/9;overflow:hidden;border-radius:var(--q-radius);background:var(--q-cream-warm)}
.ins__img img{width:100%;height:100%;object-fit:cover;display:block}
.ins__meta{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.12em;text-transform:uppercase;color:var(--q-muted)}
.ins__title{font-size:var(--q-fs-h3);font-weight:600;line-height:1.2;margin:0;color:var(--q-ink)}
.ins__card:hover .ins__title{color:var(--q-maroon)}
.ins__ex{font-size:var(--q-fs-small);color:var(--q-grey);line-height:1.55}
.ins__lang{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.08em;color:var(--q-muted)}
.ins__go{font-family:var(--q-font-mono);font-size:var(--q-fs-label);letter-spacing:.12em;text-transform:uppercase;color:var(--q-maroon)}
@media (prefers-reduced-motion:reduce){.ins__card,.ins__card:hover{transform:none;box-shadow:none}}
