.reference-portfolio{background:oklch(.08 0 0)}
.reference-portfolio .site-header{background:oklch(.08 0 0/.78);border-bottom-color:oklch(1 0 0/.12)}
.reference-portfolio .page-hero{min-height:56svh;display:grid;align-content:end;padding-top:140px;padding-bottom:clamp(48px,7vw,96px);border-bottom:0}
.reference-portfolio .page-hero h1{font-size:clamp(72px,14vw,210px);line-height:.78;max-width:none;letter-spacing:-.035em}
.reference-portfolio .page-hero>p:last-child{margin:32px 0 0 auto;width:min(100%,44ch);font-size:clamp(16px,1.5vw,21px)}
.reference-portfolio .portfolio-archive{padding:0 0 clamp(90px,12vw,180px)}
.reference-portfolio .portfolio-archive>.shell{width:100%;max-width:none}
.reference-portfolio .filters{position:sticky;top:78px;z-index:70;width:max-content;max-width:calc(100vw - 32px);margin:0 auto 52px;padding:4px;gap:3px;background:oklch(1 0 0/.16);backdrop-filter:blur(22px);border:1px solid oklch(1 0 0/.2);border-radius:8px;overflow-x:auto;flex-wrap:nowrap}
.reference-portfolio .filter{flex:0 0 auto;min-height:34px;padding:7px 13px;border:0;border-radius:5px;background:transparent;font-family:var(--mono);font-size:10px;line-height:1;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}
.reference-portfolio .filter:hover{background:oklch(1 0 0/.12)}
.reference-portfolio .filter[aria-pressed="true"]{background:var(--surface);color:var(--ink)}
.reference-portfolio .archive-note{width:min(100% - var(--pad)*2,var(--max));margin:0 auto 30px;font-family:var(--mono);font-size:11px;letter-spacing:.03em}
.reference-portfolio .portfolio-grid{display:block;border-top:1px solid oklch(1 0 0/.14)}
.reference-portfolio .video-card{position:relative;display:grid;width:100%;grid-template-columns:repeat(4,1fr);padding:0;border:0;border-bottom:1px solid oklch(1 0 0/.14);background:transparent;overflow:hidden;transition:none}
.reference-portfolio .video-card[hidden]{display:none}
.reference-portfolio .video-card:hover{transform:none;border-color:oklch(1 0 0/.14)}
.reference-portfolio .video-card span{grid-column:1/-1;grid-row:1;padding:13px var(--pad);font-family:var(--display);font-size:clamp(18px,2vw,30px);font-weight:500;line-height:1;text-transform:uppercase;letter-spacing:-.01em;border-bottom:1px solid oklch(1 0 0/.1)}
.reference-portfolio .video-card span:after{content:"Открыть видео";float:right;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.06em;opacity:.52}
.reference-portfolio .video-thumb{grid-column:1/-1;grid-row:2;aspect-ratio:2.38/1;background-size:cover;filter:saturate(.76) contrast(1.05);transform:scale(1.001);transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .5s ease}
.reference-portfolio .video-thumb:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,oklch(.03 0 0/.25),transparent 45%,oklch(.03 0 0/.12));z-index:1}
.reference-portfolio .video-thumb:after{content:"Смотреть";right:var(--pad);bottom:var(--pad);z-index:2;display:grid;place-items:center;width:88px;height:88px;padding:0;border:1px solid oklch(1 0 0/.6);border-radius:50%;background:oklch(.06 0 0/.42);backdrop-filter:blur(10px);color:var(--fg);font-size:10px}
.reference-portfolio .video-card:hover .video-thumb{transform:scale(1.018);filter:saturate(1) contrast(1.02)}
.reference-portfolio .video-card:nth-child(3n+2) .video-thumb{background-position:center 42%}
.reference-portfolio .video-card:nth-child(3n) .video-thumb{background-position:center 58%}
.reference-portfolio .modal{background:oklch(.03 0 0/.94)}
.reference-portfolio .modal-inner{width:min(1320px,100%)}
@media(max-width:900px){.reference-portfolio .page-hero{min-height:48svh;padding-top:110px}.reference-portfolio .filters{top:70px;justify-content:flex-start}.reference-portfolio .video-thumb{aspect-ratio:16/9}.reference-portfolio .video-card span{padding-block:12px}.reference-portfolio .video-thumb:after{width:68px;height:68px}}
@media(max-width:600px){.reference-portfolio .page-hero h1{font-size:clamp(60px,21vw,94px);line-height:.82}.reference-portfolio .page-hero>p:last-child{margin-left:0}.reference-portfolio .filters{width:calc(100vw - 24px);margin-bottom:34px}.reference-portfolio .archive-note{width:calc(100% - 40px)}.reference-portfolio .video-card span{padding-inline:20px;font-size:20px}.reference-portfolio .video-card span:after{font-size:9px}.reference-portfolio .video-thumb:after{right:20px;bottom:20px}}
@media(prefers-reduced-motion:reduce){.reference-portfolio .video-thumb{transition:none}}

