:root{--blue:#193cff;--ink:#161616;--paper:#f6f6f2;--line:#d2d2ce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}::selection{background:var(--blue);color:white}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:white;z-index:10}.skip:focus{top:12px}header{height:98px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:54px;font-weight:900;letter-spacing:-7px;line-height:1}.brand span{font-size:14px;vertical-align:top;letter-spacing:0;display:inline-block;margin:7px 0 0 10px}nav{display:flex;align-items:center;gap:38px;font-size:15px}nav a:last-child{margin-left:45px}.hero{padding:40px 4% 35px}.hero-top,.hero-bottom{display:flex;align-items:start;justify-content:space-between}.hero-top p,.section-label,.frame-top,.frame-bottom,.contact-top,.work-note>span,footer,.education>span{font-family:monospace;font-size:13px;line-height:1.55;letter-spacing:.025em}.hero-top p{margin:0}.location{text-align:right}h1{font-size:clamp(80px,12.4vw,190px);line-height:.88;letter-spacing:-.075em;font-weight:600;margin:66px 0 49px;position:relative}h1>span:not(.asterisk){color:var(--blue)}.asterisk{position:absolute;right:4%;top:11%;color:var(--blue);font-size:clamp(100px,16vw,240px);font-weight:400;animation:turn 30s linear infinite;line-height:1}@keyframes turn{to{transform:rotate(360deg)}}.hero-bottom{align-items:center;padding-top:22px}.hero-bottom p{margin:0;font-size:clamp(16px,1.5vw,22px);line-height:1.35}.hero-bottom p:nth-child(2){margin-left:auto;margin-right:11%}.round-link{display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;width:65px;height:65px;font-size:32px;flex-shrink:0}.round-link:hover{background:var(--blue);color:white;text-decoration:none;border-color:var(--blue)}.section{padding:90px 4%}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px;gap:30px}h2{font-size:clamp(38px,5vw,74px);line-height:1.03;letter-spacing:-.055em;font-weight:500;margin:0}.section-heading>p{margin:0;font-size:17px}.work{padding-top:64px}.categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.frame{aspect-ratio:9/16;display:flex;flex-direction:column;justify-content:space-between;padding:19px;overflow:hidden}.frame-top,.frame-bottom{display:flex;justify-content:space-between;font-size:12px;gap:6px}.frame-word{font-size:clamp(28px,3.7vw,59px);letter-spacing:-.065em;line-height:.94;font-weight:600;transition:transform .4s}.category:hover .frame-word{transform:translateY(-7px)}.ugc{background:#dbf558}.commercial{background:var(--blue);color:white}.cartoon{background:#f6aecb}.aesthetic{background:#262628;color:#eee}.aesthetic .frame-word{font-family:Georgia,serif;font-weight:400;font-style:italic}.frame-bottom{align-items:end}.frame-bottom>span:last-child{font-size:35px;line-height:1}.caption{padding:17px 0}.caption h3{font-size:21px;letter-spacing:-.025em;margin:0 0 4px}.caption p{font-size:14px;color:#626262;margin:0}.work-note{border-top:1px solid var(--line);margin-top:25px;padding-top:22px;display:flex;justify-content:space-between;gap:25px}.work-note p{font-size:14px;margin:0;max-width:500px}.work-note a{text-decoration:underline}.about,.experience{display:grid;grid-template-columns:1fr 2fr;gap:50px;border-top:1px solid var(--line)}.about-body h2{margin-bottom:35px}.about-body p{max-width:660px;font-size:18px;color:#555}.about-body .lead{font-size:24px;line-height:1.4;color:var(--ink)}.skills{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.skills span{border:1px solid #bdbdb8;border-radius:30px;padding:7px 15px;font-size:14px}.job{padding:25px 0 28px;border-bottom:1px solid var(--line)}.job:first-child{padding-top:0}.job-heading{display:flex;justify-content:space-between;align-items:baseline;gap:18px}.job h3{font-size:25px;line-height:1.1;letter-spacing:-.035em;margin:0}.job-heading span,.job-heading time{font:12px/1.5 monospace;white-space:nowrap}.job p{color:#626262;max-width:600px;margin:13px 0 0}.job .role{color:var(--ink);font-size:16px}.education{padding-top:32px}.education p{font-size:17px;margin-bottom:0}.toolkit{background:#191919;color:#f7f7f2}.toolkit .section-label{margin-bottom:30px;color:#a9a9a9}.toolkit .section-heading{margin-bottom:50px}.tool-row{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:26px 0;border-top:1px solid #444;align-items:baseline}.tool-row h3{margin:0;font-size:17px;font-weight:400}.tool-row h3 span{color:#aaa;font:12px monospace;margin-right:28px}.tool-row p{font-size:clamp(20px,2vw,29px);letter-spacing:-.025em;margin:0;line-height:1.6}.tool-row i{font-style:normal;color:#737373;margin:0 7px}.latest{border-top:1px solid #444;margin-top:20px}.latest summary{cursor:pointer;padding:22px 0;list-style:none;display:flex;justify-content:space-between;color:#ccc}.latest summary::-webkit-details-marker{display:none}.latest[open] summary>span{transform:rotate(45deg)}.latest-body{padding-bottom:15px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.latest-body>p{grid-column:1/-1;color:#aaa;font-size:14px;margin-top:0}.latest-body a{font-size:21px}.latest-body small{display:block;font-size:14px;color:#aaa;margin-top:8px}.contact{background:var(--blue);color:#fff;padding-bottom:28px}.contact-top{display:flex;justify-content:space-between;margin-bottom:60px}.contact h2{font-size:clamp(45px,7.5vw,115px);margin-bottom:38px;letter-spacing:-.06em}.contact h2 a:hover{text-decoration:none;opacity:.8}.contact h2 a span{display:inline-block;white-space:nowrap}.email{display:inline-block;border-bottom:1px solid #ffffff99;padding-bottom:5px;font-size:clamp(19px,2vw,27px)}footer{display:flex;justify-content:space-between;gap:25px;margin-top:90px;padding-top:24px;border-top:1px solid #ffffff60;font-size:12px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}h1{font-size:190px}}@media(max-width:900px){nav{gap:22px}nav a:last-child{margin-left:10px}.hero{padding-top:28px}.asterisk{right:0}.hero-bottom p:nth-child(2){margin-right:7%;margin-left:20px}.categories{gap:12px}.frame{padding:12px}.frame-top{font-size:11px;flex-wrap:wrap}.frame-bottom{font-size:11px}.frame-bottom>span:last-child{display:none}.section{padding-top:65px;padding-bottom:65px}.about,.experience,.tool-row{grid-template-columns:1fr 2.5fr;gap:28px}.job-heading{display:block}.job-heading span,.job-heading time{display:block;margin-top:10px}.tool-row h3 span{margin-right:10px}.contact{padding-bottom:25px}footer span:nth-child(2){display:none}}
@media(max-width:600px){header{height:80px;padding:0 6%}.brand{font-size:43px}.brand span{font-size:12px;margin-left:8px}nav{gap:17px;font-size:14px}nav a:last-child{margin-left:0}nav a:nth-child(3){display:none}.hero{padding:25px 6% 30px}.hero-top p{font-size:11px}.location{max-width:145px}h1{font-size:clamp(68px,15vw,96px);margin:62px 0 32px;letter-spacing:-.075em}.asterisk{font-size:55px;right:0;top:-36px}.hero-bottom{gap:22px;flex-wrap:wrap}.hero-bottom p{font-size:16px}.hero-bottom p:nth-child(2){margin:0;order:3;flex-basis:100%;font-size:14px}.round-link{width:49px;height:49px;font-size:26px}.section{padding:52px 6%}.section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:27px}.section-heading p{font-size:15px}h2{font-size:40px}.categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.frame-word{font-size:clamp(30px,8vw,46px)}.frame-top{font-size:10px}.frame-bottom{font-size:10px}.caption h3{font-size:18px}.caption p{font-size:13px;line-height:1.4}.work-note{display:block}.work-note p{margin-top:12px}.about,.experience{grid-template-columns:1fr;gap:30px}.about-body .lead{font-size:21px}.about-body p{font-size:17px}.job h3{font-size:24px}.tool-row{grid-template-columns:1fr;gap:12px;padding:23px 0}.tool-row p{font-size:23px}.latest-body{grid-template-columns:1fr}.contact-top{font-size:11px;gap:20px;margin-bottom:42px}.contact h2{font-size:clamp(40px,9.2vw,55px)}.contact h2 a span{font-size:40px}.contact{padding-bottom:25px}footer{margin-top:66px;font-size:10px;gap:15px}.section-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.asterisk{animation:none}.frame-word{transition:none}}

