/* Playhive — components (Cyber-Hive). */

/* Platform accent mapping (sets --pf) */
[data-pf="pc"]{--pf:var(--pc);}
[data-pf="ps3"],[data-pf="ps4"],[data-pf="ps5"],[data-pf="playstation"]{--pf:var(--playstation);}
[data-pf="nintendo"]{--pf:var(--nintendo);}
[data-pf="xbox"]{--pf:var(--xbox);}
[data-pf="steam"]{--pf:var(--steam);}
[data-pf="giftcards"]{--pf:var(--honey);}

/* ---------- Buttons ---------- */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:.6em;
  padding:.9em 1.45em; border-radius:var(--r-sm); font-weight:600; line-height:1;
  position:relative; overflow:hidden; white-space:nowrap; isolation:isolate;
  transition:transform var(--dur-1) var(--ease), background var(--dur-1), color var(--dur-1), box-shadow var(--dur-1), border-color var(--dur-1); }
.btn svg{ width:1.15em; height:1.15em; }
.btn--primary{ background:var(--honey); color:var(--on-honey); box-shadow:0 6px 20px -8px rgba(79,134,247,.5); }
.btn--primary:hover{ background:var(--honey-300); box-shadow:0 12px 36px -6px rgba(79,134,247,.8); }
.btn--primary:active{ transform:scale(.97); }
.btn--primary::after{ content:""; position:absolute; inset:0 auto 0 -60%; width:45%; transform:skewX(-20deg);
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.5),transparent); z-index:-1; }
.btn--primary:hover::after{ animation:shine .85s var(--ease); }
@keyframes shine{ to{ left:130%; } }
.btn--ghost{ border:1px solid var(--line-2); color:var(--text); }
.btn--ghost:hover{ border-color:var(--honey); color:var(--honey); background:rgba(79,134,247,.08); box-shadow:0 10px 28px -12px rgba(79,134,247,.55); }
.btn--lg{ padding:1.1em 1.9em; font-size:1.05rem; }
.btn--sm{ padding:.6em 1em; font-size:var(--fs-sm); }
.btn--block{ width:100%; }
.btn--text{ padding:0; color:var(--honey); gap:.4em; }
.btn--text span{ background:linear-gradient(var(--honey),var(--honey)) 0 100%/0 1px no-repeat; transition:background-size var(--dur-2) var(--ease); padding-bottom:2px; }
.btn--text:hover span{ background-size:100% 1px; }

.icon-btn{ width:42px; height:42px; display:grid; place-items:center; border-radius:var(--r-sm);
  border:1px solid transparent; color:var(--text-2); position:relative; transition:all var(--dur-1); }
.icon-btn:hover{ color:var(--honey); border-color:var(--line); background:var(--bg-2); }
.icon-btn svg{ width:21px; height:21px; }
.icon-btn[data-count]::after{ content:attr(data-count); position:absolute; top:2px; right:2px;
  min-width:17px; height:17px; padding:0 4px; border-radius:99px; background:var(--honey); color:var(--on-honey);
  font:700 11px/17px var(--font-mono); text-align:center; }

/* ---------- Tags / badges / chips ---------- */
.tag{ font-family:var(--font-mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.08em;
  padding:.4em .6em; border-radius:var(--r-xs); background:var(--bg-3); color:var(--text-2);
  display:inline-flex; align-items:center; gap:.45em; }
.tag--platform::before{ content:""; width:7px; height:7px; border-radius:2px; background:var(--pf,var(--honey)); box-shadow:0 0 8px var(--pf,var(--honey)); }
.chip{ display:inline-flex; align-items:center; gap:.4em; font:600 .72rem/1 var(--font-mono);
  color:var(--honey-100); background:rgba(79,134,247,.1); border:1px solid var(--line-honey);
  padding:.45em .6em; border-radius:var(--r-pill); }
.chip svg{ width:13px; height:13px; }
.badge-disc{ position:absolute; top:10px; right:10px; z-index:3; background:var(--sale); color:#fff;
  font:700 .8rem/1 var(--font-mono); padding:.45em .55em; border-radius:var(--r-xs); transform:rotate(0); box-shadow:0 4px 14px rgba(255,92,70,.4); }
.badge-new{ background:var(--success); color:#06301c; }
.badge-hot{ background:linear-gradient(120deg,var(--honey),var(--honey-600)); color:var(--on-honey); }
.pill-badge{ position:absolute; top:10px; right:10px; z-index:3; font:600 .65rem/1 var(--font-mono);
  text-transform:uppercase; letter-spacing:.1em; padding:.45em .6em; border-radius:var(--r-pill); }

/* ---------- Product card ---------- */
.card{ position:relative; background:var(--bg-2); border:1px solid var(--line); border-radius:var(--r);
  overflow:hidden; display:flex; flex-direction:column; will-change:transform;
  transition:transform var(--dur-2) var(--ease), border-color var(--dur-2), box-shadow var(--dur-2); }
.card:hover{ border-color:var(--line-honey); box-shadow:var(--glow-honey); }
.card__media{ position:relative; aspect-ratio:3/4; overflow:hidden; background:var(--bg-1); }
.card__media img{ width:100%; height:100%; object-fit:cover; transition:transform var(--dur-3) var(--ease); }
.card__cover{ position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end;
  padding:16px; transition:transform var(--dur-3) var(--ease);
  background:
    linear-gradient(165deg, color-mix(in srgb, var(--pf,var(--honey)) 26%, var(--bg-2)), var(--bg-1) 70%),
    var(--bg-2); }
.card__cover::before{ content:""; position:absolute; inset:0; opacity:.5; mix-blend-mode:overlay;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100' viewBox='0 0 56 100'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.35' stroke-width='1.5'%3E%3Cpath d='M28 0l24 14v28L28 56 4 42V14z'/%3E%3C/g%3E%3C/svg%3E"); background-size:38px 68px; }
.card__cover::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 40%,rgba(14,14,17,.75)); }
.card__cover .cov-pf{ position:relative; z-index:1; display:inline-flex; align-items:center; gap:6px; align-self:flex-start; font:700 .68rem/1 var(--font-mono); text-transform:uppercase;
  letter-spacing:.14em; color:var(--pf,var(--honey)); margin-bottom:auto; background:rgba(10,13,23,.5); padding:5px 9px; border-radius:var(--r-pill); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.card__cover .cov-pf img{ width:14px; height:14px; }
.card__cover .cov-title{ position:relative; z-index:1; font-family:var(--font-display); font-weight:700;
  font-size:1.45rem; line-height:1.02; letter-spacing:-.01em; color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.5); }
.card:hover .card__media img,.card:hover .card__cover{ transform:scale(1.06); }
.card__cover--img{ background:transparent; }
.card__cover--img::before{ display:none; }
.cov-title{ -webkit-line-clamp:3; -webkit-box-orient:vertical; display:-webkit-box; overflow:hidden; }
.cov-title a{ color:inherit; transition:color var(--dur-1); }
.card:hover .cov-title a{ color:var(--honey-100); }
.card__shine{ position:absolute; inset:0; z-index:2; pointer-events:none; background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.14) 50%,transparent 58%); transform:translateX(-120%); transition:transform .8s var(--ease); }
.card:hover .card__shine{ transform:translateX(120%); }
.card__fav{ position:absolute; bottom:10px; right:10px; z-index:4; width:34px; height:34px; border-radius:var(--r-sm);
  display:grid; place-items:center; background:rgba(14,14,17,.55); backdrop-filter:blur(6px); color:var(--text);
  border:1px solid var(--line); transition:all var(--dur-1); }
.card__fav:hover{ color:var(--sale); border-color:var(--sale); }
.card__fav.is-on{ color:var(--sale); }
.card__fav svg{ width:17px; height:17px; }
.card__add{ position:absolute; left:10px; right:10px; bottom:10px; z-index:4; transform:translateY(140%);
  opacity:0; transition:transform var(--dur-2) var(--ease), opacity var(--dur-2); }
.card:hover .card__add{ transform:translateY(0); opacity:1; }
.card__body{ padding:14px; display:flex; flex-direction:column; gap:9px; flex:1; }
.card__meta{ display:flex; align-items:center; gap:8px; }
.card__title{ font-weight:600; font-size:.98rem; line-height:1.25; color:var(--text);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.5em; }
.card__rating{ display:flex; align-items:center; gap:4px; font:600 .76rem/1 var(--font-mono); color:var(--honey-100); }
.card__rating svg{ width:13px; height:13px; color:var(--honey); }
.card__price{ margin-top:auto; display:flex; align-items:baseline; gap:8px; font-family:var(--font-mono); }
.price-now{ color:var(--honey); font-size:1.16rem; font-weight:700; }
.price-old{ color:var(--text-3); text-decoration:line-through; font-size:.85rem; }
@media (hover:none){ .card__add{ position:static; transform:none; opacity:1; margin-top:10px; } }

/* ---------- Category tiles (hive) ---------- */
.cat-hive{ display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
.cat-tile{ position:relative; width:clamp(132px,13.6vw,186px); aspect-ratio:1/1.1; overflow:hidden;
  border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-2);
  display:flex; align-items:flex-end; transition:transform var(--dur-2) var(--ease), border-color var(--dur-2); }
