/* Converge winners + projects page (extends styles.css + theme-converge.css) */
[data-theme=converge]{--grain:url(/converge/brand/texture-grain.avif) 0 0/192px repeat}
[data-theme=converge] .grain{position:absolute;inset:0;background:var(--grain);mix-blend-mode:soft-light;pointer-events:none;border-radius:inherit}
.demo-flag{position:fixed;top:12px;right:12px;z-index:60;background:var(--ink);color:var(--cream);padding:8px 12px;border-radius:8px}
.eyebrow.mono{color:var(--ink);opacity:.75}

/* lineup poster */
.poster{position:relative;overflow:hidden;padding:120px 40px 110px}
.pst{position:relative;z-index:3;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--ink)}
.pst-presents{display:flex;align-items:center;gap:14px}
.pst-presents img{height:44px;width:auto}
.pst-presents .mono{font-size:13px;letter-spacing:.2em}
.pst-title{font-size:clamp(64px,15.5vw,236px);line-height:.82;letter-spacing:-.03em;white-space:nowrap;margin-top:18px}
.pst-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;font-size:12px;margin-top:22px}
.pst-tier{width:100%;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.15em .45em;font-family:"Apfel",var(--f-sans);text-transform:uppercase;letter-spacing:-.035em;line-height:.95}
.pst-tier a{color:inherit;border-radius:6px;padding:0 .08em;transition:background .15s,color .15s}
.pst-tier a:hover,.pst-tier a:focus-visible{background:var(--ink);color:var(--cream);outline:0}
.pst-star{font-style:normal;font-family:var(--f-px);font-size:.55em;color:var(--cream);align-self:center}
.pst-label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.6em}
.pst-label b{background:var(--cream);padding:4px 8px;border-radius:6px;font-weight:600}
.t1{flex-direction:column;align-items:center;margin-top:72px;padding-top:56px;border-top:2px solid var(--ink)}
.pst-head{font-weight:500;font-size:clamp(40px,calc(min(92vw,1200px)*1.45/var(--n,10)),150px);line-height:.88}
.pst-tba{font-family:var(--f-px);color:var(--cream);text-shadow:0 0 18px rgba(255,237,219,.7)}
.pst-by{font-size:12px;letter-spacing:.12em;margin-top:14px;text-transform:uppercase}
.t2{margin-top:44px;font-size:clamp(26px,3.6vw,54px);font-weight:500}
.pst-co{display:inline-flex;flex-direction:column;align-items:center}
.t3{margin-top:40px;font-size:clamp(20px,2.8vw,36px)}
.pst-prize{display:inline-flex;flex-direction:column;align-items:center}
.t4{margin-top:48px;padding-top:40px;border-top:2px solid var(--ink);font-size:clamp(18px,2.4vw,30px);line-height:1.25}
.pst-soon{font-family:var(--f-px);text-transform:none;letter-spacing:0}
.t5{margin-top:36px;font:500 12px/1.9 var(--f-mono,monospace);letter-spacing:.06em;max-width:1000px;display:block}
.t5 .pst-label{display:inline;margin-right:8px}
.pst-count{margin-top:44px;font-size:13px;letter-spacing:.14em}
.pst-judges{margin-top:10px;font-size:11px;letter-spacing:.12em;opacity:.75}
.pst-logos{width:100%;margin-top:56px;padding-top:40px;border-top:2px solid var(--ink)}
.pst-logos .partners{margin-top:0;flex-wrap:wrap}
.pst-logos .partners-sm{margin-top:22px}

/* search */
.find{display:flex;flex-direction:column;gap:10px;max-width:960px;margin:56px 0 0;background:var(--black);color:var(--cream);border-radius:var(--r);padding:20px}
.find input{font:400 22px "Apfel",var(--f-sans);letter-spacing:-.02em;padding:16px 18px;border:2px solid var(--cream);border-radius:var(--rb);background:var(--char);color:var(--cream);outline:0}
.find input:focus{border-color:var(--amber)}
.find input::placeholder{color:rgba(255,237,219,.45)}

/* project list */
.projects{padding:140px 40px 80px}
.projects-head{display:flex;flex-direction:column;gap:20px}
.plist{margin-top:64px;display:flex;flex-direction:column;gap:8px}
.proj{display:grid;grid-template-columns:minmax(220px,340px) 1fr auto;gap:40px;align-items:start;background:var(--black);color:var(--cream);border-radius:var(--r);padding:20px;scroll-margin-top:72px}
.ph{position:relative;overflow:hidden;border-radius:var(--rb);background:var(--grain),var(--g-hot);background-blend-mode:soft-light,normal;aspect-ratio:1}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph .grain{opacity:.25}
.ph-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(28px,5vw,72px);color:var(--ink)}
.proj-media .ph{aspect-ratio:4/3}
.proj-by{font-size:11px;color:var(--amber)}
.proj-by .dim{color:rgba(255,237,219,.5)}
.proj h3{font:400 clamp(36px,4.4vw,68px)/.95 "Apfel",var(--f-sans);letter-spacing:-.04em;margin:10px 0 14px}
.award{position:relative;overflow:hidden;display:inline-block;margin:0 6px 14px 0;border-radius:8px;padding:7px 12px;background:var(--g-hot);color:var(--ink);font-size:11px}
.award .grain{opacity:.5}.award b{position:relative;font-weight:700}
.proj-tag{font:500 20px/1.25 "Apfel",var(--f-sans);letter-spacing:-.02em;max-width:640px}
.proj-desc{margin-top:12px;font-size:15px;line-height:1.5;color:rgba(255,237,219,.72);max-width:640px;white-space:pre-line}
.proj-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:20px}
.proj-tools>.tools-label{font-size:11px;color:rgba(255,237,219,.55);margin-right:6px}
.chip{font-size:11px;background:var(--cream);color:var(--ink);border-radius:6px;padding:4px 8px}
.proj-more{display:inline-block;margin-top:10px}
.proj-cta{display:flex;flex-direction:column;align-items:flex-end;gap:12px;min-width:200px}
.proj-cta .cta-label{background:var(--cream);color:var(--ink)}
.sub-link{font-size:11px;color:var(--cream);border-bottom:1px solid rgba(255,237,219,.4);padding-bottom:2px}
.sub-link:hover{color:var(--amber);border-color:var(--amber)}
.empty{margin-top:48px;background:var(--black);color:var(--cream);border-radius:var(--r);padding:48px;font:400 clamp(24px,2.6vw,36px)/1.15 "Apfel",var(--f-sans);letter-spacing:-.02em}
.empty .dim{color:rgba(255,237,219,.6)}
[hidden]{display:none!important}

.wfoot{min-height:760px}

@media (min-width:1441px){
  .poster,.projects{padding-inline:calc(40px + var(--g))}
}
@media (max-width:1000px){
  .proj{grid-template-columns:1fr;gap:20px}
  .proj-cta{align-items:flex-start;flex-direction:row;flex-wrap:wrap}
}
@media (max-width:760px){
  .poster{padding:100px 20px 80px}
  .poster .step{transform:scale(.45);transform-origin:top right}
  .poster .step-bl{transform-origin:bottom left}
  .projects{padding-inline:20px}
  .pst-logos .partners{gap:14px;font-size:20px}
  .pst-logos .partners img{height:28px}
  .pst-logos .partners-sm img{height:18px}
  .t2,.t3,.t4{flex-direction:column;align-items:center;gap:22px}
  .t4{gap:10px}
  .pst-tier>.pst-star{display:none}
  .demo-flag{top:auto;bottom:12px}
}
