.ai-contest-archive-page{--page-accent:#7ddcff;--fg-laser:var(--page-accent);background:#050505}
/* Page background is managed here, independently from each card image in the HTML. */
.ai-contest-archive-page:before{background-image:linear-gradient(rgba(0,0,0,.48),rgba(0,0,0,.58)),url("assets/projects-bg.webp");background-position:center;background-size:cover}
.ai-contest-archive-page .fg-hero{background:radial-gradient(circle at 78% 34%,rgba(125,220,255,.14),transparent 25%),linear-gradient(135deg,rgba(7,7,7,.3),rgba(3,15,20,.32) 62%,rgba(5,5,5,.4))}
.ai-contest-archive-page .fg-hero:before{content:"02"}
.contest-archive{position:relative;padding:clamp(100px,12vw,180px) var(--pad) clamp(120px,14vw,210px);background:linear-gradient(180deg,rgba(5,18,22,.45),rgba(5,5,5,.3) 24%,rgba(5,5,5,.42))}
.contest-archive .fg-works-heading>div{min-width:0}.contest-archive .fg-works-heading h2{margin-top:22px}.contest-count{margin:0 0 5px;color:var(--page-accent);font:500 clamp(9px,1vw,13px)/1 "Space Grotesk";letter-spacing:.2em}
.contest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.contest-card{min-width:0;border-bottom:1px solid var(--line)}.contest-card-link{display:block;min-width:0}
.contest-visual{position:relative;aspect-ratio:16/10;overflow:hidden;background:radial-gradient(circle at 55% 40%,rgba(125,220,255,.18),transparent 30%),#071016}
.contest-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(0,0,0,.04),rgba(0,0,0,.65));pointer-events:none}
.contest-visual img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.72) brightness(.72);transform:scale(1.01);transition:transform .45s ease,filter .45s ease}
.contest-visual span,.contest-visual strong{position:absolute;z-index:1;font-family:"Space Grotesk"}.contest-visual span{top:clamp(18px,2.5vw,34px);left:clamp(18px,2.5vw,34px);font-size:clamp(8px,1vw,12px);font-weight:500;letter-spacing:.22em}.contest-visual strong{right:clamp(16px,2.3vw,32px);bottom:clamp(8px,1vw,15px);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.62);font-size:clamp(90px,14vw,190px);font-weight:500;line-height:.75;letter-spacing:-.08em}
.contest-info{position:relative;isolation:isolate;min-height:250px;padding:clamp(20px,2.4vw,32px);overflow:hidden;border-top:1px solid rgba(125,220,255,.3);background:rgba(0,0,0,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.contest-info:before{content:"";position:absolute;z-index:0;top:-1px;left:0;width:52px;height:2px;background:var(--page-accent);box-shadow:0 0 8px rgba(125,220,255,.65);transition:width .42s ease}.contest-info>*{position:relative;z-index:1}
.contest-number{display:block;color:var(--page-accent);font:500 8px/1 "Space Grotesk";letter-spacing:.18em}.contest-info h3{margin:17px 0 13px;font:500 clamp(23px,2.5vw,36px)/1.05 "Noto Sans JP";letter-spacing:-.035em}.contest-meta{display:flex;flex-wrap:wrap;gap:10px 18px;color:rgba(125,220,255,.78);font:500 7px/1 "Space Grotesk";letter-spacing:.14em}.contest-info p{margin:18px 0 25px;color:#929292;font:300 11px/1.8 "Noto Sans JP";letter-spacing:.035em}.contest-button{display:flex;width:min(100%,180px);min-height:42px;align-items:center;justify-content:space-between;padding:0 14px;border:1px solid rgba(125,220,255,.65);font:600 8px/1 "Space Grotesk";letter-spacing:.14em;transition:background .3s ease,border-color .3s ease}.contest-button b{color:var(--page-accent);font-size:14px;transition:transform .3s ease}
@media(hover:hover) and (pointer:fine){.contest-card-link:hover .contest-visual img{filter:saturate(.9) brightness(.82);transform:scale(1.035)}.contest-card-link:hover .contest-info:before{width:100%}.contest-card-link:hover .contest-button{border-color:var(--page-accent);background:rgba(125,220,255,.08)}.contest-card-link:hover .contest-button b{transform:translateX(3px)}}
@media(max-width:760px){.ai-contest-archive-page:before{background-image:linear-gradient(rgba(0,0,0,.48),rgba(0,0,0,.62)),url("assets/projects-bg-mobile.webp")}.ai-contest-archive-page .fg-hero h1{font-size:clamp(49px,14.5vw,72px)}.contest-archive{padding-top:95px}.contest-archive .fg-works-heading{display:flex;align-items:flex-end}.contest-archive .fg-works-heading h2{font-size:clamp(38px,11vw,54px)}.contest-count{margin-bottom:4px;font-size:7px}.contest-grid{grid-template-columns:1fr;gap:42px}.contest-info{min-height:225px;padding:22px 18px}.contest-info h3{font-size:23px}.contest-visual strong{font-size:30vw}.contest-button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.contest-visual img,.contest-info:before,.contest-button,.contest-button b{transition:none}}