.cat-tile--hex{ border-radius:0; border-radius:14px; border:none; aspect-ratio:1/1.1547; }
.cat-tile img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.55; transition:all var(--dur-3) var(--ease); }
.cat-tile::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 30%,rgba(14,14,17,.9)); }
.cat-tile__body{ position:relative; z-index:1; padding:16px; width:100%; display:block; }
.cat-tile__name{ display:block; font-family:var(--font-display); font-weight:600; font-size:1.05rem; line-height:1.1; }
.cat-tile__blurb{ display:block; font:500 .68rem/1.3 var(--font-mono); color:var(--text-2); margin-top:5px; }
.cat-tile:not(.cat-tile--hex):hover{ transform:translateY(-6px); border-color:var(--line-honey); }
.cat-tile:hover img{ opacity:.8; transform:scale(1.08); }
.cat-tile__arrow{ position:absolute; top:16px; right:16px; z-index:1; width:34px; height:34px; border-radius:50%;
  display:grid; place-items:center; background:var(--honey); color:var(--on-honey); opacity:0; transform:scale(.6) rotate(-30deg); transition:all var(--dur-2) var(--ease); }
.cat-tile:hover .cat-tile__arrow{ opacity:1; transform:scale(1) rotate(0); }
@media (max-width:560px){ .cat-tile{ width:100%; aspect-ratio:2/1; } .cat-tile--hex{ clip-path:none; border-radius:var(--r-lg); aspect-ratio:2/1; } }

/* ---------- Header / nav ---------- */
.site-header{ position:fixed; inset:0 0 auto 0; z-index:100; height:var(--header-h);
  display:flex; align-items:center; transition:height var(--dur-2) var(--ease), background var(--dur-2), border-color var(--dur-2);
  background:rgba(14,14,17,.55); backdrop-filter:blur(14px); border-bottom:1px solid transparent; }
.site-header.scrolled{ height:64px; background:rgba(14,14,17,.9); border-bottom-color:var(--line); }
.nav-inner{ width:100%; max-width:1480px; margin-inline:auto; padding-inline:var(--gutter); display:flex; align-items:center; gap:var(--sp-5); }
.brand{ display:inline-flex; align-items:center; gap:10px; font-family:var(--font-display); font-weight:700; font-size:1.3rem; letter-spacing:-.02em; }
.brand__mark{ width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:linear-gradient(150deg,var(--honey),var(--honey-600)); color:var(--on-honey); font-weight:700; box-shadow:0 6px 18px -6px rgba(79,134,247,.6); }
.brand b{ color:var(--honey); }
.nav-links{ display:flex; align-items:center; gap:4px; margin-left:8px; }
.nav-links a{ padding:10px 14px; border-radius:var(--r-sm); font-weight:500; color:var(--text-2); position:relative; transition:color var(--dur-1); }
.nav-links a:hover,.nav-links a.active{ color:var(--text); }
.nav-links a::after{ content:""; position:absolute; left:14px; right:14px; bottom:6px; height:2px; background:var(--honey); transform:scaleX(0); transform-origin:left; transition:transform var(--dur-2) var(--ease); }
.nav-links a:hover::after,.nav-links a.active::after{ transform:scaleX(1); }
.nav-actions{ display:flex; align-items:center; gap:4px; margin-left:auto; }
.nav-actions .btn{ margin-left:8px; }
.region-pill{ display:inline-flex; align-items:center; gap:7px; font:600 .76rem/1 var(--font-mono); color:var(--text-2); padding:9px 12px; border:1px solid var(--line); border-radius:var(--r-sm); transition:all var(--dur-1); white-space:nowrap; }
.region-pill:hover{ color:var(--honey); border-color:var(--line-honey); }
.region-pill b{ color:var(--text); }

/* Trust + stats bar */
.statbar{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:18px 28px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); }
.statbar__trust{ display:flex; align-items:center; gap:12px; }
.statbar__items{ display:flex; gap:40px; flex-wrap:wrap; }
.statbar__items > div{ display:flex; flex-direction:column; }
.statbar__items b{ font-family:var(--font-display); font-size:1.55rem; line-height:1; color:var(--honey); }
.statbar__items span{ font:500 .7rem/1.2 var(--font-mono); text-transform:uppercase; letter-spacing:.08em; color:var(--text-2); margin-top:7px; }
@media (max-width:680px){ .statbar{ padding:18px; } .statbar__items{ gap:22px; } .statbar__items b{ font-size:1.25rem; } }

/* Mega menu */
.has-mega{ position:static; }
.mega{ position:absolute; left:0; right:0; top:100%; background:var(--bg-1); border-top:1px solid var(--line);
  border-bottom:1px solid var(--line); box-shadow:var(--shadow-soft); padding:32px 0;
  opacity:0; visibility:hidden; transform:translateY(8px); transition:all var(--dur-2) var(--ease); }
.has-mega:hover .mega,.mega:hover{ opacity:1; visibility:visible; transform:translateY(0); }
.mega-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.mega-col h4{ font:700 .72rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.14em; color:var(--honey); margin-bottom:14px; }
.mega-col a{ display:block; padding:7px 0; color:var(--text-2); transition:color var(--dur-1), padding var(--dur-1); }
.mega-col a:hover{ color:var(--text); padding-left:6px; }

/* Burger / mobile */
.burger{ display:none; width:42px; height:42px; place-items:center; color:var(--text); }
.burger span{ display:block; width:22px; height:2px; background:currentColor; position:relative; transition:all var(--dur-2) var(--ease); }
.burger span::before,.burger span::after{ content:""; position:absolute; left:0; width:22px; height:2px; background:currentColor; transition:all var(--dur-2) var(--ease); }
.burger span::before{ top:-7px; } .burger span::after{ top:7px; }
body.menu-open .burger span{ background:transparent; }
body.menu-open .burger span::before{ top:0; transform:rotate(45deg); }
body.menu-open .burger span::after{ top:0; transform:rotate(-45deg); }

.mobile-nav{ position:fixed; inset:0; z-index:95; background:var(--bg-0); padding:calc(var(--header-h) + 20px) var(--gutter) 40px;
  display:flex; flex-direction:column; gap:6px; transform:translateY(-100%); transition:transform var(--dur-3) var(--ease); overflow-y:auto; }
body.menu-open .mobile-nav{ transform:translateY(0); }
.mobile-nav a{ font-family:var(--font-display); font-weight:600; font-size:clamp(1.8rem,7vw,2.6rem); padding:10px 0; border-bottom:1px solid var(--line); color:var(--text); }
.mobile-nav a:hover{ color:var(--honey); }

/* Cart / search drawers */
.overlay{ position:fixed; inset:0; z-index:110; background:rgba(0,0,0,.6); opacity:0; visibility:hidden; transition:opacity var(--dur-2); }
.overlay.open{ opacity:1; visibility:visible; }
.drawer{ position:fixed; top:0; right:0; bottom:0; z-index:120; width:min(420px,92vw); background:var(--bg-1);
  border-left:1px solid var(--line); transform:translateX(100%); transition:transform var(--dur-3) var(--ease);
  display:flex; flex-direction:column; }
.drawer.open{ transform:translateX(0); }
.drawer__head{ display:flex; align-items:center; justify-content:space-between; padding:20px; border-bottom:1px solid var(--line); }
.drawer__body{ padding:20px; flex:1; overflow-y:auto; }
.drawer__empty{ text-align:center; color:var(--text-2); margin-top:60px; }
.searchbar{ position:fixed; top:0; left:0; right:0; z-index:120; background:var(--bg-1); border-bottom:1px solid var(--line);
  padding:16px var(--gutter); transform:translateY(-100%); transition:transform var(--dur-2) var(--ease); }
.searchbar.open{ transform:translateY(0); }
.searchbar input{ width:100%; max-width:var(--maxw); margin-inline:auto; display:block; background:transparent; border:none;
  font-family:var(--font-display); font-size:clamp(1.4rem,4vw,2.4rem); color:var(--text); padding:8px 0; }
.searchbar input::placeholder{ color:var(--text-3); }

/* ---------- Marquee ---------- */
.marquee{ overflow:hidden; border-block:1px solid var(--line); background:var(--bg-1); }
.marquee:hover .marquee__track{ animation-play-state:paused; }
.marquee__track{ display:flex; width:max-content; animation:scrollx 32s linear infinite; }
.marquee--rev .marquee__track{ animation-direction:reverse; }
@keyframes scrollx{ to{ transform:translateX(-50%); } }
.marquee__item{ display:inline-flex; align-items:center; gap:12px; padding:14px 0; margin-right:48px;
  font:600 .82rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.12em; color:var(--text-2); }
.marquee__item b{ color:var(--honey); }
.marquee__item .dot{ width:6px; height:6px; border-radius:2px; background:var(--honey); transform:rotate(45deg); }

/* ---------- Hero ---------- */
.hero{ position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; padding-top:var(--header-h); }
.hero__bg{ position:absolute; inset:0; z-index:0; }
.hero__bg img{ width:100%; height:100%; object-fit:cover; opacity:.42; }
.hero__bg::after{ content:""; position:absolute; inset:0; background:
  radial-gradient(70% 60% at 70% 35%, rgba(79,134,247,.16), transparent 60%),
  linear-gradient(90deg, var(--bg-0) 24%, transparent 70%),
  linear-gradient(180deg, transparent 55%, var(--bg-0)); }
