/* ============================================
   TWORST STORE - BIREBIR TASARIM
   ============================================ */

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Outfit:wght@400;600;800;900&display=swap");

:root {
  --tworst-green: #ff004c;
  --tworst-green-dark: #cc003d;
  --tworst-purple: #5865f2;
  --tworst-bg: #0a0a0a;
  --tworst-bg-card: #111111;
  --tworst-bg-light: #181818;
  --tworst-text: #ffffff;
  --tworst-text-secondary: #888888;
  --tworst-border: #222222;

  /* Frazy Design Tokens */
  --frazy-red: #ff004c;
  --frazy-red-dim: rgba(255, 0, 76, 0.12);
  --frazy-red-glow: rgba(255, 0, 76, 0.35);
  --frazy-bg: #0a0a0a;
  --frazy-card: #101010;
  --frazy-border: #1e1e1e;
  --frazy-muted: #555555;
  --frazy-text: #f0f0f0;
  --frazy-subtext: #777777;

  /* Typography */
  --font-display: 'Outfit', sans-serif;
  --font-body: 'Inter', sans-serif;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: var(--tworst-bg);
  color: var(--tworst-text);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ============================================
   HEADER - TWORST STYLE
   ============================================ */
.tworst-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--tworst-bg);
  border-bottom: 1px solid var(--tworst-border);
}

.header-top-bar {
  height: 2px;
  background: var(--tworst-border);
}

.header-main {
  background: rgba(26, 26, 26, 0.95);
  backdrop-filter: blur(10px);
}

.header-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 70px;
  gap: 32px;
}

.header-left {
  display: flex;
  align-items: center;
  gap: 32px;
  flex: 1;
}

.header-logo {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.logo-w {
  width: 60px;
  height: 60px;
  background: #ffffff;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  font-weight: 900;
  color: #000000;
  font-family: 'Inter', sans-serif;
}

.header-logo img {
  width: 60px;
  height: 60px;
  border-radius: 8px;
  object-fit: cover;
}

.header-nav {
  display: flex;
  align-items: center;
  gap: 8px;
}

.nav-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  color: var(--tworst-text-secondary);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  border-radius: 8px;
  transition: all 0.2s ease;
  position: relative;
}

.nav-item:hover {
  color: var(--tworst-text);
  background: rgba(255, 255, 255, 0.05);
}

.nav-item.active {
  color: var(--tworst-text);
  background: rgba(0, 255, 136, 0.15);
}

.nav-item.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 16px;
  right: 16px;
  height: 2px;
  background: var(--tworst-green);
}

.nav-item svg {
  width: 18px;
  height: 18px;
}

.nav-info-icon {
  width: 16px;
  height: 16px;
  background: var(--tworst-green);
  color: #000000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  margin-left: 4px;
}

.header-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

.header-link {
  color: var(--tworst-text-secondary);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: color 0.2s ease;
}

.header-link:hover {
  color: var(--tworst-text);
}

.header-discord-btn {
  width: 40px;
  height: 40px;
  background: var(--tworst-purple);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  text-decoration: none;
  transition: all 0.2s ease;
}

.header-discord-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(88, 101, 242, 0.4);
}

.header-discord-btn svg {
  width: 20px;
  height: 20px;
}

.header-login-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: var(--tworst-green);
  color: #000000;
  text-decoration: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.2s ease;
}

.header-login-btn:hover {
  background: var(--tworst-green-dark);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 255, 136, 0.3);
}

.header-login-btn svg {
  width: 16px;
  height: 16px;
}

.header-user-btn {
  display: flex;
  align-items: center;
  padding: 10px 20px;
  background: var(--tworst-bg-card);
  color: var(--tworst-text);
  text-decoration: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid var(--tworst-border);
  transition: all 0.2s ease;
}

.header-user-btn:hover {
  background: var(--tworst-bg-light);
  border-color: var(--tworst-green);
}

.header-cart-btn {
  width: 40px;
  height: 40px;
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tworst-text);
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
}

.header-cart-btn:hover {
  background: var(--tworst-bg-light);
  border-color: var(--tworst-green);
}

.header-cart-btn svg {
  width: 20px;
  height: 20px;
}

.cart-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 20px;
  height: 20px;
  background: #ff6b35;
  color: #ffffff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  padding: 0 6px;
  border: 2px solid var(--tworst-bg);
}

/* ============================================
   HERO SECTION - TWORST STYLE
   ============================================ */
.tworst-hero {
  min-height: calc(100vh - 72px);
  display: flex;
  align-items: center;
  padding: 60px 0;
  position: relative;
  overflow: visible;
  background: #0a0a0a;
}

.tworst-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: 
    linear-gradient(90deg, rgba(10, 10, 10, 0.95) 0%, rgba(10, 10, 10, 0.85) 40%, rgba(10, 10, 10, 0.6) 60%, transparent 100%),
    url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1920 1080"><defs><linearGradient id="sky" x1="0%" y1="0%" x2="0%" y2="100%"><stop offset="0%" style="stop-color:%231a1a2e;stop-opacity:1" /><stop offset="50%" style="stop-color:%230f1419;stop-opacity:1" /><stop offset="100%" style="stop-color:%23000000;stop-opacity:1" /></linearGradient><radialGradient id="glow" cx="70%" cy="50%"><stop offset="0%" style="stop-color:%23ffd700;stop-opacity:0.3" /><stop offset="100%" style="stop-color:%23000000;stop-opacity:0" /></radialGradient></defs><rect fill="url(%23sky)" width="1920" height="1080"/><rect fill="url(%23glow)" width="1920" height="1080"/><path d="M0 800 Q480 700 960 750 T1920 800 L1920 1080 L0 1080 Z" fill="%23151515" opacity="0.8"/><circle cx="1400" cy="400" r="3" fill="%23ffd700" opacity="0.6"/><circle cx="1600" cy="350" r="2" fill="%23ffd700" opacity="0.5"/><circle cx="1500" cy="500" r="2.5" fill="%23ffd700" opacity="0.4"/><path d="M1200 700 L1300 600 L1400 650 L1500 550 L1600 600 L1700 500" stroke="%23333" stroke-width="2" fill="none" opacity="0.3"/><rect x="1600" y="700" width="80" height="120" rx="5" fill="%231a1a1a" opacity="0.6"/><rect x="1620" y="720" width="20" height="15" fill="%23ff0000" opacity="0.4"/><rect x="1640" y="720" width="20" height="15" fill="%23ff0000" opacity="0.4"/><path d="M1000 600 Q1100 550 1200 580 Q1300 610 1400 560" stroke="%23222" stroke-width="3" fill="none" opacity="0.4"/><path d="M1100 650 Q1200 600 1300 630 Q1400 660 1500 610" stroke="%23222" stroke-width="3" fill="none" opacity="0.4"/><rect x="800" y="750" width="200" height="300" fill="%23151515" opacity="0.3"/><rect x="900" y="750" width="100" height="300" fill="%23151515" opacity="0.3"/><rect x="1000" y="750" width="150" height="300" fill="%23151515" opacity="0.3"/></svg>');
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  filter: blur(2px) brightness(0.4);
  z-index: 0;
}

.hero-container {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 32px;
  display: grid;
  grid-template-columns: 1fr 1.8fr;
  gap: 60px;
  align-items: stretch;
  width: 100%;
  position: relative;
  z-index: 1;
  min-height: calc(100vh - 72px - 120px);
}

.hero-left {
  z-index: 2;
}

.hero-title {
  font-size: 96px;
  font-weight: 900;
  line-height: 1.05;
  margin-bottom: 32px;
  letter-spacing: -3px;
}

.hero-title-part {
  color: var(--tworst-text);
  display: inline-block;
}

.hero-title-green {
  color: var(--tworst-green);
  display: inline-block;
}

.hero-title-underline {
  position: relative;
  display: inline-block;
}

.hero-title-underline::after {
  content: '';
  position: absolute;
  bottom: 8px;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--tworst-green);
  border-radius: 2px;
}

.hero-description {
  font-size: 20px;
  line-height: 1.8;
  color: var(--tworst-text-secondary);
  margin-bottom: 48px;
  max-width: 650px;
  font-weight: 400;
}

.hero-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}

.btn-shop-now {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 32px;
  background: var(--tworst-green);
  color: #000000;
  text-decoration: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  transition: all 0.2s ease;
}

.btn-shop-now:hover {
  background: var(--tworst-green-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 255, 136, 0.3);
}

.btn-shop-now svg {
  width: 20px;
  height: 20px;
}

.btn-discord-hero {
  width: 56px;
  height: 56px;
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tworst-text);
  text-decoration: none;
  transition: all 0.2s ease;
}

.btn-discord-hero:hover {
  background: var(--tworst-bg-light);
  border-color: var(--tworst-purple);
  transform: scale(1.05);
}

.btn-discord-hero svg {
  width: 24px;
  height: 24px;
  color: var(--tworst-purple);
}

.hero-right {
  position: relative;
  height: 100%;
  min-height: 600px;
  border-radius: 0;
  overflow: visible;
  background: transparent;
}

.hero-container {
  position: relative;
  z-index: 1;
}

.hero-bg-image {
  position: absolute;
  inset: 0;
  background-image: 
    url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1920 1080"><defs><linearGradient id="nightSky" x1="0%" y1="0%" x2="0%" y2="100%"><stop offset="0%" style="stop-color:%231a1a2e;stop-opacity:1" /><stop offset="50%" style="stop-color:%230f1419;stop-opacity:1" /><stop offset="100%" style="stop-color:%23000000;stop-opacity:1" /></linearGradient><radialGradient id="cityGlow" cx="70%" cy="50%"><stop offset="0%" style="stop-color:%23ffd700;stop-opacity:0.4" /><stop offset="100%" style="stop-color:%23000000;stop-opacity:0" /></radialGradient></defs><rect fill="url(%23nightSky)" width="1920" height="1080"/><rect fill="url(%23cityGlow)" width="1920" height="1080"/><path d="M0 800 Q480 700 960 750 T1920 800 L1920 1080 L0 1080 Z" fill="%23151515" opacity="0.9"/><circle cx="1400" cy="400" r="3" fill="%23ffd700" opacity="0.7"/><circle cx="1600" cy="350" r="2" fill="%23ffd700" opacity="0.6"/><circle cx="1500" cy="500" r="2.5" fill="%23ffd700" opacity="0.5"/><path d="M1200 700 L1300 600 L1400 650 L1500 550 L1600 600 L1700 500" stroke="%23333" stroke-width="2" fill="none" opacity="0.4"/><rect x="1600" y="700" width="80" height="120" rx="5" fill="%231a1a1a" opacity="0.7"/><rect x="1620" y="720" width="20" height="15" fill="%23ff0000" opacity="0.5"/><rect x="1640" y="720" width="20" height="15" fill="%23ff0000" opacity="0.5"/><path d="M1000 600 Q1100 550 1200 580 Q1300 610 1400 560" stroke="%23222" stroke-width="3" fill="none" opacity="0.5"/><path d="M1100 650 Q1200 600 1300 630 Q1400 660 1500 610" stroke="%23222" stroke-width="3" fill="none" opacity="0.5"/><rect x="800" y="750" width="200" height="300" fill="%23151515" opacity="0.4"/><rect x="900" y="750" width="100" height="300" fill="%23151515" opacity="0.4"/><rect x="1000" y="750" width="150" height="300" fill="%23151515" opacity="0.4"/></svg>');
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  filter: blur(1px) brightness(0.5);
  opacity: 0.3;
  z-index: 0;
}

/* GTA5 Character Image - Bottom Aligned, Larger */
.hero-character-image {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  pointer-events: none;
}

.hero-character-image .character-img {
  max-width: 700px;
  width: auto;
  height: auto;
  max-height: 95%;
  object-fit: contain;
  object-position: bottom;
  opacity: 0.6;
  filter: drop-shadow(0 0 30px rgba(0, 0, 0, 0.8));
  animation: characterFloat 6s ease-in-out infinite;
}

@keyframes characterFloat {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-20px);
  }
}

.hero-bg-image::after {
  content: '';
  position: absolute;
  inset: 0;
  background: transparent;
  z-index: 1;
}

/* Testimonials Container in Hero Right */
.testimonials-container {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
  padding: 0;
  box-sizing: border-box;
}

.testimonials-container::before {
  content: '';
  position: absolute;
  inset: 0;
  background: transparent;
  z-index: -1;
}

.testimonials-container .testimonial-card {
  pointer-events: auto;
}

.testimonial-card {
  position: absolute;
  background: rgba(26, 26, 26, 0.98);
  backdrop-filter: blur(15px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 18px;
  box-shadow: 
    0 8px 32px rgba(0, 0, 0, 0.4),
    0 0 0 1px rgba(255, 255, 255, 0.05) inset;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  animation: fadeInUp 0.6s ease-out backwards;
  z-index: 3;
}

.testimonial-card:hover {
  transform: translateY(-4px) scale(1.02) !important;
  z-index: 10 !important;
}

/* Small testimonial cards */
.testimonial-1,
.testimonial-2,
.testimonial-4 {
  width: 220px;
  padding: 14px;
  z-index: 2;
}

/* Large testimonial cards */
.testimonial-3,
.testimonial-5 {
  width: 360px;
  padding: 24px;
  z-index: 5;
}

.testimonial-card:hover {
  box-shadow: 
    0 12px 40px rgba(0, 0, 0, 0.5),
    0 0 0 1px rgba(0, 255, 136, 0.2) inset,
    0 0 20px rgba(0, 255, 136, 0.1);
  border-color: rgba(0, 255, 136, 0.3);
}

.testimonial-1 {
  animation-delay: 0.1s;
}

.testimonial-2 {
  animation-delay: 0.2s;
}

.testimonial-3 {
  animation-delay: 0.3s;
}

.testimonial-4 {
  animation-delay: 0.4s;
  z-index: 1;
}

.testimonial-5 {
  animation-delay: 0.5s;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.testimonial-dots {
  display: flex;
  gap: 6px;
  margin-bottom: 12px;
}

.dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

.dot.red {
  background: #ff5f56;
}

.dot.yellow {
  background: #ffbd2e;
}

.dot.green {
  background: #27c93f;
}

.testimonial-user {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.user-avatar {
  width: 40px;
  height: 40px;
  background: var(--tworst-green);
  color: #000000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 16px;
}

.user-info {
  flex: 1;
}

.user-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--tworst-text);
  margin-bottom: 2px;
}

.product-name {
  font-size: 12px;
  color: var(--tworst-text-secondary);
}

.testimonial-rating {
  display: flex;
  gap: 2px;
  margin-bottom: 12px;
}

.star {
  color: #ffbd2e;
  font-size: 14px;
}

.testimonial-text {
  font-size: 13px;
  line-height: 1.6;
  color: var(--tworst-text-secondary);
  font-style: italic;
  margin: 0;
}

/* Discount popup button removed - functionality moved to hero Discord button */

/* Discount Popup Overlay */
.discount-popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(8px);
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.discount-popup-overlay.active {
  display: flex;
  opacity: 1;
}

.discount-popup-card {
  position: relative;
  width: 90%;
  max-width: 420px;
  background: rgba(26, 26, 26, 0.98);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 0, 76, 0.3);
  border-radius: 20px;
  padding: 32px;
  box-shadow: 
    0 20px 60px rgba(0, 0, 0, 0.6),
    0 0 0 1px rgba(255, 0, 76, 0.2) inset,
    0 0 40px rgba(255, 0, 76, 0.15);
  transform: scale(0.9) translateY(20px);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.discount-popup-overlay.active .discount-popup-card {
  transform: scale(1) translateY(0);
}

.discount-popup-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 36px;
  height: 36px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tworst-text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}

