/* Public reseller directory (/resellers.html). Theme variables only, so it follows whichever site theme is live. */
.resellers { max-width:1180px; margin:0 auto; padding:72px 24px 40px; }
.resellers h1 { font-size:clamp(34px,4.4vw,54px); font-weight:500; line-height:1.1; letter-spacing:-.045em; }
.resellers-lead { max-width:560px; margin-top:18px; font-size:16px; line-height:1.7; color:var(--text-2); }
.reseller-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,480px),1fr)); gap:20px; margin-top:44px; list-style:none; }
.reseller-card { display:grid; grid-template-columns:168px minmax(0,1fr); grid-template-rows:auto 1fr; grid-template-areas:"logo head" "logo contacts"; column-gap:24px; padding:22px; border:1px solid var(--border-2); border-radius:var(--r); background:var(--bg-card); }
.reseller-logo { grid-area:logo; align-self:start; display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:var(--r-sm); background:var(--bg-subtle); }
.reseller-head { grid-area:head; min-width:0; }
.reseller-head :is(h2,h3) { font-size:22px; font-weight:600; line-height:1.2; letter-spacing:-.02em; }
.reseller-contacts { grid-area:contacts; display:grid; align-content:start; gap:2px; margin-top:12px; list-style:none; }
.reseller-contacts a { display:flex; align-items:center; gap:12px; min-height:48px; margin-inline:-10px; padding:5px 10px; border-radius:var(--r-sm); color:var(--text); font-size:15px; line-height:1.3; text-decoration:none; transition:background-color .15s; }
.reseller-contacts a:hover { background:var(--bg-subtle); }
.reseller-contacts svg { flex:none; color:var(--accent); }
.reseller-contacts span { min-width:0; overflow-wrap:anywhere; }
.reseller-contacts small { display:block; font-size:13px; color:var(--text-2); }
.resellers-note { margin-top:36px; font-size:14px; line-height:1.7; color:var(--text-2); }
.resellers-note a { color:var(--accent); }
@media(max-width:600px) {
  .resellers-page .site-nav { margin-left:-8px; }
  .resellers { padding:44px 20px 24px; }
  .reseller-list { margin-top:32px; }
  .reseller-card { grid-template-columns:76px minmax(0,1fr); grid-template-rows:auto auto; grid-template-areas:"logo head" "contacts contacts"; column-gap:16px; padding:18px; }
  .reseller-head { align-self:center; }
  .reseller-contacts { margin-top:14px; }
}