.hero__inner{ position:relative; z-index:2; display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:center; width:100%; }
.hero__eyebrow{ margin-bottom:22px; }
.hero h1{ font-family:var(--font-display); font-weight:700; font-size:var(--fs-display); line-height:.95; letter-spacing:-.03em; }
.hero h1 .ln{ display:block; overflow:hidden; }
.hero h1 em{ font-style:normal; color:var(--honey); }
.hero__sub{ margin:26px 0 32px; max-width:46ch; font-size:1.1rem; color:var(--text-2); }
.hero__cta{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.hero__stats{ display:flex; gap:30px; margin-top:42px; flex-wrap:wrap; }
.hero__art{ position:relative; }
.hero__art img{ width:100%; filter:drop-shadow(0 30px 60px rgba(0,0,0,.6)); }
.hero__art--frame{ aspect-ratio:1/1; border-radius:var(--r-lg); overflow:hidden; border:1px solid var(--line-honey); box-shadow:var(--glow-honey); }
.hero__art--frame img{ height:100%; object-fit:cover; }
.float-hex{ position:absolute; border-radius:14px; background:linear-gradient(160deg,var(--honey),var(--honey-600)); opacity:.9; }
.scroll-cue{ position:absolute; left:50%; bottom:22px; transform:translateX(-50%); z-index:3; color:var(--text-3);
  font:600 .68rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.2em; display:flex; flex-direction:column; align-items:center; gap:10px; }
.scroll-cue .line{ width:1px; height:40px; background:linear-gradient(var(--honey),transparent); animation:cue 1.8s var(--ease) infinite; transform-origin:top; }
@keyframes cue{ 0%{ transform:scaleY(0); } 40%{ transform:scaleY(1);} 100%{ transform:scaleY(0); transform-origin:bottom; } }
@media (max-width:920px){ .hero__inner{ grid-template-columns:1fr; gap:30px; } .hero__art{ order:-1; max-width:420px; } }

/* ---------- Stats / counters ---------- */
.stat__num{ font-family:var(--font-display); font-weight:700; font-size:clamp(2rem,4vw,3.2rem); line-height:1; color:var(--honey); }
.stat__num .suffix{ color:var(--text); }
.stat__label{ font:500 .76rem/1.3 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:var(--text-2); margin-top:8px; }

/* ---------- Horizontal deal rail ---------- */
.rail{ display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:16px; scrollbar-width:thin; }
.rail > *{ flex:0 0 clamp(220px,24vw,272px); scroll-snap-align:start; }
.rail::-webkit-scrollbar{ height:8px; }

/* ---------- Feature blocks (why) ---------- */
.feature{ padding:26px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); transition:all var(--dur-2) var(--ease); position:relative; overflow:hidden; }
.feature:hover{ border-color:var(--line-honey); transform:translateY(-5px); }
.feature__ico{ width:50px; height:56px; display:grid; place-items:center; border-radius:14px; background:rgba(79,134,247,.12); color:var(--honey); margin-bottom:18px; }
.feature__ico svg{ width:24px; height:24px; }
.feature h3{ font-size:1.15rem; margin-bottom:8px; }

/* ---------- Spotlight band ---------- */
.spotlight{ position:relative; border-radius:var(--r-lg); overflow:hidden; border:1px solid var(--line); background:var(--bg-1); padding:clamp(28px,5vw,56px); }
.spotlight__bg{ position:absolute; inset:0; z-index:0; }
.spotlight__bg img{ width:100%; height:100%; object-fit:cover; opacity:.4; }
.spotlight__bg::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg,var(--bg-1),transparent 80%); }
.spotlight__in{ position:relative; z-index:1; max-width:54ch; }
.gc-row{ display:flex; gap:12px; flex-wrap:wrap; margin-top:22px; }
.gc-pill{ font-family:var(--font-mono); font-size:.78rem; padding:.55em .85em; border:1px solid var(--line-2); border-radius:var(--r-pill); color:var(--text-2); }
.gc-pill[data-pf]::before{ content:""; display:inline-block; width:7px; height:7px; border-radius:2px; margin-right:7px; background:var(--pf); vertical-align:middle; }

/* ---------- Countdown ---------- */
.countdown{ display:flex; gap:10px; }
.count-cell{ min-width:64px; text-align:center; padding:12px 8px; border:1px solid var(--line); border-radius:var(--r-sm); background:var(--bg-2); }
.count-cell b{ display:block; font:700 1.7rem/1 var(--font-mono); color:var(--text); font-variant-numeric:tabular-nums; }
.count-cell span{ font:500 .62rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.12em; color:var(--text-3); margin-top:6px; display:block; }

/* ---------- Accordion (FAQ) ---------- */
.faq-cat{ font:700 .72rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.16em; color:var(--honey); margin:36px 0 12px; }
.acc__item{ border-bottom:1px solid var(--line); }
.acc__q{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:20px; text-align:left;
  padding:22px 0; font-family:var(--font-display); font-weight:500; font-size:1.12rem; color:var(--text); }
.acc__q:hover{ color:var(--honey); }
.acc__ico{ flex:0 0 24px; width:24px; height:24px; position:relative; }
.acc__ico::before,.acc__ico::after{ content:""; position:absolute; top:50%; left:50%; width:13px; height:2px; background:var(--honey); transform:translate(-50%,-50%); transition:transform var(--dur-2) var(--ease); }
.acc__ico::after{ transform:translate(-50%,-50%) rotate(90deg); }
.acc__item.open .acc__ico::after{ transform:translate(-50%,-50%) rotate(0); }
.acc__a{ display:grid; grid-template-rows:0fr; transition:grid-template-rows var(--dur-2) var(--ease); }
.acc__item.open .acc__a{ grid-template-rows:1fr; }
.acc__a-in{ overflow:hidden; min-height:0; color:var(--text-2); max-width:72ch; }
.acc__a-in p{ margin:0; padding-bottom:22px; }

/* ---------- Forms ---------- */
.field{ display:flex; flex-direction:column; gap:8px; }
.field label{ font:600 .74rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:var(--text-2); }
.field input,.field textarea,.field select{ background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-sm);
  padding:14px 16px; color:var(--text); transition:border-color var(--dur-1), box-shadow var(--dur-1); }
.field input:focus,.field textarea:focus,.field select:focus{ outline:none; border-color:var(--honey); box-shadow:0 0 0 3px rgba(79,134,247,.15); }
.field textarea{ min-height:140px; resize:vertical; }
.form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
@media (max-width:600px){ .form-grid{ grid-template-columns:1fr; } }
.newsletter{ display:flex; gap:12px; max-width:480px; }
.newsletter input{ flex:1; background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-sm); padding:14px 16px; color:var(--text); }
.newsletter input:focus{ outline:none; border-color:var(--honey); }
@media (max-width:480px){ .newsletter{ flex-direction:column; } }

/* ---------- Filters / tabs / chips ---------- */
.tabs{ display:flex; gap:8px; flex-wrap:wrap; }
.tab{ padding:9px 16px; border-radius:var(--r-pill); border:1px solid var(--line-2); color:var(--text-2);
  font:600 .85rem/1 var(--font-body); transition:all var(--dur-1); }
.tab:hover{ color:var(--text); border-color:var(--line-honey); }
.tab.active{ background:var(--honey); color:var(--on-honey); border-color:var(--honey); }
.filter-bar{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; justify-content:space-between; margin-bottom:28px; }
.select{ position:relative; }
.select select{ appearance:none; background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-sm); padding:11px 40px 11px 14px; color:var(--text); font-family:var(--font-mono); font-size:.82rem; }
.select::after{ content:""; position:absolute; right:14px; top:50%; width:8px; height:8px; border-right:2px solid var(--text-2); border-bottom:2px solid var(--text-2); transform:translateY(-70%) rotate(45deg); pointer-events:none; }

/* ---------- Blog ---------- */
.post-card{ display:flex; flex-direction:column; border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden; background:var(--bg-1); transition:all var(--dur-2) var(--ease); }
.post-card:hover{ transform:translateY(-5px); border-color:var(--line-honey); }
.post-card__media{ aspect-ratio:16/10; overflow:hidden; background:var(--bg-2); }
.post-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform var(--dur-3) var(--ease); }
.post-card:hover .post-card__media img{ transform:scale(1.06); }
.post-card__body{ padding:20px; display:flex; flex-direction:column; gap:10px; flex:1; }
.post-card h3{ font-size:1.2rem; line-height:1.2; }
.post-meta{ display:flex; gap:12px; font:500 .72rem/1 var(--font-mono); color:var(--text-3); text-transform:uppercase; letter-spacing:.08em; flex-wrap:wrap; }
.split-2{ display:grid; grid-template-columns:1.3fr .9fr; gap:48px; align-items:start; }
@media (max-width:860px){ .split-2{ grid-template-columns:1fr; gap:32px; } }
.post-card--feat{ display:grid; grid-template-columns:1.1fr .9fr; align-items:stretch; }
.post-card--feat .post-card__media{ aspect-ratio:auto; min-height:340px; }
@media (max-width:760px){ .post-card--feat{ grid-template-columns:1fr; } .post-card--feat .post-card__media{ min-height:220px; } }

