@font-face{font-family:Reference;src:url('/assets/outfit.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--black:#1b1b1b;--dark:#323232;--mid:#7a7a7a;--warm:#d9d5d5;--white:#fff;--red:#c8102e;--blue:#0057ff}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%;background:var(--black);color:#fff;font-family:Reference,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.25}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit;border:0;background:none}button,a{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:6px}img,video{display:block;max-width:100%;height:auto}button svg{display:block}body.menu-open{overflow:hidden}[hidden]{display:none!important}.skip-link{position:fixed;left:15px;top:15px;z-index:20000;transform:translateY(-200%);background:#fff;color:#111;padding:10px}.skip-link:focus{transform:none}#main{min-height:100dvh}.view{min-height:100dvh}body[data-view=home]{overflow:hidden}.home{height:100dvh;display:grid;place-items:center;background:transparent;position:relative}.home-half{position:fixed;left:0;right:0;height:50dvh;transition:background-color 1s ease-in-out;pointer-events:none}.home-half.top{top:0;background:var(--top,#d9d5d5)}.home-half.bottom{bottom:0;background:var(--bottom,#d9d5d5)}.home-cards{position:relative;z-index:1;width:460px}.home-card{display:block;width:100%;height:230px;padding:50px;font-size:18px;line-height:1.3;transition:background-color 1s ease-in-out,color 1s ease-in-out}.home-card.art{background:var(--art,#1b1b1b);color:var(--art-text,#fff)}.home-card.design{background:var(--design,#fff);color:var(--design-text,#1b1b1b)}.home-card strong{display:block;font-weight:700;margin-bottom:25px}.home-card .invitation{font-weight:300}.home-card.bilingual strong{margin-bottom:16px}.home-card.bilingual>p{font-size:15px;line-height:1.3}.home-card.bilingual>.invitation{margin-top:8px}.home-card.design.bilingual>p{font-size:14px}
.header{position:sticky;top:0;left:0;z-index:500;width:100%;display:flex;justify-content:space-between;padding:70px 70px 0;pointer-events:none}.header>a,.header>button{pointer-events:auto}.category-switch,.home-return{display:block;width:30px;height:30px;border:5px solid currentColor;transition:background-color .35s,border-color .35s}.category-switch{background:currentColor}.home-return{background:transparent}.home-return:hover{background:currentColor}.back{width:30px;height:30px;transition:transform .5s}.back:hover{transform:rotate(180deg)}.back svg{width:30px;height:30px;stroke:currentColor;stroke-width:3;fill:none}.back path{stroke-dasharray:35;stroke-dashoffset:35;animation:draw-line .35s forwards}.back path+path{animation-delay:.35s}@keyframes draw-line{to{stroke-dashoffset:0}}.header.mixed{mix-blend-mode:difference;color:white}.category-a{background:white;color:#1b1b1b}.category-z{background:#323232;color:#fff}.category-a .category-switch:hover{background:var(--blue);border-color:var(--blue)}.category-z .category-switch:hover{background:var(--red);border-color:var(--red)}
.archive{width:90%;max-width:1400px;margin:0 auto;padding-top:120px}.project-grid{display:flex;flex-wrap:wrap}.project-card{flex:0 0 33.3%;min-width:0;padding:2% 6% 4%;margin-bottom:10px;display:flex;justify-content:center}.project-link{display:block;position:relative;max-width:300px;width:100%}.project-link img{width:100%;aspect-ratio:1;object-fit:cover}.card-caption{position:absolute;inset:0;padding:30px;opacity:0;background:white;color:#000;transition:opacity .3s ease-in}.card-caption h3{font-size:16px;font-weight:700}.card-caption p{font-size:16px}.category-z .card-caption,.related-z .card-caption{background:#323232;color:white}.project-link.is-active .card-caption{opacity:1}.sentinel{height:1px}
.menu{position:fixed;inset:0;z-index:1000;background:var(--warm);color:white;overflow:auto}.menu-inner{min-height:100%;display:flex;justify-content:center;align-items:center;gap:25px}.menu-column{flex:none}.menu-tile{display:block;width:325px;height:325px;padding:30px;font-size:18px;line-height:1.3;position:relative;border:1px solid transparent;transition:background-color .5s,color .5s,border-color .5s}.menu-art{background:#1b1b1b;margin-bottom:25px}.menu-design{background:white;color:#1b1b1b}.menu-tile:hover{background:transparent;border-color:#1b1b1b;color:#1b1b1b}.menu-close{position:fixed;z-index:1002;top:70px;right:70px;width:30px;height:30px;color:#1b1b1b;border:5px solid currentColor;background:none}.menu-close:hover{background:currentColor}
.project-view{background:#1b1b1b;color:#fff}.project-body{max-width:1400px;margin:185px auto 0}.media-image,.media-gallery,.media-slider,.media-video{margin:0 0 35px;position:relative}.media-image img{width:100%}.media-gallery{display:flex;flex-wrap:wrap;gap:35px}.media-gallery figure{flex:1 1 calc(50% - 35px);min-width:0}.media-gallery img{width:100%;height:100%;object-fit:cover}.media-slider{display:block;width:100%;overflow:hidden;background:#1b1b1b;aspect-ratio:var(--ratio,1400/920)}.media-slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease}.media-slider img.active{opacity:1}.media-slider:focus-visible{outline-offset:-5px}.slider-count{position:absolute;left:15px;bottom:15px;color:white;mix-blend-mode:difference;font-size:16px;pointer-events:none}.media-video video{width:100%;height:auto}.video-toggle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid #ffffff45;background:#ffffff1f;backdrop-filter:blur(8px);border-radius:50%;font-size:18px}.media-video.playing .video-toggle{opacity:0}.media-video:hover .video-toggle,.video-toggle:focus-visible{opacity:1}.project-info{display:flex;gap:30px;padding-bottom:150px}.project-title{flex:0 0 290px;font-size:16px}.project-title h1{font-size:16px;font-weight:700}.project-description{max-width:1080px;margin-left:auto;flex:1;white-space:pre-line}.project-description p{margin-bottom:20px}.project-description p:last-child{margin:0}.project-navigation{display:flex;justify-content:space-between;padding-bottom:125px}.project-navigation a,.project-navigation button{width:30px;height:30px}.project-navigation svg{width:30px;height:30px;stroke:white;stroke-width:2;fill:none}.project-navigation .disabled{visibility:hidden}.related{padding:125px 0}.related-a{background:white;color:#1b1b1b}.related-z{background:#323232}.related>.project-grid{width:90%;max-width:1400px;margin:auto}
.curtain{position:fixed;inset:0;z-index:10000;pointer-events:none;display:none;overflow:hidden}.curtain.active{display:block}.curtain-strip{position:absolute;top:0;height:100%;width:25.02%;transform:translateY(-110%)}.curtain-strip:nth-child(n+5){top:auto;bottom:0;width:12.52%;transform:translateY(110%)}#pointer{position:fixed;left:0;top:0;width:16px;height:16px;z-index:20000;background:white;mix-blend-mode:difference;pointer-events:none;opacity:0}.paint-canvas{position:fixed;inset:0;z-index:2001;pointer-events:none}.cursor-label{position:fixed;z-index:20001;pointer-events:none;color:white;mix-blend-mode:difference;font-size:16px}
@media(hover:hover) and (pointer:fine) and (min-width:901px){body.custom-pointer,body.custom-pointer *{cursor:none}.media-slider{cursor:none}.slider-count{opacity:0}.video-toggle{opacity:0}.home{cursor:none}}
@media(max-width:950px){.archive{width:81%;padding-top:80px}.project-card{flex-basis:50%;padding:2% 5% 4%}.related>.project-grid{width:81%}}
@media(max-width:900px){.home-cards{max-width:250px;width:100%}.home-card{height:250px;padding:30px}.header{padding-left:25px;padding-right:25px}.menu-inner{display:block;max-width:286px;margin:auto;padding:30px 0}.menu-tile{width:286px;height:143px;margin:0}.menu-design{margin-bottom:25px}.menu-close{right:25px}.project-body{margin-top:90px;padding:0 15px}.media-image,.media-gallery,.media-slider,.media-video{margin-bottom:15px}.media-gallery{gap:15px}.media-gallery figure{flex-basis:calc(50% - 15px)}.project-info{flex-direction:column;gap:15px;padding-bottom:50px}.project-title{flex-basis:auto}.project-description{margin:0;max-width:none}.project-navigation{padding-bottom:50px}.related{padding:50px 0}#pointer,.paint-canvas,.cursor-label{display:none}}
@media(max-width:550px){.category-switch,.home-return,.menu-close{width:25px;height:25px}.back,.back svg{width:25px;height:25px}.archive{width:100%}.project-grid{justify-content:center}.project-card{flex-basis:calc(80% - 35px)}.card-caption{display:none}.related>.project-grid{width:100%}}
.wipe-cover{position:absolute;inset:0;background:#1b1b1b;opacity:0}.wipe-band{position:absolute;left:0;width:100%;height:25vw;display:flex;contain:layout paint;will-change:transform}.wipe-band.from-top{top:0}.wipe-band.from-bottom{bottom:0}.wipe-tile{position:relative;flex:1;height:100%}.wipe-halves{position:absolute;top:25%;left:0;width:100%;height:50%;display:flex}.wipe-halves i{flex:1;height:100%}
.menu-close{opacity:0;pointer-events:none}.menu-close:focus-visible{opacity:1;pointer-events:auto}
.cursor-label.video-cursor{width:76px;height:76px;display:grid;place-items:center;mix-blend-mode:normal;background:#ffffff1f;backdrop-filter:blur(8px);border:1px solid #ffffff45;border-radius:50%;font-size:18px}
@media(hover:hover) and (pointer:fine) and (min-width:901px){.media-video .video-toggle{opacity:0;pointer-events:none}.media-video .video-toggle:focus-visible{opacity:1;pointer-events:auto}}
@media(max-width:900px){.menu-inner{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:0}.menu-column:nth-child(1){order:2}.menu-column:nth-child(2){order:1}.menu-column:nth-child(3){order:3}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Full-half typographic statements share the existing hover color and exit motion. */
.home-half{overflow:hidden}
.hover-statement{position:absolute;inset:0;padding:clamp(22px,3dvh,56px) clamp(22px,3vw,80px);opacity:0;transform:translateY(10px);transition:opacity .25s ease,transform .5s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}
.hover-statement svg{display:block;width:100%;height:100%;overflow:visible}
.hover-statement text{font-family:Reference,Arial,sans-serif;font-size:250px;font-weight:650;letter-spacing:-.025em;fill:currentColor;white-space:pre}
.hover-statement .decoding,.home-signature .decoding{opacity:.42}
.home-half.top .hover-statement{color:var(--art-text,#fff)}
.home-half.bottom .hover-statement{color:var(--design-text,#1b1b1b)}
.home[data-active="art"] .top .hover-statement,.home[data-active="design"] .bottom .hover-statement{opacity:1;transform:translateY(0);transition-duration:.3s,.65s;transition-delay:.04s}
.home-card>strong,.home-card>p{opacity:1;transition:opacity .3s ease}
.home[data-active="art"] .home-card.art,.home[data-active="design"] .home-card.design{background-color:transparent}
.home[data-active="art"] .home-card.art>strong,.home[data-active="art"] .home-card.art>p,.home[data-active="design"] .home-card.design>strong,.home[data-active="design"] .home-card.design>p{opacity:0}
@media(prefers-reduced-motion:reduce){.hover-statement{transform:none;filter:none;transition-delay:0s!important}}
.home-signature{position:absolute;right:clamp(24px,3vw,80px);font-size:20px;font-weight:500;line-height:1.2;letter-spacing:.12em;white-space:pre;color:var(--signature-text,#1b1b1b);opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .45s ease;pointer-events:none}
.home-half.top .home-signature{top:clamp(24px,3dvh,56px)}
.home-half.bottom .home-signature{bottom:clamp(24px,3dvh,56px)}
.home[data-active="art"] .bottom .home-signature,.home[data-active="design"] .top .home-signature{opacity:1;transform:translateY(0);transition-delay:.08s}
@media(max-width:900px){.home-signature{font-size:16px}}
@media(prefers-reduced-motion:reduce){.home-signature{transform:none;transition-delay:0s!important}}

.sound-toggle{position:fixed;left:clamp(24px,3vw,80px);bottom:clamp(24px,3dvh,56px);z-index:600;display:inline-flex;align-items:center;gap:9px;padding:7px 0;color:#fff;mix-blend-mode:difference;font-size:11px;font-weight:500;letter-spacing:.12em;line-height:1.2;opacity:.65;transition:opacity .2s ease;pointer-events:auto}.sound-toggle:hover,.sound-toggle:focus-visible{opacity:1}.sound-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.sound-toggle .sound-waves,.sound-toggle.is-on .sound-slash{display:none}.sound-toggle.is-on .sound-waves{display:block}.sound-toggle.is-on{opacity:.85}@media(max-width:550px){.sound-toggle{font-size:10px;gap:6px}}

.home-motto{position:absolute;left:clamp(24px,3vw,80px);max-width:calc(50% - 110px);font-size:16px;font-weight:400;line-height:1.5;letter-spacing:.04em;color:var(--signature-text,#1b1b1b);opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .45s ease;pointer-events:none;text-wrap:pretty}.home-half.top .home-motto{top:clamp(24px,3dvh,56px)}.home-half.bottom .home-motto{bottom:clamp(24px,3dvh,56px)}.home[data-active="art"] .bottom .home-motto,.home[data-active="design"] .top .home-motto{opacity:1;transform:translateY(0);transition-delay:.08s}.sound-toggle{left:50%;transform:translateX(-50%)}@media(max-width:900px){.home-motto{font-size:12px;max-width:calc(100% - 48px)}.home-half.top .home-motto{top:calc(clamp(24px,3dvh,56px) + 32px)}.home-half.bottom .home-motto{bottom:calc(clamp(24px,3dvh,56px) + 32px)}}@media(max-width:400px){.home-signature{font-size:14px}}@media(prefers-reduced-motion:reduce){.home-motto{transform:none;transition-delay:0s!important}}

.home-half.bottom .hover-statement{padding-bottom:calc(clamp(22px,3dvh,56px) + 38px)}

/* Portfolio directories: full-bleed abstract studies with permanent bilingual labels. */
.directory{width:min(1120px,calc(100% - 140px));margin:0 auto;padding:72px 0 150px}
.directory-title{font-size:18px;font-weight:500;line-height:1.4;margin-bottom:48px}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 48px;list-style:none}
.category-link{display:block;min-width:0}
.category-visual{position:relative;display:grid;place-items:center;aspect-ratio:1;background:#1b1b1b;color:#fff;overflow:hidden}
.category-icon{display:block;width:100%;height:100%;fill:none;stroke:none;overflow:hidden;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.category-icon .art-drift{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.category-arrow{position:absolute;bottom:12px;right:12px;width:30px;height:30px;padding:8px;background:#1b1b1b;fill:none;stroke:#eeeae3;stroke-width:1.5;opacity:0;transform:translate(-5px,5px);transition:opacity .25s,transform .4s}
.category-link h2{font-size:16px;line-height:1.6;font-weight:500;margin-top:20px;overflow-wrap:anywhere}
.category-link>p{font-size:15px;font-weight:300;line-height:1.5;margin-top:3px;opacity:.7}
.category-link:hover .category-icon,.category-link:focus-visible .category-icon{transform:scale(1.025)}
.category-link:hover .art-drift,.category-link:focus-visible .art-drift{transform:translate(5px,-3px)}
.category-link:hover .category-arrow,.category-link:focus-visible .category-arrow{opacity:1;transform:translate(0,0)}
.collection-parent{font-size:13px;line-height:1.5;opacity:.55;margin-bottom:32px}
.collection-title{font-size:clamp(24px,3vw,42px);line-height:1.45;font-weight:500}
.collection-title>span{display:block}
.collection-title>span[lang=en]{font-size:clamp(18px,2.3vw,30px);font-weight:300;opacity:.6;margin-top:6px}
.collection-empty{display:flex;align-items:center;gap:64px;padding:70px 0 30px}
.empty-symbol{width:220px;aspect-ratio:1;flex:none;display:grid;place-items:center;background:#1b1b1b;color:white;overflow:hidden}
.collection-empty p{font-size:16px;line-height:1.8}
.collection-empty p[lang=en]{font-size:15px;opacity:.6}
.directory-back{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;width:fit-content;font-size:12px;line-height:1.6;border-bottom:1px solid currentColor;padding:9px 0;margin-top:30px}
.directory-back>span[lang=en]{opacity:.65}
@media(min-width:1600px){.directory{padding-top:100px}.directory-title{margin-bottom:64px}}
@media(max-width:1050px){.directory{width:calc(100% - 80px)}.catalog-grid{gap:40px 28px}.category-link h2{font-size:14px}.category-link>p{font-size:14px}}
@media(max-width:760px){.directory{width:calc(100% - 50px);padding-top:55px;padding-bottom:120px}.directory-title{font-size:16px;margin-bottom:34px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 22px}.category-arrow{right:8px;bottom:8px;width:27px;height:27px;opacity:.7;transform:none}.category-link h2{margin-top:14px;font-size:13px}.category-link>p{font-size:13px}.collection-empty{gap:30px}.empty-symbol{width:160px}.collection-empty p{font-size:14px}.collection-empty p[lang=en]{font-size:13px}}
@media(max-width:460px){.catalog-grid{grid-template-columns:minmax(0,1fr);gap:38px}.category-visual{max-width:340px}.category-link h2{font-size:15px}.category-link>p{font-size:14px}.category-link h2{margin-top:17px}.collection-empty{align-items:flex-start;flex-direction:column;padding-top:44px;gap:28px}.empty-symbol{width:180px}.directory-back{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.category-icon,.category-icon *{animation:none!important;transition:none!important}.category-link:hover .category-icon,.category-link:focus-visible .category-icon,.category-link:hover .art-drift,.category-link:focus-visible .art-drift{transform:none}}

/* ── Portfolio media: artwork is always shown whole (no cover-cropping) ── */
.project-body{width:min(1400px,calc(100% - 80px))}
.project-body>figure,.project-body>.media-note{margin:0 0 35px}
.media-frame{position:relative;display:flex;justify-content:center;align-items:center}
.media-frame img{display:block;width:100%;height:auto}
.media-image{margin:0 0 35px}
.media-image .media-frame img{width:100%;height:auto}
.media-image.size-tall .media-frame img{width:auto;max-width:100%;max-height:min(90vh,1800px)}
.media-image.size-medium .media-frame{padding:0}
.media-image.size-medium .media-frame img{width:auto;max-width:min(100%,900px);max-height:86vh}
.media-image.size-narrow .media-frame img{width:auto;max-width:min(100%,560px)}
.media-image .media-frame[style]{padding:clamp(18px,4vw,64px)}
.media-caption{margin-top:12px;font-size:13px;line-height:1.6;letter-spacing:.02em;opacity:.62}
.media-note{font-size:13px;opacity:.62}
.media-row{margin:0 0 35px}
.media-row>.row-track{display:flex;gap:28px;align-items:flex-start;width:100%;max-width:calc(88vh * var(--sum) + var(--gaps));margin:0 auto}
.media-row .row-item{min-width:0}
.media-row .row-item .media-frame[style]{padding:clamp(10px,2vw,28px)}
.media-row.is-grid{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:18px}
.media-row.is-grid>.media-caption{grid-column:1/-1;margin-top:0}
.media-row .media-video,.media-row .media-loop,.media-single .media-video,.media-single .media-loop{margin:0;width:100%}
.media-single{width:100%;max-width:calc(86vh * var(--r));margin-left:auto;margin-right:auto}
.media-single .media-caption{text-align:left}
.media-video,.media-loop{position:relative;background:#000;overflow:hidden}
.media-video video,.media-loop video{display:block;width:100%;height:100%;object-fit:contain}
.media-loop.static::after{content:'play';position:absolute;right:10px;bottom:8px;font-size:12px;opacity:.7}
.media-scrolls{margin:0 0 35px}
.scroll-track{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
.scroll-frame{flex:0 1 clamp(220px,calc((100% - (var(--n) - 1) * 24px) / var(--n)),420px);max-height:min(82vh,900px);overflow-y:auto;overscroll-behavior:contain;background:#fff;scrollbar-width:thin;scrollbar-color:#9a9a9a transparent;outline-offset:3px}
.scroll-frame img{display:block;width:100%;height:auto}
.media-scrolls>.media-caption{text-align:center}
.media-youtube{margin:0 0 35px}
.yt-poster,.media-youtube iframe{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;background:#000;cursor:pointer}
.yt-poster img{width:100%;height:100%;object-fit:contain}
.yt-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;display:grid;place-items:center;border:1px solid #ffffff45;background:#ffffff1f;backdrop-filter:blur(8px);border-radius:50%;font-size:18px;color:#fff}
.yt-caption{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.yt-caption a{border-bottom:1px solid currentColor}
.project-collection{display:inline-flex;flex-direction:column;gap:2px;margin-top:22px;font-size:13px;line-height:1.5;border-left:2px solid currentColor;padding-left:10px;opacity:.75}
.project-collection:hover{opacity:1}
.project-collection span[lang=en]{opacity:.65}
.project-title p{opacity:.75;margin-top:4px}
.project-description p{line-height:1.85;font-size:15px}
.project-card{flex-direction:column;align-items:center}
@media(hover:hover) and (pointer:fine) and (min-width:901px){.media-youtube .yt-play{opacity:0}.media-youtube:hover .yt-play{opacity:1}}
@media(hover:none),(max-width:900px){.card-caption{display:none}}
@media(max-width:900px){.project-body{width:calc(100% - 30px);padding:0}.media-row>.row-track{gap:10px}.media-row.is-grid{gap:8px}.scroll-frame{flex-basis:calc(50% - 12px)}.project-body>figure{margin-bottom:15px}}
@media(max-width:600px){.media-row>.row-track{flex-wrap:wrap}.media-row[style*="--n:3"] .row-item,.media-row[style*="--n:4"] .row-item{flex:1 1 calc(50% - 10px)!important}.scroll-frame{flex-basis:100%;max-height:70vh}.yt-caption{flex-direction:column;gap:6px}}

@media(max-width:550px){.project-grid{justify-content:flex-start}.project-card{flex:0 0 50%;padding:0 8px 30px}}
.media-image.size-medium .media-frame[style],.media-image.size-narrow .media-frame[style]{width:fit-content;max-width:100%;margin:0 auto}
.media-image.size-medium .media-frame[style] img{max-height:70vh}

/* Project covers: typographic. Large title over a faint hairline texture (SVG), tag at the foot */
.project-link .cover{position:relative;display:block;container-type:inline-size;overflow:hidden;background:#1b1b1b}
.project-link .cover img{display:block;width:100%;aspect-ratio:1;transition:opacity .4s ease}
.cover-text{position:absolute;inset:0;padding:7cqw;display:flex;flex-direction:column;justify-content:space-between;gap:4cqw;color:#eeeae3;text-align:left;pointer-events:none}
.cover-title{margin:0;font-size:clamp(14px,var(--cover-size,12cqw),40px);font-weight:600;line-height:1.12;letter-spacing:-.02em;font-feature-settings:"palt";text-wrap:balance;word-break:auto-phrase;line-break:strict}
.cover-title .nw{white-space:nowrap}
.cover-foot{display:flex;flex-direction:column;gap:1.8cqw}
.cover-tag{font-size:clamp(8px,3.9cqw,12px);line-height:1.2;letter-spacing:.09em;text-transform:uppercase;color:#b3b0aa}
.cover-sub{font-size:clamp(9px,3.9cqw,12px);line-height:1.4;color:#b3b0aa;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s ease,opacity .3s ease}
.project-link.is-active .cover img,.project-link:focus-visible .cover img{opacity:.45}
.project-link.is-active .cover-sub,.project-link:focus-visible .cover-sub{max-height:4.2em;opacity:1}
@media(prefers-reduced-motion:reduce){.project-link .cover img,.cover-sub{transition:none}}

.category-count{margin-left:.35em;opacity:.55;font-variant-numeric:tabular-nums}
.category-count::before{content:"· "}
/* Sound switch: a small speaker mark tucked into the top-left corner, outside the header squares and the home texts */
.sound-toggle{right:auto;bottom:auto;top:max(8px,env(safe-area-inset-top,0px));left:max(8px,env(safe-area-inset-left,0px));transform:none;gap:0;padding:6px;opacity:.45}
.sound-toggle .sound-label{display:none}
.sound-toggle svg{width:16px;height:16px}
.sound-toggle:hover,.sound-toggle:focus-visible{opacity:1}
@media(max-width:550px){.sound-toggle{right:auto;transform:none;top:max(4px,env(safe-area-inset-top,0px));left:max(4px,env(safe-area-inset-left,0px))}}
