:root{color-scheme:light;--ink:#17132b;--soft:#534c66;--paper:#faf9fd;--line:#e1dced;--purple:#5424c3;--pink:#e42ebd;--mint:#8cebe0;--dark:#191331}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Inter,system-ui,sans-serif}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid #c644d5;outline-offset:5px}
.skip{position:absolute;left:1rem;top:-5rem;background:white;padding:.6rem 1rem;z-index:4}.skip:focus{top:1rem}
.wrap{width:min(1136px,calc(100% - 80px));margin-inline:auto}
.bar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.top{background:var(--dark);color:white;border-bottom:1px solid #ffffff23}
.brand,.contact,nav{display:flex;align-items:center;gap:12px;font-size:.88rem;font-weight:650}
.brand span{display:grid;place-items:center;border:1px solid #b889ff;border-radius:9px;width:35px;height:35px;color:#e8d7ff}
nav{gap:30px;color:#e1d9ef}
nav a:hover,.contact:hover{color:var(--mint)}
.contact{border:1px solid #ffffff55;padding:8px 14px;border-radius:8px}
.hero{color:white;background:radial-gradient(ellipse at 88% 42%,#382263 0%,transparent 49%),var(--dark)}
.profile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,7vw,100px);align-items:center;padding-block:70px 76px}
.profile-photo{display:block;width:clamp(185px,22vw,250px);height:clamp(185px,22vw,250px);border:1px solid #ffffff49;border-radius:50%;object-fit:cover;object-position:50% 35%}
.bio{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(25px,7vw,92px)}
.bio p+p{margin-top:18px;color:var(--soft)}
.bio .actions{margin-top:28px}
.hero-grid{display:grid;grid-template-columns:1.28fr .8fr;gap:clamp(24px,7vw,100px);align-items:center;padding-block:70px 76px}
.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:.72rem;letter-spacing:.15em;font-weight:780;margin:0 0 17px;color:#5730a0}
.eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--pink);display:inline-block}
.hero .eyebrow,.closing .eyebrow{color:var(--mint)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{line-height:1.08;letter-spacing:-.045em}
h1{font-size:clamp(3rem,6.3vw,6.05rem);font-weight:780}
h1 span{color:var(--mint)}
.lead{margin-top:24px;max-width:46ch;color:#e6dff0;font-size:clamp(1rem,1.7vw,1.22rem)}
.actions,.links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:46px;padding:10px 16px;border-radius:8px;font-size:.89rem;font-weight:750}
.primary{background:var(--mint);color:#161532}.primary:hover{background:#c1fff6}
.secondary{border:1px solid #ffffff5c}.secondary:hover{background:#ffffff18}
.portrait{border:1px solid #ffffff49;background:#20173a;border-radius:18px;overflow:hidden}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:1 / 1.06;object-fit:cover;object-position:50% 40%}
figcaption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:12px 15px;font-size:.73rem;color:#f0e8ff}
.section{padding-block:clamp(55px,8vw,98px)}
h2{font-size:clamp(2.15rem,4.5vw,4.1rem);text-wrap:balance}
h3{font-size:clamp(1.25rem,2.2vw,1.65rem)}
.section-intro>p:last-child,.closing p:last-child{margin-top:18px;color:var(--soft);max-width:45ch}
.timeline,.editorial{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(25px,7vw,92px)}
.history{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.history li{display:grid;grid-template-columns:105px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
.history time,.tag{font-weight:760;font-size:.77rem;color:#5730a0}
.history p,.projects article>p:not(.tag){color:var(--soft);margin-top:8px}
.work{background:#f0ecf8;border-block:1px solid var(--line)}
.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:27px}
.projects article{border:1px solid var(--line);border-radius:16px;background:#fff;padding:clamp(18px,3vw,31px)}
.tag{margin-bottom:10px}
.logo{height:84px;margin-bottom:20px;display:flex;align-items:center}
.logo img{width:auto;height:100%;max-width:100%;object-fit:contain}
.logo.ponwi img{width:min(100%,210px);height:auto}
.projects a{display:inline-block;color:var(--purple);font-weight:750;margin-top:12px}
.projects .links{margin-top:0;gap:20px}
.projects a:hover,.channels a:hover,footer a:hover{text-decoration:underline}
.channels a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}
.channels a:first-child{border-top:1px solid var(--line)}
.channels strong,.channels small{display:block}.channels strong{font-size:1.22rem}.channels small{color:var(--soft);font-size:.88rem}.channels b{color:var(--purple)}
.closing{background:var(--dark);color:white}
.closing-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}
.closing p:last-child{color:#e6dff0}
footer{background:#110d24;color:#dcd2ed;font-size:.85rem}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.top .bar{flex-wrap:wrap;min-height:0;padding-block:12px;row-gap:10px}.top nav{order:3;width:100%;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid #ffffff23}.hero-grid,.timeline,.editorial{grid-template-columns:1fr}.hero-grid{padding-block:40px}.portrait{max-width:420px}.history li{grid-template-columns:90px 1fr}}
@media(max-width:760px){.profile,.bio{grid-template-columns:1fr}.profile{padding-block:40px}.profile-photo{width:188px;height:188px}}
@media(max-width:480px){.projects{grid-template-columns:1fr}.brand{font-size:.8rem}.contact{font-size:.78rem}.logo{height:64px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero-grid{grid-template-columns:minmax(0,1fr) auto}
.portrait{width:clamp(185px,22vw,250px);justify-self:center}
.portrait img{aspect-ratio:1 / 1.08}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr}.portrait{width:min(188px,100%);justify-self:start}.top nav{flex-wrap:wrap}}
.closing-inner:has(.contact-form){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,6vw,80px)}
.contact-form{display:grid;gap:14px;padding:clamp(16px,4vw,30px);border:1px solid #ffffff38;border-radius:16px;background:#ffffff08}
.contact-form label{display:block;margin-bottom:4px;font-weight:650;font-size:.9rem}
.contact-form label span,.contact-form p{color:#e6dff0;font-weight:400;font-size:.85rem}
.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid #d2c7e7;border-radius:7px;padding:9px 11px;color:var(--ink);background:#fff;font:inherit}
.contact-form textarea{resize:vertical}
.contact-form :is(input,textarea,button):focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.contact-form button{justify-self:start;border:0;cursor:pointer;font-family:inherit}
.contact-form button:disabled{display:none}
@media(max-width:760px){.closing-inner:has(.contact-form){grid-template-columns:1fr}}
.trajectory-pdf{margin-top:20px;border:1px solid var(--line);color:var(--purple);background:#fff}
.trajectory-pdf:hover{background:#eee8fb}
