:root{--ink: #102031;--muted: #526477;--paper: #fcfcfa;--soft: #eff5f6;--line: #d8e2e5;--accent: #087e8b;--accent-dark: #045a63;--max-width: 1120px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper);font-size:16px;line-height:1.6}a{color:inherit}.container{width:min(calc(100% - 40px),var(--max-width));margin:0 auto}.skip-link{position:fixed;left:12px;top:-48px;z-index:10;padding:8px 12px;background:var(--ink);color:#fff}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:5;background:#fcfcfaf0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-wrap{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:24px}.brand{color:var(--ink);font-size:22px;font-weight:800;letter-spacing:-.06em;text-decoration:none}.brand span{color:var(--accent)}nav{display:flex;align-items:center;gap:20px}nav a{color:var(--muted);font-size:14px;font-weight:650;text-decoration:none}nav a:hover{color:var(--accent-dark)}.nav-contact{padding:7px 12px;border:1px solid var(--accent);border-radius:999px;color:var(--accent-dark)}.hero{padding:clamp(76px,13vw,155px) 0 clamp(70px,10vw,120px);background:linear-gradient(120deg,#eef9f8 0%,var(--paper) 58%)}.hero-grid{display:grid;grid-template-columns:1.45fr .75fr;align-items:end;gap:clamp(36px,7vw,100px)}.eyebrow,.section-kicker,.card-label,.period{margin:0;color:var(--accent-dark);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:720px;margin-bottom:18px;font-size:clamp(58px,10vw,124px);letter-spacing:-.075em;line-height:.87}h1 em{color:var(--accent);font-family:Georgia,serif;font-weight:400}h2{max-width:760px;margin-bottom:20px;font-size:clamp(32px,4.6vw,54px);letter-spacing:-.05em;line-height:1.05}h3{margin-bottom:8px;font-size:22px;letter-spacing:-.025em;line-height:1.2}.hero-copy{max-width:600px;margin-bottom:28px;color:var(--muted);font-size:clamp(18px,2vw,22px);line-height:1.5}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-block;padding:11px 17px;border-radius:5px;font-weight:750;text-decoration:none}.button-primary{background:var(--accent);color:#fff}.button-primary:hover{background:var(--accent-dark)}.button-secondary{border:1px solid var(--line);color:var(--ink)}.button-secondary:hover{border-color:var(--accent);color:var(--accent-dark)}.hero-card{padding:26px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 15px 45px #0d1b2a12}.hero-aside{display:grid;gap:18px}.card-label{margin-top:17px;margin-bottom:2px}.card-label:first-child{margin-top:0}.card-value{margin-bottom:0;font-weight:650;line-height:1.4}.signal-card{position:relative;height:135px;overflow:hidden;border:1px solid #bfe1e4;border-radius:10px;background:radial-gradient(circle at 50% 50%,#c9f1ee 0 13%,transparent 14% 29%,#e5f7f5 30% 31%,transparent 32% 48%,#d3eeec 49% 50%,transparent 51%)}.signal-card:before,.signal-card:after{position:absolute;content:"";border:1px solid rgb(8 126 139 / 30%);border-radius:50%;animation:orbit 12s linear infinite}.signal-card:before{inset:19px 62px}.signal-card:after{inset:36px 112px;animation-direction:reverse;animation-duration:8s}.signal-core{position:absolute;top:50%;left:50%;z-index:1;display:grid;width:42px;height:42px;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:var(--accent);color:#fff;font-size:14px;font-weight:800;letter-spacing:-.05em;box-shadow:0 0 0 9px #087e8b1f}.signal-chip{position:absolute;z-index:1;padding:2px 7px;border-radius:999px;background:#fff;color:var(--accent-dark);font-size:11px;font-weight:800;box-shadow:0 3px 14px #0d1b2a1a}.chip-one{top:22px;left:22%;animation:float 4s ease-in-out infinite}.chip-two{right:19%;bottom:20px;animation:float 4s ease-in-out 1s infinite}.chip-three{top:24px;right:16%;animation:float 4s ease-in-out 2s infinite}.section{padding:clamp(70px,10vw,118px) 0}.section-tint{background:var(--soft)}.split-section{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(30px,7vw,110px)}.lead{font-size:21px;line-height:1.55}.split-section p:not(.section-kicker){max-width:760px;color:var(--muted)}.section-heading{margin-bottom:38px}.section-heading .section-kicker{margin-bottom:10px}.experience-card{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(24px,6vw,86px);padding:28px 0;border-top:1px solid #bed0d3}.experience-card:last-child{border-bottom:1px solid #bed0d3}.experience-meta{display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:14px;font-weight:650}.company{margin-bottom:5px;color:var(--accent-dark);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.experience-content ul{max-width:720px;margin:14px 0 0;padding-left:20px;color:var(--muted)}.experience-content li{margin:5px 0}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.skill-filter{display:flex;flex-wrap:wrap;gap:8px;margin:-10px 0 22px}.skill-filter button{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);cursor:pointer;font:inherit;font-size:13px;font-weight:750}.skill-filter button:hover,.skill-filter button.is-active{border-color:var(--accent);background:var(--accent);color:#fff}.skill-card{min-height:170px;padding:23px;border:1px solid var(--line);border-radius:9px;background:#fff;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.skill-card:hover,.skill-card:focus{border-color:#79bfc6;outline:none;transform:translateY(-5px);box-shadow:0 16px 30px #0d1b2a1a}.skill-card h3{margin-bottom:12px;font-size:18px}.skill-card p{margin-bottom:0;color:var(--muted);font-size:15px;line-height:1.5}.education-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.education-card{padding:28px;border:1px solid #c9d9dc;border-radius:9px;background:#ffffff8c}.education-card .period{margin-bottom:18px}.education-card h3{font-size:22px}.institution{color:var(--accent-dark);font-weight:750}.education-card p:not(.period):not(.institution){color:var(--muted)}.thesis{margin-bottom:0}.contact-section{background:var(--ink);color:#fff}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:end}.contact-section .section-kicker{color:#89d1d5}.contact-section h2{margin-bottom:0}.contact-links{display:grid;gap:9px}.contact-links a{color:#fff;font-size:clamp(18px,2vw,22px);font-weight:700;text-decoration-color:#89d1d5;text-underline-offset:4px}.contact-links p{margin:3px 0 0;color:#bdcdd2}.site-footer{padding:20px 0;background:#091521;color:#bdcdd2;font-size:13px}.site-footer .container{display:flex;justify-content:space-between;gap:16px}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .64s ease,transform .64s ease}.js .reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes float{50%{transform:translateY(-6px)}}@keyframes orbit{to{transform:rotate(360deg)}}@media(max-width:760px){.container{width:min(calc(100% - 30px),var(--max-width))}.nav-wrap{min-height:58px}nav{gap:12px}nav a:not(.nav-contact){display:none}.hero-grid,.split-section,.experience-card,.contact-grid{grid-template-columns:1fr}.hero-aside{max-width:420px}.skills-grid,.education-grid{grid-template-columns:1fr}.experience-card{gap:12px}.experience-meta{flex-direction:row;justify-content:space-between}.site-footer .container{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
