/* Connect uses the site's existing fonts and color tokens from style.css. */
.connect-page{border-top:5px solid var(--accent)}
.connect-wrap{max-width:600px;margin:0 auto;padding:0 28px}
.connect-mast{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 22px;border-bottom:1px solid var(--rule)}
.monogram{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;font:600 20px/1 Spectral,Georgia,serif;letter-spacing:-.06em}
.mast-caption{font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft)}
.connect-intro{padding:30px 0 26px}
.connect-eyebrow{color:var(--accent);font-family:Spectral,Georgia,serif;font-size:23px;line-height:1.3;margin:0 0 17px}
.connect-identity{display:flex;align-items:center;justify-content:space-between;gap:24px}
.connect-identity h1{max-width:5.6em;font-size:clamp(2.65rem,9.5vw,3.75rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.connect-photo{display:block;flex:0 0 auto;width:102px;height:102px;object-fit:cover;object-position:50% 30%;border-radius:50%;border:1px solid var(--rule)}
.initials{display:grid;place-items:center;background:var(--ink);color:var(--paper);font:600 34px/1 Spectral,Georgia,serif}
.connect-bio{margin:21px 0 0;font-size:16px;line-height:1.65;max-width:46ch;color:var(--ink-soft)}
.connect-links h2{display:flex;align-items:center;justify-content:space-between;margin:0 0 13px;padding:0;font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:11px;font-weight:500;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);border:0}
.connect-links h2 span{font-size:20px;line-height:1;color:var(--accent)}
.connect-links ul{display:grid;gap:10px;list-style:none;padding:0;margin:0}
.connect-link{display:flex;align-items:center;gap:16px;min-height:80px;padding:15px 19px;border:1px solid var(--rule);border-radius:5px;background:#F8F9FB;color:var(--ink);text-decoration:none;-webkit-tap-highlight-color:transparent}
.link-icon{display:grid;place-items:center;flex:0 0 26px}
.link-icon svg{display:block;width:25px;height:25px}
.link-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.link-title{font-size:17px;line-height:1.4;font-weight:500}
.link-description{font-size:13px;line-height:1.45;color:var(--ink-soft)}
.link-arrow{margin-left:auto;padding-left:8px;font-size:24px;line-height:1;flex-shrink:0}
.connect-link-primary{background:var(--ink);border-color:var(--ink);color:#FFF}
.connect-link-primary .link-description{color:#D6DEE9}
.connect-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:5px}
.is-unavailable{background:transparent;border-style:dashed}
.connect-note{margin:22px 0 30px;text-align:center;color:var(--ink-soft);font-family:Spectral,Georgia,serif;font-size:15px;line-height:1.5}
.connect-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:19px 0 26px;border-top:1px solid var(--rule);font-size:12px;line-height:1.5;color:var(--ink-soft)}
.connect-footer-links{display:flex;gap:16px}
.connect-footer a{display:flex;align-items:center;min-height:44px;color:var(--ink-soft);border:0;text-decoration:underline;text-underline-offset:3px}
@media (hover:hover){
  a.connect-link:hover{border-color:var(--accent);background:#FFF;color:var(--accent)}
  a.connect-link-primary:hover{background:var(--accent);border-color:var(--accent);color:#FFF}
  a.connect-link-primary:hover .link-description{color:#FFF}
}
@media (prefers-reduced-motion:no-preference){
  a.connect-link{transition:background-color .16s ease,border-color .16s ease,color .16s ease}
  a.connect-link .link-arrow{transition:transform .16s ease}
  a.connect-link:hover .link-arrow{transform:translate(2px,-2px)}
}
@media (min-width:700px){
  .connect-wrap{padding:0 28px}
  .connect-mast{padding-top:42px}
  .connect-intro{padding-top:38px;padding-bottom:30px}
  .connect-photo{width:116px;height:116px}
}
@media (max-width:359px){
  .connect-wrap{padding:0 20px}
  .connect-identity{gap:12px}
  .connect-photo{width:80px;height:80px}
  .connect-identity h1{font-size:40px}
  .connect-link{padding:15px;gap:12px}
}
