.topic-hero{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 24px;background-color:var(--surface);text-align:center}.topic-hero-inner{width:min(100%,900px)}.topic-title{margin:0 0 16px;font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.1;color:var(--ink)}.topic-desc{margin:0;font-size:clamp(1.1rem,2vw,1.35rem);color:var(--muted-ink);line-height:1.4}.topic-section{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;min-height:100svh;padding:clamp(56px,8vw,112px) max(22px,4vw)}.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,5vw,48px);width:100%;max-width:1440px;margin:0 auto}.topic-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(32px,4vw,56px) clamp(22px,3vw,40px);border:1px solid var(--soft-line);background:var(--paper);height:100%}.topic-card .card-icon{margin-bottom:24px;width:48px;height:48px}.topic-card .card-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5}.topic-card .card-title{margin:0 0 16px;font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--ink)}.topic-card .card-desc{margin:0 0 32px;font-size:1.05rem;color:var(--muted-ink);line-height:1.5;max-width:600px;flex:1}.topic-footer{margin-top:auto;padding-top:24px;width:100%;border-top:1px solid var(--soft-line);font-size:.95rem;color:var(--muted-ink);font-style:italic}.topic-return{margin-top:64px;text-align:center}.return-link{display:inline-block;padding:12px 24px;font-size:1rem;font-weight:500;color:var(--ink);background-color:var(--surface);border:1px solid var(--line);text-decoration:none;border-radius:4px;transition:background-color .2s ease,color .2s ease}.return-link:hover,.return-link:focus-visible{background-color:var(--ink);color:var(--paper)}@media(max-width:900px){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1800px){.topic-hero{padding-block:96px}.topic-card .card-desc{font-size:1.1rem}}@media(max-width:600px){.topic-hero{padding:40px 20px}.topic-grid{grid-template-columns:1fr}.topic-card{padding:32px 20px}.topic-return{margin-top:40px}}@media(max-width:360px){.topic-hero,.topic-section,.topic-card{padding-inline:16px}}