/* ---------- Breadcrumb / pagination ---------- */
.crumb{ display:flex; gap:8px; font:500 .8rem/1 var(--font-mono); color:var(--text-3); margin-bottom:18px; }
.crumb a:hover{ color:var(--honey); }
.pagination{ display:flex; gap:8px; justify-content:center; margin-top:48px; }
.pagination a{ width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--line-2); border-radius:var(--r-sm); color:var(--text-2); font-family:var(--font-mono); }
.pagination a.active,.pagination a:hover{ background:var(--honey); color:var(--on-honey); border-color:var(--honey); }

/* ---------- Page hero (interior) ---------- */
.page-hero{ padding-top:calc(var(--header-h) + 24px); padding-bottom:40px; position:relative; }
.page-hero h1{ font-size:clamp(2.4rem,6vw,4.5rem); }
.page-hero p{ max-width:54ch; margin-top:16px; font-size:1.1rem; }

/* ---------- Footer ---------- */
.site-footer{ background:var(--bg-1); border-top:1px solid var(--line); padding-top:64px; position:relative; }
.footer-top{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:48px; }
.footer-brand p{ max-width:34ch; margin:16px 0 20px; }
.footer-col h4{ font:700 .72rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.14em; color:var(--honey); margin-bottom:16px; }
.footer-col a{ display:block; padding:6px 0; color:var(--text-2); transition:all var(--dur-1); }
.footer-col a:hover{ color:var(--text); padding-left:5px; }
.pay-icons{ display:flex; gap:8px; flex-wrap:wrap; margin-top:8px; }
.pay-icons span{ height:30px; padding:0 10px; display:grid; place-items:center; border:1px solid var(--line); border-radius:6px; background:var(--bg-2); font:700 .62rem/1 var(--font-mono); color:var(--text-2); letter-spacing:.04em; }
.footer-bottom{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding:22px 0; border-top:1px solid var(--line); font-size:.85rem; color:var(--text-3); }
.socials{ display:flex; gap:10px; }
.socials a{ width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); border-radius:var(--r-sm); color:var(--text-2); transition:all var(--dur-1); }
.socials a:hover{ color:var(--honey); border-color:var(--line-honey); transform:translateY(-3px); }
@media (max-width:880px){ .footer-top{ grid-template-columns:1fr 1fr; gap:30px; } }
@media (max-width:520px){ .footer-top{ grid-template-columns:1fr; } }

/* ---------- Trust badge (Trustpilot-ish) ---------- */
.trust{ display:inline-flex; align-items:center; gap:10px; }
.trust__stars{ display:flex; gap:3px; }
.trust__stars i{ width:20px; height:20px; background:var(--success); display:grid; place-items:center; border-radius:3px; }
.trust__stars svg{ width:13px; height:13px; color:#06301c; }

/* ---------- Preloader ---------- */
.preloader{ position:fixed; inset:0; z-index:2000; background:var(--bg-0); display:grid; place-items:center; transition:transform .8s var(--ease), opacity .6s ease; }
.preloader.hide{ transform:translateY(-100%); opacity:0; pointer-events:none; }
.preloader.done{ pointer-events:none; }
.pre-hive{ display:flex; gap:6px; }
.pre-hive i{ width:26px; height:30px; border-radius:14px; background:var(--bg-3); animation:fillcell 1.1s var(--ease) infinite; }
.pre-hive i:nth-child(2){ animation-delay:.12s; } .pre-hive i:nth-child(3){ animation-delay:.24s; }
.pre-hive i:nth-child(4){ animation-delay:.36s; } .pre-hive i:nth-child(5){ animation-delay:.48s; }
@keyframes fillcell{ 0%,100%{ background:var(--bg-3); } 50%{ background:var(--honey); } }

/* ---------- Custom cursor ---------- */
.cursor-dot,.cursor-ring{ position:fixed; top:0; left:0; z-index:9999; pointer-events:none; border-radius:50%; mix-blend-mode:difference; }
.cursor-dot{ width:7px; height:7px; background:#fff; transform:translate(-50%,-50%); }
.cursor-ring{ width:36px; height:36px; border:1px solid rgba(255,255,255,.6); transform:translate(-50%,-50%); transition:width .2s,height .2s,border-color .2s; }
.cursor-ring{ display:grid; place-items:center; }
.cursor-ring.hover{ width:54px; height:54px; border-color:var(--honey); }
.cursor-ring.is-view{ width:88px; height:88px; background:var(--honey); border-color:var(--honey); mix-blend-mode:normal; }
.cursor-label{ font:700 .56rem/1 var(--font-mono); letter-spacing:.12em; text-transform:uppercase; color:var(--on-honey); opacity:0; transform:scale(.5); transition:opacity .18s, transform .18s; pointer-events:none; }
.cursor-ring.is-view .cursor-label{ opacity:1; transform:scale(1); }
.cursor-dot.is-view{ opacity:0; }
@media (hover:none){ .cursor-dot,.cursor-ring{ display:none; } }

/* ---------- 404 + legal prose ---------- */
.error-wrap{ min-height:100svh; display:grid; place-items:center; text-align:center; padding:120px var(--gutter) 60px; }
.error-code{ font-family:var(--font-display); font-weight:700; font-size:clamp(6rem,22vw,16rem); line-height:.8; color:var(--honey); }
.prose{ max-width:74ch; }
.prose h2{ margin:36px 0 12px; }
.prose h3{ margin:26px 0 10px; }
.prose p,.prose li{ color:var(--text-2); margin-bottom:14px; }
.prose ul{ list-style:disc; padding-left:22px; }
.prose a{ color:var(--honey); text-decoration:underline; }
.note{ padding:16px 18px; border-left:3px solid var(--honey); background:var(--bg-1); border-radius:0 var(--r-sm) var(--r-sm) 0; color:var(--text-2); }

/* ---------- Product page ---------- */
.pdp{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.pdp__media{ position:relative; aspect-ratio:3/4; border-radius:var(--r-lg); overflow:hidden; border:1px solid var(--line); }
.pdp__price{ display:flex; align-items:baseline; gap:14px; font-family:var(--font-mono); margin:18px 0; }
.pdp__price .price-now{ font-size:2.2rem; }
.pdp__row{ display:flex; gap:10px; flex-wrap:wrap; margin:14px 0; }
.redeem-steps{ counter-reset:step; display:grid; gap:14px; margin-top:16px; }
.redeem-steps li{ counter-increment:step; position:relative; padding:16px 16px 16px 60px; border:1px solid var(--line); border-radius:var(--r-sm); background:var(--bg-1); color:var(--text-2); }
.redeem-steps li::before{ content:counter(step); position:absolute; left:14px; top:14px; width:32px; height:36px; border-radius:14px; background:var(--honey); color:var(--on-honey); display:grid; place-items:center; font:700 .9rem/1 var(--font-mono); }
@media (max-width:860px){ .pdp{ grid-template-columns:1fr; gap:28px; } .pdp__media{ max-width:380px; } }

/* responsive nav */
@media (max-width:1024px){
  .nav-links,.has-mega,.nav-actions .btn,#wishCount,.region-pill,.nav-actions a[aria-label="Account"]{ display:none; }
  .burger{ display:grid; }
}

/* ============================================================
   GameBoost-style homepage sections
   ============================================================ */

/* Centered hero */
.hero--center{ min-height:94svh; text-align:center; }
.hero--center .hero__bg img{ opacity:.34; object-position:center; }
.hero--center .hero__bg::after{ background:
  radial-gradient(60% 50% at 50% 38%, rgba(79,134,247,.16), transparent 62%),
  radial-gradient(120% 90% at 50% 0%, transparent, var(--bg-0) 78%),
  linear-gradient(180deg, rgba(14,14,17,.5), transparent 30%, var(--bg-0)); }
.hero__center{ position:relative; z-index:2; max-width:940px; margin-inline:auto; display:flex; flex-direction:column; align-items:center; }
.hero__center h1{ font-family:var(--font-display); font-weight:700; font-size:clamp(2.6rem,6.4vw,5.5rem); line-height:.98; letter-spacing:-.03em; }
.hero__center h1 em{ font-style:normal; color:var(--honey); }
.hero__center .hero__sub{ margin:22px 0 6px; font-size:1.1rem; color:var(--text-2); }
.hero-search{ width:100%; max-width:680px; display:flex; gap:8px; align-items:center; margin:26px auto 0;
  background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-pill); padding:8px 8px 8px 20px; box-shadow:var(--shadow-soft); }
.hero-search:focus-within{ border-color:var(--honey); box-shadow:0 0 0 3px rgba(79,134,247,.15); }
.hero-search svg{ width:20px; height:20px; color:var(--text-3); flex:none; }
.hero-search input{ flex:1; background:transparent; border:none; color:var(--text); font-size:1rem; padding:8px 0; }
.hero-search input::placeholder{ color:var(--text-3); }
.hero-search .btn{ border-radius:var(--r-pill); flex:none; }
.quick-cats{ display:flex; gap:12px; flex-wrap:wrap; justify-content:center; margin-top:26px; }
.quick-cat{ display:flex; flex-direction:column; align-items:center; gap:9px; width:90px; padding:14px 8px;
  border:1px solid var(--line); border-radius:var(--r); background:rgba(255,255,255,.02);
  font:600 .68rem/1 var(--font-mono); color:var(--text-2); text-transform:uppercase; letter-spacing:.06em;
  transition:transform var(--dur-1) var(--ease), border-color var(--dur-1), color var(--dur-1); }
.quick-cat:hover{ transform:translateY(-5px); border-color:var(--line-honey); color:var(--honey); }
.quick-cat__ico{ width:42px; height:47px; border-radius:14px; background:rgba(79,134,247,.12); color:var(--honey); display:grid; place-items:center; }
.quick-cat:hover .quick-cat__ico{ background:var(--honey); color:var(--on-honey); }
.quick-cat__ico svg{ width:20px; height:20px; }
.hero__trustline{ display:flex; gap:16px; align-items:center; justify-content:center; flex-wrap:wrap;
  margin-top:28px; font:500 .82rem/1 var(--font-mono); color:var(--text-2); }
.hero__trustline .sep{ width:4px; height:4px; border-radius:50%; background:var(--text-3); }
@media (max-width:560px){ .quick-cat{ width:calc(33.333% - 8px); } }

/* How it works — steps */
.steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; counter-reset:s; }
.step{ position:relative; padding:30px 26px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); overflow:hidden; transition:border-color var(--dur-2), transform var(--dur-2) var(--ease); }
.step:hover{ border-color:var(--line-honey); transform:translateY(-4px); }
.step__num{ width:48px; height:54px; border-radius:14px; background:var(--honey); color:var(--on-honey);
  display:grid; place-items:center; font:700 1.2rem/1 var(--font-display); margin-bottom:18px; }
