/* Bomal's second edition: technical clarity, editorial scale, electric blue. */
:root{--bg:#080a0f;--surface:#11141c;--surface-2:#1a2030;--text:#f2f4f8;--muted:#a0a9b9;--accent:#83a9ff;--line:#242b3a;--glow:#2766e923;--heading:'DM Sans',Arial,sans-serif}
body{background:var(--bg);transition:background .25s,color .25s}body:before{content:'';pointer-events:none;position:absolute;inset:0 0 auto;height:1000px;background:radial-gradient(ellipse at 48% 25%,var(--glow),transparent 65%);z-index:-1}.site-header{position:sticky;top:20px;height:76px;width:min(1120px,calc(100% - 48px));border:1px solid var(--line);border-radius:50px;padding:0 28px;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(24px);box-shadow:0 12px 50px #0002}.brand{font-size:23px;letter-spacing:-1px}.header-actions{gap:12px}.desktop-nav{gap:27px}.desktop-nav a{padding:7px 0;position:relative;font-size:14px;color:var(--muted)}.desktop-nav a[aria-current=true]{color:var(--text)}.desktop-nav a[aria-current=true]:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent)}.contact-link{border:0;background:var(--text);color:var(--bg);font-weight:600;padding:9px 18px}.icon-button{display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);border-radius:50%;width:40px;height:40px;font-size:22px;color:var(--text)}#quick-nav{font-size:12px;width:54px;border-radius:8px;color:var(--muted)}
.hero{display:block;text-align:center;padding-top:95px;position:relative;max-width:1184px}.hero .eyebrow{justify-content:center}.hero-badge{display:inline-flex!important;padding:10px 17px;border:1px solid var(--line);border-radius:100px;background:var(--surface);font-size:10px;letter-spacing:1.8px;margin-bottom:27px}.hero h1{font-size:clamp(60px,8.2vw,112px);font-weight:600;letter-spacing:-6px;line-height:1.12;margin-bottom:22px}.hero h1 span{color:var(--accent)}.hero-statement{font-size:clamp(29px,3.5vw,44px);line-height:1.25;letter-spacing:-1.6px;font-weight:450;margin-bottom:25px}.hero-statement br{display:none}.hero-statement span{color:var(--muted)}.hero-description{max-width:660px;margin:0 auto 30px;font-size:17px}.hero-buttons,.socials{justify-content:center}.button{border-radius:100px;padding:14px 26px;font-size:14px}.primary{background:var(--text);color:var(--bg)}.primary:hover{background:var(--accent)}.secondary{border-color:var(--line)}.socials{font-size:14px;margin-top:25px;color:var(--muted)}.hero-profile{margin:48px auto 0;max-width:730px;border:1px solid var(--line);background:linear-gradient(115deg,var(--surface),var(--bg));border-radius:18px;display:flex;align-items:center;gap:20px;padding:16px;text-align:left}.hero-profile img{height:66px;width:66px;object-fit:cover;object-position:center 22%;border-radius:13px;border:1px solid var(--line)}.hero-profile strong{font-size:15px;font-weight:500}.hero-profile p{font-size:13px;color:var(--muted);margin:4px 0 0}.hero-profile>a{font-size:13px;margin-left:auto;padding:0 15px;color:var(--accent);white-space:nowrap}.hero-profile>a span{margin-left:10px}.hero-bottom{margin-top:45px;text-align:left}.hero-bottom p,.hero-bottom a{font-size:11px}.tech-ribbon{background:transparent}.tech-ribbon span{color:var(--muted);font-size:21px}.tech-ribbon i{color:var(--accent);opacity:.5}.serif{font-family:var(--heading);font-style:normal;font-weight:500;letter-spacing:inherit}.section-heading h2{font-size:clamp(38px,4vw,58px);letter-spacing:-2.5px;font-weight:500}.eyebrow{color:var(--accent)}.content-section{padding-block:110px}.about-body p{font-size:16px}.about-body .large-copy{font-size:22px;color:var(--text)}.signature{color:var(--accent)}.achievement-strip{background:var(--surface);border-radius:16px}.achievement-strip strong{color:var(--text);font-size:36px}.achievement-strip p{font-size:14px}.project-grid{gap:28px}.project-card{background:var(--surface);border-radius:17px;transition:transform .3s,border-color .3s,box-shadow .3s}.project-card:hover{border-color:var(--accent);box-shadow:0 12px 45px var(--glow);transform:translateY(-5px)}.project-visual{height:235px;background:radial-gradient(ellipse at 50% 60%,var(--glow),transparent 80%),var(--bg)}.project-code{display:none}.architecture-preview{width:86%;display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap}.architecture-preview span{font-size:13px;color:var(--text);padding:13px 15px;border-radius:9px;border:1px solid var(--line);background:var(--surface);text-align:center;min-width:95px}.architecture-preview i{color:var(--accent);font-style:normal;font-size:21px}.architecture-preview .architecture-label{position:absolute;bottom:20px;color:var(--muted);font-size:11px;border:0;background:none;padding:0;letter-spacing:1px;min-width:0}.project-index{color:var(--muted)}.project-type{font-size:11px;letter-spacing:1px;line-height:1.7}.project-card h3{font-size:28px;letter-spacing:-1px}.project-card p{font-size:16px;min-height:112px;color:var(--muted)}.project-info{padding:28px}.tags span{background:var(--surface-2);border-color:var(--line);color:var(--muted);font-size:12px}.project-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.detail-button{background:none;border:0;border-bottom:1px solid var(--accent);padding:4px 0;color:var(--accent);font-size:14px}.project-link{font-size:14px}.project-filters button{font-size:14px;background:var(--surface)}.project-filters button.active{color:var(--bg)}.skills-section{background:var(--surface)}.skills-section .content-section{display:block}.skills-section .section-heading{max-width:650px}.section-intro{max-width:540px;font-size:16px}.skill-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.skill-group{padding:26px;background:var(--bg);border:1px solid var(--line);border-radius:14px}.skill-group h3{font-size:17px;color:var(--text)}.skill-group p{font-size:15px;color:var(--muted)}.skill-group h3 span{color:var(--accent)}.growth-panel{border-radius:16px}.growth-panel h3{font-size:16px}.growth-panel p,.timeline p{font-size:15px;color:var(--muted)}.timeline .institution{color:var(--text)}.timeline h3{font-size:24px}.timeline-label{font-size:12px}.academic-results summary,.academic-results dl div{font-size:14px}.academic-results dt{color:var(--text)}.people-grid article{border-radius:16px;background:var(--surface)}.people-grid .hosting-card{background:linear-gradient(150deg,var(--surface-2),var(--surface));border-color:var(--line)}.people-grid h3{font-size:23px}.people-grid p{font-size:16px}.people-icon{font-size:14px}.small-tag{font-size:11px;color:var(--accent)}.contact-section{background:radial-gradient(ellipse at 20% 70%,var(--glow),transparent 70%),var(--surface);color:var(--text);border-block:1px solid var(--line);padding-block:100px}.contact-section .eyebrow,.contact-section .serif{color:var(--accent)}.contact-section h2{font-size:clamp(55px,7vw,96px)}.contact-bottom{border-color:var(--line)}.contact-bottom p{color:var(--muted);font-size:16px}.contact-email{color:var(--text)}.contact-socials button{border-color:var(--line);color:var(--text);font-size:14px}.contact-socials #copy-status{color:var(--accent)}footer p,footer>a:last-child{font-size:13px}.reading-progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);width:0;z-index:100;box-shadow:0 0 12px var(--accent)}
dialog{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:38px;max-height:85vh;overflow:auto;box-shadow:0 30px 100px #0007}dialog::backdrop{background:#04060dcc;backdrop-filter:blur(9px)}.detail-dialog{width:min(800px,calc(100% - 32px))}.dialog-close{border:1px solid var(--line);background:var(--surface-2);color:var(--text);width:36px;height:36px;border-radius:50%;font-size:24px;line-height:1;flex-shrink:0}.detail-dialog>.dialog-close{float:right;position:sticky;top:0}.detail-dialog h2{font-size:42px;letter-spacing:-1.5px;margin:12px 45px 20px 0;line-height:1.15}.detail-dialog h3{font-size:18px;margin-top:25px;color:var(--accent)}.detail-dialog p,.detail-dialog li{font-size:16px;color:var(--muted)}.detail-dialog ul{padding-left:20px}.detail-dialog .architecture-preview{padding:30px 0;width:100%;border-block:1px solid var(--line);margin-top:24px}.detail-dialog .architecture-preview .architecture-label{display:none}.detail-meta{font-size:12px;letter-spacing:1.3px;color:var(--accent);text-transform:uppercase}.detail-note{border-left:2px solid var(--accent);padding-left:16px;margin-top:24px;font-size:14px!important}.navigation-dialog{width:min(510px,calc(100% - 32px));padding:25px}.navigation-top{display:flex;justify-content:space-between;align-items:center}.navigation-top h2{font-size:26px;margin:0;letter-spacing:-1px}.navigation-dialog>p{color:var(--muted);font-size:14px;margin-top:10px}.quick-links{margin-top:20px}.quick-links a{padding:13px 15px;display:flex;justify-content:space-between;border-radius:7px;font-size:16px}.quick-links a:hover,.quick-links a:focus-visible{background:var(--surface-2)}.quick-links span{color:var(--accent);font-size:12px}.keyboard-note{border-top:1px solid var(--line);padding-top:17px;margin-bottom:0}.mobile-nav{border-radius:18px;inset:calc(100% + 10px) 0 auto;background:var(--surface)}
html[data-theme=light]{color-scheme:light;--bg:#f6f8fc;--surface:#fff;--surface-2:#edf2fc;--text:#172035;--muted:#57647a;--accent:#255bc6;--line:#dce3ef;--glow:#5189f019}html[data-theme=light] .about-signature>span:last-child,html[data-theme=light] .project-source-note{color:var(--muted)}html[data-theme=light] .hero-profile{background:var(--surface)}html[data-theme=light] .skip-link{color:white}
@media(max-width:1000px){.site-header{padding-inline:22px}.desktop-nav{gap:18px}.header-actions{gap:9px}#quick-nav{display:none}.hero h1{font-size:clamp(60px,8.5vw,92px);letter-spacing:-4px}.project-card p{min-height:140px}.skill-grid{grid-template-columns:repeat(2,1fr)}.section-heading h2{font-size:44px}}
@media(max-width:620px){.site-header{top:12px;width:calc(100% - 24px);height:66px;padding:0 18px}.brand{font-size:21px}.header-actions{gap:10px}.icon-button{width:34px;height:34px}.menu-toggle{width:34px;height:34px;border-radius:50%;background:var(--surface)}.hero{padding-top:70px}.hero-badge{font-size:9px;line-height:1.7;letter-spacing:1px;max-width:330px;padding:9px 15px}.hero h1{font-size:clamp(51px,13vw,78px);letter-spacing:-3px}.hero h1 span{display:block}.hero-statement{font-size:28px;letter-spacing:-1px}.hero-statement br{display:block}.hero-description{font-size:16px;line-height:1.85}.hero-description br{display:none}.hero-buttons{gap:12px}.button{padding:12px 19px;font-size:13px}.hero-profile{padding:13px;gap:13px;margin-top:35px;flex-wrap:wrap}.hero-profile img{width:54px;height:60px}.hero-profile strong{font-size:13px}.hero-profile p{font-size:12px;max-width:230px}.hero-profile>a{margin-left:67px;font-size:13px;padding:0}.hero-bottom{margin-top:35px}.hero-bottom p,.hero-bottom a{font-size:9px}.content-section{padding-block:70px}.section-heading h2{font-size:37px;letter-spacing:-1.5px}.about-body .large-copy{font-size:20px}.achievement-strip strong{font-size:32px}.project-visual{height:190px}.architecture-preview{gap:7px;width:92%}.architecture-preview span{min-width:75px;font-size:11px;padding:11px 9px}.architecture-preview i{font-size:16px}.project-info{padding:24px}.project-card p{min-height:0}.project-card h3{font-size:27px}.skill-grid{grid-template-columns:1fr;gap:15px;margin-top:25px}.skill-group{padding:24px}.contact-section{padding-block:70px}.contact-section h2{font-size:60px}.contact-email{font-size:19px}.detail-dialog{padding:25px}.detail-dialog h2{font-size:32px}.detail-dialog .architecture-preview{gap:6px}.people-grid h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){body{transition:none}.project-card:hover{transform:none}}

.achievement-strip p,.hero-bottom p,.hero-bottom a,.academic-results .results-note,.about-signature>span:last-child{color:var(--muted)}body:has(dialog[open]){overflow:hidden}@media(max-width:620px){html{scroll-padding-top:100px}}
