*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#242126;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(1160px,100% - 48px);margin-inline:auto}.site-header{border-bottom:1px solid #e6e3e8;background:#fffffff5;position:sticky;top:0;z-index:10}.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:800;letter-spacing:-.04em;font-size:1.05rem}.brand span{color:#6d42d9}.nav{display:flex;gap:28px;align-items:center;font-size:.92rem}.nav a{color:#706c75}.nav a:hover,.nav a.active{color:#242126}.nav__contact{border:1px solid #242126!important;color:#242126!important;padding:7px 13px}.hero{padding:130px 0 110px}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:#6d42d9;margin:0 0 18px}.hero h1,.page-intro h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.98;letter-spacing:-.065em;max-width:1000px;margin:0}.hero__intro{max-width:690px;font-size:1.2rem;color:#706c75;margin:32px 0}.actions{display:flex;gap:12px}.button{display:inline-flex;padding:11px 18px;border:1px solid #242126;font-weight:700;font-size:.9rem}.button--primary{background:#242126;color:#fff}.button:hover{transform:translateY(-1px)}.section{padding:90px 0}.section--muted{background:#faf9fb;max-width:none}.section--muted .split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading a,.text-link{color:#6d42d9;font-weight:700}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #e6e3e8}.project-card{min-height:300px;padding:28px;border-bottom:1px solid #e6e3e8}.project-card:nth-child(odd){border-right:1px solid #e6e3e8}.project-card:hover{background:#f2effd}.project-card__number{color:#6d42d9;font-size:.75rem;font-weight:800}.project-card h2{font-size:2rem;letter-spacing:-.04em;margin:35px 0 10px}.project-card p{color:#706c75;max-width:520px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.tags span{font-size:.72rem;border:1px solid #e6e3e8;padding:4px 7px;color:#706c75}.page{padding:100px 0 120px}.page-intro{padding-bottom:80px;border-bottom:1px solid #e6e3e8}.work-list{border-top:1px solid #e6e3e8}.work-row{display:grid;grid-template-columns:60px 1fr 30px;gap:20px;align-items:start;padding:30px 0;border-bottom:1px solid #e6e3e8}.work-row>span{color:#6d42d9;font-weight:800;font-size:.8rem}.work-row h2{margin:0 0 5px;font-size:2rem;letter-spacing:-.04em}.work-row p{margin:0;color:#706c75}.work-row .arrow{text-align:right;font-size:1.2rem}.work-row:hover h2{color:#6d42d9}.back{display:inline-block;margin-bottom:70px;color:#6d42d9;font-weight:700}.project h1{font-size:clamp(3rem,7vw,6rem);line-height:1;letter-spacing:-.06em;margin:0 0 25px}.project__lead{font-size:1.35rem;color:#706c75;max-width:760px}.project__meta{display:grid;grid-template-columns:1fr 2fr;gap:50px;border-top:1px solid #e6e3e8;border-bottom:1px solid #e6e3e8;margin:60px 0;padding:25px 0}.project__meta span,.fact span{display:block;color:#706c75;font-size:.7rem;font-weight:800;letter-spacing:.1em;margin-bottom:8px}.rich-text{max-width:760px;font-size:1.08rem;margin-bottom:30px}.content-grid{display:grid;grid-template-columns:2fr 1fr;gap:100px;font-size:1.08rem}.content-grid aside{border-left:1px solid #e6e3e8;padding-left:30px}.fact{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid #e6e3e8}.tech-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px}.tech-group h2{font-size:1rem;text-transform:uppercase;letter-spacing:.12em}.tech-group ul{list-style:none;padding:0;margin:20px 0}.tech-group li{font-size:1.6rem;border-bottom:1px solid #e6e3e8;padding:9px 0;letter-spacing:-.03em}.cv-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #e6e3e8;padding-bottom:45px}.cv-head h1{font-size:5rem;line-height:1;letter-spacing:-.06em;margin:0}.cv-role{color:#706c75}.cv-section{padding:50px 0;border-bottom:1px solid #e6e3e8;display:grid;grid-template-columns:220px 1fr;gap:50px}.cv-section>h2{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.13em}.cv-section article{display:grid;grid-template-columns:130px 1fr;gap:25px;margin-bottom:35px}.cv-section article h3{margin:0;font-size:1.5rem}.cv-section article p{margin:8px 0}.cv-date,.muted{color:#706c75;font-size:.85rem}.contact h1{font-size:clamp(4rem,9vw,9rem);letter-spacing:-.07em;line-height:.9;margin:0}.contact__lead{font-size:1.3rem;color:#706c75;max-width:600px;margin:35px 0 50px}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.contact-links a{font-size:1.4rem;border-bottom:1px solid #242126}.site-footer{border-top:1px solid #e6e3e8}.footer-inner{min-height:100px;display:flex;justify-content:space-between;align-items:center;color:#706c75;font-size:.8rem}@media(max-width:760px){.container{width:min(100% - 32px,1160px)}.nav{gap:13px}.nav a:not(.nav__contact){display:none}.hero{padding:85px 0}.hero h1,.page-intro h1{font-size:3.2rem}.section--muted .split,.project-grid,.content-grid,.tech-grid,.project__meta{grid-template-columns:1fr}.project-card:nth-child(odd){border-right:0}.cv-head{align-items:flex-start;gap:25px;flex-direction:column}.cv-head h1{font-size:3.5rem}.cv-section{grid-template-columns:1fr;gap:20px}.cv-section article{grid-template-columns:1fr;gap:5px}.footer-inner{padding:25px 0;align-items:flex-start;gap:10px;flex-direction:column}.work-row h2{font-size:1.5rem}}.contact{max-width:900px}.contact__lead{max-width:650px;margin-bottom:3rem;font-size:1.15rem;line-height:1.7}.contact-form{display:flex;flex-direction:column;gap:1.75rem;max-width:760px;margin-bottom:4rem}.contact-form__field{display:flex;flex-direction:column;gap:.5rem}.contact-form label{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;padding:.9rem 1rem;border:1px solid #c9c9c9;border-radius:0;background:#fff;color:#222;font:inherit;font-size:1rem;line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#6c2bd9;box-shadow:0 0 0 1px #6c2bd9}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#888}.contact-form textarea{min-height:180px;resize:vertical}.contact-form__submit{align-self:flex-start;padding:.9rem 1.5rem;border:0;border-radius:0;background:#222;color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease}.contact-form__submit:hover{background:#6c2bd9}.contact-form__submit:focus-visible{outline:2px solid #6c2bd9;outline-offset:3px}.contact-form__submit:disabled{opacity:.55;cursor:wait}.contact-form__message{margin:0;padding:1rem;border-left:3px solid #6c2bd9;background:#f5f2fa}.contact-form__message--success{color:#222}.contact-form__message--error{border-color:#a32020;background:#faf2f2;color:#8b1e1e}.contact-form__honeypot{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contact-links{display:flex;flex-wrap:wrap;gap:1.5rem;padding-top:2rem;border-top:1px solid #ddd}.contact-links a{color:#222;font-weight:600;text-decoration:none}.contact-links a:hover{color:#6c2bd9}.contact-links a:focus-visible{outline:2px solid #6c2bd9;outline-offset:3px}
