
  :root {
    --bg:#050713;
    --bg2:#0b0f25;
    --card:rgba(12,14,34,.92);
    --card-soft:rgba(255,255,255,.05);
    --text:#fff;
    --muted:#ccc9dd;
    --pink:#ff4dc4;
    --pink2:#ff77d9;
    --violet:#8b5cff;
    --blue:#31a3ff;
    --green:#22d160;
    --line:rgba(255,255,255,.12);
    --shadow:0 24px 70px rgba(0,0,0,.45);
    --radius:28px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
    background:
      radial-gradient(circle at 15% 8%, rgba(255,77,196,.18), transparent 26%),
      radial-gradient(circle at 85% 10%, rgba(49,163,255,.16), transparent 24%),
      radial-gradient(circle at 50% 95%, rgba(139,92,255,.16), transparent 24%),
      linear-gradient(180deg, #050713 0%, #070916 40%, #05060e 100%);
    color:var(--text);
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none}
  img{display:block;max-width:100%}
  .container{width:min(1200px, calc(100% - 32px)); margin:0 auto;}
  .section{padding:34px 0}
  .panel{
    border:1px solid var(--line);
    background:linear-gradient(180deg, rgba(18,20,48,.92), rgba(10,12,30,.94));
    border-radius:30px;
    box-shadow:var(--shadow);
  }

  /* header */
  .nav-wrap{position:sticky; top:0; z-index:60; backdrop-filter:blur(16px); background:rgba(4,6,16,.74); border-bottom:1px solid rgba(255,255,255,.08);}
  .nav{height:74px; display:grid; grid-template-columns:auto 1fr auto; gap:24px; align-items:center;}
  .brand{font-weight:1000; font-size:32px; letter-spacing:-.06em; line-height:1;}
  .brand span{background:linear-gradient(180deg,#fff,#f3b1ff 68%, #ff57ca); -webkit-background-clip:text; background-clip:text; color:transparent;}
  .nav-links{display:flex; justify-content:center; gap:28px; color:#e8e7f3; font-size:15px; font-weight:700;}
  .nav-links a{opacity:.86}
  .nav-links a:hover{opacity:1;color:#fff}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 20px; min-height:52px; border-radius:16px; border:1px solid rgba(255,255,255,.14); color:#fff; font-weight:900; font-size:15px; box-shadow:0 16px 40px rgba(0,0,0,.22); transition:.18s ease;}
  .btn:hover{transform:translateY(-2px)}
  .btn-pink{background:linear-gradient(135deg,var(--pink),var(--violet));}
  .btn-outline{background:rgba(255,255,255,.05)}
  .btn-green{background:linear-gradient(135deg,#0fb44b,#22d160)}
  .btn-blue{background:linear-gradient(135deg,#1f8ff4,#3db9ff)}

  /* hero */
  .hero-card{
    position:relative;
    overflow:hidden;
    padding:28px 28px 22px;
    min-height:660px;
    background:
      linear-gradient(90deg, rgba(6,8,22,.96) 0%, rgba(9,10,24,.84) 44%, rgba(16,8,28,.54) 100%),
      radial-gradient(circle at 76% 18%, rgba(255,77,196,.24), transparent 24%),
      radial-gradient(circle at 90% 80%, rgba(49,163,255,.16), transparent 24%),
      url('https://images.unsplash.com/photo-1519501025264-65ba15a82390?auto=format&fit=crop&w=1600&q=80') center/cover;
  }
  .hero-grid{display:grid; grid-template-columns: 1.05fr .95fr; gap:18px; min-height:560px; align-items:stretch;}
  .hero-left{padding:8px 4px 0 0; display:flex; flex-direction:column; justify-content:center;}
  .badge{display:inline-flex; align-items:center; padding:10px 16px; border-radius:14px; font-weight:1000; font-size:14px; text-transform:uppercase; letter-spacing:.08em; background:rgba(255,77,196,.12); border:1px solid rgba(255,77,196,.26); color:#ffb5e6; width:max-content;}
  .hero-title{margin:18px 0 0; font-size:clamp(64px,10vw,128px); line-height:.85; letter-spacing:-.08em; font-weight:1000;}
  .hero-title .num{display:block; background:linear-gradient(180deg,#fff 10%, #f9b2e7 60%, #ff63cc 100%); -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:none;}
  .hero-sub{font-size:20px; font-weight:850; margin-top:10px; letter-spacing:-.02em;}
  .hero-text{margin-top:18px; max-width:530px; color:#f2f0fb; font-size:20px; line-height:1.5; font-weight:650;}
  .hero-actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:26px;}
  .hero-right{position:relative; min-height:560px;}
  .gta-logo{position:absolute; top:24px; right:24px; text-align:right; font-weight:1000; line-height:.82; text-transform:lowercase; filter:drop-shadow(0 12px 22px rgba(0,0,0,.45));}
  .gta-logo .stack{font-size:clamp(48px,6vw,84px); color:#fff; letter-spacing:-.06em;}
  .gta-logo .vi{font-size:clamp(58px,6.8vw,96px); background:linear-gradient(180deg,#ffb3e9,#ff4dc4); -webkit-background-clip:text; background-clip:text; color:transparent;}
  .hero-boxes{position:absolute; right:10px; bottom:12px; left:40px; display:flex; justify-content:center; align-items:flex-end; gap:24px;}
  .hero-boxes img{width:42%; max-width:280px; filter:drop-shadow(0 22px 34px rgba(0,0,0,.45));}
  .hero-boxes img:first-child{transform:translateY(20px) rotate(-6deg);}
  .hero-boxes img:last-child{transform:rotate(6deg);}

  .feature-strip{margin-top:22px; display:grid; grid-template-columns:repeat(5,1fr); gap:10px;}
  .feature{padding:15px 14px; min-height:72px; border-radius:18px; border:1px solid var(--line); background:rgba(6,8,20,.56); display:flex; align-items:center; gap:12px;}
  .feature .icon{font-size:24px; color:#ff83d8;}
  .feature b{display:block; font-size:14px; line-height:1.25;}
  .feature span{display:block; font-size:12px; color:var(--muted); line-height:1.25; margin-top:2px;}

  /* titles */
  .section-head{text-align:center; margin:0 auto 22px; max-width:860px;}
  .section-head h2{margin:0; font-size:clamp(34px,4.2vw,58px); line-height:1; letter-spacing:-.06em; text-transform:uppercase;}
  .section-head p{margin:12px 0 0; color:var(--muted); font-size:18px; line-height:1.55;}

  /* platform cards */
  .platforms{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
  .platform-card{padding:22px; border:1px solid var(--line); border-radius:28px; background:linear-gradient(180deg, rgba(15,18,42,.94), rgba(10,12,29,.95)); box-shadow:var(--shadow); position:relative; overflow:hidden;}
  .platform-card::after{content:''; position:absolute; inset:auto -40px -80px auto; width:260px; height:260px; border-radius:999px; filter:blur(18px); opacity:.23;}
  .platform-card.xbox::after{background:#1fe164;}
  .platform-card.ps::after{background:#3aa6ff;}
  .platform-top{display:flex; align-items:center; gap:10px; font-weight:900; font-size:18px; margin-bottom:18px;}
  .dot{width:18px; height:18px; border-radius:50%; box-shadow:0 0 18px currentColor;}
  .xbox .dot{background:#65ef90; color:#65ef90;}
  .ps .dot{background:#64b0ff; color:#64b0ff;}
  .platform-body{display:grid; grid-template-columns:190px 1fr; gap:22px; align-items:center; position:relative; z-index:1;}
  .box-wrap{display:flex; justify-content:center;}
  .box-wrap img{width:185px; filter:drop-shadow(0 22px 32px rgba(0,0,0,.48));}
  .platform-content h3{margin:0; font-size:clamp(30px,4vw,54px); line-height:1; letter-spacing:-.05em;}
  .platform-content .subline{font-size:18px; font-weight:900; margin-top:8px;}
  .platform-content p{margin:14px 0 16px; color:var(--muted); line-height:1.55; font-weight:650; font-size:15px;}
  .price-list{display:grid; gap:10px; margin:10px 0 20px;}
  .price-item{display:flex; justify-content:space-between; align-items:center; padding:13px 16px; border-radius:16px; border:1px solid var(--line); background:rgba(255,255,255,.05); font-weight:850;}
  .price-item strong{font-size:20px;}

  /* steps */
  .steps{display:grid; grid-template-columns:repeat(5,1fr); gap:14px;}
  .step{padding:22px; border:1px solid var(--line); border-radius:24px; background:var(--card); position:relative; min-height:210px;}
  .step-num{width:36px; height:36px; display:grid; place-items:center; border-radius:12px; background:linear-gradient(135deg,var(--pink),var(--violet)); font-weight:1000; margin-bottom:16px;}
  .step h3{margin:0 0 10px; font-size:19px;}
  .step p{margin:0; color:var(--muted); line-height:1.45; font-size:14px; font-weight:600;}

  .benefits{display:grid; grid-template-columns:repeat(5,1fr); gap:14px;}
  .benefit{padding:24px 18px; border:1px solid var(--line); border-radius:24px; background:linear-gradient(180deg, rgba(17,19,45,.92), rgba(10,12,28,.95)); min-height:180px; text-align:center;}
  .benefit .i{font-size:34px; color:#ff84db; margin-bottom:14px;}
  .benefit h3{margin:0 0 10px; font-size:19px;}
  .benefit p{margin:0; color:var(--muted); line-height:1.45; font-size:14px; font-weight:600;}

  .warn{display:grid; grid-template-columns:150px 1fr 320px; gap:22px; align-items:center; padding:24px; border:1px solid rgba(255,77,196,.2); border-radius:28px; background:linear-gradient(180deg, rgba(18,17,42,.94), rgba(13,12,28,.95)); box-shadow:var(--shadow); overflow:hidden;}
  .warn-logo{width:120px; height:120px; border-radius:26px; display:grid; place-items:center; font-size:78px; font-weight:1000; color:var(--pink); border:1px solid rgba(255,77,196,.22); background:radial-gradient(circle at 50% 50%, rgba(255,77,196,.18), transparent 60%), rgba(255,255,255,.03);}
  .warn h3{margin:0 0 10px; font-size:24px; text-transform:uppercase; letter-spacing:-.04em; color:#ff9ae1;}
  .warn p{margin:0 0 10px; color:var(--muted); line-height:1.55; font-weight:650;}
  .warn-scene{height:180px; border-radius:22px; background:
    linear-gradient(180deg, rgba(6,8,20,.22), rgba(6,8,20,.45)),
    url('https://images.unsplash.com/photo-1500534623283-312aade485b7?auto=format&fit=crop&w=1000&q=80') center/cover;
  }

  .faq-grid{display:grid; grid-template-columns:1.08fr .92fr; gap:18px;}
  .faq-list .item{border:1px solid var(--line); border-radius:18px; overflow:hidden; background:rgba(255,255,255,.04); margin-bottom:10px;}
  .faq-btn{width:100%; background:none; border:0; color:#fff; text-align:left; display:flex; align-items:center; justify-content:space-between; padding:17px 18px; font-size:16px; font-weight:900; cursor:pointer;}
  .faq-answer{display:none; padding:0 18px 18px; color:var(--muted); line-height:1.55; font-weight:600;}
  .item.active .faq-answer{display:block;}
  .release{padding:28px; border:1px solid var(--line); border-radius:28px; background:linear-gradient(180deg, rgba(19,20,47,.94), rgba(11,12,29,.95)); box-shadow:var(--shadow); min-height:100%; display:flex; flex-direction:column; justify-content:space-between;}
  .release-top{text-align:center; padding-top:8px;}
  .release-top h3{margin:0; font-size:20px; text-transform:uppercase; color:#e9e7f4; letter-spacing:.08em;}
  .release-date{margin-top:18px; font-size:clamp(54px,7vw,92px); line-height:.85; font-weight:1000; letter-spacing:-.06em; background:linear-gradient(180deg,#fff,#ff9fe3 52%,#ff4dc4); -webkit-background-clip:text; background-clip:text; color:transparent;}
  .release-car{margin-top:18px; border-radius:22px; height:180px; background:
     linear-gradient(180deg, rgba(8,10,24,.22), rgba(8,10,24,.5)),
     url('https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=1000&q=80') center/cover;}
  .release-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:18px;}

  .cta{display:grid; grid-template-columns:1.1fr .9fr; gap:18px; align-items:stretch;}
  .cta-left, .cta-right{padding:24px; border-radius:28px; border:1px solid var(--line); box-shadow:var(--shadow);}
  .cta-left{background:linear-gradient(180deg, rgba(18,20,46,.94), rgba(10,12,29,.95)); display:flex; gap:18px; align-items:center;}
  .cta-car{width:140px; height:110px; border-radius:20px; flex:0 0 auto; background:
     linear-gradient(180deg, rgba(8,10,24,.16), rgba(8,10,24,.4)),
     url('https://images.unsplash.com/photo-1494976388531-d1058494cdd8?auto=format&fit=crop&w=800&q=80') center/cover;}
  .cta-left h3{margin:0 0 10px; font-size:36px; line-height:1; letter-spacing:-.05em; text-transform:uppercase;}
  .cta-left p{margin:0; color:var(--muted); line-height:1.5; font-weight:650;}
  .cta-right{background:linear-gradient(180deg, rgba(18,20,46,.94), rgba(10,12,29,.95)); display:flex; flex-direction:column; justify-content:center;}
  .cta-actions{display:flex; gap:12px; flex-wrap:wrap;}
  .kaspi{margin-top:16px; padding:14px 16px; border:1px dashed rgba(255,255,255,.24); border-radius:18px; background:rgba(255,255,255,.04); font-weight:800; color:#fff;}
  .foot-icons{margin-top:16px; display:grid; grid-template-columns:repeat(3,1fr); gap:10px;}
  .foot-icon{padding:14px; text-align:center; border-radius:18px; border:1px solid var(--line); background:rgba(255,255,255,.04); font-weight:800; font-size:14px;}
  .foot-icon span{display:block; margin-top:4px; color:var(--muted); font-weight:600; font-size:12px; line-height:1.3;}

  footer{padding:22px 0 48px; text-align:center; color:var(--muted); font-size:14px;}
  .floating{display:none; position:fixed; left:12px; right:12px; bottom:12px; z-index:90; gap:10px; padding:10px; border-radius:22px; background:rgba(6,8,20,.88); border:1px solid var(--line); backdrop-filter:blur(14px); box-shadow:0 16px 40px rgba(0,0,0,.44);}
  .floating .btn{flex:1; min-height:48px; padding:0 10px;}

  @media (max-width:1100px) {
    .hero-grid, .faq-grid, .cta {grid-template-columns:1fr;}
    .warn{grid-template-columns:120px 1fr;}
    .warn-scene{grid-column:1 / -1}
    .platform-body{grid-template-columns:180px 1fr;}
    .benefits{grid-template-columns:repeat(3,1fr)}
    .steps{grid-template-columns:repeat(3,1fr)}
  }
  @media (max-width:820px) {
    .nav{grid-template-columns:auto auto;}
    .nav-links{display:none}
    .hero-card{min-height:auto;}
    .hero-grid{grid-template-columns:1fr;}
    .feature-strip{grid-template-columns:repeat(2,1fr)}
    .platforms{grid-template-columns:1fr}
    .platform-body{grid-template-columns:1fr;}
    .box-wrap{justify-content:flex-start}
    .steps{grid-template-columns:repeat(2,1fr)}
    .benefits{grid-template-columns:repeat(2,1fr)}
    .cta-left{flex-direction:column; align-items:flex-start}
    .foot-icons{grid-template-columns:1fr}
  }
  @media (max-width:620px) {
    .container{width:min(100% - 20px, 1200px)}
    .nav{height:64px}
    .brand{font-size:28px}
    .hero-title{font-size:72px}
    .hero-sub{font-size:16px}
    .hero-text{font-size:16px}
    .hero-actions .btn{width:100%}
    .hero-right{min-height:420px}
    .gta-logo .stack{font-size:44px}
    .gta-logo .vi{font-size:50px}
    .hero-boxes{left:10px; right:10px; gap:10px}
    .hero-boxes img{width:46%}
    .feature-strip, .steps, .benefits{grid-template-columns:1fr}
    .warn{grid-template-columns:1fr}
    .cta-right .cta-actions .btn{width:100%}
    .floating{display:flex}
    body{padding-bottom:84px}
  }


/* === restored Codex upgrade === */
:root{--bg:#020413;--bg2:#06091b;--card:rgba(5,8,24,.9);--line:rgba(255,77,196,.3);--radius:8px;--shadow:0 18px 44px rgba(0,0,0,.42)}
html,body{max-width:100%;overflow-x:hidden}body{background:radial-gradient(circle at 12% 0%,rgba(255,77,196,.2),transparent 430px),radial-gradient(circle at 86% 12%,rgba(49,163,255,.16),transparent 460px),linear-gradient(180deg,#01030d 0%,#050713 42%,#020413 100%)}
.container{width:min(1180px,calc(100% - 48px))}.section{padding:24px 0}.panel,.platform-card,.step,.benefit,.warn,.release,.cta-left,.cta-right,.feature,.item{border-radius:8px}.nav-wrap{background:rgba(2,4,14,.92);border-bottom:1px solid rgba(255,77,196,.22)}.nav{height:70px}.brand{font-size:30px;letter-spacing:-.04em;text-shadow:0 0 18px rgba(255,77,196,.5)}.nav-links{gap:30px;font-size:14px}.btn{border-radius:7px;min-height:48px;text-transform:uppercase;font-size:14px}.btn-pink{box-shadow:0 0 28px rgba(255,77,196,.46)}
section:first-of-type{padding-top:0}section:first-of-type .container{width:100%}.hero-card{border-radius:0;min-height:520px;padding:0;border-left:0;border-right:0;border-top:0;box-shadow:none;background:linear-gradient(90deg,rgba(2,4,15,.99) 0%,rgba(2,4,15,.88) 36%,rgba(7,5,20,.52) 67%,rgba(2,4,15,.74) 100%),radial-gradient(circle at 74% 18%,rgba(255,77,196,.28),transparent 300px),radial-gradient(circle at 88% 80%,rgba(49,163,255,.18),transparent 280px),url('https://images.unsplash.com/photo-1519501025264-65ba15a82390?auto=format&fit=crop&w=1600&q=80') center/cover}.hero-grid{width:min(1180px,calc(100% - 48px));margin:0 auto;min-height:520px;grid-template-columns:1.05fr .95fr;align-items:center}.hero-left{padding:0}.badge{border-radius:8px;padding:8px 15px;color:#ff82dc;background:rgba(255,77,196,.14);border-color:rgba(255,77,196,.44);box-shadow:0 0 22px rgba(255,77,196,.22)}.hero-title{font-size:clamp(86px,12vw,148px);line-height:.82;letter-spacing:-.07em;text-shadow:0 12px 0 rgba(0,0,0,.52),0 0 24px rgba(255,255,255,.18)}.hero-title .num{display:inline-block;margin-left:.05em;background:linear-gradient(180deg,#fff 12%,#ffd3f2 52%,#ff4dc4);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{text-transform:uppercase;font-size:24px;margin-top:18px}.hero-text{font-size:18px;max-width:560px;line-height:1.55}.hero-actions{gap:16px}.gta-logo{z-index:4;top:46px;right:6px;text-align:center;transform:scale(.86);transform-origin:top right}.gta-logo .stack{font-size:clamp(54px,6.2vw,88px);line-height:.78;-webkit-text-stroke:3px #0b0d18;text-shadow:0 5px 0 #050611}.gta-logo .vi{font-size:clamp(70px,7.2vw,108px);-webkit-text-stroke:3px #111425;filter:drop-shadow(0 0 12px rgba(255,77,196,.45))}.hero-boxes{z-index:2;right:84px;bottom:-8px;left:330px;gap:28px}.hero-boxes img{max-width:245px;width:40%;filter:drop-shadow(0 22px 28px rgba(0,0,0,.55)) drop-shadow(0 0 14px rgba(255,77,196,.25))}
.feature-strip{grid-template-columns:repeat(5,1fr);gap:0;margin-top:0;border-bottom:1px solid rgba(255,77,196,.16)}.feature{border-radius:0;border-left:0;border-top:0;border-bottom:0;background:rgba(5,8,24,.46);min-height:74px}.section-head{margin-bottom:18px}.section-head h2{font-size:clamp(30px,3.7vw,44px);letter-spacing:-.04em;text-shadow:0 0 18px rgba(255,255,255,.2)}.section-head p{font-size:16px}.platforms{gap:28px}.platform-card{padding:24px;border-color:rgba(255,77,196,.2);background:linear-gradient(180deg,rgba(8,11,31,.94),rgba(4,7,22,.96))}.platform-card.xbox{border-color:rgba(34,209,96,.48)}.platform-card.ps{border-color:rgba(49,163,255,.48)}.platform-card::after{opacity:.34;filter:blur(22px)}.platform-top{font-size:18px;text-transform:uppercase;margin-bottom:14px}.platform-body{grid-template-columns:180px 1fr}.box-wrap img{width:174px}.platform-content h3{font-size:44px;letter-spacing:-.04em}.platform-content .subline{font-size:20px}.price-item{border-radius:7px;padding:12px 14px;background:rgba(255,255,255,.045)}
.steps,.benefits{gap:0;border:1px solid rgba(255,77,196,.18);border-radius:8px;overflow:hidden;background:rgba(7,10,28,.58)}.step,.benefit{box-shadow:none;border-radius:0;border:0;border-right:1px solid rgba(255,77,196,.16);background:transparent}.step:last-child,.benefit:last-child{border-right:0}.step{min-height:190px;padding:20px 16px}.step-num{border-radius:6px;box-shadow:0 0 18px rgba(255,77,196,.36)}.benefit{min-height:170px}.benefit .i{font-size:38px;text-shadow:0 0 18px rgba(255,77,196,.55)}
.warn{grid-template-columns:150px 1fr 350px;border-color:rgba(255,77,196,.42);background:linear-gradient(90deg,rgba(16,9,36,.96),rgba(11,13,31,.94))}.warn-logo{border-radius:18px;color:#ff70d7;box-shadow:inset 0 0 28px rgba(255,77,196,.16),0 0 24px rgba(255,77,196,.18)}.warn-scene,.release-car,.cta-car{border-radius:8px}.faq-grid{gap:28px}.faq-list .item{border-radius:7px;background:rgba(18,14,38,.86);border-color:rgba(255,77,196,.28)}.faq-btn{min-height:48px;padding:0 18px}.release{border-color:rgba(255,77,196,.32);background:linear-gradient(180deg,rgba(16,18,45,.92),rgba(8,10,28,.96))}.release-date{font-size:clamp(48px,6.5vw,82px)}.cta{gap:18px}.cta-left,.cta-right{border-color:rgba(255,77,196,.24);background:linear-gradient(180deg,rgba(16,18,45,.92),rgba(8,10,28,.96))}.floating{right:18px;bottom:18px}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-right{min-height:360px}.gta-logo{transform:none;top:20px;left:0;right:auto;text-align:left}.hero-boxes{left:170px;right:0;bottom:0}.feature-strip,.steps,.benefits{grid-template-columns:repeat(2,1fr)}.feature,.step,.benefit{border-right:0;border-bottom:1px solid rgba(255,77,196,.16)}.warn{grid-template-columns:130px 1fr}.warn-scene{display:none}}
@media(max-width:640px){.container,.hero-grid{width:calc(100% - 32px)}.hero-card{min-height:650px}.hero-title{font-size:82px}.hero-title .num{display:block;margin-left:0}.hero-sub{font-size:21px}.hero-actions .btn{width:100%}.gta-logo{position:relative;top:auto;right:auto}.hero-boxes{position:relative;left:auto;right:auto;bottom:auto;margin-top:20px}.hero-boxes img{width:44%}.platforms,.platform-body,.steps,.benefits,.faq-grid,.cta{grid-template-columns:1fr}.platform-body{gap:18px}.box-wrap{justify-content:flex-start}.warn{grid-template-columns:1fr}.release-actions .btn{width:100%}}



/* === mobile polish pass === */
@media (max-width: 640px) {
  body { padding-bottom: 86px; }
  .nav { height: 68px; grid-template-columns: auto 1fr; gap: 12px; }
  .brand { font-size: 28px; }
  .write { justify-self: end; min-height: 46px; padding: 0 18px; border-radius: 8px; font-size: 13px; }
  .hero-card { min-height: auto; }
  .hero-grid { min-height: auto; display: block; padding: 22px 16px 26px; }
  .hero-left { min-height: auto; }
  .badge { font-size: 13px; padding: 8px 13px; }
  .hero-title { margin-top: 16px; font-size: clamp(76px, 24vw, 98px); line-height: .83; letter-spacing: -0.06em; }
  .hero-title .num { display: block; margin-left: 0; }
  .hero-sub { margin-top: 12px; font-size: 20px; line-height: 1.15; }
  .hero-text { margin-top: 16px; max-width: 100%; font-size: 16px; line-height: 1.5; }
  .hero-actions { margin-top: 22px; gap: 12px; }
  .hero-actions .btn { width: 100%; min-height: 50px; font-size: 13px; }
  .hero-right { display: none; }
  .feature-strip { grid-template-columns: 1fr; margin-top: 0; }
  .feature { min-height: 58px; padding: 12px 16px; border-right: 0; border-bottom: 1px solid rgba(255,77,196,.16); border-radius: 0; }
  .feature .icon { width: 30px; text-align: center; }
  .section { padding: 22px 0; }
  .section-head h2 { font-size: 30px; line-height: 1.03; }
  .section-head p { font-size: 15px; }
  .platform-card { padding: 16px; border-radius: 8px; }
  .platform-body { grid-template-columns: 116px 1fr; gap: 14px; align-items: start; }
  .box-wrap { justify-content: center; }
  .box-wrap img { width: 112px; }
  .platform-content h3 { font-size: 34px; }
  .platform-content .subline { font-size: 16px; }
  .platform-content p { font-size: 13px; line-height: 1.45; }
  .price-list { gap: 8px; }
  .price-item { padding: 10px 12px; font-size: 13px; }
  .price-item strong { font-size: 17px; }
  .platform-card .btn, .platform-card .buy { width: 100%; }
  .steps, .benefits { display: grid; grid-template-columns: 1fr; }
  .step, .benefit { min-height: auto; padding: 18px 16px; border-right: 0; border-bottom: 1px solid rgba(255,77,196,.16); }
  .step:last-child, .benefit:last-child { border-bottom: 0; }
  .step-num { margin-bottom: 10px; }
  .benefit .i { margin-bottom: 10px; }
  .warn { grid-template-columns: 1fr; gap: 16px; padding: 18px; border-radius: 8px; }
  .warn-logo { width: 92px; height: 92px; font-size: 54px; border-radius: 16px; }
  .warn h3 { font-size: 22px; }
  .faq-grid { grid-template-columns: 1fr; gap: 16px; }
  .faq-btn { font-size: 15px; line-height: 1.25; min-height: 52px; padding: 10px 14px; }
  .faq-answer { font-size: 14px; }
  .release { padding: 18px; }
  .release-date { font-size: 52px; line-height: .9; }
  .release-car { height: 130px; }
  .cta { grid-template-columns: 1fr; gap: 14px; }
  .cta-left, .cta-right { padding: 18px; border-radius: 8px; }
  .cta-left { display: block; }
  .cta-car { width: 100%; height: 118px; margin-bottom: 14px; }
  .cta-actions { grid-template-columns: 1fr; }
  .kaspi { font-size: 14px; }
  .foot-icons { grid-template-columns: 1fr; }
  .floating { left: 12px; right: 12px; bottom: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 10px; border-radius: 14px; background: rgba(5, 7, 20, .88); border: 1px solid rgba(255,77,196,.24); backdrop-filter: blur(14px); }
  .floating .btn { width: 100%; min-height: 46px; padding: 0 10px; font-size: 12px; }
}

@media (max-width: 380px) {
  .platform-body { grid-template-columns: 1fr; }
  .box-wrap { justify-content: flex-start; }
  .box-wrap img { width: 128px; }
  .hero-title { font-size: 74px; }
  .write { padding: 0 14px; }
}



/* === mobile contact/features refinement === */
@media (max-width: 640px) {
  body { padding-bottom: 0; }
  .feature-strip { grid-template-columns: 1fr 1fr; }
  .feature { min-height: 76px; align-items: flex-start; padding: 13px 12px; gap: 9px; }
  .feature .icon { font-size: 22px; width: 24px; flex: 0 0 24px; }
  .feature b { font-size: 13px; }
  .feature span { font-size: 11px; }
  .feature:nth-child(5) { grid-column: 1 / -1; min-height: 60px; align-items: center; }
  .floating { display: none; }
}



/* === larger hero platform covers === */
@media (min-width: 641px) {
  .hero-boxes {
    left: 255px;
    right: 18px;
    bottom: 14px;
    gap: 34px;
    align-items: flex-end;
  }
  .hero-boxes img {
    width: 46%;
    max-width: 330px;
    min-width: 190px;
    filter: drop-shadow(0 24px 32px rgba(0,0,0,.58)) drop-shadow(0 0 18px rgba(255,77,196,.28));
  }
  .hero-boxes img:first-child { transform: translateY(24px) rotate(-6deg); }
  .hero-boxes img:last-child { transform: translateY(4px) rotate(6deg); }
}
@media (min-width: 641px) and (max-width: 980px) {
  .hero-boxes {
    left: 185px;
    right: 10px;
    bottom: -4px;
  }
  .hero-boxes img {
    max-width: 260px;
    min-width: 150px;
  }
}



/* === clean hero covers and remove GTA text mark === */
.gta-logo { display: none !important; }
@media (min-width: 641px) {
  .hero-right { overflow: visible; }
  .hero-boxes {
    left: 42px;
    right: 0;
    bottom: 6px;
    gap: 42px;
    justify-content: flex-end;
    overflow: visible;
  }
  .hero-boxes img {
    width: auto;
    max-width: none;
    min-width: 0;
    height: clamp(330px, 30vw, 455px);
    object-fit: contain;
    filter: drop-shadow(0 28px 30px rgba(0,0,0,.58)) drop-shadow(0 0 18px rgba(255,77,196,.32));
  }
  .hero-boxes img:first-child { transform: translateY(20px) rotate(-6deg); }
  .hero-boxes img:last-child { transform: translateY(0) rotate(6deg); }
}
@media (min-width: 641px) and (max-width: 980px) {
  .hero-boxes { left: 0; right: 0; bottom: 0; justify-content: center; }
  .hero-boxes img { height: 280px; }
}



/* === tighter hero composition === */
@media (min-width: 981px) {
  .hero-card { min-height: 475px; }
  .hero-grid {
    min-height: 475px;
    align-items: start;
    padding-top: 76px;
    padding-bottom: 0;
    grid-template-columns: .98fr 1.02fr;
  }
  .hero-left { justify-content: flex-start; }
  .badge { margin-bottom: 14px; }
  .hero-title { font-size: clamp(92px, 9.6vw, 142px); }
  .hero-sub { margin-top: 10px; }
  .hero-text { margin-top: 16px; margin-bottom: 0; }
  .hero-actions { margin-top: 24px; }
  .hero-right { min-height: 475px; }
  .hero-boxes {
    left: -40px;
    right: -6px;
    bottom: 38px;
    gap: 34px;
    justify-content: flex-start;
  }
  .hero-boxes img {
    height: clamp(380px, 34vw, 525px);
  }
  .hero-boxes img:first-child { transform: translateY(30px) rotate(-6deg); }
  .hero-boxes img:last-child { transform: translateY(0) rotate(6deg); }
  .feature-strip { margin-top: -1px; }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-grid { padding-top: 70px; grid-template-columns: 1fr 1fr; }
  .hero-boxes { left: -18px; right: 0; bottom: 42px; gap: 28px; }
  .hero-boxes img { height: clamp(345px, 32vw, 430px); }
}



/* === final hero spacing tune === */
@media (min-width: 981px) {
  .hero-grid { padding-top: 54px; }
  .hero-boxes { bottom: 78px; }
  .hero-boxes img { height: clamp(372px, 32vw, 500px); }
  .badge { margin-bottom: 12px; }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-grid { padding-top: 50px; }
  .hero-boxes { bottom: 72px; }
  .hero-boxes img { height: clamp(330px, 30vw, 405px); }
}



/* === GTA title font treatment === */
.hero-title {
  font-family: Impact, Haettenschweiler, 'Arial Black', 'Franklin Gothic Heavy', sans-serif;
  font-weight: 900;
  letter-spacing: -0.045em;
  transform: scaleX(1.08);
  transform-origin: left center;
  color: #fff;
  text-shadow:
    0 5px 0 rgba(0,0,0,.72),
    0 10px 18px rgba(0,0,0,.58),
    0 0 24px rgba(255,255,255,.16);
}
.hero-title .num {
  font-family: Impact, Haettenschweiler, 'Arial Black', 'Franklin Gothic Heavy', sans-serif;
  font-weight: 900;
  letter-spacing: -0.03em;
  background: linear-gradient(180deg,#ffffff 0%,#ffd7f4 38%,#ff74d7 66%,#ff39be 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: none;
  filter: drop-shadow(0 5px 0 rgba(0,0,0,.72)) drop-shadow(0 0 16px rgba(255,77,196,.35));
}
@media (max-width: 640px) {
  .hero-title { transform: none; letter-spacing: -0.04em; }
}



/* === Pricedown font for GTA title === */
@font-face {
  font-family: 'PricedownLocal';
  src: url('/assets/pricedown-bl.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
.hero-title,
.hero-title .num {
  font-family: 'PricedownLocal', Impact, Haettenschweiler, 'Arial Black', sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  transform: none;
}
.hero-title {
  text-shadow:
    0 5px 0 rgba(0,0,0,.78),
    0 10px 18px rgba(0,0,0,.58),
    0 0 24px rgba(255,255,255,.16);
}
.hero-title .num {
  background: linear-gradient(180deg,#ffffff 0%,#ffd7f4 36%,#ff76d9 66%,#ff38be 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 5px 0 rgba(0,0,0,.72)) drop-shadow(0 0 16px rgba(255,77,196,.35));
}



/* === lowercase Pricedown title === */
.hero-title {
  text-transform: none !important;
}



/* === force lowercase gta mark === */
.hero-title,
.hero-title * {
  text-transform: none !important;
  font-variant: normal !important;
  font-feature-settings: normal !important;
}
.hero-title .gta-lower {
  text-transform: lowercase !important;
}



/* === VI mark and title spacing === */
.hero-title {
  line-height: .72 !important;
  margin-bottom: 22px !important;
}
.hero-title .gta-lower {
  display: inline-block;
  line-height: .72;
  padding-bottom: .08em;
}
.hero-title .roman {
  display: inline-block;
  margin-left: .08em;
  font-family: Impact, Haettenschweiler, 'Arial Black', sans-serif;
  font-size: .82em;
  line-height: .82;
  letter-spacing: -0.06em;
  font-style: normal;
  vertical-align: .02em;
  background: linear-gradient(180deg,#ffffff 0%,#ffc8ef 28%,#ff73d8 58%,#b72aff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-stroke: 2px rgba(20,8,35,.72);
  filter: drop-shadow(0 5px 0 rgba(0,0,0,.78)) drop-shadow(0 0 16px rgba(255,77,196,.42));
}
.hero-sub {
  margin-top: 2px !important;
  position: relative;
  z-index: 2;
}
@media (max-width: 640px) {
  .hero-title { margin-bottom: 18px !important; }
  .hero-title .roman { font-size: .78em; -webkit-text-stroke: 1px rgba(20,8,35,.72); }
}



/* === stacked Grand Theft Auto VI hero logo === */
.hero-title.gta-stack-title {
  width: min(620px, 100%);
  margin: 10px 0 24px !important;
  display: grid;
  align-items: start;
  gap: 0;
  font-family: 'PricedownLocal', Impact, Haettenschweiler, 'Arial Black', sans-serif;
  font-weight: 400;
  line-height: .72 !important;
  letter-spacing: 0;
  text-transform: lowercase !important;
  transform: none !important;
  color: #fff;
  filter: drop-shadow(0 0 14px rgba(255, 42, 212, .55));
}
.hero-title.gta-stack-title .stack-word {
  display: block;
  width: max-content;
  color: #fff;
  font-family: 'PricedownLocal', Impact, Haettenschweiler, 'Arial Black', sans-serif;
  font-size: clamp(92px, 8.2vw, 154px);
  line-height: .68;
  letter-spacing: 0;
  text-transform: lowercase !important;
  -webkit-text-stroke: 2px #11101d;
  text-shadow:
    0 6px 0 #060611,
    -3px -3px 0 #151426,
    3px -3px 0 #151426,
    -3px 3px 0 #151426,
    3px 3px 0 #151426,
    0 0 0 #151426,
    0 0 18px rgba(255,255,255,.16);
}
.hero-title.gta-stack-title .grand { margin-left: 0; }
.hero-title.gta-stack-title .theft { margin-left: .78em; margin-top: -.03em; }
.hero-title.gta-stack-title .stack-row {
  display: flex;
  align-items: flex-end;
  gap: .08em;
  margin-top: -.02em;
}
.hero-title.gta-stack-title .auto { margin-left: 0; }
.hero-title.gta-stack-title .big-vi {
  display: inline-block;
  margin-left: .02em;
  margin-bottom: .04em;
  font-family: Impact, Haettenschweiler, 'Arial Black', sans-serif;
  font-size: clamp(110px, 9vw, 176px);
  line-height: .76;
  letter-spacing: -0.08em;
  font-style: italic;
  color: transparent;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92) 0 8%, rgba(255,116,218,.95) 34%, #f12ac1 58%, #7a18ff 100%),
    radial-gradient(circle at 44% 54%, #ff8a31 0 18%, #c61fd3 42%, #31108a 78%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-stroke: 4px #14081f;
  text-shadow:
    0 6px 0 #060611,
    0 0 18px rgba(255,42,212,.72),
    0 0 34px rgba(255,42,212,.42);
  filter: drop-shadow(0 0 0 #ff2bd6) drop-shadow(0 0 14px rgba(255,42,212,.65));
}
.hero-title.gta-stack-title::before {
  content: '';
  position: absolute;
}
.hero-sub { margin-top: 6px !important; }
@media (min-width: 981px) {
  .hero-grid { padding-top: 32px; }
  .hero-card { min-height: 540px; }
  .hero-right { min-height: 540px; }
  .hero-boxes { bottom: 58px; left: 4px; }
  .hero-boxes img { height: clamp(350px, 30vw, 470px); }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-title.gta-stack-title .stack-word { font-size: clamp(78px, 7.5vw, 118px); }
  .hero-title.gta-stack-title .big-vi { font-size: clamp(92px, 8.2vw, 136px); }
  .hero-grid { padding-top: 36px; }
}
@media (max-width: 640px) {
  .hero-title.gta-stack-title {
    width: 100%;
    margin-top: 12px !important;
    margin-bottom: 20px !important;
  }
  .hero-title.gta-stack-title .stack-word { font-size: clamp(66px, 20vw, 86px); -webkit-text-stroke: 1px #11101d; }
  .hero-title.gta-stack-title .theft { margin-left: .55em; }
  .hero-title.gta-stack-title .big-vi { font-size: clamp(76px, 23vw, 102px); -webkit-text-stroke: 2px #14081f; }
  .hero-sub { margin-top: 4px !important; }
}



/* === real GTA VI hero logo image === */
.hero-logo-img {
  display: block;
  width: min(560px, 100%);
  height: auto;
  margin: 4px 0 20px;
  filter: drop-shadow(0 10px 0 rgba(0,0,0,.45)) drop-shadow(0 0 22px rgba(255,77,196,.38));
}
.hero-sub { margin-top: 0 !important; }
@media (min-width: 981px) {
  .hero-grid { padding-top: 38px; }
  .hero-card { min-height: 540px; }
  .hero-right { min-height: 540px; }
  .hero-logo-img { width: min(570px, 100%); margin-top: 0; margin-bottom: 18px; }
  .hero-boxes { bottom: 58px; left: 12px; }
  .hero-boxes img { height: clamp(350px, 30vw, 470px); }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-logo-img { width: min(470px, 100%); }
  .hero-grid { padding-top: 40px; }
}
@media (max-width: 640px) {
  .hero-logo-img { width: min(340px, 100%); margin: 12px 0 16px; }
}



/* === smaller real GTA VI hero logo === */
.hero-logo-img {
  width: min(392px, 100%) !important;
  margin: 4px 0 16px !important;
}
@media (min-width: 981px) {
  .hero-logo-img { width: min(399px, 100%) !important; margin-bottom: 16px !important; }
  .hero-grid { padding-top: 58px; }
  .hero-card { min-height: 500px; }
  .hero-right { min-height: 500px; }
  .hero-boxes { bottom: 50px; }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-logo-img { width: min(329px, 100%) !important; }
  .hero-grid { padding-top: 56px; }
}
@media (max-width: 640px) {
  .hero-logo-img { width: min(238px, 100%) !important; margin: 12px 0 14px !important; }
}



/* === center hero product boxes better === */
@media (min-width: 981px) {
  .hero-boxes {
    left: -118px !important;
    right: 96px !important;
    justify-content: center !important;
    gap: 46px !important;
  }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-boxes {
    left: -72px !important;
    right: 52px !important;
    gap: 34px !important;
  }
}



/* === nudge hero product boxes slightly right === */
@media (min-width: 981px) {
  .hero-boxes {
    left: -68px !important;
    right: 54px !important;
    justify-content: center !important;
    gap: 46px !important;
  }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-boxes {
    left: -36px !important;
    right: 34px !important;
    gap: 34px !important;
  }
}



/* === reduce top empty space after logo image === */
@media (min-width: 981px) {
  .hero-grid {
    padding-top: 18px !important;
    min-height: 500px !important;
  }
  .hero-card {
    min-height: 500px !important;
  }
  .hero-left {
    justify-content: flex-start !important;
  }
  .hero-logo-img {
    margin-top: -4px !important;
    margin-bottom: 10px !important;
  }
  .hero-sub {
    margin-top: 0 !important;
  }
  .hero-text {
    margin-top: 14px !important;
  }
  .hero-actions {
    margin-top: 20px !important;
  }
  .hero-right {
    min-height: 500px !important;
  }
  .hero-boxes {
    bottom: 54px !important;
  }
}
@media (min-width: 981px) and (max-width: 1280px) {
  .hero-grid { padding-top: 16px !important; }
  .hero-logo-img { margin-top: -2px !important; }
}



/* === Miami neon hero background === */
.hero-card {
  background:
    linear-gradient(90deg, rgba(2,4,15,.98) 0%, rgba(2,4,15,.86) 30%, rgba(5,3,18,.40) 58%, rgba(2,4,15,.28) 100%),
    linear-gradient(180deg, rgba(2,4,15,.15) 0%, rgba(2,4,15,.38) 100%),
    url('/assets/hero-miami-neon.png') center center / cover no-repeat !important;
}
@media (min-width: 981px) {
  .hero-card {
    background-position: center center !important;
  }
}
@media (max-width: 640px) {
  .hero-card {
    background:
      linear-gradient(90deg, rgba(2,4,15,.98) 0%, rgba(2,4,15,.78) 58%, rgba(2,4,15,.44) 100%),
      linear-gradient(180deg, rgba(2,4,15,.18) 0%, rgba(2,4,15,.52) 100%),
      url('/assets/hero-miami-neon.png') 58% center / cover no-repeat !important;
  }
}



/* === experimental full-width hero === */
#top.section,
#top.section > .container {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.hero-card {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-radius: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
}
.hero-grid,
.feature-strip {
  width: min(1180px, calc(100% - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (min-width: 1500px) {
  .hero-grid,
  .feature-strip {
    width: min(1280px, calc(100% - 96px)) !important;
  }
}
@media (max-width: 640px) {
  .hero-grid,
  .feature-strip {
    width: calc(100% - 32px) !important;
  }
}



/* === remove gap between nav and hero === */
#top.section {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
#top.section > .container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.nav-wrap + #top.section {
  margin-top: 0 !important;
}
.hero-card {
  margin-top: 0 !important;
}



/* === Playbox header logo === */
.brand-logo {
  display: inline-flex !important;
  align-items: center;
  width: 252px;
  height: 62px;
  flex: 0 0 auto;
  overflow: visible;
  text-decoration: none;
}
.brand-logo img {
  display: block;
  width: 252px;
  height: auto;
  filter: drop-shadow(0 0 10px rgba(255, 77, 196, .28));
}
@media (max-width: 640px) {
  .brand-logo { width: 172px; height: 52px; }
  .brand-logo img { width: 172px; }
}



/* === remove top strip === */
html,
body {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body::before,
body::after {
  display: none !important;
  content: none !important;
}
.nav-wrap {
  top: 0 !important;
  margin-top: 0 !important;
  border-top: 0 !important;
}
#top.section {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
#top.section > .container,
.hero-card {
  margin-top: 0 !important;
  padding-top: 0 !important;
}



/* === single hero action === */
.hero-actions {
  justify-content: flex-start !important;
}
.hero-actions .btn {
  flex: 0 0 auto;
}



/* === hide hero whatsapp action === */
.hero-actions > a:nth-child(2),
.hero-actions > .btn:nth-child(2) {
  display: none !important;
}
.hero-actions {
  grid-template-columns: auto !important;
  gap: 0 !important;
}



/* === temporarily hide hero quick benefits === */
.hero-card .feature-strip {
  display: none !important;
}




/* === balance hero action after hiding benefits === */
.hero-card .hero-grid {
  padding-bottom: 17px !important;
}
.hero-left .hero-actions {
  margin-top: 18px !important;
  margin-bottom: 11px !important;
}
@media (max-width: 640px) {
  .hero-card .hero-grid {
    padding-bottom: 21px !important;
  }
  .hero-left .hero-actions {
    margin-bottom: 14px !important;
  }
}



/* === platform cards width and clean assets === */
#products .container {
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
#products .platforms {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
}
#products .platform-card {
  width: 100% !important;
  min-width: 0 !important;
}
.platform-logo {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 0 !important;
  margin-bottom: 18px !important;
}
.platform-logo span:last-child {
  font-size: 17px !important;
  font-weight: 1000 !important;
  letter-spacing: .02em !important;
  line-height: 1 !important;
}
.xbox-logo span:last-child { color: #f5fff7 !important; }
.ps-logo span:last-child { color: #f5f9ff !important; }
.xbox-mark,
.ps-mark {
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 30px !important;
  font-size: 13px !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
  color: #fff !important;
}
.xbox-mark {
  background: radial-gradient(circle at 50% 50%, #52f178, #0d8f38 68%, #07551f) !important;
  box-shadow: 0 0 18px rgba(34, 209, 96, .45) !important;
}
.ps-mark {
  border-radius: 7px !important;
  background: linear-gradient(135deg, #31a3ff, #1554db 62%, #071f86) !important;
  box-shadow: 0 0 18px rgba(49, 163, 255, .45) !important;
  font-size: 11px !important;
}
#products .box-wrap,
#products .box-wrap.clean-box {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: 0 !important;
  justify-content: center !important;
}
#products .box-wrap::before,
#products .box-wrap::after {
  display: none !important;
  content: none !important;
}
#products .box-wrap.clean-box img {
  width: 165px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 22px 28px rgba(0,0,0,.55)) !important;
}
@media (max-width: 900px) {
  #products .platforms { grid-template-columns: 1fr !important; }
}



/* === final platform logo and box sizing === */
#products .platform-top.platform-logo {
  display: flex !important;
  align-items: center !important;
  height: 44px !important;
  margin-bottom: 16px !important;
  font-size: 0 !important;
}
#products .platform-top.platform-logo img {
  display: block !important;
  width: auto !important;
  max-width: 230px !important;
  height: 42px !important;
  object-fit: contain !important;
}
#products .ps-logo img {
  max-width: 250px !important;
  height: 40px !important;
}

#products .ps-logo.ps5-white img {
  width: auto !important;
  max-width: 250px !important;
  height: 42px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 0 12px rgba(70, 170, 255, .28));
}
#products .platform-body {
  grid-template-columns: 170px 1fr !important;
  align-items: center !important;
}
#products .box-wrap.clean-box {
  width: 170px !important;
  height: 245px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#products .box-wrap.clean-box img {
  width: auto !important;
  height: 220px !important;
  max-width: 165px !important;
  object-fit: contain !important;
}
#products .platform-card.ps .box-wrap.clean-box img {
  height: 220px !important;
  max-width: 165px !important;
}
@media (max-width: 640px) {
  #products .platform-body {
    grid-template-columns: 1fr !important;
  }
  #products .box-wrap.clean-box {
    width: 100% !important;
    height: 230px !important;
    justify-content: flex-start !important;
  }
  #products .box-wrap.clean-box img {
    height: 210px !important;
  }
}



/* === supplied Xbox platform logos === */
#products .platform-top.xbox-assets {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  height: 52px !important;
  margin-bottom: 16px !important;
}
#products .platform-top.xbox-assets img {
  display: block !important;
  width: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 0 12px rgba(34, 209, 96, .30)) !important;
}
#products .platform-top.xbox-assets .xbox-symbol {
  height: 38px !important;
  max-width: 42px !important;
}
#products .platform-top.xbox-assets .series-logo {
  height: 42px !important;
  max-width: 86px !important;
}
#products .platform-top.xbox-assets .series-s-logo {
  height: 41px !important;
  max-width: 78px !important;
}
@media (max-width: 640px) {
  #products .platform-top.xbox-assets {
    gap: 10px !important;
  }
  #products .platform-top.xbox-assets .xbox-symbol { height: 34px !important; }
  #products .platform-top.xbox-assets .series-logo { height: 36px !important; max-width: 74px !important; }
  #products .platform-top.xbox-assets .series-s-logo { height: 35px !important; max-width: 68px !important; }
}



/* === equal Series X and S marks === */
#products .platform-top.xbox-assets .series-logo {
  width: 72px !important;
  height: 42px !important;
  max-width: 72px !important;
  object-fit: contain !important;
}
#products .platform-top.xbox-assets .series-x-logo,
#products .platform-top.xbox-assets .series-s-logo {
  width: 72px !important;
  height: 42px !important;
  max-width: 72px !important;
}
@media (max-width: 640px) {
  #products .platform-top.xbox-assets .series-logo,
  #products .platform-top.xbox-assets .series-x-logo,
  #products .platform-top.xbox-assets .series-s-logo {
    width: 62px !important;
    height: 36px !important;
    max-width: 62px !important;
  }
}



/* === tighter Xbox logo group === */
#products .platform-top.xbox-assets {
  gap: 6px !important;
}
@media (max-width: 640px) {
  #products .platform-top.xbox-assets {
    gap: 4px !important;
  }
}



/* === Xbox logo group without Series S === */
#products .platform-top.xbox-assets {
  gap: 10px !important;
}
#products .platform-top.xbox-assets .series-x-logo {
  width: 86px !important;
  max-width: 86px !important;
}





/* === wider lower sections to match header === */
#top ~ .section > .container {
  width: min(1288px, calc(100% - 128px)) !important;
  max-width: 1288px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
#products .container {
  width: min(1288px, calc(100% - 128px)) !important;
  max-width: 1288px !important;
}
@media (max-width: 900px) {
  #top ~ .section > .container,
  #products .container {
    width: calc(100% - 32px) !important;
    max-width: none !important;
  }
}



/* === supplied PS5 platform logo === */
#products .platform-top.ps5-supplied {
  height: 52px !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: center !important;
}
#products .platform-top.ps5-supplied img {
  display: block !important;
  width: auto !important;
  height: 43px !important;
  max-width: 300px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 0 12px rgba(49, 163, 255, .32)) !important;
}
@media (max-width: 640px) {
  #products .platform-top.ps5-supplied img {
    height: 36px !important;
    max-width: 240px !important;
  }
}



/* === white PS5 platform logo === */
#products .platform-top.ps5-white {
  height: 52px !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: center !important;
}
#products .platform-top.ps5-white img {
  display: block !important;
  width: auto !important;
  height: 42px !important;
  max-width: 260px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 0 12px rgba(49, 163, 255, .26)) !important;
}
@media (max-width: 640px) {
  #products .platform-top.ps5-white img {
    height: 36px !important;
    max-width: 220px !important;
  }
}



/* === compact platform cards without repeated titles === */
#products .platform-content h3,
#products .platform-content .subline {
  display: none !important;
}
#products .platform-card {
  padding-top: 22px !important;
}
#products .platform-top.platform-logo {
  margin-bottom: 6px !important;
}
#products .platform-body {
  align-items: flex-start !important;
  margin-top: 4px !important;
}
#products .platform-content {
  padding-top: 10px !important;
}
#products .platform-content p {
  margin-top: 0 !important;
}
#products .box-wrap.clean-box {
  height: 225px !important;
}
#products .box-wrap.clean-box img {
  height: 210px !important;
}
@media (max-width: 640px) {
  #products .platform-content {
    padding-top: 0 !important;
  }
}





