/* ==========================================================================
   Jareen store theme — 2026 redesign
   Loaded after styles.css on every store page. Concrete, paper and ink with
   black as the brand colour. To undo the whole redesign of the store, remove
   the <link href="theme.css"> line from the pages (or delete this file).
   ========================================================================== */
@font-face{font-family:Bricolage;src:url('assets/fonts/BricolageGrotesque-Bold.woff') format('woff');font-weight:600 800;font-display:swap}
@font-face{font-family:Instrument;src:url('assets/fonts/InstrumentSans-Regular.woff') format('woff');font-weight:400 500;font-display:swap}
@font-face{font-family:Instrument;src:url('assets/fonts/InstrumentSans-Bold.woff') format('woff');font-weight:600 800;font-display:swap}
@font-face{font-family:Instrument;src:url('assets/fonts/InstrumentSans-Italic.woff') format('woff');font-style:italic;font-weight:400;font-display:swap}

:root{
  --ink:#17181c;--ink-2:#4a4b52;--muted:#64656c;
  --concrete:#e9e8e4;--plinth:#dcdad5;--paper:#fbfbf9;--line:#e2e0db;--line-2:#d3d1cb;--well:var(--plinth);
  --brand:#141518;--brand-2:#2e2f35;--brand-wash:#e4e3de;--on-brand:#b4b5ba;
  --accent:var(--brand);
  --display:Bricolage,"Arial Black",Arial,sans-serif;
  --sans:Instrument,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif
}
body{font-family:var(--sans);background:var(--concrete);color:var(--ink)}
:is(h1,h2):not(.footer-links *):not(#_){font-family:var(--display);font-weight:700;letter-spacing:-.025em}
::selection{background:var(--brand);color:#fff}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--brand);outline-offset:2px;box-shadow:none}

/* ---------- Announcement + navigation ---------- */
.announcement{background:var(--brand);color:#fff;font-size:14px}
.announcement strong:first-child{letter-spacing:.5px}
.navbar{background:var(--paper);border:1px solid #17181c14;box-shadow:0 10px 30px #17181c1f;color:var(--ink)}
.navbar .brand,.navbar .wordmark{color:var(--ink)}
.navlinks a,.navlinks button{color:var(--ink-2);font-weight:500}
.navlinks a:hover,.navlinks button:hover,.navlinks a[aria-current]{color:var(--ink)}
.navlinks a[aria-current]{box-shadow:inset 0 -2px 0 var(--brand)}
.navbar .icon{color:var(--ink)}
.navbar .icon:hover{background:#ecebe6}
#cart-count{background:var(--brand)!important;color:#fff!important}
.icon.has-avatar .avatar{box-shadow:0 0 0 1.5px var(--line-2)}
.icon.has-avatar:hover .avatar{box-shadow:0 0 0 2px var(--brand)}
.avatar{background:var(--brand);color:#fff}
.popover{background:var(--paper);border:1px solid var(--line);box-shadow:0 18px 50px #17181c26}
.popover .acct-links a:hover,.acct-logout:hover{background:#efeee9}
.popover a.acct-cta{background:var(--brand)}
.popover a.acct-cta:hover{background:var(--brand-2)}

/* ---------- Buttons ---------- */
.primary{background:var(--brand);color:#fff;font-weight:600;border-radius:14px;transition:background .2s,transform .2s}
.primary:hover{background:var(--brand-2);transform:translateY(-2px)}
.dark,.primary.dark{background:var(--brand);color:#fff}
.dark:hover,.primary.dark:hover{background:var(--brand-2)}
.btn-outline{background:var(--paper);border-color:var(--line-2);border-radius:14px;font-weight:600}
.btn-outline:hover{border-color:var(--ink)}
.link-button,.cart-code.applied .link-button,.cart-discount,.avatar-msg{color:var(--brand-2)}

/* ---------- Home: hero ---------- */
.hero:after{background:linear-gradient(90deg,#17181ccc 0%,#17181c80 38%,transparent 74%)}
.hero h1{font-weight:800;letter-spacing:-.04em;line-height:.95}
.hero .eyebrow span{background:#fff}
.hero-description{color:#e6e6e3}

/* ---------- Home: categories ---------- */
.category{background:var(--paper);border:1px solid var(--line);border-radius:18px}
.category:hover{transform:translateY(-3px);box-shadow:0 14px 30px #17181c14;border-color:var(--line-2)}
.category-photo{opacity:.7;mix-blend-mode:multiply}
.category:hover .category-photo{opacity:.85}
.card-main strong{font-weight:700;letter-spacing:-.03em;color:var(--ink);text-shadow:none}

/* ---------- Product cards ---------- */
.product-image{background:var(--plinth);border-radius:14px}
.product h3{font-weight:600}
.price{font-weight:600}
.product-badge{background:var(--paper);color:var(--ink);box-shadow:0 1px 2px #17181c1a}
.add-cart{background:var(--paper);border-color:var(--line-2);border-radius:12px}
.add-cart:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.scroll-controls button{border-color:var(--line-2);background:var(--paper)}
.scroll-controls button:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- Shop ---------- */
.shop-tabs{background:var(--paper);border-color:var(--line-2);border-radius:14px}
.shop-tab{color:var(--ink-2);border-left-color:var(--line)}
.shop-tab:hover{background:#efeee9}
.shop-tab[aria-pressed="true"]{background:var(--ink);color:#fff}
.shop-sort select,.shop-filters{background-color:var(--paper)}

/* ---------- Product page ---------- */
.product-reviews{background:var(--paper)}
.gallery-thumbs button[aria-current="true"]{outline-color:var(--brand);border-color:var(--brand)}
.option.selected{background:var(--ink);border-color:var(--ink)}

/* ---------- Support band: the one solid-black band on the page ---------- */
.support{background:var(--brand)}
.support-content>p:not(.eyebrow){color:#d2d3d6}
.support-button{background:#fff;color:var(--brand-2);border-radius:14px}
.support-button:hover{background:var(--brand-wash)}

/* ---------- Footer ---------- */
.site-footer{background:var(--ink);--footer-text:var(--sans)}
.newsletter button{background:var(--brand);color:#fff;border-color:var(--brand)}

/* ---------- Cart drawer ---------- */
.drawer-inner{background:var(--paper)}
.drawer-foot{background:#f3f2ee;border-top-color:var(--line)}
.drawer-head{border-bottom-color:var(--line)}
.drawer-close{background:#ecebe6}
.cart-code button{background:var(--ink)}

/* ---------- Auth & checkout ---------- */
.auth-card{background:var(--paper);border-color:var(--line);box-shadow:none}
.auth-tabs button[aria-selected="true"]{background:var(--ink)}
.checkout-box{background:var(--paper)}
.checkout-kicker{color:var(--brand-2);font-weight:600}
.field input,.field select,.field textarea{border-color:var(--line-2)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #17181c29;outline:0}

/* ---------- 404 ---------- */
.notfound .notfound-code{color:var(--brand)}

/* ==========================================================================
   My account
   ========================================================================== */
.account{max-width:1080px;padding-top:150px}
.acct-hero{display:flex;align-items:center;gap:22px;margin-bottom:28px}
.acct-hero .avatar{width:88px;height:88px;font-size:32px;box-shadow:0 0 0 4px var(--paper),0 0 0 5px var(--line-2)}
.acct-hero-text{flex:1;min-width:0}
.acct-hero h1{font-size:clamp(32px,4vw,48px);margin:0 0 4px;line-height:1}
.acct-hero .account-email{margin:0;font-size:15px;color:var(--ink-2);overflow-wrap:anywhere}
.acct-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start}
.account .account-tabs{display:grid;gap:2px;position:sticky;top:130px;border:0;border-radius:0;background:none;overflow:visible;margin:0}
.account .account-tabs button{display:flex;align-items:center;gap:12px;flex:none;padding:12px 14px;border:0;border-radius:12px;background:none;font-size:15px;font-weight:500;color:var(--ink-2);text-align:left}
.account .account-tabs button+button{border-left:0}
.account .account-tabs button:hover{background:#e0dfda;color:var(--ink)}
.account .account-tabs button[aria-selected="true"]{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #17181c14;outline:1px solid var(--line)}
.account .account-tabs svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.account .account-tabs button[aria-selected="true"] svg{color:var(--brand)}
.account-card{background:none;border:0;border-radius:0;padding:0}
.acct-block{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px 28px;margin-bottom:16px}
.acct-block-head{margin-bottom:18px}
.acct-block-head h2{font-size:21px;margin:0}
.acct-block-head p{margin:4px 0 0;font-size:14px;color:var(--muted)}
.account .form-section{border:0;padding:0;margin:0}
.account .form-section legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.account .avatar-editor{padding:0;margin:0;border:0}
.account .avatar-title{display:none}
.acct-save{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;padding:18px 28px;background:var(--paper);border:1px solid var(--line);border-radius:18px}
.acct-save .check{margin:0;flex:1 1 260px}
.account-card .acct-save .primary{margin:0}
.account .form-ok:empty,.account .form-error[hidden]{display:none}
.account .form-ok{margin:0;color:var(--good,#1e7a46);font-weight:600;font-size:14px}
.account #password-form{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px 28px;max-width:560px}

/* Order history */
.order-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin-bottom:14px}
.order-card-head{align-items:center;margin-bottom:16px}
.order-card-head strong{font-family:var(--display);font-size:19px;letter-spacing:-.02em}
.order-track{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:0 0 18px;padding:0}
.order-track li{position:relative;padding-top:14px;font-size:12px;color:var(--muted)}
.order-track li:before{content:'';position:absolute;top:0;left:0;right:0;height:5px;border-radius:3px;background:#e4e3de}
.order-track li.done{color:var(--ink-2)}
.order-track li.done:before{background:var(--brand)}
.order-track li.now{color:var(--ink);font-weight:600}
.order-track li.now:before{background:var(--brand)}
.order-cancelled{margin:0 0 16px;padding:10px 14px;border-radius:12px;background:#fbe6e4;color:#b4231b;font-size:14px;font-weight:600}
.order-card ul{gap:12px}
.order-card li{align-items:center}
.order-line{display:flex;align-items:center;gap:12px;min-width:0}
.order-line img{width:44px;height:56px;border-radius:9px;object-fit:cover;background:var(--plinth);flex:none}
.order-line div{min-width:0}
.order-line small{display:block;color:var(--muted)}
.order-card li>span:last-child{font-variant-numeric:tabular-nums;font-weight:600}
.order-card-foot{border-top-color:var(--line);margin-top:16px;padding-top:14px}
.order-card-foot strong{font-size:17px}
.account .empty-state{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:40px;text-align:center}

@media(max-width:860px){
  .account{padding-top:130px}
  .acct-layout{grid-template-columns:minmax(0,1fr);gap:18px}
  .account .account-tabs{position:static;display:flex;overflow-x:auto;background:#e0dfda;padding:4px;border-radius:14px}
  .account .account-tabs button{flex:1 0 auto;justify-content:center;padding:10px 12px}
  .account .account-tabs button[aria-selected="true"]{outline:0}
}
@media(max-width:560px){
  .acct-hero{flex-wrap:wrap;gap:14px 16px}
  .acct-hero .avatar{width:64px;height:64px;font-size:24px}
  .acct-hero .btn-outline{width:100%}
  .acct-block,.acct-save,.account #password-form,.order-card{padding:20px 18px}
  .account .account-tabs svg{display:none}
  .order-track li{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.primary:hover,.category:hover{transform:none}}
.checkout-page .checkout-back{color:var(--ink-2)}
.checkout-page .checkout-back:hover{color:var(--ink)}
/* On the dark hero photo, the main button is white so it stays visible. */
.hero .primary{background:#fff;color:var(--ink)}
.hero .primary:hover{background:var(--brand-wash);color:var(--ink)}
/* Thin line so the black help band and the footer read as two sections. */
.site-footer{border-top:1px solid #ffffff1f}
.newsletter button{background:#fff;color:var(--ink);border-color:#fff}
.newsletter button:hover{background:var(--brand-wash)}
/* ---------- Checkout: payment ---------- */
.pay-test{margin:0 0 14px;padding:10px 14px;border-radius:12px;background:#fbefd6;color:#8a5a00;font-size:14px;font-weight:600}
.pay-test[hidden]{display:none}
.pay-methods{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pay-methods li{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:14px;font-weight:600}
.pay-methods svg{grid-row:1/3;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pay-methods small{font-size:12px;font-weight:400;color:var(--muted)}
.pay-amount{margin:12px 0 0;font-size:15px;color:var(--ink-2)}
.pay-amount strong{color:var(--ink);font-size:17px}
.checkout-summary .pay-row{border-top:1px solid var(--line);margin-top:6px;padding-top:12px}
.checkout-summary .pay-row dt,.checkout-summary .pay-row dd{font-weight:700;color:var(--ink)}
#checkout-pay{min-width:220px}
@media(max-width:700px){.pay-methods{grid-template-columns:1fr}}

/* Payment marks */
.pay-methods li{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:14px}
.pay-logos{display:flex;align-items:center;gap:8px;height:26px}
.pay-methods .logo-visa{height:20px;width:58px;grid-row:auto}
.pay-methods .logo-mc{height:24px;width:38px;grid-row:auto}
.logo-easypaisa{font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:19px;letter-spacing:-.6px;color:#1BA548;line-height:1}
.pay-methods .logo-bank{grid-row:auto;width:24px;height:24px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pay-name{display:grid;gap:2px;font-weight:600}
.pay-methods small{font-size:12px;font-weight:400;color:var(--muted)}
@media(max-width:700px){.pay-methods li{flex-direction:row;align-items:center;gap:14px}.pay-logos{min-width:92px}}
.pay-methods .icon-card{width:40px;height:27px;grid-row:auto}
.logo-easypaisa-img{height:26px;width:auto;max-width:110px;object-fit:contain}
.logo-easypaisa-img.missing{display:none}
.pay-methods .pay-icon{height:32px;width:auto}
.pay-methods li[hidden]{display:none}
.pay-methods:has(li[hidden]){grid-template-columns:minmax(0,260px)}
.pay-methods{grid-template-columns:minmax(0,260px)}
.order-eta{margin:-6px 0 16px;padding:10px 14px;border-radius:12px;background:var(--brand-wash);font-size:14px;color:var(--ink-2)}
.order-eta strong{color:var(--ink)}

/* Social icons for networks without a link are hidden by script. */
.footer-social a[hidden]{display:none}

/* Log out is always red (header menu and account page). */
.acct-logout,.popover .acct-logout{color:#c62828}
.acct-logout:hover,.popover .acct-logout:hover{background:#fdecea;color:#a51d1d}
[data-logout-account]{color:#c62828;border-color:#efb7b2}
[data-logout-account]:hover{background:#fdecea;color:#a51d1d;border-color:#c62828}

/* Support links */
.order-help{display:inline-block;margin-top:12px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.acct-cta--ghost{background:transparent!important;color:var(--ink)!important;border:1px solid var(--line)}

/* ==========================================================================
   Catalog: shop filters (sidebar / phone slide-over), brand + platform on
   cards, product specifications
   ========================================================================== */
.shop-tools{display:flex;align-items:center;gap:10px;flex-shrink:0}
.cf-open{display:none;align-items:center;gap:8px;padding:11px 16px;border:1px solid var(--line-2);border-radius:14px;background:var(--paper);color:var(--ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.cf-open:hover{border-color:var(--ink)}
.cf-open svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.cf-open-count{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--ink);color:#fff;font-size:11.5px;line-height:20px;text-align:center}
.cf-open-count[hidden]{display:none}

.catalog-body{display:grid;grid-template-columns:248px minmax(0,1fr);gap:36px;align-items:start}
.catalog-body.no-filters{grid-template-columns:minmax(0,1fr)}
.catalog-body .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cf-panel{position:sticky;top:130px;max-height:calc(100vh - 150px);display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:18px}
.cf-panel[hidden]{display:none}
.cf-head{display:flex;align-items:center;gap:10px;padding:18px 20px 12px}
.cf-head h2{font-size:19px;margin:0;margin-right:auto}
.cf-clear,.cf-chip-clear{border:0;background:none;padding:4px 2px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cf-clear:hover,.cf-chip-clear:hover{color:var(--ink)}
.cf-clear[hidden]{display:none}
.cf-close{display:none;width:40px;height:40px;border:0;border-radius:12px;background:#ecebe6;color:var(--ink);cursor:pointer;align-items:center;justify-content:center}
.cf-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.cf-scroll{overflow-y:auto;padding:0 20px 12px;overscroll-behavior:contain;scrollbar-width:thin}
.cf-group{border:0;border-top:1px solid var(--line);margin:0;padding:16px 0 14px;min-width:0}
.cf-group[hidden]{display:none}
.cf-group legend{float:left;width:100%;padding:0;margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.cf-options{clear:both;display:grid;gap:2px}
.cf-option{clear:both;display:flex;align-items:center;gap:11px;padding:7px 8px;margin:0 -8px;border-radius:10px;font-size:15px;color:var(--ink);cursor:pointer}
.cf-option:hover{background:#efeee9}
.cf-option input{flex:none;width:18px;height:18px;margin:0;accent-color:var(--ink);cursor:pointer}
.cf-option.is-empty{color:#9a9ba0}
.cf-name{min-width:0;overflow-wrap:anywhere}
.cf-count{margin-left:auto;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.cf-quick{clear:both;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.cf-quick button{padding:7px 11px;border:1px solid var(--line-2);border-radius:20px;background:var(--paper);color:var(--ink-2);font:inherit;font-size:13px;cursor:pointer}
.cf-quick button:hover{border-color:var(--ink);color:var(--ink)}
.cf-quick button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.cf-range{display:flex;align-items:flex-end;gap:6px}
.cf-range label{flex:1;min-width:0;display:grid;gap:4px;font-size:12px;color:var(--muted)}
.cf-range input{width:100%;min-width:0;padding:9px 10px;border:1px solid var(--line-2);border-radius:10px;background:#fff;font:inherit;font-size:14px;color:var(--ink);-moz-appearance:textfield}
.cf-range input::-webkit-outer-spin-button,.cf-range input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cf-range input:focus{border-color:var(--ink);outline:0;box-shadow:0 0 0 3px #17181c22}
.cf-dash{padding-bottom:10px;color:var(--muted)}
.cf-go{flex:none;height:39px;padding:0 12px;border:1px solid var(--ink);border-radius:10px;background:var(--ink);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.cf-go:hover{background:var(--brand-2)}
.cf-error{margin:8px 0 0;font-size:13px;color:#a51d1d}
.cf-error[hidden]{display:none}
.cf-switch{margin-top:0}
.cf-foot{display:none}
.cf-backdrop{display:none}

.cf-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-8px 0 22px}
.cf-chips[hidden]{display:none}
.cf-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:7px 9px 7px 13px;border:1px solid var(--ink);border-radius:20px;background:var(--ink);color:#fff;font:inherit;font-size:13px;font-weight:500;cursor:pointer}
.cf-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cf-chip svg{flex:none;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;opacity:.75}
.cf-chip:hover{background:var(--brand-2)}
.cf-chip:hover svg{opacity:1}
.cf-chip-clear{margin-left:4px}

.shop-empty{text-align:center;padding:56px 24px;border:1px dashed var(--line-2);border-radius:18px;background:#f1f0ec}
.shop-empty[hidden]{display:none}
.shop-empty p{margin:0 0 6px;color:var(--muted);font-size:15px}
.shop-empty .shop-empty-title{font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.shop-empty .btn-outline{margin-top:16px;padding:11px 18px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;border:1px solid var(--line-2);color:var(--ink)}
.shop-empty .btn-outline[hidden]{display:none}

/* Brand and platforms on product cards */
.card-brand{margin:16px 0 0;font-size:11.5px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--ink-2)}
.card-brand+h3{margin-top:5px}
.platform-badges{display:flex;flex-wrap:wrap;gap:5px;list-style:none;margin:8px 0 0;padding:0}
.platform-badges li{padding:3px 8px;border:1px solid var(--line-2);border-radius:6px;font-size:11px;font-weight:600;line-height:1.35;color:var(--ink-2);background:#f3f2ee;white-space:nowrap}
.platform-badges li.more{border-style:dashed;background:none;color:var(--muted)}

/* Product page */
.pdp-brand{display:inline-block;margin:6px 0 2px;font-size:13px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--line-2);padding-bottom:1px}
.pdp-brand:hover{border-bottom-color:var(--ink)}
.pdp-brand[hidden]{display:none}
.pdp-compat{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 22px}
.pdp-compat[hidden]{display:none}
.pdp-compat-label{font-size:13px;font-weight:700;color:var(--ink)}
.platform-chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.platform-chips a{display:inline-block;padding:6px 12px;border:1px solid var(--line-2);border-radius:20px;background:var(--paper);font-size:13px;font-weight:500;color:var(--ink);text-decoration:none}
.platform-chips a:hover{border-color:var(--ink)}
.pdp-specs{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.pdp-specs[hidden]{display:none}
.pdp-specs h2{font-size:20px;margin:0 0 12px}
.spec-table{width:100%;border-collapse:collapse;font-size:14.5px;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;border-spacing:0}
.spec-table th,.spec-table td{padding:12px 16px;text-align:left;vertical-align:top;border-top:1px solid var(--line)}
.spec-table tr:first-child th,.spec-table tr:first-child td{border-top:0}
.spec-table th{width:38%;font-weight:600;color:var(--ink-2)}
.spec-table td{color:var(--ink);overflow-wrap:anywhere}
.spec-table tr:nth-child(even){background:#f5f4f0}

@media(max-width:1180px){.catalog-body{grid-template-columns:224px minmax(0,1fr);gap:26px}.catalog-body .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .shop-toolbar{flex-direction:column;align-items:stretch}
  .shop-tools{justify-content:space-between}
  .cf-open{display:inline-flex}
  .catalog-body,.catalog-body.no-filters{display:block}
  .catalog-body .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cf-panel{position:fixed;top:0;right:0;bottom:0;z-index:1000;width:min(380px,88vw);max-height:none;border-radius:20px 0 0 20px;border:0;box-shadow:-20px 0 60px #17181c33;transform:translateX(104%);visibility:hidden;transition:transform .28s ease,visibility 0s linear .28s}
  .cf-panel.open{transform:none;visibility:visible;transition:transform .28s ease}
  .cf-head{padding:16px 16px 12px 20px;border-bottom:1px solid var(--line)}
  .cf-close{display:inline-flex}
  .cf-scroll{flex:1;padding:0 20px}
  .cf-group:first-child{border-top:0}
  .cf-option{padding:10px 8px}
  .cf-foot{display:block;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper)}
  .cf-apply{width:100%;padding:15px;font-size:15px;border:0;cursor:pointer}
  .cf-backdrop{display:block;position:fixed;inset:0;z-index:999;background:#0b0c0e80;backdrop-filter:blur(2px)}
  .cf-backdrop[hidden]{display:none}
  body.cf-locked{overflow:hidden}
}
@media(max-width:760px){.catalog-body .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-badges li{font-size:10.5px;padding:2px 6px}.cf-chips{margin-top:-6px}}
@media(prefers-reduced-motion:reduce){.cf-panel,.cf-panel.open{transition:none}}
.shop-product,.related-grid .product,.product-track .product{display:flex;flex-direction:column}
.shop-product .add-cart,.related-grid .product .add-cart,.product-track .product .add-cart{margin-top:auto}
.product-meta:has(+.platform-badges){margin-bottom:8px}
.platform-badges{margin:0 0 14px}
@media(max-width:900px){.shop-sort{min-width:0;flex:0 1 auto}.shop-sort select{min-width:0;max-width:100%}}
@media(max-width:480px){.shop-sort>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
@media(min-width:901px){.cf-panel{position:static;max-height:none}.cf-scroll{overflow:visible}}

/* ---------- Store policy pages ---------- */
.policy{max-width:860px;margin:0 auto;padding:150px 22px 80px}
.policy-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.policy-tabs a{padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--paper);color:var(--ink-2);font-size:14px;font-weight:600;text-decoration:none}
.policy-tabs a:hover{color:var(--ink);border-color:var(--ink-2)}
.policy-tabs a[aria-current]{background:var(--brand);border-color:var(--brand);color:#fff}
.policy-doc{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:clamp(24px,5vw,52px);box-shadow:0 10px 30px #17181c0f}
.policy-doc h1{font-size:clamp(30px,4.4vw,44px);line-height:1.08;margin:0 0 8px}
.policy-date{color:var(--muted);font-size:14px;margin:0 0 26px}
.policy-lead{font-size:18px;line-height:1.6;color:var(--ink);margin:0 0 10px}
.policy-doc h2{font-size:21px;margin:34px 0 10px;padding-top:22px;border-top:1px solid var(--line)}
.policy-doc p,.policy-doc li{font-size:16px;line-height:1.7;color:var(--ink-2)}
.policy-doc p{margin:0 0 12px}
.policy-doc ul{margin:0 0 12px;padding-left:22px}
.policy-doc li{margin:0 0 6px}
.policy-doc strong{color:var(--ink)}
.policy-doc a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){.policy{padding:120px 16px 60px}.policy-doc{border-radius:16px}.policy-lead{font-size:17px}}

/* ---------- Careers ---------- */
.careers{max-width:1180px;margin:0 auto;padding:150px 22px 80px}
.careers-hero{max-width:720px;margin:0 0 34px}
.careers-kicker{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.careers-hero h1{font-size:clamp(38px,6vw,64px);line-height:1;margin:0 0 16px}
.careers-lead{font-size:18px;line-height:1.6;color:var(--ink-2);margin:0}
.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 40px}
.job-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 10px 30px #17181c0f}
.job-icon{width:48px;height:48px;border-radius:14px;background:var(--brand);display:grid;place-items:center;margin:0 0 18px}
.job-icon svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.job-card h2{font-size:24px;margin:0 0 4px}
.job-meta{margin:0 0 14px;font-size:13px;font-weight:600;color:var(--muted)}
.job-blurb{margin:0 0 6px;font-size:15.5px;line-height:1.6;color:var(--ink)}
.job-card h3{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:18px 0 8px}
.job-card ul{margin:0;padding-left:18px}
.job-card li{font-size:14.5px;line-height:1.55;color:var(--ink-2);margin:0 0 5px}
.job-get{margin:18px 0 20px;padding:12px 14px;border-radius:12px;background:var(--concrete);font-size:14px;line-height:1.55;color:var(--ink-2)}
.job-get strong{color:var(--ink)}
.job-closed{margin:auto 0 0;font-size:14px;font-weight:600;color:var(--muted)}
.job-apply{margin-top:auto;align-self:flex-start;text-decoration:none}
.apply-card{max-width:860px;margin:0 auto;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:clamp(24px,5vw,48px);box-shadow:0 10px 30px #17181c0f;scroll-margin-top:120px}
.apply-head h2{font-size:clamp(28px,4vw,38px);margin:0 0 6px}
.apply-head p{margin:0 0 24px;color:var(--muted)}
.apply-form fieldset{border:0;padding:0;margin:0}
.role-pick legend,.apply-form h3{font-family:var(--sans);font-size:15px;font-weight:700;color:var(--ink);margin:0 0 12px;padding:0}
.apply-form h3{margin:28px 0 14px;padding-top:22px;border-top:1px solid var(--line)}
.role-pick{display:flex;flex-wrap:wrap;gap:10px}
.role-pick label{position:relative;cursor:pointer}
.role-pick input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.role-pick span{display:inline-flex;padding:11px 18px;border-radius:999px;border:1px solid var(--line-2);background:#fff;font-weight:600;font-size:15px;color:var(--ink-2);transition:background .15s,color .15s,border-color .15s}
.role-pick label:hover span{border-color:var(--ink-2);color:var(--ink)}
.role-pick input:checked+span{background:var(--brand);border-color:var(--brand);color:#fff}
.role-pick input:focus-visible+span{outline:2px solid var(--brand);outline-offset:3px}
.apply-closed{margin:18px 0 0;padding:14px 16px;border-radius:12px;background:var(--concrete);color:var(--ink-2)}
.apply-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.af{display:flex;flex-direction:column;gap:7px;margin:0 0 14px;font-size:14px;font-weight:600;color:var(--ink)}
.af .opt{font-weight:400;color:var(--muted)}
.af input,.af select,.af textarea{font:inherit;font-weight:400;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line-2);border-radius:12px;padding:11px 13px;width:100%;box-sizing:border-box}
.af textarea{resize:vertical;min-height:84px;line-height:1.5}
.af input:focus,.af select:focus,.af textarea:focus{border-color:var(--ink);outline:2px solid #17181c22;outline-offset:0}
.af.checks{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 18px}
.af.checks legend{font-size:14px;font-weight:600;margin:0 0 8px;width:100%;float:left}
.af.checks label{display:inline-flex;align-items:center;gap:7px;font-weight:400;font-size:15px;color:var(--ink-2);cursor:pointer}
.af.checks input{width:17px;height:17px;padding:0;accent-color:var(--brand)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;gap:10px;align-items:flex-start;margin:20px 0 16px;font-size:14px;line-height:1.55;color:var(--ink-2);cursor:pointer}
.consent input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--brand)}
.consent a{color:var(--ink)}
.apply-form .form-error{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#fbe9e7;color:#a12a1b;font-size:14px}
.apply-submit{min-width:200px}
.apply-submit:disabled{opacity:.6;cursor:progress}
.apply-done{text-align:center;padding:20px 0 6px;outline:0}
.done-mark{width:58px;height:58px;border-radius:50%;background:var(--brand);display:grid;place-items:center;margin:0 auto 16px}
.done-mark svg{width:28px;height:28px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.apply-done h3{font-size:26px;margin:0 0 8px}
.apply-done p{max-width:520px;margin:0 auto 22px;color:var(--ink-2);line-height:1.6}
@media (max-width:960px){.job-grid{grid-template-columns:1fr}}
@media (max-width:640px){.careers{padding:120px 16px 60px}.apply-row{grid-template-columns:1fr;gap:0}.job-card{padding:22px;border-radius:18px}.apply-card{border-radius:18px}}

/* ---------- Contact ---------- */
.contact{max-width:1080px;margin:0 auto;padding:150px 22px 80px}
.contact-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;margin:0 0 22px;align-items:stretch}
.contact-card{position:relative;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 10px 30px #17181c0f}
.contact-main{border:2px solid var(--brand)}
.contact-badge{position:absolute;top:22px;right:22px;padding:5px 11px;border-radius:999px;background:var(--brand);color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em}
.job-icon.alt{background:var(--concrete)}
.job-icon.alt svg{stroke:var(--ink)}
.contact-card h2{font-size:26px;margin:0 0 4px}
.contact-sub{margin:0 0 16px;color:var(--muted);font-size:15px}
.contact-email{margin:0 0 14px;font-size:20px;font-weight:700;overflow-wrap:anywhere}
.contact-email a{color:var(--ink);text-decoration:none}
.contact-email a:hover{text-decoration:underline}
.contact-points{margin:0 0 24px;padding:0;list-style:none}
.contact-points li{position:relative;padding:0 0 0 28px;margin:0 0 10px;font-size:15px;line-height:1.5;color:var(--ink-2)}
.contact-points li:before{content:'';position:absolute;left:2px;top:4px;width:14px;height:8px;border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(-45deg)}
.contact-btn{margin-top:auto;align-self:flex-start;text-decoration:none;min-width:180px;justify-content:center}
.contact-note{margin:14px 0 0;font-size:13.5px;color:var(--muted)}
.contact-note a{color:var(--ink)}
.contact-help{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:26px 30px}
.contact-help h2{font-size:20px;margin:0 0 16px}
.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.quick-links a{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}
.quick-links a:hover{border-color:var(--ink);transform:translateY(-1px)}
.quick-links strong{font-size:15px}
.quick-links span{font-size:13.5px;color:var(--muted);line-height:1.45}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}.quick-links{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.contact{padding:120px 16px 60px}.contact-card{padding:24px;border-radius:18px}.contact-badge{position:static;align-self:flex-start;margin:0 0 14px}.quick-links{grid-template-columns:1fr}.contact-help{padding:22px;border-radius:18px}}
.app-card .app-msg{margin:14px 0 0;font-size:15px;line-height:1.6;color:var(--ink-2)}
.app-card .app-updated{margin:6px 0 0;font-size:13px;color:var(--muted)}
#sec-applications .acct-block-head{margin-bottom:16px}
#sec-applications .acct-block-head a{color:var(--ink)}
.apply-done .apply-track{font-size:14px;color:var(--muted);margin-top:-8px}.apply-done .apply-track a{color:var(--ink)}
.sessions-block{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.sessions-block .acct-block-head{margin-bottom:12px}

/* ---------- Affiliate panel ---------- */
.aff{max-width:1240px;margin:0 auto;padding:150px 22px 80px}
.aff-loading{color:var(--muted);padding:40px 0}
.aff-denied{max-width:620px;margin:20px auto;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:40px 28px}
.aff-denied h1{font-size:36px;margin:0 0 10px}
.aff-denied p{color:var(--ink-2);margin:0 0 22px}
.aff-denied-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.aff-hero{display:grid;grid-template-columns:1fr minmax(0,560px);gap:28px;align-items:center;background:var(--brand);color:#fff;border-radius:28px;padding:clamp(26px,4vw,44px);margin:0 0 18px;position:relative;overflow:hidden;isolation:isolate}
.aff-hero:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse 60% 90% at 85% 50%,#000,transparent 70%);-webkit-mask-image:radial-gradient(ellipse 60% 90% at 85% 50%,#000,transparent 70%)}
.aff-hero h1{font-size:clamp(34px,4.6vw,56px);line-height:.95;letter-spacing:-.045em;margin:0 0 12px;color:#fff}
.aff-sub{margin:0;color:#b9bac0;font-size:16px;line-height:1.55;max-width:44ch}
.aff-share{display:grid;gap:10px}
.aff-share-row{display:grid;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:12px;background:#ffffff10;border:1px solid #ffffff1f;border-radius:16px;padding:12px 12px 12px 16px}
.aff-share-label{font-size:13px;color:#b9bac0}
.aff-code{font-family:var(--display);font-size:22px;letter-spacing:.02em}
.aff-link{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aff-copy{border:0;border-radius:10px;background:#fff;color:var(--brand);font-weight:700;font-size:14px;padding:9px 14px;cursor:pointer}
.aff-copy:hover{background:#e7e7e3}
.aff-paused{margin:0 0 18px;padding:14px 18px;border-radius:14px;background:#fbefd5;color:#6b4b00}
.aff-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 18px}
.aff-stat{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.aff-stat span{font-size:14px;color:var(--muted);font-weight:600}
.aff-stat strong{font-family:var(--display);font-size:clamp(24px,2.6vw,34px);letter-spacing:-.03em}
.aff-payout{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:clamp(22px,3vw,32px);margin:0 0 18px}
.aff-payout h2{font-size:16px;font-family:var(--sans);font-weight:700;margin:0 0 6px;color:var(--ink-2)}
.aff-balance{font-family:var(--display);font-size:clamp(40px,5vw,60px);font-weight:800;letter-spacing:-.04em;margin:0 0 14px;line-height:1}
.aff-meter{height:14px;border-radius:999px;background:var(--concrete);overflow:hidden}
.aff-meter span{display:block;height:100%;width:0;background:var(--brand);border-radius:999px;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.aff-meter-text{margin:10px 0 0;font-size:14px;color:var(--ink-2)}
.aff-payout-side{margin:0;display:grid;gap:14px;align-content:center;border-left:1px solid var(--line);padding-left:24px}
.aff-payout-side div{display:grid;gap:2px}
.aff-payout-side dt{font-size:14px;color:var(--muted);font-weight:600}
.aff-payout-side dd{margin:0;font-family:var(--display);font-size:26px;font-weight:800;letter-spacing:-.03em}
.aff-payout-side small{color:var(--muted);font-size:13px}
.aff-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;align-items:start}
.aff-side{display:grid;gap:18px}
.aff-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px 24px}
.aff-card h2{font-size:20px;letter-spacing:-.03em;margin:0 0 14px}
.aff-table{width:100%;border-collapse:collapse;font-size:14.5px}
.aff-table th{text-align:left;font-size:13px;color:var(--muted);font-weight:600;padding:0 8px 10px;border-bottom:1px solid var(--line)}
.aff-table td{padding:12px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.aff-table tr:last-child td{border-bottom:0}
.aff-table .num{text-align:right;font-variant-numeric:tabular-nums}
.aff-table small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.aff-pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--concrete);color:var(--ink-2)}
.aff-pill.ready{background:#dff3e4;color:#1d6b35}
.aff-pill.paid{background:var(--brand);color:#fff}
.aff-pill.void{background:#f6e3e1;color:#9b2c1f}
.aff-empty{color:var(--muted);margin:0;line-height:1.55}
.aff-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.aff-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.aff-list strong{font-size:16px}
.aff-list small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.aff-list span{font-size:13px;color:var(--muted);white-space:nowrap}
.aff-how ol{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--ink-2);font-size:14.5px;line-height:1.5}
.aff-save{margin-top:4px}
.aff-saved{margin:8px 0 0;font-size:14px;color:var(--ink-2);min-height:1.2em}
@media(max-width:960px){.aff-hero,.aff-payout,.aff-grid{grid-template-columns:1fr}.aff-payout-side{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:16px;grid-template-columns:1fr 1fr}.aff-stats{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.aff{padding:132px 16px 60px}.aff-share-row{grid-template-columns:1fr auto}.aff-share-label{grid-column:1/-1}.aff-table th:nth-child(2),.aff-table td:nth-child(2){display:none}}

/* ---------- About ---------- */
.ab{max-width:1120px;margin:0 auto;padding:170px 24px 90px}
.ab-open{margin:0 0 clamp(48px,7vw,90px)}
.ab-open h1{font-family:var(--display);font-weight:800;font-size:clamp(52px,9vw,124px);line-height:.92;letter-spacing:-.055em;margin:0 0 22px}
.ab-lead{font-size:clamp(20px,2vw,26px);line-height:1.45;color:var(--ink-2);margin:0;max-width:40ch}
.ab-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(32px,7vw,110px);align-items:start;padding-top:clamp(28px,4vw,48px);border-top:2px solid var(--ink);margin:0 0 clamp(64px,9vw,120px)}
.ab-label{font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:0;color:var(--muted);margin:0 0 22px}
.ab-note{max-width:62ch}
.ab-note p{font-size:clamp(19px,1.7vw,23px);line-height:1.6;color:var(--ink);margin:0 0 1.1em}
.ab-sign{font-family:var(--display);font-weight:800;font-size:clamp(22px,2vw,28px)!important;letter-spacing:-.03em;margin-top:1.6em!important;display:flex;flex-direction:column;gap:2px}
.ab-sign span{font-family:var(--sans);font-weight:500;font-size:15px;letter-spacing:0;color:var(--muted)}
.ab-facts dl{margin:0;display:grid}
.ab-facts div{display:grid;gap:2px;padding:16px 0;border-bottom:1px solid var(--line-2)}
.ab-facts div:first-child{padding-top:0}
.ab-facts dt{font-size:14px;color:var(--muted)}
.ab-facts dd{margin:0;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.025em}
.ab-lead-team{padding-top:clamp(28px,4vw,48px);border-top:2px solid var(--ink)}
.ab-people{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:clamp(28px,6vw,80px)}
.ab-person{display:flex;align-items:center;gap:18px}
.ab-face{width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--brand);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:36px;flex:none}
.ab-face img{width:100%;height:100%;object-fit:cover;display:block}
.ab-person strong{display:block;font-family:var(--display);font-weight:800;font-size:clamp(26px,2.8vw,36px);letter-spacing:-.04em;line-height:1}
.ab-person small{display:block;margin-top:6px;font-size:15px;color:var(--muted);font-weight:600}
@media(max-width:860px){.ab-body{grid-template-columns:1fr}.ab-facts dl{grid-template-columns:1fr 1fr;column-gap:20px}.ab-facts div:nth-child(2){padding-top:0}}
@media(max-width:640px){.ab{padding:140px 16px 64px}.ab-face{width:72px;height:72px}}

/* Shop: "which phone?" pills, shown under the tabs for Phone Cases */
.shop-fits:not([hidden]){display:flex;flex-wrap:wrap;gap:8px;margin:-12px 0 26px}
.shop-fits button{min-height:40px;padding:0 18px;border:1.5px solid var(--line-2);border-radius:999px;background:var(--paper);color:var(--ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.shop-fits button:hover{border-color:var(--ink)}
.shop-fits button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- News ---------- */
a.has-new{position:relative}
a.has-new::after{content:'';position:absolute;top:-2px;right:-9px;width:7px;height:7px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 2px var(--paper)}
.nw{max-width:760px;margin:0 auto;padding:170px 24px 90px}
.nw-head{margin-bottom:34px}
.nw-head h1{font-family:var(--display);font-weight:800;font-size:clamp(48px,7vw,84px);line-height:.95;letter-spacing:-.05em;margin:0 0 14px}
.nw-lead{margin:0;font-size:18px;line-height:1.55;color:var(--ink-2);max-width:46ch}
.nw-filters:not([hidden]){display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.nw-filters button{min-height:38px;padding:0 16px;border:1.5px solid var(--line-2);border-radius:999px;background:var(--paper);font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}
.nw-filters button:hover{border-color:var(--ink)}
.nw-filters button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.nw-feed{display:grid;gap:18px}
.nw-post{scroll-margin-top:130px;padding:28px 30px;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:0 1px 2px #17181c0a}
.nw-post.is-pinned{border-color:var(--ink);box-shadow:0 0 0 3px #17181c0d}
.nw-post:target{box-shadow:0 0 0 3px var(--ink)}
.nw-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:12px;font-size:13.5px;color:var(--muted)}
.nw-tag{display:inline-flex;align-items:center;height:26px;padding:0 11px;border-radius:999px;font-size:12.5px;font-weight:700;letter-spacing:.01em;background:#ecebe6;color:var(--ink)}
.nw-tag--new{background:#e3ecff;color:#1d3f8f}.nw-tag--sale{background:#ffe6e2;color:#a3261a}
.nw-tag--announcement{background:var(--ink);color:#fff}.nw-tag--giveaway{background:#e6f5e8;color:#1f6b33}
.nw-pin{display:inline-flex;align-items:center;gap:4px;font-weight:600;color:var(--ink)}
.nw-pin svg,.nw-share svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nw-edited{font-style:italic}
.nw-post h2{margin:0 0 12px;font-family:var(--display);font-size:clamp(24px,3vw,32px);line-height:1.12;letter-spacing:-.03em}
.nw-post h2 a{color:inherit;text-decoration:none}
.nw-post h2 a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.nw-body{font-size:16.5px;line-height:1.7;color:var(--ink-2)}
.nw-body strong{color:var(--ink)}
.nw-foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.nw-share{display:inline-flex;align-items:center;gap:6px;padding:4px 0;border:0;background:none;font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}
.nw-share:hover{color:var(--ink)}
.nw-empty,.nw-error{padding:40px 0;text-align:center;color:var(--muted)}
.nw-more-wrap{display:flex;justify-content:center;margin-top:26px}
.nw-more:not([hidden]){min-height:48px;padding:0 24px;border:1.5px solid var(--ink);border-radius:14px;background:transparent;font:inherit;font-weight:700;cursor:pointer}
.nw-more:hover{background:var(--ink);color:#fff}
.nw-skel{display:grid;gap:12px}
.nw-skel span{height:14px;border-radius:7px;background:linear-gradient(90deg,#ecebe6 0%,#f5f4f0 50%,#ecebe6 100%);background-size:200% 100%;animation:nw-shimmer 1.3s linear infinite}
.nw-skel span:nth-child(1){width:30%}.nw-skel span:nth-child(2){width:70%;height:26px}.nw-skel span:nth-child(3){width:90%}
@keyframes nw-shimmer{to{background-position:-200% 0}}
@media(max-width:640px){.nw{padding:140px 16px 64px}.nw-post{padding:22px 20px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){.nw-skel span{animation:none}}

/* ---------- "Learn" menu in the top bar (About Us, News, Blogs, Docs) ---------- */
.nav-learn{position:relative}
.navlinks .nav-learn-btn{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.nav-learn-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.nav-learn.open .nav-learn-btn svg{transform:rotate(180deg)}
.nav-learn.is-current .nav-learn-btn,.nav-learn.open .nav-learn-btn{color:var(--ink)}
.nav-learn.is-current .nav-learn-btn{box-shadow:inset 0 -2px 0 var(--brand)}
.nav-learn-btn.has-new{position:relative}
.nav-learn-btn.has-new::after{content:'';position:absolute;top:4px;right:-8px;width:7px;height:7px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 2px var(--paper)}
.learn-menu{position:absolute;left:50%;top:calc(100% + 18px);z-index:20;width:290px;padding:14px 10px 10px;border-radius:18px;background:var(--paper);border:1px solid var(--line);box-shadow:0 22px 50px #17181c2e;
  opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .16s,transform .16s,visibility 0s .16s}
.learn-menu::before{content:'';position:absolute;left:0;right:0;top:-20px;height:20px} /* keeps the menu open while the mouse crosses the gap */
.nav-learn.open .learn-menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .16s,transform .16s}
@media(hover:hover){.nav-learn:hover .learn-menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .16s,transform .16s}.nav-learn:hover .nav-learn-btn svg{transform:rotate(180deg)}}
.learn-title{margin:0 10px 8px;font-size:13px;font-weight:700;color:var(--muted)}
.navlinks .learn-menu a{display:flex;align-items:center;gap:14px;padding:9px 10px;border-radius:12px;color:var(--ink);font-size:15px;box-shadow:none;transition:background .14s}
.navlinks .learn-menu a:hover,.navlinks .learn-menu a:focus-visible{background:#efeee9}
.navlinks .learn-menu a[aria-current]{background:#efeee9;box-shadow:none}
.learn-ico{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ecebe6;color:var(--ink);transition:background .14s,color .14s}
.learn-menu a:hover .learn-ico,.learn-menu a[aria-current] .learn-ico{background:var(--brand);color:#fff}
.learn-ico svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.learn-text{display:flex;flex-direction:column;gap:2px;line-height:1.2}
.learn-text strong{font-size:15px;font-weight:700}
.learn-text small{font-size:13px;color:var(--muted);font-weight:500}
.learn-menu a.has-new::after{top:14px;right:14px;left:auto}
@media(prefers-reduced-motion:reduce){.learn-menu,.nav-learn-btn svg{transition:none}}

/* Blogs and Docs: empty for now */
.nw-soon{padding:56px 24px;border:1px dashed var(--line-2);border-radius:22px;text-align:center;background:#ffffff80}
.nw-soon p{margin:0 0 6px;color:var(--ink-2)}
.nw-soon .nw-soon-title{font-family:var(--display);font-weight:800;font-size:24px;letter-spacing:-.02em;color:var(--ink)}
.nw-soon .primary{margin-top:20px}

/* Keep Home / Shop / Learn / Contact exactly in the middle of the bar, whatever the width of the
   logo on the left and the icons on the right. */
@media(min-width:761px){
  .navbar{display:grid;grid-template-columns:1fr auto 1fr}
  .navbar>.brand{justify-self:start}
  .navbar>.navlinks{justify-self:center}
  .navbar>.actions{justify-self:end}
}
@media(min-width:761px) and (max-width:1020px){.navbar .navlinks{gap:20px}.navbar{gap:14px}}
