/* =============================================================================
   Ovex — site layer. Everything here derives from tokens.css.
   ============================================================================= */

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:76px}
html:lang(ar){direction:rtl}
body{margin:0;font:var(--type-body);font-size:var(--fs-body-lg);color:var(--text-body);background:var(--surface-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
h1,h2,h3,h4{margin:0;font-family:var(--font-display);color:var(--text-strong);letter-spacing:var(--ls-tight);font-weight:var(--fw-bold);text-wrap:balance}
p{margin:0}
a{color:var(--ink-900);text-decoration:none;transition:var(--t-hover)}
p a{border-bottom:1px solid var(--lime-500)}
p a:hover{color:var(--orange-600);border-bottom-color:var(--orange-500)}
button{font-family:inherit;color:inherit}
img,svg{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:2px}
::selection{background:var(--lime-300);color:var(--ink-900)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
[hidden]{display:none!important}

/* numerals never mirror, never go proportional */
.num{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;letter-spacing:-0.02em;direction:ltr;unicode-bidi:isolate}

/* ---------------------------------------------------------------- the frame */
.desk{position:relative;min-height:100vh;padding:14px;isolation:isolate}
.shell{position:relative;background:var(--surface-shell);border-radius:var(--r-shell);min-height:calc(100vh - 28px);overflow:clip;box-shadow:0 1px 3px rgba(11,11,10,.04),0 24px 60px -30px rgba(11,11,10,.16)}

/* ================================================================ header */
.top{position:sticky;top:0;z-index:40;background:var(--glass);backdrop-filter:saturate(1.6) var(--blur-glass);-webkit-backdrop-filter:saturate(1.6) var(--blur-glass);border-bottom:1px solid var(--line-soft)}
.top__inner{display:flex;align-items:center;gap:var(--sp-4);height:58px}
.top__brand{display:inline-flex;align-items:center;flex:0 0 auto;color:var(--ink-900)}
.top__brand svg{height:18px;width:auto}
.top__spacer{flex:1 1 auto}
.top__right{display:flex;align-items:center;gap:var(--sp-2);flex:0 0 auto}
.top__menu{display:none}

/* primary nav — flat, quiet, one weight change for the current page */
.nav{display:flex;align-items:center;gap:1px;margin-inline-start:var(--sp-5)}
.nav>a,.nav__trigger{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 11px;border:0;background:transparent;border-radius:var(--r-sm);font:var(--fw-medium) 14px/1 var(--font-body);letter-spacing:-0.01em;color:var(--ink-600);cursor:pointer;white-space:nowrap;transition:var(--t-hover)}
.nav>a:hover,.nav__trigger:hover,.nav__menu.is-open .nav__trigger{color:var(--ink-900);background:var(--ink-100)}
.nav>a[aria-current=page]{color:var(--ink-900);font-weight:var(--fw-bold)}
.nav__trigger svg{width:12px;height:12px;transition:transform var(--dur-fast) var(--ease-out);opacity:.55}
.nav__menu.is-open .nav__trigger svg{transform:rotate(180deg)}
.nav__menu{position:relative}
.nav__panel{position:absolute;top:calc(100% + 9px);inset-inline-start:-4px;display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5);width:440px;padding:var(--sp-5);border-radius:var(--r-lg);background:var(--white);box-shadow:var(--shadow-lift),var(--ring-ghost);opacity:0;visibility:hidden;transform:translateY(-6px) scale(.985);transform-origin:top;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-base) var(--ease-spring),visibility var(--dur-fast)}
.nav__menu.is-open .nav__panel{opacity:1;visibility:visible;transform:none}
.nav__panel h4{font:var(--fw-semibold) 11px/1 var(--font-body);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-400);margin-bottom:var(--sp-3)}
.nav__panel a{display:block;padding:8px 10px;border-radius:var(--r-sm);transition:var(--t-hover)}
.nav__panel a:hover{background:var(--ink-050)}
.nav__panel a[aria-current=page]{background:var(--lime-100)}
.nav__panel a.is-lit{box-shadow:inset 0 0 0 1px var(--lime-500)}
.nav__panel b{display:block;font:var(--fw-semibold) 14px/1.2 var(--font-display);color:var(--ink-900)}
.nav__panel span{display:block;margin-top:2px;font:var(--fw-regular) 12px/1.3 var(--font-body);color:var(--ink-500)}
.nav__note{grid-column:1/-1;padding-top:var(--sp-3);border-top:1px solid var(--line-soft);font:var(--fw-regular) 12px/1.4 var(--font-body);color:var(--ink-500)}