.discount-popup-close:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  color: var(--tworst-text);
  transform: rotate(90deg);
}

.discount-popup-card .discount-header {
  font-size: 24px;
  font-weight: 700;
  color: var(--tworst-green);
  margin-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.discount-popup-card .discount-text {
  font-size: 15px;
  line-height: 1.7;
  color: var(--tworst-text-secondary);
  margin-bottom: 24px;
}

.discount-popup-card .btn-create-ticket {
  width: 100%;
  text-align: center;
}

.discount-header {
  font-size: 18px;
  font-weight: 700;
  color: var(--tworst-green);
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.discount-text {
  font-size: 14px;
  line-height: 1.6;
  color: var(--tworst-text-secondary);
  margin-bottom: 16px;
}

.btn-create-ticket {
  display: inline-block;
  padding: 12px 24px;
  background: var(--tworst-bg-light);
  color: var(--tworst-text);
  text-decoration: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  transition: all 0.2s ease;
  border: 1px solid var(--tworst-border);
}

.btn-create-ticket:hover {
  background: var(--tworst-bg-card);
  border-color: var(--tworst-green);
  color: var(--tworst-green);
}

/* ============================================
   RECENT PAYMENTS SECTION
   ============================================ */
.recent-payments-section {
  padding: 80px 0;
  background: var(--tworst-bg);
  position: relative;
}

.payments-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
}

.payments-header {
  margin-bottom: 40px;
}

.payments-title {
  font-size: 48px;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 8px;
  letter-spacing: -1px;
}

.payments-title-white {
  color: var(--tworst-text);
}

.payments-title-green {
  color: var(--tworst-green);
}

.payments-subtitle {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  margin: 0;
  font-weight: 500;
}

.payments-list {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  padding: 10px 0;
  scrollbar-width: thin;
  scrollbar-color: var(--tworst-border) transparent;
}

.payments-list::-webkit-scrollbar {
  height: 6px;
}

.payments-list::-webkit-scrollbar-track {
  background: transparent;
}

.payments-list::-webkit-scrollbar-thumb {
  background: var(--tworst-border);
  border-radius: 3px;
}

.payments-list::-webkit-scrollbar-thumb:hover {
  background: var(--tworst-green);
}

.payment-card {
  min-width: 280px;
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  border-radius: 16px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  transition: all 0.3s ease;
  animation: paymentSlideIn 0.6s ease-out backwards;
  cursor: pointer;
}

.payment-card:hover {
  transform: translateY(-4px);
  border-color: var(--tworst-green);
  box-shadow: 
    0 8px 24px rgba(0, 0, 0, 0.4),
    0 0 0 1px rgba(0, 255, 136, 0.2) inset;
}

@keyframes paymentSlideIn {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.payment-avatar {
  position: relative;
  width: 56px;
  height: 56px;
  flex-shrink: 0;
}

.payment-avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--tworst-border);
}

.payment-avatar-fallback {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: var(--tworst-green);
  color: #000000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 24px;
  border: 2px solid var(--tworst-border);
}

.payment-info {
  flex: 1;
  min-width: 0;
}

.payment-name {
  font-size: 16px;
  font-weight: 600;
  color: var(--tworst-text);
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.payment-time {
  font-size: 13px;
  color: var(--tworst-text-secondary);
  font-weight: 400;
}

.payment-amount {
  padding: 8px 16px;
  background: var(--tworst-bg-light);
  border: 1px solid var(--tworst-border);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--tworst-text);
  letter-spacing: 2px;
  font-family: 'JetBrains Mono', monospace;
  flex-shrink: 0;
  transition: all 0.2s ease;
}

.payment-card:hover .payment-amount {
  background: var(--tworst-bg-card);
  border-color: var(--tworst-green);
  color: var(--tworst-green);
}

.payments-empty,
.payments-loading {
  width: 100%;
  text-align: center;
  padding: 40px 20px;
  color: var(--tworst-text-secondary);
  font-size: 14px;
}

/* Hide sidebar payments widget to avoid duplicate */
.store-sidebar .widget-recent,
.store-sidebar .widget-payments {
  display: none !important;
}

/* Hide custom page text content */
.site-content .store-text.text-content {
  display: none !important;
}

/* ============================================
   CATEGORY PAGE - SCRIPT GRID STYLE
   ============================================ */
.category-page-wrapper {
  width: 100%;
  min-height: 100vh;
  background: var(--tworst-bg);
}

.category-page-header {
  width: 100%;
  padding: 80px 0 60px;
  background: var(--tworst-bg);
  position: relative;
}

.category-header-content {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  position: relative;
  z-index: 1;
}

.category-header-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.category-header-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.3;
  filter: blur(2px);
}

.category-header-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 10, 10, 0.9) 0%, rgba(10, 10, 10, 0.7) 50%, var(--tworst-bg) 100%);
  z-index: 1;
}

.category-header-text {
  position: relative;
  z-index: 2;
}

.category-page-title {
  font-size: 64px;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 16px;
  letter-spacing: -2px;
  color: var(--tworst-text);
}

.category-title-green {
  color: var(--tworst-green);
}

.category-page-subtitle {
  font-size: 18px;
  color: var(--tworst-text-secondary);
  margin: 0;
  font-weight: 400;
}

.category-page-description {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  line-height: 1.6;
  margin-top: 8px;
}

/* Scripts Grid Section */
.category-scripts-section {
  padding: 40px 0 80px;
  background: var(--tworst-bg);
}

.category-scripts-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
}

.scripts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
  width: 100%;
}

/* Script Card */
.script-card {
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
}

.script-card:hover {
  transform: translateY(-4px);
  border-color: var(--tworst-green);
  box-shadow: 
    0 8px 32px rgba(0, 0, 0, 0.4),
    0 0 0 1px rgba(0, 255, 136, 0.2) inset;
}

/* Script Price Bottom (next to button) */
.script-price-bottom {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  margin-left: auto;
}

.price-discount {
  font-size: 12px;
  color: var(--tworst-green);
  font-weight: 700;
}

.price-amount {
  font-size: 16px;
  font-weight: 700;
  color: var(--tworst-text);
  font-family: 'JetBrains Mono', monospace;
}

/* Script Image */
.script-image-link {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--tworst-bg-light);
}

.script-image-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}

.script-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.script-card:hover .script-image {
  transform: scale(1.05);
}

.script-image-default {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--tworst-bg-light);
}

/* Status Tag (ESCROW/OPEN) */
.script-status-tag {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
}

.tag-escrow,
.tag-open {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.tag-escrow {
  background: var(--tworst-green);
  color: #000000;
}

.tag-open {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  color: var(--tworst-text);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Script Info */
.script-info {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
}

.script-title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.script-title a {
  color: var(--tworst-text);
  text-decoration: none;
  transition: color 0.2s ease;
}

.script-title a:hover {
  color: var(--tworst-green);
}

/* Compatibility Tags */
.script-compatibility {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.compat-tag {
  display: inline-block;
  padding: 4px 12px;
  background: var(--tworst-bg-light);
  border: 1px solid var(--tworst-border);
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  color: var(--tworst-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Script Actions Wrapper */
.script-actions-wrapper {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: auto;
  width: 100%;
}

/* Script Actions */
.script-actions {
  flex: 1;
  min-width: 0;
}

.script-actions .actions {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.script-actions .actions .price {
  display: none !important; /* Hide price from actions, we show it next to button */
}

/* BUY NOW Button - Custom Style for Script Cards */
.script-actions .btn-primary,
.script-actions .add.btn-primary {
  width: 100%;
  background: var(--tworst-green) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 14px 24px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  box-shadow: none !important;
  line-height: 1.2 !important;
  position: relative !important;
}

.script-actions .btn-primary::before,
.script-actions .add.btn-primary::before {
  content: '+' !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: inline-block !important;
  color: #ffffff !important;
  margin-right: 4px !important;
}

.script-actions .btn-primary:hover,
.script-actions .add.btn-primary:hover {
  background: var(--tworst-green-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(0, 255, 136, 0.3) !important;
  color: #ffffff !important;
}

.script-actions .btn-primary:disabled,
.script-actions .add.btn-primary:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

/* Hide Subscribe button if both exist */
.script-actions .subscribe {
  display: none !important;
}

/* Hide other action buttons and basket */
.script-actions .btn-secondary,
.script-actions .quantity-field,
.script-actions .gift,
.script-actions .open-basket,
.script-actions .open-basket-cta,
.script-actions .with-open-basket {
  display: none !important;
}

/* Price Bottom - Next to Button */
.script-price-bottom {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  flex-shrink: 0;
  white-space: nowrap;
}

.price-discount {
  font-size: 12px;
  color: var(--tworst-green);
  font-weight: 700;
  line-height: 1.2;
}

.price-amount {
  font-size: 16px;
  font-weight: 700;
  color: var(--tworst-text);
  font-family: 'JetBrains Mono', monospace;
  line-height: 1.2;
  text-shadow: none !important;
  filter: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-stroke: 0 !important;
  text-rendering: optimizeLegibility;
}

/* Remove all blur effects from price elements */
.price,
.price-amount,
.price-display,
.product-price-display,
.script-price-bottom {
  text-shadow: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-text-stroke: 0 !important;
  text-rendering: optimizeLegibility;
}

/* ============================================
   PACKAGE DETAIL MODAL/POPUP - BUY NOW BUTTON
   ============================================ */
.store-product-full .product-actions .btn-primary,
.store-product-full .product-actions .add.btn-primary {
  background: var(--tworst-green) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 14px 24px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  box-shadow: none !important;
  line-height: 1.2 !important;
  width: 100% !important;
}

.store-product-full .product-actions .btn-primary::before,
.store-product-full .product-actions .add.btn-primary::before {
  content: '+' !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: inline-block !important;
  color: #ffffff !important;
  margin-right: 4px !important;
}

.store-product-full .product-actions .btn-primary:hover,
.store-product-full .product-actions .add.btn-primary:hover {
  background: var(--tworst-green-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(0, 255, 136, 0.3) !important;
  color: #ffffff !important;
}

.store-product-full .product-actions .btn-primary:disabled,
.store-product-full .product-actions .add.btn-primary:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

/* Hide basket elements in package detail */
.store-product-full .product-actions .open-basket,
.store-product-full .product-actions .open-basket-cta,
.store-product-full .product-actions .quantity-field,
.store-product-full .product-actions .with-open-basket,
.store-product-full .product-actions .btn-secondary.wide.open-basket {
  display: none !important;
}

/* Package Detail - Price and Button Layout */
.product-actions-wrapper {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  width: 100%;
}

.store-product-full .product-actions {
  flex: 1;
  min-width: 0;
  max-width: calc(100% - 120px); /* Leave space for price */
  overflow: hidden;
}

.store-product-full .product-actions .price {
  display: none !important; /* Hide price from actions, show it separately if needed */
}

/* Price display next to button in package detail */
.store-product-full .product-price-display {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  flex-shrink: 0;
  flex-grow: 0;
  white-space: nowrap;
  font-size: 16px;
  font-weight: 700;
  color: var(--tworst-text);
  font-family: 'JetBrains Mono', monospace;
  text-shadow: none !important;
  filter: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  min-width: 100px;
  z-index: 1;
  position: relative;
}

.store-product-full .product-price-display .price-amount {
  text-shadow: none !important;
  filter: none !important;
}

/* ============================================
   PACKAGE MEDIA SLIDER - MODAL CONTAINMENT
   ============================================ */
/* Modal fixed size */
.store-product-full[data-popup],
.store-product-full.popup-content {
  max-width: 900px !important;
  max-height: 80vh !important;
  overflow: auto !important;
  margin: 0 auto;
}

.store-product-full .product-media-modern {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--tworst-bg-light);
  border-radius: 12px;
  margin-bottom: 24px;
}

.store-product-full .media-slider {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
  position: relative;
}

.store-product-full .media-slider .slider {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
}

.store-product-full .media-slider .slider::part(container) {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
}

.store-product-full .media-slider .slider::part(wrapper) {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
}

.store-product-full .media-slider .slide {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.store-product-full .media-slider .slide-image {
  max-width: 90%;
  max-height: 500px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.store-product-full .media-slider .slide-frame {
  max-width: 90%;
  max-height: 500px;
  width: auto;
  aspect-ratio: 16 / 9;
  border: none;
  display: block;
}

.store-product-full .product-image-wrapper {
  width: 100%;
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--tworst-bg-light);
  border-radius: 12px;
}

.store-product-full .product-image-wrapper .image {
  max-width: 90%;
  max-height: 500px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Ensure modal/popup container doesn't overflow */
.store-product-full[data-popup] .product-media-modern,
.store-product-full.popup-content .product-media-modern {
  max-width: 100%;
  max-height: 500px;
  overflow: hidden;
}

/* Category Page Responsive */
@media (max-width: 1024px) {
  .scripts-grid {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
  }
}

@media (max-width: 768px) {
  .category-page-header {
    padding: 60px 0 40px;
  }

  .category-header-content {
    padding: 0 20px;
  }

  .category-page-title {
    font-size: 42px;
  }

  .category-page-subtitle {
  font-size: 16px;
  }

  .category-scripts-section {
    padding: 30px 0 60px;
  }

  .category-scripts-container {
    padding: 0 20px;
  }

  .scripts-grid {
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
  }

  .script-card-header {
    padding: 12px 16px;
  }

  .script-info {
    padding: 16px;
  }
}

/* Recent Payments - Responsive */
@media (max-width: 768px) {
  .recent-payments-section {
    padding: 60px 0;
  }

  .payments-container {
    padding: 0 20px;
  }

  .payments-title {
    font-size: 32px;
  }

  .payments-subtitle {
    font-size: 14px;
  }

  .payment-card {
    min-width: 240px;
    padding: 16px;
    gap: 12px;
  }

  .payment-avatar {
    width: 48px;
    height: 48px;
  }

  .payment-avatar-fallback {
    font-size: 20px;
  }

  .payment-name {
    font-size: 14px;
  }

  .payment-time {
    font-size: 12px;
  }

  .payment-amount {
    padding: 6px 12px;
    font-size: 12px;
  }
}

@media (max-width: 480px) {
  .header-container {
    padding: 0 12px;
    height: 56px;
  }

  .logo-w {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }

  .header-cart-btn,
  .header-discord-btn {
    width: 32px;
    height: 32px;
  }

  .header-cart-btn svg,
  .header-discord-btn svg {
    width: 16px;
    height: 16px;
  }

  .header-login-btn,
  .header-user-btn {
    padding: 6px 12px;
    font-size: 12px;
  }

  .tworst-hero {
    padding: 30px 0;
  }

  .hero-container {
    padding: 0 16px;
  }

  .hero-title {
    font-size: 32px;
    margin-bottom: 20px;
    line-height: 1.1;
  }

  .hero-description {
    font-size: 14px;
    margin-bottom: 24px;
    line-height: 1.6;
  }

  .hero-actions {
    flex-direction: column;
    width: 100%;
  }

  .btn-shop-now {
    width: 100%;
    justify-content: center;
  }

  .btn-discord-hero {
    width: 48px;
    height: 48px;
    align-self: center;
  }

  .hero-right {
    height: 200px;
    min-height: 200px;
  }

  .products-title,
  .payments-title {
    font-size: 24px;
  }

  .products-subtitle,
  .payments-subtitle {
    font-size: 13px;
  }

  .product-card-wrapper {
    width: 240px;
  }

  .about-section {
    padding: 40px 0;
  }

  .about-container {
    padding: 0 16px;
    gap: 30px;
  }

  .about-title {
    font-size: 24px;
  }

  .about-subtitle {
    font-size: 14px;
  }

  .about-image-wrapper {
    height: 200px;
  }

  .about-image-title {
    font-size: 28px;
  }

  .about-info-title,
  .about-social-title,
  .about-support-title {
    font-size: 16px;
  }

  .about-info-text,
  .about-support-text {
    font-size: 14px;
  }

  .social-icon {
    width: 40px;
    height: 40px;
  }

  .btn-enjoy-discord {
    padding: 12px 24px;
    font-size: 14px;
  }

  .footer-container {
    padding: 0 16px;
    gap: 30px;
  }

  .footer-logo-large {
    font-size: 50px;
  }

  .footer-brand {
    font-size: 20px;
  }

  .footer-copyright {
    font-size: 12px;
  }

  .footer-link {
    font-size: 13px;
  }

  .category-page-title {
    font-size: 32px;
  }

  .category-page-subtitle {
    font-size: 14px;
  }

  .scripts-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .script-card {
    width: 100%;
  }
}

/* ============================================
   PRODUCTS SECTION
   ============================================ */
.products-section {
  padding: 80px 0;
  background: var(--tworst-bg);
}

.products-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
}

.section-title {
  font-size: 48px;
  font-weight: 900;
  color: var(--tworst-text);
  margin-bottom: 40px;
  letter-spacing: -1px;
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 24px;
}

/* Products Header (Like Payments Header) */
.products-header {
  margin-bottom: 32px;
}

.products-title {
  font-size: 48px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
  margin: 0;
}

.products-title-white {
  color: var(--tworst-text);
}

.products-title-green {
  color: var(--tworst-green);
}

.products-subtitle {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  margin: 4px 0 0 0;
  font-weight: 400;
}

/* Products List - Horizontal Scrollable (Like Payments List) */
.products-list {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 8px 0 24px 0;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: var(--tworst-green) var(--tworst-bg-light);
}

.products-list::-webkit-scrollbar {
  height: 8px;
}

.products-list::-webkit-scrollbar-track {
  background: var(--tworst-bg-light);
  border-radius: 4px;
}

.products-list::-webkit-scrollbar-thumb {
  background: var(--tworst-green);
  border-radius: 4px;
}

.products-list::-webkit-scrollbar-thumb:hover {
  background: var(--tworst-green-dark);
}

.product-card-wrapper {
  flex: 0 0 auto;
  width: 320px;
  animation: fadeInUp 0.6s ease-out backwards;
}

/* Ensure script-card inside product-card-wrapper displays correctly */
.product-card-wrapper .script-card {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* About Section */
.about-section {
  padding: 100px 0;
  background: var(--tworst-bg);
}

.about-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
}

.about-left {
  position: relative;
}

.about-image-wrapper {
  position: relative;
  width: 100%;
  height: 600px;
  border-radius: 16px;
  overflow: hidden;
}

.about-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-image-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 40px;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.9) 100%);
}

.about-image-title {
  font-size: 48px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.about-image-title-white {
  color: var(--tworst-text);
}

.about-image-title-green {
  color: var(--tworst-green);
}

.about-image-title-underline {
  text-decoration: underline;
  text-decoration-color: var(--tworst-green);
  text-underline-offset: 8px;
}

.about-right {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.about-content {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.about-title {
  font-size: 48px;
  font-weight: 900;
  color: var(--tworst-text);
  letter-spacing: -1px;
  line-height: 1.2;
}

.about-title-green {
  color: var(--tworst-green);
  text-decoration: underline;
  text-decoration-color: var(--tworst-green);
  text-underline-offset: 8px;
}

.about-subtitle {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  margin-top: -24px;
}

.about-info-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.about-info-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--tworst-text);
}

.about-info-text {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  line-height: 1.6;
}

.about-social-section {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.about-social-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--tworst-text);
}

.about-social-icons {
  display: flex;
  gap: 16px;
}

.social-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tworst-green);
  transition: all 0.3s ease;
  text-decoration: none;
}

.social-icon:hover {
  background: var(--tworst-green);
  color: var(--tworst-bg);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 255, 136, 0.3);
}

.about-support-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.about-support-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--tworst-text);
}

