/* account.css (v88): the account hub (account.html + assets/js/account.js).
   Design-system tokens only, both themes; every class starts with ah- so the
   legacy global rules (.card, .tile, .pill, .tab, .order-card ...) never
   reach it. Gradient, the four permitted places only: the panel eyebrows, the
   3px hairline on the overview card, and ONE .btn-primary per panel (Shop now
   on the overview, Compare memberships, Add store credit, Apply / Open the
   partner dashboard; v91: Go VIP takes Compare memberships' place).
   Everything else is ink on white, or white on ink. */

/* page-level tokens (one place, both themes, like credit.css --cr-track) */
:root{--ah-info:#2E4FA8;--ah-img:#FFFFFF;--ah-skel-a:var(--c-panel);--ah-skel-b:var(--c-panel-2);}
html.vp-dark{--ah-info:#93B0F5;--ah-img:#17171B;}

/* ═══════════════════════════════════════════════════════════════════════════
   THE ACCOUNT BAR  ·  built in the page, moved by account.js into the sticky
   header (under the nav row and the sale banner), so it sticks with it.
   ═══════════════════════════════════════════════════════════════════════ */
.ah-bar{position:relative;border-top:1px solid var(--c-line);font-family:var(--font);}
.ah-bar[hidden]{display:none;}
.ah-bar-in{display:flex;align-items:stretch;gap:var(--s4);height:52px;}
/* not inside the header yet (no JS, or the header failed): a plain strip */
main .ah-bar{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-card);margin:0 0 var(--s5);}
main .ah-bar .ah-bar-in{width:auto;padding:0 var(--s3);}

.ah-who{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:0;max-width:300px;color:var(--c-ink);
  text-decoration:none;border-radius:var(--r-sm);}
.ah-who:hover .ah-who-name{text-decoration:underline;text-underline-offset:3px;}
.ah-who-av{width:30px;height:30px;font-size:.86rem;box-shadow:none;}
.ah-who-name{font-size:.86rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.ah-tier{flex:0 0 auto;display:inline-flex;align-items:center;padding:3px 9px 2px;border-radius:var(--r-pill);
  border:1px solid var(--c-line-2);color:var(--c-ink-2);font-size:.6rem;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;line-height:1.4;white-space:nowrap;}
.ah-tier:empty{display:none;}

/* v91: the tabs start right after the name block; account.js spreads them
   evenly across the row (--ah-gap, up to 44px) and they scroll when they do not fit */
.ah-tabs{position:relative;display:flex;align-items:stretch;gap:var(--ah-gap,2px);flex:1 1 auto;min-width:0;margin:0;padding:0;list-style:none;
  overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;
  scroll-behavior:smooth;justify-content:flex-start;
  /* no transitions on the row itself: with reduced motion every element gets a
     .01ms transition, so the gap lagged a frame and the fade stuck on a row that fits */
  transition:none;}
.ah-tabs>li[hidden]{display:none;}
.ah-tabs::-webkit-scrollbar{display:none;}
.ah-tabs.ovf{justify-content:flex-start;}
.ah-tabs.ovf-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);}
.ah-tabs.ovf-l{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px);mask-image:linear-gradient(90deg,transparent,#000 40px);}
.ah-tabs.ovf-l.ovf-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);}
.ah-tabs>li{display:flex;flex:0 0 auto;}
.ah-tab{position:relative;display:inline-flex;align-items:center;gap:7px;height:100%;padding:0 13px;
  color:var(--c-ink-3);font-size:.86rem;font-weight:600;letter-spacing:-.005em;white-space:nowrap;text-decoration:none;
  border-radius:0;transition:color var(--t) var(--ease);}
/* the bold label's width is reserved, so the row never shifts when a tab turns bold */
.ah-tab-l{display:inline-grid;}
/* v91: an icon on every tab (inline SVG, the label's colour) */
.ah-tab-i{width:16px;height:16px;flex:0 0 auto;}
.ah-tab[aria-current="page"] .ah-tab-i{stroke-width:2.2;}
.ah-tab-l::after{content:attr(data-w);grid-area:1/1;font-weight:800;visibility:hidden;height:0;overflow:hidden;}
.ah-tab-l>span{grid-area:1/1;}
.ah-tab::after{content:"";position:absolute;left:13px;right:13px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--c-ink);
  transform:scaleX(0);transform-origin:left center;transition:transform var(--t) var(--ease-out);}
.ah-tab:hover{color:var(--c-ink);}
.ah-tab:hover::after{transform:scaleX(1);}
.ah-tab[aria-current="page"]{color:var(--c-ink);font-weight:800;}
.ah-tab[aria-current="page"]::after{transform:scaleX(1);}
.ah-tab:focus-visible{box-shadow:inset 0 0 0 2px var(--c-focus);border-radius:var(--r-xs);}
.ah-n{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 6px;border-radius:var(--r-pill);
  background:var(--c-panel);color:var(--c-ink-2);font-size:.64rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1;}
.ah-n.hot{background:var(--c-solid);color:var(--c-solid-ink);}
.ah-n:empty,.ah-n[hidden]{display:none;}
/* v91: Customize your header, at the end of the bar */
.ah-cust-btn{flex:0 0 auto;align-self:center;width:34px;height:34px;margin:0 0 0 2px;border-radius:50%;border:1px solid var(--c-line-2);
  background:var(--c-card);color:var(--c-ink-2);display:grid;place-items:center;cursor:pointer;padding:0;
  transition:border-color var(--t) var(--ease),color var(--t) var(--ease),transform var(--t-fast) var(--spring);}
.ah-cust-btn:hover{border-color:var(--c-ink);color:var(--c-ink);}
.ah-cust-btn:active{transform:scale(.92);}
.ah-cust-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--c-focus);}
.ah-cust-btn svg{width:17px;height:17px;}

/* v91: all eight tabs (with icons) fit from 1180px up; under that they scroll */
@media (max-width:1366px){ .ah-tab{padding:0 10px;gap:6px;} .ah-tab::after{left:10px;right:10px;} }
@media (max-width:1180px){ .ah-tier{display:none;} .ah-tab{padding:0 9px;gap:6px;} .ah-tab::after{left:9px;right:9px;} }
@media (max-width:899px){
  .ah-who{display:none;}
  .ah-bar-in{height:46px;gap:0;width:100%;padding:0 max(8px,4vw);}
  .ah-tabs,.ah-tabs.ovf{justify-content:flex-start;}
  .ah-tab{font-size:.84rem;padding:0 12px;}
  .ah-tab::after{left:12px;right:12px;}
  .ah-cust-btn{width:32px;height:32px;margin-left:6px;}
}