/* ---------------------------------------------------------------- buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 17px;border:0;border-radius:var(--r-pill);background:var(--ink-900);color:var(--white);box-shadow:var(--shadow-pill);font:var(--fw-semibold) 14px/1 var(--font-body);letter-spacing:-0.01em;cursor:pointer;white-space:nowrap;transition:var(--t-hover);text-decoration:none}
.btn:hover{background:var(--ink-700);transform:translateY(-1px)}
.btn:active{transform:scale(.97)}
.btn[disabled],.btn.is-disabled{opacity:.38;cursor:not-allowed;transform:none}
.btn--lime{background:var(--lime-400);color:var(--ink-900)}
.btn--lime:hover{background:var(--lime-500)}
.btn--orange{background:var(--orange-500);color:var(--white)}
.btn--orange:hover{background:var(--orange-600)}
.btn--surface{background:var(--white);color:var(--ink-900);box-shadow:var(--shadow-sm),var(--ring-ghost)}
.btn--surface:hover{background:var(--ink-050)}
.btn--outline{background:transparent;color:var(--ink-900);box-shadow:var(--ring-ink)}
.btn--outline:hover{background:var(--ink-050)}
.btn--ghost{background:transparent;color:var(--ink-600);box-shadow:none}
.btn--ghost:hover{background:var(--ink-100);color:var(--ink-900)}
.btn--sm{height:32px;padding:0 13px;font-size:13px}
.btn--lg{height:46px;padding:0 22px;font-size:15px}
.btn .i{width:1em;height:1em}
.btn .arrow{transition:transform var(--dur-fast) var(--ease-out)}
.btn:hover .arrow{transform:translateX(3px)}
html:lang(ar) .btn:hover .arrow{transform:translateX(-3px)}

.iconbtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:var(--r-pill);background:var(--ink-900);color:var(--lime-400);box-shadow:var(--shadow-pill);cursor:pointer;transition:var(--t-hover)}
.iconbtn:hover{transform:scale(1.05)}
.iconbtn:active{transform:scale(.93)}
.iconbtn--lime{background:var(--lime-400);color:var(--ink-900)}
.iconbtn--surface{background:var(--white);color:var(--ink-900);box-shadow:var(--shadow-sm),var(--ring-ghost)}
.iconbtn svg{width:18px;height:18px}

.lang{height:32px;min-width:32px;padding:0 10px;font:var(--fw-semibold) 13px/1 var(--font-body);border-radius:var(--r-pill);background:transparent;box-shadow:var(--ring-ghost);border:0;cursor:pointer;color:var(--ink-700);transition:var(--t-hover)}
.lang:hover{background:var(--white);color:var(--ink-900)}

/* ---------------------------------------------------------------- cards */
.card{position:relative;border-radius:var(--r-xl);padding:var(--pad-card-lg);background:var(--white);color:var(--ink-900);box-shadow:var(--shadow-card),var(--ring-hair);overflow:hidden;transition:var(--t-panel)}
.card--hero{border-radius:var(--r-2xl)}
.card--lime{background:var(--lime-300)}
.card--lime-soft{background:var(--lime-100)}
.card--orange{background:var(--orange-500);color:var(--white)}
.card--orange h1,.card--orange h2,.card--orange h3{color:var(--white)}
.card--orange-soft{background:var(--orange-100)}
.card--ink{background:var(--ink-900);color:var(--white);box-shadow:var(--shadow-card)}
.card--ink h1,.card--ink h2,.card--ink h3{color:var(--white)}
.card--shell{background:var(--shell);box-shadow:var(--ring-ghost)}
.card--flat{box-shadow:var(--ring-ghost)}
.card--dashed{background:transparent;box-shadow:none;border:var(--border-dashed)}
.card--lift:hover{box-shadow:var(--shadow-lift),var(--ring-hair);transform:translateY(-2px)}
.card--pad-sm{padding:var(--pad-card)}

.glyph{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 auto;border-radius:var(--r-pill);background:var(--ink-900);color:var(--lime-400)}
.glyph svg{width:17px;height:17px}
.glyph--orange{background:var(--orange-500);color:var(--white)}
.glyph--lime{background:var(--lime-400);color:var(--ink-900)}
.glyph--sq{border-radius:var(--r-sm)}
.glyph--sm{width:30px;height:30px}
.glyph--sm svg{width:15px;height:15px}

