@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Jost:wght@400;500&family=Libre+Caslon+Display&display=swap');
:root{--ink:#193b39;--deep:#173c3b;--light:#fbf9f4;--muted:#596965;--copper:#986b51;--line:#d6dcd3;--tint:#e8ece5}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--light);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid #a77751;outline-offset:3px}
.wrap{max-width:480px;margin:0 auto;padding:56px 24px 60px}

.hero{text-align:center}
.avatar{width:190px;aspect-ratio:.75;margin:0 auto 26px;border-radius:18px;overflow:hidden;box-shadow:0 20px 45px rgba(25,59,57,.16)}
.avatar img{width:100%;height:100%;object-fit:cover;display:block}
.name{font:44px/1.05 'Libre Caslon Display',Georgia,serif;font-weight:400;margin:0 0 8px;letter-spacing:-1px}
.role{font-size:12px;letter-spacing:2px;font-weight:600;text-transform:uppercase;color:var(--copper);margin:0 0 20px}
.intro{color:var(--muted);font-size:15.5px;max-width:380px;margin:0 auto 32px}
.intro a{border-bottom:1px solid var(--copper);color:var(--ink)}

.section-label{font-size:11px;letter-spacing:2px;font-weight:600;text-transform:uppercase;color:var(--muted);margin:0 0 14px;text-align:center}
.links{display:flex;flex-direction:column;gap:14px;margin:0 0 46px}

.link-card{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:14px;text-align:left;transition:transform .15s ease,box-shadow .15s ease}
button.link-card{font:inherit;cursor:pointer;width:100%;margin:0}
.link-card:hover{transform:translateY(-2px)}
.link-card .lc-text{flex:1;min-width:0}
.link-card .lc-title{display:block;font-size:16px;font-weight:600;line-height:1.3}
.link-card .lc-sub{display:block;font-size:13px;margin-top:2px}
.link-card .lc-arrow{font-size:18px;flex-shrink:0}

.link-primary{background:var(--deep);color:#fff;box-shadow:0 10px 26px rgba(23,60,59,.22)}
.link-primary .lc-sub{color:#cfe0dc}
.link-primary .lc-icon{width:34px;height:34px;border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:6px}
.link-primary .lc-icon img{width:100%;height:100%;object-fit:contain;display:block}

.link-secondary{background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 6px 18px rgba(25,59,57,.06)}
.link-secondary .lc-sub{color:var(--muted)}
.link-secondary .lc-icon{width:34px;height:34px;border-radius:9px;background:var(--tint);display:flex;align-items:center;justify-content:center;flex-shrink:0;font:20px/1 'Libre Caslon Display',Georgia,serif;color:var(--copper)}

.link-essence{background:#f4e3d3;border:1px solid #ecd3b7;color:var(--deep);box-shadow:0 6px 18px rgba(152,107,81,.12)}
.link-essence .lc-sub{color:#7a5a3f}
.link-essence .lc-icon{width:34px;height:34px;border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}

.book-group{display:flex;flex-direction:column}
.book-toggle .book-chevron{transition:transform .2s ease}
.book-toggle[aria-expanded="true"]{border-bottom-left-radius:0;border-bottom-right-radius:0}
.book-toggle[aria-expanded="true"] .book-chevron{transform:rotate(180deg)}
.book-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px;background:var(--tint);border:1px solid var(--line);border-top:none;border-radius:0 0 14px 14px}
.book-links[hidden]{display:none}
.book-link{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 8px;background:#fff;border:1px solid var(--line);border-radius:10px;font-size:13px;font-weight:600;color:var(--ink);transition:border-color .15s ease}
.book-link:hover{border-color:var(--copper)}
.bl-flag{font-size:10px;letter-spacing:1px;color:var(--copper);font-weight:700}

.social-icons{display:flex;justify-content:center;gap:16px;margin:0 0 50px}
.social-icon{width:52px;height:52px;border-radius:50%;background:var(--deep);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s ease,background .15s ease}
.social-icon svg{width:24px;height:24px}
.social-icon:hover{background:var(--copper);transform:translateY(-2px)}

.bio-footer{text-align:center;border-top:1px solid var(--line);padding-top:28px}
.bio-footer .brand-mini{display:inline-flex;align-items:center;gap:8px;font:16px/1 'Jost',sans-serif;margin-bottom:10px}
.bio-footer .brand-mini img{height:22px;width:auto;display:block}
.bio-footer p{font-size:12px;color:var(--muted);margin:0}

@media(max-width:400px){
  .wrap{padding:44px 18px 48px}
  .name{font-size:38px}
  .avatar{width:165px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.link-card{transition:none}}