/* ═══════════════════════════════════════════════════════════════════════════
   THE HUB
   ═══════════════════════════════════════════════════════════════════════ */
.ah{padding-top:var(--s6);padding-bottom:var(--s9);font-family:var(--font);}
.ah-panel{display:block;}
.ah-panel[hidden]{display:none;}
.ah-panel.in{animation:ahIn .34s var(--ease-out);}
@keyframes ahIn{from{opacity:0;transform:translate3d(0,8px,0);}to{opacity:1;transform:none;}}

.ah-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;margin:0 0 var(--s5);}
.ah-head-t{min-width:0;max-width:720px;}
.ah-head .eyebrow{margin:0 0 10px;}
.ah-h{margin:0;font-size:clamp(1.7rem,3.1vw,2.35rem);font-weight:800;letter-spacing:-.035em;line-height:1.08;color:var(--c-ink);outline:none;}
.ah-lead{margin:10px 0 0;max-width:62ch;font-size:var(--fs-sm);line-height:1.6;color:var(--c-ink-2);}
/* the heading takes focus when a panel opens (for screen readers): no ring on it */
.ah-h:focus-visible,.ah-hero-h:focus-visible{box-shadow:none;}
.ah-head-act{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}

.ah-card{position:relative;background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:24px;box-shadow:var(--sh-xs);min-width:0;}
.ah-card+.ah-card{margin-top:var(--s4);}
.ah-card-h{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin:0 0 16px;}
.ah-card-t{margin:0;font-size:1.02rem;font-weight:800;letter-spacing:-.015em;color:var(--c-ink);}
.ah-link{display:inline-flex;align-items:center;gap:6px;color:var(--c-ink);font-size:.8rem;font-weight:700;text-decoration:underline;
  text-underline-offset:3px;text-decoration-thickness:1px;white-space:nowrap;background:none;border:0;padding:0;cursor:pointer;font-family:inherit;}
.ah-link:hover{text-decoration-thickness:2px;}
.ah-link svg{width:13px;height:13px;transition:transform var(--t) var(--ease-out);}
.ah-link:hover svg{transform:translateX(2px);}
.ah-k{margin:0;font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--c-ink-3);}
.ah-mut{color:var(--c-ink-3);}
.ah-p{margin:0;font-size:var(--fs-sm);line-height:1.6;color:var(--c-ink-2);}
.ah-p b,.ah-p strong{color:var(--c-ink);}
.ah-p a{color:var(--c-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;}
.ah-mono{font-family:'Courier New',monospace;font-weight:700;letter-spacing:.04em;}
.ah-err{margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--c-bad);font-weight:600;}
.ah-err .ah-link{color:var(--c-ink);}   /* the space before it separates; no margin, so a wrapped Try again lines up */
.ah-ok-msg{margin:10px 0 0;font-size:.82rem;font-weight:600;color:var(--c-ok);}
.ah-msg{margin:10px 0 0;font-size:.82rem;font-weight:600;color:var(--c-bad);}
.ah-msg:empty,.ah-ok-msg:empty{display:none;}

/* status pills: colour on text and outline only (contrast checked on card and panel, both themes) */
.ah-st{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 2px;border-radius:var(--r-pill);border:1px solid currentColor;
  font-size:.62rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;line-height:1.45;white-space:nowrap;}
.ah-st.ok{color:var(--c-ok);} .ah-st.warn{color:var(--c-warn);} .ah-st.bad{color:var(--c-bad);}
.ah-st.info{color:var(--ah-info);} .ah-st.mute{color:var(--c-ink-3);}

/* skeleton while a region loads */
.ah-skel{display:block;border-radius:var(--r-md);background:linear-gradient(90deg,var(--ah-skel-a) 0%,var(--ah-skel-b) 50%,var(--ah-skel-a) 100%);
  background-size:200% 100%;animation:ahSkel 1.4s ease-in-out infinite;}
.ah-skel.l{height:14px;margin:8px 0;} .ah-skel.l.s{width:42%;} .ah-skel.l.m{width:68%;}
.ah-skel.b{height:96px;}
@keyframes ahSkel{0%{background-position:100% 0}100%{background-position:-100% 0}}

/* empty states */
.ah-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:6px 0 2px;}
.ah-empty .ah-p{max-width:52ch;}

/* ═══ OVERVIEW ══════════════════════════════════════════════════════════════ */
.ah-admin{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 var(--s4);padding:14px 18px;
  border-radius:var(--r-md);border:1px dashed var(--c-line-2);background:var(--c-panel);}
.ah-admin[hidden]{display:none;}
.ah-admin .ah-p{display:flex;align-items:center;gap:10px;}
.ah-admin svg{width:20px;height:20px;flex:0 0 auto;color:var(--c-ink-2);}

.ah-hero{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);flex-wrap:wrap;padding:30px 30px 28px;overflow:hidden;}
.ah-hero::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-wave);background-size:200% 100%;
  background-position:calc(var(--vp-pan,0) * 1%) 50%;}
.ah-hero-id{display:flex;align-items:center;gap:20px;min-width:0;flex:1 1 420px;}
.ah-hero-av{width:76px;height:76px;font-size:1.9rem;}
.ah-hero-txt{min-width:0;}
.ah-hero .eyebrow{margin:0 0 8px;}
.ah-hero-h{margin:0;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;letter-spacing:-.035em;line-height:1.1;color:var(--c-ink);
  overflow-wrap:anywhere;outline:none;}
