:root{--bg:#f6f7fc;--surface:#fff;--ink:#11142b;--night:#0d1030;--muted:#566080;--line:#e1e5f2;--violet:#5b4dff;--coral:#ff6b57;--mint:#13b08f;--max:1120px;--pad:clamp(1rem, 4vw, 2rem);--wrap:min(var(--max), calc(100% - 2 * var(--pad)));--head:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--body:"Instrument Sans", "Segoe UI", system-ui, sans-serif;box-sizing:border-box}*,:before,:after{box-sizing:inherit}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65;overflow-x:clip}h1,h2,h3{font-family:var(--head);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:700;line-height:1.1}p{text-wrap:pretty;max-width:60ch;margin:0}ul,ol,dl,dd{margin:0;padding:0;list-style:none}a{color:inherit}:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:6px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:50;background:var(--ink);color:#fff;border-radius:8px;padding:.6rem 1rem;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}main,.header-inner,.footer-inner{width:var(--wrap);margin-inline:auto}.btn{text-align:center;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:.6rem 1.3rem;font-weight:600;text-decoration:none;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--violet);color:#fff}.btn.primary:hover{background:#4638e6}.btn.ghost{color:#fff;border-color:#ffffff4d}.btn.ghost:hover{background:#ffffff1f;border-color:#fff}.btn.small{min-height:40px;padding:.4rem 1.1rem}.site-header{z-index:40;padding-top:env(safe-area-inset-top,0px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f6f7fce0;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:68px;display:flex}.brand{font-family:var(--head);white-space:nowrap;align-items:center;gap:.65rem;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.logo{background:linear-gradient(135deg, var(--violet), var(--coral));color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:.95rem;font-weight:800;display:grid}.site-header nav ul{align-items:center;gap:.25rem;display:flex}.site-header nav li a:not(.btn){color:var(--muted);border-radius:999px;padding:.5rem .9rem;font-weight:500;text-decoration:none;display:block}.site-header nav li a:not(.btn):hover{background:var(--line);color:var(--ink)}.site-header nav .btn{margin-left:.5rem}.menu-btn{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;padding:0;display:none}.bars,.bars:before,.bars:after{background:var(--ink);border-radius:2px;width:18px;height:2px;transition:transform .2s,top .2s;display:block}.bars{position:relative}.bars:before,.bars:after{content:"";position:absolute;left:0}.bars:before{top:-6px}.bars:after{top:6px}.open .bars{background:0 0}.open .bars:before{top:0;transform:rotate(45deg)}.open .bars:after{top:0;transform:rotate(-45deg)}@media (width<=767px){.menu-btn{display:grid}.site-header nav{left:var(--pad);right:var(--pad);background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:.75rem;display:none;position:absolute;top:calc(100% + .5rem);box-shadow:0 18px 40px #11142b24}.open nav{display:block}.site-header nav ul{flex-direction:column;align-items:stretch}.site-header nav li a:not(.btn){padding:.85rem 1rem}.site-header nav .btn{margin:.4rem 0 0;display:flex}}main{padding-top:clamp(1rem,3vw,1.75rem)}.hero{color:#fff;background:radial-gradient(60% 80% at 100% 0%, #5b4dff8c, transparent 60%), radial-gradient(50% 60% at 0% 100%, #ff6b5747, transparent 60%), var(--night);border-radius:clamp(24px,4vw,40px);align-items:center;gap:2.5rem;padding:clamp(1.75rem,6vw,4.5rem);display:grid;position:relative;overflow:hidden}.hero>*{min-width:0}.status{color:#d6d9f5;border:1px solid #ffffff40;border-radius:999px;margin-bottom:1.25rem;padding:.3rem .9rem;font-size:.92rem;display:inline-block}.hero h1{letter-spacing:-.045em;font-size:clamp(2.5rem,8.5vw,5.4rem);font-weight:800;line-height:1}.hero-role{letter-spacing:-.02em;color:#ffb4a8;margin-top:.8rem;font-size:clamp(1.2rem,3.2vw,2rem);font-weight:500;display:block}.hero-summary{color:#cfd3f2;margin-top:1.5rem;font-size:clamp(1rem,1.6vw,1.15rem)}.hero-links{grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1.75rem;display:grid}.hero-links .btn{white-space:nowrap;padding-inline:1.1rem}.hero-links li:nth-child(-n+2){grid-column:1/-1}.hero-links .btn{width:100%}@media (width>=560px){.hero-links{flex-wrap:wrap;display:flex}.hero-links .btn{width:auto}}.hero-visual{aspect-ratio:1;width:min(100%,300px);margin-inline:auto;position:relative}.monogram{background:linear-gradient(135deg, var(--violet), var(--coral));color:#fff;font-family:var(--head);letter-spacing:-.05em;border-radius:32%;place-items:center;font-size:clamp(2.6rem,9vw,4.5rem);font-weight:800;display:grid;position:absolute;inset:20%;transform:rotate(-6deg);box-shadow:0 30px 60px #0006}.chip{white-space:nowrap;color:var(--ink);background:#fff;border-radius:999px;padding:.35rem .8rem;font-size:.82rem;font-weight:600;animation:6s ease-in-out infinite bob;position:absolute;box-shadow:0 10px 24px #00000040}.c0{top:2%;left:10%}.c1{animation-delay:-1s;top:12%;right:2%}.c2{animation-delay:-2s;top:46%;left:0}.c3{animation-delay:-3s;bottom:14%;right:2%}.c4{animation-delay:-4s;bottom:2%;left:14%}.c5{animation-delay:-5s;top:40%;right:0}@keyframes bob{50%{transform:translateY(-8px)}}@media (width>=900px){.hero{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:2rem}.hero-visual{width:min(100%,340px)}}.facts{grid-template-columns:1fr;gap:1rem;margin-top:1.1rem;display:grid}.facts li{background:var(--surface);border:1px solid var(--line);border-radius:20px;align-content:start;gap:.15rem;padding:1.25rem 1.5rem;display:grid}.facts strong{font-family:var(--head);letter-spacing:-.03em;color:var(--violet);font-size:1.9rem;line-height:1.1}.facts span{color:var(--muted);font-size:.95rem}@media (width>=760px){.facts{grid-template-columns:repeat(3,1fr)}}.block{padding-top:clamp(3rem,8vw,5.5rem)}.block-head{gap:.6rem;margin-bottom:2rem;display:grid}.block-head h2{font-size:clamp(2rem,5vw,3.1rem)}.block-head p{color:var(--muted)}.cards{grid-template-columns:1fr;gap:1.1rem;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:24px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.card:before{content:"";background:var(--c);height:6px;position:absolute;inset:0 0 auto}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #11142b1a}.card article{flex-direction:column;gap:.7rem;height:100%;padding:1.75rem 1.5rem 1.5rem;display:flex}.card h3{font-size:1.3rem}.card p{color:var(--muted)}.stack{flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:.6rem;display:flex}.stack li{color:color-mix(in srgb, var(--c) 70%, #11142b);background:var(--bg);background:color-mix(in srgb, var(--c) 12%, white);border-radius:999px;padding:.2rem .7rem;font-size:.83rem;font-weight:600}@media (width>=700px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card:first-child,.card:last-child{grid-column:1/-1}.card article{padding:2rem 1.75rem 1.75rem}.card:first-child h3,.card:last-child h3{font-size:1.6rem}}@media (width>=960px){.card:first-child article,.card:last-child article{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t s""p s";align-content:start;gap:.7rem 2.5rem;display:grid}.card:first-child h3,.card:last-child h3{grid-area:t}.card:first-child p,.card:last-child p{grid-area:p}.card:first-child .stack,.card:last-child .stack{grid-area:s;justify-content:flex-end;align-self:start;max-width:22rem;margin-top:0;padding-top:.35rem}}.skills{grid-template-columns:1fr;gap:1.1rem;display:grid}.skills>div{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:1.75rem 1.5rem 1.5rem;position:relative;overflow:hidden}.skills>div:before{content:"";background:var(--c);height:6px;position:absolute;inset:0 0 auto}.skills dt{font-family:var(--head);margin-bottom:.8rem;font-size:1.2rem;font-weight:700}.skills ul{flex-wrap:wrap;gap:.45rem;display:flex}.skills li{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:.3rem .8rem;font-size:.93rem;font-weight:500}@media (width>=640px){.skills{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=980px){.skills{grid-template-columns:repeat(3,minmax(0,1fr))}}.timeline{gap:1.25rem;padding-left:1.75rem;display:grid}.timeline li:not(:last-child):after{content:"";background:linear-gradient(var(--violet), var(--coral));width:2px;height:calc(100% + 1.25rem);position:absolute;top:calc(1.75rem + 6px);left:calc(6px - 1.75rem)}.timeline li{background:var(--surface);border:1px solid var(--line);border-radius:20px;gap:.2rem;padding:1.25rem 1.5rem;display:grid;position:relative}.timeline li:before{content:"";background:var(--surface);border:3px solid var(--violet);z-index:1;border-radius:50%;width:12px;height:12px;position:absolute;top:1.75rem;left:calc(1px - 1.75rem)}.timeline time{color:var(--violet);font-weight:700}.timeline h3{font-size:1.2rem}.timeline p{color:var(--muted)}.contact-panel{color:#fff;background:radial-gradient(70% 90% at 0% 0%, #5b4dff80, transparent 60%), var(--night);border-radius:clamp(24px,4vw,40px);align-items:center;gap:1.75rem;margin-top:clamp(3rem,8vw,5.5rem);padding:clamp(1.75rem,6vw,4.5rem);display:grid}.contact-panel>*{min-width:0}.contact-copy{gap:1rem;display:grid}.contact-panel h2{max-width:16ch;font-size:clamp(1.9rem,5vw,3.3rem)}.contact-panel p{color:#cfd3f2}.contact-panel address{color:#cfd3f2;background:#ffffff12;border:1px solid #ffffff24;border-radius:22px;gap:.35rem;padding:1.25rem 1.5rem;font-style:normal;display:grid}@media (width<=479px){.contact-panel address{padding:1.1rem}}.contact-panel address a{text-underline-offset:5px;overflow-wrap:anywhere;width:fit-content;max-width:100%}.contact-panel .mail{font-family:var(--head);color:#fff;font-size:clamp(.95rem,4vw,1.5rem);font-weight:700}@media (width>=900px){.contact-panel{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}.site-footer{padding:1.5rem 0 calc(2rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);color:var(--muted);margin-top:clamp(2.5rem,6vw,4rem);font-size:.92rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;display:flex}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chip{animation:none}*{transition:none!important}}