/* === tighter top spacing in platform cards === */
#products .platform-card {
  padding-top: 16px !important;
}
#products .platform-top.platform-logo,
#products .platform-top.xbox-assets,
#products .platform-top.ps5-white {
  height: 42px !important;
  margin-bottom: 0 !important;
}
#products .platform-body {
  margin-top: -2px !important;
}
#products .platform-content {
  padding-top: 2px !important;
}
@media (max-width: 640px) {
  #products .platform-card {
    padding-top: 14px !important;
  }
  #products .platform-body {
    margin-top: 0 !important;
  }
}



/* === even tighter platform text top alignment === */
#products .platform-card {
  padding-top: 12px !important;
}
#products .platform-top.platform-logo,
#products .platform-top.xbox-assets,
#products .platform-top.ps5-white {
  height: 34px !important;
  margin-bottom: -8px !important;
}
#products .platform-top.xbox-assets .xbox-symbol {
  height: 32px !important;
}
#products .platform-top.xbox-assets .series-x-logo {
  height: 34px !important;
}
#products .platform-top.ps5-white img {
  height: 34px !important;
}
#products .platform-body {
  margin-top: -10px !important;
}
#products .platform-content {
  padding-top: 0 !important;
}
#products .platform-content p {
  margin-bottom: 14px !important;
}
@media (max-width: 640px) {
  #products .platform-top.platform-logo,
  #products .platform-top.xbox-assets,
  #products .platform-top.ps5-white {
    height: 32px !important;
    margin-bottom: -4px !important;
  }
  #products .platform-body {
    margin-top: -4px !important;
  }
}