.about-support-text {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  line-height: 1.6;
}

.about-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}

.btn-enjoy-discord {
  padding: 14px 32px;
  background: var(--tworst-green);
  color: var(--tworst-bg);
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-block;
}

.btn-enjoy-discord:hover {
  background: var(--tworst-green-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 255, 136, 0.3);
}

.btn-info-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  color: var(--tworst-text);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

.btn-info-icon:hover {
  background: var(--tworst-bg-light);
  border-color: var(--tworst-green);
  color: var(--tworst-green);
}

/* Responsive - About Section */
@media (max-width: 1024px) {
  .about-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .about-image-wrapper {
    height: 400px;
  }
}

@media (max-width: 768px) {
  .about-section {
    padding: 60px 0;
  }
  
  .about-container {
    padding: 0 20px;
  }
  
  .about-image-wrapper {
    height: 300px;
  }
  
  .about-image-title {
    font-size: 36px;
  }
  
  .about-title {
    font-size: 36px;
  }
}

/* Package Entry Cards */
.store-product.modern-card {
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s ease;
}

.store-product.modern-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
  border-color: var(--tworst-green);
}

.image-link {
  display: block;
  position: relative;
  overflow: hidden;
}

.image-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow: hidden;
}

.image-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.store-product.modern-card:hover .image-wrapper img {
  transform: scale(1.05);
}

.image-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.store-product.modern-card:hover .image-overlay {
  opacity: 1;
}

.view-details {
  color: var(--tworst-text);
  font-weight: 600;
  font-size: 14px;
}

.image-default {
  width: 100%;
  padding-top: 56.25%;
  background: var(--tworst-bg-light);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.image-default svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--tworst-text-secondary);
}

.product-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.badge {
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.badge-discount {
  background: #ff6b35;
  color: #ffffff;
}

.badge-countdown {
  background: var(--tworst-green);
  color: #000000;
}

.product-content {
  padding: 20px;
}

.product-title {
  margin: 0 0 16px 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.product-title a {
  color: var(--tworst-text);
  text-decoration: none;
  transition: color 0.2s ease;
}

.product-title a:hover {
  color: var(--tworst-green);
}

.product-features {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}

.feature-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  background: var(--tworst-bg-light);
  border: 1px solid var(--tworst-border);
  border-radius: 6px;
  font-size: 12px;
  color: var(--tworst-text-secondary);
}

.feature-icon {
  font-size: 14px;
}

/* Package Actions */
.product-actions {
  margin-top: 16px;
}

.product-actions .price {
  font-size: 24px;
  font-weight: 700;
  color: var(--tworst-green);
  margin-bottom: 16px;
}

.product-actions .price del.discount {
  font-size: 18px;
  color: var(--tworst-text-secondary);
  margin-right: 8px;
  text-decoration: line-through;
}

.product-actions .btn-primary {
  width: 100%;
  padding: 14px 24px;
  background: var(--tworst-green);
  color: #000000;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  transition: all 0.2s ease;
  cursor: pointer;
}

.product-actions .btn-primary:hover {
  background: var(--tworst-green-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 255, 136, 0.3);
}

.product-actions .btn-primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.product-actions .btn-secondary {
  width: 100%;
  padding: 14px 24px;
  background: var(--tworst-bg-light);
  color: var(--tworst-text);
  border: 1px solid var(--tworst-border);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  transition: all 0.2s ease;
  cursor: pointer;
}

.product-actions .btn-secondary:hover {
  background: var(--tworst-bg-card);
  border-color: var(--tworst-green);
  color: var(--tworst-green);
}

/* ============================================
   FOOTER - TWORST STYLE
   ============================================ */
.tworst-footer {
  background: var(--tworst-bg);
  border-top: 1px solid var(--tworst-border);
  padding: 60px 0 40px;
  position: relative;
  margin-top: 80px;
}

.footer-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 60px;
  align-items: start;
}

.footer-left {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footer-brand {
  font-size: 24px;
  font-weight: 700;
  color: var(--tworst-text);
  margin: 0;
}

.footer-copyright {
  font-size: 14px;
  color: var(--tworst-text-secondary);
  margin: 0;
}

.footer-tebex {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
}

.tebex-logo {
  width: 24px;
  height: 24px;
  background: var(--tworst-green);
  color: #000000;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
}

.tebex-text {
  font-size: 14px;
  color: var(--tworst-green);
  font-weight: 600;
}

.footer-disclaimer {
  font-size: 12px;
  color: var(--tworst-text-secondary);
  line-height: 1.6;
  margin-top: 8px;
  max-width: 400px;
}

.footer-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-logo-large {
  font-size: 120px;
  font-weight: 900;
  color: var(--tworst-text);
  letter-spacing: -4px;
  opacity: 0.1;
  font-family: 'Inter', sans-serif;
}

.footer-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
}

.footer-dmca {
  display: flex;
  gap: 0;
}

.dmca-box {
  padding: 8px 16px;
  background: var(--tworst-bg-card);
  border: 1px solid var(--tworst-border);
  font-size: 12px;
  font-weight: 600;
  color: var(--tworst-text);
}

.dmca-box:first-child {
  border-radius: 8px 0 0 8px;
}

.dmca-box.light {
  background: var(--tworst-bg-light);
  border-left: none;
  border-radius: 0 8px 8px 0;
}

.footer-links {
  display: flex;
  gap: 24px;
}

.footer-link {
  color: var(--tworst-text);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: color 0.2s ease;
}

.footer-link:hover {
  color: var(--tworst-green);
}

.footer-bottom-links {
  display: flex;
  gap: 16px;
  margin-top: 8px;
}

.footer-bottom-link {
  color: var(--tworst-text-secondary);
  text-decoration: none;
  font-size: 12px;
  transition: color 0.2s ease;
}

.footer-bottom-link:hover {
  color: var(--tworst-text);
}

.footer-announcement-btn {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 56px;
  height: 56px;
  background: var(--tworst-green);
  border: none;
  border-radius: 50%;
  color: #000000;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(0, 255, 136, 0.3);
  transition: all 0.2s ease;
  z-index: 999;
}

.footer-announcement-btn:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 24px rgba(0, 255, 136, 0.4);
}

.footer-announcement-btn svg {
  width: 24px;
  height: 24px;
}

/* Site Content */
  .site-content {
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 32px;
  width: 100%;
  }

  .site-content-widgets {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 40px;
}

.store-text {
  color: var(--tworst-text-secondary);
  line-height: 1.8;
}

.store-text h1,
.store-text h2,
.store-text h3 {
  color: var(--tworst-text);
  margin-top: 32px;
  margin-bottom: 16px;
}

.store-text p {
  margin-bottom: 16px;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 1200px) {
  .hero-container {
    grid-template-columns: 1fr 1.2fr;
    gap: 40px;
  }

  .hero-right {
    height: 500px;
  }

  .testimonial-card {
    width: 240px;
  }

  .testimonial-3,
  .testimonial-5 {
    width: 300px;
  }

  .discount-card {
    width: 280px;
  }
}

@media (max-width: 1024px) {
  .hero-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .hero-title {
    font-size: 64px;
  }

  .hero-right {
    height: 400px;
    min-height: 400px;
  }

  /* Hide testimonials on tablet and below */
  .testimonials-container {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .header-container {
    padding: 0 16px;
    height: 60px;
    gap: 12px;
  }

  .header-nav {
    display: none;
  }

  .header-link {
    display: none;
  }

  .logo-w {
    width: 45px;
    height: 45px;
    font-size: 24px;
  }

  .header-right {
    gap: 8px;
  }

  .header-cart-btn,
  .header-discord-btn {
    width: 36px;
    height: 36px;
  }

  .header-cart-btn svg,
  .header-discord-btn svg {
    width: 18px;
    height: 18px;
  }

  .header-login-btn {
    padding: 8px 16px;
    font-size: 13px;
  }

  .header-user-btn {
    padding: 8px 16px;
    font-size: 13px;
  }

  .tworst-hero {
    min-height: auto;
    padding: 40px 0;
  }

  .hero-container {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 0 20px;
    min-height: auto;
  }

  .hero-title {
    font-size: 42px;
    letter-spacing: -1px;
    margin-bottom: 24px;
  }

  .hero-title-underline::after {
    height: 3px;
    bottom: 6px;
  }

  .hero-description {
    font-size: 16px;
    margin-bottom: 32px;
  }

  .hero-actions {
    flex-wrap: wrap;
    gap: 12px;
  }

  .btn-shop-now {
    padding: 14px 24px;
    font-size: 14px;
  }

  .btn-discord-hero {
    width: 48px;
    height: 48px;
  }

  /* Hide testimonials on mobile */
  .testimonials-container {
    display: none !important;
  }

  .hero-right {
    height: 300px;
    min-height: 300px;
    overflow: hidden;
  }

  .hero-character-image {
    opacity: 0.4;
  }

  .hero-character-image .character-img {
    max-width: 100%;
    max-height: 100%;
  }

  /* Discount popup button removed */

  .discount-popup-card {
    width: 95%;
    padding: 24px;
  }

  .products-grid {
    grid-template-columns: 1fr;
  }

  .products-section {
    padding: 60px 0;
  }

  .products-container {
    padding: 0 20px;
  }

  .products-title {
    font-size: 36px;
  }

  .products-subtitle {
    font-size: 14px;
  }

  .product-card-wrapper {
    width: 280px;
  }

  .footer-container {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 0 20px;
    text-align: center;
  }

  .footer-left,
  .footer-right {
    align-items: center;
  }

  .footer-logo-large {
    font-size: 80px;
  }

  .footer-links {
    flex-direction: column;
    gap: 16px;
  }
}

/* ============================================
   QUBIT STUDIOS STYLE ADDITIONS
   ============================================ */

/* Typography Overrides for Qubit Style */
.qubit-hero-title, .qubit-section-title, .qubit-stats-title {
  font-family: 'Outfit', 'Inter', sans-serif;
  letter-spacing: -2px;
  text-transform: uppercase;
}

/* Qubit Hero */
.qubit-hero {
  background: #000;
  padding: 100px 0 60px;
  min-height: auto;
}
.qubit-hero-container {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 40px;
}
.hero-badge {
  display: inline-block;
  background: var(--tworst-green);
  color: #000;
  font-weight: 800;
  font-size: 13px;
  padding: 4px 12px;
  border-radius: 4px;
  margin-bottom: 20px;
  letter-spacing: 1px;
}
.qubit-hero-title {
  font-size: 84px;
  font-weight: 900;
  line-height: 0.95;
  color: #fff;
  margin-bottom: 24px;
}
.qubit-hero-desc {
  font-size: 18px;
  color: var(--tworst-text-secondary);
  max-width: 600px;
  line-height: 1.6;
}
.qubit-hero-right {
  flex: 1;
  min-height: 400px;
}

/* Qubit Stats Section */
.qubit-stats-section {
  padding: 80px 0;
  background: #000;
  text-align: center;
}
.qubit-stats-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}
.qubit-stats-title {
  font-size: 64px;
  font-weight: 900;
  color: #fff;
  margin-bottom: 24px;
}
.qubit-stats-desc {
  font-size: 16px;
  color: var(--tworst-text-secondary);
  line-height: 1.6;
  margin-bottom: 60px;
}
.qubit-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.qubit-stat-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.qubit-stat-number {
  font-size: 64px;
  font-weight: 900;
  font-family: 'Outfit', sans-serif;
  color: #fff;
  letter-spacing: -2px;
}
.qubit-stat-label {
  font-size: 18px;
  font-weight: 700;
  color: var(--tworst-text-secondary);
  letter-spacing: 1px;
}

