:root {
  --faq-ink: #21183a;
  --faq-muted: #706b7c;
  --faq-violet: #6943c0;
  --faq-purple: #542ba8;
  --faq-lilac: #f4efff;
  --faq-line: #e9e3f1;
  --faq-paper: #fff;
  --faq-surface: #fbf9fe;
  --faq-max: 1120px;
}
body { background: var(--faq-paper); color: var(--faq-ink); font-family: Inter, "Segoe UI", Arial, sans-serif; }
.gaming-hero__header { z-index: 10; min-height: 84px; padding-inline: max(24px, calc((100vw - var(--faq-max)) / 2)); background-color: #fff; box-shadow: 0 8px 28px rgb(35 22 61 / 7%); }
.faq-page { padding-top: 84px; }
.faq-page * { box-sizing: border-box; }
.faq-page a { color: inherit; }
.faq-page section { padding-inline: max(24px, calc((100vw - var(--faq-max)) / 2)); }
.faq-intro { min-height: 425px; display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: center; gap: 64px; padding-block: 76px 70px; position: relative; overflow: hidden; background: radial-gradient(ellipse at 83% 45%, #f3eaff 0, #fbf9ff 32%, #fff 70%); }
.faq-intro__inner { max-width: 700px; position: relative; z-index: 1; }
.faq-eyebrow { margin: 0 0 20px; color: var(--faq-violet); font-size: .73rem; line-height: 1.2; letter-spacing: .16em; font-weight: 800; }
.faq-eyebrow span { padding-inline: 9px; color: #c0b4d4; }
.faq-intro h1 { margin: 0; max-width: 740px; font-size: clamp(2.7rem, 6vw, 5.25rem); line-height: .98; letter-spacing: -.065em; font-weight: 760; }
.faq-lede { max-width: 590px; margin: 24px 0 28px; color: var(--faq-muted); font-size: clamp(1.05rem, 1.7vw, 1.25rem); line-height: 1.65; }
.faq-jump, .faq-contact-button { min-height: 52px; gap: 18px; justify-content: center; border-radius: 999px; padding: 0 23px; background-color: var(--faq-purple); color: #fff !important; font-size: .96rem; font-weight: 700; text-decoration: none; transition: transform .2s ease, background-color .2s ease; }
.faq-jump:hover, .faq-contact-button:hover { transform: translateY(-2px); background-color: #3f217e; }
.faq-orbit { width: 260px; aspect-ratio: 1; margin: auto; display: grid; place-items: center; border: 1px solid #dcd0f1; border-radius: 50%; background: radial-gradient(circle, #fff 0 37%, #eee6fb 38% 39%, #faf7ff 40% 59%, #e8def8 60% 61%, #f2ebfc 62%); box-shadow: 0 25px 65px rgb(74 44 127 / 10%); }
.faq-orbit::before, .faq-orbit::after { content: ""; position: absolute; width: 14px; height: 14px; border-radius: 50%; background: #8a61d1; box-shadow: 0 0 0 8px #8a61d122; transform: translate(74px,-83px); }
.faq-orbit::after { width: 9px; height: 9px; background: #ef7dbb; transform: translate(-107px,51px); }
.faq-orbit span { display: grid; place-items: center; width: 88px; height: 88px; border-radius: 28px; background: #6943c0; box-shadow: 0 15px 35px #6943c044; color: #fff; font-size: 2.8rem; font-weight: 800; transform: rotate(-8deg); }
.faq-question-section { min-height: 310px; display: grid; grid-template-columns: 200px minmax(0, 1fr); align-items: start; gap: 42px; padding-block: 68px 72px; border-top: 1px solid var(--faq-line); }
.faq-question-section--tint { background: var(--faq-surface); }
.faq-section-label { padding-top: 10px; display: flex; flex-direction: column; gap: 9px; color: var(--faq-muted); font-size: .69rem; letter-spacing: .14em; font-weight: 750; }
.faq-section-label span:first-child { color: var(--faq-violet); font-size: 1.3rem; letter-spacing: 0; }
.faq-answer-card { max-width: 770px; }
.faq-answer-card h2, .faq-reading-guide h2, .faq-next-step h2 { margin: 0 0 18px; font-size: clamp(1.65rem, 3.1vw, 2.65rem); line-height: 1.12; letter-spacing: -.045em; }
.faq-answer-card > p, .faq-reading-guide__copy > p, .faq-next-step__body > p, .faq-footnote > p { max-width: 690px; margin: 0; color: var(--faq-muted); font-size: 1.06rem; line-height: 1.8; }
.faq-answer-meta { display: flex; gap: 16px; align-items: center; margin-top: 24px; padding: 17px 20px; border-left: 3px solid #9975d4; border-radius: 0 12px 12px 0; background: #f5f0fc; color: #575063; font-size: .92rem; line-height: 1.6; }
.faq-answer-meta__mark { font-size: 1.35rem; color: var(--faq-violet); }
.faq-small-note { margin-top: 22px !important; padding-top: 17px; border-top: 1px solid var(--faq-line); font-size: .94rem !important; }
.faq-related-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 25px; }
.faq-related-links a, .faq-text-link { display: inline-flex; align-items: center; gap: 10px; color: var(--faq-purple); font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.faq-related-links a { min-height: 42px; padding: 0 15px; border: 1px solid #d9cbed; border-radius: 999px; background: #fff; text-decoration: none; }
.faq-related-links a:hover { background: var(--faq-lilac); }
.faq-speed-line { height: 49px; margin-top: 26px; display: flex; align-items: center; gap: 8px; }
.faq-speed-line i { display: block; width: 14px; height: 14px; border: 3px solid #8864c8; border-radius: 50%; background: #fff; }
.faq-speed-line::before { content: ""; position: absolute; width: min(340px, 48vw); height: 2px; background: linear-gradient(90deg, #8864c8, #e9ddf9); }
.faq-speed-line i { position: relative; z-index: 1; margin-right: 35px; }
.faq-speed-line i:last-child { margin-right: 0; background: #6943c0; }
.faq-reading-guide { display: grid; grid-template-columns: 1fr 230px; gap: 70px; align-items: center; padding-block: 86px; border-top: 1px solid var(--faq-line); background: #f9f6ff; }
.faq-reading-guide__copy { max-width: 700px; }
.faq-reading-guide__copy .faq-eyebrow { margin-bottom: 15px; }
.faq-reading-guide__copy > p:not(.faq-eyebrow) { margin-bottom: 22px; }
.faq-guide-stamp { width: 205px; height: 205px; margin-inline: auto; display: flex; flex-direction: column; justify-content: center; align-items: center; transform: rotate(8deg); border: 1px solid #cbbbe6; border-radius: 50%; background: #fff; box-shadow: 0 15px 40px #52318b12; color: var(--faq-violet); }
.faq-guide-stamp span { font-size: .67rem; font-weight: 800; letter-spacing: .2em; }
.faq-guide-stamp strong { margin: 9px 0; color: var(--faq-ink); font-size: 1.75rem; line-height: .95; text-align: center; letter-spacing: -.04em; }
.faq-guide-stamp i { color: #ed82b7; font-size: 1.4rem; font-style: normal; }
.faq-next-step { min-height: 330px; position: relative; display: grid; grid-template-columns: 120px minmax(0,1fr) 190px; align-items: center; gap: 44px; overflow: hidden; padding-block: 66px; background: #24183f; color: #fff; }
.faq-next-step__index { color: #ffffff24; font-size: clamp(4.5rem, 9vw, 8rem); line-height: 1; font-weight: 800; letter-spacing: -.09em; }
.faq-next-step__body { position: relative; z-index: 1; max-width: 610px; }
.faq-next-step .faq-eyebrow { color: #cfb8ff; }
.faq-next-step h2 { color: #fff; }
.faq-next-step__body > p:not(.faq-eyebrow) { margin-bottom: 23px; color: #d5cfe2; }
.faq-next-step__aside { width: 155px; aspect-ratio: 1; position: relative; display: grid; place-items: center; border: 1px solid #ffffff38; border-radius: 50%; color: #fff; }
.faq-next-step__aside span { font-size: 2rem; font-weight: 800; letter-spacing: -.08em; }
.faq-next-step__aside i, .faq-next-step__aside b { position: absolute; width: 13px; height: 13px; border-radius: 50%; background: #cfb8ff; transform: translate(55px,-56px); }
.faq-next-step__aside b { width: 8px; height: 8px; background: #ef81b8; transform: translate(-62px,52px); }
.faq-contact-button { background-color: #fff; color: #392266 !important; }
.faq-contact-button:hover { background-color: #e8def7; }
.faq-footnote { display: grid; grid-template-columns: 230px minmax(0, 1fr) auto; gap: 30px; align-items: center; padding-block: 48px 58px; border-bottom: 1px solid var(--faq-line); background: #fff; }
.faq-footnote h2 { margin: 0; font-size: 1.05rem; letter-spacing: -.01em; }
.faq-footnote > p { font-size: .9rem; }
.faq-footnote .faq-text-link { white-space: nowrap; font-size: .9rem; }
@media (max-width: 760px) {
  .gaming-hero__header { min-height: 74px; padding-inline: 22px; }
  .faq-page { padding-top: 74px; }
  .faq-page section { padding-inline: 24px; }
  .faq-intro { min-height: 0; grid-template-columns: 1fr; gap: 35px; padding-block: 62px 54px; }
  .faq-intro h1 { max-width: 570px; font-size: clamp(2.7rem, 10vw, 4rem); }
  .faq-orbit { width: 174px; }
  .faq-orbit span { width: 66px; height: 66px; border-radius: 21px; font-size: 2.1rem; }
  .faq-question-section { min-height: 0; grid-template-columns: 1fr; gap: 25px; padding-block: 42px 48px; }
  .faq-section-label { flex-direction: row; align-items: center; gap: 12px; }
  .faq-section-label span:first-child { font-size: 1rem; }
  .faq-answer-card h2, .faq-reading-guide h2, .faq-next-step h2 { font-size: clamp(1.65rem, 7vw, 2.2rem); }
  .faq-reading-guide { grid-template-columns: 1fr; gap: 35px; padding-block: 56px; }
  .faq-guide-stamp { width: 160px; }
  .faq-next-step { grid-template-columns: 1fr; gap: 20px; padding-block: 48px; }
  .faq-next-step__index { position: absolute; right: 18px; top: 33px; font-size: 5rem; }
  .faq-next-step__aside { display: none; }
  .faq-footnote { grid-template-columns: 1fr; gap: 14px; padding-block: 34px 42px; }
}
@media (max-width: 420px) {
  .faq-page section { padding-inline: 20px; }
  .faq-intro { padding-block: 48px 42px; }
  .faq-lede { font-size: 1rem; }
  .faq-jump, .faq-contact-button { width: 100%; }
  .faq-related-links { align-items: stretch; flex-direction: column; }
  .faq-related-links a { justify-content: space-between; }
  .faq-section-label { letter-spacing: .1em; }
}
@media (prefers-reduced-motion: reduce) {
  .faq-page *, .faq-page *::before, .faq-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