/* === center platform game boxes vertically === */
#products .box-wrap.clean-box {
  transform: translateY(16px) !important;
}
@media (max-width: 640px) {
  #products .box-wrap.clean-box {
    transform: translateY(8px) !important;
  }
}



/* === four safety benefits layout === */
#safe .benefits {
  grid-template-columns: repeat(4, 1fr) !important;
}
@media (max-width: 980px) {
  #safe .benefits {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 640px) {
  #safe .benefits {
    grid-template-columns: 1fr !important;
  }
}



/* === benefit image icon === */
.benefit .benefit-img {
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
.benefit .benefit-img img {
  display: block;
  max-width: 92px;
  max-height: 42px;
  object-fit: contain;
  filter: drop-shadow(0 0 14px rgba(255,77,196,.42));
}



/* === neon installment badge === */
.benefit .installment-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  min-width: 104px;
  padding: 0 14px;
  margin-bottom: 14px;
  border-radius: 8px;
  border: 1px solid rgba(255,77,196,.55);
  background: linear-gradient(135deg, rgba(255,77,196,.22), rgba(49,163,255,.18));
  color: #fff;
  font-size: 24px;
  font-weight: 1000;
  line-height: 1;
  letter-spacing: .04em;
  box-shadow: 0 0 18px rgba(255,77,196,.36), inset 0 0 18px rgba(255,255,255,.08);
  text-shadow: 0 0 10px rgba(255,255,255,.45), 0 0 18px rgba(255,77,196,.55);
}