/* Interactive Grid / List archive */
.reference-portfolio .portfolio-toolbar{position:sticky;top:76px;z-index:72;display:flex;justify-content:center;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 24px);margin:0 auto 52px;padding:4px;background:oklch(1 0 0/.16);backdrop-filter:blur(22px);border:1px solid oklch(1 0 0/.2);border-radius:8px}
.reference-portfolio .portfolio-toolbar .filters{position:static;max-width:min(76vw,960px);margin:0;padding:0;background:transparent;border:0;border-radius:0;backdrop-filter:none}
.reference-portfolio .view-switcher{display:flex;gap:3px;padding-left:4px;border-left:1px solid oklch(1 0 0/.2)}
.reference-portfolio .view-switcher button{min-height:34px;padding:7px 12px;border:0;border-radius:5px;background:transparent;color:var(--fg);font-family:var(--mono);font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.04em}
.reference-portfolio .view-switcher button:hover{background:oklch(1 0 0/.12)}
.reference-portfolio .view-switcher button[aria-pressed="true"]{background:var(--surface);color:var(--ink)}
.reference-portfolio .portfolio-grid[data-view="grid"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:oklch(1 0 0/.14)}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card{display:grid;background:oklch(.08 0 0);border:0}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card span{padding:13px 18px;font-size:clamp(17px,1.6vw,25px)}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card span:after{content:"Kinescope"}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-thumb{aspect-ratio:16/10;transform:translate(var(--mx,0),var(--my,0)) scale(1.045)}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card:hover .video-thumb{transform:translate(var(--mx,0),var(--my,0)) scale(1.075)}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-thumb:after{display:none}
.reference-portfolio .portfolio-grid[data-view="list"]{position:relative;z-index:2;display:block;background:transparent}
.reference-portfolio .portfolio-grid[data-view="list"] .video-card{display:grid;grid-template-columns:minmax(0,1fr) auto;background:oklch(.08 0 0/.62);transition:background-color .25s ease,color .25s ease}
.reference-portfolio .portfolio-grid[data-view="list"] .video-card:hover{background:oklch(1 0 0/.9);color:var(--ink)}
.reference-portfolio .portfolio-grid[data-view="list"] .video-card span{grid-column:1/-1;grid-row:1;padding:18px var(--pad);font-size:clamp(24px,3.2vw,54px);border-bottom:0}
.reference-portfolio .portfolio-grid[data-view="list"] .video-card span:after{content:"Смотреть";padding-top:.7em}
.reference-portfolio .portfolio-grid[data-view="list"] .video-thumb{display:none}
.portfolio-hover-preview{position:fixed;inset:0;z-index:0;pointer-events:none;background:oklch(.03 0 0);opacity:0;transition:opacity .45s ease}
.portfolio-hover-preview>div{position:absolute;inset:0;background-position:center;background-size:cover;filter:saturate(.8) contrast(1.08);transform:scale(1.04);transition:transform 1.2s cubic-bezier(.2,.75,.2,1)}
.portfolio-hover-preview iframe{width:100%;height:100%;border:0;pointer-events:none}
.portfolio-hover-preview:after{content:"";position:absolute;inset:0;background:oklch(.03 0 0/.42)}
.portfolio-hover-preview.is-visible{opacity:1}
.portfolio-hover-preview.is-visible>div{transform:scale(1)}
.reference-portfolio main,.reference-portfolio footer{position:relative;z-index:1}
.portfolio-cursor{position:fixed;left:0;top:0;z-index:180;display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;pointer-events:none;opacity:0;transform:translate(calc(var(--x,0px) - 50%),calc(var(--y,0px) - 50%)) scale(.72);transition:opacity .2s ease,transform .18s ease}
.portfolio-cursor.is-visible{opacity:1;transform:translate(calc(var(--x,0px) - 50%),calc(var(--y,0px) - 50%)) scale(1)}
::view-transition-old(root),::view-transition-new(root){animation-duration:.52s;animation-timing-function:cubic-bezier(.2,.75,.2,1)}
@media(max-width:900px){.reference-portfolio .portfolio-toolbar{top:68px;width:calc(100vw - 24px);justify-content:space-between;margin-bottom:34px}.reference-portfolio .portfolio-toolbar .filters{max-width:none;overflow-x:auto}.reference-portfolio .portfolio-grid[data-view="grid"]{grid-template-columns:1fr}.reference-portfolio .portfolio-grid[data-view="list"] .video-card span{font-size:clamp(22px,6vw,42px)}.portfolio-cursor{display:none}}
@media(max-width:600px){.reference-portfolio .view-switcher button{padding-inline:10px}.reference-portfolio .portfolio-grid[data-view="list"] .video-card span{padding:16px 20px}.reference-portfolio .portfolio-grid[data-view="grid"] .video-card span{font-size:18px}}
@media(prefers-reduced-motion:reduce){.portfolio-hover-preview,.portfolio-hover-preview>div,.portfolio-cursor{transition:none}}

