:root{
  --bg:#ffffff;
  --wash:#f2f5f4;
  --wash2:#e9eeec;
  --line:#dce3e0;
  --ink:#16302b;
  --ink2:#4b5d58;
  --ink3:#7a8a85;
  --accent:#0d7a64;
  --accent-ink:#0a5e4d;
  --accent-wash:#e3f2ed;
  --ln:#167a58; --ln-bg:#e2f3ec;
  --go:#2a64a8; --go-bg:#e5eef8;
  --fa:#9a6512; --fa-bg:#f8efdd;
  --po:#a83a34; --po-bg:#f8e6e4;
  /* aliases used by inline styles in the scripts */
  --text:var(--ink); --muted:var(--ink3); --muted2:var(--ink2);
  --surface:var(--bg); --surface2:var(--wash); --surface3:var(--wash2);
  --border:var(--line); --border2:#c7d1cd;
  --good:var(--ln); --blue:var(--go); --fair:var(--fa); --poor:var(--po);
  --accent-dim:var(--accent-wash); --accent-border:#b7dccf;
  --radius:10px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Hanken Grotesk',system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;}
button,input,select{font-family:inherit;}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
strong{font-weight:650;}

/* ── TOP BAR ── */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px;height:64px;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:200;}
.logo{font-size:21px;font-weight:750;letter-spacing:-.4px;text-decoration:none;color:var(--ink);}
.logo span{color:var(--ink3);font-weight:500;}
.topbar-right{display:flex;align-items:center;gap:20px;font-size:14px;color:var(--ink2);}
.topbar-link{background:none;border:none;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer;padding:8px 14px;border:1px solid var(--line);border-radius:999px;}
.topbar-link:hover{border-color:var(--ink);}

/* ── HERO ── */
.hero{max-width:1200px;margin:0 auto;padding:56px 32px 44px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start;}
.hero h1{font-size:clamp(34px,4.6vw,54px);font-weight:750;line-height:1.04;letter-spacing:-1.6px;max-width:13ch;margin-bottom:18px;}
.hero-sub{font-size:17px;color:var(--ink2);max-width:46ch;margin-bottom:28px;}
.hero-search{position:relative;max-width:480px;}
.hero-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--ink3);pointer-events:none;}
.hero-search input{width:100%;font-size:16px;padding:15px 16px 15px 46px;border:1.5px solid var(--border2);border-radius:999px;background:var(--bg);color:var(--ink);outline:none;}
.hero-search input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-wash);}
.hero-search input::placeholder{color:var(--ink3);}
.hero-facts{display:flex;gap:28px;margin-top:22px;font-size:14px;color:var(--ink2);}
.hero-facts b{display:block;font-size:20px;color:var(--ink);font-weight:700;letter-spacing:-.3px;}

/* grade translator */
.translator{background:var(--wash);border-radius:16px;padding:22px 22px 18px;}
.tr-title{font-size:15px;font-weight:650;margin-bottom:4px;}
.tr-sub{font-size:13.5px;color:var(--ink2);margin-bottom:16px;}
.tr-grades{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:var(--wash2);padding:4px;border-radius:999px;margin-bottom:14px;}
.tr-grade{border:none;background:none;border-radius:999px;padding:8px 4px;font-size:13px;font-weight:600;color:var(--ink2);cursor:pointer;}
.tr-grade[aria-selected="true"]{background:var(--bg);color:var(--ink);box-shadow:0 1px 2px rgba(22,48,43,.12);}
.tr-list{list-style:none;}
.tr-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 2px;border-bottom:1px solid var(--line);font-size:14px;}
.tr-list li:last-child{border-bottom:none;}
.tr-ret{display:flex;align-items:center;gap:8px;color:var(--ink2);}
.tr-label{font-weight:650;color:var(--ink);}
.tr-list li{animation:none;}
@media (prefers-reduced-motion:no-preference){.tr-list.swap li{animation:trIn .28s ease both;}.tr-list.swap li:nth-child(2){animation-delay:.03s}.tr-list.swap li:nth-child(3){animation-delay:.06s}.tr-list.swap li:nth-child(4){animation-delay:.09s}.tr-list.swap li:nth-child(5){animation-delay:.12s}.tr-list.swap li:nth-child(6){animation-delay:.15s}}
@keyframes trIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.tr-result{margin-top:12px;font-size:13.5px;color:var(--ink2);}
.tr-result .grade-badge{margin-left:4px;}