/* Qubit Testimonials */
.qubit-testimonials-wrapper {
  padding: 80px 0;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" opacity="0.05"><path d="M0 0h100v100H0z" fill="none"/><path d="M0 0l10 10v80l10 10V10l10 10v60l10 10V20l10 10v40l10 10V30l10 10v20l10 10z" stroke="%23a3e635" fill="none"/></svg>');
  background-color: #050505;
  border-top: 1px solid rgba(255,255,255,0.05);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.qubit-testimonials-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
.qubit-testimonial-header {
  position: relative;
  margin-bottom: 60px;
}
.qubit-badge-small {
  display: inline-block;
  background: var(--tworst-green);
  color: #000;
  font-weight: 800;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 4px;
  margin-bottom: 16px;
}
.qubit-section-title {
  font-size: 64px;
  font-weight: 900;
  color: #fff;
  line-height: 1;
}
.qubit-rating-summary {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}
.qubit-rating-score {
  color: var(--tworst-green);
  font-weight: 800;
  font-size: 18px;
}
.qubit-rating-text {
  color: var(--tworst-text-secondary);
  font-size: 14px;
}
.qubit-testimonial-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.qubit-t-card {
  background: transparent;
  border-top: 1px solid rgba(255,255,255,0.1);
  padding: 24px 0;
}
.qubit-t-card-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}
.qubit-t-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-size: cover;
}
.qubit-t-info {
  flex: 1;
}
.qubit-t-name {
  color: #fff;
  font-weight: 700;
  font-size: 16px;
}
.qubit-t-product {
  color: var(--tworst-text-secondary);
  font-size: 13px;
}
.qubit-t-score {
  color: var(--tworst-green);
  font-weight: 800;
  font-size: 14px;
}
.qubit-t-content {
  color: var(--tworst-text-secondary);
  font-size: 14px;
  line-height: 1.6;
}

/* Qubit Showcase Section */
.qubit-showcase-section {
  padding: 80px 0;
  background: #000;
}
.qubit-showcase-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
.qubit-showcase-header {
  margin-bottom: 60px;
}
.qubit-section-desc {
  color: var(--tworst-text-secondary);
  font-size: 16px;
  max-width: 600px;
  margin-top: 16px;
  line-height: 1.5;
}

/* Qubit Style Script Cards Override */
.script-card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  transition: transform 0.3s ease;
}
.script-card:hover {
  transform: translateY(-5px);
}
.script-image-wrapper {
  background: transparent !important;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 16px;
  aspect-ratio: auto !important;
  height: auto !important;
}
.script-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
  display: block;
}
.script-info {
  background: transparent !important;
  padding: 0 !important;
}
.script-title {
  margin-bottom: 4px !important;
}
.script-title a {
  font-family: 'Outfit', sans-serif;
  font-weight: 800;
  font-size: 18px;
  color: #fff !important;
  text-transform: uppercase;
}
.script-actions-wrapper {
  margin-top: 4px !important;
  justify-content: flex-start !important;
}
.script-price-bottom {
  margin-top: 0 !important;
}
.script-price-bottom .price-amount {
  font-size: 15px !important;
  color: var(--tworst-green) !important;
  font-weight: 800 !important;
}
.script-card .script-actions {
  display: none !important;
}
.product-card-wrapper {
  background: transparent !important;
  border: none !important;
}
.products-list {
  gap: 40px;
}
.qubit-stat-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.qubit-stat-number {
  font-size: 64px;
  font-weight: 900;
  font-family: 'Outfit', sans-serif;
  color: #fff;
  letter-spacing: -2px;
}
.qubit-stat-label {
  font-size: 18px;
  font-weight: 700;
  color: var(--tworst-text-secondary);
  letter-spacing: 1px;
}

/* Qubit Testimonials */
.qubit-testimonials-wrapper {
  padding: 80px 0;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" opacity="0.05"><path d="M0 0h100v100H0z" fill="none"/><path d="M0 0l10 10v80l10 10V10l10 10v60l10 10V20l10 10v40l10 10V30l10 10v20l10 10z" stroke="%23a3e635" fill="none"/></svg>');
  background-color: #050505;
  border-top: 1px solid rgba(255,255,255,0.05);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.qubit-testimonials-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
.qubit-testimonial-header {
  position: relative;
  margin-bottom: 60px;
}
.qubit-badge-small {
  display: inline-block;
  background: var(--tworst-green);
  color: #000;
  font-weight: 800;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 4px;
  margin-bottom: 16px;
}
.qubit-section-title {
  font-size: 64px;
  font-weight: 900;
  color: #fff;
  line-height: 1;
}
.qubit-rating-summary {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}
.qubit-rating-score {
  color: var(--tworst-green);
  font-weight: 800;
  font-size: 18px;
}
.qubit-rating-text {
  color: var(--tworst-text-secondary);
  font-size: 14px;
}
.qubit-testimonial-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.qubit-t-card {
  background: transparent;
  border-top: 1px solid rgba(255,255,255,0.1);
  padding: 24px 0;
}
.qubit-t-card-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}
.qubit-t-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-size: cover;
}
.qubit-t-info {
  flex: 1;
}
.qubit-t-name {
  color: #fff;
  font-weight: 700;
  font-size: 16px;
}
.qubit-t-product {
  color: var(--tworst-text-secondary);
  font-size: 13px;
}
.qubit-t-score {
  color: var(--tworst-green);
  font-weight: 800;
  font-size: 14px;
}
.qubit-t-content {
  color: var(--tworst-text-secondary);
  font-size: 14px;
  line-height: 1.6;
}

/* Qubit Showcase Section */
.qubit-showcase-section {
  padding: 80px 0;
  background: #000;
}
.qubit-showcase-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
.qubit-showcase-header {
  margin-bottom: 60px;
}
.qubit-section-desc {
  color: var(--tworst-text-secondary);
  font-size: 16px;
  max-width: 600px;
  margin-top: 16px;
  line-height: 1.5;
}

/* Qubit Style Script Cards Override */
.script-card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  transition: transform 0.3s ease;
}
.script-card:hover {
  transform: translateY(-5px);
}
.script-image-wrapper {
  background: transparent !important;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 16px;
  aspect-ratio: auto !important;
  height: auto !important;
}
.script-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
  display: block;
}
.script-info {
  background: transparent !important;
  padding: 0 !important;
}
.script-title {
  margin-bottom: 4px !important;
}
.script-title a {
  font-family: 'Outfit', sans-serif;
  font-weight: 800;
  font-size: 18px;
  color: #fff !important;
  text-transform: uppercase;
}
.script-actions-wrapper {
  margin-top: 4px !important;
  justify-content: flex-start !important;
}
.script-price-bottom {
  margin-top: 0 !important;
}
.script-price-bottom .price-amount {
  font-size: 15px !important;
  color: var(--tworst-green) !important;
  font-weight: 800 !important;
}
.script-card .script-actions {
  display: none !important;
}
.product-card-wrapper {
  background: transparent !important;
  border: none !important;
}
.products-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 30px;
}

@media (max-width: 900px) {
  .qubit-hero-title, .qubit-stats-title, .qubit-section-title {
    font-size: 48px;
  }
  .qubit-stats-grid, .qubit-testimonial-cards {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .qubit-hero-title, .qubit-stats-title, .qubit-section-title {
    font-size: 36px;
  }
  .qubit-stats-grid, .qubit-testimonial-cards {
    grid-template-columns: 1fr;
  }
}

/* Qubit Header Overrides */
.qubit-header-logo {
  display: flex;
  align-items: center;
  gap: 12px;
}
.logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.logo-text span:first-child {
  font-family: 'Outfit', sans-serif;
  font-weight: 900;
  font-size: 20px;
  color: #fff;
}
.logo-text span:last-child {
  font-family: 'Outfit', sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: #fff;
  letter-spacing: 2px;
}

.qubit-header-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.qubit-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border-radius: 4px;
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
  border: none;
  transition: all 0.2s ease;
  text-transform: uppercase;
}
.qubit-btn-login {
  background: var(--tworst-green);
  color: #000;
}
.qubit-btn-login:hover {
  background: #fff;
}
.qubit-btn-checkout {
  background: #111;
  color: #fff;
  border: 1px solid rgba(255,255,255,0.1);
}
.qubit-btn-checkout:hover {
  background: #222;
}
.qubit-btn-currency {
  background: rgba(255,255,255,0.05);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.1);
  padding: 10px 16px;
}

/* Qubit Product Page Styles */
.qubit-product-page {
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 20px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.qubit-product-hero {
  width: 100%;
}

.qubit-product-media img {
  width: 100%;
  max-height: 600px;
  object-fit: cover;
  border-radius: 12px;
}

.qubit-product-split {
  display: flex;
  gap: 40px;
  margin-top: 20px;
}

.qubit-product-left {
  flex: 1;
}

.qubit-product-title {
  font-family: 'Outfit', sans-serif;
  font-size: 56px;
  font-weight: 900;
  text-transform: uppercase;
  color: #fff;
  letter-spacing: -1px;
  line-height: 1;
  margin-bottom: 20px;
}

.qubit-product-description {
  color: var(--tworst-text-secondary);
  font-size: 16px;
  line-height: 1.6;
}

.qubit-product-right {
  width: 380px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.qubit-price-desktop {
  font-size: 24px;
  font-weight: 800;
  color: var(--tworst-text-secondary);
  text-align: right;
}

.qubit-price-desktop .price-amount {
  font-size: 24px;
}

.qubit-product-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.qubit-btn-action {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 20px;
  border-radius: 6px;
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.2s ease;
  width: 100%;
  text-decoration: none;
}

.btn-discord-outlined {
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255,255,255,0.2);
}

.btn-discord-outlined:hover {
  background: rgba(255,255,255,0.05);
  border-color: #fff;
}

.btn-gift-outlined {
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255,255,255,0.1);
}

.btn-gift-outlined:hover {
  background: rgba(255,255,255,0.05);
}

.package-actions-wrapper form button {
  width: 100% !important;
  background: var(--tworst-green) !important;
  color: #000 !important;
  padding: 14px 20px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  border-radius: 6px !important;
  border: none !important;
  text-transform: uppercase !important;
  transition: all 0.2s ease !important;
}

.package-actions-wrapper form button:hover {
  background: #fff !important;
}

@media (max-width: 900px) {
  .qubit-product-split {
    flex-direction: column;
  }
  .qubit-product-right {
    width: 100%;
  }
  .qubit-product-title {
    font-size: 40px;
  }
  .mobile-only-hide {
    display: none !important;
  }
}
@media (min-width: 901px) {
  .desktop-only-hide {
    display: none !important;
  }
}

/* ═══════════════════════════════════════════════
   FRAZY BASKET — Premium Checkout Panel
═══════════════════════════════════════════════ */
.frazy-basket {
  background: #101010;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* HEAD */
.frazy-basket-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 26px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  flex-shrink: 0;
}
.frazy-basket-head-inner {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--frazy-red);
}
.frazy-basket-head-title {
  font-family: 'Outfit', sans-serif;
  font-weight: 900;
  font-size: 18px;
  color: #fff;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.frazy-basket-head-count {
  font-family: 'Outfit', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--frazy-red);
  background: rgba(255,0,76,0.08);
  border: 1px solid rgba(255,0,76,0.2);
  padding: 4px 10px;
  border-radius: 20px;
  text-transform: uppercase;
}

/* ITEMS CONTAINER */
.frazy-basket-items {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden; /* prevent horizontal scroll in popup */
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 100%;
  box-sizing: border-box;
}
.frazy-basket-items::-webkit-scrollbar { width: 3px; }
.frazy-basket-items::-webkit-scrollbar-track { background: transparent; }
.frazy-basket-items::-webkit-scrollbar-thumb {
  background: rgba(255,0,76,0.25);
  border-radius: 2px;
}

/* Very narrow popup (≤340px): collapse thumbnail */
@media (max-width: 340px) {
  .frazy-basket-item {
    grid-template-columns: 50px 1fr;
  }
  .frazy-basket-item-price {
    grid-column: 1 / -1;
    justify-content: flex-start;
    font-size: 13px;
  }
  .frazy-basket-thumb {
    width: 50px;
    height: 50px;
    min-width: 50px;
  }
}

/* ITEM CARD */
.frazy-basket-item {
  display: grid;
  grid-template-columns: 68px 1fr auto;
  align-items: center;
  gap: 12px;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px;
  padding: 14px;
  transition: border-color 0.2s;
  min-width: 0;
}
.frazy-basket-item:hover {
  border-color: rgba(255,0,76,0.18);
}

/* THUMBNAIL */
.frazy-basket-thumb {
  width: 68px;
  height: 68px;
  min-width: 68px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
  position: relative;
  background: rgba(255,0,76,0.06);
  border: 1px solid rgba(255,0,76,0.1);
}
/* Logo fallback — always visible */
.frazy-basket-thumb-logo {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,0,76,0.07);
  border-radius: 8px;
  color: rgba(255,0,76,0.65); /* SVG currentColor */
}
/* Real product image — hidden until onload fires */
.frazy-basket-thumb-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;          /* start invisible — no broken-image flash */
  border-radius: 8px;
  transition: opacity 0.2s;
}

/* ITEM BODY — grid middle column */
.frazy-basket-item-body {
  min-width: 0;        /* critical for grid overflow containment */
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.frazy-basket-item-name {
  font-family: 'Outfit', sans-serif;
  font-weight: 800;
  font-size: 14px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
}
.frazy-basket-item-name:hover { color: var(--frazy-red); }
.frazy-basket-item-tag {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--frazy-red);
  text-transform: uppercase;
}
.frazy-basket-item-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
}

/* QTY CONTROL */
.frazy-basket-qty {
  display: flex;
  align-items: center;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 6px;
  overflow: hidden;
}
.frazy-basket-qty-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: transparent;
  color: rgba(255,255,255,0.5);
  cursor: pointer;
  transition: color 0.15s, background 0.15s;
  flex-shrink: 0;
}
.frazy-basket-qty-btn:hover:not(:disabled) {
  color: #fff;
  background: rgba(255,255,255,0.08);
}
.frazy-basket-qty-btn:disabled { opacity: 0.25; cursor: not-allowed; }
.frazy-basket-qty-btn svg, .frazy-basket-qty-btn * { pointer-events: none; }
.frazy-basket-qty-input {
  width: 34px;
  text-align: center;
  background: transparent;
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  border-left: 1px solid rgba(255,255,255,0.08);
  border-right: 1px solid rgba(255,255,255,0.08);
  padding: 6px 0;
  appearance: textfield;
  -moz-appearance: textfield;
}
.frazy-basket-qty-input::-webkit-inner-spin-button,
.frazy-basket-qty-input::-webkit-outer-spin-button { appearance: none; -webkit-appearance: none; }

/* REMOVE BTN — icon only, no text */
.frazy-basket-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  min-width: 30px;
  border-radius: 6px;
  color: rgba(255,255,255,0.3);
  cursor: pointer;
  transition: color 0.15s, background 0.15s;
  overflow: hidden;
  text-decoration: none;
}
/* Hide the "Remove" text — icon only */
.frazy-basket-remove span {
  display: none !important;
}
.frazy-basket-remove svg { pointer-events: none; flex-shrink: 0; }
.frazy-basket-remove:hover {
  color: var(--frazy-red);
  background: rgba(255,0,76,0.1);
}

/* ITEM PRICE — grid right column */
.frazy-basket-item-price {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  font-family: 'Outfit', sans-serif;
  font-weight: 800;
  font-size: 15px;
  color: #fff;
  text-align: right;
  white-space: nowrap;
  justify-content: flex-end;
}

