/* === User original main.css === */

/* ======================================================================
   NextTier – FULL consolidated styles for main page
   Includes product cards rendered via JS (class .product-card-new et al.)
   Built: 2025‑07‑02
   ====================================================================== */

/* 0. Imports & reset --------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
     background:#11131a;color:#e8e8e8;line-height:1.55;min-height:100vh}

/* 1. Theme variables --------------------------------------------------- */
:root{
  --nt-primary:#ff9944;
  --nt-primary-hover:#ffb366;
  --nt-primary-dark:#cc6c1a;
  --nt-bg:#11131a;
  --nt-bg-light:#1a1d26;
  --nt-border:rgba(255,255,255,.08);
  --nt-card-bg:#1b1e28;
  --nt-text:#e8e8e8;
  --nt-text-dim:#b0b3c7;
  --nt-radius:8px;
  --nt-radius-lg:12px;
  --nt-shadow:0 4px 10px rgba(0,0,0,.45);
  --nt-transition:.24s cubic-bezier(.25,.8,.25,1);
}

/* 2. Utilities --------------------------------------------------------- */
.container{width:min(92vw,1200px);margin-inline:auto}
.text-center{text-align:center}

/* 3. Offers grid ------------------------------------------------------- */
.offers-grid{
  display:grid;
  gap:1.5rem;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  margin-top:1.6rem;
}
@media(max-width:600px){.offers-grid{gap:1.1rem}}

/* 4. Product card ------------------------------------------------------ */
.product-card-new{
  background:var(--nt-card-bg);
  border:1px solid var(--nt-border);
  border-radius:var(--nt-radius-lg);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform var(--nt-transition),box-shadow var(--nt-transition);
  cursor:pointer;
}
.product-card-new:hover{
  transform:translateY(-4px);
  box-shadow:var(--nt-shadow);
}
/* image box */
.product-img-box{position:relative;aspect-ratio:16/9;overflow:hidden}
.product-img-box img{width:100%;height:100%;object-fit:cover;
  transition:transform .45s ease}
.product-card-new:hover .product-img-box img{transform:scale(1.06)}