.ah-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin:10px 0 0;font-size:.82rem;color:var(--c-ink-2);}
.ah-hero-meta>span{display:inline-flex;align-items:center;gap:6px;min-width:0;}
.ah-hero-meta .ah-email{overflow-wrap:anywhere;}
.ah-ver{display:inline-flex;align-items:center;gap:6px;font-weight:700;}
.ah-ver svg{width:15px;height:15px;flex:0 0 auto;}
.ah-ver.ok{color:var(--c-ok);} .ah-ver.no{color:var(--c-bad);}
.ah-hero-act{display:flex;align-items:center;justify-content:flex-end;gap:12px 16px;flex-wrap:wrap;}
/* v91: day / night and English / Spanish on the overview (the same switches as Profile > Appearance) */
.ah-quick{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.ah-quick-theme,.ah-quick-lang{display:inline-flex;align-items:center;}
.ah-quick .vp-locale-menu{flex-direction:row;gap:6px;}
.ah-quick .vp-locale-choice{min-width:0;padding:7px 12px;gap:7px;font-size:.8rem;font-weight:700;}
.ah-quick .vp-locale-choice img{width:20px;}
.ah-quick .vp-locale-choice .vp-check{display:none;}

.ah-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4);margin:var(--s4) 0;}
.ah-kpi{position:relative;display:flex;flex-direction:column;gap:6px;padding:18px 20px 18px;min-width:0;border-radius:var(--r-lg);
  border:1px solid var(--c-line);background:var(--c-card);color:var(--c-ink);text-decoration:none;box-shadow:var(--sh-xs);
  transition:transform var(--t) var(--ease-out),box-shadow var(--t) var(--ease),border-color var(--t) var(--ease);}
.ah-kpi:hover{transform:translateY(-3px);box-shadow:var(--sh-md);border-color:var(--c-line-2);}
.ah-kpi:active{transform:scale(.985);}
.ah-kpi-v{font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;}
.ah-kpi-s{font-size:.78rem;line-height:1.4;color:var(--c-ink-3);}
.ah-kpi-go{position:absolute;top:16px;right:16px;width:16px;height:16px;color:var(--c-ink-4);transition:color var(--t) var(--ease),transform var(--t) var(--ease-out);}
.ah-kpi:hover .ah-kpi-go{color:var(--c-ink);transform:translate(2px,-2px);}

.ah-ov{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:var(--s4);align-items:start;}
.ah-ov-col{display:flex;flex-direction:column;gap:var(--s4);min-width:0;}
.ah-ov-col>.ah-card+.ah-card{margin-top:0;}

/* order progress: placed > paid > shipped > delivered */
.ah-track{list-style:none;margin:14px 0 4px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.ah-track li{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;
  font-size:.68rem;font-weight:700;letter-spacing:.02em;color:var(--c-ink-3);}
.ah-track li::before{content:"";position:absolute;top:6px;left:-50%;right:50%;height:2px;background:var(--c-line-2);}
.ah-track li:first-child::before{display:none;}
.ah-track i{position:relative;z-index:1;width:14px;height:14px;border-radius:50%;background:var(--c-card);border:2px solid var(--c-line-2);}
.ah-track li.done{color:var(--c-ink);}
.ah-track li.done::before{background:var(--c-ink);}
.ah-track li.done i{background:var(--c-ink);border-color:var(--c-ink);}
.ah-track li.now i{box-shadow:0 0 0 4px var(--c-accent-soft);}
.ah-track.off li{color:var(--c-ink-4);}

.ah-thumbs{display:flex;align-items:center;gap:6px;flex:0 0 auto;}
.ah-thumb{width:40px;height:48px;border-radius:10px;background:var(--ah-img);border:1px solid var(--c-line);display:grid;place-items:center;overflow:hidden;}
/* product photos fill their box (cover), so a white studio shot reads as a white tile in dark mode, like the shop's cards */
.ah-thumb img{width:100%;height:100%;object-fit:cover;transform:scale(1.2);}
.ah-thumb.more{font-size:.7rem;font-weight:800;color:var(--c-ink-2);background:var(--c-panel);}

.ah-mini{display:flex;flex-direction:column;}
.ah-mini-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--c-line);}
.ah-mini-row:first-child{border-top:0;padding-top:2px;}
.ah-mini-row .ah-thumb{width:36px;height:42px;}
.ah-mini-t{flex:1 1 auto;min-width:0;}
.ah-mini-n{margin:0;font-size:.86rem;font-weight:700;color:var(--c-ink);overflow-wrap:anywhere;}
.ah-mini-s{margin:2px 0 0;font-size:.76rem;color:var(--c-ink-3);}

/* support messages */
.ah-msgs{display:flex;flex-direction:column;}
.ah-msgi{padding:14px 0;border-top:1px solid var(--c-line);}
.ah-msgi:first-child{border-top:0;padding-top:0;}
.ah-msgi-h{display:flex;justify-content:space-between;gap:10px;margin:0 0 4px;font-size:.78rem;color:var(--c-ink-3);}
.ah-msgi-h b{color:var(--c-ink);font-size:.82rem;}
.ah-msgi-b{margin:0;font-size:.86rem;line-height:1.55;color:var(--c-ink-2);white-space:pre-wrap;overflow-wrap:anywhere;}
.ah-reply{margin:10px 0 0;padding:10px 12px;border-radius:var(--r-sm);background:var(--c-panel);border-left:3px solid var(--c-ok);}
.ah-reply-k{margin:0 0 4px;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--c-ok);}
.ah-wait{margin:8px 0 0;font-size:.78rem;color:var(--c-ink-3);}

/* favorites */
.ah-favs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;}
.ah-fav{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 10px 14px;border-radius:var(--r-md);
  border:1px solid var(--c-line);background:var(--c-card);color:var(--c-ink);text-decoration:none;text-align:center;
  transition:transform var(--t) var(--ease-out),box-shadow var(--t) var(--ease),border-color var(--t) var(--ease);}
.ah-fav:hover{transform:translateY(-3px);box-shadow:var(--sh-md);border-color:var(--c-line-2);}
.ah-fav-img{width:100%;aspect-ratio:4/5;border-radius:10px;background:var(--ah-img);display:grid;place-items:center;overflow:hidden;}
.ah-fav-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform var(--t-slow) var(--ease-out);}
.ah-fav:hover .ah-fav-img img{transform:scale(1.1);}
.ah-fav-n{margin:0;font-size:.8rem;font-weight:800;letter-spacing:.01em;text-transform:uppercase;line-height:1.25;overflow-wrap:anywhere;}
.ah-fav-x{position:absolute;top:8px;right:8px;z-index:1;width:28px;height:28px;border-radius:50%;border:1px solid var(--c-line);
  background:var(--c-card);color:var(--c-ink-2);display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:var(--sh-sm);
  transition:transform var(--t-fast) var(--spring),color var(--t) var(--ease),border-color var(--t) var(--ease);}