/* FOOTER */
.frazy-basket-foot {
  padding: 18px 20px 22px;
  border-top: 1px solid rgba(255,255,255,0.06);
  background: rgba(0,0,0,0.25);
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* TOTAL ROW */
.frazy-basket-total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.frazy-basket-total-label {
  font-family: 'Outfit', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 3px;
  color: rgba(255,255,255,0.4);
  text-transform: uppercase;
}
.frazy-basket-total-value {
  font-family: 'Outfit', sans-serif;
  font-weight: 900;
  font-size: 26px;
  color: #fff;
  letter-spacing: -1px;
}

/* CHECKOUT CTA */
.frazy-basket-cta {
  width: 100%;
  background: var(--frazy-red);
  color: #fff;
  border: none;
  padding: 15px 22px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s, transform 0.1s, box-shadow 0.2s;
  box-shadow: 0 4px 20px rgba(255,0,76,0.3);
}
.frazy-basket-cta:hover:not(:disabled) {
  background: #e0003f;
  box-shadow: 0 6px 28px rgba(255,0,76,0.5);
  transform: translateY(-1px);
}
.frazy-basket-cta:active:not(:disabled) { transform: scale(0.99); }
.frazy-basket-cta:disabled { opacity: 0.45; cursor: not-allowed; }
.frazy-basket-cta svg, .frazy-basket-cta * { pointer-events: none; }

/* SECURE BADGE (legacy) */
.frazy-basket-secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: rgba(255,255,255,0.25);
  font-size: 10px;
  letter-spacing: 0.5px;
}

/* EMPTY STATE */
.frazy-basket-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 48px 24px;
  text-align: center;
  color: var(--frazy-subtext);
}
.frazy-basket-empty svg { opacity: 0.2; }
.frazy-basket-empty-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--frazy-text);
  margin-top: 4px;
}
.frazy-basket-empty-sub {
  font-size: 12px;
  color: var(--frazy-subtext);
}
.frazy-basket-empty-cta {
  margin-top: 12px;
  display: inline-flex;
  align-items: center;
  padding: 9px 20px;
  background: var(--frazy-red);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 4px;
  transition: background 0.2s;
}
.frazy-basket-empty-cta:hover { background: #e0003f; }

/* DIVIDER */
.frazy-basket-divider {
  height: 1px;
  background: rgba(255,255,255,0.06);
  margin: 0 20px;
}

/* ITEM TAG */
.frazy-basket-item-tag {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  padding: 2px 7px;
  border-radius: 3px;
  display: inline-block;
  margin-top: 3px;
  background: rgba(255,0,76,0.15);
  color: var(--frazy-red);
  border: 1px solid rgba(255,0,76,0.2);
}
.frazy-basket-item-tag--one {
  background: rgba(255,255,255,0.06);
  color: var(--frazy-subtext);
  border-color: rgba(255,255,255,0.08);
}

/* BREAKDOWN SECTION */
.frazy-basket-breakdown {
  padding: 14px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.frazy-basket-breakdown-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.frazy-basket-breakdown-lbl {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 500;
  color: var(--frazy-subtext);
  letter-spacing: 0.3px;
}
.frazy-basket-breakdown-val {
  font-size: 12px;
  font-weight: 600;
  color: var(--frazy-text);
}
.frazy-basket-breakdown-val--green { color: #4ade80; }
.frazy-basket-breakdown-row--discount .frazy-basket-breakdown-lbl { color: #4ade80; }
.frazy-basket-breakdown-row--total {
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,0.08);
  margin-top: 2px;
}
.frazy-basket-breakdown-lbl {
  font-size: 11px;
}
.frazy-basket-breakdown-row--total .frazy-basket-breakdown-lbl {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
}
.frazy-basket-breakdown-val--total {
  font-size: 18px;
  font-weight: 800;
  color: #fff;
  letter-spacing: -0.3px;
}

/* ACTIONS WRAPPER */
.frazy-basket-actions {
  padding: 0 20px 16px;
}

/* TRUST STRIP */
.frazy-basket-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 12px 20px;
  border-top: 1px solid rgba(255,255,255,0.05);
  background: rgba(0,0,0,0.2);
}
.frazy-basket-trust-item {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  font-weight: 500;
  color: rgba(255,255,255,0.3);
  letter-spacing: 0.2px;
  white-space: nowrap;
}
.frazy-basket-trust-item svg { opacity: 0.5; flex-shrink: 0; }

/* PAYMENT LOGOS */
.frazy-basket-payments {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px 20px 16px;
}
.frazy-basket-payments-lbl {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.2);
}
.frazy-basket-payments-logos {
  display: flex;
  gap: 6px;
  align-items: center;
}
.frazy-payment-badge {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.5px;
  padding: 3px 7px;
  border-radius: 3px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.3);
  text-transform: uppercase;
}
.frazy-payment-badge--paypal { color: rgba(25, 118, 210, 0.6); border-color: rgba(25, 118, 210, 0.2); background: rgba(25, 118, 210, 0.06); }

/* ═══════════════════════════════════════════════════════
   FRAZY PROJECTS — COMPONENT SYSTEM
   Dark. Cinematic. Premium.
══════════════════════════════════════════════════════════ */

/* ── Shared Utilities ── */
.frazy-container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
}
@media (max-width: 768px) { .frazy-container { padding: 0 20px; } }

.frazy-eyebrow {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--frazy-red);
  text-transform: uppercase;
  margin-bottom: 16px;
}

.frazy-section-title {
  font-family: var(--font-display);
  font-size: clamp(40px, 6vw, 72px);
  font-weight: 900;
  color: var(--frazy-text);
  line-height: 1;
  letter-spacing: -2px;
  text-transform: uppercase;
}
.frazy-section-title em {
  font-style: normal;
  color: var(--frazy-red);
}

.frazy-section-title-sm {
  font-family: var(--font-display);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 900;
  color: var(--frazy-text);
  line-height: 1;
  letter-spacing: -1px;
  text-transform: uppercase;
}

.frazy-section-head {
  margin-bottom: 64px;
}
.frazy-section-head--row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 40px;
}

.frazy-section-desc {
  font-size: 16px;
  line-height: 1.7;
  color: var(--frazy-subtext);
  max-width: 560px;
  margin-top: 20px;
}

/* ── Shared Buttons ── */
.frazy-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 24px;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.frazy-btn-red {
  background: var(--frazy-red);
  color: #fff;
}
.frazy-btn-red:hover {
  background: #e0003f;
  transform: translateY(-1px);
  box-shadow: 0 8px 32px var(--frazy-red-glow);
}
.frazy-btn-ghost {
  background: transparent;
  color: var(--frazy-subtext);
  border: 1px solid var(--frazy-border);
}
.frazy-btn-ghost:hover {
  color: #fff;
  border-color: rgba(255,255,255,0.2);
}
.frazy-btn-outline {
  background: transparent;
  color: var(--frazy-text);
  border: 1px solid var(--frazy-border);
}
.frazy-btn-outline:hover {
  border-color: var(--frazy-red);
  color: var(--frazy-red);
}

/* ══════════════════════════════════════
   HEADER
══════════════════════════════════════ */
.frazy-header {
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: rgba(10, 10, 10, 0.95);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--frazy-border);
}
.frazy-header-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
  height: 68px;
  display: flex;
  align-items: center;
  gap: 48px;
}
@media (max-width: 768px) { .frazy-header-inner { padding: 0 20px; gap: 20px; } }

/* Logo */
.frazy-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex-shrink: 0;
}
.frazy-logo-mark {
  width: 44px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.frazy-logo-mark svg {
  width: 44px;
  height: auto;
  display: block;
}
.frazy-logo-img {
  height: 36px;
  width: auto;
}
.frazy-logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}
.frazy-logo-name {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: 17px;
  color: #fff;
  letter-spacing: 1px;
}
.frazy-logo-sub {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 9px;
  color: var(--frazy-subtext);
  letter-spacing: 3px;
  text-transform: uppercase;
}

/* Nav */
.frazy-nav {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1;
}
.frazy-nav-link {
  padding: 6px 14px;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--frazy-subtext);
  text-decoration: none;
  text-transform: uppercase;
  border-radius: 4px;
  transition: all 0.15s ease;
  display: flex;
  align-items: center;
  gap: 6px;
}
.frazy-nav-link:hover,
.frazy-nav-link.is-active {
  color: #fff;
  background: rgba(255,255,255,0.05);
}
.frazy-nav-discord {
  color: #7289da;
}
.frazy-nav-discord:hover {
  color: #7289da;
  background: rgba(114,137,218,0.1);
}

/* Header Actions */
.frazy-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  flex-shrink: 0;
}
.frazy-currency-tag {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--frazy-subtext);
  border: 1px solid var(--frazy-border);
  padding: 6px 10px;
  border-radius: 4px;
}

/* Mobile Toggle */
.frazy-mobile-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}
.frazy-mobile-toggle span {
  display: block;
  width: 22px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: all 0.2s;
}
@media (max-width: 900px) {
  .frazy-nav { display: none; }
  .frazy-mobile-toggle { display: flex; }
}

/* ══════════════════════════════════════
   HERO
══════════════════════════════════════ */
.frazy-hero {
  position: relative;
  min-height: calc(100vh - 68px);
  display: flex;
  align-items: center;
  background: var(--frazy-bg);
  overflow: hidden;
}

/* Noise texture overlay */
.frazy-hero-noise {
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
  pointer-events: none;
}

/* Red ambient spotlight — follows mouse cursor */
.frazy-hero-glow {
  position: absolute;
  width: 700px;
  height: 700px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--frazy-red-glow) 0%, transparent 65%);
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: left 0.08s ease-out, top 0.08s ease-out;
  left: 25%;
  top: 75%;
  will-change: left, top;
}

.frazy-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
  width: 100%;
}

.frazy-hero-label {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 4px;
  color: var(--frazy-red);
  text-transform: uppercase;
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.frazy-hero-label::before {
  content: '';
  display: block;
  width: 36px;
  height: 1px;
  background: var(--frazy-red);
}

.frazy-hero-title {
  font-family: var(--font-display);
  font-size: clamp(56px, 9vw, 120px);
  font-weight: 900;
  line-height: 0.9;
  letter-spacing: -4px;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 48px;
}
.frazy-hero-title em {
  font-style: normal;
  color: var(--frazy-red);
  display: block;
}

.frazy-hero-sub {
  max-width: 420px;
  margin-bottom: 52px;
}
.frazy-hero-sub p {
  font-size: 18px;
  font-weight: 400;
  color: var(--frazy-subtext);
  line-height: 1.8;
}
.frazy-hero-punchline {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 20px !important;
}

.frazy-hero-cta {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

/* Scroll indicator */
.frazy-hero-scroll {
  position: absolute;
  bottom: 48px;
  right: 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.frazy-hero-scroll span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--frazy-muted);
  writing-mode: vertical-rl;
}
.frazy-scroll-line {
  width: 1px;
  height: 60px;
  background: linear-gradient(to bottom, var(--frazy-red), transparent);
  animation: scrollPulse 1.8s ease-in-out infinite;
}
@keyframes scrollPulse {
  0%, 100% { opacity: 0.3; } 50% { opacity: 1; }
}

@media (max-width: 900px) {
  .frazy-hero-inner { padding: 0; }
  .frazy-hero-label {
    justify-content: center;
    margin-bottom: 20px;
    font-size: 10px;
    letter-spacing: 3px;
  }
  .frazy-hero-title {
    font-size: clamp(42px, 11vw, 72px);
    letter-spacing: -2px;
    margin-bottom: 24px;
  }
  .frazy-hero-sub {
    max-width: 100%;
    margin: 0 auto 32px;
  }
  .frazy-hero-sub p { font-size: 15px; line-height: 1.7; }
  .frazy-hero-punchline { font-size: 16px !important; }
  .frazy-hero-cta {
    justify-content: center;
    gap: 10px;
  }
  .frazy-hero-scroll { display: none; }
}

@media (max-width: 480px) {
  .frazy-hero-title { font-size: clamp(38px, 13vw, 58px); letter-spacing: -1.5px; }
  .frazy-hero-label { font-size: 9px; letter-spacing: 2.5px; }
  .frazy-hero-sub p { font-size: 14px; }
  .frazy-hero-cta .frazy-btn { flex: 1 1 140px; justify-content: center; text-align: center; }
}

/* ══════════════════════════════════════
   TICKER
══════════════════════════════════════ */
.frazy-ticker {
  background: var(--frazy-red);
  overflow: hidden;
  padding: 14px 0;
  white-space: nowrap;
}
.frazy-ticker-track {
  display: inline-flex;
  gap: 40px;
  animation: tickerScroll 30s linear infinite;
}
.frazy-ticker-track span {
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #fff;
}
.frazy-ticker-dot {
  opacity: 0.6;
}
@keyframes tickerScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ══════════════════════════════════════
   STATS
══════════════════════════════════════ */
.frazy-stats {
  padding: 100px 0;
  border-bottom: 1px solid var(--frazy-border);
}
.frazy-stats-grid {
  display: flex;
  align-items: center;
  gap: 0;
}
.frazy-stat {
  flex: 1;
  text-align: center;
  padding: 40px 20px;
}
.frazy-stat-divider {
  width: 1px;
  height: 80px;
  background: var(--frazy-border);
  flex-shrink: 0;
}
.frazy-stat-num {
  font-family: var(--font-display);
  font-size: clamp(48px, 6vw, 72px);
  font-weight: 900;
  color: #fff;
  letter-spacing: -3px;
  line-height: 1;
  margin-bottom: 12px;
}
.frazy-stat-num span {
  color: var(--frazy-red);
}
.frazy-stat-lbl {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--frazy-subtext);
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .frazy-stats-grid { flex-direction: column; }
  .frazy-stat-divider { width: 60px; height: 1px; }
}

/* ══════════════════════════════════════
   PRODUCTS
══════════════════════════════════════ */
.frazy-products {
  padding: 120px 0;
  background: var(--frazy-bg);
}
.frazy-loading-state {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 80px;
  width: 100%;
}
.frazy-loading-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--frazy-red);
  animation: frazydot 1.2s ease-in-out infinite;
}
.frazy-loading-dot:nth-child(2) { animation-delay: 0.2s; }
.frazy-loading-dot:nth-child(3) { animation-delay: 0.4s; }
@keyframes frazydot { 0%,80%,100%{transform:scale(0.5);opacity:0.3} 40%{transform:scale(1);opacity:1} }

.frazy-empty-state {
  text-align: center;
  color: var(--frazy-subtext);
  padding: 80px;
  width: 100%;
  font-size: 14px;
}

/* ══════════════════════════════════════
   REVIEWS
══════════════════════════════════════ */
.frazy-reviews {
  padding: 120px 0;
  background: #080808;
  border-top: 1px solid var(--frazy-border);
}
.frazy-reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--frazy-border);
  border: 1px solid var(--frazy-border);
}
.frazy-review-card {
  background: var(--frazy-card);
  padding: 40px 36px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  transition: background 0.2s;
}
.frazy-review-card:hover {
  background: #131313;
}
.frazy-review-score {
  font-family: var(--font-display);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2px;
  color: var(--frazy-red);
}
.frazy-review-text {
  font-size: 15px;
  line-height: 1.7;
  color: #ccc;
  flex: 1;
}
.frazy-review-author {
  display: flex;
  align-items: center;
  gap: 12px;
  border-top: 1px solid var(--frazy-border);
  padding-top: 20px;
}
.frazy-review-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--frazy-red-dim);
  color: var(--frazy-red);
  font-weight: 800;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.frazy-review-name {
  font-weight: 700;
  font-size: 13px;
  color: #fff;
  letter-spacing: 1px;
}
.frazy-review-product {
  font-size: 12px;
  color: var(--frazy-subtext);
  margin-top: 2px;
}
@media (max-width: 900px) { .frazy-reviews-grid { grid-template-columns: 1fr; } }

/* ══════════════════════════════════════
   RECENT PAYMENTS
══════════════════════════════════════ */
.frazy-recents {
  padding: 100px 0;
  border-top: 1px solid var(--frazy-border);
}
.frazy-live-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--frazy-red);
}
.frazy-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--frazy-red);
  animation: livePulse 1.5s ease-in-out infinite;
}
@keyframes livePulse { 0%,100%{opacity:0.4;transform:scale(1)} 50%{opacity:1;transform:scale(1.3)} }

