/* G-TECHPRO v4 "Apple Night": shop pages (collections, product, basket, search). Spec: /DESIGN-V4.md
   Black sections, #161617 tiles, the client's blue as the only colour, the system face, two-tone headlines, no outlines.
   New classes only; nothing from base.css is restyled here. Prefixes: sh- shop, fs- filter sheet, sg- cross links, ask-/req- requests,
   pdp- product, cmp- grade columns, lb- lab tile, fq- questions, rl- phone rail, ct-/cr-/cs- basket, sr- search.
   Motion is transform and opacity only, and only when <html> has .motion (the page scripts also check reduced motion). */

@property --glow{syntax:"<color>";inherits:true;initial-value:#9a9ca1}
@keyframes sh-rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes sh-tilt{from{opacity:0;transform:perspective(1400px) translateY(46px) rotateX(11deg) scale(.97)}to{opacity:1;transform:none}}

/* split-flap digits (price and totals that change) */
.fl-w{display:inline-block;perspective:420px}
.fl{display:inline-block;min-width:.56em;transform-origin:50% 54%;backface-visibility:hidden}

/* ---------- page head: crumbs, then Apple's two-tone headline ---------- */
.sh-crumbs{padding-top:10px;padding-bottom:0}
.sh-crumbs li,.sh-crumbs a{display:flex;align-items:center;min-height:44px}
.sh-head{padding-bottom:clamp(18px,3vw,34px)}
.sh-title{margin:4px 0 0;font:600 clamp(34px,4.6vw,60px)/1.06 var(--f-display);letter-spacing:-.03em;color:var(--text);text-wrap:balance}
.sh-t1,.sh-t2{display:inline-block}
.motion .sh-t1{animation:sh-rise .9s var(--ease-out) both}
.motion .sh-t2{animation:sh-rise .9s .14s var(--ease-out) both}
.sh-sub{font:600 clamp(28px,3.4vw,48px)/1.08 var(--f-display);letter-spacing:-.025em;text-wrap:balance;margin-bottom:clamp(22px,3vw,36px)}

/* ---------- quick picks: the Apple Store's category row (needs JavaScript, so it is hidden without it) ---------- */
.sh-quick{display:none;padding:4px 0 clamp(22px,3vw,34px)}
.js .sh-quick{display:block}
.sh-qp{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(188px,1fr);gap:12px;margin:0 calc(var(--pad) * -1);padding:4px var(--pad) 8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:var(--pad);scrollbar-width:none}
.sh-qp::-webkit-scrollbar{display:none}
.sh-qp li{scroll-snap-align:start;display:flex}
.sh-q{position:relative;display:flex;flex-direction:column;align-items:flex-start;width:100%;height:clamp(176px,14vw,196px);padding:18px 18px 0;border:0;border-radius:var(--r-l);background:var(--tile);color:var(--text);text-align:left;cursor:pointer;overflow:hidden;box-shadow:inset 0 0 0 2px transparent;-webkit-tap-highlight-color:transparent;transition:background-color .25s,box-shadow .25s,transform .45s var(--ease-out)}
.sh-q:hover{background:#1c1c1e;transform:translateY(-3px)}
.sh-q:active{transform:scale(.97)}
.sh-q[aria-pressed="true"]{background:rgba(47,107,255,.09);box-shadow:inset 0 0 0 2px var(--blue)}
.sh-q-t{font:600 19px/1.15 var(--f-display);letter-spacing:-.015em}
.sh-q-n{margin-top:3px;font:400 14px/1.3 var(--f-sans);color:var(--soft)}
.sh-q-pic{position:absolute;left:0;right:0;bottom:0;height:96px;display:flex;justify-content:center;align-items:flex-start;overflow:hidden;pointer-events:none}
.sh-q-pic img{flex:none;width:80px;height:auto;margin-top:14px;filter:drop-shadow(0 14px 16px rgba(0,0,0,.65));transition:transform .6s var(--ease-out)}
.sh-q-pic.is-two img{width:72px}
.sh-q-pic.is-two img:first-child{transform:translateX(10px) rotate(-6deg);margin-top:20px}
.sh-q-pic.is-two img:last-child{transform:translateX(-10px) rotate(5deg);margin-top:10px}
.sh-q:hover .sh-q-pic img{transform:translateY(-7px)}
.sh-q:hover .sh-q-pic.is-two img:first-child{transform:translateX(4px) translateY(-6px) rotate(-8deg)}
.sh-q:hover .sh-q-pic.is-two img:last-child{transform:translateX(-4px) translateY(-6px) rotate(7deg)}

/* ---------- the bar: count, chosen filters, and the one button ---------- */
.sh-main{padding:clamp(8px,1.6vw,20px) 0 clamp(40px,6vw,72px)}
.sh-bar{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;padding:6px 0 22px;scroll-margin-top:calc(var(--head) + 12px)}
.sh-bar-l{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;min-width:0}
.sh-count{font:600 21px/1.2 var(--f-display);letter-spacing:-.015em;font-variant-numeric:tabular-nums}
.sh-active{display:flex;flex-wrap:wrap;gap:8px}
.sh-active:empty{display:none}
.sh-ac{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 10px 0 13px;border:0;border-radius:var(--r-s);background:var(--tile-2);color:var(--text);font:400 14px/1 var(--f-sans);cursor:pointer;transition:background-color .2s,transform .12s}
.sh-ac::after{content:"";position:absolute;inset:-5px -3px}
.sh-ac:hover{background:var(--tile-3)}
.sh-ac:active{transform:scale(.96)}
.sh-ac .ico{width:14px;height:14px;stroke-width:2.2;color:var(--soft)}
.sh-fbtn{display:none;flex:none}
.js .sh-fbtn{display:inline-flex}
.sh-fbtn .ico{width:19px;height:19px}
.sh-fn{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:7px;background:var(--blue);color:#fff;font:600 13px/1 var(--f-sans)}

/* ---------- the grid: Apple Store cards. They rise in as they come into view and tilt toward the pointer. ---------- */
.sh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,262px),1fr));gap:20px}
.sh-grid-4{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.shop-item{min-width:0;display:flex;transform-origin:50% 100%}
.sh-grid>li>.p-card{flex:1;height:100%}
.shop-item .p-card{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px));transition:transform .6s var(--ease-out),background-color .3s,box-shadow .5s var(--ease-out)}
.shop-item .p-card:hover{--lift:-6px;transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px))}
.shop-item .p-card:active{transform:perspective(1100px) scale(.985)}
.shop-item .p-card.is-tilt{transition:transform .12s linear,background-color .3s,box-shadow .5s var(--ease-out)}
.shop-item .p-img::before{content:"";position:absolute;left:12%;right:12%;top:16%;bottom:2%;z-index:0;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--glow,#9a9ca1) 70%,transparent),transparent);opacity:.42;filter:blur(22px);transition:opacity .5s}
.shop-item .p-card:hover .p-img::before{opacity:.75}
.shop-item .p-img img{z-index:1}
.sh-illus{margin-top:28px;font-size:13px;color:var(--mute)}
.sh-empty{padding:clamp(48px,8vw,110px) 0;text-align:center}
.sh-empty-h{font:600 clamp(28px,3.4vw,44px)/1.1 var(--f-display);letter-spacing:-.025em;text-wrap:balance}
.sh-empty-go{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 28px;margin-top:28px}
@media (max-width:760px){
  .sh-grid,.sh-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .sh-grid .p-card{border-radius:var(--r-l)}
  .sh-grid .p-card .p-body{padding:16px 16px 0;gap:4px}
  .sh-grid .p-card .p-name{font-size:17px}
  .sh-grid .p-card .p-meta{font-size:13px}
  .sh-grid .p-card .p-foot{flex-wrap:wrap;gap:8px;padding:10px 16px 16px}
  .sh-grid .p-card .price{font-size:15px}
  .sh-grid .p-card .p-img img{inset:10px 12px 2px;width:calc(100% - 24px);height:calc(100% - 12px)}
  .sh-bar{padding-bottom:16px}
  .sh-count{font-size:19px}
  .sh-fbtn{padding:0 16px}
}

/* ---------- the "Filter and sort" sheet: a right-hand drawer on desktop, a bottom sheet on phones ---------- */
html.sh-lock{overflow:hidden;scrollbar-gutter:stable}
.fs-scrim{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .35s}
.fs-scrim.is-on{opacity:1}
.fs-sheet{position:fixed;z-index:61;top:0;right:0;bottom:0;width:min(480px,100vw);display:flex;flex-direction:column;background:var(--tile);border-radius:var(--r-xl) 0 0 var(--r-xl);box-shadow:-30px 0 80px rgba(0,0,0,.5);transform:translateX(100%);transition:transform .55s var(--ease-out)}
.fs-sheet.is-on{transform:none}
.fs-grab{display:none}
.fs-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 22px 6px 30px}
.fs-title{font:600 28px/1.1 var(--f-display);letter-spacing:-.022em}
.fs-x{color:var(--text);background:rgba(255,255,255,.08);border-radius:50%}
.fs-x:hover{background:rgba(255,255,255,.16)}
.fs-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px 30px 24px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}
.fs-group{padding:22px 0}
.fs-group+.fs-group{border-top:1px solid var(--line)}
.fs-q{margin-bottom:14px;font:600 19px/1.28 var(--f-display);letter-spacing:-.015em}
.fs-chips{display:flex;flex-wrap:wrap;gap:8px}
.fs-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 30px max(22px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--tile);border-radius:0 0 0 var(--r-xl)}
.fs-clear{min-height:44px;padding:0 4px;border:0;background:none;color:var(--link);font:400 17px/1 var(--f-sans);letter-spacing:-.012em;cursor:pointer;transition:opacity .2s,color .2s}
.fs-clear:hover:not(:disabled){text-decoration:underline;text-underline-offset:3px}
.fs-clear:disabled{opacity:.35;cursor:default}
.fs-done{min-width:210px}
@media (max-width:760px){
  .fs-sheet{top:auto;left:0;right:0;width:auto;max-height:min(90svh,760px);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:0 -20px 60px rgba(0,0,0,.5);transform:translateY(105%)}
  .fs-sheet.is-on{transform:none}
  .fs-grab{display:block;width:40px;height:5px;margin:9px auto 0;border-radius:3px;background:rgba(255,255,255,.24)}
  .fs-head{padding:6px 12px 2px 22px}
  .fs-title{font-size:24px}
  .fs-body{padding:2px 22px 14px}
  .fs-group{padding:18px 0}
  .fs-foot{padding:14px 22px max(18px,env(safe-area-inset-bottom));border-radius:0}
  .fs-done{flex:1;min-width:0}
}
@media (prefers-reduced-motion:reduce){
  .fs-sheet,.fs-sheet.is-on{transform:none;transition:opacity .2s}
  .fs-sheet{opacity:0}
  .fs-sheet.is-on{opacity:1}
}

