
:root{
  --bg:#fff;--bg-2:#F4F5F7;--bg-3:#EEF0F2;--paper:#fff;
  --ink:#16181D;--ink-2:#565B63;--ink-3:#8B9099;
  --line:#E5E7EB;--line-2:#EEF0F2;--card-line:#BFC5CD;
  --brand:#0099CC;--brand-ink:#006F96;--brand-soft:#E6F4FA;--gold:#B08842;
  --dubai:#C8860A;--abudhabi:#006F96;--alain:#2E7D6B;--sharjah:#3E7344;
  --ajman:#7E4E6D;--uaq:#1B6B5A;--rak:#8B4513;--fujairah:#4A5F8A;
  --sans:"Mulish",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:"Instrument Serif","Times New Roman",serif;
  --arabic:"Cairo","Geeza Pro",Helvetica,sans-serif;
  --radius:clamp(14px,2.2vw,20px);--pill:999px;
  --maxw:1180px;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0E0F12;--bg-2:#15171C;--bg-3:#1E2228;--paper:#181A1F;
  --ink:#ECEDEF;--ink-2:#A8ADB5;--ink-3:#787E87;--line:#262A31;--line-2:#1E2228;--brand-soft:#0c2a33;--card-line:#3C434E;}}
:root[data-theme="dark"]{
  --bg:#0E0F12;--bg-2:#15171C;--bg-3:#1E2228;--paper:#181A1F;
  --ink:#ECEDEF;--ink-2:#A8ADB5;--ink-3:#787E87;--line:#262A31;--line-2:#1E2228;--brand-soft:#0c2a33;--card-line:#3C434E;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
html[lang="ar"] body{font-family:var(--arabic);line-height:1.8}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,4vw,28px)}

/* HEADER */
.hdr{position:sticky;top:0;z-index:500;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:14px;height:62px;max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,4vw,28px)}
.logo{flex:0 0 auto}
.hdr-nav{flex:1 1 auto;display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}
.lang-btn{flex:0 0 auto}
.hdr-link{white-space:nowrap}
.hdr-search-m{display:none;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--pill);border:1px solid var(--line);color:var(--ink-2);background:var(--paper);flex:0 0 auto}
.hdr-search-m:hover{border-color:var(--brand);color:var(--brand-ink)}
@media(max-width:640px){
  .hdr-in{flex-wrap:wrap;height:auto;row-gap:5px;padding-top:8px;padding-bottom:8px}
  .logo{order:1}
  #hdr-store{order:2}
  .hdr-title{order:2}
  .hdr-search-m{display:inline-flex;order:3;margin-inline-start:auto}
  .lang-btn{order:4;margin-inline-start:0}
  .hdr-nav{order:5;flex-basis:100%;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px;margin:0 calc(-1*clamp(16px,4vw,28px));padding:2px clamp(16px,4vw,28px)}
  .hdr-nav::-webkit-scrollbar{display:none}
  .hdr-link{padding:6px 11px;font-size:13.5px}
  .hdr-link-search{display:none}
}
.logo{font-family:"Mulish",var(--sans);font-size:27px;font-weight:800;letter-spacing:-1px;color:var(--ink)}
.logo em{font-style:normal;color:var(--brand);font-weight:800}
.hdr-tag{font-size:11px;color:var(--ink-3);border:1px solid var(--line);border-radius:var(--pill);padding:3px 10px;letter-spacing:.3px}
.hdr-sp{flex:1}
.hdr-nav{display:flex;align-items:center;gap:6px}
.hdr-link{font-size:14px;color:var(--ink-2);padding:7px 12px;border-radius:var(--pill)}
.hdr-link:hover{background:var(--bg-2);color:var(--ink)}
.lang-btn{font-size:14px;font-weight:600;color:var(--brand-ink);border:1px solid var(--line);border-radius:var(--pill);padding:7px 14px;background:var(--paper)}
.lang-btn:hover{border-color:var(--brand)}