.frazy-payments-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1px;
}
.frazy-payment-card {
  background: var(--frazy-card);
  padding: 20px 24px;
  display: flex;
  align-items: center;
  gap: 16px;
  transition: background 0.15s;
}
.frazy-payment-card:hover { background: #131313; }
.frazy-payment-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--frazy-red-dim);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frazy-payment-avatar img { width: 100%; height: 100%; object-fit: cover; }
.frazy-payment-avatar-fallback {
  font-weight: 800;
  font-size: 16px;
  color: var(--frazy-red);
}
.frazy-payment-info { flex: 1; }
.frazy-payment-name { font-size: 14px; font-weight: 700; color: #fff; }
.frazy-payment-time { font-size: 12px; color: var(--frazy-subtext); margin-top: 2px; }
.frazy-payment-tag {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 2px;
  color: var(--frazy-red);
  border: 1px solid var(--frazy-red-dim);
  padding: 3px 8px;
  border-radius: 3px;
}
.frazy-payment-placeholder {
  padding: 40px;
  text-align: center;
  color: var(--frazy-subtext);
  font-size: 13px;
  width: 100%;
}

/* ══════════════════════════════════════
   ABOUT
══════════════════════════════════════ */
.frazy-about {
  padding: 120px 0;
  background: #080808;
  border-top: 1px solid var(--frazy-border);
}
.frazy-about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
  align-items: start;
}
.frazy-about-text {
  font-size: 16px;
  line-height: 1.8;
  color: var(--frazy-subtext);
  margin: 28px 0 40px;
}
.frazy-about-facts {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 48px;
}
.frazy-fact {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  font-size: 14px;
  color: #aaa;
}
.frazy-fact-icon {
  color: var(--frazy-red);
  font-size: 8px;
  padding-top: 5px;
  flex-shrink: 0;
}
.frazy-about-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.frazy-discount-btn {
  background: none;
}
.frazy-about-right {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 56px;
}
.frazy-about-card {
  border: 1px solid var(--frazy-border);
  padding: 32px;
  border-radius: 4px;
  background: var(--frazy-card);
}
.frazy-about-card p {
  font-size: 14px;
  line-height: 1.7;
  color: var(--frazy-subtext);
  margin-top: 12px;
}
.frazy-about-card--red {
  border-color: var(--frazy-red);
  position: relative;
  overflow: hidden;
}
.frazy-about-card--red::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--frazy-red);
}
.frazy-about-card-header {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 3px;
  color: var(--frazy-red);
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .frazy-about-grid { grid-template-columns: 1fr; gap: 60px; }
  .frazy-about-right { padding-top: 0; }
}

/* ══════════════════════════════════════
   FOOTER
══════════════════════════════════════ */
.frazy-footer {
  background: #050505;
  border-top: 1px solid var(--frazy-border);
  position: relative;
  overflow: hidden;
  padding: 80px 0 0;
}
.frazy-footer-brand-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: var(--font-display);
  font-size: clamp(120px, 18vw, 220px);
  font-weight: 900;
  color: #fff;
  opacity: 0.02;
  letter-spacing: -8px;
  pointer-events: none;
  white-space: nowrap;
  user-select: none;
}
.frazy-footer-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 60px;
  padding-bottom: 60px;
  border-bottom: 1px solid var(--frazy-border);
  position: relative;
}
.frazy-footer-logo {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 900;
  color: #fff;
  letter-spacing: 1px;
  margin-bottom: 12px;
}
.frazy-footer-tagline {
  font-size: 13px;
  color: var(--frazy-subtext);
  margin-bottom: 28px;
}
.frazy-footer-socials {
  display: flex;
  gap: 10px;
}
.frazy-social-link {
  width: 38px;
  height: 38px;
  border-radius: 4px;
  border: 1px solid var(--frazy-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--frazy-subtext);
  text-decoration: none;
  transition: all 0.2s;
}
.frazy-social-link:hover {
  border-color: var(--frazy-red);
  color: var(--frazy-red);
}
.frazy-footer-col-title {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 3px;
  color: var(--frazy-subtext);
  text-transform: uppercase;
  margin-bottom: 20px;
}
.frazy-footer-link {
  display: block;
  font-size: 14px;
  color: #555;
  text-decoration: none;
  margin-bottom: 10px;
  transition: color 0.15s;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  padding: 0;
  font-family: var(--font-body);
}
.frazy-footer-btn {
  display: block;
}
.frazy-footer-link:hover {
  color: #fff;
}
.frazy-footer-bottom {
  padding: 24px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.frazy-footer-copy {
  font-size: 12px;
  color: var(--frazy-muted);
}
.frazy-footer-tebex {
  font-size: 12px;
  color: var(--frazy-muted);
  display: flex;
  align-items: center;
  gap: 6px;
}
.frazy-footer-tebex strong { color: #888; }
@media (max-width: 900px) {
  .frazy-footer-top { grid-template-columns: 1fr 1fr; gap: 40px; }
  .frazy-footer-bottom { flex-direction: column; gap: 12px; text-align: center; }
}
@media (max-width: 600px) {
  .frazy-footer-top { grid-template-columns: 1fr; }
}

/* ══════════════════════════════════════
   TRUST / POLICY STRIP
══════════════════════════════════════ */
.frazy-trust-strip {
  padding: 80px 0;
  border-bottom: 1px solid var(--frazy-border);
  background: var(--frazy-bg);
}
.frazy-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--frazy-border);
  border: 1px solid var(--frazy-border);
}
.frazy-trust-card {
  background: var(--frazy-card);
  padding: 36px 28px;
  display: flex;
  gap: 20px;
  align-items: flex-start;
  transition: background 0.2s;
}
.frazy-trust-card:hover {
  background: #131313;
}
.frazy-trust-icon {
  color: var(--frazy-red);
  flex-shrink: 0;
  margin-top: 3px;
}
.frazy-trust-label {
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
  color: var(--frazy-red);
  text-transform: uppercase;
  margin-bottom: 10px;
}
.frazy-trust-body p {
  font-size: 13px;
  line-height: 1.7;
  color: var(--frazy-subtext);
}
@media (max-width: 1100px) { .frazy-trust-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .frazy-trust-grid { grid-template-columns: 1fr; } }

/* ══════════════════════════════════════
   FILTER TABS
══════════════════════════════════════ */
.frazy-filters {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--frazy-border);
}
.frazy-filter-btn {
  padding: 8px 18px;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  background: transparent;
  color: var(--frazy-subtext);
  border: 1px solid var(--frazy-border);
  border-radius: 3px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.frazy-filter-btn:hover {
  color: #fff;
  border-color: rgba(255,255,255,0.2);
}
.frazy-filter-btn.is-active {
  background: var(--frazy-red);
  color: #fff;
  border-color: var(--frazy-red);
}

/* Product card fade-in animation on filter switch */
@keyframes frazyCardIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}
.frazy-card-fade {
  animation: frazyCardIn 0.35s ease both;
}

/* ══════════════════════════════════════
   PACKAGE DETAIL PAGE — v3
   Left: Slider + Description
   Right: Sticky purchase panel
══════════════════════════════════════ */
.fpkg-wrapper {
  background: var(--frazy-bg);
}

/* Top bar — back button */
.fpkg-topbar {
  border-bottom: 1px solid var(--frazy-border);
  padding: 16px 0;
}
.fpkg-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--frazy-subtext);
  text-decoration: none;
  transition: color 0.15s;
}
.fpkg-back:hover { color: #fff; }

/* ── Main split layout ── */
.fpkg-layout {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 48px;
  padding: 40px 0 100px;
  align-items: start;
}
@media (max-width: 1024px) {
  .fpkg-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

/* ── LEFT: Media + Description ── */
.fpkg-media-col {
  min-width: 0; /* prevent grid blowout */
}

/* Slider container — Tebex's media-slider adapts inside */
.fpkg-media-main {
  border: 1px solid var(--frazy-border);
  border-radius: 8px;
  overflow: hidden;
  background: #000;
}
.fpkg-media-main .media-slider {
  width: 100%;
}
.fpkg-media-main .media-slider .slider {
  border-radius: 8px 8px 0 0;
}
.fpkg-media-main .media-slider .slide-image {
  border-radius: 0;
}
.fpkg-media-main .media-slider .thumbs {
  background: #0a0a0a;
  border-top: 1px solid var(--frazy-border);
  padding: 8px;
  border-radius: 0 0 8px 8px;
}
.fpkg-media-main .media-slider .thumb {
  border-radius: 4px;
  overflow: hidden;
  border: 2px solid transparent;
  transition: border-color 0.15s;
}
.fpkg-media-main .media-slider .thumb.active {
  border-color: var(--frazy-red);
}
/* Zoom cursor on slider images */
.fpkg-media-main .media-slider .slide-image {
  cursor: zoom-in !important;
}

/* Lightbox toggle button — override shared.css completely */
.fpkg-media-main .media-slider .open-lightbox {
  position: absolute !important;
  right: 12px !important;
  bottom: 12px !important;
  top: auto !important;
  left: auto !important;
  width: 40px !important;
  height: 40px !important;
  background: rgba(0,0,0,0.7) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 6px !important;
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
  cursor: pointer !important;
  visibility: visible !important;
  opacity: 1 !important;
  transition: all 0.2s ease !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
.fpkg-media-main .media-slider .open-lightbox::before {
  content: "" !important;
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  flex: none !important;
  background-color: #fff !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cpolyline points='9 21 3 21 3 15'/%3E%3Cline x1='21' y1='3' x2='14' y2='10'/%3E%3Cline x1='3' y1='21' x2='10' y2='14'/%3E%3C/svg%3E") center/contain no-repeat !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cpolyline points='9 21 3 21 3 15'/%3E%3Cline x1='21' y1='3' x2='14' y2='10'/%3E%3Cline x1='3' y1='21' x2='10' y2='14'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fpkg-media-main .media-slider .open-lightbox:hover {
  background: var(--frazy-red) !important;
  border-color: var(--frazy-red) !important;
  transform: scale(1.05);
}
.fpkg-media-main .media-slider .open-lightbox:hover::before {
  background-color: #fff !important;
}

/* Single image fallback */
.fpkg-single-image {
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fpkg-cover-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.fpkg-cover-placeholder {
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: var(--frazy-muted);
  background: #0a0a0a;
  border-radius: 8px;
}

/* Tags below slider */
.fpkg-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
.fpkg-tag {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 5px 12px;
  border-radius: 3px;
  text-transform: uppercase;
}
.fpkg-tag--qb { background: rgba(246, 59, 75, 0.15); color: #f63b44; border: 1px solid rgba(246, 59, 75, 0.25); }
.fpkg-tag--esx { background: rgba(251,146,60,0.15); color: #fb923c; border: 1px solid rgba(251,146,60,0.25); }
.fpkg-tag--sa, .fpkg-tag--standalone { background: rgba(34,197,94,0.12); color: #22c55e; border: 1px solid rgba(34,197,94,0.2); }
.fpkg-tag--escrow { background: var(--frazy-red-dim); color: var(--frazy-red); border: 1px solid rgba(255,0,76,0.2); }
.fpkg-tag--open { background: rgba(168,85,247,0.1); color: #a855f7; border: 1px solid rgba(168,85,247,0.2); }
.fpkg-tag--fivem { background: rgba(255,165,0,0.08); color: #f59e0b; border: 1px solid rgba(255,165,0,0.15); }

/* Description section below slider */
.fpkg-desc-section {
  margin-top: 32px;
  border: 1px solid var(--frazy-border);
  border-radius: 8px;
  overflow: hidden;
}
.fpkg-desc-header {
  padding: 16px 24px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 3px;
  color: var(--frazy-subtext);
  text-transform: uppercase;
  border-bottom: 1px solid var(--frazy-border);
  background: #0a0a0a;
}
.fpkg-desc {
  padding: 24px;
  font-size: 15px;
  line-height: 1.8;
  color: #d7d7d7;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}
.fpkg-desc * {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.fpkg-desc p,
.fpkg-desc li,
.fpkg-desc span,
.fpkg-desc div {
  color: inherit !important;
  white-space: normal !important;
}
.fpkg-desc h1, .fpkg-desc h2, .fpkg-desc h3 {
  font-family: var(--font-display);
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: -1px;
  margin: 24px 0 12px;
}
.fpkg-desc h1:first-child, .fpkg-desc h2:first-child, .fpkg-desc h3:first-child { margin-top: 0; }
.fpkg-desc ul, .fpkg-desc ol { padding-left: 20px; color: #d7d7d7; }
.fpkg-desc li { margin-bottom: 6px; }
.fpkg-desc a { color: var(--frazy-red); }
.fpkg-desc strong { color: #fff; }
.fpkg-desc img { max-width: 100%; border-radius: 6px; margin: 12px 0; }
.fpkg-desc pre,
.fpkg-desc code {
  white-space: pre-wrap !important;
  overflow-wrap: anywhere;
}

/* ── RIGHT: Sticky Purchase Panel ── */
.fpkg-info-col {
  min-width: 0;
}
.fpkg-info-sticky {
  position: sticky;
  top: 80px; /* below sticky header */
  display: flex;
  flex-direction: column;
  gap: 0;
  background: var(--frazy-card);
  border: 1px solid var(--frazy-border);
  border-radius: 8px;
  padding: 28px;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .fpkg-info-sticky {
    position: static;
  }
}

.fpkg-breadcrumb {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--frazy-red);
  margin-bottom: 12px;
}

.fpkg-title {
  font-family: var(--font-display);
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 900;
  letter-spacing: -1px;
  line-height: 1.05;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 20px;
}

/* Price */
.fpkg-price-block {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--frazy-border);
}
.fpkg-price-main {
  font-family: var(--font-display);
  font-size: 36px;
  font-weight: 900;
  letter-spacing: -1px;
  color: #fff;
  line-height: 1;
}
.fpkg-price-main em {
  font-style: normal;
  font-size: 16px;
  color: var(--frazy-subtext);
  letter-spacing: 0;
  font-weight: 500;
  margin-left: 4px;
}
.fpkg-price-original {
  font-size: 18px;
  color: var(--frazy-muted);
  text-decoration: line-through;
  font-weight: 500;
}
.fpkg-discount-badge {
  background: var(--frazy-red);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  padding: 3px 8px;
  border-radius: 3px;
  letter-spacing: 1px;
}

/* Actions */
.fpkg-actions {
  margin-bottom: 12px;
}

/* Override Tebex action buttons inside our wrapper */
.fpkg-add-btn-wrap .actions.product-actions {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.fpkg-add-btn-wrap .actions.product-actions p.price {
  display: none !important;
}
.fpkg-add-btn-wrap .actions.product-actions .add.btn-primary,
.fpkg-add-btn-wrap .actions.product-actions a.btn-primary,
.fpkg-add-btn-wrap .actions.product-actions button.btn-primary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: var(--frazy-red) !important;
  color: #fff !important;
  border: none !important;
  padding: 16px 24px !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 5px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
}
.fpkg-add-btn-wrap .actions.product-actions .add.btn-primary:hover,
.fpkg-add-btn-wrap .actions.product-actions a.btn-primary:hover,
.fpkg-add-btn-wrap .actions.product-actions button.btn-primary:hover {
  background: #e0003f !important;
  box-shadow: 0 8px 32px var(--frazy-red-glow) !important;
  transform: translateY(-1px) !important;
}

/* In basket quantity */
.fpkg-add-btn-wrap .quantity-field {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  background: #111 !important;
  border: 1px solid var(--frazy-border) !important;
  border-radius: 5px !important;
  padding: 4px !important;
  width: 100% !important;
  margin-top: 8px !important;
}
.fpkg-add-btn-wrap .quantity-field button {
  background: transparent !important;
  border: none !important;
  color: #fff !important;
  font-size: 18px !important;
  cursor: pointer !important;
  font-weight: 700 !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 4px !important;
  transition: background 0.15s !important;
}
.fpkg-add-btn-wrap .quantity-field button:hover {
  background: rgba(255,255,255,0.08) !important;
}
.fpkg-add-btn-wrap .quantity-field .open-basket {
  flex: 1 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--frazy-red) !important;
  cursor: pointer !important;
  background: none !important;
  border: none !important;
}
.fpkg-add-btn-wrap .quantity-field input.quantity {
  width: 40px !important;
  background: transparent !important;
  border: none !important;
  color: #fff !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}
.fpkg-add-btn-wrap .btn-secondary,
.fpkg-add-btn-wrap .open-basket-cta {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: transparent !important;
  color: var(--frazy-red) !important;
  border: 1px solid var(--frazy-border) !important;
  padding: 14px 20px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 5px !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  margin: 8px 0 0 0 !important;
}
.fpkg-add-btn-wrap .btn-secondary:hover,
.fpkg-add-btn-wrap .open-basket-cta:hover {
  background: var(--frazy-red-dim) !important;
  border-color: var(--frazy-red) !important;
}
/* Gift button */
.fpkg-add-btn-wrap .gift {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  background: transparent !important;
  color: var(--frazy-subtext) !important;
  border: 1px solid var(--frazy-border) !important;
  padding: 12px 20px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 5px !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  margin: 8px 0 0 0 !important;
}

/* Discord button */
.fpkg-discord-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 20px;
  background: transparent;
  border: 1px solid var(--frazy-border);
  border-radius: 5px;
  color: #7289da;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.2s;
  margin-top: 8px;
}
.fpkg-discord-btn:hover {
  background: rgba(114,137,218,0.08);
  border-color: #7289da;
}

/* Policy strip */
.fpkg-policies {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 20px;
  border-top: 1px solid var(--frazy-border);
  margin-top: 20px;
}
.fpkg-policy {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--frazy-subtext);
  font-weight: 500;
}
.fpkg-policy svg {
  color: var(--frazy-red);
  flex-shrink: 0;
}

/* Trust badges */
.fpkg-trust-badges {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--frazy-border);
}
.fpkg-trust-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 14px 8px;
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--frazy-border);
  border-radius: 6px;
  text-align: center;
  transition: border-color 0.2s;
}
.fpkg-trust-badge:hover {
  border-color: var(--frazy-red);
}
.fpkg-trust-badge svg {
  color: var(--frazy-red);
}
.fpkg-trust-badge span {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--frazy-subtext);
  line-height: 1.3;
  text-transform: uppercase;
}


/* ══════════════════════════════════════
   CATEGORY PAGE
══════════════════════════════════════ */
.fcat-wrapper {
  background: var(--frazy-bg);
}
.fcat-header {
  border-bottom: 1px solid var(--frazy-border);
  padding: 80px 0 60px;
  background: linear-gradient(180deg, rgba(255,0,76,0.04) 0%, transparent 100%);
}
.fcat-header-inner { max-width: 700px; }
.fcat-title {
  font-family: var(--font-display);
  font-size: clamp(48px, 8vw, 100px);
  font-weight: 900;
  letter-spacing: -4px;
  line-height: 0.9;
  color: #fff;
  text-transform: uppercase;
  margin: 16px 0 24px;
}
.fcat-desc {
  font-size: 16px;
  color: var(--frazy-subtext);
  line-height: 1.7;
  max-width: 540px;
  margin-bottom: 20px;
}
.fcat-count {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--frazy-subtext);
  text-transform: uppercase;
  border: 1px solid var(--frazy-border);
  padding: 6px 14px;
  border-radius: 20px;
}
.fcat-grid-section {
  padding: 60px 0 120px;
}
.fcat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}
@media (max-width: 768px) { .fcat-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; } }
@media (max-width: 480px) { .fcat-grid { grid-template-columns: 1fr; } }
/* ══ Category Toolbar: Search + Framework Filter ══ */
.fcat-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.fcat-search-wrap {
  position: relative;
  flex: 1;
  min-width: 220px;
}
.fcat-search-wrap svg {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--frazy-subtext);
  pointer-events: none;
}
.fcat-search {
  width: 100%;
  box-sizing: border-box;
  background: var(--frazy-card);
  border: 1px solid var(--frazy-border);
  border-radius: 6px;
  color: #fff;
  font-size: 14px;
  font-family: inherit;
  padding: 10px 14px 10px 42px;
  outline: none;
  transition: border-color 0.2s;
}
.fcat-search:focus { border-color: var(--frazy-red); }
.fcat-search::placeholder { color: var(--frazy-subtext); }
.fcat-filter-btns {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.fcat-filter-btn {
  background: transparent;
  border: 1px solid var(--frazy-border);
  color: var(--frazy-subtext);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 9px 16px;
  border-radius: 4px;
  cursor: pointer;
  font-family: inherit;
  transition: border-color 0.2s, color 0.2s, background 0.2s;
  white-space: nowrap;
}
.fcat-filter-btn:hover {
  border-color: var(--frazy-red);
  color: #fff;
}
.fcat-filter-btn.is-active {
  background: var(--frazy-red);
  border-color: var(--frazy-red);
  color: #fff;
}
@media (max-width: 600px) {
  .fcat-toolbar { flex-direction: column; align-items: stretch; }
  .fcat-search-wrap { min-width: 0; }
}


/* ══════════════════════════════════════
   FCARD — Product Cards v2
   Tag system + price row + category
══════════════════════════════════════ */
.fcard {
  background: var(--frazy-card);
  border: 1px solid var(--frazy-border);
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
  display: flex;
  flex-direction: column;
}
.fcard:hover {
  border-color: var(--frazy-red);
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(255,0,76,0.08);
}

/* Image area */
.fcard-image-wrap {
  display: block;
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #000;
  text-decoration: none;
}
.fcard-image {
  width: 100%;
  height: 100%;
  object-fit: fill;
  display: block;
  transition: transform 0.5s ease;
}
.fcard:hover .fcard-image {
  transform: scale(1.06);
}
.fcard-image-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0a0a0a;
  color: #333;
}

/* Hover overlay */
.fcard-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,0.7) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s;
}
.fcard:hover .fcard-overlay { opacity: 1; }
.fcard-cta {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2px;
  color: #fff;
  background: rgba(255,0,76,0.85);
  padding: 10px 20px;
  border-radius: 4px;
  backdrop-filter: blur(4px);
  transition: background 0.2s;
}
.fcard-cta:hover {
  background: var(--frazy-red);
}

