/* Trade In Plus — homepage styles (extracted from the inline style blocks for caching) */
    *{margin:0;padding:0;box-sizing:border-box}
    html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
    :root{
      --black:#0a0a0a;
      --white:#ffffff;
      --silver:#f0f0f2;
      --silver-dark:#e5e5e7;
      --mid:#6e6e73;
      --accent:#1d7a4e;
      --danger:#c0392b;
      --warn:#f5a623;
      --font-ar:'IBM Plex Sans Arabic',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
      --font-en:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
      --shadow-sm:0 4px 12px rgba(0,0,0,0.06);
      --shadow-md:0 12px 30px rgba(0,0,0,0.13);
      --shadow-lg:0 16px 36px rgba(0,0,0,0.08);
      --radius-sm:14px;
      --radius-md:18px;
      --radius-lg:20px;
      --radius-xl:24px;
    }
    html,body{overflow-x:hidden}
    body{font-family:var(--font-ar);background:var(--white);color:var(--black);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

    /* Latin/English content uses Inter */
    [lang="en"]{font-family:var(--font-en)}

    /* ─── ACCESSIBILITY: Focus & Skip Link ─── */
    *:focus{outline:none}
    *:focus-visible{outline:2.5px solid #2997ff;outline-offset:3px;border-radius:4px}
    .skip-link{
      position:absolute;
      top:-100px;
      right:1rem;
      background:#fff;
      color:#000;
      padding:12px 24px;
      border-radius:8px;
      font-weight:700;
      text-decoration:none;
      z-index:9999;
      box-shadow:var(--shadow-md);
      transition:top 0.2s;
    }
    .skip-link:focus{top:1rem}
    .sr-only{
      position:absolute;
      width:1px;height:1px;
      padding:0;margin:-1px;
      overflow:hidden;
      clip:rect(0,0,0,0);
      white-space:nowrap;
      border:0;
    }

    /* ─── NAVBAR ─── */
    .site-header{
      background:#0a0a0a;
      position:sticky;
      top:0;
      z-index:1000;
      border-bottom:1px solid rgba(255,255,255,0.06);
    }
    .site-nav{
      height:68px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      direction:ltr;
      padding:0 2.5rem;
      max-width:1440px;
      margin:0 auto;
    }
    .logo-mark{width:36px;height:36px;flex-shrink:0}.logo{display:inline-flex!important;align-items:center;gap:.6rem;direction:ltr;color:#fff!important;font-family:var(--font-en);font-weight:800;font-size:22px;letter-spacing:0;text-decoration:none;line-height:1;flex-shrink:0;opacity:1!important;visibility:visible!important}.logo img{display:block!important;width:auto;height:26px;max-width:80px;object-fit:contain;opacity:0.65!important;visibility:visible!important}.logo span{display:inline-block;white-space:nowrap;color:#fff!important;opacity:1!important;visibility:visible!important}
    .nav-links{display:flex;gap:2.5rem;list-style:none}
    .nav-links a{
      color:rgba(255,255,255,0.7);
      text-decoration:none;
      font-size:14.5px;
      font-weight:500;
      transition:color 0.2s;
      font-family:var(--font-en);
    }
    .nav-links a:hover,.nav-links a:focus-visible{color:#fff}
    .nav-actions{display:flex;align-items:center;gap:1.2rem}
    .nav-icon{
      background:none;
      border:none;
      color:rgba(255,255,255,0.7);
      cursor:pointer;
      padding:8px;
      transition:color 0.2s;
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .nav-icon:hover,.nav-icon:focus-visible{color:#fff}
    .nav-icon svg{width:22px;height:22px}
    .nav-cta{
      background:#fff;
      color:#000;
      padding:9px 22px;
      border-radius:30px;
      font-size:13.5px;
      font-weight:700;
      text-decoration:none;
      font-family:var(--font-ar);
      transition:background 0.2s,transform 0.2s;
    }
    .nav-cta:hover,.nav-cta:focus-visible{background:#e8e8e8}
    .hamburger{
      display:none;
      background:none;
      border:none;
      cursor:pointer;
      padding:8px;
      color:#fff;
      border-radius:8px;
    }
    .hamburger svg{width:24px;height:24px}

    /* ─── HERO ─── */
    .hero{
      min-height:100vh;
      background:linear-gradient(160deg,#0a0a0a 0%,#111 40%,#0d0d0d 100%);
      display:flex;
      align-items:flex-start;
      justify-content:center;
      padding:6rem 2.5rem 0;
      position:relative;
      overflow:hidden;
      text-align:center;
    }
    .hero-products{
      position:absolute;
      bottom:28%;
      left:50%;
      transform:translateX(-50%);
      width:min(1600px,100%);
      height:80%;
      z-index:0;
      pointer-events:none;
    }
    .hero-products::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:35%;
      background:
        linear-gradient(180deg,transparent 0%,rgba(0,0,0,0.25) 40%,rgba(0,0,0,0.6) 80%,rgba(0,0,0,0.8) 100%);
      z-index:10;
      pointer-events:none;
    }
    .hero-product{
      position:absolute;
      bottom:0;
      object-fit:contain;
      pointer-events:none;
      filter:drop-shadow(0 20px 60px rgba(0,0,0,0.6));
    }
    /* All products — bigger & side by side */
    .hero-product--imac{
      height:40%;
      left:-4%;
      z-index:1;
      opacity:0.75;
      filter:drop-shadow(0 20px 50px rgba(0,0,0,0.7));
    }
    .hero-product--macbook{
      height:36%;
      left:7%;
      z-index:2;
      opacity:0.85;
      filter:drop-shadow(0 20px 50px rgba(0,0,0,0.7));
    }
    .hero-product--ipad{
      height:56%;
      left:16%;
      z-index:3;
      opacity:0.9;
      filter:drop-shadow(0 15px 40px rgba(0,0,0,0.6));
    }
    .hero-product--iphone2{
      height:64%;
      left:28%;
      z-index:4;
      opacity:0.9;
      filter:drop-shadow(0 12px 35px rgba(0,0,0,0.6));
    }
    /* Center anchor: iPhone 17 Pro Max */
    .hero-product--iphone{
      height:82%;
      left:50%;
      transform:translateX(-50%);
      z-index:5;
      filter:drop-shadow(0 10px 40px rgba(0,0,0,0.7)) drop-shadow(0 -10px 60px rgba(255,255,255,0.06));
    }
    .hero-product--airpods-max{
      height:54%;
      right:31%;
      z-index:4;
      opacity:0.9;
      filter:drop-shadow(0 12px 35px rgba(0,0,0,0.6));
    }
    .hero-product--watch{
      height:40%;
      right:19%;
      z-index:3;
      opacity:0.93;
      filter:drop-shadow(0 15px 40px rgba(0,0,0,0.5));
    }
    .hero-product--ipad-mini{
      height:54%;
      right:4%;
      z-index:3;
      opacity:0.86;
      filter:drop-shadow(0 10px 30px rgba(0,0,0,0.6));
    }
    .hero-product--watch2{
      height:34%;
      right:-4%;
      z-index:2;
      opacity:0.82;
      filter:drop-shadow(0 10px 30px rgba(0,0,0,0.5));
    }
    .hero-product--airpods{
      height:28%;
      left:43%;
      z-index:6;
      opacity:0.9;
      filter:drop-shadow(0 10px 30px rgba(0,0,0,0.5));
    }
    /* ─── DROP KEYFRAMES — from different directions with floor impact ─── */
    /* From RIGHT (off-screen) — flies in spinning */
    @keyframes hero-fly-right{
      0%{transform:translate(140vw,-30vh) rotate(45deg);opacity:0}
      25%{opacity:1}
      55%{transform:translate(0,30px) rotate(-8deg)}     /* lands with overshoot */
      62%{transform:translate(0,30px) rotate(-8deg)}     /* impact pause */
      75%{transform:translate(0,-18px) rotate(4deg)}     /* bounce up */
      85%{transform:translate(0,8px) rotate(-2deg)}
      95%{transform:translate(0,-3px) rotate(0.5deg)}
      100%{transform:translate(0,0) rotate(0)}
    }
    /* From LEFT (off-screen) — flies in spinning */
    @keyframes hero-fly-left{
      0%{transform:translate(-140vw,-30vh) rotate(-50deg);opacity:0}
      25%{opacity:1}
      55%{transform:translate(0,30px) rotate(10deg)}
      62%{transform:translate(0,30px) rotate(10deg)}
      75%{transform:translate(0,-18px) rotate(-5deg)}
      85%{transform:translate(0,8px) rotate(2deg)}
      95%{transform:translate(0,-3px) rotate(-0.5deg)}
      100%{transform:translate(0,0) rotate(0)}
    }
    /* From TOP — straight down */
    @keyframes hero-fly-top{
      0%{transform:translateY(-150vh) rotate(-15deg);opacity:0}
      30%{opacity:1}
      55%{transform:translateY(32px) rotate(6deg)}
      62%{transform:translateY(32px) rotate(6deg)}
      75%{transform:translateY(-16px) rotate(-3deg)}
      85%{transform:translateY(7px) rotate(1deg)}
      95%{transform:translateY(-2px) rotate(-0.3deg)}
      100%{transform:translateY(0) rotate(0)}
    }
    /* From TOP-RIGHT diagonal */
    @keyframes hero-fly-tr{
      0%{transform:translate(80vw,-110vh) rotate(35deg);opacity:0}
      28%{opacity:1}
      55%{transform:translate(0,28px) rotate(-6deg)}
      62%{transform:translate(0,28px) rotate(-6deg)}
      75%{transform:translate(0,-15px) rotate(3deg)}
      85%{transform:translate(0,6px) rotate(-1deg)}
      100%{transform:translate(0,0) rotate(0)}
    }
    /* From TOP-LEFT diagonal */
    @keyframes hero-fly-tl{
      0%{transform:translate(-80vw,-110vh) rotate(-35deg);opacity:0}
      28%{opacity:1}
      55%{transform:translate(0,28px) rotate(7deg)}
      62%{transform:translate(0,28px) rotate(7deg)}
      75%{transform:translate(0,-15px) rotate(-3deg)}
      85%{transform:translate(0,6px) rotate(1deg)}
      100%{transform:translate(0,0) rotate(0)}
    }
    /* Center anchor — special (preserves translateX(-50%)) */
    @keyframes hero-fly-center{
      0%{transform:translateX(-50%) translateY(-160vh) rotate(-10deg);opacity:0}
      30%{opacity:1}
      55%{transform:translateX(-50%) translateY(36px) rotate(4deg)}
      62%{transform:translateX(-50%) translateY(36px) rotate(4deg)}
      75%{transform:translateX(-50%) translateY(-20px) rotate(-2deg)}
      85%{transform:translateX(-50%) translateY(8px) rotate(0.8deg)}
      95%{transform:translateX(-50%) translateY(-3px) rotate(-0.2deg)}
      100%{transform:translateX(-50%) translateY(0) rotate(0)}
    }
    /* ─── GROUND SHAKE — fires when items hit ─── */
    @keyframes ground-shake{
      0%,100%{transform:translateX(-50%) translateY(0)}
      20%{transform:translateX(calc(-50% - 4px)) translateY(1px)}
      40%{transform:translateX(calc(-50% + 3px)) translateY(-1px)}
      60%{transform:translateX(calc(-50% - 2px)) translateY(1px)}
      80%{transform:translateX(calc(-50% + 1px)) translateY(0)}
    }
    /* Idle float after landing */
    @keyframes hero-float{
      0%,100%{transform:translateY(0)}
      50%{transform:translateY(-14px)}
    }
    @keyframes hero-float-center{
      0%,100%{transform:translateX(-50%) translateY(0)}
      50%{transform:translateX(-50%) translateY(-10px)}
    }
    /* ─── ASSIGN: random direction + random timing for each device ─── */
    .hero-product--imac{animation:hero-fly-left 2.1s cubic-bezier(.34,1.2,.64,1) 0.7s both}
    .hero-product--macbook{animation:hero-fly-tl 1.95s cubic-bezier(.34,1.2,.64,1) 0.2s both}
    .hero-product--ipad{animation:hero-fly-right 2.05s cubic-bezier(.34,1.2,.64,1) 1.1s both,hero-float 5.5s ease-in-out 4.0s infinite}
    .hero-product--iphone2{animation:hero-fly-top 1.85s cubic-bezier(.34,1.2,.64,1) 0.5s both,hero-float 5s ease-in-out 3.5s infinite}
    /* LCP anchor — flies in first (0s delay) so the largest hero element paints
       immediately. Was 1.4s, which held it at opacity:0 and pushed LCP to ~2.27s.
       Float delay keeps the original 1.1s gap after the fly-in lands. */
    .hero-product--iphone{animation:hero-fly-center 2.0s cubic-bezier(.34,1.2,.64,1) 0s both,hero-float-center 5s ease-in-out 3.1s infinite}
    .hero-product--airpods-max{animation:hero-fly-tr 1.9s cubic-bezier(.34,1.2,.64,1) 0.9s both,hero-float 6.5s ease-in-out 4.2s infinite}
    .hero-product--watch{animation:hero-fly-left 1.7s cubic-bezier(.34,1.2,.64,1) 0.0s both,hero-float 4s ease-in-out 2.8s infinite}
    .hero-product--ipad-mini{animation:hero-fly-right 1.95s cubic-bezier(.34,1.2,.64,1) 0.35s both,hero-float 5.8s ease-in-out 3.7s infinite}
    .hero-product--watch2{animation:hero-fly-top 1.75s cubic-bezier(.34,1.2,.64,1) 1.2s both,hero-float 4.5s ease-in-out 4.1s infinite}
    .hero-product--airpods{animation:hero-fly-tr 1.65s cubic-bezier(.34,1.2,.64,1) 1.6s both,hero-float 6s ease-in-out 4.4s infinite}
    /* Container shakes when biggest impact happens */
    .hero-products{will-change:transform}
    .hero-products.is-impact{animation:ground-shake 0.45s ease-out}
    .hero-overlay{
      position:absolute;
      inset:0;
      background:
        radial-gradient(ellipse 80% 50% at 50% 25%,rgba(10,10,10,0.5) 0%,rgba(10,10,10,0.15) 50%,transparent 100%),
        linear-gradient(180deg,rgba(10,10,10,0.4) 0%,transparent 25%,transparent 55%,rgba(10,10,10,0.85) 100%);
      z-index:1;
      pointer-events:none;
    }
    .hero-glow{display:none}
    @media (prefers-reduced-motion: reduce){
      .hero-product{animation:none !important}
    }
    .hero-circle{
      position:absolute;
      width:800px;height:800px;
      border-radius:50%;
      background:radial-gradient(circle,rgba(255,255,255,0.03) 0%,transparent 65%);
      top:50%;left:50%;
      transform:translate(-50%,-50%);
      pointer-events:none;
    }
    .hero-line{
      position:absolute;
      width:1px;
      height:100%;
      background:linear-gradient(to bottom,transparent,rgba(255,255,255,0.05),transparent);
      top:0;
      pointer-events:none;
    }
    .hero-line:nth-of-type(1){left:25%}
    .hero-line:nth-of-type(2){left:50%}
    .hero-line:nth-of-type(3){left:75%}
    .hero-content{position:relative;z-index:2;max-width:750px}
    .hero-badge{
      display:inline-block;
      background:rgba(255,255,255,0.06);
      border:1px solid rgba(255,255,255,0.12);
      color:rgba(255,255,255,0.8);
      font-family:var(--font-en);
      font-size:13px;
      font-weight:600;
      letter-spacing:2.5px;
      text-transform:uppercase;
      padding:8px 22px;
      border-radius:50px;
      margin-bottom:2.2rem;
    }
    .hero-brand{
      font-family:var(--font-en);
      font-size:clamp(4rem,9vw,7rem);
      font-weight:800;
      color:#fff;
      letter-spacing:-3px;
      line-height:1;
      /* .hero-brand-plus is absolutely positioned and hangs below the baseline,
         so it contributes nothing to this box and the paragraph underneath used
         to flow straight through it.
         This has to be MARGIN, not padding: the Plus is positioned against this
         element's padding box, so padding-bottom pushes the Plus down by the
         same amount it pushes the paragraph and the overlap survives. Margin
         leaves the padding box — and therefore the Plus — exactly where it is.
         The overhang is proportional to the headline, so it is expressed in em:
         the Plus sits at bottom:-0.72em of its own 0.42em size and its scribble
         hangs a further 0.32em, i.e. (0.72 + 0.32) x 0.42 = 0.44em here. */
      margin-bottom:calc(1.4rem + 0.44em);
      text-shadow:0 4px 30px rgba(0,0,0,0.5);
      display:inline-block;
      position:relative;
      direction:ltr;
    }
    .hero-brand span{color:rgba(255,255,255,0.25);font-weight:300}
    .hero-brand-plus{
      position:absolute;
      display:inline-block;
      bottom:-0.72em;
      left:100%;
      font-size:0.42em;
      color:#fff;
      animation:tipGlitchShift 2s steps(1) infinite;
    }
    /* RGB-split ghost copies — hidden most of the time, flash into view
       during the same short glitch window as the base word's jitter. */
    .hero-brand-plus::before,
    .hero-brand-plus::after{
      content:attr(data-text);
      position:absolute;
      inset:0;
      opacity:0;
      pointer-events:none;
    }
    .hero-brand-plus::before{
      color:#0ff;
      z-index:-1;
      animation:tipGlitchGhostA 2s steps(1) infinite;
    }
    .hero-brand-plus::after{
      color:#f0f;
      z-index:-2;
      animation:tipGlitchGhostB 2s steps(1) infinite;
    }
    .hero-brand-plus .plus-scribble{
      position:absolute;
      left:-6%;
      bottom:-0.32em;
      width:112%;
      height:0.55em;
      overflow:visible;
      pointer-events:none;
    }
    /* The glitch lives only in a ~0.35s window of every 4s cycle */
    @keyframes tipGlitchShift{
      0%,88%,100%{transform:translate(0);clip-path:none}
      89%{transform:translate(-3px,1px);clip-path:inset(10% 0 55% 0)}
      90%{transform:translate(3px,-2px);clip-path:inset(50% 0 15% 0)}
      91%{transform:translate(-2px,2px);clip-path:inset(25% 0 40% 0)}
      92%{transform:translate(2px,-1px);clip-path:inset(60% 0 5% 0)}
      93%{transform:translate(0);clip-path:none}
    }
    @keyframes tipGlitchGhostA{
      0%,88%,93%,100%{opacity:0;transform:translate(0)}
      89%{opacity:.85;transform:translate(5px,-2px)}
      91%{opacity:.85;transform:translate(-4px,2px)}
    }
    @keyframes tipGlitchGhostB{
      0%,88%,93%,100%{opacity:0;transform:translate(0)}
      90%{opacity:.85;transform:translate(-5px,2px)}
      92%{opacity:.85;transform:translate(4px,-1px)}
    }
    @media (prefers-reduced-motion:reduce){
      .hero-brand-plus,
      .hero-brand-plus::before,
      .hero-brand-plus::after{animation:none}
      .hero-brand-plus::before,
      .hero-brand-plus::after{opacity:0}
    }
    .hero-tagline{
      font-family:var(--font-en);
      font-size:13px;
      letter-spacing:5px;
      color:rgba(255,255,255,0.58);
      text-transform:uppercase;
      margin-bottom:2rem;
    }
    .hero-desc{
      font-size:19px;
      color:rgba(255,255,255,0.6);
      line-height:2;
      max-width:580px;
      margin:0 auto 3rem;
    }
    .hero-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
    .btn{
      padding:16px 36px;
      border-radius:32px;
      font-size:16.5px;
      font-weight:600;
      text-decoration:none;
      display:inline-flex;
      align-items:center;
      gap:8px;
      transition:background 0.3s,transform 0.3s,box-shadow 0.3s,border-color 0.3s;
      font-family:var(--font-ar);
      cursor:pointer;
      border:none;
    }
    .btn-arrow{font-family:var(--font-en);font-size:1.1em;line-height:1}
    .btn-white{background:#fff;color:#000}
    .btn-white:hover,.btn-white:focus-visible{background:#f0f0f0;transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,0.3)}
    .btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,0.3)}
    .btn-ghost:hover,.btn-ghost:focus-visible{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.6);transform:translateY(-3px)}

    /* ─── STATS BAR ─── */
    .stats-bar{
      background:#f8f8f8;
      border-bottom:1px solid #ebebeb;
      padding:2rem 2.5rem;
      display:flex;
      justify-content:center;
      gap:5rem;
      flex-wrap:wrap;
    }
    .stat{text-align:center}
    .stat-num{
      font-family:var(--font-en);
      font-size:2.1rem;
      font-weight:800;
      color:var(--black);
      letter-spacing:-1px;
    }
    .stat-lbl{font-size:13.5px;color:var(--mid);margin-top:3px}

    /* ─── SECTIONS ─── */
    .section{padding:6.5rem 2.5rem;max-width:1320px;margin:0 auto}
    .sec-head{text-align:center;margin-bottom:3.5rem}
    .sec-eyebrow{
      font-family:var(--font-en);
      font-size:13px;
      letter-spacing:3px;
      color:var(--mid);
      text-transform:uppercase;
      margin-bottom:0.8rem;
    }
.sec-title, .tradein-title{font-size:2.6rem;font-weight:700;letter-spacing:-0.5px;line-height:1.2}
    .sec-desc{color:var(--mid);margin-top:.7rem;font-size:15px}

    /* ─── CATEGORIES ─── */
    .cat-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:20px;
      list-style:none;
    }
    @media(max-width:900px){.cat-grid{grid-template-columns:repeat(2,1fr);gap:14px}}
    @media(max-width:480px){.cat-grid{grid-template-columns:repeat(2,1fr);gap:10px}}
    @media(max-width:360px){.cat-grid{grid-template-columns:repeat(2,1fr);gap:8px}}
    .cat-item{position:relative}
    .cat-card{
      background:var(--silver);
      border:none;
      border-radius:20px;
      padding:0;
      text-align:center;
      cursor:pointer;
      transition:background 0.25s,transform 0.25s,box-shadow 0.25s;
      text-decoration:none;
      color:inherit;
      display:block;
      width:100%;
      overflow:hidden;
      font-family:var(--font-ar);
    }
    .cat-card:hover,
    .cat-card[aria-expanded="true"]{
      background:var(--silver-dark);
      transform:translateY(-3px);
      box-shadow:0 14px 30px rgba(0,0,0,0.08);
    }
    .cat-img{
      width:100%;
      height:200px;
      background:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
      transition:transform 0.35s;
      padding:1.5rem;
      border-bottom:1px solid rgba(0,0,0,0.04);
    }
    .cat-img img{max-width:92%;max-height:90%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(0,0,0,0.14));transition:transform .35s,opacity .22s ease}
    [data-department-cover],.cat-card[data-home-cover] .cat-img img{opacity:0}
    [data-department-cover].live-cover-ready,.cat-card[data-home-cover].live-cover-ready .cat-img img{opacity:1}
    .cat-card:hover .cat-img img{transform:scale(1.05)}
    .cat-info{padding:1.4rem 1rem 1.5rem}
    .cat-name{font-size:17px;font-weight:700;margin-bottom:5px;font-family:var(--font-en);color:#0a0a0a}
    .cat-count{font-size:13px;color:var(--mid);font-family:var(--font-en);font-weight:500}
    .cat-arrow{
      display:inline-block;
      font-size:13px;
      color:var(--mid);
      margin-inline-start:3px;
      transition:transform 0.2s;
      vertical-align:middle;
    }
    .cat-card[aria-expanded="true"] .cat-arrow{transform:rotate(180deg)}
    @media(max-width:640px){
      .cat-img{height:170px;padding:1.2rem}
      .cat-info{padding:1.1rem 0.8rem 1.2rem}
    }
    .cat-dropdown{
      position:absolute;
      top:calc(100% + 8px);
      right:0;
      left:0;
      background:#fff;
      border-radius:14px;
      box-shadow:0 12px 40px rgba(0,0,0,0.13);
      padding:0.5rem 0;
      z-index:200;
      border:1px solid rgba(0,0,0,0.06);
      list-style:none;
      max-height:min(70vh, 480px);
      overflow-y:auto;
      overscroll-behavior:contain;
    }
    .cat-dropdown::-webkit-scrollbar{width:8px}
    .cat-dropdown::-webkit-scrollbar-track{background:transparent}
    .cat-dropdown::-webkit-scrollbar-thumb{background:#d4d4d4;border-radius:4px}
    .cat-dropdown::-webkit-scrollbar-thumb:hover{background:#b0b0b0}
    .cat-dropdown[hidden]{display:none}
    .cat-dropdown a{
      display:block;
      padding:9px 16px;
      font-size:13.5px;
      color:#1a1a1a;
      text-decoration:none;
      transition:background 0.15s;
      font-family:var(--font-en);
      font-weight:500;
      text-align:start;
    }
    .cat-dropdown a:hover,.cat-dropdown a:focus-visible{background:#f5f5f7}
    .cat-dropdown .drop-divider{height:1px;background:#f0f0f2;margin:4px 0;list-style:none}
    .cat-dropdown .drop-group{padding:10px 16px 5px;color:#77777d;font-family:var(--font-en);font-size:13px;font-weight:800;text-align:end;text-transform:uppercase;letter-spacing:.08em;list-style:none}

    /* Curated Apple storefront */
    #shop{padding-top:5.5rem}
    #shop .sec-head,.home-products .sec-head{text-align:start;margin-bottom:2rem}
#shop .sec-title, .home-products .sec-title, #shop .tradein-title, .home-products .tradein-title{font-size:clamp(2rem,4vw,3.35rem);letter-spacing:-.04em}
    #shop .sec-desc,.home-products .sec-desc{max-width:640px;margin:.65rem 0 0;color:#66666d;line-height:1.8}
    #shop .cat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
    #shop .cat-card{border:1px solid rgba(0,0,0,.065);background:#f7f7f8;border-radius:18px}
    #shop .cat-img{height:220px;padding:1.8rem;background:#fff}
    #shop .cat-info{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:start;padding:1.15rem 1.25rem 1.25rem}
    #shop .cat-name{margin:0;font-size:18px}
    #shop .cat-count{direction:inherit;text-align:end}
    .home-optional-category{display:list-item}
    .home-products{max-width:none;background:#f7f7f8;padding-block:5.5rem}
    .home-products>.home-section-inner{max-width:1240px;margin:0 auto}
    .home-products .prod-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
    .home-products .prod-card{height:100%;padding:1rem;border:1px solid rgba(0,0,0,.065);border-radius:18px;background:#fff;box-shadow:0 14px 40px -34px rgba(0,0,0,.45)}
    .home-products .prod-img-wrap{height:210px;margin-bottom:1rem;border-radius:13px;background:#f8f8f9}
    .home-products .prod-name{min-height:44px;line-height:1.35}
    .home-products .prod-storage{min-height:42px;line-height:1.5}
    .home-products--white{background:#fff}
    .home-products--white .prod-card{background:#f7f7f8}
    .home-products--white .prod-img-wrap{background:#fff}
    .home-section-link{display:inline-flex;align-items:center;gap:8px;margin-top:1rem;color:#111;font-weight:800;text-decoration:none;border-bottom:1px solid #b9b9bd;padding-bottom:4px}
    @media(max-width:980px){
      #shop .cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .home-products .prod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    }
    @media(max-width:560px){
      #shop{padding-top:3.5rem}
      #shop .cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
      #shop .cat-img{height:145px;padding:1rem}
      #shop .cat-info{display:block;padding:.9rem}
      #shop .cat-name{font-size:15px}
      #shop .cat-count{display:block;text-align:start;margin-top:4px;font-size:13px}
      .home-products{padding-block:3.75rem}
      .home-products .prod-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
      .home-products .prod-card{padding:.65rem;border-radius:14px}
      .home-products .prod-img-wrap{height:145px;border-radius:10px}
      .home-products .prod-name{font-size:14px;min-height:38px}
      .home-products .prod-storage{font-size:13px;min-height:36px}
      .home-products .prod-row{align-items:flex-end;gap:5px}
      .home-products .prod-price{font-size:15px}
      .home-products .prod-badge{padding:4px 7px;font-size:13px}
    }

    /* ─── FEATURED PRODUCTS ─── */
    .prod-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
      gap:20px;
      list-style:none;
    }
    .prod-card{
      background:var(--silver);
      border-radius:22px;
      padding:1.9rem;
      cursor:pointer;
      transition:transform 0.3s,box-shadow 0.3s,background 0.3s;
      display:block;
      color:inherit;
      text-decoration:none;
    }
    .prod-card:hover,
    .prod-card:focus-visible{transform:translateY(-5px);box-shadow:var(--shadow-lg);background:var(--silver-dark)}
    .prod-img-wrap{
      background:#fff;
      border-radius:16px;
      height:200px;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:1.3rem;
      overflow:hidden;
    }
    .prod-img-wrap img,.prod-img-wrap svg{max-width:82%;max-height:82%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 16px 24px rgba(0,0,0,0.14));transition:transform 0.3s}
    .prod-img-wrap img{mix-blend-mode:multiply}
    .prod-img-wrap svg{width:78%;height:78%}
    .prod-card:hover .prod-img-wrap img,.prod-card:hover .prod-img-wrap svg{transform:scale(1.04)}
    .prod-cat{font-size:13px;color:var(--mid);text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-en);margin-bottom:5px}
    .prod-name{font-size:17px;font-weight:600;margin-bottom:4px}
    .prod-storage{font-size:14px;color:var(--mid);margin-bottom:1rem}
    .prod-row{display:flex;align-items:center;justify-content:space-between}
    .prod-price{font-family:var(--font-en);font-size:19px;font-weight:800;letter-spacing:-0.5px}
    .prod-badge{
      font-size:13px;
      font-weight:700;
      padding:5px 12px;
      border-radius:30px;
      font-family:var(--font-en);
      letter-spacing:0.5px;
    }
    .badge-new{background:#0a0a0a;color:#fff}
    .badge-available{background:var(--silver-dark);color:#424246}
    .badge-sale{background:var(--danger);color:#fff}

    /* ─── TRADE IN ─── */
    .tradein-section{background:#0a0a0a;padding:6rem 2rem;text-align:center}
    .tradein-inner{max-width:760px;margin:0 auto}
    .tradein-eyebrow{
      font-family:var(--font-en);
      font-size:13px;
      letter-spacing:3px;
      color:rgba(255,255,255,0.58);
      text-transform:uppercase;
      margin-bottom:1.2rem;
    }
.tradein-title{font-size:3.1rem;font-weight:800;color:#fff;margin-bottom:1.2rem;letter-spacing:-1px;line-height:1.15}
    .tradein-desc{font-size:18px;color:rgba(255,255,255,0.55);line-height:1.9;margin-bottom:2rem}
    /* Three-step timeline: numbered rings joined by connectors, step name under
       each. Plain flex + CSS — no animation runtime. RTL puts step 1 on the
       right automatically. It stacks vertically on phones instead of shrinking
       the rings into invisibility. */
    .tradein-steps-viz{display:flex;align-items:flex-start;justify-content:center;width:100%;max-width:680px;margin:0 auto 2.4rem}
    .tradein-step{display:flex;flex-direction:column;align-items:center;gap:.85rem;flex:0 0 auto;width:110px}
    .tradein-step-ring{
      display:grid;place-items:center;width:56px;height:56px;border-radius:50%;
      border:1.5px solid rgba(255,255,255,0.28);
      background:rgba(255,255,255,0.04);
      font-size:19px;font-weight:600;color:#fff;line-height:1;
      transition:border-color .5s ease,background .5s ease,transform .5s ease;
    }
    .tradein-step-name{font-family:var(--font-ar,'IBM Plex Sans Arabic',sans-serif);font-size:15px;font-weight:500;color:rgba(255,255,255,0.82);white-space:nowrap}
    .tradein-step-link{flex:1 1 auto;height:1px;background:rgba(255,255,255,0.18);margin-top:27.5px;max-width:120px}
    /* Rings light up in sequence once the section scrolls into view. */
    .tradein-steps-viz.is-live .tradein-step-ring{border-color:rgba(255,255,255,0.75);background:rgba(255,255,255,0.1);transform:scale(1.04)}
    .tradein-steps-viz.is-live .tradein-step:nth-child(3) .tradein-step-ring{transition-delay:.18s}
    .tradein-steps-viz.is-live .tradein-step:nth-child(5) .tradein-step-ring{transition-delay:.36s}
    @media (prefers-reduced-motion:reduce){
      .tradein-step-ring{transition:none}
    }
    @media (max-width:560px){
      .tradein-steps-viz{flex-direction:column;align-items:center;gap:.5rem;margin-bottom:2rem}
      .tradein-step{flex-direction:row;gap:.9rem;width:auto;min-width:190px;justify-content:flex-start}
      .tradein-step-ring{width:44px;height:44px;font-size:16px}
      .tradein-step-link{width:1px;height:20px;flex:0 0 auto;margin-top:0;max-width:none}
    }
    .tradein-steps{
      display:flex;
      justify-content:center;
      gap:0;
      margin-bottom:3rem;
      flex-wrap:wrap;
      list-style:none;
    }
    .tstep{
      text-align:center;
      max-width:180px;
      padding:0 1.5rem;
      position:relative;
    }
    .tstep:not(:last-child)::after{
      content:'←';
      position:absolute;
      left:0;
      top:1rem;
      color:rgba(255,255,255,0.15);
      font-size:1.2rem;
      font-family:var(--font-en);
      pointer-events:none;
    }
    .tstep-num{
      font-family:var(--font-en);
      font-size:2.5rem;
      font-weight:800;
      color:rgba(255,255,255,0.36);
      line-height:1;
      margin-bottom:0.8rem;
    }
    .tstep-text{font-size:14px;color:rgba(255,255,255,0.68);line-height:1.6}
    .tradein-cta{
      background:#fff;
      color:#000;
      padding:16px 44px;
      border-radius:30px;
      font-size:16px;
      font-weight:700;
      text-decoration:none;
      display:inline-block;
      font-family:var(--font-ar);
      transition:background 0.3s,transform 0.3s,box-shadow 0.3s;
    }
    .tradein-cta:hover,
    .tradein-cta:focus-visible{background:#e8e8e8;transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,0.5)}
    .tradein-note{margin-top:1.5rem;font-size:13px;color:rgba(255,255,255,0.58);font-family:var(--font-en)}
    .tradein-cta{border:0;cursor:pointer}

    /* ─── TRADE IN PORTAL ─── */
    .trade-portal{
      position:fixed;
      inset:0;
      z-index:3000;
      background:rgba(0,0,0,0.78);
      backdrop-filter:blur(12px);
      -webkit-backdrop-filter:blur(12px);
      padding:2rem;
      overflow:auto;
    }
    .trade-portal[hidden]{display:none}
    .trade-portal-shell{
      max-width:1180px;
      min-height:min(760px,calc(100vh - 4rem));
      margin:0 auto;
      background:#0a0a0a;
      color:#fff;
      border:1px solid rgba(255,255,255,0.12);
      border-radius:28px;
      box-shadow:0 30px 90px rgba(0,0,0,0.55);
      position:relative;
      overflow:hidden;
    }
    .trade-portal-shell::before{
      content:'';
      position:absolute;
      inset:0;
      background:radial-gradient(circle at 50% 0%,rgba(255,255,255,0.12),transparent 34%),linear-gradient(90deg,transparent,rgba(255,255,255,0.035),transparent);
      pointer-events:none;
    }
    .portal-close{
      position:absolute;
      top:1.1rem;
      left:1.1rem;
      z-index:2;
      width:42px;
      height:42px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,0.14);
      background:rgba(255,255,255,0.08);
      color:#fff;
      font-size:24px;
      line-height:1;
      cursor:pointer;
    }
    .trade-portal-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:minmax(0,0.94fr) minmax(360px,1.06fr);
      min-height:min(760px,calc(100vh - 4rem));
    }
    .portal-hero{
      padding:5rem 3rem 3rem;
      display:flex;
      flex-direction:column;
      justify-content:center;
      border-inline-end:1px solid rgba(255,255,255,0.08);
      text-align:center;
    }
    .portal-eyebrow{
      font-family:var(--font-en);
      font-size:13px;
      letter-spacing:4px;
      color:rgba(255,255,255,0.38);
      text-transform:uppercase;
      margin-bottom:1.2rem;
      font-weight:700;
    }
    .portal-title{
      font-size:clamp(2.4rem,5vw,4.5rem);
      line-height:1.08;
      letter-spacing:-1px;
      color:#fff;
      margin-bottom:1.1rem;
      font-weight:900;
    }
    .portal-desc{
      color:rgba(255,255,255,0.55);
      font-size:16px;
      line-height:1.9;
      max-width:520px;
      margin:0 auto 2.6rem;
    }
    .portal-steps{
      display:flex;
      justify-content:center;
      gap:1.6rem;
      list-style:none;
      margin-bottom:2.2rem;
    }
    .portal-step{min-width:90px}
    .portal-step strong{
      display:block;
      color:rgba(255,255,255,0.16);
      font-family:var(--font-en);
      font-size:2.1rem;
      line-height:1;
      margin-bottom:0.55rem;
      font-weight:900;
    }
    .portal-step span{display:block;color:rgba(255,255,255,0.55);font-size:13px;line-height:1.55}
    .portal-safe-note{
      display:inline-flex;
      align-self:center;
      gap:0.5rem;
      align-items:center;
      border:1px solid rgba(255,255,255,0.12);
      background:rgba(255,255,255,0.06);
      border-radius:999px;
      padding:0.7rem 1rem;
      color:rgba(255,255,255,0.68);
      font-size:13px;
      font-family:var(--font-en);
    }
    .portal-panel{
      background:#f5f5f7;
      color:#0a0a0a;
      padding:2rem;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .portal-card{
      width:100%;
      max-width:560px;
      background:#fff;
      border-radius:24px;
      padding:1.4rem;
      box-shadow:0 24px 60px rgba(0,0,0,0.12);
    }
    .portal-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}
    .portal-card-title{font-size:1.25rem;font-weight:800;letter-spacing:-0.2px}
    .portal-progress{display:flex;gap:6px;direction:ltr}
    .portal-dot{width:30px;height:5px;border-radius:99px;background:#dedee3}
    .portal-dot.is-active{background:#0a0a0a}
    .portal-group{margin-top:1.1rem}
    .portal-label{display:block;font-weight:800;font-size:13px;margin-bottom:0.55rem;color:#202025}
    .device-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.7rem}
    .device-choice,.condition-choice,.capacity-choice,.box-choice{
      border:1.5px solid #e5e5e7;
      background:#fff;
      border-radius:16px;
      min-height:78px;
      padding:0.75rem;
      cursor:pointer;
      font-family:var(--font-ar);
      color:#0a0a0a;
      transition:border-color 0.2s,background 0.2s,transform 0.2s;
    }
    .device-choice:hover,.condition-choice:hover,.capacity-choice:hover,.box-choice:hover{transform:translateY(-2px);border-color:#a8a8ad}
    .device-choice.is-selected,.condition-choice.is-selected,.capacity-choice.is-selected,.box-choice.is-selected{border-color:#0a0a0a;background:#f0f0f2}
    .device-choice img{display:block;max-width:62px;max-height:50px;object-fit:contain;margin:0 auto 0.35rem;filter:drop-shadow(0 8px 12px rgba(0,0,0,0.12))}
    .device-choice span{display:block;font-family:var(--font-en);font-weight:800;font-size:13px}
    .box-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.15rem}
    .box-choice .box-ico{font-size:24px;line-height:1;margin-bottom:.2rem}
    .box-choice strong{display:block;font-size:13.5px;margin-bottom:.15rem}
    .box-choice span:not(.box-ico){display:block;font-size:13px;color:#777}
    #boxChoices{grid-template-columns:repeat(2,1fr)}
    .condition-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.1rem;min-height:96px;padding:.85rem .7rem!important}
    .condition-choice .cond-emoji{font-size:22px;line-height:1;margin-bottom:.25rem}
    .condition-choice strong{display:block;font-size:13.5px;margin-bottom:.15rem}
    .condition-choice span:not(.cond-emoji){display:block;font-size:13px;color:#777;line-height:1.35}
    #conditionChoices{grid-template-columns:repeat(3,1fr)}
    .portal-select{
      width:100%;
      height:52px;
      border-radius:15px;
      border:1.5px solid #d8d8dd;
      background:#fff;
      padding:0 1rem;
      font-family:var(--font-ar);
      font-weight:700;
      color:#0a0a0a;
    }
    .choice-row{display:grid;grid-template-columns:repeat(3,1fr);gap:0.65rem}
    .condition-choice strong,.capacity-choice strong{display:block;font-size:13.5px;margin-bottom:0.2rem}
    .condition-choice span,.capacity-choice span{display:block;font-size:13px;color:#777}
    .portal-result{
      margin-top:1.3rem;
      border-radius:20px;
      background:#0a0a0a;
      color:#fff;
      padding:1.25rem;
      display:grid;
      grid-template-columns:1fr auto;
      gap:1rem;
      align-items:center;
    }
    .portal-result small{
      display:block;
      color:rgba(255,255,255,0.48);
      font-size:13px;
      margin-bottom:0.2rem;
    }
    .portal-price{
      font-family:var(--font-en);
      font-size:clamp(1.7rem,4vw,2.35rem);
      font-weight:900;
      letter-spacing:-1px;
      white-space:nowrap;
    }
    .portal-actions{display:flex;gap:0.65rem;flex-wrap:wrap;margin-top:1rem}
    .portal-primary,.portal-secondary{
      min-height:46px;
      border-radius:999px;
      padding:0 1.15rem;
      border:0;
      cursor:pointer;
      font-family:var(--font-ar);
      font-weight:800;
    }
    .portal-primary{background:#0a0a0a;color:#fff}
    .portal-secondary{background:#ededf1;color:#0a0a0a}
    .portal-fineprint{margin-top:0.9rem;color:#777;font-size:13px;line-height:1.7}
    @media(max-width:860px){
      .trade-portal{padding:0}
      .trade-portal-shell{min-height:100vh;border-radius:0}
      .trade-portal-grid{grid-template-columns:1fr}
      .portal-hero{padding:5rem 1.5rem 2rem;border-inline-end:0}
      .portal-panel{padding:1.2rem}
      .portal-steps{gap:0.8rem}
      .device-grid,.choice-row{grid-template-columns:1fr}
    }

    /* ─── AI EVALUATION (photos + battery + result) ─── */
    .portal-input{
      width:100%;
      height:52px;
      border-radius:15px;
      border:1.5px solid #d8d8dd;
      background:#fff;
      padding:0 1rem;
      font-family:var(--font-en);
      font-weight:700;
      color:#0a0a0a;
      font-size:15px;
    }
    .portal-input:focus{outline:none;border-color:#0a0a0a}
    .portal-hint{margin-top:0.4rem;font-size:13px;color:#888;line-height:1.5}
    .photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.55rem}
    .photo-slot{
      position:relative;
      aspect-ratio:1/1;
      border:1.5px dashed #c8c8cd;
      border-radius:14px;
      background:#fafafb;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
      transition:border-color 0.2s,background 0.2s;
    }
    .photo-slot:hover{border-color:#0a0a0a;background:#f0f0f2}
    .photo-slot.has-image{border-style:solid;border-color:#0a0a0a;background:#fff}
    .photo-slot input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}
    .photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:0.4rem;text-align:center;padding:0.4rem;pointer-events:none}
    .photo-placeholder svg{width:26px;height:26px;color:#888}
    .photo-placeholder span{font-size:13px;font-weight:700;color:#444;line-height:1.35}
    .photo-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .photo-remove{
      position:absolute;
      top:5px;
      left:5px;
      width:24px;
      height:24px;
      border-radius:50%;
      background:rgba(0,0,0,0.78);
      color:#fff;
      border:0;
      font-size:14px;
      line-height:1;
      cursor:pointer;
      display:none;
      align-items:center;
      justify-content:center;
      z-index:2;
    }
    .photo-slot.has-image .photo-remove{display:flex}
    .photo-slot.has-image .photo-placeholder{display:none}
    .photo-tag{
      position:absolute;
      bottom:5px;
      right:5px;
      background:rgba(0,0,0,0.72);
      color:#fff;
      font-size:13px;
      font-weight:700;
      padding:3px 7px;
      border-radius:6px;
      pointer-events:none;
    }
    .ai-evaluate-btn{
      width:100%;
      min-height:52px;
      margin-top:1rem;
      border-radius:15px;
      border:0;
      background:#0a0a0a;
      color:#fff;
      font-family:var(--font-ar);
      font-weight:800;
      font-size:15px;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:0.55rem;
      transition:background 0.2s,transform 0.2s;
    }
    .ai-evaluate-btn:disabled{background:#c8c8cd;cursor:not-allowed}
    .ai-evaluate-btn:not(:disabled):hover{background:#1f1f24;transform:translateY(-1px)}
    .ai-evaluate-btn .ai-spark{width:18px;height:18px}
    .ai-loading{
      margin-top:1rem;
      padding:1.2rem;
      border-radius:15px;
      background:#f5f5f7;
      display:flex;
      align-items:center;
      gap:0.8rem;
      color:#0a0a0a;
      font-weight:700;
    }
    .ai-loading[hidden]{display:none!important}
    .ai-spinner{
      width:22px;
      height:22px;
      border:2.5px solid #d8d8dd;
      border-top-color:#0a0a0a;
      border-radius:50%;
      animation:ai-spin 0.8s linear infinite;
      flex:0 0 auto;
    }
    @keyframes ai-spin{to{transform:rotate(360deg)}}
    @media(prefers-reduced-motion:reduce){.ai-spinner{animation:none}}
    .ai-result{
      margin-top:1.3rem;
      border-radius:20px;
      background:#0a0a0a;
      color:#fff;
      padding:1.4rem;
    }
    .ai-result-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:0.9rem}
    .ai-result-head small{display:block;color:rgba(255,255,255,0.48);font-size:13px;margin-bottom:0.2rem}
    .ai-badge{
      display:inline-flex;
      align-items:center;
      gap:0.35rem;
      background:rgba(255,255,255,0.12);
      color:#fff;
      font-family:var(--font-en);
      font-size:13px;
      font-weight:800;
      letter-spacing:1.5px;
      padding:5px 10px;
      border-radius:999px;
      text-transform:uppercase;
    }
    .ai-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:#4ade80}
    .price-range{
      font-family:var(--font-en);
      font-size:clamp(1.6rem,3.8vw,2.15rem);
      font-weight:900;
      letter-spacing:-0.5px;
      line-height:1.1;
      white-space:nowrap;
    }
    .price-range .range-dash{margin:0 0.5rem;color:rgba(255,255,255,0.42);font-weight:600}
    .ai-condition-row{
      display:flex;
      align-items:center;
      gap:0.5rem;
      margin-top:0.9rem;
      padding-top:0.9rem;
      border-top:1px solid rgba(255,255,255,0.1);
      font-size:13.5px;
      color:rgba(255,255,255,0.78);
    }
    .ai-condition-row strong{color:#fff;font-weight:800}
    .ai-condition-pill{
      display:inline-flex;
      align-items:center;
      padding:3px 10px;
      border-radius:999px;
      font-size:13px;
      font-weight:800;
      background:rgba(74,222,128,0.18);
      color:#86efac;
    }
    .ai-condition-pill.is-good{background:rgba(250,204,21,0.18);color:#fde047}
    .ai-condition-pill.is-needs{background:rgba(248,113,113,0.18);color:#fca5a5}
    .market-proof{
      display:grid;
      gap:0.25rem;
      margin-top:0.85rem;
      padding-top:0.85rem;
      border-top:1px solid rgba(255,255,255,0.1);
      color:rgba(255,255,255,0.62);
      font-size:13px;
      line-height:1.55;
    }
    .market-proof[hidden]{display:none}
    .market-proof span:first-child{color:rgba(255,255,255,0.88);font-weight:700}
    .ai-notes{
      margin-top:0.95rem;
      padding:1rem 1.1rem;
      background:#f5f5f7;
      border-radius:14px;
      color:#1f1f24;
      font-size:13px;
      line-height:1.75;
    }
    .ai-notes h4{font-size:13px;font-weight:800;margin-bottom:0.5rem;color:#0a0a0a}
    .ai-notes ul{list-style:none;padding:0;margin:0}
    .ai-notes ul li{padding:0.25rem 0;display:flex;gap:0.5rem;align-items:flex-start}
    .ai-notes ul li::before{content:'•';color:#888;flex-shrink:0;font-weight:800}
    .ai-error{
      margin-top:1rem;
      padding:1rem;
      border-radius:14px;
      background:#fef2f2;
      color:#991b1b;
      font-size:13px;
      line-height:1.7;
      border:1px solid #fecaca;
    }
    .ai-error strong{display:block;margin-bottom:0.3rem;font-weight:800}
    @media(max-width:480px){
      .photo-grid{grid-template-columns:repeat(2,1fr)}
      .ai-result-head{flex-direction:column;align-items:flex-start;gap:0.5rem}
    }

    /* ─── WHY US ─── */
    .why-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
      gap:22px;
      list-style:none;
    }
    .why-card{
      background:var(--silver);
      border-radius:22px;
      padding:2.6rem 2.2rem;
      transition:background 0.3s;
    }
    .why-card:hover{background:var(--silver-dark)}
    .why-icon{
      font-size:1.6rem;
      margin-bottom:1.2rem;
      width:52px;height:52px;
      background:#fff;
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .why-icon svg{width:26px;height:26px}
    .why-title{font-size:19px;font-weight:700;margin-bottom:0.6rem}
    .why-text{font-size:15px;color:var(--mid);line-height:1.75}

    /* ─── PROMO BANNER ─── */
    .promo-wrap{max-width:1320px;margin:0 auto;padding:0 2.5rem 6.5rem}
    .promo-banner{
      background:linear-gradient(135deg,#1a1a1a,#2d2d2d);
      border-radius:26px;
      padding:4rem 3.5rem;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:2rem;
      flex-wrap:wrap;
    }
    .promo-text h3{font-size:2.1rem;font-weight:800;color:#fff;letter-spacing:-0.5px;margin-bottom:0.5rem}
    .promo-text p{font-size:16px;color:rgba(255,255,255,0.55);max-width:420px;line-height:1.7}
    .promo-tag{
      background:rgba(255,255,255,0.1);
      color:rgba(255,255,255,0.9);
      font-family:var(--font-en);
      font-size:13px;
      font-weight:600;
      letter-spacing:2px;
      text-transform:uppercase;
      padding:6px 16px;
      border-radius:50px;
      margin-bottom:1rem;
      display:inline-block;
      border:1px solid rgba(255,255,255,0.15);
    }

    /* ─── TESTIMONIALS ─── */
    .reviews-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
      gap:20px;
      list-style:none;
    }
    .reviews-grid > li{display:flex}
    .review-card{
      background:var(--silver);
      border-radius:22px;
      padding:2.4rem 2.2rem;
      display:flex;
      flex-direction:column;
      width:100%;
    }
    .reviewer{display:flex;align-items:center;gap:12px;margin-bottom:1.25rem}
    .stars{color:var(--warn);font-size:1rem;margin-bottom:1rem;letter-spacing:2px}
    .review-text{font-size:16px;line-height:1.85;color:#333;margin:0;flex:1}
    .reviewer-avatar{
      width:42px;height:42px;
      border-radius:50%;
      background:var(--black);
      color:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:700;
      font-size:14px;
      font-family:var(--font-en);
      flex-shrink:0;
    }
    .reviewer-name{font-weight:600;font-size:14.5px}
    .reviewer-meta{font-size:13px;color:var(--mid)}

    /* ─── STORES ─── */
    .stores-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
      gap:20px;
      list-style:none;
    }
    .stores-grid > li{display:flex}
    .store-card{
      background:var(--silver);
      border-radius:22px;
      padding:2.4rem 2.2rem;
      display:flex;
      align-items:flex-start;
      gap:1.2rem;
      width:100%;
    }
    .store-card > div:last-child{
      display:flex;
      flex-direction:column;
      flex:1;
    }
    .store-card .store-hours{margin-top:auto;padding-top:8px}
    .store-icon{
      width:48px;height:48px;
      background:var(--black);
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#fff;
      flex-shrink:0;
    }
    .store-icon svg{width:22px;height:22px}
    .store-name{font-size:18px;font-weight:700;margin-bottom:4px}
    .store-address{font-size:14.5px;color:var(--mid);margin-bottom:8px;line-height:1.6}
    .store-hours{font-size:13px;color:var(--accent);font-weight:600;font-family:var(--font-en)}

    /* Featured main-branch card — map fills the whole card */
    .store-card--featured{
      position:relative;
      display:block;
      padding:0;
      overflow:hidden;
      min-height:250px;
    }
    .store-card--featured .store-map{
      position:absolute;inset:0;margin:0;height:100%;border-radius:0;background:#e9e9ee;
    }
    .store-card--featured .store-map iframe{
      position:absolute;inset:0;width:100%;height:100%;border:0;display:block;
    }
    .store-featured-overlay{
      position:absolute;inset:0;
      display:flex;flex-direction:column;justify-content:space-between;
      padding:16px;
      pointer-events:none;
      background:linear-gradient(to top,rgba(10,10,12,.85) 0%,rgba(10,10,12,.42) 34%,rgba(10,10,12,0) 62%);
    }
    .store-badge{
      align-self:flex-start;
      display:inline-flex;align-items:center;gap:7px;
      background:var(--accent);color:#fff;
      font-size:13px;font-weight:700;letter-spacing:.02em;
      padding:4px 11px 4px 9px;border-radius:999px;
      box-shadow:0 4px 12px rgba(0,0,0,.28);
    }
    .store-badge::before{
      content:'';width:6px;height:6px;border-radius:50%;
      background:#fff;flex-shrink:0;
      box-shadow:0 0 0 0 rgba(255,255,255,.75);
      animation:storePulse 1.8s infinite;
    }
    @keyframes storePulse{
      0%{box-shadow:0 0 0 0 rgba(255,255,255,.75);}
      70%{box-shadow:0 0 0 7px rgba(255,255,255,0);}
      100%{box-shadow:0 0 0 0 rgba(255,255,255,0);}
    }
    .store-featured-bottom{display:flex;flex-direction:column;gap:3px;}
    .store-card--featured .store-name{color:#fff;margin:0;}
    .store-card--featured .store-address{color:rgba(255,255,255,.85);margin:0 0 1px;}
    .store-card--featured .store-hours{color:#56e39a;margin:0;}
    .store-directions{
      pointer-events:auto;margin-top:9px;align-self:flex-start;
      display:inline-flex;align-items:center;gap:6px;
      background:#fff;color:#0a0a0a;
      font-family:var(--font-en);font-size:13px;font-weight:600;
      padding:8px 14px;border-radius:999px;text-decoration:none;
      box-shadow:0 6px 16px rgba(0,0,0,.3);transition:transform .2s;
    }
    .store-directions:hover{transform:translateY(-2px);}
    .store-directions svg{width:14px;height:14px;}
    html[data-theme="dark"] .store-directions{background:#fff!important;color:#0a0a0a!important;}

    /* ─── FOOTER ─── */
    .site-footer{
      background-color:#050505;
      background-image:
        linear-gradient(rgba(0,0,0,0.46),rgba(0,0,0,0.46)),
        url("images/footer-pattern.webp");
      background-position:center;
      background-size:cover;
      background-repeat:no-repeat;
      padding:5rem 3rem 2.5rem;
    }
    .footer-top{
      max-width:1320px;
      margin:0 auto;
      display:grid;
      grid-template-columns:2fr 1fr 1fr 1fr;
      gap:3rem;
      padding-bottom:3rem;
      border-bottom:1px solid rgba(255,255,255,0.08);
    }
    .footer-brand-name{
      font-family:var(--font-en);
      font-size:22px;
      font-weight:800;
      color:#fff;
      letter-spacing:-0.5px;
      margin-bottom:0.6rem;
    }
    .footer-brand-name span{color:rgba(255,255,255,0.3);font-weight:300}
    .footer-brand-name small{display:block;margin-top:2px;color:rgba(255,255,255,0.52);font-family:var(--font-ar);font-size:13px;font-weight:500;letter-spacing:0}
    .footer-tagline{font-size:13.5px;color:rgba(255,255,255,0.62);margin-bottom:1.5rem;font-family:var(--font-en)}
    .footer-contact{list-style:none}
    .footer-contact li{margin-bottom:8px}
    .footer-contact a{
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:rgba(255,255,255,0.66);
      text-decoration:none;
      font-size:13.5px;
      transition:color 0.2s;
    }
    .footer-contact a:hover,.footer-contact a:focus-visible{color:#fff}
    .footer-contact svg{width:16px;height:16px;flex-shrink:0}
    .footer-col h4{color:#fff;font-size:14px;font-weight:600;margin-bottom:1.2rem}
    .footer-col ul{list-style:none}
    .footer-col li{margin-bottom:0.7rem}
    .footer-col a{
      color:rgba(255,255,255,0.62);
      text-decoration:none;
      font-size:13.5px;
      transition:color 0.2s;
    }
    .footer-col a:hover,.footer-col a:focus-visible{color:#fff}
    .footer-bottom{
      max-width:1320px;
      margin:2rem auto 0;
      display:flex;
      justify-content:center;
      align-items:center;
      flex-wrap:wrap;
      gap:1rem;
      text-align:center;
    }
    .footer-copy{font-size:13px;color:rgba(255,255,255,0.58);font-family:var(--font-en)}
    .footer-social{display:flex;gap:1rem;list-style:none}
    .social-link{
      width:36px;height:36px;
      border-radius:50%;
      background:rgba(255,255,255,0.07);
      border:1px solid rgba(255,255,255,0.1);
      display:flex;
      align-items:center;
      justify-content:center;
      color:rgba(255,255,255,0.5);
      text-decoration:none;
      transition:background 0.2s,color 0.2s;
    }
    .social-link svg{width:16px;height:16px}
    .social-link:hover,.social-link:focus-visible{background:rgba(255,255,255,0.15);color:#fff}

    /* ─── MOBILE MENU ─── */
    .mobile-menu{
      position:fixed;
      top:68px;left:0;right:0;bottom:0;
      background:#0a0a0a;
      z-index:999;
      padding:2rem;
      flex-direction:column;
      gap:0;
      overflow-y:auto;
      list-style:none;
    }
    .mobile-menu[hidden]{display:none}
    .mobile-menu:not([hidden]){display:flex}
    .mobile-menu li{border-bottom:1px solid rgba(255,255,255,0.08)}
    .mobile-menu li:last-child{border:none}
    .mobile-menu a{
      color:#fff;
      text-decoration:none;
      font-size:1.4rem;
      font-weight:600;
      padding:1.2rem 0;
      display:block;
    }

    /* ─── RESPONSIVE ─── */
    @media (max-width:900px){
      .footer-top{grid-template-columns:1fr 1fr}
      .site-nav{padding:0 1.5rem}
    }
    @media (max-width:640px){
      .nav-links,.nav-cta{display:none}
      .hamburger{display:flex;align-items:center;justify-content:center}
      .hero{min-height:85vh;padding:4rem 1.5rem 0;align-items:flex-start}
      .hero-products{height:60%;bottom:14%}
      .hero-product--imac,.hero-product--ipad-mini,.hero-product--iphone2{display:none}
      .hero-product--macbook{width:auto;height:34%;left:-8%;opacity:0.7}
      .hero-product--ipad{height:52%;left:14%}
      .hero-product--iphone{height:72%}
      .hero-product--airpods-max{height:42%;right:14%}
      .hero-product--watch{height:34%;right:1%;bottom:10%}
      .hero-product--watch2{height:24%;right:0;bottom:0}
      .hero-product--airpods{height:22%;right:28%}
      .hero-brand{letter-spacing:-2px}
      .stats-bar{gap:2rem}
      .promo-banner{text-align:center;justify-content:center;padding:2.5rem 1.8rem}
      .footer-top{grid-template-columns:1fr}
      .footer-bottom{justify-content:center;text-align:center}
      .tradein-steps{flex-direction:column;align-items:center}
      .tstep:not(:last-child)::after{display:none}
      .section{padding:4rem 1.5rem}
.sec-title, .tradein-title{font-size:1.8rem}
    }

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

    /* ─── PRINT ─── */
    @media print{
      .site-header,.mobile-menu,.hamburger,.hero-circle,.hero-line,.hero-products,.hero-glow,
      .promo-wrap,.tradein-section,footer,.nav-actions{display:none !important}
      body{color:#000;background:#fff}
      .hero,.tradein-section{background:#fff;color:#000}
.hero-brand,.tradein-title,.sec-title{color:#000 !important}
      .section{padding:1rem 0;page-break-inside:avoid}
      a{color:#000;text-decoration:underline}
      a[href]::after{content:" (" attr(href) ")";font-size:0.85em;color:#666}
    }

    /* ─── SEARCH OVERLAY ─── */
    .search-overlay{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,0.65);
      backdrop-filter:blur(8px);
      -webkit-backdrop-filter:blur(8px);
      z-index:9999;
      display:none;
      align-items:flex-start;
      justify-content:center;
      padding:8vh 20px 20px;
      opacity:0;
      transition:opacity 0.2s ease;
    }
    .search-overlay.is-open{display:flex;opacity:1}
    .search-modal{
      background:#fff;
      width:100%;
      max-width:680px;
      border-radius:20px;
      overflow:hidden;
      box-shadow:0 25px 80px rgba(0,0,0,0.4);
      transform:translateY(-20px);
      transition:transform 0.25s ease;
    }
    .search-overlay.is-open .search-modal{transform:translateY(0)}
    .search-input-wrap{
      display:flex;
      align-items:center;
      gap:14px;
      padding:18px 22px;
      border-bottom:1px solid #eee;
    }
    .search-input-wrap svg{width:22px;height:22px;color:#888;flex-shrink:0}
    .search-input{
      flex:1;
      border:0;
      outline:0;
      font-size:18px;
      font-family:inherit;
      background:transparent;
      color:#111;
      padding:6px 0;
    }
    .search-input::placeholder{color:#aaa}
    .search-close{
      border:0;
      background:#f2f2f2;
      color:#555;
      width:32px;height:32px;
      border-radius:8px;
      cursor:pointer;
      font-size:13px;
      font-family:var(--font-en);
      font-weight:600;
      flex-shrink:0;
      transition:background 0.15s;
    }
    .search-close:hover{background:#e5e5e5}
    .search-results{
      max-height:60vh;
      overflow-y:auto;
      padding:8px;
    }
    .search-result-item{
      display:flex;
      align-items:center;
      gap:14px;
      padding:12px 14px;
      border-radius:12px;
      text-decoration:none;
      color:#111;
      transition:background 0.12s;
    }
    .search-result-item:hover,
    .search-result-item:focus-visible{background:#f5f5f5;outline:none}
    .search-result-icon{
      width:40px;height:40px;
      border-radius:10px;
      background:var(--silver);
      display:flex;
      align-items:center;
      justify-content:center;
      color:#444;
      flex-shrink:0;
    }
    .search-result-icon svg{width:20px;height:20px}
    .search-result-name{font-weight:600;font-size:15px;font-family:var(--font-en)}
    .search-result-cat{font-size:13px;color:var(--mid);margin-top:2px}
    .search-empty{
      text-align:center;
      padding:40px 20px;
      color:var(--mid);
      font-size:14.5px;
    }
    body.search-open{overflow:hidden}
  
.announcement-ticker{height:34px;background:#fff;color:#0a0a0a;border-top:1px solid rgba(255,255,255,0.08);overflow:hidden;display:flex;align-items:center;direction:ltr}
.ticker-track{display:inline-flex;align-items:center;gap:2rem;min-width:max-content;white-space:nowrap;animation:ticker-slide 24s linear infinite;font-family:var(--font-ar);font-size:13.5px;font-weight:700}
.ticker-track span{display:inline-flex;align-items:center;gap:.55rem}
.ticker-dot{width:5px;height:5px;border-radius:50%;background:#0a0a0a;display:inline-block;flex:0 0 auto}
@keyframes ticker-slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}.announcement-ticker:hover .ticker-track,.announcement-ticker:focus-within .ticker-track,.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}





.theme-toggle{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,0.18);
  border-radius:50%;
  background:transparent;
  color:rgba(255,255,255,0.78);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  transition:color .2s,background .2s,border-color .2s;
}
.theme-toggle:hover,.theme-toggle:focus-visible{
  color:#fff;
  background:rgba(255,255,255,0.08);
  border-color:rgba(255,255,255,0.34);
}
.theme-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor}
.theme-icon-sun{display:none}
html[data-theme="dark"] body{background:#000!important;color:#fff!important}
html[data-theme="dark"] .breadcrumb-bar,
html[data-theme="dark"] .section,
html[data-theme="dark"] .stats-bar,
html[data-theme="dark"] .card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .prod-card,
html[data-theme="dark"] .review-card,
html[data-theme="dark"] .store-card,
html[data-theme="dark"] .why-card,
html[data-theme="dark"] .portal-card,
html[data-theme="dark"] .search-modal{
  background:#101010!important;
  color:#fff!important;
}
html[data-theme="dark"] .card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .prod-card,
html[data-theme="dark"] .review-card,
html[data-theme="dark"] .store-card,
html[data-theme="dark"] .why-card,
html[data-theme="dark"] .portal-card,
html[data-theme="dark"] .device-choice,
html[data-theme="dark"] .condition-choice,
html[data-theme="dark"] .capacity-choice,
html[data-theme="dark"] .box-choice,
html[data-theme="dark"] .search-result-item{
  border-color:#2a2a2a!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .card:hover,
html[data-theme="dark"] .cat-card:hover,
html[data-theme="dark"] .prod-card:hover,
html[data-theme="dark"] .review-card:hover,
html[data-theme="dark"] .store-card:hover,
html[data-theme="dark"] .why-card:hover{
  background:#181818!important;
}
html[data-theme="dark"] .cat-img,
html[data-theme="dark"] .prod-img-wrap,
html[data-theme="dark"] .category-photo,
html[data-theme="dark"] .card-icon,
html[data-theme="dark"] .why-icon,
html[data-theme="dark"] .store-img,
html[data-theme="dark"] .search-result-img{
  background:#fff!important;
  color:#000!important;
}
html[data-theme="dark"] .sec-title,
html[data-theme="dark"] .card-title,
html[data-theme="dark"] .cat-name,
html[data-theme="dark"] .prod-title,
html[data-theme="dark"] .review-text,
html[data-theme="dark"] .store-name,
html[data-theme="dark"] .portal-label,
html[data-theme="dark"] .search-result-name,
html[data-theme="dark"] a{
  color:#fff!important;
}
html[data-theme="dark"] .breadcrumb,
html[data-theme="dark"] .breadcrumb a,
html[data-theme="dark"] .breadcrumb [aria-current],
html[data-theme="dark"] .sec-eyebrow,
html[data-theme="dark"] .sec-desc,
html[data-theme="dark"] .card-desc,
html[data-theme="dark"] .cat-count,
html[data-theme="dark"] .prod-cat,
html[data-theme="dark"] .prod-storage,
html[data-theme="dark"] .reviewer-meta,
html[data-theme="dark"] .store-address,
html[data-theme="dark"] .portal-fineprint,
html[data-theme="dark"] .search-result-cat{
  color:#bdbdbd!important;
}
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .nav-cta,
html[data-theme="dark"] .tradein-cta{
  background:#fff!important;
  color:#000!important;
}
html[data-theme="dark"] .theme-icon-moon{display:none}
html[data-theme="dark"] .theme-icon-sun{display:block}
/* Product cards keep a light body in dark mode so the white product-photo canvas
   merges seamlessly into the card instead of sitting in a separate white box. */
html[data-theme="dark"] .prod-card{
  background:#ffffff!important;
  color:#111!important;
}
html[data-theme="dark"] .prod-card:hover,
html[data-theme="dark"] .prod-card:focus-visible{
  background:#ffffff!important;
}
html[data-theme="dark"] .prod-card .prod-img-wrap{
  background:#ffffff!important;
}
html[data-theme="dark"] .prod-card .prod-cat,
html[data-theme="dark"] .prod-card .prod-storage{
  color:#6e6e73!important;
}
html[data-theme="dark"] .prod-card .prod-name,
html[data-theme="dark"] .prod-card .prod-price{
  color:#111!important;
}
@media (max-width:640px){
  .nav-actions{gap:.5rem!important}
  .theme-toggle{width:36px;height:36px}
}





.cat-dropdown a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:58px;
  padding:8px 12px;
  text-align:start;
}
.drop-thumb{
  width:44px;
  height:44px;
  border-radius:12px;
  background:#f5f5f7;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 44px;
  overflow:hidden;
  order:2;
}
.drop-thumb img{
  max-width:86%;
  max-height:86%;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,0.14));
}
.drop-thumb img.drop-img-store{
  max-width:none;
  max-height:none;
  width:210%;
  height:210%;
  transform:scale(1);
}
.drop-label{
  flex:1;
  min-width:0;
  order:1;
  line-height:1.35;
}
html[data-theme="dark"] .drop-thumb{background:#fff}
html[data-theme="dark"] .cat-dropdown,
html[data-theme="dark"] .cat-dropdown a{
  background:#fff!important;
  color:#1a1a1a!important;
}
html[data-theme="dark"] .drop-label,
html[data-theme="dark"] .drop-label span{
  color:#1a1a1a!important;
}


/* ── site-responsive-enhance ── */
/* ─── Site-wide responsive consistency ───────────────────── */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
img,video,svg:not(.logo-mark):not([width]){max-width:100%;height:auto}
img{height:auto}

/* Better tap targets / no awkward hovers on touch */
@media (hover:none) and (pointer:coarse){
  .used-card:hover,.rel-card:hover,.prod-card:hover,.cat-card:hover,
  .card:hover,.review-card:hover,.store-card:hover,.why-card:hover,
  .btn-primary:hover,.btn-wa:hover{transform:none!important}
}

/* Tablet: 901–1100 — hide overflowing nav links earlier */
@media (max-width:1100px) and (min-width:641px){
  .nav-links{gap:1.4rem!important}
  .nav-links a{font-size:13.5px!important}
}

/* Tablet break: 900 */
@media (max-width:900px){
  .nav-links{display:none!important}
  .hamburger{display:inline-flex!important;align-items:center;justify-content:center}
  .site-nav{padding:0 1.5rem!important;height:64px!important}
  .footer-top{grid-template-columns:1fr 1fr!important;gap:2rem!important}
  .uhero,.phero{grid-template-columns:1fr!important;gap:2.2rem!important;padding-inline-end:1.5rem!important;padding-inline-start:1.5rem!important}
  .uhero-media{height:420px!important}
}

/* Mobile: 640 */
@media (max-width:640px){
  .site-nav{padding:0 1rem!important;height:58px!important}
  .nav-actions{gap:.55rem!important}
  .nav-icon{padding:6px!important}
  .nav-icon svg{width:20px!important;height:20px!important}
  .theme-toggle{width:36px!important;height:36px!important;border-width:1px!important}
  .theme-toggle svg{width:17px!important;height:17px!important}
  .logo-mark{width:32px!important;height:32px!important}
  .logo,.logo span{font-size:18px!important;gap:.5rem!important}
  .announcement-ticker{height:30px!important}
  .ticker-track{font-size:13px!important;gap:1.5rem!important}
  .breadcrumb-bar{padding:.65rem 1rem!important}
  .breadcrumb{font-size:13px!important;gap:.45rem!important}
  section,.section,.phero,.uhero{padding-inline-end:1rem!important;padding-inline-start:1rem!important}
  .footer-top{grid-template-columns:1fr!important;gap:1.4rem!important;padding:0 .5rem 2rem!important}
  footer{padding:3rem 1rem 1.5rem!important;margin-top:3rem!important}
  .footer-bottom{flex-direction:column;text-align:center;gap:.8rem!important}
  .uhero-media{height:360px!important;border-radius:24px!important;padding:1.2rem!important}
  .uhero-info h1,.phero-title{font-size:clamp(1.7rem,7vw,2.2rem)!important;letter-spacing:-.5px!important}
.sec-title, .tradein-title{font-size:clamp(1.4rem,6vw,1.9rem)!important;letter-spacing:-.4px!important}
  .uprice-now{font-size:1.9rem!important}
  .ucta-row{flex-direction:column!important}
  .ucta-row a,.ucta-row button,.btn-primary,.btn-wa{width:100%!important;min-width:0!important}
  .utrust-row{gap:.6rem!important;font-size:13px!important}
  .insp-grid,.incl-grid,.faq-grid,.rel-grid{grid-template-columns:1fr 1fr!important;gap:.75rem!important}
  .insp-card,.incl-item,.faq{padding:1rem 1.1rem!important}
  .insp-card .insp-val{font-size:1.1rem!important}
  .rel-img{height:180px!important}
  .rel-info{padding:.7rem .9rem 1rem!important}
  .rel-name{font-size:14px!important}
  .uchips{gap:.4rem!important}
  .uchip{font-size:13px!important;padding:5px 11px!important}
}

/* Small mobile: 380 */
@media (max-width:380px){
  body{font-size:14.5px}
  .logo span{font-size:16.5px!important}
  .logo-mark{width:28px!important;height:28px!important}
  .nav-actions{gap:.35rem!important}
  .nav-icon{padding:4px!important}
  .insp-grid,.incl-grid,.rel-grid{grid-template-columns:1fr!important}
}

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

/* Avoid accidental zoom on input focus (iOS) */
input,select,textarea{font-size:max(16px,1em)}

/* ── home-responsive-fix ── */
/* Responsive hardening for the home page */
.hero-products{
  bottom:8%;
  height:clamp(340px,50svh,560px);
  width:min(1600px,100%);
}

@media (max-width:1200px){
  .section{padding:5.5rem 2rem}
  .cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .stores-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:900px){
  .hero{
    min-height:calc(100svh - 64px);
    padding:4.8rem 1.5rem 0;
  }
  .hero-content{max-width:680px}
  .hero-products{
    bottom:8%;
    width:122%;
    height:clamp(350px,50svh,520px);
  }
  .hero-brand{font-size:clamp(3.2rem,12vw,5.8rem)}
  .hero-desc{font-size:17px;line-height:1.85;margin-bottom:2.2rem}
  .stats-bar{gap:2.2rem;padding:1.6rem 1rem}
  .stat{min-width:140px}
  .prod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .why-grid,.reviews-grid,.stores-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.tradein-title{font-size:clamp(2rem,7vw,3rem)}
  .tradein-desc{font-size:16px;margin-bottom:2.4rem}
  .promo-wrap{padding:0 1.5rem 5rem}
  .promo-banner{padding:3rem 2rem}
}

@media (max-width:640px){
  .mobile-menu{top:58px;padding:1rem 1.25rem 2rem}
  .mobile-menu a{font-size:1.15rem;padding:1rem 0}
  .search-overlay{padding:72px 12px 16px}
  .search-input-wrap{padding:13px 14px;gap:10px}
  .search-input{font-size:16px;min-width:0}

  .hero{
    min-height:calc(100svh - 58px);
    padding:3.2rem 1rem 0!important;
  }
  .hero-products{
    bottom:8%;
    width:148%;
    height:clamp(300px,52svh,460px);
  }
  .hero-circle,.hero-line{display:none}
  .hero-glow{width:360px;height:360px}
  .hero-badge{
    max-width:100%;
    font-size:13px;
    letter-spacing:1.4px;
    padding:7px 13px;
    margin-bottom:1.2rem;
    white-space:normal;
  }
  .hero-brand{
    font-size:clamp(2.6rem,13vw,4.2rem)!important;
    letter-spacing:-1px!important;
    overflow-wrap:break-word!important;
  }
  .hero-tagline{font-size:13px;letter-spacing:2.6px;margin-bottom:1.2rem}
  .hero-desc{
    font-size:15px;
    line-height:1.8;
    margin-bottom:1.7rem;
  }
  .hero-btns{display:grid;grid-template-columns:1fr;gap:.75rem}
  .btn{
    width:100%;
    min-height:48px;
    justify-content:center;
    padding:13px 18px;
    font-size:15px;
  }
  .hero-product--macbook{width:auto!important;height:36%;left:-2%!important}
  .hero-product--ipad{height:52%!important;left:12%!important}
  .hero-product--iphone{height:72%!important}
  .hero-product--airpods-max{height:40%!important;right:12%!important}
  .hero-product--watch{height:32%!important;right:0%!important;bottom:14%!important}
  .hero-product--watch2,.hero-product--airpods{display:none}

  .stats-bar{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1rem;
    padding:1.4rem 1rem;
  }
  .stat{min-width:0}
  .stat-num{font-size:1.65rem}
  .stat-lbl{font-size:13px}

  .section{padding:3.5rem 1rem!important}
  .sec-head{margin-bottom:2rem}
  .sec-eyebrow{font-size:13px;letter-spacing:2px}
  .prod-grid{
    grid-template-columns:repeat(2,1fr)!important;
    gap:10px!important;
  }
  .why-grid,.reviews-grid,.stores-grid{
    grid-template-columns:1fr!important;
    gap:14px;
  }
  .cat-grid{
    grid-template-columns:repeat(2,1fr)!important;
    gap:10px;
  }
  .cat-img,.prod-img-wrap{height:148px!important}
  .cat-card,.prod-card,.why-card,.review-card,.store-card{border-radius:16px}
  .prod-card{padding:.85rem .75rem!important}
  .why-card,.review-card,.store-card{padding:1.25rem}
  .prod-name{font-size:13px!important;margin-bottom:3px!important}
  .prod-storage{font-size:13px!important;margin-bottom:.55rem!important}
  .prod-row{
    align-items:flex-start;
    gap:.4rem;
    flex-direction:column;
  }
  .prod-price{font-size:16px!important}
  .prod-badge{font-size:13px!important;padding:3px 8px!important}
  .cat-dropdown{
    position:static;
    margin-top:8px;
    max-height:320px;
    border-radius:14px;
  }

  .tradein-section{padding:4rem 1rem}
.tradein-title{font-size:clamp(1.8rem,9vw,2.45rem);letter-spacing:0}
  .tradein-steps{gap:1.2rem;margin-bottom:2rem}
  .tstep{max-width:100%;padding:0}
  .tradein-cta{width:100%;padding:14px 18px}

  .trade-portal{padding:0}
  .portal-card{border-radius:18px;padding:1rem}
  .portal-result,.ai-result{grid-template-columns:1fr}
  .price-range,.portal-price{white-space:normal}

  .promo-wrap{padding:0 1rem 3.5rem}
  .promo-banner{border-radius:18px;padding:2rem 1.25rem}
  .promo-text h3{font-size:1.55rem}
  .promo-text p{font-size:14.5px}
  .store-card--featured{min-height:280px}
}

@media (max-width:420px){
  .nav-actions{gap:.25rem!important}
  .logo span{max-width:132px;overflow:hidden;text-overflow:ellipsis}
  .hero{padding-top:2.6rem!important}
  .hero-products{
    bottom:6%;
    width:152%;
    height:clamp(280px,48svh,400px);
  }
  .stats-bar{grid-template-columns:1fr}
  .cat-img,.prod-img-wrap{height:155px}
  .photo-grid{grid-template-columns:1fr 1fr}
  #conditionChoices,#boxChoices{grid-template-columns:1fr!important}
  .portal-actions{display:grid;grid-template-columns:1fr}
  .portal-primary,.portal-secondary{width:100%}
  #ig-box,#nl-box{width:calc(100vw - 24px);padding:24px 18px 20px}
  #nl-form{display:grid;grid-template-columns:1fr}
  #nl-email,#nl-submit{width:100%;min-width:0}
}

/* Stable mobile hero: decorative devices stay in their own stage below the
   copy instead of crossing the title or calls to action mid-animation. */
@media (max-width:640px){
  .hero{
    min-height:auto!important;
    padding:2.6rem 1rem 280px!important;
  }
  .hero-content{
    width:100%;
    max-width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .hero-brand{
    width:max-content;
    max-width:100%;
    margin-inline:auto;
    text-align:center;
    white-space:nowrap;
  }
  .hero-products{
    left:50%!important;
    bottom:0!important;
    width:118%!important;
    height:250px!important;
    overflow:hidden;
    transform:translateX(-50%)!important;
    will-change:auto;
  }
  .hero-product{
    bottom:0!important;
    animation:none!important;
  }
  .hero-product--macbook{height:34%!important;left:-2%!important}
  .hero-product--ipad{height:64%!important;left:7%!important}
  .hero-product--iphone{height:90%!important;left:50%!important;transform:translateX(-50%)!important}
  .hero-product--airpods-max{height:54%!important;right:8%!important}
  .hero-product--watch{height:42%!important;right:-1%!important;bottom:2%!important}
  .hero-products::after{height:55%}
}
