*,*:before,*:after{box-sizing:border-box}:root{--ink: #14201a;--muted: #5d6b64;--line: #e5eae6;--paper: #f7faf8;--card: #ffffff;--green: #0a6e4f;--green-deep: #075038;--display: "Sora", system-ui, sans-serif;--body: "Inter", system-ui, sans-serif}html{scroll-behavior:smooth}body{margin:0;font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased}.wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 20px}a{color:inherit}.top{background:radial-gradient(900px 380px at 85% -20%,rgba(10,110,79,.12),transparent 60%),#fff;border-bottom:1px solid var(--line);padding:34px 0 30px}.brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--green-deep)}.brand .dot{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #0a6e4f26}h1{font-family:var(--display);font-weight:800;font-size:clamp(28px,6vw,44px);line-height:1.05;margin:16px 0 8px;letter-spacing:-.02em}.sub{margin:0;color:var(--muted);max-width:52ch;font-size:15.5px}.count{margin:14px 0 0;font-size:14px;color:var(--muted)}.count strong{color:var(--ink);font-family:var(--display)}.filter{display:none;flex-wrap:wrap;gap:8px;margin:18px 0 0}html.js .filter{display:flex}.fchip{font-family:var(--body);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);transition:border-color .15s ease,background .15s ease,color .15s ease}.fchip:hover{border-color:var(--green)}.fchip.is-active{background:var(--green);border-color:var(--green);color:#fff}.fchip:focus-visible{outline:3px solid var(--green);outline-offset:3px}.fchip-n{font-family:var(--display);font-weight:700;font-size:11px;color:var(--green-deep);background:#0a6e4f1f;border-radius:999px;padding:1px 7px}.fchip.is-active .fchip-n{color:#fff;background:#ffffff38}[hidden]{display:none!important}.jump{position:sticky;top:0;z-index:10;background:#f7faf8e6;backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--line)}.jump-inner{display:flex;gap:8px;overflow-x:auto;padding:12px 20px;scrollbar-width:none}.jump-inner::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;text-decoration:none;white-space:nowrap;font-size:13.5px;font-weight:500;padding:7px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);transition:border-color .15s ease,color .15s ease}.chip:hover{border-color:var(--green);color:var(--green-deep)}.chip-emoji{font-size:14px}.chip-n{font-family:var(--display);font-weight:700;font-size:11px;color:var(--green-deep);background:#0a6e4f1a;border-radius:999px;padding:1px 7px}main{padding:8px 0 40px}.giro{padding:34px 0 8px;scroll-margin-top:64px}.giro-head{display:flex;align-items:baseline;gap:12px;margin:0 0 18px}.giro-head h2{font-family:var(--display);font-weight:700;font-size:clamp(19px,3.4vw,24px);margin:0;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:10px}.giro-emoji{font-size:22px}.giro-n{font-family:var(--display);font-weight:700;font-size:13px;color:var(--muted)}.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.card{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 16px 14px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;min-height:108px}.card:hover{transform:translateY(-3px);border-color:#0a6e4f80;box-shadow:0 12px 26px -14px #0a6e4f66}.card:focus-visible{outline:3px solid var(--green);outline-offset:3px}.card-name{font-family:var(--display);font-weight:600;font-size:16px;line-height:1.22;color:var(--ink)}.card-cat{font-size:12.5px;color:var(--muted);flex:1}.card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding-top:10px;border-top:1px solid var(--line)}.rating{font-size:13px;font-weight:600;color:#b8860b}.rating .muted{color:var(--muted);font-weight:500}.card-foot .muted{font-size:13px;color:var(--muted)}.go{font-size:15px;color:var(--green);transition:transform .16s ease}.card:hover .go{transform:translate(2px,-2px)}.foot{border-top:1px solid var(--line);background:#fff;padding:28px 0 40px;text-align:center;color:var(--muted);font-size:14px}.foot a{color:var(--green-deep);font-weight:600;text-decoration:none}.foot a:hover{text-decoration:underline}.foot-mini{margin:6px 0 0;font-size:13px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
