*,:before,:after{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--scroll-progress:0;--hero-shift:0px;--bg:#050607;--bg-elevated:#0c1014;--panel:#0e1217d1;--panel-strong:#111820;--text:#f4f7f8;--muted:#9aa8ad;--soft:#d7e2e6;--line:#ffffff1c;--accent:#33e6c4;--accent-2:#e6ff5c;--accent-3:#ff6b9d;--danger:#ff5f73;--success:#35e58b;--shadow:0 24px 80px #00000057;--radius:8px}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8f7;--bg-elevated:#fff;--panel:#ffffffe0;--panel-strong:#fff;--text:#111719;--muted:#667277;--soft:#2d3a3f;--line:#11171921;--accent:#008f7c;--accent-2:#7b8f00;--accent-3:#c73067;--danger:#ca2444;--success:#007f45;--shadow:0 24px 80px #1623291f}html{scroll-behavior:smooth;background:var(--bg)}body{min-height:100vh;color:var(--text);background:linear-gradient(90deg, #33e6c40a 1px, transparent 1px), linear-gradient(0deg, #ffffff09 1px, transparent 1px), var(--bg);-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;background-size:80px 80px,80px 80px,auto;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.site-shell{width:min(1500px,100%);margin:0 auto;padding:20px clamp(16px,3vw,42px) 40px;position:relative}.scroll-progress{z-index:80;width:calc(var(--scroll-progress) * 100vw);background:linear-gradient(90deg, var(--accent), var(--accent-2), var(--accent-3));height:3px;box-shadow:0 0 24px color-mix(in srgb, var(--accent) 55%, transparent);pointer-events:none;position:fixed;inset:0 auto auto 0}.site-field{z-index:-1;pointer-events:none;opacity:.6;background:linear-gradient(135deg, transparent 0 44%, #33e6c41a 44% 44.35%, transparent 44.35% 100%), linear-gradient(35deg, transparent 0 60%, #ff6b9d12 60% 60.35%, transparent 60.35% 100%), repeating-linear-gradient(115deg, transparent 0 108px, color-mix(in srgb, var(--accent) 6%, transparent) 108px 109px, transparent 109px 220px);position:fixed;inset:0}.topbar{z-index:20;border:1px solid var(--line);background:color-mix(in srgb, var(--bg-elevated) 86%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:18px;padding:10px;display:flex;position:sticky;top:14px}.nav-panel{flex:1;justify-content:space-between;align-items:center;gap:18px;display:flex}.menu-button{border:1px solid var(--line);background:var(--panel);min-width:112px;min-height:46px;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-weight:900;display:none}.menu-button i{width:22px;height:14px;position:relative}.menu-button i:before,.menu-button i:after{content:"";background:currentColor;width:22px;height:2px;transition:transform .25s,top .25s;position:absolute;right:0}.menu-button i:before{top:2px}.menu-button i:after{top:10px}.topbar.is-open .menu-button i:before{top:7px;transform:rotate(42deg)}.topbar.is-open .menu-button i:after{top:7px;transform:rotate(-42deg)}.brand-mark,.login-mark{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 38%, transparent), transparent), var(--panel-strong);width:48px;height:48px;color:var(--text);letter-spacing:0;place-items:center;font-weight:900;display:grid}.topnav{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.topnav a,.locale-button,.theme-switch button{min-height:40px;color:var(--muted);background:0 0;border:1px solid #0000;font-size:.88rem}.topnav a{align-items:center;padding:0 12px;display:inline-flex}.topnav a:hover,.locale-button:hover,.theme-switch button:hover,.theme-switch button.active{border-color:var(--line);color:var(--text);background:color-mix(in srgb, var(--accent) 12%, transparent)}.control-cluster,.theme-switch{align-items:center;gap:6px;display:flex}.theme-switch{border:1px solid var(--line);background:color-mix(in srgb, var(--panel-strong) 78%, transparent);padding:4px}.theme-switch button{padding:0 10px}.locale-button{border-color:var(--line);background:var(--panel);padding:0 14px;font-weight:800}.hero-section{align-items:center;min-height:calc(100vh - 90px);padding:clamp(48px,8vw,110px) 0 clamp(32px,5vw,72px);display:grid;position:relative}.hero-kinetic{pointer-events:none;height:min(52vw,620px);transform:translateY(var(--hero-shift));opacity:.9;position:absolute;inset:18% 0 auto}.kinetic-line,.kinetic-panel{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);display:block;position:absolute}.kinetic-line{width:42vw;max-width:620px;height:42vw;max-height:620px;animation:13s ease-in-out infinite alternate kineticDrift;transform:rotate(45deg)}.kinetic-line.line-a{top:-12%;right:6%}.kinetic-line.line-b{border-color:color-mix(in srgb, var(--accent-3) 22%, transparent);animation-duration:17s;animation-direction:alternate-reverse;bottom:-18%;left:-8%}.kinetic-panel{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 8%, transparent), transparent), repeating-linear-gradient(90deg, transparent 0 18px, color-mix(in srgb, var(--text) 7%, transparent) 18px 19px);width:min(34vw,410px);height:min(16vw,190px);animation:9s ease-in-out infinite alternate panelScan;bottom:6%;right:22%;transform:skewY(-10deg)}@keyframes kineticDrift{0%{transform:rotate(45deg)translate(-10px,18px)}to{transform:rotate(45deg)translate(28px,-22px)}}@keyframes panelScan{0%{clip-path:inset(0 18% 0 0);transform:skewY(-10deg)translate(-16px)}to{clip-path:inset(0 0 0 22%);transform:skewY(-10deg)translate(22px)}}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(28px,5vw,80px);display:grid}.eyebrow,.section-kicker,.hero-role,.project-topline,.timeline-item span,.compact-card span,.article-card span,.admin-topline p{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-size:.76rem;font-weight:900}.hero-copy h1{letter-spacing:0;text-wrap:balance;max-width:900px;transform:translateY(calc(var(--hero-shift) * -.28));margin:12px 0 0;font-size:clamp(4.4rem,13vw,12rem);line-height:.78}.hero-role{color:var(--accent-2);margin:26px 0 0}.hero-headline{max-width:760px;color:var(--soft);margin:20px 0 0;font-size:clamp(1.05rem,2vw,1.55rem);line-height:1.55}.hero-actions,.project-actions,.message-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.primary-action,.secondary-action,.project-actions a,.article-card a,.admin-save-button,.admin-ghost-button,.collection-heading button,.message-actions button,.admin-message-toolbar button,.login-form button{border:1px solid var(--line);background:var(--text);min-height:46px;color:var(--bg);justify-content:center;align-items:center;padding:0 18px;font-weight:900;display:inline-flex}.secondary-action,.project-actions a,.article-card a,.admin-ghost-button,.collection-heading button,.message-actions button,.admin-message-toolbar button{color:var(--text);background:0 0}.primary-action:hover,.admin-save-button:hover,.login-form button:hover{background:var(--accent);color:#001412}.secondary-action:hover,.project-actions a:hover,.article-card a:hover,.admin-ghost-button:hover,.collection-heading button:hover,.message-actions button:hover,.admin-message-toolbar button:hover{border-color:var(--accent);color:var(--accent)}.identity-panel{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);transform:translateY(calc(var(--hero-shift) * .18));padding:clamp(18px,3vw,28px);position:relative}.identity-panel:before{content:"";border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);pointer-events:none;position:absolute;inset:12px}.portrait-wrap{aspect-ratio:1;border:1px solid var(--line);background:var(--panel-strong);position:relative;overflow:hidden}.portrait-wrap img{object-fit:cover;filter:saturate(.92)contrast(1.08);width:100%;height:100%}.portrait-ring{border:1px solid #ffffff6b;position:absolute;inset:18px}.identity-meta{margin-top:18px;position:relative}.identity-meta p,.about-copy p,.timeline-item p,.project-card p,.article-card p,.contact-copy p,.compact-card p{color:var(--muted);line-height:1.7}.availability-line{color:var(--accent-2);margin-top:14px;font-weight:800}.stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;display:grid}.stat-tile{border:1px solid var(--line);background:color-mix(in srgb, var(--panel-strong) 70%, transparent);min-width:0;padding:12px}.stat-tile strong{font-size:clamp(1.1rem,2vw,1.5rem);display:block}.stat-tile span{color:var(--muted);margin-top:4px;font-size:.76rem;display:block}.content-section{border-top:1px solid var(--line);padding:clamp(54px,8vw,100px) 0}.about-layout,.split-section,.contact-section{grid-template-columns:minmax(240px,.72fr) minmax(0,1fr);align-items:start;gap:clamp(24px,5vw,70px);display:grid}.section-heading h2,.section-title-row h2,.contact-copy h2,.admin-topline h1,.login-panel h1{letter-spacing:0;margin:10px 0 0;font-size:clamp(2rem,4.6vw,5.8rem);line-height:.95}.about-copy p:first-child{margin-top:0}.highlight-strip,.tag-row,.contact-links{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.highlight-strip span,.tag-row span,.contact-links a,.contact-links span{border:1px solid var(--line);color:var(--soft);background:color-mix(in srgb, var(--panel-strong) 58%, transparent);padding:8px 10px;font-size:.86rem}.skill-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.skill-chip,.compact-card,.article-card,.project-card,.timeline-item{border:1px solid var(--line);background:var(--panel)}.skill-chip{min-height:112px;transform:translateY(calc(var(--stagger,0) * 1px));padding:14px;transition:border-color .25s,transform .25s,background .25s}.skill-chip:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--panel));transform:translateY(-6px)}.skill-chip span{font-weight:900;display:block}.skill-chip small{color:var(--muted);margin-top:6px;display:block}.skill-meter{background:color-mix(in srgb, var(--muted) 20%, transparent);height:4px;margin-top:18px}.skill-meter span{background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%}.timeline{gap:14px;margin-top:22px;display:grid}.timeline-item{padding:22px;transition:transform .28s,border-color .28s;position:relative;overflow:hidden}.timeline-item:before{content:"";background:linear-gradient(var(--accent), var(--accent-3));width:3px;position:absolute;inset:0 auto 0 0}.timeline-item h3,.compact-card h3,.project-card h3,.article-card h3,.message-card h3{margin:8px 0 0;font-size:clamp(1.18rem,2vw,1.55rem)}.timeline-item:hover,.compact-card:hover,.article-card:hover,.project-card:hover{border-color:color-mix(in srgb, var(--accent) 70%, var(--line));transform:translateY(-8px)}.compact-card,.article-card,.project-card{transition:transform .28s,border-color .28s,background .28s}.muted{color:var(--muted)}.education-stack{gap:14px;display:grid}.compact-card{padding:18px}.course-kicker{margin-top:18px}.section-title-row{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.section-title-row p{max-width:360px;color:var(--muted);text-align:right}.project-grid,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.project-card,.article-card{min-height:310px;padding:24px;position:relative;overflow:hidden}.project-card.has-media,.article-card.has-media{padding-top:18px}.project-media,.article-media{aspect-ratio:16/9;border:1px solid var(--line);background:var(--panel-strong);margin:-2px -2px 18px;position:relative;overflow:hidden}.project-media img,.article-media img{object-fit:cover;filter:saturate(.96)contrast(1.06);width:100%;height:100%;transition:transform .55s,filter .55s;display:block}.project-card:hover .project-media img,.article-card:hover .article-media img{filter:saturate(1.08)contrast(1.1);transform:scale(1.045)}.project-card:before,.article-card:before{content:"";background:linear-gradient(115deg, transparent 0 42%, color-mix(in srgb, var(--accent) 18%, transparent) 42% 43%, transparent 43% 100%);transition:transform .55s;position:absolute;inset:0;transform:translate(-120%)}.project-card:hover:before,.article-card:hover:before{transform:translate(120%)}.project-card>*,.article-card>*{z-index:1;position:relative}.project-index{z-index:0;color:color-mix(in srgb, var(--text) 6%, transparent);font-size:clamp(5rem,12vw,10rem);font-weight:900;line-height:.8;position:absolute;bottom:12px;right:18px}.project-card.featured{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 16%, transparent), transparent 54%), var(--panel)}.project-topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-topline strong{color:var(--accent-2)}.article-card{min-height:240px}.article-card a{margin-top:18px}.article-card small{color:var(--accent-3);font-weight:800;display:block}.contact-section{align-items:stretch}.contact-form,.login-form{border:1px solid var(--line);background:var(--panel);gap:14px;padding:clamp(18px,3vw,28px);display:grid}.hp-field{opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}label{gap:8px;display:grid}label span{color:var(--muted);font-size:.84rem;font-weight:800}input,textarea{border:1px solid var(--line);background:color-mix(in srgb, var(--bg-elevated) 74%, transparent);width:100%;color:var(--text);resize:vertical;border-radius:0;outline:none;padding:13px 12px}input:focus,textarea:focus{border-color:var(--accent)}.form-status,.admin-notice{border:1px solid var(--line);color:var(--muted);margin:0;padding:12px}.form-status.success,.admin-notice.success{border-color:color-mix(in srgb, var(--success) 60%, var(--line));color:var(--success)}.form-status.error,.admin-notice.error{border-color:color-mix(in srgb, var(--danger) 60%, var(--line));color:var(--danger)}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:22px 0 4px;font-size:.9rem;display:flex}[data-reveal]{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(22px)}[data-reveal=left]{transform:translate(-34px)translateY(16px)}[data-reveal=right]{transform:translate(34px)translateY(16px)}[data-reveal=scale]{transform:scale(.96)translateY(22px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.login-shell,.admin-shell{min-height:100vh}.login-shell{place-items:center;padding:24px;display:grid}.login-panel{border:1px solid var(--line);background:var(--panel);width:min(460px,100%);box-shadow:var(--shadow);padding:28px}.login-panel p{color:var(--accent);text-transform:uppercase;letter-spacing:.16em;margin:18px 0 0;font-size:.76rem;font-weight:900}.login-form{background:0 0;border:0;margin-top:24px;padding:0}.admin-shell{grid-template-columns:280px minmax(0,1fr);display:grid}.admin-sidebar{border-right:1px solid var(--line);background:color-mix(in srgb, var(--bg-elevated) 86%, transparent);flex-direction:column;gap:22px;height:100vh;padding:20px;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:12px;display:flex}.admin-brand>span{background:var(--text);width:48px;height:48px;color:var(--bg);place-items:center;font-weight:900;display:grid}.admin-brand strong,.admin-brand small{display:block}.admin-brand small{color:var(--muted);margin-top:4px}.admin-tabs{gap:8px;display:grid}.admin-tabs button{border:1px solid var(--line);min-height:44px;color:var(--muted);text-align:left;background:0 0;padding:0 12px;font-weight:800}.admin-tabs button.active,.admin-tabs button:hover{border-color:var(--accent);color:var(--text);background:color-mix(in srgb, var(--accent) 10%, transparent)}.admin-ghost-button{margin-top:auto}.admin-workspace{width:min(1180px,100%);padding:clamp(18px,3vw,36px)}.admin-topline{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.admin-topline h1{font-size:clamp(2rem,5vw,4.5rem)}.admin-panel{gap:16px;display:grid}.admin-form-grid,.admin-locale-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.image-upload-field{gap:10px;min-width:0;display:grid}.image-upload-row{grid-template-columns:minmax(92px,150px) minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.image-upload-preview{aspect-ratio:16/10;border:1px solid var(--line);background:var(--panel-strong);min-height:92px;color:var(--muted);place-items:center;font-size:.78rem;display:grid;overflow:hidden}.image-upload-preview img{object-fit:cover;width:100%;height:100%;display:block}.image-upload-actions{flex-direction:column;justify-content:center;gap:8px;min-width:0;display:flex}.upload-button{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);width:fit-content;min-height:40px;color:var(--text);cursor:pointer;align-items:center;padding:0 12px;font-weight:900;display:inline-flex}.upload-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.image-upload-actions small{color:var(--muted);line-height:1.45}.upload-status.success{color:var(--success)}.upload-status.error{color:var(--danger)}.collection-heading,.admin-message-toolbar,.admin-card-header,.message-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.collection-heading h2{margin:0}.admin-edit-list,.message-list{gap:14px;display:grid}.admin-edit-card,.message-card{border:1px solid var(--line);background:var(--panel);gap:14px;padding:18px;display:grid}.admin-edit-card.compact{gap:12px}.admin-card-header h3,.message-card h3{margin:0}.admin-card-header button{border:1px solid color-mix(in srgb, var(--danger) 50%, var(--line));min-height:38px;color:var(--danger);background:0 0;padding:0 12px}.admin-checkbox{align-items:center;gap:10px;min-height:48px;display:flex}.admin-checkbox input{width:auto}.message-card.unread{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}.message-head a,.message-head span{color:var(--muted);margin-top:4px;font-size:.88rem;display:block}.message-card p{color:var(--soft);white-space:pre-wrap;margin:0;line-height:1.65}.empty-state{border:1px dashed var(--line);color:var(--muted);padding:18px}@media (max-width:1050px){.hero-grid,.about-layout,.split-section,.contact-section{grid-template-columns:1fr}.skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.section-title-row{flex-direction:column;align-items:start}.section-title-row p{text-align:left}}@media (max-width:780px){body.menu-open{overflow:hidden}.site-shell{padding-top:12px}.topbar{flex-direction:row;align-items:center;min-height:72px;position:sticky;top:0}.menu-button{margin-left:auto;display:inline-flex}.nav-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--bg-elevated) 96%, transparent);max-height:calc(100vh - 110px);box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;gap:18px;padding:16px;transition:opacity .22s,transform .22s,visibility .22s;display:grid;position:fixed;inset:88px 16px auto;overflow:auto;transform:translateY(-12px)scale(.98)}.topbar.is-open .nav-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.topnav{grid-template-columns:1fr;justify-content:stretch;gap:8px;display:grid}.topnav a{border:1px solid var(--line);background:color-mix(in srgb, var(--panel-strong) 80%, transparent);justify-content:space-between;min-height:48px}.control-cluster{flex-direction:column;align-items:stretch}.theme-switch{justify-content:space-between}.theme-switch button,.locale-button{flex:1}.hero-section{min-height:auto;padding-top:42px}.hero-kinetic{height:420px;inset:22% 0 auto}.kinetic-line{width:72vw;height:72vw}.kinetic-panel{width:66vw;height:120px;right:6%}.hero-copy h1{font-size:clamp(3.4rem,22vw,7rem)}.stat-grid,.project-grid,.article-grid,.skill-grid,.admin-form-grid,.admin-locale-grid,.admin-shell{grid-template-columns:1fr}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:relative}.admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-topline,.collection-heading,.admin-card-header,.message-head{flex-direction:column;align-items:stretch}}@media (max-width:430px){.topbar{padding:8px}.brand-mark{width:44px;height:44px}.menu-button{min-width:102px;min-height:44px}.hero-actions,.project-actions,.message-actions{flex-direction:column}.primary-action,.secondary-action,.project-actions a,.article-card a,.message-actions button{width:100%}.admin-tabs,.image-upload-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}[data-reveal]{opacity:1;transform:none}}