.ah-fav-x:hover{color:var(--c-bad);border-color:var(--c-bad);transform:scale(1.08);}
.ah-fav-x svg{width:13px;height:13px;}

.ah-foot{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:var(--s6) 0 0;}

/* ═══ MEMBERSHIPS ═══════════════════════════════════════════════════════════ */
.ah-two{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--s4);align-items:start;}
.ah-two>.ah-card+.ah-card,.ah-two>div>.ah-card+.ah-card{margin-top:0;}
.ah-two>div{display:flex;flex-direction:column;gap:var(--s4);min-width:0;}
.ah-plan-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.ah-plan-n{margin:4px 0 0;font-size:clamp(1.8rem,3.4vw,2.4rem);font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--c-ink);}
.ah-plan-r{margin:8px 0 0;font-size:.86rem;color:var(--c-ink-2);}
.ah-dl{margin:18px 0 0;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:0;border-top:1px solid var(--c-line);}
.ah-dl dt,.ah-dl dd{margin:0;padding:11px 0;border-bottom:1px solid var(--c-line);font-size:.84rem;}
.ah-dl dt{padding-right:22px;color:var(--c-ink-3);font-weight:600;white-space:nowrap;}
.ah-dl dd{color:var(--c-ink);font-weight:600;text-align:right;overflow-wrap:anywhere;}
.ah-acts{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0 0;}
.ah-pay{margin:16px 0 0;padding:16px 18px;border-radius:var(--r-md);background:var(--c-panel);border:1px solid var(--c-line);}
.ah-pay .ah-p+.ah-p{margin-top:6px;}
.ah-ref{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;}
.ah-copy{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--r-pill);border:1px solid var(--c-line-2);
  background:var(--c-card);color:var(--c-ink);font:700 .72rem/1.2 var(--font);cursor:pointer;transition:border-color var(--t) var(--ease),background var(--t) var(--ease);}
.ah-copy:hover{border-color:var(--c-ink);}
.ah-copy svg{width:12px;height:12px;}
.ah-perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;}
.ah-perks li{display:flex;align-items:flex-start;gap:10px;font-size:.86rem;line-height:1.4;color:var(--c-ink);}
.ah-perks li.off{color:var(--c-ink-3);}
.ah-perks svg{width:18px;height:18px;flex:0 0 auto;margin-top:1px;}
.ah-perks li.on svg{color:var(--c-ok);}
.ah-perks li.off svg{color:var(--c-ink-4);}
.ah-note{margin:16px 0 0;font-size:.78rem;line-height:1.55;color:var(--c-ink-3);}

/* v91: the plans live here now (they were memberships.html) */
.ah-plans{margin:var(--s6) 0 0;scroll-margin-top:calc(var(--ah-hdr,120px) + 16px);}
.ah-plans[hidden]{display:none;}
.ah-plans-h{display:flex;align-items:flex-end;justify-content:space-between;gap:14px 20px;flex-wrap:wrap;margin:0 0 var(--s5);}
.ah-plans-h .eyebrow{margin:0 0 8px;}
.ah-plans-h .ah-lead{margin-top:8px;}
.ah-h2{margin:0;font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:800;letter-spacing:-.03em;line-height:1.12;color:var(--c-ink);outline:none;}
.ah-h2:focus-visible{box-shadow:none;}
.ah-cyc{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;}
.ah-cyc-save{display:inline-flex;align-items:center;padding:3px 10px 2px;border-radius:var(--r-pill);border:1px solid currentColor;color:var(--c-ok);
  font-size:.62rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;line-height:1.45;white-space:nowrap;}
.ah-steps{margin:0 0 var(--s5);}
.ah-steps .ah-how{margin-top:12px;}
.ah-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4);align-items:stretch;}
.ah-plan{position:relative;display:flex;flex-direction:column;min-width:0;padding:26px 22px 22px;border-radius:var(--r-lg);
  border:1px solid var(--c-line);background:var(--c-card);box-shadow:var(--sh-xs);}
.ah-plan.is-rec{border:1.5px solid var(--c-ink);box-shadow:var(--sh-md);}
.ah-plan-tag{position:absolute;top:-11px;left:20px;padding:4px 11px 3px;border-radius:var(--r-pill);background:var(--c-solid);color:var(--c-solid-ink);
  font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;line-height:1.3;white-space:nowrap;}
.ah-plan-name{margin:0;font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--c-ink);}
.ah-plan-sub{margin:6px 0 0;font-size:.82rem;line-height:1.5;color:var(--c-ink-2);min-height:3em;}
.ah-plan-price{margin:16px 0 0;font-size:2.1rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--c-ink);font-variant-numeric:tabular-nums;}
.ah-plan-price small{margin-left:2px;font-size:.9rem;font-weight:700;letter-spacing:0;color:var(--c-ink-3);}
.ah-plan-price.yr{color:var(--c-ok);}
.ah-plan-was{margin-left:8px;font-size:.84rem;font-weight:600;letter-spacing:0;color:var(--c-ink-3);text-decoration:line-through;}
.ah-plan-billed{margin:8px 0 0;font-size:.8rem;color:var(--c-ink-3);}
.ah-plan>.btn{margin:18px 0 0;}
.ah-plan .ah-msg{margin-top:8px;}
.ah-plan .ah-perks{margin:18px 0 0;padding:18px 0 0;border-top:1px solid var(--c-line);}
.ah-plans-fine{max-width:84ch;}