/* ── TABS ── */
.tabs{display:flex;gap:4px;max-width:1200px;margin:0 auto;padding:0 32px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;}
.tabs::-webkit-scrollbar{display:none;}
.tab-btn{flex:0 0 auto;padding:14px 14px 13px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--ink2);font-size:15px;font-weight:550;cursor:pointer;white-space:nowrap;}
.tab-btn:hover{color:var(--ink);}
.tab-btn.active{color:var(--ink);border-bottom-color:var(--ink);font-weight:650;}

/* ── DROPS ── */
.drops-strip{max-width:1200px;margin:0 auto;padding:28px 32px 4px;}
.drops-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap;}
.drops-title{font-size:18px;font-weight:700;letter-spacing:-.2px;}
.drops-date{font-size:13px;color:var(--ink3);}
.drops-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;}
.drop-card{border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:4px;cursor:pointer;background:var(--bg);}
.drop-card:hover{border-color:var(--border2);}
.drop-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;}
.drop-model{font-size:14.5px;font-weight:650;line-height:1.3;}
.drop-badge{font-size:12px;font-weight:700;color:var(--po);white-space:nowrap;}
.drop-spec{font-size:13px;color:var(--ink3);}
.drop-prices{display:flex;align-items:baseline;gap:8px;margin-top:4px;}
.drop-new{font-size:20px;font-weight:750;letter-spacing:-.4px;font-variant-numeric:tabular-nums;}
.drop-old{font-size:13px;color:var(--ink3);text-decoration:line-through;}
.drop-retailer{font-size:12.5px;color:var(--ink2);display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:2px;}
.drop-retailer .ret-badge{padding:0;border:none;background:none;}

