.masthead .personal-nav{gap:14px}
.personal-nav button{display:flex;align-items:center;min-height:44px;padding:8px 2px;background:none;border:0;color:var(--ink);font:11px/1.5 var(--mono);text-shadow:0 1px 12px #000}
.personal-nav>span{color:#a3aaa6;font-size:11px}
.personal-dialog{width:min(580px,calc(100% - 32px));max-width:580px;max-height:calc(100svh - 40px);padding:42px 42px 28px;background:#101416;border:1px solid #a4aaa630;border-top-color:#c0ab7959;box-shadow:0 24px 110px #000b;overscroll-behavior:contain}
.personal-dialog::backdrop{background:#03070bb3;backdrop-filter:blur(8px)}
.personal-dialog h2{font:400 42px/1.1 var(--serif);letter-spacing:-.025em;margin:0 40px 8px 0}
.personal-dialog h2:focus{outline:none}
.personal-dialog p.personal-location{margin:0 0 29px;font:11px/1.7 var(--mono);color:#a5adab}
.personal-dialog .personal-bio p{margin:0 0 20px;font:14px/1.9 var(--mono);letter-spacing:-.025em;color:#d2d6d1;text-wrap:pretty}
.personal-bio a{text-decoration:underline;text-decoration-color:#848c8073;text-underline-offset:4px;text-decoration-thickness:1px}
.personal-bio a:hover{text-decoration-color:var(--signal)}
.personal-close{position:absolute;right:12px;top:12px;width:44px;height:44px;border:0;background:none;color:#a5adab;font:23px/1 var(--mono)}
.personal-social{display:flex;align-items:center;gap:15px;margin-top:24px;font:12px/1.5 var(--mono);color:#c7cdc5}
.personal-social a{display:inline-flex;align-items:center;gap:9px;min-height:44px}
.personal-social>span,.personal-social a span{color:#9b9f93}
.contact-dialog{max-width:480px}
.contact-dialog h2{margin-bottom:30px}
#contact-form{display:grid;gap:10px}
#contact-form label{font:11px/1.7 var(--mono);color:#bdc4bd}
#contact-form input,#contact-form textarea{display:block;width:100%;min-width:0;border:1px solid #b0b8af45;border-radius:0;background:#080c0e;color:var(--ink);font:16px/1.65 var(--mono);padding:11px 12px;box-shadow:none}
#contact-form input{min-height:48px;margin-bottom:11px}
#contact-form textarea{resize:vertical;min-height:145px;max-height:40svh}
#contact-form input:focus-visible,#contact-form textarea:focus-visible{outline:2px solid var(--signal);outline-offset:3px}
#contact-form .contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-actions{display:flex;align-items:center;gap:20px;margin-top:8px;min-height:48px}
#contact-send{display:flex;align-items:center;justify-content:space-between;gap:23px;min-height:44px;padding:10px 0;border:0;border-bottom:1px solid #c1ad7775;background:none;font:12px/1.5 var(--mono);white-space:nowrap}
#contact-send span{color:var(--signal)}
.personal-dialog p#contact-status{margin:0;font:11px/1.7 var(--mono);color:#aebcac}
.personal-dialog p#contact-status[data-state=error]{color:#dfb99e}
.personal-dialog button:focus-visible,.personal-dialog a:focus-visible{outline:2px solid var(--signal);outline-offset:4px}
@media(max-width:560px){.masthead .personal-nav{gap:11px}.personal-dialog{width:calc(100% - 28px);padding:35px 25px 22px;max-height:calc(100svh - 28px)}.personal-dialog h2{font-size:37px}.personal-dialog .personal-bio p{font-size:13px;line-height:1.9}.personal-dialog p.personal-location{margin-bottom:24px}.personal-close{right:7px;top:8px}.personal-social{margin-top:16px}.contact-actions{gap:18px;align-items:flex-start}#contact-status{padding-top:10px}}