.ah-pm{max-width:520px;}
.ah-pm-top{padding:28px 28px 20px;border-bottom:1px solid var(--c-line);}
.ah-pm-top .eyebrow{margin:0 0 8px;}
.ah-pm-amt{margin:8px 0 0;font-size:2.1rem;font-weight:800;letter-spacing:-.04em;line-height:1.05;color:var(--c-ink);font-variant-numeric:tabular-nums;}
.ah-pm-per{margin-left:4px;font-size:1rem;font-weight:600;letter-spacing:0;color:var(--c-ink-3);}
.ah-modal .ah-pm-refl{margin:16px 0 0;}
.ah-pm-ref{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0 0;}
.ah-pm-ref code{padding:8px 14px;border-radius:var(--r-sm);background:var(--c-panel);border:1px dashed var(--c-line-2);font-size:.95rem;letter-spacing:.08em;color:var(--c-ink);}
.ah-pm-tabs{margin:0 0 18px;}
.ah-seg button[aria-selected="true"]{background:var(--c-card);color:var(--c-ink);box-shadow:var(--sh-sm);}
.ah-pm-pane[hidden]{display:none;}
.ah-pm-h{margin:4px 0 12px;font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:var(--c-ink);overflow-wrap:anywhere;}
.ah-pm-h-s{font-size:1.05rem;}
.ah-pm-qr{width:160px;height:160px;margin:0 0 12px;border-radius:var(--r-md);overflow:hidden;background:#FFFFFF;border:1px solid var(--c-line);}
.ah-pm-qr[hidden]{display:none;}
.ah-pm-qr img{width:100%;height:100%;object-fit:cover;display:block;}
.ah-pm .ah-modal-b .ah-p{margin:0 0 6px;}
.ah-pm #ah-pm-done{margin-top:18px;}
.ah-pm .ah-note{margin-top:14px;}

/* ═══ SUBSCRIBE & SAVE (the v85 controls, same service) ═════════════════════ */
.ah-ss{display:grid;gap:12px;}
.ah-ss-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:16px;border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-card);}
.ah-ss-img{width:64px;height:78px;border-radius:12px;background:var(--ah-img);border:1px solid var(--c-line);display:grid;place-items:center;overflow:hidden;}
.ah-ss-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);}
.ah-ss-n{margin:0 0 4px;font-size:.98rem;font-weight:800;color:var(--c-ink);display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.ah-ss-meta{margin:0 0 12px;font-size:.8rem;line-height:1.5;color:var(--c-ink-2);}
.ah-ss-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.ah-ss-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 15px;border-radius:var(--r-pill);
  border:1.5px solid var(--c-line-2);background:var(--c-card);color:var(--c-ink);font:700 .78rem/1.1 var(--font);text-decoration:none;cursor:pointer;
  transition:background var(--t) var(--ease),border-color var(--t) var(--ease),color var(--t) var(--ease),transform var(--t-fast) var(--spring);}
.ah-ss-btn:hover{border-color:var(--c-ink);}
.ah-ss-btn:active{transform:scale(.96);}
.ah-ss-btn.solid{background:var(--c-solid);border-color:var(--c-solid);color:var(--c-solid-ink);}
.ah-ss-btn.solid:hover{background:transparent;color:var(--c-ink);border-color:var(--c-ink);}
.ah-ss-btn.quiet{border-color:transparent;background:transparent;color:var(--c-ink-3);text-decoration:underline;text-underline-offset:3px;padding:8px 6px;}
.ah-ss-btn.quiet:hover{color:var(--c-ink);}
.ah-ss-btn[disabled],.ah-ss-qty[disabled]{opacity:.55;cursor:progress;}
.ah-ss-q{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:700;color:var(--c-ink-3);}
.ah-ss-qty{min-height:38px;padding:6px 10px;border-radius:var(--r-pill);border:1.5px solid var(--c-line-2);background:var(--c-card);color:var(--c-ink);
  font:700 .8rem var(--font);cursor:pointer;}
.ah-ss-qty:focus-visible,.ah-ss-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--c-focus);}

