.gp-wrap { max-width: 1228px; margin: 0 auto; padding: 24px; }
.drop-arrow { display:inline-flex; align-items:center; color:currentColor; opacity:.75; }
.drop-arrow svg { width:12px; height:12px; display:block; }
.gp-hero { position: relative; border-radius: 18px 18px 14px 14px; padding: 28px; min-height: 302px; display: flex; align-items: flex-end; border: 1px solid rgba(255,255,255,0.07); box-shadow: 0 32px 56px -16px rgba(0,0,0,0.55); }
.gp-hero-bg-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 17px 17px 13px 13px; }
.gp-hero-gradient { position: absolute; inset: 0; border-radius: 17px 17px 13px 13px; background: linear-gradient(180deg, transparent 0%, transparent 45%, rgba(12,18,28,0.35) 70%, rgba(12,18,28,0.88) 100%); }
.gp-hero-content { position: relative; z-index: 1; display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; width: 100%; }
.gp-hero-text { flex: 1; min-width: 200px; }
.gp-hero-text h1, .gp-hero-title-fallback { margin: 0 0 8px; font-size: 26px; color: #fff; }
.gp-hero-logo { max-width: 340px; max-height: 100px; display: block; margin: 0 0 8px; object-fit: contain; object-position: left bottom; }
.gp-hero-edition { margin: 0 0 10px; color: rgba(240,242,245,.84); font-size: 21px; line-height: 1.12; font-weight: 650; letter-spacing: 0; }
.gp-hero-credibility { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 8px; font-size: 13px; color: #c7c8ce; }
.gp-cred-item { display: flex; align-items: center; gap: 6px; }
.gp-genre-tags { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px; }
.gp-genre-tag { background: rgba(255,255,255,0.08); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); border: 0px solid rgba(255,255,255,0.14); color: #e6e7ea; font-size: 12px; letter-spacing: .02em; padding: 3px 10px; border-radius: 12px; }
.gp-hero-price { text-align: right; }
.gp-hero-price .gp-regular { font-size: 13px; color: #e6e7ea; opacity: 0.45; text-decoration: line-through; }
.gp-hero-price .gp-big { font-size: 38px; font-weight: 800; letter-spacing: -.01em; color: #fff; }
.gp-hero-price .gp-cut { background: linear-gradient(135deg, #ff8f5e, #ff7a45 55%, #f2661f); color: #1a0e06; font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 6px; margin-right: 6px; }
.gp-cta {
  display: inline-block; margin-top: 10px;
  background: linear-gradient(135deg, #ff8f5e, #ff7a45 55%, #f2661f);
  color: #1a0e06; font-size: 15px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase;
  padding: 14px 28px; border-radius: 8px; text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.35), 0 4px 20px rgba(255,122,69,0.35);
  transition: box-shadow .2s ease, transform .2s ease;
}

/* GamePage assembly v6 - scoped first pass */
.gp-detail-page .gp-assembly {
  --orange: #ff7a32;
  max-width: none;
  padding: 0;
}
.gp-detail-page .gp-assembly .game-hero {
  background-image:
    linear-gradient(90deg, rgba(5,9,15,.92) 0%, rgba(5,9,15,.72) 32%, rgba(5,9,15,.18) 58%, rgba(5,9,15,.68) 100%),
    linear-gradient(180deg, rgba(5,9,15,.12), rgba(5,9,15,.82) 96%),
    var(--hero-art);
  background-position: center;
  background-size: cover;
  min-height: 600px;
  overflow: hidden;
  position: relative;
}
.gp-detail-page .gp-assembly .game-hero::after {
  background: linear-gradient(90deg, rgba(101, 207, 255, .04), rgb(6 20 26), rgb(255 122 50 / 52%), transparent);
  bottom: 0;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
}
.gp-detail-page .gp-assembly .hero-inner {
  align-items: end;
  display: grid;
  grid-template-columns: minmax(320px, 45%) minmax(280px, 1fr);
  margin: 0 auto;
  max-width: 1360px;
  min-height: 600px;
  padding: 112px 22px 46px;
  position: relative;
  z-index: 2;
}
.gp-detail-page .gp-assembly .chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 34px;
}
.gp-detail-page .gp-assembly .chip {
  align-items: center;
  background: rgba(255,255,255,.075);
  border-radius: 999px;
  color: #dce5ef;
  display: inline-flex;
  font-size: 12px;
  font-weight: 850;
  min-height: 28px;
  padding: 0 12px;
}
.gp-detail-page .gp-assembly .game-logo {
  background-image: var(--hero-logo);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 108px;
  margin-bottom: 22px;
  max-width: 360px;
}
.gp-detail-page .gp-assembly .game-title-fallback,
.gp-detail-page .gp-assembly .edition-title,
.gp-detail-page .gp-assembly .gp-hero-edition {
  color: #ac9b6b;
  font-size: 24px;
  font-weight: 900;
  margin: 0 0 16px;
}
.gp-detail-page .gp-assembly .synopsis {
  color: #d5e2f0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
  margin-bottom: 20px;
  max-width: 620px;
}
.gp-detail-page .gp-assembly .meta-line {
  align-items: center;
  color: #dce6f1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 13px;
  font-weight: 850;
}
.gp-detail-page .gp-assembly .platform-badge,
.gp-detail-page .gp-assembly .mini-badge {
  align-items: center;
  background: rgba(255,255,255,.075);
  border-radius: 999px;
  display: inline-flex;
  gap: 6px;
  min-height: 28px;
  padding: 0 10px;
}
.gp-detail-page .gp-assembly .platform-badge .sx-activation-badge,
.gp-detail-page .gp-assembly .store-ref .sx-activation-badge {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}
.gp-detail-page .gp-assembly .platform-badge .sx-activation-prefix,
.gp-detail-page .gp-assembly .store-ref .sx-activation-prefix {
  display: none;
}
.gp-detail-page .gp-assembly .platform-badge .sx-act-label,
.gp-detail-page .gp-assembly .store-ref .sx-act-label {
  font-size: 10px;
}
.gp-detail-page .gp-assembly .platform-badge .sx-act-mark,
.gp-detail-page .gp-assembly .store-ref .sx-act-mark {
  height: 18px;
  min-width: 18px;
  width: 18px;
}
.gp-detail-page .gp-assembly .price-panel {
  justify-self: end;
  max-width: 320px;
  padding: 0;
  position: relative;
  text-align: center;
}
.gp-detail-page .gp-assembly .price-panel .discount {
  background: #ff7a32;
    border-radius: 30px;
    color: #160b04;
    display: inline-flex;
    font-size: 19px;
    font-weight: 950;
    margin: 0px 40px 0px;
    padding: 5px 8px;
}
.gp-detail-page .gp-assembly .hero-price {
  align-items: baseline;
  display: flex;
  gap: 12px;
  justify-content: center;
}
.gp-detail-page .gp-assembly .hero-price strong {
  color: #fff;
  font-size: 43px;
  font-weight: 950;
}
.gp-detail-page .gp-assembly .hero-price s {
  color: rgba(255,255,255,.48);
  font-size: 15px;
  font-weight: 850;
}
.gp-detail-page .gp-assembly .buy-copy {
  color: #91a4ba;
  display: block;
  font-size: 13px;
  font-weight: 850;
  margin: 0px 0 0px;
}
.gp-detail-page .gp-assembly .button {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 13px;
  font-weight: 950;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .button-primary {
  background: var(--orange);
  color: #111820;
}
.gp-detail-page .gp-assembly .button-secondary {
  background: rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  color: #edf3fb;
}
.gp-detail-page .gp-assembly .hero-action-row {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.gp-detail-page .gp-assembly .hero-action-row .button {
  width: 100%;
}
.gp-detail-page .gp-assembly .hero-action-row > .button::after,
.gp-detail-page .gp-assembly .deal-actions .button::after {
  content: "\2197";
  font-size: 11px;
  margin-left: 7px;
}
.gp-detail-page .gp-assembly .quick-actions {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.gp-detail-page .gp-assembly .quick-action {
  align-items: center;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 8px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  color: #dce5f1;
  display: inline-flex;
  font-size: 11px;
  font-weight: 950;
  gap: 5px;
  justify-content: center;
  min-height: 36px;
  padding: 0 10px;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .quick-action::before {
  color: var(--orange);
  content: attr(data-icon);
  font-size: 11px;
  font-weight: 950;
}
.gp-detail-page .gp-assembly .sx-favorite-button.quick-action {
  border-color: rgba(255,255,255,.09);
  height: auto;
  width: auto;
}
.gp-detail-page .gp-assembly .sx-favorite-button.quick-action::before {
  content: "";
}
.gp-detail-page .gp-assembly .sx-favorite-button.quick-action svg {
  color: var(--orange);
  flex: 0 0 auto;
  height: 13px;
  width: 13px;
}
.gp-detail-page .gp-assembly .sx-favorite-button.quick-action span {
  display: inline;
}
.gp-detail-page .gp-assembly .content {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 1360px;
  padding: 0 22px 0;
}
.gp-detail-page .gp-assembly .game-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  padding-top: 34px;
}
.gp-detail-page .gp-assembly .decision-grid,
.gp-detail-page .gp-assembly .detail-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 44px;
}
.gp-detail-page .gp-assembly .decision-grid {
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
}
.gp-detail-page .gp-assembly .section-title {
  align-items: center;
  color: #fff;
  display: flex;
  font-size: 20px;
  font-weight: 950;
  gap: 8px;
  line-height: 1.12;
  margin: 0 0 16px;
}
.gp-detail-page .gp-assembly .section-title::before {
  color: var(--orange);
  content: attr(data-icon);
  font-size: 13px;
  font-weight: 950;
}
.gp-detail-page .gp-assembly .section-meta {
  color: #8294aa;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 12px;
  font-weight: 750;
  margin-bottom: 12px;
}
.gp-detail-page .gp-assembly .deal-list {
  background: rgba(15,24,36,.40);
  border-radius: 12px;
  overflow: hidden;
}
.gp-detail-page .gp-assembly .deal-panel {
  align-items: center;
  color: inherit;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  min-height: 86px;
  padding: 16px 18px;
  position: relative;
  text-decoration: none;
}
.gp-detail-page .gp-assembly .deal-panel::after {
  background: linear-gradient(90deg, transparent, rgb(218 207 201), transparent);
  bottom: 0;
  content: "";
  height: 1px;
  position: absolute;
  right: 22px;
  width: 230px;
}
.gp-detail-page .gp-assembly .deal-panel + .deal-panel {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}
.gp-detail-page .gp-assembly .deal-panel.best {
  background:
    radial-gradient(circle at 0% 50%, rgba(255, 122, 50, .24), transparent 34%), linear-gradient(90deg, rgba(255, 122, 50, .18), rgba(255, 122, 50, .04) 48%, rgb(18 59 46 / 0%)), rgb(15 24 36 / 1%);
  box-shadow:
    inset 4px 0 0 rgba(255,122,50,.82),
    inset 0 1px 0 rgba(255,255,255,.06),
    0 20px 54px rgba(0,0,0,.22);
}
.gp-detail-page .gp-assembly .store-line {
  align-items: center;
  display: flex;
  gap: 13px;
  min-width: 0;
}
.gp-detail-page .gp-assembly .store-icon {
  align-items: center;
  background: rgba(255,255,255,.08);
  border-radius: 999px;
  display: inline-flex;
  flex: 0 0 42px;
  height: 42px;
  justify-content: center;
  overflow: hidden;
  width: 42px;
}
.gp-detail-page .gp-assembly .store-icon .gp-shop-icon {
  width: 28px;
  height: 28px;
}
.gp-detail-page .gp-assembly .store-kicker {
  color: #7c8da3;
  display: block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .store-name {
  color: #f5f8fc;
  display: block;
  font-size: 15px;
  font-weight: 900;
}
.gp-detail-page .gp-assembly .best-badge {
  background: var(--orange);
  border-radius: 4px;
  color: #160b04;
  font-size: 10px;
  margin-left: 7px;
  padding: 3px 6px;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .store-ref {
  color: #8fa1b6;
  display: block;
  font-size: 12px;
  font-weight: 750;
  margin-top: 3px;
}
.gp-detail-page .gp-assembly .deal-price {
  color: #fff;
  font-size: 22px;
  font-weight: 950;
  white-space: nowrap;
}
.gp-detail-page .gp-assembly .disabled {
  color: #74859a;
  font-size: 13px;
  font-weight: 850;
}
.gp-detail-page .gp-assembly .decision-panel {
  background: radial-gradient(circle at 18% 0%, rgb(61 208 255 / 8%), transparent 28%), linear-gradient(180deg, rgba(14, 23, 34, .56), rgba(10, 17, 26, .40));
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 18px 44px rgba(0,0,0,.18);
  overflow: hidden;
  padding: 18px;
  position: relative;
}
.gp-detail-page .gp-assembly .decision-panel::after,
.gp-detail-page .gp-assembly .media-panel::after,
.gp-detail-page .gp-assembly .compact-card::after {
  background: linear-gradient(90deg, transparent, rgb(228 111 48), transparent);
  bottom: 0;
  content: "";
  height: 1px;
  position: absolute;
  right: 18px;
  width: 180px;
}
.gp-detail-page .gp-assembly .decision-panel h2,
.gp-detail-page .gp-assembly .info-panel h2 {
  color: #fff;
  font-size: 18px;
  font-weight: 950;
  margin: 0 0 4px;
}
.gp-detail-page .gp-assembly .decision-sub {
  color: #8fa2b8;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 18px;
}
.gp-detail-page .gp-assembly .playtime-grid {
  display: grid;
  gap: 10px;
}
.gp-detail-page .gp-assembly .playtime-row {
  align-items: center;
  background: rgba(8,17,28,.38);
  border-radius: 9px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  min-height: 54px;
  padding: 0 12px;
}
.gp-detail-page .gp-assembly .playtime-row span {
  color: #dce6f1;
  font-size: 13px;
  font-weight: 900;
}
.gp-detail-page .gp-assembly .score-note {
  color: #7f91a8;
  font-size: 11px;
  font-weight: 800;
}
.gp-detail-page .gp-assembly .playtime-row strong {
  color: #dce6f1;
  font-size: 20px;
  font-weight: 950;
}
.gp-detail-page .gp-assembly .score-source {
  color: #dce6f1;
  font-size: 14px;
  font-weight: 900;
}
.gp-detail-page .gp-assembly .playtime-row em {
  color: var(--green);
  font-size: 16px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}
.gp-detail-page .gp-assembly .score-head {
  align-items: center;
  display: flex;
  gap: 14px;
  margin-bottom: 14px;
}
.gp-detail-page .gp-assembly .score-big {
  align-items: center;
  background: radial-gradient(circle at 50% 0%, rgba(255,122,50,.22), transparent 64%), rgba(255,68,68,.13);
  border-radius: 16px;
  box-shadow: inset 0 0 0 1px rgba(255,122,50,.26), 0 16px 34px rgba(255,68,68,.08);
  color: #ff8d7a;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 25px;
  font-weight: 950;
  height: 58px;
  justify-content: center;
  width: 58px;
}
.gp-detail-page .gp-assembly .score-big.score-good {
  background: radial-gradient(circle at 50% 0%, rgba(57,200,122,.24), transparent 64%), rgba(18,59,46,.42);
  box-shadow: inset 0 0 0 1px rgba(57,200,122,.26), 0 16px 34px rgba(57,200,122,.08);
  color: #8ee7b8;
}
.gp-detail-page .gp-assembly .score-big.score-ok {
  background: radial-gradient(circle at 50% 0%, rgba(255,196,61,.22), transparent 64%), rgba(255,196,61,.12);
  box-shadow: inset 0 0 0 1px rgba(255,196,61,.24), 0 16px 34px rgba(255,196,61,.08);
  color: #ffc43d;
}
.gp-detail-page .gp-assembly .score-row {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 46px;
}
.gp-detail-page .gp-assembly .score-row + .score-row {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}
.gp-detail-page .gp-assembly .score-badge {
  align-items: center;
  background: rgba(255,120,90,.13);
  border-radius: 10px;
  color: #ff9a84;
  display: inline-flex;
  font-size: 13px;
  font-weight: 950;
  height: 32px;
  justify-content: center;
  width: 42px;
}
.gp-detail-page .gp-assembly .score-badge.score-good {
  background: rgba(57,200,122,.14);
  color: #8ee7b8;
}
.gp-detail-page .gp-assembly .score-badge.score-ok {
  background: rgba(255,196,61,.13);
  color: #ffc43d;
}
.gp-detail-page .gp-assembly .price-history,
.gp-detail-page .gp-assembly .media-section,
.gp-detail-page .gp-assembly .worth,
.gp-detail-page .gp-assembly .technical-section,
.gp-detail-page .gp-assembly .similar-section {
  margin-top: 44px;
}
.gp-detail-page .gp-assembly .history-card {
  background: radial-gradient(circle at 18% 0%, rgb(61 208 255 / 8%), transparent 28%), linear-gradient(180deg, rgba(14, 23, 34, .56), rgba(10, 17, 26, .40));
  background-position: center;
  background-size: cover;
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 18px 44px rgba(0,0,0,.18);
  min-height: 250px;
  overflow: hidden;
  padding: 18px;
  position: relative;
}
.gp-detail-page .gp-assembly .history-card > * {
  position: relative;
  z-index: 1;
}
.gp-detail-page .gp-assembly .history-stats {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 18px;
  max-width: 620px;
}
.gp-detail-page .gp-assembly .history-stat {
  background: rgba(8,17,28,.42);
  border-radius: 9px;
  padding: 12px;
}
.gp-detail-page .gp-assembly .history-stat span {
  color: #8396ac;
  display: block;
  font-size: 11px;
  font-weight: 900;
  margin-bottom: 6px;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .history-stat strong {
  color: #fff;
  display: block;
  font-size: 18px;
  font-weight: 950;
}
.gp-detail-page .gp-assembly .history-chart {
  bottom: 24px;
  height: 120px;
  left: 18px;
  position: absolute;
  right: 18px;
}
.gp-detail-page .gp-assembly .history-chart svg {
  height: 100%;
  width: 100%;
}
.gp-detail-page .gp-assembly .media-section {
  display: grid;
  gap: 34px;
  grid-template-columns: .65fr 1fr;
  margin-top: 42px;
}
.gp-detail-page .gp-assembly .media-heading {
  grid-column: 1 / -1;
  margin-bottom: -16px;
}
.gp-detail-page .gp-assembly .media-panel {
  position: relative;
}
.gp-detail-page .gp-assembly .media-panel .section-title {
  color: #91a5bb;
  font-size: 12px;
  letter-spacing: .08em;
  margin-bottom: 14px;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .trailer,
.gp-detail-page .gp-assembly .shot {
  background: #08111c;
  border-radius: 10px;
  box-shadow: 0 18px 44px rgba(0,0,0,.24);
  overflow: hidden;
  position: relative;
}
.gp-detail-page .gp-assembly .trailer {
  aspect-ratio: 16 / 9;
}
.gp-detail-page .gp-assembly .trailer::after {
  background: rgba(12,18,28,0.35);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color .2s ease;
}
.gp-detail-page .gp-assembly .trailer:hover::after {
  background: rgba(12,18,28,0.15);
}
.gp-detail-page .gp-assembly .trailer img,
.gp-detail-page .gp-assembly .shot img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.gp-detail-page .gp-assembly .play {
  align-items: center;
  background: rgba(255,255,255,.13);
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  height: 54px;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 54px;
  z-index: 1;
}
.gp-detail-page .gp-assembly .shots {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
  padding: 0;
  scrollbar-width: auto;
}
.gp-detail-page .gp-assembly .shots::before,
.gp-detail-page .gp-assembly .shots::after {
  display: none;
}
.gp-detail-page .gp-assembly .shot {
  aspect-ratio: 16 / 9;
}
.gp-detail-page .gp-assembly .shots .shot img {
  aspect-ratio: auto;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  max-width: none;
  width: 100%;
}
.gp-detail-page .gp-assembly .worth-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.gp-detail-page .gp-assembly .worth {
  display: none;
}
.gp-detail-page .gp-assembly .similar-section .section-title {
  margin-bottom: 4px;
}
.gp-detail-page .gp-assembly .section-lead {
  color: #8fa2b8;
  font-size: 13px;
  font-weight: 800;
  margin: 0 0 18px;
}
.gp-detail-page .gp-assembly .worth-card {
  align-items: center;
  background: rgba(15,24,36,.50);
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 18px 44px rgba(0,0,0,.18);
  display: flex;
  justify-content: center;
  min-height: 96px;
  padding: 18px;
  text-align: center;
}
.gp-detail-page .gp-assembly .worth-card strong {
  display: block;
  font-size: 28px;
  font-weight: 950;
  margin-bottom: 6px;
}
.gp-detail-page .gp-assembly .worth-card span {
  color: #8fa2b8;
  font-size: 13px;
  font-weight: 850;
}
.gp-detail-page .gp-assembly .info-panel {
  background: radial-gradient(circle at 18% 0%, rgb(61 208 255 / 8%), transparent 28%), linear-gradient(180deg, rgba(14, 23, 34, .56), rgba(10, 17, 26, .40));
  border-radius: 12px;
  padding: 18px;
}
.gp-detail-page .gp-assembly .fact {
  margin-bottom: 18px;
  padding-left: 28px;
  position: relative;
}
.gp-detail-page .gp-assembly .fact::before {
  align-items: center;
  background: rgba(255,255,255,.065);
  border-radius: 7px;
  color: var(--orange);
  content: attr(data-icon);
  display: inline-flex;
  font-size: 11px;
  font-weight: 950;
  height: 18px;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 1px;
  width: 18px;
}
.gp-detail-page .gp-assembly .fact small,
.gp-detail-page .gp-assembly .edition-label {
  color: #798ca2;
  display: block;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  margin-bottom: 6px;
  text-transform: uppercase;
}
.gp-detail-page .gp-assembly .fact strong,
.gp-detail-page .gp-assembly .requirements p {
  color: #dce6f1;
  font-size: 13px;
  font-weight: 850;
}
.gp-detail-page .gp-assembly .requirements h3 {
  color: #fff;
  font-size: 13px;
  font-weight: 950;
  margin: 18px 0 8px;
}
.gp-detail-page .gp-assembly .requirements p {
  line-height: 1.55;
  margin: 0 0 6px;
}
.gp-detail-page .gp-assembly .language-list,
.gp-detail-page .gp-assembly .platform-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}
.gp-detail-page .gp-assembly .soft-chip {
  align-items: center;
  background: rgba(255,255,255,.065);
  border-radius: 999px;
  color: #dce6f1;
  display: inline-flex;
  font-size: 12px;
  font-weight: 850;
  min-height: 28px;
  padding: 0 10px;
}
.gp-detail-page .gp-assembly .soft-chip.good {
  background: rgba(18,59,46,.72);
  color: #8ee7b8;
}
.gp-detail-page .gp-assembly .similar-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.gp-detail-page .gp-assembly .compact-card {
  background: #101a26;
  border-radius: 10px;
  box-shadow: 0 16px 42px rgba(0,0,0,.24);
  min-width: 0;
  overflow: hidden;
  position: relative;
}
.gp-detail-page .gp-assembly .compact-media {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  position: relative;
}
.gp-detail-page .gp-assembly .compact-media::after {
  background: linear-gradient(180deg, rgba(8,17,28,0) 24%, rgba(8,17,28,.58) 68%, #08111c 100%);
  content: "";
  inset: 0;
  position: absolute;
}
.gp-detail-page .gp-assembly .compact-media img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.gp-detail-page .gp-assembly .compact-price {
  align-items: end;
  bottom: 12px;
  display: flex;
  gap: 8px;
  position: absolute;
  right: 12px;
  z-index: 2;
}
.gp-detail-page .gp-assembly .small-discount {
  background: #edf4ff;
  border-radius: 7px;
  color: #101824;
  font-size: 12px;
  font-weight: 950;
  padding: 6px 8px;
}
.gp-detail-page .gp-assembly .small-price {
  color: #ffc43d;
  font-size: 20px;
  font-weight: 950;
}
.gp-detail-page .gp-assembly .compact-info {
  align-items: center;
  background: #101a26;
  display: flex;
  font-size: 12px;
  font-weight: 850;
  gap: 8px;
  justify-content: space-between;
  min-height: 38px;
  padding: 0 12px;
}
.gp-detail-page .gp-assembly .compact-title {
  color: #dce6f1;
  font-size: 12px;
  font-weight: 900;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.gp-detail-page .gp-assembly .compact-economy {
  color: #39c87a;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}
@media (max-width: 980px) {
  .gp-detail-page .gp-assembly .hero-inner {
    grid-template-columns: 1fr;
    min-height: 640px;
  }
  .gp-detail-page .gp-assembly .price-panel {
    justify-self: start;
    text-align: left;
  }
  .gp-detail-page .gp-assembly .hero-price {
    justify-content: flex-start;
  }
  .gp-detail-page .gp-assembly .deal-panel {
    grid-template-columns: 1fr;
  }
  .gp-detail-page .gp-assembly .decision-grid,
  .gp-detail-page .gp-assembly .detail-grid,
  .gp-detail-page .gp-assembly .media-section {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .gp-detail-page .gp-assembly .game-hero {
    min-height: 560px;
  }
  .gp-detail-page .gp-assembly .hero-inner {
    min-height: 560px;
    padding: 110px 18px 28px;
  }
  .gp-detail-page .gp-assembly .price-panel {
    max-width: none;
    width: 100%;
  }
  .gp-detail-page .gp-assembly .price-panel .discount {
    margin: 0 0 4px;
  }
  .gp-detail-page .gp-assembly .hero-price strong {
    font-size: clamp(32px, 10vw, 40px);
  }
  .gp-detail-page .gp-assembly .quick-actions {
    gap: 7px;
  }
  .gp-detail-page .gp-assembly .quick-action {
    min-height: 42px;
    padding: 0 8px;
  }
  .gp-detail-page .gp-assembly .deal-panel {
    gap: 8px 12px;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 72px;
    padding: 12px;
  }
  .gp-detail-page .gp-assembly .deal-panel::after {
    right: 12px;
    width: calc(100% - 24px);
  }
  .gp-detail-page .gp-assembly .deal-price {
    font-size: 19px;
    justify-self: end;
  }
  .gp-detail-page .gp-assembly .deal-actions {
    grid-column: 2;
    justify-self: end;
  }
  .gp-detail-page .gp-assembly .deal-actions .button {
    font-size: 11px;
    min-height: 34px;
    padding: 0 12px;
  }
  .gp-detail-page .gp-assembly .price-history {
    margin-top: 34px;
  }
  .gp-detail-page .gp-assembly .history-card {
    min-height: 210px;
    padding: 14px;
  }
  .gp-detail-page .gp-assembly .history-stats {
    gap: 8px;
    margin-top: 14px;
  }
  .gp-detail-page .gp-assembly .history-stat {
    padding: 9px;
  }
  .gp-detail-page .gp-assembly .history-stat span {
    font-size: 10px;
    margin-bottom: 5px;
  }
  .gp-detail-page .gp-assembly .history-stat strong {
    font-size: 15px;
  }
  .gp-detail-page .gp-assembly .history-chart {
    bottom: 18px;
    height: 96px;
    left: 14px;
    right: 14px;
  }
}
@media (max-width: 420px) {
  .gp-detail-page .gp-assembly .game-hero {
    min-height: 520px;
  }
  
  .gp-detail-page .gp-assembly .game-logo {
      max-width: 315px;
}
 .gp-detail-page .gp-assembly .game-hero {
 background-position-x: 55%;
 }
  
  
  
  
  
  
  
  
  
  
  
 .gp-detail-page .gp-assembly .deal-actions {
               margin-top: -25px;
    }
  .gp-detail-page .gp-assembly .section-meta {
   margin-left: 7px;
  }
  .sx-activation-meta {
   margin-top: 6px;
  }
  .gp-detail-page .gp-assembly .deal-panel {
        gap: 4px 65px !important;
  }
  .gp-detail-page .gp-assembly .best-badge {
   margin-left: 0px;
  }
  .gp-detail-page .gp-assembly .game-layout {
   padding-top: 10px;
  }
  .gp-detail-page .gp-assembly .price-panel .discount {
   margin: 6px 0 4px;
  }
  .gp-detail-page .gp-assembly .requirements p {
   font-size: 12px;
  }
  .gp-detail-page .gp-assembly .similar-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gp-detail-page .gp-assembly .hero-inner {
    min-height: 520px;
    padding: 160px 14px 24px;
  }
  .gp-detail-page .gp-assembly .content {
  padding: 0 6px 0;
  }
  .gp-detail-page .gp-assembly .synopsis {
    font-size: 12px;
  }























  
  .gp-detail-page .gp-assembly .hero-price {
    gap: 8px;
  }
  .gp-detail-page .gp-assembly .hero-price strong {
    font-size: clamp(30px, 12vw, 36px);
  }
  .gp-detail-page .gp-assembly .quick-action {
    font-size: 10px;
    min-height: 40px;
    padding: 0 6px;
  }
  .gp-detail-page .gp-assembly .deal-panel {
    gap: 7px 10px;
    min-height: 68px;
    padding: 10px;
  }
  .gp-detail-page .gp-assembly .deal-panel::after {
    right: 10px;
    width: calc(100% - 20px);
  }
  .gp-detail-page .gp-assembly .deal-price {
    font-size: 18px;
  }
  .gp-detail-page .gp-assembly .deal-actions .button {
    min-height: 32px;
    padding: 0 10px;
  }
  .gp-detail-page .gp-assembly .history-card {
    min-height: 198px;
    padding: 12px;
  }
  .gp-detail-page .gp-assembly .history-stats {
    gap: 6px;
  }
  .gp-detail-page .gp-assembly .history-stat {
    padding: 8px;
  }
  .gp-detail-page .gp-assembly .history-stat strong {
    font-size: 14px;
  }
  .gp-detail-page .gp-assembly .history-chart {
    bottom: 14px;
    height: 86px;
    left: 12px;
    right: 12px;
  }
}
.gp-cta:hover {
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.4), 0 6px 28px rgba(255,111,53,0.55);
  transform: translateY(-1px);
}

.gp-boxart-row { position: relative; z-index: 2; margin-top: -56px; padding-left: 28px; margin-bottom: 36px; }
.gp-boxart {
  position: relative;
  width: 104px; height: 138px; border-radius: 8px; overflow: hidden;
  border: 1px solid rgba(0,0,0,0.65);
  background: #1f2027;
  box-shadow:
    0 10px 20px rgba(0,0,0,0.65),
    0 36px 60px -8px rgba(0,0,0,0.6),
    inset 0 1px 0 rgba(255,255,255,0.16),
    inset 0 -1px 0 rgba(0,0,0,0.35);
  transition: width .2s ease, height .2s ease, transform .2s ease, box-shadow .2s ease;
}
.gp-boxart::before {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: radial-gradient(ellipse 70% 55% at 18% 12%, rgba(255,255,255,0.16), transparent 60%);
  mix-blend-mode: overlay;
}
.gp-boxart-anchor .gp-boxart { width: 148px; height: 197px; }
.gp-boxart:hover { transform: translateY(-3px); box-shadow: 0 20px 38px rgba(0,0,0,0.6); }

/* Assembly GamePage v6.2: contratos funcionais restaurados dentro do visual novo. */
.gp-detail-page .gp-assembly .game-logo {
  transform: scale(var(--hero-logo-scale, 1));
  transform-origin: left center;
}

.gp-detail-page .gp-assembly .button-primary,
.gp-detail-page .gp-assembly .deal-panel.best .button-primary,
.gp-detail-page .gp-assembly .deal-panel.best .button {
  background: var(--orange);
  border-color: var(--orange);
  color: #111820;
}

.gp-detail-page .gp-assembly .quick-action svg,
.gp-detail-page .gp-assembly .quick-action::before,
.gp-detail-page .gp-assembly .section-title::before {
  color: var(--orange);
}

.gp-detail-page .gp-assembly .section-title::before {
  align-items: center;
  display: inline-flex;
  line-height: 1;
}

.gp-detail-page .gp-assembly .gp-shots-wrap {
  position: relative;
}

.gp-detail-page .gp-assembly .gp-shots-wrap::before,
.gp-detail-page .gp-assembly .gp-shots-wrap::after {
  display: none;
}

.gp-detail-page .gp-assembly .shots.gp-shots {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow-x: auto;
  padding: 0;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.gp-detail-page .gp-assembly .shots.gp-shots::-webkit-scrollbar {
  display: none;
}

.gp-detail-page .gp-assembly .shots.gp-shots .shot {
  aspect-ratio: 16 / 9;
  min-width: 0;
  scroll-snap-align: start;
}

.gp-detail-page .gp-assembly .shots.gp-shots .shot img {
  aspect-ratio: auto;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  height: 100%;
  max-width: none;
  object-fit: cover;
  width: 100%;
}

.gp-detail-page .gp-assembly .gp-shot-nav {
  background: rgba(12,18,28,.85);
  border: 1px solid rgba(255,255,255,.14);
  color: #fff;
  opacity: 0;
}

.gp-detail-page .gp-assembly .gp-shots-wrap:hover .gp-shot-nav {
  opacity: 1;
}

.gp-detail-page .gp-assembly .gp-shot-dots {
  display: flex;
  gap: 6px;
  justify-content: center;
  margin-top: 10px;
}

.gp-detail-page .gp-assembly .gp-shot-dot {
  background: #3a3b42;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  height: 6px;
  padding: 0;
  transition: background-color .2s, transform .2s;
  width: 6px;
}

.gp-detail-page .gp-assembly .gp-shot-dot.gp-dot-active {
  background: var(--orange);
  transform: scale(1.3);
}

.gp-detail-page .gp-assembly .compact-card {
  display: block;
  text-decoration: none;
}

.gp-detail-page .gp-assembly .compact-card .media {
  overflow: hidden;
  position: relative;
}

.gp-detail-page .gp-assembly .compact-card .media::after {
  background: linear-gradient(180deg, rgba(8,17,28,0) 24%, rgba(8,17,28,.58) 68%, #08111c 100%);
  content: "";
  inset: 0;
  position: absolute;
}

.gp-detail-page .gp-assembly .compact-card .media img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.gp-detail-page .gp-assembly .compact-card .activation {
  bottom: 18px;
  left: 14px;
  position: absolute;
  z-index: 2;
}

.gp-detail-page .gp-assembly .compact-card .activation .sx-activation-badge {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.gp-detail-page .gp-assembly .compact-card .activation .sx-act-mark {
  height: 14px;
  min-width: 18px;
  padding: 0;
  width: 18px;
}

.gp-detail-page .gp-assembly .compact-card .activation .sx-act-logo {
  display: block;
  height: var(--sx-logo-h, 14px);
  object-fit: contain;
  width: var(--sx-logo-w, 18px);
}

.gp-detail-page .gp-assembly .compact-card .activation .sx-act-label {
  display: none;
}

.gp-detail-page .gp-assembly .compact-card .deal {
  align-items: end;
  bottom: 12px;
  display: flex;
  gap: 8px;
  position: absolute;
  right: 12px;
  z-index: 2;
}

.gp-detail-page .gp-assembly .compact-card .card-discount {
  background: #edf4ff;
  border-radius: 7px;
  color: #101824;
  font-size: 12px;
  font-weight: 950;
  padding: 6px 8px;
}

.gp-detail-page .gp-assembly .compact-card .price-stack {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  line-height: 1;
}

.gp-detail-page .gp-assembly .compact-card .old {
  color: rgba(236,244,255,.65);
  font-size: 11px;
  font-weight: 900;
  text-decoration: line-through;
}

.gp-detail-page .gp-assembly .compact-card .price {
  color: #ffc43d;
  font-size: 20px;
  font-weight: 950;
}

.gp-detail-page .gp-assembly .language-panel .soft-chip.is-extra {
  display: none;
}

.gp-detail-page .gp-assembly .language-panel.is-expanded .soft-chip.is-extra {
  display: inline-flex;
}

.gp-detail-page .gp-assembly .language-toggle {
  border: 0;
  cursor: pointer;
}

.gp-detail-page .gp-assembly .subtitles-label {
  margin-top: 18px;
}
.gp-boxart img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gp-main { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; align-items: start; }
.gp-col-left { display: flex; flex-direction: column; gap: 32px; }
.gp-col-right { display: flex; flex-direction: column; gap: 16px; }
.gp-section h2 { font-size: 17px; color: #fff; margin: 0 0 4px; display: flex; align-items: center; gap: 8px; }
.gp-h2-icon { display: inline-flex; color: #555151; flex-shrink: 0; }
.gp-detail-page .gp-assembly .gp-h2-icon { color: var(--orange); }
.gp-flag-br { display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.14); color: #e6e7ea; font-size: 10px; font-weight: 700; letter-spacing: .03em; padding: 1px 5px; border-radius: 4px; }
.gp-section > h2:first-child { margin-bottom: 16px; }
.gp-trust-bar { display: flex; gap: 16px; flex-wrap: wrap; font-size: 12px; color: #9a9ca6; margin: 0 0 14px; }
.gp-deals { display: flex; flex-direction: column; gap: 6px; }
.gp-deal-card { display: flex; align-items: center; gap: 10px; background: transparent; border: none; border-bottom: 1px solid #22232a; border-radius: 0; padding: 9px 4px; text-decoration: none; transition: background-color .15s; }
a.gp-deal-card:hover { background: rgba(255,255,255,0.03); }
.gp-deal-card.gp-best { border: 1px solid #ff7a45; border-radius: 12px; background: linear-gradient(135deg, rgba(255,122,69,0.14), rgba(255,122,69,0.02)); padding: 18px 22px; margin-bottom: 4px; box-shadow: 0 8px 28px rgba(255,122,69,0.18); }
a.gp-deal-card.gp-best:hover { background: linear-gradient(135deg, rgba(255,122,69,0.18), rgba(255,122,69,0.04)); }
.gp-deal-card.gp-best .gp-shop-icon { width: 42px; height: 42px; }
.gp-deal-card.gp-best .gp-deal-shop { font-size: 15px; }
.gp-deal-card.gp-best .gp-deal-price { font-size: 22px; }
.gp-deal-card.gp-disabled { opacity: 0.5; }
.gp-shop-icon { position: relative; width: 26px; height: 26px; border-radius: 15px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.gp-shop-icon img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #ffffff00; padding: 0px; box-sizing: border-box; }
.gp-shop-initials { position: relative; font-size: 0px; font-weight: 700; }
.gp-deal-info { flex: 1; min-width: 0; }
.gp-deal-shop { font-size: 12.5px; font-weight: 600; color: #d7d8de; display: flex; align-items: center; gap: 8px; }
.gp-deal-buy-label { display:block; color:#6f7887; font-size:10px; font-weight:850; text-transform:uppercase; letter-spacing:.08em; margin-bottom:2px; }
.gp-badge-best { background: #ff7a45; color: #1a0e06; font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 5px; letter-spacing: .02em; }
.gp-deal-sub { font-size: 11px; color: #6f717a; margin-top: 2px; }
.gp-deal-activation { display:flex; align-items:center; gap:7px; font-size: 11px; color: #8d929c; margin-top: 7px; flex-wrap:wrap; }
.gp-deal-activation.gp-check { color: #a49379; }
.gp-activation-label { color:#8f98a7; font-size:10px; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.gp-deal-activation .sx-activation-meta { padding:3px 8px 3px 5px; border:0px solid rgba(255,255,255,.12); border-radius:999px; background:rgba(255,255,255,.055); }
.gp-deal-activation .sx-activation-badge-compact { transform:none; opacity:1; border:0; background:transparent; padding:0; box-shadow:none; }
.gp-deal-activation .sx-activation-prefix { display:none; }
.gp-deal-activation .sx-act-mark { min-width:26px; width:26px; height:18px; }
.gp-deal-activation .sx-act-logo { opacity:1; }
.sx-activation-badge { display:inline-flex; align-items:center; justify-content:center; gap:5px; width:max-content; max-width:100%; border:1px solid rgba(255,255,255,.12); border-radius:999px; padding:3px 7px 3px 4px; font-size:10px; line-height:1.2; font-weight:850; letter-spacing:.01em; color:#dfe4ec; background:rgba(255,255,255,.055); vertical-align:middle; box-shadow:inset 0 1px 0 rgba(255,255,255,.07); }
.sx-act-mark { display:inline-flex; align-items:center; justify-content:center; min-width:17px; height:17px; border-radius:999px; color:#061018; background:rgba(255,255,255,.9); font-size:9px; font-weight:950; letter-spacing:-.02em; }
.sx-act-label { white-space:nowrap; }
.sx-act-steam { color:#dff2ff; border-color:rgba(102,192,244,.34); background:linear-gradient(135deg, rgba(28,85,124,.34), rgba(102,192,244,.10)); }
.sx-act-steam .sx-act-mark { background:#66c0f4; color:#071019; }
.sx-act-gog { color:#f3e2ff; border-color:rgba(145,82,196,.38); background:linear-gradient(135deg, rgba(91,48,137,.36), rgba(145,82,196,.11)); }
.sx-act-gog .sx-act-mark { background:#9152c4; color:#fff; }
.sx-act-rockstar { color:#ffe7a6; border-color:rgba(255,196,66,.42); background:linear-gradient(135deg, rgba(138,91,16,.34), rgba(255,196,66,.12)); }
.sx-act-rockstar .sx-act-mark { background:#ffc442; color:#1a1000; }
.sx-act-ea { color:#ffd7d0; border-color:rgba(255,87,76,.34); background:linear-gradient(135deg, rgba(145,43,37,.32), rgba(255,87,76,.11)); }
.sx-act-ea .sx-act-mark { background:#ff574c; color:#fff; }
.sx-act-ubisoft { color:#dcecff; border-color:rgba(70,144,255,.34); background:linear-gradient(135deg, rgba(27,75,145,.34), rgba(70,144,255,.10)); }
.sx-act-ubisoft .sx-act-mark { background:#4690ff; color:#fff; }
.sx-act-epic { color:#f2f3f5; border-color:rgba(255,255,255,.20); background:linear-gradient(135deg, rgba(22,24,28,.72), rgba(255,255,255,.07)); }
.sx-act-epic .sx-act-mark { background:#f2f3f5; color:#0d1117; }
.sx-act-microsoft { color:#d6ffe4; border-color:rgba(64,201,103,.34); background:linear-gradient(135deg, rgba(29,111,52,.34), rgba(64,201,103,.10)); }
.sx-act-microsoft .sx-act-mark { background:#40c967; color:#051208; }
.sx-act-battlenet { color:#d7f5ff; border-color:rgba(69,196,255,.34); background:linear-gradient(135deg, rgba(24,78,112,.34), rgba(69,196,255,.10)); }
.sx-act-battlenet .sx-act-mark { background:#45c4ff; color:#041018; }
.sx-act-other { color:#e5e8ef; border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.07); }
.sx-act-check { color:#d6c7ad; border-color:rgba(255,190,110,.28); background:linear-gradient(135deg, rgba(105,72,36,.30), rgba(255,190,110,.08)); }
.sx-act-check .sx-act-mark { background:#c7a16b; color:#17100a; }
.sx-activation-meta { display:inline-flex; align-items:center; gap:6px; color:#7f8794; min-width:0; }
.sx-activation-prefix { color:#7f8794; font-size:10px; font-weight:750; text-transform:uppercase; letter-spacing:.05em; }
.sx-activation-badge-compact {     transform: scale(1.35);
    transform-origin: left center;
    opacity: .88; }
.sx-activation-badge-compact .sx-act-label { font-size:9px; }
.sx-act-mark { min-width:22px; width:22px; height:16px; padding:0; border-radius:0; background:transparent !important; color:inherit; }
.sx-act-logo { display:block; width:var(--sx-logo-w,22px); height:var(--sx-logo-h,16px); object-fit:contain; filter:grayscale(1) invert(1) brightness(1.05) contrast(1.08); opacity:.96; }
.sx-act-steam { --sx-logo-w:18px; --sx-logo-h:16px; }
.sx-act-gog { --sx-logo-w:18px; --sx-logo-h:16px; }
.sx-act-epic { --sx-logo-w:18px; --sx-logo-h:16px; }
.sx-act-ea { --sx-logo-w:22px; --sx-logo-h:14px; }
.sx-act-battlenet { --sx-logo-w:22px; --sx-logo-h:16px; }
.sx-act-check { color:#c9ced8; border-color:rgba(255,255,255,.15); background:rgba(255,255,255,.055); padding:4px 8px; }
.sx-act-check .sx-act-label { font-size:10px; }
.sx-act-check.sx-activation-badge-compact .sx-act-label { display:inline; font-size:9px; }
.gp-deal-price { font-size: 14px; font-weight: 700; color: #cacfcc; white-space: nowrap; }
.gp-deal-state { font-size: 12px; font-style: italic; white-space: nowrap; }
.gp-deal-state.gp-erro { color: #ff8080; }
.gp-deal-state.gp-pendente { color: #6f717a; }
.gp-deal-state.gp-preparo { color: #565760; font-style: normal; }
.gp-deal-cta { font-size: 12px; color: #c7c8ce; border: 1px solid #3a3b42; padding: 6px 12px; border-radius: 6px; white-space: nowrap; }
.gp-deal-card.gp-best .gp-deal-cta { background: #ff7a45; color: #1a0e06; border-color: #ff7a45; font-weight: 700; padding: 10px 20px; font-size: 13px; }
.gp-deals-divider { font-size: 11px; color: #6f717a; text-transform: uppercase; letter-spacing: .04em; padding: 6px 2px 2px; }
.gp-shots-wrap { position: relative; }
.gp-shots-wrap::before, .gp-shots-wrap::after { content: ""; position: absolute; top: 0; bottom: 0; width: 56px; z-index: 1; pointer-events: none; }
.gp-shots-wrap::before { left: 0; background: transparent; }
.gp-shots-wrap::after { right: 0; background: linear-gradient(270deg, #0c121c, rgba(12,18,28,0.5) 60%, transparent); }
.gp-shots { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 0px 2px 8px; scroll-behavior: smooth; }
.gp-shots::-webkit-scrollbar { display: none; }
.gp-shots img { flex: 0 0 auto; width: 46%; max-width: 280px; aspect-ratio: 16/9; object-fit: cover; border-radius: 8px; scroll-snap-align: start; background: #1f2027; transition: transform .25s ease, box-shadow .25s ease; cursor: pointer; }
.gp-shots img:hover { transform: scale(1.035); box-shadow: 0 10px 24px rgba(0,0,0,0.45); }
.gp-shot-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border-radius: 50%; background: rgba(12,18,28,0.85); border: 1px solid #2a2b32; color: #e6e7ea; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 16px; z-index: 2; opacity: 0; transition: opacity .15s; }
.gp-shots-wrap:hover .gp-shot-nav { opacity: 1; }
.gp-shot-nav.gp-nav-hidden { opacity: 0 !important; pointer-events: none; }
.gp-shot-nav.gp-prev { left: -4px; }
.gp-shot-nav.gp-next { right: -4px; }
.gp-shot-dots { display: flex; gap: 6px; justify-content: center; margin-top: 10px; }
.gp-shot-dot { width: 6px; height: 6px; border-radius: 50%; background: #3a3b42; cursor: pointer; transition: background-color .2s, transform .2s; }
.gp-shot-dot.gp-dot-active { background: #ff7a45; transform: scale(1.3); }
.gp-info-card { background: #1f2027; border: 1px solid #2a2b32; border-radius: 10px; padding: 16px; }
.gp-info-card h2 { font-size: 15px; }
.gp-info-row { margin-top: 15px; margin-bottom: 16px; }
.gp-info-row:last-child { margin-bottom: 0; }
.gp-info-label { font-size: 11px; color: #6f717a; margin-bottom: 4px; text-transform: uppercase; letter-spacing: .04em; }
.gp-info-value { font-size: 13px; color: #e6e7ea; }
.gp-requirements { margin-top: 0; }
.gp-req-columns { display: block; }
.gp-req-group { border-top: 1px solid rgba(255,255,255,.07); padding-top: 14px; margin-top: 14px; }
.gp-req-group:first-of-type { border-top: 0; padding-top: 0; margin-top: 0; }
.gp-req-columns .gp-req-group { border-top: 0; padding-top: 0; margin-top: 0; }
.gp-req-columns .gp-req-group + .gp-req-group { border-left: 0; border-top: 1px solid rgba(255,255,255,.07); padding-left: 0; padding-top: 12px; margin-top: 12px; }
.gp-req-title { color: #fff; font-size: 12px; font-weight: 750; margin-bottom: 10px; margin-top: 15px;}
.gp-req-list { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.gp-req-list li { color: #aeb4bf; font-size: 12px; line-height: 1.45; }
.gp-req-list strong { color: #e4e7ec; font-weight: 650; }
.gp-metacritic-score { display: inline-block; padding: 2px 8px; border-radius: 4px; font-weight: 700; font-size: 13px; text-decoration: none; }
.gp-score-ring {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid;
    width: 32px !important;
    border-color: #ff9b42 !important;
    border-radius: 50%;
    font-weight: 700;
    flex-shrink: 0;
    margin-left: 10px;
    color: #fff !important;
    height: 32px !important;
    font-size: 13px !important;
}
.gp-vale-card .gp-score-ring { margin-bottom: 6px; }
.gp-vale-grid { display: flex; gap: 12px; flex-wrap: wrap; }
.gp-vale-card { flex: 1; min-width: 120px; background: #1f2027; border: 1px solid #2a2b32; border-radius: 10px; padding: 18px 16px; text-align: center; text-decoration: none; transition: border-color .15s; }
a.gp-vale-card:hover { border-color: #4a4b52; }
.gp-vale-big { font-size: 26px; font-weight: 700; color: #fff; margin-bottom: 4px; }
.gp-vale-label { font-size: 12px; color: #9a9ca6; }
.gp-trailer-card { position: relative; display: block; width: 100%; max-width: 320px; border-radius: 8px; overflow: hidden; text-decoration: none; }
.gp-trailer-card img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; transition: transform .2s ease; }
.gp-trailer-video { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; border-radius: 8px; background: #05080d; }
.gp-trailer-player { position: relative; width: 100%; aspect-ratio: 16/9; border-radius: 8px; overflow: hidden; background: #05080d; cursor: pointer; }
.gp-trailer-player img { width: 100%; height: 100%; object-fit: cover;  display: block; transition: transform .2s ease, filter .2s ease; }
.gp-trailer-player:hover img { transform: scale(1.025); filter: brightness(1.08); }
.gp-trailer-player .gp-trailer-play { pointer-events: none; }
.gp-trailer-card:hover img { transform: scale(1.04); }
.gp-trailer-play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 20px; color: #fff; background: rgba(12,18,28,0.35); transition: background-color .2s ease; }
.gp-trailer-card:hover .gp-trailer-play { background: rgba(12,18,28,0.15); }
.gp-about { margin-top: 8px; padding-top: 28px; border-top: 1px solid #2a2b32; }
.gp-about h2 { font-size: 17px; color: #fff; margin: 0 0 10px; }
.gp-about p { font-size: 14px; color: #c7c8ce; line-height: 1.7; max-width: 720px; }
.gp-lightbox { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; padding: 32px; background: rgba(2,6,12,.92); cursor: zoom-out; }
.gp-lightbox.gp-open { display: flex; }
.gp-lightbox img { max-width: min(1500px,94vw); max-height: 90vh; object-fit: contain; border-radius: 8px; box-shadow: 0 28px 80px rgba(0,0,0,.72); }
.gp-lightbox-video { width: min(1180px,92vw); display: none; cursor: default; }
.gp-lightbox-video video { width: 100%; aspect-ratio: 16/9; display: block; border-radius: 10px; background: #05080d; box-shadow: 0 28px 80px rgba(0,0,0,.72); }
.gp-lightbox.gp-video-open #gp-lightbox-image,
.gp-lightbox.gp-video-open .gp-lightbox-nav,
.gp-lightbox.gp-video-open .gp-lightbox-count { display: none; }
.gp-lightbox.gp-video-open .gp-lightbox-video { display: block; }
.gp-lightbox-close { position: fixed; top: 20px; right: 24px; color: #fff; line-height: 1; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); border-radius: 50%; width: 42px; height: 42px; display: grid; place-items: center; }
.gp-lightbox-close svg { width:20px; height:20px; display:block; }
.gp-lightbox-nav { position: fixed; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255,255,255,.18); background: rgba(12,18,28,.78); color: #fff; display: grid; place-items: center; cursor: pointer; }
.gp-lightbox-prev { left: 24px; }
.gp-lightbox-next { right: 24px; }
.gp-lightbox-count { position: fixed; bottom: 20px; left: 50%; transform: translateX(-50%); color: #d9dde4; font-size: 13px; }

/* Composi??o final do laborat?rio: mais larga, cont?nua e cinematogr?fica. */
.home-main:has(.gp-wrap) { max-width: none; padding-left: 0; padding-right: 0; }
.home-main:has(.gp-wrap) > .breadcrumb { max-width: 1536px; margin-left: auto; margin-right: auto; padding-left: 28px; padding-right: 28px; }
.gp-wrap { max-width: 1536px; padding: 18px 28px 48px; }
.gp-detail-page .topbar {
  position: absolute;
  z-index: 20;
  top: 18px;
  left: 50%;
  width: min(1536px, calc(100% - 56px));
  transform: translateX(-50%);
  background: transparent;
}
.topbar {
  width:min(1536px, calc(100% - 56px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto minmax(320px,1fr);
  align-items:center;
  gap:24px;
}
.topbar .logo { justify-self:start; }
.topbar .nav-links { justify-self:center; }
.topbar .search-wrap { justify-self:end; }
.gp-detail-page .home-main { position: relative; padding-top: 0; }
.gp-detail-page .home-main > .breadcrumb {
  display: none;
  position: absolute;
  z-index: 21;
  top: 100px;
  left: 52%;
  width: min(1536px, calc(100% - 56px));
  max-width: none;
  transform: translateX(-50%);
  padding: 0;
}
.gp-detail-page .gp-wrap { max-width: none; padding: 0 0 0px; }
.gp-detail-page .gp-hero {
  min-height: 500px;
  padding: 150px max(52px, calc((100vw - 1536px) / 2 + 28px)) 44px;
  border-radius: 0 0 12px 12px;
  border-left: 0;
  border-right: 0;
  border-top: 0;
}
.gp-detail-page .gp-hero-content { max-width: 1536px; margin-left: auto; margin-right: auto; }
.gp-detail-page .gp-main,
.gp-detail-page .gp-after-main,
.gp-detail-page .gp-full-row,
.gp-detail-page .gp-details-panel,
.gp-detail-page .gp-about { width: min(1536px, calc(100% - 56px)); margin-left: auto; margin-right: auto; }
.gp-detail-page .search-wrap input {
  background: rgba(15,22,32,.64);
  border-color: transparent;
  color: #fff;
}
.search-wrap { position:relative; }
.search-dropdown {
  position:absolute; z-index:80; top:calc(100% + 8px); left:0; right:0;
  background:#101720; border:1px solid rgba(255,255,255,.1); border-radius:12px;
  box-shadow:0 18px 46px rgba(0,0,0,.42); overflow:hidden;
  max-height:360px; overflow-y:auto;
}
.search-dropdown.hidden { display:none; }
.search-dropdown .search-result {
  width:100%; border:0; background:transparent; color:#e8edf5; display:flex; align-items:center; gap:10px;
  min-height:48px; padding:8px 10px; text-align:left; font:inherit; cursor:pointer;
}
.search-dropdown .search-result:hover,.search-dropdown .search-result:focus-visible { background:rgba(255,122,69,.12); outline:0; }
.search-dropdown .search-result img,.search-dropdown .search-result > span:first-child {
  display:block; width:58px; height:34px; max-width:58px; max-height:34px;
  border-radius:5px; background:#172231; object-fit:cover; flex:0 0 58px;
}
.search-dropdown .search-result span:last-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:800; color:#e8edf5; }
.search-empty { padding:12px; color:#9aa7b7; font-size:13px; }
.gp-hero {
  --hero-accent: 255,122,69;
  --hero-glow: 145,45,15;
  --hero-light: 255,104,42;
  min-height: 460px;
  padding: 54px 52px;
  overflow: hidden;
  border-radius: 20px 20px 10px 10px;
  background: #080d14;
  border-color: rgba(var(--hero-accent),.3);
  box-shadow:
    0 38px 90px rgba(0,0,0,.58),
    0 18px 48px rgba(var(--hero-glow),.28),
    inset 0 1px 0 rgba(255,255,255,.12);
}
.gp-hero-bg-img {
  border-radius: inherit;
  object-position: center 25%;
  transform: scale(1.045);
  filter: saturate(1.18) contrast(1.09) brightness(1.03);
}
.gp-hero-gradient {
  border-radius: inherit;
  background:
    radial-gradient(ellipse 38% 86% at 56% 48%, rgba(var(--hero-light),.14), transparent 76%),
    linear-gradient(90deg, rgba(4,8,13,.96) 0%, rgba(4,8,13,.76) 34%, rgba(4,8,13,.06) 63%, rgba(4,8,13,.5) 100%),
    linear-gradient(0deg, rgba(6,11,18,.98) 0%, rgba(6,11,18,.3) 42%, transparent 72%);
}
.gp-hero::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 5px;
  background: linear-gradient(90deg, transparent 0%, rgba(var(--hero-accent),.95) 22%, rgba(var(--hero-accent),.34) 64%, transparent 100%);
  box-shadow: 0 8px 28px rgba(var(--hero-glow),.42);
  z-index: 2;
}
.gp-hero-content { flex-wrap: nowrap; gap: 56px; }
.gp-hero-text { max-width: 620px; }
.gp-hero-logo {
  max-width: 450px;
  max-height: 150px;
  margin-bottom: 20px;
  transform: scale(var(--hero-logo-scale,1));
  transform-origin: left center;
}
.gp-hero-text h1, .gp-hero-title-fallback { font-size: clamp(32px,4vw,54px); letter-spacing: -.035em; }
.gp-hero-description { max-width: 620px; margin: 14px 0 0; color: rgba(247,248,250,.9); font-size: 14.5px; font-weight: 480; line-height: 1.62; text-shadow: 0 2px 12px rgba(0,0,0,.9); }
.gp-genre-tags { margin-bottom: 16px; }
.gp-genre-tag { padding: 5px 11px; }
.gp-hero-credibility { margin-top: 17px; color: #f0f2f5; font-weight: 560; }
.gp-hero-price {
  min-width: 247px;
  padding: 21px;
  border: 0;
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
  text-shadow: 0 2px 12px rgba(0,0,0,.45);
  transform: translateY(6px);
}
.gp-hero-price .gp-big { font-size: 32px; text-shadow: 0 3px 16px rgba(0,0,0,.9); }
.gp-hero-price .gp-cut { box-shadow: 0 3px 12px rgba(255,96,35,.28); }
.gp-hero-price .gp-regular { opacity: .58; }
.gp-hero-shop {
  margin-top: 6px;
  color: rgba(247,248,250,.86);
  font-size: 12px;
  font-weight: 850;
  text-shadow: 0 2px 10px rgba(0,0,0,.78);
}
.gp-hero-activation {
  margin-top: 8px;
  color: rgba(247,248,250,.68);
  font-size: 12px;
  font-weight: 650;
  text-shadow: 0 2px 10px rgba(0,0,0,.78);
  margin-right: 10px;
}
.gp-hero-activation.gp-check { color: rgba(255,214,153,.76); }
.gp-cta {
  display: block;
  text-align: center;
  margin-top: 14px;
  background: rgba(255,255,255,.12);
  color: #fffaf6;
  box-shadow: none;
}
.gp-cta:hover {
  background: rgba(255,255,255,.18);
  color: #fff;
  box-shadow: none;
}
.gp-editions-panel { grid-column: 1 / -1; margin-bottom: 10px; padding: 16px 18px; border-radius: 12px; background: rgba(255,255,255,.025); border: 0px solid rgba(255,255,255,.055); }
.gp-editions-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom: 10px; }
.gp-editions-head h2 { margin:0; font-size: 16px; color:#e9edf4; }
.gp-editions-head span { color:#7f8794; font-size:12px; font-weight:700; }
.gp-editions-list { display:grid; gap:8px; }
.gp-edition-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:14px; padding:10px 12px; border-radius:10px; background:rgba(255,255,255,.035); color:#ac9b6b; text-decoration:none; }
.gp-edition-row:hover { background:rgba(255,122,69,.10); }
.gp-edition-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:850; }
.gp-edition-price { color:#fff; font-weight:900; white-space:nowrap; }
.gp-edition-diff { color:#a1ac84; font-size:12px; font-weight:800; white-space:nowrap; }
.gp-boxart-row { margin-top: -78px; margin-bottom: 22px; }
.gp-main {
  grid-template-columns: minmax(0,1.75fr) minmax(210px,.62fr) minmax(300px,1fr);
  gap: 0;
  align-items: stretch;
  border: 0px solid rgba(255,255,255,.075);
  border-radius: 0 0 14px 14px;
  overflow: hidden;
  background: transparent;
}
.gp-main.gp-main-decision {
  grid-template-columns: 1fr;
  gap: 0;
}
.gp-main.gp-main-decision > .gp-section {
  grid-column: 1 / -1;
}
.gp-col-left, .gp-col-right { gap: 18px; }
.gp-after-main { display: grid; grid-template-columns: .72fr 1.28fr; gap: 0; margin-top: 0; border-bottom: 0px solid rgba(255,255,255,.075); }
.gp-after-main > .gp-section { min-width: 0; }
.gp-main > .gp-section,
.gp-main > .gp-info-card,
.gp-after-main > .gp-section { border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.gp-main > * + *, .gp-after-main > * + * { border-left: 0px solid rgba(255,255,255,.075); }
.gp-full-row { margin-top: 18px; }
.gp-decision-row { margin-top: 22px; }
.gp-media-row { margin-top: 30px; }
.gp-details-panel {
  margin-top: 34px;
}
.gp-details-panel > h2 {
  margin-bottom: 18px;
}
.gp-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
  gap: 18px;
}
.gp-detail-grid .gp-info-card {
  min-width: 0;
  margin: 0;
}
.gp-section, .gp-info-card {
  border: 0px solid rgba(255,255,255,.075);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(25,35,48,.72), rgba(16,24,35,.76));
  box-shadow: 0 18px 45px rgba(0,0,0,.16);
}
.gp-section { padding: 24px; }
.gp-section h2, .gp-info-card h2 { font-size: 16px; font-weight: 720; letter-spacing: -.01em; }
.gp-section > h2:first-child { margin-bottom: 18px; }
.gp-info-card { padding: 22px; }
.gp-deals { gap: 0; }
.gp-deal-card { padding: 12px 10px; transition: background-color .18s ease, border-color .18s ease, opacity .18s ease, box-shadow .18s ease; }
.gp-deal-card.gp-best {
  border-color: transparent;
  padding: 16px;
  margin: 0 0 7px;
  box-shadow: none;
}
.gp-deal-card.gp-disabled { opacity: .58; }
.gp-deal-card.gp-disabled:hover { opacity: .78; background: rgba(255,255,255,.025); }
.gp-deal-card.gp-disabled .gp-deal-shop { color: #b7bbc3; }
.gp-deal-card.gp-disabled .gp-deal-state { color: #747983; }
.gp-deal-card.gp-disabled .gp-shop-icon { filter: saturate(.55); }
.gp-deal-cta { display: inline-flex; align-items: center; gap: 6px; transition: color .18s ease, background-color .18s ease, border-color .18s ease; }
a.gp-deal-card:not(.gp-disabled):hover { background: rgba(255,255,255,.035); }
a.gp-deal-card:not(.gp-disabled):hover .gp-deal-cta { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.055); }
.gp-deal-card.gp-best:hover { box-shadow: 0 12px 34px rgba(255,122,69,.16); }
.gp-trailer-card { max-width: none; }
.gp-trailer-card img { aspect-ratio: 21/9; }
.gp-shots img { width: 32%; max-width: none; }
.gp-after-main .gp-trailer-card img,
.gp-after-main .gp-trailer-player,
.gp-after-main .gp-trailer-video,
.gp-after-main .gp-shots img { height: 320px; aspect-ratio: auto; box-shadow: inset 0 4px 0 rgb(0 0 0), 0 4px 20px rgb(14 14 14); }
.gp-vale-grid { flex-wrap: nowrap; }
.gp-about {
  margin-top: 18px;
  padding: 22px 0 0;
  border: 0;
  border-top: 0px solid rgba(255,255,255,.075);
  border-radius: 0;
  background: transparent;
      display: none;
}
.gp-about p { max-width: 980px; margin-bottom: 0; }
.gp-full-row .gp-section {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  padding-left: 0;
  padding-right: 0;
}
.gp-vale-card { background: transparent; }
@media (max-width: 980px) {
  .gp-hero { min-height: 360px; padding: 32px; }
  .gp-hero-content { gap: 24px; }
  .gp-main { grid-template-columns: 1fr; }
  .gp-after-main { grid-template-columns: 1fr; }
  .gp-col-right { grid-row: auto; }
  .gp-info-card { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 24px; }
  .gp-info-card h2 { grid-column: 1 / -1; }
  .gp-info-row { margin: 0; }
  .gp-main > * + *, .gp-after-main > * + * { border-left: 0; border-top: 0px solid rgba(255,255,255,.075); }
}
@media (max-width: 720px) {
  .topbar {
    width:calc(100% - 24px);
    grid-template-columns:1fr;
    gap:12px;
    align-items:stretch;
  }
  .topbar .logo,.topbar .nav-links,.topbar .search-wrap { justify-self:stretch; width:100%; }
  .topbar .nav-links { justify-content:center; }
  .gp-wrap { padding: 10px 12px 32px; }
  .gp-hero { min-height: 500px; padding: 24px 18px; align-items: flex-end; }
  .gp-hero-gradient {
    background:
      linear-gradient(0deg, rgba(5,10,17,.98) 0%, rgba(5,10,17,.75) 55%, rgba(5,10,17,.2) 100%);
  }
  .gp-hero-content { flex-direction: column; align-items: stretch; gap: 18px; }
  .gp-hero-price { min-width: 0; text-align: left; padding: 16px; }
  .gp-hero-price .gp-big { font-size: 30px; }
  .gp-section, .gp-info-card, .gp-about { padding: 17px; border-radius: 12px; }
  .gp-main { grid-template-columns: 1fr; }
  .gp-after-main { grid-template-columns: 1fr; margin-top: 12px; gap: 12px; }
  .gp-full-row { margin-top: 12px; }
  .gp-info-card { display: block; }
  .gp-req-columns { grid-template-columns: 1fr; }
  .gp-req-columns .gp-req-group + .gp-req-group { border-left: 0; border-top: 1px solid rgba(255,255,255,.07); padding-left: 0; padding-top: 14px; margin-top: 14px; }
  .gp-info-row { margin-bottom: 14px; }
  .gp-deal-card { flex-wrap: wrap; }
  .gp-deal-card.gp-best { padding: 14px; }
  .gp-deal-state { width: 100%; padding-left: 36px; white-space: normal; }
  .gp-deal-cta { margin-left: auto; }
  .gp-trust-bar { gap: 8px 14px; }
  .gp-shots img { width: 78%; }
  .gp-after-main .gp-trailer-card img,
  .gp-after-main .gp-trailer-player,
  .gp-after-main .gp-trailer-video,
  .gp-after-main .gp-shots img { height: auto; aspect-ratio: 16/9; }
  .gp-vale-grid { overflow-x: auto; }
  .gp-vale-card { min-width: 145px; }
  .gp-detail-page .topbar { width: calc(100% - 24px); }
  .gp-detail-page .home-main > .breadcrumb { top: 66px; width: calc(100% - 24px); }
  .gp-detail-page .gp-hero { min-height: 610px; padding: 126px 18px 24px; }
  .gp-detail-page .gp-main,
  .gp-detail-page .gp-after-main,
  .gp-detail-page .gp-full-row,
  .gp-detail-page .gp-details-panel,
  .gp-detail-page .gp-about { width: calc(100% - 24px); }
  .gp-detail-grid { grid-template-columns: 1fr; }
}