/* Grid mode is a horizontally paged reel. */
.reference-portfolio .slider-nav{display:flex;align-items:center;gap:3px;padding-left:4px;border-left:1px solid oklch(1 0 0/.2)}
.reference-portfolio .slider-nav button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--fg);font-size:15px}
.reference-portfolio .slider-nav button:hover{background:oklch(1 0 0/.12)}
.reference-portfolio .slider-nav button:disabled{opacity:.3;cursor:default}
.reference-portfolio .slider-nav span{min-width:60px;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.04em}
.reference-portfolio .portfolio-grid[data-view="grid"]{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:min(82vw,1180px);gap:12px;padding:0 max(var(--pad),9vw) 18px;background:transparent;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:max(var(--pad),9vw);overscroll-behavior-inline:contain;scrollbar-width:none;cursor:grab}
.reference-portfolio .portfolio-grid[data-view="grid"]::-webkit-scrollbar{display:none}
.reference-portfolio .portfolio-grid[data-view="grid"].is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card{scroll-snap-align:center;scroll-snap-stop:always;min-width:0;border:1px solid oklch(1 0 0/.14)}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-thumb{aspect-ratio:16/9}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card[hidden]{display:none}
@media(max-width:900px){.reference-portfolio .portfolio-toolbar{flex-wrap:wrap}.reference-portfolio .slider-nav{margin-left:auto}.reference-portfolio .portfolio-grid[data-view="grid"]{grid-template-columns:none;grid-auto-columns:86vw;padding-inline:7vw;scroll-padding-inline:7vw}.reference-portfolio .portfolio-grid[data-view="grid"] .video-card{display:grid}}
@media(max-width:600px){.reference-portfolio .portfolio-toolbar{width:calc(100vw - 16px);max-width:none}.reference-portfolio .portfolio-toolbar .filters{order:2;width:100%}.reference-portfolio .view-switcher{border-left:0}.reference-portfolio .portfolio-grid[data-view="grid"]{grid-auto-columns:92vw;padding-inline:4vw;scroll-padding-inline:4vw}.reference-portfolio .slider-nav span{min-width:54px}}

/* Restored original card grid; List remains the cinematic interactive view. */
.reference-portfolio .portfolio-grid[data-view="grid"]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;gap:18px;width:min(100% - var(--pad)*2,var(--max));margin-inline:auto;padding:0;background:transparent;overflow:visible;scroll-snap-type:none;cursor:default}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card{display:grid;border:1px solid var(--border);background:oklch(.3 0 0);scroll-snap-align:none}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card span{padding:14px;font-family:var(--mono);font-size:12px;line-height:1.5;letter-spacing:.01em;text-transform:none}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card span:after{content:"Kinescope";font-size:9px;padding-top:3px}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-thumb{aspect-ratio:16/9;transform:translate(var(--mx,0),var(--my,0)) scale(1.025)}
.reference-portfolio .portfolio-grid[data-view="grid"] .video-card:hover .video-thumb{transform:translate(var(--mx,0),var(--my,0)) scale(1.055)}
@media(max-width:900px){.reference-portfolio .portfolio-grid[data-view="grid"]{grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 40px)}}
@media(max-width:600px){.reference-portfolio .portfolio-grid[data-view="grid"]{grid-template-columns:1fr;width:calc(100% - 32px);gap:14px}.reference-portfolio .portfolio-grid[data-view="grid"] .video-card span{font-size:11px}}