.tag{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:var(--r-pill);background:var(--ink-050);color:var(--ink-700);font:var(--fw-semibold) 12px/1 var(--font-body);white-space:nowrap}
.tag--lime{background:var(--lime-400);color:var(--ink-900)}
.tag--orange{background:var(--orange-500);color:var(--white)}
.tag--ink{background:var(--ink-900);color:var(--white)}
.tag--white{background:var(--white);box-shadow:var(--ring-ghost)}
.tag--critical{background:var(--status-critical);color:var(--white)}
.tag--dot::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}

.note{display:inline-flex;align-items:center;gap:9px;max-width:100%;padding:10px 15px;border-radius:var(--r-md);background:var(--ink-900);color:var(--white);font:var(--fw-medium) 13px/1.4 var(--font-body);box-shadow:var(--shadow-lift);animation:lum-pop var(--dur-slow) var(--ease-spring)}
.note--lime{background:var(--lime-400);color:var(--ink-900)}
.note--orange{background:var(--orange-500);color:var(--white)}
.note--soft{background:var(--white);color:var(--ink-900);box-shadow:var(--shadow-card),var(--ring-ghost)}

/* ---------------------------------------------------------------- type */
.eyebrow{font:var(--fw-semibold) 12px/1 var(--font-body);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-400);margin-bottom:10px}
.h-hero{font-size:var(--fs-hero);line-height:var(--lh-tight);letter-spacing:-0.035em;font-weight:var(--fw-black)}
.h-1{font-size:var(--fs-display-1);line-height:1.08;letter-spacing:-0.03em;font-weight:var(--fw-black)}
.h-2{font:var(--fw-bold) var(--fs-display-2)/1.14 var(--font-display);letter-spacing:-0.03em}
.h-3{font:var(--fw-bold) var(--fs-h2)/var(--lh-snug) var(--font-display);letter-spacing:-0.02em}
.h-4{font:var(--fw-semibold) var(--fs-h3)/var(--lh-snug) var(--font-display);letter-spacing:-0.015em}
.lead{font-size:16px;line-height:1.52;color:var(--ink-600);max-width:56ch}
.body{font-size:15px;line-height:1.55;color:var(--ink-600);max-width:62ch}
.small{font-size:13px;line-height:1.45;color:var(--ink-500)}
.muted{color:var(--ink-500)}
.strong{color:var(--ink-900);font-weight:var(--fw-semibold)}
.stat__value{font:var(--fw-bold) var(--fs-display-2)/1 var(--font-numeric);letter-spacing:-0.035em;color:var(--ink-900);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
.stat__value--xl{font-size:48px}
.stat__caption{margin-top:6px;font:var(--fw-regular) 13px/1.3 var(--font-body);color:var(--ink-600)}
.pull{font:var(--fw-bold) clamp(20px,2.2vw,27px)/1.25 var(--font-display);letter-spacing:-0.025em;color:var(--ink-900);max-width:26ch}

/* ---------------------------------------------------------------- layout */
.wrap{width:100%;max-width:1140px;margin-inline:auto;padding-inline:var(--sp-6)}
.section{padding-block:var(--section-y)}
.section--tight{padding-block:calc(var(--section-y) * .62)}
.section--calm{padding-block:calc(var(--section-y) * .82)}
.section__head{max-width:60ch;margin-bottom:var(--sp-7)}
.section__head .lead{margin-top:var(--sp-3)}
.grid{display:grid;gap:var(--gutter-card)}
.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-7);align-items:center}
.split--wide{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.stack{display:flex;flex-direction:column;gap:var(--sp-3)}
.row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}
.row--between{justify-content:space-between}
.row--end{justify-content:flex-end}
.gap-2{gap:var(--sp-2)}.gap-6{gap:var(--sp-5)}
.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.mt-5{margin-top:var(--sp-4)}.mt-6{margin-top:var(--sp-5)}.mt-8{margin-top:var(--sp-7)}
.mb-4{margin-bottom:var(--sp-4)}.mb-6{margin-bottom:var(--sp-5)}
.center{text-align:center}
.center .lead,.center .body,.center .section__head{margin-inline:auto}

/* ---------------------------------------------------------------- ledger table */
.ledger{width:100%;border-collapse:collapse;font-size:13px}
.ledger td,.ledger th{padding:8px 5px;border-bottom:1px solid var(--ink-100);text-align:start;vertical-align:middle}
.ledger th{font:var(--fw-semibold) 11px/1.2 var(--font-body);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-400)}
.ledger .num{text-align:end;white-space:nowrap}
.ledger .code{font-family:var(--font-numeric);color:var(--ink-400);width:48px}
.ledger .dc{width:30px;font-weight:var(--fw-semibold);color:var(--ink-400)}
.ledger tr.is-total td{border-bottom:0;border-top:1.5px solid var(--ink-900);font-weight:var(--fw-bold);color:var(--ink-900);padding-top:11px}
.ledger tr.is-new td{animation:lum-rise var(--dur-slow) var(--ease-out)}
.ledger tr.is-muted td{color:var(--ink-400)}
.ledger tr.is-bad td{color:var(--status-critical)}

