@font-face{font-family:'Noto Sans';src:url('assets/fonts/NotoSans-Variable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('assets/fonts/NotoSans-Italic-Variable.ttf') format('truetype');font-weight:100 900;font-style:italic;font-display:swap}
:root{--orange:#ef512b;--ink:#20201e;--paper:#f2efe7;--line:rgba(32,32,30,.25);--display:'Noto Sans',sans-serif;--body:'Noto Sans',sans-serif;--hand:'Noto Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;background:var(--orange);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid currentColor;outline-offset:6px}button{border:0;background:none}img{display:block;width:100%}::selection{background:var(--ink);color:var(--paper)}.skip{position:fixed;left:20px;top:-100px;background:var(--paper);padding:14px;z-index:100}.skip:focus{top:10px}.topbar{height:96px;margin:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.wordmark{font-weight:700;font-size:30px;letter-spacing:-2px}.wordmark>span{font-size:11px;vertical-align:top;display:inline-block;margin:4px 0 0 3px;letter-spacing:0}.primary{display:flex;gap:32px;margin-left:100px}.primary button{font-size:13px;font-weight:600;padding:8px 0;position:relative}.primary button:after,.text-link:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:currentColor;transition:width .2s}.primary button:hover:after,.text-link:hover:after{width:100%}.controls{display:flex;gap:25px;align-items:center}.languages{display:flex;gap:13px}.languages button{padding:5px 0;font-size:10px;font-weight:700;opacity:.5}.languages button[aria-pressed=true]{opacity:1;border-bottom:1px solid}.theme{font-size:25px;padding:0}.playground{min-height:820px;height:calc(100svh - 96px);max-height:1080px;position:relative;overflow:hidden}.hero-top{position:relative;text-align:center;padding-top:37px;z-index:2;pointer-events:none}.eyebrow,.section-label{font-size:10px;letter-spacing:1.8px;font-weight:700;margin:0}.hero-top h1{margin:18px 0 0}.hero-top h1>span{font:600 31px var(--hand);display:block;transform:rotate(-6deg);margin-bottom:2px}.hero-top strong{font:clamp(34px,4.2vw,70px)/1.2 var(--display);letter-spacing:-3px}.hero-top strong>span{position:relative;display:inline-block}.hero-top svg{position:absolute;bottom:-10px;left:0;width:100%;height:22px;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round}.role{font-size:14px;letter-spacing:.4px;margin-top:21px}.backdrop{position:absolute;left:50%;top:285px;transform:translateX(-50%);font:clamp(110px,16vw,255px)/.83 var(--display);white-space:nowrap;text-align:center;letter-spacing:-12px;opacity:.13;pointer-events:none}.backdrop>span{color:transparent;-webkit-text-stroke:2px var(--ink)}.portrait-zone{position:absolute;top:310px;left:50%;width:310px;height:385px;transform:translateX(-50%);z-index:3}.portrait{position:absolute;inset:0 12px 30px;transform:rotate(-7deg);background:var(--paper);padding:10px 10px 0;border:2px solid var(--ink);box-shadow:9px 10px 0 var(--ink);border-radius:150px 150px 12px 12px;touch-action:none;user-select:none;transition:box-shadow .25s;cursor:grab}.portrait:hover{box-shadow:13px 15px 0 var(--ink)}.portrait:active{cursor:grabbing}.portrait-photo{position:relative;display:block;height:294px;background:#ebeaea;overflow:hidden;border-radius:140px 140px 0 0}.portrait-photo img{position:absolute;width:1210px;max-width:none;left:50%;top:-145px;transform:translateX(-50%);pointer-events:none}.portrait-footer{display:flex;justify-content:space-between;padding:10px 1px;font-size:10px;letter-spacing:1.5px;font-weight:700;align-items:center;color:#20201e}.portrait-footer span{font-size:24px;line-height:12px}.portrait-sticker{position:absolute;right:-40px;top:40px;background:var(--paper);border:1.5px solid var(--ink);color:#20201e;padding:10px 16px;border-radius:50%;transform:rotate(20deg);font:700 22px var(--hand)}.orbit{position:absolute;border:1px solid var(--ink);border-radius:50%;width:415px;height:300px;left:-50px;top:28px;transform:rotate(-35deg);opacity:.35;pointer-events:none}.orbit-two{transform:rotate(35deg);height:325px}.drag-hint{position:absolute;bottom:-35px;right:-40px;font:600 22px var(--hand);transform:rotate(-8deg);white-space:nowrap;display:flex;gap:10px;align-items:center}.drag-hint svg{fill:none;stroke:currentColor;stroke-width:2;transform:rotate(-30deg)}.left-note{position:absolute;top:330px;left:9%;transform:rotate(-10deg);z-index:2}.left-note p{font:600 29px/1.05 var(--hand);margin:0}.hand-arrow{display:block;font:70px var(--hand);margin-left:70px;transform:rotate(-15deg)}.small-index{display:block;font-size:9px;font-weight:600;letter-spacing:2px;margin-top:65px;transform:rotate(10deg)}.project-teaser{position:absolute;right:5.3%;top:330px;width:220px;height:290px;z-index:3;transform:rotate(7deg);text-align:left;transition:transform .3s}.project-teaser:hover{transform:rotate(0deg) translateY(-10px)}.teaser-label{font-size:9px;font-weight:700;letter-spacing:1.2px;display:flex;justify-content:space-between;margin-bottom:20px}.mini-card{position:absolute;display:block;background:var(--paper);border:2px solid var(--ink);padding:7px;box-shadow:4px 5px 0 var(--ink);width:193px}.mini-card img{aspect-ratio:1.27;object-fit:cover}.mini-back{transform:rotate(-17deg);left:-10px;top:43px}.mini-front{top:65px;left:20px;transform:rotate(5deg)}.mini-front>span{display:flex;justify-content:space-between;font-size:9px;padding-top:10px;letter-spacing:1px;color:#20201e;font-weight:700}.teaser-bottom{position:absolute;bottom:0;left:12px;font:600 23px var(--hand)}.hero-bottom{position:absolute;left:48px;right:48px;bottom:30px;display:flex;justify-content:space-between;align-items:end}.hero-bottom>p:first-child{display:flex;align-items:center;gap:16px;font-size:12px;line-height:1.5}.asterisk{font-size:49px;display:inline-block;animation:spin 20s linear infinite}.contact-circle{width:101px;height:101px;border-radius:50%;background:var(--ink);color:var(--orange);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-12deg);transition:transform .3s;position:absolute;left:75%;bottom:0}.contact-circle:hover{transform:rotate(0) scale(1.06)}.contact-circle span{font-size:9px;font-weight:700;letter-spacing:1px}.contact-circle b{font-size:36px;line-height:1}.scroll-note{font-size:9px;letter-spacing:1.5px;font-weight:600}.ticker{background:var(--ink);color:var(--paper);overflow:hidden;padding:20px 0;border-block:1px solid var(--ink)}.ticker>div{font:23px var(--display);white-space:nowrap;display:flex;gap:28px;width:max-content;animation:marquee 35s linear infinite;align-items:center}.ticker span{color:var(--orange);font-size:34px}.intro-section{background:var(--paper);padding:100px 6%;display:grid;grid-template-columns:1fr 2fr 1fr;gap:45px}.intro-section h2{font:clamp(30px,3.1vw,48px)/1.12 var(--display);letter-spacing:-1.6px;margin:0 0 26px}.intro-section p:not(.section-label){max-width:470px;font-size:15px;line-height:1.8}.text-link{display:inline-block;position:relative;font-size:12px;font-weight:700;padding:0 0 6px}.intro-section .text-link{margin-top:18px}.experience-mark{align-self:center;text-align:center}.experience-mark strong{display:block;font:100px/1 var(--display);letter-spacing:-8px}.experience-mark strong span{font-size:60px;color:var(--orange)}.experience-mark>span{display:block;font-size:9px;line-height:1.8;letter-spacing:1px;margin-top:20px}.featured{background:var(--paper);padding:0 6% 100px}.section-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:30px;margin-bottom:32px}.featured-grid,.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.project-card{display:block;min-width:0}.project-image{overflow:hidden;position:relative;background:#dedbd3;aspect-ratio:1.45}.project-image img{height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.project-card:hover img{transform:scale(1.05)}.project-image:after{content:'↗';position:absolute;right:16px;bottom:16px;background:var(--paper);color:#20201e;border-radius:50%;width:45px;height:45px;display:grid;place-items:center;font-size:25px;transition:transform .2s}.project-card:hover .project-image:after{transform:rotate(45deg)}.project-caption{display:flex;justify-content:space-between;gap:12px;padding-top:18px;align-items:baseline}.project-caption h3{font-size:17px;margin:0;letter-spacing:-.5px}.project-caption span{font-size:10px;white-space:nowrap;opacity:.6}.project-desc{font-size:12px;line-height:1.6;opacity:.7;margin:7px 0 0}footer{padding:65px 6% 25px}.footer-cta{display:flex;justify-content:space-between;align-items:center;font:clamp(45px,7.8vw,125px)/1.05 var(--display);letter-spacing:-5px;margin:36px 0 55px}.footer-cta>span:last-child{font:140px var(--body);transition:transform .3s}.footer-cta:hover>span:last-child{transform:translate(8px,-8px)}.footer-links{display:flex;gap:28px;flex-wrap:wrap;font-size:13px;padding-bottom:50px}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;font-size:9px;display:flex;justify-content:space-between;gap:20px}.footer-bottom>span:nth-child(2){letter-spacing:1px}.panel{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100%;max-height:none;border:0;background:var(--paper);color:var(--ink);padding:0;overscroll-behavior:contain}.panel[open]{animation:panel-in .4s cubic-bezier(.2,.8,.2,1)}.panel::backdrop{background:#20201ecc}.panel-top{height:90px;display:flex;justify-content:space-between;align-items:center;padding:0 5%;border-bottom:1px solid var(--line);position:sticky;top:0;background:inherit;z-index:10}.close{border:1px solid currentColor;border-radius:50%;height:44px;width:44px;font-size:31px;line-height:1;transition:transform .2s}.close:hover{transform:rotate(90deg)}.about-content,.work-content{max-width:1400px;margin:auto;padding:60px 6% 100px}.panel h2{font:clamp(44px,7vw,100px)/1.05 var(--display);letter-spacing:-4px;margin:25px 0 60px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.cv-art{margin-bottom:32px}.about-lead{font-size:25px;line-height:1.4;letter-spacing:-.7px;font-weight:600}.about-grid p:not(.about-lead){font-size:14px;line-height:1.8}.solid-link{display:inline-flex;padding:15px 23px;background:var(--ink);color:var(--paper);font-size:12px;align-items:center;margin-top:20px;border-radius:2px}.solid-link:hover{background:var(--orange);color:var(--ink)}.about-contact{display:flex;flex-direction:column;gap:12px;margin:30px 0 50px;font-size:13px}.about-contact a:hover{text-decoration:underline}.about-grid h3{font-size:23px;letter-spacing:-.8px;margin:40px 0 22px}.about-grid .timeline-heading{margin-top:0}.tool-list{display:flex;flex-wrap:wrap;gap:8px}.tool-list span{font-size:11px;padding:8px 12px;border:1px solid var(--line);border-radius:30px}.timeline-item{border-top:1px solid var(--line);padding:23px 0 25px}.timeline-item .date{font-size:10px;letter-spacing:1px;opacity:.6}.timeline-item h4{font-size:22px;letter-spacing:-.7px;margin:9px 0}.timeline-item .job{font-size:12px;font-weight:600}.timeline-item p{margin-bottom:0}.education-item{border-top:1px solid var(--line);padding:16px 0;display:flex;justify-content:space-between;font-size:12px;gap:15px}.education-item strong{display:block;margin-bottom:5px}.education-item>span{font-size:10px;white-space:nowrap}.work-panel{background:var(--ink);color:var(--paper);--line:#ffffff33}.work-panel .panel-top{background:var(--ink)}.work-panel .solid-link{background:var(--orange);color:var(--ink)}.work-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:35px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid var(--line);padding:10px 17px;border-radius:25px;font-size:11px}.filters button[aria-pressed=true]{background:var(--orange);color:var(--ink);border-color:var(--orange)}.work-grid{row-gap:50px}.work-end{font:36px var(--hand);margin:70px 0 0}.cursor-star{position:fixed;top:0;left:0;z-index:20;font-size:22px;color:var(--ink);pointer-events:none;opacity:0;transition:opacity .2s}.dark{--orange:#262623;--ink:#f2efe7;--paper:#32322e;--line:#f2efe744}.dark .portrait{border-color:#20201e;background:#f2efe7;box-shadow:9px 10px 0 #111}.dark .portrait-sticker{background:#f2efe7;border-color:#20201e}.dark .mini-card{background:#f2efe7;border-color:#20201e;box-shadow:4px 5px 0 #111}.dark .ticker span,.dark .experience-mark strong span{color:#ef512b}.dark .work-panel{--ink:#20201e;--paper:#f2efe7;--orange:#ef512b}.dark .about-panel{--ink:#20201e;--paper:#f2efe7;--orange:#ef512b;--line:#20201e44}.dark .about-panel .panel-top{background:#f2efe7}.dark .portrait-footer{color:#20201e}.dark .solid-link:hover{background:#ef512b}.dark .project-image:after{background:#f2efe7}@keyframes spin{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes panel-in{from{transform:translateY(35px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(min-width:1500px){.portrait-zone{top:330px}.project-teaser{right:12%}.left-note{left:15%}}
@media(max-width:1000px){.topbar{margin:0 28px}.primary{margin-left:0;gap:20px}.controls{gap:15px}.playground{min-height:800px}.hero-top strong{font-size:50px}.left-note{left:5%;top:350px}.left-note p{font-size:24px}.project-teaser{right:3%;width:180px;top:390px;transform:rotate(9deg)}.mini-card{width:156px}.teaser-label{font-size:8px}.teaser-bottom{bottom:30px;font-size:21px}.intro-section{grid-template-columns:1fr 2fr;gap:30px}.intro-section>.section-label{grid-column:1/-1}.experience-mark{grid-column:2;grid-row:2}.intro-section>div:first-of-type{grid-column:1;grid-row:2}.intro-section{grid-template-columns:2fr 1fr}.hero-bottom{left:28px;right:28px}.footer-cta{letter-spacing:-3px}.footer-cta>span:last-child{font-size:100px}.project-caption{display:block}.project-caption span{display:block;margin-top:7px}}
@media(max-width:700px){.topbar{height:79px;margin:0 20px}.wordmark{font-size:27px}.primary{display:none}.controls{gap:16px}.languages{gap:11px}.languages button{font-size:9px}.playground{height:auto;min-height:1010px;max-height:none}.hero-top{padding-top:32px}.eyebrow{font-size:8px;letter-spacing:1.3px}.hero-top h1{margin-top:18px}.hero-top h1>span{font-size:29px;margin-bottom:10px}.hero-top strong{font-size:clamp(29px,7.7vw,48px);letter-spacing:-1.9px}.hero-top svg{height:17px;bottom:-11px}.role{font-size:12px;margin-top:25px}.portrait-zone{top:288px;width:272px;height:355px}.portrait{inset:0 13px 27px;border-radius:140px 140px 10px 10px}.portrait-photo{height:268px}.portrait-photo img{width:1110px;top:-133px}.portrait-sticker{right:-20px;font-size:19px;padding:8px 12px;top:38px}.portrait-footer{font-size:8px}.orbit{width:320px;height:270px;left:-23px;top:24px}.orbit-two{height:290px}.backdrop{top:366px;font-size:25vw;letter-spacing:-5px;opacity:.14}.left-note{top:233px;left:22px;transform:rotate(-9deg)}.left-note p{font-size:20px}.hand-arrow{font-size:39px;margin-left:30px;transform:rotate(20deg)}.small-index{display:none}.drag-hint{bottom:-27px;right:5px;font-size:21px}.project-teaser{top:741px;left:35px;right:auto;width:200px;height:210px;transform:rotate(-6deg)}.teaser-label{font-size:8px;margin-bottom:8px}.mini-card{width:140px;padding:5px}.mini-back{left:15px;top:31px}.mini-front{left:36px;top:45px}.mini-front>span{font-size:7px;padding-top:7px}.teaser-bottom{bottom:5px;left:15px;font-size:20px}.hero-bottom{bottom:42px;left:20px;right:20px}.hero-bottom>p:first-child{position:absolute;right:0;bottom:180px;font-size:10px;gap:8px}.asterisk{font-size:29px}.contact-circle{left:auto;right:5px;bottom:65px;width:92px;height:92px}.scroll-note{margin-left:auto;font-size:8px}.ticker{padding:15px 0}.ticker>div{font-size:17px;gap:20px}.ticker span{font-size:25px}.intro-section{display:block;padding:60px 24px}.intro-section h2{font-size:33px;margin-top:28px}.intro-section p:not(.section-label){font-size:14px}.experience-mark{display:flex;align-items:center;text-align:left;gap:20px;margin-top:40px}.experience-mark strong{font-size:70px}.experience-mark>span{margin:0}.featured{padding:0 24px 65px}.section-heading{align-items:start;gap:15px}.section-label{font-size:8px;letter-spacing:1.4px}.text-link{font-size:10px}.featured-grid,.work-grid{grid-template-columns:1fr;gap:30px}.project-caption{display:flex}.project-caption h3{font-size:16px}.project-caption span{font-size:9px;margin-top:0}.project-desc{font-size:11px}footer{padding:45px 24px 25px}.footer-cta{font-size:10vw;letter-spacing:-1.8px;margin:30px 0 35px}.footer-cta>span:last-child{font-size:70px}.footer-links{flex-direction:column;gap:17px;font-size:12px;padding-bottom:35px}.footer-bottom{font-size:8px;flex-wrap:wrap}.footer-bottom>span:nth-child(2){order:3;width:100%;font-size:7px}.panel-top{height:79px;padding:0 24px}.close{height:36px;width:36px;font-size:26px}.about-content,.work-content{padding:40px 24px 65px}.panel h2{font-size:12vw;letter-spacing:-2px;margin:22px 0 35px}.about-grid{grid-template-columns:1fr;gap:50px}.about-lead{font-size:22px}.about-grid h3{font-size:23px}.work-toolbar{display:block}.work-toolbar>.text-link{margin:20px 0 5px}.filters button{padding:9px 14px;font-size:10px}.work-end{font-size:28px;margin-top:45px}.cursor-star{display:none}.project-image{aspect-ratio:1.35}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
html[lang="ru"] .panel h2,html[lang="ru"] .intro-section h2,html[lang="ru"] .footer-cta{font-weight:900}html[lang="ru"] .footer-cta{font-size:clamp(42px,6.2vw,100px)}
@media(max-width:700px){html[lang="ru"] .footer-cta{font-size:8.6vw}.left-note{top:213px}.left-note p{font-size:18px}.left-note .hand-arrow{font-size:31px}}
@media(min-width:701px) and (max-height:850px){.playground{min-height:624px;height:calc(100svh - 96px)}.hero-top{padding-top:20px}.hero-top h1{margin-top:12px}.hero-top h1>span{font-size:25px}.hero-top strong{font-size:46px;letter-spacing:-2px}.role{font-size:12px;margin-top:17px}.portrait-zone{top:229px;width:260px;height:315px}.portrait-photo{height:236px}.portrait-photo img{width:1000px;top:-117px}.portrait-footer{font-size:8px;padding:9px 1px}.portrait-sticker{font-size:19px;right:-28px;top:32px;padding:8px 12px}.orbit{width:350px;height:250px;left:-45px;top:15px}.orbit-two{height:265px}.drag-hint{font-size:20px;bottom:-29px;right:-30px}.left-note{top:252px}.left-note .hand-arrow{font-size:48px}.left-note p{font-size:26px}.small-index{margin-top:35px}.project-teaser{top:243px;height:250px}.teaser-bottom{bottom:0}.backdrop{top:235px;font-size:15vw}.hero-bottom{bottom:20px}.contact-circle{width:82px;height:82px;left:77%}.contact-circle span{font-size:8px}.contact-circle b{font-size:28px}}
@media(min-width:701px) and (max-height:850px){.project-teaser{height:290px}}

/* Dedicated restored portrait: avoid magnifying the tiny photograph in the CV banner. */
.portrait-photo img{position:static;width:100%;height:100%;max-width:100%;transform:none;object-fit:cover;object-position:50% 20%}
.cv-art{aspect-ratio:4/3;object-fit:cover;object-position:50% 23%}

/* One font family with verified Azerbaijani, Russian and English coverage. */
.hero-top strong,.backdrop,.intro-section h2,.experience-mark strong,.ticker>div,.footer-cta,.panel h2{font-weight:900}
.hero-top h1>span,.left-note p,.drag-hint,.teaser-bottom,.portrait-sticker,.work-end{font-style:italic}
.hero-top h1>span{font-size:25px}.left-note p{font-size:23px}.drag-hint,.teaser-bottom{font-size:17px}.portrait-sticker{font-size:17px}
.wordmark>.brand-name{font-size:inherit;vertical-align:baseline;display:inline;margin:0;letter-spacing:inherit}
.portrait-footer>[data-name]{font-size:9px;line-height:1.3;letter-spacing:1px;text-transform:uppercase}
html[lang="ru"] .backdrop{font-size:11.8vw;letter-spacing:-7px}html[lang="az"] .backdrop{font-size:12.7vw;letter-spacing:-7px}
.hero-top strong>[data-name="first"]{display:inline;position:static}
html[lang="ru"] .hero-top strong{font-size:clamp(32px,4vw,60px)}
.project-caption{align-items:start}.project-caption h3{line-height:1.4}.project-caption>span{white-space:normal;text-align:right;min-width:85px}
@media(min-width:701px) and (max-height:850px){html[lang="ru"] .hero-top strong{font-size:44px}.left-note p{font-size:22px}.drag-hint,.teaser-bottom{font-size:16px}}
@media(max-width:700px){.hero-top h1>span{font-size:22px}.role{max-width:90%;margin-left:auto;margin-right:auto}.left-note p{font-size:15px}.drag-hint,.teaser-bottom{font-size:14px}.portrait-sticker{font-size:15px}.portrait-footer>[data-name]{font-size:8px}.portrait-footer>span:last-child{font-size:24px}.project-caption{display:block}.project-caption>span{text-align:left;display:block;margin-top:7px}html[lang="ru"] .hero-top strong{font-size:7.3vw}html[lang="ru"] .backdrop,html[lang="az"] .backdrop{font-size:22vw;letter-spacing:-4px}.languages{gap:9px}}
@font-face{font-family:'Caveat';src:url('assets/fonts/Caveat-Variable.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
:root{--hand:'Caveat',cursive}
.hero-top h1>span,.left-note p,.drag-hint,.teaser-bottom,.portrait-sticker,.work-end{font-style:normal}
.hero-top h1>span{font-size:31px}.left-note p{font-size:29px}.drag-hint{font-size:22px}.teaser-bottom{font-size:23px}.portrait-sticker{font-size:22px}
@media(min-width:701px) and (max-height:850px){.hero-top h1>span{font-size:25px}.left-note p{font-size:26px}.drag-hint{font-size:20px}.teaser-bottom{font-size:21px}.portrait-sticker{font-size:19px}}
@media(max-width:700px){.hero-top h1>span{font-size:29px}.left-note p{font-size:18px}.drag-hint{font-size:21px}.teaser-bottom{font-size:20px}.portrait-sticker{font-size:19px}}
/* Creative motion follows the existing portrait, orbit and print-card motif. */
.portrait-zone{animation:portrait-drift 6s ease-in-out infinite}
.portrait-zone:hover,.portrait-zone:focus-within{animation-play-state:paused}
.orbit-one{animation:orbit-forward 30s linear infinite}.orbit-two{animation:orbit-back 38s linear infinite}
.play-spark{position:absolute;right:-100px;bottom:106px;z-index:4;display:flex;flex-direction:column;align-items:center;gap:3px;transform:rotate(10deg);padding:8px}
.play-spark>span{font-size:51px;line-height:1;display:block;transition:rotate .45s,scale .25s}
.play-spark>small{font:600 18px var(--hand);white-space:nowrap;max-width:170px;text-align:center}
.play-spark:hover>span{rotate:100deg;scale:1.15}.play-spark:active>span{scale:.85}
.creative-particle{position:fixed;z-index:100;pointer-events:none;color:var(--ink);line-height:1}.creative-particle:nth-of-type(3n){color:#f2efe7}
.project-card{perspective:1000px}.project-image{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transform-origin:center;transition:transform .25s ease}
.project-count{font-size:10px;font-weight:600;letter-spacing:1.5px;opacity:.65;margin:-10px 0 25px;text-align:right}
.work-grid{align-items:start}.work-grid .project-caption h3{font-size:16px}.work-grid .project-caption>span{font-size:9px}
.filters{gap:7px}.filters button{padding:10px 14px}
.contact-circle b{transition:translate .25s}.contact-circle:hover b{translate:3px -3px}
@keyframes portrait-drift{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-10px)}}
@keyframes orbit-forward{from{transform:rotate(-35deg)}to{transform:rotate(325deg)}}
@keyframes orbit-back{from{transform:rotate(35deg)}to{transform:rotate(-325deg)}}
@media(max-width:1000px){.play-spark{right:-67px;bottom:110px}.play-spark>span{font-size:38px}.play-spark>small{font-size:16px;max-width:130px;white-space:normal}}
@media(max-width:700px){.play-spark{right:-13px;bottom:66px;padding:7px}.play-spark>span{font-size:36px}.play-spark>small{max-width:110px;font-size:16px;background:var(--paper);color:var(--ink);border:1px solid currentColor;border-radius:20px;padding:2px 8px}.project-count{text-align:left;margin-top:-10px}.work-grid .project-caption h3{font-size:16px}.work-toolbar{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.project-image{transform:none!important}}
/* Original caricature replaces the photographic portrait throughout the site. */
.character-zone{width:360px;height:360px;top:300px}
.character-zone .portrait.character-button{inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:none;box-shadow:none;transform:rotate(-4deg);overflow:visible;cursor:grab;z-index:2}
.character-zone .portrait.character-button:hover,.dark .character-zone .portrait.character-button{box-shadow:none;border:0;background:none}
.character-button.is-grabbed{cursor:grabbing!important}
.character-sprite{position:absolute;display:block;inset:0;background-image:url('assets/ayshan-character-sprites.png');background-size:200% 200%;background-position:0 0;background-repeat:no-repeat;transform:translate(var(--look-x,0px),var(--look-y,0px));transition:transform .15s ease;pointer-events:none}
.character-sprite[data-mood="joy"]{background-position:100% 0}.character-sprite[data-mood="wink"]{background-position:0 100%}.character-sprite[data-mood="surprised"]{background-position:100% 100%}
.character-note{position:absolute;left:-28px;top:30px;font:700 23px var(--hand);transform:rotate(-17deg);z-index:3;pointer-events:none}
.character-string{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:1;pointer-events:none;opacity:.65}
.character-string path{fill:none;stroke:var(--ink);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:3 5}
.rubber-handle{position:absolute;right:-80px;top:140px;z-index:4;display:flex;flex-direction:column;align-items:center;touch-action:none;cursor:ew-resize;transform:rotate(8deg);padding:5px 8px}
.rubber-handle>span:first-child{font:700 52px/1 var(--hand);border:2px solid currentColor;border-radius:45% 55% 50% 45%;background:var(--paper);color:var(--ink);padding:0 11px 3px;transition:scale .2s}
.rubber-handle>span:last-child{font:700 22px var(--hand);margin-top:6px;white-space:nowrap}.rubber-handle:hover>span:first-child{scale:1.1}
.character-about{position:absolute;left:50%;bottom:-69px;transform:translateX(-50%) rotate(-4deg);font:700 24px var(--hand);white-space:nowrap;z-index:3;border-bottom:1px solid currentColor;padding:0 0 3px}
.character-zone .drag-hint{right:5px;bottom:-33px;font-size:23px}
.character-zone .play-spark{left:-63px;right:auto;bottom:35px}.character-zone .play-spark>small{display:none}
.about-character{position:relative;width:280px;max-width:85%;aspect-ratio:1;margin:0 auto 28px;transform:rotate(-6deg)}
.about-character .character-sprite{animation:character-say-hi 6s ease-in-out infinite}
@keyframes character-say-hi{0%,82%,100%{rotate:0deg}87%{rotate:-7deg}92%{rotate:6deg}96%{rotate:-3deg}}
@media(min-width:701px) and (max-height:850px){.character-zone{top:215px;width:310px;height:310px}.character-note{left:-22px;top:10px;font-size:21px}.rubber-handle{right:-70px;top:124px}.rubber-handle>span:first-child{font-size:44px}.rubber-handle>span:last-child{font-size:20px}.character-zone .drag-hint{bottom:-29px;font-size:21px}.character-about{bottom:-59px;font-size:23px}.character-zone .play-spark{left:-63px;bottom:22px}}
@media(max-width:1000px){.rubber-handle{right:-51px}.rubber-handle>span:first-child{font-size:35px}.rubber-handle>span:last-child{font-size:18px}.character-note{left:-7px}.character-zone .play-spark{left:-35px;bottom:0}}
@media(max-width:700px){.character-zone{top:307px;width:285px;height:285px}.character-note{top:13px;left:-2px;font-size:21px}.rubber-handle{right:-19px;top:175px}.rubber-handle>span:first-child{font-size:34px;padding:0 7px 3px}.rubber-handle>span:last-child{font-size:19px;margin-top:3px}.character-string{display:none}.character-zone .play-spark{left:0;right:auto;bottom:0}.character-zone .play-spark>span{font-size:32px}.character-zone .drag-hint{bottom:-45px;right:0;font-size:22px}.character-about{bottom:-84px;font-size:23px}.about-character{width:260px}}
@media(prefers-reduced-motion:reduce){.character-sprite{transition:none}.about-character .character-sprite{animation:none}}
/* Original approved typography, with complete fallback glyph coverage. */
@font-face{font-family:'Archivo Black';src:url('assets/fonts/ArchivoBlack-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DMSans-Variable.ttf') format('truetype');font-weight:100 1000;font-style:normal;font-display:swap}
:root{--display:'Archivo Black','Noto Sans',sans-serif;--body:'DM Sans','Noto Sans',sans-serif;--hand:'Caveat','Noto Sans',cursive}
.hero-top strong,.backdrop,.intro-section h2,.experience-mark strong,.ticker>div,.footer-cta,.panel h2{font-weight:400}
html[lang=ru]{--display:'Noto Sans',sans-serif;--body:'Noto Sans',sans-serif}html[lang=ru] .hero-top strong,html[lang=ru] .backdrop,html[lang=ru] .intro-section h2,html[lang=ru] .experience-mark strong,html[lang=ru] .ticker>div,html[lang=ru] .footer-cta,html[lang=ru] .panel h2{font-weight:900}
.wordmark{font-family:'Noto Sans',sans-serif}
.hero-top strong,.backdrop,.intro-section h2,.experience-mark strong,.ticker>div,.footer-cta,.panel h2{font-variation-settings:'wght' 900}
