/* Refinements to the supplied portfolio: typography, projects and case reader. */
html{scroll-behavior:smooth;scroll-padding-top:100px}body{isolation:isolate}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:6px}button{border:0}section[id]{scroll-margin-top:80px}.hero{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);padding-top:140px;align-items:center}.hero__title{font-size:clamp(100px,16.4vw,280px);margin-top:46px}.hero__lead{max-width:34ch}.hero-work{display:inline-flex;align-items:center;gap:30px;margin-top:30px;border-bottom:1px solid var(--line2);padding-bottom:10px;font-weight:600}.hero-work span{color:var(--green)}.hero .stats{margin-top:26px}.hero .photo-wrap{margin-top:50px}.statement{height:190vh}.statement p{max-width:15ch}.cases-head{padding-top:12vh}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px 24px;padding:0 var(--pad)}.project-card{display:block;min-width:0}.project-card:first-child{grid-column:1/-1}.project-cover{position:relative;overflow:hidden;border-radius:24px;background:#101318;aspect-ratio:1.5;border:1px solid var(--line)}.project-card:first-child .project-cover{aspect-ratio:1.85}.project-cover img{height:100%;width:100%;object-fit:cover;transition:transform .8s var(--ease)}.project-card:hover img{transform:scale(1.035)}.project-open{position:absolute;right:22px;bottom:22px;border:1px solid #ffffff40;background:#080a0ddb;backdrop-filter:blur(16px);border-radius:999px;padding:12px 18px;display:flex;align-items:center;gap:24px;font-size:14px}.project-open span{font-size:24px;color:var(--green)}.project-card:hover .project-open{background:var(--green);color:#000}.project-card:hover .project-open span{color:#000}.project-caption{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-top:22px}.project-caption h3{font-family:Bebas,sans-serif;font-size:clamp(40px,4.5vw,72px);font-weight:700;line-height:1}.project-caption p{color:#a4a5a6;font-size:15px;margin-top:10px}.project-caption>.br{font-size:13px}.work-note{margin:48px var(--pad) 0;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:#a4a5a6;font-size:14px}.work-note a{color:#fff}.path{height:360vh;margin-top:100px}.path-note{font-size:12px;color:var(--mute);margin-left:auto}.about h2{margin-top:0}.nav__logo{font-size:13px}.cursor{z-index:1000}dialog{color:var(--fg);border:0;background:#080a0c;max-width:none;max-height:none;width:100%;height:100dvh;position:fixed;inset:0;overflow:auto;overscroll-behavior:contain;margin:0;padding:0;scroll-behavior:smooth}dialog::backdrop{background:#000d}dialog[open]{animation:reader-in .35s var(--ease)}@keyframes reader-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.case-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px var(--pad);min-height:68px;background:#080a0ce8;border-bottom:1px solid var(--line);backdrop-filter:blur(20px);font-size:14px}.case-back{color:#aaa}.case-toolbar-name{font-weight:600}.case-close{display:flex;align-items:center;gap:16px;background:transparent;padding:4px}.case-close span{display:grid;place-items:center;background:#ffffff12;width:36px;height:36px;border-radius:50%;font-size:27px;font-weight:300}.case-close:hover span{background:var(--green);color:#000}.case-intro{max-width:1400px;margin:auto;padding:70px var(--pad) 60px}.case-topline{display:flex;justify-content:space-between;color:#999;font-size:13px;margin-bottom:44px}.case-intro h2{font-family:Bebas,sans-serif;text-transform:uppercase;font-size:clamp(84px,13vw,200px);line-height:.95}.case-intro h2 span{color:var(--green)}.case-summary{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-top:35px}.case-summary p{font-size:clamp(18px,1.5vw,23px);line-height:1.5;max-width:48ch}.case-summary .tags{margin:0;justify-content:flex-end}.case-feed{max-width:1400px;margin:auto;background:#050607}.case-feed figure{margin:0}.case-feed img{width:100%;height:auto;display:block}.case-video{background:#080a0c;padding:20px 0}.case-video-label{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;color:#aaa;font-size:12px}.case-video-label span{color:var(--green)}.case-video-frame{position:relative;aspect-ratio:16/9;background:#000}.case-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.case-video video{display:block;width:100%;height:auto}.case-end{max-width:1400px;margin:auto;padding:60px var(--pad) 80px}.case-end-links{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.case-end-links .ext{margin:0}.case-next{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:55px;padding-top:40px;gap:20px}.case-next small{display:block;font-size:14px;color:#aaa;margin-bottom:20px}.case-next strong{font:700 clamp(54px,8vw,110px)/1 Bebas,sans-serif;text-transform:uppercase}.case-next>span{font-size:60px;color:var(--green)}.case-reading{position:fixed;left:0;top:0;width:100%;height:3px;background:var(--green);transform-origin:left;transform:scaleX(0);z-index:4}.image-fallback{padding:40px;text-align:center;color:#aaa}.path__head{align-items:center}.path__head h2{margin:0}
@media(max-width:860px){.hero{grid-template-columns:1fr;gap:30px;padding-top:120px}.hero__title{font-size:clamp(100px,20vw,170px);margin-top:38px}.hero .photo-wrap{order:0;justify-self:end;width:52%;max-width:280px;margin-top:0;margin-right:8px}.hero__lead{max-width:30ch}.hero .photo{border-radius:22px}.hero .stats{gap:7px}.hero .chip{padding:9px 12px;font-size:12px}.hero .kicker{font-size:13px}.project-grid{grid-template-columns:1fr;gap:38px}.project-card:first-child{grid-column:auto}.project-card:first-child .project-cover,.project-cover{aspect-ratio:1.3}.project-caption>.br{font-size:11px}.project-caption p{font-size:13px}.project-open{right:12px;bottom:12px;padding:8px 14px;gap:18px;font-size:12px}.work-note{flex-direction:column;margin-top:32px}.path-note{margin-left:0}.path__head{gap:12px}.path__head h2{font-size:64px}.path__in{padding-top:90px}.detail__year{font-size:80px}.detail__txt h3{font-size:36px}.detail__txt p{font-size:15px}.case-toolbar{padding:12px 16px;gap:12px}.case-toolbar-name{font-size:12px}.case-close{font-size:0;gap:0}.case-close span{font-size:27px}.case-intro{padding:40px 20px}.case-topline{font-size:11px;margin-bottom:32px}.case-intro h2{font-size:clamp(70px,16vw,130px)}.case-summary{grid-template-columns:1fr;gap:24px;margin-top:24px}.case-summary .tags{justify-content:flex-start}.case-summary .chip{font-size:12px;padding:8px 12px}.case-video{padding:8px 0}.case-video-label{font-size:11px;padding:12px 16px}.case-end{padding:40px 20px 60px}.contact h2{font-size:clamp(70px,14vw,130px)}.nav{width:calc(100% - 24px);padding-left:12px}.nav__logo{font-size:12px}.nav .btn{font-size:12px;padding:10px 14px}}
@media(prefers-reduced-motion:reduce){html,dialog{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.statement{height:auto;padding:90px 0}.statement__in{position:static;height:auto}.statement .w{color:#fff}.statement .w.acc{color:var(--green)}.cursor{display:none}.project-card img{transform:none!important}}

.case-end{display:block;border-top:0;font-size:inherit;color:inherit;font-weight:500}
#project-title:focus{outline:none}.photo img{height:100%;width:100%}

/* Seamless project strip: every module has the same outside edges. */
.case-feed{width:100%;line-height:0}
.case-feed>figure,.case-video{display:block;width:100%;margin:0;padding:0;border:0;border-radius:0;overflow:hidden}
.case-video-frame{width:100%;margin:0;padding:0;background:transparent}
.case-video iframe,.case-video video{display:block;border:0;border-radius:0;margin:0;padding:0}
.case-video video{height:auto}
.case-intro{padding-top:clamp(36px,5vw,64px);padding-bottom:clamp(36px,5vw,64px)}
.case-topline{margin-bottom:32px}

/* Work CTA: one quiet, fully clickable control. */
.hero-work{gap:28px;padding:7px 7px 7px 21px;margin-top:28px;border:1px solid #ffffff30;border-radius:999px;background:#ffffff06;transition:background .25s,border-color .25s,transform .25s}
.hero-work .hero-work__label{color:#fff;font-size:15px}
.hero-work .hero-work__icon{display:grid;place-items:center;width:42px;height:42px;background:var(--green);color:#080a0c;border-radius:50%;font:500 25px/1 system-ui;transition:transform .35s var(--ease),background .35s}
.hero-work:hover{background:#ffffff0c;border-color:#dcff0080;transform:translateY(-2px)}
.hero-work:hover .hero-work__icon{transform:rotate(45deg);background:#b8f955}
.hero-work:active{transform:translateY(0)}

/* Room for the accents above Й and a consistent vertical rhythm. */
.path__in{gap:clamp(24px,3.5vh,40px);padding:96px 0 32px}
.path__head{align-items:end}
.editor{flex-shrink:0}
.editor__view{height:clamp(170px,25vh,260px)}
.detail{align-items:start;min-height:0;padding-top:clamp(12px,2vh,24px);gap:clamp(28px,4vw,64px)}
.detail__year{font-size:clamp(92px,12vw,190px);line-height:1.04;padding-top:.12em;margin-top:-.12em}
.detail__txt{padding-top:6px}
.detail__txt h3{font-size:clamp(38px,4vw,66px);line-height:1.02;margin-bottom:20px}
.detail__txt p{line-height:1.5;max-width:48ch}
.about{padding-top:clamp(88px,12vh,160px);padding-bottom:clamp(88px,12vh,160px)}
.cases-head{padding-top:clamp(80px,10vh,140px);padding-bottom:40px}
.project-grid{row-gap:52px}
.contact{gap:32px}

/* A gradient glint, without color inversion or a second large cursor. */
.cursor,.cursor.big{width:20px;height:20px;margin:-10px 0 0 -10px;background:transparent;border-radius:0;mix-blend-mode:normal;opacity:0;transition:opacity .2s;will-change:transform}
.cursor::before{content:"";position:absolute;inset:0;border-radius:35% 65% 60% 40%;background:linear-gradient(115deg,#dcff00 10%,#9ff83e 32%,#00c4ff 58%,#dcff00 88%);background-size:300% 100%;box-shadow:0 0 12px #00c4ff30;animation:cursor-flow 4s ease-in-out infinite alternate;animation-play-state:paused;transition:scale .25s,opacity .25s;opacity:.85}
.cursor.visible{opacity:1}.cursor.visible::before{animation-play-state:running}
.cursor.interactive::before{scale:1.3;opacity:.6}
.reading-project .cursor{opacity:0}.reading-project .cursor::before{animation-play-state:paused}
@keyframes cursor-flow{from{background-position:0 50%;rotate:-18deg}to{background-position:100% 50%;rotate:18deg}}
@media(max-width:860px){
 .hero-work{gap:24px;padding-left:18px}.hero-work .hero-work__label{font-size:14px}.hero-work .hero-work__icon{width:38px;height:38px;font-size:23px}
 .path__in{gap:24px;padding-top:92px;padding-bottom:28px}.path__head{align-items:flex-start;gap:9px}.path__head h2{font-size:56px}
 .detail{gap:12px;padding-top:12px}.detail__year{font-size:76px;line-height:1}.detail__txt{padding-top:0}.detail__txt h3{font-size:34px;margin-bottom:12px}.detail__txt p{font-size:15px;line-height:1.45}
 .case-topline{margin-bottom:28px}.case-intro{padding:36px 20px}.project-grid{row-gap:36px}.project-caption{padding-top:18px}
}
@media(max-height:720px){.path__in{gap:16px;padding-top:84px;padding-bottom:20px}.editor__view{height:145px}.detail__year{font-size:clamp(64px,9vw,120px)}.detail__txt h3{font-size:32px;margin-bottom:10px}.detail__txt p{font-size:14px}.path__head h2{font-size:48px}.detail{padding-top:8px}}
@media(prefers-reduced-motion:reduce){.cursor{display:none}.hero-work:hover,.hero-work:hover .hero-work__icon{transform:none}.bg i{transition:none}}
@media(min-width:861px) and (max-height:800px){
 .hero{padding-top:100px;padding-bottom:32px}
 .hero__title{font-size:clamp(120px,19vh,170px);margin-top:30px;margin-bottom:24px}
 .hero__lead{font-size:19px}.hero-work{margin-top:22px}.hero .stats{margin-top:20px}
 .hero .photo-wrap{max-width:310px;margin-top:0}
}
.editor__view{height:clamp(210px,26vh,260px)}
.clip{padding:4px 10px}.clip small{font-size:10px;line-height:1.1}.clip b{font-size:clamp(18px,1.8vw,24px);line-height:1;margin-top:3px}
@media(max-height:720px){.editor__view{height:206px}}