.step h3{ font-size:1.2rem; margin-bottom:8px; }
.step__line{ position:absolute; top:54px; right:-12px; width:24px; height:1px; background:var(--line-2); }
@media (max-width:780px){ .steps{ grid-template-columns:1fr; } }

/* Bento why-us */
.bento{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.bento .feature{ margin:0; }
.bento .feature--wide{ grid-column:span 2; }
.feature--accent{ background:linear-gradient(150deg, var(--honey-900), var(--bg-1) 70%); border-color:var(--line-honey); }
.feature--accent .feature__ico{ background:var(--honey); color:var(--on-honey); }
.feature__big{ font-family:var(--font-display); font-weight:700; font-size:clamp(1.8rem,3vw,2.6rem); color:var(--honey); line-height:1; margin-bottom:10px; }
@media (max-width:900px){ .bento{ grid-template-columns:repeat(2,1fr); } .bento .feature--wide{ grid-column:span 2; } }
@media (max-width:560px){ .bento{ grid-template-columns:1fr; } .bento .feature--wide{ grid-column:span 1; } }

/* Reviews */
.review{ flex:0 0 clamp(280px,32vw,360px); scroll-snap-align:start; padding:24px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); display:flex; flex-direction:column; gap:14px; }
.review__head{ display:flex; align-items:center; gap:12px; }
.review__head img{ width:46px; height:46px; border-radius:50%; object-fit:cover; background:var(--bg-3); }
.review__name{ font-weight:600; }
.review__loc{ font:500 .72rem/1.2 var(--font-mono); color:var(--text-3); display:flex; align-items:center; gap:5px; }
.review__stars{ display:flex; gap:3px; color:var(--honey); }
.review__stars svg{ width:16px; height:16px; }
.review p{ color:var(--text-2); flex:1; }
.review__verified{ margin-left:auto; display:inline-flex; align-items:center; gap:5px; font:600 .68rem/1 var(--font-mono); color:var(--success); text-transform:uppercase; letter-spacing:.06em; }

/* In numbers */
.numbers{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.num-card{ position:relative; padding:28px 24px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); overflow:hidden; }
.num-card--accent{ background:linear-gradient(150deg, var(--honey), var(--honey-600)); border-color:var(--honey); color:var(--on-honey); }
.num-card__ico{ width:42px; height:47px; border-radius:14px; background:rgba(79,134,247,.14); color:var(--honey); display:grid; place-items:center; margin-bottom:18px; }
.num-card--accent .num-card__ico{ background:rgba(0,0,0,.18); color:var(--on-honey); }
.num-card b{ display:block; font-family:var(--font-display); font-weight:700; font-size:clamp(1.8rem,3vw,2.6rem); line-height:1; color:var(--honey); }
.num-card--accent b{ color:var(--on-honey); }
.num-card__label{ font-weight:600; margin-top:6px; }
.num-card small{ display:block; margin-top:12px; color:var(--text-2); font-size:.85rem; }
.num-card--accent small{ color:rgba(22,19,10,.8); }
@media (max-width:860px){ .numbers{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:480px){ .numbers{ grid-template-columns:1fr; } }

/* Pre-footer CTA band */
.cta-band{ position:relative; border-radius:var(--r-lg); overflow:hidden; border:1px solid var(--line-honey);
  padding:clamp(40px,7vw,84px) clamp(24px,5vw,60px); text-align:center; }
.cta-band__bg{ position:absolute; inset:0; z-index:0; }
.cta-band__bg img{ width:100%; height:100%; object-fit:cover; opacity:.5; }
.cta-band__bg::after{ content:""; position:absolute; inset:0; background:
  radial-gradient(70% 80% at 50% 50%, rgba(79,134,247,.2), transparent 70%),
  linear-gradient(180deg, rgba(14,14,17,.7), rgba(14,14,17,.85)); }
.cta-band__in{ position:relative; z-index:1; max-width:640px; margin-inline:auto; }
.cta-band h2{ font-size:clamp(2rem,4vw,3.2rem); }

/* Mega footer additions */
.footer-help{ display:flex; flex-direction:column; gap:10px; }
.footer-help .btn{ justify-content:flex-start; }
.footer-dir{ padding:34px 0; border-top:1px solid var(--line); }
.footer-dir__grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:24px 20px; }
.footer-dir__col h5{ display:flex; align-items:center; gap:7px; font:700 .76rem/1.2 var(--font-body); color:var(--text); margin-bottom:10px; }
.footer-dir__col h5 .dot{ width:8px; height:8px; border-radius:2px; background:var(--pf,var(--honey)); }
.footer-dir__col a{ display:block; padding:4px 0; font-size:.8rem; color:var(--text-3); transition:color var(--dur-1); }
.footer-dir__col a:hover{ color:var(--honey); }
@media (max-width:980px){ .footer-dir__grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:560px){ .footer-dir__grid{ grid-template-columns:repeat(2,1fr); } }

/* ===== Stronger two-tier header ===== */
.site-header{ height:auto; display:block; background:transparent; -webkit-backdrop-filter:none; backdrop-filter:none; border-bottom:0; }
.hdr-top{ background:var(--bg-1); border-bottom:1px solid var(--line); }
.hdr-top .nav-inner{ height:38px; display:flex; align-items:center; justify-content:space-between; font:600 .72rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.07em; color:var(--text-2); }
.hdr-top__l{ display:flex; gap:20px; flex-wrap:wrap; }
.hdr-top__l span{ display:inline-flex; align-items:center; gap:7px; }
.hdr-top__r{ display:flex; align-items:center; gap:14px; }
.hdr-top a{ color:var(--text-2); transition:color var(--dur-1); }
.hdr-top a:hover{ color:var(--honey); }
.hdr-main{ background:rgba(10,13,23,.82); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); border-bottom:1px solid var(--line); }
.hdr-main .nav-inner{ height:70px; display:flex; align-items:center; gap:22px; }
.hdr-main .brand{ font-size:1.4rem; }
.hdr-search{ flex:1; max-width:440px; display:flex; align-items:center; gap:10px; background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-pill); padding:10px 18px; transition:border-color var(--dur-1), box-shadow var(--dur-1); }
.hdr-search:focus-within{ border-color:var(--honey); box-shadow:0 0 0 3px rgba(79,134,247,.18); }
.hdr-search svg{ width:18px; height:18px; color:var(--text-3); flex:none; }
.hdr-search input{ flex:1; background:transparent; border:0; color:var(--text); font-size:.95rem; }
.hdr-search input::placeholder{ color:var(--text-3); }
.hdr-sub{ background:rgba(10,13,23,.55); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); }
.hdr-sub .nav-inner{ height:48px; display:flex; align-items:center; gap:4px; overflow-x:auto; scrollbar-width:none; }
.hdr-sub .nav-inner::-webkit-scrollbar{ display:none; }
.hdr-sub a{ padding:8px 15px; border-radius:var(--r-pill); font:600 .84rem/1 var(--font-body); color:var(--text-2); white-space:nowrap; transition:all var(--dur-1); }
.hdr-sub a:hover{ color:var(--text); background:var(--bg-2); }
.hdr-sub a.hot{ color:var(--honey); }
.hdr-sub a.hot:hover{ background:rgba(79,134,247,.12); }
.site-header.scrolled .hdr-top, .site-header.scrolled .hdr-sub{ display:none; }
.site-header.scrolled .hdr-main .nav-inner{ height:62px; }
.cursor-dot.is-hidden,.cursor-ring.is-hidden{ opacity:0 !important; }
@media (max-width:1024px){ .hdr-top, .hdr-sub{ display:none; } .hdr-main .nav-inner{ height:64px; } }

