.links-page{min-height:100vh}
.link-hub{width:min(100% - 40px,600px);margin:0 auto;padding:48px 0 32px}
.link-profile{text-align:center;margin-bottom:32px}
.link-portrait{width:112px;height:112px;border-radius:50%;object-fit:cover;object-position:center 24%;margin:0 auto 24px}
.link-profile h1{font-size:clamp(2.5rem,6vw,3.5rem);letter-spacing:-.035em;line-height:1.1}
.link-profile h1 em{color:var(--accent);font-weight:400}
.link-profession{font-size:1rem;margin-top:16px;color:var(--ink)}
.link-intro{margin-top:18px;color:var(--muted);font-size:1rem;line-height:1.75}
.hub-links{display:grid;gap:10px}
.hub-link{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;padding:12px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.hub-link strong{flex:1;display:block;font-size:1.125rem;line-height:1.45;font-weight:800;overflow-wrap:anywhere}
.hub-link .hub-icon{width:30px;height:30px;flex:0 0 30px;stroke:none}
.hub-link .hub-site-icon{height:36px;fill:none}
.hub-link:hover{border-color:var(--accent);background:var(--soft)}
.hub-link-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.hub-link-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.hub-footer{text-align:center;padding:0 20px 32px;color:var(--muted);font-size:.875rem;line-height:1.8}
.hub-footer a{display:inline-block;margin-top:8px;text-decoration:underline;text-underline-offset:4px}
.links-page a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
@media(max-width:699px){
  .link-hub{padding-top:32px}
  .link-profile{margin-bottom:28px}
  .link-profession{font-size:.9375rem}
  .hub-link{padding:12px 18px;gap:16px}
  .hub-link strong{font-size:1.0625rem}
  .links-page{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
}
@media(max-width:359px){.link-profession{max-width:240px;margin-inline:auto}}