/* ═══ STORE CREDIT ══════════════════════════════════════════════════════════ */
.ah-bal{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.ah-bal-v{margin:6px 0 0;font-size:clamp(2.2rem,4.4vw,3rem);font-weight:800;letter-spacing:-.045em;line-height:1;color:var(--c-ink);font-variant-numeric:tabular-nums;}
.ah-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0;}
.ah-split>div{padding:14px 16px;border-radius:var(--r-md);background:var(--c-panel);border:1px solid var(--c-line);min-width:0;}
.ah-split .v{margin:4px 0 0;font-size:1.25rem;font-weight:800;letter-spacing:-.025em;color:var(--c-ink);font-variant-numeric:tabular-nums;}
.ah-split .s{margin:4px 0 0;font-size:.74rem;line-height:1.45;color:var(--c-ink-3);}
.ah-req{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center;padding:14px 0;border-top:1px solid var(--c-line);}
.ah-req:first-child{border-top:0;padding-top:0;}
.ah-req-t{margin:0;font-size:.86rem;font-weight:700;color:var(--c-ink);overflow-wrap:anywhere;}
.ah-req-s{margin:3px 0 0;font-size:.76rem;color:var(--c-ink-3);}
.ah-req-a{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.ah-preview{margin:16px 0 0;padding:10px 14px;border-radius:var(--r-md);background:var(--c-panel);border:1px dashed var(--c-line-2);font-size:.8rem;color:var(--c-ink-2);}
.ah-soon{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:40px 28px 36px;}
.ah-soon-tag{display:inline-block;padding:4px 11px 3px;border-radius:var(--r-pill);background:var(--c-panel);border:1px solid var(--c-line-2);
  color:var(--c-ink-2);font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;line-height:1.3;}
.ah-soon-h{margin:2px 0 0;font-size:var(--fs-h3);font-weight:800;letter-spacing:-.02em;color:var(--c-ink);}
.ah-soon .ah-p{max-width:46ch;}

/* history rows (credit, points) */
.ah-rows{display:flex;flex-direction:column;}
.ah-row{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:baseline;padding:11px 0;border-top:1px solid var(--c-line);font-size:.84rem;}
.ah-row:first-child{border-top:0;padding-top:0;}
.ah-row-d{color:var(--c-ink-3);font-size:.76rem;white-space:nowrap;font-variant-numeric:tabular-nums;}
.ah-row-l{color:var(--c-ink);min-width:0;overflow-wrap:anywhere;}
.ah-row-l small{display:block;margin-top:2px;color:var(--c-ink-3);font-size:.74rem;}
.ah-row-a{font-weight:800;color:var(--c-ink);white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right;}
.ah-row-a.pos{color:var(--c-ok);}
.ah-more{margin:12px 0 0;}

/* ═══ POINTS ════════════════════════════════════════════════════════════════ */
.ah-pts-sub{margin:8px 0 0;font-size:.9rem;color:var(--c-ink-2);}
.ah-pts-sub b{color:var(--c-ink);font-variant-numeric:tabular-nums;}
.ah-how{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;counter-reset:ahhow;}
.ah-how li{position:relative;padding-left:34px;font-size:.84rem;line-height:1.5;color:var(--c-ink-2);counter-increment:ahhow;}
.ah-how li::before{content:counter(ahhow);position:absolute;left:0;top:-1px;width:23px;height:23px;border-radius:50%;background:var(--c-panel);
  border:1px solid var(--c-line-2);color:var(--c-ink);font-size:.7rem;font-weight:800;display:grid;place-items:center;}
.ah-how b{color:var(--c-ink);}
.ah-how a{color:var(--c-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;}

/* ═══ ORDERS ════════════════════════════════════════════════════════════════ */
.ah-seg{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:var(--r-pill);background:var(--c-panel);border:1px solid var(--c-line);}
.ah-seg button{min-height:34px;padding:6px 14px;border:0;border-radius:var(--r-pill);background:transparent;color:var(--c-ink-2);
  font:700 .78rem/1 var(--font);cursor:pointer;white-space:nowrap;transition:background var(--t) var(--ease),color var(--t) var(--ease),box-shadow var(--t) var(--ease);}
.ah-seg button:hover{color:var(--c-ink);}
.ah-seg button[aria-pressed="true"]{background:var(--c-card);color:var(--c-ink);box-shadow:var(--sh-sm);}
.ah-seg button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--c-focus);}
.ah-orders{display:flex;flex-direction:column;gap:12px;}
.ah-order{padding:18px 20px;border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-card);box-shadow:var(--sh-xs);min-width:0;}
.ah-order[hidden]{display:none;}
.ah-order-h{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;}
.ah-order-id{font-family:'Courier New',monospace;font-size:.84rem;font-weight:700;letter-spacing:.04em;color:var(--c-ink);}
.ah-order-d{font-size:.78rem;color:var(--c-ink-3);}
.ah-order-h .ah-st{margin-left:auto;}
.ah-order-b{display:flex;align-items:center;gap:14px;margin:12px 0 0;min-width:0;}
.ah-order-items{margin:0;flex:1 1 auto;min-width:0;font-size:.84rem;line-height:1.55;color:var(--c-ink-2);overflow-wrap:anywhere;}
.ah-order-tot{margin:10px 0 0;font-size:.86rem;color:var(--c-ink-2);}
.ah-order-tot b{color:var(--c-ink);font-weight:800;font-variant-numeric:tabular-nums;}
.ah-order-due{margin:10px 0 0;padding:10px 12px;border-radius:var(--r-sm);background:var(--c-panel);border:1px solid var(--c-line);font-size:.8rem;line-height:1.5;color:var(--c-ink-2);}
.ah-order-due b{color:var(--c-ink);}
.ah-order-a{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:12px 0 0;}
.ah-order-a .ah-link.bad{color:var(--c-bad);}
.ah-order-a .ah-trk-l{white-space:normal;overflow-wrap:anywhere;}
.ah-trk{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--c-ink-2);}
.ah-rcpt{margin:14px 0 0;padding:16px 18px;border-radius:var(--r-md);background:var(--c-panel);border:1px solid var(--c-line);}
.ah-rcpt[hidden]{display:none;}
.ah-rl{display:flex;justify-content:space-between;gap:14px;padding:5px 0;font-size:.82rem;color:var(--c-ink-2);}
.ah-rl b{color:var(--c-ink);font-variant-numeric:tabular-nums;white-space:nowrap;}
.ah-rl.it{color:var(--c-ink);}
.ah-rl.g,.ah-rl.g b{color:var(--c-ok);}
.ah-rl.tot{margin-top:4px;padding-top:9px;border-top:1px solid var(--c-line-2);font-weight:800;color:var(--c-ink);}
.ah-rl.tot b{font-weight:800;}
.ah-rsep{height:1px;background:var(--c-line-2);margin:8px 0;}
.ah-rmeta{margin:12px 0 0;font-size:.76rem;line-height:1.55;color:var(--c-ink-3);}
.ah-rmeta b{color:var(--c-ink);}

/* ═══ PROFILE ═══════════════════════════════════════════════════════════════ */
.ah-avrow{display:flex;align-items:center;gap:18px;padding:0 0 18px;border-bottom:1px solid var(--c-line);margin:0 0 4px;}
.ah-avrow .ah-p{margin:6px 0 0;}
.ah-field{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--c-line);}
.ah-field:last-child{border-bottom:0;padding-bottom:0;}
.ah-field-k{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--c-ink-3);}
.ah-field-v{min-width:0;font-size:.9rem;font-weight:600;color:var(--c-ink);overflow-wrap:anywhere;display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;}
.ah-in{min-height:40px;padding:8px 12px;border:1.5px solid var(--c-line-2);border-radius:var(--r-sm);background:var(--c-card);color:var(--c-ink);
  font:500 .9rem var(--font);width:min(100%,280px);}
.ah-in:focus{outline:none;border-color:var(--c-ink);box-shadow:0 0 0 3px var(--c-focus);}
.ah-pref{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--c-line);}
.ah-pref:last-of-type{border-bottom:0;}
.ah-pref-t{min-width:0;flex:1 1 240px;}
.ah-pref-k{margin:0;font-size:.9rem;font-weight:700;color:var(--c-ink);}
.ah-pref-s{margin:3px 0 0;font-size:.78rem;line-height:1.5;color:var(--c-ink-3);}
.ah-pref-s.warn{color:var(--c-warn);font-weight:600;}
/* v91: Customize your header (profile tabs + top menu) */
.ah-cust{margin-top:var(--s4);scroll-margin-top:calc(var(--ah-hdr,120px) + 16px);}
.ah-cust .ah-card-t{outline:none;}
.ah-cust.flash{animation:ahFlash 1.8s var(--ease-out);}
@keyframes ahFlash{0%,35%{box-shadow:0 0 0 4px var(--c-focus);}100%{box-shadow:var(--sh-xs);}}
.ah-cust-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5);margin:18px 0 0;}
.ah-cust-col{min-width:0;}
.ah-cust-col>.ah-k{margin:0 0 10px;}
.ah-cust-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.ah-cust-row{position:relative;display:flex;align-items:center;gap:10px;min-height:52px;padding:7px 10px 7px 4px;border:1px solid var(--c-line);
  border-radius:var(--r-md);background:var(--c-card);transition:box-shadow var(--t) var(--ease),border-color var(--t) var(--ease);}
