@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=Newsreader:ital,opsz,wght@0,6..72,300;0,6..72,400;0,6..72,500;1,6..72,300;1,6..72,400&display=swap";:root{--bg:#fff;--bg-soft:#f6f6f6;--text:#0d0d0d;--muted:#8e8e93;--soft:#6e6e73;--border:#e9e9eb;--accent:#0a84ff;--radius:14px;--max:780px;--nav-h:64px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,system-ui,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}p{margin:0}::selection{background:var(--text);color:var(--bg)}.container{width:min(var(--max), 100% - 40px);margin-inline:auto}@media (width<=600px){.container{width:min(var(--max), 100% - 32px)}}.nav{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#ffffffdb;position:sticky;top:0}.nav-inner{height:var(--nav-h);justify-content:space-between;align-items:center;gap:16px;display:flex}.logo{align-items:center;display:inline-flex}.logo-img{width:auto;height:42px}.nav-links{align-items:center;gap:22px;display:flex}.nav-link{color:var(--soft);font-size:13px;transition:color .15s}.nav-link:hover{color:var(--text)}.mobile-toggle{cursor:pointer;background:0 0;border:none;padding:6px;display:none}.hamburger{flex-direction:column;justify-content:space-between;width:18px;height:12px;display:flex}.hamburger span{background:var(--text);border-radius:999px;height:1.5px;transition:all .2s}@media (width<=760px){.nav-links{display:none}.nav-links.open{left:0;right:0;top:var(--nav-h);background:var(--bg);border-bottom:1px solid var(--border);flex-direction:column;align-items:stretch;gap:0;padding:16px 20px;display:flex;position:absolute}.nav-links.open .nav-link{border-bottom:1px solid var(--border);padding:14px 0}.mobile-toggle{display:block}}.hero{text-align:center;padding:48px 0 36px}.kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);background:var(--bg-soft);border-radius:999px;align-items:center;gap:7px;margin-bottom:18px;padding:6px 10px;font-size:11px;display:inline-flex}.kicker-dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.hero h1{letter-spacing:-.04em;margin:0;font-family:Newsreader,serif;font-size:clamp(32px,6vw,44px);font-weight:300;line-height:.98}.hero h1 em{font-style:italic;font-weight:300}.hero h1 strong{font-weight:400}.avatar-wrap{justify-content:center;margin:26px auto 0;display:flex}.avatar{object-fit:cover;border:1px solid var(--border);background:#fff;border-radius:50%;width:120px;height:120px;padding:3px}.avatar--fallback{background:var(--bg-soft);place-items:center;display:grid}.avatar--fallback img{opacity:.85;width:54px;height:auto}.hero-sub{max-width:520px;color:var(--soft);margin:18px auto 0;font-size:15px;line-height:1.65}.hero-sub strong{color:var(--text);font-weight:600}.hero-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.btn-primary{background:var(--text);color:#fff;border:1px solid var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:11px 18px;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary:hover{background:#1a1a1a;transform:translateY(-1px)}.btn-ghost{color:var(--text);border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:11px 18px;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.btn-ghost:hover{border-color:var(--text)}.socials{justify-content:center;gap:10px;margin-top:24px;display:flex}.social-btn{border:1px solid var(--border);width:38px;height:38px;color:var(--soft);background:#fff;border-radius:50%;place-items:center;transition:all .15s;display:grid}.social-btn:hover{color:var(--text);border-color:var(--text);transform:translateY(-2px)}.section{border-top:1px solid var(--border);scroll-margin-top:calc(var(--nav-h) + 16px);padding:40px 0}.section-head{text-align:center;max-width:520px;margin:0 auto 24px}.section-num{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:11px}.section-title{letter-spacing:-.03em;margin:6px 0 8px;font-family:Newsreader,serif;font-size:28px;font-weight:300;line-height:1.1}.section-title em{font-style:italic;font-weight:300}.section-desc{color:var(--soft);font-size:14px;line-height:1.6}.about-statement{letter-spacing:-.02em;text-align:center;max-width:640px;margin:0 auto 18px;font-family:Newsreader,serif;font-size:clamp(23px,3vw,29px);font-weight:300;line-height:1.35}.about-statement em{font-style:italic}.about-body{max-width:640px;margin:0 auto}.about-body p{color:var(--soft);text-align:center;margin:0 0 13px;font-size:14.5px;line-height:1.75}.facts{border-top:1px solid var(--border);max-width:520px;margin:22px auto 0;padding:0;list-style:none}.facts li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:18px;padding:11px 0;font-size:13.5px;display:flex}.facts span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;flex:none;font-size:10.5px}.facts b{text-align:right;font-weight:600}.card{border:1px solid var(--border);border-radius:var(--radius);text-align:left;background:#fff;max-width:520px;margin:0 auto;padding:22px}.card-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.card-icon{background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;place-items:center;width:32px;height:32px;font-size:14px;display:grid}.card-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);background:var(--bg-soft);border-radius:999px;padding:4px 8px;font-size:10px}.card h3{letter-spacing:-.02em;margin:0 0 6px;font-size:16px}.card p{color:var(--soft);margin:0 0 16px;font-size:13.5px;line-height:1.6}.btn-full{background:var(--text);color:#fff;border:1px solid var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:100%;padding:12px;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.btn-full:hover{background:#1a1a1a}.hint{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;margin-top:8px;font-size:10px}.resume-grid{grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;display:grid}.resume-col{flex-direction:column;gap:16px;display:flex}.resume-block{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:6px 20px 18px}.resume-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:12px 0 7px;font-size:10px;font-weight:600}.resume-item{grid-template-columns:140px minmax(0,1fr);gap:16px;padding:15px 0;display:grid}.resume-list .resume-item+.resume-item{border-top:1px solid var(--border)}.resume-period{color:var(--muted);letter-spacing:.03em;padding-top:2px;font-size:11px;line-height:1.45}.resume-content h3{letter-spacing:-.02em;margin:0 0 4px;font-size:15px;font-weight:600;line-height:1.3}.resume-place{color:var(--soft);margin:0;font-size:13px;line-height:1.5}.resume-location{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:5px 0 0;font-size:10px;line-height:1.4}.resume-item--education{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px 13px}.resume-block .resume-item--education+.resume-item--education{margin-top:10px}.resume-mark{border:1px solid var(--border);width:30px;height:30px;color:var(--text);background:#fff;border-radius:8px;place-items:center;font-size:14px;display:grid}.resume-item--empty .resume-mark{color:var(--muted)}.resume-empty-line{color:var(--muted);letter-spacing:.08em;font-weight:400}.resume-block--certs{flex-direction:column;flex:1;display:flex}.cert-list{flex-direction:column;gap:8px;margin-top:4px;display:flex}.cert-item{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:8px 12px;display:flex}.cert-mark{border:1px solid var(--border);width:26px;height:26px;color:var(--soft);background:#fff;border-radius:8px;flex:none;place-items:center;font-size:12px;display:grid}.cert-item h3{letter-spacing:-.01em;margin:0;font-size:13px;font-weight:600;line-height:1.35}.cert-year{color:var(--muted);letter-spacing:.03em;flex:none;margin-left:auto;font-size:11px}.cert-item--empty .cert-mark{color:var(--muted)}.cert-empty-line{color:var(--muted);letter-spacing:.08em;font-weight:400}.resume-block--experience{flex-direction:column;display:flex}.resume-block--experience .resume-list{flex-direction:column;flex:1;justify-content:center;display:flex}.resume-block--experience .resume-item{flex:1;align-items:center}.contact-grid{grid-template-columns:1fr 1.1fr;align-items:start;gap:40px;display:grid}.contact-info .section-title{margin-top:6px}.mail-card{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:3px;margin-top:18px;padding:14px 18px;transition:border-color .15s,transform .15s;display:flex}.mail-card:hover{border-color:var(--text);transform:translateY(-1px)}.mail-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px}.mail-addr{letter-spacing:-.01em;font-size:14.5px;font-weight:600}.contact-note{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.6}.form-wrap{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:22px}.field{flex-direction:column;gap:6px;margin-top:14px;display:flex}.field:first-child{margin-top:0}.field label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.field input,.field textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:10px;outline:none;padding:11px 13px;font-size:14px;transition:border .15s}.field input:focus,.field textarea:focus{border-color:var(--text)}.field textarea{resize:vertical;min-height:100px}.btn-submit{background:var(--text);color:#fff;border:1px solid var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:16px;padding:12px;font-size:14px;font-weight:500;display:inline-flex}.btn-submit:hover{background:#1a1a1a}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.form-note{color:var(--muted);text-align:center;margin-top:8px;font-size:11px}.form-note b{color:var(--soft)}.footer{border-top:1px solid var(--border);text-align:center;color:var(--muted);padding:30px 0;font-size:12.5px}.footer-inner{flex-direction:column;align-items:center;gap:16px;display:flex}.footer-socials{margin-top:0}.footer b{color:var(--text);font-family:Newsreader,serif;font-weight:400}.footer-line{line-height:1.6}.reveal{opacity:0;transition:all .5s;transform:translateY(8px)}.reveal.in{opacity:1;transform:none}.toast{background:var(--text);color:#fff;z-index:30;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:13px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000026}@media (width<=760px){.hero{padding-top:40px}.resume-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:30px}.about-body p{text-align:left}}@media (width<=520px){.resume-block{padding-inline:16px}.resume-item:not(.resume-item--education){grid-template-columns:1fr;gap:5px}.resume-period{padding-top:0}.form-wrap{padding:18px}}