/* ===== Richer product card bits ===== */
.card__meta{ justify-content:space-between; }
.card__rating em{ font-style:normal; color:var(--text-3); font-weight:400; }
.chip--xs{ padding:.32em .55em; font-size:.62rem; }
.price-off{ font:700 .7rem/1 var(--font-mono); color:var(--sale); background:rgba(255,92,114,.12); padding:.24em .42em; border-radius:var(--r-xs); }
.card__foot{ display:flex; align-items:center; gap:8px; }
.card__urg{ font:600 .68rem/1 var(--font-mono); color:#FFB36B; }

/* ===== Live "just bought" toast ===== */
.buy-toast{ position:fixed; left:18px; bottom:18px; z-index:1200; max-width:330px;
  display:flex; align-items:center; gap:12px; padding:12px 16px 12px 14px;
  background:rgba(16,19,31,.92); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border:1px solid var(--line-2); border-radius:var(--r); box-shadow:var(--shadow-soft);
  transform:translateY(150%); opacity:0; transition:transform .5s var(--ease), opacity .5s var(--ease); pointer-events:none; }
.buy-toast.show{ transform:translateY(0); opacity:1; }
.buy-toast__dot{ width:9px; height:9px; border-radius:50%; background:var(--success); box-shadow:0 0 10px var(--success); flex:none; animation:pulseDot 1.6s ease-in-out infinite; }
.buy-toast__msg{ font-size:.82rem; color:var(--text-2); line-height:1.35; }
.buy-toast__msg b{ color:var(--text); }
.buy-toast__t{ display:block; margin-top:3px; font:600 .64rem/1 var(--font-mono); color:var(--text-3); text-transform:uppercase; letter-spacing:.05em; }
@media (max-width:560px){ .buy-toast{ left:10px; right:10px; bottom:10px; max-width:none; } }

/* ===== Scroll progress bar ===== */
.scroll-prog{ position:fixed; top:0; left:0; height:3px; width:0; z-index:1300; pointer-events:none;
  background:linear-gradient(90deg,var(--honey),var(--honey-300)); box-shadow:0 0 12px rgba(79,134,247,.7); transition:width .1s linear; }

/* ===== Cursor v2 (clean blue, no blend) ===== */
.cursor-dot,.cursor-ring{ mix-blend-mode:normal; }
.cursor-dot{ width:6px; height:6px; background:var(--honey); box-shadow:0 0 8px rgba(79,134,247,.9); }
.cursor-ring{ width:34px; height:34px; border:1.5px solid rgba(79,134,247,.5); transition:width .22s var(--ease), height .22s var(--ease), border-color .22s, background .22s; }
.cursor-ring.hover{ width:52px; height:52px; border-color:var(--honey); background:rgba(79,134,247,.1); }
.cursor-ring.is-view{ width:84px; height:84px; background:var(--honey); border-color:var(--honey); }
.cursor-label{ color:var(--on-honey); }

/* ===== Card v2: clean hover add-to-cart, repositioned badges ===== */
.card__cover .cov-pf{ margin-bottom:8px; }
.badge-disc{ left:10px; right:auto; }
.pill-badge{ left:10px; right:auto; }
.card__fav{ top:10px; bottom:auto; right:10px; }
.card__add{ left:0; right:0; bottom:0; padding:46px 14px 14px; background:linear-gradient(180deg,transparent,rgba(8,11,20,.97) 44%); transform:translateY(101%); }
.card:hover .card__add{ transform:translateY(0); opacity:1; }

/* ===== Generic page-hero background image ===== */
.page-hero__bg{ position:absolute; inset:0; z-index:0; overflow:hidden; }
.page-hero__bg img{ width:100%; height:100%; object-fit:cover; opacity:.28; }
.page-hero__bg::after{ content:""; position:absolute; inset:0; background:radial-gradient(60% 60% at 28% 30%, rgba(79,134,247,.16), transparent 60%), linear-gradient(180deg, rgba(10,13,23,.42), var(--bg-0)); }
.page-hero > .wrap{ position:relative; z-index:1; }

/* ===== Empty state ===== */
.empty-state{ text-align:center; padding:60px 20px; }
.empty-state__ico{ font-size:3.4rem; }
.empty-state h2{ margin:14px 0 8px; }
.empty-state p{ max-width:42ch; margin:0 auto 24px; }
.feature__ico{ font-size:1.5rem; }

/* ===== Mystery box ===== */
.mtiers{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:28px; }
.mtier{ position:relative; text-align:left; display:flex; flex-direction:column; gap:5px; padding:22px; border:1px solid var(--line-2); border-radius:var(--r-lg); background:var(--bg-1); cursor:pointer; transition:border-color var(--dur-2), background var(--dur-2), transform var(--dur-2) var(--ease); }
.mtier:hover{ transform:translateY(-4px); border-color:var(--line-honey); }
.mtier.active{ border-color:var(--honey); background:linear-gradient(150deg, var(--honey-900), var(--bg-1) 70%); box-shadow:var(--glow-honey); }
.mtier__tag{ font:700 .72rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.14em; color:var(--honey); }
.mtier__price{ font-family:var(--font-display); font-weight:700; font-size:1.9rem; }
.mtier__desc{ color:var(--text-2); font-size:.9rem; }
.mtier__hot{ position:absolute; top:14px; right:14px; font:700 .58rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.08em; color:var(--on-honey); background:var(--honey); padding:.45em .6em; border-radius:var(--r-pill); }
.mystery{ position:relative; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); padding:clamp(20px,3vw,36px); overflow:hidden; }
.mystery__reel-wrap{ position:relative; overflow:hidden; border:1px solid var(--line); border-radius:var(--r); background:var(--bg-0); min-height:220px; display:flex; align-items:center; }
.mystery__reel{ display:flex; gap:14px; padding:14px; will-change:transform; }
.mystery__reel:empty{ width:100%; justify-content:center; }
.mystery__reel:empty::before{ content:"Press “Open the box” to reveal your game"; color:var(--text-3); font-family:var(--font-mono); font-size:.85rem; padding:90px 16px; text-align:center; }
.reel__item{ flex:0 0 150px; aspect-ratio:3/4; border-radius:var(--r); overflow:hidden; background:var(--bg-2); border:1px solid var(--line); }
.reel__item img{ width:100%; height:100%; object-fit:cover; }
.mystery__marker{ position:absolute; top:0; bottom:0; left:50%; width:3px; transform:translateX(-50%); background:linear-gradient(var(--honey),transparent,var(--honey)); box-shadow:0 0 16px var(--honey); z-index:2; pointer-events:none; }
.mystery__marker::before,.mystery__marker::after{ content:""; position:absolute; left:50%; transform:translateX(-50%); border:8px solid transparent; }
.mystery__marker::before{ top:-2px; border-top-color:var(--honey); }
.mystery__marker::after{ bottom:-2px; border-bottom-color:var(--honey); }
.mystery__cta{ display:flex; flex-direction:column; align-items:center; gap:12px; margin-top:24px; }
.mystery__hint{ font:600 .7rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.08em; color:var(--text-3); }
.mresult{ display:grid; grid-template-columns:auto 1fr; gap:24px; align-items:center; margin-top:26px; padding:22px; border:1px solid var(--line-honey); border-radius:var(--r-lg); background:linear-gradient(150deg,var(--honey-900),var(--bg-1) 70%); }
.mresult__card{ width:150px; aspect-ratio:3/4; border-radius:var(--r); overflow:hidden; background:var(--bg-2); }
.mresult__card img{ width:100%; height:100%; object-fit:cover; }
.mresult__info h3{ font-family:var(--font-display); font-weight:700; font-size:clamp(1.5rem,2.6vw,2.2rem); margin:4px 0 6px; }
.mresult__info p{ display:flex; align-items:center; gap:7px; }
.mresult__info p img{ width:15px; height:15px; }
.confetti{ position:absolute; bottom:42%; width:9px; height:9px; border-radius:2px; z-index:5; pointer-events:none; animation:confetti 1.2s ease-out forwards; }
@keyframes confetti{ to{ transform:translate(var(--dx),var(--dy)) rotate(420deg); opacity:0; } }
@media (max-width:680px){ .mtiers{ grid-template-columns:1fr; } .mresult{ grid-template-columns:1fr; text-align:center; } .mresult__card{ margin-inline:auto; } }

/* ===== Rewards tiers ===== */
.rtiers{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:start; }
.rtier{ position:relative; padding:28px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); }
.rtier--accent{ background:linear-gradient(150deg,var(--honey-900),var(--bg-1) 66%); border-color:var(--line-honey); box-shadow:var(--glow-honey); }
.rtier__ico{ font-size:2.4rem; }
.rtier h3{ font-family:var(--font-display); font-weight:700; font-size:1.5rem; margin:8px 0 2px; }
.rtier__pts{ font:700 .74rem/1 var(--font-mono); color:var(--honey); text-transform:uppercase; letter-spacing:.08em; }
.rtier__perks{ margin-top:16px; display:flex; flex-direction:column; gap:10px; }
.rtier__perks li{ position:relative; padding-left:24px; color:var(--text-2); }
.rtier__perks li::before{ content:"✓"; position:absolute; left:0; color:var(--honey); font-weight:700; }
.rtier__flag{ position:absolute; top:-11px; left:50%; transform:translateX(-50%); font:700 .6rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:var(--on-honey); background:var(--honey); padding:.5em .8em; border-radius:var(--r-pill); white-space:nowrap; }
@media (max-width:760px){ .rtiers{ grid-template-columns:1fr; } }
.mresult[hidden]{ display:none; }