.ah-cust-row.drag{z-index:3;border-color:var(--c-ink);box-shadow:var(--sh-lg);transition:none;}
.ah-cust-grip{flex:0 0 auto;width:30px;height:38px;display:grid;place-items:center;border:0;border-radius:var(--r-sm);background:none;color:var(--c-ink-3);
  cursor:grab;touch-action:none;padding:0;}
.ah-cust-grip:active{cursor:grabbing;}
.ah-cust-grip svg{width:16px;height:16px;}
.ah-cust-i{flex:0 0 auto;width:18px;height:18px;color:var(--c-ink-2);}
.ah-cust-n{flex:1 1 auto;min-width:0;font-size:.88rem;font-weight:700;color:var(--c-ink);overflow-wrap:anywhere;}
.ah-cust-row.off .ah-cust-n,.ah-cust-row.off .ah-cust-i{color:var(--c-ink-3);}
.ah-cust-lock{font-size:.72rem;font-weight:700;color:var(--c-ink-3);white-space:nowrap;}
.ah-cust-mv{display:inline-flex;gap:4px;flex:0 0 auto;}
.ah-cust-mv button{width:32px;height:32px;border-radius:50%;border:1px solid var(--c-line-2);background:var(--c-card);color:var(--c-ink);
  display:grid;place-items:center;cursor:pointer;padding:0;transition:border-color var(--t) var(--ease);}
.ah-cust-mv button:hover:not(:disabled){border-color:var(--c-ink);}
.ah-cust-mv button:disabled{opacity:.35;cursor:default;}
.ah-cust-mv svg{width:14px;height:14px;}
.ah-tog{position:relative;flex:0 0 auto;width:44px;height:26px;border-radius:var(--r-pill);border:0;background:var(--c-ink-4);cursor:pointer;padding:0;
  transition:background var(--t) var(--ease);}
.ah-tog::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#FFFFFF;box-shadow:0 1px 3px rgba(0,0,0,.28);
  transition:transform var(--t) var(--ease-out),background var(--t) var(--ease);}
.ah-tog[aria-checked="true"]{background:var(--c-solid);}
.ah-tog[aria-checked="true"]::after{transform:translateX(18px);background:var(--c-solid-ink);}
.ah-tog:disabled{opacity:.5;cursor:not-allowed;}
.ah-cust-grip:focus-visible,.ah-cust-mv button:focus-visible,.ah-tog:focus-visible{outline:none;box-shadow:0 0 0 3px var(--c-focus);}
.ah-cust-st{min-height:1.25em;margin:14px 0 0;font-size:.8rem;font-weight:600;color:var(--c-ok);}
.ah-cust-st.warn{color:var(--c-warn);}

/* the shared language menu, in this page's tokens */
.ah .vp-locale-choice{background:var(--c-card)!important;border:1px solid var(--c-line-2)!important;color:var(--c-ink)!important;border-radius:var(--r-sm)!important;}
.ah .vp-locale-choice:hover{border-color:var(--c-ink)!important;box-shadow:var(--sh-sm)!important;}
.ah .vp-locale-choice.active{border-color:var(--c-ink)!important;box-shadow:0 0 0 2px var(--c-focus)!important;}
.ah .vp-locale-choice .vp-check{color:var(--c-ok)!important;}
.ah .vp-locale-choice img{border-color:var(--c-line-2)!important;}

/* ═══ PARTNER ═══════════════════════════════════════════════════════════════ */
.ah-code{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 20px;border-radius:var(--r-md);
  background:var(--c-solid);color:var(--c-solid-ink);}