/* "from price" overlay */
.product-price-from-overlay{
  position:absolute;bottom:.6rem;left:.6rem;
  background:rgba(17,19,26,.82);
  padding:.35rem .55rem;
  font-size:.85rem;
  border-radius:6px;
  color:#fff;
  pointer-events:none;
  backdrop-filter:blur(4px);
}
/* badge */
.product-badge-new{
  position:absolute;top:.6rem;left:.6rem;
  padding:.35rem .6rem;
  font-size:.75rem;
  font-weight:600;
  border-radius:6px;
  background:var(--nt-primary);
  color:#fff;
  text-transform:uppercase;
}
.badge-hot{background:#e63946}
.badge-best-seller{background:#40c057}
.badge-new{background:#3b5bdb}
/* add dynamic hue rotate for more badges */
[class^="badge-"]:not(.badge-hot):not(.badge-best-seller):not(.badge-new){
  background:var(--nt-primary);
}
/* product content */
.product-content{display:flex;flex-direction:column;gap:.55rem;padding:1rem 1rem 1.3rem;flex:1}
.product-title{font-size:1.05rem;font-weight:600;color:#fff}
.product-desc{font-size:.9rem;color:var(--nt-text-dim);max-height:72px;overflow:hidden}
.order-btn{
  margin-top:auto;
  align-self:flex-start;
  padding:.55rem 1.1rem;
  background:var(--nt-primary);
  border:none;
  border-radius:var(--nt-radius);
  font-weight:600;
  color:#fff;
  cursor:pointer;
  transition:background var(--nt-transition);
}
.order-btn:hover{background:var(--nt-primary-hover)}

/* 5. Filter bar (scroll) ---------------------------------------------- */
.game-filter-buttons-scroll{position:relative;margin-top:1rem}
.game-filter-buttons-outer{overflow-x:auto;scroll-behavior:smooth}
.game-filter-buttons{display:flex;gap:.6rem;padding-block:.5rem}
.game-filter-buttons::-webkit-scrollbar{display:none}
.filter-btn{
  flex:0 0 auto;
  padding:.5rem 1.1rem;
  border:1px solid var(--nt-border);
  background:var(--nt-bg-light);
  border-radius:50px;font-size:.9rem;
  color:var(--nt-text-dim);cursor:pointer;
  transition:background var(--nt-transition),color var(--nt-transition);
}
.filter-btn.active,
.filter-btn:hover{background:var(--nt-primary);color:#fff;border-color:transparent}

/* карточка товара – убираем scroll у встроенного .ql-editor */
.product-desc .ql-editor{
  overflow:visible !important;
  max-height:none !important;
  padding:0;           /* убираем лишние отступы, если нужны */
}


/* scroll arrows */
.game-filter-arrow{
  position:absolute;top:50%;translate:0 -50%;
  width:34px;height:34px;border-radius:50%;
  border:1px solid var(--nt-border);
  background:linear-gradient(145deg,#1d202a,#11131a);
  display:grid;place-items:center;
  color:#fff;font-size:1.1rem;cursor:pointer;
  transition:opacity var(--nt-transition);
  opacity:.85;
}
.game-filter-arrow.disabled{opacity:.15;pointer-events:none}
.game-filter-arrow.left{left:-18px}
.game-filter-arrow.right{right:-18px}
@media(min-width:1024px){.game-filter-arrow{display:none}}

/* 6. Why‑block quick grid --------------------------------------------- */
.why-grid{display:grid;gap:1rem;margin-top:1.6rem;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.why-block{background:var(--nt-card-bg);padding:1rem .9rem;border-radius:var(--nt-radius);
  text-align:center;font-size:.95rem;display:flex;flex-direction:column;gap:.45rem;
  box-shadow:0 1px 3px rgba(0,0,0,.35)}
.why-emoji{font-size:1.4rem}

/* 7. Reviews slider ---------------------------------------------------- */
.reviews-slider{display:flex;overflow-x:auto;gap:1.2rem;padding-bottom:.4rem}
.reviews-slider::-webkit-scrollbar{height:8px}
.reviews-slider::-webkit-scrollbar-thumb{background:var(--nt-border);border-radius:4px}
.review-card{min-width:260px;background:var(--nt-card-bg);border:1px solid var(--nt-border);
  border-radius:var(--nt-radius);padding:1rem .9rem;flex:0 0 auto}
.review-card h4{font-size:1rem;font-weight:600;margin-bottom:.25rem}
.review-card .stars{color:#ffd43b;font-size:.9rem;margin-bottom:.35rem}
.review-card h3{font-size:.9rem;margin-bottom:.3rem}
.review-card p{font-size:.9rem;color:var(--nt-text-dim)}

/* 8. Cookie banner ----------------------------------------------------- */
#cookieBanner{
  left:50%;translate:-50% 0;bottom:1rem;
  width:min(92vw,440px);border-radius:var(--nt-radius);
  background:rgba(26,32,39,.97);padding:1rem 1.2rem;
  color:#fff;font-size:.9rem;box-shadow:0 2px 14px rgba(0,0,0,.35)
}
#cookieAccept{background:#3590ff;border:none;border-radius:var(--nt-radius);
  padding:.5rem 1.25rem;font-size:1rem;font-weight:600;color:#fff;cursor:pointer;
  transition:background .14s}
#cookieAccept:hover{background:#2278e7}

/* 9. Hero / games grid tweaks (reuse existing) ------------------------ */
.main-hero{padding:4rem 0 3rem;text-align:center;background:url('/images/hero-bg.webp') center/cover no-repeat}
.hero-title{font-size:clamp(2rem,4.4vw,3.3rem);font-weight:700;line-height:1.15}
.hero-subtitle{color:var(--nt-text-dim);font-size:clamp(1rem,2.2vw,1.2rem);max-width:620px;margin:.9rem auto 0}
.highlight{color:var(--nt-primary)}

/* 10. Games grid ------------------------------------------------------- */
.games-grid{display:grid;gap:1.4rem;margin-top:1.6rem;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.game-card{background:var(--nt-card-bg);border-radius:var(--nt-radius-lg);
  overflow:hidden;transition:transform var(--nt-transition),box-shadow var(--nt-transition)}
.game-card img{width:100%;height:110px;object-fit:cover;display:block}
.game-card:hover{transform:translateY(-4px);box-shadow:var(--nt-shadow)}

/* ===== Featured games row (big cards) ===== */
.games-grid.featured-layout{
  grid-template-columns: repeat(auto-fill,minmax(140px,1fr));
  gap:1.4rem;
}



@media(min-width:768px){
  .games-grid.featured-layout .game-card.featured{
    grid-column: span 2;
    aspect-ratio: 16/9;
  }
  .games-grid.featured-layout .game-card.featured img{
    height:180px;
  }
}
@media(min-width:1200px){
  .games-grid.featured-layout .game-card.featured{
    grid-column: span 2;
    aspect-ratio: 16/7;
  }
}

/* ===== Gradient hero heading ===== */
.hero-title-gradient{
  background:linear-gradient(90deg,#78a8ff 0%,#55e0ff 30%,#b385ff 60%,#ff59d2 100%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;
}

/* ---------- GLOBAL LAYOUT ---------- */

/* Центровочный контейнер
   1680 px на 4K / 2K, 1400 px на FHD, 92 vw — на планшетах и мобилках  */
.wrap{
  width: min(92vw, 1400px);
  margin-inline: auto;
}

/* Позволяем чуточку шире на ≥1600 px */
@media (min-width: 1600px){
  .wrap{ width: min(88vw, 1680px); }
}

/* Чуть увеличиваем базовый шрифт на 4K,
   чтобы текст не казался мелким */
@media (min-width: 2560px){
  html{ font-size: 18px; }        /* было 16 px */
}

/* ---------- HERO ---------- */

.main-hero{
  /* фон остаётся на всю ширину */
  background: url('/images/hero-bg.webp') center/cover no-repeat;
  padding: 5rem 0 4rem;
}
.hero-inner{ text-align: center; }

.hero-title{
  font-size: clamp(2.3rem, 4.2vw, 3.8rem);
  line-height: 1.15;
  font-weight: 700;
}
.hero-subtitle{
  font-size: clamp(1.05rem, 1.8vw, 1.25rem);
  max-width: 720px;
  margin: .9rem auto 0;
}

/* ---------- GAMES GRID ---------- */

.games-grid{
  margin-top: 2rem;
  gap: 1.6rem;
  /* на очень больших — карту больше */
  grid-template-columns: repeat(auto-fill, minmax(clamp(140px,14vw,220px), 1fr));
}
@media (min-width: 2000px){
  .games-grid{ gap: 2rem; }
}

/* Featured — уже есть, но чуть увеличим на UHD */
@media (min-width: 2000px){
  .games-grid.featured-layout .game-card.featured{ grid-column: span 3; }
}

/* ---------- OFFERS GRID / BEST DEALS ---------- */

.offers-grid{
  margin-top: 2rem;
  gap: 1.8rem;
  grid-template-columns: repeat(auto-fill,minmax(clamp(260px,20vw,320px),1fr));
}
@media (min-width: 2000px){
  .offers-grid{ gap: 2.2rem; }
}

/* ---------- WHY-GRID ---------- */

.why-grid{
  margin-top: 2rem;
  gap: 1.4rem;
  grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
}

/* ---------- REVIEWS SLIDER ---------- */

.reviews-section .wrap{ overflow: hidden; }   /* чтобы скроллбар был подрезан */
.reviews-slider{ gap: 1.6rem; }               /* плавный отступ на больших */

/* ---------- COOKIE / FOOTER ширина ---------- */

#cookieBanner, footer .footer-top, footer .footer-bottom{ max-width: 92vw; }
@media (min-width:1600px){
  footer .footer-top, footer .footer-bottom{ max-width: 1400px; margin-inline:auto; }
}


/* === Consolidated NextTier additions === */

/* ======================================================================
   NextTier – FULL consolidated styles for main page
   Includes product cards rendered via JS (class .product-card-new et al.)
   Built: 2025‑07‑02
   ====================================================================== */

/* 0. Imports & reset --------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
     background:#11131a;color:#e8e8e8;line-height:1.55;min-height:100vh}

/* 1. Theme variables --------------------------------------------------- */
:root{
  --nt-primary:#ff9944;
  --nt-primary-hover:#ffb366;
  --nt-primary-dark:#cc6c1a;
  --nt-bg:#11131a;
  --nt-bg-light:#1a1d26;
  --nt-border:rgba(255,255,255,.08);
  --nt-card-bg:#1b1e28;
  --nt-text:#e8e8e8;
  --nt-text-dim:#b0b3c7;
  --nt-radius:8px;
  --nt-radius-lg:12px;
  --nt-shadow:0 4px 10px rgba(0,0,0,.45);
  --nt-transition:.24s cubic-bezier(.25,.8,.25,1);
}

/* 2. Utilities --------------------------------------------------------- */
.container{width:min(92vw,1200px);margin-inline:auto}
.text-center{text-align:center}

/* 3. Offers grid ------------------------------------------------------- */
.offers-grid{
  display:grid;
  gap:1.5rem;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  margin-top:1.6rem;
}
@media(max-width:600px){.offers-grid{gap:1.1rem}}

/* 4. Product card ------------------------------------------------------ */
.product-card-new{
  background:var(--nt-card-bg);
  border:1px solid var(--nt-border);
  border-radius:var(--nt-radius-lg);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform var(--nt-transition),box-shadow var(--nt-transition);
  cursor:pointer;
}
.product-card-new:hover{
  transform:translateY(-4px);
  box-shadow:var(--nt-shadow);
}
/* image box */
.product-img-box{position:relative;aspect-ratio:16/9;overflow:hidden}
.product-img-box img{width:100%;height:100%;object-fit:cover;
  transition:transform .45s ease}
.product-card-new:hover .product-img-box img{transform:scale(1.06)}

/* "from price" overlay */
.product-price-from-overlay{
  position:absolute;bottom:.6rem;left:.6rem;
  background:rgba(17,19,26,.82);
  padding:.35rem .55rem;
  font-size:.85rem;
  border-radius:6px;
  color:#fff;
  pointer-events:none;
  backdrop-filter:blur(4px);
}
/* badge */
.product-badge-new{
  position:absolute;top:.6rem;left:.6rem;
  padding:.35rem .6rem;
  font-size:.75rem;
  font-weight:600;
  border-radius:6px;
  background:var(--nt-primary);
  color:#fff;
  text-transform:uppercase;
}
.badge-hot-offer,.badge-hot{background:#e63946;}
.badge-bundle{background:#20c997;}
.badge-time-limited{background:#ffa94d;}
.badge-preorder{background:#4dabf7;}
.badge-gift-inside{background:#845ef7;}
.badge-updated{background:#51cf66;}
/* add dynamic hue rotate for more badges */
[class^="badge-"]:not(.badge-hot):not(.badge-best-seller):not(.badge-new){
  background:var(--nt-primary);
}
/* product content */
.product-content{display:flex;flex-direction:column;gap:.55rem;padding:1rem 1rem 1.3rem;flex:1}
.product-title{font-size:1.05rem;font-weight:600;color:#fff}
.product-desc{font-size:.9rem;color:var(--nt-text-dim);max-height:72px;overflow:hidden}
.order-btn{
  margin-top:auto;
  align-self:flex-start;
  padding:.55rem 1.1rem;
  background:var(--nt-primary);
  border:none;
  border-radius:var(--nt-radius);
  font-weight:600;
  color:#fff;
  cursor:pointer;
  transition:background var(--nt-transition);
}
.order-btn:hover{background:var(--nt-primary-hover)}

/* 5. Filter bar (scroll) ---------------------------------------------- */
.game-filter-buttons-scroll{position:relative;margin-top:1rem}
.game-filter-buttons-outer{overflow-x:auto;scroll-behavior:smooth}
.game-filter-buttons{display:flex;gap:.6rem;padding-block:.5rem}
.game-filter-buttons::-webkit-scrollbar{display:none}
.filter-btn{
  flex:0 0 auto;
  padding:.5rem 1.1rem;
  border:1px solid var(--nt-border);
  background:var(--nt-bg-light);
  border-radius:50px;font-size:.9rem;
  color:var(--nt-text-dim);cursor:pointer;
  transition:background var(--nt-transition),color var(--nt-transition);
}
.filter-btn.active,
.filter-btn:hover{background:var(--nt-primary);color:#fff;border-color:transparent}

/* scroll arrows */
.game-filter-arrow{
  position:absolute;top:50%;translate:0 -50%;
  width:34px;height:34px;border-radius:50%;
  border:1px solid var(--nt-border);
  background:linear-gradient(145deg,#1d202a,#11131a);
  display:grid;place-items:center;
  color:#fff;font-size:1.1rem;cursor:pointer;
  transition:opacity var(--nt-transition);
  opacity:.85;
}
.game-filter-arrow.disabled{opacity:.15;pointer-events:none}
.game-filter-arrow.left{left:-18px}
.game-filter-arrow.right{right:-18px}
@media(min-width:1024px){.game-filter-arrow{display:none}}

/* 6. Why‑block quick grid --------------------------------------------- */
.why-grid{display:grid;gap:1rem;margin-top:1.6rem;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.why-block{background:var(--nt-card-bg);padding:1rem .9rem;border-radius:var(--nt-radius);
  text-align:center;font-size:.95rem;display:flex;flex-direction:column;gap:.45rem;
  box-shadow:0 1px 3px rgba(0,0,0,.35)}
.why-emoji{font-size:1.4rem}

/* 7. Reviews slider ---------------------------------------------------- */
.reviews-slider{display:flex;overflow-x:auto;gap:1.2rem;padding-bottom:.4rem}
.reviews-slider::-webkit-scrollbar{height:8px}
.reviews-slider::-webkit-scrollbar-thumb{background:var(--nt-border);border-radius:4px}
.review-card{min-width:260px;background:var(--nt-card-bg);border:1px solid var(--nt-border);
  border-radius:var(--nt-radius);padding:1rem .9rem;flex:0 0 auto}
.review-card h4{font-size:1rem;font-weight:600;margin-bottom:.25rem}
.review-card .stars{color:#ffd43b;font-size:.9rem;margin-bottom:.35rem}
.review-card h3{font-size:.9rem;margin-bottom:.3rem}
.review-card p{font-size:.9rem;color:var(--nt-text-dim)}

/* 8. Cookie banner ----------------------------------------------------- */
#cookieBanner{
  left:50%;translate:-50% 0;bottom:1rem;
  width:min(92vw,440px);border-radius:var(--nt-radius);
  background:rgba(26,32,39,.97);padding:1rem 1.2rem;
  color:#fff;font-size:.9rem;box-shadow:0 2px 14px rgba(0,0,0,.35)
}
#cookieAccept{background:#3590ff;border:none;border-radius:var(--nt-radius);
  padding:.5rem 1.25rem;font-size:1rem;font-weight:600;color:#fff;cursor:pointer;
  transition:background .14s}
#cookieAccept:hover{background:#2278e7}

/* 9. Hero / games grid tweaks (reuse existing) ------------------------ */
.main-hero{padding:4rem 0 3rem;text-align:center;background:url('/images/hero-bg.webp') center/cover no-repeat}
.hero-title{font-size:clamp(2rem,4.4vw,3.3rem);font-weight:700;line-height:1.15}
.hero-subtitle{color:var(--nt-text-dim);font-size:clamp(1rem,2.2vw,1.2rem);max-width:620px;margin:.9rem auto 0}
.highlight{color:var(--nt-primary)}

/* 10. Games grid ------------------------------------------------------- */
.games-grid{display:grid;gap:1.4rem;margin-top:1.6rem;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.game-card{background:var(--nt-card-bg);border-radius:var(--nt-radius-lg);
  overflow:hidden;transition:transform var(--nt-transition),box-shadow var(--nt-transition)}
.game-card img{width:100%;height:110px;object-fit:cover;display:block}
.game-card:hover{transform:translateY(-4px);box-shadow:var(--nt-shadow)}

/* ===== Featured games row (big cards) ===== */
.games-grid.featured-layout{
  grid-template-columns: repeat(auto-fill,minmax(140px,1fr));
  gap:1.4rem;
}
@media(min-width:768px){
  .games-grid.featured-layout .game-card.featured{
    grid-column: span 2;
    aspect-ratio: 16/9;
  }
  .games-grid.featured-layout .game-card.featured img{
    height:180px;
  }
}
@media(min-width:1200px){
  .games-grid.featured-layout .game-card.featured{
    grid-column: span 2;
    aspect-ratio: 16/7;
  }
}

/* ===== Gradient hero heading ===== */
.hero-title-gradient{
  background:linear-gradient(90deg,#78a8ff 0%,#55e0ff 30%,#b385ff 60%,#ff59d2 100%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;
}


/* === Extra adaptive + visual polish (latest additions) ============= */

/* Games grid split rows */
.games-grid{display:grid;gap:1.4rem;margin-top:1.4rem;}
.big-row{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));}
.small-row{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));}
.big-row .game-card.featured{aspect-ratio:16/9;overflow:hidden;border-radius:var(--nt-radius-lg);}
.small-row .game-card h3{position:absolute;left:12px;bottom:12px;font-size:.95rem;font-weight:600;color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.55);}
.game-card{position:relative;cursor:pointer;}
.small-row .game-card img{height:110px;}
.big-row .game-card img{height:180px;}
@media(max-width:768px){.big-row{grid-template-columns:1fr;}}

/* Why-card glow */
.why-grid{margin-top:2.2rem;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));}
.why-card{position:relative;padding:1.8rem 1.4rem;background:var(--nt-card-bg);border-radius:var(--nt-radius-lg);text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.35);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;}
.why-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(255,153,68,.25),transparent 60%);opacity:0;transition:opacity .3s ease;}
.why-card:hover{transform:translateY(-6px);box-shadow:0 6px 20px rgba(0,0,0,.45);}
.why-card:hover::before{opacity:.8;}
.why-icon{font-size:2rem;margin-bottom:.9rem;}
.why-card h4{font-size:1.05rem;margin-bottom:.5rem;}
.why-card p{font-size:.9rem;color:var(--nt-text-dim);}

/* Reviews slider modern look */
.review-card{min-width:300px;max-width:320px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:var(--nt-radius-lg);padding:1.4rem 1.1rem 1.6rem;display:flex;flex-direction:column;gap:.55rem;transition:transform .28s ease;}
.review-card:hover{transform:translateY(-5px);}
.review-card .stars{color:#ffd43b;font-size:1rem;}
.review-card h4{font-size:.9rem;font-weight:600;color:#fff;}
.review-card h3{font-size:1rem;font-weight:600;color:#fff;}
.review-card p{font-size:.9rem;color:var(--nt-text-dim);display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;}

/* Product description clamp */
.product-desc{font-size:.9rem;color:var(--nt-text-dim);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}


/* === Section spacing & modern visual touches (2025‑07‑02) ============ */

/* SECTION vertical rhythm */
main > section{
  padding-block:4rem;
  border-bottom:1px solid var(--nt-border);
  animation:fadeUp .8s ease-out both;
}
main > section:last-of-type{border-bottom:none;}
@media(max-width:600px){
  main > section{padding-block:3rem;}
}

/* subtle backgrounds */
.deals-section{
  background:linear-gradient(145deg,#12141e 0%,#1a1d25 50%,#10121a 100%);
}
.why-nexttier{
  background:var(--nt-bg-light);
  box-shadow:inset 0 8px 16px rgba(0,0,0,.25);
}
.reviews-section{position:relative;overflow:hidden;}
.reviews-section::before{
  content:"";position:absolute;inset:0;
  background:url("/img/noise.png");
  opacity:.15;pointer-events:none;
}

/* fade-in keyframes */
@keyframes fadeUp{
  from{opacity:0;transform:translateY(30px);}
  to{opacity:1;transform:none;}
}

/* glowing featured game hover */
.big-row .game-card.featured::after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 50% 30%,rgba(255,153,68,.12),transparent 70%);
  opacity:0;transition:opacity .3s ease;
}
.big-row .game-card.featured:hover::after{opacity:.9;}

.card-short-description {
  margin-left: 20px;
  padding: 0;
}