/* ---------------------------------------------------------------- forms */
.field{display:flex;align-items:center;gap:9px;height:46px;padding:0 var(--sp-4);border-radius:var(--r-md);background:var(--white);box-shadow:var(--ring-ghost);transition:var(--t-hover)}
.field:focus-within{box-shadow:var(--ring-ink)}
.field input,.field select,.field textarea{flex:1;min-width:0;border:0;outline:0;background:transparent;font:var(--fw-medium) 14px/1.3 var(--font-body);color:var(--ink-900)}
.field input::placeholder{color:var(--ink-400);font-weight:var(--fw-regular)}
.field--lg{height:56px;border-radius:var(--r-lg);padding:0 var(--sp-5)}
.field--lg input{font-size:16px}
.field--area{height:auto;padding:12px var(--sp-4);align-items:flex-start}
.field textarea{resize:vertical;min-height:76px}
.label{display:block;font:var(--fw-semibold) 11px/1.2 var(--font-body);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-400);margin-bottom:7px}

.pillselect{position:relative;display:inline-flex;align-items:center;height:34px;padding:0 32px 0 13px;border-radius:var(--r-pill);background:var(--white);box-shadow:var(--ring-ghost);font:var(--fw-semibold) 13px/1 var(--font-body);color:var(--ink-900);cursor:pointer}
.pillselect select{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}
.pillselect::after{content:"";position:absolute;inset-inline-end:12px;top:50%;width:6px;height:6px;border-inline-end:1.5px solid var(--ink-600);border-bottom:1.5px solid var(--ink-600);transform:translateY(-70%) rotate(45deg)}
html:lang(ar) .pillselect{padding:0 13px 0 32px}

.switch{display:inline-flex;align-items:center;gap:11px;cursor:pointer;user-select:none}
.switch__track{position:relative;width:46px;height:27px;padding:3px;border-radius:var(--r-pill);background:var(--ink-200);transition:background var(--dur-base) var(--ease-out)}
.switch__knob{display:block;width:21px;height:21px;border-radius:var(--r-pill);background:var(--white);box-shadow:var(--shadow-xs);transition:transform var(--dur-base) var(--ease-spring),background var(--dur-fast)}
.switch input{position:absolute;opacity:0;width:0;height:0}
.switch input:checked~.switch__track{background:var(--lime-400)}
.switch input:checked~.switch__track .switch__knob{transform:translateX(19px);background:var(--ink-900)}
html:lang(ar) .switch input:checked~.switch__track .switch__knob{transform:translateX(-19px)}
.switch__label{font:var(--fw-medium) 14px/1 var(--font-body);color:var(--ink-800)}
.switch--hero .switch__track{width:82px;height:46px;padding:5px}
.switch--hero .switch__knob{width:36px;height:36px}
.switch--hero input:checked~.switch__track .switch__knob{transform:translateX(36px)}
html:lang(ar) .switch--hero input:checked~.switch__track .switch__knob{transform:translateX(-36px)}
.switch--hero .switch__label{font:var(--fw-semibold) 15px/1 var(--font-body)}

.seg{display:inline-flex;padding:3px;gap:2px;background:var(--ink-100);border-radius:var(--r-pill)}
.seg button{height:30px;padding:0 14px;border:0;cursor:pointer;border-radius:var(--r-pill);background:transparent;color:var(--ink-500);font:var(--fw-semibold) 13px/1 var(--font-body);transition:var(--t-hover)}
.seg button:hover{color:var(--ink-900)}
.seg button[aria-pressed=true]{background:var(--ink-900);color:var(--white)}
.seg--orange button[aria-pressed=true]{background:var(--orange-500);color:var(--white)}
.seg--lime button[aria-pressed=true]{background:var(--lime-400);color:var(--ink-900)}
.seg--sm button{height:25px;padding:0 10px;font-size:12px}

.range{-webkit-appearance:none;appearance:none;width:100%;height:26px;background:transparent;cursor:pointer}
.range::-webkit-slider-runnable-track{height:6px;border-radius:var(--r-pill);background:var(--ink-200)}
.range::-moz-range-track{height:6px;border-radius:var(--r-pill);background:var(--ink-200)}
.range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:var(--ink-900);border:3px solid var(--lime-400);box-shadow:var(--shadow-pill);transition:transform var(--dur-fast) var(--ease-spring)}
.range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--ink-900);border:3px solid var(--lime-400);box-shadow:var(--shadow-pill)}
.range:active::-webkit-slider-thumb{transform:scale(1.1)}
.range--orange::-webkit-slider-thumb{border-color:var(--orange-500)}
.range--orange::-moz-range-thumb{border-color:var(--orange-500)}

