/* Homepage modules share the theme's light/dark tokens. */
.sol-discover { max-width:var(--sol-container); margin:48px auto; padding:0 var(--sol-gutter); color:var(--sol-text); display:grid; gap:52px; }
.sol-discover h2 { font-size:clamp(1.5rem,2.5vw,2.3rem); line-height:1.25; margin:0 0 12px; }
.sol-discover__eyebrow { font-size:.75rem; text-transform:uppercase; letter-spacing:.12em; color:var(--sol-gold-text); }
.sol-discover__finder { display:grid; grid-template-columns:1.1fr 1fr; gap:32px; align-items:center; padding:clamp(22px,4vw,48px); border:1px solid var(--sol-line); border-radius:28px; background:radial-gradient(ellipse at top left,color-mix(in srgb,var(--sol-accent) 16%,transparent),transparent 65%),var(--sol-surface); }
.sol-discover__finder p { color:var(--sol-muted); }
.sol-discover__search { display:flex; gap:8px; margin-top:12px; }
.sol-discover__search input { min-width:0; width:100%; border:1px solid var(--sol-line); background:var(--sol-bg); color:var(--sol-text); border-radius:14px; padding:14px; }
.sol-discover__heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:22px; }
.sol-discover__heading a { color:var(--sol-gold-text); }
.sol-discover__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.sol-discover__category { display:block; padding:24px; border:1px solid var(--sol-line); background:var(--sol-surface); border-radius:22px; color:var(--sol-text); text-decoration:none; transition:transform .2s,border-color .2s; }
.sol-discover__category:hover { transform:translateY(-3px); border-color:var(--sol-accent); }
.sol-discover__category h3 { font-size:1.2rem; margin:26px 0 12px; }
.sol-discover__index { color:var(--sol-gold-text); }
.sol-discover__voices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.sol-discover__voice { display:flex; align-items:center; gap:18px; padding:20px; border:1px solid var(--sol-line); border-radius:22px; color:var(--sol-text); background:var(--sol-surface); text-decoration:none; }
.sol-discover__voice img { width:68px; height:68px; border-radius:50%; object-fit:cover; }
.sol-discover__voice strong,.sol-discover__voice small { display:block; }
.sol-discover__voice small { color:var(--sol-muted); margin-bottom:6px; }
.sol-discover__voice>span:last-child { margin-inline-start:auto; }
@media(max-width:700px) { .sol-discover__finder { grid-template-columns:1fr; } .sol-discover__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .sol-discover__voices { grid-template-columns:1fr; } .sol-discover__heading { align-items:flex-start; flex-direction:column; } }
@media(max-width:380px) { .sol-discover__grid { grid-template-columns:1fr; } .sol-discover__search { flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .sol-discover__category { transition:none; } }
.sol-discover__books { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.sol-discover__book { min-width:0; padding:20px; border:1px solid var(--sol-line); border-radius:22px; background:var(--sol-surface); color:var(--sol-text); text-decoration:none; }
.sol-discover__book img { display:block; width:100%; height:230px; object-fit:contain; margin-bottom:18px; }
.sol-discover__book h3 { font-size:1rem; line-height:1.5; overflow-wrap:anywhere; }
.sol-discover__book:hover { border-color:var(--sol-gold-text); }
.sol-discover__book>span { color:var(--sol-gold-text); }
.sol-discover a:focus-visible,.sol-author-more:focus-visible { outline:2px solid var(--sol-gold-text); outline-offset:4px; }
@media(max-width:800px) { .sol-discover__books { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:380px) { .sol-discover__book { padding:12px; } .sol-discover__book img { height:160px; } }