/* === release banner closer to hero header === */
.faq-grid .release {
  position: relative;
  overflow: hidden;
  border-color: rgba(255,77,196,.52) !important;
  background:
    linear-gradient(180deg, rgba(2,4,15,.72), rgba(2,4,15,.94)),
    radial-gradient(circle at 72% 18%, rgba(255,77,196,.30), transparent 260px),
    radial-gradient(circle at 18% 78%, rgba(49,163,255,.22), transparent 240px),
    url('/assets/hero-miami-neon.png') center / cover no-repeat !important;
  box-shadow: 0 0 0 1px rgba(255,77,196,.10), 0 24px 60px rgba(0,0,0,.46), inset 0 0 46px rgba(255,77,196,.08) !important;
}
.faq-grid .release::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(2,4,15,.96) 0%, rgba(2,4,15,.66) 48%, rgba(2,4,15,.88) 100%);
  pointer-events: none;
}
.faq-grid .release::after {
  content: '';
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 98px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,77,196,.58), rgba(49,163,255,.45), transparent);
  box-shadow: 0 0 18px rgba(255,77,196,.35);
  pointer-events: none;
}
.faq-grid .release > * {
  position: relative;
  z-index: 1;
}
.faq-grid .release-top {
  padding-top: 4px !important;
}
.faq-grid .release-top h3 {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 8px;
  border: 1px solid rgba(255,77,196,.45);
  background: rgba(255,77,196,.12);
  color: #ffd7f4 !important;
  box-shadow: 0 0 22px rgba(255,77,196,.20);
  font-size: 14px !important;
}
.faq-grid .release-date {
  margin-top: 16px !important;
  font-size: clamp(62px, 7vw, 96px) !important;
  line-height: .82 !important;
  background: linear-gradient(180deg, #fff 0%, #ffd7f4 34%, #ff76d9 66%, #ff38be 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  filter: drop-shadow(0 8px 0 rgba(0,0,0,.62)) drop-shadow(0 0 18px rgba(255,77,196,.46));
}
.faq-grid .release-car {
  height: 205px !important;
  border: 1px solid rgba(255,255,255,.10);
  background:
    linear-gradient(180deg, rgba(2,4,15,.18), rgba(2,4,15,.58)),
    url('https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=1000&q=80') center 58% / cover no-repeat !important;
  box-shadow: inset 0 0 32px rgba(0,0,0,.46), 0 0 28px rgba(49,163,255,.10);
}
.faq-grid .release-actions {
  justify-content: center;
}
.faq-grid .release-actions .btn-outline {
  flex-basis: 100%;
  max-width: 330px;
  margin: 0 auto;
}
@media (max-width: 640px) {
  .faq-grid .release-date {
    font-size: 58px !important;
  }
  .faq-grid .release-car {
    height: 150px !important;
  }
}



/* === release date supplied banner image === */
.faq-grid .release-car {
  height: 320px !important;
  border: 0 !important;
  background: url('/assets/release-gta-date-banner.png') center / contain no-repeat !important;
  box-shadow: none !important;
}
.faq-grid .release::after {
  display: none !important;
}
@media (max-width: 640px) {
  .faq-grid .release-car {
    height: 260px !important;
  }
}



/* === hide duplicate release date text === */
.faq-grid .release-date {
  display: none !important;
}



/* === hide release banner buttons === */
.faq-grid .release-actions {
  display: none !important;
}



/* === blend supplied release image into card === */
.faq-grid .release-car {
  position: relative !important;
  overflow: hidden !important;
  background: none !important;
  box-shadow: none !important;
}
.faq-grid .release-car::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('/assets/release-gta-date-banner.png') center / contain no-repeat;
  -webkit-mask-image: radial-gradient(ellipse at center, #000 58%, rgba(0,0,0,.72) 72%, transparent 100%);
  mask-image: radial-gradient(ellipse at center, #000 58%, rgba(0,0,0,.72) 72%, transparent 100%);
  filter: drop-shadow(0 0 22px rgba(255,77,196,.16));
}
.faq-grid .release-car::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center, transparent 48%, rgba(2,4,15,.72) 82%, rgba(2,4,15,.96) 100%);
  pointer-events: none;
}