/* Discount badge on image */
.fcard-discount-float {
  position: absolute;
  top: 10px;
  right: 10px;
  background: var(--frazy-red);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  padding: 3px 8px;
  border-radius: 3px;
  letter-spacing: 1px;
  z-index: 2;
}

/* Card body — below image */
.fcard-body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}

/* Category eyebrow */
.fcard-category {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--frazy-red);
  opacity: 0.8;
}

/* Title */
.fcard-name {
  margin: 0;
  font-family: var(--font-display);
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1.2;
}
.fcard-name a {
  color: #fff;
  text-decoration: none;
  transition: color 0.15s;
}
.fcard-name a:hover { color: var(--frazy-red); }

/* Tag row — auto-generated by JS */
.fcard-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-height: 0;
}
.fcard-tags:empty { display: none; }
.fcard-tag {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.5px;
  padding: 3px 8px;
  border-radius: 3px;
  text-transform: uppercase;
  border: 1px solid;
}
.fcard-tag--qb { background: rgba(59,130,246,0.1); color: #60a5fa; border-color: rgba(59,130,246,0.2); }
.fcard-tag--esx { background: rgba(251,146,60,0.1); color: #fb923c; border-color: rgba(251,146,60,0.2); }
.fcard-tag--standalone { background: rgba(34,197,94,0.08); color: #4ade80; border-color: rgba(34,197,94,0.15); }
.fcard-tag--escrow { background: var(--frazy-red-dim); color: var(--frazy-red); border-color: rgba(255,0,76,0.15); }
.fcard-tag--open { background: rgba(168,85,247,0.1); color: #a855f7; border-color: rgba(168,85,247,0.2); }
.fcard-tag--fivem { background: rgba(255,165,0,0.08); color: #f59e0b; border-color: rgba(255,165,0,0.15); }

/* Price row */
.fcard-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 12px;
  border-top: 1px solid var(--frazy-border);
  margin-top: auto; /* push to bottom */
}
.fcard-pricing {
  display: flex;
  align-items: center;
  gap: 8px;
}
.fcard-old-price {
  font-size: 12px;
  color: var(--frazy-muted);
  text-decoration: line-through;
  font-weight: 500;
}
.fcard-current-price {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.5px;
}
.fcard-current-price em {
  font-style: normal;
  font-size: 11px;
  color: var(--frazy-subtext);
  font-weight: 500;
  letter-spacing: 0;
}

/* VIEW button */
.fcard-view-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--frazy-subtext);
  text-decoration: none;
  text-transform: uppercase;
  transition: color 0.15s;
}
.fcard-view-btn:hover {
  color: var(--frazy-red);
}
.fcard-view-btn svg {
  transition: transform 0.15s;
}
.fcard-view-btn:hover svg {
  transform: translateX(3px);
}

/* Legacy compat — keep old class aliases working */
.fcard-info { padding: 18px 20px 20px; }
.fcard-price-badge { display: none; } /* removed from new layout */
.fcard-orig-price { display: none; } /* moved to .fcard-old-price */


/* ══════════════════════════════════════
   MOBILE HEADER (full rewrite)
══════════════════════════════════════ */

/* Mobile toggle button */
.frazy-mobile-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  border-radius: 4px;
  transition: background 0.15s;
}
.frazy-mobile-toggle:hover { background: rgba(255,255,255,0.05); }
.frazy-mobile-toggle span {
  display: block;
  width: 22px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: all 0.25s ease;
  transform-origin: center;
}
/* Hamburger → X animation */
.frazy-mobile-toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.frazy-mobile-toggle.is-open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.frazy-mobile-toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile drawer */
.frazy-mobile-drawer {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: rgba(8,8,8,0.98);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--frazy-border);
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.35s ease;
}
.frazy-mobile-drawer.is-open {
  max-height: 600px;
}
.frazy-mobile-nav {
  display: flex;
  flex-direction: column;
  padding: 16px 0 20px;
}
.frazy-mobile-nav-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--frazy-subtext);
  text-decoration: none;
  transition: all 0.15s;
  border-left: 2px solid transparent;
}
.frazy-mobile-nav-link:hover,
.frazy-mobile-nav-link.is-active {
  color: #fff;
  background: rgba(255,255,255,0.04);
  border-left-color: var(--frazy-red);
}
.frazy-mobile-discord { color: #7289da !important; }
.frazy-mobile-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 20px 4px;
  border-top: 1px solid var(--frazy-border);
  margin-top: 8px;
}

/* Currency: mobile drawer wrapper */
.frazy-mobile-currency-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--frazy-border);
  border-radius: 6px;
}
.frazy-mobile-currency-wrap svg {
  flex-shrink: 0;
  color: var(--frazy-subtext);
}
.frazy-currency-mobile {
  flex: 1;
  width: 100%;
  background: transparent;
  border: none;
  padding: 0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #fff;
  cursor: pointer;
  outline: none;
}
.frazy-currency-mobile option {
  background: #1a1a1a;
  color: #fff;
}

/* Hide login text on very small screens */
@media (max-width: 480px) {
  .frazy-header-login { display: none; }
}

/* Hide desktop currency on mobile (≤900px) — it lives in the mobile drawer */
@media (max-width: 900px) {
  .frazy-currency-desktop { display: none !important; }
  .frazy-nav { display: none; }
  .frazy-mobile-toggle { display: flex; }
  .frazy-mobile-drawer { display: block; }
  .frazy-header-inner { gap: 12px; }
}

/* scripts-grid alias for category page */
.scripts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}
@media (max-width: 768px) { .scripts-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; } }
@media (max-width: 480px) { .scripts-grid { grid-template-columns: 1fr; } }

/* products-list (homepage) override to fcard grid */
.products-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 24px !important;
}
.product-card-wrapper {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* ══════════════════════════════════════
   SITE-CONTENT COMPATIBILITY
   Tebex requires .site-content wrapper
══════════════════════════════════════ */

/* Override Tebex's default site-content padding/sizing for our custom pages */
/* Use high specificity to override shared.css: max-width:1400px and padding */
.site-content:has(.fpkg-wrapper),
.site-content:has(.fcat-wrapper),
.site-content:has(.frazy-checkout-wrap) {
  padding: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  width: 100% !important;
}

/* Also target body-level selector for max specificity */
body .site-content:has(.fpkg-wrapper),
body .site-content:has(.fcat-wrapper),
body .site-content:has(.frazy-checkout-wrap) {
  max-width: 100% !important;
  padding: 0 !important;
}

/* Fallback: make wrapper full width regardless — NO min-height to prevent Tebex height loop */
.fpkg-wrapper,
.fcat-wrapper {
  width: 100% !important;
  background: var(--frazy-bg);
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  height: auto !important;
}

/* No extra padding on wrappers — header is sticky, in page flow */

/* ══════════════════════════════════════
   FRAZY — AUTO-TAGS SYSTEM
══════════════════════════════════════ */
.fcard-tags-container {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 8px;
  min-height: 22px; /* Prevent layout shift if empty */
}
.fcard-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.05); /* Default fallback */
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
}
.fpkg-tags-container {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 12px;
  min-height: 26px;
}
.fpkg-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.05); /* Default fallback */
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