/* ================================================================ footer */
.foot{margin-top:var(--section-y);border-top:1px solid var(--line-soft);background:var(--white)}
.foot__top{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:var(--sp-7);padding-block:var(--sp-8) var(--sp-7)}
.foot__brand svg{height:18px;width:auto;color:var(--ink-900)}
.foot__brand p{margin-top:12px;font:var(--fw-regular) 13px/1.5 var(--font-body);color:var(--ink-500);max-width:30ch}
.foot h4{font:var(--fw-semibold) 11px/1 var(--font-body);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-400);margin-bottom:var(--sp-3)}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.foot li a{font:var(--fw-medium) 14px/1 var(--font-body);color:var(--ink-700)}
.foot li a:hover{color:var(--ink-900)}
.foot__bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);flex-wrap:wrap;padding-block:var(--sp-4);border-top:1px solid var(--line-soft);font-size:12px;color:var(--ink-400)}
.foot__bottom a{color:var(--ink-500);display:inline-flex;align-items:center;gap:5px}
.foot__bottom a:hover{color:var(--ink-900)}
.foot__bottom svg{width:12px;height:12px}

/* ---------------------------------------------------------------- page transitions */
@view-transition{navigation:auto}
::view-transition-old(root){animation:180ms var(--ease-out) both vt-out}
::view-transition-new(root){animation:340ms var(--ease-out) both vt-in-up}
html[data-nav-dir=forward]::view-transition-new(root){animation-name:vt-in-fwd}
html[data-nav-dir=back]::view-transition-new(root){animation-name:vt-in-back}
html[data-nav-dir=forward]::view-transition-old(root){animation-name:vt-out-fwd}
html[data-nav-dir=back]::view-transition-old(root){animation-name:vt-out-back}
::view-transition-group(top-brand){animation-duration:0s}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in-up{from{opacity:0;transform:translateY(16px)}}
@keyframes vt-in-fwd{from{opacity:0;transform:translateX(30px)}}
@keyframes vt-in-back{from{opacity:0;transform:translateX(-30px)}}
@keyframes vt-out-fwd{to{opacity:0;transform:translateX(-18px)}}
@keyframes vt-out-back{to{opacity:0;transform:translateX(18px)}}
html:lang(ar) ::view-transition-new(root){animation-direction:reverse}
.top__brand{view-transition-name:top-brand}

/* ---------------------------------------------------------------- menu sheet (mobile) */
.sheet{position:fixed;inset:0;z-index:60;display:none;background:rgba(11,11,10,.3);backdrop-filter:var(--blur-glass)}
.sheet.is-open{display:block}
.sheet__panel{position:absolute;inset-inline:12px;top:12px;padding:var(--sp-5);border-radius:var(--r-xl);background:var(--white);box-shadow:var(--shadow-lift);animation:lum-pop var(--dur-base) var(--ease-spring)}
.sheet__group{margin-top:var(--sp-4)}
.sheet__group h4{font:var(--fw-semibold) 11px/1 var(--font-body);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-400);margin-bottom:6px}
.sheet__group a{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--r-sm);font:var(--fw-semibold) 15px/1 var(--font-display);color:var(--ink-900)}
.sheet__group a:hover{background:var(--ink-050)}
.sheet__group a[aria-current=page]{background:var(--lime-100)}
.sheet__group a span{font:var(--fw-regular) 12px/1 var(--font-body);color:var(--ink-500)}

/* ---------------------------------------------------------------- responsive */
@media (max-width:1024px){
  .nav{display:none}
  .top__menu{display:inline-flex}
  .split,.split--wide{grid-template-columns:1fr}
  .grid--4,.grid--5,.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot__top{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .desk{padding:8px}
  .shell{border-radius:18px;min-height:calc(100vh - 16px)}
  .top__inner{height:52px}
  .wrap{padding-inline:var(--sp-4)}
  .grid--2,.grid--3,.grid--4,.grid--5{grid-template-columns:1fr}
  .foot__top{grid-template-columns:1fr;gap:var(--sp-5)}
  .stat__value--xl{font-size:38px}
  .card{padding:var(--pad-card)}
}

/* ---------------------------------------------------------------- reduced motion */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