/* ---------- requests: one calm tile with the form in it ---------- */
.sh-ask{padding:0 var(--pad) clamp(36px,5vw,64px)}
.ask-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr);gap:28px clamp(24px,4vw,64px);align-items:center;max-width:calc(var(--max) + var(--pad)*2);margin:0 auto;padding:clamp(28px,4vw,56px);border-radius:var(--r-xl);background:var(--tile)}
.sh-ask .ask-card{max-width:var(--max)}
.ask-h{font:600 clamp(26px,2.6vw,36px)/1.12 var(--f-display);letter-spacing:-.022em;text-wrap:balance}
.req-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;align-items:end}
.req-form .field:first-child{grid-column:1/-1}
.req-go{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px}
.req-go .form-note{min-height:0;flex:1 1 240px}
.req-form .select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:46px;background:var(--tile-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2386868b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/18px}
.req-form .input,.req-form .select{background-color:var(--tile-2)}
main select option{background:var(--tile);color:var(--text)}
/* few phones: the request tile sits beside the phone instead of leaving a lone card */
.sh-grid.is-few{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:stretch}
.shop-fill{display:flex}
.shop-fill .ask-card{flex:1;grid-template-columns:1fr;align-content:center;gap:24px;margin:0;max-width:none}
.nostock{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:center}
.nostock-form{padding:clamp(24px,3.4vw,48px);border-radius:var(--r-xl)}
.nostock-form .req-form{grid-template-columns:1fr}
.nostock-repair{display:flex;gap:14px;align-items:flex-start;margin-top:28px;color:var(--soft);font-size:15px}
.nostock-repair .ico{width:24px;height:24px;margin-top:1px;color:var(--text)}
.nostock-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:30px}
.sh-more{padding:clamp(48px,6vw,88px) 0 clamp(36px,5vw,64px)}
@media (max-width:900px){.ask-card,.nostock{grid-template-columns:1fr}.req-form{grid-template-columns:1fr}}
@media (max-width:760px){.sh-grid.is-few{grid-template-columns:1fr}.sh-ask{padding-left:12px;padding-right:12px}.ask-card{border-radius:var(--r-l)}}