/* ── FILTERS ── */
.filter-bar{max-width:1200px;margin:0 auto;padding:24px 32px 6px;}
.filter-scroll{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;}
.filter-chip{display:flex;flex-direction:column;gap:5px;}
.chip-label{font-size:12.5px;font-weight:600;color:var(--ink2);}
select.chip-select,.search-chip{background:var(--bg);border:1px solid var(--border2);color:var(--ink);padding:9px 34px 9px 12px;border-radius:8px;font-size:14px;cursor:pointer;outline:none;min-width:120px;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%234b5d58' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;}
select.chip-select:focus{border-color:var(--accent);}
.btn-reset{background:none;border:none;color:var(--accent);font-size:14px;font-weight:600;cursor:pointer;padding:9px 6px;text-decoration:underline;text-underline-offset:3px;}
.results-bar{max-width:1200px;margin:0 auto;padding:12px 32px;font-size:13.5px;color:var(--ink2);}

/* ── TABLE ── */
.table-wrap{max-width:1200px;margin:0 auto;padding:0 32px 64px;overflow-x:auto;}
table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:760px;}
thead th{text-align:left;padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--ink3);border-bottom:1px solid var(--line);white-space:nowrap;}
tbody tr{border-bottom:1px solid var(--line);cursor:pointer;}
tbody tr:hover{background:var(--wash);}
tbody td{padding:13px 12px;vertical-align:middle;}
.device-cell{display:flex;flex-direction:column;gap:1px;}
.brand-tag{font-size:12px;color:var(--ink3);font-weight:500;}
.model-name{font-size:15px;font-weight:650;}
.storage-text{color:var(--ink2);}
.retailer-orig{font-size:13.5px;color:var(--ink2);}
.grade-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:999px;font-size:12.5px;font-weight:650;white-space:nowrap;}
.grade-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.grade-badge.like-new{background:var(--ln-bg);color:var(--ln);} .grade-badge.like-new .grade-dot{background:var(--ln);}
.grade-badge.good{background:var(--go-bg);color:var(--go);} .grade-badge.good .grade-dot{background:var(--go);}
.grade-badge.fair{background:var(--fa-bg);color:var(--fa);} .grade-badge.fair .grade-dot{background:var(--fa);}
.grade-badge.poor{background:var(--po-bg);color:var(--po);} .grade-badge.poor .grade-dot{background:var(--po);}
.ret-badge{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:500;white-space:nowrap;color:var(--ink);}
.rdot{width:8px;height:8px;border-radius:2px;flex-shrink:0;display:inline-block;}
.rdot.backmarket{background:#1d1d1b;}.rdot.swappa{background:#6c4bd6;}.rdot.ebay{background:#e53238;}
.rdot.amazon{background:#ff9900;}.rdot.musicmagpie{background:#8a2be2;}.rdot.cex{background:#d4145a;}
.rdot.mazuma{background:#0aa5c4;}.rdot.reboxed{background:#11a36b;}.rdot.johnlewis{background:#3d3d3d;}
.rdot.currys{background:#4c12a1;}.rdot.argos{background:#d42114;}.rdot.giffgaff{background:#2bb24c;}
.rdot.smartfonestore{background:#2f6fe0;}.rdot.fourgadgets{background:#f0a400;}.rdot.laptopsdirect{background:#0b79c8;}
.rdot.fonehouse{background:#6b2fb3;}.rdot.envirofone{background:#3f9b3a;}
.price-text{font-size:17px;font-weight:750;letter-spacing:-.3px;font-variant-numeric:tabular-nums;}
.trend{font-size:13px;font-weight:550;white-space:nowrap;}
.trend.up{color:var(--po);}.trend.down{color:var(--ln);}.trend.flat{color:var(--ink3);}
.btn-deal{display:inline-block;background:var(--ink);color:#fff;padding:8px 14px;border-radius:999px;font-size:13.5px;font-weight:600;text-decoration:none;white-space:nowrap;}
.btn-deal:hover{background:var(--accent-ink);}
.listing-age{font-size:12px;color:var(--ink3);display:inline-flex;align-items:center;gap:5px;margin-top:3px;}
.age-dot{width:6px;height:6px;border-radius:50%;}
.age-dot.fresh{background:var(--ln);}.age-dot.recent{background:var(--fa);}.age-dot.stale{background:var(--po);}

/* ── MOBILE CARDS ── */
.mobile-cards{display:none;padding:0 16px 56px;flex-direction:column;gap:0;}
.m-card{border-bottom:1px solid var(--line);padding:16px 2px;cursor:pointer;}
.m-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;}
.m-card-left{display:flex;flex-direction:column;gap:1px;}
.m-model{font-size:16px;font-weight:650;}
.m-sub{font-size:13px;color:var(--ink2);}
.m-card-mid{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px;}
.m-card-bot{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.m-price{font-size:21px;font-weight:750;letter-spacing:-.4px;font-variant-numeric:tabular-nums;}
.m-ret-label{margin-top:2px;}
.no-results{text-align:center;padding:56px 20px;color:var(--ink2);display:none;}
.no-results h3{font-size:18px;color:var(--ink);margin-bottom:4px;}

/* ── SHARED SECTION TYPE ── */
.section-title{font-size:clamp(26px,3vw,34px);font-weight:750;letter-spacing:-.8px;line-height:1.1;margin-bottom:10px;}
.section-desc{font-size:16px;color:var(--ink2);max-width:62ch;margin-bottom:24px;}
.section-desc strong{color:var(--ink);}

/* ── OPERATOR ── */
.op-section{padding:40px 32px 64px;display:none;}
.op-section.active{display:block;}
.op-inner{max-width:1200px;margin:0 auto;}
.op-explainer{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:24px;}
.exp-item{flex:1;min-width:220px;font-size:14px;color:var(--ink2);padding-left:12px;border-left:2px solid var(--line);}
.op-filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px;}
.op-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;}
.op-card{border:1px solid var(--line);border-radius:12px;padding:18px;position:relative;}
.op-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.op-net{font-size:13px;font-weight:700;padding:3px 10px;border-radius:6px;color:#fff;}
.op-net.ee{background:#007b85;}.op-net.o2{background:#0019a5;}.op-net.vodafone{background:#e60000;}.op-net.three{background:#1d1d1b;}
.op-name{font-size:16px;font-weight:700;margin-bottom:2px;}
.op-sub{font-size:13px;color:var(--ink2);margin-bottom:14px;}
.op-pricing{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;}
.op-pb{background:var(--wash);border-radius:8px;padding:10px 12px;}
.op-pl{font-size:12.5px;color:var(--ink2);margin-bottom:2px;}
.op-pv{font-size:19px;font-weight:750;letter-spacing:-.3px;font-variant-numeric:tabular-nums;}
.op-ps{font-size:12px;color:var(--ink3);}
.op-total{display:flex;justify-content:space-between;align-items:center;padding:10px 2px;border-top:1px solid var(--line);margin-top:6px;margin-bottom:10px;}
.op-tl{font-size:13.5px;color:var(--ink2);}
.op-tv{font-size:17px;font-weight:750;font-variant-numeric:tabular-nums;}
.op-meta{display:none;}
.btn-op{display:block;text-align:center;border:1px solid var(--border2);padding:10px;border-radius:999px;font-size:14px;font-weight:600;text-decoration:none;color:var(--ink);}
.btn-op:hover{border-color:var(--ink);}

/* ── SIDE PANEL ── */
.panel-scrim{display:none;position:fixed;inset:0;background:rgba(22,48,43,0);z-index:290;transition:background .25s;}
.panel-scrim.open{display:block;background:rgba(22,48,43,.32);}
.side-panel{position:fixed;top:0;right:0;bottom:0;width:min(540px,100vw);background:var(--bg);z-index:300;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:-12px 0 40px rgba(22,48,43,.12);}
.side-panel.open{transform:none;}
@media (prefers-reduced-motion:reduce){.side-panel{transition:none;}}
.sp-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid var(--line);}
.sp-head-left{display:flex;flex-direction:column;gap:2px;}
.sp-title{font-size:21px;font-weight:750;letter-spacing:-.4px;}
.sp-sub{font-size:13.5px;color:var(--ink2);}
.sp-close{background:var(--wash);border:none;color:var(--ink);width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;line-height:1;}
.sp-close:hover{background:var(--wash2);}
.sp-body{flex:1;overflow-y:auto;padding:22px 24px 40px;}
.sp-section-label{font-size:14px;font-weight:650;margin-bottom:10px;}
.colour-row,.storage-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px;}
.colour-swatch,.storage-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);font-size:13.5px;font-weight:550;cursor:pointer;color:var(--ink);}
.colour-swatch:hover,.storage-btn:hover{border-color:var(--border2);}
.colour-swatch.active,.storage-btn.active{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);}
.colour-dot{width:12px;height:12px;border-radius:50%;}
.best-deal-card{background:var(--accent-wash);border-radius:12px;padding:16px 18px;margin-bottom:24px;}
.best-deal-badge{font-size:13px;font-weight:650;color:var(--accent-ink);margin-bottom:6px;}
.best-deal-body{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.best-deal-left{display:flex;flex-direction:column;gap:6px;}
.best-deal-price{font-size:32px;font-weight:750;letter-spacing:-1px;font-variant-numeric:tabular-nums;line-height:1;}
.best-deal-meta{font-size:13px;color:var(--ink2);display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.btn-best{background:var(--ink);color:#fff;padding:11px 18px;border-radius:999px;font-size:14px;font-weight:650;text-decoration:none;white-space:nowrap;}
.btn-best:hover{background:var(--accent-ink);}
.condition-section{margin-bottom:22px;}
.cond-grade-head{margin-bottom:8px;}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:11px 0;border-bottom:1px solid var(--line);}
.pr-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.pr-orig{font-size:13px;color:var(--ink3);}
.pr-right{display:flex;align-items:center;gap:12px;}
.pr-price{font-size:16px;font-weight:750;font-variant-numeric:tabular-nums;}
.best-tag{font-size:12px;font-weight:650;color:var(--accent-ink);}
.price-row .btn-deal{padding:6px 12px;font-size:13px;}

/* norm table + explainer */
.norm-table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto;margin-bottom:24px;}
.norm-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:560px;}
.norm-table th{padding:11px 12px;background:var(--wash);text-align:left;font-weight:600;border-bottom:1px solid var(--line);}
.norm-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink2);}
.norm-table tr:last-child td{border-bottom:none;}
.norm-table td .grade-badge{background:none;padding:0;color:var(--ink);font-weight:500;}
.norm-table td .grade-badge .grade-dot{display:none;}
.norm-cell{display:flex;align-items:center;gap:6px;}
.grade-explainer{margin-bottom:28px;}
.ge-title{display:none;}
.ge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;}
.ge-card{padding:14px 0 14px 16px;border-left:3px solid;}
.ge-card.ln{border-color:var(--ln);}.ge-card.go{border-color:var(--go);}.ge-card.fa{border-color:var(--fa);}.ge-card.po{border-color:var(--po);}
.ge-grade{font-size:16px;font-weight:700;margin-bottom:4px;}
.ge-desc{font-size:14.5px;color:var(--ink2);}
.ge-examples{margin-top:6px;font-size:13px;color:var(--ink3);}