/* Category galleries */
.categories{display:flex;flex-direction:column;gap:54px}
.category-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:20px;border-top:1px solid var(--line);padding-top:22px}
.category-heading>div{display:flex;align-items:baseline;gap:20px}
.category-index{font:13px monospace;color:#626262}
.category-heading h3{font-size:30px;letter-spacing:-.04em;line-height:1.1;margin:0;font-weight:500}
.category-heading p{margin:0;color:#626262;font-size:15px}
.video-row{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-bottom:17px;scrollbar-width:thin;scrollbar-color:#777 transparent}
.video-row:focus-visible{outline:2px solid var(--blue);outline-offset:6px}
.video-row .frame{flex:0 0 clamp(220px,25vw,310px);scroll-snap-align:start;aspect-ratio:9/16;padding:20px}
.video-row .frame-word{font-size:clamp(42px,4.2vw,62px)}
.video-row .frame:not(:first-child) .frame-word{font-size:90px;font-weight:400;opacity:.38}
.video-row .frame-top,.video-row .frame-bottom{font-size:12px}
.round-link{width:auto;height:48px;display:flex;gap:24px;align-items:center;padding:0 21px;border-radius:30px;font-size:14px;line-height:1;transition:background .2s,color .2s}
.round-link span:last-child{font-size:21px;line-height:1}
.contact-links{display:flex;gap:26px 45px;align-items:baseline;flex-wrap:wrap}
.telegram{font-size:clamp(18px,2vw,25px);border-bottom:1px solid #ffffff99;padding-bottom:5px}
@media(max-width:600px){.categories{gap:35px}.category-heading{display:block}.category-heading>div{gap:12px}.category-heading h3{font-size:26px}.category-heading p{font-size:14px;margin-top:9px}.video-row{gap:12px;margin-right:-6.82%;padding-right:6.82%}.video-row .frame{flex-basis:70vw;max-width:290px}.video-row .frame-word{font-size:49px}.round-link{height:44px;gap:14px;padding:0 16px;font-size:13px}.hero-bottom p:nth-child(2){order:3}.contact-links{gap:22px}}

.video-card{flex:0 0 clamp(220px,25vw,310px);margin:0;scroll-snap-align:start;min-width:0}
.video-card video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#151515}
.video-card figcaption{font:13px/1.5 monospace;margin-top:12px}
@media(max-width:600px){.video-card{flex-basis:70vw;max-width:290px}}

h1{font-size:clamp(40px,8.2vw,124px)}
@media(max-width:600px){h1{font-size:clamp(30px,9vw,54px)}}
h1 .asterisk{font-size:clamp(50px,8vw,120px);top:0;right:0}
@media(max-width:600px){h1 .asterisk{font-size:40px;top:-44px}}

.round-link span:last-child{font-size:inherit;line-height:inherit}