.ah-code-v{margin:4px 0 0;font-family:'Courier New',monospace;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:.08em;line-height:1;}
.ah-code .ah-k{color:inherit;opacity:.72;}
.ah-code .ah-copy{background:transparent;color:inherit;border-color:currentColor;}
.ah-code .ah-copy:hover{background:var(--c-solid-ink);color:var(--c-solid);border-color:var(--c-solid-ink);}
.ah-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0;}
.ah-stats>div{padding:14px 16px;border-radius:var(--r-md);background:var(--c-panel);border:1px solid var(--c-line);min-width:0;}
.ah-stats .v{margin:4px 0 0;font-size:1.3rem;font-weight:800;letter-spacing:-.025em;color:var(--c-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.ah-miss{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;}
.ah-miss li{display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--c-ink);}
.ah-miss svg{width:16px;height:16px;color:var(--c-warn);flex:0 0 auto;}

/* ═══ AVATARS (bar, hero, profile, the editor) ══════════════════════════════ */
.ah-av{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;overflow:hidden;
  color:#FFFFFF;font-weight:800;line-height:1;letter-spacing:0;background:linear-gradient(135deg,#6241C2 0%,#2E4FA8 50%,#0C8CCE 100%);
  box-shadow:0 6px 18px rgba(0,0,0,.14);user-select:none;}
.ah-av img{width:100%;height:100%;object-fit:cover;display:block;}
.ah-av.has-img{background:#FFFFFF;}

/* ═══ MODALS (attestation for new Google accounts, the avatar editor, the
   welcome code). Same shell, tokens only. ════════════════════════════════ */
.ah-ov-modal{position:fixed;inset:0;z-index:99998;display:none;align-items:center;justify-content:center;padding:20px;
  background:rgba(12,12,12,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.ah-ov-modal.open{display:flex;}
.ah-modal{position:relative;width:100%;max-width:460px;max-height:calc(100vh - 40px);overflow:auto;border-radius:var(--r-lg);
  background:var(--c-card);border:1px solid var(--c-line);box-shadow:var(--sh-lg);animation:ahIn .3s var(--ease-out);}
.ah-modal-b{padding:30px 28px 26px;}
.ah-modal-h{margin:0 0 6px;font-size:1.3rem;font-weight:800;letter-spacing:-.025em;color:var(--c-ink);}
.ah-modal .ah-p{margin:0 0 18px;}
.ah-modal-x{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;border:1px solid var(--c-line);background:var(--c-card);
  color:var(--c-ink);display:grid;place-items:center;cursor:pointer;padding:0;}
.ah-modal-x:hover{border-color:var(--c-ink);}
.ah-modal-x svg{width:14px;height:14px;}
.ah-fl{display:block;margin:0 0 7px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--c-ink-2);}
.ah-fg{margin:0 0 16px;}
.ah-sel{width:100%;min-height:42px;padding:9px 12px;border:1.5px solid var(--c-line-2);border-radius:var(--r-sm);background:var(--c-card);
  color:var(--c-ink);font:500 .9rem var(--font);}
.ah-sel:focus{outline:none;border-color:var(--c-ink);box-shadow:0 0 0 3px var(--c-focus);}
.ah-dob{display:grid;grid-template-columns:1.4fr 1fr 1.2fr;gap:8px;}
.ah-chk{display:flex;gap:10px;align-items:flex-start;padding:8px 0;font-size:.84rem;line-height:1.45;color:var(--c-ink);cursor:pointer;}
.ah-chk input{margin-top:2px;flex:0 0 auto;width:17px;height:17px;accent-color:var(--c-solid);}
.ah-modal .btn-block{margin-top:14px;}
.ah-av-prev{display:flex;justify-content:center;margin:4px 0 18px;}
.ah-av-prev .ah-av{width:96px;height:96px;font-size:2.4rem;}
.ah-sw{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0 0 18px;}
.ah-sw button{width:100%;aspect-ratio:1/1;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;
  transition:transform var(--t-fast) var(--spring),box-shadow var(--t) var(--ease);}
.ah-sw button:hover{transform:scale(1.08);}
.ah-sw button[aria-pressed="true"]{box-shadow:0 0 0 2px var(--c-card),0 0 0 4px var(--c-ink);}
.ah-up{display:flex;gap:10px;align-items:center;margin:0 0 6px;}
.ah-up .btn{flex:1 1 auto;}
.ah-modal-acts{display:flex;gap:10px;margin:18px 0 0;}
.ah-modal-acts .btn{flex:1 1 0;}
.ah-modal-msg{min-height:1.2em;margin:8px 0 0;font-size:.8rem;text-align:center;}
.ah-modal-msg.err{color:var(--c-bad);font-weight:600;} .ah-modal-msg.ok{color:var(--c-ok);font-weight:600;}
.ah-wc{text-align:center;}
.ah-wc-code{display:inline-flex;align-items:center;gap:10px;margin:2px 0 18px;padding:12px 20px;border-radius:var(--r-md);border:1.5px dashed var(--c-ink-3);
  background:var(--c-panel);font-family:'Courier New',monospace;font-weight:700;font-size:1.2rem;letter-spacing:.06em;color:var(--c-ink);}
.ah-wc .ah-modal-acts{justify-content:center;}

/* ═══ RESPONSIVE ════════════════════════════════════════════════════════════ */
@media (max-width:1100px){
  .ah-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:960px){
  .ah-ov,.ah-two{grid-template-columns:minmax(0,1fr);}
  .ah-plan-grid{grid-template-columns:minmax(0,1fr);max-width:560px;}
  .ah-plan-sub{min-height:0;}
  /* one column: what a returning customer acts on comes first */
  .ah-ov-col{display:contents;}
  #ah-ov-order{order:1;} #ah-ov-ss{order:2;} #ah-ov-partner{order:3;} #ah-msgs-card{order:4;}
}
@media (max-width:600px){
  .ah{padding-top:var(--s5);padding-bottom:var(--s8);}
  .ah-head{margin-bottom:var(--s4);}
  .ah-card{padding:18px;}
  .ah-hero{padding:24px 18px 20px;gap:var(--s4);}
  .ah-hero-id{gap:14px;flex-basis:100%;}
  .ah-hero-av{width:60px;height:60px;font-size:1.5rem;}
  .ah-hero-act{width:100%;justify-content:flex-start;}
  .ah-hero-act .btn{flex:1 1 auto;}
  .ah-quick{width:100%;}
  .ah-quick-lang{flex:1 1 auto;}
  .ah-quick .vp-locale-menu{flex:1 1 auto;}
  .ah-quick .vp-locale-choice{flex:1 1 0;justify-content:center;}
  .ah-cust-cols{grid-template-columns:minmax(0,1fr);gap:var(--s4);}
  .ah-plans-h{align-items:flex-start;}
  .ah-pm-top{padding:24px 20px 18px;}
  .ah-kpis{gap:10px;margin:12px 0;}
  .ah-kpi{padding:14px 14px 15px;}
  .ah-kpi-go{top:13px;right:12px;width:14px;height:14px;}
  .ah-kpi-s{font-size:.72rem;}
  .ah-order{padding:16px;}
  .ah-order-h .ah-st{margin-left:0;}
  .ah-order-b{align-items:flex-start;flex-direction:column;gap:10px;}
  .ah-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;}
  .ah-row-d{grid-column:1 / -1;}
  .ah-field{grid-template-columns:minmax(0,1fr);gap:4px;}
  .ah-ss-row{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:14px;}
  .ah-ss-img{width:52px;height:64px;}
  .ah-stats{grid-template-columns:minmax(0,1fr);}
  .ah-split{grid-template-columns:minmax(0,1fr);}
  .ah-req{grid-template-columns:minmax(0,1fr);}
  .ah-req-a{justify-content:flex-start;}
  .ah-favs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .ah-seg{width:100%;}
  .ah-seg button{flex:1 1 0;padding:6px 8px;}
  .ah-head-act{width:100%;}
  .ah-dl dd{text-align:left;}
  .ah-dl{grid-template-columns:minmax(0,1fr);}
  .ah-dl dt{padding-bottom:0;border-bottom:0;}
  .ah-dl dd{padding-top:2px;}
  .ah-modal-b{padding:26px 20px 22px;}
  .ah-sw{gap:6px;}
}
@media (max-width:420px){
  .ah-cust-row{gap:7px;padding-right:8px;}
  .ah-cust-mv{gap:3px;}
  .ah-cust-mv button{width:30px;height:30px;}
  .ah-cust-lock{white-space:normal;max-width:62px;text-align:right;line-height:1.25;}
}
@media (max-width:360px){
  .ah-kpi-v{font-size:1.25rem;}
  .ah-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
}