/* ── BEST BUYS ── */
.bestbuys-section,.retailers-section{padding:40px 32px 64px;display:none;}
.bb-inner,.ret-inner{max-width:1200px;margin:0 auto;}
.bb-intro{margin-bottom:28px;}
.bb-updated{font-size:13.5px;color:var(--ink3);}
.bb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:20px;}
.bb-card{border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;}
.bb-card-top{padding:20px 20px 14px;position:relative;}
.bb-budget-badge{display:none;}
.bb-rank{font-size:13.5px;font-weight:650;color:var(--accent-ink);margin-bottom:6px;}
.bb-model{font-size:22px;font-weight:750;letter-spacing:-.5px;}
.bb-spec{font-size:14px;color:var(--ink2);margin-bottom:12px;}
.bb-price-row{display:flex;align-items:baseline;gap:8px;margin-bottom:4px;}
.bb-price-from{order:-1;font-size:13.5px;color:var(--ink2);}
.bb-price{font-size:28px;font-weight:750;letter-spacing:-.8px;font-variant-numeric:tabular-nums;}
.bb-retailer{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink2);}
.bb-verdict{padding:0 20px 14px;font-size:14.5px;color:var(--ink2);line-height:1.6;}
.bb-verdict strong{color:var(--ink);}
.bb-pros{padding:0 20px 18px;display:flex;flex-direction:column;gap:6px;list-style:none;}
.bb-pro{display:flex;gap:8px;font-size:14px;color:var(--ink2);}
.bb-pro-icon{color:var(--accent);font-weight:700;}
.bb-card-footer{margin-top:auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);}
.btn-bb-view{background:var(--ink);color:#fff;padding:9px 16px;border-radius:999px;font-size:14px;font-weight:650;text-decoration:none;}
.btn-bb-view:hover{background:var(--accent-ink);}
.bb-compare{background:none;border:none;font-size:14px;color:var(--accent-ink);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;}

/* ── TRUST ── */
.trust-disclaimer{font-size:15px;color:var(--ink2);margin-bottom:28px;max-width:62ch;}
.trust-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;}
.trust-card{border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;}
.trust-card-head{padding:20px 20px 14px;}
.trust-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;}
.trust-name-row{display:flex;align-items:center;gap:9px;}
.trust-ret-dot{width:10px;height:10px;}
.trust-name{font-size:19px;font-weight:750;letter-spacing:-.3px;}
.trust-type{font-size:13.5px;color:var(--ink3);margin-top:1px;}
.trust-score-wrap{text-align:right;}
.trust-score{font-size:32px;font-weight:750;letter-spacing:-1px;line-height:1;font-variant-numeric:tabular-nums;}
.trust-score::after{content:"/10";font-size:14px;font-weight:500;color:var(--ink3);letter-spacing:0;margin-left:2px;}
.trust-score.excellent{color:var(--ln);}.trust-score.good{color:var(--go);}.trust-score.mixed{color:var(--fa);}.trust-score.caution{color:var(--po);}
.trust-score-label{font-size:13px;font-weight:600;color:var(--ink2);margin-top:4px;}
.trust-bars{display:flex;flex-direction:column;gap:7px;}
.trust-bar-row{display:flex;align-items:center;gap:10px;}
.trust-bar-label{font-size:13px;color:var(--ink2);width:118px;flex-shrink:0;}
.trust-bar-track{flex:1;height:6px;background:var(--wash2);border-radius:3px;overflow:hidden;}
.trust-bar-fill{height:100%;border-radius:3px;}
.trust-bar-val{font-size:13px;font-weight:650;width:22px;text-align:right;color:var(--ink) !important;font-variant-numeric:tabular-nums;}
.trust-card-body{padding:0 20px 14px;}
.trust-verdict{font-size:14.5px;line-height:1.6;color:var(--ink2);}
.trust-verdict strong{color:var(--ink);}
.trust-pills{display:flex;gap:6px;flex-wrap:wrap;padding:0 20px 16px;}
.trust-pill{font-size:12.5px;font-weight:550;padding:4px 10px;border-radius:999px;}
.trust-pill.positive{background:var(--ln-bg);color:var(--ln);}
.trust-pill.neutral{background:var(--wash2);color:var(--ink2);}
.trust-pill.negative{background:var(--po-bg);color:var(--po);}
.trust-card-footer{margin-top:auto;padding:12px 20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--ink2);flex-wrap:wrap;}
.trust-card-footer strong{color:var(--ink);}

