:root{--bg:#05060a;--bg-elevated:#0b0f1e;--bg-soft:#11162b;--bg-contrast:#161d36;--text-primary:#f4f7ff;--text-secondary:#c7cbe3;--text-disabled:#7c85a8;--accent:#6c8cff;--accent-strong:#8be9ff;--outline:rgba(124,140,255,.25);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 rgba(53,224,255,.45)}60%{transform:scale(1.05);box-shadow:0 0 0 12px rgba(53,224,255,0)}to{transform:scale(.95);box-shadow:0 0 rgba(53,224,255,0)}}*{box-sizing:border-box}body{background:radial-gradient(circle at top right,rgba(72,64,255,.12),transparent 55%),var(--bg);min-height:100vh;color:var(--text-primary);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;line-height:1.6}body:before{content:"";pointer-events:none;z-index:-2;background:radial-gradient(circle at 15% 20%,rgba(92,206,255,.12),transparent 50%),radial-gradient(circle at 85% 10%,rgba(124,140,255,.18),transparent 55%);position:fixed;top:0;bottom:0;left:0;right:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.hero-action-primary,.hero-action-primary:hover,.hero-action-primary:focus{text-decoration:none}img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;max-width:100%;display:block}p{margin:0 0 1.2em}p:last-child{margin-bottom:0}.page{min-height:100vh;position:relative;overflow:hidden}.top-nav{z-index:80;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(90deg,rgba(5,6,10,.9),rgba(5,6,10,.4));border-bottom:1px solid rgba(108,140,255,.1);position:fixed;top:0;left:0;right:0}.top-nav-inner{align-items:center;gap:28px;max-width:1180px;margin:0 auto;padding:18px 28px;display:flex}.logo{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-strong);font-size:1rem;font-weight:600}.nav-links{flex:1;align-items:center;gap:20px;display:flex}.nav-links a{color:var(--text-secondary);padding:6px 0;font-size:.95rem;position:relative}.nav-links a:after{content:"";background:linear-gradient(90deg,var(--accent),var(--accent-strong));width:0;height:2px;transition:width .3s;position:absolute;bottom:-6px;left:0}.nav-links a:hover:after{width:100%}.nav-links a:hover,.nav-links a:focus,.nav-links a:active{text-decoration:none}.nav-links a:focus-visible{outline:2px solid var(--outline);outline-offset:3px}.locale-toggle{--locale-gap:4px;gap:var(--locale-gap);background:rgba(108,140,255,.06);border:1px solid rgba(108,140,255,.14);border-radius:999px;flex:none;align-items:center;margin-left:auto;padding:4px;display:inline-flex;position:relative;overflow:hidden}.locale-toggle button{color:var(--text-secondary);cursor:pointer;text-align:center;background:0 0;border:none;border-radius:999px;flex:1;padding:6px 12px;font-size:.8rem;font-weight:700;transition:background .3s,color .3s}.locale-toggle button[aria-pressed=true]{color:var(--text-primary)}.locale-toggle:before{content:"";top:4px;left:calc(var(--locale-gap)/2);height:calc(100% - 8px);width:calc(50% - (var(--locale-gap)/2));pointer-events:none;background:linear-gradient(120deg,rgba(108,140,255,.35),rgba(139,233,255,.25));border-radius:999px;transition:transform .26s cubic-bezier(.2,.9,.2,1),box-shadow .26s;position:absolute;transform:translate(0%);box-shadow:0 6px 18px rgba(108,140,255,.18)}.locale-toggle.is-en:before{transform:translate(100%)}.locale-toggle button{z-index:2;position:relative}main{max-width:1180px;margin:0 auto;padding:72px 28px 120px}section{padding:40px 0;position:relative}.section-intro{max-width:920px;color:var(--text-secondary);font-size:1rem}@media (max-width:1180px){.section-intro{max-width:680px}}.section-heading{margin-bottom:18px;font-size:max(2rem,min(3vw,2.6rem))}.resume-card h3{text-transform:uppercase;letter-spacing:.12em;font-weight:700}.hero-title{text-transform:none}.hero-section{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-top:48px;padding-bottom:72px;scroll-margin-top:88px;display:block;position:relative;overflow:visible}.hero-background{pointer-events:none;background:0 0;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.hero-background:after{content:"";mix-blend-mode:normal;background:0 0;position:absolute;top:0;bottom:0;left:0;right:0}.hero-inner{max-width:1180px;min-height:auto;margin:0 auto;padding:0 28px;display:block;position:relative}.hero-content{z-index:2;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:92px;width:100%;max-height:-moz-fit-content;max-height:fit-content;display:grid;position:relative}.hero-copy{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;max-width:680px;margin:0 auto;padding:8px 0;display:flex}.hero-eyebrow{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;background:rgba(108,140,255,.18);border-radius:999px;align-items:center;gap:8px;padding:4px 14px;font-size:.85rem;display:inline-flex}.hero-title{background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:max(2.8rem,min(5vw,4rem));line-height:1.1}.hero-title strong{display:block}.hero-subtitle{margin:0}.hero-highlight{color:var(--text-secondary);max-width:520px;font-size:.98rem}.hero-tags{flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hero-tags li{color:var(--text-secondary);background:rgba(13,19,36,.8);border:1px solid rgba(108,140,255,.2);border-radius:999px;padding:6px 14px;font-size:.9rem}.hero-description{color:var(--text-secondary);max-width:560px;margin:0;font-size:1.05rem}.hero-actions{flex-direction:column;align-items:center;gap:20px;display:flex}.hero-action-primary{box-shadow:none}.btn{cursor:pointer;border:1px solid transparent;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:.95rem;font-weight:500;text-decoration:none;transition:transform .2s,box-shadow .2s,background .3s;display:inline-flex}.btn-primary{background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:#04050a;box-shadow:0 15px 30px rgba(108,140,255,.35)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(108,140,255,.4)}.btn-primary.hero-action-primary,.hero-action-primary.btn-primary{box-shadow:none;border:none}.btn-primary.hero-action-primary:hover,.hero-action-primary.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(108,140,255,.18)}.site-footer{background:linear-gradient(90deg,rgba(5,6,10,.6),rgba(5,6,10,.4));border-top:1px solid rgba(108,140,255,.06);border-radius:0;margin-top:48px;padding:18px 28px}.site-footer-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1180px;margin:0 auto;display:flex}@media (max-width:520px){.site-footer-inner{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px}.footer-left,.footer-right{width:100%}.footer-right .footer-links{justify-content:center}}.footer-left{color:var(--text-secondary);font-size:.95rem}.footer-right .footer-links{align-items:center;gap:12px;display:flex}.footer-link{width:40px;height:40px;color:var(--accent-strong);background:rgba(13,19,36,.6);border:1px solid rgba(108,140,255,.06);border-radius:10px;justify-content:center;align-items:center;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex;position:relative}.footer-link:hover{background:linear-gradient(120deg,rgba(108,140,255,.12),rgba(139,233,255,.06));transform:translateY(-3px);box-shadow:0 10px 18px rgba(108,140,255,.12)}.footer-link:after{content:attr(title);white-space:nowrap;color:var(--text-primary);letter-spacing:.01em;opacity:0;pointer-events:none;transform-origin:50% 100%;z-index:9999;background:linear-gradient(rgba(10,14,28,.98),rgba(12,16,30,.96));border:1px solid rgba(108,140,255,.06);border-radius:10px;max-width:90vw;padding:6px 8px;font-size:.78rem;font-weight:600;transition:opacity .14s,transform .14s cubic-bezier(.2,.9,.2,1);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,-4px)scale(.96);box-shadow:0 10px 24px rgba(3,8,18,.6)}.footer-link:before{display:none}.footer-link:hover:after{opacity:1;transform:translate(-50%,-8px)scale(1)}.footer-link:focus-visible:after{opacity:1;transform:translate(-50%,-8px)scale(1)}@media (max-width:720px){.footer-link:after{white-space:normal;max-width:280px;line-height:1.3}}.btn-ghost{border-color:var(--outline);color:var(--text-primary);background:rgba(12,16,32,.6)}.btn-ghost:hover{background:rgba(18,24,46,.8);text-decoration:none}.hero-portrait{flex-direction:column;justify-content:flex-start;align-self:flex-start;align-items:center;gap:0;display:flex;position:relative}.portrait-card{z-index:10;background:linear-gradient(160deg,rgba(108,140,255,.4),rgba(5,6,10,.9)) padding-box padding-box;border:none;border-radius:26px;flex-direction:column;justify-content:flex-start;align-items:center;width:320px;height:440px;padding-top:110px;display:flex;position:relative;overflow:visible;box-shadow:0 30px 60px rgba(5,6,10,.45),inset 0 0 0 1px rgba(108,140,255,.25)}.portrait-card:before{content:"";filter:blur(20px);background:radial-gradient(circle at 50% 10%,rgba(139,233,255,.35),transparent 65%);border-radius:22px;position:absolute;top:10%;bottom:10%;left:12%;right:12%}.portrait-card img{object-fit:cover;object-position:center;z-index:1;mix-blend-mode:normal;background:0 0;border-radius:50%;width:160px;height:160px;margin:0 auto;transition:transform .22s;display:block;position:relative;transform:translateY(-30%)}.portrait-links{gap:18px;margin-top:6px;display:flex}.portrait-below{z-index:20;flex-direction:column;align-items:center;gap:0;width:100%;display:flex;position:relative}.portrait-card .portrait-below{z-index:30;pointer-events:auto;flex-direction:column;align-items:center;gap:10px;width:calc(100% - 32px);display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.portrait-icon{width:52px;height:52px;color:var(--text-primary);z-index:30;background:rgba(10,14,28,.75);border:1px solid rgba(108,140,255,.35);border-radius:16px;justify-content:center;align-items:center;font-size:1.35rem;transition:transform .25s,box-shadow .25s,border-color .25s;display:inline-flex;position:relative}.portrait-icon:hover{border-color:var(--accent-strong);outline:none;transform:translateY(-3px);box-shadow:0 18px 30px rgba(108,140,255,.35)}.portrait-icon:focus-visible{border-color:var(--accent-strong);outline:none;transform:translateY(-3px);box-shadow:0 18px 30px rgba(108,140,255,.35)}.portrait-icon{position:relative}.portrait-icon:after{content:attr(data-tooltip);white-space:nowrap;color:var(--text-primary);text-shadow:0 6px 18px rgba(3,8,18,.6);mix-blend-mode:normal;letter-spacing:.01em;opacity:0;pointer-events:none;transform-origin:50% 100%;z-index:9999;background:linear-gradient(rgba(10,14,28,.98),rgba(12,16,30,.96));border:1px solid rgba(108,140,255,.08);border-radius:12px;max-width:90vw;padding:8px 12px;font-size:.85rem;font-weight:600;transition:opacity .16s,transform .16s cubic-bezier(.2,.9,.2,1);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,-6px)scale(.96);box-shadow:0 18px 40px rgba(3,8,18,.6)}.portrait-icon:hover:after{opacity:1;transform:translate(-50%,-10px)scale(1)}.portrait-icon:focus-visible:after{opacity:1;transform:translate(-50%,-10px)scale(1)}.portrait-icon:before{display:none}.portrait-icon[href=mailto\:]{background:rgba(10,14,28,.75)}.portrait-icon[href^=mailto\:]{background:linear-gradient(120deg,var(--accent-strong),var(--accent));color:#04050a;border:none;box-shadow:0 10px 26px rgba(108,140,255,.28)}.portrait-icon[href^=mailto\:]:hover{color:#04050a;transform:translateY(-3px);box-shadow:0 20px 40px rgba(108,140,255,.36)}.portrait-icon[href^=mailto\:]:focus-visible{color:#04050a;transform:translateY(-3px);box-shadow:0 20px 40px rgba(108,140,255,.36)}@media (max-width:720px){.portrait-icon:after{white-space:normal;max-width:200px;padding:6px 10px;font-size:.82rem;line-height:1.3;bottom:calc(100% + 6px)}}.portrait-availability{color:var(--accent-strong);letter-spacing:.01em;white-space:normal;text-align:center;-webkit-backdrop-filter:blur(6px)saturate(120%);background:linear-gradient(rgba(255,255,255,.02),rgba(255,255,255,.01));border:1px solid rgba(108,140,255,.08);border-radius:14px;justify-content:center;align-items:center;gap:10px;max-width:320px;margin-top:0;padding:8px 12px;font-size:.95rem;display:flex;transform:translateY(-28px)}.portrait-availability .status-dot{box-shadow:0 0 0 6px rgba(53,224,255,.06),0 6px 18px rgba(3,8,18,.45)}.status-dot{background:#35e0ff;border-radius:50%;flex:none;width:10px;height:10px;animation:2.6s infinite pulse;display:inline-block;transform:translateY(.08em);box-shadow:0 0 rgba(53,224,255,.45)}.availability-text{vertical-align:middle;display:inline-block}.hero-subtitle{color:var(--text-secondary);margin-top:6px;font-size:1.05rem;font-weight:500;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.about-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;display:grid}.about-grid .section-intro{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.experience-item{margin-bottom:18px}.experience-meta{color:var(--text-secondary);margin:6px 0 12px;font-size:.95rem;display:block}.experience-company{font-weight:600;display:inline}.experience-company:after{content:" "}.experience-period{color:var(--text-disabled);white-space:nowrap;font-size:.95rem;display:inline-block}.experience-period:before{content:"•";color:var(--text-disabled);margin:0 6px 0 0}@media (max-width:420px){.experience-meta{grid-template-columns:1fr}.experience-period{margin-top:4px}}.experience-item p,.resume-card .experience-item ul li{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto}.about-highlights{gap:18px;display:grid}.highlight-card{color:var(--text-secondary);background:linear-gradient(140deg,rgba(14,18,36,.9),rgba(11,16,32,.65));border:1px solid rgba(108,140,255,.15);border-radius:18px;padding:18px 20px}.highlight-card strong{color:var(--text-primary);margin-bottom:6px;font-size:1.05rem;display:block}.project-carousel{gap:28px;margin-top:48px;display:grid;position:relative}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px;display:grid}@media (max-width:980px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.projects-grid{grid-template-columns:1fr;gap:18px}}.project-placeholder{background:linear-gradient(160deg,rgba(10,14,28,.9),rgba(11,16,34,.9));border:1px dashed rgba(108,140,255,.14);justify-content:center;align-items:center;min-height:260px;display:flex}.project-placeholder .project-placeholder-inner{text-align:center;color:var(--text-secondary);padding:28px}.project-placeholder h3{color:var(--text-primary);margin-bottom:12px}.project-window{border-radius:28px;padding:0 8px 8px;overflow:hidden}.project-track{will-change:transform;transition:transform .6s cubic-bezier(.22,1,.36,1);display:flex}.project-slide{flex:0 0 100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0 18px 18px;display:grid}.project-slide .project-card{height:100%}.project-card{background:var(--bg-soft);box-shadow:none;will-change:transform;border:1px solid rgba(108,140,255,.18);border-radius:22px;flex-direction:column;transition:transform .28s cubic-bezier(.2,.9,.2,1),border .28s;display:flex;position:relative;overflow:hidden}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.projects-grid .project-card{opacity:0;transform:translateY(10px)}.projects-grid .project-card.is-visible{animation-name:fadeUp;animation-duration:.52s;animation-timing-function:cubic-bezier(.2,.9,.2,1);animation-fill-mode:forwards}@supports (animation-delay:0s){.projects-grid .project-card:first-child{animation-delay:80ms}.projects-grid .project-card:nth-child(2){animation-delay:.14s}.projects-grid .project-card:nth-child(3){animation-delay:.2s}.projects-grid .project-card:nth-child(4){animation-delay:.26s}.projects-grid .project-card:nth-child(5){animation-delay:.32s}.projects-grid .project-card:nth-child(6){animation-delay:.38s}.projects-grid .project-card:nth-child(7){animation-delay:.44s}.projects-grid .project-card:nth-child(8){animation-delay:.5s}.projects-grid .project-card:nth-child(9){animation-delay:.56s}.projects-grid .project-card:nth-child(10){animation-delay:.62s}.projects-grid .project-card:nth-child(11){animation-delay:.68s}.projects-grid .project-card:nth-child(12){animation-delay:.74s}}@media (prefers-reduced-motion:reduce){.projects-grid .project-card{opacity:1;transform:none;animation:none!important}}.project-card:hover{z-index:20;border-color:rgba(139,233,255,.35);transform:translateY(-8px)}.resume-card:hover,.publication-card:hover{border-color:rgba(139,233,255,.35);transform:translateY(-6px)}.project-card img{object-fit:cover;width:100%;height:180px}.project-icon{width:100%;height:180px;color:var(--accent-strong);background:linear-gradient(rgba(8,10,18,.7),rgba(6,8,14,.7));border-top-left-radius:22px;border-top-right-radius:22px;justify-content:center;align-items:center;font-size:3.4rem;display:flex}.project-content{flex-direction:column;flex:1;gap:14px;padding:22px;display:flex}.project-content h3{text-align:center;margin:0;font-size:1.2rem}.project-content p{color:var(--text-secondary);margin:0;font-size:.95rem}.project-card:not(.project-placeholder) .project-content p{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;margin:0 0 12px;line-height:1.45}.tag-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:auto 0;padding:0;list-style:none;display:flex}.tag-list li{color:var(--text-secondary);text-align:center;background:rgba(17,22,43,.9);border:1px solid rgba(108,140,255,.06);border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:.8rem;display:inline-flex;box-shadow:0 6px 14px rgba(3,8,18,.35)}.card-link{width:100%;color:var(--accent-strong);justify-content:center;align-items:center;gap:8px;margin-top:auto;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.card-link svg{flex-shrink:0}.card-link:hover,.card-link:focus{color:var(--accent);text-decoration:none}.card-link:focus-visible{outline:2px solid var(--outline);outline-offset:3px}.carousel-control{width:46px;height:46px;color:var(--text-primary);cursor:pointer;z-index:3;background:rgba(10,14,28,.85);border:1px solid rgba(108,140,255,.35);border-radius:50%;justify-content:center;align-items:center;transition:transform .25s,background .3s,opacity .3s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-control:hover{background:rgba(15,20,40,.95);transform:translateY(-50%)scale(1.05)}.carousel-control:disabled{opacity:.4;cursor:not-allowed;transform:translateY(-50%)}.carousel-control.prev{left:16px}.carousel-control.next{right:16px}.carousel-dots{justify-content:center;align-items:center;gap:10px;padding-bottom:4px;display:inline-flex}.carousel-dot{cursor:pointer;background:rgba(108,140,255,.25);border:none;border-radius:999px;width:12px;height:12px;transition:background .3s,width .3s}.carousel-dot.is-active{background:linear-gradient(120deg,var(--accent),var(--accent-strong));width:34px}.carousel-dot:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.resume-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:28px;margin-top:48px;display:grid}.resume-card{background:linear-gradient(160deg,rgba(10,14,28,.92),rgba(11,16,34,.74));border:1px solid rgba(108,140,255,.18);border-radius:22px;flex-direction:column;gap:12px;height:100%;padding:24px;transition:transform .3s,border .3s;display:flex}.resume-card span{color:var(--text-secondary);font-size:.9rem}.resume-card ul{color:var(--text-secondary);margin:0;padding-left:18px}.cv-download{flex-direction:column;align-items:center;gap:12px;display:inline-flex;position:relative}.resume-bottom .cv-download{align-self:center;margin:0}.resume-bottom .cv-download .btn{justify-content:center;align-items:center;padding-top:12px;padding-bottom:12px;line-height:1;display:inline-flex}.cv-options{opacity:0;pointer-events:none;z-index:10;background:rgba(10,14,28,.92);border:1px solid rgba(108,140,255,.2);border-radius:18px;flex-direction:column;gap:10px;min-width:220px;padding:18px 20px;transition:opacity .25s,transform .25s;display:flex;position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%,10px);box-shadow:0 28px 48px rgba(5,6,10,.65)}.cv-options.is-open{opacity:1;pointer-events:auto;transform:translate(-50%)}.cv-option{color:var(--text-primary);align-items:center;gap:10px;font-weight:500;text-decoration:none;display:inline-flex}.cv-download .btn{font-weight:700}.cv-download .btn.btn-primary,.cv-download .btn-primary{box-shadow:none;border:none}.cv-download .btn.btn-primary:hover,.cv-download .btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(108,140,255,.18)}.cv-download .btn{margin-top:0}.cv-option svg{width:18px;height:18px}.cv-option.is-disabled{color:var(--text-disabled);opacity:.7;cursor:default}.cv-option:not(.is-disabled):hover{color:var(--accent-strong);outline:none}.cv-option:not(.is-disabled):focus-visible{color:var(--accent-strong);outline:none}.skills-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.skills-list li{color:var(--text-secondary);text-align:center;background:rgba(15,20,40,.85);border-radius:14px;justify-content:center;align-items:center;min-height:64px;padding:10px 14px;display:flex}.resume-card h3{text-align:center;letter-spacing:.12em;color:#dff4ff;text-shadow:0 6px 20px rgba(45,226,255,.04);text-transform:uppercase;margin:0;padding-bottom:6px;font-size:1.28rem;font-weight:700;position:relative}.resume-card h3:after{content:"";opacity:.18;background:linear-gradient(90deg,rgba(108,140,255,.96),rgba(45,226,255,.9));border-radius:6px;width:64px;height:6px;margin:8px auto 0;display:block}.resume-bottom{justify-content:center;align-items:center;min-height:84px;margin-top:auto;padding:12px 0;display:flex}.resume-card>:not(.resume-bottom){flex:none}.resume-card>.resume-bottom{flex:auto;justify-content:center;align-items:center;min-height:0;margin-top:0;padding:12px 0;display:flex}.resume-bottom .cv-download .btn{padding-top:14px;padding-bottom:14px}.publication-card{background:rgba(14,18,36,.88);border:1px solid rgba(108,140,255,.18);border-radius:20px;gap:10px;padding:24px;transition:transform .3s,border .3s;display:grid}.publication-card.publication-placeholder{text-align:center;min-height:220px;color:var(--text-secondary);background:rgba(14,18,36,.88);border:1px solid rgba(108,140,255,.18);flex-direction:column;justify-content:center;align-items:center;display:flex}.publication-list{grid-template-columns:1fr;gap:32px 0;margin-top:40px;display:grid}.publication-card.publication-placeholder strong{color:var(--text-primary);margin-bottom:8px}.publication-card strong{font-size:1.1rem}.publication-card.publication-placeholder:hover{border-color:rgba(139,233,255,.35);outline:none;transform:translateY(-6px)}.publication-card.publication-placeholder:focus-visible{border-color:rgba(139,233,255,.35);outline:none;transform:translateY(-6px)}.publication-card span{color:var(--accent-strong);letter-spacing:.06em;text-transform:uppercase;font-size:.85rem}.publication-card p{color:var(--text-secondary);margin:0}.publication-card:not(.publication-placeholder) p{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;margin:0 0 12px;line-height:1.45}.contact-card{background:linear-gradient(150deg,rgba(108,140,255,.16),rgba(11,14,28,.9));border:1px solid rgba(108,140,255,.22);border-radius:24px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;margin-top:40px;padding:32px;display:grid}.contact-card a.btn-primary{width:-moz-fit-content;width:fit-content}.contact-meta{color:var(--text-secondary);flex-direction:column;gap:12px;display:flex}.social-links{flex-direction:column;gap:12px;display:flex}.social-links a{color:var(--accent-strong);font-weight:500}footer{text-align:center;color:var(--text-secondary);padding:60px 28px;font-size:.9rem}@media (max-width:980px){.hero-inner{padding:0 36px}.hero-content{grid-template-columns:1fr;gap:48px}.hero-section{padding-top:140px;scroll-margin-top:160px}.hero-portrait{text-align:center;flex-direction:column;order:1;align-items:center;display:flex}.portrait-links,.portrait-availability{justify-content:center}.project-slide{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px 12px}.carousel-control.prev{left:8px}.carousel-control.next{right:8px}.about-grid,.contact-card{grid-template-columns:1fr}.top-nav-inner{padding:14px 22px}}@media (max-width:720px){.nav-links{display:none}main{padding:0 20px 100px}section{padding:48px 0}.hero-title{font-size:max(2.4rem,min(8vw,3.2rem))}.hero-tags li{font-size:.85rem}.hero-inner{padding:0 22px}.hero-actions{gap:16px}.portrait-links{justify-content:center;gap:14px;width:100%}.portrait-icon{flex:45%}.project-window{padding:0}.project-slide{grid-template-columns:1fr;padding:0 6px 6px}.carousel-control{display:none}.resume-grid{grid-template-columns:1fr}.contact-card{padding:24px}.carousel-dots{gap:8px}}