/* ---------- three tiles at the foot of a page: repairs, selling, visiting. Different widths and shades. ---------- */
.sg{padding:12px 12px clamp(56px,7vw,100px)}
.sg-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px;max-width:1700px;margin:0 auto}
.sg-tile{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:clamp(260px,22vw,330px);padding:clamp(26px,3vw,42px);border-radius:var(--r-xl);background:var(--tile);color:var(--text);text-decoration:none;transition:background-color .3s,transform .6s var(--ease-out)}
.sg-tile:hover{background:#1c1c1e}
.sg-tile:active{transform:scale(.99)}
.sg-2{background:var(--tile-2)}
.sg-2:hover{background:#242427}
.sg-h{font:600 clamp(26px,2.6vw,36px)/1.08 var(--f-display);letter-spacing:-.025em}
.sg-1 .sg-h{font-size:clamp(32px,3.6vw,52px)}
.sg-p{max-width:22em;font:400 clamp(16px,1.4vw,19px)/1.4 var(--f-sans);letter-spacing:-.01em;color:var(--soft)}
.sg-tile .textlink{margin-top:auto;padding-top:22px}
@media (max-width:900px){.sg-grid{grid-template-columns:1fr}.sg-tile{min-height:0}.sg-tile .textlink{margin-top:0}}
@media (max-width:760px){.sg{padding:8px 8px 56px}.sg-grid{gap:8px}.sg-tile{border-radius:var(--r-l)}}

/* ======================================================================================================== */
/* ---------- product page: Apple's buy page ---------- */
.pdp{position:relative;padding:0 0 clamp(52px,6vw,92px);background:#000}
.pdp-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(32px,5vw,88px);align-items:start;padding-top:6px}
.pdp-gallery{min-width:0}
@media (min-width:901px){.pdp-gallery{position:sticky;top:calc(var(--head) + 16px)}}
.pdp-stage-wrap{perspective:1400px}
.pdp-stage{position:relative;height:clamp(460px,calc(100svh - var(--head) - 150px),720px);border-radius:var(--r-xl);background:var(--tile);overflow:hidden;isolation:isolate;--glow:#9a9ca1;transition:--glow 1s var(--ease)}
.motion .pdp-stage{animation:sh-tilt 1.2s .05s var(--ease-out) both;transform-origin:50% 100%}
.pdp-stage::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 54% 46% at 50% 54%,color-mix(in srgb,var(--glow) 46%,#8d96b0 0%),transparent 74%);opacity:.5}
.pdp-stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;z-index:0;pointer-events:none;background:linear-gradient(transparent,rgba(0,0,0,.35))}
.pdp-img{position:absolute;left:50%;top:47%;z-index:1;width:auto;max-width:none;height:76%;transform:translate(-50%,-50%);filter:drop-shadow(0 40px 46px rgba(0,0,0,.65));transition:opacity .6s var(--ease)}
.pdp-stage.is-live .pdp-img{opacity:0}
.pdp-3d{position:absolute;inset:0;z-index:2;touch-action:pan-y;outline-offset:-6px;border-radius:var(--r-xl)}
.pdp-3d canvas{opacity:0;transition:opacity .7s var(--ease)}
.pdp-stage.is-live .pdp-3d canvas{opacity:1}
.pdp-illus{position:absolute;right:18px;top:16px;z-index:4}
.pdp-hint{position:absolute;left:20px;top:18px;z-index:4;display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0;font:500 14px/1 var(--f-sans);color:var(--soft);pointer-events:none}
.pdp-hint .ico{width:18px;height:18px}
.pdp-views{position:absolute;left:50%;bottom:20px;z-index:4;display:none;grid-template-columns:repeat(3,1fr);width:min(300px,calc(100% - 40px));padding:3px;border-radius:13px;background:rgba(58,58,60,.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transform:translateX(-50%)}
.js .pdp-views{display:grid}
.pdp-views::before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / 3);border-radius:10px;background:#636366;box-shadow:0 2px 8px rgba(0,0,0,.35);transform:translateX(calc(var(--i,0) * 100%));transition:transform .4s var(--ease-out)}
.seg-btn{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 10px;border:0;border-radius:10px;background:none;color:var(--soft);font:500 15px/1 var(--f-sans);letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:color .25s}
.seg-btn:hover{color:var(--text)}
.seg-btn[aria-pressed="true"]{color:#fff}
.seg-btn:disabled{opacity:.4;cursor:not-allowed}
.seg-btn .ico{width:16px;height:16px}
.pdp-note{margin-top:14px;font-size:13px;color:var(--mute)}
.pdp-status{margin-top:6px;font-size:14px;font-weight:600;color:var(--soft)}
.pdp-status:empty{display:none}
@media (prefers-reduced-transparency:reduce){.pdp-views{background:var(--tile-3);-webkit-backdrop-filter:none;backdrop-filter:none}}

.pdp-info{min-width:0;padding-top:clamp(4px,1.6vw,22px)}
.pdp-eyebrow{font:600 15px/1.3 var(--f-sans);letter-spacing:-.005em;color:var(--soft)}
.pdp-eyebrow .is-hot{color:#ff9f43}
.pdp-name{margin:8px 0 0;font:600 clamp(32px,3.6vw,52px)/1.07 var(--f-display);letter-spacing:-.028em;text-transform:none;color:var(--text);text-wrap:balance}
.pdp-blurb{margin-top:12px;max-width:30em;font-size:17px;line-height:1.4;color:var(--soft)}
.pdp-price{margin-top:12px;font:400 clamp(19px,1.7vw,23px)/1.3 var(--f-sans);letter-spacing:-.012em;color:var(--soft)}
.pdp-price b{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
.pdp-opts{display:grid;gap:34px;margin-top:clamp(26px,3.2vw,42px)}
.pdp-set{min-width:0;margin:0;padding:0;border:0}
.pdp-q{float:left;width:100%;margin-bottom:16px;padding:0;font:600 21px/1.25 var(--f-display);letter-spacing:-.015em}
.pdp-q+*{clear:both}
.pdp-sw{display:flex;flex-wrap:wrap;gap:12px}
.pdp-dot{position:relative;width:40px;height:40px;cursor:pointer}
.pdp-dot input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.pdp-dot i{position:absolute;inset:6px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),inset 0 -6px 10px rgba(0,0,0,.25);transition:transform .3s var(--ease-out)}
.pdp-dot:hover i{transform:scale(1.1)}
.pdp-dot::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid transparent;transition:border-color .2s}
.pdp-dot.is-on::after,.pdp-dot:has(input:checked)::after{border-color:var(--blue)}
.pdp-dot:has(input:focus-visible)::after{outline:2px solid var(--link);outline-offset:2px}
.pdp-dot.is-out{opacity:.4}
.pdp-picked{margin-top:10px;font-size:15px;color:var(--soft)}
.pdp-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pdp-tiles.n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pdp-tile{position:relative;display:grid;align-content:start;gap:5px;min-height:88px;padding:18px 20px;border:1px solid rgba(255,255,255,.22);border-radius:var(--r-m);cursor:pointer;transition:border-color .2s,box-shadow .2s,background-color .2s,transform .12s}
.pdp-tile input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.pdp-tile:hover{border-color:rgba(255,255,255,.5)}
.pdp-tile:active{transform:scale(.98)}
.pdp-tile.is-on,.pdp-tile:has(input:checked){border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:rgba(47,107,255,.08)}
.pdp-tile:has(input:focus-visible){outline:2px solid var(--link);outline-offset:3px}
.pdp-tile.is-out{opacity:.5}
.pt-cap{font:600 22px/1.1 var(--f-display);letter-spacing:-.015em}
.pt-p{font:400 15px/1.3 var(--f-sans);color:var(--soft);font-variant-numeric:tabular-nums}
.pt-g{font:400 13px/1.3 var(--f-sans);color:var(--mute)}
.pdp-help{margin-top:12px;font-size:14px;color:var(--mute)}
.pdp-help .textlink{font-size:14px}
.pdp-grade{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:22px;font-size:15px;color:var(--soft)}
.pdp-grade:not([hidden])+.pdp-stock{margin-top:18px}
.pdp-grade .gb{font-size:15px}
.pdp-stock{display:flex;align-items:center;gap:8px;margin:clamp(26px,3vw,36px) 0 12px;font:500 15px/1.3 var(--f-sans);color:var(--soft)}
.pdp-stock::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok)}
.pdp-stock.out::before{background:var(--mute)}
.pdp-cta{display:grid;gap:18px;justify-items:center}
.pdp-add{min-height:58px;font-size:18px;font-weight:500}
.pdp-add[disabled]{background:var(--tile-2);color:var(--soft);opacity:1}
html:not(.js) .pdp-add{display:none}
.pdp-cta .textlink{min-height:44px}
.pdp-soldout,.pdp-nojs{margin-top:14px;font-size:15px;color:var(--soft)}
.pdp-soldout a{color:var(--link);text-underline-offset:3px}
.pdp-facts{display:grid;gap:24px;margin-top:clamp(32px,4vw,52px);padding-top:30px;border-top:1px solid var(--line)}
.pdp-facts li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;align-items:start}
.pdp-facts .ico{width:28px;height:28px;stroke-width:1.5;color:var(--text)}
.pdp-facts b{display:block;font:600 17px/1.3 var(--f-sans);letter-spacing:-.012em}
.pdp-facts span span{display:block;margin-top:2px;font-size:15px;line-height:1.4;color:var(--soft)}
@media (max-width:900px){
  .pdp-grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .pdp-stage{height:auto;aspect-ratio:1/1.08}
  .pdp-img{top:44%;height:68%}
  .pdp-views{bottom:14px}
}
@media (min-width:561px) and (max-width:900px){.pdp-stage{aspect-ratio:auto;height:clamp(440px,66svh,640px)}}
@media (max-width:560px){
  .pdp-tiles.n3{gap:8px}
  .pdp-tiles.n3 .pdp-tile{padding:14px 12px;min-height:84px}
  .pdp-tiles.n3 .pt-cap{font-size:18px}
  .hint-txt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* grades as Apple's compare columns: a battery glyph for each, then plain rows */
.cmp{padding:clamp(80px,10vw,140px) 0;background:var(--bg-2)}
.cmp-title,.lb-h,.fq-h,.rl-title{font:600 clamp(30px,4vw,52px)/1.08 var(--f-display);letter-spacing:-.022em;color:var(--text);text-wrap:balance}
.cmp-title{text-align:center;margin:0 auto clamp(44px,6vw,80px)}
.cmp-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,64px);text-align:center}
.cmp-col{display:grid;justify-items:center;align-content:start;gap:8px;padding-top:6px}
.cmp-bat{position:relative;display:block;width:78px;height:36px;margin-bottom:22px;padding:4px;border:2.5px solid rgba(245,245,247,.5);border-radius:11px}
.cmp-bat::after{content:"";position:absolute;right:-8px;top:50%;width:4px;height:13px;margin-top:-6.5px;border-radius:0 3px 3px 0;background:rgba(245,245,247,.5)}
.cmp-bat i{display:block;height:100%;border-radius:6px;background:var(--text);transform-origin:left center;transform:scaleX(var(--lvl))}
.cmp-name{font:600 clamp(26px,2.6vw,34px)/1.1 var(--f-display);letter-spacing:-.02em}
.cmp-line{font-size:17px;color:var(--soft)}
.cmp-yours{margin-top:2px;font:600 14px/1.3 var(--f-sans);color:var(--link)}
.cmp-dl{display:grid;gap:18px;width:100%;max-width:280px;margin-top:22px;padding-top:24px;border-top:1px solid var(--line)}
.cmp-dl div{display:grid;gap:3px}
.cmp-dl dt{font:400 14px/1.3 var(--f-sans);color:var(--mute)}
.cmp-dl dd{margin:0;font:600 17px/1.3 var(--f-sans)}
.cmp-col.is-yours .cmp-dl{border-top-color:var(--blue)}
.cmp-more{margin-top:48px;text-align:center}
@media (max-width:760px){
  .cmp{padding:64px 0 56px}
  .cmp-title{margin-bottom:34px}
  .cmp-cols{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);margin:0 calc(var(--pad) * -1);padding:0 var(--pad) 6px;scrollbar-width:none}
  .cmp-cols::-webkit-scrollbar{display:none}
  .cmp-col{flex:0 0 min(80%,310px);scroll-snap-align:start;padding:30px 22px 28px;border-radius:var(--r-l);background:var(--tile)}
  .cmp-dl{max-width:none}
}
@media (max-width:760px){.cmp-cols{grid-template-columns:1fr;gap:56px}}