/* ── SELL ── */
.bb2-section{padding:40px 32px 64px;}
.bb2-inner{max-width:1000px;margin:0 auto;}
.bb2-search-wrap{background:var(--wash);border-radius:16px;padding:24px;margin-bottom:28px;}
.bb2-search-title{font-size:18px;font-weight:700;margin-bottom:16px;}
.bb2-fields{display:flex;gap:12px;flex-wrap:wrap;}
.bb2-field{display:flex;flex-direction:column;gap:5px;flex:1;min-width:170px;}
.bb2-label{font-size:13px;font-weight:600;color:var(--ink2);}
.bb2-select{background:var(--bg);border:1px solid var(--border2);color:var(--ink);padding:11px 34px 11px 12px;border-radius:8px;font-size:15px;outline:none;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%234b5d58' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;}
.bb2-select:focus{border-color:var(--accent);}
.bb2-cond-grid{display:flex;gap:8px;flex-wrap:wrap;}
.bb2-cond-btn{padding:9px 14px;border-radius:999px;border:1px solid var(--border2);background:var(--bg);color:var(--ink);font-size:14px;font-weight:550;cursor:pointer;}
.bb2-cond-btn.active{background:var(--ink);border-color:var(--ink);color:#fff;}
.bb2-btn{background:var(--accent);color:#fff;border:none;padding:12px 22px;border-radius:999px;font-size:15px;font-weight:650;cursor:pointer;}
.bb2-btn:hover{background:var(--accent-ink);}
.bb2-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px;}
.bb2-results-title{font-size:18px;font-weight:700;}
.bb2-results-sub{font-size:14px;color:var(--ink2);}
.bb2-sort{display:flex;gap:4px;}
.bb2-sort-btn{padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--ink2);font-size:13px;font-weight:600;cursor:pointer;}
.bb2-sort-btn.active{border-color:var(--ink);color:var(--ink);}
.bb2-grid{display:flex;flex-direction:column;margin-bottom:32px;border-top:1px solid var(--line);}
.bb2-card{display:flex;align-items:center;gap:16px;padding:14px 4px;border-bottom:1px solid var(--line);flex-wrap:wrap;}
.bb2-card.best{background:var(--accent-wash);padding-left:12px;padding-right:12px;border-radius:10px;border-bottom-color:transparent;}
.bb2-rank{font-size:15px;font-weight:700;color:var(--ink3);width:22px;text-align:center;font-variant-numeric:tabular-nums;}
.bb2-rank.gold{color:var(--accent-ink);}
.bb2-ret-info{flex:1;min-width:160px;}
.bb2-ret-name{display:flex;align-items:center;gap:10px;font-weight:600;}
.bb2-ret-meta{font-size:13px;color:var(--ink2);margin-top:2px;}
.bb2-best-tag{font-size:12px;font-weight:650;color:var(--accent-ink);}
.bb2-offer{text-align:right;}
.bb2-offer-price{font-size:22px;font-weight:750;letter-spacing:-.5px;font-variant-numeric:tabular-nums;}
.btn-getquote{background:var(--ink);color:#fff;padding:9px 16px;border-radius:999px;font-size:13.5px;font-weight:650;text-decoration:none;white-space:nowrap;display:inline-block;}
.btn-getquote:hover{background:var(--accent-ink);}
.bb2-tips{border-top:1px solid var(--line);padding-top:24px;}
.bb2-tips-title{font-size:18px;font-weight:700;margin-bottom:14px;}
.bb2-tip{font-size:15px;color:var(--ink2);line-height:1.6;margin-bottom:12px;max-width:72ch;}
.bb2-tip strong{color:var(--ink);}
.bb2-empty{text-align:center;padding:48px 20px;color:var(--ink2);}
.bb2-empty-icon{display:none;}
.bb2-empty h3{font-size:18px;color:var(--ink);margin-bottom:4px;}

/* ── HOW WE GRADE ── */
.howgrade{padding:40px 32px 64px;}
.howgrade-inner{max-width:960px;margin:0 auto;}
.howgrade h3{font-size:20px;font-weight:700;letter-spacing:-.3px;margin-bottom:6px;}
.howgrade .lead{font-size:15px;color:var(--ink2);margin-bottom:16px;}
.promise{background:var(--wash);border-radius:14px;padding:20px 22px;}
.promise h4{font-size:16px;font-weight:700;margin-bottom:6px;}
.promise p{font-size:15px;color:var(--ink2);line-height:1.65;}
.linkish{background:none;border:none;color:var(--accent-ink);font-size:inherit;font-weight:600;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px;}

/* ── TOAST + FOOTER ── */
.share-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:11px 20px;border-radius:999px;font-size:14px;font-weight:550;z-index:999;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap;}
.share-toast.show{opacity:1;}
.btn-share{background:none;border:1px solid var(--line);color:var(--ink);padding:7px 12px;border-radius:999px;font-size:13.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;}
.btn-share:hover{border-color:var(--ink);}
.btn-share svg{width:14px;height:14px;}
footer{border-top:1px solid var(--line);background:var(--wash);}
.footer-inner{max-width:1200px;margin:0 auto;padding:28px 32px 36px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13.5px;color:var(--ink2);}
.footer-inner .logo{font-size:17px;}
.footer-inner p{max-width:60ch;margin-top:6px;}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .hero{grid-template-columns:1fr;gap:32px;padding:36px 20px 32px;}
  .topbar,.tabs,.filter-bar,.results-bar,.drops-strip{padding-left:20px;padding-right:20px;}
  .op-section,.bestbuys-section,.retailers-section,.bb2-section,.howgrade{padding-left:20px;padding-right:20px;}
  .footer-inner{padding-left:20px;padding-right:20px;}
}
@media(max-width:768px){
  .table-wrap{display:none;}
  .mobile-cards{display:flex;}
  .ge-grid{grid-template-columns:1fr;}
  .topbar-right .topbar-meta{display:none;}
  .trust-grid,.bb-grid{grid-template-columns:1fr;}
  .filter-scroll{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;}
  .filter-chip{flex-shrink:0;}
  .bb2-card{align-items:flex-start;}
  .bb2-offer{text-align:left;}
}
@media(min-width:769px){.mobile-cards{display:none!important;}}

