/**
 * TECHNO — projects.css
 * Loads: projects archive + taxonomy archives, single project, expertise archive/single, single job.
 */

/* featured mosaic */
.tch-pfeat__g{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);grid-auto-rows:210px;gap:10px}
.tch-pfeat__g .tch-pc.is-big{grid-row:span 2}
@media (max-width:980px){.tch-pfeat__g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tch-pfeat__g{grid-template-columns:minmax(0,1fr)}.tch-pfeat__g .tch-pc.is-big{grid-row:auto}}

/* filter bar */
.tch-arc__h{margin:16px 0 26px}
.tch-fbar{position:sticky;inset-block-start:84px;z-index:30;display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:16px;background:rgba(255,255,255,.84);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:inset 0 0 0 1px rgba(var(--tch-ink-rgb),.06),0 24px 50px -36px rgba(var(--tch-ink-rgb),.35);transition:inset-block-start .6s var(--tch-ease)}
.tch-hdr.is-hidden~* .tch-fbar,body:has(.tch-hdr.is-hidden) .tch-fbar{inset-block-start:16px}
.tch-fbar__row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.tch-fbar__s{flex:1 1 240px;display:flex;align-items:center;gap:8px;block-size:40px;padding-inline:14px;border-radius:10px;background:var(--tch-bg);color:var(--tch-body);transition:box-shadow .3s}
.tch-fbar__s:focus-within{box-shadow:inset 0 0 0 1.5px var(--tch-primary)}
.tch-fbar__s input{flex:1;border:0;background:transparent;box-shadow:none;padding:0;font-size:13.5px;min-inline-size:0}
.tch-fbar__s input:focus{box-shadow:none}
.tch-fbar__sel{position:relative;block-size:40px;border-radius:10px;background:var(--tch-bg);display:flex;align-items:center;transition:box-shadow .3s}
.tch-fbar__sel:hover{box-shadow:inset 0 0 0 1px rgba(var(--tch-ink-rgb),.2)}
.tch-fbar__sel select{block-size:100%;border:0;background:transparent;box-shadow:none;font-size:13px;padding-block:0;padding-inline:16px 38px;-webkit-appearance:none;appearance:none;cursor:pointer;inline-size:auto}
.tch-fbar__sel .tch-ic{position:absolute;inset-inline-end:14px;pointer-events:none;color:var(--tch-body)}
.tch-vtg{display:inline-flex;padding:3px;border-radius:10px;background:var(--tch-bg);block-size:40px}
.tch-vtg button{border:0;background:transparent;inline-size:38px;border-radius:8px;color:var(--tch-body);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .4s var(--tch-ease)}
.tch-vtg button.is-on{background:var(--tch-ink);color:#fff}
.tch-fbar__chips .tch-chip{block-size:32px;font-size:12px;padding-inline:12px}
.tch-fbar__chips .tch-chip small:empty::before{content:"0"}
@media (max-width:980px){.tch-fbar{position:static}}

/* results header */
.tch-arc__bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:26px 0 10px;color:var(--tch-body)}
.tch-arc__reset{border:0;background:transparent;font:inherit;font-size:13.5px;color:var(--tch-primary);cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.tch-arc__reset:hover svg{transform:rotate(-180deg)}.tch-arc__reset svg{transition:transform .6s var(--tch-ease)}
.tch-arc__res{transition:opacity .35s}
.tch-arc__res[aria-busy="true"]{opacity:.35;pointer-events:none}
.tch-arc__empty{margin-block-start:12px}
.tch-arc__more{display:flex;justify-content:center;margin-block-start:44px}
.tch-arc__more[hidden],.tch-arc__empty[hidden]{display:none}
.tch-btn.is-loading .tch-btn__i{animation:tch-spin 1s linear infinite}

/* list rows */
.tch-arc__res--list{border-block-start:1px solid rgba(var(--tch-ink-rgb),.1)}
.tch-pr{display:grid;grid-template-columns:80px minmax(0,3.2fr) minmax(0,1.3fr) minmax(0,1.4fr) minmax(0,1.5fr) 34px;gap:16px;align-items:center;padding:14px 14px;border-block-end:1px solid rgba(var(--tch-ink-rgb),.1);position:relative;border-radius:14px;color:var(--tch-ink);transition:background .45s,padding .5s var(--tch-ease);animation:tch-fu .7s var(--tch-ease) both;animation-delay:var(--d,0ms)}
.tch-pr::before{content:"";position:absolute;inset-inline-start:0;inset-block:18px;inline-size:3px;border-radius:3px;background:var(--tch-primary);transform:scaleY(0);transition:transform .45s var(--tch-ease)}
.tch-pr:hover{background:#fff;padding-inline-start:26px;border-block-end-color:transparent}
.tch-pr:hover::before{transform:scaleY(1)}
.tch-pr__y{font-family:var(--tch-font-m);font-size:12px;color:var(--tch-body)}
.tch-pr__t b{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:500;font-size:14.5px;letter-spacing:-.01em}
.tch-pr__t>span{display:block;font-size:12.5px;color:var(--tch-body);margin-block-start:3px}
.tch-pr__live{font-family:var(--tch-font-m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--tch-primary)}
.tch-pr__cam{display:inline-flex;color:#9AA4AC}
.tch-pr__c{font-size:13px}
.tch-pr__s{justify-self:start;font-size:11px;padding:4px 10px;border-radius:999px;background:var(--tch-bg-soft)}
.tch-pr__k{font-size:12.5px;color:var(--tch-body)}
.tch-pr__go{inline-size:30px;block-size:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(var(--tch-ink-rgb),.14);transition:all .45s var(--tch-ease)}
.tch-pr:hover .tch-pr__go{background:var(--tch-primary);color:#fff;box-shadow:none;transform:rotate(-45deg)}
@media (max-width:980px){.tch-pr{grid-template-columns:64px minmax(0,1fr) 36px}.tch-pr__c,.tch-pr__s,.tch-pr__k{display:none}}

/* hover preview */
.tch-prev{position:fixed;left:0;top:0;z-index:60;inline-size:240px;block-size:168px;border-radius:16px;overflow:hidden;pointer-events:none;transform:translate(calc(var(--cx,-400px) + 26px),calc(var(--cy,-400px) - 105px)) scale(.6) rotate(-4deg);opacity:0;transition:opacity .35s,transform .5s var(--tch-ease);box-shadow:0 30px 60px -20px rgba(var(--tch-ink-rgb),.5)}
.tch-prev.is-on{opacity:1;transform:translate(calc(var(--cx,-400px) + 26px),calc(var(--cy,-400px) - 105px)) scale(1) rotate(0)}
.tch-prev img{inline-size:100%;block-size:100%;object-fit:cover}
@media (hover:none){.tch-prev{display:none}}

/* grid cards */
.tch-arc__res--grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tch-gc{position:relative;block-size:240px;border-radius:var(--tch-radius);overflow:hidden;background:var(--tch-slate);color:#fff;display:block;isolation:isolate;animation:tch-gc-in 1s var(--tch-ease2) both;animation-delay:var(--d,0ms)}
@keyframes tch-gc-in{from{clip-path:inset(100% 0 0 0 round 18px);opacity:.2}to{clip-path:inset(0 0 0 0 round 18px);opacity:1}}
.tch-gc img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;transition:transform 1.4s var(--tch-ease)}
.tch-gc:hover img{transform:scale(1.08)}
.tch-gc::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(9,15,21,.92),rgba(9,15,21,.1) 60%)}
.tch-gc__ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(var(--tch-primary-rgb),.35);background:repeating-linear-gradient(90deg,#16242F 0 18px,#1B2B37 18px 20px)}
.tch-gc__in{position:absolute;inset:0;z-index:2;padding:16px;display:flex;flex-direction:column;justify-content:space-between}
.tch-gc__tag{align-self:flex-start;padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.14);backdrop-filter:blur(10px);font-size:10px;transition:background .4s}
.tch-gc:hover .tch-gc__tag{background:var(--tch-primary)}
.tch-gc__m{display:block;color:rgba(255,255,255,.7)}
.tch-gc__t{display:block;margin-block-start:6px;font-weight:500;font-size:15px;line-height:1.3}
@media (max-width:980px){.tch-arc__res--grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tch-arc__res--grid{grid-template-columns:minmax(0,1fr)}}

/* single project */
.tch-pmeta-w{padding-inline:var(--tch-inset)}
.tch-pmeta{display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));border-radius:14px;background:#fff;overflow:hidden}
.tch-pmeta>*{padding:16px 18px;border-inline-start:1px solid rgba(var(--tch-ink-rgb),.08);display:flex;flex-direction:column;gap:8px;transition:background .4s;color:var(--tch-ink)}
.tch-pmeta>*:first-child{border-inline-start:0}
.tch-pmeta>*:hover{background:#FAF9F7}
.tch-pmeta .tch-mono{font-size:9.5px;color:#7A858E}
.tch-pmeta b{font-weight:500;font-size:13.5px;display:flex;align-items:center;gap:6px}
.tch-pmeta a:hover b{color:var(--tch-primary)}
@media (max-width:980px){.tch-pmeta{grid-template-columns:repeat(2,minmax(0,1fr))}.tch-pmeta>*:nth-child(odd){border-inline-start:0}}
.tch-psingle__g{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(28px,5vw,80px);align-items:start}
.tch-psingle__g>div:first-child{position:sticky;inset-block-start:120px}
.tch-psingle__fig{margin:22px 0 0;border-radius:18px;overflow:hidden;background:rgba(var(--tch-ink-rgb),.06);aspect-ratio:4/3}
.tch-psingle__fig img{display:block;width:100%;height:100%;object-fit:cover}
.tch-psingle__txt{font-size:15px}
.tch-psingle__sh{font-size:17px;margin:30px 0 0}
.tch-psingle__part{margin-block-start:30px;padding:20px;border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:6px}
.tch-psingle__part .tch-mono{color:var(--tch-body);font-size:10px}.tch-psingle__part b{font-weight:500;color:var(--tch-ink)}
.tch-live{display:inline-flex;align-items:center;gap:10px;margin-block-start:22px;padding:8px 14px;border-radius:999px;background:rgba(var(--tch-primary-rgb),.08);color:var(--tch-primary)}
.tch-live i{inline-size:7px;block-size:7px;border-radius:50%;background:var(--tch-primary);animation:tch-ping 2s infinite}
@media (max-width:980px){.tch-psingle__g{grid-template-columns:minmax(0,1fr)}.tch-psingle__g>div:first-child{position:static}}
.tch-film{position:relative;border-radius:16px;overflow:hidden;block-size:clamp(260px,34vw,460px);margin-block-start:12px;background:var(--tch-dark)}
.tch-film video,.tch-film iframe{inline-size:100%;block-size:100%;object-fit:cover;border:0;display:block}
.tch-film__cap{position:absolute;inset-inline-start:24px;inset-block-end:24px;color:#fff;display:flex;gap:12px;align-items:center;padding:10px 16px;border-radius:999px;background:rgba(var(--tch-ink-rgb),.5);backdrop-filter:blur(10px)}
.tch-eq{display:inline-flex;gap:2px;align-items:flex-end;block-size:11px}.tch-eq i{inline-size:2px;background:var(--tch-primary);animation:tch-eq 1.1s ease-in-out infinite}
.tch-eq i:nth-child(2){animation-delay:.2s}.tch-eq i:nth-child(3){animation-delay:.45s}.tch-eq i:nth-child(4){animation-delay:.1s}
@keyframes tch-eq{0%,100%{block-size:3px}50%{block-size:11px}}
.tch-pnav--big{margin-block-start:0}
.tch-pnav--big .tch-pnav__a{block-size:170px;padding:22px}
.tch-pnav--big .tch-pnav__a b{font-size:17px}
.tch-icards__g--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:980px){.tch-icards__g--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