/* the lab: one wide tile, words on the left, the bench on the right */
.lb{padding:12px;background:#000;perspective:1600px}
.lb-tile{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);max-width:1700px;margin:0 auto;border-radius:var(--r-xl);background:var(--tile);overflow:hidden}
.lb-copy{padding:clamp(34px,5vw,76px)}
.lb-p{margin-top:12px;max-width:26em;font:400 clamp(17px,1.5vw,21px)/1.4 var(--f-sans);letter-spacing:-.012em;color:var(--soft)}
.lb-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 22px;margin:34px 0 30px;font-size:15px;line-height:1.3;color:var(--soft)}
.lb-list li{display:flex;align-items:flex-start;gap:8px}
.lb-list .ico{width:16px;height:16px;margin-top:1px;stroke-width:2.4;color:var(--link)}
.lb-pic{position:relative;min-height:420px;overflow:hidden}
.lb-pic picture,.lb-pic img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.lb-pic img{transform:scale(1.12);filter:brightness(.82) saturate(.9)}
.lb-pic::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--tile),rgba(22,22,23,0) 38%)}
@media (max-width:900px){.lb-tile{grid-template-columns:1fr}.lb-pic{min-height:0;aspect-ratio:3/2;order:-1}.lb-pic::after{background:linear-gradient(0deg,var(--tile),rgba(22,22,23,0) 40%)}.lb-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.lb{padding:8px}.lb-tile{border-radius:var(--r-l)}}