/* ── alignment + panel fixes ── */
.side-panel{box-shadow:none;visibility:hidden;transition:transform .3s cubic-bezier(.4,0,.2,1),visibility 0s linear .3s;}
.side-panel.open{box-shadow:-12px 0 40px rgba(22,48,43,.14);visibility:visible;transition:transform .3s cubic-bezier(.4,0,.2,1);}
.tabs{max-width:1136px;padding:0;}
.tab-btn:first-child{padding-left:0;}
.op-inner,.bb-inner,.ret-inner,.bb2-inner,.howgrade-inner{max-width:1136px;}
.bb2-search-wrap,.bb2-grid,.bb2-results-head,.bb2-tips{max-width:900px;}
@media(max-width:900px){.tabs{margin:0 20px;}}

/* ── generated pages (phones, grading, retailers, about) ── */
.topnav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;}
.topnav::-webkit-scrollbar{display:none;}
.topnav a{font-size:14.5px;font-weight:550;color:var(--ink2);text-decoration:none;padding:8px 12px;border-radius:999px;white-space:nowrap;}
.topnav a:hover{color:var(--ink);background:var(--wash);}
.topnav a[aria-current="page"]{color:var(--ink);background:var(--wash2);}
.page{max-width:1136px;margin:0 auto;padding:28px 32px 72px;}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--ink3);margin-bottom:18px;}
.crumbs a{color:var(--ink2);text-decoration:none;}
.crumbs a:hover{text-decoration:underline;}
.page-title{font-size:clamp(30px,4vw,44px);font-weight:750;letter-spacing:-1.2px;line-height:1.08;max-width:22ch;margin-bottom:14px;}
.lede{font-size:17px;color:var(--ink2);max-width:64ch;margin-bottom:12px;}
.lede strong{color:var(--ink);}
.block{margin-top:40px;}
.block h2{font-size:22px;font-weight:700;letter-spacing:-.4px;margin-bottom:14px;}
.block h3{font-size:16px;font-weight:650;margin:18px 0 4px;}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;}
.ph-grid,.offers{width:100%;border-collapse:collapse;font-size:14.5px;min-width:560px;}
.ph-grid th,.ph-grid td,.offers th,.offers td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;}
.ph-grid thead th,.offers thead th{background:var(--wash);font-size:13px;font-weight:600;color:var(--ink2);}
.ph-grid tbody tr:last-child th,.ph-grid tbody tr:last-child td,.offers tbody tr:last-child td{border-bottom:none;}
.ph-grid tbody th{font-weight:650;}
.ph-grid td a{color:var(--ink);text-decoration:none;font-size:17px;font-variant-numeric:tabular-nums;}
.ph-grid td a:hover{color:var(--accent-ink);text-decoration:underline;}
.cell-ret{display:block;font-size:12.5px;color:var(--ink3);margin-top:1px;}
.ph-grid td.empty{color:var(--ink3);}
.offers td strong{font-size:16px;font-variant-numeric:tabular-nums;}
.offers .btn-deal{padding:7px 12px;font-size:13px;}
.muted{color:var(--ink3);}
.note{font-size:14px;color:var(--ink2);margin-top:12px;}
.note a,.prose a,.faq a,.promise a{color:var(--accent-ink);font-weight:600;text-underline-offset:3px;}
.faq p,.prose p{font-size:15.5px;color:var(--ink2);line-height:1.65;max-width:70ch;}
.prose h2{margin-top:28px;}
.prose p+p{margin-top:10px;}
.model-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 28px;}
.model-list li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);}
.model-list a{color:var(--ink);font-weight:600;text-decoration:none;}
.model-list a:hover{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;}
.model-list span{font-size:14px;color:var(--ink2);font-variant-numeric:tabular-nums;white-space:nowrap;}
.trust-list{display:grid;grid-template-columns:1fr;gap:0;font-size:13.5px;}
.page .trust-grid{margin-top:28px;}
.trust-list div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:4px 0;}
.trust-list dt{color:var(--ink2);}
.trust-list dd{font-weight:650;font-variant-numeric:tabular-nums;}
h2.trust-name{margin:0;}
.footer-links{display:flex;flex-direction:column;gap:6px;align-items:flex-start;}
.footer-links a{color:var(--ink);text-decoration:none;font-weight:550;}
.footer-links a:hover{text-decoration:underline;}
.static-browse{border-top:1px solid var(--line);margin-top:24px;}
.static-inner{max-width:1136px;margin:0 auto;padding:40px 0 56px;}
.static-browse h3{font-size:18px;font-weight:700;margin-bottom:8px;}
.static-browse .block{margin-top:24px;}
.inline-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px;}
.inline-links a{color:var(--accent-ink);font-weight:600;font-size:15px;text-underline-offset:3px;}
@media(max-width:900px){
  .page{padding:22px 20px 56px;}
  .static-inner{padding:32px 20px 48px;}
  .topbar{gap:10px;}
}
@media(max-width:640px){
  .topnav a{padding:6px 8px;font-size:13.5px;}
  .trust-list{grid-template-columns:1fr;}
}

