@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.10ev4cu2inrn-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.0i6ci0u~g4zml.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.0x1a9yg0jkq20.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.0dyk20wuvya7a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.0ctuso5mgh_i..woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_de7b2fa9-module__1ltb7q__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_de7b2fa9-module__1ltb7q__variable{--font-manrope:"Manrope", "Manrope Fallback"}
@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/150f724d70372c02-s.0ibo8nq1_5r8c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/750c737482d9de2f-s.0.oe-uv1--sd5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/5f402bd2d8eef81a-s.p.16whm0euli40m.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_e324fe0e-module__Cc4kyG__className{font-family:Newsreader,Newsreader Fallback;font-style:normal}.newsreader_e324fe0e-module__Cc4kyG__variable{--font-newsreader:"Newsreader", "Newsreader Fallback"}
:root{--page-bg:#f5f7fa;--page-fg:#151a1f;--surface:#fff;--surface-2:#e9eef4;--card-bg:#fffffff0;--card-strong:#fff;--card-border:#151a1f1f;--header-bg:#f5f7fae6;--text-muted:#56606a;--text-soft:#747e88;--accent:#2f66c5;--accent-strong:#1f4e9a;--accent-soft:#2f66c51f;--accent-2:#24765a;--accent-2-soft:#24765a1f;--shadow-soft:0 18px 44px #1e26301a}html.dark{--page-bg:#111316;--page-fg:#f2f4ef;--surface:#171b20;--surface-2:#20252b;--card-bg:#171b20eb;--card-strong:#1c2229;--card-border:#f2f4ef24;--header-bg:#111316e0;--text-muted:#b8c0c8;--text-soft:#8f9aa5;--accent:#6ea8ff;--accent-strong:#9fc5ff;--accent-soft:#6ea8ff24;--accent-2:#67d3a0;--accent-2-soft:#67d3a026;--shadow-soft:0 28px 80px #00000047}*{box-sizing:border-box}html,body{scroll-behavior:smooth;background:linear-gradient(135deg, color-mix(in srgb, var(--page-bg) 96%, var(--accent) 4%), var(--page-bg) 44%), linear-gradient(180deg, var(--page-bg), color-mix(in srgb, var(--page-bg) 94%, black 6%));color:var(--page-fg);font-family:var(--font-manrope), "Segoe UI", sans-serif;margin:0;padding:0;overflow-x:hidden}body{min-height:100vh}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.ambient-glow{pointer-events:none;z-index:0;background:linear-gradient(90deg,#0000,#2f66c50a,#0000),linear-gradient(#24765a0b,#0000 38%);position:fixed;inset:0}.grain-overlay{pointer-events:none;z-index:0;opacity:.05;background-image:linear-gradient(#151a1f0d 1px,#0000 1px),linear-gradient(90deg,#151a1f0a 1px,#0000 1px);background-size:32px 32px;position:fixed;inset:0}html.dark .grain-overlay{background-image:linear-gradient(#f2f4ef0a 1px,#0000 1px),linear-gradient(90deg,#f2f4ef09 1px,#0000 1px)}.nav-link,.footer-link{color:var(--text-muted);white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:.65rem .85rem;font-size:.925rem;font-weight:750;line-height:1;display:inline-flex}.nav-link:hover,.nav-link.active,.footer-link:hover{background:var(--accent-soft);border-color:var(--card-border);color:var(--page-fg);text-decoration:none}.site-container{width:min(1280px,100vw - 2rem);max-width:min(1280px,100vw - 2rem);margin-inline:auto;padding-inline:0}.hero-panel,.section-panel,.contact-panel,.work-index-panel,.timeline-card,.skill-group-card,.achievement-card,.project-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--shadow-soft);border-radius:8px}.hero-panel{width:100%;min-width:0;max-width:100%;padding:clamp(1.6rem,3.4vw,3rem)}.compact-page-hero{min-height:0}.hero-badge,.status-badge,.timeline-index,.skill-chip{border:1px solid var(--card-border);border-radius:999px;font-weight:800}.hero-badge{background:var(--accent-soft);color:var(--accent-strong);align-self:flex-start;padding:.45rem .75rem}.proof-card,.index-row{background:color-mix(in srgb, var(--surface) 78%, transparent);border:1px solid var(--card-border);border-radius:8px;padding:1rem}.hero-visual{background:linear-gradient(135deg, var(--surface), var(--surface-2));border:1px solid var(--card-border);min-height:0;box-shadow:var(--shadow-soft);border-radius:8px;flex-direction:column;gap:.9rem;padding:1rem;display:flex;overflow:hidden}.visual-caption{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:1rem}.hero-feature-shot,.hero-thumb-shot{background:var(--card-strong);border:1px solid var(--card-border);border-radius:8px;min-width:0;overflow:hidden}.shot-bar{border-bottom:1px solid var(--card-border);min-height:42px;padding:.65rem .85rem}.hero-feature-image,.hero-shot-image{background:color-mix(in srgb, var(--surface) 92%, var(--accent-soft));object-fit:contain;width:100%;display:block}.hero-feature-image{aspect-ratio:16/8.6;padding:.6rem}.hero-shot-image{aspect-ratio:16/10;padding:.5rem}.section-eyebrow{color:var(--accent);text-transform:uppercase;margin:0;font-size:.86rem;font-weight:850;line-height:1.2}.project-card{transition:border-color .16s,transform .16s;overflow:hidden}.project-card:hover{border-color:color-mix(in srgb, var(--accent) 38%, var(--card-border));transform:translateY(-2px)}.project-card.tone-blue{--tone:#2f66c5;--tone-soft:#2f66c51f}.project-card.tone-green{--tone:#24765a;--tone-soft:#24765a21}.project-card.tone-orange{--tone:#b46b35;--tone-soft:#b46b3524}.project-card.tone-slate{--tone:#4f5f70;--tone-soft:#4f5f7026}.project-card.tone-violet{--tone:#6950b8;--tone-soft:#6950b821}.project-card.tone-teal{--tone:#15808a;--tone-soft:#15808a21}.project-visual{background:linear-gradient(135deg, var(--tone-soft), color-mix(in srgb, var(--surface) 86%, transparent));border:1px solid var(--card-border);aspect-ratio:16/9.5;border-radius:8px;align-items:center;min-height:0;padding:.75rem;display:flex;overflow:hidden}.project-visual.compact{aspect-ratio:16/9;min-height:0}.project-image{background:color-mix(in srgb, var(--surface) 92%, var(--tone-soft,var(--accent-soft)));object-fit:contain;border-radius:6px;width:100%;height:100%;display:block}.logo-visual{justify-content:center}.logo-visual .project-image{aspect-ratio:1;background:var(--surface);border:1px solid var(--card-border);box-shadow:inset 0 0 0 10px color-mix(in srgb, var(--tone-soft,var(--accent-soft)) 42%, transparent);width:min(42%,9rem);height:auto;max-height:9rem;padding:1.4rem}.header-shell,.nav-scroll,.nav-row{min-width:0}.header-shell{flex-wrap:nowrap}.brand-link{flex:none}.nav-scroll{scrollbar-width:none;flex:auto;justify-content:flex-end;max-width:min(760px,100%);display:flex;overflow-x:auto}.nav-scroll::-webkit-scrollbar{display:none}.nav-row{width:max-content}.theme-toggle{flex:none;width:2.35rem;min-width:2.35rem;height:2.35rem;padding-inline:0}.theme-icon{width:1.05rem;height:1.05rem;display:block}.status-badge{background:var(--tone-soft,var(--accent-soft));color:var(--tone,var(--accent-strong));text-align:center;white-space:normal;max-width:170px;padding:.35rem .65rem}.skill-chip{background:color-mix(in srgb, var(--surface) 76%, transparent);color:var(--text-muted);padding:.35rem .6rem}.bullet-dot{background:var(--accent);border-radius:999px;flex:none;width:.45rem;height:.45rem}.timeline-card,.skill-group-card,.achievement-card,.section-panel,.contact-panel,.work-index-panel{padding:clamp(1.25rem,3vw,2rem)}.timeline-index{background:var(--accent-2-soft);color:var(--accent-2);align-self:flex-start;padding:.35rem .65rem}.mock-dot{background:var(--tone,var(--accent));opacity:.75;border-radius:999px;width:.65rem;height:.65rem}.mock-line{background:color-mix(in srgb, var(--tone,var(--accent)) 24%, var(--surface));border-radius:999px;width:64%;height:.9rem}.mock-line.wide{width:86%;height:1.4rem}.mock-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.5rem;display:grid}.mock-grid>div{background:color-mix(in srgb, var(--tone,var(--accent)) 14%, var(--surface));border:1px solid var(--card-border);border-radius:8px;min-height:54px}.fade-in-up{animation:.52s both fade-up}.delayed{animation-delay:.1s}.delayed-2{animation-delay:.18s}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.header-shell{flex-wrap:wrap;align-items:flex-start;position:relative}.brand-link{order:1}.theme-toggle{margin-left:.2rem}.nav-scroll{flex:0 0 100%;order:3;justify-content:flex-start;width:100%;max-width:100%;overflow-x:visible}.nav-row{flex-wrap:wrap;width:100%}.nav-secondary{display:none}.hero-summary{width:calc(100vw - 5.5rem);max-width:calc(100vw - 5.5rem)!important}.nav-link,.footer-link{padding:.58rem .72rem;font-size:.875rem}.hero-feature-image,.hero-shot-image,.project-image{padding:.4rem}}@media (prefers-reduced-motion:reduce){.fade-in-up,.delayed,.delayed-2,.project-card{transition:none;animation:none}.project-card:hover{transform:none}}