/* questions */
.fq{padding:clamp(72px,9vw,128px) 0;background:var(--bg-2)}
.fq-in{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(28px,5vw,88px);align-items:start}
.fq-more{margin-top:18px}
.fq-list{border-top:1px solid var(--line)}
.fq-item{border-bottom:1px solid var(--line)}
.fq-item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:14px 0;list-style:none;cursor:pointer;font:600 clamp(19px,1.8vw,23px)/1.3 var(--f-display);letter-spacing:-.015em}
.fq-item summary::-webkit-details-marker{display:none}
.fq-item summary:hover{color:#fff}
.fq-item .ico{width:22px;height:22px;color:var(--soft);transition:transform .35s var(--ease-out)}
.fq-item[open] .ico{transform:rotate(45deg)}
.fq-item p{max-width:42em;padding:0 0 26px;font-size:17px;line-height:1.45;color:var(--soft)}
.motion .fq-item[open] p{animation:sh-rise .45s var(--ease-out) both}
@media (max-width:900px){.fq-in{grid-template-columns:minmax(0,1fr)}}

/* other phones: the sideways rail he likes */
.rl{padding:clamp(72px,9vw,120px) 0 clamp(56px,7vw,96px);background:#000;--rail:max(var(--pad),calc((100vw - var(--max)) / 2))}
.rl-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(14px,2vw,24px)}
.rl-title{font-size:clamp(28px,3.1vw,44px)}
.rl-ctrl{display:flex;gap:12px;flex:none}
.rl-btn{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:var(--text);cursor:pointer;transition:background-color .2s,opacity .2s,transform .12s}
.rl-btn:hover{background:rgba(255,255,255,.2)}
.rl-btn:active{transform:scale(.94)}
.rl-btn:disabled{opacity:.3;cursor:default}
.rl-btn .ico{width:20px;height:20px;stroke-width:2.2}
.rl-rail{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--rail);padding:16px var(--rail) 44px;scrollbar-width:none}
.rl-rail::-webkit-scrollbar{display:none}
.rl-item{flex:none;width:clamp(260px,24vw,310px);height:clamp(430px,33vw,470px);scroll-snap-align:start;display:flex}
.rl-item .p-card{flex:1;transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px));transition:transform .6s var(--ease-out),background-color .3s,box-shadow .5s var(--ease-out)}
.rl-item .p-card:hover{--lift:-6px;transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px))}
.rl-item .p-card:active{transform:perspective(1100px) scale(.985)}
.rl-item .p-card.is-tilt{transition:transform .12s linear,background-color .3s,box-shadow .5s var(--ease-out)}
.rl-item .p-img::before{content:"";position:absolute;left:12%;right:12%;top:16%;bottom:2%;z-index:0;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--glow,#9a9ca1) 70%,transparent),transparent);opacity:.42;filter:blur(22px);transition:opacity .5s}
.rl-item .p-card:hover .p-img::before{opacity:.75}
.rl-item .p-img img{z-index:1}
.rl-note{margin-top:-24px;font-size:13px;color:var(--mute)}
@media (max-width:760px){.rl-item{width:min(72vw,280px);height:440px}.rl-rail{gap:12px}}

/* ======================================================================================================== */
/* ---------- basket: Apple's bag ---------- */
.ct{padding-bottom:clamp(36px,5vw,64px)}
.ct-title{font-size:clamp(32px,4vw,52px)}
.ct-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:clamp(28px,4vw,72px);align-items:start;padding-top:clamp(8px,2vw,24px)}
.cr-list{border-top:1px solid var(--line)}
.cr{display:grid;grid-template-columns:clamp(96px,11vw,148px) minmax(0,1fr) auto;gap:16px clamp(18px,3vw,36px);align-items:center;padding:clamp(20px,3vw,30px) 0;border-bottom:1px solid var(--line)}
.cr-pic{position:relative;display:block;aspect-ratio:1/1.12;border-radius:var(--r-l);background:var(--tile);overflow:hidden}
.cr-pic img{position:absolute;inset:0;margin:auto;width:auto;max-width:none;height:84%;filter:drop-shadow(0 12px 14px rgba(0,0,0,.55))}
.cr-name{font:600 clamp(19px,1.9vw,25px)/1.2 var(--f-display);letter-spacing:-.018em}
.cr-name a{text-decoration:none}
.cr-name a:hover{text-decoration:underline;text-underline-offset:4px}
.cr-opts{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;margin-top:6px;font-size:15px;color:var(--soft)}
.cr-opts .gb{font-size:15px;font-weight:500;color:var(--soft)}
.cr-o+.cr-o::before{content:"·";margin-right:8px;color:var(--mute)}
.cr-ctl{display:flex;align-items:center;flex-wrap:wrap;gap:4px 22px;margin-top:14px}
.cr .qty{display:inline-flex;align-items:center;margin:0;border:0;border-radius:var(--r-m);background:var(--tile-2)}
.cr .qty button{width:44px;height:44px;border-radius:var(--r-m);color:var(--text);transition:background-color .2s,opacity .2s}
.cr .qty button:hover:not(:disabled){background:rgba(255,255,255,.08)}
.cr .qty button:disabled{opacity:.3;cursor:not-allowed}
.cr .qty span{min-width:30px;font:600 17px/1 var(--f-sans);text-align:center;font-variant-numeric:tabular-nums}
.cr-remove{min-height:44px;padding:0;border:0;background:none;color:var(--link);font:400 15px/1 var(--f-sans);cursor:pointer}
.cr-remove:hover{text-decoration:underline;text-underline-offset:3px}
.cr-price{font:600 clamp(19px,1.9vw,25px)/1.2 var(--f-sans);letter-spacing:-.015em;align-self:start;font-variant-numeric:tabular-nums}
.cs{position:sticky;top:calc(var(--head) + 16px);display:grid;gap:14px;padding:clamp(24px,2.8vw,34px);border-radius:var(--r-xl);background:var(--tile)}
.cs-row{display:flex;justify-content:space-between;gap:12px;font-size:17px;color:var(--soft)}
.cs-row b{font-weight:500;color:var(--text);font-variant-numeric:tabular-nums}
.cs-total{padding-top:16px;border-top:1px solid var(--line);font:600 21px/1.2 var(--f-display);letter-spacing:-.015em;color:var(--text)}
.cs-total b{font-weight:600}
.cs-note{font-size:14px;line-height:1.45;color:var(--mute)}
.cs [data-checkout-note]:empty{display:none}
.cs .btn{min-height:54px}
.cs-facts{display:grid;gap:14px;margin-top:6px;padding-top:20px;border-top:1px solid var(--line);font-size:14px;color:var(--soft)}
.cs-facts li{display:flex;align-items:center;gap:12px}
.cs-facts .ico{width:22px;height:22px;stroke-width:1.5;color:var(--text)}
.cs-more{justify-self:start}
.ct-empty{padding:clamp(8px,2vw,24px) 0 clamp(8px,2vw,24px)}
.ct-empty-go{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:28px}
.cart-nojs{padding:12px 0;color:var(--soft)}
.ct-more{padding:clamp(24px,4vw,56px) 0 clamp(40px,6vw,72px)}
@media (max-width:900px){.ct-grid{grid-template-columns:minmax(0,1fr)}.cs{position:static}}
@media (max-width:560px){.cr{grid-template-columns:84px minmax(0,1fr);gap:12px 16px}.cr-price{grid-column:2;align-self:auto}}