/* logo mark next to the name */
.logo{display:inline-flex;align-items:center;gap:8px;}
.logo img{width:28px;height:28px;display:block;}
.footer-inner .logo img{width:22px;height:22px;}
.footer-inner p a{color:var(--accent-ink);font-weight:600;text-underline-offset:3px;}

/* ── finder ── */
.finder{max-width:1136px;margin:28px auto 4px;background:var(--wash);border-radius:16px;padding:22px 24px 20px;}
.finder-title{font-size:20px;font-weight:700;letter-spacing:-.3px;margin-bottom:14px;}
.finder-fields{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;}
.finder-fields .chip-select{min-width:170px;background-color:var(--bg);}
.f-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;}
.f-tile{background:var(--bg);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;}
.f-price{font-size:28px;font-weight:750;letter-spacing:-.8px;font-variant-numeric:tabular-nums;line-height:1.1;margin-top:2px;}
.f-ret{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13.5px;}
.f-label{color:var(--ink3);font-size:13px;}
.f-tile .btn-deal{margin-top:6px;}
.f-more{font-size:12.5px;color:var(--ink3);}
.f-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;}
.f-links .btn-reset{padding:4px 0;}
a.btn-reset{display:inline-block;}
.finder-empty{color:var(--ink2);}
.terms{display:block;font-size:12px;color:var(--ink3);margin-top:2px;font-weight:450;}
.price-text .from,.m-price .from{font-size:12.5px;font-weight:500;color:var(--ink3);letter-spacing:0;}
.offer-count{font-size:13px;color:var(--ink2);white-space:nowrap;}
button.btn-deal{border:none;cursor:pointer;font-family:inherit;}
.pr-left .terms{display:inline;margin:0;}
@media(max-width:900px){.finder{margin:20px 20px 4px;padding:18px 16px;}}

/* ── price history chart + badge ── */
.chart{border:1px solid var(--line);border-radius:12px;padding:12px 12px 4px;}
.chart svg{width:100%;height:auto;display:block;}
.chart .ax{font-size:11px;fill:var(--ink3);font-family:inherit;}
.chart-key{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.low-badge{display:inline-block;margin-top:4px;font-size:11.5px;font-weight:650;color:var(--ln);background:var(--ln-bg);padding:2px 8px;border-radius:999px;}
@media(max-width:640px){
  .finder-fields{flex-direction:column;}
  .finder-fields .filter-chip,.finder-fields .chip-select{width:100%;}
}