/* === larger platform game boxes === */
#products .platform-body {
  grid-template-columns: 190px 1fr !important;
}
#products .box-wrap.clean-box {
  width: 190px !important;
  height: 245px !important;
  transform: translateY(14px) !important;
}
#products .box-wrap.clean-box img,
#products .platform-card.ps .box-wrap.clean-box img {
  height: 238px !important;
  max-width: 178px !important;
}
@media (max-width: 640px) {
  #products .platform-body {
    grid-template-columns: 1fr !important;
  }
  #products .box-wrap.clean-box {
    width: 100% !important;
    height: 220px !important;
    transform: translateY(8px) !important;
  }
  #products .box-wrap.clean-box img,
  #products .platform-card.ps .box-wrap.clean-box img {
    height: 212px !important;
    max-width: 165px !important;
  }
}



/* === Vice City contact CTA redesign === */
#contact .cta {
  grid-template-columns: 1.08fr .92fr !important;
  gap: 22px !important;
}
#contact .cta-left-vice,
#contact .cta-right {
  position: relative;
  overflow: hidden;
  border-color: rgba(255,77,196,.48) !important;
  background:
    linear-gradient(90deg, rgba(7,8,26,.96), rgba(12,8,34,.88)),
    radial-gradient(circle at 78% 28%, rgba(255,77,196,.24), transparent 240px),
    url('/assets/hero-miami-neon.png') center / cover no-repeat !important;
  box-shadow: 0 0 0 1px rgba(255,77,196,.10), 0 22px 56px rgba(0,0,0,.44), inset 0 0 44px rgba(255,77,196,.08) !important;
}
#contact .cta-left-vice {
  display: grid !important;
  grid-template-columns: 260px 1fr;
  align-items: center !important;
  gap: 28px !important;
  min-height: 310px;
}
#contact .cta-car {
  width: 260px !important;
  height: 218px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255,77,196,.38);
  background:
    linear-gradient(180deg, rgba(5,7,20,.08), rgba(5,7,20,.20)),
    url('/assets/vice-city-car-cta.png') center / cover no-repeat !important;
  box-shadow: 0 0 26px rgba(255,77,196,.20), inset 0 0 24px rgba(0,0,0,.32);
}
#contact .cta-copy {
  position: relative;
  z-index: 1;
}
#contact .cta-left h3 {
  font-size: clamp(34px, 3vw, 52px) !important;
  line-height: .95 !important;
  max-width: 560px;
  margin-bottom: 20px !important;
  text-shadow: 0 4px 0 rgba(0,0,0,.52), 0 0 16px rgba(255,255,255,.20);
}
#contact .cta-left h3::after {
  content: '';
  display: block;
  width: 56px;
  height: 2px;
  margin-top: 18px;
  background: #ff4dc4;
  box-shadow: 0 0 14px rgba(255,77,196,.8);
}
#contact .cta-left p {
  font-size: 20px !important;
  line-height: 1.45 !important;
  max-width: 520px;
}
#contact .xbox-word { color: #22d160; }
#contact .ps-word { color: #31a3ff; }
#contact .cta-actions-left {
  margin-top: 22px;
  display: flex;
  gap: 14px;
}
#contact .cta-actions-left .btn {
  min-width: 155px;
  box-shadow: 0 0 22px rgba(255,255,255,.08);
}
#contact .vice-sign {
  position: absolute;
  right: 20px;
  bottom: 18px;
  width: 92px;
  height: auto;
  filter: drop-shadow(0 0 18px rgba(255,77,196,.58));
}
#contact .cta-right {
  justify-content: center !important;
}
#contact .kaspi {
  margin-top: 0 !important;
  border-radius: 8px !important;
  border-color: rgba(255,77,196,.62) !important;
  box-shadow: 0 0 24px rgba(255,77,196,.28), inset 0 0 22px rgba(255,77,196,.08);
}
#contact .foot-icons {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
#contact .foot-icon {
  min-height: 138px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 8px !important;
}
@media (max-width: 980px) {
  #contact .cta { grid-template-columns: 1fr !important; }
}
@media (max-width: 640px) {
  #contact .cta-left-vice {
    grid-template-columns: 1fr !important;
    min-height: auto;
  }
  #contact .cta-car {
    width: 100% !important;
    height: 210px !important;
  }
  #contact .cta-actions-left {
    flex-direction: column;
  }
  #contact .vice-sign {
    position: static;
    width: 86px;
    margin-top: 14px;
  }
  #contact .foot-icons { grid-template-columns: 1fr !important; }
}



/* === transparent Vice City corner logo === */
#contact .vice-sign {
  right: 18px !important;
  bottom: 16px !important;
  width: 118px !important;
  max-width: 22% !important;
  background: transparent !important;
  mix-blend-mode: screen;
  opacity: .96;
}
@media (max-width: 640px) {
  #contact .vice-sign {
    position: absolute !important;
    right: 14px !important;
    bottom: 14px !important;
    width: 92px !important;
    max-width: 34% !important;
  }
}



/* === move Vice City logo to left bottom === */
#contact .vice-sign {
  left: 28px !important;
  right: auto !important;
  bottom: 16px !important;
  width: 112px !important;
  max-width: 22% !important;
  z-index: 0 !important;
  opacity: .9 !important;
  pointer-events: none !important;
}
#contact .cta-car,
#contact .cta-copy {
  position: relative;
  z-index: 1;
}
@media (max-width: 640px) {
  #contact .vice-sign {
    left: 18px !important;
    right: auto !important;
    bottom: 12px !important;
    width: 86px !important;
    max-width: 32% !important;
  }
}



/* === GTA-style CTA headline === */
#contact .cta-left h3 {
  font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', 'Arial Black', sans-serif !important;
  font-size: clamp(42px, 4.2vw, 66px) !important;
  line-height: .92 !important;
  letter-spacing: .01em !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  margin-bottom: 20px !important;
  text-shadow: 0 5px 0 rgba(0,0,0,.62), 0 0 18px rgba(255,255,255,.18) !important;
}
#contact .cta-left h3 span {
  display: block;
}
#contact .cta-title-white {
  color: #fff;
  -webkit-text-stroke: 1px rgba(255,255,255,.10);
}
#contact .cta-title-pink {
  margin-top: 2px;
  background: linear-gradient(180deg, #ff9ee8 0%, #ff5dcc 48%, #b236ad 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 4px 0 rgba(0,0,0,.60)) drop-shadow(0 0 14px rgba(255,77,196,.36));
}
#contact .cta-left h3::after {
  margin-top: 18px !important;
}
@media (max-width: 640px) {
  #contact .cta-left h3 {
    font-size: 40px !important;
  }
}



/* === CTA headline pink same style as white === */
#contact .cta-title-pink {
  color: #ff63cf !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-stroke: 1px rgba(255,210,244,.14) !important;
  filter: none !important;
  text-shadow: 0 5px 0 rgba(0,0,0,.62), 0 0 18px rgba(255,77,196,.36) !important;
}



/* === smaller contact CTA title === */
#contact .cta-left h3 {
  font-size: clamp(21px, 2.1vw, 33px) !important;
  line-height: .96 !important;
  margin-bottom: 14px !important;
}
#contact .cta-left h3::after {
  width: 46px !important;
  margin-top: 12px !important;
}
@media (max-width: 640px) {
  #contact .cta-left h3 {
    font-size: 28px !important;
  }
}



/* === requested 120px CTA headline === */
#contact .cta-left h3 {
  font-size: 120px !important;
  line-height: .88 !important;
}
#contact .cta-title-pink {
  color: #6B2362 !important;
  text-shadow: 0 5px 0 rgba(0,0,0,.62), 0 0 18px rgba(107,35,98,.42) !important;
}
@media (max-width: 980px) {
  #contact .cta-left h3 {
    font-size: 72px !important;
  }
}
@media (max-width: 640px) {
  #contact .cta-left h3 {
    font-size: 42px !important;
  }
}



/* === social icons in CTA buttons === */
#contact .cta-actions-left .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}
#contact .cta-actions-left .btn-icon {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  font-size: 16px;
  line-height: 1;
  font-weight: 900;
  color: #fff;
  text-shadow: 0 0 8px rgba(255,255,255,.38);
}
#contact .btn-whatsapp .btn-icon {
  border: 2px solid rgba(255,255,255,.92);
  font-size: 14px;
}
#contact .btn-telegram .btn-icon {
  font-size: 19px;
  transform: translateY(-1px);
}




/* === halve contact CTA headline size === */
#contact .cta-left h3 {
  font-size: 60px !important;
  line-height: .9 !important;
}
@media (max-width: 980px) {
  #contact .cta-left h3 {
    font-size: 42px !important;
  }
}
@media (max-width: 640px) {
  #contact .cta-left h3 {
    font-size: 32px !important;
  }
}



/* === image social buttons in contact CTA === */
#contact .cta-actions-left {
  align-items: center;
  gap: 12px !important;
}
#contact .social-image-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 158px;
  height: 50px;
  text-decoration: none;
  transition: transform .18s ease, filter .18s ease;
}
#contact .social-image-link:hover {
  transform: translateY(-1px);
  filter: brightness(1.08);
}
#contact .social-image-link img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media (max-width: 640px) {
  #contact .social-image-link {
    width: 100%;
    max-width: 230px;
    height: 58px;
  }
}



/* === requested preorder word color === */
#contact .cta-title-pink {
  color: #C30083 !important;
  text-shadow: 0 5px 0 rgba(0,0,0,.62), 0 0 18px rgba(195,0,131,.42) !important;
}



/* === preorder word white again === */
#contact .cta-title-pink {
  color: #fff !important;
  text-shadow: 0 5px 0 rgba(0,0,0,.62), 0 0 18px rgba(255,255,255,.18) !important;
}



/* === contact feedback form === */
#contact .cta-form-card {
  justify-content: center !important;
  padding: 24px !important;
}
#contact .lead-form {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 13px;
}
#contact .lead-form-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 13px 14px;
  border: 1px solid rgba(255,77,196,.52);
  border-radius: 8px;
  background: rgba(255,77,196,.08);
  box-shadow: 0 0 22px rgba(255,77,196,.18), inset 0 0 18px rgba(255,77,196,.06);
}
#contact .lead-dot {
  width: 14px;
  height: 14px;
  margin-top: 4px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff4dc4, #31a3ff);
  box-shadow: 0 0 14px rgba(255,77,196,.7);
  flex: 0 0 auto;
}
#contact .lead-form h3 {
  margin: 0;
  color: #fff;
  font-size: 20px;
  line-height: 1.1;
  text-transform: uppercase;
}
#contact .lead-form p {
  margin: 5px 0 0;
  color: rgba(242,240,251,.78);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 650;
}
#contact .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
#contact .lead-form label {
  display: grid;
  gap: 7px;
  color: #fff;
  font-weight: 850;
  font-size: 12px;
  text-transform: uppercase;
}
#contact .lead-form input,
#contact .lead-form select,
#contact .lead-form textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(255,77,196,.34);
  border-radius: 8px;
  background: rgba(5,7,22,.72);
  color: #fff;
  min-height: 42px;
  padding: 0 12px;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  outline: none;
  box-shadow: inset 0 0 18px rgba(255,77,196,.04);
}
#contact .lead-form textarea {
  padding-top: 10px;
  resize: vertical;
}
#contact .lead-form input::placeholder,
#contact .lead-form textarea::placeholder {
  color: rgba(242,240,251,.48);
}
#contact .lead-form input:focus,
#contact .lead-form select:focus,
#contact .lead-form textarea:focus {
  border-color: rgba(255,77,196,.82);
  box-shadow: 0 0 18px rgba(255,77,196,.18), inset 0 0 18px rgba(255,77,196,.06);
}
#contact .lead-submit {
  width: 100%;
  margin-top: 2px;
}
@media (max-width: 640px) {
  #contact .form-grid {
    grid-template-columns: 1fr;
  }
}



/* === client reviews section === */
#reviews .section-head {
  margin-bottom: 18px;
}
#reviews .reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
#reviews .review-card {
  position: relative;
  overflow: hidden;
  min-height: 210px;
  padding: 22px;
  border: 1px solid rgba(255,77,196,.32);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(16,18,45,.88), rgba(7,9,24,.94)),
    radial-gradient(circle at 86% 10%, rgba(255,77,196,.20), transparent 230px);
  box-shadow: 0 20px 48px rgba(0,0,0,.34), inset 0 0 30px rgba(255,77,196,.05);
}
#reviews .review-card::after {
  content: '';
  position: absolute;
  right: -50px;
  bottom: -70px;
  width: 190px;
  height: 190px;
  border-radius: 999px;
  background: rgba(255,77,196,.18);
  filter: blur(24px);
  pointer-events: none;
}
#reviews .review-top {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
#reviews .review-avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: linear-gradient(135deg, #ff4dc4, #8b5cf6);
  color: #fff;
  font-weight: 1000;
  box-shadow: 0 0 18px rgba(255,77,196,.34);
}
#reviews .review-top h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.1;
}
#reviews .review-top p {
  margin: 4px 0 0;
  color: rgba(242,240,251,.64);
  font-size: 13px;
  font-weight: 750;
}
#reviews .review-card > p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: rgba(242,240,251,.82);
  line-height: 1.55;
  font-size: 14px;
  font-weight: 650;
}
#reviews .review-stars {
  position: relative;
  z-index: 1;
  margin-top: 16px;
  color: #ff77d6;
  letter-spacing: .08em;
  text-shadow: 0 0 14px rgba(255,77,196,.48);
}
@media (max-width: 980px) {
  #reviews .reviews-grid {
    grid-template-columns: 1fr;
  }
}

