/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--navy:#071b33;--navy-2:#0b2749;--blue:#195ea8;--sky:#cfe6f8;--ice:#eef5fa;--ink:#0a1d30;--muted:#678;--line:#d8e2ea;--white:#fff;--radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;background:#f8fbfd;margin:0}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (prefers-reduced-motion:reduce){:focus-visible{outline-offset:0}}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8fbfde6;border-bottom:1px solid #071b3314;grid-template-columns:1fr auto 1fr;align-items:center;height:84px;padding:0 clamp(24px,6vw,92px);display:grid;position:fixed;top:0;left:0;right:0}.brand{letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap;font-size:19px;font-weight:800}.brand span{color:var(--blue)}nav{gap:34px;display:flex}nav a{color:#435467;font-size:13px;font-weight:600;transition:color .2s}nav a:hover{color:var(--blue)}.header-actions{justify-self:end;align-items:center;gap:18px;display:flex}.lang-switch{border:1px solid #071b332e;border-radius:100px;align-items:center;gap:4px;padding:4px 6px;display:flex}.lang-switch span{color:#94a6b7;font-size:12px}.lang-switch button{color:#435467;cursor:pointer;font:inherit;letter-spacing:.04em;background:0 0;border:0;border-radius:100px;padding:5px 9px;font-size:11px;font-weight:650;transition:all .2s}.lang-switch button:hover{color:var(--blue)}.lang-switch button.active{background:var(--navy);color:#fff}.nav-cta{border:1px solid var(--navy);border-radius:100px;justify-self:end;padding:10px 18px;font-size:13px;font-weight:650;transition:all .2s}.nav-cta:hover{background:var(--navy);color:#fff}.menu-toggle{cursor:pointer;background:0 0;border:1px solid #071b332e;border-radius:100px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:42px;height:38px;padding:0;transition:transform .15s;display:none}.menu-toggle span{background:var(--navy);width:16px;height:2px;transition:transform .25s,opacity .2s;display:block}.menu-toggle.open span:first-child{transform:translateY(3px)rotate(45deg)}.menu-toggle.open span:last-child{transform:translateY(-3px)rotate(-45deg)}.mobile-menu{display:none}.hero{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);min-height:700px;padding:128px clamp(24px,6vw,92px) 64px;display:grid;position:relative;overflow:hidden}.hero:before{content:"";opacity:.65;background:radial-gradient(circle,#195ea812 0 1px,#0000 1.5px) 0 0/22px 22px;width:360px;height:360px;position:absolute;top:130px;left:-80px}.hero-copy{z-index:2;align-self:center;position:relative}.eyebrow{color:var(--blue);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;font-weight:750;display:flex}.eyebrow span{background:var(--blue);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 5px #195ea81f}.hero h1{color:var(--navy);letter-spacing:-.065em;margin:30px 0 26px;font-size:clamp(56px,6.4vw,98px);font-weight:660;line-height:1}.hero h1 span{color:var(--blue)}.hero-role{color:#31475c;letter-spacing:.03em;font-size:13px;font-weight:650}.hero-role i{color:#94a6b7;margin:0 6px;font-style:normal}.hero-summary{color:var(--muted);max-width:580px;margin:24px 0 32px;font-size:17px;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{border:1px solid var(--navy);border-radius:100px;align-items:center;gap:28px;padding:14px 20px;font-size:13px;font-weight:700;transition:all .25s;display:inline-flex}.button span{font-size:17px}.button.primary{background:var(--navy);color:var(--white)}.button.primary:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-2px)}.button.secondary:hover{background:var(--ice);transform:translateY(-2px)}.button:active{transform:translateY(0)scale(.98)}.nav-cta:active,.menu-toggle:active,.lang-switch button:active{transform:scale(.96)}.hero-visual{aspect-ratio:1;place-self:center end;width:100%;max-width:570px;position:relative}.hero-visual:before{background:linear-gradient(145deg, var(--sky), #e9f3fa);content:"";border-radius:44% 56% 55% 45%;position:absolute;inset:8%;transform:rotate(-8deg)}.visual-grid{background-image:linear-gradient(#071b3312 1px,#0000 1px),linear-gradient(90deg,#071b3312 1px,#0000 1px);background-size:30px 30px;border-radius:50%;position:absolute;inset:15%;transform:rotate(10deg);-webkit-mask-image:radial-gradient(circle,#000 35%,#0000 72%);mask-image:radial-gradient(circle,#000 35%,#0000 72%)}.hero-photo{background:var(--sky);object-fit:cover;z-index:1;border-radius:50%;transition:transform .5s;position:absolute;inset:10%}.hero-visual:hover .hero-photo{transform:scale(1.03)}.hero-visual>.visual-grid,.hero-visual>.orbit{z-index:0}.hero-visual>.visual-label{z-index:2}.orbit{border:1px solid #195ea859;border-radius:50%;position:absolute}.orbit-one{inset:3%;transform:rotate(25deg)scaleY(.65)}.orbit-two{inset:17%;transform:rotate(-38deg)scaleY(1.48)}.orbit-one:after,.orbit-two:after{background:var(--blue);content:"";border:4px solid #f8fbfd;border-radius:50%;width:14px;height:14px;position:absolute;top:12%;right:15%}.visual-label{color:#435467;letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffdb;border:1px solid #071b331a;border-radius:100px;padding:10px 14px;font-size:10px;font-weight:700;position:absolute;box-shadow:0 10px 32px #071b3314}.label-top{top:20%;right:5%}.label-bottom{bottom:15%;left:2%}.hero-meta{align-items:flex-end;gap:38px;display:flex;position:absolute;bottom:52px;left:clamp(24px,6vw,92px)}.hero-meta div{align-items:flex-start;gap:9px;display:flex}.hero-meta span{color:var(--blue);font-family:var(--font-geist-mono);font-size:9px}.hero-meta p{color:#718293;letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:9px;font-weight:650;line-height:1.5}.section{grid-template-columns:240px 1fr;padding:120px clamp(24px,6vw,92px);display:grid}.section-label{color:#748698;letter-spacing:.16em;text-transform:uppercase;padding-top:8px;font-size:10px;font-weight:750}.section-label span{color:var(--blue);font-family:var(--font-geist-mono);margin-right:16px}.section-content{min-width:0}.about{border-bottom:1px solid var(--line);border-top:1px solid var(--line);background:#fff}.about-grid{grid-template-columns:minmax(300px,1fr) 1fr;gap:70px;display:grid}.about h2,.section-heading h2,.skills h2{color:var(--navy);letter-spacing:-.055em;margin:0;font-size:clamp(38px,4vw,58px);font-weight:620;line-height:1.05}.about-text{border-left:1px solid var(--line);padding-left:50px}.about-text p{color:var(--muted);margin:0 0 22px;font-size:16px;line-height:1.8}.experience{background:var(--navy);color:#fff}.section-label.light{color:#8ea1b5}.section-label.light span{color:#68b4ef}.section-heading{justify-content:space-between;align-items:end;margin-bottom:60px;display:flex}.section-heading>p{color:var(--muted);max-width:380px;margin:0;line-height:1.7}.light-heading h2{color:#fff;max-width:600px}.light-heading>p{color:#93a7ba}.timeline{border-top:1px solid #2b4057}.timeline-item{border-bottom:1px solid #2b4057;grid-template-columns:160px 1fr;gap:40px;padding:42px 0;display:grid}.timeline-date,.timeline-kicker{color:#68b4ef;font-family:var(--font-geist-mono);letter-spacing:.1em;margin:4px 0 18px;font-size:10px}.timeline-item h3{letter-spacing:-.025em;margin:0 0 8px;font-size:25px;font-weight:580}.timeline-item h4{color:#9eb1c3;margin:0 0 15px;font-size:14px;font-weight:500}.timeline-item div>p:last-child{color:#9eb1c3;max-width:720px;margin:0;line-height:1.7}.projects{background:#f8fbfd}.project-list{border-top:1px solid var(--line)}.project-card{border-bottom:1px solid var(--line);grid-template-columns:48px 1fr 50px;align-items:start;gap:34px;padding:38px 8px;transition:all .25s;display:grid}.project-card:hover{background:#fff;padding-left:24px;padding-right:24px}.project-number{color:#8ca0b2;font-family:var(--font-geist-mono);padding-top:7px;font-size:10px}.project-type,.card-kicker,.skills-kicker{color:var(--blue);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:10px;font-weight:750}.project-body h3{color:var(--navy);letter-spacing:-.035em;margin:0 0 10px;font-size:28px}.project-body>p{color:var(--muted);max-width:700px;margin:0;line-height:1.7}.tags{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.tags span{background:var(--ice);color:#4d657a;border:1px solid #dce9f3;border-radius:100px;padding:6px 10px;font-size:10px;font-weight:650}.project-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:42px;height:42px;font-size:18px;transition:all .2s;display:grid}.project-card:hover .project-arrow{background:var(--blue);border-color:var(--blue);color:#fff;transform:rotate(45deg)}.education{border-top:1px solid var(--line);background:#fff}.split-cards{grid-template-columns:1.1fr .9fr;gap:18px;display:grid}.info-card{background:var(--ice);border-radius:var(--radius);min-height:285px;padding:38px}.info-card.featured{background:var(--blue);color:#fff}.featured .card-kicker{color:#b7ddf8}.info-card h3{letter-spacing:-.04em;max-width:520px;margin:48px 0 8px;font-size:29px;font-weight:600;line-height:1.2}.info-card>p:not(.card-kicker){color:#c6def1;margin:0}.card-footer{border-top:1px solid #ffffff3d;justify-content:space-between;align-items:center;margin-top:45px;padding-top:20px;display:flex}.card-footer span{color:#c6def1;font-size:12px}.card-footer strong{font-size:13px}.role-row{border-top:1px solid #cedce7;grid-template-columns:55px 1fr;align-items:start;gap:18px;padding:24px 0;display:grid}.role-row:first-of-type{margin-top:35px}.role-row span{color:var(--blue);font-family:var(--font-geist-mono);font-size:10px}.role-row p{color:#53687b;margin:0;line-height:1.55}.role-row strong{color:var(--navy)}.skills{color:#fff;background:#091f39}.skills-layout{grid-template-columns:.8fr 1.2fr;gap:60px;display:grid}.skills h2{color:#fff;max-width:480px}.skill-cloud{flex-wrap:wrap;align-content:start;gap:10px;display:flex}.skill-cloud span{color:#b5c4d2;border:1px solid #3a5067;border-radius:100px;padding:12px 17px;font-size:13px}.skill-cloud span.accent{color:#fff;background:#11365d;border-color:#26598b}.soft-skill-block{border-top:1px solid #2b435b;grid-column:1/-1;padding-top:38px}.soft-grid{grid-template-columns:repeat(4,1fr);display:grid}.soft-grid p{color:#c3cfda;border-right:1px solid #2b435b;align-items:center;gap:12px;margin:0;padding:14px 20px 14px 0;font-size:13px;display:flex}.soft-grid p:nth-child(4n){border-right:0;padding-left:20px}.soft-grid p span{color:#5c88b1;font-family:var(--font-geist-mono);font-size:9px}.contact{background:var(--sky);padding:120px clamp(24px,6vw,92px) 45px}.contact h2{color:var(--navy);letter-spacing:-.065em;margin:28px 0 48px;font-size:clamp(48px,7vw,96px);font-weight:630;line-height:.98}.contact-email{color:var(--navy);justify-content:space-between;align-items:center;padding:20px 0;font-size:clamp(17px,2vw,26px);font-weight:600;display:flex;position:relative}.contact-email:after{background:var(--navy);content:"";transform-origin:0;width:100%;height:2px;transition:transform .35s;position:absolute;bottom:6px;left:0;transform:scaleX(0)}.contact-email:hover:after{transform:scaleX(1)}.contact-email:hover span{transform:translate(4px,-4px)}.contact-email span{transition:transform .2s}.contact-footer{grid-template-columns:1fr auto 1fr;align-items:end;margin-top:90px;display:grid}.contact-footer p{color:var(--navy);margin:0;font-size:12px;font-weight:700;line-height:1.6}.contact-footer p span,.contact-footer a{color:#506b82;font-weight:500}.contact-footer>div{gap:26px;display:flex}.contact-footer a{font-size:12px}.contact-footer a:hover{color:var(--blue)}.copyright{text-align:right;justify-self:end}@media (width<=1000px){.site-header{grid-template-columns:1fr auto}nav{display:none}.header-actions{gap:10px}.menu-toggle{display:flex}.mobile-menu{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:19;background:#f8fbfdf7;border-bottom:1px solid #071b3314;max-height:0;padding:0;transition:max-height .3s,padding .3s;display:block;position:fixed;top:84px;left:0;right:0;overflow:hidden}.mobile-menu.open{max-height:420px;padding:8px 0 20px}.mobile-menu nav{flex-direction:column;gap:0;padding:0 clamp(24px,6vw,92px);display:flex}.mobile-menu nav a{color:var(--navy);border-bottom:1px solid #071b3312;padding:16px 0;font-size:15px;font-weight:600;display:block}.mobile-menu nav a.mobile-cta{color:var(--blue);border-bottom:0;margin-top:8px}.hero{grid-template-columns:1fr .75fr;gap:28px;padding-top:118px}.hero h1{font-size:clamp(52px,8vw,78px)}.hero-visual{max-width:420px}.section{grid-template-columns:150px 1fr}.about-grid,.split-cards{grid-template-columns:1fr}.about-text{border-left:0;border-top:1px solid var(--line);padding-top:35px;padding-left:0}.section-heading{flex-direction:column;align-items:start;gap:24px}.skills-layout{grid-template-columns:1fr}.soft-grid{grid-template-columns:repeat(2,1fr)}.soft-grid p:nth-child(2n){border-right:0;padding-left:20px}.contact h2{font-size:clamp(46px,8vw,72px)}}@media (width<=860px){.section{grid-template-columns:1fr}.section-label{margin-bottom:34px}.experience .section-label{margin-bottom:0}.hero{grid-template-columns:1fr}.hero-visual{justify-self:center;max-width:340px;margin-top:8px}.hero-meta{left:clamp(24px,6vw,92px)}}@media (width<=720px){.site-header{height:70px}.mobile-menu{top:70px}.mobile-menu nav{padding:0 clamp(20px,6vw,40px)}.brand{font-size:16px}.nav-cta{padding:9px 14px;font-size:11px}.hero{flex-direction:column;min-height:auto;padding-top:124px;display:flex}.hero-copy{order:1}.hero h1{font-size:clamp(46px,15vw,68px)}.hero-role{line-height:1.7}.hero-visual{order:2;max-width:340px;margin-top:44px}.hero-meta{order:3;grid-template-columns:repeat(3,1fr);gap:12px;width:100%;margin-top:40px;display:grid;position:static}.hero-meta div{display:block}.hero-meta span{font-size:9px}.hero-meta p{letter-spacing:.06em;margin-top:5px;font-size:8.5px}.section{padding-top:78px;padding-bottom:78px;display:block}.section-label{margin-bottom:36px}.about-grid{gap:34px}.timeline-item{grid-template-columns:1fr;gap:16px}.timeline-date{margin-bottom:0}.project-card{grid-template-columns:30px 1fr 42px;gap:12px}.project-arrow{align-self:start;width:38px;height:38px;display:inline-flex}.project-body{padding-right:0}.project-body h3{font-size:23px}.project-type{font-size:9px}.info-card{padding:26px}.info-card h3{font-size:24px}.role-row p{font-size:15px}.soft-grid{grid-template-columns:1fr}.soft-grid p,.soft-grid p:nth-child(2n),.soft-grid p:nth-child(4n){border-bottom:1px solid #2b435b;border-right:0;padding-left:0}.contact{padding-top:82px}.contact h2{font-size:clamp(40px,12vw,60px)}.contact-email{font-size:17px}.contact-footer{grid-template-columns:1fr;align-items:start;gap:26px}.contact-footer>div{flex-direction:column;gap:8px}.copyright{grid-column:auto;justify-self:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.section,.contact{animation:linear both reveal-up;animation-timeline:view();animation-range:entry entry 28%}.timeline-item,.project-card{animation:linear both reveal-up;animation-timeline:view();animation-range:entry entry 22%}}}@keyframes reveal-up{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