/* ── Framework / category tag colour variants ── */
.fcard-tag--qb        { background: rgba(246, 59, 75, 0.15); color: #f63b44; border: 1px solid rgba(246, 59, 75, 0.25); }
.fcard-tag--esx       { background: rgba(250,204,21,0.1);  color: #facc15; border-color: rgba(250,204,21,0.2); }
.fcard-tag--qbox      { background: rgba(192,132,252,0.1); color: #c084fc; border-color: rgba(192,132,252,0.2); }
.fcard-tag--standalone{ background: rgba(34,197,94,0.1);   color: #22c55e; border-color: rgba(34,197,94,0.2); }
.fcard-tag--escrow    { background: var(--frazy-red-dim);  color: var(--frazy-red); border-color: rgba(255,0,76,0.2); }
.fcard-tag--open      { background: rgba(168,85,247,0.1);  color: #a855f7; border-color: rgba(168,85,247,0.2); }
.fcard-tag--fivem     { background: rgba(255,165,0,0.08);  color: #f59e0b; border-color: rgba(255,165,0,0.15); }
.fcard-tag--featured  { background: rgba(245,158,11,0.12); color: #f59e0b; border-color: rgba(245,158,11,0.25); }
.fcard-tag--new       { background: rgba(6,182,212,0.1);   color: #06b6d4; border-color: rgba(6,182,212,0.2); }

.fpkg-tag--qb         { background: rgba(246, 59, 75, 0.15); color: #f63b44; border: 1px solid rgba(246, 59, 75, 0.25); }
.fpkg-tag--esx        { background: rgba(250,204,21,0.1);  color: #facc15; border: 1px solid rgba(250,204,21,0.2); }
.fpkg-tag--qbox       { background: rgba(192,132,252,0.1); color: #c084fc; border: 1px solid rgba(192,132,252,0.2); }
.fpkg-tag--standalone { background: rgba(34,197,94,0.1);   color: #22c55e; border: 1px solid rgba(34,197,94,0.2); }
.fpkg-tag--escrow     { background: var(--frazy-red-dim);  color: var(--frazy-red); border: 1px solid rgba(255,0,76,0.2); }
.fpkg-tag--open       { background: rgba(168,85,247,0.1);  color: #a855f7; border: 1px solid rgba(168,85,247,0.2); }
.fpkg-tag--fivem      { background: rgba(255,165,0,0.08);  color: #f59e0b; border: 1px solid rgba(255,165,0,0.15); }
.fpkg-tag--featured   { background: rgba(245,158,11,0.12); color: #f59e0b; border: 1px solid rgba(245,158,11,0.25); }
.fpkg-tag--new        { background: rgba(6,182,212,0.1);   color: #06b6d4; border: 1px solid rgba(6,182,212,0.2); }
.fpkg-tag--sale       { background: rgba(255,0,76,0.1);    color: var(--frazy-red); border: 1px solid rgba(255,0,76,0.2); }

/* ── Image overlay badges (corner badges on card image) ── */
.fcard-badge {
  position: absolute;
  z-index: 3;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 3px 9px;
  border-radius: 4px;
  line-height: 1.5;
  pointer-events: none;
}
.fcard-badge--sale {
  top: 10px;
  right: 10px;
  background: var(--frazy-red);
  color: #fff;
  box-shadow: 0 2px 8px rgba(255,0,76,0.45);
}
.fcard-img-badges {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  display: flex;
  flex-direction: column;
  gap: 5px;
  pointer-events: none;
}
.fcard-img-badge {
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: 4px;
  line-height: 1.5;
}
.fcard-img-badge--featured {
  background: linear-gradient(135deg, #f59e0b, #d97706);
  color: #fff;
  box-shadow: 0 2px 8px rgba(245,158,11,0.4);
}
.fcard-img-badge--new {
  background: linear-gradient(135deg, #06b6d4, #0891b2);
  color: #fff;
  box-shadow: 0 2px 8px rgba(6,182,212,0.4);
}

/* ═══════════════════════════════════════════════
   FRAZY CURRENCY SELECT
═══════════════════════════════════════════════ */
.frazy-currency-select {
  appearance: none;
  -webkit-appearance: none;
  background-color: rgba(255,255,255,0.05);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 9px center;
  border: 1px solid var(--frazy-border);
  border-radius: 6px;
  color: var(--frazy-subtext);
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 6px 28px 6px 10px;
  cursor: pointer;
  transition: border-color 0.15s, color 0.15s;
  flex-shrink: 0;
}
.frazy-currency-select:hover,
.frazy-currency-select:focus {
  border-color: var(--frazy-red);
  color: #fff;
  outline: none;
}
.frazy-currency-select option {
  background: #1a1a1a;
  color: #fff;
  font-weight: 600;
}

/* ═══════════════════════════════════════════════
   BASKET POPUP CONTAINER FIX
   Tebex: form[data-popup] children → div.popup-content.basket-popup-content.basket
═══════════════════════════════════════════════ */
.popup-content.basket-popup-content,
.basket-popup-content {
  background: #101010 !important;
  color: #f0f0f0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  height: 100% !important;
  max-height: 100% !important;
  font-family: 'Inter', sans-serif !important;
}

/* ═══════════════════════════════════════════════
   FULL-PAGE CHECKOUT — Two-Column Layout
   (popup stays single-column via media query)
═══════════════════════════════════════════════ */

/* Popup header: always rendered, only visible in popup (narrow) */
.frazy-checkout-popup-head {
  display: flex;
}

/* Full-page form wrapper */
.frazy-checkout-wrap {
  width: 100%;
  min-height: calc(100vh - 70px);
  background: var(--frazy-bg);
}

/* Two-column body */
.frazy-checkout-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 32px 20px;
  max-width: 1100px;
  margin: 0 auto;
  width: 100%;
}

/* Left column — item list */
.frazy-checkout-left {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Section label row (ORDER ITEMS / count) */
.frazy-checkout-section-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--frazy-border);
  font-family: var(--font-display);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
}
.frazy-checkout-count {
  font-family: var(--font-display);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--frazy-red);
  background: rgba(255,0,76,0.08);
  border: 1px solid rgba(255,0,76,0.2);
  padding: 3px 10px;
  border-radius: 20px;
  text-transform: uppercase;
}

/* Items list — override popup scroll behaviour on full page */
.frazy-checkout-left .frazy-basket-items {
  flex: none;
  overflow-y: visible;
  padding: 0;
}

/* Continue shopping link */
.frazy-checkout-back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--frazy-subtext);
  text-decoration: none;
  margin-top: 4px;
  transition: color 0.15s;
}
.frazy-checkout-back:hover { color: #fff; }
.frazy-checkout-back svg { flex-shrink: 0; }

/* Right column — order summary */
.frazy-checkout-right {
  width: 100%;
  flex-shrink: 0;
}
.frazy-checkout-summary-card {
  background: #111;
  border: 1px solid var(--frazy-border);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* Summary title */
.frazy-checkout-summary-title {
  padding: 20px 22px 16px;
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  border-bottom: 1px solid var(--frazy-border);
}

/* Override breakdown padding inside summary card */
.frazy-checkout-summary-card .frazy-basket-breakdown {
  padding: 18px 22px;
}

/* CTA inside summary card */
.frazy-checkout-summary-card .frazy-basket-cta {
  margin: 0 22px 18px;
  width: calc(100% - 44px);
  border-radius: 10px;
}

/* Trust section */
.frazy-checkout-trust {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 22px;
  border-top: 1px solid rgba(255,255,255,0.05);
  background: rgba(0,0,0,0.15);
}
.frazy-checkout-trust-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 500;
  color: var(--frazy-subtext);
  letter-spacing: 0.3px;
}
.frazy-checkout-trust-row svg {
  flex-shrink: 0;
  color: var(--frazy-red);
  opacity: 0.8;
}

/* Payment methods */
.frazy-checkout-payments {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 22px;
  border-top: 1px solid rgba(255,255,255,0.05);
}
.frazy-checkout-payments-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.25);
}
.frazy-checkout-payment-logos {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.frazy-payment-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 9px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 4px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
  color: rgba(255,255,255,0.35);
  text-transform: uppercase;
}
.frazy-payment-badge--paypal {
  color: #009cde;
  border-color: rgba(0,156,222,0.2);
  background: rgba(0,156,222,0.06);
}

/* Powered by */
.frazy-checkout-powered {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 12px 22px;
  border-top: 1px solid rgba(255,255,255,0.04);
  font-size: 10px;
  font-weight: 500;
  color: rgba(255,255,255,0.18);
  letter-spacing: 0.3px;
}
.frazy-checkout-powered svg { flex-shrink: 0; opacity: 0.6; }

/* ═══ FULL-PAGE CHECKOUT — Complete Responsive Redesign ═══
   Inspired by tgiann.com/en/basket style: clean split layout,
   premium dark card summary, mobile-first responsive stacking
══════════════════════════════════════════════════ */

/* Full page wrapper */
.frazy-checkout-wrap {
  width: 100%;
  min-height: calc(100vh - 68px);
  background: var(--frazy-bg);
}

/* Popup head: always hidden on full-page, always shown in popup */
.frazy-checkout-popup-head {
  display: none;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--frazy-border);
  background: rgba(0,0,0,0.3);
  flex-shrink: 0;
}
.frazy-basket-head-inner {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 1px;
  color: rgba(255,255,255,0.8);
  text-transform: uppercase;
}
.frazy-basket-head-count {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--frazy-red);
  background: rgba(255,0,76,0.1);
  border: 1px solid rgba(255,0,76,0.2);
  padding: 3px 10px;
  border-radius: 20px;
}

/* Two-column body: default mobile (single column) */
.frazy-checkout-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px 16px;
  max-width: 1100px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}

/* Left column */
.frazy-checkout-left {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Section label */
.frazy-checkout-section-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--frazy-border);
  font-family: var(--font-display);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
}
.frazy-checkout-count {
  font-family: var(--font-display);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--frazy-red);
  background: rgba(255,0,76,0.08);
  border: 1px solid rgba(255,0,76,0.2);
  padding: 3px 10px;
  border-radius: 20px;
  text-transform: uppercase;
}

/* Items list */
.frazy-checkout-left .frazy-basket-items {
  flex: none;
  overflow-y: visible;
  padding: 0;
  max-height: none;
}

/* Continue shopping link */
.frazy-checkout-back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--frazy-subtext);
  text-decoration: none;
  margin-top: 4px;
  transition: color 0.15s;
  padding: 10px 0;
  border-top: 1px solid var(--frazy-border);
  width: 100%;
}
.frazy-checkout-back:hover { color: #fff; }
.frazy-checkout-back svg { flex-shrink: 0; }

/* Right column — summary card */
.frazy-checkout-right {
  width: 100%;
  flex-shrink: 0;
}
.frazy-checkout-summary-card {
  background: #111;
  border: 1px solid var(--frazy-border);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

/* Summary title */
.frazy-checkout-summary-title {
  padding: 20px 22px 16px;
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  border-bottom: 1px solid var(--frazy-border);
}

/* ── Override Tebex basket-header grey box ── */
.basket .basket-header,
.frazy-checkout-summary-card .basket-header {
  background: none !important;
  padding: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}

/* ── MINIMAL TOTAL BLOCK ── */
.frazy-checkout-total-block {
  padding: 20px 22px 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  border-bottom: 1px solid var(--frazy-border);
}
.frazy-checkout-total-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 2px;
}
.frazy-checkout-total-lbl {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.35);
}
.frazy-checkout-item-count {
  font-size: 10px;
  color: rgba(255,255,255,0.25);
  font-weight: 500;
}
.frazy-checkout-total-val {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: 32px;
  color: #fff;
  letter-spacing: -1.5px;
  line-height: 1;
}
.frazy-checkout-total-val strong,
.frazy-checkout-total-val .price {
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
  font-family: inherit !important;
  letter-spacing: inherit !important;
}
.frazy-checkout-coupon-row {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  font-weight: 600;
  color: #4ade80;
  margin-top: 4px;
}
.frazy-checkout-coupon-row svg { flex-shrink: 0; }

/* excl. taxes inline tag */
.frazy-checkout-tax-tag {
  display: inline;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: rgba(255,255,255,0.22);
  margin-left: 5px;
  vertical-align: middle;
  text-transform: none;
}

/* CTA inside summary */
.frazy-checkout-summary-card .frazy-basket-cta {
  margin: 18px 22px;
  width: calc(100% - 44px);
  border-radius: 10px;
}


/* Trust section — minimal, no bg */
.frazy-checkout-trust {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 12px 22px;
  border-top: 1px solid rgba(255,255,255,0.04);
}
.frazy-checkout-trust-row {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 10.5px;
  font-weight: 500;
  color: rgba(255,255,255,0.3);
  letter-spacing: 0.2px;
}
.frazy-checkout-trust-row svg {
  flex-shrink: 0;
  opacity: 0.45;
}

/* Payment methods */
.frazy-checkout-payments {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 22px;
  border-top: 1px solid rgba(255,255,255,0.05);
}
.frazy-checkout-payments-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.25);
}
.frazy-checkout-payment-logos {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.frazy-payment-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 9px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 4px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
  color: rgba(255,255,255,0.35);
  text-transform: uppercase;
}
.frazy-payment-badge--paypal {
  color: #009cde;
  border-color: rgba(0,156,222,0.2);
  background: rgba(0,156,222,0.06);
}

/* Powered by */
.frazy-checkout-powered {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 12px 22px;
  border-top: 1px solid rgba(255,255,255,0.04);
  font-size: 10px;
  font-weight: 500;
  color: rgba(255,255,255,0.18);
  letter-spacing: 0.3px;
}
.frazy-checkout-powered svg { flex-shrink: 0; opacity: 0.6; }

/* ── Popup mode: force single column, show popup header ── */
.basket-popup-content .frazy-checkout-popup-head {
  display: flex !important;
}
.basket-popup-content .frazy-checkout-body {
  flex-direction: column !important;
  padding: 12px !important;
  gap: 12px !important;
  max-width: 100% !important;
}
.basket-popup-content .frazy-checkout-right {
  width: 100% !important;
  position: static !important;
}
.basket-popup-content .frazy-checkout-left .frazy-basket-items {
  max-height: 280px;
  overflow-y: auto;
  padding: 0 !important; /* no extra padding in popup — body has padding */
}
/* In popup, item grid narrows: reduce thumb to 56px */
.basket-popup-content .frazy-basket-item {
  grid-template-columns: 56px 1fr auto;
  padding: 10px;
  gap: 10px;
}
.basket-popup-content .frazy-basket-thumb {
  width: 56px;
  height: 56px;
  min-width: 56px;
}
.basket-popup-content .frazy-basket-cta {
  margin: 0 16px 14px !important;
  width: calc(100% - 32px) !important;
}
.basket-popup-content .frazy-checkout-summary-card .frazy-basket-cta {
  margin: 0 16px 14px !important;
  width: calc(100% - 32px) !important;
}
.basket-popup-content .frazy-checkout-back {
  display: none;
}

/* ── Mobile (≤600px): compact grid items ── */
@media (max-width: 600px) {
  .frazy-checkout-body {
    padding: 16px 12px;
    gap: 20px;
  }
  .frazy-basket-item {
    grid-template-columns: 54px 1fr auto;
    padding: 10px;
    gap: 8px;
  }
  .frazy-basket-thumb {
    width: 54px;
    height: 54px;
    min-width: 54px;
  }
  .frazy-basket-item-name {
    font-size: 12px;
    white-space: normal;
    line-height: 1.3;
  }
  .frazy-basket-item-price {
    font-size: 13px;
  }
  .frazy-checkout-summary-card .frazy-basket-cta {
    margin: 0 12px 14px;
    width: calc(100% - 24px);
    font-size: 11px;
    letter-spacing: 1.5px;
    padding: 13px 16px;
  }
  .frazy-checkout-summary-card .frazy-basket-breakdown,
  .frazy-checkout-trust,
  .frazy-checkout-payments,
  .frazy-checkout-powered {
    padding-left: 14px;
    padding-right: 14px;
  }
  .frazy-checkout-summary-title {
    padding: 14px 14px 12px;
  }
  .frazy-basket-breakdown-val--total {
    font-size: 16px;
  }
}

/* ── Tablet (601–899px): stay single column but more space ── */
@media (min-width: 601px) and (max-width: 899px) {
  .frazy-checkout-body {
    padding: 28px 24px;
    gap: 28px;
  }
}

/* ── Desktop (≥900px): two-column layout ── */
@media (min-width: 900px) {
  .frazy-checkout-popup-head {
    display: none !important;
  }
  .frazy-checkout-body {
    flex-direction: row;
    align-items: flex-start;
    padding: 48px 40px;
    gap: 40px;
  }
  .frazy-checkout-right {
    width: 380px;
    position: sticky;
    top: 90px;
    align-self: flex-start;
    flex-shrink: 0;
  }
}

/* ── Extra large (≥1200px): more breathing room ── */
@media (min-width: 1200px) {
  .frazy-checkout-body {
    padding: 60px 48px;
    gap: 48px;
  }
  .frazy-checkout-right {
    width: 400px;
  }
}

/* ── Basket item image fix: ensure img is always block + full fill ── */
.frazy-basket-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 8px;
}
/* Ensure price strong tags are visible */
.frazy-basket-item-price strong,
.frazy-basket-breakdown-val strong,
.frazy-basket-total-value strong {
  font-family: var(--font-display);
  font-weight: 900;
  color: #fff;
  font-size: inherit;
}
.frazy-basket-breakdown-val--total strong {
  font-size: 20px;
  color: #fff;
}