/* === PlayBox hero carousel === */
.hero-carousel {
  position: relative;
  padding: 0 !important;
  min-height: 0 !important;
  background: #020616 !important;
  isolation: isolate;
}
.hero-track { display: grid; }
.hero-slide {
  grid-area: 1 / 1;
  min-width: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .55s ease, visibility .55s ease;
}
.hero-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
}
.hero-slide-gta {
  background:
    linear-gradient(90deg,rgba(2,4,15,.99) 0%,rgba(2,4,15,.88) 36%,rgba(7,5,20,.52) 67%,rgba(2,4,15,.74) 100%),
    radial-gradient(circle at 74% 18%,rgba(255,77,196,.28),transparent 300px),
    radial-gradient(circle at 88% 80%,rgba(49,163,255,.18),transparent 280px),
    url('https://images.unsplash.com/photo-1519501025264-65ba15a82390?auto=format&fit=crop&w=1600&q=80') center/cover;
}
.hero-slide-psplus {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg,rgba(1,5,24,.98) 0%,rgba(2,13,50,.9) 43%,rgba(3,23,75,.38) 75%,rgba(2,8,30,.56) 100%),
    url('/assets/psplus-12m-hero.png') center/cover no-repeat;
}
.hero-slide-psplus::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 75% 50%,rgba(37,124,255,.12),transparent 34%);
}
.hero-slide-psplus .hero-grid { position: relative; z-index: 1; }
.psplus-copy { max-width: 650px; }
.psplus-mark {
  margin: 18px 0 0;
  font-size: clamp(56px,8vw,112px);
  line-height: .86;
  letter-spacing: -.07em;
  font-weight: 1000;
  text-transform: uppercase;
  text-shadow: 0 8px 0 rgba(0,0,0,.4), 0 0 30px rgba(61,153,255,.28);
}
.psplus-mark span {
  display: block;
  color: #58a9ff;
  font-size: .44em;
  line-height: 1;
  letter-spacing: .09em;
  margin-bottom: 10px;
}
.psplus-duration {
  margin-top: 20px;
  font-size: clamp(24px,3.5vw,44px);
  font-weight: 950;
  letter-spacing: -.035em;
  text-transform: uppercase;
}
.psplus-price {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-top: 8px;
  color: #fff;
  font-weight: 1000;
}
.psplus-price small { font-size: 18px; color: #9fceff; text-transform: uppercase; letter-spacing: .08em; }
.psplus-price strong { font-size: clamp(42px,6vw,76px); line-height: 1; letter-spacing: -.055em; }
.psplus-price strong span { color: #69b2ff; }
.psplus-text { max-width: 540px; }
.psplus-visual {
  min-height: 520px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 42px 38px 72px;
}
.psplus-chip {
  padding: 16px 20px;
  border: 1px solid rgba(130,194,255,.46);
  background: rgba(3,14,52,.72);
  backdrop-filter: blur(12px);
  box-shadow: 0 0 34px rgba(41,133,255,.25);
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .08em;
}
.carousel-control {
  position: absolute;
  top: 50%;
  z-index: 10;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(2,6,22,.7);
  color: #fff;
  font-size: 26px;
  cursor: pointer;
  backdrop-filter: blur(12px);
  transform: translateY(-50%);
  transition: background .2s ease, transform .2s ease;
}
.carousel-control:hover { background: rgba(32,104,230,.8); transform: translateY(-50%) scale(1.06); }
.carousel-control.prev { left: 16px; }
.carousel-control.next { right: 16px; }
.carousel-dots {
  position: absolute;
  z-index: 11;
  left: 50%;
  bottom: 18px;
  display: flex;
  gap: 10px;
  transform: translateX(-50%);
}
.carousel-dot {
  width: 11px;
  height: 11px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 50%;
  background: rgba(255,255,255,.24);
  cursor: pointer;
  transition: width .2s ease, border-radius .2s ease, background .2s ease;
}
.carousel-dot.is-active { width: 34px; border-radius: 999px; background: #fff; }
@media (max-width: 980px) {
  .psplus-visual { min-height: 300px; padding: 20px 64px 64px; }
}
@media (max-width: 640px) {
  .hero-slide { min-height: 650px; }
  .hero-slide .hero-grid { padding-bottom: 76px; }
  .hero-slide-psplus { background-position: 64% center; }
  .hero-slide-psplus .hero-grid { min-height: 650px; display: flex; flex-direction: column; justify-content: center; }
  .hero-slide-psplus .hero-left { padding-right: 20px; }
  .psplus-mark { font-size: 62px; }
  .psplus-duration { font-size: 27px; }
  .psplus-price { display: block; }
  .psplus-price small { display: block; margin-bottom: 5px; }
  .psplus-price strong { font-size: 48px; }
  .psplus-visual { display: none; }
  .carousel-control { width: 42px; height: 42px; top: auto; bottom: 17px; transform: none; }
  .carousel-control:hover { transform: scale(1.05); }
  .carousel-control.prev { left: 16px; }
  .carousel-control.next { right: 16px; }
  .carousel-dots { bottom: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-slide { transition: none; }
}
/* === PS Plus product choices === */
.psplus-product-block {
  position: relative;
  overflow: hidden;
  margin: 0 0 28px;
  padding: 26px;
  border: 1px solid rgba(39,145,255,.38);
  border-radius: 8px;
  background:
    radial-gradient(circle at 18% 0%, rgba(15,105,255,.22), transparent 35%),
    radial-gradient(circle at 88% 100%, rgba(151,52,255,.18), transparent 35%),
    linear-gradient(160deg, rgba(4,9,34,.98), rgba(3,10,37,.96));
  box-shadow: 0 20px 52px rgba(0,0,0,.34), inset 0 0 36px rgba(17,91,255,.06);
}
.psplus-product-head {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  text-align: center;
  text-transform: uppercase;
}
.psplus-product-head span {
  color: #389cff;
  font-size: 15px;
  font-weight: 950;
  letter-spacing: .12em;
}
.psplus-product-head h3 {
  margin: 0;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -.04em;
}
.psplus-product-head p {
  margin: 0;
  color: #b9c8ef;
  font-size: 14px;
  font-weight: 800;
}
.psplus-product-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.psplus-choice {
  position: relative;
  overflow: hidden;
  padding: 22px;
  border: 1px solid #159dff;
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(6,18,65,.94), rgba(3,8,31,.98));
  box-shadow: 0 0 28px rgba(0,137,255,.15), inset 0 0 30px rgba(0,116,255,.06);
}
.psplus-choice.extra {
  border-color: #b342ff;
  box-shadow: 0 0 28px rgba(169,50,255,.14), inset 0 0 30px rgba(139,45,255,.06);
}
.psplus-choice-top {
  display: flex;
  align-items: center;
  gap: 13px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(255,255,255,.13);
}
.psplus-choice-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: linear-gradient(135deg,#ffd700,#ff9d00);
  color: #4f3300;
  font-size: 31px;
  font-weight: 1000;
  box-shadow: 0 0 20px rgba(255,190,0,.28);
}
.psplus-choice h4 {
  margin: 0;
  font-size: 28px;
  text-transform: uppercase;
  letter-spacing: -.02em;
}
.psplus-choice-period {
  margin-left: auto;
  color: #b9c8ef;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.psplus-choice-prices { display: grid; gap: 10px; margin: 16px 0 18px; }
.psplus-choice-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 13px 15px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 7px;
  background: rgba(255,255,255,.045);
}
.psplus-choice-price span { color: #d7dff5; font-size: 14px; font-weight: 750; }
.psplus-choice-price strong { white-space: nowrap; font-size: 22px; }
.psplus-choice-btn {
  width: 100%;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(92,187,255,.82);
  border-radius: 7px;
  background: linear-gradient(135deg,#0868e9,#12b2ff);
  color: #fff;
  font-weight: 950;
  text-transform: uppercase;
  box-shadow: 0 0 24px rgba(15,141,255,.28);
  transition: transform .18s ease, filter .18s ease;
}
.extra .psplus-choice-btn {
  border-color: rgba(211,113,255,.86);
  background: linear-gradient(135deg,#6330d9,#bd32ff);
  box-shadow: 0 0 24px rgba(168,48,255,.25);
}
.psplus-choice-btn:hover { transform: translateY(-2px); filter: brightness(1.1); }
@media (max-width: 760px) {
  .psplus-product-block { padding: 18px; }
  .psplus-product-head { flex-direction: column; align-items: center; gap: 6px; }
  .psplus-product-grid { grid-template-columns: 1fr; }
  .psplus-choice-top { flex-wrap: wrap; }
  .psplus-choice-period { width: 100%; margin-left: 57px; }
}
/* === PS Plus retail-card redesign === */
.psplus-product-block {
  padding: 30px 24px 34px;
  background: radial-gradient(circle at 50% 35%,rgba(29,94,255,.16),transparent 48%), #020617;
}
.psplus-product-grid {
  width: min(980px, 100%);
  margin: 0 auto;
  gap: 28px;
}
.psplus-choice {
  min-height: 620px;
  padding: 175px 54px 55px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border: 0 !important;
  background-color: transparent !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
  box-shadow: none !important;
}
.psplus-choice.deluxe { background-image: url('/assets/psplus-deluxe-card-bg.png') !important; }
.psplus-choice.extra { background-image: url('/assets/psplus-extra-card-bg.png') !important; }
.psplus-choice-top {
  padding: 0 4px 14px;
  border-bottom-color: rgba(255,255,255,.24);
}
.psplus-choice-mark {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg,#ffdb00,#ff9f00);
}
.psplus-choice h4 { font-size: 32px; }
.psplus-choice-period {
  position: absolute;
  top: 58px;
  right: 52px;
  width: 92px;
  color: #0741a3;
  font-size: 17px;
  line-height: 1.05;
  text-align: center;
}
.psplus-card-brand {
  margin: 18px 0 12px;
  text-align: center;
  color: #fff;
  font-size: 26px;
  font-weight: 950;
  letter-spacing: -.03em;
  text-shadow: 0 0 16px rgba(80,160,255,.38);
}
.psplus-card-brand span { color: #ffca00; margin-right: 7px; }
.psplus-choice-prices { margin-top: 8px; }
.psplus-choice-price { background: rgba(2,9,39,.72); }
.psplus-choice-btn { margin-top: auto; }
@media (max-width: 760px) {
  .psplus-product-grid { width: min(440px, 100%); }
  .psplus-choice { min-height: 590px; padding: 165px 44px 48px; }
  .psplus-choice-period { top: 52px; right: 44px; width: 82px; margin: 0; }
}
@media (max-width: 420px) {
  .psplus-choice { min-height: 525px; padding: 146px 33px 40px; }
  .psplus-choice-period { top: 45px; right: 34px; font-size: 14px; }
  .psplus-choice h4 { font-size: 27px; }
  .psplus-choice-price { padding: 10px 11px; }
  .psplus-choice-price span { font-size: 12px; }
  .psplus-choice-price strong { font-size: 18px; }
  .psplus-card-brand { font-size: 22px; }
}
/* === user-supplied clickable PS Plus cards === */
.psplus-product-grid.psplus-user-card-grid {
  width: min(980px, 100%);
  align-items: stretch;
  gap: 28px;
}
.psplus-user-card-link {
  display: block;
  width: 100%;
  aspect-ratio: 724 / 1086;
  overflow: hidden;
  border-radius: 28px;
  line-height: 0;
  transition: transform .2s ease, filter .2s ease;
}
.psplus-user-card-link img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  clip-path: inset(2.6% 2.2% 3% 2.2% round 24px);
}
.psplus-user-card-link.deluxe {
  filter: drop-shadow(0 0 18px rgba(0,145,255,.26));
}
.psplus-user-card-link.extra {
  filter: drop-shadow(0 0 18px rgba(176,54,255,.25));
}
.psplus-user-card-link:hover,
.psplus-user-card-link:focus-visible {
  transform: translateY(-6px);
  filter: brightness(1.06) drop-shadow(0 12px 26px rgba(23,120,255,.34));
  outline: none;
}
@media (max-width: 760px) {
  .psplus-product-grid.psplus-user-card-grid {
    width: min(440px, 100%);
    grid-template-columns: 1fr;
    gap: 22px;
  }
}
/* === supplied PS Plus banner and button === */
.hero-slide-psplus {
  background: #020618 !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-slide-psplus::after { display: none !important; }
.psplus-art-wrap {
  position: relative;
  width: 100%;
  background: #020618;
}
.psplus-art {
  display: block;
  width: 100%;
  height: auto;
}
.psplus-buy-image {
  position: absolute;
  left: 4.8%;
  bottom: 7.2%;
  width: 25.5%;
  z-index: 3;
  display: block;
  border-radius: 14px;
  transition: transform .2s ease, filter .2s ease;
}
.psplus-buy-image:hover,
.psplus-buy-image:focus-visible {
  transform: translateY(-3px) scale(1.02);
  filter: brightness(1.1) drop-shadow(0 0 14px rgba(24,143,255,.62));
}
.psplus-buy-image img {
  display: block;
  width: 100%;
  height: auto;
}
.psplus-mobile-banner { display: none; }
@media (min-width: 641px) {
  .psplus-art-wrap {
    width: min(100%, 1180px);
    height: 560px;
    margin: 0 auto;
    overflow: hidden;
  }
  .psplus-art {
    width: 100%;
    max-width: none;
    transform: translateY(-55px);
  }
}
@media (max-width: 640px) {
  .hero-slide-psplus { display: block; }
  .psplus-art-wrap { display: none; }
  .psplus-mobile-banner {
    min-height: 650px;
    padding: 44px 24px 86px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background:
      radial-gradient(circle at 86% 18%, rgba(31,120,255,.45), transparent 32%),
      radial-gradient(circle at 72% 88%, rgba(115,54,255,.32), transparent 34%),
      linear-gradient(160deg, #02051a 0%, #031241 58%, #08144d 100%);
  }
  .psplus-mobile-kicker {
    color: #429cff;
    font-size: 18px;
    font-weight: 1000;
    letter-spacing: .14em;
  }
  .psplus-mobile-banner h2 {
    margin: 7px 0 0;
    font-size: 58px;
    line-height: .9;
    letter-spacing: -.065em;
    text-transform: uppercase;
  }
  .psplus-mobile-period {
    margin-top: 20px;
    font-size: 21px;
    font-weight: 950;
    text-transform: uppercase;
  }
  .psplus-mobile-price {
    margin-top: 18px;
    color: #54a8ff;
    font-weight: 950;
    text-transform: uppercase;
  }
  .psplus-mobile-price strong {
    display: block;
    color: #fff;
    font-size: 48px;
    line-height: 1;
    letter-spacing: -.05em;
    margin-top: 4px;
  }
  .psplus-mobile-tiers {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 24px;
  }
  .psplus-mobile-tier {
    padding: 14px 12px;
    border: 1px solid #1ba1ff;
    background: rgba(3,12,48,.75);
    box-shadow: 0 0 20px rgba(0,125,255,.14);
  }
  .psplus-mobile-tier.extra { border-color: #b13cff; }
  .psplus-mobile-tier b { display: block; font-size: 18px; text-transform: uppercase; }
  .psplus-mobile-tier span { display: block; margin-top: 8px; color: #cbd9ff; font-size: 12px; line-height: 1.45; }
  .psplus-mobile-tier strong { display: block; margin-top: 3px; color: #fff; font-size: 20px; }
  .psplus-mobile-buy {
    position: static;
    width: 100%;
    margin-top: 20px;
    display: block;
  }
  .psplus-mobile-buy img { display: block; width: 100%; height: auto; }
}


.nav-wrap .nav{height:auto;min-height:80px;display:flex;flex-wrap:wrap;gap:16px;padding-top:12px;padding-bottom:12px}.nav-wrap .nav-links{display:flex;gap:24px;flex:1;align-items:center}.nav-links a[aria-current=page]{color:var(--pink);opacity:1}.nav-links a{white-space:nowrap}.page-intro{padding:48px 0 24px}.page-intro h1{font-size:clamp(32px,5vw,58px);line-height:1.12;margin:12px 0 16px;letter-spacing:-.035em}.page-intro p{font-size:18px;line-height:1.6;color:var(--muted);max-width:720px}.eyebrow{color:var(--pink);font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.catalog-card{display:flex;flex-direction:column;background:linear-gradient(145deg,#14152f,#080c1b);border:1px solid var(--line);border-radius:14px;padding:28px;min-width:0}.catalog-card h2{font-size:30px;margin:16px 0 10px}.catalog-card p{font-size:16px;line-height:1.6;color:var(--muted);margin-bottom:24px}.catalog-card .btn{margin-top:auto;align-self:flex-start}.catalog-card img{height:110px;max-width:100%;object-fit:contain;align-self:flex-start}.catalog-card .catalog-mark{font-size:20px;font-weight:900;min-height:110px;display:flex;align-items:center;color:var(--green)}.gp-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.gp-card{padding:36px;border:1px solid rgba(34,209,96,.5);border-radius:14px;background:radial-gradient(circle at 100% 0,rgba(34,209,96,.15),transparent 70%),#080f13}.gp-card h2{font-size:28px;margin:12px 0}.gp-card .gp-price{font-size:clamp(34px,5vw,48px);font-weight:900;margin:20px 0}.gp-card p{color:var(--muted);font-size:16px;line-height:1.6}.table-wrap{overflow-x:auto}.price-table{width:100%;border-collapse:collapse;font-size:16px;margin:24px 0}.price-table th,.price-table td{text-align:left;padding:18px;border-bottom:1px solid var(--line)}.price-table th{color:var(--muted);font-weight:600}.buy-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.buy-step{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:26px}.buy-step b{color:var(--pink);font-size:14px}.buy-step h2{font-size:22px;margin:12px 0}.buy-step p{font-size:16px;line-height:1.6;color:var(--muted)}.page-note{font-size:16px;line-height:1.6;color:var(--muted);margin:24px 0}.footer-nav{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}footer{margin-top:36px}.faq-btn{font-size:16px}.faq-answer{font-size:16px;line-height:1.6}.psplus-mobile-tier span{font-size:14px}.skip-link{position:absolute;left:12px;top:-100px;background:#fff;color:#000;padding:12px;z-index:100}.skip-link:focus{top:12px}
@media(max-width:950px){.nav-wrap .nav-links{order:3;flex-basis:100%;justify-content:flex-start;gap:20px;overflow-x:auto;padding-bottom:6px}.nav-wrap .nav>.btn{margin-left:auto}.catalog-grid{grid-template-columns:1fr}.catalog-card{min-height:260px}.buy-steps{grid-template-columns:1fr}}
@media(max-width:640px){.nav-wrap .nav{gap:10px}.nav-wrap .nav>.btn{font-size:12px;min-height:42px;padding:10px}.nav-wrap .nav-links{font-size:14px;gap:18px}.gp-grid{grid-template-columns:1fr}.gp-card{padding:24px}.page-intro{padding-top:28px}.price-table th,.price-table td{padding:12px;font-size:14px}.catalog-card img{height:90px}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Keep purchase steps within the same content bounds as the header. */
.how-to-buy > .section > .container {
  width: min(1180px, calc(100% - 48px));
  max-width: 1180px;
  margin-inline: auto;
}
.how-to-buy .buy-steps {
  width: 100%;
  max-width: 100%;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.how-to-buy .buy-step { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 950px) {
  .how-to-buy .buy-steps { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .how-to-buy > .section > .container { width: calc(100% - 32px); }
}

/* Product logos replace duplicate text headings on the homepage. */
.catalog-card .catalog-logo { height: 140px; width: 100%; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }
.catalog-card .catalog-logo img { display:block; height:auto; max-height:130px; width:auto; max-width:100%; object-fit:contain; }
.catalog-card .catalog-logo-psplus img { background:transparent; padding:0; border-radius:0; width:100%; filter:none; }
.catalog-card .catalog-logo-gamepass img { width:100%; max-height:140px; }
@media(max-width:640px){.catalog-card .catalog-logo {height:130px;}.catalog-card .catalog-logo img {max-height:120px;}}

.catalog-card .catalog-logo-gamepass img { filter: contrast(4); mix-blend-mode: screen; }

/* Preserve the original gold emblem; brighten only the wordmark. */
.catalog-logo-psplus .psplus-logo-layers { display:block; position:relative; width:100%; }
.catalog-card .catalog-logo-psplus .psplus-original { filter:none; clip-path:inset(0 75% 0 0); }
.catalog-card .catalog-logo-psplus .psplus-white-wordmark { position:absolute; top:0; left:0; width:100%; height:100%; max-height:none; filter:invert(1); clip-path:inset(0 0 0 25%); }

/* Compact PS.Plus wordmark with the original gold emblem. */
.psplus-short-logo { display:flex; align-items:center; justify-content:center; gap:14px; max-width:100%; }
.psplus-gold-symbol { display:block; flex:0 0 74px; width:74px; height:74px; background:url('/assets/ps-plus-logo.png') left center / 334px 74px no-repeat; }
.psplus-short-wordmark { color:#fff; font-size:clamp(32px,3.1vw,42px); font-weight:800; line-height:1.1; letter-spacing:-.04em; white-space:nowrap; }
@media(max-width:380px){.psplus-short-logo{gap:10px}.psplus-short-wordmark{font-size:32px}}

/* Logo-only homepage cards with centered platform-colored actions. */
.catalog-grid .catalog-card { align-items:center; justify-content:space-between; gap:24px; padding:30px 26px; min-height:260px; }
.catalog-grid .catalog-card .catalog-logo { margin:0; }
.catalog-grid .catalog-card .catalog-buy { align-self:center; margin-top:auto; box-sizing:border-box; display:flex; align-items:center; justify-content:center; width:240px; max-width:100%; height:54px; min-height:54px; padding:10px 14px; text-align:center; font-size:15px; line-height:1.3; text-transform:none; font-weight:800; border-radius:9px; transition:transform .18s ease,box-shadow .18s ease,filter .18s ease; }
.catalog-grid .catalog-card .catalog-buy-gta { color:#fff; background:linear-gradient(125deg,#c71ba5,#7531ce); border:1px solid #ff76da; box-shadow:0 4px 20px rgba(228,45,176,.25); }
.catalog-grid .catalog-card .catalog-buy-psplus { color:#17120a; background:linear-gradient(125deg,#ffe567,#f4bf23); border:1px solid #ffeb8e; box-shadow:0 4px 20px rgba(247,196,36,.2); }
.catalog-grid .catalog-card .catalog-buy-gamepass { color:#fff; background:linear-gradient(125deg,#107c10,#086408); border:1px solid #45bb45; box-shadow:0 4px 20px rgba(16,124,16,.25); }
.catalog-grid .catalog-card .catalog-buy:hover { transform:translateY(-2px); filter:brightness(1.1); }
.catalog-grid .catalog-card .catalog-buy:focus-visible { outline:3px solid #fff; outline-offset:4px; }
@media(max-width:640px){.catalog-grid .catalog-card{padding:26px 20px;gap:20px;min-height:240px}}

/* Shared order form at the end of each page. */
.order-section > .container { width:min(1180px,calc(100% - 48px)); max-width:1180px; margin-inline:auto; }
.order-card {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:40px;padding:36px;background:linear-gradient(135deg,#13162e,#090d1c);border:1px solid rgba(255,77,196,.28);border-radius:14px;}
.order-heading h2 {font-size:clamp(28px,3vw,40px);line-height:1.15;margin:12px 0 18px;}
.order-heading p,.contact-order-link p {font-size:16px;line-height:1.6;color:var(--muted);}
.order-form {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0;}
.order-form label {display:flex;flex-direction:column;gap:9px;font-size:16px;color:#fff;min-width:0;}
.order-form input,.order-form select,.order-form textarea {width:100%;min-width:0;border:1px solid #50566f;border-radius:8px;background:#090d1a;color:#fff;font:inherit;font-size:16px;padding:13px 14px;min-height:48px;}
.order-form textarea {resize:vertical;line-height:1.5;}
.order-form input:focus,.order-form select:focus,.order-form textarea:focus {outline:2px solid var(--pink);outline-offset:2px;}
.order-message,.order-submit {grid-column:1 / -1;}
.order-form .order-submit {justify-self:start;text-transform:none;}
.contact-order-link h3 {font-size:28px;margin:0 0 16px;}.contact-order-link .btn{margin-top:16px;}
@media(max-width:800px){.order-card{grid-template-columns:minmax(0,1fr);gap:24px;padding:26px;}}
@media(max-width:640px){.order-section > .container{width:calc(100% - 32px);}.order-form{grid-template-columns:minmax(0,1fr)}.order-card{padding:22px}.order-form .order-submit{width:100%;}}

/* Customer screenshots in consistent, readable cards. */
#reviews .container{width:min(1180px,calc(100% - 48px));max-width:1180px;margin-inline:auto;}
.review-shots-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch;}
.review-shot-card{min-width:0;overflow:hidden;background:#0e1424;border:1px solid rgba(255,255,255,.14);border-radius:14px;display:flex;flex-direction:column;}
.review-shot-open{position:relative;display:block;width:100%;padding:12px;border:0;border-bottom:1px solid rgba(255,255,255,.12);background:#090f17;cursor:zoom-in;color:#fff;}
.review-shot-open img{width:100%;height:300px;object-fit:contain;object-position:center;display:block;}
.review-zoom-hint{display:block;font-size:14px;color:#d7d9e6;text-align:center;margin-top:12px;}
.review-shot-open:hover{background:#151b2a;}.review-shot-open:focus-visible,.review-extra:focus-visible{outline:2px solid #ff77d9;outline-offset:-3px;}
.review-shot-copy{padding:20px;}.review-shot-label{font-size:14px;color:#c6c2db;}.review-shot-copy h3{font-size:17px;line-height:1.5;margin:10px 0 0;}
.review-extra{border:0;background:transparent;color:#ff8bdc;font:inherit;font-size:14px;padding:0;margin-top:16px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;}
.review-viewer{width:min(900px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:16px;border:1px solid #555a70;border-radius:12px;background:#090f17;color:white;overflow:auto;}
.review-viewer::backdrop{background:rgba(0,0,0,.85);}.review-viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:16px;margin-bottom:14px;position:sticky;top:0;background:#090f17;padding:8px 0;}
.review-viewer-close{border:1px solid #777b92;background:#171e30;color:white;border-radius:7px;padding:10px 14px;font:inherit;cursor:pointer;}
.review-viewer-image{display:block;width:auto;max-width:100%;height:auto;margin:auto;}
body.review-viewer-open{overflow:hidden;}
@media(max-width:1000px){.review-shots-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.review-shot-open img{height:360px;}}
@media(max-width:580px){#reviews .container{width:calc(100% - 32px);}.review-shots-grid{grid-template-columns:minmax(0,1fr);}.review-shot-open img{height:380px;}.review-shot-copy{padding:18px;}}

/* PS5 purchase methods and region prices. */
.gta-xbox-only{grid-template-columns:minmax(0,1fr)!important;}
#ps5-options>.container{width:min(1180px,calc(100% - 48px));max-width:1180px;margin-inline:auto;}
.ps5-options-heading{display:flex;align-items:center;gap:24px;margin-bottom:28px;}.ps5-options-heading img{width:120px;max-height:60px;object-fit:contain;}.ps5-options-heading h2{font-size:clamp(28px,3.5vw,40px);line-height:1.2;margin:0;}
.ps5-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.ps5-option{min-width:0;display:flex;flex-direction:column;background:linear-gradient(145deg,#101b31,#080c1c);border:1px solid rgba(49,163,255,.4);border-radius:14px;padding:30px;}
.ps5-option-number{font-size:14px;font-weight:800;color:#6ec0ff;letter-spacing:.12em;}.ps5-option h3{font-size:26px;line-height:1.25;margin:12px 0 18px;}.ps5-option ul{list-style:none;padding:0;margin:0 0 24px;}.ps5-option li{position:relative;padding-left:25px;margin:12px 0;font-size:16px;line-height:1.5;color:#d6dfef;}.ps5-option li::before{content:'✓';position:absolute;left:0;color:#72d7aa;font-weight:800;}
.ps5-editions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:auto;}.ps5-edition-buy{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid #478fd4;border-radius:9px;background:#0b2543;text-align:center;}.ps5-edition-buy>span:first-child{font-size:16px;}.ps5-edition-buy strong{font-size:26px;white-space:nowrap;}.ps5-buy-label{font-size:14px;color:#9cd5ff;}.ps5-edition-buy:hover{background:#113759;}.ps5-account-option{grid-column:1/-1;}.ps5-region-table-wrap{overflow-x:auto;}.ps5-region-table{width:100%;border-collapse:collapse;font-size:16px;}.ps5-region-table caption{text-align:left;font-size:20px;font-weight:700;padding:4px 0 18px;}.ps5-region-table th,.ps5-region-table td{text-align:left;border-bottom:1px solid #334059;padding:16px;}.ps5-region-table thead th{color:#afc3dc;font-weight:600;}.ps5-region-table td a{display:inline-flex;flex-direction:column;gap:6px;border:1px solid #346595;border-radius:8px;padding:12px 20px;background:#0b2543;min-width:150px;}.ps5-region-table td a span{font-size:14px;color:#9cd5ff;}.ps5-region-table td a:hover{background:#113759;}.ps5-region-table a:focus-visible,.ps5-edition-buy:focus-visible{outline:3px solid #fff;outline-offset:3px;}
@media(max-width:700px){#ps5-options>.container{width:calc(100% - 32px)}.ps5-options-grid{grid-template-columns:minmax(0,1fr)}.ps5-option{padding:22px}.ps5-options-heading{flex-direction:column;align-items:flex-start;gap:16px}.ps5-edition-buy strong{font-size:22px}.ps5-region-table th,.ps5-region-table td{padding:10px}.ps5-region-table td a{min-width:120px;padding:10px}.ps5-region-table{font-size:14px}}

/* Center the standalone Xbox offer. */
#products .gta-xbox-only { width:100%; max-width:820px; margin-inline:auto; }
#products:has(.gta-xbox-only) > .container > .section-head { text-align:center; }
#products .gta-xbox-only .platform-top { justify-content:center; }
#products .gta-xbox-only .platform-body { grid-template-columns:minmax(0,220px) minmax(0,1fr); align-items:center; }
#products .gta-xbox-only .platform-content { text-align:center; }
#products .gta-xbox-only .price-list { max-width:400px; margin-inline:auto; }
#products .gta-xbox-only .box-wrap { justify-content:center; }
@media(max-width:640px){#products .gta-xbox-only .platform-body{grid-template-columns:minmax(0,1fr);}.gta-xbox-only .platform-content .btn{margin-inline:auto;}}

/* Standalone Xbox layout overrides the legacy two-card grid. */
#products .platforms.gta-xbox-only {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  width:100% !important;
  max-width:820px !important;
  margin-inline:auto !important;
}
#products .gta-xbox-only .platform-card { padding:28px !important; }
#products .gta-xbox-only .platform-top.platform-logo {
  display:flex !important;
  justify-content:center !important;
  height:auto !important;
  margin:0 0 24px !important;
}
#products .gta-xbox-only .platform-body {
  display:grid !important;
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:32px !important;
  align-items:center !important;
  margin-top:0 !important;
}
#products .gta-xbox-only .box-wrap.clean-box {
  width:220px !important;
  height:260px !important;
  transform:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
#products .gta-xbox-only .platform-content { min-width:0; padding:0 !important; text-align:center; }
#products .gta-xbox-only .platform-content p { font-size:16px; line-height:1.6; margin:0 0 20px !important; }
#products .gta-xbox-only .price-list { width:100%; max-width:400px; margin:0 auto 20px; }
#products .gta-xbox-only .price-item { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:16px 18px; }
#products .gta-xbox-only .price-item span { font-size:16px; }
#products .gta-xbox-only .price-item strong { white-space:nowrap; font-size:24px; line-height:1.3; }
#products .gta-xbox-only .platform-content .btn { white-space:nowrap; }
@media(max-width:700px){
  #products .gta-xbox-only .platform-card { padding:24px 20px !important; }
  #products .gta-xbox-only .platform-body { grid-template-columns:minmax(0,1fr) !important; gap:20px !important; }
  #products .gta-xbox-only .box-wrap.clean-box { width:100% !important; height:230px !important; }
  #products .gta-xbox-only .platform-top.platform-logo { margin-bottom:16px !important; }
  #products .gta-xbox-only .price-item strong { font-size:22px; }
}

/* Larger Xbox game box within the centered offer. */
#products .gta-xbox-only .platform-body { grid-template-columns:280px minmax(0,1fr) !important; }
#products .gta-xbox-only .box-wrap.clean-box { width:280px !important; height:350px !important; }
#products .gta-xbox-only .box-wrap.clean-box img { width:auto !important; height:330px !important; max-width:260px !important; object-fit:contain; }
@media(max-width:700px){
  #products .gta-xbox-only .platform-body { grid-template-columns:minmax(0,1fr) !important; }
  #products .gta-xbox-only .box-wrap.clean-box { width:100% !important; height:320px !important; }
  #products .gta-xbox-only .box-wrap.clean-box img { height:300px !important; max-width:min(240px,100%) !important; }
}

/* PS5 shared-account offers with matching game-box artwork. */
.ps5-option-box {display:flex;align-items:center;justify-content:center;height:270px;margin:0 0 22px;width:100%;}
.ps5-option-box img {display:block;width:auto;height:260px;max-width:100%;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(0,0,0,.35));}
@media(max-width:640px){.ps5-option-box{height:240px;margin-bottom:18px;}.ps5-option-box img{height:230px;}}

.ps5-option-logo{display:flex;justify-content:center;align-items:center;width:100%;margin:0 0 24px;}
.ps5-option-logo img{display:block;width:120px;height:auto;max-height:60px;object-fit:contain;}

/* Centered section title and side-by-side PS5 offer artwork. */
#ps5-options .ps5-options-heading{display:block;text-align:center;}
#ps5-options .ps5-options-heading h2{width:100%;text-align:center;}
.ps5-option-overview{display:grid;grid-template-columns:minmax(0,1fr) 135px;gap:18px;align-items:stretch;margin-bottom:24px;}
.ps5-option-copy{min-width:0;}
.ps5-option-copy h3{margin-top:0;}
.ps5-option-copy ul{margin-bottom:0;}
.ps5-option-overview .ps5-option-box{position:relative;min-height:180px;height:auto;margin:0;width:100%;}
.ps5-option-overview .ps5-option-box img{position:absolute;inset:0;margin:auto;width:100%;height:100%;max-height:250px;object-fit:contain;}
@media(max-width:1000px) and (min-width:701px){.ps5-option-overview{grid-template-columns:minmax(0,1fr) 105px;gap:12px;}.ps5-option-copy h3{font-size:23px;}}
@media(max-width:420px){.ps5-option-overview{grid-template-columns:minmax(0,1fr) 95px;gap:12px;}.ps5-option-copy h3{font-size:22px;}.ps5-option-copy li{font-size:14px;}}

.ps5-account-heading{grid-column:1/-1;text-align:center;font-size:clamp(28px,3.5vw,40px);line-height:1.2;margin:28px 0 4px;}

/* Compact, balanced personal-account pricing panel. */
#ps5-options .ps5-account-option{width:100%;max-width:none;justify-self:stretch;box-sizing:border-box;padding:30px;}
.ps5-account-summary{display:grid;grid-template-columns:150px minmax(0,1fr);gap:28px;align-items:center;padding-bottom:26px;margin-bottom:24px;border-bottom:1px solid #334059;}
.ps5-account-summary .ps5-option-logo{margin:0;}
.ps5-account-summary ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0;}
.ps5-account-summary li{margin:0;font-size:15px;line-height:1.5;}
.ps5-account-option .ps5-region-table{table-layout:fixed;margin:0;}
.ps5-account-option .ps5-region-table caption{font-size:20px;padding:0 0 18px;}
.ps5-account-option .ps5-region-table th,.ps5-account-option .ps5-region-table td{padding:14px 12px;vertical-align:middle;}
.ps5-account-option .ps5-region-table thead th:not(:first-child),.ps5-account-option .ps5-region-table td{text-align:center;}
.ps5-account-option .ps5-region-table td a{box-sizing:border-box;width:100%;max-width:205px;min-width:0;height:76px;align-items:center;justify-content:center;text-align:center;padding:10px 12px;}
.ps5-account-option .ps5-region-table td strong{font-size:20px;white-space:nowrap;}
.ps5-account-option .ps5-region-table tbody tr:last-child>*{border-bottom:0;}
@media(max-width:700px){#ps5-options .ps5-account-option{padding:22px;}.ps5-account-summary{grid-template-columns:1fr;gap:20px;}.ps5-account-summary ul{grid-template-columns:1fr;gap:12px;}.ps5-account-option .ps5-region-table{min-width:460px;}.ps5-account-option .ps5-region-table th,.ps5-account-option .ps5-region-table td{padding:12px 8px;}.ps5-account-option .ps5-region-table td strong{font-size:18px;}}

.region-name{display:inline-flex;align-items:center;gap:14px;}.region-flag{display:block;width:42px;height:28px;object-fit:cover;border-radius:5px;box-shadow:0 0 0 1px rgba(255,255,255,.2),0 4px 10px rgba(0,0,0,.3);flex-shrink:0;}
@media(max-width:700px){.region-name{gap:9px;}.region-flag{width:33px;height:22px;}}

.psplus-separate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}.psplus-separate-card{display:block;min-width:0;border-radius:18px;overflow:hidden;transition:transform .18s ease;}.psplus-separate-card img{display:block;width:100%;height:auto;}.psplus-separate-card:hover{transform:translateY(-3px);}.psplus-separate-card:focus-visible{outline:3px solid #ffe567;outline-offset:5px;}
@media(max-width:700px){.psplus-separate-grid{grid-template-columns:minmax(0,1fr);gap:22px;}}

.psplus-separate-card{position:relative;aspect-ratio:782/860;border-radius:28px;background:transparent;}
.psplus-separate-card img{position:absolute;top:-1.63%;width:226.85%;max-width:none;height:auto;}
.psplus-separate-extra img{left:-12.02%;}
.psplus-separate-deluxe img{left:-114.58%;}

/* Align both PS Plus offer panels and the price summary. */
.psplus-separate-section>.container,.psplus-price-summary>.container{width:min(1288px,calc(100% - 128px));max-width:1288px;margin-inline:auto;}
@media(max-width:900px){.psplus-separate-section>.container,.psplus-price-summary>.container{width:calc(100% - 32px);max-width:none;}}

/* Xbox subscription gift-card styling. */
.gamepass-page .page-intro .eyebrow{color:#85ed77;}
.gamepass-page .page-intro h1{font-size:clamp(30px,4.5vw,54px);max-width:1000px;}
.gamepass-page main>.section:first-of-type>.container{width:min(1180px,calc(100% - 48px));margin-inline:auto;}
.gamepass-page .gp-grid{gap:30px;max-width:1000px;margin:0 auto;}
.gamepass-page .gp-card{position:relative;isolation:isolate;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center;padding:32px;border-radius:28px;border:1px solid #3da547;background:radial-gradient(ellipse at 50% 45%,#124d20 0,transparent 55%),linear-gradient(145deg,#07160e,#020a07 75%);box-shadow:inset 0 0 28px #21b33812,0 14px 45px #0008;}
.gamepass-page .gp-card::before,.gamepass-page .gp-card::after{content:"";position:absolute;z-index:-1;width:140%;height:130px;left:-20%;border:2px solid #4beb4538;border-radius:50%;transform:rotate(-18deg);bottom:95px;box-shadow:0 8px 0 #39e13d16,0 17px 0 #39e13d12;}
.gamepass-page .gp-card::after{top:80px;bottom:auto;transform:rotate(12deg);opacity:.5;}
.gp-card-slot{width:94px;height:15px;background:#020806;border:1px solid #287d35;border-radius:30px;margin-bottom:24px;box-shadow:inset 0 3px 7px #000;}
.gp-official-logo{width:360px;max-width:100%;height:140px;object-fit:contain;mix-blend-mode:screen;filter:contrast(4);}
.gp-emblem{display:flex;align-items:center;justify-content:center;width:132px;height:132px;border:1px solid #67ef64;border-radius:50%;margin:28px 0;box-shadow:0 0 25px #4cff4266,inset 0 0 22px #4cff4233;}
.gp-emblem img{width:100px;height:100px;object-fit:contain;filter:drop-shadow(0 0 8px #58ff46);}
.gamepass-page .gp-card h3{font-size:17px;color:#cfe9d2;font-weight:600;margin:0;}
.gamepass-page .gp-card h3 span{display:block;margin-top:12px;padding:11px 30px;border-radius:40px;background:linear-gradient(110deg,#126b22,#258a24);color:white;font-size:28px;font-weight:800;}
.gamepass-page .gp-price{font-size:clamp(34px,4vw,46px);margin:24px 0;}
.gamepass-page .gp-card .btn{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;background:linear-gradient(120deg,#2cba35,#13801a);border:1px solid #7ee974;color:#fff;text-transform:none;font-size:16px;box-shadow:0 5px 22px #2cba3528;}
.gamepass-page .page-note{max-width:1000px;margin:26px auto 0;}
@media(max-width:700px){.gamepass-page .gp-grid{grid-template-columns:1fr;max-width:470px;}.gamepass-page .gp-card{padding:26px;}.gamepass-page main>.section:first-of-type>.container{width:calc(100% - 32px);}}

/* PlayStation balance calculators. */
.balance-page .page-intro h1{font-size:clamp(30px,4.3vw,52px);max-width:1000px;}
.balance-page .balance-section>.container{width:min(1180px,calc(100% - 48px));margin-inline:auto;}
.balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.balance-card{display:flex;flex-direction:column;min-width:0;padding:26px;border:1px solid #245b9a;border-radius:18px;background:radial-gradient(circle at 100% 0,#116be52b,transparent 65%),linear-gradient(145deg,#0e1c35,#050c1b);}
.balance-region{display:flex;align-items:center;gap:14px;}
.balance-region img{border-radius:5px;box-shadow:0 0 0 1px #ffffff38;object-fit:cover;}
.balance-region h2{font-size:24px;margin:0 0 4px;}
.balance-region span{font-size:13px;color:#a4bddc;}
.balance-rate{margin:22px 0;color:#b8cee8;font-size:16px;}
.balance-rate strong{color:white;}
.balance-card label{font-size:14px;margin-bottom:9px;color:#dce8f6;}
.balance-card input{box-sizing:border-box;width:100%;min-height:52px;background:#030b19;border:1px solid #446b9e;border-radius:8px;color:white;font:inherit;font-size:22px;padding:12px 14px;}
.balance-card input:focus{outline:2px solid #58b4ff;outline-offset:2px;}
.balance-error{font-size:13px;min-height:18px;margin:6px 0;color:#ffa4ad;}
.balance-result{display:flex;flex-direction:column;gap:8px;margin:4px 0 22px;}
.balance-result>span{font-size:14px;color:#a4bddc;}
.balance-result output{font-size:clamp(26px,3vw,36px);font-weight:800;overflow-wrap:anywhere;}
.balance-card .btn{margin-top:auto;width:100%;box-sizing:border-box;justify-content:center;text-align:center;text-transform:none;}
.balance-card .btn:disabled{opacity:.45;cursor:not-allowed;}
.nav-wrap .nav-links{flex-wrap:wrap;gap:12px 20px;}
@media(max-width:1000px){.balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.balance-grid{grid-template-columns:1fr;}.balance-page .balance-section>.container{width:calc(100% - 32px);}.balance-card{padding:22px;}}

/* More compact heading scale across the site. */
.page-intro h1,.gamepass-page .page-intro h1,.balance-page .page-intro h1{font-size:clamp(26px,3.3vw,40px);line-height:1.18;}
.section-head h2,.ps5-options-heading h2,.ps5-account-heading{font-size:clamp(23px,2.6vw,32px);line-height:1.22;letter-spacing:-.025em;}
.psplus-product-head h3{font-size:clamp(22px,2.5vw,30px);line-height:1.25;}
.ps5-option h3,.gp-card h2,.order-heading h2{font-size:clamp(22px,2.3vw,28px);line-height:1.25;}

/* Customer information pages */
.footer-legal{display:flex;flex-wrap:wrap;gap:12px 24px;margin:18px 0;font-size:14px}.footer-legal a,.legal-page a,.order-legal-note a{color:#ef9ded;text-underline-offset:4px}.legal-intro{padding-top:56px;padding-bottom:28px}.legal-intro h1{font-family:inherit;font-size:clamp(30px,5vw,48px);line-height:1.15;max-width:900px;margin:18px 0}.legal-intro>p{max-width:760px;line-height:1.7}.legal-date{opacity:.6;font-size:13px}.legal-toc{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.legal-toc a{padding:9px 14px;border:1px solid #ffffff26;border-radius:24px;text-decoration:none;font-size:14px}.legal-layout{max-width:1000px;padding-bottom:64px}.legal-panel{scroll-margin-top:100px;padding:28px 32px;margin:16px 0;background:linear-gradient(135deg,#17172b,#11111e);border:1px solid #ffffff1c;border-radius:18px}.legal-panel h2,.legal-help h2{font-family:inherit;font-size:24px;line-height:1.3;margin:0 0 18px}.legal-panel p,.legal-panel li,.legal-panel address{font-size:16px;line-height:1.8;color:#dddce8}.legal-panel p{margin:12px 0}.legal-panel ul,.legal-panel ol{padding-left:24px}.legal-panel address{font-style:normal}.legal-help{padding:30px 0}.legal-help p{margin-bottom:20px}.order-legal-note{grid-column:1/-1;font-size:12px;line-height:1.6;opacity:.85;margin:6px 0 0}@media(max-width:600px){.legal-panel{padding:22px 18px}.legal-intro{padding-top:32px}.legal-toc a{font-size:13px}.footer-legal{flex-direction:column;gap:12px}.legal-panel h2{font-size:21px}}