/* HERO / intro */
.hero{padding:clamp(28px,5vw,52px) 0 clamp(18px,3vw,26px)}
.hero h1{font-family:var(--sans);font-weight:700;font-size:clamp(27px,4.6vw,44px);line-height:1.1;letter-spacing:-.5px}
html[lang="ar"] .hero h1{font-family:var(--arabic);font-weight:800;letter-spacing:0}
.hero p{margin-top:16px;max-width:760px;color:var(--ink-2);font-size:clamp(15px,2vw,18px)}
.crumbs{font-size:13px;color:var(--ink-3);margin-bottom:14px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.crumbs a:hover{color:var(--brand)}
.crumbs .sep{opacity:.5}

/* CONTROLS */
.controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:6px 0 18px}
.search{flex:1;min-width:240px;position:relative}
.search input{width:100%;font:inherit;font-size:15px;padding:12px 16px 12px 42px;border:1px solid var(--line);border-radius:var(--pill);background:var(--paper);color:var(--ink)}
html[dir="rtl"] .search input{padding:12px 42px 12px 16px}
.search svg{position:absolute;top:50%;left:15px;transform:translateY(-50%);color:var(--ink-3)}
html[dir="rtl"] .search svg{left:auto;right:15px}
.search input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
.viewtoggle{display:inline-flex;border:1px solid var(--line);border-radius:var(--pill);overflow:hidden;background:var(--paper)}
.viewtoggle button{font:inherit;font-size:14px;font-weight:600;padding:10px 18px;border:0;background:transparent;color:var(--ink-2);cursor:pointer;display:flex;align-items:center;gap:6px}
.viewtoggle button.active{background:var(--brand);color:#fff}
.tagrow{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.tag,.fpill,.catpill{font:inherit;font-size:13px;font-weight:600;padding:7px 14px;border-radius:var(--pill);border:1px solid var(--line);background:var(--paper);color:var(--ink-2);cursor:pointer}
.tag:hover,.fpill:hover,.catpill:hover{border-color:var(--brand);color:var(--brand-ink)}
.tag.active,.fpill.active,.catpill.active{background:var(--brand);border-color:var(--brand);color:#fff}
.results-line{font-size:14px;color:var(--ink-3);margin-bottom:14px}

/* FIND A STORE filter row */
.store-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:2px 0 18px}
.store-filter-lbl{font-size:13px;font-weight:600;color:var(--ink-3);margin-inline-end:2px}
.store-pill{display:inline-flex;align-items:center;justify-content:center;height:38px;min-width:58px;padding:0 12px;background:#fff;border:1.5px solid var(--line);border-radius:10px;cursor:pointer;transition:.15s}
.store-pill img{height:18px;width:auto;max-width:78px;display:block}
.store-pill:hover{border-color:var(--brand)}
.store-pill.active{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}

/* store logos on mall page (Stores & Brands) — logo only, no text */
.store-logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px;margin-bottom:12px}
html[lang="ar"] .store-logos{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.store-chip{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;min-width:0;width:100%;height:64px}
.store-chip img{max-height:30px;max-width:86%;width:auto;height:auto;object-fit:contain;display:block}

/* SEARCH PAGE: collapsible filter panel */
#filter-panel{max-height:1600px;overflow:hidden;transition:max-height .4s ease, opacity .3s ease, margin .3s ease}
#filter-panel.collapsed{max-height:0;opacity:0;margin:0;pointer-events:none}
.filterbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.filterbar:empty{display:none}
.filters-toggle{font:inherit;font-size:14px;font-weight:700;color:var(--brand-ink);background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--pill);padding:10px 18px;cursor:pointer;margin:0}
.filters-toggle:hover{border-color:var(--brand)}
/* active filter chip (shown next to the Filters button while collapsed) */
.active-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.afilter{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);border-radius:var(--pill);padding:6px 12px;cursor:pointer;font:inherit;font-size:13px;font-weight:600;color:var(--ink)}
.afilter:hover{border-color:var(--brand)}
.afilter-logo{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:5px;padding:3px 6px}
.afilter-logo--dark{background:#141414}
.afilter-logo img{height:16px;width:auto;max-width:70px;display:block}
.afilter-x{color:var(--ink-3);font-size:11px}
.afilter:hover .afilter-x{color:var(--brand-ink)}

/* SEARCH PAGE logo filter rows */
.logo-filter{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 14px;padding-bottom:14px;border-bottom:1px solid var(--line-2)}
.logo-filter-lbl{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-3);width:100%;margin-bottom:2px}
.logo-filter--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:8px;align-items:stretch}
.logo-filter--grid .logo-filter-lbl{grid-column:1/-1;margin-bottom:0}
.logo-filter--grid>button{width:100%;min-width:0;height:48px}
.logo-filter--grid>button img{max-height:22px;width:auto;max-width:84%}
html[lang="ar"] .logo-filter-lbl{letter-spacing:0}
.logo-pill{display:inline-flex;align-items:center;justify-content:center;height:52px;min-width:80px;padding:0 16px;background:#fff;border:1.5px solid var(--line);border-radius:11px;cursor:pointer;transition:.15s}
.logo-pill img{height:26px;width:auto;max-width:120px;display:block}
/* store/cinema logo that animates into the sticky header once the hero logo scrolls out of view */
.hdr-store{flex:0 0 auto;display:none;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:9px;height:34px;max-width:min(58vw,240px);margin-inline-start:12px;padding-inline:10px;opacity:0;overflow:hidden;transform:translateX(-6px) scale(.96);transition:opacity .28s ease,transform .28s ease;pointer-events:none}
.hdr.show-store .hdr-store{display:inline-flex}
html[dir="rtl"] .hdr-store{transform:translateX(6px) scale(.96)}
.hdr-store--dark{background:#141414;border-color:#141414}
.hdr-store img{height:22px;width:auto;flex:0 0 auto;object-fit:contain;display:block}
.hdr.show-store .hdr-store{opacity:1;transform:none}
@media(max-width:560px){.hdr-store{height:30px}.hdr-store img{height:19px}}
/* mall page: mall name revealed in the sticky header once the hero scrolls out */
.hdr-title{flex:0 1 auto;min-width:0;font-weight:700;font-size:15px;color:var(--ink);margin-inline-start:12px;max-width:0;opacity:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transform:translateX(-6px);transition:max-width .42s ease,opacity .3s ease,transform .3s ease;pointer-events:none}
html[dir="rtl"] .hdr-title{transform:translateX(6px)}
html[lang="ar"] .hdr-title{font-family:var(--arabic)}
.hdr.show-title .hdr-title{max-width:min(46vw,420px);opacity:1;transform:none}
@media(max-width:560px){.hdr-title{font-size:14px}.hdr.show-title .hdr-title{max-width:54vw}}
.coll-hero{display:flex;align-items:center;gap:clamp(18px,4vw,40px)}
.coll-hero-txt{flex:1 1 auto;min-width:0}
.coll-logo{flex:0 0 auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 28px;display:flex;align-items:center;justify-content:center;min-width:150px;min-height:96px}
.coll-logo--dark{background:#141414;border-color:#141414}
.coll-logo img{max-height:64px;max-width:210px;width:auto;height:auto;display:block}
@media(max-width:640px){
  .coll-hero{flex-direction:column-reverse;align-items:flex-start;gap:16px}
  .coll-logo{align-self:flex-start;min-height:78px;padding:16px 24px}
  .coll-logo img{max-height:52px;max-width:170px}
}
.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:4px 0 30px}
@media(min-width:560px){.hub-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:860px){.hub-grid{grid-template-columns:repeat(4,1fr)}}
.hub-grid .logo-pill{height:114px;width:100%;position:relative;border-radius:14px;padding:16px 14px 0}
.hub-grid .logo-pill img{height:30px;max-width:130px}
.store-cat{position:absolute;top:12px;inset-inline-start:12px;font-size:9px;font-weight:800;color:var(--brand);background:var(--brand-soft);border:1px solid color-mix(in srgb,var(--brand) 16%,transparent);padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.4px;line-height:1;pointer-events:none}
.store-n{position:absolute;top:11px;inset-inline-end:11px;min-width:24px;height:23px;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:800;color:var(--ink-2);background:color-mix(in srgb,var(--ink-3) 15%,transparent);border-radius:999px;padding:0 8px;line-height:1;pointer-events:none}
.hub-pills{display:flex;flex-wrap:wrap;gap:9px;margin:4px 0 30px}
/* premium homepage hero */
.home-hero{position:relative;border-radius:var(--radius);overflow:hidden;margin:10px 0 38px;min-height:clamp(330px,46vw,460px);display:flex;align-items:flex-end;background:var(--bg-3)}
.home-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}
.home-hero.loaded>img{opacity:1}
.home-hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,10,14,.92) 0%,rgba(8,10,14,.55) 42%,rgba(8,10,14,.15) 100%)}
.home-hero-inner{position:relative;z-index:1;padding:clamp(22px,4vw,44px);color:#fff;width:100%;max-width:700px}
.home-hero-eyebrow{font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.82)}
.home-hero h1{color:#fff;font-family:var(--sans);font-weight:800;font-size:clamp(30px,5.6vw,54px);line-height:1.04;letter-spacing:-1.2px;margin:10px 0 10px}
html[lang="ar"] .home-hero h1{font-family:var(--arabic)}
.home-hero p{color:rgba(255,255,255,.92);font-size:clamp(14.5px,1.9vw,18px);line-height:1.5;margin:0 0 20px;max-width:580px}
.home-hero-search{display:flex;align-items:center;gap:11px;background:#fff;color:var(--ink-3);border-radius:var(--pill);padding:15px 22px;font-size:15px;font-weight:600;max-width:520px;box-shadow:0 10px 34px rgba(0,0,0,.28);text-decoration:none}
.home-hero-search svg{flex:0 0 auto}
.home-hero-search:hover{color:var(--ink)}
.home-hero-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.home-hero-quick a{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.28);border-radius:var(--pill);padding:9px 15px;font-size:13.5px;font-weight:700;text-decoration:none;transition:background .15s}
.home-hero-quick a:hover{background:rgba(255,255,255,.3)}
.cat-grid{display:grid;grid-template-columns:1fr;gap:14px;margin:4px 0 32px}
@media(min-width:560px){.cat-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.cat-grid{grid-template-columns:repeat(3,1fr)}}
.cat-card{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;min-height:104px;padding:20px 22px;border:1.5px solid var(--card-line);border-radius:var(--radius);background:var(--paper);text-decoration:none;transition:.18s}
.cat-card:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.07)}
.cat-card-h{position:relative;z-index:2;display:flex;flex-direction:column;gap:4px;min-width:0}
.cat-card-name{font-size:20px;font-weight:800;color:var(--ink)}
.cat-card-sub{font-size:13px;color:var(--ink-3);font-weight:600}
.cat-card-bg{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;opacity:.17;-webkit-mask-image:linear-gradient(to right,transparent,#000 50%);mask-image:linear-gradient(to right,transparent,#000 50%)}
.cat-card-wall{position:absolute;top:50%;inset-inline-end:-8%;width:80%;height:230%;transform:translateY(-50%) rotate(-15deg);transform-origin:center;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:11px 15px}
.cat-card-wall img{height:23px;width:auto;max-width:82px;object-fit:contain;filter:grayscale(1)}
html[dir="rtl"] .cat-card-bg{-webkit-mask-image:linear-gradient(to left,transparent,#000 50%);mask-image:linear-gradient(to left,transparent,#000 50%)}
html[dir="rtl"] .cat-card-wall{transform:translateY(-50%) rotate(15deg)}
.cat-card:hover .cat-card-bg{opacity:.26}
:root[data-theme="dark"] .cat-card-bg{opacity:.22}
:root[data-theme="dark"] .cat-card-wall img{filter:grayscale(1) invert(1) brightness(1.1)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .cat-card-bg{opacity:.22}:root:not([data-theme="light"]) .cat-card-wall img{filter:grayscale(1) invert(1) brightness(1.1)}}
a.fpill{text-decoration:none;display:inline-flex;align-items:center;gap:7px}
a.fpill:hover{border-color:var(--brand);color:var(--brand-ink)}
.hub-n{font-size:11px;font-weight:700;color:var(--ink-3);background:var(--bg-3);border-radius:999px;padding:1px 7px}
.hub-grid .hub-n{position:absolute;top:7px;right:9px;background:transparent;padding:0}
html[dir="rtl"] .hub-grid .hub-n{right:auto;left:9px}
.logo-pill--dark{background:#141414;border-color:#141414}
.logo-pill:hover{border-color:var(--brand)}
.logo-pill.active{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}

/* luxury brand logos */
.lux-logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px}
html[lang="ar"] .lux-logos{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.lux-chip{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;min-width:0;width:100%;height:64px}
.lux-chip img{max-height:28px;max-width:86%;width:auto;height:auto;object-fit:contain;display:block}
/* Arabic UI: show the brand's Arabic name under its logo so the (Latin) logo is identifiable */
.hub-grid .logo-pill--named{height:140px;padding:46px 14px 32px}
.pill-name-ar{position:absolute;bottom:12px;inset-inline:8px;text-align:center;font-size:12px;font-weight:700;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}
.store-chip--named{flex-direction:column;gap:8px;height:auto;min-height:98px;padding:14px 12px 12px}
.store-chip--named img{max-height:34px}
.chip-name-ar{font-size:13px;font-weight:700;color:var(--ink-2);text-align:center;line-height:1.32;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.results-line strong{color:var(--ink)}

/* EMIRATE CARDS */
.em-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:8px 0 36px}
@media(min-width:640px){.em-grid{grid-template-columns:repeat(4,1fr)}}
.em-card{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);transition:.15s}
.em-card:hover{border-color:var(--brand);transform:translateY(-2px)}
.em-card .en-n{font-weight:700;font-size:16px}
.em-card .en-c{font-size:13px;color:var(--ink-3)}

/* MALL GRID */
.section-h{font-family:var(--sans);font-weight:800;font-size:clamp(22px,3.5vw,32px);margin:0 0 14px}
.section-h .sec-n{font-size:.55em;font-weight:700;color:var(--ink-3);vertical-align:middle;margin-inline-start:6px}
/* Dining hub filter */
.hub-filter{margin:0 0 26px}
.hub-search{display:flex;align-items:center;gap:10px;background:var(--paper);border:1.5px solid var(--card-line);border-radius:999px;padding:11px 18px;max-width:440px;margin:0 0 14px;color:var(--ink-3)}
.hub-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:15px;color:var(--ink);outline:none}
.cuisine-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfchip{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13px;font-weight:700;color:var(--ink-2);background:var(--paper);border:1.5px solid var(--card-line);border-radius:999px;padding:7px 14px;cursor:pointer;transition:.15s}
.cfchip:hover{border-color:var(--brand)}
.cfchip.active{background:var(--brand);border-color:var(--brand);color:#fff}
.cfchip .cf-n{font-size:11px;font-weight:800;opacity:.65}
.cfchip.active .cf-n{opacity:.9}
.hub-empty{margin:26px 2px;color:var(--ink-3);font-weight:600}
html[lang="ar"] .section-h{font-family:var(--arabic);font-weight:700}
.grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:560px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:860px){.grid{grid-template-columns:repeat(3,1fr);gap:20px}}
@media(min-width:1100px){.grid{grid-template-columns:repeat(4,1fr)}}
.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.card{display:flex;flex-direction:column;border:1.5px solid var(--card-line);border-radius:var(--radius);overflow:hidden;background:var(--paper);transition:.15s}
.card:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,.07)}
/* loading skeleton (shimmer) shown until a photo loads */
@keyframes skel{0%{background-position:-150% 0}100%{background-position:150% 0}}
/* The image fades in only once it has actually loaded. Until then the branded emirate
   gradient (defined below) shows as the placeholder — so a slow or missing image never
   flashes a broken-image icon or a blank box. */
.card-hero>img,.detail-hero>img{opacity:0;transition:opacity .45s ease}
.card-hero.loaded>img,.detail-hero.loaded>img{opacity:1}

/* card header — mirrors the mall-page hero: image/band with name + badge overlaid */
.card-hero{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--bg-3)}
.card-hero img{width:100%;height:100%;object-fit:cover;display:block}
.card-hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.78) 22%,rgba(0,0,0,.35) 45%,rgba(0,0,0,0) 72%)}
.card-ht{position:absolute;left:0;right:0;bottom:0;padding:clamp(14px,2.6vw,18px);display:flex;flex-direction:column;align-items:flex-start;gap:9px;z-index:2}
.card-ht .badge{position:static;top:auto;left:auto;right:auto}
.card-hero-name{color:#fff;font-family:var(--sans);font-weight:800;font-size:clamp(21px,3vw,26px);line-height:1.12;text-shadow:0 1px 10px rgba(0,0,0,.9)}
html[lang="ar"] .card-hero-name{font-family:var(--arabic);font-weight:700}
.card-hero--ph::before{content:"";position:absolute;inset:0;z-index:0;background-image:radial-gradient(rgba(255,255,255,.13) 1.3px,transparent 1.3px);background-size:20px 20px;opacity:.55;pointer-events:none}
.card-hero--ph::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(to top,rgba(0,0,0,.42),rgba(0,0,0,0) 48%);pointer-events:none}
.card-hero--ph .card-hero-mono{position:absolute;left:0;right:0;top:0;bottom:32%;display:flex;align-items:center;justify-content:center;z-index:1;font-family:var(--sans);font-weight:800;font-size:clamp(46px,13vw,72px);letter-spacing:2px;color:rgba(255,255,255,.36);pointer-events:none}
html[lang="ar"] .card-hero--ph .card-hero-mono{font-family:var(--arabic);font-weight:700;letter-spacing:0}
.card-hero--ph .card-ht,.card-hero--ph .badge{z-index:2}
.card-hero.abudhabi{background:linear-gradient(135deg,#1f6f63,#2b8a7a)}
.card-hero.dubai{background:linear-gradient(135deg,#9a6b2f,#bf8a4a)}
.card-hero.sharjah{background:linear-gradient(135deg,#7a4a52,#9c6068)}
.card-hero.ajman{background:linear-gradient(135deg,#4a6b7a,#5f88a0)}
.card-hero.uaq{background:linear-gradient(135deg,#6b5a7a,#8674a0)}
.card-hero.rak{background:linear-gradient(135deg,#7a5a3a,#9c764a)}
.card-hero.fujairah{background:linear-gradient(135deg,#3a6b5a,#4a8a74)}
.card-hero.alain{background:linear-gradient(135deg,#6b6b3a,#8a8a4a)}
.badge{position:absolute;top:10px;left:10px;font-size:11px;font-weight:700;color:#fff;padding:4px 10px;border-radius:var(--pill);background:var(--brand);letter-spacing:.3px}
html[dir="rtl"] .badge{left:auto;right:10px}
.badge.abudhabi{background:var(--abudhabi)}.badge.dubai{background:var(--dubai)}.badge.sharjah{background:var(--sharjah)}
.badge.ajman{background:var(--ajman)}.badge.uaq{background:var(--uaq)}.badge.rak{background:var(--rak)}
.badge.fujairah{background:var(--fujairah)}.badge.alain{background:var(--alain)}
.card-b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:7px;flex:1}
.card-n{font-weight:700;font-size:17px;line-height:1.25}
.card-a{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:5px}
.card-a .pin{width:14px;height:14px;flex:0 0 auto;opacity:.7}
.card-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:1px}
.chip{font-size:12px;font-weight:600;padding:4px 10px;border-radius:var(--pill);background:var(--bg-3);color:var(--ink-2);border:1px solid var(--line);white-space:nowrap}
.chip-stores{background:var(--brand-soft);color:var(--brand-ink);border-color:transparent}
.rating{display:flex;align-items:center;gap:6px;font-size:13px}
.stars{color:var(--gold);letter-spacing:1px}
.rnum{font-weight:700}.rev{color:var(--ink-3)}
.match{font-size:12px;color:var(--brand-ink);background:var(--brand-soft);padding:3px 9px;border-radius:var(--pill);align-self:flex-start;font-weight:600}
.card-cta{margin-top:auto;padding-top:8px;font-size:13px;font-weight:600;color:var(--brand-ink);display:flex;align-items:center;gap:5px}
.empty{padding:48px 20px;text-align:center;color:var(--ink-3);border:1px dashed var(--line);border-radius:var(--radius)}
.card-cine{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:7px;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.card-cine img{height:14px;width:auto;max-width:92px;object-fit:contain;display:block}
.card-cine--light{background:#fff}
.card-cine--dark{background:#141414}
html[dir="rtl"] .card-cine{right:auto;left:12px}
.card-dist{display:inline-flex;align-items:center;gap:5px;width:fit-content;font-size:12.5px;font-weight:800;color:var(--brand);background:var(--brand-soft);border:1px solid color-mix(in srgb,var(--brand) 22%,transparent);border-radius:999px;padding:4px 11px 4px 9px;letter-spacing:.2px}
.card-dist::before{content:"";flex:0 0 auto;width:15px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat}
.card-dist.near{color:#12a154;background:color-mix(in srgb,#12a154 13%,transparent);border-color:color-mix(in srgb,#12a154 30%,transparent)}
:root[data-theme="dark"] .card-dist.near{color:#3ddc84}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .card-dist.near{color:#3ddc84}}

/* MOBILE — bigger, app-like listing cards */
@media(max-width:560px){
  .grid{gap:16px}
  .card{border-radius:20px}
  .card:active{transform:scale(.985)}
  .card-hero{aspect-ratio:21/9}
  .card-ht{padding:18px;gap:11px}
  .card-hero-name{font-size:25px;line-height:1.1}
  .card-hero--ph .card-hero-mono{font-size:clamp(58px,18vw,84px)}
  .badge{font-size:12.5px;padding:5px 12px}
  .card-cine{height:28px;padding:0 10px}
  .card-cine img{height:16px;max-width:104px}
  .card-b{padding:18px 20px 20px;gap:11px}
  .card-a{font-size:16.5px}
  .card-a .pin{width:17px;height:17px}
  .rating{font-size:17px;gap:8px}
  .stars{font-size:18px;letter-spacing:1.5px}
  .rnum{font-size:17px}
  .card-chips{gap:9px;margin-top:3px}
  .chip{font-size:14.5px;padding:7px 14px;border-radius:14px}
  .card-dist{font-size:14px}
  .card-cta{font-size:17px;font-weight:700;padding-top:14px}
  .card-cta::after{content:"";margin-left:auto}
  html[dir="rtl"] .card-cta::after{margin-left:0;margin-right:auto}
}

/* NEAR ME */
.nearme{font:inherit;font-size:14px;font-weight:700;padding:11px 18px;border-radius:var(--pill);border:1px solid var(--brand);background:var(--brand-soft);color:var(--brand-ink);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;transition:background .15s,color .15s}
.nearme:hover{background:var(--brand);color:#fff}
.nearme.active{background:var(--brand);border-color:var(--brand);color:#fff}
.nearme.loading{opacity:.65;pointer-events:none}
.nearme-status{font-size:13.5px;font-weight:600;margin:-2px 0 16px;padding:10px 14px;border-radius:12px;background:var(--brand-soft);color:var(--brand-ink);border:1px solid var(--line)}
.nearme-status.err{background:#FDECEC;color:#B42318;border-color:#F3C0C0}
:root[data-theme="dark"] .nearme-status.err{background:#2a1414;color:#ffb4ab;border-color:#5a2a2a}

/* CINEMA card (mall page) — solid colors, no color-mix (robust everywhere) */
.cine-card{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:18px}
.cine-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.cine-logo-tile{display:inline-flex;align-items:center;justify-content:center;height:72px;min-width:120px;padding:8px 18px;border-radius:12px;border:1px solid var(--line);flex-shrink:0}
.cine-logo-tile--light{background:#fff}
.cine-logo-tile--dark{background:#141414;border-color:#141414}
.cine-logo{height:50px;width:auto;max-width:200px;display:block}
/* auto light/dark cinema logo — backdrop & logo follow the site theme (no manual tile) */
.is-adaptive{background:#fff;border-color:var(--line)}
.cl-dark{display:none}
:root[data-theme="dark"] .is-adaptive{background:#141414;border-color:#141414}
:root[data-theme="dark"] .cl-light{display:none}
:root[data-theme="dark"] .cl-dark{display:block}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .is-adaptive{background:#141414;border-color:#141414}
:root:not([data-theme="light"]) .cl-light{display:none}:root:not([data-theme="light"]) .cl-dark{display:block}}
.cine-head-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.cine-name{font-weight:800;font-size:18px;color:var(--ink)}
.cine-name:hover{color:var(--brand-ink)}
.cine-screens{font-size:13px;color:var(--ink-3)}
.cine-book{margin-left:auto;font-size:13px;font-weight:700;color:#fff;background:var(--brand);padding:11px 18px;border-radius:var(--pill);white-space:nowrap}
html[dir="rtl"] .cine-book{margin-left:0;margin-right:auto}
.cine-book:hover{background:var(--brand-ink);transform:translateY(-1px)}
.cine-halls-lbl{font-size:12px;color:var(--ink-3);margin:16px 0 9px;font-weight:600}
.cine-halls{display:flex;flex-wrap:wrap;gap:8px}
.hall-chip{font-size:12.5px;font-weight:700;padding:6px 13px;border-radius:var(--pill);background:var(--bg-3);border:1px solid var(--line);color:var(--ink)}
@media(max-width:560px){.cine-book{margin:12px 0 0;width:100%;text-align:center}}

/* MAP */
#map-view{display:none;margin-bottom:30px}
#map-view.active{display:block}
#mall-map{width:100%;height:clamp(380px,58vh,640px);border-radius:var(--radius);border:1px solid var(--line);z-index:1}
:root[data-theme="dark"] #mall-map .leaflet-tile,:root[data-theme="dark"] #mini-map .leaflet-tile{filter:brightness(.75) saturate(.85)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) #mall-map .leaflet-tile,:root:not([data-theme="light"]) #mini-map .leaflet-tile{filter:brightness(.75) saturate(.85)}}

/* MALL DETAIL */
.detail-hero{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:21/9;background:var(--bg-3);margin-bottom:22px}
/* desktop: the 21:9 hero gets too tall at full page width — halve its height */
@media(min-width:768px){.detail-hero:not(.detail-hero--ph){aspect-ratio:42/9}}
.detail-hero img{width:100%;height:100%;object-fit:cover}
.detail-hero .ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.45) 30%,rgba(0,0,0,0) 62%)}
.detail-hero .ht{position:absolute;bottom:0;left:0;right:0;padding:clamp(18px,4vw,32px);display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.detail-hero>.badge{top:clamp(14px,3vw,20px);left:clamp(14px,3vw,20px);z-index:2}
html[dir="rtl"] .detail-hero>.badge{left:auto;right:clamp(14px,3vw,20px)}
.detail-hero h1{color:#fff;font-family:var(--sans);font-weight:700;font-size:clamp(24px,4.2vw,40px);line-height:1.1;text-shadow:0 2px 18px rgba(0,0,0,.4)}
/* placeholder hero (no photo): short coloured band */
.detail-hero--ph{aspect-ratio:auto;min-height:clamp(132px,21vw,188px);background:var(--bg-3)}
.detail-hero.abudhabi{background:linear-gradient(135deg,#1f6f63,#2b8a7a)}
.detail-hero.dubai{background:linear-gradient(135deg,#9a6b2f,#bf8a4a)}
.detail-hero.sharjah{background:linear-gradient(135deg,#7a4a52,#9c6068)}
.detail-hero.ajman{background:linear-gradient(135deg,#4a6b7a,#5f88a0)}
.detail-hero.uaq{background:linear-gradient(135deg,#6b5a7a,#8674a0)}
.detail-hero.rak{background:linear-gradient(135deg,#7a5a3a,#9c764a)}
.detail-hero.fujairah{background:linear-gradient(135deg,#3a6b5a,#4a8a74)}
.detail-hero.alain{background:linear-gradient(135deg,#6b6b3a,#8a8a4a)}
.detail-hero--ph::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.12) 1.3px,transparent 1.3px);background-size:22px 22px;opacity:.5;pointer-events:none}
.detail-hero--ph .ph-mono{position:absolute;top:50%;right:7%;transform:translateY(-50%);z-index:0;font-family:var(--sans);font-weight:800;font-size:clamp(56px,11vw,104px);letter-spacing:2px;color:rgba(255,255,255,.32);pointer-events:none;line-height:1}
html[dir="rtl"] .detail-hero--ph .ph-mono{right:auto;left:7%;font-family:var(--arabic);font-weight:700;letter-spacing:0}
.detail-hero--ph .ht{z-index:1}
.detail-hero--ph .ht{gap:11px}
html[lang="ar"] .detail-hero h1{font-family:var(--arabic);font-weight:800}
.layout{display:grid;grid-template-columns:1fr;gap:30px}
@media(min-width:900px){.layout{grid-template-columns:1.7fr 1fr}}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}
.stat{border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center;background:var(--paper)}
.stat .v{font-weight:800;font-size:18px}.stat .l{font-size:12px;color:var(--ink-3);margin-top:2px}
.lbl{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}
html[lang="ar"] .lbl{letter-spacing:0}
.block{margin-bottom:28px}
.block p{color:var(--ink-2)}
/* accordion sections (mall page) */
.acc-wrap{display:flex;flex-direction:column;gap:12px}
.block.acc{margin:0;border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.block.acc.open{border-color:var(--line-2,var(--line));box-shadow:0 1px 2px rgba(0,0,0,.03),0 8px 24px rgba(0,0,0,.04)}
.acc-h{appearance:none;-webkit-appearance:none;background:transparent;border:0;margin:0;width:100%;box-sizing:border-box;display:flex;align-items:center;gap:10px;cursor:pointer;padding:15px 18px;font:inherit;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ink-2);text-align:start}
html[lang="ar"] .acc-h{letter-spacing:0}
/* section header icons */
.acc-lbl{display:inline-flex;align-items:center;gap:9px;min-width:0}
.sec-ic{width:16px;height:16px;flex:0 0 auto;opacity:.55;color:var(--brand)}
.lbl .sec-ic{vertical-align:-3px;margin-inline-end:8px}
.acc-h:hover{color:var(--ink)}
/* aside row + button icons (match the section-icon look) */
.info .k{display:inline-flex;align-items:center;gap:7px}
.info .k .sec-ic{width:14px;height:14px;margin:0;vertical-align:0}
.btn .sec-ic{width:15px;height:15px;margin-inline-end:7px;vertical-align:-3px;opacity:.75}
/* hypermarket anchor card */
.hyper-cards{display:flex;flex-wrap:wrap;gap:10px}
.hyper-card{display:inline-flex;align-items:center;gap:13px;padding:11px 16px;border:1px solid var(--card-line);border-radius:14px;background:var(--paper);text-decoration:none;transition:.15s}
.hyper-card:hover{border-color:var(--brand);box-shadow:0 4px 14px rgba(0,0,0,.05)}
.hyper-card img{height:32px;width:auto;max-width:130px;object-fit:contain}
.hyper-card span{font-weight:700;color:var(--ink);font-size:15px}
/* text wordmark fallback for brands without a logo — styled like a bold uppercase logo */
.logo-txt{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:34px;text-align:center;font-weight:800;font-size:16px;line-height:1.12;letter-spacing:.03em;text-transform:uppercase;color:var(--ink);padding:4px 8px;overflow:hidden}
.store-chip .logo-txt,.lux-chip .logo-txt{font-size:14px}
.store-chip--named .logo-txt{font-size:13px}
/* store-page category chip */
.coll-cat-chip{display:inline-block;margin:10px 0 0;padding:5px 14px;border:1px solid var(--line);border-radius:var(--pill);background:var(--paper);color:var(--brand-ink);font-size:13px;font-weight:650;text-decoration:none}
.coll-tags{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 0}
.coll-tag{display:inline-block;padding:4px 11px;border:1px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--muted);font-size:12px;font-weight:600;line-height:1.5;text-transform:capitalize}
.coll-cat-chip:hover{border-color:var(--brand)}
/* luxury brand -> mall filter */
.lux-fbtn{-webkit-appearance:none;appearance:none;font:inherit;cursor:pointer}
.lux-fbtn.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}
.lux-hint{color:var(--ink-3);font-size:14px;margin:-4px 0 12px}
.lux-banner{margin:0 0 14px;padding:10px 14px;border-radius:12px;background:var(--brand-soft);border:1px solid color-mix(in srgb,var(--brand) 30%,transparent);font-size:14px;color:var(--ink);display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.lux-banner[hidden]{display:none}
.lux-reset{-webkit-appearance:none;appearance:none;font:inherit;font-size:13px;font-weight:650;color:var(--brand-ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--pill);padding:4px 12px;cursor:pointer}
.lux-reset:hover{border-color:var(--brand)}
.acc-x{margin-inline-start:auto;width:9px;height:9px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);transform:translateY(-2px) rotate(45deg);transition:transform .3s ease;flex:0 0 auto}
.block.acc.open .acc-x{transform:translateY(1px) rotate(-135deg);border-color:var(--brand)}
.acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s ease}
.block.acc.open .acc-body{grid-template-rows:1fr}
.acc-in{overflow:hidden;min-height:0;padding:0 18px;opacity:0;transition:opacity .25s ease .04s}
.block.acc.open .acc-in{opacity:1;padding-bottom:18px}
/* in-section logo filter */
.sec-search{position:relative;margin:2px 0 14px}
.sec-search>svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--ink-3)}
html[dir="rtl"] .sec-search>svg{left:auto;right:13px}
.sec-q{width:100%;box-sizing:border-box;font:inherit;font-size:14px;padding:9px 14px 9px 40px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2,var(--paper));color:var(--ink)}
html[dir="rtl"] .sec-q{padding:9px 40px 9px 14px}
.sec-q:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);background:var(--paper)}
.sec-none{display:block;color:var(--ink-3);font-size:13.5px;padding:6px 2px}
.sec-none[hidden]{display:none}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{font-size:13px;padding:7px 13px;border-radius:var(--pill);background:var(--bg-2);border:1px solid var(--line);color:var(--ink-2)}
.brand-chip{font-size:13px;padding:7px 13px;border-radius:10px;background:var(--brand-soft);border:1px solid color-mix(in srgb,var(--brand) 25%,transparent);color:var(--brand-ink);font-weight:600}
.info{display:grid;gap:0;border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:0 16px}
.info .row{border-bottom:1px solid var(--line-2);padding:14px 0}
.info .row:last-child{border-bottom:0}
.info .k{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin-bottom:5px;font-weight:600}
.info .vv{font-weight:600;font-size:16px;line-height:1.5}
.info a{color:var(--brand-ink)}
.hours{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:0 16px}
.hours-row{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:15px;padding:13px 0;border-bottom:1px solid var(--line-2)}
.hours-row:last-child{border-bottom:0}
.hours-day{font-weight:700;color:var(--ink)}
.hours-time{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;direction:ltr}
#mini-map{width:100%;height:240px;border-radius:14px;border:1px solid var(--line);margin-bottom:14px;z-index:1}
/* when stacked (single column), give the Quick Info column clear breathing room above it */
@media(max-width:899px){ .layout{gap:30px} .layout>aside{margin-top:20px} }
/* mobile: tidier spacing (keep readable font sizes) */
@media(max-width:600px){
  .acc-wrap{gap:10px}
  aside .block{margin-bottom:20px}
  .stats{gap:8px}
  .lbl,.acc-h{font-size:13px}
  .acc-h{padding:15px 16px}
  .acc-in{padding:0 16px}
  .block.acc.open .acc-in{padding-bottom:16px}
  /* keep inputs ≥16px so iOS doesn't zoom on focus */
  .sec-q,.search input,.hub-q,input[type=search]{font-size:16px}
}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;padding:12px 18px;border-radius:var(--pill);border:1px solid var(--line);background:var(--paper);color:var(--ink);width:100%;justify-content:center;margin-bottom:10px;cursor:pointer}
.btn.pri{background:var(--brand);border-color:var(--brand);color:#fff}
.btn:hover{transform:translateY(-1px)}
.attrib{font-size:11px;color:var(--ink-3);margin-top:8px}
.attrib a{text-decoration:underline}

/* FOOTER */
.ftr{border-top:1px solid var(--line);margin-top:48px;padding:34px 0 44px;background:var(--bg-2)}
.ftr-in{max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,4vw,28px);display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}
.ftr p{font-size:14px;color:var(--ink-2);max-width:420px;margin-top:8px}
.ftr .note{font-size:12px;color:var(--ink-3);margin-top:10px;max-width:520px}
.ftr a.link{color:var(--brand-ink);font-size:13px;text-decoration:underline}
.theme-toggle{display:inline-flex;border:1px solid var(--line);border-radius:var(--pill);overflow:hidden;margin-top:14px}
.theme-toggle button{font:inherit;font-size:13px;padding:7px 14px;border:0;background:var(--paper);color:var(--ink-2);cursor:pointer}
.theme-toggle button.active{background:var(--brand);color:#fff}
.footcols{display:flex;gap:40px;flex-wrap:wrap}
.footcols h4{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-3);margin-bottom:8px}
.footcols a{display:block;font-size:14px;color:var(--ink-2);padding:2px 0}
.footcols a:hover{color:var(--brand)}
