@font-face{font-family:Fraunces;src:url('/assets/fraunces-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Source;src:url('/assets/source-sans-3-latin.woff2') format('woff2');font-weight:200 900;font-style:normal;font-display:swap}
:root{--ink:#0b0b0a;--paper:#e9e5db;--paper-soft:#f2eee5;--muted:#5f5b52;--gold:#d9bf94;--gold-dark:#725d3f;--line:#bcb2a1;--display:Fraunces,Georgia,serif;--body:Source,"Trebuchet MS",sans-serif}
*{box-sizing:border-box}
html{background:var(--ink);scroll-behavior:smooth}
body{margin:0;min-width:280px;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.42;background:radial-gradient(circle at 18% 8%,rgba(217,191,148,.34),transparent 25rem),radial-gradient(circle at 88% 52%,rgba(114,93,63,.1),transparent 30rem)}
a{color:inherit}
img,svg{display:block}
::selection{background:var(--gold);color:var(--ink)}
.skip-link{position:fixed;z-index:20;top:10px;left:12px;padding:10px 14px;background:var(--ink);color:var(--paper);transform:translateY(-180%)}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid var(--gold-dark);outline-offset:4px}
.page-shell{position:relative;width:min(100%,760px);min-height:100vh;margin:0 auto;padding:24px clamp(18px,5vw,42px) 28px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:38px}
.brand{display:inline-flex;width:clamp(164px,38vw,214px);min-height:44px;align-items:center;padding:0;background:transparent;border:0;text-decoration:none}
.brand img{width:100%;height:auto}
.language-switch{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px}
.language-switch a{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:999px;color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.08em;text-decoration:none}
.language-switch a[aria-current="page"]{background:var(--ink);color:var(--paper)}
.profile{display:grid;grid-template-columns:194px 1fr;gap:clamp(26px,6vw,48px);align-items:center;margin-bottom:34px}
.portrait-wrap{position:relative;width:194px;padding:12px 0 0 12px}
.portrait-structure{position:absolute;right:-21px;bottom:-22px;width:86px;color:var(--gold-dark);opacity:.84}
.portrait-structure path:nth-child(2){color:var(--gold)}
.portrait-frame{position:relative;aspect-ratio:4/5;overflow:hidden;border:1px solid var(--gold-dark);background:#47413c;box-shadow:12px 12px 0 var(--gold)}
.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.eyebrow{margin:0 0 13px;color:var(--gold-dark);font-size:12px;font-weight:750;letter-spacing:.12em;line-height:1.35;text-transform:uppercase}
h1{max-width:12ch;margin:0;font-family:var(--display);font-size:clamp(39px,7.3vw,58px);font-weight:370;letter-spacing:-.04em;line-height:.98}
.intro{max-width:42ch;margin:20px 0 0;color:var(--muted);font-size:18px;line-height:1.5}
.link-list{display:grid;gap:11px;padding:18px 0 28px}
.link-card{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:16px;align-items:center;min-height:88px;padding:16px 18px;background:rgba(242,238,229,.82);border:1px solid var(--line);text-decoration:none;box-shadow:0 1px 0 rgba(11,11,10,.08);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.link-card:hover{transform:translateY(-2px);border-color:var(--gold-dark);box-shadow:0 10px 30px rgba(11,11,10,.09);background:var(--paper-soft)}
.link-card-featured{background:var(--ink);border-color:var(--ink);color:var(--paper);box-shadow:7px 7px 0 var(--gold)}
.link-card-featured:hover{background:#181713;border-color:var(--gold-dark);box-shadow:9px 9px 0 var(--gold)}
.link-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--gold-dark)}
.link-card-featured .link-icon{border-color:#4b463d;color:var(--gold)}
.link-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.link-copy{display:grid;gap:3px;min-width:0}
.link-copy strong{font-family:var(--display);font-size:23px;font-weight:480;letter-spacing:-.015em;line-height:1.1}
.link-copy>span{color:var(--muted);font-size:14px;line-height:1.35}
.link-card-featured .link-copy>span{color:#b8b7ae}
.link-arrow{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:var(--gold-dark);transition:transform .18s ease}
.link-card-featured .link-arrow{color:var(--gold)}
.link-card:hover .link-arrow{transform:translate(2px,-2px)}
.link-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.link-footer p{margin:0}
.link-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:16px}
.link-footer a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px}
@media(max-width:620px){.page-shell{padding-top:18px}.topbar{margin-bottom:23px}.brand{width:168px}.profile{grid-template-columns:96px minmax(0,1fr);text-align:left;gap:18px;align-items:center;margin-bottom:14px}.portrait-wrap{width:96px;margin:0;padding:6px 0 0 6px}.portrait-structure{width:44px;right:-13px;bottom:-13px}.portrait-frame{box-shadow:7px 7px 0 var(--gold)}.profile-copy{display:block}.eyebrow{margin-bottom:8px;font-size:10px;line-height:1.3}h1{max-width:14ch;font-size:clamp(28px,8vw,32px);line-height:1}.intro{margin-top:10px;font-size:15px;line-height:1.35}.link-list{padding-top:8px}.link-card{grid-template-columns:40px minmax(0,1fr) 20px;gap:13px;min-height:82px;padding:14px}.link-icon{width:40px;height:40px}.link-copy{text-align:left}.link-copy strong{font-size:21px}.link-copy>span{font-size:13px}.link-footer{align-items:flex-start;flex-direction:column}.link-footer nav{justify-content:flex-start}}
@media(max-width:365px){.brand{width:148px}.language-switch a{min-width:44px;min-height:44px}.profile{grid-template-columns:86px minmax(0,1fr);gap:14px}.portrait-wrap{width:86px}.eyebrow{font-size:9px}h1{font-size:28px}.intro{font-size:14px}.link-card{grid-template-columns:36px minmax(0,1fr) 18px;gap:10px;padding-inline:11px}.link-icon{width:36px;height:36px}.link-icon svg{width:20px;height:20px}.link-copy strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.link-card,.link-arrow{transition:none}.link-card:hover,.link-card:hover .link-arrow{transform:none}}