/* ---------- search: a big Apple field and clean results ---------- */
.sr-form{position:relative;max-width:820px;margin-top:clamp(18px,2.4vw,30px)}
.sr-form>.ico{position:absolute;left:22px;top:50%;width:24px;height:24px;margin-top:-12px;color:var(--mute);pointer-events:none}
.sr-input{width:100%;min-height:64px;padding:0 24px 0 62px;border:1px solid transparent;border-radius:var(--r-l);background:var(--tile);color:var(--text);font:400 clamp(19px,2vw,24px)/1.2 var(--f-display);letter-spacing:-.018em;transition:border-color .2s,box-shadow .2s,background-color .2s}
.sr-input::placeholder{color:var(--mute)}
.sr-input:hover{background:#1c1c1e}
.sr-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,107,255,.25);background:#1a1a1c}
.sr-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;cursor:pointer;background:rgba(255,255,255,.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='m7 7 10 10M17 7 7 17'/%3E%3C/svg%3E") center/12px no-repeat}
.sr-input::-webkit-search-cancel-button:hover{background-color:rgba(255,255,255,.3)}
.sr-pop{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px}
.sr-pop .lab{margin-right:6px}
.sr-pop .chip{text-decoration:none}
.sr-pages{margin-top:clamp(44px,6vw,80px)}
.sr-pages .sh-sub{font-size:clamp(24px,2.4vw,32px);margin-bottom:12px}
.sh-grid[hidden]~.sr-pages{margin-top:clamp(6px,1.4vw,16px)}
.sr-list{margin-top:6px;border-top:1px solid var(--line)}
.sr-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 16px;min-height:72px;padding:14px 2px;text-decoration:none;border-bottom:1px solid var(--line)}
.sr-list .k{grid-row:1;font:400 13px/1.3 var(--f-sans);color:var(--mute)}
.sr-list b{grid-row:2;font:600 clamp(19px,1.8vw,23px)/1.25 var(--f-display);letter-spacing:-.015em}
.sr-list .ico{grid-row:1/3;grid-column:2;width:20px;height:20px;color:var(--soft);transition:transform .3s var(--ease-out),color .2s}
.sr-list a:hover b{color:#fff}
.sr-list a:hover .ico{transform:translateX(4px);color:var(--text)}

/* ======================================================================================================== */
/* ---------- laptops and gadgets (14 Oct): the hub's big tiles and the category pages ----------
   gd- prefix. The hub is a bento of four tiles in different widths and shades. Each tile's picture drifts with the scroll
   (GSAP, on .gd-media) and leans toward a fine pointer (CSS variables, on .gd-img), so the two never fight over one transform. */
.gd-answer{margin-top:14px;max-width:42em;font:400 clamp(17px,1.55vw,21px)/1.42 var(--f-sans);letter-spacing:-.012em;color:var(--soft)}
.gd{padding:12px 12px clamp(28px,4vw,56px)}
.gd .sh-illus{margin-top:22px}
.gd-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;max-width:1700px;margin:0 auto;perspective:1600px}
.gd-cell{display:flex;min-width:0;transform-origin:50% 100%}
.gd-c1,.gd-c4{grid-column:span 7}
.gd-c2,.gd-c3{grid-column:span 5}
.gd-tile{position:relative;flex:1;display:flex;flex-direction:column;min-height:clamp(400px,37vw,560px);padding:clamp(28px,3.4vw,52px);border-radius:var(--r-xl);background:var(--tile);color:var(--text);text-decoration:none;overflow:hidden;isolation:isolate;transition:background-color .3s}
.gd-c2 .gd-tile,.gd-c3 .gd-tile{background:var(--tile-2)}
.gd-tile:hover{background:#1c1c1e}
.gd-c2 .gd-tile:hover,.gd-c3 .gd-tile:hover{background:#242427}
.gd-tile:active .gd-img{transform:scale(.97)}
.gd-tile::before{content:"";position:absolute;z-index:0;left:20%;right:-8%;bottom:-10%;height:72%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--glow,#9a9ca1) 60%,transparent),transparent);opacity:.5;filter:blur(34px);transition:opacity .5s}
.gd-tile:hover::before{opacity:.82}
.gd-copy{position:relative;z-index:2;display:grid;gap:8px;justify-items:start;max-width:20em}
.gd-h{font:600 clamp(30px,3.4vw,50px)/1.05 var(--f-display);letter-spacing:-.028em;text-wrap:balance}
.gd-p{font:400 clamp(17px,1.5vw,21px)/1.35 var(--f-sans);letter-spacing:-.012em;color:var(--soft)}
.gd-copy .textlink{margin-top:10px;min-height:44px}
.gd-media{position:absolute;z-index:1;display:block}
.gd-img{display:block;width:100%;height:auto;max-width:none;filter:drop-shadow(0 30px 34px rgba(0,0,0,.55));transform:translate3d(var(--tx,0px),var(--ty,0px),0) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .7s var(--ease-out)}
.gd-img.is-tilt{transition:transform .14s linear}
.gd-c1 .gd-media{right:1%;bottom:-5%;width:min(62%,640px)}
.gd-c2 .gd-media,.gd-c3 .gd-media{left:0;right:0;margin:0 auto;bottom:-7%;width:min(84%,420px)}
.gd-c4 .gd-media{right:7%;bottom:-6%;width:min(44%,440px)}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gd-tile:hover .gd-img{--ty:-8px}
}
@media (max-width:900px){
  .gd-c1,.gd-c2,.gd-c3,.gd-c4{grid-column:1/-1}
  .gd-tile{min-height:clamp(420px,70vw,520px)}
  .gd-c1 .gd-media{right:0;left:0;margin:0 auto;bottom:-6%;width:min(78%,520px)}
  .gd-c4 .gd-media{right:0;left:0;margin:0 auto;bottom:-8%;width:min(54%,360px)}
  .gd-c2 .gd-media,.gd-c3 .gd-media{width:min(80%,420px)}
}
@media (max-width:760px){
  .gd{padding:8px 8px 32px}
  .gd-grid{gap:8px}
  .gd-tile{min-height:410px;border-radius:var(--r-l);padding:26px 24px}
  .gd .wrap{padding-left:var(--pad);padding-right:var(--pad)}
}

/* a category page: the picture in one tile, the request form in the next */
.gd-main{padding-top:6px}
.gd-ask{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:12px;align-items:stretch}
.gd-pic{position:relative;display:grid;place-items:center;min-height:clamp(300px,34vw,520px);border-radius:var(--r-xl);background:var(--tile-2);overflow:hidden;isolation:isolate}
.gd-pic::before{content:"";position:absolute;inset:14% 12% 6%;z-index:0;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--glow,#9a9ca1) 62%,transparent),transparent);opacity:.55;filter:blur(30px)}
.gd-pic .gd-media{position:relative;width:min(76%,440px)}
.gd-form{display:grid;gap:22px;align-content:center;padding:clamp(24px,3.4vw,48px);border-radius:var(--r-xl)}
.gd-form .req-form{grid-template-columns:1fr}
.gd-collect{font-size:14px;line-height:1.45;color:var(--mute)}
.gd-collect a{color:var(--link);text-underline-offset:3px;white-space:nowrap}
.gd-sib{padding:clamp(40px,5vw,72px) 0 0}
.gd-sibs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gd-sibs li{display:flex}
.gd-sib-a{position:relative;flex:1;display:flex;align-items:center;gap:14px;min-height:92px;padding:14px 18px 14px 14px;border-radius:var(--r-l);background:var(--tile);color:var(--text);text-decoration:none;transition:background-color .3s,transform .5s var(--ease-out)}
.gd-sib-a:hover{background:#1c1c1e}
.gd-sib-a:active{transform:scale(.985)}
.gd-sib-pic{flex:none;display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:radial-gradient(closest-side,color-mix(in srgb,var(--glow,#9a9ca1) 38%,transparent),transparent)}
.gd-sib-img{width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(0,0,0,.5))}
.gd-sib-t{flex:1;font:600 17px/1.2 var(--f-display);letter-spacing:-.012em}
.gd-sib-a .ico{flex:none;width:16px;height:16px;color:var(--mute);transition:transform .3s var(--ease-out),color .2s}
.gd-sib-a:hover .ico{transform:translateX(3px);color:var(--text)}
.gd-sib-all{background:var(--tile-2);padding-left:20px}
.gd-sib-all:hover{background:#242427}
.gd-more-link{margin-top:22px}
@media (max-width:1000px){.gd-sibs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.gd-ask{grid-template-columns:1fr}.gd-pic{min-height:clamp(260px,62vw,360px)}}
@media (max-width:520px){.gd-sibs{grid-template-columns:1fr}.gd-sib-a{min-height:84px}}
@media (max-width:760px){.gd-pic,.gd-form{border-radius:var(--r-l)}}
@media (prefers-reduced-motion:reduce){.gd-img,.gd-img.is-tilt{transform:none;transition:none}.gd-tile:active .gd-img{transform:none}}
