/* gkw.games home page. Loaded after site.css. */

/* ————— hero ————— */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,3.5rem);align-items:center;padding-block:clamp(2.8rem,7vw,5rem) clamp(2.5rem,6vw,4.5rem)}
@media (max-width:880px){.hero{grid-template-columns:minmax(0,1fr)}}
.kicker{color:var(--amber);font-weight:500;font-size:1rem;margin-bottom:1rem}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(2.3rem,4.6vw,3.2rem);line-height:1.04;margin-bottom:1.3rem;text-wrap:balance}
.hero .lede{color:var(--dim);font-size:clamp(1.05rem,2.1vw,1.18rem);max-width:42ch}
.hero .lede strong{color:var(--text);font-weight:600}
.hero-ctas{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.9rem}

/* the cabinet: a playable game in the hero */
.cabinet{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:.9rem;box-shadow:0 30px 70px -34px rgba(0,0,0,.85)}
.cab-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.2rem .35rem .75rem}
.cab-head .t{font-family:var(--pixel);font-size:.72rem;color:var(--cyan);letter-spacing:.08em}
.cab-head .s{font-family:var(--pixel);font-size:.72rem;color:var(--amber);white-space:nowrap}
#game{width:100%;height:auto;aspect-ratio:4/3;border-radius:8px;background:#0C0A18;cursor:pointer;touch-action:none}
.cab-foot{font-family:var(--pixel);font-size:.62rem;color:var(--dim);text-align:center;padding-top:.75rem;letter-spacing:.06em;text-wrap:balance}

/* ————— feature: Ascenseur, printed on its own paper ————— */
.feature{padding-block:.5rem}
.feature-card{--paper:#F3F2F2;--ink:#201E1D;--signal:#EC3013;--signal-text:#AE1800;--muted:#605D5D;
  position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2rem;align-items:center;
  background:var(--paper);color:var(--ink);text-decoration:none;border-radius:4px;
  padding:clamp(1.6rem,4.5vw,3.2rem);padding-right:clamp(1.2rem,3vw,2.2rem);overflow:hidden;
  box-shadow:10px 10px 0 0 var(--pink);transition:box-shadow .18s ease,transform .18s ease}
.feature-card:hover,.feature-card:focus-visible{color:var(--ink);transform:translate(-2px,-2px);box-shadow:14px 14px 0 0 var(--cyan)}
.feature-card:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
@media (max-width:760px){.feature-card{grid-template-columns:minmax(0,1fr);padding-bottom:0}}
.feature-text{font-family:'Archivo',var(--body);max-width:34rem}
.feature-slot{font-weight:800;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--signal-text);margin-bottom:.9rem}
.feature-name{font-family:'Archivo',var(--body);font-weight:800;font-size:clamp(2.6rem,7vw,4.4rem);line-height:.95;letter-spacing:-.025em}
.feature-sub{font-weight:600;font-size:clamp(1.1rem,2.4vw,1.35rem);margin-top:.6rem}
.feature-body{color:var(--muted);font-size:1.02rem;line-height:1.6;margin-top:1rem;max-width:44ch}
.feature-go{display:inline-flex;gap:.5rem;align-items:center;margin-top:1.5rem;font-weight:700;font-size:.95rem;background:var(--ink);color:var(--paper);padding:.7rem 1rem;box-shadow:4px 4px 0 0 var(--signal)}
.feature-art{position:relative;display:flex;justify-content:center;gap:1rem;align-self:stretch;min-height:320px}
.feature-art .shot{width:min(46%,250px);height:auto;border:3px solid var(--ink);box-shadow:8px 8px 0 0 var(--ink);background:var(--paper)}
.shot-a{transform:rotate(-2deg) translateY(1.2rem)}
.shot-b{transform:rotate(1.5deg) translateY(-.6rem)}
@media (max-width:760px){
  .feature-art{min-height:0;margin-top:.5rem;height:300px;overflow:hidden;align-items:flex-start;padding-top:.8rem}
  .shot-b{transform:rotate(1.5deg) translateY(.4rem)}
  .feature-art .shot{width:44%}
}

/* ————— lineup ————— */
.block{padding-top:clamp(3.5rem,8vw,5rem)}
.h2 .tick{color:var(--cyan)}
.carts{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.1rem;list-style:none}
.cart{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:1.5rem 1.5rem 1.4rem;overflow:hidden;display:flex;flex-direction:column}
.cart::before{content:'';position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--pink) 0 33.3%,var(--cyan) 33.3% 66.6%,var(--amber) 66.6%)}
.cart-flag{border-color:color-mix(in srgb,var(--cyan) 45%,transparent)}
.cart-empty{background:transparent;border-style:dashed}
.cart-empty::before{display:none}
.cart .slot{font-family:var(--pixel);font-size:.68rem;color:var(--dim);letter-spacing:.08em;margin-bottom:.8rem}
.cart-name{font-family:var(--display);font-weight:400;font-size:1.2rem;line-height:1.2;margin-bottom:.55rem}
.cart-name a{color:var(--text);text-decoration:none}
.cart-name a::after{content:'';position:absolute;inset:0}
.cart-name a:hover{color:var(--cyan)}
.cart .desc{font-size:.95rem;color:var(--dim);flex:1}
.tag{align-self:flex-start;margin-top:1.2rem;font-family:var(--pixel);font-size:.64rem;letter-spacing:.08em;line-height:1;color:var(--dim);border:1px solid var(--line);border-radius:99px;padding:.4rem .75rem}
.tag.live{color:var(--cyan);border-color:var(--cyan);position:relative;z-index:1;text-decoration:none}
.tag.live:hover{color:var(--space);background:var(--cyan)}
.tag.soon{color:var(--amber);border-color:var(--amber)}

/* ————— studio ————— */
.about-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(1.8rem,4vw,3rem);align-items:start}
@media (max-width:860px){.about-grid{grid-template-columns:minmax(0,1fr)}}
.about-copy p{color:var(--dim);max-width:60ch}
.about-copy p + p{margin-top:1rem}
.about-copy strong{color:var(--text);font-weight:600}
.rules-t{font-family:var(--display);font-weight:400;font-size:1rem;color:var(--pink);margin-bottom:.6rem}
.rules ul{list-style:none}
.rules li{font-size:.95rem;color:var(--dim);padding:.55rem 0;border-bottom:1px dashed var(--line)}
.rules li:last-child{border-bottom:0;padding-bottom:0}
.rules b{color:var(--text);font-weight:600}
