*{box-sizing:border-box}html{scroll-behavior:smooth}:root{--bg:#fff;--surface:#fff;--surface-soft:#f6f8fc;--surface-hero:#f9fbff;--text:#0f172a;--text-soft:#334155;--text-muted:#64748b;--primary:#1e3a8a;--primary-dark:#173b73;--border:#d9e2ec;--border-soft:#e3e8f0;--shadow-sm:0 6px 18px #0f172a0d;--shadow-md:0 10px 28px #0f172a12;--radius-lg:24px;--radius-md:18px;--radius-pill:999px;--max-width:1200px}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%}.page{width:100%}.navbar{border-bottom:1px solid var(--border);z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;width:100%;position:sticky;top:0}.nav-container{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;padding:14px 32px;display:flex}.logo{color:var(--text);font-size:1rem;font-weight:700}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a,.dropdown-toggle{color:var(--primary-dark);font-size:.98rem;font-weight:500;transition:color .2s}.nav-links a:hover,.dropdown-toggle:hover{color:var(--primary)}.dropdown{position:relative}.dropdown-toggle{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.dropdown-menu{background:var(--surface);border:1px solid var(--border);z-index:1001;border-radius:14px;min-width:180px;padding:8px 0;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 28px #0f172a14}.dropdown-item{color:var(--primary-dark);white-space:nowrap;padding:10px 16px;display:block}.dropdown-item:hover{background:#f5f8fc}.hero-upgraded{max-width:var(--max-width);background:var(--surface-hero);grid-template-columns:minmax(0,1.2fr) minmax(220px,320px);align-items:center;gap:56px;margin:0 auto;padding:72px 32px 64px;display:grid}.hero-text{max-width:620px}.hero-text h1{color:var(--text);margin:0 0 16px;font-size:clamp(2.75rem,5vw,4.25rem);line-height:1.05}.brand-line{color:var(--primary);margin:0 0 22px;font-size:1rem;font-weight:700;line-height:1.8}.intro{color:var(--primary-dark);max-width:58ch;margin:0 0 30px;font-size:1.04rem;font-weight:600;line-height:1.9}.hero-buttons{flex-wrap:wrap;gap:14px;display:flex}.btn{text-align:center;border-radius:999px;justify-content:center;align-items:center;min-width:140px;padding:12px 22px;font-weight:600;transition:all .2s;display:inline-flex}.btn-dark{background:var(--text);color:#fff}.btn-dark:hover{background:#111827;transform:translateY(-1px)}.btn-light{color:#0f172a;background:#fff;border:1px solid #cfd8e3}.btn-light:hover{background:#f1f5f9;transform:translateY(-1px)}.hero-side{justify-content:center;align-items:center;display:flex}.profile-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);width:100%;max-width:260px;box-shadow:var(--shadow-md);padding:12px}.profile-image-wrap{border-radius:18px;width:100%;line-height:0;overflow:hidden}.profile-image{object-fit:cover;border-radius:18px;width:100%;height:auto;display:block}.section{padding:64px 32px}.section>*{max-width:var(--max-width);margin-left:auto;margin-right:auto}.section-white{background:var(--surface)}.section-light{background:var(--surface-soft)}.section h2{color:var(--text);margin-top:0;margin-bottom:18px;font-size:clamp(2rem,4vw,2.4rem)}.section-text{max-width:760px;color:var(--text-soft);line-height:1.8}.featured-grid,.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.featured-card,.card,.experience-card,.about-cta,.work-card,.research-project-card,.about-section-card,.about-image-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.featured-card,.card,.work-card,.about-cta,.research-project-card,.about-section-card,.experience-card{padding:24px}.featured-card h3,.card h3,.work-card h3,.experience-card h3,.about-cta h2,.about-section-card h2{color:var(--text);margin-top:0;margin-bottom:14px}.featured-card p,.card p,.work-card p,.experience-card p,.experience-card li,.about-cta p,.about-section-card p,.research-project-content p,.research-content p,.portfolio-content p{color:var(--text-soft);line-height:1.8}.card-link{transition:transform .2s,box-shadow .2s;display:block}.card-link:hover{transform:translateY(-4px);box-shadow:0 16px 32px #0f172a14}.card-cta,.request-note{color:var(--primary);margin-top:16px;font-weight:700;display:inline-block}.portfolio-note{max-width:960px;color:var(--text-soft);margin-top:0;margin-bottom:28px;line-height:1.75}.about-cta{max-width:720px}.about-button{border-radius:var(--radius-pill);background:var(--primary-dark);color:#fff;margin-top:16px;padding:12px 20px;font-weight:600;transition:all .2s;display:inline-block}.about-button:hover{background:var(--primary);transform:translateY(-1px)}.skills{flex-wrap:wrap;gap:14px;margin-top:8px;display:flex}.skill-pill{border-radius:var(--radius-pill);color:var(--primary);background:#fff;border:1px solid #dbeafe;padding:10px 16px;font-size:.95rem;font-weight:600;display:inline-block}.meta{color:var(--text-muted);margin-bottom:14px}.experience-card{margin-bottom:24px}.experience-card ul{margin:0;padding-left:20px}.contact-section{background:var(--surface-soft)}.contact-section p{color:var(--text-soft);line-height:1.8}.subpage{max-width:1100px;margin:0 auto;padding:40px 24px 80px}.subpage-hero{margin-bottom:40px}.back-link{color:var(--primary);margin-bottom:18px;font-weight:600;display:inline-block}.subpage h1{color:var(--text);margin:0 0 12px;font-size:clamp(2.5rem,4vw,3rem)}.subpage-intro{max-width:760px;color:var(--text-soft);line-height:1.8}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;display:grid}.work-meta{color:var(--text-soft);margin-top:14px;font-size:.95rem}.portfolio-list,.research-grid{flex-direction:column;gap:28px;margin-top:28px;display:flex}.portfolio-item,.research-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.research-card{grid-template-columns:320px 1fr;align-items:start;gap:24px;padding:20px;display:grid}.portfolio-image-wrap,.research-image-wrap,.preview-image-wrap,.lightbox-image-wrap{background:#e2e8f0;border-radius:18px;position:relative;overflow:hidden}.portfolio-image,.research-image,.preview-image,.lightbox-image,.about-page-image{object-fit:cover;width:100%;display:block}.research-image{height:240px}.preview-image{height:220px}.portfolio-content,.research-project-content{padding-top:0}.portfolio-content h2,.research-project-content h2{margin-top:0;margin-bottom:12px;font-size:1.8rem;line-height:1.25}.research-content h2{margin-top:0;margin-bottom:12px;font-size:1.4rem;line-height:1.3}.research-project-card{margin-top:28px}.research-preview-row{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px;display:grid}.preview-button{cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.blurred{filter:blur(6px);transform:scale(1.03)}.image-overlay{z-index:2;background:#0f172a59;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.image-overlay span{color:#fff;letter-spacing:.03em;font-size:18px;font-weight:700}.lightbox{z-index:2000;background:#0f172ac7;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lightbox-content{width:100%;max-width:1100px;position:relative}.close-lightbox{width:42px;height:42px;color:var(--text);cursor:pointer;z-index:5;background:#fff;border:none;border-radius:999px;font-size:28px;position:absolute;top:-14px;right:-6px}.lightbox-image{object-fit:contain;background:#fff;max-height:82vh}.lightbox-overlay span{font-size:22px}.about-image-card{overflow:hidden}.about-page{padding-top:36px}.about-top{max-width:1200px;margin:0 auto 40px;padding:0 32px}.about-top-inner{background:linear-gradient(#f9fbff 0%,#fff 100%);border:1px solid #e3e8f0;border-radius:28px;padding:36px;box-shadow:0 10px 30px #0f172a0d}.about-top-text{max-width:820px}.about-kicker{letter-spacing:.08em;text-transform:uppercase;color:#1e3a8a;margin:0 0 12px;font-size:.9rem;font-weight:700}.about-top h1{color:#0f172a;margin:0 0 18px;font-size:clamp(2.7rem,5vw,4rem);line-height:1.05}.about-lead{color:#334155;max-width:760px;margin:0 0 16px;font-size:1.08rem;line-height:1.9}.about-lead-secondary{color:#1e3a8a;max-width:720px;margin:0;font-size:1rem;font-weight:600;line-height:1.8}.about-page-layout{grid-template-columns:280px 1fr;align-items:start;gap:32px;max-width:1200px;margin:0 auto;padding:0 32px 72px;display:grid}.about-image-column{position:sticky;top:100px}.about-image-card{background:#fff;border:1px solid #e3e8f0;border-radius:24px;overflow:hidden;box-shadow:0 10px 26px #0f172a0f}.about-page-image{object-fit:cover;width:100%;height:auto;display:block}.about-image-caption{border-top:1px solid #edf2f7;padding:18px 18px 20px}.about-image-caption h3{color:#0f172a;margin:0 0 8px;font-size:1rem}.about-image-caption p{color:#475569;margin:0;font-size:.95rem;line-height:1.7}.about-content-column{flex-direction:column;gap:22px;display:flex}.about-section-card{background:#fff;border:1px solid #e3e8f0;border-radius:24px;padding:28px;position:relative;box-shadow:0 8px 22px #0f172a0d}.about-section-card:before{content:"";background:#1e3a8a;border-radius:999px;width:64px;height:4px;position:absolute;top:0;left:28px}.about-section-card h2{color:#0f172a;margin-top:8px;margin-bottom:14px;font-size:1.9rem}.about-section-card p{color:#334155;margin-bottom:16px;line-height:1.85}.about-section-card p:last-child{margin-bottom:0}@media (max-width:1024px){.about-page-layout{grid-template-columns:1fr}.about-image-column{position:static}.about-image-card{max-width:320px;margin:0 auto}}@media (max-width:640px){.about-top{padding:0 20px}.about-top-inner{padding:26px 22px}.about-page-layout{padding:0 20px 56px}.about-top h1{font-size:2.6rem}.about-section-card{padding:24px 20px}.about-section-card:before{left:20px}}@media (max-width:1024px){.hero-upgraded{grid-template-columns:1fr;gap:32px}.hero-side{justify-content:flex-start}.featured-grid,.card-grid,.work-grid,.research-card{grid-template-columns:1fr}.about-page-layout{grid-template-columns:1fr;padding:0 24px 48px}.about-image-column{position:static}.about-image-card{max-width:340px;margin:0 auto}}@media (max-width:900px){.research-preview-row{grid-template-columns:1fr}.preview-image{height:200px}}@media (max-width:640px){.nav-container,.section,.hero-upgraded{padding-left:20px;padding-right:20px}.nav-links{gap:16px}.hero-text h1{font-size:2.7rem}.subpage{padding:32px 20px 64px}.profile-card{max-width:220px}}.research-page{padding-top:36px}.research-top{max-width:1200px;margin:0 auto 40px;padding:0 32px}.research-top-inner{background:linear-gradient(#f9fbff 0%,#fff 100%);border:1px solid #e3e8f0;border-radius:28px;padding:36px;box-shadow:0 10px 30px #0f172a0d}.research-kicker{letter-spacing:.08em;text-transform:uppercase;color:#1e3a8a;margin:0 0 12px;font-size:.9rem;font-weight:700}.research-top h1{color:#0f172a;margin:0 0 18px;font-size:clamp(2.7rem,5vw,4rem);line-height:1.05}.research-lead{color:#334155;max-width:780px;margin:0 0 14px;font-size:1.06rem;line-height:1.9}.research-lead-secondary{color:#1e3a8a;margin:0;font-size:1rem;font-weight:600;line-height:1.8}.research-projects-wrap{flex-direction:column;gap:32px;max-width:1200px;margin:0 auto;padding:0 32px 72px;display:flex}.enhanced-research-card{border-radius:28px;padding:28px;box-shadow:0 10px 28px #0f172a0d}.enhanced-preview-row{gap:20px;margin-bottom:28px}.enhanced-preview-wrap{background:#eef3f8;border:1px solid #e3e8f0;border-radius:20px}.preview-button{transition:transform .2s}.preview-button:hover{transform:translateY(-2px)}.enhanced-research-content h2{color:#0f172a;margin-top:0;margin-bottom:16px;font-size:clamp(2rem,4vw,2.3rem);line-height:1.2}.enhanced-research-content p{max-width:950px;line-height:1.85}.enhanced-research-content .work-meta{margin-top:18px}.enhanced-research-content .request-note{color:#1e3a8a;margin-top:26px;font-size:1rem}.locked-overlay{background:#0f172a6b}.locked-overlay-content{flex-direction:column;align-items:center;gap:8px;display:flex}.lock-icon{font-size:2rem;line-height:1}.access-modal-backdrop{z-index:3000;background:#0f172ab3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.access-modal{text-align:center;background:#fff;border:1px solid #e3e8f0;border-radius:28px;width:100%;max-width:520px;padding:36px 30px;position:relative;box-shadow:0 20px 50px #0f172a2e}.access-modal-icon{margin-bottom:10px;font-size:2.5rem}.access-modal h3{color:#0f172a;margin:0 0 14px;font-size:1.8rem}.access-modal p{color:#334155;max-width:420px;margin:0 auto;line-height:1.8}.access-modal-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:24px;display:flex}.close-access-modal{color:#0f172a;cursor:pointer;background:#f5f8fc;border:none;border-radius:999px;width:38px;height:38px;font-size:1.6rem;position:absolute;top:14px;right:14px}@media (max-width:900px){.research-top{padding:0 20px}.research-top-inner{padding:26px 22px}.research-projects-wrap{padding:0 20px 56px}.enhanced-research-card{padding:22px}.enhanced-preview-row{grid-template-columns:1fr}.enhanced-research-content h2{font-size:1.9rem}}.contact-page-custom{padding-top:36px}.contact-top{max-width:1200px;margin:0 auto 40px;padding:0 32px}.contact-top-inner{background:linear-gradient(#f9fbff 0%,#fff 100%);border:1px solid #e3e8f0;border-radius:28px;padding:36px;box-shadow:0 10px 30px #0f172a0d}.contact-kicker{letter-spacing:.08em;text-transform:uppercase;color:#1e3a8a;margin:0 0 12px;font-size:.9rem;font-weight:700}.contact-top h1{color:#0f172a;margin:0 0 18px;font-size:clamp(2.7rem,5vw,4rem);line-height:1.05}.contact-lead{color:#334155;max-width:780px;margin:0 0 14px;font-size:1.06rem;line-height:1.9}.contact-lead-secondary{color:#1e3a8a;margin:0;font-size:1rem;font-weight:600;line-height:1.8}.contact-content-wrap{grid-template-columns:1.3fr .7fr;gap:28px;max-width:1200px;margin:0 auto;padding:0 32px 72px;display:grid}.contact-card-main,.contact-card-side{background:#fff;border:1px solid #e3e8f0;border-radius:28px;padding:30px;box-shadow:0 10px 28px #0f172a0d}.contact-card-main h2,.contact-card-side h3{color:#0f172a;margin-top:0;margin-bottom:14px}.contact-card-main p,.contact-card-side p{color:#334155;line-height:1.85}.contact-info-list{flex-direction:column;gap:18px;margin-top:26px;display:flex}.contact-info-item{background:#f8fbff;border:1px solid #e3e8f0;border-radius:20px;padding:18px 20px}.contact-label{letter-spacing:.04em;text-transform:uppercase;color:#1e3a8a;margin-bottom:8px;font-size:.9rem;font-weight:700;display:block}.contact-value{color:#0f172a;word-break:break-word;font-size:1.05rem;font-weight:600}.contact-actions{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}@media (max-width:900px){.contact-top{padding:0 20px}.contact-top-inner{padding:26px 22px}.contact-content-wrap{grid-template-columns:1fr;padding:0 20px 56px}.contact-card-main,.contact-card-side{padding:24px}}.zoom-modal-backdrop{z-index:4000;background:#0f172ad1;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.zoom-modal{background:#fff;border:1px solid #e3e8f0;border-radius:28px;flex-direction:column;width:100%;max-width:1200px;height:85vh;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 50px #0f172a33}.zoom-close-btn{color:#0f172a;cursor:pointer;z-index:5;background:#f5f8fc;border:none;border-radius:999px;width:42px;height:42px;font-size:1.8rem;position:absolute;top:14px;right:14px}.zoom-toolbar{background:#f9fbff;border-bottom:1px solid #e3e8f0;align-items:center;gap:10px;padding:16px 20px;display:flex}.zoom-toolbar button{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #d9e2ec;border-radius:999px;padding:8px 14px;font-weight:600}.zoom-toolbar span{color:#1e3a8a;text-align:center;min-width:52px;font-weight:700}.zoom-stage{-webkit-user-select:none;user-select:none;background:#fff;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.zoom-stage.dragging{cursor:grabbing}.zoom-image-wrap{will-change:transform;transition:transform 80ms}.zoom-image{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:auto;max-width:100%;height:auto;max-height:calc(85vh - 80px);display:block}@media (max-width:640px){.zoom-modal{border-radius:20px;height:80vh}.zoom-toolbar{flex-wrap:wrap;gap:8px}.zoom-toolbar button{padding:7px 12px}}
