@import "https://fonts.googleapis.com/css2?family=Clash+Display:wght@400;500;600;700&family=Public+Sans:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";
:root{--bg:#f4f2ec;--surface:#fff;--text:#f5f5f5;--muted:#b8b8b8;--accent:#465bd8;--border:#deddd7}*{box-sizing:border-box}html{scroll-behavior:smooth;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-padding-top:24px}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,Arial,sans-serif;transition:background-color .7s,color .7s}body[data-theme=cyan]{--bg:#0b1020;--surface:#111b30;--text:#f8fafc;--muted:#a7b7d0;--accent:#22d3ee;--border:#263b56;background:var(--bg);color:var(--text)}a{color:inherit}main#home{width:min(1100px,100% - 64px);margin-inline:auto}.site-header{z-index:10;border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:28px;min-height:76px;padding:16px 0;display:flex;position:relative}.brand{white-space:nowrap;flex-shrink:0;font-size:20px;font-weight:800;text-decoration:none}.brand span{color:var(--accent);transition:color .7s}.nav-links{justify-content:center;align-items:center;gap:26px;display:flex}.nav-links a,.social-links a,.footer a{text-decoration:none;transition:color .7s}.nav-links a{font-size:14px}.availability{flex-shrink:0;align-items:center;gap:9px;font-size:12px;text-decoration:none;display:flex}.status-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 10px color-mix(in srgb, var(--accent) 40%, transparent);border-radius:50%;flex-shrink:0;transition:background-color .7s}.hero{isolation:isolate;align-items:center;min-height:620px;padding:90px 0 100px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;filter:blur(28px);pointer-events:none;background:radial-gradient(circle,#ebebeb1f,#c8c8c80a 42%,#0000 72%);border-radius:50%;width:440px;height:440px;animation:9s ease-in-out infinite alternate ambientGlow;position:absolute;top:-80px;left:-100px}.hero:after{content:"";z-index:-1;pointer-events:none;opacity:.4;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}body[data-theme=cyan] .hero:before{background:radial-gradient(circle,#22d3ee2e,#22d3ee0f 42%,#0000 72%)}body[data-theme=cyan] .hero:after{background-image:linear-gradient(#22d3ee09 1px,#0000 1px),linear-gradient(90deg,#22d3ee09 1px,#0000 1px)}@keyframes ambientGlow{0%{transform:translate(0,0)scale(1)}to{transform:translate(75px,35px)scale(1.15)}}.hero-copy{z-index:2;width:100%;max-width:790px;position:relative}.eyebrow,.section-label{color:var(--accent);letter-spacing:.07em;font-family:monospace;font-size:12px;font-weight:700;transition:color .7s}.hero-title{letter-spacing:-.055em;text-wrap:balance;max-width:900px;margin:28px 0;font-size:clamp(46px,6.5vw,82px);font-weight:800;line-height:1.06}.hero-description{max-width:590px;color:var(--muted);margin:0;font-size:16px;line-height:1.8}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;display:flex}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:12px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .7s,border-color .7s,color .7s,transform .18s;display:inline-flex}.button-primary:hover{background:#fff;border-color:#fff}body[data-theme=cyan] .button-primary{color:#07111d}.button-secondary{color:var(--text);background:0 0;border-color:#555}.social-links{flex-wrap:wrap;gap:22px;margin-top:30px;display:flex}.social-links a{align-items:center;gap:7px;font-size:13px;font-weight:600;display:inline-flex}.hero-orbit{z-index:-1;border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);pointer-events:none;border-radius:50%;width:320px;height:320px;transition:border-color .7s;position:absolute;top:15%;right:5%}.orbit-dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 16px color-mix(in srgb, var(--accent) 50%, transparent);border-radius:50%;position:absolute}.orbit-dot-one{top:14%;left:20%}.orbit-dot-two{width:6px;height:6px;bottom:12%;right:18%}.hero-status{border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);color:var(--accent);background:color-mix(in srgb, var(--accent) 4%, transparent);border-radius:999px;align-items:center;gap:9px;padding:10px 14px;font-size:13px;transition:color .7s,border-color .7s;display:flex;position:absolute;bottom:28px;right:0}.section{border-top:1px solid #ffffff26;padding:82px 0;scroll-margin-top:30px;transition:border-color .7s;position:relative}.section-heading-row{justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:30px;display:flex}.section-title{letter-spacing:-.04em;margin:12px 0 0;font-size:clamp(30px,4vw,46px);line-height:1.15}.section-intro{max-width:410px;color:var(--muted);margin:0;line-height:1.8}.about-card,.education-card,.skill-card,.project-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 75%, transparent);border-radius:14px;transition:background-color .7s,border-color .7s}.about-card{padding:26px;line-height:1.8}.about-card>p{margin:0}.about-details{flex-wrap:wrap;gap:18px;margin-top:24px;display:flex}.about-details>div{color:var(--accent);align-items:center;gap:8px;display:flex}.project-list{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.project-card{grid-template-columns:42px minmax(0,1fr) 40px;align-items:start;gap:18px;padding:25px;display:grid}.project-card:hover,.skill-card:hover{border-color:var(--accent)}.project-number{color:var(--accent);font-family:monospace;font-size:14px}.project-content{min-width:0}.project-content h3{margin:0 0 10px;font-size:21px}.project-content p{max-width:680px;color:var(--muted);margin:0;line-height:1.7}.tag-list{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.tag{border:1px solid var(--border);color:var(--muted);background:#ffffff05;border-radius:7px;align-items:center;padding:5px 10px;font-size:12px;transition:color .7s,background-color .7s,border-color .7s;display:inline-flex}.project-link{border:1px solid var(--border);width:40px;height:40px;color:var(--accent);border-radius:10px;place-items:center;transition:color .7s,border-color .7s,background-color .7s;display:grid}.project-link:hover{background:color-mix(in srgb, var(--accent) 10%, transparent)}.skill-card{min-width:0;padding:22px}.skill-card h3{margin:0;font-size:15px}.education-card{align-items:flex-start;gap:14px;margin-top:25px;padding:24px;display:flex}.education-card h3,.education-card p{margin:0 0 8px}.muted-text{color:var(--muted)}.contact-section .section-intro{margin:20px 0 26px}.text-link{color:var(--accent);white-space:nowrap;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.footer{color:var(--muted);border-top:1px solid #ffffff26;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding:26px 0;font-size:13px;display:flex}.footer a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (max-width:760px){main#home{width:calc(100% - 36px)}.site-header{flex-wrap:wrap;gap:16px}.nav-links{order:3;justify-content:flex-start;gap:22px;width:100%;padding:5px 0;overflow-x:auto}.availability{margin-left:auto;font-size:11px}.hero{min-height:0;padding:80px 0 100px}.hero-title{font-size:clamp(42px,9vw,64px)}.hero-description{font-size:15px}.hero-orbit{opacity:.45;width:190px;height:190px;top:10%;right:-55px}.hero-status{bottom:24px;left:0;right:auto}.section{padding:60px 0}.section-heading-row{flex-direction:column;align-items:flex-start;gap:16px}.skills-grid{grid-template-columns:minmax(0,1fr)}.project-card{grid-template-columns:30px minmax(0,1fr) 32px;gap:10px;padding:18px}.project-link{width:32px;height:32px}.footer{justify-content:flex-start}}@media (max-width:420px){main#home{width:calc(100% - 28px)}.nav-links{gap:17px}.availability{font-size:10px}.hero-title{font-size:40px}.hero-actions{align-items:stretch}.button{padding:11px 13px}.social-links{gap:15px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body,body *{transition:background-color .7s,color .7s,border-color .7s,box-shadow .7s}body{background-color:var(--bg);color:var(--text)}body[data-theme=cyan]{color:#f8fafc;background-color:#0b1020}body{background-color:var(--bg);color:var(--text);transition:background-color .8s,color .8s}body[data-theme=graphite]{--bg:#f4f2ec;--surface:#fff;--text:#202127;--muted:#65656c;--accent:#465bd8;--border:#deddd7;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body[data-theme=cyan]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}main#home{width:min(1180px,100% - 72px)}.site-header{border-bottom-color:var(--border);min-height:72px;padding:14px 0}.brand{letter-spacing:-.05em;font-size:19px}.brand span{color:var(--muted)}.nav-links{gap:clamp(14px,2.3vw,30px)}.nav-links a{color:var(--muted);font-family:monospace;font-size:12px}.nav-links a:hover{color:var(--text)}.availability{color:var(--muted);font-size:11px}.hero{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:clamp(30px,6vw,90px);min-height:min(720px,100svh - 72px);padding:72px 0 88px;display:grid;overflow:visible}.hero:before{display:none}.hero:after{opacity:0;background-image:none}.hero-copy{width:100%;max-width:680px}.eyebrow{color:var(--muted);letter-spacing:.08em;align-items:center;gap:10px;font-size:11px;display:flex}.eyebrow:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;display:inline-block}.hero-title{letter-spacing:-.065em;max-width:680px;margin:26px 0 22px;font-size:clamp(42px,5.2vw,70px);font-weight:700;line-height:1.04}.hero-description{max-width:520px;color:var(--muted);font-size:14px;line-height:1.85}.hero-actions{gap:9px;margin-top:25px}.button{border-radius:5px;min-height:42px;padding:10px 14px;font-family:monospace;font-size:12px;font-weight:600}.button-primary{color:#fff;background:#242633;border-color:#242633}.button-primary:hover{color:#fff;background:#42465d;border-color:#42465d}body[data-theme=cyan] .button-primary{color:#07111d;background:var(--accent);border-color:var(--accent)}.button-secondary{border-color:var(--border);color:var(--muted)}.button-secondary:hover{color:var(--text);background:color-mix(in srgb, var(--accent) 6%, transparent)}.social-links{gap:20px;margin-top:25px}.social-links a{color:var(--muted);font-size:12px}.hero-portrait{justify-content:center;justify-self:center;align-items:center;width:100%;max-width:390px;min-height:390px;display:flex;position:relative}.portrait-image{object-fit:contain;object-position:center bottom;filter:grayscale()contrast(1.04);mix-blend-mode:multiply;width:100%;max-height:490px;display:block}body[data-theme=cyan] .portrait-image{mix-blend-mode:normal}.portrait-caption{color:var(--muted);letter-spacing:.12em;font-family:monospace;font-size:9px;position:absolute;bottom:0;right:0}.hero-status,.hero-orbit{display:none}@media (max-width:760px){main#home{width:calc(100% - 36px)}.site-header{gap:14px}.availability-text{display:none}.hero{grid-template-columns:minmax(0,1fr);gap:24px;min-height:0;padding:58px 0 64px}.hero-copy{order:1}.hero-portrait{order:0;justify-self:start;width:min(65%,260px);min-height:0;max-height:280px;margin:0 auto 4px}.portrait-image{max-height:280px}.portrait-caption{font-size:8px}.hero-title{font-size:clamp(40px,9vw,60px)}}@media (max-width:420px){main#home{width:calc(100% - 28px)}.hero-title{font-size:39px}.hero-actions{align-items:flex-start}.hero-actions .button{font-size:11px}}@media (prefers-reduced-motion:reduce){body,body *{transition-duration:.01ms!important}}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.project-grid .project-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;flex-direction:column;min-width:0;padding:0;display:flex;overflow:hidden}.project-grid .project-featured{grid-column:1/-1}.project-image-link{background:#eeeee9;width:100%;display:block;overflow:hidden}.project-image{aspect-ratio:16/8;object-fit:cover;width:100%;transition:transform .35s;display:block}.project-featured .project-image{aspect-ratio:16/6.5}.project-card:hover .project-image{transform:scale(1.025)}.project-card-body{flex-direction:column;flex:1;align-items:flex-start;gap:14px;padding:22px;display:flex}.project-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.project-card-heading h3{letter-spacing:-.025em;margin:0;font-size:19px}.project-card-body>p{color:var(--muted);margin:0;font-size:14px;line-height:1.75}.project-status{border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:11px}.project-card-body .tag-list{margin-top:0}.project-open-link{color:var(--accent);align-items:center;gap:7px;margin-top:auto;padding-top:8px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.project-open-link:hover{text-decoration:underline}.about-section .section-heading-row{align-items:flex-start;margin-bottom:28px}.about-card{padding:30px}.about-card>p{max-width:850px;font-size:16px;line-height:1.8}.about-details{border-top:1px solid var(--border);gap:22px;margin-top:24px;padding-top:22px}.about-details>div{font-size:14px;font-weight:600}.hero{align-items:center}.hero-copy{max-width:62%}.hero-portrait{z-index:1;flex-direction:column;align-items:center;width:min(34%,360px);display:flex;position:absolute;top:16%;bottom:auto;right:4%}.portrait-image{object-fit:contain;object-position:bottom;filter:grayscale();width:100%;height:auto;max-height:470px;display:block}.portrait-caption{color:var(--muted);letter-spacing:.08em;margin-top:12px;font:10px/1.5 monospace}@media (max-width:760px){.project-grid{grid-template-columns:minmax(0,1fr)}.project-grid .project-featured{grid-column:auto}.project-grid .project-image,.project-grid .project-featured .project-image{aspect-ratio:16/9}.project-card-body{padding:18px}.hero{flex-direction:column;align-items:flex-start;padding:64px 0 70px}.hero-copy{max-width:100%}.hero-portrait{width:min(75%,300px);margin:28px auto 0;position:relative;top:auto;bottom:auto;right:auto}.portrait-image{max-height:none}.about-card{padding:22px}.about-card>p{font-size:15px}}@media (prefers-reduced-motion:reduce){.project-image{transition:none}}.skills-section .section-label{margin-bottom:12px}.skills-section .section-title{margin:0 0 42px;font-size:clamp(32px,4vw,46px)}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 56px;margin-top:0;display:grid}.skill-group{min-width:0}.skill-group h3{color:var(--accent);letter-spacing:.04em;margin:0 0 14px;font-family:monospace;font-size:13px;font-weight:700}.skill-badges{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.skill-badge{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:10px 13px;font-size:13px;font-weight:600;transition:background-color .7s,border-color .7s,color .7s,transform .18s;display:inline-flex}.skill-badge:hover{border-color:var(--accent);transform:translateY(-2px)}.skill-badge-dot{background:var(--accent);border-radius:2px;flex-shrink:0;width:7px;height:7px}@media (max-width:700px){.skills-grid{grid-template-columns:minmax(0,1fr);row-gap:28px}.skills-section .section-title{margin-bottom:30px}}.contact-form{gap:12px;width:100%;max-width:560px;margin-top:28px;display:grid}.contact-form label{font-size:.9rem;font-weight:500}.contact-form input,.contact-form textarea{border:1px solid var(--border,#d1d5db);width:100%;color:inherit;font:inherit;background:0 0;border-radius:8px;padding:12px 14px}.contact-form textarea{resize:vertical}.contact-form input:focus-visible,.contact-form textarea:focus-visible,.contact-form button:focus-visible{outline-offset:3px;outline:2px solid}.contact-form button:disabled{opacity:.6;cursor:wait}.admin-login,.admin-dashboard{width:min(100% - 32px,720px);color:inherit;margin:80px auto}.admin-login-card{border:1px solid var(--border,#d1d5db);border-radius:16px;max-width:420px;margin:0 auto;padding:28px}.admin-login-card input{border:1px solid var(--border,#d1d5db);width:100%;color:inherit;font:inherit;background:0 0;border-radius:8px;padding:12px}.admin-login-card button{cursor:pointer;font:inherit;border:0;border-radius:8px;padding:12px 16px}.admin-login{color:#171717;background:#f7f7f5;justify-content:center;align-items:center;width:100%;min-height:100vh;margin:0;padding:40px 20px;display:flex}.admin-login-card{background:#fff;border:1px solid #deded9;border-radius:16px;width:100%;max-width:420px;padding:36px;box-shadow:0 12px 40px #00000012}.admin-login-card h1{color:#171717;margin:0 0 10px;font-size:28px;line-height:1.2}.admin-login-card p{color:#606060;line-height:1.5}.admin-login-card form{gap:12px;margin-top:24px;display:grid}.admin-login-card label{color:#222;margin-top:6px;font-size:14px;font-weight:600}.admin-login-card input{box-sizing:border-box;color:#171717;width:100%;font:inherit;background:#fff;border:1px solid #c9c9c4;border-radius:8px;padding:12px 14px}.admin-login-card input:focus-visible{outline-offset:2px;outline:2px solid #333}.admin-login-card button{color:#fff;font:inherit;cursor:pointer;background:#171717;border:none;border-radius:8px;margin-top:12px;padding:13px 16px;font-weight:600}.admin-login-card button:disabled{opacity:.6;cursor:wait}.admin-login-card [role=alert]{color:#b42318;font-size:14px}.admin-dashboard{color:#111827;max-width:1000px;min-height:100vh;margin:0 auto;padding:48px 24px}.admin-dashboard h1{margin-bottom:16px;font-size:2rem}.admin-dashboard p{margin-bottom:12px;line-height:1.6}:root{--motion-fast:.18s;--motion-medium:.28s;--motion-smooth:cubic-bezier(.22, 1, .36, 1);--motion-border:color-mix(in srgb, var(--accent) 38%, var(--border));--motion-glow:color-mix(in srgb, var(--accent) 12%, transparent)}html{scrollbar-gutter:stable;scroll-padding-top:32px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.site-header{transition:border-color .5s,background-color .5s}.brand{transition:opacity var(--motion-fast) ease, transform var(--motion-medium) var(--motion-smooth)}.brand:hover{opacity:.82;transform:translateY(-1px)}.nav-links a{transition:color var(--motion-fast) ease, opacity var(--motion-fast) ease;padding-block:5px;display:inline-block;position:relative}.nav-links a:after{background:var(--accent);content:"";transform-origin:100%;height:1px;transition:transform var(--motion-medium) var(--motion-smooth);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after,.nav-links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.availability{transition:opacity var(--motion-fast) ease}.availability:hover{opacity:.78}.status-dot{animation:2.8s ease-in-out infinite statusPulse}@keyframes statusPulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 0%, transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 12%, transparent)}}.hero{isolation:isolate}.hero-copy{animation:heroContentSettle .75s var(--motion-smooth) both}.hero-portrait{transform-origin:50%}.portrait-image{transition:filter .5s ease, transform .65s var(--motion-smooth);will-change:transform}.hero-portrait:hover .portrait-image{transform:translateY(-4px)scale(1.012)}.portrait-caption{transition:color var(--motion-medium) ease}.hero-portrait:hover .portrait-caption{color:var(--accent)}@keyframes heroContentSettle{0%{opacity:.75;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.section-label{transition:color var(--motion-medium) ease, letter-spacing var(--motion-medium) ease}.section-label:hover{letter-spacing:.1em}.section-title{text-wrap:balance}.about-card,.education-card,.skill-card,.project-card{transition:background-color .35s ease, border-color .35s ease, box-shadow .35s ease, transform .35s var(--motion-smooth)}.about-card:hover,.education-card:hover{border-color:var(--motion-border);box-shadow:0 12px 34px -24px var(--motion-glow)}.project-grid .project-card{isolation:isolate;transition:border-color .3s ease, box-shadow .35s ease, transform .35s var(--motion-smooth);position:relative;box-shadow:0 2px #0000}.project-grid .project-card:hover{border-color:var(--motion-border);box-shadow:0 18px 45px -30px var(--motion-glow), 0 2px 0 color-mix(in srgb, var(--accent) 20%, transparent)}.project-image-link{position:relative}.project-image-link:after{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 55%);content:"";opacity:0;pointer-events:none;transition:opacity .35s;position:absolute;inset:0}.project-card:hover .project-image-link:after{opacity:1}.project-grid .project-image{transition:transform .7s var(--motion-smooth)}.project-grid .project-card:hover .project-image{transform:scale(1.035)}.project-open-link{transition:color var(--motion-fast) ease, gap var(--motion-medium) var(--motion-smooth)}.project-open-link:hover{gap:12px;text-decoration:none}.project-status{transition:border-color var(--motion-medium) ease, background-color var(--motion-medium) ease}.tag{transition:color var(--motion-fast) ease, border-color var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) ease}.tag:hover{color:var(--text);border-color:var(--motion-border);background:var(--motion-glow);transform:translateY(-1px)}.skill-badge{transition:color var(--motion-fast) ease, background-color var(--motion-medium) ease, border-color var(--motion-medium) ease, transform var(--motion-medium) var(--motion-smooth), box-shadow var(--motion-medium) ease;position:relative;overflow:hidden}.skill-badge:hover{border-color:var(--motion-border);background:var(--motion-glow);box-shadow:0 5px 18px -14px var(--accent);transform:translateY(-3px)}.skill-badge-dot{transition:transform var(--motion-medium) var(--motion-smooth), box-shadow var(--motion-medium) ease}.skill-badge:hover .skill-badge-dot{box-shadow:0 0 10px var(--accent);transform:scale(1.2)}.button{transition:color var(--motion-fast) ease, background-color var(--motion-medium) ease, border-color var(--motion-medium) ease, box-shadow var(--motion-medium) ease, transform var(--motion-fast) var(--motion-smooth);position:relative;overflow:hidden}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)scale(.985)}.button-primary:hover{box-shadow:0 8px 24px -16px var(--accent)}.button-secondary:hover{box-shadow:0 5px 18px -14px var(--accent)}.button:focus-visible,.project-open-link:focus-visible,.project-link:focus-visible,.social-links a:focus-visible,.footer a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.social-links a{transition:color var(--motion-fast) ease, transform var(--motion-medium) var(--motion-smooth)}.social-links a:hover{transform:translateY(-2px)}.contact-form input,.contact-form textarea{transition:border-color var(--motion-medium) ease, background-color var(--motion-medium) ease, box-shadow var(--motion-medium) ease}.contact-form input:hover,.contact-form textarea:hover{border-color:var(--motion-border)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--motion-glow);outline:none}.contact-form button:disabled{box-shadow:none;transform:none}.contact-form [role=status]{animation:statusMessageIn .35s var(--motion-smooth) both}@keyframes statusMessageIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.footer a{transition:color var(--motion-fast) ease, transform var(--motion-medium) var(--motion-smooth)}.footer a:hover{transform:translateY(-1px)}@media (max-width:760px){.hero-copy{animation-duration:.5s}.project-grid .project-card:hover{box-shadow:none}.hero-portrait:hover .portrait-image{transform:none}}@media (prefers-reduced-motion:reduce){.status-dot,.hero-copy{animation:none!important}.brand,.nav-links a,.nav-links a:after,.project-grid .project-card,.project-grid .project-image,.portrait-image,.skill-badge,.skill-badge-dot,.button,.social-links a,.contact-form input,.contact-form textarea,.footer a{transition:none!important;transform:none!important}}.contact-shell{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 55%, transparent);border-radius:20px;margin:35px 0 65px;padding:clamp(24px,5vw,48px);overflow:hidden}.contact-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;gap:clamp(28px,5vw,54px);display:grid}.contact-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.contact-title{letter-spacing:-.045em;margin:12px 0 18px;font-size:clamp(32px,4vw,46px);line-height:1.12}.contact-description{max-width:500px;color:var(--muted);margin:0;font-size:15px;line-height:1.85}.contact-links{gap:12px;margin-top:30px;display:grid}.contact-link-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 75%, transparent);border-radius:12px;align-items:center;gap:14px;min-width:0;padding:15px;text-decoration:none;transition:transform .22s,border-color .22s,background-color .22s;display:flex}.contact-link-card:hover{border-color:var(--accent);transform:translateY(-3px)}.contact-link-icon{width:42px;height:42px;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.contact-link-content{flex:1;gap:4px;min-width:0;display:grid}.contact-link-content small{color:var(--muted);font-size:12px}.contact-link-content strong{overflow-wrap:anywhere;font-size:13px;font-weight:600}.contact-link-card>svg:last-child{color:var(--muted);flex-shrink:0}.contact-form-panel{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 85%, transparent);border-radius:16px;min-width:0;padding:clamp(20px,3vw,30px)}.contact-form-panel h3{letter-spacing:-.025em;margin:0;font-size:20px}.contact-form-description{color:var(--muted);margin:9px 0 24px;font-size:13px;line-height:1.6}.contact-form-panel .contact-form{grid-template-columns:minmax(0,1fr);gap:10px;width:100%;max-width:none;margin:0;display:grid}.contact-form-panel .contact-form label{color:var(--text);margin-top:5px;font-size:12px;font-weight:600}.contact-form-panel .contact-form input,.contact-form-panel .contact-form textarea{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 75%, transparent);width:100%;min-width:0;color:var(--text);border-radius:10px;padding:12px 14px;font-family:inherit;font-size:13px;transition:border-color .2s,box-shadow .2s,background-color .2s}.contact-form-panel .contact-form input{min-height:44px}.contact-form-panel .contact-form textarea{resize:vertical;min-height:115px;line-height:1.6}.contact-form-panel .contact-form input::placeholder,.contact-form-panel .contact-form textarea::placeholder{color:var(--muted);opacity:.75}.contact-form-panel .contact-form input:focus,.contact-form-panel .contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent);outline:none}.contact-form-panel .contact-submit{cursor:pointer;border-radius:10px;width:100%;min-height:48px;margin-top:10px;font-family:inherit;font-size:14px}.contact-form-panel .contact-submit:disabled{opacity:.65;cursor:wait}.contact-status{color:var(--accent);margin:8px 0 0;font-size:13px;line-height:1.6}@media (max-width:760px){.contact-shell{margin:20px 0 45px;padding:24px}.contact-layout{grid-template-columns:minmax(0,1fr);gap:30px}.contact-description{max-width:none}.contact-links{margin-top:22px}.contact-form-panel{padding:22px}}@media (max-width:420px){.contact-shell{border-radius:14px;padding:17px}.contact-link-card{gap:10px;padding:12px}.contact-form-panel{padding:17px}}@media (prefers-reduced-motion:reduce){.contact-link-card{transition:none}}:root{--bg:#080d19;--surface:#111b2d;--surface-2:#17243a;--text:#f4f7ff;--muted:#9ba9c1;--border:#64a0ff2e;--accent:#258bff;--accent-secondary:#a855f7}html{background:var(--bg);scroll-behavior:smooth}body{background:radial-gradient(ellipse at 12% 8%, #258bff1a, transparent 35%), radial-gradient(ellipse at 88% 42%, #a855f714, transparent 32%), var(--bg);color:var(--text)}h1,h2,h3,h4{color:var(--text)}.section-label,.accent-text{color:var(--accent)}.card,.project-card,.skill-card,.contact-form-panel,.contact-link-card{border-color:var(--border);-webkit-backdrop-filter:blur(14px);background:#111b2dd1;transition:border-color .22s,transform .22s,box-shadow .22s}.card:hover,.project-card:hover,.skill-card:hover,.contact-link-card:hover{border-color:#258bff8c;box-shadow:0 12px 35px #00000038}.button-primary,.contact-submit{color:#fff;background:linear-gradient(110deg,#258bff,#8057ef 60%,#a855f7);border:none;transition:transform .22s,box-shadow .22s,filter .22s;box-shadow:0 5px 22px #258bff2e}.button-primary:hover,.contact-submit:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 9px 28px #258bff4d}input,textarea,select{color:#f4f7ff;border-color:var(--border);background-color:#111b2d}input:focus,textarea:focus,select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #258bff1f}a{transition:color .18s}nav a:hover{color:var(--accent)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#263a58;border-radius:20px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080d19;--surface:#111b2d;--surface-2:#17243a;--text:#eaf1ff;--muted:#9ba9c1;--accent:#258bff;--accent-secondary:#a855f7;--border:#64a0ff2e;--theme-glow:#258bff29}html,body,body[data-theme=graphite],body[data-theme=cyan]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--bg);color:var(--text)}body,body[data-theme=graphite],body[data-theme=cyan]{--bg:#080d19;--surface:#111b2d;--surface-2:#17243a;--text:#eaf1ff;--muted:#9ba9c1;--accent:#258bff;--accent-secondary:#a855f7;--border:#64a0ff2e;color:var(--text);background:radial-gradient(at 12% 0,#258bff1a,#0000 38%),radial-gradient(at 90% 45%,#a855f712,#0000 35%),#080d19}::selection{color:#fff;background:#258bff}.site-header{border-bottom-color:var(--border)}.brand span,.nav-links a:hover,.social-links a:hover,.footer a:hover{color:var(--accent)}.nav-links a,.availability{color:var(--muted)}.eyebrow,.section-label{color:var(--accent)}.hero-description,.section-intro,.project-content p,.project-card-body>p{color:var(--muted)}.button-primary{color:#fff;background:linear-gradient(110deg,#258bff,#8057ef);border-color:#0000;box-shadow:0 5px 22px #258bff2e}.button-primary:hover{color:#fff;background:linear-gradient(110deg,#459dff,#a16aff);border-color:#0000;box-shadow:0 8px 28px #258bff47}.about-card,.education-card,.skill-card,.project-card,.project-grid .project-card,.contact-form-panel,.contact-link-card{color:var(--text);border-color:var(--border);-webkit-backdrop-filter:blur(14px);background:#111b2de0;box-shadow:0 8px 30px #0000001f}.about-card:hover,.education-card:hover,.skill-card:hover,.project-card:hover,.contact-link-card:hover{border-color:#258bff8c;box-shadow:0 12px 35px #258bff14}.contact-form-panel .contact-form input,.contact-form-panel .contact-form textarea,input,textarea,select{color:var(--text);border-color:var(--border);background-color:#0c1525}.contact-submit{color:#fff;background:linear-gradient(110deg,#258bff,#8057ef)}.admin-login-card{color:var(--text);border-color:var(--border);background:#111b2d;box-shadow:0 15px 50px #0000004d}.admin-login-card input{color:var(--text);border-color:var(--border);background:#0c1525}.admin-login-card input:focus-visible{outline-color:var(--accent)}.admin-login-card button{color:#fff;background:linear-gradient(110deg,#258bff,#8057ef)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth;background:#fff}body{--bg:#fff;--surface:#fafaf8;--surface-2:#f5f5f2;--text:#333;--muted:#777;--accent:#555;--accent-secondary:#888;--border:#e5e5e5;color:#333!important;background:#fff!important}h1,h2,h3,h4,h5,h6{color:#333}p{color:#777}.section-label,.eyebrow{color:#777;letter-spacing:.14em}.hero:after{opacity:.025}.site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border-bottom:1px solid #e5e5e5}.nav-links a,.brand,.social-links a{color:#333}.nav-links a:hover,.social-links a:hover,.footer a:hover{color:#777}.button-primary,.contact-submit{color:#fff;box-shadow:none;background:#333;border:1px solid #333}.button-primary:hover,.contact-submit:hover:not(:disabled){color:#fff;background:#555;border-color:#555;transform:translateY(-2px);box-shadow:0 5px 16px #00000014}.button-secondary{color:#333;background:0 0;border:1px solid #ccc}.button-secondary:hover{background:#f5f5f2;border-color:#777}.about-card,.education-card,.skill-card,.project-card,.contact-form-panel,.contact-link-card{color:#333;-webkit-backdrop-filter:none;background:#fafaf8;border:1px solid #e5e5e5;box-shadow:0 3px 15px #00000006}.about-card:hover,.education-card:hover,.skill-card:hover,.project-card:hover,.contact-link-card:hover{border-color:#bbb;transform:translateY(-3px);box-shadow:0 8px 24px #0000000e}.contact-shell{background:#fff;border-color:#e5e5e5}.contact-form-panel{background:#fafaf8}.contact-form-panel .contact-form input,.contact-form-panel .contact-form textarea,input,textarea,select{color:#333;background:#fff;border-color:#ddd}.contact-form-panel .contact-form input:focus,.contact-form-panel .contact-form textarea:focus,input:focus,textarea:focus,select:focus{border-color:#777;box-shadow:0 0 0 3px #0000000b}.footer{background:#fff;border-color:#e5e5e5}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.theme-toggle{border:1px solid var(--border-color,#d8d8d8);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;transition:all .25s;display:inline-flex}.theme-toggle:hover{opacity:.8;transform:translateY(-2px)}.theme-toggle svg{flex-shrink:0}:root,html,body,body[data-theme=light],body[data-theme=graphite]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f7f0;--surface:#fff;--surface-2:#e6e9df;--text:#20332c;--muted:#68776f;--accent:#183b32;--accent-secondary:#799486;--border:#dce2d8}html{background:var(--bg)}body,body[data-theme=light],body[data-theme=graphite]{background:var(--bg);color:var(--text)}body[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101b17;--surface:#182720;--surface-2:#22372d;--text:#f1f3ec;--muted:#b0bdb3;--accent:#a8c3ae;--accent-secondary:#799486;--border:#34483b;color:#f1f3ec;background:#101b17}body:not(.admin-login):not(.admin-dashboard) h1,body:not(.admin-login):not(.admin-dashboard) h2,body:not(.admin-login):not(.admin-dashboard) h3,body:not(.admin-login):not(.admin-dashboard) h4,body:not(.admin-login):not(.admin-dashboard) h5,body:not(.admin-login):not(.admin-dashboard) h6{color:var(--text)}body:not(.admin-login):not(.admin-dashboard) p{color:var(--muted)}.section,.footer{border-color:var(--border)}.site-header{background:color-mix(in srgb, var(--bg) 90%, transparent);border-bottom-color:var(--border)}.brand,.nav-links a,.social-links a,.footer a{color:var(--text)}.brand span,.eyebrow,.section-label,.about-details>div,.project-number,.project-link,.project-open-link,.text-link{color:var(--accent)}.availability,.hero-description,.section-intro,.project-content p,.project-card-body>p,.muted-text,.footer{color:var(--muted)}.hero:before{background:radial-gradient(circle, color-mix(in srgb, var(--accent-secondary) 18%, transparent), transparent 72%)}.hero:after{background-image:linear-gradient(color-mix(in srgb, var(--accent) 4%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--accent) 4%, transparent) 1px, transparent 1px)}.hero-orbit{border-color:color-mix(in srgb, var(--accent) 24%, transparent)}.orbit-dot,.status-dot{background:var(--accent)}.hero-status{color:var(--accent);border-color:var(--border);background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.button-primary,.contact-submit,.admin-login-card button{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:none}.button-primary:hover,.contact-submit:hover:not(:disabled){color:#fff;background:#285447;border-color:#285447}.button-secondary{color:var(--text);border-color:var(--border);background:0 0}.button-secondary:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.about-card,.education-card,.skill-card,.project-card,.project-grid .project-card,.contact-form-panel,.contact-link-card{color:var(--text);background:var(--surface);border-color:var(--border);box-shadow:0 8px 28px #183b320e}body[data-theme=dark] .about-card,body[data-theme=dark] .education-card,body[data-theme=dark] .skill-card,body[data-theme=dark] .project-card,body[data-theme=dark] .project-grid .project-card,body[data-theme=dark] .contact-form-panel,body[data-theme=dark] .contact-link-card{box-shadow:0 10px 30px #00000029}.about-card:hover,.education-card:hover,.skill-card:hover,.project-card:hover,.contact-link-card:hover{border-color:var(--accent-secondary)}.project-image-link{background:var(--surface-2)}.tag{color:var(--muted);background:color-mix(in srgb, var(--surface-2) 60%, transparent);border-color:var(--border)}.project-status{color:var(--muted);border-color:var(--border)}.project-open-link{color:var(--accent)}.contact-form-panel .contact-form input,.contact-form-panel .contact-form textarea,.contact-form-panel input,.contact-form-panel textarea,.contact-form-panel select{color:var(--text);background:var(--surface);border-color:var(--border)}.contact-form-panel .contact-form input::placeholder,.contact-form-panel .contact-form textarea::placeholder{color:var(--muted)}.contact-form-panel .contact-form input:focus,.contact-form-panel .contact-form textarea:focus,.contact-form-panel input:focus,.contact-form-panel textarea:focus,.contact-form-panel select:focus{border-color:var(--accent-secondary);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-secondary) 18%, transparent)}.contact-link-icon{color:var(--accent);background:var(--surface-2)}.theme-toggle{color:var(--text);background:var(--surface);border-color:var(--border)}.theme-toggle:hover{color:var(--accent);border-color:var(--accent-secondary)}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--accent-secondary)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.admin-login{color:#eaf1ff;background:#080d19}.admin-login-card{color:#eaf1ff;background:#111b2d;border-color:#64a0ff2e}.admin-login-card h1,.admin-login-card label{color:#eaf1ff}.admin-login-card p{color:#9ba9c1}.admin-login-card input{color:#eaf1ff;background:#0c1525;border-color:#64a0ff2e}.admin-login-card button{color:#fff;background:linear-gradient(110deg,#258bff,#8057ef);border-color:#0000}.admin-login-card [role=alert]{color:#f77}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}body:not([data-theme=dark]){--text:#183b32;--muted:#40564b;color:#183b32}body:not([data-theme=dark]) :is(h1,h2,h3,h4,h5,h6,p,span,div,li,label,small,strong,em,a,button,input,textarea,select){color:inherit}body:not([data-theme=dark]) .hero-description,body:not([data-theme=dark]) .section-intro,body:not([data-theme=dark]) .project-content p,body:not([data-theme=dark]) .project-card-body>p,body:not([data-theme=dark]) .muted-text,body:not([data-theme=dark]) .availability,body:not([data-theme=dark]) .nav-links a,body:not([data-theme=dark]) .social-links a,body:not([data-theme=dark]) .footer,body:not([data-theme=dark]) .project-status,body:not([data-theme=dark]) .tag,body:not([data-theme=dark]) .portrait-caption{color:#40564b}body:not([data-theme=dark]) .brand,body:not([data-theme=dark]) .hero-title,body:not([data-theme=dark]) .section-title,body:not([data-theme=dark]) .project-card-heading h3,body:not([data-theme=dark]) .skill-card h3,body:not([data-theme=dark]) .education-card h3,body:not([data-theme=dark]) .about-card,body:not([data-theme=dark]) .contact-form-panel,body:not([data-theme=dark]) .contact-link-card,body:not([data-theme=dark]) .contact-form-panel input,body:not([data-theme=dark]) .contact-form-panel textarea,body:not([data-theme=dark]) .contact-form-panel select{color:#183b32}body:not([data-theme=dark]) .contact-form-panel input::placeholder,body:not([data-theme=dark]) .contact-form-panel textarea::placeholder{color:#68776f;opacity:1}body:not([data-theme=dark]) .button-primary,body:not([data-theme=dark]) .contact-submit{color:#fff}body:not([data-theme=dark]) .button-secondary,body:not([data-theme=dark]) .theme-toggle{color:#183b32}body[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#020617;--surface:#0f172a;--surface-2:#172338;--text:#f8fafc;--muted:#94a3b8;--accent:#10b981;--accent-secondary:#34d399;--border:#263449;color:#f8fafc;font-family:Inter,Arial,sans-serif;background:#020617!important}body[data-theme=dark] :is(h1,h2,h3,h4,h5,h6),body[data-theme=dark] .brand,body[data-theme=dark] .nav-links a,body[data-theme=dark] .tag,body[data-theme=dark] .project-status,body[data-theme=dark] .availability,body[data-theme=dark] .skill-card h3{font-family:JetBrains Mono,Fira Code,monospace}body[data-theme=dark] :is(h1,h2,h3,h4,h5,h6),body[data-theme=dark] .brand,body[data-theme=dark] .hero-title,body[data-theme=dark] .section-title,body[data-theme=dark] .project-card-heading h3,body[data-theme=dark] .skill-card h3,body[data-theme=dark] .education-card h3{color:#f8fafc!important}body[data-theme=dark] p,body[data-theme=dark] .hero-description,body[data-theme=dark] .section-intro,body[data-theme=dark] .project-content p,body[data-theme=dark] .project-card-body>p,body[data-theme=dark] .muted-text,body[data-theme=dark] .portrait-caption,body[data-theme=dark] .footer{color:#94a3b8!important}body[data-theme=dark] main,body[data-theme=dark] .page,body[data-theme=dark] .page-wrapper{background-color:#020617!important}body[data-theme=dark] main>section,body[data-theme=dark] section{background-color:#0000}body[data-theme=dark] .about-card,body[data-theme=dark] .education-card,body[data-theme=dark] .skill-card,body[data-theme=dark] .project-card,body[data-theme=dark] .project-grid .project-card,body[data-theme=dark] .contact-form-panel,body[data-theme=dark] .contact-link-card,body[data-theme=dark] .contact-shell{color:#f8fafc!important;background:#0f172a!important;border-color:#263449!important}body[data-theme=dark] .tag,body[data-theme=dark] .project-status,body[data-theme=dark] .contact-link-icon{color:#10b981!important;background:#172338!important;border-color:#263449!important}body[data-theme=dark] a,body[data-theme=dark] .project-open-link{color:#10b981}body[data-theme=dark] .button-primary,body[data-theme=dark] .contact-submit{color:#020617!important;background:#10b981!important;border-color:#10b981!important}body[data-theme=dark] .button-primary:hover,body[data-theme=dark] .contact-submit:hover:not(:disabled){color:#020617!important;background:#34d399!important;border-color:#34d399!important}body[data-theme=dark] .button-secondary,body[data-theme=dark] .theme-toggle{color:#f8fafc!important;background:#0f172a!important;border-color:#263449!important}body[data-theme=dark] .button-secondary:hover,body[data-theme=dark] .theme-toggle:hover{color:#10b981!important;border-color:#10b981!important}body[data-theme=dark] .contact-form-panel input,body[data-theme=dark] .contact-form-panel textarea,body[data-theme=dark] .contact-form-panel select{color:#f8fafc!important;background:#020617!important;border-color:#334155!important}body[data-theme=dark] .contact-form-panel input:focus,body[data-theme=dark] .contact-form-panel textarea:focus,body[data-theme=dark] .contact-form-panel select:focus{border-color:#10b981!important;box-shadow:0 0 0 3px #10b98129!important}body[data-theme=dark] ::-webkit-scrollbar-thumb{background:#166b50}html:has(body:not([data-theme=dark])){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f4f4f0}body:not([data-theme=dark]){--bg:#f4f4f0;--surface:#fff;--surface-2:#fff;--text:#111;--muted:#444;--accent:#f50;--accent-secondary:#04f;--border:#111;font-family:Public Sans,Arial,sans-serif;color:#111!important;background:#f4f4f0!important}body:not([data-theme=dark]) :is(h1,h2,h3,h4,h5,h6),body:not([data-theme=dark]) .brand,body:not([data-theme=dark]) .hero-title,body:not([data-theme=dark]) .section-title,body:not([data-theme=dark]) .project-card-heading h3,body:not([data-theme=dark]) .skill-card h3,body:not([data-theme=dark]) .education-card h3{letter-spacing:-.045em;color:#111!important;font-family:Clash Display,Public Sans,sans-serif!important;font-weight:700!important}body:not([data-theme=dark]) p,body:not([data-theme=dark]) li,body:not([data-theme=dark]) label,body:not([data-theme=dark]) .hero-description,body:not([data-theme=dark]) .section-intro,body:not([data-theme=dark]) .project-content p,body:not([data-theme=dark]) .project-card-body>p,body:not([data-theme=dark]) .muted-text,body:not([data-theme=dark]) .portrait-caption,body:not([data-theme=dark]) .footer{font-family:Public Sans,Arial,sans-serif;color:#333!important}body:not([data-theme=dark]) main,body:not([data-theme=dark]) .page,body:not([data-theme=dark]) .page-wrapper{background:#f4f4f0!important}body:not([data-theme=dark]) .about-card,body:not([data-theme=dark]) .education-card,body:not([data-theme=dark]) .skill-card,body:not([data-theme=dark]) .project-card,body:not([data-theme=dark]) .project-grid .project-card,body:not([data-theme=dark]) .contact-form-panel,body:not([data-theme=dark]) .contact-link-card,body:not([data-theme=dark]) .contact-shell{color:#111!important;background:#fff!important;border:2px solid #111!important;border-radius:0!important;box-shadow:6px 6px #111!important}body:not([data-theme=dark]) .tag,body:not([data-theme=dark]) .project-status,body:not([data-theme=dark]) .contact-link-icon,body:not([data-theme=dark]) .availability{font-weight:700;color:#111!important;background:#f50!important;border:2px solid #111!important;border-radius:0!important;font-family:JetBrains Mono,monospace!important}body:not([data-theme=dark]) a,body:not([data-theme=dark]) .project-open-link{color:#04f;text-underline-offset:3px;font-weight:700;text-decoration-thickness:2px}body:not([data-theme=dark]) a:hover,body:not([data-theme=dark]) .project-open-link:hover{color:#f50!important}body:not([data-theme=dark]) .button-primary,body:not([data-theme=dark]) .contact-submit{font-family:Public Sans,Arial,sans-serif;font-weight:800;transition:transform .14s,box-shadow .14s;color:#fff!important;background:#f50!important;border:2px solid #111!important;border-radius:0!important;box-shadow:4px 4px #111!important}body:not([data-theme=dark]) .button-primary:hover,body:not([data-theme=dark]) .contact-submit:hover:not(:disabled){transform:translate(2px,2px);color:#fff!important;background:#04f!important;border-color:#111!important;box-shadow:2px 2px #111!important}body:not([data-theme=dark]) .button-secondary,body:not([data-theme=dark]) .theme-toggle{font-weight:800;color:#111!important;background:#fff!important;border:2px solid #111!important;border-radius:0!important;box-shadow:4px 4px #111!important}body:not([data-theme=dark]) .button-secondary:hover,body:not([data-theme=dark]) .theme-toggle:hover{color:#fff!important;background:#04f!important;border-color:#111!important}body:not([data-theme=dark]) .contact-form-panel input,body:not([data-theme=dark]) .contact-form-panel textarea,body:not([data-theme=dark]) .contact-form-panel select{font-family:Public Sans,Arial,sans-serif;color:#111!important;background:#fff!important;border:2px solid #111!important;border-radius:0!important;box-shadow:3px 3px #111!important}body:not([data-theme=dark]) .contact-form-panel input::placeholder,body:not([data-theme=dark]) .contact-form-panel textarea::placeholder{opacity:1;color:#666!important}body:not([data-theme=dark]) .contact-form-panel input:focus,body:not([data-theme=dark]) .contact-form-panel textarea:focus,body:not([data-theme=dark]) .contact-form-panel select:focus{outline-offset:2px;border-color:#111!important;outline:2px solid #04f!important;box-shadow:3px 3px #04f!important}body:not([data-theme=dark]) ::selection{color:#fff;background:#f50}body:not([data-theme=dark]) ::-webkit-scrollbar-track{background:#f4f4f0}body:not([data-theme=dark]) ::-webkit-scrollbar-thumb{background:#111}body:not([data-theme=dark]) ::-webkit-scrollbar-thumb:hover{background:#f50}.portrait-image{-webkit-filter:none!important;mix-blend-mode:normal!important}html:has(body[data-theme=dark]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0b0c10!important}body[data-theme=dark]{--bg:#0b0c10;--surface:#ffffff08;--surface-2:#ffffff0e;--text:#fafafa;--muted:#9ca3af;--accent:#c084fc;--accent-secondary:#22d3ee;--border:#ffffff1c;color:#fafafa!important;background-color:#0b0c10!important;background-image:radial-gradient(48rem 38rem at 4% 4%,#7e22ce38,#0000 68%),radial-gradient(44rem 36rem at 96% 18%,#0891b22e,#0000 66%),radial-gradient(40rem 34rem at 52% 100%,#9333ea1f,#0000 70%)!important;background-attachment:fixed!important;font-family:Plus Jakarta Sans,Inter,Arial,sans-serif!important}body[data-theme=dark] main,body[data-theme=dark] #__next{background:0 0!important}body[data-theme=dark] h1,body[data-theme=dark] h2,body[data-theme=dark] h3,body[data-theme=dark] h4,body[data-theme=dark] .hero-title,body[data-theme=dark] .section-title{letter-spacing:-.045em;color:#fafafa!important;font-family:Plus Jakarta Sans,Inter,sans-serif!important}body[data-theme=dark] p,body[data-theme=dark] li,body[data-theme=dark] label,body[data-theme=dark] .hero-description,body[data-theme=dark] .section-description{color:#9ca3af}body[data-theme=dark] header,body[data-theme=dark] nav,body[data-theme=dark] .navbar,body[data-theme=dark] .nav-container,body[data-theme=dark] .about-card,body[data-theme=dark] .education-card,body[data-theme=dark] .skill-card,body[data-theme=dark] .project-card,body[data-theme=dark] .project-grid .project-card,body[data-theme=dark] .contact-form-panel,body[data-theme=dark] .contact-link-card,body[data-theme=dark] .contact-shell,body[data-theme=dark] .hero-card,body[data-theme=dark] .card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fafafa!important;background:#ffffff08!important;border:1px solid #ffffff1c!important;border-radius:20px!important;box-shadow:0 12px 40px #0000002e,inset 0 1px #ffffff09!important}body[data-theme=dark] .project-card:hover,body[data-theme=dark] .skill-card:hover,body[data-theme=dark] .contact-link-card:hover,body[data-theme=dark] .about-card:hover,body[data-theme=dark] .education-card:hover{transform:translateY(-3px);border-color:#c084fc7a!important;box-shadow:0 18px 48px #7c3aed21,0 0 28px #22d3ee12!important}body[data-theme=dark] a,body[data-theme=dark] .project-open-link{text-decoration-color:#22d3ee80;color:#22d3ee!important}body[data-theme=dark] a:hover,body[data-theme=dark] .project-open-link:hover{color:#c084fc!important}body[data-theme=dark] .tag,body[data-theme=dark] .project-status,body[data-theme=dark] .availability,body[data-theme=dark] .contact-link-icon{color:#e9d5ff!important;background:#c084fc1a!important;border:1px solid #c084fc40!important;border-radius:999px!important}body[data-theme=dark] .button-primary,body[data-theme=dark] .contact-submit{font-weight:800;transition:transform .18s,box-shadow .18s,filter .18s;color:#0b0c10!important;background:linear-gradient(110deg,#c084fc 0%,#22d3ee 100%)!important;border:0!important;border-radius:999px!important;font-family:Plus Jakarta Sans,Inter,sans-serif!important;box-shadow:0 8px 28px #c084fc38!important}body[data-theme=dark] .button-primary:hover,body[data-theme=dark] .contact-submit:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px);color:#0b0c10!important;box-shadow:0 12px 34px #22d3ee33,0 8px 28px #c084fc33!important}body[data-theme=dark] .button-secondary,body[data-theme=dark] .theme-toggle{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fafafa!important;box-shadow:none!important;background:#ffffff0b!important;border:1px solid #ffffff29!important;border-radius:999px!important}body[data-theme=dark] .button-secondary:hover,body[data-theme=dark] .theme-toggle:hover{color:#fff!important;background:#c084fc1f!important;border-color:#c084fca6!important}body[data-theme=dark] .contact-form-panel input,body[data-theme=dark] .contact-form-panel textarea,body[data-theme=dark] .contact-form-panel select{color:#fafafa!important;box-shadow:none!important;background:#ffffff0b!important;border:1px solid #ffffff24!important;border-radius:12px!important;font-family:Plus Jakarta Sans,Inter,sans-serif!important}body[data-theme=dark] .contact-form-panel input::placeholder,body[data-theme=dark] .contact-form-panel textarea::placeholder{opacity:1;color:#7c8492!important}body[data-theme=dark] .contact-form-panel input:focus,body[data-theme=dark] .contact-form-panel textarea:focus,body[data-theme=dark] .contact-form-panel select:focus{border-color:#c084fccc!important;outline:none!important;box-shadow:0 0 0 3px #c084fc21!important}body[data-theme=dark] ::selection{color:#0b0c10;background:#c084fc}body[data-theme=dark] ::-webkit-scrollbar-track{background:#0b0c10}body[data-theme=dark] ::-webkit-scrollbar-thumb{background:#51416a;border-radius:99px}body[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#c084fc}@media (prefers-reduced-motion:reduce){body[data-theme=dark] .project-card,body[data-theme=dark] .skill-card,body[data-theme=dark] .contact-link-card,body[data-theme=dark] .about-card,body[data-theme=dark] .education-card{transition:none!important;transform:none!important}}body[data-theme=dark] .footer{color:#9ca3af!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;background:#ffffff08!important;border-top:1px solid #ffffff1a!important;border-bottom:1px solid #ffffff0f!important;box-shadow:0 10px 40px #0000002e!important}body[data-theme=dark] .footer a{color:#9ca3af!important}body[data-theme=dark] .footer a:hover{color:#22d3ee!important}.project-grid .project-featured .project-image{aspect-ratio:16/8;object-position:top center}.project-actions{flex-wrap:wrap;align-items:center;gap:20px;width:100%;margin-top:auto;padding-top:8px;display:flex}.project-actions .project-open-link{margin-top:0;padding-top:0}.project-demo-link{color:var(--muted)}.project-demo-link:hover{color:var(--accent)}.all-projects-page{min-height:100vh}.all-projects-section{min-height:72vh;padding-top:72px}.back-to-portfolio{margin-bottom:30px}.all-projects-heading{align-items:flex-end}.all-projects-heading .section-intro{margin-top:14px}.all-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.all-projects-grid .project-card{grid-column:auto}.all-projects-grid .project-image{aspect-ratio:16/9;object-position:top center}@media (max-width:760px){.project-grid .project-featured .project-image{aspect-ratio:16/9}.project-actions{gap:16px}.all-projects-section{padding-top:48px}.all-projects-grid{grid-template-columns:minmax(0,1fr)}.all-projects-heading{align-items:flex-start}}.projects-footer{justify-content:flex-end;align-items:center;width:100%;margin-top:32px;display:flex}.view-all-projects{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:14px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.view-all-projects:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-3px)}.view-all-projects svg{transition:transform .25s}.view-all-projects:hover svg{transform:translate(3px,-3px)}@media (max-width:760px){.projects-footer{justify-content:center}}.archive-back-wrapper{align-items:center;margin-bottom:34px;display:flex}.archive-back-button{color:var(--accent);letter-spacing:.3px;align-items:center;gap:10px;font-size:14px;font-weight:500;text-decoration:none;transition:all .25s;display:inline-flex}.archive-back-button svg{width:16px;height:16px;transition:transform .25s}.archive-back-button:hover{color:var(--text)}.archive-back-button:hover svg{transform:translate(-4px)}body[data-theme=light] .page{--pd-bg:#f4f4f5;--pd-panel:#fff;--pd-text:#17171c;--pd-muted:#646477;--pd-border:#dedee5}body[data-theme=dark] .page,body[data-theme=graphite] .page{--pd-bg:#08080b;--pd-panel:#151218;--pd-text:#f4f4f5;--pd-muted:#a1a1aa;--pd-border:#302832}html body main.project-detail-page{box-sizing:border-box!important;color:#f5f5f7!important;background:#09090d!important;width:100%!important;min-height:100vh!important;margin:0!important;padding:0 0 60px!important;font-family:Arial,sans-serif!important;display:block!important}html body main.project-detail-page h1,html body main.project-detail-page h2,html body main.project-detail-page h3{color:#f5f5f7!important}html body main.project-detail-page p,html body main.project-detail-page li,html body main.project-detail-page figcaption{color:#a1a1aa!important}html body main.project-detail-page .project-detail-page{background:#09090d!important}html body main.project-detail-page a{color:#c084fc!important}html body main.project-detail-page figure{margin:0}html body main.project-detail-page img{max-width:100%;height:auto;display:block}.project-card-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.project-card-link:hover{transform:translateY(-4px)}.project-card-link:focus-visible{outline:2px solid var(--accent,#a78bfa);outline-offset:4px}.project-card-link .project-image-link{display:block}.project-card-link .project-card-body{pointer-events:none}.project-status{color:#38bdf8!important;background:#38bdf81a!important;border:1px solid #38bdf866!important}.project-status.status-featured{color:#38bdf8!important;background:#38bdf824!important;border-color:#38bdf88c!important}@media (max-width:600px){main#home{width:calc(100% - 28px)}.site-header{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;display:flex}.brand{font-size:18px}.availability{margin-left:auto}.nav-links{white-space:nowrap;border:1px solid var(--border);scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:14px;order:3;gap:18px;width:100%;max-width:100%;padding:12px;display:flex;overflow:auto hidden}.nav-links::-webkit-scrollbar{display:none}.nav-links a{flex-shrink:0;font-size:12px}.hero{grid-template-columns:minmax(0,1fr);gap:20px;min-height:0;padding:38px 0 55px}.hero-portrait{width:min(72%,230px);min-height:0;max-height:230px;margin:0 auto}.portrait-image{object-fit:contain;width:100%;max-height:230px}.portrait-caption{font-size:8px}.hero-title{overflow-wrap:break-word;font-size:clamp(36px,9vw,46px);line-height:1.08}.hero-description{font-size:14px;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:9px;display:flex}.hero-actions .button{min-height:42px;font-size:11px}.social-links{flex-wrap:wrap;gap:14px}}@keyframes portfolioReveal{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline:view()){.section,.project-grid .project-card,.skill-card,.education-card{animation:linear both portfolioReveal;animation-timeline:view();animation-range:entry entry 30%}}@media (prefers-reduced-motion:reduce){.section,.project-grid .project-card,.skill-card,.education-card{opacity:1!important;animation:none!important;transform:none!important}}.project-card{transition:transform .35s,border-color .35s,box-shadow .35s;position:relative;overflow:hidden}.project-card img{transition:transform .55s cubic-bezier(.2,.7,.2,1)}.project-card:hover{border-color:#38bdf8;transform:translateY(-7px);box-shadow:0 14px 35px #38bdf81f}.project-card:hover img{transform:scale(1.045)}.project-card h2{transition:color .3s}.project-card:hover h2{color:#38bdf8}.project-card a{transition:color .25s,transform .25s}.project-card a:hover{color:#38bdf8}.project-card:focus-within{outline-offset:4px;outline:2px solid #38bdf8}@media (hover:none){.project-card:hover{box-shadow:none;transform:none}.project-card:hover img{transform:none}}@media (prefers-reduced-motion:reduce){.project-card,.project-card img,.project-card h2,.project-card a{transition:none!important}.project-card:hover,.project-card:hover img{transform:none}}button,.hero-actions a,.project-card a,.contact-links a{transition:transform .25s,background-color .25s,border-color .25s,color .25s,box-shadow .25s}.hero-actions a:hover,button:hover{transform:translateY(-3px)}.hero-actions a:active,button:active{transform:scale(.96)}.nav-links a{text-decoration:none;position:relative}.nav-links a:after{content:"";transform-origin:100%;background:#38bdf8;width:100%;height:2px;transition:transform .3s;position:absolute;bottom:-5px;left:0;transform:scaleX(0)}.nav-links a:hover:after{transform-origin:0;transform:scaleX(1)}html{scroll-behavior:smooth;scroll-padding-top:90px}a:focus-visible,button:focus-visible{outline-offset:4px;border-radius:6px;outline:2px solid #38bdf8}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}button,a,.nav-links a:after{transition:none!important}.hero-actions a:hover,button:hover,.hero-actions a:active,button:active{transform:none}}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroImageReveal{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.hero-portrait{animation:.9s ease-out both heroImageReveal}.hero-title{animation:.75s ease-out .15s both heroFadeUp}.hero-description{animation:.75s ease-out .3s both heroFadeUp}.hero-actions{animation:.75s ease-out .45s both heroFadeUp}.social-links{animation:.75s ease-out .6s both heroFadeUp}@media (prefers-reduced-motion:reduce){.hero-portrait,.hero-title,.hero-description,.hero-actions,.social-links{animation:none!important}}@media (hover:none){.hero-actions a:hover,button:hover{transform:none}}@media (max-width:600px){.project-card:hover,.project-card:hover img{transform:none}.hero-portrait{animation-duration:.7s}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
