/* FAQ PAGE — page-local scan/expand hierarchy. Print stays owned by styles.css. */
@media screen {
  .faq-page main.wrap{max-width:1040px}
  .faq-page .page-head{
    max-width:900px;
    padding:clamp(34px,5vw,54px) 0 24px;
    border-bottom:0
  }
  .faq-page .page-head .sec-kicker{margin-bottom:12px}
  .faq-page .page-head h1{
    max-width:820px;
    font-size:clamp(2.8rem,6.4vw,5rem);
    line-height:.94;
    letter-spacing:-.04em
  }
  .faq-page .page-head .lede{
    max-width:720px;
    margin-top:16px;
    color:var(--muted);
    font-size:clamp(.96rem,1.3vw,1.05rem);
    line-height:1.65
  }
  .faq-page .page-head .lede a{color:var(--accent-2);font-weight:800}

  .faq-page .faq-band{
    display:grid;
    grid-template-columns:minmax(170px,.32fr) minmax(0,1fr);
    gap:28px;
    margin:0;
    padding:28px 0;
    border-top:1px solid rgba(255,255,255,.07)
  }
  .faq-page .faq-band:first-of-type{margin-top:8px}
  .faq-page .faq-band .section-head{
    align-self:start;
    display:block;
    margin:0;
    padding:4px 0
  }
  .faq-page .faq-band .section-head h2{
    max-width:9ch;
    color:#eef2ff;
    font-size:clamp(1.35rem,2.4vw,1.85rem);
    line-height:1.02;
    letter-spacing:-.03em
  }
  .faq-page .faq-band .section-head::after{
    content:"";
    display:block;
    width:42px;
    height:2px;
    margin-top:12px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--accent),transparent)
  }

  .faq-page .faq-list{display:grid;gap:8px;min-width:0}
  .faq-page .faq-item{
    overflow:hidden;
    border:1px solid rgba(255,255,255,.075);
    border-radius:14px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.005)),
      rgba(9,11,17,.72);
    box-shadow:inset 0 1px rgba(255,255,255,.025);
    transition:border-color .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease)
  }
  .faq-page .faq-item:hover{border-color:rgba(130,255,255,.18)}
  .faq-page .faq-item[open]{
    border-color:rgba(130,255,255,.22);
    background:
      radial-gradient(circle at 0 0,rgba(130,255,255,.08),transparent 34%),
      linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.006)),
      rgba(9,11,17,.82);
    box-shadow:inset 2px 0 rgba(130,255,255,.62),inset 0 1px rgba(255,255,255,.035)
  }
  .faq-page .faq-item summary{
    position:relative;
    min-height:58px;
    padding:17px 52px 17px 18px;
    list-style:none;
    cursor:pointer;
    color:#edf1fa;
    font-size:.91rem;
    font-weight:800;
    line-height:1.4
  }
  .faq-page .faq-item summary::-webkit-details-marker{display:none}
  .faq-page .faq-item summary::after{
    content:"+";
    position:absolute;
    top:50%;
    right:17px;
    display:grid;
    place-items:center;
    width:26px;
    height:26px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:8px;
    background:rgba(255,255,255,.025);
    color:#93a3dc;
    font-size:1.05rem;
    font-weight:500;
    line-height:1;
    transform:translateY(-50%);
    transition:transform .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease),background .16s var(--ease)
  }
  .faq-page .faq-item[open] summary::after{
    transform:translateY(-50%) rotate(45deg);
    border-color:rgba(130,255,255,.24);
    background:rgba(130,255,255,.08);
    color:#c4ceff
  }
  .faq-page .faq-a{
    padding:0 18px 18px;
    color:#9da7b9;
    font-size:.84rem;
    line-height:1.7
  }
  .faq-page .faq-a a{color:#aebcff;font-weight:750}
  .faq-page .faq-a strong{color:#dfe4f3}
  .faq-page .faq-a .code-chip{margin:.35rem .15rem}

  .faq-page .faq-band:last-of-type .faq-list{
    overflow:hidden;
    border:1px solid rgba(130,255,255,.17);
    border-radius:16px;
    background:
      radial-gradient(circle at 0 50%,rgba(130,255,255,.09),transparent 44%),
      rgba(10,12,18,.72)
  }
  .faq-page .faq-out{
    margin:0;
    padding:18px 20px;
    color:#a8b1c2;
    font-size:.86rem;
    line-height:1.7
  }
  .faq-page .faq-out a{color:#b8c4ff;font-weight:800}
}
@media screen and (max-width:760px){
  .faq-page .page-head{padding-top:28px}
  .faq-page .faq-band{
    grid-template-columns:minmax(0,1fr);
    gap:14px;
    padding:23px 0
  }
  .faq-page .faq-band .section-head h2{max-width:none}
  .faq-page .faq-band .section-head::after{margin-top:9px}
  .faq-page .faq-item summary{min-height:56px;padding:16px 48px 16px 16px}
  .faq-page .faq-a{padding:0 16px 17px}
}
@media screen and (prefers-reduced-motion:reduce){
  .faq-page .faq-item,.faq-page .faq-item summary::after{transition:none}
}

/* The Free PC Games facts page reuses the same accordion language without the
   FAQ section-label rail because it is one focused topic. */
@media screen {
  .facts-page .faq-band{
    grid-template-columns:minmax(0,1fr);
    gap:0;
    max-width:820px;
    margin:4px auto 0
  }
  .facts-page .faq-out{
    max-width:820px;
    margin:18px auto 62px;
    padding:0;
    border:0;
    background:none
  }
  .facts-page .faq-out a{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    color:#aebcff;
    font-weight:800
  }
}