@import"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap";html{scroll-behavior:smooth;box-sizing:border-box}body{margin:0;padding:0;font-family:Roboto,sans-serif;letter-spacing:1px;background:var(--page-gradient);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}main{padding-top:5rem}:root{--accent: #1da1f2;--accent-strong: #1a8cd8;--accent-soft: rgba(29, 161, 242, .15);--bgcolor1: #f9fafb;--bgcolor2: #f2f3f6;--bgcolor3: #f1f5f9;--page-gradient: radial-gradient( circle at 115% -15%, rgba(29, 161, 242, .12) 0%, rgba(29, 161, 242, .04) 20%, rgba(255, 255, 255, 0) 45% ), radial-gradient( circle at -15% 115%, rgba(29, 161, 242, .08) 0%, rgba(29, 161, 242, .03) 18%, rgba(255, 255, 255, 0) 42% ), #ffffff;--text1: var(--accent);--text-primary: #0f172a;--text-secondary: #475569;--text2: #64748b;--hvrblue1: var(--accent);--hvrblue2: var(--accent-strong);--bglight: linear-gradient( 10deg, rgba(29, 161, 242, .05) 0%, rgba(255, 255, 255, 1) 50%, rgba(29, 161, 242, .05) 100% );--dbg: #020617;--dtext1: #f8fafc;--dtext2: #cbd5f5;--surface-card: #ffffff;--surface-muted: #f9fafb;--border-muted: rgba(148, 163, 184, .25)}body.dark{--page-gradient: radial-gradient(circle at top right, #0b1220 0%, #010512 55%);--text-primary: var(--dtext1);--text-secondary: var(--dtext2);--text2: var(--dtext2);--bgcolor1: rgba(15, 23, 42, .65);--bgcolor2: rgba(15, 23, 42, .4);--bgcolor3: rgba(15, 23, 42, .35);--surface-card: #0b1220;--surface-muted: #111a2e;--border-muted: rgba(94, 114, 168, .45);--accent-soft: rgba(29, 161, 242, .22);background:var(--page-gradient);color:var(--text-primary);color-scheme:dark}*{transition:background-color .3s ease,color .3s ease}.navbar{position:fixed;top:0;z-index:50;width:100%;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-muted)}body.dark .navbar{background:#020617e6;border-bottom:1px solid var(--border-muted)}.nav-container{background:var(--surface-muted);max-width:1440px;margin:0 auto;padding:1rem 2rem;width:100%;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;border-bottom:none}.logo{font-weight:600;font-size:1.1rem;color:var(--text-primary);letter-spacing:.5px;text-decoration:none}.nav-links{color:var(--text-primary);display:flex;gap:1.5rem;align-items:center;font-size:.8rem;font-weight:600;transition:color .3s ease}.nav-links a{text-decoration:none;color:var(--text-primary);padding:.5rem 0;transition:color .3s ease}.nav-links a:hover{color:var(--hvrblue1)}.nav-links a.active{color:var(--accent)}body.dark .nav-container{background:transparent}body.dark .logo,body.dark .nav-links,body.dark .menu-toggle{color:var(--text-primary)}.menu-toggle{display:none;background:none;border:none;color:inherit;cursor:pointer}@media (max-width: 768px){.menu-toggle{display:flex;font-size:1.5rem;cursor:pointer;margin-left:auto;transition:color .3s ease;-webkit-transition:color .3s ease;-moz-transition:color .3s ease;-ms-transition:color .3s ease;-o-transition:color .3s ease}.nav-container{flex-direction:column;align-items:flex-start;position:relative;gap:1rem}.nav-links{flex-direction:column;gap:.5rem;margin-top:.5rem;width:100%;display:none;align-items:flex-start}.nav-links.open{display:flex}}.theme-toggle{background:none;border:none;cursor:pointer;color:inherit;transition:color .3s ease}.hero{padding:7rem 1.5rem 4rem;max-width:1150px;margin:0 auto;min-height:90vh;display:flex;align-items:center}.hero-div{display:flex;max-width:720px;flex-direction:column;align-items:flex-start;justify-content:center;margin:0 auto;transform:translate(-2.5rem,-5.25rem)}.hero-div h1{color:var(--text1);font-size:3.5rem;font-weight:800;margin:0}.hero-div h2{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0 0 1rem}.hero-div p{font-size:1.1rem;color:var(--text2);opacity:.9;text-align:left;margin-bottom:1.75rem;max-width:650px}.hero-buttons{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}@media (max-width: 640px){.hero-div{transform:none;margin:0 auto}}.btn-primary{display:flex;align-items:center;text-decoration:none;gap:.5rem;background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:#fff;padding:.75rem 1.5rem;font-weight:400;font-size:.9rem;border:none;cursor:pointer;transition:.5 ease-in-out;-webkit-transition:.5 ease-in-out;-moz-transition:.5 ease-in-out;-ms-transition:.5 ease-in-out;-o-transition:.5 ease-in-out;border-radius:.5rem;-webkit-border-radius:.5rem;-moz-border-radius:.5rem;-ms-border-radius:.5rem;-o-border-radius:.5rem}.btn-primary:hover{box-shadow:0 10px 24px #1da1f259;transform:translateY(-1px)}.btn-secondary{display:flex;align-items:center;text-decoration:none;gap:.5rem;background-color:var(--surface-muted);color:var(--text-secondary);padding:.75rem 1.5rem;font-weight:400;font-size:.9rem;border:1px solid var(--border-muted);cursor:pointer;transition:.3s ease-in-out;-webkit-transition:.3s ease-in-out;-moz-transition:.3s ease-in-out;-ms-transition:.3s ease-in-out;-o-transition:.3s ease-in-out;border-radius:.5rem;-webkit-border-radius:.5rem;-moz-border-radius:.5rem;-ms-border-radius:.5rem;-o-border-radius:.5rem}.btn-secondary:hover{background-color:var(--accent-soft);border-color:var(--accent);color:var(--text-primary)}.about-section{margin:0 auto;padding:8rem 1.25rem;max-width:1100px}.about-me{text-align:center;margin-bottom:1rem}.about-title{font-size:2rem;font-weight:800;color:var(--text-primary);margin-bottom:.35rem}.about-subtitle{font-size:1.1rem;color:var(--text2);margin:0 0 1.5rem}.about-card{position:relative;background:var(--surface-card);border:1px solid var(--border-muted);border-radius:18px;box-shadow:0 1px 2px #0f172a0f,0 10px 30px #0f172a0f;overflow:hidden}.about-card-strip{position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--accent),var(--accent-strong));display:block}.about-card-body{padding:45px}.about-description{color:var(--text-secondary);font-size:.95rem;line-height:1.5rem;margin:0 0 12px}.about-features{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:14px}@media (min-width: 768px){.about-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}.feature{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:12px 14px;padding:14px 16px;border-radius:14px;background:color-mix(in oklab,var(--surface-card) 85%,rgba(15,23,42,.06));transition:transform .18s ease,box-shadow .18s ease,background .18s ease;-webkit-transition:transform .18s ease,box-shadow .18s ease,background .18s ease;-moz-transition:transform .18s ease,box-shadow .18s ease,background .18s ease;-ms-transition:transform .18s ease,box-shadow .18s ease,background .18s ease;-o-transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.feature:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a14;background:color-mix(in oklab,var(--surface-card) 80%,rgba(15,23,42,.1))}.feature-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff}.feature-title{margin:0;font-weight:700;font-size:1rem;color:var(--text-primary)}.feature-desc{grid-column:2 / -1;margin:-2px 0 0;font-size:.92rem;line-height:1.6;color:var(--text-secondary)}@media (prefers-reduced-motion: reduce){.feature{transition:none}.feature:hover{transform:none}}.skills-section{max-width:1100px;margin:0 auto;padding:5rem 1.5rem 6rem}.skills-title{font-size:2.2rem;font-weight:800;color:var(--text-primary);text-align:center;margin-bottom:3.5rem}.skills-list{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;list-style:none;padding:0;margin:0}.skill-item{padding:.4rem 1.1rem;border-radius:999px;font-weight:600;font-size:.95rem;border:1px solid transparent}.tone-rose{background:#fee2f7;color:#a21c78;border-color:#a21c7826}.tone-lilac{background:#f1e5ff;color:#6d28d9;border-color:#6d28d926}.tone-lavender{background:#e2e8ff;color:#3730a3;border-color:#3730a31f}.tone-mint{background:#e0f7ec;color:#047857;border-color:#0478571f}.tone-sun{background:#fef3c7;color:#b45309;border-color:#b4530926}.skill-item:hover{transform:translateY(-1px);box-shadow:0 10px 18px #0f172a14}.projects-section{max-width:1100px;margin:0 auto;padding:5rem 1.5rem}.projects-title{font-size:2.25rem;font-weight:800;text-align:center;margin-bottom:2rem;color:var(--text-primary)}.projects-list{display:flex;flex-direction:column;gap:1.5rem}.project-card{background:var(--surface-card);border-radius:22px;padding:2rem;box-shadow:0 20px 45px #0f172a14;border:1px solid var(--border-muted);display:flex;flex-direction:column;gap:1.25rem}.project-type{font-size:.9rem;font-weight:600;color:var(--text2);margin:0 0 .35rem}.project-name{margin:0;font-size:1.35rem;color:var(--text-primary)}.project-description{margin:.75rem 0 1.25rem;color:var(--text-secondary);line-height:1.7}.project-tags{display:flex;flex-wrap:wrap;gap:.65rem}.project-tag{background:#1da1f214;color:var(--accent-strong);font-size:.85rem;padding:.35rem .8rem;border-radius:999px;font-weight:500}.project-cta{align-self:flex-start;display:inline-flex;gap:.4rem;align-items:center;text-decoration:none;color:#fff;background:linear-gradient(120deg,var(--accent),var(--accent-strong));padding:.75rem 1.5rem;border-radius:999px;font-weight:600}.project-cta:hover{box-shadow:0 15px 30px #1da1f259}@media (min-width: 768px){.project-card{flex-direction:row;align-items:center;justify-content:space-between}.project-card>div{flex:1;margin-right:1.5rem}}.publications{max-width:1200px;margin:0 auto;padding:6rem 1.5rem 5rem}.publications-header{text-align:center;max-width:720px;margin:0 auto 2rem}.publications-header h2{font-size:2rem;font-weight:800;color:var(--text-primary);margin-bottom:.5rem}.publications-header p{color:var(--text2);font-size:1rem;margin:0}.publications-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.article-card{background:var(--surface-card);border-radius:18px;padding:1.5rem;box-shadow:0 15px 35px #0f172a14;display:flex;flex-direction:column;gap:.85rem;border:1px solid var(--border-muted)}.article-meta{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--text2)}.article-card h3{margin:0;font-size:1.05rem;color:var(--text-primary)}.article-card p{margin:0;color:var(--text-secondary);line-height:1.6;flex-grow:1}.article-link{margin-top:auto;display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--accent-strong);text-decoration:none;border:1px solid rgba(29,161,242,.3);padding:.55rem 1rem;border-radius:999px;width:fit-content}.article-link:hover{background:var(--accent-soft)}@media (max-width: 600px){.publications{padding:4rem 1rem}}.contact{max-width:1100px;margin:0 auto 5rem;padding:6rem 1.5rem 3rem}.contact-header{text-align:center;margin-bottom:1.5rem}.contact-header h2{font-size:2rem;font-weight:800;color:var(--text-primary);margin-bottom:.45rem}.contact-header p{color:var(--text2);margin:0}.contact-card{position:relative;border-radius:22px;background:var(--surface-card);box-shadow:0 20px 50px #0f172a14;border:1px solid var(--border-muted)}.contact-card-strip{position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--accent),var(--accent-strong))}.contact-card-body{padding:3rem}.contact-card-body h3{margin:0;font-size:1.35rem;color:var(--text-primary)}.contact-card-body p{margin:.5rem 0 2rem;color:var(--text-secondary)}.channel-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.channel-item{display:flex;gap:1rem;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--border-muted)}.channel-item:last-child{border-bottom:none}.channel-icon{width:44px;height:44px;border-radius:14px;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center}.channel-label{font-weight:600;margin:0 0 .25rem;color:var(--text-primary)}.channel-item a{color:var(--text2);text-decoration:none}.channel-item a:hover{color:var(--accent-strong)}@media (max-width: 640px){.contact-card-body{padding:2rem 1.5rem}.channel-item{flex-direction:column;align-items:flex-start}}.footer{padding:1.5rem 1rem 2rem;background-color:transparent;border-top:1px solid var(--border-muted);transition:background-color .3s ease}.footer-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer-text{font-size:.9rem;color:var(--text-secondary)}.footer-links{display:flex;gap:1rem;justify-content:center;align-items:center}.footer-links a{color:var(--text-secondary);transition:color .3s ease}.footer-links a:hover{color:var(--accent)}@media (max-width: 640px){.footer-container{flex-direction:column;text-align:center}}
