.intro{padding:clamp(46px,6vw,78px) 0 clamp(28px,3vw,40px);position:relative;z-index:1}.intro h1{font-family:var(--serif);font-weight:500;color:var(--ink);font-size:clamp(40px,6vw,68px);line-height:1.03;letter-spacing:-.02em;margin:22px 0 20px;max-width:18ch}.intro p{font-size:clamp(17px,2vw,20px);color:var(--body);max-width:56ch;margin:0}.hubs{position:relative;z-index:1;padding:0 0 clamp(30px,4vw,46px)}.hubs .lbl{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 16px}.hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.hub{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s,border-color .2s}.hub:hover{box-shadow:var(--shadow);transform:translateY(-3px);border-color:var(--line-strong)}.hub .ic{width:34px;height:34px;border-radius:var(--r-md);background:var(--pill-bg);color:var(--accent);display:flex;align-items:center;justify-content:center}.hub h3{font-family:var(--serif);font-weight:500;font-size:18px;line-height:1.18;color:var(--ink);margin:4px 0 0}.hub .n{font-size:12.5px;color:var(--muted);margin:0}.hub .go{margin-top:auto;font-size:13px;font-weight:600;color:var(--accent);display:inline-flex;align-items:center;gap:6px;padding-top:8px}.hub .go .arr{transition:transform .2s}.hub:hover .go .arr{transform:translate(3px)}.filters{display:flex;flex-wrap:wrap;gap:9px;position:relative;z-index:1;padding:clamp(34px,4vw,52px) 0 clamp(34px,4vw,52px);border-top:1px solid var(--line);margin-bottom:clamp(40px,5vw,60px)}.chip{font-family:inherit;font-size:14px;font-weight:600;color:var(--body);cursor:pointer;background:transparent;border:1.5px solid var(--line);border-radius:999px;padding:9px 17px;white-space:nowrap;transition:all .15s}.chip:hover{border-color:var(--accent);color:var(--ink)}.chip.active{background:var(--btn);color:var(--btn-ink);border-color:var(--btn)}.featured{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,4vw,56px);align-items:center;position:relative;z-index:1;margin-bottom:clamp(48px,6vw,76px)}.cover{position:relative;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:linear-gradient(150deg,var(--card),var(--pill-bg));border:1px solid var(--line);box-shadow:var(--shadow)}.cover .cgrid{position:absolute;inset:0;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:38px 38px}.cover .carc{position:absolute;right:-30px;bottom:-40px;width:78%;opacity:.5}.cover .carc circle{stroke:var(--accent);fill:none}.cover .cmark{position:absolute;left:28px;top:26px}.cover .clabel{position:absolute;left:28px;bottom:26px;right:28px}.featured .txt .ttl{font-family:var(--serif);font-weight:500;color:var(--ink);font-size:clamp(28px,3.6vw,42px);line-height:1.08;letter-spacing:-.015em;margin:18px 0 16px}.featured .txt .ttl a{transition:color .15s}.featured .txt .ttl a:hover{color:var(--accent)}.featured .txt .dek{font-size:clamp(16px,1.9vw,18.5px);color:var(--body);margin:0 0 22px;max-width:46ch}.meta{display:flex;align-items:center;gap:12px;font-size:13.5px;color:var(--muted)}.meta .dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.6}.grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;z-index:1}.post{background:var(--bg);padding:clamp(26px,3vw,38px) clamp(22px,2.6vw,36px);display:flex;flex-direction:column;gap:14px;transition:background .18s}.post:hover{background:var(--card-2)}.post .ttl{font-family:var(--serif);font-weight:500;color:var(--ink);font-size:clamp(21px,2.4vw,26px);line-height:1.16;letter-spacing:-.01em;margin:2px 0;transition:color .15s}.post:hover .ttl{color:var(--accent)}.post .dek{font-size:15.5px;color:var(--body);margin:0;flex:1}.post .meta{margin-top:6px}.post.hidden{display:none}.empty{display:none;padding:60px 0;text-align:center;color:var(--muted);font-size:16px;position:relative;z-index:1}@media(max-width:980px){.hub-grid{grid-template-columns:1fr 1fr}}@media(max-width:860px){.featured{grid-template-columns:1fr}.cover{aspect-ratio:16/9}}@media(max-width:600px){.grid,.hub-grid{grid-template-columns:1fr}}