/* ===== Shop: cockpit control panel ===== */
.shop-hero{ padding-bottom:22px; }
.shop-stats{ display:flex; flex-wrap:wrap; gap:14px; margin-top:26px; }
.shop-stat{ flex:1; min-width:130px; display:flex; flex-direction:column; gap:5px; padding:14px 18px; border:1px solid var(--line); border-radius:var(--r); background:var(--bg-1); }
.shop-stat b{ font-family:var(--font-display); font-weight:700; font-size:1.7rem; line-height:1; color:var(--honey); font-variant-numeric:tabular-nums; }
.shop-stat span{ font:500 .68rem/1.2 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:var(--text-2); }

.shop-layout{ display:grid; grid-template-columns:282px 1fr; gap:28px; align-items:start; }
.shop-main{ min-width:0; }

.filters{ position:sticky; top:calc(var(--header-h) + 14px); display:flex; flex-direction:column; gap:22px; padding:20px; border:1px solid var(--line); border-radius:var(--r-lg); background:linear-gradient(180deg,var(--bg-1),var(--bg-0)); max-height:calc(100vh - var(--header-h) - 28px); overflow:auto; }
.filters__head{ display:flex; align-items:center; justify-content:space-between; padding-bottom:14px; border-bottom:1px dashed var(--line-2); }
.panel-tag{ display:inline-flex; align-items:center; gap:8px; font:700 .68rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.16em; color:var(--honey); }
.panel-tag i{ width:7px; height:7px; border-radius:2px; background:var(--honey); box-shadow:0 0 10px var(--honey); animation:blink 1.8s steps(1) infinite; }
@keyframes blink{ 50%{ opacity:.25; } }
.filters__reset{ font:600 .72rem/1 var(--font-mono); color:var(--text-3); text-transform:uppercase; letter-spacing:.08em; transition:color var(--dur-1); }
.filters__reset:hover{ color:var(--sale); }

.fgroup{ display:flex; flex-direction:column; gap:10px; }
.fgroup__title{ display:flex; align-items:center; justify-content:space-between; font:600 .7rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.12em; color:var(--text-3); }
.readout{ font:700 .78rem/1 var(--font-mono); color:var(--honey); background:rgba(79,134,247,.1); border:1px solid var(--line-honey); padding:3px 8px; border-radius:var(--r-xs); }
.fgroup--scroll .fchecks{ max-height:220px; overflow:auto; padding-right:4px; }

.fsearch{ position:relative; display:flex; align-items:center; }
.fsearch svg{ position:absolute; left:12px; width:16px; height:16px; color:var(--text-3); pointer-events:none; }
.fsearch input{ width:100%; background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-sm); padding:11px 12px 11px 36px; color:var(--text); font-size:.9rem; transition:border-color var(--dur-1), box-shadow var(--dur-1); }
.fsearch input:focus{ outline:none; border-color:var(--honey); box-shadow:0 0 0 3px rgba(79,134,247,.15); }

.fradios{ display:flex; flex-direction:column; gap:2px; }
.fchecks{ display:flex; flex-direction:column; gap:2px; }
.fradio,.fcheck{ position:relative; display:flex; align-items:center; gap:10px; padding:7px 8px; border-radius:var(--r-sm); cursor:pointer; transition:background var(--dur-1); }
.fradio:hover,.fcheck:hover{ background:var(--bg-2); }
.fradio input,.fcheck input,.ftoggle input{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.fradio__dot{ width:15px; height:15px; border-radius:50%; border:2px solid var(--line-2); flex:none; transition:all var(--dur-1); }
.fradio input:checked ~ .fradio__dot{ border-color:var(--honey); background:radial-gradient(circle, var(--honey) 38%, transparent 42%); box-shadow:0 0 8px rgba(79,134,247,.6); }
.fradio__name,.fcheck__name{ flex:1; font-size:.9rem; color:var(--text); }
.fradio input:checked ~ .fradio__name,.fcheck input:checked ~ .fcheck__name{ color:#fff; font-weight:600; }
.fradio__n,.fcheck__n{ font:600 .68rem/1 var(--font-mono); color:var(--text-3); background:var(--bg-2); padding:3px 7px; border-radius:var(--r-pill); }
.fcheck__box{ width:16px; height:16px; border-radius:5px; border:2px solid var(--line-2); flex:none; position:relative; transition:all var(--dur-1); }
.fcheck input:checked ~ .fcheck__box{ border-color:var(--honey); background:var(--honey); }
.fcheck input:checked ~ .fcheck__box::after{ content:""; position:absolute; left:4px; top:1px; width:4px; height:8px; border:2px solid var(--on-honey); border-top:0; border-left:0; transform:rotate(45deg); }

.fslider{ -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:99px; background:linear-gradient(90deg, var(--honey) var(--fill,100%), var(--bg-3) var(--fill,100%)); outline:none; }
.fslider::-webkit-slider-thumb{ -webkit-appearance:none; width:18px; height:18px; border-radius:50%; background:#fff; border:3px solid var(--honey); cursor:pointer; box-shadow:0 0 12px rgba(79,134,247,.7); transition:transform var(--dur-1); }
.fslider::-webkit-slider-thumb:hover{ transform:scale(1.15); }
.fslider::-moz-range-thumb{ width:16px; height:16px; border-radius:50%; background:#fff; border:3px solid var(--honey); cursor:pointer; }
.fslider__scale{ display:flex; justify-content:space-between; font:500 .66rem/1 var(--font-mono); color:var(--text-3); }

.ftoggle{ position:relative; display:flex; align-items:center; gap:11px; padding:5px 0; cursor:pointer; }
.ftoggle__ui{ width:38px; height:22px; border-radius:99px; background:var(--bg-3); border:1px solid var(--line-2); position:relative; flex:none; transition:background var(--dur-1), border-color var(--dur-1); }
.ftoggle__ui::after{ content:""; position:absolute; top:2px; left:2px; width:16px; height:16px; border-radius:50%; background:var(--text-2); transition:transform var(--dur-1), background var(--dur-1); }
.ftoggle input:checked ~ .ftoggle__ui{ background:var(--honey); border-color:var(--honey); }
.ftoggle input:checked ~ .ftoggle__ui::after{ transform:translateX(16px); background:var(--on-honey); }
.ftoggle__lbl{ font-size:.9rem; color:var(--text); }
.ftoggle input:focus-visible ~ .ftoggle__ui{ box-shadow:0 0 0 3px rgba(79,134,247,.25); }

.cmdbar{ position:sticky; top:calc(var(--header-h) + 8px); z-index:5; display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:22px; padding:12px 16px; border:1px solid var(--line); border-radius:var(--r-lg); background:color-mix(in srgb, var(--bg-1) 90%, transparent); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); }
.cmdbar__count{ display:flex; align-items:baseline; gap:6px; }
.cmdbar__count b{ font-family:var(--font-display); font-weight:700; font-size:1.5rem; line-height:1; color:var(--honey); font-variant-numeric:tabular-nums; }
.cmdbar__count span{ font:500 .68rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:var(--text-3); }
.cmdbar__chips{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; flex:1; min-width:0; }
.cmdbar__none{ font:500 .72rem/1 var(--font-mono); color:var(--text-3); text-transform:uppercase; letter-spacing:.08em; }
.cmdbar__right{ display:flex; align-items:center; gap:10px; margin-left:auto; }
.fchip{ display:inline-flex; align-items:center; gap:7px; font:600 .74rem/1 var(--font-mono); color:var(--honey-100); background:rgba(79,134,247,.1); border:1px solid var(--line-honey); padding:6px 10px; border-radius:var(--r-pill); transition:all var(--dur-1); }
.fchip i{ font-style:normal; font-size:1rem; line-height:1; color:var(--text-2); }
.fchip:hover{ border-color:var(--sale); color:#fff; }
.fchip:hover i{ color:var(--sale); }

.density{ display:flex; gap:3px; padding:3px; border:1px solid var(--line-2); border-radius:var(--r-sm); background:var(--bg-2); }
.density button{ width:32px; height:30px; display:grid; place-items:center; border-radius:6px; color:var(--text-3); transition:all var(--dur-1); }
.density button svg{ width:16px; height:16px; }
.density button:hover{ color:var(--text); }
.density button.active{ background:var(--honey); color:var(--on-honey); }

.filters-toggle{ display:none; align-items:center; gap:8px; margin-bottom:18px; padding:11px 18px; border:1px solid var(--line-2); border-radius:var(--r-sm); color:var(--text); font-weight:600; background:var(--bg-1); }
.filters-toggle svg{ width:18px; height:18px; }
.shop-empty{ padding:20px 0; }

@media (max-width:980px){
  .shop-layout{ grid-template-columns:1fr; }
  .filters-toggle{ display:inline-flex; }
  .filters{ position:static; max-height:none; display:none; }
  .filters.is-open{ display:flex; }
  .cmdbar{ position:static; }
}
@media (max-width:560px){
  .cmdbar__chips{ order:3; flex-basis:100%; }
  .cmdbar__right{ margin-left:0; width:100%; justify-content:space-between; }
}

/* ===== Discounts: deal hub ===== */
.deals-hero__stats{ display:flex; flex-wrap:wrap; gap:28px; margin-top:26px; }
.deals-hero__stats > div{ display:flex; flex-direction:column; gap:4px; }
.deals-hero__stats b{ font-family:var(--font-display); font-weight:700; font-size:1.7rem; line-height:1; color:var(--honey); }
.deals-hero__stats span{ font:500 .66rem/1.1 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:var(--text-2); }

.deal-tiers{ display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.deal-tier{ display:flex; flex-direction:column; gap:4px; align-items:flex-start; text-align:left; padding:18px 20px; border:1px solid var(--line-2); border-radius:var(--r-lg); background:var(--bg-1); cursor:pointer; transition:transform var(--dur-2) var(--ease), border-color var(--dur-2), background var(--dur-2), box-shadow var(--dur-2); }
.deal-tier:hover{ transform:translateY(-4px); border-color:var(--line-honey); }
.deal-tier.active{ border-color:var(--honey); background:linear-gradient(150deg,var(--honey-900),var(--bg-1) 70%); box-shadow:var(--glow-honey); }
.deal-tier__pct{ font-family:var(--font-display); font-weight:700; font-size:1.85rem; line-height:1; color:var(--honey); }
.deal-tier.active .deal-tier__pct{ color:#fff; }
.deal-tier--hot .deal-tier__pct{ color:var(--sale); }
.deal-tier--hot.active .deal-tier__pct{ color:#fff; }
.deal-tier__label{ font-size:.92rem; color:var(--text); font-weight:600; }
.deal-tier__n{ font:600 .66rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.08em; color:var(--text-3); margin-top:2px; }
@media (max-width:860px){ .deal-tiers{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:420px){ .deal-tiers{ grid-template-columns:1fr; } }

/* ===== Contact: channels + form panel ===== */
.channels{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.channel{ position:relative; display:flex; flex-direction:column; gap:6px; padding:26px 24px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); overflow:hidden; transition:transform var(--dur-2) var(--ease), border-color var(--dur-2), box-shadow var(--dur-2); }
.channel:hover{ transform:translateY(-5px); border-color:var(--line-honey); box-shadow:var(--glow-honey); }
.channel--accent{ background:linear-gradient(150deg,var(--honey-900),var(--bg-1) 70%); border-color:var(--line-honey); }
.channel__ico{ width:48px; height:48px; display:grid; place-items:center; border-radius:var(--r-sm); background:rgba(79,134,247,.12); color:var(--honey); font-size:1.5rem; margin-bottom:8px; }
.channel__ico svg{ width:24px; height:24px; }
.channel h3{ font-family:var(--font-display); font-weight:700; font-size:1.3rem; }
.channel p{ color:var(--text-2); }
.channel__meta{ margin-top:14px; font:600 .7rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.08em; color:var(--honey); }
.channel__arrow{ position:absolute; top:24px; right:24px; color:var(--text-3); transition:transform var(--dur-1), color var(--dur-1); }
.channel:hover .channel__arrow{ color:var(--honey); transform:translate(3px,-3px); }
.contact-panel{ padding:clamp(22px,3vw,34px); border:1px solid var(--line); border-radius:var(--r-lg); background:var(--bg-1); display:flex; flex-direction:column; gap:20px; }
.feature--link{ text-decoration:none; transition:transform var(--dur-2) var(--ease), border-color var(--dur-2), box-shadow var(--dur-2); }
.feature--link:hover{ transform:translateY(-4px); border-color:var(--line-honey); box-shadow:var(--glow-honey); }
@media (max-width:860px){ .channels{ grid-template-columns:1fr; } }

/* ===== Pagination ===== */
.pager{ display:flex; justify-content:center; align-items:center; gap:8px; flex-wrap:wrap; margin-top:40px; }
.pager__btn{ min-width:42px; height:42px; padding:0 12px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line-2); border-radius:var(--r-sm); background:var(--bg-1); color:var(--text-2); font:600 .92rem/1 var(--font-mono); font-variant-numeric:tabular-nums; transition:border-color var(--dur-1), color var(--dur-1), background var(--dur-1), box-shadow var(--dur-1); }
.pager__btn:hover:not([disabled]){ border-color:var(--honey); color:var(--honey); }
.pager__btn.active{ background:var(--honey); color:var(--on-honey); border-color:var(--honey); box-shadow:0 6px 18px -8px rgba(79,134,247,.7); }
.pager__btn--nav{ font-size:1.25rem; }
.pager__btn[disabled]{ opacity:.4; cursor:not-allowed; }
.pager__gap{ color:var(--text-3); padding:0 2px; }

/* ===== Product page (PDP) — powerful ===== */
.pdp{ grid-template-columns:minmax(0,420px) 1fr; gap:40px; align-items:start; }
.pdp__left{ display:flex; flex-direction:column; gap:14px; position:sticky; top:calc(var(--header-h) + 20px); }
.pdp__media{ box-shadow:0 30px 60px -30px rgba(0,0,0,.7); }
.pdp__media img{ width:100%; height:100%; object-fit:cover; }
.pdp__disc{ top:14px; left:14px; right:auto; font-size:1rem; }
.pdp__media-pf{ position:absolute; bottom:12px; left:12px; z-index:3; display:inline-flex; align-items:center; gap:6px; font:700 .7rem/1 var(--font-mono); text-transform:uppercase; letter-spacing:.1em; color:#fff; background:rgba(10,13,23,.6); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); padding:6px 10px; border-radius:var(--r-pill); }
.pdp__media-pf img{ width:14px; height:14px; }
.pdp__trust{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.pdp__trust-item{ display:flex; align-items:center; gap:10px; padding:12px 14px; border:1px solid var(--line); border-radius:var(--r); background:var(--bg-1); }
.pdp__trust-item b{ font-size:1.1rem; color:var(--honey); line-height:1; }
.pdp__trust-item span{ font-size:.8rem; color:var(--text-2); line-height:1.2; }
.pdp__buy h1{ font-size:clamp(1.9rem,3.4vw,2.8rem); line-height:1.05; margin:6px 0 0; }
.pdp__save{ display:inline-flex; align-items:center; gap:6px; font:600 .82rem/1 var(--font-mono); color:var(--success); background:rgba(46,213,115,.1); border:1px solid rgba(46,213,115,.32); padding:8px 12px; border-radius:var(--r-pill); margin:2px 0 14px; }
.pdp__deliver{ color:var(--text-2); margin:0 0 20px; font-size:.95rem; }
.pdp__cta{ display:flex; gap:12px; flex-wrap:wrap; }
.pdp__cta .btn--block{ flex:1; min-width:190px; }
.pdp__wish.is-on{ color:var(--sale); border-color:var(--sale); }
.pdp__pay{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:16px; padding-top:16px; border-top:1px solid var(--line); }
.pdp__info{ display:grid; grid-template-columns:1fr 1fr; margin-top:18px; border:1px solid var(--line); border-radius:var(--r); overflow:hidden; }
.pdp__info > div{ display:flex; justify-content:space-between; gap:10px; padding:12px 14px; border-bottom:1px solid var(--line); }
.pdp__info > div:nth-child(odd){ border-right:1px solid var(--line); }
.pdp__info > div:nth-last-child(-n+2){ border-bottom:0; }
.pdp__info span{ color:var(--text-3); font-size:.82rem; }
.pdp__info b{ font-size:.86rem; text-align:right; }
.pdp__details{ display:grid; grid-template-columns:1.2fr .8fr; gap:48px; align-items:start; }
.pdp__about p{ color:var(--text-2); }
.pdp__list{ display:flex; flex-direction:column; gap:10px; margin-top:14px; }
.pdp__list li{ position:relative; padding-left:26px; color:var(--text-2); }
.pdp__list li::before{ content:"✓"; position:absolute; left:0; color:var(--honey); font-weight:700; }
@media (max-width:860px){ .pdp{ grid-template-columns:1fr; gap:28px; } .pdp__left{ position:static; } .pdp__details{ grid-template-columns:1fr; gap:28px; } }

/* ===== Discounts: "more huge savings" big-deal cards ===== */
.bigdeals{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.bigdeal{ display:flex; flex-direction:column; border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden; background:var(--bg-1); transition:transform var(--dur-2) var(--ease), border-color var(--dur-2), box-shadow var(--dur-2); }
.bigdeal:hover{ transform:translateY(-5px); border-color:var(--line-honey); box-shadow:var(--glow-honey); }
.bigdeal__media{ position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--bg-2); }
.bigdeal__media img{ width:100%; height:100%; object-fit:cover; transition:transform var(--dur-3) var(--ease); }
.bigdeal:hover .bigdeal__media img{ transform:scale(1.06); }
.bigdeal__pct{ position:absolute; top:12px; left:12px; font:700 1.15rem/1 var(--font-display); color:#fff; background:var(--sale); padding:8px 12px; border-radius:var(--r-sm); box-shadow:0 6px 18px -6px rgba(255,92,114,.6); }
.bigdeal__body{ padding:16px; display:flex; flex-direction:column; gap:8px; }
.bigdeal__body h3{ font-family:var(--font-display); font-weight:700; font-size:1.2rem; }
.bigdeal__price{ display:flex; align-items:baseline; gap:10px; }
.bigdeal__price .price-now{ font-size:1.4rem; }
.bigdeal__save{ font:600 .76rem/1 var(--font-mono); color:var(--success); }
@media (max-width:860px){ .bigdeals{ grid-template-columns:1fr; } }
